@ctzy-web-client/plugin-component-vue 1.0.9 → 1.0.10

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 (272) hide show
  1. package/es/_virtual/_plugin-vue_export-helper.mjs +9 -0
  2. package/es/advance-select/advance-operation.mjs +43 -0
  3. package/es/advance-select/advance-option.mjs +125 -0
  4. package/es/advance-select/advance-select.mjs +359 -0
  5. package/es/advance-select/events-helpers.mjs +29 -0
  6. package/es/advance-select/index.mjs +13 -0
  7. package/es/advance-select/use-advance-option.mjs +43 -0
  8. package/es/advance-select/use-advance-select.mjs +117 -0
  9. package/es/application-slot/application-slot.mjs +51 -0
  10. package/es/application-slot/breadcrumb-item.mjs +23 -0
  11. package/es/application-slot/header-tools-item.mjs +23 -0
  12. package/es/application-slot/index.mjs +16 -0
  13. package/es/breadcrumb-select/breadcrumb-select.mjs +155 -0
  14. package/es/breadcrumb-select/index.mjs +6 -0
  15. package/es/components.mjs +22 -0
  16. package/es/contextmenu/contextmenu-item.mjs +21 -0
  17. package/es/contextmenu/contextmenu.mjs +64 -0
  18. package/es/contextmenu/index.mjs +10 -0
  19. package/es/contextmenu/use-contextmenu.mjs +85 -0
  20. package/es/data-form/data-form-item.mjs +53 -0
  21. package/es/data-form/data-form.mjs +175 -0
  22. package/es/data-form/dynamic-component.mjs +23 -0
  23. package/es/data-form/form-components/Blots/AtBlot.mjs +25 -0
  24. package/es/data-form/form-components/bwa-date-picker.mjs +45 -0
  25. package/es/data-form/form-components/bwa-date-time-picker.mjs +50 -0
  26. package/es/data-form/form-components/bwa-input-float.mjs +43 -0
  27. package/es/data-form/form-components/bwa-input-integer.mjs +56 -0
  28. package/es/data-form/form-components/bwa-input.mjs +38 -0
  29. package/es/data-form/form-components/bwa-multi-select.mjs +35 -0
  30. package/es/data-form/form-components/bwa-rich-text-tinymce.mjs +234 -0
  31. package/es/data-form/form-components/bwa-rich-text.mjs +325 -0
  32. package/es/data-form/form-components/bwa-select.mjs +76 -0
  33. package/es/data-form/form-components/bwa-textarea.mjs +33 -0
  34. package/es/data-form/form-components/bwa-upload.mjs +159 -0
  35. package/es/data-form/form-components/bwa-user-multi-select.mjs +30 -0
  36. package/es/data-form/form-components/bwa-user-select.mjs +69 -0
  37. package/es/data-form/index.mjs +34 -0
  38. package/es/data-table/data-column-view.mjs +131 -0
  39. package/es/data-table/data-table-card.mjs +118 -0
  40. package/es/data-table/data-table-column.mjs +56 -0
  41. package/es/data-table/data-table.mjs +369 -0
  42. package/es/data-table/dynamic-component.mjs +48 -0
  43. package/es/data-table/index.mjs +13 -0
  44. package/es/data-table/use-datatable-drag.mjs +110 -0
  45. package/es/datatable-settings/datatable-settings.mjs +309 -0
  46. package/es/datatable-settings/index.mjs +6 -0
  47. package/es/date-range/date-picker.mjs +128 -0
  48. package/es/date-range/date-range.mjs +177 -0
  49. package/es/date-range/index.mjs +6 -0
  50. package/es/drag-list/constants.mjs +3 -0
  51. package/es/drag-list/drag-item.mjs +49 -0
  52. package/es/drag-list/drag-list.mjs +56 -0
  53. package/es/drag-list/index.mjs +6 -0
  54. package/es/drag-list/use-drag-list.mjs +154 -0
  55. package/es/dragable/constants.mjs +4 -0
  56. package/es/dragable/dragable-item.mjs +25 -0
  57. package/es/dragable/dragable-operation.mjs +32 -0
  58. package/es/dragable/dragable.mjs +31 -0
  59. package/es/dragable/index.mjs +15 -0
  60. package/es/dragable/use-dragable.mjs +134 -0
  61. package/es/filter-panel/conditions/condition.mjs +30 -0
  62. package/es/filter-panel/conditions/date-range-condition.mjs +46 -0
  63. package/es/filter-panel/conditions/department-condition/department-condition.mjs +81 -0
  64. package/es/filter-panel/conditions/department-condition/department-node.mjs +74 -0
  65. package/es/filter-panel/conditions/index.mjs +21 -0
  66. package/es/filter-panel/conditions/input-condition.mjs +83 -0
  67. package/es/filter-panel/conditions/multi-user-condition.mjs +64 -0
  68. package/es/filter-panel/conditions/multiple-menu-condition.mjs +41 -0
  69. package/es/filter-panel/conditions/single-menu-condition.mjs +68 -0
  70. package/es/filter-panel/conditions/single-user-condition.mjs +64 -0
  71. package/es/filter-panel/filter-panel-item.mjs +47 -0
  72. package/es/filter-panel/filter-panel.mjs +180 -0
  73. package/es/filter-panel/index.mjs +15 -0
  74. package/es/filter-panel/use-filter-panel-item.mjs +52 -0
  75. package/es/filter-panel/use-filter-panel.mjs +135 -0
  76. package/es/hooks/use-data/index.mjs +152 -0
  77. package/es/index.mjs +27 -0
  78. package/es/layout/index.mjs +6 -0
  79. package/es/layout/layout.mjs +86 -0
  80. package/es/make-installer.mjs +34 -0
  81. package/es/math/Rectangle.mjs +25 -0
  82. package/es/menu/index.mjs +6 -0
  83. package/es/menu/menu-item.mjs +75 -0
  84. package/es/menu/menu.mjs +60 -0
  85. package/es/node_modules/.pnpm/@vueuse_core@9.6.0_vue@3.2.41/node_modules/@vueuse/core/index.mjs +6372 -0
  86. package/es/node_modules/.pnpm/@vueuse_shared@9.6.0_vue@3.2.41/node_modules/@vueuse/shared/index.mjs +1517 -0
  87. package/es/panel/index.mjs +6 -0
  88. package/es/panel/panel.mjs +55 -0
  89. package/es/panel-tabs/index.mjs +6 -0
  90. package/es/panel-tabs/panel-tabs.mjs +66 -0
  91. package/es/pct-filter-panel/index.mjs +10 -0
  92. package/es/pct-filter-panel/pct-compents/index.mjs +10 -0
  93. package/es/pct-filter-panel/pct-compents/pct-Input-condition.mjs +71 -0
  94. package/es/pct-filter-panel/pct-compents/pct-date-range-condition.mjs +74 -0
  95. package/es/pct-filter-panel/pct-compents/pct-multiple-menu-condition.mjs +186 -0
  96. package/es/pct-filter-panel/pct-compents/pct-multiple-menu-condition2.mjs +147 -0
  97. package/es/pct-filter-panel/pct-filter-panel-item.mjs +48 -0
  98. package/es/pct-filter-panel/pct-filter-panel.mjs +251 -0
  99. package/es/pct-filter-panel/use-filter-panel-item.mjs +56 -0
  100. package/es/pct-filter-panel/use-filter-panel.mjs +127 -0
  101. package/es/plugins.mjs +5 -0
  102. package/es/progress/index.mjs +10 -0
  103. package/es/progress/progress-item.mjs +68 -0
  104. package/es/progress/progress.mjs +74 -0
  105. package/es/progress/use-progress.mjs +46 -0
  106. package/es/utils/db.mjs +9 -0
  107. package/es/utils.mjs +99 -0
  108. package/es/where-filter-panel/index.mjs +1 -0
  109. package/es/where-filter-panel/use-where-filter-panel.mjs +18 -0
  110. package/es/where-filter-panel/where-filter-panel.mjs +17 -0
  111. package/lib/_virtual/_plugin-vue_export-helper.js +13 -0
  112. package/lib/advance-select/advance-operation.js +47 -0
  113. package/lib/advance-select/advance-option.js +129 -0
  114. package/lib/advance-select/advance-select.js +363 -0
  115. package/lib/advance-select/events-helpers.js +33 -0
  116. package/lib/advance-select/index.js +20 -0
  117. package/lib/advance-select/use-advance-option.js +47 -0
  118. package/lib/advance-select/use-advance-select.js +122 -0
  119. package/lib/application-slot/application-slot.js +55 -0
  120. package/lib/application-slot/breadcrumb-item.js +27 -0
  121. package/lib/application-slot/header-tools-item.js +27 -0
  122. package/lib/application-slot/index.js +23 -0
  123. package/lib/breadcrumb-select/breadcrumb-select.js +159 -0
  124. package/lib/breadcrumb-select/index.js +11 -0
  125. package/lib/components.js +26 -0
  126. package/lib/contextmenu/contextmenu-item.js +25 -0
  127. package/lib/contextmenu/contextmenu.js +68 -0
  128. package/lib/contextmenu/index.js +16 -0
  129. package/lib/contextmenu/use-contextmenu.js +89 -0
  130. package/lib/data-form/data-form-item.js +57 -0
  131. package/lib/data-form/data-form.js +179 -0
  132. package/lib/data-form/dynamic-component.js +27 -0
  133. package/lib/data-form/form-components/Blots/AtBlot.js +31 -0
  134. package/lib/data-form/form-components/bwa-date-picker.js +49 -0
  135. package/lib/data-form/form-components/bwa-date-time-picker.js +54 -0
  136. package/lib/data-form/form-components/bwa-input-float.js +47 -0
  137. package/lib/data-form/form-components/bwa-input-integer.js +60 -0
  138. package/lib/data-form/form-components/bwa-input.js +42 -0
  139. package/lib/data-form/form-components/bwa-multi-select.js +39 -0
  140. package/lib/data-form/form-components/bwa-rich-text-tinymce.js +242 -0
  141. package/lib/data-form/form-components/bwa-rich-text.js +333 -0
  142. package/lib/data-form/form-components/bwa-select.js +80 -0
  143. package/lib/data-form/form-components/bwa-textarea.js +37 -0
  144. package/lib/data-form/form-components/bwa-upload.js +163 -0
  145. package/lib/data-form/form-components/bwa-user-multi-select.js +34 -0
  146. package/lib/data-form/form-components/bwa-user-select.js +73 -0
  147. package/lib/data-form/index.js +40 -0
  148. package/lib/data-table/data-column-view.js +135 -0
  149. package/lib/data-table/data-table-card.js +122 -0
  150. package/lib/data-table/data-table-column.js +60 -0
  151. package/lib/data-table/data-table.js +373 -0
  152. package/lib/data-table/dynamic-component.js +56 -0
  153. package/lib/data-table/index.js +20 -0
  154. package/lib/data-table/use-datatable-drag.js +114 -0
  155. package/lib/datatable-settings/datatable-settings.js +313 -0
  156. package/lib/datatable-settings/index.js +11 -0
  157. package/lib/date-range/date-picker.js +136 -0
  158. package/lib/date-range/date-range.js +185 -0
  159. package/lib/date-range/index.js +11 -0
  160. package/lib/drag-list/constants.js +7 -0
  161. package/lib/drag-list/drag-item.js +53 -0
  162. package/lib/drag-list/drag-list.js +60 -0
  163. package/lib/drag-list/index.js +11 -0
  164. package/lib/drag-list/use-drag-list.js +158 -0
  165. package/lib/dragable/constants.js +9 -0
  166. package/lib/dragable/dragable-item.js +29 -0
  167. package/lib/dragable/dragable-operation.js +36 -0
  168. package/lib/dragable/dragable.js +35 -0
  169. package/lib/dragable/index.js +22 -0
  170. package/lib/dragable/use-dragable.js +138 -0
  171. package/lib/filter-panel/conditions/condition.js +34 -0
  172. package/lib/filter-panel/conditions/date-range-condition.js +50 -0
  173. package/lib/filter-panel/conditions/department-condition/department-condition.js +85 -0
  174. package/lib/filter-panel/conditions/department-condition/department-node.js +78 -0
  175. package/lib/filter-panel/conditions/index.js +26 -0
  176. package/lib/filter-panel/conditions/input-condition.js +87 -0
  177. package/lib/filter-panel/conditions/multi-user-condition.js +68 -0
  178. package/lib/filter-panel/conditions/multiple-menu-condition.js +45 -0
  179. package/lib/filter-panel/conditions/single-menu-condition.js +72 -0
  180. package/lib/filter-panel/conditions/single-user-condition.js +68 -0
  181. package/lib/filter-panel/filter-panel-item.js +51 -0
  182. package/lib/filter-panel/filter-panel.js +184 -0
  183. package/lib/filter-panel/index.js +20 -0
  184. package/lib/filter-panel/use-filter-panel-item.js +56 -0
  185. package/lib/filter-panel/use-filter-panel.js +139 -0
  186. package/lib/hooks/use-data/index.js +157 -0
  187. package/lib/index.js +60 -0
  188. package/lib/layout/index.js +11 -0
  189. package/lib/layout/layout.js +90 -0
  190. package/lib/make-installer.js +62 -0
  191. package/lib/math/Rectangle.js +29 -0
  192. package/lib/menu/index.js +11 -0
  193. package/lib/menu/menu-item.js +79 -0
  194. package/lib/menu/menu.js +64 -0
  195. package/lib/node_modules/.pnpm/@vueuse_core@9.6.0_vue@3.2.41/node_modules/@vueuse/core/index.js +6635 -0
  196. package/lib/node_modules/.pnpm/@vueuse_shared@9.6.0_vue@3.2.41/node_modules/@vueuse/shared/index.js +1628 -0
  197. package/lib/panel/index.js +11 -0
  198. package/lib/panel/panel.js +59 -0
  199. package/lib/panel-tabs/index.js +11 -0
  200. package/lib/panel-tabs/panel-tabs.js +70 -0
  201. package/lib/pct-filter-panel/index.js +14 -0
  202. package/lib/pct-filter-panel/pct-compents/index.js +16 -0
  203. package/lib/pct-filter-panel/pct-compents/pct-Input-condition.js +75 -0
  204. package/lib/pct-filter-panel/pct-compents/pct-date-range-condition.js +78 -0
  205. package/lib/pct-filter-panel/pct-compents/pct-multiple-menu-condition.js +190 -0
  206. package/lib/pct-filter-panel/pct-compents/pct-multiple-menu-condition2.js +151 -0
  207. package/lib/pct-filter-panel/pct-filter-panel-item.js +52 -0
  208. package/lib/pct-filter-panel/pct-filter-panel.js +255 -0
  209. package/lib/pct-filter-panel/use-filter-panel-item.js +60 -0
  210. package/lib/pct-filter-panel/use-filter-panel.js +131 -0
  211. package/lib/plugins.js +9 -0
  212. package/lib/progress/index.js +16 -0
  213. package/lib/progress/progress-item.js +72 -0
  214. package/lib/progress/progress.js +78 -0
  215. package/lib/progress/use-progress.js +51 -0
  216. package/lib/utils/db.js +17 -0
  217. package/lib/utils.js +110 -0
  218. package/lib/where-filter-panel/index.js +2 -0
  219. package/lib/where-filter-panel/use-where-filter-panel.js +22 -0
  220. package/lib/where-filter-panel/where-filter-panel.js +21 -0
  221. package/package.json +1 -1
  222. package/style/advance-select.css +1 -0
  223. package/style/breadcrumb-select.css +1 -0
  224. package/style/common.css +1 -0
  225. package/style/contextmenu.css +1 -0
  226. package/style/data-form.css +1 -0
  227. package/style/data-table.css +1 -0
  228. package/style/datatable-settings.css +1 -0
  229. package/style/date-range.css +1 -0
  230. package/style/department-condition.css +1 -0
  231. package/style/drag-list.css +1 -0
  232. package/style/dragable.css +1 -0
  233. package/style/filter-panel.css +1 -0
  234. package/style/index.css +1 -0
  235. package/style/input-condition.css +1 -0
  236. package/style/layout.css +1 -0
  237. package/style/menu.css +1 -0
  238. package/style/panel-tabs.css +1 -0
  239. package/style/panel.css +1 -0
  240. package/style/pct-filter-panel.css +1 -0
  241. package/style/progress.css +1 -0
  242. package/style/rich-text.css +1 -0
  243. package/style/var.css +1 -0
  244. /package/style/{advance-select.scss → src/advance-select.scss} +0 -0
  245. /package/style/{breadcrumb-select.scss → src/breadcrumb-select.scss} +0 -0
  246. /package/style/{common → src/common}/var.scss +0 -0
  247. /package/style/{common.scss → src/common.scss} +0 -0
  248. /package/style/{contextmenu.scss → src/contextmenu.scss} +0 -0
  249. /package/style/{data-form.scss → src/data-form.scss} +0 -0
  250. /package/style/{data-table.scss → src/data-table.scss} +0 -0
  251. /package/style/{datatable-settings.scss → src/datatable-settings.scss} +0 -0
  252. /package/style/{date-range.scss → src/date-range.scss} +0 -0
  253. /package/style/{department-condition.scss → src/department-condition.scss} +0 -0
  254. /package/style/{drag-list.scss → src/drag-list.scss} +0 -0
  255. /package/style/{dragable.scss → src/dragable.scss} +0 -0
  256. /package/style/{filter-panel.scss → src/filter-panel.scss} +0 -0
  257. /package/style/{index.scss → src/index.scss} +0 -0
  258. /package/style/{input-condition.scss → src/input-condition.scss} +0 -0
  259. /package/style/{layout.scss → src/layout.scss} +0 -0
  260. /package/style/{menu.scss → src/menu.scss} +0 -0
  261. /package/style/{mixins → src/mixins}/_var.scss +0 -0
  262. /package/style/{mixins → src/mixins}/config.scss +0 -0
  263. /package/style/{mixins → src/mixins}/function.scss +0 -0
  264. /package/style/{mixins → src/mixins}/mixins.scss +0 -0
  265. /package/style/{panel-tabs.scss → src/panel-tabs.scss} +0 -0
  266. /package/style/{panel.scss → src/panel.scss} +0 -0
  267. /package/style/{pct-filter-panel.scss → src/pct-filter-panel.scss} +0 -0
  268. /package/style/{progress.scss → src/progress.scss} +0 -0
  269. /package/style/{rich-text.scss → src/rich-text.scss} +0 -0
  270. /package/style/{theme → src/theme}/theme.scss +0 -0
  271. /package/style/{theme → src/theme}/var.scss +0 -0
  272. /package/style/{var.scss → src/var.scss} +0 -0
