casc-cesium
Version:
Vue 3.x components for CesiumJS.
1 lines • 4.71 kB
Source Map (JSON)
{"version":3,"file":"vm.mjs","sources":["../../../../../packages/utils/private/vm.ts"],"sourcesContent":["/*\n * @Author: zouyaoji@https://github.com/zouyaoji\n * @Date: 2021-09-16 09:28:13\n * @LastEditTime: 2021-12-31 09:28:32\n * @LastEditors: zouyaoji\n * @Description:\n * @FilePath: \\vue-cesium@next\\packages\\utils\\private\\vm.ts\n */\nimport { Ref } from 'vue'\nimport { AnyFunction, VcComponentInternalInstance } from '../types'\nimport { camelCase, capitalize } from '../util'\nimport { findIndex } from 'lodash-unified'\n\n// used directly by docs too\nexport function getParentVm(vm) {\n if (vm.$parent !== void 0 && vm.$parent !== null) {\n return vm.$parent\n }\n\n vm = vm.$.parent\n\n while (vm !== void 0 && vm !== null) {\n if (vm.proxy !== void 0 && vm.proxy !== null) {\n return vm.proxy\n }\n\n vm = vm.parent\n }\n}\n\n// vnodes from rendered in advanced slots\nexport function getNormalizedVNodes(vnodes) {\n const children = new Set()\n\n vnodes.forEach(vnode => {\n if (typeof vnode.type === 'symbol' && Array.isArray(vnode.children) === true) {\n vnode.children.forEach(child => {\n children.add(child)\n })\n } else {\n children.add(vnode)\n }\n })\n\n return Array.from(children)\n}\n\nexport function vmHasRouter(vm) {\n return vm.appContext.config.globalProperties.$router !== void 0\n}\n\nexport function vmHasListener(vm, listenerName) {\n return vm.vnode.props !== null && vm.vnode.props[listenerName] !== void 0\n}\n\nexport function getInstanceListener(vcInstance: VcComponentInternalInstance, listenerName: string) {\n const props = vcInstance.vnode.props\n if (props === null) {\n return undefined\n }\n const propKeys = Object.keys(props)\n const index = findIndex(propKeys, o => {\n return o.includes(`on${capitalize(listenerName)}`) || o.includes(`on${capitalize(camelCase(listenerName))}`)\n })\n const listener = props[propKeys[index]]\n return listener as AnyFunction<any>\n}\n\n/**\n * Unwraps refed value\n * @param ref Refed value\n */\nexport function $<T>(ref: Ref<T>) {\n return ref.value\n}\n\nexport function getVcParentInstance(instance: VcComponentInternalInstance): VcComponentInternalInstance {\n const parentInstance = instance.parent as VcComponentInternalInstance\n return !parentInstance.cesiumClass && parentInstance.proxy?.$options.name !== 'VcViewer' ? getVcParentInstance(parentInstance) : parentInstance\n}\n"],"names":[],"mappings":"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"}