@ditari/bsui 5.0.11 → 5.0.12

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.
Files changed (108) hide show
  1. package/dist/cjs/components/date/RangePicker.vue2.cjs +10 -2
  2. package/dist/cjs/components/date/RangePicker.vue2.cjs.map +1 -1
  3. package/dist/cjs/components/dic/DicReplace.cjs +93 -0
  4. package/dist/cjs/components/dic/DicReplace.cjs.map +1 -0
  5. package/dist/cjs/components/dic/index.cjs +14 -0
  6. package/dist/cjs/components/dic/index.cjs.map +1 -0
  7. package/dist/cjs/components/form/FormLayout.cjs.map +1 -1
  8. package/dist/cjs/components/icon/Moon.vue.cjs.map +1 -1
  9. package/dist/cjs/components/icon/Sun.vue.cjs.map +1 -1
  10. package/dist/cjs/components/index.cjs +3 -0
  11. package/dist/cjs/components/index.cjs.map +1 -1
  12. package/dist/cjs/components/layout/Layout.vue2.cjs +53 -39
  13. package/dist/cjs/components/layout/Layout.vue2.cjs.map +1 -1
  14. package/dist/cjs/components/layout/List.cjs +20 -28
  15. package/dist/cjs/components/layout/List.cjs.map +1 -1
  16. package/dist/cjs/components/layout/Show.cjs +36 -39
  17. package/dist/cjs/components/layout/Show.cjs.map +1 -1
  18. package/dist/cjs/components/layout/components/index.cjs.map +1 -1
  19. package/dist/cjs/components/layout/components/layout/HeaderLayout.vue2.cjs +6 -1
  20. package/dist/cjs/components/layout/components/layout/HeaderLayout.vue2.cjs.map +1 -1
  21. package/dist/cjs/components/layout/components/layout/ThemeApp.vue2.cjs +3 -0
  22. package/dist/cjs/components/layout/components/layout/ThemeApp.vue2.cjs.map +1 -1
  23. package/dist/cjs/components/layout/components/menu/Menu.cjs.map +1 -1
  24. package/dist/cjs/components/layout/components/settings/BlockCheckbox.vue2.cjs +3 -1
  25. package/dist/cjs/components/layout/components/settings/BlockCheckbox.vue2.cjs.map +1 -1
  26. package/dist/cjs/components/layout/components/settings/SettingDrawer.cjs +2 -3
  27. package/dist/cjs/components/layout/components/settings/SettingDrawer.cjs.map +1 -1
  28. package/dist/cjs/components/select/Select.vue2.cjs +61 -4
  29. package/dist/cjs/components/select/Select.vue2.cjs.map +1 -1
  30. package/dist/cjs/components/tab/Search.cjs +39 -6
  31. package/dist/cjs/components/tab/Search.cjs.map +1 -1
  32. package/dist/cjs/components/tab/Tab.vue2.cjs +31 -7
  33. package/dist/cjs/components/tab/Tab.vue2.cjs.map +1 -1
  34. package/dist/cjs/components/table/Table.cjs.map +1 -1
  35. package/dist/cjs/index.cjs +2 -0
  36. package/dist/cjs/index.cjs.map +1 -1
  37. package/dist/cjs/utils/useTheme.cjs +11 -13
  38. package/dist/cjs/utils/useTheme.cjs.map +1 -1
  39. package/dist/esm/components/date/RangePicker.vue2.mjs +10 -2
  40. package/dist/esm/components/date/RangePicker.vue2.mjs.map +1 -1
  41. package/dist/esm/components/dic/DicReplace.mjs +89 -0
  42. package/dist/esm/components/dic/DicReplace.mjs.map +1 -0
  43. package/dist/esm/components/dic/index.mjs +10 -0
  44. package/dist/esm/components/dic/index.mjs.map +1 -0
  45. package/dist/esm/components/form/FormLayout.mjs.map +1 -1
  46. package/dist/esm/components/icon/Moon.vue.mjs.map +1 -1
  47. package/dist/esm/components/icon/Sun.vue.mjs.map +1 -1
  48. package/dist/esm/components/index.mjs +2 -0
  49. package/dist/esm/components/index.mjs.map +1 -1
  50. package/dist/esm/components/layout/Layout.vue2.mjs +54 -40
  51. package/dist/esm/components/layout/Layout.vue2.mjs.map +1 -1
  52. package/dist/esm/components/layout/List.mjs +21 -29
  53. package/dist/esm/components/layout/List.mjs.map +1 -1
  54. package/dist/esm/components/layout/Show.mjs +38 -41
  55. package/dist/esm/components/layout/Show.mjs.map +1 -1
  56. package/dist/esm/components/layout/components/index.mjs.map +1 -1
  57. package/dist/esm/components/layout/components/layout/HeaderLayout.vue2.mjs +6 -1
  58. package/dist/esm/components/layout/components/layout/HeaderLayout.vue2.mjs.map +1 -1
  59. package/dist/esm/components/layout/components/layout/ThemeApp.vue2.mjs +3 -0
  60. package/dist/esm/components/layout/components/layout/ThemeApp.vue2.mjs.map +1 -1
  61. package/dist/esm/components/layout/components/menu/Menu.mjs.map +1 -1
  62. package/dist/esm/components/layout/components/settings/BlockCheckbox.vue2.mjs +3 -1
  63. package/dist/esm/components/layout/components/settings/BlockCheckbox.vue2.mjs.map +1 -1
  64. package/dist/esm/components/layout/components/settings/SettingDrawer.mjs +2 -3
  65. package/dist/esm/components/layout/components/settings/SettingDrawer.mjs.map +1 -1
  66. package/dist/esm/components/select/Select.vue2.mjs +63 -6
  67. package/dist/esm/components/select/Select.vue2.mjs.map +1 -1
  68. package/dist/esm/components/tab/Search.mjs +39 -6
  69. package/dist/esm/components/tab/Search.mjs.map +1 -1
  70. package/dist/esm/components/tab/Tab.vue2.mjs +32 -8
  71. package/dist/esm/components/tab/Tab.vue2.mjs.map +1 -1
  72. package/dist/esm/components/table/Table.mjs.map +1 -1
  73. package/dist/esm/index.mjs +1 -0
  74. package/dist/esm/index.mjs.map +1 -1
  75. package/dist/esm/utils/useTheme.mjs +11 -13
  76. package/dist/esm/utils/useTheme.mjs.map +1 -1
  77. package/dist/style/index.scss +2 -1
  78. package/dist/style/layout/components/settings/style/index.scss +24 -24
  79. package/dist/style/tab/style/index.scss +0 -1
  80. package/dist/types/components/date/RangePicker.vue.d.ts.map +1 -1
  81. package/dist/types/components/dic/DicReplace.d.ts +24 -0
  82. package/dist/types/components/dic/DicReplace.d.ts.map +1 -0
  83. package/dist/types/components/dic/index.d.ts +3 -0
  84. package/dist/types/components/dic/index.d.ts.map +1 -0
  85. package/dist/types/components/form/FormLayout.d.ts.map +1 -1
  86. package/dist/types/components/index.d.ts +1 -0
  87. package/dist/types/components/index.d.ts.map +1 -1
  88. package/dist/types/components/layout/Layout.vue.d.ts +6 -1
  89. package/dist/types/components/layout/Layout.vue.d.ts.map +1 -1
  90. package/dist/types/components/layout/List.d.ts.map +1 -1
  91. package/dist/types/components/layout/Show.d.ts.map +1 -1
  92. package/dist/types/components/layout/components/index.d.ts.map +1 -1
  93. package/dist/types/components/layout/components/layout/HeaderLayout.vue.d.ts +2 -0
  94. package/dist/types/components/layout/components/layout/HeaderLayout.vue.d.ts.map +1 -1
  95. package/dist/types/components/layout/components/layout/ThemeApp.vue.d.ts.map +1 -1
  96. package/dist/types/components/layout/components/menu/Menu.d.ts.map +1 -1
  97. package/dist/types/components/layout/components/settings/BlockCheckbox.vue.d.ts.map +1 -1
  98. package/dist/types/components/layout/components/settings/SettingDrawer.d.ts.map +1 -1
  99. package/dist/types/components/select/Select.vue.d.ts +2 -1
  100. package/dist/types/components/select/Select.vue.d.ts.map +1 -1
  101. package/dist/types/components/tab/Search.d.ts.map +1 -1
  102. package/dist/types/components/tab/Tab.vue.d.ts +5 -2
  103. package/dist/types/components/tab/Tab.vue.d.ts.map +1 -1
  104. package/dist/types/components/table/Table.d.ts.map +1 -1
  105. package/dist/types/components/table/interface.d.ts.map +1 -1
  106. package/dist/types/index.d.ts.map +1 -1
  107. package/dist/types/utils/useTheme.d.ts.map +1 -1
  108. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"List.cjs","sources":["../../../../src/components/layout/List.tsx"],"sourcesContent":["import {\r\n computed,\r\n defineComponent,\r\n inject,\r\n nextTick,\r\n onActivated,\r\n onDeactivated,\r\n onMounted,\r\n onUnmounted,\r\n ref,\r\n watch,\r\n type WatchStopHandle\r\n} from \"vue\";\r\nimport { useRoute } from \"vue-router\";\r\nimport { Card, Flex, Space, Watermark } from \"ant-design-vue\";\r\nimport { storeToRefs } from \"pinia\";\r\nimport { useElementSize } from \"@vueuse/core\";\r\n\r\nimport { useAppStore } from \"@ditari/store\";\r\nimport { css } from \"@emotion/css\";\r\n\r\nconst tableRootStyle = css`\r\n height: 100%;\r\n position: relative;\r\n overflow: hidden;\r\n`;\r\n\r\nconst list = defineComponent({\r\n name: \"DListLayout\",\r\n emits: [\"refresh\"],\r\n setup(_, { slots, emit }) {\r\n const watermarkContent = ref(inject(\"watermarkContent\"));\r\n const route = useRoute();\r\n const { refresh } = storeToRefs(useAppStore());\r\n const { tableRef, height, tableVisible, playTableHeight } =\r\n useTableHeight();\r\n const { formRef } = useForm();\r\n useReload();\r\n // 使用 computed 来动态计算样式\r\n const maskDivStyle = computed(() => {\r\n return css`\r\n position: absolute;\r\n top: 0;\r\n right: 0;\r\n bottom: 0;\r\n left: 0;\r\n z-index: 1;\r\n background: white;\r\n display: ${tableVisible.value ? \"block\" : \"none\"};\r\n `;\r\n });\r\n\r\n const tableWrapperStyle = css`\r\n position: absolute;\r\n top: 0;\r\n right: 0;\r\n bottom: 0;\r\n left: 0;\r\n overflow: hidden;\r\n `;\r\n\r\n const cardStyle = css`\r\n box-shadow: none !important;\r\n `;\r\n\r\n const leftCardStyle = css`\r\n .ant-card-body {\r\n overflow-y: scroll;\r\n -ms-overflow-style: none; /* 对 IE 和 Edge 生效 */\r\n scrollbar-width: none; /* 对 Firefox 生效 */\r\n\r\n /* Webkit 浏览器 */\r\n\r\n ::-webkit-scrollbar {\r\n display: none;\r\n }\r\n }\r\n `;\r\n\r\n const listStyle = computed(() => css``);\r\n\r\n onMounted(() => {\r\n playTableHeight();\r\n });\r\n\r\n function useTableHeight() {\r\n const tableRef = ref();\r\n const height = ref(0);\r\n const tableVisible = ref(true);\r\n\r\n function playTableHeight() {\r\n tableVisible.value = true;\r\n height.value = tableRef?.value?.$el.offsetHeight;\r\n nextTick(() => {\r\n setTimeout(() => {\r\n tableVisible.value = false;\r\n }, 10);\r\n });\r\n }\r\n\r\n return {\r\n tableRef,\r\n height,\r\n tableVisible,\r\n playTableHeight\r\n };\r\n }\r\n\r\n function useForm() {\r\n const formRef = ref(null);\r\n const { height: formHeight } = useElementSize(formRef);\r\n watch(\r\n () => formHeight.value,\r\n () => {\r\n nextTick(() => {\r\n playTableHeight();\r\n });\r\n }\r\n );\r\n\r\n return {\r\n formRef\r\n };\r\n }\r\n\r\n // 处理标签重载\r\n function useReload() {\r\n let stopHandleWatch: WatchStopHandle;\r\n // !route.meta.keepAlive\r\n if (!route.name) {\r\n stopHandleWatch = _useWatch();\r\n // 卸载未缓存的组件\r\n onUnmounted(() => {\r\n stopHandleWatch?.();\r\n });\r\n } else {\r\n // 激活缓存页面\r\n onActivated(() => {\r\n if (refresh.value) {\r\n refresh.value = false;\r\n emit(\"refresh\");\r\n }\r\n stopHandleWatch = _useWatch();\r\n });\r\n // 离开缓存页面\r\n onDeactivated(() => {\r\n stopHandleWatch?.();\r\n });\r\n }\r\n\r\n function _useWatch() {\r\n //点击了标签重载图标\r\n return watch(\r\n () => refresh.value,\r\n val => {\r\n if (val) {\r\n // 发送刷新事件到列表页面\r\n emit(\"refresh\");\r\n }\r\n }\r\n );\r\n }\r\n }\r\n\r\n function useLayout() {\r\n function formLayout() {\r\n return () =>\r\n slots.form && (\r\n <Card\r\n class={cardStyle}\r\n ref={formRef}\r\n style={{ marginBottom: \"10px\" }}\r\n bodyStyle={{ padding: \"10px 10px 0 10px\" }}\r\n bordered={false}\r\n >\r\n {slots.form()}\r\n </Card>\r\n );\r\n }\r\n\r\n function tableLayout() {\r\n return () => (\r\n <Flex flex={1} vertical={true}>\r\n <Card\r\n class={cardStyle}\r\n style={{ height: \"100%\" }}\r\n bodyStyle={{ height: \"100%\", padding: \"10px\" }}\r\n bordered={false}\r\n >\r\n <Flex style={{ height: \"100%\" }} vertical={true}>\r\n <Space style={{ marginBottom: \"6px\" }}>{slots.tools?.()}</Space>\r\n <Flex\r\n ref={tableRef}\r\n flex={1}\r\n style={{ height: \"100%\" }}\r\n vertical={true}\r\n >\r\n <div class={tableRootStyle}>\r\n <div class={maskDivStyle.value}></div>\r\n <div class={tableWrapperStyle}>\r\n {slots.table?.({ height: height.value })}\r\n </div>\r\n </div>\r\n </Flex>\r\n </Flex>\r\n </Card>\r\n </Flex>\r\n );\r\n }\r\n\r\n return (\r\n <Watermark\r\n style={{ height: \"100%\" }}\r\n content={watermarkContent.value as string}\r\n >\r\n <Flex\r\n class={[listStyle.value, \"app-list\"]}\r\n gap={10}\r\n style={{ height: \"100%\", padding: \"10px\" }}\r\n >\r\n {slots.left ? (\r\n <Card\r\n class={[cardStyle, leftCardStyle]}\r\n bordered={false}\r\n bodyStyle={{\r\n height: \"100%\",\r\n padding: \"10px\"\r\n }}\r\n >\r\n {slots.left?.()}\r\n </Card>\r\n ) : null}\r\n <Flex vertical={true} flex={1}>\r\n {formLayout()()}\r\n {tableLayout()()}\r\n </Flex>\r\n </Flex>\r\n </Watermark>\r\n );\r\n }\r\n\r\n return () => useLayout();\r\n }\r\n});\r\n\r\nexport default list;\r\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","tableRootStyle","css","list","defineComponent","name","emits","setup","_","slots","emit","watermarkContent","ref","inject","route","useRoute","refresh","storeToRefs","useAppStore","tableRef","height","tableVisible","playTableHeight","useTableHeight","formRef","useForm","useReload","maskDivStyle","computed","value","tableWrapperStyle","cardStyle","leftCardStyle","listStyle","onMounted","$el","offsetHeight","nextTick","setTimeout","formHeight","useElementSize","watch","stopHandleWatch","_useWatch","onUnmounted","onActivated","onDeactivated","val","useLayout","formLayout","_slot","form","_createVNode","Card","marginBottom","padding","default","tableLayout","Flex","Space","tools","table","Watermark","left"],"mappings":"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"}