@@ -0,0 +1,53 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var vue = require('vue');
6
+ var webBaseClientVue = require('@ctzy-web-client/web-base-client-vue');
7
+ var constants = require('./constants.js');
8
+ var _pluginVue_exportHelper = require('../_virtual/_plugin-vue_export-helper.js');
9
+
10
+ const __default__ = vue.defineComponent({ name: "BwaDragItem" });
11
+ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
12
+ setup(__props, { expose }) {
13
+ const ns = webBaseClientVue.useNamespace("dragitem");
14
+ ;
15
+ const dragListContext = vue.inject(constants.dragListContextKey);
16
+ const id = dragListContext.nextID();
17
+ const instance = vue.getCurrentInstance();
18
+ const handleMousedown = (event) => {
19
+ if (event.button !== 0) {
20
+ return;
21
+ }
22
+ dragListContext.startDrag(instance.proxy);
23
+ };
24
+ vue.onMounted(() => {
25
+ dragListContext.handleItemCreate(id, instance.proxy);
26
+ });
27
+ vue.onBeforeUnmount(() => {
28
+ dragListContext.handleItemDestroy(id, instance.proxy);
29
+ });
30
+ expose({
31
+ id
32
+ });
33
+ return (_ctx, _cache) => {
34
+ return vue.openBlock(), vue.createElementBlock("div", {
35
+ class: vue.normalizeClass(vue.unref(ns).b()),
36
+ "draggable-context-id": "",
37
+ onMousedown: handleMousedown
38
+ }, [
39
+ vue.createElementVNode("i", {
40
+ class: vue.normalizeClass([vue.unref(ns).e("drag-icon"), "ptp-icon", "ptp-buzhou-yidong"])
41
+ }, null, 2),
42
+ vue.createElementVNode("span", {
43
+ class: vue.normalizeClass(vue.unref(ns).e("content"))
44
+ }, [
45
+ vue.renderSlot(_ctx.$slots, "default")
46
+ ], 2)
47
+ ], 34);
48
+ };
49
+ }
50
+ });
51
+ var DragItem = /* @__PURE__ */ _pluginVue_exportHelper["default"](_sfc_main, [["__file", "drag-item.vue"]]);
52
+
53
+ exports["default"] = DragItem;
@@ -0,0 +1,60 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var vue = require('vue');
6
+ var webBaseClientVue = require('@ctzy-web-client/web-base-client-vue');
7
+ var constants = require('./constants.js');
8
+ var dragItem = require('./drag-item.js');
9
+ var useDragList = require('./use-drag-list.js');
10
+ var _pluginVue_exportHelper = require('../_virtual/_plugin-vue_export-helper.js');
11
+
12
+ const __default__ = vue.defineComponent({ name: "BwaDragList" });
13
+ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
14
+ props: {
15
+ data: {
16
+ type: Array,
17
+ default: () => []
18
+ },
19
+ idAttr: {
20
+ type: String,
21
+ default: "id"
22
+ }
23
+ },
24
+ emits: ["sort-change"],
25
+ setup(__props, { emit }) {
26
+ const props = __props;
27
+ const ns = webBaseClientVue.useNamespace("draglist");
28
+ const { startDrag, nextID, handleItemCreate, handleItemDestroy, dragging } = useDragList.useDragList(props, { emit });
29
+ vue.provide(
30
+ constants.dragListContextKey,
31
+ vue.reactive({
32
+ dragging,
33
+ startDrag,
34
+ nextID,
35
+ handleItemCreate,
36
+ handleItemDestroy
37
+ })
38
+ );
39
+ return (_ctx, _cache) => {
40
+ return vue.openBlock(), vue.createElementBlock("div", {
41
+ class: vue.normalizeClass([vue.unref(ns).b(), vue.unref(ns).e("dragging", vue.unref(dragging))])
42
+ }, [
43
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.data, (item, i) => {
44
+ return vue.openBlock(), vue.createBlock(dragItem["default"], {
45
+ key: item[__props.idAttr],
46
+ "data-key": item[__props.idAttr]
47
+ }, {
48
+ default: vue.withCtx(() => [
49
+ vue.renderSlot(_ctx.$slots, "default", { item })
50
+ ]),
51
+ _: 2
52
+ }, 1032, ["data-key"]);
53
+ }), 128))
54
+ ], 2);
55
+ };
56
+ }
57
+ });
58
+ var DragList = /* @__PURE__ */ _pluginVue_exportHelper["default"](_sfc_main, [["__file", "drag-list.vue"]]);
59
+
60
+ exports["default"] = DragList;
@@ -0,0 +1,11 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var install = require('element-plus/es/utils/vue/install');
6
+ var dragList = require('./drag-list.js');
7
+
8
+ const BwaDraglist = install.withInstall(dragList["default"]);
9
+
10
+ exports.BwaDraglist = BwaDraglist;
11
+ exports["default"] = BwaDraglist;
@@ -0,0 +1,158 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var index = require('../node_modules/.pnpm/@vueuse_core@9.6.0_vue@3.2.41/node_modules/@vueuse/core/index.js');
6
+ var vue = require('vue');
7
+
8
+ const useDragList = (props, context) => {
9
+ let uid = 1;
10
+ const itemMap = /* @__PURE__ */ new Map();
11
+ const containerInstance = vue.getCurrentInstance();
12
+ const mouseInfo = index.useMouse();
13
+ let bounding = null;
14
+ let currentInstance = vue.ref(null);
15
+ let startPosition = null;
16
+ let offset = null;
17
+ let timer = null;
18
+ let clonedEl = null;
19
+ const dragging = vue.ref(false);
20
+ const currentEl = vue.computed(() => {
21
+ const instance = vue.unref(currentInstance);
22
+ if (!instance) {
23
+ return null;
24
+ }
25
+ return instance.$el;
26
+ });
27
+ const brotherItemList = vue.computed(() => {
28
+ const children = Array.from(itemMap.values());
29
+ const _currentInstance = vue.unref(currentInstance);
30
+ return children.filter((item) => item !== _currentInstance);
31
+ });
32
+ let animationFrameKey = -1;
33
+ const calcTransform = () => {
34
+ const targetX = vue.unref(mouseInfo.x) - startPosition.x - offset.x;
35
+ const targetY = vue.unref(mouseInfo.y) - startPosition.y - offset.y;
36
+ vue.unref(currentEl).style.transform = `translate(${targetX}px, ${targetY}px)`;
37
+ const currentBounding = vue.unref(currentEl).getBoundingClientRect();
38
+ for (const brother of vue.unref(brotherItemList)) {
39
+ const _bounding = brother.$el.getBoundingClientRect();
40
+ if (currentBounding.y + currentBounding.height / 2 <= _bounding.y + vue.unref(_bounding.height) / 2) {
41
+ brother.$el.style.transform = `translate(0, ${vue.unref(bounding.height)}px)`;
42
+ } else {
43
+ brother.$el.style.transform = `translate(0, 0px)`;
44
+ }
45
+ }
46
+ };
47
+ const animationFrameCallback = () => {
48
+ calcTransform();
49
+ animationFrameKey = requestAnimationFrame(animationFrameCallback);
50
+ };
51
+ const getSorted = () => {
52
+ const el = vue.unref(currentEl);
53
+ const container = el.parentElement;
54
+ const children = Array.from(container.children);
55
+ let before = [];
56
+ let after = [];
57
+ for (const child of children) {
58
+ if (child === el || child === clonedEl) {
59
+ continue;
60
+ }
61
+ if (["translate(0px, 0px)", "translate(0px)"].includes(child.style.transform)) {
62
+ before.push(child.dataset.key);
63
+ } else {
64
+ after.push(child.dataset.key);
65
+ }
66
+ }
67
+ return [...before, el.dataset.key, ...after];
68
+ };
69
+ const handleMouseup = (event) => {
70
+ cancelAnimationFrame(animationFrameKey);
71
+ document.removeEventListener("mouseup", handleMouseup);
72
+ context.emit("sort-change", getSorted());
73
+ for (const brotherItem of [...vue.unref(brotherItemList), vue.unref(currentInstance)]) {
74
+ brotherItem.$el.setAttribute("draggable-context-id", "");
75
+ }
76
+ clearTimeout(timer);
77
+ containerInstance.proxy.$el.removeChild(clonedEl);
78
+ Object.assign(vue.unref(currentEl).style, {
79
+ position: "",
80
+ left: "",
81
+ top: "",
82
+ transform: "",
83
+ width: "",
84
+ height: "",
85
+ cursor: "",
86
+ zIndex: ""
87
+ });
88
+ Object.assign(document.body.style, {
89
+ userSelect: "",
90
+ cursor: ""
91
+ });
92
+ clonedEl = timer = startPosition = offset = currentInstance.value = bounding = null;
93
+ for (const brother of vue.unref(brotherItemList)) {
94
+ brother.$el.style.transform = ``;
95
+ }
96
+ dragging.value = false;
97
+ };
98
+ const startDrag = (el) => {
99
+ dragging.value = true;
100
+ currentInstance.value = el;
101
+ bounding = index.useElementBounding(currentEl);
102
+ startPosition = {
103
+ x: vue.unref(bounding.x),
104
+ y: vue.unref(bounding.y)
105
+ };
106
+ Object.assign(document.body.style, {
107
+ userSelect: "none",
108
+ cursor: "grabbing"
109
+ });
110
+ offset = {
111
+ x: vue.unref(mouseInfo.x) - vue.unref(bounding.x),
112
+ y: vue.unref(mouseInfo.y) - vue.unref(bounding.y)
113
+ };
114
+ clonedEl = document.createElement("div");
115
+ Object.assign(clonedEl.style, {
116
+ height: `${vue.unref(bounding.height)}px`,
117
+ width: `${vue.unref(bounding.width)}px`
118
+ });
119
+ containerInstance.proxy.$el.append(clonedEl);
120
+ Object.assign(vue.unref(currentEl).style, {
121
+ position: "fixed",
122
+ left: `${vue.unref(startPosition.x)}px`,
123
+ top: `${vue.unref(startPosition.y)}px`,
124
+ width: `${vue.unref(bounding.width)}px`,
125
+ height: `${vue.unref(bounding.height)}px`,
126
+ transform: "translate(0px, 0px)",
127
+ cursor: "grabbing",
128
+ zIndex: "5000"
129
+ });
130
+ calcTransform();
131
+ timer = setTimeout(() => {
132
+ vue.unref(currentInstance).$el.setAttribute("draggable-context-id", "1");
133
+ for (const brotherItem of vue.unref(brotherItemList)) {
134
+ brotherItem.$el.setAttribute("draggable-context-id", "0");
135
+ }
136
+ });
137
+ animationFrameKey = requestAnimationFrame(animationFrameCallback);
138
+ document.addEventListener("mouseup", handleMouseup);
139
+ };
140
+ const nextID = () => {
141
+ return uid++;
142
+ };
143
+ const handleItemCreate = (id, instance) => {
144
+ itemMap.set(id, instance);
145
+ };
146
+ const handleItemDestroy = (id, instance) => {
147
+ itemMap.delete(id);
148
+ };
149
+ return {
150
+ startDrag,
151
+ nextID,
152
+ handleItemCreate,
153
+ handleItemDestroy,
154
+ dragging
155
+ };
156
+ };
157
+
158
+ exports.useDragList = useDragList;
@@ -0,0 +1,9 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const dragableContextKey = "DRAGABLE_CONTEXT_KEY";
6
+ const dragableItemContextKey = "DRAGABLE_ITEM_CONTEXT_KEY";
7
+
8
+ exports.dragableContextKey = dragableContextKey;
9
+ exports.dragableItemContextKey = dragableItemContextKey;
@@ -0,0 +1,29 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var vue = require('vue');
6
+ var webBaseClientVue = require('@ctzy-web-client/web-base-client-vue');
7
+ var constants = require('./constants.js');
8
+ var _pluginVue_exportHelper = require('../_virtual/_plugin-vue_export-helper.js');
9
+
10
+ const __default__ = vue.defineComponent({
11
+ name: "BwaDragableItem"
12
+ });
13
+ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
14
+ setup(__props) {
15
+ ;
16
+ const ns = webBaseClientVue.useNamespace("dragable-item");
17
+ vue.provide(constants.dragableItemContextKey, {});
18
+ return (_ctx, _cache) => {
19
+ return vue.openBlock(), vue.createElementBlock("div", {
20
+ class: vue.normalizeClass(vue.unref(ns).b())
21
+ }, [
22
+ vue.renderSlot(_ctx.$slots, "default")
23
+ ], 2);
24
+ };
25
+ }
26
+ });
27
+ var DragableItem = /* @__PURE__ */ _pluginVue_exportHelper["default"](_sfc_main, [["__file", "dragable-item.vue"]]);
28
+
29
+ exports["default"] = DragableItem;
@@ -0,0 +1,36 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var vue = require('vue');
6
+ var webBaseClientVue = require('@ctzy-web-client/web-base-client-vue');
7
+ var constants = require('./constants.js');
8
+ var _pluginVue_exportHelper = require('../_virtual/_plugin-vue_export-helper.js');
9
+
10
+ const _hoisted_1 = ["dragable-operation"];
11
+ const __default__ = vue.defineComponent({
12
+ name: "BwaDragableOperation"
13
+ });
14
+ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
15
+ setup(__props) {
16
+ ;
17
+ const ns = webBaseClientVue.useNamespace("dragable-operation");
18
+ const dragableContext = vue.inject(constants.dragableContextKey);
19
+ const dragableItemContext = vue.inject(constants.dragableItemContextKey);
20
+ const dragableOperation = vue.ref(
21
+ new Boolean(dragableContext && dragableItemContext).valueOf()
22
+ );
23
+ return (_ctx, _cache) => {
24
+ return vue.openBlock(), vue.createElementBlock("span", {
25
+ class: vue.normalizeClass(vue.unref(ns).b()),
26
+ onMousedown: _cache[0] || (_cache[0] = (...args) => _ctx.handleMousedown && _ctx.handleMousedown(...args)),
27
+ "dragable-operation": dragableOperation.value
28
+ }, [
29
+ vue.renderSlot(_ctx.$slots, "default")
30
+ ], 42, _hoisted_1);
31
+ };
32
+ }
33
+ });
34
+ var DragableOperation = /* @__PURE__ */ _pluginVue_exportHelper["default"](_sfc_main, [["__file", "dragable-operation.vue"]]);
35
+
36
+ exports["default"] = DragableOperation;
@@ -0,0 +1,35 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var vue = require('vue');
6
+ var webBaseClientVue = require('@ctzy-web-client/web-base-client-vue');
7
+ var constants = require('./constants.js');
8
+ var useDragable = require('./use-dragable.js');
9
+ var _pluginVue_exportHelper = require('../_virtual/_plugin-vue_export-helper.js');
10
+
11
+ const __default__ = vue.defineComponent({
12
+ name: "BwaDragable"
13
+ });
14
+ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
15
+ emits: ["move"],
16
+ setup(__props, { emit }) {
17
+ ;
18
+ const ns = webBaseClientVue.useNamespace("dragable");
19
+ const el = vue.ref(null);
20
+ useDragable.useDragable(el, ns.b("item"), ns.b("operation"), { emit });
21
+ vue.provide(constants.dragableContextKey, {});
22
+ return (_ctx, _cache) => {
23
+ return vue.openBlock(), vue.createElementBlock("div", {
24
+ class: vue.normalizeClass(vue.unref(ns).b()),
25
+ ref_key: "el",
26
+ ref: el
27
+ }, [
28
+ vue.renderSlot(_ctx.$slots, "default")
29
+ ], 2);
30
+ };
31
+ }
32
+ });
33
+ var Dragable = /* @__PURE__ */ _pluginVue_exportHelper["default"](_sfc_main, [["__file", "dragable.vue"]]);
34
+
35
+ exports["default"] = Dragable;
@@ -0,0 +1,22 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var install = require('element-plus/es/utils/vue/install');
6
+ var dragable = require('./dragable.js');
7
+ var dragableItem = require('./dragable-item.js');
8
+ var dragableOperation = require('./dragable-operation.js');
9
+
10
+ const BwaDragable = install.withInstall(dragable["default"], {
11
+ DragableItem: dragableItem["default"],
12
+ DragableOperation: dragableOperation["default"]
13
+ });
14
+ const BwaDragableItem = install.withInstall(dragableItem["default"], {
15
+ DragableOperation: dragableOperation["default"]
16
+ });
17
+ const BwaDragableOperation = install.withInstall(dragableOperation["default"]);
18
+
19
+ exports.BwaDragable = BwaDragable;
20
+ exports.BwaDragableItem = BwaDragableItem;
21
+ exports.BwaDragableOperation = BwaDragableOperation;
22
+ exports["default"] = BwaDragable;
@@ -0,0 +1,138 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var rxjs = require('rxjs');
6
+ var vue = require('vue');
7
+ var Rectangle = require('../math/Rectangle.js');
8
+
9
+ const useDragable = (dragableEl, itemClass, operationClass, context) => {
10
+ let dragSubscription = null;
11
+ vue.onMounted(() => {
12
+ const mousedownObservable = rxjs.fromEvent(vue.unref(dragableEl), "mousedown").pipe(rxjs.filter((event) => {
13
+ const children = Array.from(vue.unref(dragableEl).children).filter((el) => el.classList.contains(itemClass));
14
+ const operations = children.map((el) => el.querySelector(`.${operationClass}`)).filter(Boolean).filter((operation) => operation.classList.contains(operationClass));
15
+ return !!operations.find((operation) => operation.contains(event.target));
16
+ }));
17
+ const mousemoveObservable = rxjs.fromEvent(document, "mousemove");
18
+ const mouseupObservable = rxjs.fromEvent(document, "mouseup");
19
+ const dragObservable = mousedownObservable.pipe(rxjs.switchMap((startEvent) => mousemoveObservable.pipe(rxjs.takeUntil(mouseupObservable), rxjs.map((event) => ({
20
+ startEvent,
21
+ moveEvent: event
22
+ })))));
23
+ let animationFrameKey = -1;
24
+ let otherInfos = [];
25
+ let currentEl = null;
26
+ let currentRectangle = null;
27
+ let tempEl = null;
28
+ let offset = null;
29
+ let sourceIndex = -1;
30
+ const animationFrameCallback = () => {
31
+ for (let otherInfo of otherInfos) {
32
+ const translateY = otherInfo.rectangle.cy < currentRectangle.cy ? 0 : currentRectangle.height;
33
+ otherInfo.el.style.transform = `translate(0px, ${translateY}px)`;
34
+ }
35
+ otherInfos = otherInfos.map((info) => {
36
+ const bound = info.el.getBoundingClientRect();
37
+ return {
38
+ el: info.el,
39
+ rectangle: new Rectangle.Rectangle(bound.x, bound.y, bound.width, bound.height)
40
+ };
41
+ });
42
+ animationFrameKey = requestAnimationFrame(animationFrameCallback);
43
+ };
44
+ dragSubscription = dragObservable.subscribe(({
45
+ moveEvent
46
+ }) => {
47
+ if (!currentEl) {
48
+ return;
49
+ }
50
+ const bound = currentEl.getBoundingClientRect();
51
+ currentRectangle = new Rectangle.Rectangle(bound.x, bound.y, bound.width, bound.height);
52
+ Object.assign(currentEl.style, {
53
+ position: "fixed",
54
+ transform: `translate(${moveEvent.clientX - offset.x}px, ${moveEvent.clientY - offset.y}px)`,
55
+ zIndex: "5000"
56
+ });
57
+ });
58
+ dragSubscription.add(mousedownObservable.subscribe((event) => {
59
+ var _a;
60
+ let children = Array.from(vue.unref(dragableEl).children).filter((el) => el.classList.contains(itemClass));
61
+ currentEl = (_a = children.find((el) => el.contains(event.target))) != null ? _a : null;
62
+ if (!currentEl) {
63
+ return;
64
+ }
65
+ sourceIndex = children.findIndex((el) => el.contains(event.target));
66
+ if (sourceIndex === -1) {
67
+ return;
68
+ }
69
+ const bound = currentEl.getBoundingClientRect();
70
+ currentRectangle = new Rectangle.Rectangle(bound.x, bound.y, bound.width, bound.height);
71
+ offset = {
72
+ x: event.x - bound.x,
73
+ y: event.y - bound.y
74
+ };
75
+ tempEl = document.createElement("div");
76
+ Object.assign(tempEl.style, {
77
+ height: `${currentRectangle.height}px`,
78
+ width: `${currentRectangle.width}px`
79
+ });
80
+ vue.unref(dragableEl).appendChild(tempEl);
81
+ Object.assign(currentEl.style, {
82
+ position: "fixed",
83
+ left: "0",
84
+ top: "0",
85
+ transform: `translate(${event.clientX - offset.x}px, ${event.clientY - offset.y}px)`,
86
+ zIndex: "5000"
87
+ });
88
+ const otherItems = children.filter((item) => !item.contains(event.target));
89
+ otherInfos = otherItems.map((el) => {
90
+ const bound2 = el.getBoundingClientRect();
91
+ const rectangle = new Rectangle.Rectangle(bound2.x, bound2.y, bound2.width, bound2.height);
92
+ return {
93
+ el,
94
+ rectangle
95
+ };
96
+ });
97
+ animationFrameCallback();
98
+ for (let otherInfo of otherInfos) {
99
+ otherInfo.el.setAttribute("dragable-relative", "true");
100
+ }
101
+ }));
102
+ dragSubscription.add(mousedownObservable.pipe(rxjs.switchMap(() => mouseupObservable.pipe(rxjs.take(1)))).subscribe(() => {
103
+ if (!currentEl) {
104
+ return;
105
+ }
106
+ tempEl.remove();
107
+ for (let otherInfo of otherInfos) {
108
+ otherInfo.el.style.transform = "";
109
+ }
110
+ Object.assign(currentEl.style, {
111
+ position: "",
112
+ left: "",
113
+ top: "",
114
+ transform: "",
115
+ zIndex: ""
116
+ });
117
+ const tartgetIndex = otherInfos.filter((info) => info.rectangle.cy < currentRectangle.cy).length;
118
+ if (sourceIndex !== tartgetIndex) {
119
+ context.emit("move", sourceIndex, tartgetIndex);
120
+ }
121
+ for (let otherInfo of otherInfos) {
122
+ otherInfo.el.removeAttribute("dragable-relative");
123
+ }
124
+ otherInfos = [];
125
+ currentEl = tempEl = offset = currentRectangle = null;
126
+ sourceIndex = -1;
127
+ if (animationFrameKey !== -1) {
128
+ cancelAnimationFrame(animationFrameKey);
129
+ animationFrameKey = -1;
130
+ }
131
+ }));
132
+ });
133
+ vue.onUnmounted(() => {
134
+ dragSubscription == null ? void 0 : dragSubscription.unsubscribe();
135
+ });
136
+ };
137
+
138
+ exports.useDragable = useDragable;
@@ -0,0 +1,34 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var vue = require('vue');
6
+ var utils = require('../../utils.js');
7
+
8
+ var Condition = {
9
+ name: "BwaCondition",
10
+ props: {
11
+ modelValue: null,
12
+ column: Object,
13
+ record: Object
14
+ },
15
+ emits: ["on-change", "update:modelValue"],
16
+ setup(props, context) {
17
+ const {
18
+ component,
19
+ params
20
+ } = utils.useDynamicComponent(props, context, "BwaMultipleMenuCondition", "fullAttrName");
21
+ const slots = vue.useSlots();
22
+ return () => vue.h(vue.unref(component), {
23
+ ...vue.unref(params),
24
+ modelValue: props.modelValue,
25
+ "onUpdate:modelValue": (v) => {
26
+ context.emit("update:modelValue", v);
27
+ }
28
+ }, {
29
+ ...slots
30
+ });
31
+ }
32
+ };
33
+
34
+ exports["default"] = Condition;
@@ -0,0 +1,50 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var vue = require('vue');
6
+ var index = require('../../date-range/index.js');
7
+ var _pluginVue_exportHelper = require('../../_virtual/_plugin-vue_export-helper.js');
8
+
9
+ const __default__ = vue.defineComponent({
10
+ name: "BwaDateRangeCondition",
11
+ __conditionTitle__: "\u65E5\u671F\u9009\u62E9",
12
+ __conditionDefault__: () => ({ start: "", end: "" })
13
+ });
14
+ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
15
+ props: {
16
+ modelValue: {
17
+ type: null
18
+ },
19
+ valueFormat: {
20
+ type: String,
21
+ default: "YYYY-MM-DD"
22
+ }
23
+ },
24
+ emits: ["update:modelValue"],
25
+ setup(__props, { emit }) {
26
+ const props = __props;
27
+ const value = vue.computed({
28
+ get: () => props.modelValue,
29
+ set: (v) => {
30
+ emit("update:modelValue", v);
31
+ }
32
+ });
33
+ return (_ctx, _cache) => {
34
+ return vue.openBlock(), vue.createBlock(vue.unref(index.BwaDateRange), {
35
+ modelValue: vue.unref(value),
36
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => vue.isRef(value) ? value.value = $event : null),
37
+ multiple: true,
38
+ "value-format": __props.valueFormat
39
+ }, {
40
+ default: vue.withCtx(() => [
41
+ vue.renderSlot(_ctx.$slots, "default")
42
+ ]),
43
+ _: 3
44
+ }, 8, ["modelValue", "value-format"]);
45
+ };
46
+ }
47
+ });
48
+ var DateRangeCondition = /* @__PURE__ */ _pluginVue_exportHelper["default"](_sfc_main, [["__file", "date-range-condition.vue"]]);
49
+
50
+ exports["default"] = DateRangeCondition;