/* eslint-disable vue/multi-word-component-names */ /* eslint-disable @typescript-eslint/no-explicit-any */ import { defineComponent, unref, shallowRef, toRefs, watch, computed, inject, onMounted, onUnmounted, h, nextTick, watchEffect, getCurrentInstance, Vue2, type PropType, type InjectionKey } from "vue-demi"; import { init as initChart } from "echarts/core"; import type { EChartsType, EventTarget, Option, Theme, ThemeInjection, InitOptions, InitOptionsInjection, UpdateOptions, UpdateOptionsInjection } from "./types"; import { usePublicAPI, useAutoresize, autoresizeProps, useLoading, loadingProps } from "./composables"; import { omitOn } from "./utils"; import "./style.css"; const TAG_NAME = "x-vue-echarts"; if (Vue2) { Vue2.config.ignoredElements.push(TAG_NAME); } export const THEME_KEY = "ecTheme" as unknown as InjectionKey; export const INIT_OPTIONS_KEY = "ecInitOptions" as unknown as InjectionKey; export const UPDATE_OPTIONS_KEY = "ecUpdateOptions" as unknown as InjectionKey; export { LOADING_OPTIONS_KEY } from "./composables"; export default defineComponent({ name: "echarts", props: { option: Object as PropType