{"version":3,"file":"PulseLinkLayer.vue2.mjs","sources":["../../../../packages/PulseLinkLayer/PulseLinkLayer.vue"],"sourcesContent":["<template>\r\n  <div />\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport {defineOptions} from 'vue';\r\nimport {useRegister} from \"@vuemap/vue-amap\";\r\nimport {buildLocaProps, commonEmitNames} from \"../../utils/buildHelper\";\r\nimport {useWatchFn, useLocaEvents} from '../../mixins/useLoca';\r\n\r\ndefineOptions({\r\n  name: 'ElAmapLocaPulseLink',\r\n  inheritAttrs: false\r\n});\r\n\r\nconst props = defineProps(buildLocaProps({\r\n  depth: {\r\n    type: Boolean,\r\n    default: true\r\n  }\r\n}));\r\nconst emits = defineEmits(commonEmitNames);\r\n\r\nlet $amapComponent: any;\r\n\r\nlet _destroyComponent: () => void;\r\nlet _setSource: () => void;\r\n\r\nconst {$$getInstance, parentInstance} = useRegister<Loca.PulseLinkLayer, Loca.Container>((options) => {\r\n  return new Promise<any>((resolve) => {\r\n    $amapComponent = new Loca.PulseLinkLayer(options);\r\n    const useResult = useLocaEvents({\r\n      parentInstance,\r\n      $amapComponent,\r\n      emits,\r\n      props,\r\n      setStyle () {\r\n        const defaultStyleValue = {\r\n          lineColors: ['#fff'],\r\n          height: 100,\r\n          maxHeightScale: 0,\r\n          smoothSteps: 50,\r\n          lineWidth: [1, 1],\r\n          unit: 'px',\r\n          dash: [4000, 0, 4000, 0],\r\n          speed: 100,\r\n          headColor: 'rgba(0, 0, 0, 0.75)',\r\n          trailColor: 'rgba(0, 0, 0, 0.25)',\r\n          flowLength: 100\r\n        };\r\n        const style = Object.assign({}, defaultStyleValue, props.defaultStyleValue);\r\n        const defaultLayerStyle = {\r\n          lineColors: (index, feature) => {\r\n            feature.properties = feature.properties || {};\r\n            return feature.properties.lineColors === undefined ? style.lineColors : feature.properties.lineColors;\r\n          },\r\n          height: (index, feature) => {\r\n            feature.properties = feature.properties || {};\r\n            return feature.properties.height === undefined ? style.height : feature.properties.height;\r\n          },\r\n          maxHeightScale: (index, feature) => {\r\n            feature.properties = feature.properties || {};\r\n            return feature.properties.maxHeightScale === undefined ? style.maxHeightScale : feature.properties.maxHeightScale;\r\n          },\r\n          smoothSteps: (index, feature) => {\r\n            feature.properties = feature.properties || {};\r\n            return feature.properties.smoothSteps === undefined ? style.smoothSteps : feature.properties.smoothSteps;\r\n          },\r\n          lineWidth: (index, feature) => {\r\n            feature.properties = feature.properties || {};\r\n            return feature.properties.lineWidth === undefined ? style.lineWidth : feature.properties.lineWidth;\r\n          },\r\n          unit: style.unit,\r\n          dash: (index, feature) => {\r\n            feature.properties = feature.properties || {};\r\n            return feature.properties.dash === undefined ? style.dash : feature.properties.dash;\r\n          },\r\n          speed: (index, feature) => {\r\n            feature.properties = feature.properties || {};\r\n            return feature.properties.speed === undefined ? style.speed : feature.properties.speed;\r\n          },\r\n          headColor: (index, feature) => {\r\n            feature.properties = feature.properties || {};\r\n            return feature.properties.headColor === undefined ? style.headColor : feature.properties.headColor;\r\n          },\r\n          trailColor: (index, feature) => {\r\n            feature.properties = feature.properties || {};\r\n            return feature.properties.trailColor === undefined ? style.trailColor : feature.properties.trailColor;\r\n          },\r\n          flowLength: style.flowLength\r\n        };\r\n        const layerStyle = Object.assign({}, defaultLayerStyle, props.layerStyle);\r\n        $amapComponent.setStyle(layerStyle);\r\n      },\r\n    });\r\n    _destroyComponent = useResult._destroyComponent;\r\n    _setSource = useResult.setSource;\r\n    resolve($amapComponent);\r\n  });\r\n\r\n}, {\r\n  emits,\r\n  watchRedirectFn: useWatchFn({\r\n    setSource (){\r\n      if(_setSource){\r\n        _setSource();\r\n      }\r\n    },\r\n    $amapComponent: () => $amapComponent,\r\n    props\r\n  }),\r\n  destroyComponent () {\r\n    if(_destroyComponent){\r\n      _destroyComponent();\r\n    }\r\n    $amapComponent = null;\r\n  },\r\n});\r\n\r\ndefineExpose({\r\n  $$getInstance,\r\n});\r\n\r\n</script>\r\n"],"names":[],"mappings":"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"}