vue-tianditu2
Version:
1 lines • 2.1 kB
Source Map (JSON)
{"version":3,"file":"index.mjs","sources":["../../../packages/control/index.ts"],"sourcesContent":["import { defineComponent, h, onMounted, onUnmounted } from \"vue\";\nimport { useEvent } from \"~/use/event\";\nimport { useMapRoot } from \"~/use/mapRoot\";\nimport { EVENTS, NATIVE_EVENTS, PROPS, useInit, useWatch } from \"./use\";\n\nexport const TdtControl = defineComponent({\n name: \"TdtControl\",\n props: PROPS,\n emits: EVENTS,\n setup(props, { emit, slots }) {\n let controlRef = h(\"div\");\n\n onMounted(async () => {\n onUnmounted(() => tdtComponent && tdtMap?.removeControl(tdtComponent));\n\n const tdtMap = await useMapRoot();\n const tdtComponent = useInit(props);\n tdtComponent.onAdd = () => controlRef.el;\n tdtComponent.onRemove = () => {};\n tdtMap.addControl(tdtComponent);\n useEvent({ events: NATIVE_EVENTS, emit, instance: tdtComponent });\n useWatch({ props, instance: tdtComponent });\n emit(\"init\", tdtComponent);\n });\n\n return () => {\n controlRef = h(\"div\", { class: \"tdt-control-custom\" }, slots.default?.());\n return controlRef;\n };\n }\n});\n\nexport type TdtControlInstance = InstanceType<typeof TdtControl>;\n"],"names":["TdtControl","defineComponent","PROPS","EVENTS","props","emit","slots","controlRef","h","onMounted","onUnmounted","tdtComponent","tdtMap","useMapRoot","useInit","useEvent","NATIVE_EVENTS","useWatch","_a"],"mappings":";;;;;;AAKO,MAAMA,IAAaC,EAAgB;AAAA,EACxC,MAAM;AAAA,EACN,OAAOC;AAAA,EACP,OAAOC;AAAA,EACP,MAAMC,GAAO,EAAE,MAAAC,GAAM,OAAAC,KAAS;AACxB,QAAAC,IAAaC,EAAE,KAAK;AAExB,WAAAC,EAAU,YAAY;AACpB,MAAAC,EAAY,MAAMC,MAAgBC,KAAA,gBAAAA,EAAQ,cAAcD,GAAa;AAE/D,YAAAC,IAAS,MAAMC,EAAW,GAC1BF,IAAeG,EAAQV,CAAK;AACrB,MAAAO,EAAA,QAAQ,MAAMJ,EAAW,IACtCI,EAAa,WAAW,MAAM;AAAA,MAAC,GAC/BC,EAAO,WAAWD,CAAY,GAC9BI,EAAS,EAAE,QAAQC,GAAe,MAAAX,GAAM,UAAUM,GAAc,GAChEM,EAAS,EAAE,OAAAb,GAAO,UAAUO,EAAA,CAAc,GAC1CN,EAAK,QAAQM,CAAY;AAAA,IAAA,CAC1B,GAEM,MAAM;;AACE,aAAAJ,IAAAC,EAAE,OAAO,EAAE,OAAO,yBAAwBU,IAAAZ,EAAM,YAAN,gBAAAY,EAAA,KAAAZ,EAAiB,GACjEC;AAAA,IACT;AAAA,EAAA;AAEJ,CAAC;"}