import { defineComponent as g, watch as z, createElementBlock as m, openBlock as a, createCommentVNode as h, normalizeStyle as c, unref as i, toDisplayString as e, createTextVNode as R, ref as f, onMounted as W, onBeforeUnmount as B } from "vue";
import C from "axios";
import "../text-text-basic/index.mjs";
import "../text-table-basic/index.mjs";
import "../chart-other-gauge/index.mjs";
import "../chart-other-gauge-stage/index.mjs";
import "../chart-other-gauge-grade/index.mjs";
import "../chart-other-word-cloud/index.mjs";
import "../chart-other-liquidfill/index.mjs";
import "../chart-other-funnel/index.mjs";
import "../chart-other-force/index.mjs";
import "../chart-other-radar/index.mjs";
import "../chart-other-funnel-split/index.mjs";
import "../chart-other-funnel-contrast/index.mjs";
import "../chart-other-candlestick-basic/index.mjs";
import "../chart-other-candlestick-shanghai/index.mjs";
import "../chart-other-candlestick-demo/index.mjs";
import "../chart-other-heatmap/index.mjs";
import "../chart-other-force2/index.mjs";
import "../chart-other-graph-basic/index.mjs";
import "../chart-other-graph-basic2/index.mjs";
import "../chart-other-graph-calendar/index.mjs";
import "../chart-other-tree-line/index.mjs";
import "../chart-other-treemap-basic/index.mjs";
import "../chart-other-sunburst-basic/index.mjs";
import "../chart-other-sunburst-basic2/index.mjs";
import "../chart-other-sunburst-basic3/index.mjs";
import "../chart-other-sunburst-basic4/index.mjs";
import "../chart-other-sunburst-book/index.mjs";
import "../chart-other-sunburst-radius/index.mjs";
import "../chart-other-sunburst-flavors/index.mjs";
import "../chart-other-parallel-basic/index.mjs";
import "../chart-other-parallel-mul/index.mjs";
import "../chart-other-circular-graph/index.mjs";
import "../map-earth-basic/index.mjs";
import "../map-earth-cool-tech/index.mjs";
import "../map-earth-particle/index.mjs";
import "../map-earth-hacker/index.mjs";
import "../map-earth-fly-line/index.mjs";
import "../chart-other-grid-percentage/index.mjs";
import "../chart-other-radar-stack/index.mjs";
import "../chart-other-funnel2/index.mjs";
import "../chart-other-label-gauge/index.mjs";
import "../chart-other-theme-river/index.mjs";
import "../chart-other-tree/index.mjs";
import "../chart-other-treemap/index.mjs";
import "../commons-product-model/index.mjs";
import "../commons-vr-photo/index.mjs";
import "../commons-vr-video/index.mjs";
import "../commons-three-loader/index.mjs";
import "../commons-three-loader3/index.mjs";
import "../commons-loop-iterator/index.mjs";
import "../commons-gaussian-splatting-view/index.mjs";
import "../commons-babylon/index.mjs";
import "../commons-svg/index.mjs";
import "./index.mjs";
import "../commons-weather-dynamic/index.mjs";
import "../media-wavesurfer/index.mjs";
import "../interaction-tabs/index.mjs";
import "../interaction-tabs2/index.mjs";
import "../interaction-button/index.mjs";
import "../interaction-button-image/index.mjs";
import "../interaction-select/index.mjs";
import "../interaction-input/index.mjs";
import "../interaction-radio/index.mjs";
import "../interaction-slider/index.mjs";
import "../interaction-switch/index.mjs";
import "../interaction-data-picker/index.mjs";
import "../interaction-button-refresh/index.mjs";
import "../media-image/index.mjs";
import "../text-title/index.mjs";
import "../commons-qrcode/index.mjs";
import "../media-video/index.mjs";
import "../media-audio/index.mjs";
import "../text-real-time/index.mjs";
import "../media-carousel/index.mjs";
import "../media-carousel-slides/index.mjs";
import "../media-iframe-carousel/index.mjs";
import "../media-iframe/index.mjs";
import "../media-m3u8/index.mjs";
import "../media-m3u8-dynamic/index.mjs";
import "../media-audio-dynamic/index.mjs";
import "../media-video-dynamic/index.mjs";
import "../media-image-dynamic/index.mjs";
import "../media-iframe-dynamic/index.mjs";
import "../media-flv/index.mjs";
import "../commons-echarts/index.mjs";
import "../text-over-number/index.mjs";
import "../text-table-scroll/index.mjs";
import "../text-carousel/index.mjs";
import "../text-row-scroll/index.mjs";
import "../text-text-dynamic/index.mjs";
import "../text-count-down/index.mjs";
import "../graphical-circle/index.mjs";
import "../graphical-diamond/index.mjs";
import "../graphical-hexagon/index.mjs";
import "../graphical-isosceles-triangle/index.mjs";
import "../graphical-pentagon/index.mjs";
import "../graphical-rect/index.mjs";
import "../graphical-right-triangle/index.mjs";
import "../scene-map3d/index.mjs";
import "../scene-amap2d/index.mjs";
import "../scene-amap3d/index.mjs";
import "../scene-vr/index.mjs";
import "../scene-unity-iframe/index.mjs";
import "../scene-unity-webgl/index.mjs";
import "../scene-ue-iframe/index.mjs";
import "../scene-ue-shj/index.mjs";
import "../scene-default/index.mjs";
import "../interaction/tabs/index.mjs";
import "../interaction/tabs-icon/index.mjs";
import "../interaction/button/index.mjs";
import "../interaction/date-picker/src/date-picker/index.mjs";
import "../interaction/date-picker/src/date-picker-range/index.mjs";
import "../text/list/index.mjs";
import "../chart/src/bar/basic/index.mjs";
import "../chart/src/bar/animation/index.mjs";
import "../chart/src/bar/contrast/index.mjs";
import "../chart/src/bar/contrast2/index.mjs";
import "../chart/src/bar/contrast3/index.mjs";
import "../chart/src/bar/gradient-column-chart/index.mjs";
import "../chart/src/bar/horizontal/index.mjs";
import "../chart/src/bar/horizontal-stack/index.mjs";
import "../chart/src/bar/line-bar/index.mjs";
import "../chart/src/bar/line-bar2/index.mjs";
import "../chart/src/bar/loop/index.mjs";
import "../chart/src/bar/mini/index.mjs";
import "../chart/src/bar/polar/index.mjs";
import "../chart/src/bar/polar-stack/index.mjs";
import "../chart/src/bar/polar2/index.mjs";
import "../chart/src/bar/radius-circle/index.mjs";
import "../chart/src/bar/rank/index.mjs";
import "../chart/src/bar/segmented-progress/index.mjs";
import "../chart/src/bar/spire/index.mjs";
import "../chart/src/bar/stack/index.mjs";
import "../chart/src/bar/stack-line/index.mjs";
import "../chart/src/bar/stack2/index.mjs";
import "../chart/src/bar/stack3/index.mjs";
import "../chart/src/bar/staggered/index.mjs";
import "../chart/src/bar/three/index.mjs";
import "../chart/src/bar/waterfall/index.mjs";
import "../chart/src/bar/zebra/index.mjs";
import "../chart/src/line/area-gradient/index.mjs";
import "../chart/src/line/area-highlight/index.mjs";
import "../chart/src/line/area-highlight2/index.mjs";
import "../chart/src/line/basic/index.mjs";
import "../chart/src/line/bump/index.mjs";
import "../chart/src/line/dashed/index.mjs";
import "../chart/src/line/ladder/index.mjs";
import "../chart/src/line/logarithm/index.mjs";
import "../chart/src/line/multix/index.mjs";
import "../chart/src/line/polar-double/index.mjs";
import "../chart/src/line/rain-flow/index.mjs";
import "../chart/src/line/scale/index.mjs";
import "../chart/src/line/smooth/index.mjs";
import "../chart/src/line/smooth-area/index.mjs";
import "../chart/src/line/stack/index.mjs";
import "../chart/src/line/stack-area/index.mjs";
import "../chart/src/line/temp/index.mjs";
import "../chart/src/line/vertical/index.mjs";
import "../chart/src/map/basic/index.mjs";
import "../chart/src/map/bmap-basic/index.mjs";
import "../chart/src/map/bmap-heatmap/index.mjs";
import "../chart/src/map/bmap-rich/index.mjs";
import "../chart/src/map/customize/index.mjs";
import "../chart/src/map/lines/index.mjs";
import "../chart/src/map/scatter/index.mjs";
import "../chart/src/pie/3d/index.mjs";
import "../chart/src/pie/basic/index.mjs";
import "../chart/src/pie/basic2/index.mjs";
import "../chart/src/pie/customized/index.mjs";
import "../chart/src/pie/index/index.mjs";
import "../chart/src/pie/interval/index.mjs";
import "../chart/src/pie/legend-scroll/index.mjs";
import "../chart/src/pie/radius/index.mjs";
import "../chart/src/pie/rose/index.mjs";
import "../chart/src/pie/round/index.mjs";
import "../chart/src/pie/sunburst/index.mjs";
import "../chart/src/scatter/basic/index.mjs";
import "../chart/src/scatter/basic2/index.mjs";
import "../chart/src/scatter/bubble/index.mjs";
import "../chart/src/scatter/ripples/index.mjs";
import "../hj-componets/zv-hj-tree-list/index.mjs";
import "../hj-componets/zv-hj-model-resource/index.mjs";
import "../hj-componets/zv-hj-one-map-config/index.mjs";
import "../hj-componets/zv-hj-video-control/index.mjs";
import "../hj-componets/zv-hj-video-page/index.mjs";
import "../hj-componets/zv-hj-password-input/index.mjs";
import "../hj-componets/zv-hj-carousel/index.mjs";
import "../hj-componets/zv-hj-video-monitor/index.mjs";
import "../hj-componets/zv-hj-scene-amap2d/index.mjs";
import "../hj-componets/zv-hj-scene-amap3d/index.mjs";
import "../hj-componets/zv-hj-person-face/index.mjs";
import "../hj-componets/zv-hj-resource-type-phone/index.mjs";
import "../hj-componets/zv-hj-tree-list-phone/index.mjs";
import "../hj-componets/zv-hj-video-page-phone/index.mjs";
import "../hj-componets/zv-hj-model-resource-phone/index.mjs";
import "../hj-componets/zv-hj-bottom-suspend/index.mjs";
import "../hj-componets/zv-hj-pagination/index.mjs";
import "../hj-componets/zv-hj-password-input-phone/index.mjs";
/* empty css                        */
/* empty css                               */
import "lodash";
import "../../plugins/datasource/utils/request.mjs";
import "../../plugins/datasource/utils/wsManager.mjs";
import { SHJParseEvent as v } from "../../plugins/event/index.mjs";
import { autoInstallFont as D, jsonToCssStyle as A } from "../../commons/utils/json2css.mjs";
const F = {
  key: 0,
  class: "weather-temperature__suffix"
}, H = g({ name: "zv-commons-weather" }), Wi = /* @__PURE__ */ g({
  ...H,
  props: {
    basicOption: {},
    useEvents: {}
  },
  emits: [
    "on-success",
    "on-error"
  ],
  setup(O, { emit: k }) {
    const p = O, w = k, S = () => {
      const r = f(), s = f({
        city: "",
        date: "",
        week: "",
        dayweather: "",
        nightweather: "",
        daytemp: "",
        nighttemp: "",
        daywind: "",
        nightwind: "",
        daypower: "",
        nightpower: "",
        daytemp_float: "",
        nighttemp_float: ""
      }), l = f(null), y = (t) => {
        C.get(`https://restapi.amap.com/v3/weather/weatherInfo?city=${t.city}&key=${t.key}&extensions=all`).then((o) => {
          o.status === 200 && o.data.status === "1" && o.data.forecasts.length > 0 ? (w("on-success", o), v.parseEvents(p.useEvents, "on-success", o), s.value = o.data.forecasts[0].casts[0], s.value.city = o.data.forecasts[0].city) : (w("on-error", o), v.parseEvents(p.useEvents, "on-error", o));
        }).catch(() => {
          w("on-error", null), v.parseEvents(p.useEvents, "on-error", null);
        });
      }, I = (t) => (t.fontFamily && D(t.fontFamily), {
        ...A(t),
        lineHeight: `${t.lineHeight}px`,
        transform: `translate(${t.transform.x}px, ${t.transform.y}px)`
      }), T = (t, o) => {
        if (o.find((d) => d.name === s.value.dayweather)) {
          const d = o.find((U) => U.name === s.value.dayweather).url || "";
          return {
            mask: `url(${d}) 0px 0px / 100% 100%`,
            width: `${t.size}px`,
            height: `${t.size}px`,
            background: `url(${d}) 0px 0px / 100% 100%, ${t.color}`,
            backgroundBlendMode: "overlay",
            marginRight: `${t.margin.right}px`
          };
        }
        return {};
      }, b = (t) => {
        l.value && clearInterval(l.value), t.autoUpdate !== 0 ? l.value = setInterval(() => y(t), t.autoUpdate * 1e3) : (clearInterval(l.value), y(t));
      };
      return W(() => {
        y(p.basicOption), b(p.basicOption);
      }), B(() => {
        l.value && clearInterval(l.value);
      }), {
        initWeatherMessage: y,
        rendererDomStyle: I,
        handleAutoUpdate: b,
        rendererWeatherTypeStyle: T,
        weatherRef: r,
        weather: s
      };
    }, { handleAutoUpdate: $, rendererDomStyle: u, rendererWeatherTypeStyle: x, weatherRef: E, weather: n } = S();
    return z(() => p.basicOption, () => $(p.basicOption), { deep: !0 }), (r, s) => (a(), m("div", {
      ref_key: "weatherRef",
      ref: E,
      class: "zerov-widgets"
    }, [
      r.basicOption.icon.show ? (a(), m("p", {
        key: 0,
        class: "weather-icon",
        style: c(i(x)(r.basicOption.icon, r.basicOption.icons))
      }, null, 4)) : h("", !0),
      r.basicOption.weather.city.show ? (a(), m("p", {
        key: 1,
        class: "weather-city",
        style: c(i(u)(r.basicOption.weather.city.textStyle))
      }, e(i(n).city), 5)) : h("", !0),
      r.basicOption.weather.type.show ? (a(), m("p", {
        key: 2,
        class: "weather-type",
        style: c(i(u)(r.basicOption.weather.type.textStyle))
      }, e(i(n).dayweather), 5)) : h("", !0),
      r.basicOption.weather.wind.show ? (a(), m("p", {
        key: 3,
        class: "weather-wind",
        style: c(i(u)(r.basicOption.weather.wind.textStyle))
      }, e(i(n).daywind) + "风" + e(i(n).daypower) + "级 ", 5)) : h("", !0),
      r.basicOption.weather.temperature.show ? (a(), m("p", {
        key: 4,
        class: "weather-temperature",
        style: c(i(u)(r.basicOption.weather.temperature.textStyle))
      }, [
        R(e(i(n).nighttemp) + " " + e(r.basicOption.weather.temperature.connectors) + " " + e(i(n).daytemp) + " ", 1),
        r.basicOption.weather.temperature.suffix.show ? (a(), m("span", F, e(r.basicOption.weather.temperature.suffix.suffix), 1)) : h("", !0)
      ], 4)) : h("", !0)
    ], 512));
  }
});
export {
  Wi as default
};
