vue-cesium
Version:
Vue 3.x components for CesiumJS.
48 lines (45 loc) • 1.66 kB
JavaScript
import { defineComponent, getCurrentInstance, createCommentVNode } from 'vue';
import '../../../composables/index.mjs';
import { defaultColor, tileStyle, enableMouseEvent } from '../../../utils/cesium-props.mjs';
import { kebabCase } from '../../../utils/util.mjs';
import { primitiveEmits } from '../../../utils/emits.mjs';
import { compareCesiumVersion } from '../../../utils/cesium-helpers.mjs';
import usePrimitives from '../../../composables/use-primitives/index.mjs';
;
const osmBuildingsProps = {
...defaultColor,
...tileStyle,
enableShowOutline: {
type: Boolean,
default: true
},
showOutline: {
type: Boolean,
default: true
},
...enableMouseEvent
};
var PrimitiveOsmBuildings = defineComponent({
name: "VcPrimitiveOsmBuildings",
props: osmBuildingsProps,
emits: {
...primitiveEmits
},
setup(props, ctx) {
const instance = getCurrentInstance();
instance.cesiumClass = "VcPrimitiveOsmBuildings";
const primitivesState = usePrimitives(props, ctx, instance);
instance.createCesiumObject = async () => {
const options = primitivesState == null ? void 0 : primitivesState.transformProps(props);
options.style = options.tileStyle;
delete options.tileStyle;
return compareCesiumVersion(Cesium.VERSION, "1.104") ? await Cesium.createOsmBuildingsAsync(options) : Cesium.createOsmBuildings(options);
};
return () => {
var _a;
return createCommentVNode(kebabCase(((_a = instance.proxy) == null ? void 0 : _a.$options.name) || ""));
};
}
});
export { PrimitiveOsmBuildings as default, osmBuildingsProps };
//# sourceMappingURL=index.mjs.map