UNPKG

@zpc_npm/vue-iclient-common

Version:

KQGIS iClient for Vue.js

999 lines (837 loc) 37.6 kB
/******/ (function() { // webpackBootstrap /******/ "use strict"; /******/ var __webpack_modules__ = ({ /***/ 1349: /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { /* harmony import */ var element_plus_es__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2442); /* harmony import */ var element_plus_es__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(element_plus_es__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _init__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(8945); /* harmony import */ var _init__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_init__WEBPACK_IMPORTED_MODULE_1__); element_plus_es__WEBPACK_IMPORTED_MODULE_0__.ElMessage.install = (Vue, opts) => { _init__WEBPACK_IMPORTED_MODULE_1___default()(Vue, opts); Vue.component("KqMessage", element_plus_es__WEBPACK_IMPORTED_MODULE_0__.ElMessage); }; /* harmony default export */ __webpack_exports__["default"] = (element_plus_es__WEBPACK_IMPORTED_MODULE_0__.ElMessage); /***/ }), /***/ 2442: /***/ (function(module) { module.exports = require("element-plus/es"); /***/ }), /***/ 8945: /***/ (function(module) { module.exports = require("@zpc_npm/vue-iclient-common/init.js"); /***/ }) /******/ }); /************************************************************************/ /******/ // The module cache /******/ var __webpack_module_cache__ = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ // Check if module is in cache /******/ var cachedModule = __webpack_module_cache__[moduleId]; /******/ if (cachedModule !== undefined) { /******/ return cachedModule.exports; /******/ } /******/ // Create a new module (and put it into the cache) /******/ var module = __webpack_module_cache__[moduleId] = { /******/ // no module.id needed /******/ // no module.loaded needed /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /************************************************************************/ /******/ /* webpack/runtime/compat get default export */ /******/ !function() { /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __webpack_require__.n = function(module) { /******/ var getter = module && module.__esModule ? /******/ function() { return module['default']; } : /******/ function() { return module; }; /******/ __webpack_require__.d(getter, { a: getter }); /******/ return getter; /******/ }; /******/ }(); /******/ /******/ /* webpack/runtime/define property getters */ /******/ !function() { /******/ // define getter functions for harmony exports /******/ __webpack_require__.d = function(exports, definition) { /******/ for(var key in definition) { /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); /******/ } /******/ } /******/ }; /******/ }(); /******/ /******/ /* webpack/runtime/hasOwnProperty shorthand */ /******/ !function() { /******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); } /******/ }(); /******/ /******/ /* webpack/runtime/make namespace object */ /******/ !function() { /******/ // define __esModule on exports /******/ __webpack_require__.r = function(exports) { /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); /******/ } /******/ Object.defineProperty(exports, '__esModule', { value: true }); /******/ }; /******/ }(); /******/ /************************************************************************/ var __webpack_exports__ = {}; // This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk. !function() { // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // EXPORTS __webpack_require__.d(__webpack_exports__, { "LayerTreeViewModel": function() { return /* reexport */ LayerTreeViewModel; }, "default": function() { return /* reexport */ LayerTree; } }); ;// CONCATENATED MODULE: external "vue" var external_vue_namespaceObject = require("vue"); ;// CONCATENATED MODULE: external "@element-plus/icons-vue" var icons_vue_namespaceObject = require("@element-plus/icons-vue"); // EXTERNAL MODULE: ./src/common/_ui/message/index.js var message = __webpack_require__(1349); ;// CONCATENATED MODULE: external "@zpc_npm/vue-iclient-common/_utils/mitt" var mitt_namespaceObject = require("@zpc_npm/vue-iclient-common/_utils/mitt"); var mitt_default = /*#__PURE__*/__webpack_require__.n(mitt_namespaceObject); ;// CONCATENATED MODULE: external "@zpc_npm/vue-iclient-common/_utils/gis-utils" var gis_utils_namespaceObject = require("@zpc_npm/vue-iclient-common/_utils/gis-utils"); ;// CONCATENATED MODULE: ./src/common/layertree/LayerTreeViewModel.js /** * Author: ZL * Data: 2022.7.13 * Description: 图层树组件逻辑类. */ class LayerTreeViewModel extends (mitt_default()) { /** * @param {string} mapTarget 组件绑定的map的id * @param {number} maxCounts 图层树勾选最大数量 */ constructor(mapTarget, maxCounts) { super(); /** * 外部参数对象 * @type {Object} * @private */ this._props = { mapTarget }; /** * 最大图层勾选数量 * @type {number} * @private */ this._maxCounts = maxCounts; // 事件绑定this this._resetListData = this._resetListData.bind(this); this._changeMap = this._changeMap.bind(this); } /** * 初始化设置数据,注册事件 */ init() { let mapLayers = gis_utils_namespaceObject.mapLayerUtils.getLayerTreeData(this._props.mapTarget); if (!mapLayers) { // mapview初始化结束监听 如果view已经存在了,mounted事件不会添加监听 gis_utils_namespaceObject.mapViewUtils.bindViewOnceEvents("mounted", this._resetListData, this._props.mapTarget); } else { this.setListData(); } this._registerEvents(); } /** * 注册事件,监听mapview数据变化,监听map切换。 * @private */ _registerEvents() { // 添加图层数据变化监听 gis_utils_namespaceObject.mapViewUtils.bindViewEvents("resetLayerDatas", this._resetListData, this._props.mapTarget); // 切换监听事件 指定mapTarget时 不需要监听 if (!(this._props.mapTarget && this._props.mapTarget !== "")) { gis_utils_namespaceObject.utils.bindChangeMapEvents(this._changeMap); } } /** * mapview数据变化监听事件的回调函数 * @param e {Object} * @private */ _resetListData(e) { // 如果图层变化事件是自己触发的 则不继续执行 避免死循环 if (e && e.eventTarget && e.eventTarget === this) { return; } this.setListData(); } /** * 地图切换监听事件的回调函数,比如二三维切换。 * @param {Object} e * @private */ _changeMap(e) { // 为了防止两个监听同时存在 出现数据出错 const preMapTarget = e.preMapTarget; // 地图切换时 移除切换前地图的数据监听事件 gis_utils_namespaceObject.mapViewUtils.offViewEvents("resetLayerDatas", this._resetListData, preMapTarget); // 地图切换时 添加切换手地图的数据监听事件 不传maptarget 获取当前地图的maptarget gis_utils_namespaceObject.mapViewUtils.bindViewEvents("resetLayerDatas", this._resetListData); // 重新获取、设置数据 this.setListData(); } /** * 设置图层树数据 */ setListData() { let mapLayers = gis_utils_namespaceObject.mapLayerUtils.getLayerTreeData(this._props.mapTarget); let keys = gis_utils_namespaceObject.mapLayerUtils.getLayerCheckedListKey(this._props.mapTarget); if (mapLayers && mapLayers.length > 0) { this.fire("setData", { mapLayers, keys }); } } /** * 图层树勾选事件 * @param {Object} nodeData 操作节点数据 * @param {boolean} checked 是否勾选 */ handleCheck(nodeData, checked) { let checkedLayers = gis_utils_namespaceObject.mapLayerUtils.getLayerCheckedListKey(this._props.mapTarget); if (checked && !isNextChangeNode(nodeData, checked, checkedLayers, this)) { return; } let treeIds = []; if (nodeData.children) { let leafNodes = []; getAllLeafNodesByNodeData(nodeData, leafNodes, checkedLayers); for (let i = 0; i < leafNodes.length; i++) { treeIds.push(leafNodes[i].guid); } } else { treeIds.push(nodeData.guid); } gis_utils_namespaceObject.mapLayerUtils.setLayerVisibleStateByIds(this._props.mapTarget, treeIds, checked, this); } /** * 右键菜单点击事件 * @param {string} key menu的节点index * @param {Object} currentSelectedNode 右键操作树节点的数据 */ handleSelectMenu(key, currentSelectedNode) { if (key === "1") { // 缩放至图层 gis_utils_namespaceObject.mapViewUtils.fitBounds(this._props.mapTarget, currentSelectedNode); } else if (key === "3") { // 置顶 gis_utils_namespaceObject.mapLayerUtils.setLayerBringToFrontById(this._props.mapTarget, currentSelectedNode.guid, true); } else if (key === "4") { // 取消置顶 gis_utils_namespaceObject.mapLayerUtils.setLayerBringToFrontById(this._props.mapTarget, currentSelectedNode.guid, false); } else if (key === "5") { // 图层上移 gis_utils_namespaceObject.mapLayerUtils.raiseLayerByTreeId(this._props.mapTarget, currentSelectedNode.guid); } else if (key === "6") { // 图层下移 gis_utils_namespaceObject.mapLayerUtils.lowerLayerByTreeId(this._props.mapTarget, currentSelectedNode.guid); } else if (key === "7") { gis_utils_namespaceObject.mapLayerUtils.resetLayerZIndex(this._mapTarget); } else if (key === "8") { let keys = gis_utils_namespaceObject.mapLayerUtils.getLayerCheckedListKey(this._props.mapTarget); if (keys && keys.length > 0) { // 这步只会去掉图层显示 gis_utils_namespaceObject.mapLayerUtils.setLayerVisibleStateByIds(this._props.mapTarget, keys, false, this); // 图层树节点取掉勾选状态 this.fire("setTreeChecked", { keys: keys, show: false }); } } else if (key === "9") { // 先触发节点勾选 会实时改变父节点的状态 this.fire("setTreeChecked", { keys: [currentSelectedNode.guid], show: false }); // 删除树节点数据 包括子节点也删除 this.fire("removeNode", { node: currentSelectedNode }); // 删除mapview中添加的对应的数据和去掉layer的渲染 gis_utils_namespaceObject.mapLayerUtils.delTempData(this._props.mapTarget, currentSelectedNode.guid, this); } } /** * 组件销毁时,执行的函数,删除事件监听 */ destroy() { // 删除所有事件监听 this.off(); gis_utils_namespaceObject.mapViewUtils.offViewEvents("mounted", this._resetListData, this._props.mapTarget); gis_utils_namespaceObject.mapViewUtils.offViewEvents("resetLayerDatas", this._resetListData, this._props.mapTarget); if (!(this._props.mapTarget && this._props.mapTarget !== "")) { gis_utils_namespaceObject.utils.offChangeMapEvents(this._changeMap); } } } /** * 判断图层树是否超出子节点限制 * @param {Object} node 节点数据 * @param {boolean} checked 勾选状态 * @param {array} checkedLayers 已经显示的图层数据的keys * @param {LayerTreeViewModel} that 当前LayerTreeViewModel对象 * @return {boolean} */ function isNextChangeNode(node, checked, checkedLayers, that) { if (node.children) { let leafNodes = []; getAllLeafNodesByNodeData(node, leafNodes, checkedLayers); // 勾选状态时 勾选的子图层数量不能大于限制数量 否则不执行勾选操作 if (checked) { if (checkedLayers.length + leafNodes.length > that._maxCounts) { (0,message["default"])({ showClose: true, message: "最大勾选数量只能" + that._maxCounts + "个!", type: "warning", duration: 3000 }); let keys = []; for (let i = 0; i < leafNodes.length; i++) { keys.push(leafNodes[i].guid); } that.fire("setTreeChecked", { keys: keys, show: false }); return false; } } } else { if (checked) { if (checkedLayers.length >= that._maxCounts) { that.fire("setTreeChecked", { keys: [node.guid], show: false }); (0,message["default"])({ showClose: true, message: "最大勾选数量只能" + that._maxCounts + "个!", type: "warning", duration: 3000 }); return false; } } } return true; } /** * 判断树节点是否在已经勾选并显示状态的图层中 * @param {string} guid 节点的guid * @param {array} checkedLayers 已经显示的图层数据的keys * @return {boolean} */ function hasShowLayerByNode(guid, checkedLayers) { for (let i = 0; i < checkedLayers.length; i++) { if (checkedLayers[i] === guid) return true; } return false; } /** * 获取图层树指定节点下所有叶子节点 (勾选操作时排除已经勾选的节点),根据节点数据源 * @param node {Object} node 节点数据 * @param leafNodes {array} 勾选操作,计数的数据 * @param checkedLayers {array} 已经显示的图层数据的keys */ function getAllLeafNodesByNodeData(node, leafNodes, checkedLayers) { if (node.children && node.children.length > 0) { for (let i = 0; i < node.children.length; i++) { getAllLeafNodesByNodeData(node.children[i], leafNodes, checkedLayers); } } else { if (node.checked) { // 勾选操作时 排除已经勾选的节点 if (!hasShowLayerByNode(node.guid, checkedLayers)) { leafNodes.push(node); } } else { leafNodes.push(node); } } } ;// CONCATENATED MODULE: external "@zpc_npm/vue-iclient-icons" var vue_iclient_icons_namespaceObject = require("@zpc_npm/vue-iclient-icons"); ;// CONCATENATED MODULE: external "@zpc_npm/vue-iclient-common/_utils/util" var util_namespaceObject = require("@zpc_npm/vue-iclient-common/_utils/util"); ;// CONCATENATED MODULE: ./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/dist/index.js??ruleSet[0]!./src/common/layertree/LayerTree.vue?vue&type=script&setup=true&lang=js const _hoisted_1 = /*#__PURE__*/(0,external_vue_namespaceObject.createElementVNode)("span", null, "缩放至图层", -1 /* HOISTED */ ); const _hoisted_2 = /*#__PURE__*/(0,external_vue_namespaceObject.createElementVNode)("span", null, "透明度设置", -1 /* HOISTED */ ); const _hoisted_3 = /*#__PURE__*/(0,external_vue_namespaceObject.createElementVNode)("span", null, "图层置顶", -1 /* HOISTED */ ); const _hoisted_4 = /*#__PURE__*/(0,external_vue_namespaceObject.createElementVNode)("span", null, "取消置顶", -1 /* HOISTED */ ); const _hoisted_5 = /*#__PURE__*/(0,external_vue_namespaceObject.createElementVNode)("span", null, "图层上移", -1 /* HOISTED */ ); const _hoisted_6 = /*#__PURE__*/(0,external_vue_namespaceObject.createElementVNode)("span", null, "图层下移", -1 /* HOISTED */ ); const _hoisted_7 = /*#__PURE__*/(0,external_vue_namespaceObject.createElementVNode)("span", null, "图层位置还原", -1 /* HOISTED */ ); const _hoisted_8 = /*#__PURE__*/(0,external_vue_namespaceObject.createElementVNode)("span", null, "取消所有勾选", -1 /* HOISTED */ ); const _hoisted_9 = /*#__PURE__*/(0,external_vue_namespaceObject.createElementVNode)("span", null, "移除节点", -1 /* HOISTED */ ); // 接受组件传参 const __default__ = { name: "KqLayerTree" }; /* harmony default export */ var LayerTreevue_type_script_setup_true_lang_js = (/*#__PURE__*/Object.assign(__default__, { props: { // 每个地图相关组件的必须参数 非必传 指定组件绑定的map对象的div的id mapTarget: String, // 图层树节点最大勾选数量 maxCounts: { type: Number, default: 12 }, // 显示过滤搜索框 showFilterBox: { type: Boolean, default: true }, // 显示右键菜单 showRightMenu: { type: Boolean, default: true }, // 图层树节点显示的属性名 nodeName: { type: String, default: "name" }, // 默认展开第一个节点 defaultExpanded: { type: Boolean, default: true }, // 组件显示位置 position: [String, Object], // 是否显示阴影 showShadow: { type: Boolean, default: true }, // 树控件的属性参数设置。 treeAttributes: Object }, emits: ["openOpacity"], setup(__props, { expose, emit }) { const props = __props; // 组件容器 let boxRef = (0,external_vue_namespaceObject.ref)(null); // 图层树对象 let myTree = (0,external_vue_namespaceObject.ref)(null); // list数据源 let dataList = (0,external_vue_namespaceObject.reactive)({ data: [] }); // 逻辑类 let viewModel = null; // 搜索框绑定值 let inputValue = (0,external_vue_namespaceObject.ref)(""); // 是否显示下拉菜单 let menuDropdown = (0,external_vue_namespaceObject.ref)(false); // 下拉菜单 let dropDownMenu = (0,external_vue_namespaceObject.ref)(null); // 当前选中的节点 let currentSelectedNode = null; let showDelNode = (0,external_vue_namespaceObject.ref)(false); let showOtherNode = (0,external_vue_namespaceObject.ref)(true); // 默认展开节点 let defaultExpandedKeys = (0,external_vue_namespaceObject.reactive)({ data: [] }); (0,external_vue_namespaceObject.onMounted)(() => { (0,util_namespaceObject.updatePosition)(boxRef.value, props); viewModel = new LayerTreeViewModel(props.mapTarget, props.maxCounts); // 逻辑类监听数据设置事件 viewModel.on("setData", _data => { dataList.data.value = _data.mapLayers; // 默认展开第一个节点 if (props.defaultExpanded) { defaultExpandedKeys.data.value = [_data.mapLayers[0].guid]; } (0,external_vue_namespaceObject.nextTick)(() => { myTree.value.$refs.child.setCheckedKeys(_data.keys, true); }); }); // 监听勾选树节点 viewModel.on("setTreeChecked", params => { params.keys.forEach(key => { myTree.value.$refs.child.setChecked(key, params.show); }); }); viewModel.on("removeNode", params => { myTree.value.$refs.child.remove(params.node); }); // 逻辑初始化 viewModel.init(); }); (0,external_vue_namespaceObject.onBeforeUnmount)(() => { viewModel.destroy(); viewModel = null; document.removeEventListener("click", hideMenuDropdown); }); expose({ reset }); function reset() { hideMenuDropdown(); } /** * 图层树右建菜单事件 * @param {object} mouseEvent * @param {object} object * @param {object} node */ function rightClick(mouseEvent, object, node) { if (!props.showRightMenu) { return; } // 临时图层特殊处理 if (object.lsType && object.lsType === "ls") { // 临时图层支持移除节点 showDelNode.value = true; // 临时图层一样子节点才能其他操作 if (object.children) { showOtherNode.value = false; } else { showOtherNode.value = true; } } // 正式图层有自接到才能操作 else if (object.children) { return; } else { showDelNode.value = false; showOtherNode.value = true; } if (node.checked) { menuDropdown.value = true; let menu = dropDownMenu.value.$el; menu.style.left = mouseEvent.clientX - 5 + "px"; menu.style.top = mouseEvent.clientY - 10 + "px"; currentSelectedNode = node; document.addEventListener("click", hideMenuDropdown); } else { (0,message["default"])({ showClose: true, message: "请先勾选图层!", type: "info", duration: 3000 }); } } /** * 图层树checkbox勾选事件 * @param {object} nodeData 操作节点数据,不是节点对象 */ function handleCheck(nodeData) { let currenNode = myTree.value.$refs.child.getNode(nodeData); viewModel.handleCheck(nodeData, currenNode.checked); } /** * 树节点过滤方法 * @param {string} value * @param {object} data * @return {boolean} */ function filterNode(value, data) { if (!value) { return true; } return data[props.nodeName].toLowerCase().indexOf(value.toLowerCase()) !== -1; } /** * 搜索框的搜索按钮事件 */ function searchClick() { myTree.value.$refs.child.filter(inputValue.value); } /** * 右建菜单选择事件 * @param {string} key 菜单每行的key值 */ function handleSelectMenu(key) { if (key === "2") { emit("openOpacity", currentSelectedNode.data); } else { viewModel.handleSelectMenu(key, currentSelectedNode.data); } } /** * 隐藏下拉菜单 */ function hideMenuDropdown() { // 去除选中样式 let selectElement = dropDownMenu.value.$el.querySelector(".is-active"); if (selectElement) selectElement.classList.remove("is-active"); menuDropdown.value = false; document.removeEventListener("click", hideMenuDropdown); } /** * 图层树的行内容重写 * @param {object} h * @param {object} node * @param {object} data * @param {object} store * @returns {JSX.Element} */ function renderContent(h, { node, data, store }) { if (data.children) { return (0,external_vue_namespaceObject.createVNode)((0,external_vue_namespaceObject.resolveComponent)("kq-tooltip"), { "show-after": 500, "class": "item", "effect": "light", "placement": "right", "content": data.name }, { default: () => [(0,external_vue_namespaceObject.createVNode)("span", { "class": "tree-node_span" }, [(0,external_vue_namespaceObject.createVNode)("span", null, [(0,external_vue_namespaceObject.createVNode)((0,external_vue_namespaceObject.resolveComponent)("kq-icon"), { "class": "tree-node_icon" }, { default: () => [(0,external_vue_namespaceObject.createVNode)(vue_iclient_icons_namespaceObject.IconFile, null, null)] })]), (0,external_vue_namespaceObject.createVNode)("span", { "class": "tile" }, [data.shapeType ? data[props.nodeName] + " (" + data.children.length + ")" : data[props.nodeName]])])] }); } else { return (0,external_vue_namespaceObject.createVNode)((0,external_vue_namespaceObject.resolveComponent)("kq-tooltip"), { "show-after": 500, "class": "item", "effect": "light", "placement": "right", "content": data[props.nodeName] }, { default: () => [(0,external_vue_namespaceObject.createVNode)("span", { "class": "tree-node_span" }, [(0,external_vue_namespaceObject.createVNode)("span", null, [(0,external_vue_namespaceObject.createVNode)((0,external_vue_namespaceObject.resolveComponent)("kq-icon"), { "class": "tree-node_icon" }, { default: () => [!(data.rasterLayer || data.vectorLayer) ? (0,external_vue_namespaceObject.createVNode)(vue_iclient_icons_namespaceObject.IconFile, null, null) : data.rasterLayer ? (0,external_vue_namespaceObject.createVNode)(vue_iclient_icons_namespaceObject.IconImage, null, null) : data.shapeType === "polyline" ? (0,external_vue_namespaceObject.createVNode)(vue_iclient_icons_namespaceObject.IconPolyline, null, null) : data.shapeType === "polygon" ? (0,external_vue_namespaceObject.createVNode)(vue_iclient_icons_namespaceObject.IconPolygon2, null, null) : data.shapeType === "point" ? (0,external_vue_namespaceObject.createVNode)(vue_iclient_icons_namespaceObject.IconPoint, null, null) : ""] })]), (0,external_vue_namespaceObject.createVNode)("span", { "class": "tile" }, [data[props.nodeName]])])] }); } } return (_ctx, _cache) => { const _component_kq_button = (0,external_vue_namespaceObject.resolveComponent)("kq-button"); const _component_kq_input = (0,external_vue_namespaceObject.resolveComponent)("kq-input"); const _component_kq_tree = (0,external_vue_namespaceObject.resolveComponent)("kq-tree"); const _component_kq_scrollbar = (0,external_vue_namespaceObject.resolveComponent)("kq-scrollbar"); const _component_kq_icon = (0,external_vue_namespaceObject.resolveComponent)("kq-icon"); const _component_kq_menu_item = (0,external_vue_namespaceObject.resolveComponent)("kq-menu-item"); const _component_kq_divider = (0,external_vue_namespaceObject.resolveComponent)("kq-divider"); const _component_kq_menu = (0,external_vue_namespaceObject.resolveComponent)("kq-menu"); return (0,external_vue_namespaceObject.openBlock)(), (0,external_vue_namespaceObject.createElementBlock)("div", { class: (0,external_vue_namespaceObject.normalizeClass)(["layer-tree", __props.showShadow ? 'shadow' : null]), ref_key: "boxRef", ref: boxRef }, [(0,external_vue_namespaceObject.createCommentVNode)(" S 搜索框 "), props.showFilterBox ? ((0,external_vue_namespaceObject.openBlock)(), (0,external_vue_namespaceObject.createBlock)(_component_kq_input, { key: 0, modelValue: (0,external_vue_namespaceObject.unref)(inputValue), "onUpdate:modelValue": _cache[0] || (_cache[0] = $event => (0,external_vue_namespaceObject.isRef)(inputValue) ? inputValue.value = $event : inputValue = $event), class: "w-50 m-2 searchInput-class", placeholder: "请输入过滤内容", onClear: searchClick }, { append: (0,external_vue_namespaceObject.withCtx)(() => [(0,external_vue_namespaceObject.createVNode)(_component_kq_button, { icon: (0,external_vue_namespaceObject.unref)(icons_vue_namespaceObject.Search), onClick: searchClick }, null, 8 /* PROPS */ , ["icon"])]), _: 1 /* STABLE */ }, 8 /* PROPS */ , ["modelValue"])) : (0,external_vue_namespaceObject.createCommentVNode)("v-if", true), (0,external_vue_namespaceObject.createCommentVNode)(" E 搜索框 "), (0,external_vue_namespaceObject.createCommentVNode)(" S 图层树 "), (0,external_vue_namespaceObject.createVNode)(_component_kq_scrollbar, { class: "scrollbar-class" }, { default: (0,external_vue_namespaceObject.withCtx)(() => [(0,external_vue_namespaceObject.createVNode)(_component_kq_tree, (0,external_vue_namespaceObject.mergeProps)({ data: (0,external_vue_namespaceObject.unref)(dataList).data.value, ref_key: "myTree", ref: myTree, "expand-on-click-node": true, onNodeContextmenu: rightClick, onCheck: handleCheck, "node-key": "guid", "filter-node-method": filterNode, "show-checkbox": "", "render-content": renderContent, "default-expanded-keys": (0,external_vue_namespaceObject.unref)(defaultExpandedKeys).data.value }, props.treeAttributes), null, 16 /* FULL_PROPS */ , ["data", "default-expanded-keys"])]), _: 1 /* STABLE */ }), (0,external_vue_namespaceObject.createCommentVNode)(" E 图层树 "), (0,external_vue_namespaceObject.createCommentVNode)(" S 菜单 "), (0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createElementVNode)("div", null, [(0,external_vue_namespaceObject.createVNode)(_component_kq_menu, { ref_key: "dropDownMenu", ref: dropDownMenu, class: "tree-menu", onSelect: handleSelectMenu }, { default: (0,external_vue_namespaceObject.withCtx)(() => [(0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)(_component_kq_menu_item, { index: "1" }, { default: (0,external_vue_namespaceObject.withCtx)(() => [(0,external_vue_namespaceObject.createVNode)(_component_kq_icon, null, { default: (0,external_vue_namespaceObject.withCtx)(() => [(0,external_vue_namespaceObject.createVNode)((0,external_vue_namespaceObject.unref)(icons_vue_namespaceObject.FullScreen))]), _: 1 /* STABLE */ }), _hoisted_1]), _: 1 /* STABLE */ }, 512 /* NEED_PATCH */ ), [[external_vue_namespaceObject.vShow, (0,external_vue_namespaceObject.unref)(showOtherNode)]]), (0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)(_component_kq_menu_item, { index: "2" }, { default: (0,external_vue_namespaceObject.withCtx)(() => [(0,external_vue_namespaceObject.createVNode)(_component_kq_icon, null, { default: (0,external_vue_namespaceObject.withCtx)(() => [(0,external_vue_namespaceObject.createVNode)((0,external_vue_namespaceObject.unref)(icons_vue_namespaceObject.MagicStick))]), _: 1 /* STABLE */ }), _hoisted_2]), _: 1 /* STABLE */ }, 512 /* NEED_PATCH */ ), [[external_vue_namespaceObject.vShow, (0,external_vue_namespaceObject.unref)(showOtherNode)]]), (0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)(_component_kq_divider, null, null, 512 /* NEED_PATCH */ ), [[external_vue_namespaceObject.vShow, (0,external_vue_namespaceObject.unref)(showOtherNode)]]), (0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)(_component_kq_menu_item, { index: "3" }, { default: (0,external_vue_namespaceObject.withCtx)(() => [(0,external_vue_namespaceObject.createVNode)(_component_kq_icon, null, { default: (0,external_vue_namespaceObject.withCtx)(() => [(0,external_vue_namespaceObject.createVNode)((0,external_vue_namespaceObject.unref)(icons_vue_namespaceObject.Download), { class: "layer-top" })]), _: 1 /* STABLE */ }), _hoisted_3]), _: 1 /* STABLE */ }, 512 /* NEED_PATCH */ ), [[external_vue_namespaceObject.vShow, (0,external_vue_namespaceObject.unref)(showOtherNode)]]), (0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)(_component_kq_menu_item, { index: "4" }, { default: (0,external_vue_namespaceObject.withCtx)(() => [(0,external_vue_namespaceObject.createVNode)(_component_kq_icon, null, { default: (0,external_vue_namespaceObject.withCtx)(() => [(0,external_vue_namespaceObject.createVNode)((0,external_vue_namespaceObject.unref)(icons_vue_namespaceObject.Download))]), _: 1 /* STABLE */ }), _hoisted_4]), _: 1 /* STABLE */ }, 512 /* NEED_PATCH */ ), [[external_vue_namespaceObject.vShow, (0,external_vue_namespaceObject.unref)(showOtherNode)]]), (0,external_vue_namespaceObject.createVNode)(_component_kq_divider), (0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)(_component_kq_menu_item, { index: "5" }, { default: (0,external_vue_namespaceObject.withCtx)(() => [(0,external_vue_namespaceObject.createVNode)(_component_kq_icon, null, { default: (0,external_vue_namespaceObject.withCtx)(() => [(0,external_vue_namespaceObject.createVNode)((0,external_vue_namespaceObject.unref)(icons_vue_namespaceObject.Top))]), _: 1 /* STABLE */ }), _hoisted_5]), _: 1 /* STABLE */ }, 512 /* NEED_PATCH */ ), [[external_vue_namespaceObject.vShow, (0,external_vue_namespaceObject.unref)(showOtherNode)]]), (0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)(_component_kq_menu_item, { index: "6" }, { default: (0,external_vue_namespaceObject.withCtx)(() => [(0,external_vue_namespaceObject.createVNode)(_component_kq_icon, null, { default: (0,external_vue_namespaceObject.withCtx)(() => [(0,external_vue_namespaceObject.createVNode)((0,external_vue_namespaceObject.unref)(icons_vue_namespaceObject.Bottom))]), _: 1 /* STABLE */ }), _hoisted_6]), _: 1 /* STABLE */ }, 512 /* NEED_PATCH */ ), [[external_vue_namespaceObject.vShow, (0,external_vue_namespaceObject.unref)(showOtherNode)]]), (0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)(_component_kq_divider, null, null, 512 /* NEED_PATCH */ ), [[external_vue_namespaceObject.vShow, (0,external_vue_namespaceObject.unref)(showOtherNode)]]), (0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)(_component_kq_menu_item, { index: "7" }, { default: (0,external_vue_namespaceObject.withCtx)(() => [(0,external_vue_namespaceObject.createVNode)(_component_kq_icon, null, { default: (0,external_vue_namespaceObject.withCtx)(() => [(0,external_vue_namespaceObject.createVNode)((0,external_vue_namespaceObject.unref)(icons_vue_namespaceObject.RefreshLeft))]), _: 1 /* STABLE */ }), _hoisted_7]), _: 1 /* STABLE */ }, 512 /* NEED_PATCH */ ), [[external_vue_namespaceObject.vShow, (0,external_vue_namespaceObject.unref)(showOtherNode)]]), (0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)(_component_kq_menu_item, { index: "8" }, { default: (0,external_vue_namespaceObject.withCtx)(() => [(0,external_vue_namespaceObject.createVNode)(_component_kq_icon, null, { default: (0,external_vue_namespaceObject.withCtx)(() => [(0,external_vue_namespaceObject.createVNode)((0,external_vue_namespaceObject.unref)(icons_vue_namespaceObject.Hide))]), _: 1 /* STABLE */ }), _hoisted_8]), _: 1 /* STABLE */ }, 512 /* NEED_PATCH */ ), [[external_vue_namespaceObject.vShow, (0,external_vue_namespaceObject.unref)(showOtherNode)]]), (0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)(_component_kq_divider, null, null, 512 /* NEED_PATCH */ ), [[external_vue_namespaceObject.vShow, (0,external_vue_namespaceObject.unref)(showOtherNode)]]), (0,external_vue_namespaceObject.withDirectives)((0,external_vue_namespaceObject.createVNode)(_component_kq_menu_item, { index: "9" }, { default: (0,external_vue_namespaceObject.withCtx)(() => [(0,external_vue_namespaceObject.createVNode)(_component_kq_icon, null, { default: (0,external_vue_namespaceObject.withCtx)(() => [(0,external_vue_namespaceObject.createVNode)((0,external_vue_namespaceObject.unref)(icons_vue_namespaceObject.Delete))]), _: 1 /* STABLE */ }), _hoisted_9]), _: 1 /* STABLE */ }, 512 /* NEED_PATCH */ ), [[external_vue_namespaceObject.vShow, (0,external_vue_namespaceObject.unref)(showDelNode)]])]), _: 1 /* STABLE */ }, 512 /* NEED_PATCH */ )], 512 /* NEED_PATCH */ ), [[external_vue_namespaceObject.vShow, (0,external_vue_namespaceObject.unref)(menuDropdown)]]), (0,external_vue_namespaceObject.createCommentVNode)(" E 菜单 ")], 2 /* CLASS */ ); }; } })); ;// CONCATENATED MODULE: ./src/common/layertree/LayerTree.vue?vue&type=script&setup=true&lang=js ;// CONCATENATED MODULE: ./src/common/layertree/LayerTree.vue const __exports__ = LayerTreevue_type_script_setup_true_lang_js; /* harmony default export */ var LayerTree = (__exports__); // EXTERNAL MODULE: external "@zpc_npm/vue-iclient-common/init.js" var init_js_ = __webpack_require__(8945); var init_js_default = /*#__PURE__*/__webpack_require__.n(init_js_); ;// CONCATENATED MODULE: ./src/common/layertree/index.js LayerTree.install = (Vue, opts) => { init_js_default()(Vue, opts); Vue.component(LayerTree.name, LayerTree); }; }(); module.exports = __webpack_exports__; /******/ })() ;