@gct-paas/core-web 0.1.6-dev.17 → 0.1.6-dev.19

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 (171) hide show
  1. package/dist/{JsBarcode-hbJ0aUTj.js → JsBarcode-nqhcZPvn.js} +2 -2
  2. package/dist/{_plugin-vue_export-helper-B8JDTS5A.js → _plugin-vue_export-helper-CyelNe0I.js} +2 -2
  3. package/dist/{chunk-FrdinjiM.js → chunk-C9ZKDnvz.js} +1 -1
  4. package/dist/components-DtFY5KCF.js +2 -0
  5. package/dist/{cropper-kXOaEuXy.js → cropper-BuY_n52N.js} +2 -2
  6. package/dist/{de_DE-CMOqPpMk.js → de_DE-B3kLT_zG.js} +2 -2
  7. package/dist/{defineProperty-DAxeR2uH.js → defineProperty-DiReHMuo.js} +1 -1
  8. package/dist/{diagram-config-item-DUh3mUtV.js → diagram-config-item-DYCiDqAy.js} +2 -2
  9. package/dist/{diagram-config-item-reverse-C-lK_M8W.js → diagram-config-item-reverse-BKf_yXvB.js} +2 -2
  10. package/dist/{diagram-config-item-virtual-2m1EFdOj.js → diagram-config-item-virtual-Dw36zOeJ.js} +2 -2
  11. package/dist/{en_US-DW_aBniN.js → en_US-tZ7NgN80.js} +2 -2
  12. package/dist/{es_ES-Bog1JAla.js → es_ES-DY2QXYwT.js} +2 -2
  13. package/dist/{fr_FR-B88CF-a2.js → fr_FR-DbN-1gO0.js} +2 -2
  14. package/dist/{hooks-xq807tVG.js → hooks-BuOffqGU.js} +2 -2
  15. package/dist/{icon-next-picker-COelGwZZ.js → icon-next-picker-BmnIn29K.js} +1 -1
  16. package/dist/index.min.css +1 -1
  17. package/dist/{ja_JP-DQorABU8.js → ja_JP-BRcXbHEH.js} +2 -2
  18. package/dist/loader.esm.min.js +2 -2
  19. package/dist/{monaco-editor-C9gHdPuf.js → monaco-editor-CHnBEX6V.js} +2 -2
  20. package/dist/{objectSpread2-DPfqyX1h.js → objectSpread2-BHKS0stT.js} +1 -1
  21. package/dist/{overlayscrollbars-vue-DMDFLsJ4.js → overlayscrollbars-vue-Cc8URtSg.js} +1 -1
  22. package/dist/{pt_PT-fO3ABuZp.js → pt_PT-DjiZFPmH.js} +2 -2
  23. package/dist/{relationship-diagram-config-D7HC1Hk4.js → relationship-diagram-config-BwVOMUAb.js} +2 -2
  24. package/dist/{rich-editor-BYF_B5mz.js → rich-editor-DfsJmv_B.js} +2 -2
  25. package/dist/{ru_RU-DqC5EhBW.js → ru_RU-Dw9N99Ox.js} +2 -2
  26. package/dist/template-D-UpvSne.js +2 -0
  27. package/dist/{tr_TR-Dau_nW2e.js → tr_TR-DCCv6rhK.js} +2 -2
  28. package/dist/{useMonacoEditor-Zk3dJDl-.js → useMonacoEditor-C3S2BSui.js} +2 -2
  29. package/dist/{vi_VN-BWVyxMZC.js → vi_VN-BNMXRAom.js} +2 -2
  30. package/dist/{zh_CN-CwWZ2JFL.js → zh_CN-ywcxTWfr.js} +2 -2
  31. package/dist/{zh_TW-NtzRUp8G.js → zh_TW-DL4FRJVy.js} +2 -2
  32. package/es/components/UserPick/src/user-pick.vue_vue_type_script_setup_true_lang.mjs +3 -3
  33. package/es/components/app-drawer/app-drawer-component.css +82 -0
  34. package/es/components/app-drawer/app-drawer-component.d.ts +26 -0
  35. package/es/components/app-drawer/app-drawer-component.mjs +84 -0
  36. package/es/components/batch-select-list/batch-select-list.css +119 -0
  37. package/es/components/batch-select-list/batch-select-list.d.ts +158 -0
  38. package/es/components/batch-select-list/batch-select-list.mjs +133 -0
  39. package/es/components/data-rules-modal/data-rules-modal.d.ts +67 -0
  40. package/es/components/data-rules-modal/data-rules-modal.mjs +99 -0
  41. package/es/components/design-save-tip/design-save-tip.css +107 -0
  42. package/es/components/design-save-tip/design-save-tip.d.ts +44 -0
  43. package/es/components/design-save-tip/design-save-tip.mjs +81 -0
  44. package/es/components/design-step-check/design-step-check.css +133 -0
  45. package/es/components/design-step-check/design-step-check.d.ts +30 -0
  46. package/es/components/design-step-check/design-step-check.mjs +96 -0
  47. package/es/components/design-view-layout/design-view-layout.css +157 -0
  48. package/es/components/design-view-layout/design-view-layout.d.ts +1 -0
  49. package/es/components/design-view-layout/design-view-layout.mjs +140 -0
  50. package/es/components/field-cascader/index.d.ts +2 -1
  51. package/es/components/index.d.ts +10 -2
  52. package/es/components/index.mjs +26 -0
  53. package/es/components/label-design/designer.vue.d.ts +2 -0
  54. package/es/components/label-design/designer.vue.mjs +7 -0
  55. package/es/components/label-design/designer.vue_vue_type_script_setup_true_lang.mjs +32 -0
  56. package/es/components/label-design/designer.vue_vue_type_style_index_0_scoped_260222c9_lang.css +32 -0
  57. package/es/components/label-design/header/header.vue.d.ts +6 -0
  58. package/es/components/label-design/header/header.vue.mjs +7 -0
  59. package/es/components/label-design/header/header.vue_vue_type_script_setup_true_lang.mjs +232 -0
  60. package/es/components/label-design/header/header.vue_vue_type_style_index_0_scoped_aa2b4235_lang.css +39 -0
  61. package/es/components/label-design/header/test-var-modal.vue.d.ts +204 -0
  62. package/es/components/label-design/header/test-var-modal.vue.mjs +7 -0
  63. package/es/components/label-design/header/test-var-modal.vue_vue_type_script_setup_true_lang.mjs +202 -0
  64. package/es/components/label-design/header/test-var-modal.vue_vue_type_style_index_0_scoped_972496bb_lang.css +69 -0
  65. package/es/components/label-design/index.d.ts +11 -1
  66. package/es/components/label-design/index.mjs +9 -0
  67. package/es/components/label-design/modal/template.vue_vue_type_script_setup_true_lang.mjs +1 -1
  68. package/es/components/label-design/panels/panel.vue_vue_type_script_setup_true_lang.mjs +1 -1
  69. package/es/components/label-design/panels/widget/components/label-params-select.vue.d.ts +35 -0
  70. package/es/components/label-design/panels/widget/controls/VariableSelect.vue_vue_type_script_setup_true_name_variable-select_lang.mjs +1 -1
  71. package/es/components/label-design/stage/stage.vue_vue_type_script_setup_true_lang.mjs +1 -1
  72. package/es/components/label-design/type/index.d.ts +15 -0
  73. package/es/components/label-design/type/index.mjs +11 -0
  74. package/es/components/modal-name-editor/modal-name-editor.css +117 -0
  75. package/es/components/modal-name-editor/modal-name-editor.d.ts +34 -0
  76. package/es/components/modal-name-editor/modal-name-editor.mjs +124 -0
  77. package/es/components/shrink-panel/shrink-panel.css +130 -0
  78. package/es/components/shrink-panel/shrink-panel.d.ts +23 -0
  79. package/es/components/shrink-panel/shrink-panel.mjs +41 -0
  80. package/es/components/ui/basic-grid/basic-grid.vue.d.ts +81 -0
  81. package/es/components/ui/basic-grid/basic-grid.vue.mjs +7 -0
  82. package/es/components/ui/basic-grid/basic-grid.vue_vue_type_script_setup_true_name_basic-grid_lang.mjs +134 -0
  83. package/es/components/ui/basic-grid/basic-grid.vue_vue_type_style_index_0_scoped_e9d09c1d_lang.css +90 -0
  84. package/es/components/ui/basic-grid/index.d.ts +3 -0
  85. package/es/components/ui/basic-grid/index.mjs +1 -0
  86. package/es/components/ui/basic-grid/types.d.ts +6 -0
  87. package/es/components/ui/embed-grid/embed-grid.vue.d.ts +62 -0
  88. package/es/components/ui/embed-grid/embed-grid.vue.mjs +7 -0
  89. package/es/components/ui/embed-grid/embed-grid.vue_vue_type_script_setup_true_name_embed-grid_lang.mjs +73 -0
  90. package/es/components/ui/embed-grid/index.d.ts +3 -0
  91. package/es/components/ui/embed-grid/index.mjs +1 -0
  92. package/es/components/ui/embed-grid/types.d.ts +5 -0
  93. package/es/components/ui/form-alert/form-alert.vue.d.ts +10 -0
  94. package/es/components/ui/form-alert/form-alert.vue.mjs +7 -0
  95. package/es/components/ui/form-alert/form-alert.vue_vue_type_script_setup_true_name_form-alert_lang.mjs +31 -0
  96. package/es/components/ui/form-alert/form-alert.vue_vue_type_style_index_0_scoped_a6bdad9c_lang.css +64 -0
  97. package/es/components/ui/grid-btns/grid-btns.vue.d.ts +2 -0
  98. package/es/components/ui/grid-btns/grid-btns.vue.mjs +7 -0
  99. package/es/components/ui/grid-btns/grid-btns.vue_vue_type_script_setup_true_name_grid-btns_lang.mjs +15 -0
  100. package/es/components/ui/grid-btns/grid-btns.vue_vue_type_style_index_0_scoped_e3385a9e_lang.css +70 -0
  101. package/es/components/ui/grid-pagination/grid-pagination.vue.d.ts +12 -0
  102. package/es/components/ui/grid-pagination/grid-pagination.vue.mjs +7 -0
  103. package/es/components/ui/grid-pagination/grid-pagination.vue_vue_type_script_setup_true_name_grid-pagination_lang.mjs +57 -0
  104. package/es/components/ui/grid-pagination/grid-pagination.vue_vue_type_style_index_0_scoped_4905eabf_lang.css +68 -0
  105. package/es/components/ui/grid-pagination/index.d.ts +3 -0
  106. package/es/components/ui/grid-pagination/index.mjs +1 -0
  107. package/es/components/ui/grid-pagination/types.d.ts +24 -0
  108. package/es/components/ui/highlight/highlight.vue.d.ts +6 -0
  109. package/es/components/ui/highlight/highlight.vue.mjs +7 -0
  110. package/es/components/ui/highlight/highlight.vue_vue_type_script_setup_true_name_highlight_lang.mjs +30 -0
  111. package/es/components/ui/highlight/highlight.vue_vue_type_style_index_0_scoped_e17c6606_lang.css +6 -0
  112. package/es/components/ui/icon-tooltip/icon-tooltip.vue.d.ts +10 -0
  113. package/es/components/ui/icon-tooltip/icon-tooltip.vue.mjs +7 -0
  114. package/es/components/ui/icon-tooltip/icon-tooltip.vue_vue_type_script_setup_true_name_icon-tooltip_lang.mjs +27 -0
  115. package/es/components/ui/icon-tooltip/icon-tooltip.vue_vue_type_style_index_0_scoped_a35580e4_lang.css +68 -0
  116. package/es/components/ui/index.d.ts +10 -0
  117. package/es/components/ui/index.mjs +12 -0
  118. package/es/components/ui/modal-wrapper/modal-wrapper.vue.d.ts +26 -0
  119. package/es/components/ui/modal-wrapper/modal-wrapper.vue.mjs +7 -0
  120. package/es/components/ui/modal-wrapper/modal-wrapper.vue_vue_type_script_setup_true_name_modal-wrapper_lang.mjs +78 -0
  121. package/es/components/ui/modal-wrapper/modal-wrapper.vue_vue_type_style_index_0_scoped_6b8a9609_lang.css +28 -0
  122. package/es/components/ui/notice/index.d.ts +8 -0
  123. package/es/components/ui/notice/index.mjs +31 -0
  124. package/es/create-app-vue.mjs +1 -1
  125. package/es/hooks/index.d.ts +1 -0
  126. package/es/hooks/index.mjs +1 -0
  127. package/es/hooks/usePrinter.d.ts +19 -0
  128. package/es/hooks/usePrinter.mjs +50 -0
  129. package/es/index.mjs +30 -3
  130. package/es/interface/i-view-step/i-view-step.d.ts +32 -0
  131. package/es/interface/index.d.ts +1 -0
  132. package/es/modules/category/category-sider.vue.d.ts +1 -1
  133. package/es/modules/category/category-sider.vue.mjs +2 -2
  134. package/es/modules/category/{category-sider.vue_vue_type_style_index_0_scoped_5b8c3a8d_lang.css → category-sider.vue_vue_type_style_index_0_scoped_2ad0d132_lang.css} +33 -33
  135. package/es/modules/color-picker/index.mjs +1 -1
  136. package/es/modules/gct-form/controller/editor-item/editor-item.controller.d.ts +1 -0
  137. package/es/modules/gct-form/controller/editor-item/editor-item.controller.mjs +11 -0
  138. package/es/modules/gct-form/editor/gct-form-date-range/form-date-range.css +67 -0
  139. package/es/modules/gct-form/editor/gct-form-date-range/form-date-range.d.ts +50 -0
  140. package/es/modules/gct-form/editor/gct-form-date-range/form-date-range.mjs +61 -0
  141. package/es/modules/gct-form/editor/gct-form-date-range/form-date-range.provider.d.ts +13 -0
  142. package/es/modules/gct-form/editor/gct-form-date-range/form-date-range.provider.mjs +15 -0
  143. package/es/modules/gct-form/editor/gct-form-date-range/index.d.ts +4 -0
  144. package/es/modules/gct-form/editor/gct-form-date-range/index.mjs +8 -0
  145. package/es/modules/gct-form/editor/gct-form-select/gct-form-select.mjs +1 -1
  146. package/es/modules/gct-form/editor/index.mjs +2 -1
  147. package/es/modules/gct-form/hooks/index.d.ts +1 -0
  148. package/es/modules/gct-form/hooks/index.mjs +1 -0
  149. package/es/modules/gct-form/hooks/use-form-value/use-form-value.d.ts +11 -0
  150. package/es/modules/gct-form/hooks/use-form-value/use-form-value.mjs +27 -0
  151. package/es/modules/gct-form/index.mjs +3 -0
  152. package/es/modules/gct-form/widgets/gct-search-form/form/app-form.css +70 -0
  153. package/es/modules/gct-form/widgets/gct-search-form/form/app-form.d.ts +22 -0
  154. package/es/modules/gct-form/widgets/gct-search-form/form/app-form.mjs +106 -0
  155. package/es/modules/gct-form/widgets/gct-search-form/form-item/form-item.css +73 -0
  156. package/es/modules/gct-form/widgets/gct-search-form/form-item/form-item.d.ts +15 -0
  157. package/es/modules/gct-form/widgets/gct-search-form/form-item/form-item.mjs +22 -0
  158. package/es/modules/gct-form/widgets/gct-search-form/form.controller.d.ts +46 -0
  159. package/es/modules/gct-form/widgets/gct-search-form/form.controller.mjs +69 -0
  160. package/es/modules/gct-form/widgets/gct-search-form/form.state.d.ts +10 -0
  161. package/es/modules/gct-form/widgets/gct-search-form/form.state.mjs +13 -0
  162. package/es/modules/gct-form/widgets/gct-search-form/gct-search-form.css +83 -0
  163. package/es/modules/gct-form/widgets/gct-search-form/gct-search-form.d.ts +33 -0
  164. package/es/modules/gct-form/widgets/gct-search-form/gct-search-form.mjs +56 -0
  165. package/es/modules/global-modal/src/components/ModalWrapper.vue_vue_type_script_lang.mjs +1 -1
  166. package/es/types/index.d.ts +1 -1
  167. package/es/utils/overlay-controller/overlay-controller.d.ts +3 -1
  168. package/es/utils/overlay-controller/overlay-controller.mjs +9 -0
  169. package/package.json +12 -8
  170. package/dist/ColorPicker-BGXmyt7q.js +0 -2
  171. package/dist/template-DwBghb9z.js +0 -2
