@bdsoft/element 1.1.26 → 1.1.27

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 (182) hide show
  1. package/dist/BdElement.js +22921 -0
  2. package/dist/cjs/_virtual/_plugin-vue_export-helper.cjs +9 -0
  3. package/dist/cjs/global/index.cjs +14 -0
  4. package/dist/cjs/index.cjs +18276 -0
  5. package/dist/cjs/node_modules/.pnpm/splitpanes@4.0.4_vue@3.5.25_typescript@5.4.5_/node_modules/splitpanes/dist/splitpanes.css.cjs +1 -0
  6. package/dist/cjs/src/assets/css/element.scss.cjs +1 -0
  7. package/dist/cjs/src/assets/css/layout.scss.cjs +1 -0
  8. package/dist/cjs/src/assets/css/tailwind.scss.cjs +1 -0
  9. package/dist/cjs/src/assets/images/ff.png.cjs +3 -0
  10. package/dist/cjs/src/assets/images/menu/add.png.cjs +3 -0
  11. package/dist/cjs/src/assets/images/menu/del.png.cjs +3 -0
  12. package/dist/cjs/src/assets/images/menu/edit.png.cjs +3 -0
  13. package/dist/cjs/src/components/3dcloudwords/index.cjs +344 -0
  14. package/dist/cjs/src/components/3dcloudwords/index.vue.cjs +125 -0
  15. package/dist/cjs/src/components/badge/index.vue.cjs +96 -0
  16. package/dist/cjs/src/components/badge/index.vue2.cjs +1 -0
  17. package/dist/cjs/src/components/basic/Finish.vue.cjs +55 -0
  18. package/dist/cjs/src/components/basic/Finish.vue2.cjs +1 -0
  19. package/dist/cjs/src/components/button/index.vue.cjs +44 -0
  20. package/dist/cjs/src/components/carousel/index.vue.cjs +97 -0
  21. package/dist/cjs/src/components/carousel/index.vue2.cjs +1 -0
  22. package/dist/cjs/src/components/chartconfig/index.vue.cjs +327 -0
  23. package/dist/cjs/src/components/contextMenu/index.vue.cjs +152 -0
  24. package/dist/cjs/src/components/contextMenu/index.vue2.cjs +1 -0
  25. package/dist/cjs/src/components/countup/countUp.cjs +165 -0
  26. package/dist/cjs/src/components/countup/index.vue.cjs +116 -0
  27. package/dist/cjs/src/components/empty/assets/build.png.cjs +3 -0
  28. package/dist/cjs/src/components/empty/assets/emptybg.gif.cjs +3 -0
  29. package/dist/cjs/src/components/empty/assets/emptybg.png.cjs +3 -0
  30. package/dist/cjs/src/components/empty/assets/emptybg2.jpg.cjs +3 -0
  31. package/dist/cjs/src/components/empty/assets/emptybg3.jpg.cjs +3 -0
  32. package/dist/cjs/src/components/empty/assets/wuxiao.png.cjs +3 -0
  33. package/dist/cjs/src/components/empty/assets/wuxiao.webp.cjs +3 -0
  34. package/dist/cjs/src/components/empty/building.vue.cjs +95 -0
  35. package/dist/cjs/src/components/empty/building.vue2.cjs +1 -0
  36. package/dist/cjs/src/components/empty/empty.vue.cjs +108 -0
  37. package/dist/cjs/src/components/empty/empty.vue2.cjs +1 -0
  38. package/dist/cjs/src/components/empty/invalid.vue.cjs +20 -0
  39. package/dist/cjs/src/components/empty/invalid.vue2.cjs +1 -0
  40. package/dist/cjs/src/components/error/Error.vue.cjs +47 -0
  41. package/dist/cjs/src/components/error/Error.vue2.cjs +1 -0
  42. package/dist/cjs/src/components/form/Form.vue.cjs +92 -0
  43. package/dist/cjs/src/components/form/FormItem.vue.cjs +107 -0
  44. package/dist/cjs/src/components/form/FormItem.vue2.cjs +3 -0
  45. package/dist/cjs/src/components/layout/bar.vue.cjs +45 -0
  46. package/dist/cjs/src/components/layout/bar.vue2.cjs +1 -0
  47. package/dist/cjs/src/components/layout/layout1.vue.cjs +79 -0
  48. package/dist/cjs/src/components/layout/layout2.vue.cjs +174 -0
  49. package/dist/cjs/src/components/layout/layout2.vue2.cjs +1 -0
  50. package/dist/cjs/src/components/layout/layout3.vue.cjs +111 -0
  51. package/dist/cjs/src/components/layout/layout3.vue2.cjs +1 -0
  52. package/dist/cjs/src/components/layout/layout4.vue.cjs +70 -0
  53. package/dist/cjs/src/components/layout/layout4.vue2.cjs +1 -0
  54. package/dist/cjs/src/components/layout/nav.vue.cjs +222 -0
  55. package/dist/cjs/src/components/layout/nav.vue2.cjs +1 -0
  56. package/dist/cjs/src/components/layout/nav.vue3.cjs +1 -0
  57. package/dist/cjs/src/components/loading/index.vue.cjs +26 -0
  58. package/dist/cjs/src/components/loading/index.vue2.cjs +1 -0
  59. package/dist/cjs/src/components/notice/NoticeList.vue.cjs +202 -0
  60. package/dist/cjs/src/components/notice/NoticeList.vue2.cjs +1 -0
  61. package/dist/cjs/src/components/notice/NoticeListPaging.vue.cjs +343 -0
  62. package/dist/cjs/src/components/notice/NoticeListPaging.vue2.cjs +1 -0
  63. package/dist/cjs/src/components/notice/NoticeView.vue.cjs +134 -0
  64. package/dist/cjs/src/components/notice/NoticeView.vue2.cjs +1 -0
  65. package/dist/cjs/src/components/pagination/index.vue.cjs +97 -0
  66. package/dist/cjs/src/components/pagination/index.vue2.cjs +1 -0
  67. package/dist/cjs/src/components/pagination/scroll-to.cjs +40 -0
  68. package/dist/cjs/src/components/progress/bar.vue.cjs +64 -0
  69. package/dist/cjs/src/components/progress/bar.vue2.cjs +1 -0
  70. package/dist/cjs/src/components/progress/progress.vue.cjs +51 -0
  71. package/dist/cjs/src/components/progress/progress.vue2.cjs +1 -0
  72. package/dist/cjs/src/components/statisticalCount/index.vue.cjs +88 -0
  73. package/dist/cjs/src/components/statisticalCount/index.vue2.cjs +1 -0
  74. package/dist/cjs/src/components/username/index.vue.cjs +59 -0
  75. package/dist/cjs/src/components/username/index.vue2.cjs +1 -0
  76. package/dist/cjs/src/index.cjs +68 -0
  77. package/dist/cjs/src/utils/coms/load.cjs +23 -0
  78. package/dist/cjs/src/utils/func.cjs +48 -0
  79. package/dist/cjs/src/utils/hookDialog.cjs +27 -0
  80. package/dist/cjs/src/utils/hookPage.cjs +42 -0
  81. package/dist/cjs/src/utils/message.cjs +164 -0
  82. package/dist/cjs/src/xm_components/HeadSearch/hook/hookSearch.cjs +64 -0
  83. package/dist/cjs/src/xm_components/HeadSearch/index.vue.cjs +139 -0
  84. package/dist/cjs/src/xm_components/HeadSearch/index.vue2.cjs +1 -0
  85. package/dist/cjs/src/xm_components/Milestone/index.vue.cjs +88 -0
  86. package/dist/cjs/src/xm_components/Milestone/index.vue2.cjs +1 -0
  87. package/dist/cjs/src/xm_components/MultiStatisticalCard/index.vue.cjs +88 -0
  88. package/dist/cjs/src/xm_components/MultiStatisticalCard/index.vue2.cjs +1 -0
  89. package/dist/cjs/src/xm_components/StatisticalCard/index.vue.cjs +163 -0
  90. package/dist/cjs/src/xm_components/StatisticalCard/index.vue2.cjs +1 -0
  91. package/dist/es/_virtual/_plugin-vue_export-helper.js +10 -0
  92. package/dist/es/global/index.js +14 -0
  93. package/dist/es/index.js +18247 -0
  94. package/dist/es/node_modules/.pnpm/splitpanes@4.0.4_vue@3.5.25_typescript@5.4.5_/node_modules/splitpanes/dist/splitpanes.css.js +1 -0
  95. package/dist/es/src/assets/css/element.scss.js +1 -0
  96. package/dist/es/src/assets/css/layout.scss.js +1 -0
  97. package/dist/es/src/assets/css/tailwind.scss.js +1 -0
  98. package/dist/es/src/assets/images/ff.png.js +4 -0
  99. package/dist/es/src/assets/images/menu/add.png.js +4 -0
  100. package/dist/es/src/assets/images/menu/del.png.js +4 -0
  101. package/dist/es/src/assets/images/menu/edit.png.js +4 -0
  102. package/dist/es/src/components/3dcloudwords/index.js +345 -0
  103. package/dist/es/src/components/3dcloudwords/index.vue.js +126 -0
  104. package/dist/es/src/components/badge/index.vue.js +97 -0
  105. package/dist/es/src/components/badge/index.vue2.js +1 -0
  106. package/dist/es/src/components/basic/Finish.vue.js +56 -0
  107. package/dist/es/src/components/basic/Finish.vue2.js +1 -0
  108. package/dist/es/src/components/button/index.vue.js +45 -0
  109. package/dist/es/src/components/carousel/index.vue.js +98 -0
  110. package/dist/es/src/components/carousel/index.vue2.js +1 -0
  111. package/dist/es/src/components/chartconfig/index.vue.js +328 -0
  112. package/dist/es/src/components/contextMenu/index.vue.js +153 -0
  113. package/dist/es/src/components/contextMenu/index.vue2.js +1 -0
  114. package/dist/es/src/components/countup/countUp.js +165 -0
  115. package/dist/es/src/components/countup/index.vue.js +117 -0
  116. package/dist/es/src/components/empty/assets/build.png.js +4 -0
  117. package/dist/es/src/components/empty/assets/emptybg.gif.js +4 -0
  118. package/dist/es/src/components/empty/assets/emptybg.png.js +4 -0
  119. package/dist/es/src/components/empty/assets/emptybg2.jpg.js +4 -0
  120. package/dist/es/src/components/empty/assets/emptybg3.jpg.js +4 -0
  121. package/dist/es/src/components/empty/assets/wuxiao.png.js +4 -0
  122. package/dist/es/src/components/empty/assets/wuxiao.webp.js +4 -0
  123. package/dist/es/src/components/empty/building.vue.js +95 -0
  124. package/dist/es/src/components/empty/building.vue2.js +1 -0
  125. package/dist/es/src/components/empty/empty.vue.js +108 -0
  126. package/dist/es/src/components/empty/empty.vue2.js +1 -0
  127. package/dist/es/src/components/empty/invalid.vue.js +21 -0
  128. package/dist/es/src/components/empty/invalid.vue2.js +1 -0
  129. package/dist/es/src/components/error/Error.vue.js +48 -0
  130. package/dist/es/src/components/error/Error.vue2.js +1 -0
  131. package/dist/es/src/components/form/Form.vue.js +93 -0
  132. package/dist/es/src/components/form/FormItem.vue.js +108 -0
  133. package/dist/es/src/components/form/FormItem.vue2.js +4 -0
  134. package/dist/es/src/components/layout/bar.vue.js +46 -0
  135. package/dist/es/src/components/layout/bar.vue2.js +1 -0
  136. package/dist/es/src/components/layout/layout1.vue.js +80 -0
  137. package/dist/es/src/components/layout/layout2.vue.js +175 -0
  138. package/dist/es/src/components/layout/layout2.vue2.js +1 -0
  139. package/dist/es/src/components/layout/layout3.vue.js +112 -0
  140. package/dist/es/src/components/layout/layout3.vue2.js +1 -0
  141. package/dist/es/src/components/layout/layout4.vue.js +71 -0
  142. package/dist/es/src/components/layout/layout4.vue2.js +1 -0
  143. package/dist/es/src/components/layout/nav.vue.js +223 -0
  144. package/dist/es/src/components/layout/nav.vue2.js +1 -0
  145. package/dist/es/src/components/layout/nav.vue3.js +1 -0
  146. package/dist/es/src/components/loading/index.vue.js +27 -0
  147. package/dist/es/src/components/loading/index.vue2.js +1 -0
  148. package/dist/es/src/components/notice/NoticeList.vue.js +203 -0
  149. package/dist/es/src/components/notice/NoticeList.vue2.js +1 -0
  150. package/dist/es/src/components/notice/NoticeListPaging.vue.js +344 -0
  151. package/dist/es/src/components/notice/NoticeListPaging.vue2.js +1 -0
  152. package/dist/es/src/components/notice/NoticeView.vue.js +135 -0
  153. package/dist/es/src/components/notice/NoticeView.vue2.js +1 -0
  154. package/dist/es/src/components/pagination/index.vue.js +98 -0
  155. package/dist/es/src/components/pagination/index.vue2.js +1 -0
  156. package/dist/es/src/components/pagination/scroll-to.js +40 -0
  157. package/dist/es/src/components/progress/bar.vue.js +65 -0
  158. package/dist/es/src/components/progress/bar.vue2.js +1 -0
  159. package/dist/es/src/components/progress/progress.vue.js +52 -0
  160. package/dist/es/src/components/progress/progress.vue2.js +1 -0
  161. package/dist/es/src/components/statisticalCount/index.vue.js +89 -0
  162. package/dist/es/src/components/statisticalCount/index.vue2.js +1 -0
  163. package/dist/es/src/components/username/index.vue.js +60 -0
  164. package/dist/es/src/components/username/index.vue2.js +1 -0
  165. package/dist/es/src/index.js +68 -0
  166. package/dist/es/src/utils/coms/load.js +24 -0
  167. package/dist/es/src/utils/func.js +48 -0
  168. package/dist/es/src/utils/hookDialog.js +27 -0
  169. package/dist/es/src/utils/hookPage.js +42 -0
  170. package/dist/es/src/utils/message.js +153 -0
  171. package/dist/es/src/xm_components/HeadSearch/hook/hookSearch.js +65 -0
  172. package/dist/es/src/xm_components/HeadSearch/index.vue.js +140 -0
  173. package/dist/es/src/xm_components/HeadSearch/index.vue2.js +1 -0
  174. package/dist/es/src/xm_components/Milestone/index.vue.js +89 -0
  175. package/dist/es/src/xm_components/Milestone/index.vue2.js +1 -0
  176. package/dist/es/src/xm_components/MultiStatisticalCard/index.vue.js +89 -0
  177. package/dist/es/src/xm_components/MultiStatisticalCard/index.vue2.js +1 -0
  178. package/dist/es/src/xm_components/StatisticalCard/index.vue.js +164 -0
  179. package/dist/es/src/xm_components/StatisticalCard/index.vue2.js +1 -0
  180. package/package.json +26 -10
  181. package/index.html +0 -13
  182. package/vite.config.js +0 -51
