@opentiny/tiny-engine-plugin-page 2.6.0-alpha.5 → 2.6.0-alpha.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -7658,7 +7658,7 @@ function Cn(a, t, n, e, s, i) {
7658
7658
  }, 8, ["model", "rules"])
7659
7659
  ]);
7660
7660
  }
7661
- const Nn = /* @__PURE__ */ ka(Pn, [["render", Cn], ["__scopeId", "data-v-092c6e3f"]]), Hn = {
7661
+ const Nn = /* @__PURE__ */ ka(Pn, [["render", Cn], ["__scopeId", "data-v-2bfaa8aa"]]), Hn = {
7662
7662
  ...de,
7663
7663
  apis: Ka,
7664
7664
  entry: un,
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../meta.js","../src/PageTree.vue","../src/Main.vue","../src/composable/index.ts","../src/PageGeneral.vue","../index.ts"],"sourcesContent":["export default {\n id: 'engine.plugins.appmanage',\n title: '页面',\n type: 'plugins',\n icon: 'plugin-icon-page'\n}\n","<template>\n <div class=\"app-manage-search\">\n <tiny-search v-model=\"state.pageSearchValue\" clearable placeholder=\"搜索\">\n <template #prefix>\n <tiny-icon-search />\n </template>\n </tiny-search>\n </div>\n\n <tiny-collapse v-model=\"state.collapseValue\" class=\"page-manage-collapse lowcode-scrollbar\">\n <tiny-collapse-item v-for=\"(groupItem, index) in pageSettingState.pages\" :key=\"index\" :name=\"groupItem.groupId\">\n <template #title>\n <span class=\"title\">{{ groupItem.groupName }}</span>\n </template>\n <div class=\"app-manage-tree\">\n <draggable-tree\n :data=\"groupItem.data\"\n label-key=\"name\"\n :active=\"state.currentNodeData.id\"\n :filter-value=\"state.pageSearchValue\"\n :root-id=\"pageSettingState.ROOT_ID\"\n :draggable=\"groupItem.groupId === STATIC_PAGE_GROUP_ID\"\n @click-row=\"handleClickRow\"\n @move-node=\"handleMoveNode\"\n >\n <template #row-suffix=\"{ node }\">\n <div :class=\"['actions']\">\n <svg-button v-if=\"isPageLocked(node.rawData)\" name=\"locked\" :hoverBgColor=\"false\"></svg-button>\n <svg-button v-if=\"node.rawData.isHome\" name=\"home\" :hoverBgColor=\"false\"></svg-button>\n <tiny-popover\n :ref=\"(el) => setPopoverRef(el, node.id)\"\n placement=\"bottom-start\"\n :visible-arrow=\"false\"\n popper-class=\"page-tree-row-operation-list\"\n >\n <div class=\"operation-list\">\n <div\n v-for=\"(operation, index) in getRowOperations(groupItem.groupId, node)\"\n :key=\"index\"\n :class=\"[operation.type === 'divider' ? 'divider' : 'item'].concat(operation.class || [])\"\n @click=\"operation.action?.(node)\"\n >\n {{ operation.label }}\n </div>\n </div>\n <template #reference>\n <svg-button name=\"ellipsis\" class=\"auto-hidden\" :hoverBgColor=\"false\"></svg-button>\n </template>\n </tiny-popover>\n </div>\n </template>\n </draggable-tree>\n </div>\n </tiny-collapse-item>\n </tiny-collapse>\n</template>\n<script lang=\"tsx\">import { callEntry as _callEntry, useCompile as _useCompile } from '@opentiny/tiny-engine-meta-register';\nimport _metaData from '../meta.js';\n/* metaService: engine.plugins.appmanage.PageTree */\nimport { reactive, onMounted, onUnmounted } from 'vue';\nimport { Search, Collapse, CollapseItem, Popover } from '@opentiny/vue';\nimport { IconFolderOpened, IconFolderClosed, IconSearch } from '@opentiny/vue-icon';\nimport { useCanvas, useModal, usePage, useNotify, useMessage, getMetaApi, META_SERVICE } from '@opentiny/tiny-engine-meta-register';\nimport { isEqual } from '@opentiny/vue-renderless/common/object';\nimport { getCanvasStatus } from '@opentiny/tiny-engine-common/js/canvas';\nimport { handlePageUpdate } from '@opentiny/tiny-engine-common/js/http';\nimport { constants } from '@opentiny/tiny-engine-utils';\nimport { closePageSettingPanel } from './PageSetting.vue';\nimport { closeFolderSettingPanel } from './PageFolderSetting.vue';\nimport http from './http';\nimport DraggableTree from './Tree.vue';\nimport { SvgButton } from '@opentiny/tiny-engine-common';\nconst {\n PAGE_STATUS\n} = constants;\nexport default {\n components: {\n TinySearch: Search,\n TinyCollapse: Collapse,\n TinyCollapseItem: CollapseItem,\n TinyIconSearch: IconSearch(),\n TinyPopover: Popover,\n DraggableTree,\n SvgButton\n },\n props: {\n isFolder: {\n type: Boolean,\n default: false\n }\n },\n emits: ['openSettingPanel', 'add', 'createPage', 'createFolder', 'settingHome'],\n setup(props, {\n emit\n }) {\n const {\n confirm\n } = useModal();\n const {\n pageState,\n isBlock,\n isSaved\n } = useCanvas();\n const {\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPage: switchPageById\n } = usePage();\n const {\n fetchPageDetail,\n requestUpdatePage\n } = http;\n const getAppId = _callEntry(() => getMetaApi(META_SERVICE.GlobalService).getBaseInfo().id, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.getAppId'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const state = reactive({\n pageSearchValue: '',\n collapseValue: [STATIC_PAGE_GROUP_ID, COMMON_PAGE_GROUP_ID],\n currentNodeData: {\n id: getMetaApi(META_SERVICE.GlobalService).getBaseInfo().pageId\n }\n });\n const {\n subscribe,\n unsubscribe\n } = useMessage();\n let subscriber = null;\n onMounted(_callEntry(() => {\n subscriber = subscribe({\n topic: 'locationHistoryChanged',\n callback: data => {\n if (data.pageId) {\n state.currentNodeData = {\n id: data.pageId\n };\n } else if (isBlock()) {\n state.currentNodeData = {};\n }\n },\n subscriber: 'pageTree'\n });\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.onMounted[0]'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n }));\n onUnmounted(_callEntry(() => {\n if (subscriber) {\n unsubscribe(subscriber);\n }\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.onUnmounted[0]'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n }));\n const refreshPageList = _callEntry(async appId => {\n const pages = await getPageList(appId);\n return pages;\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.refreshPageList'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n pageSettingState.updateTreeData = async () => {\n const pageList = await refreshPageList(getAppId());\n return pageList;\n };\n const switchPage = _callEntry(data => {\n state.currentNodeData = data;\n switchPageById(data.id).then(() => {\n closePageSettingPanel();\n closeFolderSettingPanel();\n });\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.switchPage'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const nodeClick = _callEntry((e, pageData) => {\n e?.stopPropagation();\n const {\n id,\n isPage\n } = pageData;\n\n // 区块切换回页面需要重新加载页面\n // 区块切换回页面需要重新加载页面\n if (!isBlock() && id === state?.currentNodeData?.id || !isPage) {\n return;\n }\n if (isSaved() && isCurrentDataSame()) {\n switchPage(pageData);\n } else {\n confirm({\n title: '提示',\n message: `${isBlock() ? '区块' : '页面'}尚未保存,是否要继续切换?`,\n exec: () => {\n changeTreeData(pageSettingState.oldParentId, pageSettingState.currentPageData.parentId);\n Object.assign(pageSettingState.currentPageData, pageSettingState.currentPageDataCopy);\n switchPage(pageData);\n }\n });\n }\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.nodeClick'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const openSettingPanel = _callEntry((e, pageData, isPageLocked) => {\n e?.stopPropagation();\n if (isPageLocked && pageData.isPage) {\n const username = pageData.occupier?.username || '';\n useModal().message({\n message: `您点击的页面被${username}锁定,暂时无法编辑,请联系解锁`\n });\n return;\n }\n if (isEqual(pageSettingState.currentPageData, pageSettingState.currentPageDataCopy)) {\n emit('openSettingPanel', pageData);\n } else {\n confirm({\n title: '提示',\n message: `当前页面或文件夹${pageSettingState.currentPageData.name}尚未保存,是否要继续切换?`,\n exec: () => {\n changeTreeData(pageSettingState.oldParentId, pageSettingState.currentPageData.parentId);\n Object.assign(pageSettingState.currentPageData, pageSettingState.currentPageDataCopy);\n emit('openSettingPanel', pageData);\n }\n });\n }\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.openSettingPanel'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const popoverRefs = {};\n const setPopoverRef = _callEntry((el, nodeId) => {\n popoverRefs[nodeId] = el;\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.setPopoverRef'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const handleClickRow = _callEntry(node => {\n nodeClick(null, node.rawData);\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.handleClickRow'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const isPageLocked = _callEntry(pageData => {\n return getCanvasStatus(pageData.occupier).state === PAGE_STATUS.Lock;\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.isPageLocked'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const handleClickPageSettings = _callEntry(node => {\n openSettingPanel(null, node.rawData, isPageLocked(node.rawData));\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.handleClickPageSettings'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const createPage = _callEntry(node => {\n emit('createPage', 'staticPages', node.id);\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.createPage'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const createFolder = _callEntry(node => {\n emit('createFolder', node.id);\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.createFolder'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const settingHome = _callEntry(node => {\n emit('settingHome', node);\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.settingHome'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const rowOperations = [{\n type: 'settings',\n label: '设置',\n action: handleClickPageSettings\n }, {\n type: 'divider'\n }, {\n type: 'createPage',\n label: '新建子页面',\n action: createPage\n }, {\n type: 'createFolder',\n label: '新建子文件夹',\n action: createFolder\n }, {\n type: 'settingHome',\n label: '设置为主页',\n action: settingHome\n }\n // TODO 复制和删除的逻辑耦合在其他组件内,暂时屏蔽\n // { type: 'divider' },\n // { type: 'copy', label: '复制页面', action: copyPage },\n // { type: 'delete', label: '删除', class: ['danger'], action: deleteNode }\n ].map(item => ({\n ...item,\n action: node => {\n item.action?.(node);\n // 点击 action 后,关闭 popover 弹窗\n popoverRefs[node.id]?.doClose?.();\n }\n }));\n const getRowOperations = _callEntry((groupId, node) => {\n if (groupId === COMMON_PAGE_GROUP_ID) {\n return rowOperations.slice(0, 1);\n }\n if (!node.rawData.isPage || node.rawData.group === 'public') {\n return rowOperations.filter(item => item.type !== 'settingHome');\n }\n // TODO 复制逻辑暂时屏蔽\n // if (!node.rawData.isPage) {\n // return rowOperations.filter((item) => item.type !== 'copy')\n // }\n\n // TODO 复制逻辑暂时屏蔽\n // if (!node.rawData.isPage) {\n // return rowOperations.filter((item) => item.type !== 'copy')\n // }\n\n return rowOperations;\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.getRowOperations'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const updatePage = _callEntry(pageDetail => {\n const {\n id,\n name,\n page_content\n } = pageDetail;\n const params = {\n ...pageDetail,\n page_content: {\n ...page_content,\n fileName: name\n }\n };\n const isCurEditPage = pageState?.currentPage?.id === id;\n const updateParams = {\n id,\n params,\n isCurEditPage\n };\n return handlePageUpdate(updateParams);\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.updatePage'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const updateFolder = _callEntry(pageDetail => {\n const {\n id\n } = pageDetail;\n\n // requestUpdatePage加了then和catch回调函数,而handlePageUpdate没有加,是因为handlePageUpdate内部都已经有了类似逻辑\n // requestUpdatePage加了then和catch回调函数,而handlePageUpdate没有加,是因为handlePageUpdate内部都已经有了类似逻辑\n return requestUpdatePage(id, {\n ...pageDetail,\n page_content: null\n }).then(() => {\n useNotify({\n type: 'success',\n message: '更新文件夹成功!'\n });\n }).catch(error => {\n useNotify({\n type: 'error',\n title: '更新文件夹失败',\n message: JSON.stringify(error?.message || error)\n });\n }).finally(() => {\n pageSettingState.updateTreeData();\n pageSettingState.isNew = false;\n });\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.updateFolder'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const handleMoveNode = _callEntry((dragged, newParent) => {\n if (isEqual(pageSettingState.currentPageData, pageSettingState.currentPageDataCopy)) {\n closePageSettingPanel();\n closeFolderSettingPanel();\n pageSettingState.currentPageData.id = dragged.id;\n changeTreeData(newParent.id, dragged.parentId);\n resetPageData();\n // TODO 页面更换父节点后,原来每次变更需要填写变更信息\n // TODO 页面更换父节点后,原来每次变更需要填写变更信息\n fetchPageDetail(dragged.id).then(pageDetail => {\n pageDetail.parentId = newParent.id;\n if (pageDetail.isPage) {\n pageDetail.isDefault = false;\n updatePage(pageDetail);\n } else {\n updateFolder(pageDetail);\n }\n }).catch(error => {\n useNotify({\n type: 'error',\n title: '移动页面文件/文件夹失败',\n message: JSON.stringify(error?.message || error)\n });\n });\n } else {\n confirm({\n title: '提示',\n message: '更改尚未保存,是否要放弃这些更改?',\n exec: () => {\n if (!pageSettingState.isNew) {\n changeTreeData(pageSettingState.oldParentId, pageSettingState.currentPageData.parentId);\n Object.assign(pageSettingState.currentPageData, pageSettingState.currentPageDataCopy);\n }\n closePageSettingPanel();\n }\n });\n }\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.handleMoveNode'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n useMessage().subscribe({\n topic: 'app_id_changed',\n subscriber: 'page_tree_app_id_changed',\n callback: appId => {\n refreshPageList(appId);\n }\n });\n const createPublicPage = _callEntry(e => {\n e.stopPropagation();\n e.preventDefault();\n emit('add');\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.createPublicPage'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n onUnmounted(_callEntry(() => {\n useMessage().unsubscribe({\n topic: 'app_id_changed',\n subscriber: 'page_tree_app_id_changed'\n });\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.onUnmounted[1]'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n }));\n return {\n createPublicPage,\n state,\n switchPage,\n pageSettingState,\n setPopoverRef,\n IconFolderOpened: IconFolderOpened(),\n IconFolderClosed: IconFolderClosed(),\n getRowOperations,\n handleClickRow,\n handleMoveNode,\n isPageLocked,\n handleClickPageSettings,\n STATIC_PAGE_GROUP_ID\n };\n }\n};</script>\n\n<style lang=\"less\" scoped>\n.app-manage-search {\n padding: 0 12px 12px 12px;\n}\n\n.page-manage-collapse {\n height: calc(100% - 95px);\n overflow-y: auto;\n .app-manage-public-page {\n position: absolute;\n right: 0;\n cursor: pointer;\n svg {\n font-size: 22px;\n }\n }\n :deep(.tiny-collapse-item__header) {\n &,\n &.is-active {\n &::before {\n border: none;\n }\n }\n }\n :deep(.tiny-collapse-item) {\n border-left: 0;\n border-right: 0;\n }\n :deep(.tiny-collapse-item__content) {\n padding: 0 0 12px 0;\n }\n}\n\n.page-manage-collapse.page-manage-collapse {\n :deep(.tiny-collapse-item__content) {\n padding-top: 0;\n }\n}\n\n.app-manage-tree {\n .actions {\n display: flex;\n align-items: center;\n svg {\n color: var(--te-page-manage-icon-color);\n outline: none;\n }\n .auto-hidden {\n visibility: hidden;\n }\n }\n .row:hover .actions .auto-hidden {\n visibility: visible;\n }\n}\n</style>\n<style lang=\"less\">\n.tiny-popover.tiny-popper[x-placement].page-tree-row-operation-list {\n padding: 0;\n margin-top: 4px;\n .operation-list {\n min-width: 110px;\n padding: 8px 0;\n & > div {\n padding: 0 12px;\n }\n .item {\n height: 24px;\n font-size: 12px;\n line-height: 18px;\n cursor: pointer;\n display: flex;\n align-items: center;\n &:hover {\n background-color: var(--te-page-manage-operation-list-item-bg-color-hover);\n }\n }\n .divider {\n height: 8px;\n display: flex;\n align-items: center;\n &::after {\n content: '';\n display: block;\n width: 100%;\n height: 1px;\n background-color: var(--te-page-manage-operation-list-item-border-color-divider);\n }\n }\n .danger {\n color: var(--te-page-manage-operation-list-text-color-error);\n }\n }\n}\n</style>\n","<template>\n <div class=\"plugin-page\">\n <plugin-panel\n :title=\"title\"\n :fixed-name=\"PLUGIN_NAME.AppManage\"\n :fixedPanels=\"fixedPanels\"\n @close=\"pluginPanelClosed\"\n :docsUrl=\"docsUrl\"\n :docsContent=\"docsContent\"\n :isShowDocsIcon=\"true\"\n >\n <template #header>\n <svg-button\n class=\"add-folder-icon\"\n name=\"add-folder\"\n placement=\"bottom\"\n tips=\"新建文件夹\"\n @click=\"createNewFolder()\"\n ></svg-button>\n <svg-button\n class=\"new-page-icon\"\n name=\"new-page\"\n placement=\"bottom\"\n tips=\"新建页面\"\n @click=\"createNewPage('staticPages')\"\n ></svg-button>\n </template>\n <template #content>\n <page-tree\n ref=\"pageTreeRef\"\n :isFolder=\"state.isFolder\"\n @add=\"createNewPage('publicPages')\"\n @openSettingPanel=\"openSettingPanel\"\n @createPage=\"createNewPage\"\n @createFolder=\"createNewFolder\"\n @settingHome=\"settingHome\"\n ></page-tree>\n </template>\n </plugin-panel>\n <page-setting :isFolder=\"state.isFolder\" @openNewPage=\"openNewPage\"></page-setting>\n <page-folder-setting :isFolder=\"state.isFolder\"></page-folder-setting>\n </div>\n</template>\n<script lang=\"tsx\">import { callEntry as _callEntry, useCompile as _useCompile } from '@opentiny/tiny-engine-meta-register';\nimport _metaData from '../meta.js';\n/* metaService: engine.plugins.appmanage.Main */\nimport { reactive, ref, watchEffect, provide } from 'vue';\nimport { useCanvas, usePage, useHelp, useModal, useNotify, useLayout } from '@opentiny/tiny-engine-meta-register';\nimport { PluginPanel, SvgButton } from '@opentiny/tiny-engine-common';\nimport { extend } from '@opentiny/vue-renderless/common/object';\nimport PageSetting, { openPageSettingPanel, closePageSettingPanel } from './PageSetting.vue';\nimport PageFolderSetting, { openFolderSettingPanel, closeFolderSettingPanel } from './PageFolderSetting.vue';\nimport PageTree from './PageTree.vue';\nimport { fetchPageDetail, handleRouteHomeUpdate } from './http';\nexport const api = {\n getPageById: async id => {\n if (id) {\n return fetchPageDetail(id);\n }\n return undefined;\n },\n openPageSettingPanel\n};\n\n/* metaComponent: engine.plugins.page */\nexport default {\n components: {\n PageSetting: _useCompile({\n component: PageSetting,\n metaData: {\n id: 'engine.plugins.page.PageSetting'\n }\n }),\n PluginPanel: _useCompile({\n component: PluginPanel,\n metaData: {\n id: 'engine.plugins.page.PluginPanel'\n }\n }),\n SvgButton: _useCompile({\n component: SvgButton,\n metaData: {\n id: 'engine.plugins.page.SvgButton'\n }\n }),\n PageFolderSetting: _useCompile({\n component: PageFolderSetting,\n metaData: {\n id: 'engine.plugins.page.PageFolderSetting'\n }\n }),\n PageTree: _useCompile({\n component: PageTree,\n metaData: {\n id: 'engine.plugins.page.PageTree'\n }\n })\n },\n props: {\n title: {\n type: String,\n default: '页面'\n },\n fixedPanels: {\n type: Array\n }\n },\n emits: ['close'],\n setup(props, {\n emit\n }) {\n const {\n confirm\n } = useModal();\n const {\n pageState\n } = useCanvas();\n const {\n pageSettingState,\n getDefaultPage,\n isTemporaryPage,\n initCurrentPageData\n } = usePage();\n const {\n PLUGIN_NAME\n } = useLayout();\n const panelState = reactive({\n emitEvent: emit\n });\n provide('panelState', panelState);\n const pageTreeRef = ref(null);\n const ROOT_ID = pageSettingState.ROOT_ID;\n const docsUrl = useHelp().getDocsUrl('page');\n const docsContent = '在这里新增页面/文件夹,还可以对已有的页面进行生命周期管理。';\n const state = reactive({\n isFolder: false\n });\n const createNewPage = _callEntry((group, parentId = ROOT_ID) => {\n closeFolderSettingPanel();\n pageSettingState.isNew = true;\n try {\n const defaultPage = getDefaultPage();\n if (!defaultPage) {\n throw new Error('Failed to get default page configuration');\n }\n pageSettingState.currentPageData = {\n ...getDefaultPage(),\n ...defaultPage,\n parentId,\n route: '',\n name: 'Untitled',\n page_content: {\n lifeCycles: {}\n },\n group\n };\n } catch (error) {\n throw new Error(error);\n // console.error('Failed to create new page:', error)\n }\n pageSettingState.currentPageDataCopy = extend(true, {}, pageSettingState.currentPageData);\n state.isFolder = false;\n openPageSettingPanel();\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.Main.createNewPage'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n pageSettingState,\n getDefaultPage,\n isTemporaryPage,\n initCurrentPageData,\n PLUGIN_NAME,\n panelState,\n pageTreeRef,\n ROOT_ID,\n docsUrl,\n docsContent,\n state,\n createNewPage,\n createNewFolder,\n settingHome,\n openSettingPanel,\n pluginPanelClosed,\n openNewPage,\n useCanvas,\n usePage,\n useHelp,\n useModal,\n useNotify,\n useLayout,\n PluginPanel,\n SvgButton,\n extend,\n PageSetting,\n openPageSettingPanel,\n closePageSettingPanel,\n PageFolderSetting,\n openFolderSettingPanel,\n closeFolderSettingPanel,\n PageTree,\n fetchPageDetail,\n handleRouteHomeUpdate,\n api\n })\n });\n const createNewFolder = _callEntry((parentId = ROOT_ID) => {\n closePageSettingPanel();\n pageSettingState.isNew = true;\n pageSettingState.currentPageData = {\n parentId,\n route: '',\n name: 'untitled'\n };\n pageSettingState.currentPageDataCopy = extend(true, {}, pageSettingState.currentPageData);\n state.isFolder = true;\n openFolderSettingPanel();\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.Main.createNewFolder'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n pageSettingState,\n getDefaultPage,\n isTemporaryPage,\n initCurrentPageData,\n PLUGIN_NAME,\n panelState,\n pageTreeRef,\n ROOT_ID,\n docsUrl,\n docsContent,\n state,\n createNewPage,\n createNewFolder,\n settingHome,\n openSettingPanel,\n pluginPanelClosed,\n openNewPage,\n useCanvas,\n usePage,\n useHelp,\n useModal,\n useNotify,\n useLayout,\n PluginPanel,\n SvgButton,\n extend,\n PageSetting,\n openPageSettingPanel,\n closePageSettingPanel,\n PageFolderSetting,\n openFolderSettingPanel,\n closeFolderSettingPanel,\n PageTree,\n fetchPageDetail,\n handleRouteHomeUpdate,\n api\n })\n });\n const settingHome = _callEntry(node => {\n confirm({\n title: '提示',\n type: 'warning ',\n message: '是否确定要将此页面设置为主页?',\n exec: () => {\n const params = {\n ...node.rawData,\n isHome: true\n };\n handleRouteHomeUpdate(node.id, params).then(() => {\n pageSettingState.updateTreeData();\n pageSettingState.isNew = false;\n useNotify({\n message: '主页设置成功!',\n type: 'success'\n });\n }).catch(() => {\n useNotify({\n message: '主页设置失败!',\n type: 'error'\n });\n });\n }\n });\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.Main.settingHome'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n pageSettingState,\n getDefaultPage,\n isTemporaryPage,\n initCurrentPageData,\n PLUGIN_NAME,\n panelState,\n pageTreeRef,\n ROOT_ID,\n docsUrl,\n docsContent,\n state,\n createNewPage,\n createNewFolder,\n settingHome,\n openSettingPanel,\n pluginPanelClosed,\n openNewPage,\n useCanvas,\n usePage,\n useHelp,\n useModal,\n useNotify,\n useLayout,\n PluginPanel,\n SvgButton,\n extend,\n PageSetting,\n openPageSettingPanel,\n closePageSettingPanel,\n PageFolderSetting,\n openFolderSettingPanel,\n closeFolderSettingPanel,\n PageTree,\n fetchPageDetail,\n handleRouteHomeUpdate,\n api\n })\n });\n watchEffect(() => {\n if (isTemporaryPage.saved) {\n openPageSettingPanel();\n }\n });\n const openSettingPanel = _callEntry(async pageData => {\n state.isFolder = !pageData.isPage;\n pageSettingState.isNew = false;\n const isPageChange = pageData.id !== pageSettingState.currentPageData.id;\n if (state.isFolder) {\n if (isPageChange) {\n closePageSettingPanel();\n }\n openFolderSettingPanel();\n } else {\n if (isPageChange) {\n closeFolderSettingPanel();\n }\n openPageSettingPanel();\n }\n const pageDetail = await fetchPageDetail(pageData?.id);\n initCurrentPageData(pageDetail);\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.Main.openSettingPanel'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n pageSettingState,\n getDefaultPage,\n isTemporaryPage,\n initCurrentPageData,\n PLUGIN_NAME,\n panelState,\n pageTreeRef,\n ROOT_ID,\n docsUrl,\n docsContent,\n state,\n createNewPage,\n createNewFolder,\n settingHome,\n openSettingPanel,\n pluginPanelClosed,\n openNewPage,\n useCanvas,\n usePage,\n useHelp,\n useModal,\n useNotify,\n useLayout,\n PluginPanel,\n SvgButton,\n extend,\n PageSetting,\n openPageSettingPanel,\n closePageSettingPanel,\n PageFolderSetting,\n openFolderSettingPanel,\n closeFolderSettingPanel,\n PageTree,\n fetchPageDetail,\n handleRouteHomeUpdate,\n api\n })\n });\n provide('openSettingPanel', openSettingPanel);\n const pluginPanelClosed = _callEntry(() => {\n emit('close');\n closePageSettingPanel();\n closeFolderSettingPanel();\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.Main.pluginPanelClosed'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n pageSettingState,\n getDefaultPage,\n isTemporaryPage,\n initCurrentPageData,\n PLUGIN_NAME,\n panelState,\n pageTreeRef,\n ROOT_ID,\n docsUrl,\n docsContent,\n state,\n createNewPage,\n createNewFolder,\n settingHome,\n openSettingPanel,\n pluginPanelClosed,\n openNewPage,\n useCanvas,\n usePage,\n useHelp,\n useModal,\n useNotify,\n useLayout,\n PluginPanel,\n SvgButton,\n extend,\n PageSetting,\n openPageSettingPanel,\n closePageSettingPanel,\n PageFolderSetting,\n openFolderSettingPanel,\n closeFolderSettingPanel,\n PageTree,\n fetchPageDetail,\n handleRouteHomeUpdate,\n api\n })\n });\n const openNewPage = _callEntry(data => {\n pageTreeRef.value.switchPage(data);\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.Main.openNewPage'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n pageSettingState,\n getDefaultPage,\n isTemporaryPage,\n initCurrentPageData,\n PLUGIN_NAME,\n panelState,\n pageTreeRef,\n ROOT_ID,\n docsUrl,\n docsContent,\n state,\n createNewPage,\n createNewFolder,\n settingHome,\n openSettingPanel,\n pluginPanelClosed,\n openNewPage,\n useCanvas,\n usePage,\n useHelp,\n useModal,\n useNotify,\n useLayout,\n PluginPanel,\n SvgButton,\n extend,\n PageSetting,\n openPageSettingPanel,\n closePageSettingPanel,\n PageFolderSetting,\n openFolderSettingPanel,\n closeFolderSettingPanel,\n PageTree,\n fetchPageDetail,\n handleRouteHomeUpdate,\n api\n })\n });\n return {\n PLUGIN_NAME,\n state,\n pageState,\n openNewPage,\n pageTreeRef,\n pluginPanelClosed,\n openSettingPanel,\n createNewFolder,\n createNewPage,\n docsUrl,\n docsContent,\n settingHome\n };\n }\n};</script>\n\n<style lang=\"less\" scoped>\n:deep(.tiny-button) {\n border-radius: 4px;\n height: 24px;\n line-height: 24px;\n}\n.plugin-page {\n height: 100%;\n}\n</style>\n","import { HOOK_NAME } from '@opentiny/tiny-engine-meta-register'\nimport usePage from './usePage'\n\nexport const PageService = {\n id: 'engine.service.page',\n type: 'MetaService',\n apis: usePage(),\n composable: {\n name: HOOK_NAME.usePage\n }\n}\n","<template>\n <div class=\"general-config\">\n <tiny-form\n ref=\"generalForm\"\n :model=\"pageSettingState.currentPageData\"\n :rules=\"isFolder ? folderRules : pageRules\"\n label-width=\"120px\"\n validate-type=\"text\"\n :inline-message=\"true\"\n :label-align=\"true\"\n label-position=\"top\"\n class=\"general-config-form\"\n >\n <tiny-form-item v-if=\"!isFolder\" prop=\"group\" label=\"页面类型\" class=\"form-item-page-type\">\n <tiny-radio v-model=\"pageSettingState.currentPageData.group\" class=\"page-type-radio\" label=\"staticPages\">\n 静态页面\n </tiny-radio>\n <tiny-radio v-model=\"pageSettingState.currentPageData.group\" class=\"page-type-radio\" label=\"publicPages\">\n 公共页面\n </tiny-radio>\n </tiny-form-item>\n <tiny-form-item prop=\"name\" :label=\"`${isFolder ? '文件夹' : '页面'}名称`\">\n <tiny-input\n v-model=\"pageSettingState.currentPageData.name\"\n :placeholder=\"`请设置${isFolder ? '文件夹' : '页面'}名称`\"\n ></tiny-input>\n </tiny-form-item>\n\n <tiny-form-item\n v-if=\"pageSettingState.currentPageData.group !== 'publicPages'\"\n label=\"父文件夹/父页面\"\n prop=\"parentId\"\n >\n <tiny-select\n v-model=\"pageParentId\"\n value-field=\"id\"\n render-type=\"tree\"\n :tree-op=\"treeFolderOp\"\n text-field=\"name\"\n placeholder=\"请选择父文件夹/父页面\"\n popper-class=\"parent-fold-select-dropdown\"\n @change=\"changeParentForderId\"\n ></tiny-select>\n </tiny-form-item>\n\n <tiny-form-item label=\"页面路由\" prop=\"route\">\n <tiny-input v-model=\"pageSettingState.currentPageData.route\" placeholder=\"请设置路由\"> </tiny-input>\n <div class=\"tip\">\n <span class=\"text\" v-if=\"!pageSettingState.currentPageData.route\">路由将以website.com开头</span>\n <span class=\"route-text\" v-else>\n <span class=\"tip-text\">website.com/</span>\n <span class=\"tip-text-dim\">{{ currentRoute }}</span>\n </span>\n </div>\n </tiny-form-item>\n <tiny-form-item\n v-if=\"pageSettingState.currentPageData.group !== 'publicPages' && !isFolder && state.childPageOp?.length\"\n label=\"设置默认跳转页\"\n prop=\"isDefault\"\n >\n <tiny-select\n v-model=\"state.defaultPageId\"\n :options=\"state.childPageOp\"\n placeholder=\"请选择默认跳转页\"\n @change=\"changeDefaultPage\"\n ></tiny-select>\n <div v-if=\"state.defaultPageId\" class=\"tip\">\n <div class=\"tip-text\">访问</div>\n <span class=\"tip-text-dim\">/{{ currentRoute }}</span>\n <div class=\"tip-text\">路由,默认跳转</div>\n <span class=\"tip-text-dim\">/{{ currentRoute }}/{{ pageSettingState?.defaultPage?.route }}</span>\n </div>\n </tiny-form-item>\n </tiny-form>\n </div>\n</template>\n<script lang=\"tsx\">import { callEntry as _callEntry, useCompile as _useCompile } from '@opentiny/tiny-engine-meta-register';\nimport _metaData from '../meta.js';\n/* metaService: engine.plugins.appmanage.PageGeneral */\nimport { ref, computed, watchEffect, reactive } from 'vue';\nimport { Form, FormItem, Input, Select, Radio } from '@opentiny/vue';\nimport { iconFile } from '@opentiny/vue-icon';\nimport { usePage } from '@opentiny/tiny-engine-meta-register';\nimport { REGEXP_PAGE_NAME, REGEXP_FOLDER_NAME, REGEXP_ROUTE } from '@opentiny/tiny-engine-common/js/verification';\nexport default {\n components: {\n TinyForm: Form,\n TinyFormItem: FormItem,\n TinyInput: Input,\n TinySelect: Select,\n TinyRadio: Radio\n },\n props: {\n modelValue: {\n type: Object,\n default: () => ({})\n },\n isFolder: {\n type: Boolean,\n default: false\n }\n },\n setup() {\n const {\n pageSettingState,\n changeTreeData,\n STATIC_PAGE_GROUP_ID,\n getPageChildren\n } = usePage();\n const ROOT_ID = pageSettingState.ROOT_ID;\n const pageParentId = computed({\n get() {\n return String(pageSettingState.currentPageData.parentId);\n },\n set(value) {\n pageSettingState.currentPageData.parentId = value;\n }\n });\n const oldParentId = ref(pageParentId.value);\n const state = reactive({\n childPageList: [],\n childPageOp: [],\n defaultPageId: ''\n });\n const setChildAndDefaultPage = _callEntry(async id => {\n if (pageSettingState.isNew) {\n state.childPageList = [];\n state.childPageOp = [];\n state.defaultPageId = '';\n } else {\n state.childPageList = await getPageChildren(id);\n const defaultPage = state.childPageList?.find(item => item.isDefault);\n pageSettingState.defaultPage = defaultPage ? defaultPage : null;\n state.defaultPageId = defaultPage ? defaultPage.id : '';\n state.childPageOp = state.childPageList.map(item => {\n return {\n value: item.id,\n label: item.name,\n icon: iconFile()\n };\n });\n }\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageGeneral.setChildAndDefaultPage'\n },\n ctx: () => ({\n pageSettingState,\n changeTreeData,\n STATIC_PAGE_GROUP_ID,\n getPageChildren,\n ROOT_ID,\n pageParentId,\n oldParentId,\n state,\n setChildAndDefaultPage,\n changeDefaultPage,\n currentRoute,\n pageRules,\n folderRules,\n pageToTreeData,\n getNodeIcon,\n treeFolderOp,\n generalForm,\n validGeneralForm,\n changeParentForderId,\n iconFile,\n usePage,\n REGEXP_PAGE_NAME,\n REGEXP_FOLDER_NAME,\n REGEXP_ROUTE\n })\n });\n const changeDefaultPage = _callEntry(() => {\n pageSettingState.defaultPage = state.childPageList.find(item => item.id === state.defaultPageId);\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageGeneral.changeDefaultPage'\n },\n ctx: () => ({\n pageSettingState,\n changeTreeData,\n STATIC_PAGE_GROUP_ID,\n getPageChildren,\n ROOT_ID,\n pageParentId,\n oldParentId,\n state,\n setChildAndDefaultPage,\n changeDefaultPage,\n currentRoute,\n pageRules,\n folderRules,\n pageToTreeData,\n getNodeIcon,\n treeFolderOp,\n generalForm,\n validGeneralForm,\n changeParentForderId,\n iconFile,\n usePage,\n REGEXP_PAGE_NAME,\n REGEXP_FOLDER_NAME,\n REGEXP_ROUTE\n })\n });\n watchEffect(() => {\n oldParentId.value = pageSettingState.oldParentId;\n setChildAndDefaultPage(pageSettingState.currentPageData?.id);\n });\n const currentRoute = computed(() => {\n let route = pageSettingState.currentPageData.route || '';\n let parentId = pageParentId.value;\n while (parentId !== ROOT_ID) {\n const parent = pageSettingState.treeDataMapping[parentId];\n if (!parent) {\n break;\n }\n route = `${parent.route}/${route}`;\n parentId = parent.parentId;\n }\n if (route.startsWith('/')) {\n route = route.slice(1);\n }\n return route;\n });\n\n // 新建页面/更新页面校验规则\n const pageRules = {\n name: [{\n required: true,\n message: '请输入页面 ID'\n }, {\n pattern: REGEXP_PAGE_NAME,\n message: '只允许包含英文字母,且为大写开头驼峰格式, 如DemoPage'\n }, {\n min: 3,\n max: 25,\n message: '长度在 3 到 25 个字符'\n }],\n route: [{\n required: true,\n message: '请输入页面路由'\n }, {\n pattern: REGEXP_ROUTE,\n message: '只允许包含英文字母、数字、下横线_、中横线-、正斜杠/, 且以英文字母开头'\n }]\n };\n const folderRules = {\n name: [{\n required: true,\n message: '请输入页面文件夹 ID'\n }, {\n pattern: REGEXP_FOLDER_NAME,\n message: '只允许包含英文字母、数字、下横线_、中横线-, 且以英文字母开头'\n }, {\n min: 3,\n max: 25,\n message: '长度在 3 到 25 个字符'\n }],\n route: [{\n required: true,\n message: '请输入页面文件夹路由'\n }, {\n pattern: REGEXP_ROUTE,\n message: '只允许包含英文字母、数字、下横线_、中横线-、正斜杠/, 且以英文字母开头'\n }],\n group: [{\n required: true,\n message: '必须选择页面类型'\n }]\n };\n const pageToTreeData = _callEntry(page => {\n const {\n id,\n name,\n isPage,\n children\n } = page;\n const result = {\n id: String(id),\n name,\n isPage\n };\n if (Array.isArray(children)) {\n result.children = children.filter(page => page.id !== pageSettingState.currentPageData.id).map(page => pageToTreeData(page));\n }\n return result;\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageGeneral.pageToTreeData'\n },\n ctx: () => ({\n pageSettingState,\n changeTreeData,\n STATIC_PAGE_GROUP_ID,\n getPageChildren,\n ROOT_ID,\n pageParentId,\n oldParentId,\n state,\n setChildAndDefaultPage,\n changeDefaultPage,\n currentRoute,\n pageRules,\n folderRules,\n pageToTreeData,\n getNodeIcon,\n treeFolderOp,\n generalForm,\n validGeneralForm,\n changeParentForderId,\n iconFile,\n usePage,\n REGEXP_PAGE_NAME,\n REGEXP_FOLDER_NAME,\n REGEXP_ROUTE\n })\n });\n const getNodeIcon = _callEntry(data => {\n if (data.id === ROOT_ID) {\n return null;\n }\n if (data.isPage) {\n return <SvgIcon name=\"text-page-common\"></SvgIcon>;\n }\n return <SvgIcon name=\"text-page-folder\"></SvgIcon>;\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageGeneral.getNodeIcon'\n },\n ctx: () => ({\n pageSettingState,\n changeTreeData,\n STATIC_PAGE_GROUP_ID,\n getPageChildren,\n ROOT_ID,\n pageParentId,\n oldParentId,\n state,\n setChildAndDefaultPage,\n changeDefaultPage,\n currentRoute,\n pageRules,\n folderRules,\n pageToTreeData,\n getNodeIcon,\n treeFolderOp,\n generalForm,\n validGeneralForm,\n changeParentForderId,\n iconFile,\n usePage,\n REGEXP_PAGE_NAME,\n REGEXP_FOLDER_NAME,\n REGEXP_ROUTE\n })\n });\n const treeFolderOp = computed(() => {\n const staticPages = pageSettingState.pages[STATIC_PAGE_GROUP_ID]?.data || [];\n const dummyRoot = pageToTreeData({\n children: [{\n name: '无',\n id: ROOT_ID\n }].concat(staticPages)\n });\n const data = dummyRoot.children;\n const options = {\n data: data,\n shrinkIcon: null,\n expandIcon: null,\n renderContent: (_h, {\n node,\n data\n }) => {\n return <>\n {getNodeIcon(data)}\n <div>{node.label}</div>\n </>;\n }\n };\n return options;\n });\n const generalForm = ref(null);\n const validGeneralForm = _callEntry(() => {\n return new Promise(resolve => {\n generalForm.value.validate(valid => {\n if (valid) {\n resolve(valid);\n }\n });\n });\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageGeneral.validGeneralForm'\n },\n ctx: () => ({\n pageSettingState,\n changeTreeData,\n STATIC_PAGE_GROUP_ID,\n getPageChildren,\n ROOT_ID,\n pageParentId,\n oldParentId,\n state,\n setChildAndDefaultPage,\n changeDefaultPage,\n currentRoute,\n pageRules,\n folderRules,\n pageToTreeData,\n getNodeIcon,\n treeFolderOp,\n generalForm,\n validGeneralForm,\n changeParentForderId,\n iconFile,\n usePage,\n REGEXP_PAGE_NAME,\n REGEXP_FOLDER_NAME,\n REGEXP_ROUTE\n })\n });\n const changeParentForderId = _callEntry(value => {\n changeTreeData(value.id, oldParentId.value);\n oldParentId.value = value.id;\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageGeneral.changeParentForderId'\n },\n ctx: () => ({\n pageSettingState,\n changeTreeData,\n STATIC_PAGE_GROUP_ID,\n getPageChildren,\n ROOT_ID,\n pageParentId,\n oldParentId,\n state,\n setChildAndDefaultPage,\n changeDefaultPage,\n currentRoute,\n pageRules,\n folderRules,\n pageToTreeData,\n getNodeIcon,\n treeFolderOp,\n generalForm,\n validGeneralForm,\n changeParentForderId,\n iconFile,\n usePage,\n REGEXP_PAGE_NAME,\n REGEXP_FOLDER_NAME,\n REGEXP_ROUTE\n })\n });\n return {\n pageRules,\n folderRules,\n pageSettingState,\n pageParentId,\n generalForm,\n validGeneralForm,\n treeFolderOp,\n currentRoute,\n changeParentForderId,\n state,\n changeDefaultPage\n };\n }\n};</script>\n\n<style lang=\"less\" scoped>\n.general-config {\n .general-config-form {\n .input-head {\n color: var(--te-page-manage-input-head-text-color);\n }\n :deep(.tiny-form-item) {\n margin-bottom: 16px;\n .tiny-input-group__prepend {\n border: 1px solid var(--te-page-manage-input-border-color);\n background: var(--te-page-manage-input-bg-color);\n }\n .page-type-radio {\n color: var(--te-page-manage-title-text-color);\n }\n .tiny-form-item__label {\n height: 24px;\n line-height: 18px;\n font-size: 12px;\n color: var(--te-page-manage-text-color);\n }\n }\n }\n .tip {\n color: var(--te-page-manage-tip-color);\n font-size: 12px;\n border-radius: 3px;\n margin-top: 4px;\n width: 100%;\n word-wrap: break-word;\n height: auto;\n line-height: 16px;\n .tip-text {\n width: 100%;\n color: var(--te-page-manage-tip-text-color);\n }\n .tip-text-dim {\n color: var(--te-page-manage-tip-dim-text-color);\n }\n }\n}\n</style>\n<style lang=\"less\">\n.tiny-select-dropdown.parent-fold-select-dropdown {\n padding: 8px 0;\n .tiny-tree {\n .tiny-tree-node {\n .tiny-tree-node__content {\n padding: 0;\n background-color: var(--te-page-manage-tree-node-bg-color);\n &:hover {\n background-color: var(--te-page-manage-tree-node-bg-color-hover);\n }\n // 移除子节点的的背景色,才能保证鼠标hover到.tiny-tree-node__content节点任意位置时,整行都有hover状态的背景色\n .tiny-tree-node__content-left,\n .tiny-tree-node__content-left .tiny-tree-node__content-box {\n background-color: unset;\n &:hover {\n background-color: unset;\n }\n }\n .tiny-tree-node__content-left {\n padding: 0;\n .tree-node-icon {\n margin: 0;\n }\n .tiny-tree-node__content-box {\n padding: 0 12px;\n svg {\n margin-right: 8px;\n }\n }\n .tiny-tree-node__label {\n font-size: 12px;\n }\n }\n }\n }\n }\n}\n</style>\n","/**\n * Copyright (c) 2023 - present TinyEngine Authors.\n * Copyright (c) 2023 - present Huawei Cloud Computing Technologies Co., Ltd.\n *\n * Use of this source code is governed by an MIT-style license.\n *\n * THE OPEN SOURCE SOFTWARE IN THIS PRODUCT IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL,\n * BUT WITHOUT ANY WARRANTY, WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR FITNESS FOR\n * A PARTICULAR PURPOSE. SEE THE APPLICABLE LICENSES FOR MORE DETAILS.\n *\n */\n\nimport entry, { api } from './src/Main.vue'\nimport metaData from './meta'\nimport { PageService } from './src/composable/index'\nimport PageGeneral from './src/PageGeneral.vue'\nimport './src/styles/vars.less'\n\nexport default {\n ...metaData,\n apis: api,\n entry,\n options: {\n pageBaseStyle: {\n className: 'page-base-style',\n style: 'padding: 24px;background: #FFFFFF;'\n }\n },\n components: {\n PageGeneral\n },\n metas: [PageService]\n}\n\nexport { PageService }\n"],"names":["metaData","PAGE_STATUS","constants","_sfc_main$2","components","TinySearch","Search","TinyCollapse","Collapse","TinyCollapseItem","CollapseItem","TinyIconSearch","IconSearch","TinyPopover","Popover","DraggableTree","SvgButton","props","isFolder","type","Boolean","default","emits","setup","emit","confirm","useModal","pageState","isBlock","isSaved","useCanvas","pageSettingState","changeTreeData","isCurrentDataSame","getPageList","resetPageData","STATIC_PAGE_GROUP_ID","COMMON_PAGE_GROUP_ID","switchPage","switchPageById","usePage","fetchPageDetail","requestUpdatePage","http","getAppId","_callEntry","getMetaApi","META_SERVICE","GlobalService","getBaseInfo","id","ctx","state","subscribe","unsubscribe","subscriber","refreshPageList","nodeClick","openSettingPanel","popoverRefs","setPopoverRef","handleClickRow","isPageLocked","handleClickPageSettings","createPage","createFolder","settingHome","rowOperations","getRowOperations","updatePage","updateFolder","handleMoveNode","createPublicPage","IconFolderOpened","IconFolderClosed","useNotify","useMessage","isEqual","getCanvasStatus","handlePageUpdate","closePageSettingPanel","closeFolderSettingPanel","reactive","pageSearchValue","collapseValue","currentNodeData","pageId","onMounted","topic","callback","data","onUnmounted","appId","updateTreeData","then","e","pageData","stopPropagation","isPage","title","message","exec","oldParentId","currentPageData","parentId","Object","assign","currentPageDataCopy","username","occupier","name","el","nodeId","node","rawData","Lock","label","action","map","item","doClose","groupId","slice","group","filter","pageDetail","page_content","params","fileName","isCurEditPage","currentPage","catch","error","JSON","stringify","finally","isNew","dragged","newParent","isDefault","preventDefault","api","getPageById","openPageSettingPanel","_sfc_main$1","PageSetting","_useCompile","component","PluginPanel","PageFolderSetting","PageTree","String","fixedPanels","Array","getDefaultPage","isTemporaryPage","initCurrentPageData","PLUGIN_NAME","useLayout","panelState","emitEvent","provide","pageTreeRef","ref","ROOT_ID","docsUrl","useHelp","getDocsUrl","docsContent","createNewPage","defaultPage","Error","route","lifeCycles","extend","createNewFolder","pluginPanelClosed","openNewPage","openFolderSettingPanel","handleRouteHomeUpdate","isHome","watchEffect","saved","isPageChange","value","PageService","HOOK_NAME","_sfc_main","TinyForm","Form","TinyFormItem","FormItem","TinyInput","Input","TinySelect","Select","TinyRadio","Radio","modelValue","getPageChildren","pageParentId","computed","get","set","childPageList","childPageOp","defaultPageId","setChildAndDefaultPage","find","icon","iconFile","changeDefaultPage","currentRoute","pageRules","folderRules","pageToTreeData","getNodeIcon","treeFolderOp","generalForm","validGeneralForm","changeParentForderId","REGEXP_PAGE_NAME","REGEXP_FOLDER_NAME","REGEXP_ROUTE","parent","treeDataMapping","startsWith","required","pattern","min","max","page","children","result","isArray","_createVNode","_resolveComponent","staticPages","pages","concat","shrinkIcon","expandIcon","renderContent","_h","_Fragment","Promise","resolve","validate","valid","index","entry","PageGeneral"],"mappings":";;;;;;;;;;;;;;;AAAA,MAAeA,KAAA;AAAA,EACb,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,MAAM;AAAA,EACN,MAAM;AACR;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
1
+ {"version":3,"file":"index.js","sources":["../meta.js","../src/PageTree.vue","../src/Main.vue","../src/composable/index.ts","../src/PageGeneral.vue","../index.ts"],"sourcesContent":["export default {\n id: 'engine.plugins.appmanage',\n title: '页面',\n type: 'plugins',\n icon: 'plugin-icon-page'\n}\n","<template>\n <div class=\"app-manage-search\">\n <tiny-search v-model=\"state.pageSearchValue\" clearable placeholder=\"搜索\">\n <template #prefix>\n <tiny-icon-search />\n </template>\n </tiny-search>\n </div>\n\n <tiny-collapse v-model=\"state.collapseValue\" class=\"page-manage-collapse lowcode-scrollbar\">\n <tiny-collapse-item v-for=\"(groupItem, index) in pageSettingState.pages\" :key=\"index\" :name=\"groupItem.groupId\">\n <template #title>\n <span class=\"title\">{{ groupItem.groupName }}</span>\n </template>\n <div class=\"app-manage-tree\">\n <draggable-tree\n :data=\"groupItem.data\"\n label-key=\"name\"\n :active=\"state.currentNodeData.id\"\n :filter-value=\"state.pageSearchValue\"\n :root-id=\"pageSettingState.ROOT_ID\"\n :draggable=\"groupItem.groupId === STATIC_PAGE_GROUP_ID\"\n @click-row=\"handleClickRow\"\n @move-node=\"handleMoveNode\"\n >\n <template #row-suffix=\"{ node }\">\n <div :class=\"['actions']\">\n <svg-button v-if=\"isPageLocked(node.rawData)\" name=\"locked\" :hoverBgColor=\"false\"></svg-button>\n <svg-button v-if=\"node.rawData.isHome\" name=\"home\" :hoverBgColor=\"false\"></svg-button>\n <tiny-popover\n :ref=\"(el) => setPopoverRef(el, node.id)\"\n placement=\"bottom-start\"\n :visible-arrow=\"false\"\n popper-class=\"page-tree-row-operation-list\"\n >\n <div class=\"operation-list\">\n <div\n v-for=\"(operation, index) in getRowOperations(groupItem.groupId, node)\"\n :key=\"index\"\n :class=\"[operation.type === 'divider' ? 'divider' : 'item'].concat(operation.class || [])\"\n @click=\"operation.action?.(node)\"\n >\n {{ operation.label }}\n </div>\n </div>\n <template #reference>\n <svg-button name=\"ellipsis\" class=\"auto-hidden\" :hoverBgColor=\"false\"></svg-button>\n </template>\n </tiny-popover>\n </div>\n </template>\n </draggable-tree>\n </div>\n </tiny-collapse-item>\n </tiny-collapse>\n</template>\n<script lang=\"tsx\">import { callEntry as _callEntry, useCompile as _useCompile } from '@opentiny/tiny-engine-meta-register';\nimport _metaData from '../meta.js';\n/* metaService: engine.plugins.appmanage.PageTree */\nimport { reactive, onMounted, onUnmounted } from 'vue';\nimport { Search, Collapse, CollapseItem, Popover } from '@opentiny/vue';\nimport { IconFolderOpened, IconFolderClosed, IconSearch } from '@opentiny/vue-icon';\nimport { useCanvas, useModal, usePage, useNotify, useMessage, getMetaApi, META_SERVICE } from '@opentiny/tiny-engine-meta-register';\nimport { isEqual } from '@opentiny/vue-renderless/common/object';\nimport { getCanvasStatus } from '@opentiny/tiny-engine-common/js/canvas';\nimport { handlePageUpdate } from '@opentiny/tiny-engine-common/js/http';\nimport { constants } from '@opentiny/tiny-engine-utils';\nimport { closePageSettingPanel } from './PageSetting.vue';\nimport { closeFolderSettingPanel } from './PageFolderSetting.vue';\nimport http from './http';\nimport DraggableTree from './Tree.vue';\nimport { SvgButton } from '@opentiny/tiny-engine-common';\nconst {\n PAGE_STATUS\n} = constants;\nexport default {\n components: {\n TinySearch: Search,\n TinyCollapse: Collapse,\n TinyCollapseItem: CollapseItem,\n TinyIconSearch: IconSearch(),\n TinyPopover: Popover,\n DraggableTree,\n SvgButton\n },\n props: {\n isFolder: {\n type: Boolean,\n default: false\n }\n },\n emits: ['openSettingPanel', 'add', 'createPage', 'createFolder', 'settingHome'],\n setup(props, {\n emit\n }) {\n const {\n confirm\n } = useModal();\n const {\n pageState,\n isBlock,\n isSaved\n } = useCanvas();\n const {\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPage: switchPageById\n } = usePage();\n const {\n fetchPageDetail,\n requestUpdatePage\n } = http;\n const getAppId = _callEntry(() => getMetaApi(META_SERVICE.GlobalService).getBaseInfo().id, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.getAppId'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const state = reactive({\n pageSearchValue: '',\n collapseValue: [STATIC_PAGE_GROUP_ID, COMMON_PAGE_GROUP_ID],\n currentNodeData: {\n id: getMetaApi(META_SERVICE.GlobalService).getBaseInfo().pageId\n }\n });\n const {\n subscribe,\n unsubscribe\n } = useMessage();\n let subscriber = null;\n onMounted(_callEntry(() => {\n subscriber = subscribe({\n topic: 'locationHistoryChanged',\n callback: data => {\n if (data.pageId) {\n state.currentNodeData = {\n id: data.pageId\n };\n } else if (isBlock()) {\n state.currentNodeData = {};\n }\n },\n subscriber: 'pageTree'\n });\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.onMounted[0]'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n }));\n onUnmounted(_callEntry(() => {\n if (subscriber) {\n unsubscribe(subscriber);\n }\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.onUnmounted[0]'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n }));\n const refreshPageList = _callEntry(async appId => {\n const pages = await getPageList(appId);\n return pages;\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.refreshPageList'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n pageSettingState.updateTreeData = async () => {\n const pageList = await refreshPageList(getAppId());\n return pageList;\n };\n const switchPage = _callEntry(data => {\n state.currentNodeData = data;\n switchPageById(data.id).then(() => {\n closePageSettingPanel();\n closeFolderSettingPanel();\n });\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.switchPage'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const nodeClick = _callEntry((e, pageData) => {\n e?.stopPropagation();\n const {\n id,\n isPage\n } = pageData;\n\n // 区块切换回页面需要重新加载页面\n // 区块切换回页面需要重新加载页面\n if (!isBlock() && id === state?.currentNodeData?.id || !isPage) {\n return;\n }\n if (isSaved() && isCurrentDataSame()) {\n switchPage(pageData);\n } else {\n confirm({\n title: '提示',\n message: `${isBlock() ? '区块' : '页面'}尚未保存,是否要继续切换?`,\n exec: () => {\n changeTreeData(pageSettingState.oldParentId, pageSettingState.currentPageData.parentId);\n Object.assign(pageSettingState.currentPageData, pageSettingState.currentPageDataCopy);\n switchPage(pageData);\n }\n });\n }\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.nodeClick'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const openSettingPanel = _callEntry((e, pageData, isPageLocked) => {\n e?.stopPropagation();\n if (isPageLocked && pageData.isPage) {\n const username = pageData.occupier?.username || '';\n useModal().message({\n message: `您点击的页面被${username}锁定,暂时无法编辑,请联系解锁`\n });\n return;\n }\n if (isEqual(pageSettingState.currentPageData, pageSettingState.currentPageDataCopy)) {\n emit('openSettingPanel', pageData);\n } else {\n confirm({\n title: '提示',\n message: `当前页面或文件夹${pageSettingState.currentPageData.name}尚未保存,是否要继续切换?`,\n exec: () => {\n changeTreeData(pageSettingState.oldParentId, pageSettingState.currentPageData.parentId);\n Object.assign(pageSettingState.currentPageData, pageSettingState.currentPageDataCopy);\n emit('openSettingPanel', pageData);\n }\n });\n }\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.openSettingPanel'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const popoverRefs = {};\n const setPopoverRef = _callEntry((el, nodeId) => {\n popoverRefs[nodeId] = el;\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.setPopoverRef'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const handleClickRow = _callEntry(node => {\n nodeClick(null, node.rawData);\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.handleClickRow'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const isPageLocked = _callEntry(pageData => {\n return getCanvasStatus(pageData.occupier).state === PAGE_STATUS.Lock;\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.isPageLocked'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const handleClickPageSettings = _callEntry(node => {\n openSettingPanel(null, node.rawData, isPageLocked(node.rawData));\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.handleClickPageSettings'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const createPage = _callEntry(node => {\n emit('createPage', 'staticPages', node.id);\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.createPage'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const createFolder = _callEntry(node => {\n emit('createFolder', node.id);\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.createFolder'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const settingHome = _callEntry(node => {\n emit('settingHome', node);\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.settingHome'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const rowOperations = [{\n type: 'settings',\n label: '设置',\n action: handleClickPageSettings\n }, {\n type: 'divider'\n }, {\n type: 'createPage',\n label: '新建子页面',\n action: createPage\n }, {\n type: 'createFolder',\n label: '新建子文件夹',\n action: createFolder\n }, {\n type: 'settingHome',\n label: '设置为主页',\n action: settingHome\n }\n // TODO 复制和删除的逻辑耦合在其他组件内,暂时屏蔽\n // { type: 'divider' },\n // { type: 'copy', label: '复制页面', action: copyPage },\n // { type: 'delete', label: '删除', class: ['danger'], action: deleteNode }\n ].map(item => ({\n ...item,\n action: node => {\n item.action?.(node);\n // 点击 action 后,关闭 popover 弹窗\n popoverRefs[node.id]?.doClose?.();\n }\n }));\n const getRowOperations = _callEntry((groupId, node) => {\n if (groupId === COMMON_PAGE_GROUP_ID) {\n return rowOperations.slice(0, 1);\n }\n if (!node.rawData.isPage || node.rawData.group === 'public') {\n return rowOperations.filter(item => item.type !== 'settingHome');\n }\n // TODO 复制逻辑暂时屏蔽\n // if (!node.rawData.isPage) {\n // return rowOperations.filter((item) => item.type !== 'copy')\n // }\n\n // TODO 复制逻辑暂时屏蔽\n // if (!node.rawData.isPage) {\n // return rowOperations.filter((item) => item.type !== 'copy')\n // }\n\n return rowOperations;\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.getRowOperations'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const updatePage = _callEntry(pageDetail => {\n const {\n id,\n name,\n page_content\n } = pageDetail;\n const params = {\n ...pageDetail,\n page_content: {\n ...page_content,\n fileName: name\n }\n };\n const isCurEditPage = pageState?.currentPage?.id === id;\n const updateParams = {\n id,\n params,\n isCurEditPage\n };\n return handlePageUpdate(updateParams);\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.updatePage'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const updateFolder = _callEntry(pageDetail => {\n const {\n id\n } = pageDetail;\n\n // requestUpdatePage加了then和catch回调函数,而handlePageUpdate没有加,是因为handlePageUpdate内部都已经有了类似逻辑\n // requestUpdatePage加了then和catch回调函数,而handlePageUpdate没有加,是因为handlePageUpdate内部都已经有了类似逻辑\n return requestUpdatePage(id, {\n ...pageDetail,\n page_content: null\n }).then(() => {\n useNotify({\n type: 'success',\n message: '更新文件夹成功!'\n });\n }).catch(error => {\n useNotify({\n type: 'error',\n title: '更新文件夹失败',\n message: JSON.stringify(error?.message || error)\n });\n }).finally(() => {\n pageSettingState.updateTreeData();\n pageSettingState.isNew = false;\n });\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.updateFolder'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n const handleMoveNode = _callEntry((dragged, newParent) => {\n if (isEqual(pageSettingState.currentPageData, pageSettingState.currentPageDataCopy)) {\n closePageSettingPanel();\n closeFolderSettingPanel();\n pageSettingState.currentPageData.id = dragged.id;\n changeTreeData(newParent.id, dragged.parentId);\n resetPageData();\n // TODO 页面更换父节点后,原来每次变更需要填写变更信息\n // TODO 页面更换父节点后,原来每次变更需要填写变更信息\n fetchPageDetail(dragged.id).then(pageDetail => {\n pageDetail.parentId = newParent.id;\n if (pageDetail.isPage) {\n pageDetail.isDefault = false;\n updatePage(pageDetail);\n } else {\n updateFolder(pageDetail);\n }\n }).catch(error => {\n useNotify({\n type: 'error',\n title: '移动页面文件/文件夹失败',\n message: JSON.stringify(error?.message || error)\n });\n });\n } else {\n confirm({\n title: '提示',\n message: '更改尚未保存,是否要放弃这些更改?',\n exec: () => {\n if (!pageSettingState.isNew) {\n changeTreeData(pageSettingState.oldParentId, pageSettingState.currentPageData.parentId);\n Object.assign(pageSettingState.currentPageData, pageSettingState.currentPageDataCopy);\n }\n closePageSettingPanel();\n }\n });\n }\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.handleMoveNode'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n useMessage().subscribe({\n topic: 'app_id_changed',\n subscriber: 'page_tree_app_id_changed',\n callback: appId => {\n refreshPageList(appId);\n }\n });\n const createPublicPage = _callEntry(e => {\n e.stopPropagation();\n e.preventDefault();\n emit('add');\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.createPublicPage'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n });\n onUnmounted(_callEntry(() => {\n useMessage().unsubscribe({\n topic: 'app_id_changed',\n subscriber: 'page_tree_app_id_changed'\n });\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageTree.onUnmounted[1]'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n isBlock,\n isSaved,\n pageSettingState,\n changeTreeData,\n isCurrentDataSame,\n getPageList,\n resetPageData,\n STATIC_PAGE_GROUP_ID,\n COMMON_PAGE_GROUP_ID,\n switchPageById,\n fetchPageDetail,\n requestUpdatePage,\n getAppId,\n state,\n subscribe,\n unsubscribe,\n subscriber,\n refreshPageList,\n switchPage,\n nodeClick,\n openSettingPanel,\n popoverRefs,\n setPopoverRef,\n handleClickRow,\n isPageLocked,\n handleClickPageSettings,\n createPage,\n createFolder,\n settingHome,\n rowOperations,\n getRowOperations,\n updatePage,\n updateFolder,\n handleMoveNode,\n createPublicPage,\n IconFolderOpened,\n IconFolderClosed,\n IconSearch,\n useCanvas,\n useModal,\n usePage,\n useNotify,\n useMessage,\n getMetaApi,\n META_SERVICE,\n isEqual,\n getCanvasStatus,\n handlePageUpdate,\n constants,\n closePageSettingPanel,\n closeFolderSettingPanel,\n http,\n DraggableTree,\n SvgButton,\n PAGE_STATUS\n })\n }));\n return {\n createPublicPage,\n state,\n switchPage,\n pageSettingState,\n setPopoverRef,\n IconFolderOpened: IconFolderOpened(),\n IconFolderClosed: IconFolderClosed(),\n getRowOperations,\n handleClickRow,\n handleMoveNode,\n isPageLocked,\n handleClickPageSettings,\n STATIC_PAGE_GROUP_ID\n };\n }\n};</script>\n\n<style lang=\"less\" scoped>\n.app-manage-search {\n padding: 0 12px 12px 12px;\n}\n\n.page-manage-collapse {\n height: calc(100% - 95px);\n overflow-y: auto;\n .app-manage-public-page {\n position: absolute;\n right: 0;\n cursor: pointer;\n svg {\n font-size: 22px;\n }\n }\n :deep(.tiny-collapse-item__header) {\n &,\n &.is-active {\n &::before {\n border: none;\n }\n }\n }\n :deep(.tiny-collapse-item) {\n border-left: 0;\n border-right: 0;\n }\n :deep(.tiny-collapse-item__content) {\n padding: 0 0 12px 0;\n }\n}\n\n.page-manage-collapse.page-manage-collapse {\n :deep(.tiny-collapse-item__content) {\n padding-top: 0;\n }\n}\n\n.app-manage-tree {\n .actions {\n display: flex;\n align-items: center;\n svg {\n color: var(--te-page-manage-icon-color);\n outline: none;\n }\n .auto-hidden {\n visibility: hidden;\n }\n }\n .row:hover .actions .auto-hidden {\n visibility: visible;\n }\n}\n</style>\n<style lang=\"less\">\n.tiny-popover.tiny-popper[x-placement].page-tree-row-operation-list {\n padding: 0;\n margin-top: 4px;\n .operation-list {\n min-width: 110px;\n padding: 8px 0;\n & > div {\n padding: 0 12px;\n }\n .item {\n height: 24px;\n font-size: 12px;\n line-height: 18px;\n cursor: pointer;\n display: flex;\n align-items: center;\n &:hover {\n background-color: var(--te-page-manage-operation-list-item-bg-color-hover);\n }\n }\n .divider {\n height: 8px;\n display: flex;\n align-items: center;\n &::after {\n content: '';\n display: block;\n width: 100%;\n height: 1px;\n background-color: var(--te-page-manage-operation-list-item-border-color-divider);\n }\n }\n .danger {\n color: var(--te-page-manage-operation-list-text-color-error);\n }\n }\n}\n</style>\n","<template>\n <div class=\"plugin-page\">\n <plugin-panel\n :title=\"title\"\n :fixed-name=\"PLUGIN_NAME.AppManage\"\n :fixedPanels=\"fixedPanels\"\n @close=\"pluginPanelClosed\"\n :docsUrl=\"docsUrl\"\n :docsContent=\"docsContent\"\n :isShowDocsIcon=\"true\"\n >\n <template #header>\n <svg-button\n class=\"add-folder-icon\"\n name=\"add-folder\"\n placement=\"bottom\"\n tips=\"新建文件夹\"\n @click=\"createNewFolder()\"\n ></svg-button>\n <svg-button\n class=\"new-page-icon\"\n name=\"new-page\"\n placement=\"bottom\"\n tips=\"新建页面\"\n @click=\"createNewPage('staticPages')\"\n ></svg-button>\n </template>\n <template #content>\n <page-tree\n ref=\"pageTreeRef\"\n :isFolder=\"state.isFolder\"\n @add=\"createNewPage('publicPages')\"\n @openSettingPanel=\"openSettingPanel\"\n @createPage=\"createNewPage\"\n @createFolder=\"createNewFolder\"\n @settingHome=\"settingHome\"\n ></page-tree>\n </template>\n </plugin-panel>\n <page-setting :isFolder=\"state.isFolder\" @openNewPage=\"openNewPage\"></page-setting>\n <page-folder-setting :isFolder=\"state.isFolder\"></page-folder-setting>\n </div>\n</template>\n<script lang=\"tsx\">import { callEntry as _callEntry, useCompile as _useCompile } from '@opentiny/tiny-engine-meta-register';\nimport _metaData from '../meta.js';\n/* metaService: engine.plugins.appmanage.Main */\nimport { reactive, ref, watchEffect, provide } from 'vue';\nimport { useCanvas, usePage, useHelp, useModal, useNotify, useLayout } from '@opentiny/tiny-engine-meta-register';\nimport { PluginPanel, SvgButton } from '@opentiny/tiny-engine-common';\nimport { extend } from '@opentiny/vue-renderless/common/object';\nimport PageSetting, { openPageSettingPanel, closePageSettingPanel } from './PageSetting.vue';\nimport PageFolderSetting, { openFolderSettingPanel, closeFolderSettingPanel } from './PageFolderSetting.vue';\nimport PageTree from './PageTree.vue';\nimport { fetchPageDetail, handleRouteHomeUpdate } from './http';\nexport const api = {\n getPageById: async id => {\n if (id) {\n return fetchPageDetail(id);\n }\n return undefined;\n },\n openPageSettingPanel\n};\n\n/* metaComponent: engine.plugins.page */\nexport default {\n components: {\n PageSetting: _useCompile({\n component: PageSetting,\n metaData: {\n id: 'engine.plugins.page.PageSetting'\n }\n }),\n PluginPanel: _useCompile({\n component: PluginPanel,\n metaData: {\n id: 'engine.plugins.page.PluginPanel'\n }\n }),\n SvgButton: _useCompile({\n component: SvgButton,\n metaData: {\n id: 'engine.plugins.page.SvgButton'\n }\n }),\n PageFolderSetting: _useCompile({\n component: PageFolderSetting,\n metaData: {\n id: 'engine.plugins.page.PageFolderSetting'\n }\n }),\n PageTree: _useCompile({\n component: PageTree,\n metaData: {\n id: 'engine.plugins.page.PageTree'\n }\n })\n },\n props: {\n title: {\n type: String,\n default: '页面'\n },\n fixedPanels: {\n type: Array\n }\n },\n emits: ['close'],\n setup(props, {\n emit\n }) {\n const {\n confirm\n } = useModal();\n const {\n pageState\n } = useCanvas();\n const {\n pageSettingState,\n getDefaultPage,\n isTemporaryPage,\n initCurrentPageData\n } = usePage();\n const {\n PLUGIN_NAME\n } = useLayout();\n const panelState = reactive({\n emitEvent: emit\n });\n provide('panelState', panelState);\n const pageTreeRef = ref(null);\n const ROOT_ID = pageSettingState.ROOT_ID;\n const docsUrl = useHelp().getDocsUrl('page');\n const docsContent = '在这里新增页面/文件夹,还可以对已有的页面进行生命周期管理。';\n const state = reactive({\n isFolder: false\n });\n const createNewPage = _callEntry((group, parentId = ROOT_ID) => {\n closeFolderSettingPanel();\n pageSettingState.isNew = true;\n try {\n const defaultPage = getDefaultPage();\n if (!defaultPage) {\n throw new Error('Failed to get default page configuration');\n }\n pageSettingState.currentPageData = {\n ...getDefaultPage(),\n ...defaultPage,\n parentId,\n route: '',\n name: 'Untitled',\n page_content: {\n lifeCycles: {}\n },\n group\n };\n } catch (error) {\n throw new Error(error);\n // console.error('Failed to create new page:', error)\n }\n pageSettingState.currentPageDataCopy = extend(true, {}, pageSettingState.currentPageData);\n state.isFolder = false;\n openPageSettingPanel();\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.Main.createNewPage'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n pageSettingState,\n getDefaultPage,\n isTemporaryPage,\n initCurrentPageData,\n PLUGIN_NAME,\n panelState,\n pageTreeRef,\n ROOT_ID,\n docsUrl,\n docsContent,\n state,\n createNewPage,\n createNewFolder,\n settingHome,\n openSettingPanel,\n pluginPanelClosed,\n openNewPage,\n useCanvas,\n usePage,\n useHelp,\n useModal,\n useNotify,\n useLayout,\n PluginPanel,\n SvgButton,\n extend,\n PageSetting,\n openPageSettingPanel,\n closePageSettingPanel,\n PageFolderSetting,\n openFolderSettingPanel,\n closeFolderSettingPanel,\n PageTree,\n fetchPageDetail,\n handleRouteHomeUpdate,\n api\n })\n });\n const createNewFolder = _callEntry((parentId = ROOT_ID) => {\n closePageSettingPanel();\n pageSettingState.isNew = true;\n pageSettingState.currentPageData = {\n parentId,\n route: '',\n name: 'untitled'\n };\n pageSettingState.currentPageDataCopy = extend(true, {}, pageSettingState.currentPageData);\n state.isFolder = true;\n openFolderSettingPanel();\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.Main.createNewFolder'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n pageSettingState,\n getDefaultPage,\n isTemporaryPage,\n initCurrentPageData,\n PLUGIN_NAME,\n panelState,\n pageTreeRef,\n ROOT_ID,\n docsUrl,\n docsContent,\n state,\n createNewPage,\n createNewFolder,\n settingHome,\n openSettingPanel,\n pluginPanelClosed,\n openNewPage,\n useCanvas,\n usePage,\n useHelp,\n useModal,\n useNotify,\n useLayout,\n PluginPanel,\n SvgButton,\n extend,\n PageSetting,\n openPageSettingPanel,\n closePageSettingPanel,\n PageFolderSetting,\n openFolderSettingPanel,\n closeFolderSettingPanel,\n PageTree,\n fetchPageDetail,\n handleRouteHomeUpdate,\n api\n })\n });\n const settingHome = _callEntry(node => {\n confirm({\n title: '提示',\n type: 'warning ',\n message: '是否确定要将此页面设置为主页?',\n exec: () => {\n const params = {\n ...node.rawData,\n isHome: true\n };\n handleRouteHomeUpdate(node.id, params).then(() => {\n pageSettingState.updateTreeData();\n pageSettingState.isNew = false;\n useNotify({\n message: '主页设置成功!',\n type: 'success'\n });\n }).catch(() => {\n useNotify({\n message: '主页设置失败!',\n type: 'error'\n });\n });\n }\n });\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.Main.settingHome'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n pageSettingState,\n getDefaultPage,\n isTemporaryPage,\n initCurrentPageData,\n PLUGIN_NAME,\n panelState,\n pageTreeRef,\n ROOT_ID,\n docsUrl,\n docsContent,\n state,\n createNewPage,\n createNewFolder,\n settingHome,\n openSettingPanel,\n pluginPanelClosed,\n openNewPage,\n useCanvas,\n usePage,\n useHelp,\n useModal,\n useNotify,\n useLayout,\n PluginPanel,\n SvgButton,\n extend,\n PageSetting,\n openPageSettingPanel,\n closePageSettingPanel,\n PageFolderSetting,\n openFolderSettingPanel,\n closeFolderSettingPanel,\n PageTree,\n fetchPageDetail,\n handleRouteHomeUpdate,\n api\n })\n });\n watchEffect(() => {\n if (isTemporaryPage.saved) {\n openPageSettingPanel();\n }\n });\n const openSettingPanel = _callEntry(async pageData => {\n state.isFolder = !pageData.isPage;\n pageSettingState.isNew = false;\n const isPageChange = pageData.id !== pageSettingState.currentPageData.id;\n if (state.isFolder) {\n if (isPageChange) {\n closePageSettingPanel();\n }\n openFolderSettingPanel();\n } else {\n if (isPageChange) {\n closeFolderSettingPanel();\n }\n openPageSettingPanel();\n }\n const pageDetail = await fetchPageDetail(pageData?.id);\n initCurrentPageData(pageDetail);\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.Main.openSettingPanel'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n pageSettingState,\n getDefaultPage,\n isTemporaryPage,\n initCurrentPageData,\n PLUGIN_NAME,\n panelState,\n pageTreeRef,\n ROOT_ID,\n docsUrl,\n docsContent,\n state,\n createNewPage,\n createNewFolder,\n settingHome,\n openSettingPanel,\n pluginPanelClosed,\n openNewPage,\n useCanvas,\n usePage,\n useHelp,\n useModal,\n useNotify,\n useLayout,\n PluginPanel,\n SvgButton,\n extend,\n PageSetting,\n openPageSettingPanel,\n closePageSettingPanel,\n PageFolderSetting,\n openFolderSettingPanel,\n closeFolderSettingPanel,\n PageTree,\n fetchPageDetail,\n handleRouteHomeUpdate,\n api\n })\n });\n provide('openSettingPanel', openSettingPanel);\n const pluginPanelClosed = _callEntry(() => {\n emit('close');\n closePageSettingPanel();\n closeFolderSettingPanel();\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.Main.pluginPanelClosed'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n pageSettingState,\n getDefaultPage,\n isTemporaryPage,\n initCurrentPageData,\n PLUGIN_NAME,\n panelState,\n pageTreeRef,\n ROOT_ID,\n docsUrl,\n docsContent,\n state,\n createNewPage,\n createNewFolder,\n settingHome,\n openSettingPanel,\n pluginPanelClosed,\n openNewPage,\n useCanvas,\n usePage,\n useHelp,\n useModal,\n useNotify,\n useLayout,\n PluginPanel,\n SvgButton,\n extend,\n PageSetting,\n openPageSettingPanel,\n closePageSettingPanel,\n PageFolderSetting,\n openFolderSettingPanel,\n closeFolderSettingPanel,\n PageTree,\n fetchPageDetail,\n handleRouteHomeUpdate,\n api\n })\n });\n const openNewPage = _callEntry(data => {\n pageTreeRef.value.switchPage(data);\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.Main.openNewPage'\n },\n ctx: () => ({\n props,\n emit,\n confirm,\n pageState,\n pageSettingState,\n getDefaultPage,\n isTemporaryPage,\n initCurrentPageData,\n PLUGIN_NAME,\n panelState,\n pageTreeRef,\n ROOT_ID,\n docsUrl,\n docsContent,\n state,\n createNewPage,\n createNewFolder,\n settingHome,\n openSettingPanel,\n pluginPanelClosed,\n openNewPage,\n useCanvas,\n usePage,\n useHelp,\n useModal,\n useNotify,\n useLayout,\n PluginPanel,\n SvgButton,\n extend,\n PageSetting,\n openPageSettingPanel,\n closePageSettingPanel,\n PageFolderSetting,\n openFolderSettingPanel,\n closeFolderSettingPanel,\n PageTree,\n fetchPageDetail,\n handleRouteHomeUpdate,\n api\n })\n });\n return {\n PLUGIN_NAME,\n state,\n pageState,\n openNewPage,\n pageTreeRef,\n pluginPanelClosed,\n openSettingPanel,\n createNewFolder,\n createNewPage,\n docsUrl,\n docsContent,\n settingHome\n };\n }\n};</script>\n\n<style lang=\"less\" scoped>\n:deep(.tiny-button) {\n border-radius: 4px;\n height: 24px;\n line-height: 24px;\n}\n.plugin-page {\n height: 100%;\n}\n</style>\n","import { HOOK_NAME } from '@opentiny/tiny-engine-meta-register'\nimport usePage from './usePage'\n\nexport const PageService = {\n id: 'engine.service.page',\n type: 'MetaService',\n apis: usePage(),\n composable: {\n name: HOOK_NAME.usePage\n }\n}\n","<template>\n <div class=\"general-config\">\n <tiny-form\n ref=\"generalForm\"\n :model=\"pageSettingState.currentPageData\"\n :rules=\"isFolder ? folderRules : pageRules\"\n label-width=\"120px\"\n validate-type=\"text\"\n :inline-message=\"true\"\n :label-align=\"true\"\n label-position=\"top\"\n class=\"general-config-form\"\n >\n <tiny-form-item v-if=\"!isFolder\" prop=\"group\" label=\"页面类型\" class=\"form-item-page-type\">\n <tiny-radio v-model=\"pageSettingState.currentPageData.group\" class=\"page-type-radio\" label=\"staticPages\">\n 静态页面\n </tiny-radio>\n <tiny-radio v-model=\"pageSettingState.currentPageData.group\" class=\"page-type-radio\" label=\"publicPages\">\n 公共页面\n </tiny-radio>\n </tiny-form-item>\n <tiny-form-item prop=\"name\" :label=\"`${isFolder ? '文件夹' : '页面'}名称`\">\n <tiny-input\n v-model=\"pageSettingState.currentPageData.name\"\n :placeholder=\"`请设置${isFolder ? '文件夹' : '页面'}名称`\"\n ></tiny-input>\n </tiny-form-item>\n\n <tiny-form-item\n v-if=\"pageSettingState.currentPageData.group !== 'publicPages'\"\n label=\"父文件夹/父页面\"\n prop=\"parentId\"\n >\n <tiny-select\n v-model=\"pageParentId\"\n value-field=\"id\"\n render-type=\"tree\"\n :tree-op=\"treeFolderOp\"\n text-field=\"name\"\n placeholder=\"请选择父文件夹/父页面\"\n popper-class=\"parent-fold-select-dropdown\"\n @change=\"changeParentForderId\"\n ></tiny-select>\n </tiny-form-item>\n\n <tiny-form-item label=\"页面路由\" prop=\"route\">\n <tiny-input v-model=\"pageSettingState.currentPageData.route\" placeholder=\"请设置路由\"> </tiny-input>\n <div class=\"tip\">\n <span class=\"text\" v-if=\"!pageSettingState.currentPageData.route\">路由将以website.com开头</span>\n <span class=\"route-text\" v-else>\n <span class=\"tip-text\">website.com/</span>\n <span class=\"tip-text-dim\">{{ currentRoute }}</span>\n </span>\n </div>\n </tiny-form-item>\n <tiny-form-item\n v-if=\"pageSettingState.currentPageData.group !== 'publicPages' && !isFolder && state.childPageOp?.length\"\n label=\"设置默认跳转页\"\n prop=\"isDefault\"\n >\n <tiny-select\n v-model=\"state.defaultPageId\"\n :options=\"state.childPageOp\"\n placeholder=\"请选择默认跳转页\"\n @change=\"changeDefaultPage\"\n ></tiny-select>\n <div v-if=\"state.defaultPageId\" class=\"tip\">\n <div class=\"tip-text\">访问</div>\n <span class=\"tip-text-dim\">/{{ currentRoute }}</span>\n <div class=\"tip-text\">路由,默认跳转</div>\n <span class=\"tip-text-dim\">/{{ currentRoute }}/{{ pageSettingState?.defaultPage?.route }}</span>\n </div>\n </tiny-form-item>\n </tiny-form>\n </div>\n</template>\n<script lang=\"tsx\">import { callEntry as _callEntry, useCompile as _useCompile } from '@opentiny/tiny-engine-meta-register';\nimport _metaData from '../meta.js';\n/* metaService: engine.plugins.appmanage.PageGeneral */\nimport { ref, computed, watchEffect, reactive } from 'vue';\nimport { Form, FormItem, Input, Select, Radio } from '@opentiny/vue';\nimport { iconFile } from '@opentiny/vue-icon';\nimport { usePage } from '@opentiny/tiny-engine-meta-register';\nimport { REGEXP_PAGE_NAME, REGEXP_FOLDER_NAME, REGEXP_ROUTE } from '@opentiny/tiny-engine-common/js/verification';\nexport default {\n components: {\n TinyForm: Form,\n TinyFormItem: FormItem,\n TinyInput: Input,\n TinySelect: Select,\n TinyRadio: Radio\n },\n props: {\n modelValue: {\n type: Object,\n default: () => ({})\n },\n isFolder: {\n type: Boolean,\n default: false\n }\n },\n setup() {\n const {\n pageSettingState,\n changeTreeData,\n STATIC_PAGE_GROUP_ID,\n getPageChildren\n } = usePage();\n const ROOT_ID = pageSettingState.ROOT_ID;\n const pageParentId = computed({\n get() {\n return String(pageSettingState.currentPageData.parentId);\n },\n set(value) {\n pageSettingState.currentPageData.parentId = value;\n }\n });\n const oldParentId = ref(pageParentId.value);\n const state = reactive({\n childPageList: [],\n childPageOp: [],\n defaultPageId: ''\n });\n const setChildAndDefaultPage = _callEntry(async id => {\n if (pageSettingState.isNew) {\n state.childPageList = [];\n state.childPageOp = [];\n state.defaultPageId = '';\n } else {\n state.childPageList = await getPageChildren(id);\n const defaultPage = state.childPageList?.find(item => item.isDefault);\n pageSettingState.defaultPage = defaultPage ? defaultPage : null;\n state.defaultPageId = defaultPage ? defaultPage.id : '';\n state.childPageOp = state.childPageList.map(item => {\n return {\n value: item.id,\n label: item.name,\n icon: iconFile()\n };\n });\n }\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageGeneral.setChildAndDefaultPage'\n },\n ctx: () => ({\n pageSettingState,\n changeTreeData,\n STATIC_PAGE_GROUP_ID,\n getPageChildren,\n ROOT_ID,\n pageParentId,\n oldParentId,\n state,\n setChildAndDefaultPage,\n changeDefaultPage,\n currentRoute,\n pageRules,\n folderRules,\n pageToTreeData,\n getNodeIcon,\n treeFolderOp,\n generalForm,\n validGeneralForm,\n changeParentForderId,\n iconFile,\n usePage,\n REGEXP_PAGE_NAME,\n REGEXP_FOLDER_NAME,\n REGEXP_ROUTE\n })\n });\n const changeDefaultPage = _callEntry(() => {\n pageSettingState.defaultPage = state.childPageList.find(item => item.id === state.defaultPageId);\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageGeneral.changeDefaultPage'\n },\n ctx: () => ({\n pageSettingState,\n changeTreeData,\n STATIC_PAGE_GROUP_ID,\n getPageChildren,\n ROOT_ID,\n pageParentId,\n oldParentId,\n state,\n setChildAndDefaultPage,\n changeDefaultPage,\n currentRoute,\n pageRules,\n folderRules,\n pageToTreeData,\n getNodeIcon,\n treeFolderOp,\n generalForm,\n validGeneralForm,\n changeParentForderId,\n iconFile,\n usePage,\n REGEXP_PAGE_NAME,\n REGEXP_FOLDER_NAME,\n REGEXP_ROUTE\n })\n });\n watchEffect(() => {\n oldParentId.value = pageSettingState.oldParentId;\n setChildAndDefaultPage(pageSettingState.currentPageData?.id);\n });\n const currentRoute = computed(() => {\n let route = pageSettingState.currentPageData.route || '';\n let parentId = pageParentId.value;\n while (parentId !== ROOT_ID) {\n const parent = pageSettingState.treeDataMapping[parentId];\n if (!parent) {\n break;\n }\n route = `${parent.route}/${route}`;\n parentId = parent.parentId;\n }\n if (route.startsWith('/')) {\n route = route.slice(1);\n }\n return route;\n });\n\n // 新建页面/更新页面校验规则\n const pageRules = {\n name: [{\n required: true,\n message: '请输入页面 ID'\n }, {\n pattern: REGEXP_PAGE_NAME,\n message: '只允许包含英文字母,且为大写开头驼峰格式, 如DemoPage'\n }, {\n min: 3,\n max: 25,\n message: '长度在 3 到 25 个字符'\n }],\n route: [{\n required: true,\n message: '请输入页面路由'\n }, {\n pattern: REGEXP_ROUTE,\n message: '只允许包含英文字母、数字、下横线_、中横线-、正斜杠/, 且以英文字母开头'\n }]\n };\n const folderRules = {\n name: [{\n required: true,\n message: '请输入页面文件夹 ID'\n }, {\n pattern: REGEXP_FOLDER_NAME,\n message: '只允许包含英文字母、数字、下横线_、中横线-, 且以英文字母开头'\n }, {\n min: 3,\n max: 25,\n message: '长度在 3 到 25 个字符'\n }],\n route: [{\n required: true,\n message: '请输入页面文件夹路由'\n }, {\n pattern: REGEXP_ROUTE,\n message: '只允许包含英文字母、数字、下横线_、中横线-、正斜杠/, 且以英文字母开头'\n }],\n group: [{\n required: true,\n message: '必须选择页面类型'\n }]\n };\n const pageToTreeData = _callEntry(page => {\n const {\n id,\n name,\n isPage,\n children\n } = page;\n const result = {\n id: String(id),\n name,\n isPage\n };\n if (Array.isArray(children)) {\n result.children = children.filter(page => page.id !== pageSettingState.currentPageData.id).map(page => pageToTreeData(page));\n }\n return result;\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageGeneral.pageToTreeData'\n },\n ctx: () => ({\n pageSettingState,\n changeTreeData,\n STATIC_PAGE_GROUP_ID,\n getPageChildren,\n ROOT_ID,\n pageParentId,\n oldParentId,\n state,\n setChildAndDefaultPage,\n changeDefaultPage,\n currentRoute,\n pageRules,\n folderRules,\n pageToTreeData,\n getNodeIcon,\n treeFolderOp,\n generalForm,\n validGeneralForm,\n changeParentForderId,\n iconFile,\n usePage,\n REGEXP_PAGE_NAME,\n REGEXP_FOLDER_NAME,\n REGEXP_ROUTE\n })\n });\n const getNodeIcon = _callEntry(data => {\n if (data.id === ROOT_ID) {\n return null;\n }\n if (data.isPage) {\n return <SvgIcon name=\"text-page-common\"></SvgIcon>;\n }\n return <SvgIcon name=\"text-page-folder\"></SvgIcon>;\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageGeneral.getNodeIcon'\n },\n ctx: () => ({\n pageSettingState,\n changeTreeData,\n STATIC_PAGE_GROUP_ID,\n getPageChildren,\n ROOT_ID,\n pageParentId,\n oldParentId,\n state,\n setChildAndDefaultPage,\n changeDefaultPage,\n currentRoute,\n pageRules,\n folderRules,\n pageToTreeData,\n getNodeIcon,\n treeFolderOp,\n generalForm,\n validGeneralForm,\n changeParentForderId,\n iconFile,\n usePage,\n REGEXP_PAGE_NAME,\n REGEXP_FOLDER_NAME,\n REGEXP_ROUTE\n })\n });\n const treeFolderOp = computed(() => {\n const staticPages = pageSettingState.pages[STATIC_PAGE_GROUP_ID]?.data || [];\n const dummyRoot = pageToTreeData({\n children: [{\n name: '无',\n id: ROOT_ID\n }].concat(staticPages)\n });\n const data = dummyRoot.children;\n const options = {\n data: data,\n shrinkIcon: null,\n expandIcon: null,\n renderContent: (_h, {\n node,\n data\n }) => {\n return <>\n {getNodeIcon(data)}\n <div>{node.label}</div>\n </>;\n }\n };\n return options;\n });\n const generalForm = ref(null);\n const validGeneralForm = _callEntry(() => {\n return new Promise(resolve => {\n generalForm.value.validate(valid => {\n if (valid) {\n resolve(valid);\n }\n });\n });\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageGeneral.validGeneralForm'\n },\n ctx: () => ({\n pageSettingState,\n changeTreeData,\n STATIC_PAGE_GROUP_ID,\n getPageChildren,\n ROOT_ID,\n pageParentId,\n oldParentId,\n state,\n setChildAndDefaultPage,\n changeDefaultPage,\n currentRoute,\n pageRules,\n folderRules,\n pageToTreeData,\n getNodeIcon,\n treeFolderOp,\n generalForm,\n validGeneralForm,\n changeParentForderId,\n iconFile,\n usePage,\n REGEXP_PAGE_NAME,\n REGEXP_FOLDER_NAME,\n REGEXP_ROUTE\n })\n });\n const changeParentForderId = _callEntry(value => {\n changeTreeData(value.id, oldParentId.value);\n oldParentId.value = value.id;\n }, {\n metaData: {\n id: 'engine.plugins.appmanage.PageGeneral.changeParentForderId'\n },\n ctx: () => ({\n pageSettingState,\n changeTreeData,\n STATIC_PAGE_GROUP_ID,\n getPageChildren,\n ROOT_ID,\n pageParentId,\n oldParentId,\n state,\n setChildAndDefaultPage,\n changeDefaultPage,\n currentRoute,\n pageRules,\n folderRules,\n pageToTreeData,\n getNodeIcon,\n treeFolderOp,\n generalForm,\n validGeneralForm,\n changeParentForderId,\n iconFile,\n usePage,\n REGEXP_PAGE_NAME,\n REGEXP_FOLDER_NAME,\n REGEXP_ROUTE\n })\n });\n return {\n pageRules,\n folderRules,\n pageSettingState,\n pageParentId,\n generalForm,\n validGeneralForm,\n treeFolderOp,\n currentRoute,\n changeParentForderId,\n state,\n changeDefaultPage\n };\n }\n};</script>\n\n<style lang=\"less\" scoped>\n.general-config {\n .general-config-form {\n .input-head {\n color: var(--te-page-manage-input-head-text-color);\n }\n :deep(.tiny-form-item) {\n margin-bottom: 16px;\n .tiny-input-group__prepend {\n border: 1px solid var(--te-page-manage-input-border-color);\n background: var(--te-page-manage-input-bg-color);\n }\n .page-type-radio {\n color: var(--te-page-manage-title-text-color);\n }\n .tiny-form-item__label {\n height: 24px;\n line-height: 18px;\n font-size: 12px;\n color: var(--te-page-manage-text-color);\n }\n }\n }\n .tip {\n color: var(--te-page-manage-tip-color);\n font-size: 12px;\n border-radius: 3px;\n margin-top: 4px;\n width: 100%;\n word-wrap: break-word;\n height: auto;\n line-height: 16px;\n .text {\n color: var(--te-page-manage-tip-text-color);\n }\n .tip-text {\n width: 100%;\n color: var(--te-page-manage-tip-text-color);\n }\n .tip-text-dim {\n color: var(--te-page-manage-tip-dim-text-color);\n }\n }\n}\n</style>\n<style lang=\"less\">\n.tiny-select-dropdown.parent-fold-select-dropdown {\n padding: 8px;\n .tiny-tree {\n .tiny-tree-node {\n .tiny-tree-node__content {\n padding: 0;\n background-color: var(--te-page-manage-tree-node-bg-color);\n &:hover {\n background-color: var(--te-page-manage-tree-node-bg-color-hover);\n }\n // 移除子节点的的背景色,才能保证鼠标hover到.tiny-tree-node__content节点任意位置时,整行都有hover状态的背景色\n .tiny-tree-node__content-left,\n .tiny-tree-node__content-left .tiny-tree-node__content-box {\n background-color: unset;\n &:hover {\n background-color: unset;\n }\n }\n .tiny-tree-node__content-left {\n padding: 0;\n .tree-node-icon {\n margin: 0;\n }\n .tiny-tree-node__content-box {\n padding: 0 12px;\n svg {\n margin-right: 8px;\n }\n }\n .tiny-tree-node__label {\n font-size: 12px;\n }\n }\n }\n }\n }\n}\n</style>\n","/**\n * Copyright (c) 2023 - present TinyEngine Authors.\n * Copyright (c) 2023 - present Huawei Cloud Computing Technologies Co., Ltd.\n *\n * Use of this source code is governed by an MIT-style license.\n *\n * THE OPEN SOURCE SOFTWARE IN THIS PRODUCT IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL,\n * BUT WITHOUT ANY WARRANTY, WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR FITNESS FOR\n * A PARTICULAR PURPOSE. SEE THE APPLICABLE LICENSES FOR MORE DETAILS.\n *\n */\n\nimport entry, { api } from './src/Main.vue'\nimport metaData from './meta'\nimport { PageService } from './src/composable/index'\nimport PageGeneral from './src/PageGeneral.vue'\nimport './src/styles/vars.less'\n\nexport default {\n ...metaData,\n apis: api,\n entry,\n options: {\n pageBaseStyle: {\n className: 'page-base-style',\n style: 'padding: 24px;background: #FFFFFF;'\n }\n },\n components: {\n PageGeneral\n },\n metas: [PageService]\n}\n\nexport { PageService }\n"],"names":["metaData","PAGE_STATUS","constants","_sfc_main$2","components","TinySearch","Search","TinyCollapse","Collapse","TinyCollapseItem","CollapseItem","TinyIconSearch","IconSearch","TinyPopover","Popover","DraggableTree","SvgButton","props","isFolder","type","Boolean","default","emits","setup","emit","confirm","useModal","pageState","isBlock","isSaved","useCanvas","pageSettingState","changeTreeData","isCurrentDataSame","getPageList","resetPageData","STATIC_PAGE_GROUP_ID","COMMON_PAGE_GROUP_ID","switchPage","switchPageById","usePage","fetchPageDetail","requestUpdatePage","http","getAppId","_callEntry","getMetaApi","META_SERVICE","GlobalService","getBaseInfo","id","ctx","state","subscribe","unsubscribe","subscriber","refreshPageList","nodeClick","openSettingPanel","popoverRefs","setPopoverRef","handleClickRow","isPageLocked","handleClickPageSettings","createPage","createFolder","settingHome","rowOperations","getRowOperations","updatePage","updateFolder","handleMoveNode","createPublicPage","IconFolderOpened","IconFolderClosed","useNotify","useMessage","isEqual","getCanvasStatus","handlePageUpdate","closePageSettingPanel","closeFolderSettingPanel","reactive","pageSearchValue","collapseValue","currentNodeData","pageId","onMounted","topic","callback","data","onUnmounted","appId","updateTreeData","then","e","pageData","stopPropagation","isPage","title","message","exec","oldParentId","currentPageData","parentId","Object","assign","currentPageDataCopy","username","occupier","name","el","nodeId","node","rawData","Lock","label","action","map","item","doClose","groupId","slice","group","filter","pageDetail","page_content","params","fileName","isCurEditPage","currentPage","catch","error","JSON","stringify","finally","isNew","dragged","newParent","isDefault","preventDefault","api","getPageById","openPageSettingPanel","_sfc_main$1","PageSetting","_useCompile","component","PluginPanel","PageFolderSetting","PageTree","String","fixedPanels","Array","getDefaultPage","isTemporaryPage","initCurrentPageData","PLUGIN_NAME","useLayout","panelState","emitEvent","provide","pageTreeRef","ref","ROOT_ID","docsUrl","useHelp","getDocsUrl","docsContent","createNewPage","defaultPage","Error","route","lifeCycles","extend","createNewFolder","pluginPanelClosed","openNewPage","openFolderSettingPanel","handleRouteHomeUpdate","isHome","watchEffect","saved","isPageChange","value","PageService","HOOK_NAME","_sfc_main","TinyForm","Form","TinyFormItem","FormItem","TinyInput","Input","TinySelect","Select","TinyRadio","Radio","modelValue","getPageChildren","pageParentId","computed","get","set","childPageList","childPageOp","defaultPageId","setChildAndDefaultPage","find","icon","iconFile","changeDefaultPage","currentRoute","pageRules","folderRules","pageToTreeData","getNodeIcon","treeFolderOp","generalForm","validGeneralForm","changeParentForderId","REGEXP_PAGE_NAME","REGEXP_FOLDER_NAME","REGEXP_ROUTE","parent","treeDataMapping","startsWith","required","pattern","min","max","page","children","result","isArray","_createVNode","_resolveComponent","staticPages","pages","concat","shrinkIcon","expandIcon","renderContent","_h","_Fragment","Promise","resolve","validate","valid","index","entry","PageGeneral"],"mappings":";;;;;;;;;;;;;;;AAAA,MAAeA,KAAA;AAAA,EACb,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,MAAM;AAAA,EACN,MAAM;AACR;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- .input-or-output[data-v-94581fb6]{color:var(--te-page-manage-input-or-output-text-color)}.input-or-output .life-cycle-alert[data-v-94581fb6]{color:var(--te-page-manage-life-cycle-alert-text-color);height:28px;padding:6px;border:0;font-size:11px;margin-bottom:12px}.input-or-output .life-cycle-alert[data-v-94581fb6] .tiny-alert__close{top:7px}.input-or-output .input-output-tips[data-v-94581fb6],.input-or-output .input-output-div[data-v-94581fb6]{color:var(--te-page-manage-life-cycle-alert-text-color);margin-top:4px;height:16px;line-height:16px}.input-or-output .input-output-tips[data-v-94581fb6]{margin-bottom:12px}.input-or-output .selectHome[data-v-94581fb6]{margin-top:12px}.input-or-output .edit-btn-icon[data-v-94581fb6]{color:var(--te-page-manage-icon-color);margin-right:6px}.input-or-output[data-v-94581fb6] .edit-btn{flex:none;display:flex;align-items:center}.block-add-content[data-v-1bd86225]{display:flex;flex-direction:column;height:calc(100% - 45px)}.page-plugin-setting[data-v-1bd86225] .plugin-setting-header{border:0}.page-plugin-setting[data-v-1bd86225] .plugin-setting-content{padding:0 0 16px}.page-plugin-setting[data-v-1bd86225] .tiny-collapse{border-bottom:0}.page-setting-collapse[data-v-1bd86225] .tiny-collapse-item__header:before,.page-setting-collapse[data-v-1bd86225] .tiny-collapse-item__header.is-active:before{border:none}.page-setting-collapse[data-v-1bd86225] .tiny-collapse-item__header .svg-icon{margin-right:6px}.page-setting-collapse[data-v-1bd86225] .tiny-collapse-item__content{padding:0 12px 12px}.pageFolder-plugin-setting[data-v-79e10f72] .plugin-setting-header{border:0}.pageFolder-plugin-setting[data-v-79e10f72] .plugin-setting-content{padding:0 0 16px}.pageFolder-plugin-setting[data-v-79e10f72] .tiny-collapse{border-bottom:0}.gap[data-v-4aa4fb14]{width:24px;height:24px;flex-shrink:0}.draggable-tree[data-v-6e6ed2a8]{padding:6px 0;overflow-x:auto}.draggable-tree .row[data-v-6e6ed2a8]{width:fit-content;min-width:100%;height:24px;padding:0 12px;margin:0 -1px;display:flex;align-items:center}.draggable-tree .row[data-v-6e6ed2a8],.draggable-tree .row[data-v-6e6ed2a8] *{cursor:pointer}.draggable-tree .row[data-v-6e6ed2a8]:hover{background-color:var(--te-page-manage-draggable-row-bg-color-hover)}.draggable-tree .row .content[data-v-6e6ed2a8]{flex:1;display:flex;align-items:center;overflow:hidden}.draggable-tree .row label[data-v-6e6ed2a8]{flex:1;font-size:12px;line-height:18px;white-space:nowrap}.draggable-tree .row .prefix-icon[data-v-6e6ed2a8]{display:flex;align-items:center;margin-right:8px}.draggable-tree .row .prefix-icon svg[data-v-6e6ed2a8]{color:var(--te-page-manage-draggable-icon-color)}.draggable-tree .row.active[data-v-6e6ed2a8]{background-color:var(--te-page-manage-draggable-row-bg-color-hover);color:var(--te-page-manage-draggable-text-color)}.draggable-tree .row.active svg[data-v-6e6ed2a8]{color:var(--te-page-manage-draggable-icon-color)}.border-transparent[data-v-6e6ed2a8]{border:1px solid transparent}.hover-border-color[data-v-6e6ed2a8]{border-color:var(--te-page-manage-draggable-border-color);overflow:hidden}.app-manage-search[data-v-9e96a5e2]{padding:0 12px 12px}.page-manage-collapse[data-v-9e96a5e2]{height:calc(100% - 95px);overflow-y:auto}.page-manage-collapse .app-manage-public-page[data-v-9e96a5e2]{position:absolute;right:0;cursor:pointer}.page-manage-collapse .app-manage-public-page svg[data-v-9e96a5e2]{font-size:22px}.page-manage-collapse[data-v-9e96a5e2] .tiny-collapse-item__header:before,.page-manage-collapse[data-v-9e96a5e2] .tiny-collapse-item__header.is-active:before{border:none}.page-manage-collapse[data-v-9e96a5e2] .tiny-collapse-item{border-left:0;border-right:0}.page-manage-collapse[data-v-9e96a5e2] .tiny-collapse-item__content{padding:0 0 12px}.page-manage-collapse.page-manage-collapse[data-v-9e96a5e2] .tiny-collapse-item__content{padding-top:0}.app-manage-tree .actions[data-v-9e96a5e2]{display:flex;align-items:center}.app-manage-tree .actions svg[data-v-9e96a5e2]{color:var(--te-page-manage-icon-color);outline:none}.app-manage-tree .actions .auto-hidden[data-v-9e96a5e2]{visibility:hidden}.app-manage-tree .row:hover .actions .auto-hidden[data-v-9e96a5e2]{visibility:visible}.tiny-popover.tiny-popper[x-placement].page-tree-row-operation-list{padding:0;margin-top:4px}.tiny-popover.tiny-popper[x-placement].page-tree-row-operation-list .operation-list{min-width:110px;padding:8px 0}.tiny-popover.tiny-popper[x-placement].page-tree-row-operation-list .operation-list>div{padding:0 12px}.tiny-popover.tiny-popper[x-placement].page-tree-row-operation-list .operation-list .item{height:24px;font-size:12px;line-height:18px;cursor:pointer;display:flex;align-items:center}.tiny-popover.tiny-popper[x-placement].page-tree-row-operation-list .operation-list .item:hover{background-color:var(--te-page-manage-operation-list-item-bg-color-hover)}.tiny-popover.tiny-popper[x-placement].page-tree-row-operation-list .operation-list .divider{height:8px;display:flex;align-items:center}.tiny-popover.tiny-popper[x-placement].page-tree-row-operation-list .operation-list .divider:after{content:"";display:block;width:100%;height:1px;background-color:var(--te-page-manage-operation-list-item-border-color-divider)}.tiny-popover.tiny-popper[x-placement].page-tree-row-operation-list .operation-list .danger{color:var(--te-page-manage-operation-list-text-color-error)}[data-v-db4f4ccc] .tiny-button{border-radius:4px;height:24px;line-height:24px}.plugin-page[data-v-db4f4ccc]{height:100%}.general-config .general-config-form .input-head[data-v-092c6e3f]{color:var(--te-page-manage-input-head-text-color)}.general-config .general-config-form[data-v-092c6e3f] .tiny-form-item{margin-bottom:16px}.general-config .general-config-form[data-v-092c6e3f] .tiny-form-item .tiny-input-group__prepend{border:1px solid var(--te-page-manage-input-border-color);background:var(--te-page-manage-input-bg-color)}.general-config .general-config-form[data-v-092c6e3f] .tiny-form-item .page-type-radio{color:var(--te-page-manage-title-text-color)}.general-config .general-config-form[data-v-092c6e3f] .tiny-form-item .tiny-form-item__label{height:24px;line-height:18px;font-size:12px;color:var(--te-page-manage-text-color)}.general-config .tip[data-v-092c6e3f]{color:var(--te-page-manage-tip-color);font-size:12px;border-radius:3px;margin-top:4px;width:100%;word-wrap:break-word;height:auto;line-height:16px}.general-config .tip .tip-text[data-v-092c6e3f]{width:100%;color:var(--te-page-manage-tip-text-color)}.general-config .tip .tip-text-dim[data-v-092c6e3f]{color:var(--te-page-manage-tip-dim-text-color)}.tiny-select-dropdown.parent-fold-select-dropdown{padding:8px 0}.tiny-select-dropdown.parent-fold-select-dropdown .tiny-tree .tiny-tree-node .tiny-tree-node__content{padding:0;background-color:var(--te-page-manage-tree-node-bg-color)}.tiny-select-dropdown.parent-fold-select-dropdown .tiny-tree .tiny-tree-node .tiny-tree-node__content:hover{background-color:var(--te-page-manage-tree-node-bg-color-hover)}.tiny-select-dropdown.parent-fold-select-dropdown .tiny-tree .tiny-tree-node .tiny-tree-node__content .tiny-tree-node__content-left,.tiny-select-dropdown.parent-fold-select-dropdown .tiny-tree .tiny-tree-node .tiny-tree-node__content .tiny-tree-node__content-left .tiny-tree-node__content-box,.tiny-select-dropdown.parent-fold-select-dropdown .tiny-tree .tiny-tree-node .tiny-tree-node__content .tiny-tree-node__content-left:hover,.tiny-select-dropdown.parent-fold-select-dropdown .tiny-tree .tiny-tree-node .tiny-tree-node__content .tiny-tree-node__content-left .tiny-tree-node__content-box:hover{background-color:unset}.tiny-select-dropdown.parent-fold-select-dropdown .tiny-tree .tiny-tree-node .tiny-tree-node__content .tiny-tree-node__content-left{padding:0}.tiny-select-dropdown.parent-fold-select-dropdown .tiny-tree .tiny-tree-node .tiny-tree-node__content .tiny-tree-node__content-left .tree-node-icon{margin:0}.tiny-select-dropdown.parent-fold-select-dropdown .tiny-tree .tiny-tree-node .tiny-tree-node__content .tiny-tree-node__content-left .tiny-tree-node__content-box{padding:0 12px}.tiny-select-dropdown.parent-fold-select-dropdown .tiny-tree .tiny-tree-node .tiny-tree-node__content .tiny-tree-node__content-left .tiny-tree-node__content-box svg{margin-right:8px}.tiny-select-dropdown.parent-fold-select-dropdown .tiny-tree .tiny-tree-node .tiny-tree-node__content .tiny-tree-node__content-left .tiny-tree-node__label{font-size:12px}.plugin-page{--te-page-manage-title-text-color: var(--te-common-text-primary);--te-page-manage-input-bg-color: var(--te-common-bg-default);--te-page-manage-input-border-color: var(--te-common-border-default);--te-page-manage-tip-color: var(--te-common-text-primary);--te-page-manage-tip-text-color: var(--te-common-text-weaken);--te-page-manage-tip-dim-text-color: var(--te-common-text-primary);--te-page-manage-tree-text-bg-color: var(--te-common-bg-default);--te-page-manage-tree-node-bg-color: var(--te-common-bg-default);--te-page-manage-tree-node-bg-color-hover: var(--te-common-bg-container);--te-page-manage-text-color: var(--te-common-text-secondary);--te-page-manage-input-head-text-color: var(--te-common-text-primary);--te-page-manage-input-or-output-text-color: var(--te-common-text-secondary);--te-page-manage-life-cycle-alert-text-color: var(--te-common-text-weaken);--te-page-manage-icon-color: var(--te-common-icon-secondary);--te-page-manage-operation-list-item-bg-color-hover: var(--te-common-bg-container);--te-page-manage-operation-list-item-border-color-divider: var(--te-common-border-divider);--te-page-manage-operation-list-text-color-error: var(--te-common-color-error);--te-page-manage-draggable-row-bg-color-hover: var(--te-common-bg-container);--te-page-manage-draggable-text-color: var(--te-common-text-primary);--te-page-manage-draggable-icon-color: var(--te-common-icon-secondary);--te-page-manage-draggable-border-color: var(--te-common-border-checked)}
1
+ .input-or-output[data-v-94581fb6]{color:var(--te-page-manage-input-or-output-text-color)}.input-or-output .life-cycle-alert[data-v-94581fb6]{color:var(--te-page-manage-life-cycle-alert-text-color);height:28px;padding:6px;border:0;font-size:11px;margin-bottom:12px}.input-or-output .life-cycle-alert[data-v-94581fb6] .tiny-alert__close{top:7px}.input-or-output .input-output-tips[data-v-94581fb6],.input-or-output .input-output-div[data-v-94581fb6]{color:var(--te-page-manage-life-cycle-alert-text-color);margin-top:4px;height:16px;line-height:16px}.input-or-output .input-output-tips[data-v-94581fb6]{margin-bottom:12px}.input-or-output .selectHome[data-v-94581fb6]{margin-top:12px}.input-or-output .edit-btn-icon[data-v-94581fb6]{color:var(--te-page-manage-icon-color);margin-right:6px}.input-or-output[data-v-94581fb6] .edit-btn{flex:none;display:flex;align-items:center}.block-add-content[data-v-1bd86225]{display:flex;flex-direction:column;height:calc(100% - 45px)}.page-plugin-setting[data-v-1bd86225] .plugin-setting-header{border:0}.page-plugin-setting[data-v-1bd86225] .plugin-setting-content{padding:0 0 16px}.page-plugin-setting[data-v-1bd86225] .tiny-collapse{border-bottom:0}.page-setting-collapse[data-v-1bd86225] .tiny-collapse-item__header:before,.page-setting-collapse[data-v-1bd86225] .tiny-collapse-item__header.is-active:before{border:none}.page-setting-collapse[data-v-1bd86225] .tiny-collapse-item__header .svg-icon{margin-right:6px}.page-setting-collapse[data-v-1bd86225] .tiny-collapse-item__content{padding:0 12px 12px}.pageFolder-plugin-setting[data-v-79e10f72] .plugin-setting-header{border:0}.pageFolder-plugin-setting[data-v-79e10f72] .plugin-setting-content{padding:0 0 16px}.pageFolder-plugin-setting[data-v-79e10f72] .tiny-collapse{border-bottom:0}.gap[data-v-4aa4fb14]{width:24px;height:24px;flex-shrink:0}.draggable-tree[data-v-6e6ed2a8]{padding:6px 0;overflow-x:auto}.draggable-tree .row[data-v-6e6ed2a8]{width:fit-content;min-width:100%;height:24px;padding:0 12px;margin:0 -1px;display:flex;align-items:center}.draggable-tree .row[data-v-6e6ed2a8],.draggable-tree .row[data-v-6e6ed2a8] [data-v-6e6ed2a8]{cursor:pointer}.draggable-tree .row[data-v-6e6ed2a8]:hover{background-color:var(--te-page-manage-draggable-row-bg-color-hover)}.draggable-tree .row .content[data-v-6e6ed2a8]{flex:1;display:flex;align-items:center;overflow:hidden}.draggable-tree .row label[data-v-6e6ed2a8]{flex:1;font-size:12px;line-height:18px;white-space:nowrap}.draggable-tree .row .prefix-icon[data-v-6e6ed2a8]{display:flex;align-items:center;margin-right:8px}.draggable-tree .row .prefix-icon svg[data-v-6e6ed2a8]{color:var(--te-page-manage-draggable-icon-color)}.draggable-tree .row.active[data-v-6e6ed2a8]{background-color:var(--te-page-manage-draggable-row-bg-color-hover);color:var(--te-page-manage-draggable-text-color)}.draggable-tree .row.active svg[data-v-6e6ed2a8]{color:var(--te-page-manage-draggable-icon-color)}.border-transparent[data-v-6e6ed2a8]{border:1px solid transparent}.hover-border-color[data-v-6e6ed2a8]{border-color:var(--te-page-manage-draggable-border-color);overflow:hidden}.app-manage-search[data-v-9e96a5e2]{padding:0 12px 12px}.page-manage-collapse[data-v-9e96a5e2]{height:calc(100% - 95px);overflow-y:auto}.page-manage-collapse .app-manage-public-page[data-v-9e96a5e2]{position:absolute;right:0;cursor:pointer}.page-manage-collapse .app-manage-public-page svg[data-v-9e96a5e2]{font-size:22px}.page-manage-collapse[data-v-9e96a5e2] .tiny-collapse-item__header:before,.page-manage-collapse[data-v-9e96a5e2] .tiny-collapse-item__header.is-active:before{border:none}.page-manage-collapse[data-v-9e96a5e2] .tiny-collapse-item{border-left:0;border-right:0}.page-manage-collapse[data-v-9e96a5e2] .tiny-collapse-item__content{padding:0 0 12px}.page-manage-collapse.page-manage-collapse[data-v-9e96a5e2] .tiny-collapse-item__content{padding-top:0}.app-manage-tree .actions[data-v-9e96a5e2]{display:flex;align-items:center}.app-manage-tree .actions svg[data-v-9e96a5e2]{color:var(--te-page-manage-icon-color);outline:none}.app-manage-tree .actions .auto-hidden[data-v-9e96a5e2]{visibility:hidden}.app-manage-tree .row:hover .actions .auto-hidden[data-v-9e96a5e2]{visibility:visible}.tiny-popover.tiny-popper[x-placement].page-tree-row-operation-list{padding:0;margin-top:4px}.tiny-popover.tiny-popper[x-placement].page-tree-row-operation-list .operation-list{min-width:110px;padding:8px 0}.tiny-popover.tiny-popper[x-placement].page-tree-row-operation-list .operation-list>div{padding:0 12px}.tiny-popover.tiny-popper[x-placement].page-tree-row-operation-list .operation-list .item{height:24px;font-size:12px;line-height:18px;cursor:pointer;display:flex;align-items:center}.tiny-popover.tiny-popper[x-placement].page-tree-row-operation-list .operation-list .item:hover{background-color:var(--te-page-manage-operation-list-item-bg-color-hover)}.tiny-popover.tiny-popper[x-placement].page-tree-row-operation-list .operation-list .divider{height:8px;display:flex;align-items:center}.tiny-popover.tiny-popper[x-placement].page-tree-row-operation-list .operation-list .divider:after{content:"";display:block;width:100%;height:1px;background-color:var(--te-page-manage-operation-list-item-border-color-divider)}.tiny-popover.tiny-popper[x-placement].page-tree-row-operation-list .operation-list .danger{color:var(--te-page-manage-operation-list-text-color-error)}[data-v-db4f4ccc] .tiny-button{border-radius:4px;height:24px;line-height:24px}.plugin-page[data-v-db4f4ccc]{height:100%}.general-config .general-config-form .input-head[data-v-2bfaa8aa]{color:var(--te-page-manage-input-head-text-color)}.general-config .general-config-form[data-v-2bfaa8aa] .tiny-form-item{margin-bottom:16px}.general-config .general-config-form[data-v-2bfaa8aa] .tiny-form-item .tiny-input-group__prepend{border:1px solid var(--te-page-manage-input-border-color);background:var(--te-page-manage-input-bg-color)}.general-config .general-config-form[data-v-2bfaa8aa] .tiny-form-item .page-type-radio{color:var(--te-page-manage-title-text-color)}.general-config .general-config-form[data-v-2bfaa8aa] .tiny-form-item .tiny-form-item__label{height:24px;line-height:18px;font-size:12px;color:var(--te-page-manage-text-color)}.general-config .tip[data-v-2bfaa8aa]{color:var(--te-page-manage-tip-color);font-size:12px;border-radius:3px;margin-top:4px;width:100%;word-wrap:break-word;height:auto;line-height:16px}.general-config .tip .text[data-v-2bfaa8aa]{color:var(--te-page-manage-tip-text-color)}.general-config .tip .tip-text[data-v-2bfaa8aa]{width:100%;color:var(--te-page-manage-tip-text-color)}.general-config .tip .tip-text-dim[data-v-2bfaa8aa]{color:var(--te-page-manage-tip-dim-text-color)}.tiny-select-dropdown.parent-fold-select-dropdown{padding:8px}.tiny-select-dropdown.parent-fold-select-dropdown .tiny-tree .tiny-tree-node .tiny-tree-node__content{padding:0;background-color:var(--te-page-manage-tree-node-bg-color)}.tiny-select-dropdown.parent-fold-select-dropdown .tiny-tree .tiny-tree-node .tiny-tree-node__content:hover{background-color:var(--te-page-manage-tree-node-bg-color-hover)}.tiny-select-dropdown.parent-fold-select-dropdown .tiny-tree .tiny-tree-node .tiny-tree-node__content .tiny-tree-node__content-left,.tiny-select-dropdown.parent-fold-select-dropdown .tiny-tree .tiny-tree-node .tiny-tree-node__content .tiny-tree-node__content-left .tiny-tree-node__content-box,.tiny-select-dropdown.parent-fold-select-dropdown .tiny-tree .tiny-tree-node .tiny-tree-node__content .tiny-tree-node__content-left:hover,.tiny-select-dropdown.parent-fold-select-dropdown .tiny-tree .tiny-tree-node .tiny-tree-node__content .tiny-tree-node__content-left .tiny-tree-node__content-box:hover{background-color:unset}.tiny-select-dropdown.parent-fold-select-dropdown .tiny-tree .tiny-tree-node .tiny-tree-node__content .tiny-tree-node__content-left{padding:0}.tiny-select-dropdown.parent-fold-select-dropdown .tiny-tree .tiny-tree-node .tiny-tree-node__content .tiny-tree-node__content-left .tree-node-icon{margin:0}.tiny-select-dropdown.parent-fold-select-dropdown .tiny-tree .tiny-tree-node .tiny-tree-node__content .tiny-tree-node__content-left .tiny-tree-node__content-box{padding:0 12px}.tiny-select-dropdown.parent-fold-select-dropdown .tiny-tree .tiny-tree-node .tiny-tree-node__content .tiny-tree-node__content-left .tiny-tree-node__content-box svg{margin-right:8px}.tiny-select-dropdown.parent-fold-select-dropdown .tiny-tree .tiny-tree-node .tiny-tree-node__content .tiny-tree-node__content-left .tiny-tree-node__label{font-size:12px}.plugin-page{--te-page-manage-title-text-color: var(--te-common-text-primary);--te-page-manage-input-bg-color: var(--te-common-bg-default);--te-page-manage-input-border-color: var(--te-common-border-default);--te-page-manage-tip-color: var(--te-common-text-primary);--te-page-manage-tip-text-color: var(--te-common-text-weaken);--te-page-manage-tip-dim-text-color: var(--te-common-text-primary);--te-page-manage-tree-text-bg-color: var(--te-common-bg-default);--te-page-manage-tree-node-bg-color: var(--te-common-bg-default);--te-page-manage-tree-node-bg-color-hover: var(--te-common-bg-container);--te-page-manage-text-color: var(--te-common-text-secondary);--te-page-manage-input-head-text-color: var(--te-common-text-primary);--te-page-manage-input-or-output-text-color: var(--te-common-text-secondary);--te-page-manage-life-cycle-alert-text-color: var(--te-common-text-weaken);--te-page-manage-icon-color: var(--te-common-icon-secondary);--te-page-manage-draggable-row-bg-color-hover: var(--te-common-bg-container);--te-page-manage-draggable-text-color: var(--te-common-text-primary);--te-page-manage-draggable-icon-color: var(--te-common-icon-secondary);--te-page-manage-draggable-border-color: var(--te-common-border-checked)}.operation-list{--te-page-manage-operation-list-item-bg-color-hover: var(--te-common-bg-container);--te-page-manage-operation-list-item-border-color-divider: var(--te-common-border-divider);--te-page-manage-operation-list-text-color-error: var(--te-common-color-error)}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opentiny/tiny-engine-plugin-page",
3
- "version": "2.6.0-alpha.5",
3
+ "version": "2.6.0-alpha.7",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -25,12 +25,12 @@
25
25
  "license": "MIT",
26
26
  "homepage": "https://opentiny.design/tiny-engine",
27
27
  "dependencies": {
28
- "@opentiny/tiny-engine-common": "2.6.0-alpha.5",
29
- "@opentiny/tiny-engine-meta-register": "2.6.0-alpha.5",
30
- "@opentiny/tiny-engine-utils": "2.6.0-alpha.5"
28
+ "@opentiny/tiny-engine-common": "2.6.0-alpha.7",
29
+ "@opentiny/tiny-engine-meta-register": "2.6.0-alpha.7",
30
+ "@opentiny/tiny-engine-utils": "2.6.0-alpha.7"
31
31
  },
32
32
  "devDependencies": {
33
- "@opentiny/tiny-engine-vite-plugin-meta-comments": "2.6.0-alpha.5",
33
+ "@opentiny/tiny-engine-vite-plugin-meta-comments": "2.6.0-alpha.7",
34
34
  "@vitejs/plugin-vue": "^5.1.2",
35
35
  "@vitejs/plugin-vue-jsx": "^4.0.1",
36
36
  "vite": "^5.4.2"
@@ -41,5 +41,5 @@
41
41
  "@opentiny/vue-renderless": "^3.20.0",
42
42
  "vue": "^3.4.15"
43
43
  },
44
- "gitHead": "d77058a680179019394f9d1d5bbd9c9b335362a5"
44
+ "gitHead": "de90d7a8bbbc41fbd498ca82c562bccc9b2db4d7"
45
45
  }