@@ -0,0 +1,119 @@
1
+ @charset "UTF-8";
2
+ /* stylelint-disable scss/no-global-function-names */
3
+ /* bem('block', 'element', 'modifier') => 'ibiz-block__element--modifier' */
4
+ /**
5
+ * 定义 Block 块
6
+ * @param {String} $block - Block 块名称
7
+ * @example
8
+ * @include b('button') {
9
+ * padding: 10px;
10
+ * }
11
+ */
12
+ /**
13
+ * 定义 Element 元素
14
+ * @param {String|List} $element - Element 元素名称,支持单个或多个
15
+ * @example
16
+ * @include b('button') {
17
+ * @include e('text') {
18
+ * color: #000;
19
+ * }
20
+ * }
21
+ * // 或传入多个元素
22
+ * @include b('button') {
23
+ * @include e(('text', 'icon')) {
24
+ * margin: 5px;
25
+ * }
26
+ * }
27
+ */
28
+ /**
29
+ * 定义 Modifier 修饰符
30
+ * @param {String|List} $modifier - Modifier 修饰符名称,支持单个或多个
31
+ * @example
32
+ * @include b('button') {
33
+ * @include m('primary') {
34
+ * background: blue;
35
+ * }
36
+ * }
37
+ * // 或传入多个修饰符
38
+ * @include b('button') {
39
+ * @include m(('primary', 'large')) {
40
+ * background: blue;
41
+ * font-size: 16px;
42
+ * }
43
+ * }
44
+ */
45
+ /**
46
+ * 定义状态选择器
47
+ * @param {String} $state - 状态名称
48
+ * @example
49
+ * @include b('button') {
50
+ * @include when('disabled') {
51
+ * opacity: 0.5;
52
+ * }
53
+ * }
54
+ */
55
+ /**
56
+ * 深色主题样式
57
+ * @param {String} $block - Block 块名称
58
+ * @example
59
+ * @include dark('button') {
60
+ * background: #333;
61
+ * color: #fff;
62
+ * }
63
+ */
64
+ /* stylelint-disable scss/no-global-function-names */
65
+ .gct-batch-select-list {
66
+ width: 100%;
67
+ height: 100%;
68
+ }
69
+ .gct-batch-select-list__header {
70
+ display: flex;
71
+ align-items: center;
72
+ width: 100%;
73
+ height: 44px;
74
+ padding: 0 22px;
75
+ font-size: 14px;
76
+ line-height: 22px;
77
+ }
78
+
79
+ .gct-batch-select-list__body {
80
+ width: 100%;
81
+ height: calc(100% - 44px);
82
+ padding: 0 var(--gct-padding-7);
83
+ overflow-y: auto;
84
+ }
85
+ .gct-batch-select-list__body .ant-checkbox-group {
86
+ width: 100%;
87
+ }
88
+
89
+ .gct-batch-select-list__item {
90
+ display: flex;
91
+ align-items: center;
92
+ width: 100%;
93
+ height: 44px;
94
+ padding: 0 var(--gct-padding-3);
95
+ cursor: pointer;
96
+ }
97
+ .gct-batch-select-list__item .ant-checkbox-wrapper {
98
+ display: flex;
99
+ align-items: center;
100
+ width: 100%;
101
+ height: 44px;
102
+ }
103
+ .gct-batch-select-list__item .ant-checkbox-wrapper .ant-checkbox {
104
+ margin-top: -6px;
105
+ }
106
+ .gct-batch-select-list__item .ant-checkbox-wrapper > span:not(.ant-checkbox) {
107
+ width: 100%;
108
+ }
109
+ .gct-batch-select-list__item {
110
+ font-size: 14px;
111
+ line-height: 22px;
112
+ }
113
+ .gct-batch-select-list__item.is-select {
114
+ background-color: rgb(230, 238, 255);
115
+ }
116
+
117
+ .gct-batch-select-list__item:hover {
118
+ background-color: rgb(242, 244, 247);
119
+ }
@@ -0,0 +1,158 @@
1
+ /**
2
+ * @description 批量选择列表组件,提供全选和单选功能。
3
+ * @example
4
+ * <BatchSelectList v-model:value="selectedItems" :options="allItems" />
5
+ */
6
+ export declare const BatchSelectList: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
7
+ /**
8
+ * 当前选中的值数组
9
+ */
10
+ value: {
11
+ type: {
12
+ (arrayLength: number): string[];
13
+ (...items: string[]): string[];
14
+ new (arrayLength: number): string[];
15
+ new (...items: string[]): string[];
16
+ isArray(arg: any): arg is any[];
17
+ readonly prototype: any[];
18
+ from<T>(arrayLike: ArrayLike<T>): T[];
19
+ from<T, U>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[];
20
+ from<T>(iterable: Iterable<T> | ArrayLike<T>): T[];
21
+ from<T, U>(iterable: Iterable<T> | ArrayLike<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[];
22
+ of<T>(...items: T[]): T[];
23
+ readonly [Symbol.species]: ArrayConstructor;
24
+ fromAsync<T>(iterableOrArrayLike: AsyncIterable<T> | Iterable<T | PromiseLike<T>> | ArrayLike<T | PromiseLike<T>>): Promise<T[]>;
25
+ fromAsync<T, U>(iterableOrArrayLike: AsyncIterable<T> | Iterable<T> | ArrayLike<T>, mapFn: (value: Awaited<T>, index: number) => U, thisArg?: any): Promise<Awaited<U>[]>;
26
+ };
27
+ required: true;
28
+ };
29
+ /**
30
+ * 可选项列表
31
+ * @type {Array<{ label: string; value: string }>}
32
+ */
33
+ options: {
34
+ type: {
35
+ (arrayLength: number): {
36
+ label: string;
37
+ value: string;
38
+ }[];
39
+ (...items: {
40
+ label: string;
41
+ value: string;
42
+ }[]): {
43
+ label: string;
44
+ value: string;
45
+ }[];
46
+ new (arrayLength: number): {
47
+ label: string;
48
+ value: string;
49
+ }[];
50
+ new (...items: {
51
+ label: string;
52
+ value: string;
53
+ }[]): {
54
+ label: string;
55
+ value: string;
56
+ }[];
57
+ isArray(arg: any): arg is any[];
58
+ readonly prototype: any[];
59
+ from<T>(arrayLike: ArrayLike<T>): T[];
60
+ from<T, U>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[];
61
+ from<T>(iterable: Iterable<T> | ArrayLike<T>): T[];
62
+ from<T, U>(iterable: Iterable<T> | ArrayLike<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[];
63
+ of<T>(...items: T[]): T[];
64
+ readonly [Symbol.species]: ArrayConstructor;
65
+ fromAsync<T>(iterableOrArrayLike: AsyncIterable<T> | Iterable<T | PromiseLike<T>> | ArrayLike<T | PromiseLike<T>>): Promise<T[]>;
66
+ fromAsync<T, U>(iterableOrArrayLike: AsyncIterable<T> | Iterable<T> | ArrayLike<T>, mapFn: (value: Awaited<T>, index: number) => U, thisArg?: any): Promise<Awaited<U>[]>;
67
+ };
68
+ default: () => never[];
69
+ };
70
+ /**
71
+ * 可选项的总数,如果未提供,则使用 options.length
72
+ * 用于计算全选状态,特别是当 options 列表是分页加载时
73
+ */
74
+ size: {
75
+ type: NumberConstructor;
76
+ };
77
+ }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("cancelSelect" | "checkAll" | "select" | "update:value")[], "cancelSelect" | "checkAll" | "select" | "update:value", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
78
+ /**
79
+ * 当前选中的值数组
80
+ */
81
+ value: {
82
+ type: {
83
+ (arrayLength: number): string[];
84
+ (...items: string[]): string[];
85
+ new (arrayLength: number): string[];
86
+ new (...items: string[]): string[];
87
+ isArray(arg: any): arg is any[];
88
+ readonly prototype: any[];
89
+ from<T>(arrayLike: ArrayLike<T>): T[];
90
+ from<T, U>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[];
91
+ from<T>(iterable: Iterable<T> | ArrayLike<T>): T[];
92
+ from<T, U>(iterable: Iterable<T> | ArrayLike<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[];
93
+ of<T>(...items: T[]): T[];
94
+ readonly [Symbol.species]: ArrayConstructor;
95
+ fromAsync<T>(iterableOrArrayLike: AsyncIterable<T> | Iterable<T | PromiseLike<T>> | ArrayLike<T | PromiseLike<T>>): Promise<T[]>;
96
+ fromAsync<T, U>(iterableOrArrayLike: AsyncIterable<T> | Iterable<T> | ArrayLike<T>, mapFn: (value: Awaited<T>, index: number) => U, thisArg?: any): Promise<Awaited<U>[]>;
97
+ };
98
+ required: true;
99
+ };
100
+ /**
101
+ * 可选项列表
102
+ * @type {Array<{ label: string; value: string }>}
103
+ */
104
+ options: {
105
+ type: {
106
+ (arrayLength: number): {
107
+ label: string;
108
+ value: string;
109
+ }[];
110
+ (...items: {
111
+ label: string;
112
+ value: string;
113
+ }[]): {
114
+ label: string;
115
+ value: string;
116
+ }[];
117
+ new (arrayLength: number): {
118
+ label: string;
119
+ value: string;
120
+ }[];
121
+ new (...items: {
122
+ label: string;
123
+ value: string;
124
+ }[]): {
125
+ label: string;
126
+ value: string;
127
+ }[];
128
+ isArray(arg: any): arg is any[];
129
+ readonly prototype: any[];
130
+ from<T>(arrayLike: ArrayLike<T>): T[];
131
+ from<T, U>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[];
132
+ from<T>(iterable: Iterable<T> | ArrayLike<T>): T[];
133
+ from<T, U>(iterable: Iterable<T> | ArrayLike<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[];
134
+ of<T>(...items: T[]): T[];
135
+ readonly [Symbol.species]: ArrayConstructor;
136
+ fromAsync<T>(iterableOrArrayLike: AsyncIterable<T> | Iterable<T | PromiseLike<T>> | ArrayLike<T | PromiseLike<T>>): Promise<T[]>;
137
+ fromAsync<T, U>(iterableOrArrayLike: AsyncIterable<T> | Iterable<T> | ArrayLike<T>, mapFn: (value: Awaited<T>, index: number) => U, thisArg?: any): Promise<Awaited<U>[]>;
138
+ };
139
+ default: () => never[];
140
+ };
141
+ /**
142
+ * 可选项的总数,如果未提供,则使用 options.length
143
+ * 用于计算全选状态,特别是当 options 列表是分页加载时
144
+ */
145
+ size: {
146
+ type: NumberConstructor;
147
+ };
148
+ }>> & Readonly<{
149
+ onCancelSelect?: ((...args: any[]) => any) | undefined;
150
+ onCheckAll?: ((...args: any[]) => any) | undefined;
151
+ onSelect?: ((...args: any[]) => any) | undefined;
152
+ "onUpdate:value"?: ((...args: any[]) => any) | undefined;
153
+ }>, {
154
+ options: {
155
+ label: string;
156
+ value: string;
157
+ }[];
158
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
@@ -0,0 +1,133 @@
1
+ import './batch-select-list.css';/* empty css */
2
+ import { computed, createTextVNode, createVNode, defineComponent, isVNode, ref, resolveComponent, toRefs, watch } from "vue";
3
+ import { debounce } from "lodash-es";
4
+ import { useNamespace } from "@gct-paas/core";
5
+ //#region src/components/batch-select-list/batch-select-list.tsx
6
+ /**
7
+ * @description 批量选择列表组件,提供全选和单选功能。
8
+ * @example
9
+ * <BatchSelectList v-model:value="selectedItems" :options="allItems" />
10
+ */
11
+ function _isSlot(s) {
12
+ return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
13
+ }
14
+ var BatchSelectList = /* @__PURE__ */ defineComponent({
15
+ name: "BatchSelectList",
16
+ props: {
17
+ /**
18
+ * 当前选中的值数组
19
+ */
20
+ value: {
21
+ type: Array,
22
+ required: true
23
+ },
24
+ /**
25
+ * 可选项列表
26
+ * @type {Array<{ label: string; value: string }>}
27
+ */
28
+ options: {
29
+ type: Array,
30
+ default: () => []
31
+ },
32
+ /**
33
+ * 可选项的总数,如果未提供,则使用 options.length
34
+ * 用于计算全选状态,特别是当 options 列表是分页加载时
35
+ */
36
+ size: { type: Number }
37
+ },
38
+ emits: [
39
+ "update:value",
40
+ "select",
41
+ "cancelSelect",
42
+ "checkAll"
43
+ ],
44
+ setup(props, { emit }) {
45
+ const ns = useNamespace("batch-select-list");
46
+ const { options, value, size } = toRefs(props);
47
+ watch(value, (newVal) => {
48
+ val.value = newVal;
49
+ });
50
+ const val = ref(value.value);
51
+ /**
52
+ * 计算列表的总项目数
53
+ * @returns {number} 如果 props.size 有效则返回 props.size,否则返回 props.options 的长度
54
+ */
55
+ const count = computed(() => {
56
+ if (size.value != null && size.value > 0) return size.value;
57
+ return options.value.length;
58
+ });
59
+ /**
60
+ * 全选复选框的选中状态
61
+ */
62
+ const isCheckAll = ref(false);
63
+ watch(options, () => {
64
+ isCheckAll.value = val.value.length === count.value;
65
+ });
66
+ /**
67
+ * 计算全选复选框的半选状态
68
+ * @returns {boolean} 当已选项目数大于0且小于总项目数时为 true
69
+ */
70
+ const indeterminate = computed(() => {
71
+ return val.value.length > 0 && val.value.length < options.value.length;
72
+ });
73
+ /**
74
+ * @description 全选复选框状态变更时的处理函数
75
+ * @param {Event} e - 事件对象,期望 e.target.checked 存在
76
+ * @returns {void}
77
+ */
78
+ function onCheckAllChange(e) {
79
+ if (e.target.checked) options.value.forEach((opt) => {
80
+ if (!val.value.includes(opt.value)) val.value.push(opt.value);
81
+ });
82
+ else val.value = val.value.filter((item) => {
83
+ return !options.value.some((opt) => opt.value === item);
84
+ });
85
+ emit("update:value", val.value);
86
+ emit("checkAll", val.value);
87
+ }
88
+ /**
89
+ * 单个复选框状态变更时的处理函数(通过点击项目触发)
90
+ *
91
+ * @param {MouseEvent} e - 事件对象
92
+ * @param {string} id - 发生变更的复选框的 value
93
+ */
94
+ const onCheckChange = debounce((e, id) => {
95
+ e.stopPropagation();
96
+ const index = val.value.indexOf(id);
97
+ const newValue = [...val.value];
98
+ if (index > -1) {
99
+ newValue.splice(index, 1);
100
+ emit("cancelSelect", id);
101
+ } else {
102
+ newValue.push(id);
103
+ emit("select", id);
104
+ }
105
+ val.value = newValue;
106
+ emit("update:value", val.value);
107
+ isCheckAll.value = val.value.length === count.value;
108
+ }, 30);
109
+ return () => {
110
+ let _slot;
111
+ return createVNode("div", { "class": ns.b() }, [createVNode("div", { "class": ns.e("header") }, [createVNode(resolveComponent("a-checkbox"), {
112
+ "checked": isCheckAll.value,
113
+ "onUpdate:checked": ($event) => isCheckAll.value = $event,
114
+ "indeterminate": indeterminate.value,
115
+ "onChange": onCheckAllChange
116
+ }, { default: () => [
117
+ createTextVNode("全选("),
118
+ val.value.length,
119
+ createTextVNode("/"),
120
+ count.value,
121
+ createTextVNode(")")
122
+ ] })]), createVNode("div", { "class": ns.e("body") }, [createVNode(resolveComponent("a-checkbox-group"), { "value": val.value }, _isSlot(_slot = options.value.map((opt) => {
123
+ return createVNode("div", {
124
+ "class": [ns.e("item"), ns.is("select", val.value.includes(opt.value))],
125
+ "key": opt.value,
126
+ "onClick": (e) => onCheckChange(e, opt.value)
127
+ }, [createVNode(resolveComponent("a-checkbox"), { "value": opt.value }, { default: () => [opt.label] })]);
128
+ })) ? _slot : { default: () => [_slot] })])]);
129
+ };
130
+ }
131
+ });
132
+ //#endregion
133
+ export { BatchSelectList };
@@ -0,0 +1,67 @@
1
+ import { PropType } from 'vue';
2
+ import { FIELD_TYPE, IModal } from '@gct-paas/core';
3
+ /**
4
+ * 字段条件规则配置模态框
5
+ */
6
+ export declare const DataRulesModal: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
7
+ modal: {
8
+ type: PropType<IModal>;
9
+ required: true;
10
+ };
11
+ detail: {
12
+ type: PropType<IObject>;
13
+ default: () => {
14
+ dataRule: string;
15
+ dataRuleConfig: string;
16
+ dataRuleEnabled: boolean;
17
+ };
18
+ };
19
+ modelKey: {
20
+ type: PropType<string>;
21
+ default: string;
22
+ };
23
+ excludeValueType: {
24
+ type: PropType<string[]>;
25
+ default: () => never[];
26
+ };
27
+ excludeOperatorType: {
28
+ type: PropType<string[]>;
29
+ default: () => never[];
30
+ };
31
+ filterFieldKeys: {
32
+ type: PropType<FIELD_TYPE[]>;
33
+ };
34
+ }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
35
+ modal: {
36
+ type: PropType<IModal>;
37
+ required: true;
38
+ };
39
+ detail: {
40
+ type: PropType<IObject>;
41
+ default: () => {
42
+ dataRule: string;
43
+ dataRuleConfig: string;
44
+ dataRuleEnabled: boolean;
45
+ };
46
+ };
47
+ modelKey: {
48
+ type: PropType<string>;
49
+ default: string;
50
+ };
51
+ excludeValueType: {
52
+ type: PropType<string[]>;
53
+ default: () => never[];
54
+ };
55
+ excludeOperatorType: {
56
+ type: PropType<string[]>;
57
+ default: () => never[];
58
+ };
59
+ filterFieldKeys: {
60
+ type: PropType<FIELD_TYPE[]>;
61
+ };
62
+ }>> & Readonly<{}>, {
63
+ detail: IObject;
64
+ modelKey: string;
65
+ excludeValueType: string[];
66
+ excludeOperatorType: string[];
67
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
@@ -0,0 +1,99 @@
1
+ import { createVNode, defineComponent, provide, ref, resolveComponent } from "vue";
2
+ import { FIELD_TYPE, useNamespace } from "@gct-paas/core";
3
+ //#region src/components/data-rules-modal/data-rules-modal.tsx
4
+ /**
5
+ * 字段条件规则配置模态框
6
+ */
7
+ var DataRulesModal = /* @__PURE__ */ defineComponent({
8
+ name: "DataRulesModal",
9
+ props: {
10
+ modal: {
11
+ type: Object,
12
+ required: true
13
+ },
14
+ detail: {
15
+ type: Object,
16
+ default: () => ({
17
+ dataRule: "",
18
+ dataRuleConfig: "",
19
+ dataRuleEnabled: true
20
+ })
21
+ },
22
+ modelKey: {
23
+ type: String,
24
+ default: ""
25
+ },
26
+ excludeValueType: {
27
+ type: Array,
28
+ default: () => []
29
+ },
30
+ excludeOperatorType: {
31
+ type: Array,
32
+ default: () => []
33
+ },
34
+ filterFieldKeys: { type: Object }
35
+ },
36
+ setup(props) {
37
+ const ns = useNamespace("data-rules-modal");
38
+ const dataRulesRef = ref();
39
+ provide("isDataFilterEditor", true);
40
+ if (props.modal) props.modal.callback(async () => {
41
+ const dataRulesRes = dataRulesRef.value.getDataRulesResult();
42
+ dataRulesRef.value.resetData();
43
+ return {
44
+ ok: true,
45
+ data: [{
46
+ dataRule: {
47
+ query: dataRulesRes.query,
48
+ varKeys: dataRulesRes.varKeys,
49
+ exp: dataRulesRes.exp,
50
+ typeMap: dataRulesRes?.typeMap || {}
51
+ },
52
+ dataRuleConfig: dataRulesRes.treeStr,
53
+ dataRuleEnabled: true
54
+ }]
55
+ };
56
+ }, async () => {
57
+ dataRulesRef.value.resetData();
58
+ return true;
59
+ });
60
+ const list = ref([]);
61
+ const getConditionField = async (modelKey) => {
62
+ const result = await _api.apaas.fieldMeta.getListConditionField({ modelKey }) || [];
63
+ const filterFieldKeys = props.filterFieldKeys || [
64
+ FIELD_TYPE.TEXT,
65
+ FIELD_TYPE.LONG_TEXT,
66
+ FIELD_TYPE.INTEGER,
67
+ FIELD_TYPE.LONG,
68
+ FIELD_TYPE.DOUBLE,
69
+ FIELD_TYPE.DECIMAL,
70
+ FIELD_TYPE.BOOLEAN,
71
+ FIELD_TYPE.DATE,
72
+ FIELD_TYPE.DATE_TIME,
73
+ FIELD_TYPE.TIME,
74
+ FIELD_TYPE.ENUM,
75
+ FIELD_TYPE.ENUM_MULTI,
76
+ FIELD_TYPE.REF,
77
+ FIELD_TYPE.REF_MULTI
78
+ ];
79
+ list.value = result.filter((i) => filterFieldKeys.includes(i.type)).filter((v) => v.createType === "USER_DEFINED" || v.createType === "BUILTIN");
80
+ };
81
+ async function onInit() {
82
+ if (props.modelKey) getConditionField(props.modelKey);
83
+ }
84
+ onInit();
85
+ return () => {
86
+ return createVNode("div", { "class": ns.b() }, [createVNode(resolveComponent("data-rules-container"), {
87
+ "ref": "dataRulesRef",
88
+ "fieldList": list.value,
89
+ "detail": props.detail,
90
+ "isDesign": true,
91
+ "isPageDesigner": true,
92
+ "excludeValueType": props.excludeValueType,
93
+ "excludeOperatorType": props.excludeOperatorType
94
+ }, null)]);
95
+ };
96
+ }
97
+ });
98
+ //#endregion
99
+ export { DataRulesModal };
@@ -0,0 +1,107 @@
1
+ @charset "UTF-8";
2
+ /* stylelint-disable scss/no-global-function-names */
3
+ /* bem('block', 'element', 'modifier') => 'ibiz-block__element--modifier' */
4
+ /**
5
+ * 定义 Block 块
6
+ * @param {String} $block - Block 块名称
7
+ * @example
8
+ * @include b('button') {
9
+ * padding: 10px;
10
+ * }
11
+ */
12
+ /**
13
+ * 定义 Element 元素
14
+ * @param {String|List} $element - Element 元素名称,支持单个或多个
15
+ * @example
16
+ * @include b('button') {
17
+ * @include e('text') {
18
+ * color: #000;
19
+ * }
20
+ * }
21
+ * // 或传入多个元素
22
+ * @include b('button') {
23
+ * @include e(('text', 'icon')) {
24
+ * margin: 5px;
25
+ * }
26
+ * }
27
+ */
28
+ /**
29
+ * 定义 Modifier 修饰符
30
+ * @param {String|List} $modifier - Modifier 修饰符名称,支持单个或多个
31
+ * @example
32
+ * @include b('button') {
33
+ * @include m('primary') {
34
+ * background: blue;
35
+ * }
36
+ * }
37
+ * // 或传入多个修饰符
38
+ * @include b('button') {
39
+ * @include m(('primary', 'large')) {
40
+ * background: blue;
41
+ * font-size: 16px;
42
+ * }
43
+ * }
44
+ */
45
+ /**
46
+ * 定义状态选择器
47
+ * @param {String} $state - 状态名称
48
+ * @example
49
+ * @include b('button') {
50
+ * @include when('disabled') {
51
+ * opacity: 0.5;
52
+ * }
53
+ * }
54
+ */
55
+ /**
56
+ * 深色主题样式
57
+ * @param {String} $block - Block 块名称
58
+ * @example
59
+ * @include dark('button') {
60
+ * background: #333;
61
+ * color: #fff;
62
+ * }
63
+ */
64
+ /* stylelint-disable scss/no-global-function-names */
65
+ .gct-design-save-tip {
66
+ position: relative;
67
+ width: 316px;
68
+ height: 140px;
69
+ padding: var(--gct-padding-7);
70
+ padding-left: 38px;
71
+ }
72
+ .gct-design-save-tip__tip-icon {
73
+ position: absolute;
74
+ top: 17px;
75
+ left: 16px;
76
+ font-size: 16px;
77
+ }
78
+
79
+ .gct-design-save-tip__header {
80
+ font-size: 14px;
81
+ font-weight: bold;
82
+ color: #1A1D23;
83
+ }
84
+
85
+ .gct-design-save-tip__content {
86
+ margin-top: 2px;
87
+ font-size: 14px;
88
+ color: var(--gct-color-text-4);
89
+ }
90
+
91
+ .gct-design-save-tip__footer {
92
+ margin-top: 16px;
93
+ }
94
+ .gct-design-save-tip__footer .ant-btn-link {
95
+ padding-right: 0;
96
+ padding-left: 0;
97
+ margin-right: 40px;
98
+ }
99
+
100
+ .gct-design-save-tip__cancel-btn {
101
+ width: 62px;
102
+ margin-right: 12px;
103
+ }
104
+
105
+ .gct-design-save-tip__save-exit {
106
+ width: 90px;
107
+ }