import { defineComponent, shallowRef, toRefs, watch, computed, inject, onMounted, onBeforeUnmount, h, nextTick, watchEffect, toValue, warn, } from "vue"; import { init as initChart } from "echarts/core"; import type { EChartsOption } from "echarts"; import { usePublicAPI, useAutoresize, autoresizeProps, useLoading, loadingProps, useSlotOption, } from "./composables"; import type { PublicMethods, SlotsTypes } from "./composables"; import { isOn, omitOn } from "./utils"; import { register, TAG_NAME } from "./wc"; import { planUpdate } from "./smart-update"; import type { Signature, UpdatePlan } from "./smart-update"; import type { PropType, InjectionKey } from "vue"; import type { EChartsType, SetOptionType, Option, Theme, ThemeInjection, InitOptions, InitOptionsInjection, UpdateOptions, UpdateOptionsInjection, Emits, } from "./types"; import type { EChartsElement } from "./wc"; import "./style.ts"; const wcRegistered = register(); export const THEME_KEY: InjectionKey = Symbol(); export const INIT_OPTIONS_KEY: InjectionKey = Symbol(); export const UPDATE_OPTIONS_KEY: InjectionKey = Symbol(); export { LOADING_OPTIONS_KEY } from "./composables"; export default defineComponent({ name: "echarts", props: { option: Object as PropType