1
+ {"version":3,"file":"List.cjs","sources":["../../../../src/components/layout/List.tsx"],"sourcesContent":["import {\r\n computed,\r\n defineComponent,\r\n inject,\r\n nextTick,\r\n onActivated,\r\n onDeactivated,\r\n onMounted,\r\n onUnmounted,\r\n ref,\r\n watch,\r\n type WatchStopHandle\r\n} from \"vue\";\r\nimport { useRoute } from \"vue-router\";\r\nimport {\r\n Card,\r\n Flex,\r\n Space,\r\n Watermark\r\n} from \"ant-design-vue\";\r\nimport { storeToRefs } from \"pinia\";\r\nimport { useElementSize } from \"@vueuse/core\";\r\n\r\nimport { useAppStore } from \"@ditari/store\";\r\nimport { css } from \"@emotion/css\";\r\n\r\nconst tableRootStyle = css`\r\n height: 100%;\r\n position: relative;\r\n overflow: hidden;\r\n`;\r\n\r\nconst list = defineComponent({\r\n name: \"DListLayout\",\r\n emits: [\"refresh\"],\r\n setup(_, { slots, emit }) {\r\n const watermarkContent = ref(\r\n inject(\"watermarkContent\")\r\n );\r\n const route = useRoute();\r\n const { refresh } = storeToRefs(useAppStore());\r\n const {\r\n tableRef,\r\n height,\r\n tableVisible,\r\n playTableHeight\r\n } = useTableHeight();\r\n const { formRef } = useForm();\r\n useReload();\r\n // 使用 computed 来动态计算样式\r\n const maskDivStyle = computed(() => {\r\n return css`\r\n position: absolute;\r\n top: 0;\r\n right: 0;\r\n bottom: 0;\r\n left: 0;\r\n z-index: 1;\r\n background: white;\r\n display: ${tableVisible.value ? \"block\" : \"none\"};\r\n `;\r\n });\r\n\r\n const tableWrapperStyle = css`\r\n position: absolute;\r\n top: 0;\r\n right: 0;\r\n bottom: 0;\r\n left: 0;\r\n overflow: hidden;\r\n `;\r\n\r\n const cardStyle = css`\r\n box-shadow: none !important;\r\n `;\r\n\r\n const leftCardStyle = css`\r\n .ant-card-body {\r\n overflow-y: scroll;\r\n -ms-overflow-style: none; /* 对 IE 和 Edge 生效 */\r\n scrollbar-width: none; /* 对 Firefox 生效 */\r\n\r\n /* Webkit 浏览器 */\r\n\r\n ::-webkit-scrollbar {\r\n display: none;\r\n }\r\n }\r\n `;\r\n\r\n const listStyle = computed(\r\n () => css`\r\n padding: 10px;\r\n height: calc(100vh - 44px);\r\n `\r\n );\r\n\r\n onMounted(() => {\r\n playTableHeight();\r\n });\r\n\r\n function useTableHeight() {\r\n const tableRef = ref();\r\n const height = ref(0);\r\n const tableVisible = ref(true);\r\n\r\n function playTableHeight() {\r\n tableVisible.value = true;\r\n height.value = tableRef?.value?.$el.offsetHeight;\r\n nextTick(() => {\r\n setTimeout(() => {\r\n tableVisible.value = false;\r\n }, 10);\r\n });\r\n }\r\n\r\n return {\r\n tableRef,\r\n height,\r\n tableVisible,\r\n playTableHeight\r\n };\r\n }\r\n\r\n function useForm() {\r\n const formRef = ref(null);\r\n const { height: formHeight } =\r\n useElementSize(formRef);\r\n watch(\r\n () => formHeight.value,\r\n () => {\r\n nextTick(() => {\r\n playTableHeight();\r\n });\r\n }\r\n );\r\n\r\n return {\r\n formRef\r\n };\r\n }\r\n\r\n // 处理标签重载\r\n function useReload() {\r\n let stopHandleWatch: WatchStopHandle;\r\n // !route.meta.keepAlive\r\n if (!route.name) {\r\n stopHandleWatch = _useWatch();\r\n // 卸载未缓存的组件\r\n onUnmounted(() => {\r\n stopHandleWatch?.();\r\n });\r\n } else {\r\n // 激活缓存页面\r\n onActivated(() => {\r\n if (refresh.value) {\r\n refresh.value = false;\r\n emit(\"refresh\");\r\n }\r\n stopHandleWatch = _useWatch();\r\n });\r\n // 离开缓存页面\r\n onDeactivated(() => {\r\n stopHandleWatch?.();\r\n });\r\n }\r\n\r\n function _useWatch() {\r\n //点击了标签重载图标\r\n return watch(\r\n () => refresh.value,\r\n val => {\r\n if (val) {\r\n // 发送刷新事件到列表页面\r\n emit(\"refresh\");\r\n }\r\n }\r\n );\r\n }\r\n }\r\n\r\n function useLayout() {\r\n function formLayout() {\r\n return () =>\r\n slots.form && (\r\n <Card\r\n class={cardStyle}\r\n ref={formRef}\r\n style={{ marginBottom: \"10px\" }}\r\n bodyStyle={{ padding: \"10px 10px 0 10px\" }}\r\n bordered={false}\r\n >\r\n {slots.form()}\r\n </Card>\r\n );\r\n }\r\n\r\n function tableLayout() {\r\n return () => (\r\n <Flex flex={1} vertical={true}>\r\n <Card\r\n class={cardStyle}\r\n style={{ height: \"100%\" }}\r\n bodyStyle={{\r\n height: \"100%\",\r\n padding: \"10px\"\r\n }}\r\n bordered={false}\r\n >\r\n <Flex\r\n style={{ height: \"100%\" }}\r\n vertical={true}\r\n >\r\n <Space style={{ marginBottom: \"6px\" }}>\r\n {slots.tools?.()}\r\n </Space>\r\n <Flex\r\n ref={tableRef}\r\n flex={1}\r\n style={{ height: \"100%\" }}\r\n vertical={true}\r\n >\r\n <div class={tableRootStyle}>\r\n <div class={maskDivStyle.value}></div>\r\n <div class={tableWrapperStyle}>\r\n {slots.table?.({\r\n height: height.value\r\n })}\r\n </div>\r\n </div>\r\n </Flex>\r\n </Flex>\r\n </Card>\r\n </Flex>\r\n );\r\n }\r\n\r\n return (\r\n <Flex\r\n class={[listStyle.value, \"app-list\"]}\r\n gap={10}\r\n >\r\n {slots.left ? (\r\n <Card\r\n class={[cardStyle, leftCardStyle]}\r\n bordered={false}\r\n bodyStyle={{\r\n height: \"100%\",\r\n padding: \"10px\"\r\n }}\r\n >\r\n {slots.left?.()}\r\n </Card>\r\n ) : null}\r\n <Flex vertical={true} flex={1}>\r\n {formLayout()()}\r\n {tableLayout()()}\r\n </Flex>\r\n </Flex>\r\n );\r\n }\r\n\r\n return () => useLayout();\r\n }\r\n});\r\n\r\nexport default list;\r\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","tableRootStyle","css","list","defineComponent","name","emits","setup","_","slots","emit","watermarkContent","ref","inject","route","useRoute","refresh","storeToRefs","useAppStore","tableRef","height","tableVisible","playTableHeight","useTableHeight","formRef","useForm","useReload","maskDivStyle","computed","value","tableWrapperStyle","cardStyle","leftCardStyle","listStyle","onMounted","$el","offsetHeight","nextTick","setTimeout","formHeight","useElementSize","watch","stopHandleWatch","_useWatch","onUnmounted","onActivated","onDeactivated","val","useLayout","formLayout","_slot","form","_createVNode","Card","marginBottom","padding","default","tableLayout","Flex","Space","tools","table","left"],"mappings":"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"}
@@ -27,7 +27,6 @@ const show = /* @__PURE__ */ vue.defineComponent({
27
27
  slots,
28
28
  expose
29
29
  }) {
30
- const watermarkContent = vue.ref(vue.inject("watermarkContent"));
31
30
  const {
32
31
  useToken
33
32
  } = antDesignVue.theme;
@@ -36,6 +35,7 @@ const show = /* @__PURE__ */ vue.defineComponent({
36
35
  } = useToken();
37
36
  const {
38
37
  layout,
38
+ modeConfig,
39
39
  refresh
40
40
  } = pinia.storeToRefs(store.useAppStore());
41
41
  const {
@@ -83,9 +83,10 @@ const show = /* @__PURE__ */ vue.defineComponent({
83
83
  left: ${layout.value.collapsed ? layout.value.collapsedWidth : layout.value.sideWidth}px;
84
84
  z-index: 10;
85
85
  padding: 10px;
86
- background: #fff;
86
+ background: ${modeConfig.value.mode !== "light" ? token.value.colorBgContainer : "#fff"};
87
87
  box-shadow: 6px 0 10px rgba(0, 0, 0, 0.15);
88
- transition: left 0.4s cubic-bezier(0.22, 1.2, 0.36, 1);
88
+ transition: left 0.4s
89
+ cubic-bezier(0.22, 1.2, 0.36, 1);
89
90
  `);
90
91
  const pageTitle = () => vue.createVNode("div", null, [route.meta.title || "\u65E0\u6807\u9898"]);
91
92
  const ghost = vue.ref(false);
@@ -105,44 +106,40 @@ const show = /* @__PURE__ */ vue.defineComponent({
105
106
  expose({
106
107
  close: onClosePage
107
108
  });
108
- return () => vue.createVNode(antDesignVue.Watermark, {
109
- "content": watermarkContent.value
109
+ return () => vue.createVNode(antDesignVue.Flex, {
110
+ "vertical": true
110
111
  }, {
111
- default: () => [vue.createVNode(antDesignVue.Flex, {
112
- "vertical": true
113
- }, {
114
- default: () => {
115
- var _a, _b;
116
- return [vue.createVNode(antDesignVue.PageHeader, {
117
- "ghost": ghost.value,
118
- "class": pageHeaderStyle.value,
119
- "onBack": () => onBack(),
120
- "title": pageTitle()
121
- }, {
122
- backIcon: () => vue.createVNode("div", null, [vue.createVNode(iconsVue.LeftOutlined, {
123
- "style": {
124
- fontSize: "26px"
125
- }
126
- }, null)]),
127
- extra: () => {
128
- var _a2;
129
- return (_a2 = slots.extra) == null ? void 0 : _a2.call(slots);
130
- },
131
- footer: () => {
132
- var _a2;
133
- return (_a2 = slots.footer) == null ? void 0 : _a2.call(slots);
134
- },
135
- subTitle: () => {
136
- var _a2;
137
- return (_a2 = slots.subTitle) == null ? void 0 : _a2.call(slots);
112
+ default: () => {
113
+ var _a, _b;
114
+ return [vue.createVNode(antDesignVue.PageHeader, {
115
+ "ghost": ghost.value,
116
+ "class": pageHeaderStyle.value,
117
+ "onBack": () => onBack(),
118
+ "title": pageTitle()
119
+ }, {
120
+ backIcon: () => vue.createVNode("div", null, [vue.createVNode(iconsVue.LeftOutlined, {
121
+ "style": {
122
+ fontSize: "26px"
138
123
  }
139
- }), vue.createVNode("div", {
140
- "class": contentStyle.value
141
- }, [(_a = slots.default) == null ? void 0 : _a.call(slots)]), slots.bottomFooter ? vue.createVNode("div", {
142
- "class": footerStyle.value
143
- }, [(_b = slots.bottomFooter) == null ? void 0 : _b.call(slots)]) : null];
144
- }
145
- })]
124
+ }, null)]),
125
+ extra: () => {
126
+ var _a2;
127
+ return (_a2 = slots.extra) == null ? void 0 : _a2.call(slots);
128
+ },
129
+ footer: () => {
130
+ var _a2;
131
+ return (_a2 = slots.footer) == null ? void 0 : _a2.call(slots);
132
+ },
133
+ subTitle: () => {
134
+ var _a2;
135
+ return (_a2 = slots.subTitle) == null ? void 0 : _a2.call(slots);
136
+ }
137
+ }), vue.createVNode("div", {
138
+ "class": contentStyle.value
139
+ }, [(_a = slots.default) == null ? void 0 : _a.call(slots)]), slots.bottomFooter ? vue.createVNode("div", {
140
+ "class": footerStyle.value
141
+ }, [(_b = slots.bottomFooter) == null ? void 0 : _b.call(slots)]) : null];
142
+ }
146
143
  });
147
144
  }
148
145
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Show.cjs","sources":["../../../../src/components/layout/Show.tsx"],"sourcesContent":["import { computed, ComputedRef, defineComponent, inject, ref } from \"vue\";\r\nimport { useRoute, useRouter } from \"vue-router\";\r\nimport { Flex, PageHeader, theme, Watermark } from \"ant-design-vue\";\r\nimport { storeToRefs } from \"pinia\";\r\nimport { useWindowScroll } from \"@vueuse/core\";\r\n\r\nimport { LeftOutlined } from \"@ant-design/icons-vue\";\r\nimport { useAppStore, useNavTabStore } from \"@ditari/store\";\r\nimport { css } from \"@emotion/css\";\r\nimport type { GlobalToken } from \"ant-design-vue/es/theme/interface\";\r\n\r\nconst getProps = () => {\r\n return {\r\n close: {\r\n type: Boolean,\r\n default: false\r\n }\r\n };\r\n};\r\nconst show = defineComponent({\r\n name: \"DShowLayout\",\r\n props: getProps(),\r\n setup(props, { slots, expose }) {\r\n const watermarkContent = ref(inject(\"watermarkContent\"));\r\n const { useToken } = theme;\r\n const { token }: { token: ComputedRef<GlobalToken> } = useToken();\r\n const { layout, refresh } = storeToRefs(useAppStore());\r\n const { deleteTabs } = useNavTabStore();\r\n const route = useRoute();\r\n const router = useRouter();\r\n\r\n const { y } = useWindowScroll();\r\n\r\n const pageHeaderStyle = computed(\r\n () => css`\r\n position: sticky;\r\n top: ${layout.value.headerHeight}px;\r\n z-index: 10;\r\n padding: 0;\r\n transition: all 0.3s;\r\n background-color: ${token.value.colorBgLayout};\r\n\r\n ${y.value > 0 ? \"box-shadow:0 10px 10px rgba(0, 0, 0, 0.15);\" : \"\"}\r\n .ant-page-header-back {\r\n height: 100%;\r\n margin-right: 0;\r\n\r\n .ant-page-header-back-button {\r\n height: 100%;\r\n padding: 0 6px !important;\r\n display: flex !important;\r\n align-items: center;\r\n justify-content: center;\r\n }\r\n }\r\n\r\n .ant-page-header-heading-title {\r\n font-size: 14px;\r\n }\r\n `\r\n );\r\n const contentStyle = computed(\r\n () => css`\r\n padding: 10px 10px ${slots.footer ? \"70px\" : \"0\"};\r\n background: inherit;\r\n `\r\n );\r\n const footerStyle = computed(\r\n () => css`\r\n position: fixed;\r\n right: 0;\r\n bottom: 0;\r\n left: ${layout.value.collapsed\r\n ? layout.value.collapsedWidth\r\n : layout.value.sideWidth}px;\r\n z-index: 10;\r\n padding: 10px;\r\n background: #fff;\r\n box-shadow: 6px 0 10px rgba(0, 0, 0, 0.15);\r\n transition: left 0.4s cubic-bezier(0.22, 1.2, 0.36, 1);\r\n `\r\n );\r\n const pageTitle = () => <div>{route.meta.title || \"无标题\"}</div>;\r\n const ghost = ref(false);\r\n\r\n const onBack = () => {\r\n if (props.close) {\r\n // 返回关闭标签\r\n deleteTabs(route.fullPath);\r\n router.go(-1);\r\n } else {\r\n // 不关闭标签\r\n router.go(-1);\r\n }\r\n };\r\n\r\n const onClosePage = () => {\r\n refresh.value = true;\r\n deleteTabs(route.fullPath);\r\n router.go(-1);\r\n };\r\n\r\n expose({\r\n close: onClosePage\r\n });\r\n\r\n return () => (\r\n <Watermark content={watermarkContent.value as string}>\r\n <Flex vertical={true}>\r\n <PageHeader\r\n ghost={ghost.value}\r\n class={pageHeaderStyle.value}\r\n onBack={() => onBack()}\r\n title={pageTitle()}\r\n >\r\n {{\r\n backIcon: () => (\r\n <div>\r\n <LeftOutlined style={{ fontSize: \"26px\" }} />\r\n </div>\r\n ),\r\n extra: () => slots.extra?.(),\r\n footer: () => slots.footer?.(),\r\n subTitle: () => slots.subTitle?.()\r\n }}\r\n </PageHeader>\r\n <div class={contentStyle.value}>{slots.default?.()}</div>\r\n {slots.bottomFooter ? (\r\n <div class={footerStyle.value}>{slots.bottomFooter?.()}</div>\r\n ) : null}\r\n </Flex>\r\n </Watermark>\r\n );\r\n }\r\n});\r\n\r\nexport default show;\r\n"],"names":["getProps","close","type","Boolean","default","show","defineComponent","name","props","setup","slots","expose","watermarkContent","ref","inject","useToken","theme","token","layout","refresh","storeToRefs","useAppStore","deleteTabs","useNavTabStore","route","useRoute","router","useRouter","y","useWindowScroll","pageHeaderStyle","computed","css","value","headerHeight","colorBgLayout","contentStyle","footer","footerStyle","collapsed","collapsedWidth","sideWidth","pageTitle","_createVNode","meta","title","ghost","onBack","fullPath","go","onClosePage","Watermark","Flex","PageHeader","backIcon","LeftOutlined","fontSize","extra","_a","subTitle","bottomFooter"],"mappings":"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"}
1
+ {"version":3,"file":"Show.cjs","sources":["../../../../src/components/layout/Show.tsx"],"sourcesContent":["import {\r\n computed,\r\n ComputedRef,\r\n defineComponent,\r\n ref\r\n} from \"vue\";\r\nimport { useRoute, useRouter } from \"vue-router\";\r\nimport { Flex, PageHeader, theme } from \"ant-design-vue\";\r\nimport { storeToRefs } from \"pinia\";\r\nimport { useWindowScroll } from \"@vueuse/core\";\r\n\r\nimport { LeftOutlined } from \"@ant-design/icons-vue\";\r\nimport { useAppStore, useNavTabStore } from \"@ditari/store\";\r\nimport { css } from \"@emotion/css\";\r\nimport type { GlobalToken } from \"ant-design-vue/es/theme/interface\";\r\n\r\nconst getProps = () => {\r\n return {\r\n close: {\r\n type: Boolean,\r\n default: false\r\n }\r\n };\r\n};\r\nconst show = defineComponent({\r\n name: \"DShowLayout\",\r\n props: getProps(),\r\n setup(props, { slots, expose }) {\r\n const { useToken } = theme;\r\n const { token }: { token: ComputedRef<GlobalToken> } =\r\n useToken();\r\n\r\n const { layout, modeConfig, refresh } =\r\n storeToRefs(useAppStore());\r\n const { deleteTabs } = useNavTabStore();\r\n\r\n const route = useRoute();\r\n const router = useRouter();\r\n\r\n const { y } = useWindowScroll();\r\n\r\n const pageHeaderStyle = computed(\r\n () => css`\r\n position: sticky;\r\n top: ${layout.value.headerHeight}px;\r\n z-index: 10;\r\n padding: 0;\r\n transition: all 0.3s;\r\n background-color: ${token.value.colorBgLayout};\r\n\r\n ${y.value > 0\r\n ? \"box-shadow:0 10px 10px rgba(0, 0, 0, 0.15);\"\r\n : \"\"}\r\n .ant-page-header-back {\r\n height: 100%;\r\n margin-right: 0;\r\n\r\n .ant-page-header-back-button {\r\n height: 100%;\r\n padding: 0 6px !important;\r\n display: flex !important;\r\n align-items: center;\r\n justify-content: center;\r\n }\r\n }\r\n\r\n .ant-page-header-heading-title {\r\n font-size: 14px;\r\n }\r\n `\r\n );\r\n const contentStyle = computed(\r\n () => css`\r\n padding: 10px 10px ${slots.footer ? \"70px\" : \"0\"};\r\n background: inherit;\r\n `\r\n );\r\n const footerStyle = computed(\r\n () => css`\r\n position: fixed;\r\n right: 0;\r\n bottom: 0;\r\n left: ${layout.value.collapsed\r\n ? layout.value.collapsedWidth\r\n : layout.value.sideWidth}px;\r\n z-index: 10;\r\n padding: 10px;\r\n background: ${modeConfig.value.mode !== \"light\"\r\n ? token.value.colorBgContainer\r\n : \"#fff\"};\r\n box-shadow: 6px 0 10px rgba(0, 0, 0, 0.15);\r\n transition: left 0.4s\r\n cubic-bezier(0.22, 1.2, 0.36, 1);\r\n `\r\n );\r\n const pageTitle = () => (\r\n <div>{route.meta.title || \"无标题\"}</div>\r\n );\r\n const ghost = ref(false);\r\n\r\n const onBack = () => {\r\n if (props.close) {\r\n // 返回关闭标签\r\n deleteTabs(route.fullPath);\r\n router.go(-1);\r\n } else {\r\n // 不关闭标签\r\n router.go(-1);\r\n }\r\n };\r\n\r\n const onClosePage = () => {\r\n refresh.value = true;\r\n deleteTabs(route.fullPath);\r\n router.go(-1);\r\n };\r\n\r\n expose({\r\n close: onClosePage\r\n });\r\n\r\n return () => (\r\n <Flex vertical={true}>\r\n <PageHeader\r\n ghost={ghost.value}\r\n class={pageHeaderStyle.value}\r\n onBack={() => onBack()}\r\n title={pageTitle()}\r\n >\r\n {{\r\n backIcon: () => (\r\n <div>\r\n <LeftOutlined\r\n style={{ fontSize: \"26px\" }}\r\n />\r\n </div>\r\n ),\r\n extra: () => slots.extra?.(),\r\n footer: () => slots.footer?.(),\r\n subTitle: () => slots.subTitle?.()\r\n }}\r\n </PageHeader>\r\n <div class={contentStyle.value}>\r\n {slots.default?.()}\r\n </div>\r\n {slots.bottomFooter ? (\r\n <div class={footerStyle.value}>\r\n {slots.bottomFooter?.()}\r\n </div>\r\n ) : null}\r\n </Flex>\r\n );\r\n }\r\n});\r\n\r\nexport default show;\r\n"],"names":["getProps","close","type","Boolean","default","show","defineComponent","name","props","setup","slots","expose","useToken","theme","token","layout","modeConfig","refresh","storeToRefs","useAppStore","deleteTabs","useNavTabStore","route","useRoute","router","useRouter","y","useWindowScroll","pageHeaderStyle","computed","css","value","headerHeight","colorBgLayout","contentStyle","footer","footerStyle","collapsed","collapsedWidth","sideWidth","mode","colorBgContainer","pageTitle","_createVNode","meta","title","ghost","ref","onBack","fullPath","go","onClosePage","Flex","PageHeader","backIcon","LeftOutlined","fontSize","extra","_a","subTitle","bottomFooter"],"mappings":";;;;;;;;;;;;;;AAgBA,MAAMA,WAAWA,MAAM;AACrB,EAAO,OAAA;AAAA,IACLC,KAAO,EAAA;AAAA,MACLC,IAAMC,EAAAA,OAAAA;AAAAA,MACNC,OAAS,EAAA;AAAA;AACX,GACF;AACF,CAAA;AACA,MAAMC,uBAAuBC,mBAAA,CAAA;AAAA,EAC3BC,IAAM,EAAA,aAAA;AAAA,EACNC,OAAOR,QAAS,EAAA;AAAA,EAChBS,MAAMD,KAAO,EAAA;AAAA,IAAEE,KAAAA;AAAAA,IAAOC;AAAAA,GAAU,EAAA;AAC9B,IAAM,MAAA;AAAA,MAAEC;AAAAA,KAAaC,GAAAA,kBAAAA;AACrB,IAAM,MAAA;AAAA,MAAEC;AAAAA,QACNF,QAAS,EAAA;AAEX,IAAM,MAAA;AAAA,MAAEG,MAAAA;AAAAA,MAAQC,UAAAA;AAAAA,MAAYC;AAAAA,KAAQ,GAClCC,iBAAYC,CAAAA,iBAAAA,EAAa,CAAA;AAC3B,IAAM,MAAA;AAAA,MAAEC;AAAAA,QAAeC,oBAAe,EAAA;AAEtC,IAAA,MAAMC,QAAQC,kBAAS,EAAA;AACvB,IAAA,MAAMC,SAASC,mBAAU,EAAA;AAEzB,IAAM,MAAA;AAAA,MAAEC;AAAAA,QAAMC,oBAAgB,EAAA;AAE9B,IAAMC,MAAAA,eAAAA,GAAkBC,aACtB,MAAMC,OAAAA;AAAAA;AAAAA,aAEGf,EAAAA,MAAAA,CAAOgB,MAAMC,YAAY,CAAA;AAAA;AAAA;AAAA;AAAA,0BAIZlB,EAAAA,KAAAA,CAAMiB,MAAME,aAAa,CAAA;;AAAA,QAAA,EAE3CP,CAAEK,CAAAA,KAAAA,GAAQ,CACR,GAAA,6CAAA,GACA,EAAE;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA,MAkBV,CAAA,CAAA;AACA,IAAMG,MAAAA,YAAAA,GAAeL,aACnB,MAAMC,OAAAA;AAAAA,2BACiBpB,EAAAA,KAAAA,CAAMyB,MAAS,GAAA,MAAA,GAAS,GAAG,CAAA;AAAA;AAAA,MAGpD,CAAA,CAAA;AACA,IAAMC,MAAAA,WAAAA,GAAcP,aAClB,MAAMC,OAAAA;AAAAA;AAAAA;AAAAA;AAAAA,cAIIf,EAAAA,MAAAA,CAAOgB,MAAMM,SACjBtB,GAAAA,MAAAA,CAAOgB,MAAMO,cACbvB,GAAAA,MAAAA,CAAOgB,MAAMQ,SAAS,CAAA;AAAA;AAAA;AAAA,oBAAA,EAGZvB,WAAWe,KAAMS,CAAAA,IAAAA,KAAS,UACpC1B,KAAMiB,CAAAA,KAAAA,CAAMU,mBACZ,MAAM,CAAA;AAAA;AAAA;AAAA;AAAA,MAKd,CAAA,CAAA;AACA,IAAMC,MAAAA,SAAAA,GAAYA,MAAAC,eAAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CACVrB,KAAMsB,CAAAA,IAAAA,CAAKC,KAAS,IAAA,oBAAK,CAChC,CAAA;AACD,IAAMC,MAAAA,KAAAA,GAAQC,QAAI,KAAK,CAAA;AAEvB,IAAA,MAAMC,SAASA,MAAM;AACnB,MAAA,IAAIxC,MAAMP,KAAO,EAAA;AAEfmB,QAAAA,UAAAA,CAAWE,MAAM2B,QAAQ,CAAA;AACzBzB,QAAAA,MAAAA,CAAO0B,GAAG,CAAE,CAAA,CAAA;AAAA,OACP,MAAA;AAEL1B,QAAAA,MAAAA,CAAO0B,GAAG,CAAE,CAAA,CAAA;AAAA;AACd,KACF;AAEA,IAAA,MAAMC,cAAcA,MAAM;AACxBlC,MAAAA,OAAAA,CAAQc,KAAQ,GAAA,IAAA;AAChBX,MAAAA,UAAAA,CAAWE,MAAM2B,QAAQ,CAAA;AACzBzB,MAAAA,MAAAA,CAAO0B,GAAG,CAAE,CAAA,CAAA;AAAA,KACd;AAEAvC,IAAO,MAAA,CAAA;AAAA,MACLV,KAAOkD,EAAAA;AAAAA,KACR,CAAA;AAED,IAAO,OAAA,MAAAR,gBAAAS,iBAAA,EAAA;AAAA,MAAA,UACW,EAAA;AAAA,KAAI,EAAA;AAAA,MAAAhD,SAAAA,MAAAuC;AA1H1B,QAAA,IAAA,EAAA,EAAA,EAAA;AA0H0BA,QAAAA,OAAAA,CAAAA,gBAAAU,uBAAA,EAAA;AAAA,UAAA,SAETP,KAAMf,CAAAA,KAAAA;AAAAA,UAAK,SACXH,eAAgBG,CAAAA,KAAAA;AAAAA,UAAK,QAAA,EACpBiB,MAAMA,MAAO,EAAA;AAAA,UAAC,SACfN,SAAU;AAAA,SAAC,EAAA;AAAA,UAGhBY,UAAUA,MAAAX,eAAAA,CAAAA,OAAAA,IAAAA,EAAAA,CAAAA,gBAAAY,qBAAA,EAAA;AAAA,YAAA,OAGG,EAAA;AAAA,cAAEC,QAAU,EAAA;AAAA;AAAO,WAAC,EAGhC,IAAA,CAAA,CAAA,CAAA;AAAA,UACDC,OAAOA,MAAA;AAzInB,YAAAC,IAAAA,GAAAA;AAyIyBhD,YAAAA,OAAAA,CAAAA,GAAAA,GAAAA,KAAAA,CAAM+C,KAAN/C,KAAAA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,GAAAA,CAAAA,IAAAA,CAAAA,KAAAA,CAAAA;AAAAA,WAAAA;AAAAA,UACbyB,QAAQA,MAAA;AA1IpB,YAAAuB,IAAAA,GAAAA;AA0I0BhD,YAAAA,OAAAA,CAAAA,GAAAA,GAAAA,KAAAA,CAAMyB,MAANzB,KAAAA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,GAAAA,CAAAA,IAAAA,CAAAA,KAAAA,CAAAA;AAAAA,WAAAA;AAAAA,UACdiD,UAAUA,MAAA;AA3ItB,YAAAD,IAAAA,GAAAA;AA2I4BhD,YAAAA,OAAAA,CAAAA,GAAAA,GAAAA,KAAAA,CAAMiD,QAANjD,KAAAA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,GAAAA,CAAAA,IAAAA,CAAAA,KAAAA,CAAAA;AAAAA;AAAAA,SAAkB,CAAAiC,EAAAA,eAAAA,CAAA,KAAA,EAAA;AAAA,UAAA,SAG1BT,YAAaH,CAAAA;AAAAA,SAAK,EAC3BrB,CAAAA,CAAAA,EAAAA,GAAAA,KAAAA,CAAMN,OAANM,KAAAA,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,EAAAA,CAAAA,IAAAA,CAAAA,KAAAA,CAAiB,EAEnBA,EAAAA,KAAAA,CAAMkD,YAAYjB,GAAAA,eAAAA,CAAA,KAAA,EAAA;AAAA,UAAA,SACLP,WAAYL,CAAAA;AAAAA,WAAK,CAC1BrB,CAAAA,EAAAA,GAAAA,KAAAA,CAAMkD,iBAANlD,IAAsB,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,KAAA,CAAA,KAEvB,IAAI,CAAA;AAAA;AAAA,KAEX,CAAA;AAAA;AAEL,CAAC;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../../../src/components/layout/components/index.ts"],"sourcesContent":["import Menu from \"./menu/Menu\";\r\nimport type { App } from \"vue\";\r\n\r\nimport HeaderLayout from \"./layout/HeaderLayout.vue\";\r\nimport AppTheme from \"./layout/ThemeApp.vue\";\r\n\r\nMenu.install = function (app: App) {\r\n app.component(Menu.name!, Menu);\r\n return app;\r\n};\r\n\r\nHeaderLayout.install = function (app: App) {\r\n app.component(\"DHeaderLayout\", HeaderLayout);\r\n return app;\r\n};\r\n\r\nAppTheme.install = function (app: App) {\r\n app.component(\"DAppTheme\", AppTheme);\r\n return app;\r\n};\r\n\r\nexport { AppTheme,HeaderLayout, Menu };\r\n"],"names":["Menu","HeaderLayout","AppTheme"],"mappings":";;;;;;;;;AAMAA,YAAK,CAAA,OAAA,GAAU,SAAU,GAAU,EAAA;AACjC,EAAI,GAAA,CAAA,SAAA,CAAUA,YAAK,CAAA,IAAA,EAAOA,YAAI,CAAA;AAC9B,EAAO,OAAA,GAAA;AACT,CAAA;AAEAC,wDAAa,CAAA,OAAA,GAAU,SAAU,GAAU,EAAA;AACzC,EAAI,GAAA,CAAA,SAAA,CAAU,iBAAiBA,wDAAY,CAAA;AAC3C,EAAO,OAAA,GAAA;AACT,CAAA;AAEAC,oDAAS,CAAA,OAAA,GAAU,SAAU,GAAU,EAAA;AACrC,EAAI,GAAA,CAAA,SAAA,CAAU,aAAaA,oDAAQ,CAAA;AACnC,EAAO,OAAA,GAAA;AACT,CAAA;;;;;;"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../../../src/components/layout/components/index.ts"],"sourcesContent":["import Menu from \"./menu/Menu\";\r\nimport type { App } from \"vue\";\r\n\r\nimport HeaderLayout from \"./layout/HeaderLayout.vue\";\r\nimport AppTheme from \"./layout/ThemeApp.vue\";\r\n\r\nMenu.install = function (app: App) {\r\n app.component(Menu.name!, Menu);\r\n return app;\r\n};\r\n\r\nHeaderLayout.install = function (app: App) {\r\n app.component(\"DHeaderLayout\", HeaderLayout);\r\n return app;\r\n};\r\n\r\nAppTheme.install = function (app: App) {\r\n app.component(\"DAppTheme\", AppTheme);\r\n return app;\r\n};\r\n\r\nexport { AppTheme, HeaderLayout, Menu };\r\n"],"names":["Menu","HeaderLayout","AppTheme"],"mappings":";;;;;;;;;AAMAA,YAAK,CAAA,OAAA,GAAU,SAAU,GAAU,EAAA;AACjC,EAAI,GAAA,CAAA,SAAA,CAAUA,YAAK,CAAA,IAAA,EAAOA,YAAI,CAAA;AAC9B,EAAO,OAAA,GAAA;AACT,CAAA;AAEAC,wDAAa,CAAA,OAAA,GAAU,SAAU,GAAU,EAAA;AACzC,EAAI,GAAA,CAAA,SAAA,CAAU,iBAAiBA,wDAAY,CAAA;AAC3C,EAAO,OAAA,GAAA;AACT,CAAA;AAEAC,oDAAS,CAAA,OAAA,GAAU,SAAU,GAAU,EAAA;AACrC,EAAI,GAAA,CAAA,SAAA,CAAU,aAAaA,oDAAQ,CAAA;AACnC,EAAO,OAAA,GAAA;AACT,CAAA;;;;;;"}
@@ -16,7 +16,12 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
16
16
  __name: "HeaderLayout",
17
17
  setup(__props) {
18
18
  const { layout, modeConfig, headerTokenStyle } = pinia.storeToRefs(store.useAppStore());
19
- const { headerStyle, headerTabStyle, collapsedStyle, rightStyle } = useStyle();
19
+ const {
20
+ headerStyle,
21
+ headerTabStyle,
22
+ collapsedStyle,
23
+ rightStyle
24
+ } = useStyle();
20
25
  function useStyle() {
21
26
  const { useToken } = antDesignVue.theme;
22
27
  const { token } = useToken();
@@ -1 +1 @@
1
- {"version":3,"file":"HeaderLayout.vue2.cjs","sources":["../../../../../../src/components/layout/components/layout/HeaderLayout.vue"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport { computed, type ComputedRef } from \"vue\";\r\nimport { theme } from \"ant-design-vue\";\r\nimport { storeToRefs } from \"pinia\";\r\n\r\nimport { MenuFoldOutlined, MenuUnfoldOutlined } from \"@ant-design/icons-vue\";\r\nimport { useAppStore } from \"@ditari/store\";\r\nimport { css } from \"@emotion/css\";\r\nimport type { GlobalToken } from \"ant-design-vue/es/theme/interface\";\r\n\r\nimport Tab from \"../../../tab/Tab.vue\";\r\n\r\nconst { layout, modeConfig, headerTokenStyle } = storeToRefs(useAppStore());\r\nconst { headerStyle, headerTabStyle, collapsedStyle, rightStyle } = useStyle();\r\n\r\nfunction useStyle(): {\r\n headerStyle: ComputedRef<string>;\r\n headerTabStyle: ComputedRef<string>;\r\n collapsedStyle: ComputedRef<string>;\r\n rightStyle: ComputedRef<string>;\r\n} {\r\n const { useToken } = theme;\r\n const { token }: { token: ComputedRef<GlobalToken> } = useToken();\r\n\r\n const left = computed(\r\n () =>\r\n `${layout.value.collapsed ? layout.value.collapsedWidth : layout.value.sideWidth}px`\r\n );\r\n\r\n const headerStyle = computed(\r\n () => css`\r\n position: fixed;\r\n top: 0;\r\n right: 0;\r\n z-index: 1;\r\n background-color: ${modeConfig.value.mode !== \"light\"\r\n ? token.value.colorBgContainer\r\n : headerTokenStyle.value.bgColor};\r\n left: ${left.value};\r\n height: ${layout.value.headerHeight}px;\r\n transition: left 0.4s cubic-bezier(0.22, 1.2, 0.36, 1);\r\n display: flex;\r\n align-items: flex-end;\r\n `\r\n );\r\n\r\n const headerTabStyle = computed(\r\n () => css`\r\n flex: 1;\r\n overflow: hidden;\r\n padding-right: 10px;\r\n `\r\n );\r\n\r\n const collapsedStyle = computed(\r\n () => css`\r\n padding: 0 10px;\r\n height: 100%;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n cursor: pointer;\r\n color: ${modeConfig.value.mode === \"light\"\r\n ? headerTokenStyle.value.txtColor\r\n : \"inherit\"};\r\n `\r\n );\r\n\r\n const rightStyle = computed(\r\n () => css`\r\n height: 100%;\r\n `\r\n );\r\n\r\n return {\r\n headerStyle,\r\n headerTabStyle,\r\n collapsedStyle,\r\n rightStyle\r\n };\r\n}\r\n</script>\r\n\r\n<template>\r\n <div :class=\"headerStyle\">\r\n <div :class=\"collapsedStyle\" @click=\"layout.collapsed = !layout.collapsed\">\r\n <menu-unfold-outlined v-if=\"layout.collapsed\" class=\"trigger\" />\r\n <menu-fold-outlined v-else />\r\n </div>\r\n <div :class=\"headerTabStyle\">\r\n <Tab />\r\n </div>\r\n <div :class=\"rightStyle\">\r\n <slot></slot>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<style scoped></style>\r\n"],"names":["storeToRefs","useAppStore","theme","computed","headerStyle","css","headerTabStyle","collapsedStyle","rightStyle"],"mappings":";;;;;;;;;;;;;;;;;AAYA,IAAA,MAAM,EAAE,MAAQ,EAAA,UAAA,EAAY,kBAAqB,GAAAA,iBAAA,CAAYC,mBAAa,CAAA;AAC1E,IAAA,MAAM,EAAE,WAAa,EAAA,cAAA,EAAgB,cAAgB,EAAA,UAAA,KAAe,QAAS,EAAA;AAE7E,IAAA,SAAS,QAKP,GAAA;AACA,MAAM,MAAA,EAAE,UAAa,GAAAC,kBAAA;AACrB,MAAM,MAAA,EAAE,KAAM,EAAA,GAAyC,QAAS,EAAA;AAEhE,MAAA,MAAM,IAAO,GAAAC,YAAA;AAAA,QACX,MACE,CAAG,EAAA,MAAA,CAAO,KAAM,CAAA,SAAA,GAAY,OAAO,KAAM,CAAA,cAAA,GAAiB,MAAO,CAAA,KAAA,CAAM,SAAS,CAAA,EAAA;AAAA,OACpF;AAEA,MAAA,MAAMC,YAAc,GAAAD,YAAA;AAAA,QAClB,MAAME,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAKgB,EAAA,UAAA,CAAW,MAAM,IAAS,KAAA,OAAA,GAC1C,MAAM,KAAM,CAAA,gBAAA,GACZ,gBAAiB,CAAA,KAAA,CAAM,OAAO,CAAA;AAAA,YAAA,EAC1B,KAAK,KAAK,CAAA;AAAA,cACR,EAAA,MAAA,CAAO,MAAM,YAAY,CAAA;AAAA;AAAA;AAAA;AAAA,IAAA;AAAA,OAKvC;AAEA,MAAA,MAAMC,eAAiB,GAAAH,YAAA;AAAA,QACrB,MAAME,OAAA;AAAA;AAAA;AAAA;AAAA,IAAA;AAAA,OAKR;AAEA,MAAA,MAAME,eAAiB,GAAAJ,YAAA;AAAA,QACrB,MAAME,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,aAAA,EAOK,WAAW,KAAM,CAAA,IAAA,KAAS,UAC/B,gBAAiB,CAAA,KAAA,CAAM,WACvB,SAAS,CAAA;AAAA,IAAA;AAAA,OAEjB;AAEA,MAAA,MAAMG,WAAa,GAAAL,YAAA;AAAA,QACjB,MAAME,OAAA;AAAA;AAAA,IAAA;AAAA,OAGR;AAEA,MAAO,OAAA;AAAA,QACL,WAAAD,EAAAA,YAAAA;AAAA,QACA,cAAAE,EAAAA,eAAAA;AAAA,QACA,cAAAC,EAAAA,eAAAA;AAAA,QACA,UAAAC,EAAAA;AAAA,OACF;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"HeaderLayout.vue2.cjs","sources":["../../../../../../src/components/layout/components/layout/HeaderLayout.vue"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport { computed, type ComputedRef } from \"vue\";\r\nimport { theme } from \"ant-design-vue\";\r\nimport { storeToRefs } from \"pinia\";\r\n\r\nimport {\r\n MenuFoldOutlined,\r\n MenuUnfoldOutlined\r\n} from \"@ant-design/icons-vue\";\r\nimport { useAppStore } from \"@ditari/store\";\r\nimport { css } from \"@emotion/css\";\r\nimport type { GlobalToken } from \"ant-design-vue/es/theme/interface\";\r\n\r\nimport Tab from \"../../../tab/Tab.vue\";\r\n\r\nconst { layout, modeConfig, headerTokenStyle } =\r\n storeToRefs(useAppStore());\r\nconst {\r\n headerStyle,\r\n headerTabStyle,\r\n collapsedStyle,\r\n rightStyle\r\n} = useStyle();\r\n\r\nfunction useStyle(): {\r\n headerStyle: ComputedRef<string>;\r\n headerTabStyle: ComputedRef<string>;\r\n collapsedStyle: ComputedRef<string>;\r\n rightStyle: ComputedRef<string>;\r\n} {\r\n const { useToken } = theme;\r\n const { token }: { token: ComputedRef<GlobalToken> } =\r\n useToken();\r\n\r\n const left = computed(\r\n () =>\r\n `${layout.value.collapsed ? layout.value.collapsedWidth : layout.value.sideWidth}px`\r\n );\r\n\r\n const headerStyle = computed(\r\n () => css`\r\n position: fixed;\r\n top: 0;\r\n right: 0;\r\n z-index: 1;\r\n background-color: ${modeConfig.value.mode !== \"light\"\r\n ? token.value.colorBgContainer\r\n : headerTokenStyle.value.bgColor};\r\n left: ${left.value};\r\n height: ${layout.value.headerHeight}px;\r\n transition: left 0.4s cubic-bezier(0.22, 1.2, 0.36, 1);\r\n display: flex;\r\n align-items: flex-end;\r\n `\r\n );\r\n\r\n const headerTabStyle = computed(\r\n () => css`\r\n flex: 1;\r\n overflow: hidden;\r\n padding-right: 10px;\r\n `\r\n );\r\n\r\n const collapsedStyle = computed(\r\n () => css`\r\n padding: 0 10px;\r\n height: 100%;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n cursor: pointer;\r\n color: ${modeConfig.value.mode === \"light\"\r\n ? headerTokenStyle.value.txtColor\r\n : \"inherit\"};\r\n `\r\n );\r\n\r\n const rightStyle = computed(\r\n () => css`\r\n height: 100%;\r\n `\r\n );\r\n\r\n return {\r\n headerStyle,\r\n headerTabStyle,\r\n collapsedStyle,\r\n rightStyle\r\n };\r\n}\r\n</script>\r\n\r\n<template>\r\n <div :class=\"headerStyle\">\r\n <div\r\n :class=\"collapsedStyle\"\r\n @click=\"layout.collapsed = !layout.collapsed\"\r\n >\r\n <menu-unfold-outlined\r\n v-if=\"layout.collapsed\"\r\n class=\"trigger\"\r\n />\r\n <menu-fold-outlined v-else />\r\n </div>\r\n <div :class=\"headerTabStyle\">\r\n <Tab />\r\n </div>\r\n <div :class=\"rightStyle\">\r\n <slot></slot>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<style scoped></style>\r\n"],"names":["storeToRefs","useAppStore","theme","computed","headerStyle","css","headerTabStyle","collapsedStyle","rightStyle"],"mappings":";;;;;;;;;;;;;;;;;AAeA,IAAA,MAAM,EAAE,MAAQ,EAAA,UAAA,EAAY,kBAC1B,GAAAA,iBAAA,CAAYC,mBAAa,CAAA;AAC3B,IAAM,MAAA;AAAA,MACJ,WAAA;AAAA,MACA,cAAA;AAAA,MACA,cAAA;AAAA,MACA;AAAA,QACE,QAAS,EAAA;AAEb,IAAA,SAAS,QAKP,GAAA;AACA,MAAM,MAAA,EAAE,UAAa,GAAAC,kBAAA;AACrB,MAAM,MAAA,EAAE,KAAM,EAAA,GACZ,QAAS,EAAA;AAEX,MAAA,MAAM,IAAO,GAAAC,YAAA;AAAA,QACX,MACE,CAAG,EAAA,MAAA,CAAO,KAAM,CAAA,SAAA,GAAY,OAAO,KAAM,CAAA,cAAA,GAAiB,MAAO,CAAA,KAAA,CAAM,SAAS,CAAA,EAAA;AAAA,OACpF;AAEA,MAAA,MAAMC,YAAc,GAAAD,YAAA;AAAA,QAClB,MAAME,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAKgB,EAAA,UAAA,CAAW,MAAM,IAAS,KAAA,OAAA,GAC1C,MAAM,KAAM,CAAA,gBAAA,GACZ,gBAAiB,CAAA,KAAA,CAAM,OAAO,CAAA;AAAA,YAAA,EAC1B,KAAK,KAAK,CAAA;AAAA,cACR,EAAA,MAAA,CAAO,MAAM,YAAY,CAAA;AAAA;AAAA;AAAA;AAAA,IAAA;AAAA,OAKvC;AAEA,MAAA,MAAMC,eAAiB,GAAAH,YAAA;AAAA,QACrB,MAAME,OAAA;AAAA;AAAA;AAAA;AAAA,IAAA;AAAA,OAKR;AAEA,MAAA,MAAME,eAAiB,GAAAJ,YAAA;AAAA,QACrB,MAAME,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,aAAA,EAOK,WAAW,KAAM,CAAA,IAAA,KAAS,UAC/B,gBAAiB,CAAA,KAAA,CAAM,WACvB,SAAS,CAAA;AAAA,IAAA;AAAA,OAEjB;AAEA,MAAA,MAAMG,WAAa,GAAAL,YAAA;AAAA,QACjB,MAAME,OAAA;AAAA;AAAA,IAAA;AAAA,OAGR;AAEA,MAAO,OAAA;AAAA,QACL,WAAAD,EAAAA,YAAAA;AAAA,QACA,cAAAE,EAAAA,eAAAA;AAAA,QACA,cAAAC,EAAAA,eAAAA;AAAA,QACA,UAAAC,EAAAA;AAAA,OACF;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -19,6 +19,8 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
19
19
  function useTheme() {
20
20
  const { modeConfig, isCompact } = pinia.storeToRefs(store.useAppStore());
21
21
  const appTheme2 = vue.ref({});
22
+ const { useToken } = antDesignVue.theme;
23
+ const { token } = useToken();
22
24
  vue.watch(
23
25
  () => modeConfig.value.mode,
24
26
  () => {
@@ -58,6 +60,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
58
60
  }
59
61
  break;
60
62
  }
63
+ console.log(token);
61
64
  }
62
65
  return {
63
66
  appTheme: appTheme2
@@ -1 +1 @@
1
- {"version":3,"file":"ThemeApp.vue2.cjs","sources":["../../../../../../src/components/layout/components/layout/ThemeApp.vue"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport { Ref, ref, watch } from \"vue\";\r\nimport { theme } from \"ant-design-vue\";\r\nimport { storeToRefs } from \"pinia\";\r\n\r\nimport { useAppStore } from \"@ditari/store\";\r\n\r\nconst props = defineProps({\n themeJson: { type: Object, required: false, default: () => ({}) }\n});\r\n\r\nconst { appTheme } = useTheme();\r\n\r\nfunction useTheme(): { appTheme: Ref<unknown> } {\r\n const { modeConfig, isCompact } = storeToRefs(useAppStore());\r\n const appTheme = ref<Record<string, unknown>>({});\r\n\r\n watch(\r\n () => modeConfig.value.mode,\r\n () => {\r\n handleTheme();\r\n },\r\n { immediate: true }\r\n );\r\n\r\n watch(\r\n () => isCompact.value,\r\n () => {\r\n handleTheme();\r\n }\r\n );\r\n\r\n function handleTheme() {\r\n const isDarkMode =\r\n window.matchMedia &&\r\n window.matchMedia(\"(prefers-color-scheme: dark)\").matches;\r\n switch (modeConfig.value.mode) {\r\n case \"light\":\r\n if (isCompact.value) {\r\n appTheme.value.algorithm = theme.compactAlgorithm;\r\n appTheme.value.token = {};\r\n } else {\r\n appTheme.value.algorithm = theme.defaultAlgorithm;\r\n appTheme.value.token = {};\r\n }\r\n break;\r\n case \"dark\":\r\n if (isCompact.value) {\r\n appTheme.value.token = props.themeJson;\r\n } else {\r\n appTheme.value.algorithm = theme.darkAlgorithm;\r\n appTheme.value.token = {};\r\n }\r\n break;\r\n case \"os\":\r\n if (isCompact.value && isDarkMode) {\r\n appTheme.value.token = props.themeJson;\r\n }\r\n break;\r\n }\r\n }\r\n\r\n return {\r\n appTheme\r\n };\r\n}\r\n</script>\r\n\r\n<template>\r\n <a-config-provider :theme=\"appTheme\">\r\n <slot></slot>\r\n </a-config-provider>\r\n</template>\r\n\r\n<style scoped></style>\r\n"],"names":["storeToRefs","useAppStore","appTheme","ref","watch","theme"],"mappings":";;;;;;;;;;;;;;;;AAOA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAId,IAAM,MAAA,EAAE,QAAS,EAAA,GAAI,QAAS,EAAA;AAE9B,IAAA,SAAS,QAAuC,GAAA;AAC9C,MAAA,MAAM,EAAE,UAAY,EAAA,SAAA,EAAc,GAAAA,iBAAA,CAAYC,mBAAa,CAAA;AAC3D,MAAMC,MAAAA,SAAAA,GAAWC,OAA6B,CAAA,EAAE,CAAA;AAEhD,MAAAC,SAAA;AAAA,QACE,MAAM,WAAW,KAAM,CAAA,IAAA;AAAA,QACvB,MAAM;AACJ,UAAY,WAAA,EAAA;AAAA,SACd;AAAA,QACA,EAAE,WAAW,IAAK;AAAA,OACpB;AAEA,MAAAA,SAAA;AAAA,QACE,MAAM,SAAU,CAAA,KAAA;AAAA,QAChB,MAAM;AACJ,UAAY,WAAA,EAAA;AAAA;AACd,OACF;AAEA,MAAA,SAAS,WAAc,GAAA;AACrB,QAAA,MAAM,aACJ,MAAO,CAAA,UAAA,IACP,MAAO,CAAA,UAAA,CAAW,8BAA8B,CAAE,CAAA,OAAA;AACpD,QAAQ,QAAA,UAAA,CAAW,MAAM,IAAM;AAAA,UAC7B,KAAK,OAAA;AACH,YAAA,IAAI,UAAU,KAAO,EAAA;AACnB,cAAAF,SAAAA,CAAS,KAAM,CAAA,SAAA,GAAYG,kBAAM,CAAA,gBAAA;AACjC,cAAAH,SAAAA,CAAS,KAAM,CAAA,KAAA,GAAQ,EAAC;AAAA,aACnB,MAAA;AACL,cAAAA,SAAAA,CAAS,KAAM,CAAA,SAAA,GAAYG,kBAAM,CAAA,gBAAA;AACjC,cAAAH,SAAAA,CAAS,KAAM,CAAA,KAAA,GAAQ,EAAC;AAAA;AAE1B,YAAA;AAAA,UACF,KAAK,MAAA;AACH,YAAA,IAAI,UAAU,KAAO,EAAA;AACnB,cAAAA,SAAAA,CAAS,KAAM,CAAA,KAAA,GAAQ,KAAM,CAAA,SAAA;AAAA,aACxB,MAAA;AACL,cAAAA,SAAAA,CAAS,KAAM,CAAA,SAAA,GAAYG,kBAAM,CAAA,aAAA;AACjC,cAAAH,SAAAA,CAAS,KAAM,CAAA,KAAA,GAAQ,EAAC;AAAA;AAE1B,YAAA;AAAA,UACF,KAAK,IAAA;AACH,YAAI,IAAA,SAAA,CAAU,SAAS,UAAY,EAAA;AACjC,cAAAA,SAAAA,CAAS,KAAM,CAAA,KAAA,GAAQ,KAAM,CAAA,SAAA;AAAA;AAE/B,YAAA;AAAA;AACJ;AAGF,MAAO,OAAA;AAAA,QACL,QAAAA,EAAAA;AAAA,OACF;AAAA;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"ThemeApp.vue2.cjs","sources":["../../../../../../src/components/layout/components/layout/ThemeApp.vue"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport { Ref, ref, watch } from \"vue\";\r\nimport { theme } from \"ant-design-vue\";\r\nimport { storeToRefs } from \"pinia\";\r\n\r\nimport { useAppStore } from \"@ditari/store\";\r\n\r\nconst props = defineProps({\n themeJson: { type: Object, required: false, default: () => ({}) }\n});\r\n\r\nconst { appTheme } = useTheme();\r\n\r\nfunction useTheme(): { appTheme: Ref<unknown> } {\r\n const { modeConfig, isCompact } =\r\n storeToRefs(useAppStore());\r\n const appTheme = ref<Record<string, unknown>>({});\r\n const { useToken } = theme;\r\n const { token } = useToken();\r\n\r\n watch(\r\n () => modeConfig.value.mode,\r\n () => {\r\n handleTheme();\r\n },\r\n { immediate: true }\r\n );\r\n\r\n watch(\r\n () => isCompact.value,\r\n () => {\r\n handleTheme();\r\n }\r\n );\r\n\r\n function handleTheme() {\r\n const isDarkMode =\r\n window.matchMedia &&\r\n window.matchMedia(\"(prefers-color-scheme: dark)\")\r\n .matches;\r\n switch (modeConfig.value.mode) {\r\n case \"light\":\r\n if (isCompact.value) {\r\n appTheme.value.algorithm = theme.compactAlgorithm;\r\n appTheme.value.token = {};\r\n } else {\r\n appTheme.value.algorithm = theme.defaultAlgorithm;\r\n appTheme.value.token = {};\r\n }\r\n break;\r\n case \"dark\":\r\n if (isCompact.value) {\r\n appTheme.value.token = props.themeJson;\r\n } else {\r\n appTheme.value.algorithm = theme.darkAlgorithm;\r\n appTheme.value.token = {};\r\n }\r\n break;\r\n case \"os\":\r\n if (isCompact.value && isDarkMode) {\r\n appTheme.value.token = props.themeJson;\r\n }\r\n break;\r\n }\r\n console.log(token);\r\n }\r\n\r\n return {\r\n appTheme\r\n };\r\n}\r\n</script>\r\n\r\n<template>\r\n <a-config-provider :theme=\"appTheme\">\r\n <slot></slot>\r\n </a-config-provider>\r\n</template>\r\n\r\n<style scoped></style>\r\n"],"names":["storeToRefs","useAppStore","appTheme","ref","theme","watch"],"mappings":";;;;;;;;;;;;;;;;AAOA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAId,IAAM,MAAA,EAAE,QAAS,EAAA,GAAI,QAAS,EAAA;AAE9B,IAAA,SAAS,QAAuC,GAAA;AAC9C,MAAA,MAAM,EAAE,UAAY,EAAA,SAAA,EAClB,GAAAA,iBAAA,CAAYC,mBAAa,CAAA;AAC3B,MAAMC,MAAAA,SAAAA,GAAWC,OAA6B,CAAA,EAAE,CAAA;AAChD,MAAM,MAAA,EAAE,UAAa,GAAAC,kBAAA;AACrB,MAAM,MAAA,EAAE,KAAM,EAAA,GAAI,QAAS,EAAA;AAE3B,MAAAC,SAAA;AAAA,QACE,MAAM,WAAW,KAAM,CAAA,IAAA;AAAA,QACvB,MAAM;AACJ,UAAY,WAAA,EAAA;AAAA,SACd;AAAA,QACA,EAAE,WAAW,IAAK;AAAA,OACpB;AAEA,MAAAA,SAAA;AAAA,QACE,MAAM,SAAU,CAAA,KAAA;AAAA,QAChB,MAAM;AACJ,UAAY,WAAA,EAAA;AAAA;AACd,OACF;AAEA,MAAA,SAAS,WAAc,GAAA;AACrB,QAAA,MAAM,aACJ,MAAO,CAAA,UAAA,IACP,MAAO,CAAA,UAAA,CAAW,8BAA8B,CAC7C,CAAA,OAAA;AACL,QAAQ,QAAA,UAAA,CAAW,MAAM,IAAM;AAAA,UAC7B,KAAK,OAAA;AACH,YAAA,IAAI,UAAU,KAAO,EAAA;AACnB,cAAAH,SAAAA,CAAS,KAAM,CAAA,SAAA,GAAYE,kBAAM,CAAA,gBAAA;AACjC,cAAAF,SAAAA,CAAS,KAAM,CAAA,KAAA,GAAQ,EAAC;AAAA,aACnB,MAAA;AACL,cAAAA,SAAAA,CAAS,KAAM,CAAA,SAAA,GAAYE,kBAAM,CAAA,gBAAA;AACjC,cAAAF,SAAAA,CAAS,KAAM,CAAA,KAAA,GAAQ,EAAC;AAAA;AAE1B,YAAA;AAAA,UACF,KAAK,MAAA;AACH,YAAA,IAAI,UAAU,KAAO,EAAA;AACnB,cAAAA,SAAAA,CAAS,KAAM,CAAA,KAAA,GAAQ,KAAM,CAAA,SAAA;AAAA,aACxB,MAAA;AACL,cAAAA,SAAAA,CAAS,KAAM,CAAA,SAAA,GAAYE,kBAAM,CAAA,aAAA;AACjC,cAAAF,SAAAA,CAAS,KAAM,CAAA,KAAA,GAAQ,EAAC;AAAA;AAE1B,YAAA;AAAA,UACF,KAAK,IAAA;AACH,YAAI,IAAA,SAAA,CAAU,SAAS,UAAY,EAAA;AACjC,cAAAA,SAAAA,CAAS,KAAM,CAAA,KAAA,GAAQ,KAAM,CAAA,SAAA;AAAA;AAE/B,YAAA;AAAA;AAEJ,QAAA,OAAA,CAAQ,IAAI,KAAK,CAAA;AAAA;AAGnB,MAAO,OAAA;AAAA,QACL,QAAAA,EAAAA;AAAA,OACF;AAAA;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"Menu.cjs","sources":["../../../../../../src/components/layout/components/menu/Menu.tsx"],"sourcesContent":["import { computed, defineComponent, watch } from \"vue\";\r\nimport { useRoute, useRouter } from \"vue-router\";\r\nimport { storeToRefs } from \"pinia\";\r\n\r\nimport { useAppStore, useMenuStore, useNoStore } from \"@ditari/store\";\r\nimport { css } from \"@emotion/css\";\r\n\r\nexport default defineComponent({\r\n name: \"DMenu\",\r\n setup() {\r\n const { layout, modeConfig } = storeToRefs(useAppStore());\r\n const { menuList } = storeToRefs(useNoStore());\r\n const { menuWrapperStyle } = useStyle();\r\n const { openKeys, selectedKeys, onClick } = useMenu();\r\n\r\n function useStyle() {\r\n const menuWrapperStyle = computed(\r\n () => css`\r\n flex: 1;\r\n overflow: hidden;\r\n\r\n .ant-menu {\r\n height: 100%;\r\n overflow: scroll;\r\n -ms-overflow-style: none; /* 对 IE 和 Edge 生效 */\r\n scrollbar-width: none; /* 对 Firefox 生效 */\r\n\r\n ${modeConfig.value.mode === \"light\"\r\n ? \"background:transparent;\"\r\n : \"\"}\r\n /* Webkit 浏览器 */\r\n ::-webkit-scrollbar {\r\n display: none;\r\n }\r\n }\r\n `\r\n );\r\n return {\r\n menuWrapperStyle\r\n };\r\n }\r\n\r\n function useMenu() {\r\n const { openKeys, selectedKeys, data } = storeToRefs(useMenuStore());\r\n const route = useRoute();\r\n const router = useRouter();\r\n\r\n /**\r\n * 在标签切换的时候,路由会变化,需要动态关联左侧菜单的选中状态\r\n */\r\n watch(\r\n () => route.fullPath,\r\n async path => {\r\n const flag = selectedKeys.value.some((item: string) => item === path);\r\n if (!flag) {\r\n const rs = _findMatchedMenuKey(path, data.value as never);\r\n if (rs) {\r\n if (!layout.value.collapsed) {\r\n if (rs?.parentKey) {\r\n openKeys.value = [rs.parentKey];\r\n } else {\r\n openKeys.value = [rs!.matchedKey];\r\n }\r\n }\r\n selectedKeys.value = [rs!.matchedKey];\r\n }\r\n }\r\n }\r\n );\r\n\r\n watch(\r\n () => layout.value.collapsed,\r\n val => {\r\n const path = selectedKeys.value[0];\r\n const rs = _findMatchedMenuKey(path, data.value as never);\r\n if (val) {\r\n openKeys.value = [];\r\n } else {\r\n if (rs?.parentKey) {\r\n openKeys.value = [rs.parentKey];\r\n } else {\r\n openKeys.value = [rs!.matchedKey];\r\n }\r\n }\r\n }\r\n );\r\n\r\n const _findMatchedMenuKey = (\r\n path: string,\r\n menuItems: { key: string; children?: never[] }[],\r\n parentKey: string = \"\"\r\n ): { matchedKey: string; parentKey: string } | null => {\r\n // 遍历菜单项\r\n for (const item of menuItems) {\r\n // 完全匹配\r\n if (item.key === path) {\r\n return { matchedKey: item.key, parentKey };\r\n }\r\n\r\n // 如果当前菜单项有 children,递归查找\r\n if (item.children && item.children.length > 0) {\r\n const result = _findMatchedMenuKey(path, item.children, item.key);\r\n if (result) {\r\n return result;\r\n }\r\n }\r\n\r\n // 匹配路径前缀(确保只匹配最深层的菜单项)\r\n if (path.startsWith(item.key)) {\r\n // 如果路径以该菜单项的 key 开头,且该菜单项没有子菜单,直接返回匹配的菜单\r\n if (!item.children || item.children.length === 0) {\r\n return { matchedKey: item.key, parentKey };\r\n }\r\n // 如果是父菜单且有子菜单,继续递归寻找匹配的子菜单\r\n const result = _findMatchedMenuKey(path, item.children, item.key);\r\n if (result) {\r\n return result;\r\n }\r\n }\r\n }\r\n\r\n // 如果没有找到匹配的菜单项,返回 null\r\n return null;\r\n };\r\n\r\n const onClick = ({\r\n key,\r\n keyPath\r\n }: {\r\n item: string;\r\n key: string;\r\n keyPath: string[];\r\n }) => {\r\n openKeys.value = keyPath;\r\n selectedKeys.value = [key];\r\n\r\n // 判断目标路由和当前路由是否相等;\r\n // 不相等的时候再跳转\r\n if (route.path !== key) {\r\n router.push(key).then(r => {\r\n if (r) {\r\n console.warn(r);\r\n }\r\n });\r\n }\r\n };\r\n\r\n return {\r\n openKeys,\r\n selectedKeys,\r\n data,\r\n onClick\r\n };\r\n }\r\n\r\n return () => (\r\n <div class={menuWrapperStyle.value}>\r\n <a-menu\r\n v-model:open-keys={openKeys.value}\r\n v-model:selected-keys={selectedKeys.value}\r\n items={menuList.value}\r\n mode=\"inline\"\r\n triggerSubMenuAction={\"hover\"}\r\n onClick={onClick}\r\n ></a-menu>\r\n </div>\r\n );\r\n }\r\n});\r\n"],"names":["defineComponent","name","setup","layout","modeConfig","storeToRefs","useAppStore","menuList","useNoStore","menuWrapperStyle","useStyle","openKeys","selectedKeys","onClick","useMenu","computed","css","value","mode","data","useMenuStore","route","useRoute","router","useRouter","watch","fullPath","path","flag","some","item","rs","_findMatchedMenuKey","collapsed","parentKey","matchedKey","val","menuItems","key","children","length","result","startsWith","keyPath","push","then","r","console","warn","_createVNode","_resolveComponent","$event"],"mappings":"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"}
1
+ {"version":3,"file":"Menu.cjs","sources":["../../../../../../src/components/layout/components/menu/Menu.tsx"],"sourcesContent":["import { computed, defineComponent, watch } from \"vue\";\r\nimport { useRoute, useRouter } from \"vue-router\";\r\nimport { storeToRefs } from \"pinia\";\r\n\r\nimport {\r\n useAppStore,\r\n useMenuStore,\r\n useNoStore\r\n} from \"@ditari/store\";\r\nimport { css } from \"@emotion/css\";\r\n\r\nexport default defineComponent({\r\n name: \"DMenu\",\r\n setup() {\r\n const { layout, modeConfig } =\r\n storeToRefs(useAppStore());\r\n const { menuList } = storeToRefs(useNoStore());\r\n const { menuWrapperStyle } = useStyle();\r\n const { openKeys, selectedKeys, onClick } = useMenu();\r\n\r\n function useStyle() {\r\n const menuWrapperStyle = computed(\r\n () => css`\r\n flex: 1;\r\n overflow: hidden;\r\n\r\n .ant-menu {\r\n height: 100%;\r\n overflow: scroll;\r\n -ms-overflow-style: none; /* 对 IE 和 Edge 生效 */\r\n scrollbar-width: none; /* 对 Firefox 生效 */\r\n\r\n ${modeConfig.value.mode === \"light\"\r\n ? \"background:transparent;\"\r\n : \"\"}\r\n /* Webkit 浏览器 */\r\n ::-webkit-scrollbar {\r\n display: none;\r\n }\r\n }\r\n `\r\n );\r\n return {\r\n menuWrapperStyle\r\n };\r\n }\r\n\r\n function useMenu() {\r\n const { openKeys, selectedKeys, data } =\r\n storeToRefs(useMenuStore());\r\n const route = useRoute();\r\n const router = useRouter();\r\n\r\n /**\r\n * 在标签切换的时候,路由会变化,需要动态关联左侧菜单的选中状态\r\n */\r\n watch(\r\n () => route.fullPath,\r\n async path => {\r\n const flag = selectedKeys.value.some(\r\n (item: string) => item === path\r\n );\r\n if (!flag) {\r\n const rs = _findMatchedMenuKey(\r\n path,\r\n data.value as never\r\n );\r\n if (rs) {\r\n if (!layout.value.collapsed) {\r\n if (rs?.parentKey) {\r\n openKeys.value = [rs.parentKey];\r\n } else {\r\n openKeys.value = [rs!.matchedKey];\r\n }\r\n }\r\n selectedKeys.value = [rs!.matchedKey];\r\n }\r\n }\r\n }\r\n );\r\n\r\n watch(\r\n () => layout.value.collapsed,\r\n val => {\r\n const path = selectedKeys.value[0];\r\n const rs = _findMatchedMenuKey(\r\n path,\r\n data.value as never\r\n );\r\n if (val) {\r\n openKeys.value = [];\r\n } else {\r\n if (rs?.parentKey) {\r\n openKeys.value = [rs.parentKey];\r\n } else {\r\n openKeys.value = [rs!.matchedKey];\r\n }\r\n }\r\n }\r\n );\r\n\r\n const _findMatchedMenuKey = (\r\n path: string,\r\n menuItems: { key: string; children?: never[] }[],\r\n parentKey: string = \"\"\r\n ): {\r\n matchedKey: string;\r\n parentKey: string;\r\n } | null => {\r\n // 遍历菜单项\r\n for (const item of menuItems) {\r\n // 完全匹配\r\n if (item.key === path) {\r\n return { matchedKey: item.key, parentKey };\r\n }\r\n\r\n // 如果当前菜单项有 children,递归查找\r\n if (item.children && item.children.length > 0) {\r\n const result = _findMatchedMenuKey(\r\n path,\r\n item.children,\r\n item.key\r\n );\r\n if (result) {\r\n return result;\r\n }\r\n }\r\n\r\n // 匹配路径前缀(确保只匹配最深层的菜单项)\r\n if (path.startsWith(item.key)) {\r\n // 如果路径以该菜单项的 key 开头,且该菜单项没有子菜单,直接返回匹配的菜单\r\n if (\r\n !item.children ||\r\n item.children.length === 0\r\n ) {\r\n return { matchedKey: item.key, parentKey };\r\n }\r\n // 如果是父菜单且有子菜单,继续递归寻找匹配的子菜单\r\n const result = _findMatchedMenuKey(\r\n path,\r\n item.children,\r\n item.key\r\n );\r\n if (result) {\r\n return result;\r\n }\r\n }\r\n }\r\n\r\n // 如果没有找到匹配的菜单项,返回 null\r\n return null;\r\n };\r\n\r\n const onClick = ({\r\n key,\r\n keyPath\r\n }: {\r\n item: string;\r\n key: string;\r\n keyPath: string[];\r\n }) => {\r\n openKeys.value = keyPath;\r\n selectedKeys.value = [key];\r\n\r\n // 判断目标路由和当前路由是否相等;\r\n // 不相等的时候再跳转\r\n if (route.path !== key) {\r\n router.push(key).then(r => {\r\n if (r) {\r\n console.warn(r);\r\n }\r\n });\r\n }\r\n };\r\n\r\n return {\r\n openKeys,\r\n selectedKeys,\r\n data,\r\n onClick\r\n };\r\n }\r\n\r\n return () => (\r\n <div class={menuWrapperStyle.value}>\r\n <a-menu\r\n v-model:open-keys={openKeys.value}\r\n v-model:selected-keys={selectedKeys.value}\r\n items={menuList.value}\r\n mode=\"inline\"\r\n triggerSubMenuAction={\"hover\"}\r\n onClick={onClick}\r\n ></a-menu>\r\n </div>\r\n );\r\n }\r\n});\r\n"],"names":["defineComponent","name","setup","layout","modeConfig","storeToRefs","useAppStore","menuList","useNoStore","menuWrapperStyle","useStyle","openKeys","selectedKeys","onClick","useMenu","computed","css","value","mode","data","useMenuStore","route","useRoute","router","useRouter","watch","fullPath","path","flag","some","item","rs","_findMatchedMenuKey","collapsed","parentKey","matchedKey","val","menuItems","key","children","length","result","startsWith","keyPath","push","then","r","console","warn","_createVNode","_resolveComponent","$event"],"mappings":"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"}
@@ -16,7 +16,9 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
16
16
  },
17
17
  setup(__props) {
18
18
  const props = __props;
19
- const prefixCls = vue.shallowRef("ant-pro-drawer-setting-block-checkbox");
19
+ const prefixCls = vue.shallowRef(
20
+ "ant-pro-drawer-setting-block-checkbox"
21
+ );
20
22
  const cls = vue.computed(() => {
21
23
  return {
22
24
  [`${prefixCls.value}-item`]: true,
@@ -1 +1 @@
1
- {"version":3,"file":"BlockCheckbox.vue2.cjs","sources":["../../../../../../src/components/layout/components/settings/BlockCheckbox.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, shallowRef } from \"vue\";\n\nimport { CheckOutlined } from \"@ant-design/icons-vue\";\n\nconst props = defineProps({\n themes: { type: String, required: false },\n isDark: { type: Boolean, required: false },\n checked: { type: Boolean, required: false },\n t: { type: Function, required: false }\n});\nconst prefixCls = shallowRef(\"ant-pro-drawer-setting-block-checkbox\");\n\nconst cls = computed(() => {\n return {\n [`${prefixCls.value}-item`]: true,\n [`${prefixCls.value}-theme-item`]: props.isDark,\n // [`${prefixCls.value}-item-${props.theme}`]: !!props.theme,\n [`${prefixCls.value}-theme-item-${props.themes}`]: props.isDark\n };\n});\n</script>\n\n<template>\n <a-tooltip>\n <template #title>\n <!-- {{ t?.(`app.setting.pagestyle.${theme}` ?? \"\") }}-->\n </template>\n <div :class=\"cls\">\n <CheckOutlined v-show=\"checked\" :class=\"`${prefixCls}-selectIcon`\" />\n </div>\n </a-tooltip>\n</template>\n"],"names":["shallowRef","computed"],"mappings":";;;;;;;;;;;;;;;;;AAKA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAMd,IAAM,MAAA,SAAA,GAAYA,eAAW,uCAAuC,CAAA;AAEpE,IAAM,MAAA,GAAA,GAAMC,aAAS,MAAM;AACzB,MAAO,OAAA;AAAA,QACL,CAAC,CAAA,EAAG,SAAU,CAAA,KAAK,OAAO,GAAG,IAAA;AAAA,QAC7B,CAAC,CAAG,EAAA,SAAA,CAAU,KAAK,CAAA,WAAA,CAAa,GAAG,KAAM,CAAA,MAAA;AAAA;AAAA,QAEzC,CAAC,GAAG,SAAU,CAAA,KAAK,eAAe,KAAM,CAAA,MAAM,CAAE,CAAA,GAAG,KAAM,CAAA;AAAA,OAC3D;AAAA,KACD,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"BlockCheckbox.vue2.cjs","sources":["../../../../../../src/components/layout/components/settings/BlockCheckbox.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, shallowRef } from \"vue\";\n\nimport { CheckOutlined } from \"@ant-design/icons-vue\";\n\nconst props = defineProps({\n themes: { type: String, required: false },\n isDark: { type: Boolean, required: false },\n checked: { type: Boolean, required: false },\n t: { type: Function, required: false }\n});\nconst prefixCls = shallowRef(\n \"ant-pro-drawer-setting-block-checkbox\"\n);\n\nconst cls = computed(() => {\n return {\n [`${prefixCls.value}-item`]: true,\n [`${prefixCls.value}-theme-item`]: props.isDark,\n // [`${prefixCls.value}-item-${props.theme}`]: !!props.theme,\n [`${prefixCls.value}-theme-item-${props.themes}`]:\n props.isDark\n };\n});\n</script>\n\n<template>\n <a-tooltip>\n <template #title>\n <!-- {{ t?.(`app.setting.pagestyle.${theme}` ?? \"\") }}-->\n </template>\n <div :class=\"cls\">\n <CheckOutlined\n v-show=\"checked\"\n :class=\"`${prefixCls}-selectIcon`\"\n />\n </div>\n </a-tooltip>\n</template>\n"],"names":["shallowRef","computed"],"mappings":";;;;;;;;;;;;;;;;;AAKA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAMd,IAAA,MAAM,SAAY,GAAAA,cAAA;AAAA,MAChB;AAAA,KACF;AAEA,IAAM,MAAA,GAAA,GAAMC,aAAS,MAAM;AACzB,MAAO,OAAA;AAAA,QACL,CAAC,CAAA,EAAG,SAAU,CAAA,KAAK,OAAO,GAAG,IAAA;AAAA,QAC7B,CAAC,CAAG,EAAA,SAAA,CAAU,KAAK,CAAA,WAAA,CAAa,GAAG,KAAM,CAAA,MAAA;AAAA;AAAA,QAEzC,CAAC,GAAG,SAAU,CAAA,KAAK,eAAe,KAAM,CAAA,MAAM,CAAE,CAAA,GAC9C,KAAM,CAAA;AAAA,OACV;AAAA,KACD,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -35,7 +35,6 @@ var SettingDrawer = /* @__PURE__ */ vue.defineComponent({
35
35
  const {
36
36
  btnStyle,
37
37
  closeBtnStyle,
38
- dividerStyle,
39
38
  settingDrawerStyle
40
39
  } = useStyle();
41
40
  function useStyle() {
@@ -51,13 +50,13 @@ var SettingDrawer = /* @__PURE__ */ vue.defineComponent({
51
50
  top: 240px;
52
51
  right: 378px;
53
52
  `);
54
- const dividerStyle2 = vue.computed(() => `
53
+ const dividerStyle = vue.computed(() => `
55
54
  border-color: #7cb305;
56
55
  `);
57
56
  return {
58
57
  btnStyle: btnStyle2,
59
58
  closeBtnStyle: closeBtnStyle2,
60
- dividerStyle: dividerStyle2,
59
+ dividerStyle,
61
60
  settingDrawerStyle: settingDrawerStyle2
62
61
  };
63
62
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SettingDrawer.cjs","sources":["../../../../../../src/components/layout/components/settings/SettingDrawer.tsx"],"sourcesContent":["import { computed, type ComputedRef, defineComponent, ref } from \"vue\";\r\nimport { theme } from \"ant-design-vue\";\r\nimport { storeToRefs } from \"pinia\";\r\n\r\nimport { CloseOutlined, SettingOutlined } from \"@ant-design/icons-vue\";\r\nimport { useAppStore } from \"@ditari/store\";\r\nimport { css } from \"@emotion/css\";\r\nimport type { GlobalToken } from \"ant-design-vue/es/theme/interface\";\r\n\r\nimport BlockCheckbox from \"./BlockCheckbox.vue\";\r\n\r\nexport default defineComponent({\r\n components: {\r\n BlockCheckbox\r\n },\r\n setup() {\r\n const open = ref(false);\r\n const { useToken } = theme;\r\n const { token }: { token: ComputedRef<GlobalToken> } = useToken();\r\n const store = useAppStore();\r\n const { modeConfig, isCompact } = storeToRefs(store);\r\n\r\n const { btnStyle, closeBtnStyle, dividerStyle, settingDrawerStyle } =\r\n useStyle();\r\n\r\n function useStyle(): {\r\n btnStyle: ComputedRef<string>;\r\n closeBtnStyle: ComputedRef<string>;\r\n dividerStyle: ComputedRef<string>;\r\n settingDrawerStyle: ComputedRef<string>;\r\n } {\r\n const settingDrawerStyle = computed(() => css``);\r\n const btnStyle = computed(\r\n () => css`\r\n background-color: ${token.value.colorPrimary};\r\n border-end-start-radius: ${token?.value.borderRadius}px;\r\n border-start-start-radius: ${token?.value.borderRadius}px;\r\n `\r\n );\r\n\r\n const closeBtnStyle = computed(\r\n () => css`\r\n ${btnStyle.value};\r\n position: absolute;\r\n top: 240px;\r\n right: 378px;\r\n `\r\n );\r\n\r\n const dividerStyle = computed(\r\n () => `\r\n border-color: #7cb305;\r\n `\r\n );\r\n\r\n return {\r\n btnStyle,\r\n closeBtnStyle,\r\n dividerStyle,\r\n settingDrawerStyle\r\n };\r\n }\r\n\r\n return () => (\r\n <div class={settingDrawerStyle.value}>\r\n <div\r\n class={`ant-pro-drawer-setting-handle ${btnStyle.value}`}\r\n onClick={() => (open.value = true)}\r\n >\r\n <SettingOutlined class={\"icon\"} />\r\n </div>\r\n <a-drawer v-model:open={open.value} bodyStyle={{ padding: 0 }}>\r\n <div\r\n class={`ant-pro-drawer-setting-handle ${closeBtnStyle.value}`}\r\n onClick={() => (open.value = false)}\r\n >\r\n <CloseOutlined class={\"icon\"} />\r\n </div>\r\n <a-form>\r\n <a-form-item label={\"模式\"}>\r\n <a-radio-group\r\n v-model:value={modeConfig.value.mode}\r\n button-style=\"solid\"\r\n >\r\n {modeConfig.value.list.map(item => (\r\n <a-radio-button value={item.value}>\r\n {item.label}\r\n </a-radio-button>\r\n ))}\r\n </a-radio-group>\r\n </a-form-item>\r\n <a-form-item label={\"紧凑\"}>\r\n <a-switch\r\n v-model:checked={isCompact.value}\r\n checked-children=\"开\"\r\n un-checked-children=\"关\"\r\n ></a-switch>\r\n </a-form-item>\r\n </a-form>\r\n </a-drawer>\r\n </div>\r\n );\r\n }\r\n});\r\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","defineComponent","components","BlockCheckbox","setup","open","ref","useToken","theme","token","store","useAppStore","modeConfig","isCompact","storeToRefs","btnStyle","closeBtnStyle","dividerStyle","settingDrawerStyle","useStyle","computed","css","value","colorPrimary","borderRadius","_slot","_createVNode","onClick","SettingOutlined","_resolveComponent","$event","padding","default","CloseOutlined","mode","list","map","item","label"],"mappings":"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"}
1
+ {"version":3,"file":"SettingDrawer.cjs","sources":["../../../../../../src/components/layout/components/settings/SettingDrawer.tsx"],"sourcesContent":["import {\r\n computed,\r\n type ComputedRef,\r\n defineComponent,\r\n ref\r\n} from \"vue\";\r\nimport { theme } from \"ant-design-vue\";\r\nimport { storeToRefs } from \"pinia\";\r\n\r\nimport {\r\n CloseOutlined,\r\n SettingOutlined\r\n} from \"@ant-design/icons-vue\";\r\nimport { useAppStore } from \"@ditari/store\";\r\nimport { css } from \"@emotion/css\";\r\nimport type { GlobalToken } from \"ant-design-vue/es/theme/interface\";\r\n\r\nimport BlockCheckbox from \"./BlockCheckbox.vue\";\r\n\r\nexport default defineComponent({\r\n components: {\r\n BlockCheckbox\r\n },\r\n setup() {\r\n const open = ref(false);\r\n const { useToken } = theme;\r\n const { token }: { token: ComputedRef<GlobalToken> } =\r\n useToken();\r\n const store = useAppStore();\r\n const { modeConfig, isCompact } = storeToRefs(store);\r\n\r\n const { btnStyle, closeBtnStyle, settingDrawerStyle } =\r\n useStyle();\r\n\r\n function useStyle(): {\r\n btnStyle: ComputedRef<string>;\r\n closeBtnStyle: ComputedRef<string>;\r\n dividerStyle: ComputedRef<string>;\r\n settingDrawerStyle: ComputedRef<string>;\r\n } {\r\n const settingDrawerStyle = computed(() => css``);\r\n const btnStyle = computed(\r\n () => css`\r\n background-color: ${token.value.colorPrimary};\r\n border-end-start-radius: ${token?.value\r\n .borderRadius}px;\r\n border-start-start-radius: ${token?.value\r\n .borderRadius}px;\r\n `\r\n );\r\n\r\n const closeBtnStyle = computed(\r\n () => css`\r\n ${btnStyle.value};\r\n position: absolute;\r\n top: 240px;\r\n right: 378px;\r\n `\r\n );\r\n\r\n const dividerStyle = computed(\r\n () => `\r\n border-color: #7cb305;\r\n `\r\n );\r\n\r\n return {\r\n btnStyle,\r\n closeBtnStyle,\r\n dividerStyle,\r\n settingDrawerStyle\r\n };\r\n }\r\n\r\n return () => (\r\n <div class={settingDrawerStyle.value}>\r\n <div\r\n class={`ant-pro-drawer-setting-handle ${btnStyle.value}`}\r\n onClick={() => (open.value = true)}\r\n >\r\n <SettingOutlined class={\"icon\"} />\r\n </div>\r\n <a-drawer\r\n v-model:open={open.value}\r\n bodyStyle={{ padding: 0 }}\r\n >\r\n <div\r\n class={`ant-pro-drawer-setting-handle ${closeBtnStyle.value}`}\r\n onClick={() => (open.value = false)}\r\n >\r\n <CloseOutlined class={\"icon\"} />\r\n </div>\r\n <a-form>\r\n <a-form-item label={\"模式\"}>\r\n <a-radio-group\r\n v-model:value={modeConfig.value.mode}\r\n button-style=\"solid\"\r\n >\r\n {modeConfig.value.list.map(item => (\r\n <a-radio-button value={item.value}>\r\n {item.label}\r\n </a-radio-button>\r\n ))}\r\n </a-radio-group>\r\n </a-form-item>\r\n <a-form-item label={\"紧凑\"}>\r\n <a-switch\r\n v-model:checked={isCompact.value}\r\n checked-children=\"开\"\r\n un-checked-children=\"关\"\r\n ></a-switch>\r\n </a-form-item>\r\n </a-form>\r\n </a-drawer>\r\n </div>\r\n );\r\n }\r\n});\r\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","defineComponent","components","BlockCheckbox","setup","open","ref","useToken","theme","token","store","useAppStore","modeConfig","isCompact","storeToRefs","btnStyle","closeBtnStyle","settingDrawerStyle","useStyle","computed","css","value","colorPrimary","borderRadius","dividerStyle","_slot","_createVNode","onClick","SettingOutlined","_resolveComponent","$event","padding","default","CloseOutlined","mode","list","map","item","label"],"mappings":"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"}
@@ -3,9 +3,30 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var vue = require('vue');
6
+ var vueRouter = require('vue-router');
6
7
  var store = require('@ditari/store');
7
8
 
8
9
  "use strict";
10
+ var __async = (__this, __arguments, generator) => {
11
+ return new Promise((resolve, reject) => {
12
+ var fulfilled = (value) => {
13
+ try {
14
+ step(generator.next(value));
15
+ } catch (e) {
16
+ reject(e);
17
+ }
18
+ };
19
+ var rejected = (value) => {
20
+ try {
21
+ step(generator.throw(value));
22
+ } catch (e) {
23
+ reject(e);
24
+ }
25
+ };
26
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
27
+ step((generator = generator.apply(__this, __arguments)).next());
28
+ });
29
+ };
9
30
  var _sfc_main = /* @__PURE__ */ vue.defineComponent({
10
31
  __name: "Select",
11
32
  props: {
@@ -20,17 +41,49 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
20
41
  const props = __props;
21
42
  const emits = __emit;
22
43
  const { getDicByKey } = store.useDicStore();
44
+ const { get: keepNames } = store.useKeepAliveStore();
23
45
  const { modelValue, data, onSelect, onChange } = useSelect();
24
46
  function useSelect() {
25
- const dicData = [...getDicByKey(props.name)];
47
+ const route = vueRouter.useRoute();
48
+ const isKeepAlive = keepNames.some(
49
+ (name) => name === route.name
50
+ );
51
+ const fetchDic = vue.inject("fetchDic", (name) => __async(this, null, function* () {
52
+ console.warn(
53
+ `fetchDic \u672A\u6CE8\u5165\uFF0C\u4F7F\u7528\u9ED8\u8BA4\u5B9E\u73B0\uFF0Cname: ${name}`
54
+ );
55
+ return [];
56
+ }));
57
+ let dicData = [...getDicByKey(props.name)];
26
58
  const data2 = vue.ref(dicData);
27
- const modelValue2 = vue.ref(props.value);
59
+ const modelValue2 = vue.ref(
60
+ props.value
61
+ );
62
+ vue.onActivated(() => {
63
+ loadDicData();
64
+ });
65
+ vue.onMounted(() => {
66
+ if (!isKeepAlive) {
67
+ loadDicData();
68
+ }
69
+ });
28
70
  vue.watch(
29
71
  () => props.value,
30
72
  (val) => {
31
73
  modelValue2.value = val;
32
74
  }
33
75
  );
76
+ function loadDicData() {
77
+ return __async(this, null, function* () {
78
+ try {
79
+ yield fetchDic(props.name);
80
+ dicData = [...getDicByKey(props.name)];
81
+ data2.value = dicData;
82
+ } catch (error) {
83
+ console.error("\u83B7\u53D6\u5B57\u5178\u6570\u636E\u5931\u8D25:", error);
84
+ }
85
+ });
86
+ }
34
87
  const onSearch = (keywords) => {
35
88
  sendWorkerSearch(keywords);
36
89
  };
@@ -53,7 +106,9 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
53
106
  };
54
107
  function onSelectHandler() {
55
108
  const dicList = getDicByKey(props.name);
56
- const rs = dicList.find((obj) => obj.value === modelValue2.value);
109
+ const rs = dicList.find(
110
+ (obj) => obj.value === modelValue2.value
111
+ );
57
112
  emits("select", rs);
58
113
  }
59
114
  vue.watch(
@@ -61,7 +116,9 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
61
116
  (val) => {
62
117
  if (val.length > 0) {
63
118
  data2.value = dicData.filter((item) => {
64
- return val.some((i) => i === item.value);
119
+ return val.some(
120
+ (i) => i === item.value
121
+ );
65
122
  });
66
123
  } else {
67
124
  data2.value = dicData;