@@ -0,0 +1,80 @@
1
+ const { computed: computed, resolveComponent: resolveComponent, createBlock: createBlock, openBlock: openBlock, withCtx: withCtx, createVNode: createVNode, normalizeStyle: normalizeStyle, createElementBlock: createElementBlock, createCommentVNode: createCommentVNode, renderSlot: renderSlot, createElementVNode: createElementVNode, toDisplayString: toDisplayString } = Vue;
2
+ const _hoisted_1 = {
3
+ key: 0,
4
+ class: "top"
5
+ };
6
+ const _hoisted_2 = { class: "topin" };
7
+ const _sfc_main = {
8
+ __name: "layout1",
9
+ props: {
10
+ title: {
11
+ type: String,
12
+ default: "左侧菜单栏"
13
+ },
14
+ // 左侧宽度
15
+ leftWidth: {
16
+ type: String,
17
+ default: "200px"
18
+ },
19
+ // 左侧样式配置
20
+ leftStyles: {
21
+ type: Object,
22
+ default: () => {
23
+ return {
24
+ padding: "0px",
25
+ margin: "0px 10px 0px 0px"
26
+ };
27
+ }
28
+ },
29
+ // 右侧样式配置
30
+ rightStyles: {
31
+ type: Object,
32
+ default: () => {
33
+ return {
34
+ padding: "0px",
35
+ margin: "10px 10px 0px 0px"
36
+ };
37
+ }
38
+ }
39
+ },
40
+ setup(__props) {
41
+ const props = __props;
42
+ const showLeftTop = computed(() => {
43
+ return props.title ? true : false;
44
+ });
45
+ return (_ctx, _cache) => {
46
+ const _component_el_aside = resolveComponent("el-aside");
47
+ const _component_el_main = resolveComponent("el-main");
48
+ const _component_el_container = resolveComponent("el-container");
49
+ return openBlock(), createBlock(_component_el_container, { class: "containerBg" }, {
50
+ default: withCtx(() => [
51
+ createVNode(_component_el_aside, {
52
+ width: __props.leftWidth,
53
+ style: normalizeStyle({ ...__props.leftStyles })
54
+ }, {
55
+ default: withCtx(() => [
56
+ showLeftTop.value ? (openBlock(), createElementBlock("div", _hoisted_1, [
57
+ createElementVNode("div", _hoisted_2, toDisplayString(__props.title), 1)
58
+ ])) : createCommentVNode("", true),
59
+ renderSlot(_ctx.$slots, "left")
60
+ ]),
61
+ _: 3
62
+ }, 8, ["width", "style"]),
63
+ createVNode(_component_el_main, {
64
+ class: "containerRight",
65
+ style: normalizeStyle({ ...__props.rightStyles })
66
+ }, {
67
+ default: withCtx(() => [
68
+ renderSlot(_ctx.$slots, "default")
69
+ ]),
70
+ _: 3
71
+ }, 8, ["style"])
72
+ ]),
73
+ _: 3
74
+ });
75
+ };
76
+ }
77
+ };
78
+ export {
79
+ _sfc_main as default
80
+ };
@@ -0,0 +1,175 @@
1
+ const { ref: ref, computed: computed, resolveComponent: resolveComponent, createBlock: createBlock, openBlock: openBlock, withCtx: withCtx, createVNode: createVNode, normalizeStyle: normalizeStyle, createElementBlock: createElementBlock, createCommentVNode: createCommentVNode, renderSlot: renderSlot, createElementVNode: createElementVNode, toDisplayString: toDisplayString, createTextVNode: createTextVNode, unref: unref, withKeys: withKeys } = Vue;
2
+ import _imports_0 from "../../assets/images/menu/add.png.js";
3
+ import _imports_1 from "../../assets/images/menu/edit.png.js";
4
+ import _imports_2 from "../../assets/images/menu/del.png.js";
5
+ const { Search: Search } = ElementPlusIconVue;
6
+ import "./layout2.vue2.js";
7
+ import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.js";
8
+ const _hoisted_1 = {
9
+ key: 0,
10
+ class: "top"
11
+ };
12
+ const _hoisted_2 = { class: "topin" };
13
+ const _hoisted_3 = {
14
+ class: "headwarp-top",
15
+ style: { "border-radius": "4px" }
16
+ };
17
+ const _hoisted_4 = {
18
+ class: "headwarp-bottom",
19
+ style: { "padding-left": "0px" }
20
+ };
21
+ const _hoisted_5 = {
22
+ class: "top_right",
23
+ style: { "width": "200px" }
24
+ };
25
+ const _sfc_main = {
26
+ __name: "layout2",
27
+ props: {
28
+ title: {
29
+ type: String,
30
+ default: "左侧菜单栏"
31
+ },
32
+ leftWidth: {
33
+ type: String,
34
+ default: "200px"
35
+ },
36
+ leftStyles: {
37
+ type: Object,
38
+ default: () => {
39
+ return {
40
+ padding: "0px",
41
+ margin: "0px 10px 0px 0px"
42
+ };
43
+ }
44
+ },
45
+ // 右侧样式配置
46
+ rightStyles: {
47
+ type: Object,
48
+ default: () => {
49
+ return {
50
+ padding: "0px",
51
+ margin: "0px 0px 10px 0px"
52
+ };
53
+ }
54
+ }
55
+ },
56
+ emits: ["searchTable"],
57
+ setup(__props, { emit: __emit }) {
58
+ const emits = __emit;
59
+ const props = __props;
60
+ const searchValue = ref("");
61
+ const showLeftTop = computed(() => {
62
+ return props.title ? true : false;
63
+ });
64
+ const getTableData = () => {
65
+ emits("searchTable", searchValue.value);
66
+ };
67
+ return (_ctx, _cache) => {
68
+ const _component_el_aside = resolveComponent("el-aside");
69
+ const _component_el_divider = resolveComponent("el-divider");
70
+ const _component_el_input = resolveComponent("el-input");
71
+ const _component_el_header = resolveComponent("el-header");
72
+ const _component_el_main = resolveComponent("el-main");
73
+ const _component_el_container = resolveComponent("el-container");
74
+ return openBlock(), createBlock(_component_el_container, { class: "containerBg" }, {
75
+ default: withCtx(() => [
76
+ createVNode(_component_el_aside, {
77
+ width: __props.leftWidth,
78
+ style: normalizeStyle({ ...__props.leftStyles })
79
+ }, {
80
+ default: withCtx(() => [
81
+ showLeftTop.value ? (openBlock(), createElementBlock("div", _hoisted_1, [
82
+ createElementVNode("div", _hoisted_2, toDisplayString(__props.title), 1)
83
+ ])) : createCommentVNode("", true),
84
+ renderSlot(_ctx.$slots, "left", {}, void 0, true)
85
+ ]),
86
+ _: 3
87
+ }, 8, ["width", "style"]),
88
+ createVNode(_component_el_container, { style: { "background-color": "#fff", "margin": "10px 10px 10px 0", "height": "calc(100% - 20px)", "border-radius": "4px" } }, {
89
+ default: withCtx(() => [
90
+ createVNode(_component_el_header, {
91
+ height: "50px",
92
+ class: "headwarp",
93
+ style: { "border-bottom": "1px solid #e6e6e6", "border-radius": "4px 4px 0 0" }
94
+ }, {
95
+ default: withCtx(() => [
96
+ createElementVNode("div", _hoisted_3, [
97
+ createElementVNode("div", _hoisted_4, [
98
+ renderSlot(_ctx.$slots, "lefttop", {}, () => [
99
+ createElementVNode("span", {
100
+ class: "warpmenu",
101
+ onClick: _cache[0] || (_cache[0] = (...args) => _ctx.addTable && _ctx.addTable(...args)),
102
+ title: "添加"
103
+ }, [..._cache[6] || (_cache[6] = [
104
+ createElementVNode("img", {
105
+ class: "menuimg",
106
+ src: _imports_0
107
+ }, null, -1),
108
+ createTextVNode(" 添加 ", -1)
109
+ ])]),
110
+ createElementVNode("span", {
111
+ class: "warpmenu",
112
+ onClick: _cache[1] || (_cache[1] = (...args) => _ctx.editTable && _ctx.editTable(...args)),
113
+ title: "编辑"
114
+ }, [..._cache[7] || (_cache[7] = [
115
+ createElementVNode("img", {
116
+ class: "menuimg",
117
+ src: _imports_1
118
+ }, null, -1),
119
+ createTextVNode(" 编辑 ", -1)
120
+ ])]),
121
+ createElementVNode("span", {
122
+ class: "warpmenu",
123
+ onClick: _cache[2] || (_cache[2] = (...args) => _ctx.delTable && _ctx.delTable(...args)),
124
+ title: "删除"
125
+ }, [..._cache[8] || (_cache[8] = [
126
+ createElementVNode("img", {
127
+ class: "menuimg",
128
+ src: _imports_2
129
+ }, null, -1),
130
+ createTextVNode(" 删除", -1)
131
+ ])]),
132
+ createVNode(_component_el_divider, { direction: "vertical" })
133
+ ], true)
134
+ ]),
135
+ createElementVNode("div", _hoisted_5, [
136
+ renderSlot(_ctx.$slots, "righttop2", {}, () => [
137
+ createVNode(_component_el_input, {
138
+ modelValue: searchValue.value,
139
+ "onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => searchValue.value = $event),
140
+ placeholder: "全局搜索",
141
+ size: "default",
142
+ onKeyup: _cache[4] || (_cache[4] = withKeys(($event) => getTableData(), ["enter"])),
143
+ clearable: "",
144
+ onClear: _cache[5] || (_cache[5] = ($event) => getTableData()),
145
+ "prefix-icon": unref(Search),
146
+ class: "top_search"
147
+ }, null, 8, ["modelValue", "prefix-icon"])
148
+ ], true)
149
+ ])
150
+ ])
151
+ ]),
152
+ _: 3
153
+ }),
154
+ createVNode(_component_el_main, {
155
+ class: "main-container",
156
+ style: normalizeStyle({ ...__props.rightStyles })
157
+ }, {
158
+ default: withCtx(() => [
159
+ renderSlot(_ctx.$slots, "default", {}, void 0, true)
160
+ ]),
161
+ _: 3
162
+ }, 8, ["style"])
163
+ ]),
164
+ _: 3
165
+ })
166
+ ]),
167
+ _: 3
168
+ });
169
+ };
170
+ }
171
+ };
172
+ const layout2 = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-05e55ce7"]]);
173
+ export {
174
+ layout2 as default
175
+ };
@@ -0,0 +1,112 @@
1
+ const { computed: computed, resolveComponent: resolveComponent, createBlock: createBlock, openBlock: openBlock, withCtx: withCtx, createVNode: createVNode, createElementVNode: createElementVNode, renderSlot: renderSlot, createCommentVNode: createCommentVNode, normalizeStyle: normalizeStyle, createElementBlock: createElementBlock, toDisplayString: toDisplayString } = Vue;
2
+ import "./layout3.vue2.js";
3
+ import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.js";
4
+ const _hoisted_1 = {
5
+ class: "headwarp-top",
6
+ style: { "border-radius": "4px" }
7
+ };
8
+ const _hoisted_2 = {
9
+ key: 0,
10
+ class: "top"
11
+ };
12
+ const _hoisted_3 = { class: "topin" };
13
+ const _sfc_main = {
14
+ __name: "layout3",
15
+ props: {
16
+ headerHeight: {
17
+ type: [String, Number],
18
+ default: "50px"
19
+ },
20
+ // 是否显示左侧
21
+ showLeft: {
22
+ type: Boolean,
23
+ default: true
24
+ },
25
+ title: {
26
+ type: String,
27
+ default: "左侧菜单栏"
28
+ },
29
+ rightStyles: {
30
+ type: Object,
31
+ default: () => {
32
+ return {
33
+ padding: "20px",
34
+ margin: "10px 10px 10px 0px"
35
+ };
36
+ }
37
+ },
38
+ leftStyles: {
39
+ type: Object
40
+ }
41
+ },
42
+ setup(__props) {
43
+ const props = __props;
44
+ const showLeftTop = computed(() => {
45
+ return props.title ? true : false;
46
+ });
47
+ const _headerHeight = computed(() => {
48
+ if (typeof props.headerHeight == "number") {
49
+ return `${props.headerHeight}px`;
50
+ } else {
51
+ return props.headerHeight;
52
+ }
53
+ });
54
+ return (_ctx, _cache) => {
55
+ const _component_el_header = resolveComponent("el-header");
56
+ const _component_el_aside = resolveComponent("el-aside");
57
+ const _component_el_main = resolveComponent("el-main");
58
+ const _component_el_container = resolveComponent("el-container");
59
+ return openBlock(), createBlock(_component_el_container, { class: "containerBg" }, {
60
+ default: withCtx(() => [
61
+ createVNode(_component_el_header, {
62
+ height: _headerHeight.value,
63
+ class: "headwarp",
64
+ style: { "border-bottom": "1px solid #e6e6e6", "border-radius": "4px 4px 0 0" }
65
+ }, {
66
+ default: withCtx(() => [
67
+ createElementVNode("div", _hoisted_1, [
68
+ renderSlot(_ctx.$slots, "header", {}, void 0, true)
69
+ ])
70
+ ]),
71
+ _: 3
72
+ }, 8, ["height"]),
73
+ createVNode(_component_el_container, {
74
+ class: "maincon",
75
+ style: {}
76
+ }, {
77
+ default: withCtx(() => [
78
+ __props.showLeft ? (openBlock(), createBlock(_component_el_aside, {
79
+ key: 0,
80
+ width: "200px",
81
+ style: normalizeStyle({ ...__props.leftStyles })
82
+ }, {
83
+ default: withCtx(() => [
84
+ showLeftTop.value ? (openBlock(), createElementBlock("div", _hoisted_2, [
85
+ createElementVNode("div", _hoisted_3, toDisplayString(__props.title), 1)
86
+ ])) : createCommentVNode("", true),
87
+ renderSlot(_ctx.$slots, "left", {}, void 0, true)
88
+ ]),
89
+ _: 3
90
+ }, 8, ["style"])) : createCommentVNode("", true),
91
+ createVNode(_component_el_main, {
92
+ class: "main-container",
93
+ style: normalizeStyle([{ "background-color": "#fff" }, { ...__props.rightStyles }])
94
+ }, {
95
+ default: withCtx(() => [
96
+ renderSlot(_ctx.$slots, "default", {}, void 0, true)
97
+ ]),
98
+ _: 3
99
+ }, 8, ["style"])
100
+ ]),
101
+ _: 3
102
+ })
103
+ ]),
104
+ _: 3
105
+ });
106
+ };
107
+ }
108
+ };
109
+ const layout3 = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-0b11619a"]]);
110
+ export {
111
+ layout3 as default
112
+ };
@@ -0,0 +1,71 @@
1
+ const { computed: computed, resolveComponent: resolveComponent, createBlock: createBlock, openBlock: openBlock, withCtx: withCtx, createVNode: createVNode, renderSlot: renderSlot, normalizeStyle: normalizeStyle, createElementVNode: createElementVNode } = Vue;
2
+ import "./layout4.vue2.js";
3
+ import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.js";
4
+ const _sfc_main = {
5
+ __name: "layout4",
6
+ props: {
7
+ headerHeight: {
8
+ type: [String, Number],
9
+ default: "50px"
10
+ },
11
+ rightStyles: {
12
+ type: Object,
13
+ default: () => {
14
+ return {
15
+ backgroundColor: "#EFEFEF"
16
+ };
17
+ }
18
+ },
19
+ innerBgColor: {
20
+ type: String,
21
+ default: "#fff"
22
+ }
23
+ },
24
+ setup(__props) {
25
+ const props = __props;
26
+ const _headerHeight = computed(() => {
27
+ if (typeof props.headerHeight == "number") {
28
+ return `${props.headerHeight}px`;
29
+ } else {
30
+ return props.headerHeight;
31
+ }
32
+ });
33
+ return (_ctx, _cache) => {
34
+ const _component_el_header = resolveComponent("el-header");
35
+ const _component_el_main = resolveComponent("el-main");
36
+ const _component_el_container = resolveComponent("el-container");
37
+ return openBlock(), createBlock(_component_el_container, { class: "containerBg" }, {
38
+ default: withCtx(() => [
39
+ createVNode(_component_el_header, {
40
+ style: { "background-color": "#fff", "padding": "0" },
41
+ height: _headerHeight.value
42
+ }, {
43
+ default: withCtx(() => [
44
+ renderSlot(_ctx.$slots, "header", {}, void 0, true)
45
+ ]),
46
+ _: 3
47
+ }, 8, ["height"]),
48
+ createVNode(_component_el_main, {
49
+ class: "main main-container",
50
+ style: normalizeStyle({ ...__props.rightStyles })
51
+ }, {
52
+ default: withCtx(() => [
53
+ createElementVNode("div", {
54
+ class: "page-warp",
55
+ style: normalizeStyle({ "background-color": __props.innerBgColor })
56
+ }, [
57
+ renderSlot(_ctx.$slots, "default", {}, void 0, true)
58
+ ], 4)
59
+ ]),
60
+ _: 3
61
+ }, 8, ["style"])
62
+ ]),
63
+ _: 3
64
+ });
65
+ };
66
+ }
67
+ };
68
+ const layout4 = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-1da747ee"]]);
69
+ export {
70
+ layout4 as default
71
+ };
@@ -0,0 +1,223 @@
1
+ const { ref: ref, computed: computed, watch: watch, createElementBlock: createElementBlock, openBlock: openBlock, normalizeStyle: normalizeStyle, Fragment: Fragment, renderList: renderList, normalizeClass: normalizeClass, createElementVNode: createElementVNode, createCommentVNode: createCommentVNode, createTextVNode: createTextVNode, toDisplayString: toDisplayString } = Vue;
2
+ import "./nav.vue2.js";
3
+ import "./nav.vue3.js";
4
+ import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.js";
5
+ const _hoisted_1 = ["onMouseenter", "onMouseleave", "onClick"];
6
+ const _hoisted_2 = ["src"];
7
+ const _sfc_main = {
8
+ __name: "nav",
9
+ props: {
10
+ // 所有项居中
11
+ isCenter: {
12
+ type: Boolean,
13
+ default: false
14
+ },
15
+ themeWarpStyle: {
16
+ type: Object,
17
+ default: () => {
18
+ return {
19
+ backgroundColor: "transparent",
20
+ height: "100px"
21
+ };
22
+ }
23
+ },
24
+ imgWarp: {
25
+ type: Object,
26
+ default: () => {
27
+ return {
28
+ width: "40px",
29
+ height: "40px",
30
+ right: "0px"
31
+ };
32
+ }
33
+ },
34
+ // 是否垂直展示
35
+ isVertical: {
36
+ type: Boolean,
37
+ default: true
38
+ },
39
+ themelist: {
40
+ type: Array,
41
+ required: true,
42
+ validator: (value) => {
43
+ if (value.length == 0) {
44
+ console.error("菜单数组不能为空");
45
+ }
46
+ return value.length > 0;
47
+ }
48
+ },
49
+ color: {
50
+ type: String,
51
+ default: "#0B101A"
52
+ },
53
+ hoverBgColor: {
54
+ type: String,
55
+ default: "var(--hoverbg)"
56
+ }
57
+ },
58
+ emits: ["selectCategory"],
59
+ setup(__props, { emit: __emit }) {
60
+ const emits = __emit;
61
+ const themelistRef = ref();
62
+ const props = __props;
63
+ const overlayRefs = ref([]);
64
+ const setItemRefs = ref([]);
65
+ const selectTheme = ref(props.themelist[0]);
66
+ const getDirection = (event, element) => {
67
+ const rect = element.getBoundingClientRect();
68
+ const x = event.clientX - rect.left - rect.width / 2;
69
+ const y = event.clientY - rect.top - rect.height / 2;
70
+ let dir = Math.round((Math.atan2(y, x) * (180 / Math.PI) + 180) / 90 + 3) % 4;
71
+ return dir;
72
+ };
73
+ const handleMouseEnter = (index, event) => {
74
+ const overlay = overlayRefs.value[index];
75
+ const element = setItemRefs.value[index];
76
+ if (overlay) {
77
+ const direction = getDirection(event, element);
78
+ overlay.style.transition = "";
79
+ overlay.classList.remove("overlay-leave-to-left", "overlay-leave-to-top", "overlay-leave-to-right", "overlay-leave-to-bottom");
80
+ switch (direction) {
81
+ case 0:
82
+ overlay.classList.add("overlay-enter-from-top");
83
+ break;
84
+ case 1:
85
+ overlay.classList.add("overlay-enter-from-right");
86
+ break;
87
+ case 2:
88
+ overlay.classList.add("overlay-enter-from-bottom");
89
+ break;
90
+ case 3:
91
+ overlay.classList.add("overlay-enter-from-left");
92
+ break;
93
+ }
94
+ requestAnimationFrame(() => {
95
+ overlay.style.transition = "transform 0.5s ease";
96
+ switch (direction) {
97
+ case 0:
98
+ overlay.style.transform = "translateY(0%)";
99
+ break;
100
+ case 1:
101
+ overlay.style.transform = "translateX(0%)";
102
+ break;
103
+ case 2:
104
+ overlay.style.transform = "translateY(0%)";
105
+ break;
106
+ case 3:
107
+ overlay.style.transform = "translateX(0%)";
108
+ break;
109
+ }
110
+ });
111
+ }
112
+ };
113
+ const handleMouseLeave = (index, event) => {
114
+ const overlay = overlayRefs.value[index];
115
+ if (overlay) {
116
+ const element = setItemRefs.value[index];
117
+ const direction = getDirection(event, element);
118
+ overlay.style.transition = "";
119
+ overlay.classList.remove("overlay-enter-from-left", "overlay-enter-from-top", "overlay-enter-from-right", "overlay-enter-from-bottom");
120
+ switch (direction) {
121
+ case 0:
122
+ overlay.classList.add("overlay-leave-to-top");
123
+ break;
124
+ case 1:
125
+ overlay.classList.add("overlay-leave-to-right");
126
+ break;
127
+ case 2:
128
+ overlay.classList.add("overlay-leave-to-bottom");
129
+ break;
130
+ case 3:
131
+ overlay.classList.add("overlay-leave-to-left");
132
+ break;
133
+ }
134
+ requestAnimationFrame(() => {
135
+ overlay.style.transition = "transform 0.5s ease";
136
+ switch (direction) {
137
+ case 0:
138
+ overlay.style.transform = "translateY(-100%)";
139
+ break;
140
+ case 1:
141
+ overlay.style.transform = "translateX(100%)";
142
+ break;
143
+ case 2:
144
+ overlay.style.transform = "translateY(100%)";
145
+ break;
146
+ case 3:
147
+ overlay.style.transform = "translateX(-100%)";
148
+ break;
149
+ }
150
+ });
151
+ }
152
+ };
153
+ const themeStyle = computed(() => {
154
+ let _style = { color: props.color };
155
+ if (props.isVertical)
156
+ ;
157
+ else {
158
+ _style.display = "flex";
159
+ _style.justifyContent = "center";
160
+ }
161
+ return _style;
162
+ });
163
+ const handleClick = (item) => {
164
+ selectTheme.value = item;
165
+ emits("selectCategory", item);
166
+ };
167
+ watch(
168
+ () => props.themelist,
169
+ (newValue) => {
170
+ themelistRef.value;
171
+ },
172
+ {
173
+ deep: true
174
+ }
175
+ );
176
+ return (_ctx, _cache) => {
177
+ return openBlock(), createElementBlock("ul", {
178
+ class: "theme-list",
179
+ ref_key: "themelistRef",
180
+ ref: themelistRef,
181
+ style: normalizeStyle({ justifyContent: __props.isCenter ? "center" : "start" })
182
+ }, [
183
+ (openBlock(true), createElementBlock(Fragment, null, renderList(__props.themelist, (item, index) => {
184
+ return openBlock(), createElementBlock("li", {
185
+ class: normalizeClass(["theme-item", { selected: selectTheme.value.title == item.title }]),
186
+ style: normalizeStyle(__props.themeWarpStyle),
187
+ key: index,
188
+ ref_for: true,
189
+ ref: (el) => setItemRefs.value[index] = el,
190
+ onMouseenter: (event) => handleMouseEnter(index, event),
191
+ onMouseleave: (event) => handleMouseLeave(index, event),
192
+ onClick: ($event) => handleClick(item)
193
+ }, [
194
+ createElementVNode("div", {
195
+ class: "theme-title",
196
+ style: normalizeStyle(themeStyle.value)
197
+ }, [
198
+ item.icon ? (openBlock(), createElementBlock("div", {
199
+ key: 0,
200
+ style: normalizeStyle({ height: __props.imgWarp.height, marginRight: __props.imgWarp.right })
201
+ }, [
202
+ createElementVNode("img", {
203
+ style: normalizeStyle([{ "vertical-align": "middle" }, { width: __props.imgWarp.width }]),
204
+ src: item.icon
205
+ }, null, 12, _hoisted_2)
206
+ ], 4)) : createCommentVNode("", true),
207
+ createTextVNode(" " + toDisplayString(item.title), 1)
208
+ ], 4),
209
+ createElementVNode("div", {
210
+ class: "overlay",
211
+ ref_for: true,
212
+ ref: (el) => overlayRefs.value[index] = el
213
+ }, null, 512)
214
+ ], 46, _hoisted_1);
215
+ }), 128))
216
+ ], 4);
217
+ };
218
+ }
219
+ };
220
+ const nav = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-cb04959d"]]);
221
+ export {
222
+ nav as default
223
+ };