{"version":3,"file":"Buildings.vue2.mjs","sources":["../../../../../../packages/layer/official/Buildings/Buildings.vue"],"sourcesContent":["<template>\r\n  <div />\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport {defineOptions} from 'vue';\r\nimport {useRegister} from \"../../../../mixins\";\r\nimport {buildProps} from \"../../../../utils\";\r\nimport type { PropType} from 'vue';\r\n\r\ndefineOptions({\r\n  name: 'ElAmapLayerBuildings',\r\n  inheritAttrs: false\r\n});\r\n\r\nconst props = defineProps(buildProps({\r\n  wallColor: {\r\n    type: [String, Array]\r\n  }, // 楼块侧面颜色，支持 rgba、rgb、十六进制等\r\n  roofColor: {\r\n    type: [String, Array]\r\n  }, // 楼块顶面颜色，支持 rgba、rgb、十六进制等\r\n  heightFactor: {\r\n    type: Number\r\n  }, // 楼块的高度系数因子，默认为 1，也就是正常高度\r\n  styleOpts: {\r\n    type: Object as PropType<AMap.BuildingStyleOptions>\r\n  }, // 楼块的围栏和样式设置\r\n  zooms: {\r\n    type: Array\r\n  }, // 支持的缩放级别范围，默认范围 [2-30]\r\n  opacity: {\r\n    type: Number\r\n  } // 透明度，默认 1\r\n}));\r\nconst emits = defineEmits(['init']);\r\n\r\nlet $amapComponent: AMap.Buildings;\r\n\r\nconst {$$getInstance, parentInstance} = useRegister<AMap.Buildings, AMap.Map>((options, parentComponent) => {\r\n  return new Promise<AMap.Buildings>((resolve) => {\r\n    $amapComponent = new AMap.Buildings(options);\r\n    parentComponent.add($amapComponent);\r\n    if(props.styleOpts){\r\n      $amapComponent.setStyle(props.styleOpts);\r\n    }\r\n    resolve($amapComponent);\r\n  });\r\n\r\n}, {\r\n  emits,\r\n  watchRedirectFn: {\r\n    __styleOpts (value: any) {\r\n      $amapComponent.setStyle(value);\r\n    }\r\n  },\r\n  destroyComponent () {\r\n    if ($amapComponent && parentInstance?.$amapComponent) {\r\n      if(!parentInstance?.isDestroy){\r\n        parentInstance?.$amapComponent.remove($amapComponent);\r\n      }\r\n      $amapComponent = null as any;\r\n    }\r\n  },\r\n});\r\n\r\ndefineExpose({\r\n  $$getInstance\r\n});\r\n\r\n</script>\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAcA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAoBd,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AAEd,IAAI,IAAA,cAAA,CAAA;AAEJ,IAAA,MAAM,EAAC,aAAe,EAAA,cAAA,KAAkB,WAAsC,CAAA,CAAC,SAAS,eAAoB,KAAA;AAC1G,MAAO,OAAA,IAAI,OAAwB,CAAA,CAAC,OAAY,KAAA;AAC9C,QAAiB,cAAA,GAAA,IAAI,IAAK,CAAA,SAAA,CAAU,OAAO,CAAA,CAAA;AAC3C,QAAA,eAAA,CAAgB,IAAI,cAAc,CAAA,CAAA;AAClC,QAAA,IAAG,MAAM,SAAU,EAAA;AACjB,UAAe,cAAA,CAAA,QAAA,CAAS,MAAM,SAAS,CAAA,CAAA;AAAA,SACzC;AACA,QAAA,OAAA,CAAQ,cAAc,CAAA,CAAA;AAAA,OACvB,CAAA,CAAA;AAAA,KAEA,EAAA;AAAA,MACD,KAAA;AAAA,MACA,eAAiB,EAAA;AAAA,QACf,YAAa,KAAY,EAAA;AACvB,UAAA,cAAA,CAAe,SAAS,KAAK,CAAA,CAAA;AAAA,SAC/B;AAAA,OACF;AAAA,MACA,gBAAoB,GAAA;AAClB,QAAI,IAAA,cAAA,KAAkB,iDAAgB,cAAgB,CAAA,EAAA;AACpD,UAAG,IAAA,EAAC,iDAAgB,SAAU,CAAA,EAAA;AAC5B,YAAA,cAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,cAAA,CAAgB,eAAe,MAAO,CAAA,cAAA,CAAA,CAAA;AAAA,WACxC;AACA,UAAiB,cAAA,GAAA,IAAA,CAAA;AAAA,SACnB;AAAA,OACF;AAAA,KACD,CAAA,CAAA;AAED,IAAa,QAAA,CAAA;AAAA,MACX,aAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;"}