ll-plus 2.4.8 → 2.4.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.
- package/es/components/advanced-filtering/index.d.ts +302 -302
- package/es/components/advanced-filtering/src/advanced-filtering.d.ts +2 -1
- package/es/components/advanced-filtering/src/advanced-filtering.vue.d.ts +153 -153
- package/es/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +145 -145
- package/es/components/advanced-filtering/src/components/advanced-filtering-tags.vue.d.ts +4 -4
- package/es/components/api-component/index.d.ts +32 -32
- package/es/components/api-component/src/api-component.vue.d.ts +32 -32
- package/es/components/api-component/src/components/api-modal.vue.d.ts +6 -6
- package/es/components/api-component/src/components/body-component.vue.d.ts +14 -14
- package/es/components/api-component/src/components/click-input.vue.d.ts +10 -10
- package/es/components/api-component/src/components/params-table-row.vue.d.ts +12 -12
- package/es/components/api-component/src/components/params-table.vue.d.ts +14 -14
- package/es/components/api-component/src/config/api-modal.d.ts +1 -1
- package/es/components/api-component/src/config/click-input.d.ts +1 -1
- package/es/components/checkbox/index.d.ts +217 -217
- package/es/components/checkbox/src/checkbox-group.vue.d.ts +217 -217
- package/es/components/checkbox/src/checkbox.d.ts +56 -56
- package/es/components/code-editor/index.d.ts +2 -2
- package/es/components/code-editor/src/code-editor.vue.d.ts +2 -2
- package/es/components/cropper/index.d.ts +4 -4
- package/es/components/cropper/src/cropper-image.vue.d.ts +2 -2
- package/es/components/cropper/src/cropper-modal.vue.d.ts +2 -2
- package/es/components/drawer/index.d.ts +11 -11
- package/es/components/drawer/src/components/second-confirmation/index.d.ts +9 -9
- package/es/components/drawer/src/components/second-confirmation/src/second-confirmation.vue.d.ts +9 -9
- package/es/components/drawer/src/drawer.vue.d.ts +11 -11
- package/es/components/easy-cron/index.d.ts +82 -82
- package/es/components/easy-cron/src/components/easy-cron-inner.vue.d.ts +77 -77
- package/es/components/easy-cron/src/components/easy-cron-modal.vue.d.ts +77 -77
- package/es/components/easy-cron/src/easy-cron.vue.d.ts +82 -82
- package/es/components/empty/index.d.ts +2 -2
- package/es/components/empty/src/empty.vue.d.ts +2 -2
- package/es/components/form/index.d.ts +142 -142
- package/es/components/form/src/config/form.d.ts +56 -56
- package/es/components/form/src/form.vue.d.ts +142 -142
- package/es/components/input/index.d.ts +31 -31
- package/es/components/input/src/input.vue.d.ts +31 -31
- package/es/components/key-value/index.d.ts +684 -684
- package/es/components/key-value/src/components/key-value-item.vue.d.ts +228 -228
- package/es/components/key-value/src/key-value.vue.d.ts +684 -684
- package/es/components/modal/index.d.ts +4 -4
- package/es/components/modal/src/modal.vue.d.ts +4 -4
- package/es/components/rich-text-editor/index.d.ts +1 -1
- package/es/components/rich-text-editor/src/rich-text-editor.vue.d.ts +1 -1
- package/es/components/select/index.d.ts +11 -11
- package/es/components/select/src/select.vue.d.ts +11 -11
- package/es/components/select-group/index.d.ts +2 -2
- package/es/components/select-group/src/select-group.vue.d.ts +2 -2
- package/es/components/table/index.d.ts +6 -23
- package/es/components/table/src/components/main-table.vue.d.ts +2 -15
- package/es/components/table/src/config/main-table.d.ts +0 -10
- package/es/components/table/src/config/table.d.ts +2 -4
- package/es/components/table/src/table.vue.d.ts +6 -23
- package/es/components/textarea/index.d.ts +5 -5
- package/es/components/textarea/src/textarea.vue.d.ts +5 -5
- package/es/components/tooltip/index.d.ts +4 -4
- package/es/components/tooltip/src/tooltip.d.ts +1 -1
- package/es/components/tooltip/src/tooltip.vue.d.ts +4 -4
- package/es/components/tree-search/index.d.ts +15 -15
- package/es/components/tree-search/src/config/tree-search.d.ts +4 -4
- package/es/components/tree-search/src/tree-search.vue.d.ts +15 -15
- package/es/components/upload-drag/index.d.ts +4 -4
- package/es/components/upload-drag/src/upload-drag.vue.d.ts +4 -4
- package/es/index.mjs +1 -1
- package/es/packages/components/advanced-filtering/index.mjs +1 -1
- package/es/packages/components/advanced-filtering/src/advanced-filtering.mjs +22 -13
- package/es/packages/components/advanced-filtering/src/advanced-filtering.mjs.map +1 -1
- package/es/packages/components/advanced-filtering/src/components/advanced-filtering-params.vue2.mjs +5 -9
- package/es/packages/components/advanced-filtering/src/components/advanced-filtering-params.vue2.mjs.map +1 -1
- package/es/packages/components/advanced-filtering/src/components/advanced-filtering-tags.vue2.mjs +4 -3
- package/es/packages/components/advanced-filtering/src/components/advanced-filtering-tags.vue2.mjs.map +1 -1
- package/es/packages/components/index.mjs +1 -1
- package/es/packages/components/select-group/src/select-group.vue2.mjs +2 -1
- package/es/packages/components/select-group/src/select-group.vue2.mjs.map +1 -1
- package/es/packages/components/table/src/components/main-table.vue2.mjs +1 -6
- package/es/packages/components/table/src/components/main-table.vue2.mjs.map +1 -1
- package/es/packages/components/table/src/config/main-table.mjs +3 -3
- package/es/packages/components/table/src/config/main-table.mjs.map +1 -1
- package/index.full.js +417 -151
- package/index.full.min.js +20 -20
- package/index.full.min.js.map +1 -1
- package/index.full.min.mjs +20 -20
- package/index.full.min.mjs.map +1 -1
- package/index.full.mjs +417 -152
- package/lib/components/advanced-filtering/index.d.ts +302 -302
- package/lib/components/advanced-filtering/src/advanced-filtering.d.ts +2 -1
- package/lib/components/advanced-filtering/src/advanced-filtering.vue.d.ts +153 -153
- package/lib/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +145 -145
- package/lib/components/advanced-filtering/src/components/advanced-filtering-tags.vue.d.ts +4 -4
- package/lib/components/api-component/index.d.ts +32 -32
- package/lib/components/api-component/src/api-component.vue.d.ts +32 -32
- package/lib/components/api-component/src/components/api-modal.vue.d.ts +6 -6
- package/lib/components/api-component/src/components/body-component.vue.d.ts +14 -14
- package/lib/components/api-component/src/components/click-input.vue.d.ts +10 -10
- package/lib/components/api-component/src/components/params-table-row.vue.d.ts +12 -12
- package/lib/components/api-component/src/components/params-table.vue.d.ts +14 -14
- package/lib/components/api-component/src/config/api-modal.d.ts +1 -1
- package/lib/components/api-component/src/config/click-input.d.ts +1 -1
- package/lib/components/checkbox/index.d.ts +217 -217
- package/lib/components/checkbox/src/checkbox-group.vue.d.ts +217 -217
- package/lib/components/checkbox/src/checkbox.d.ts +56 -56
- package/lib/components/code-editor/index.d.ts +2 -2
- package/lib/components/code-editor/src/code-editor.vue.d.ts +2 -2
- package/lib/components/cropper/index.d.ts +4 -4
- package/lib/components/cropper/src/cropper-image.vue.d.ts +2 -2
- package/lib/components/cropper/src/cropper-modal.vue.d.ts +2 -2
- package/lib/components/drawer/index.d.ts +11 -11
- package/lib/components/drawer/src/components/second-confirmation/index.d.ts +9 -9
- package/lib/components/drawer/src/components/second-confirmation/src/second-confirmation.vue.d.ts +9 -9
- package/lib/components/drawer/src/drawer.vue.d.ts +11 -11
- package/lib/components/easy-cron/index.d.ts +82 -82
- package/lib/components/easy-cron/src/components/easy-cron-inner.vue.d.ts +77 -77
- package/lib/components/easy-cron/src/components/easy-cron-modal.vue.d.ts +77 -77
- package/lib/components/easy-cron/src/easy-cron.vue.d.ts +82 -82
- package/lib/components/empty/index.d.ts +2 -2
- package/lib/components/empty/src/empty.vue.d.ts +2 -2
- package/lib/components/form/index.d.ts +142 -142
- package/lib/components/form/src/config/form.d.ts +56 -56
- package/lib/components/form/src/form.vue.d.ts +142 -142
- package/lib/components/input/index.d.ts +31 -31
- package/lib/components/input/src/input.vue.d.ts +31 -31
- package/lib/components/key-value/index.d.ts +684 -684
- package/lib/components/key-value/src/components/key-value-item.vue.d.ts +228 -228
- package/lib/components/key-value/src/key-value.vue.d.ts +684 -684
- package/lib/components/modal/index.d.ts +4 -4
- package/lib/components/modal/src/modal.vue.d.ts +4 -4
- package/lib/components/rich-text-editor/index.d.ts +1 -1
- package/lib/components/rich-text-editor/src/rich-text-editor.vue.d.ts +1 -1
- package/lib/components/select/index.d.ts +11 -11
- package/lib/components/select/src/select.vue.d.ts +11 -11
- package/lib/components/select-group/index.d.ts +2 -2
- package/lib/components/select-group/src/select-group.vue.d.ts +2 -2
- package/lib/components/table/index.d.ts +6 -23
- package/lib/components/table/src/components/main-table.vue.d.ts +2 -15
- package/lib/components/table/src/config/main-table.d.ts +0 -10
- package/lib/components/table/src/config/table.d.ts +2 -4
- package/lib/components/table/src/table.vue.d.ts +6 -23
- package/lib/components/textarea/index.d.ts +5 -5
- package/lib/components/textarea/src/textarea.vue.d.ts +5 -5
- package/lib/components/tooltip/index.d.ts +4 -4
- package/lib/components/tooltip/src/tooltip.d.ts +1 -1
- package/lib/components/tooltip/src/tooltip.vue.d.ts +4 -4
- package/lib/components/tree-search/index.d.ts +15 -15
- package/lib/components/tree-search/src/config/tree-search.d.ts +4 -4
- package/lib/components/tree-search/src/tree-search.vue.d.ts +15 -15
- package/lib/components/upload-drag/index.d.ts +4 -4
- package/lib/components/upload-drag/src/upload-drag.vue.d.ts +4 -4
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/lib/packages/components/advanced-filtering/index.js +1 -0
- package/lib/packages/components/advanced-filtering/index.js.map +1 -1
- package/lib/packages/components/advanced-filtering/src/advanced-filtering.js +21 -11
- package/lib/packages/components/advanced-filtering/src/advanced-filtering.js.map +1 -1
- package/lib/packages/components/advanced-filtering/src/components/advanced-filtering-params.vue2.js +5 -9
- package/lib/packages/components/advanced-filtering/src/components/advanced-filtering-params.vue2.js.map +1 -1
- package/lib/packages/components/advanced-filtering/src/components/advanced-filtering-tags.vue2.js +2 -1
- package/lib/packages/components/advanced-filtering/src/components/advanced-filtering-tags.vue2.js.map +1 -1
- package/lib/packages/components/index.js +1 -0
- package/lib/packages/components/index.js.map +1 -1
- package/lib/packages/components/select-group/src/select-group.vue2.js +2 -1
- package/lib/packages/components/select-group/src/select-group.vue2.js.map +1 -1
- package/lib/packages/components/table/src/components/main-table.vue2.js +1 -6
- package/lib/packages/components/table/src/components/main-table.vue2.js.map +1 -1
- package/lib/packages/components/table/src/config/main-table.js +3 -3
- package/lib/packages/components/table/src/config/main-table.js.map +1 -1
- package/package.json +1 -1
- package/types/packages/components/advanced-filtering/index.d.ts +302 -302
- package/types/packages/components/advanced-filtering/src/advanced-filtering.d.ts +2 -1
- package/types/packages/components/advanced-filtering/src/advanced-filtering.vue.d.ts +153 -153
- package/types/packages/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +145 -145
- package/types/packages/components/advanced-filtering/src/components/advanced-filtering-tags.vue.d.ts +4 -4
- package/types/packages/components/api-component/index.d.ts +32 -32
- package/types/packages/components/api-component/src/api-component.vue.d.ts +32 -32
- package/types/packages/components/api-component/src/components/api-modal.vue.d.ts +6 -6
- package/types/packages/components/api-component/src/components/body-component.vue.d.ts +14 -14
- package/types/packages/components/api-component/src/components/click-input.vue.d.ts +10 -10
- package/types/packages/components/api-component/src/components/params-table-row.vue.d.ts +12 -12
- package/types/packages/components/api-component/src/components/params-table.vue.d.ts +14 -14
- package/types/packages/components/api-component/src/config/api-modal.d.ts +1 -1
- package/types/packages/components/api-component/src/config/click-input.d.ts +1 -1
- package/types/packages/components/checkbox/index.d.ts +217 -217
- package/types/packages/components/checkbox/src/checkbox-group.vue.d.ts +217 -217
- package/types/packages/components/checkbox/src/checkbox.d.ts +56 -56
- package/types/packages/components/code-editor/index.d.ts +2 -2
- package/types/packages/components/code-editor/src/code-editor.vue.d.ts +2 -2
- package/types/packages/components/cropper/index.d.ts +4 -4
- package/types/packages/components/cropper/src/cropper-image.vue.d.ts +2 -2
- package/types/packages/components/cropper/src/cropper-modal.vue.d.ts +2 -2
- package/types/packages/components/drawer/index.d.ts +11 -11
- package/types/packages/components/drawer/src/components/second-confirmation/index.d.ts +9 -9
- package/types/packages/components/drawer/src/components/second-confirmation/src/second-confirmation.vue.d.ts +9 -9
- package/types/packages/components/drawer/src/drawer.vue.d.ts +11 -11
- package/types/packages/components/easy-cron/index.d.ts +82 -82
- package/types/packages/components/easy-cron/src/components/easy-cron-inner.vue.d.ts +77 -77
- package/types/packages/components/easy-cron/src/components/easy-cron-modal.vue.d.ts +77 -77
- package/types/packages/components/easy-cron/src/easy-cron.vue.d.ts +82 -82
- package/types/packages/components/empty/index.d.ts +2 -2
- package/types/packages/components/empty/src/empty.vue.d.ts +2 -2
- package/types/packages/components/form/index.d.ts +142 -142
- package/types/packages/components/form/src/config/form.d.ts +56 -56
- package/types/packages/components/form/src/form.vue.d.ts +142 -142
- package/types/packages/components/input/index.d.ts +31 -31
- package/types/packages/components/input/src/input.vue.d.ts +31 -31
- package/types/packages/components/key-value/index.d.ts +684 -684
- package/types/packages/components/key-value/src/components/key-value-item.vue.d.ts +228 -228
- package/types/packages/components/key-value/src/key-value.vue.d.ts +684 -684
- package/types/packages/components/modal/index.d.ts +4 -4
- package/types/packages/components/modal/src/modal.vue.d.ts +4 -4
- package/types/packages/components/rich-text-editor/index.d.ts +1 -1
- package/types/packages/components/rich-text-editor/src/rich-text-editor.vue.d.ts +1 -1
- package/types/packages/components/select/index.d.ts +11 -11
- package/types/packages/components/select/src/select.vue.d.ts +11 -11
- package/types/packages/components/select-group/index.d.ts +2 -2
- package/types/packages/components/select-group/src/select-group.vue.d.ts +2 -2
- package/types/packages/components/table/index.d.ts +6 -23
- package/types/packages/components/table/src/components/main-table.vue.d.ts +2 -15
- package/types/packages/components/table/src/config/main-table.d.ts +0 -10
- package/types/packages/components/table/src/config/table.d.ts +2 -4
- package/types/packages/components/table/src/table.vue.d.ts +6 -23
- package/types/packages/components/textarea/index.d.ts +5 -5
- package/types/packages/components/textarea/src/textarea.vue.d.ts +5 -5
- package/types/packages/components/tooltip/index.d.ts +4 -4
- package/types/packages/components/tooltip/src/tooltip.d.ts +1 -1
- package/types/packages/components/tooltip/src/tooltip.vue.d.ts +4 -4
- package/types/packages/components/tree-search/index.d.ts +15 -15
- package/types/packages/components/tree-search/src/config/tree-search.d.ts +4 -4
- package/types/packages/components/tree-search/src/tree-search.vue.d.ts +15 -15
- package/types/packages/components/upload-drag/index.d.ts +4 -4
- package/types/packages/components/upload-drag/src/upload-drag.vue.d.ts +4 -4
|
@@ -35,11 +35,11 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
35
35
|
readonly tip: string;
|
|
36
36
|
readonly fileSize: number;
|
|
37
37
|
readonly "onUpdate:value"?: ((...args: any[]) => any) | undefined;
|
|
38
|
-
readonly onConfirm?: ((...args: any[]) => any) | undefined;
|
|
39
38
|
readonly onCancel?: ((...args: any[]) => any) | undefined;
|
|
39
|
+
readonly onConfirm?: ((...args: any[]) => any) | undefined;
|
|
40
40
|
readonly onCustomRequest?: ((...args: any[]) => any) | undefined;
|
|
41
41
|
} & {}>;
|
|
42
|
-
emits: (event: "update:value" | "
|
|
42
|
+
emits: (event: "update:value" | "customRequest" | "confirm" | "cancel", ...args: any[]) => void;
|
|
43
43
|
bem: {
|
|
44
44
|
b: (blockSuffix?: string) => string;
|
|
45
45
|
e: (element?: string) => string;
|
|
@@ -61,7 +61,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
61
61
|
handleDragReject: () => void;
|
|
62
62
|
handleClickCancelBtn: () => void;
|
|
63
63
|
handleClickOkBtn: () => void;
|
|
64
|
-
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:value" | "
|
|
64
|
+
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:value" | "customRequest" | "confirm" | "cancel")[], "update:value" | "customRequest" | "confirm" | "cancel", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
65
65
|
value: {
|
|
66
66
|
type: ArrayConstructor;
|
|
67
67
|
default: () => never[];
|
|
@@ -88,8 +88,8 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
88
88
|
};
|
|
89
89
|
}>> & {
|
|
90
90
|
"onUpdate:value"?: ((...args: any[]) => any) | undefined;
|
|
91
|
-
onConfirm?: ((...args: any[]) => any) | undefined;
|
|
92
91
|
onCancel?: ((...args: any[]) => any) | undefined;
|
|
92
|
+
onConfirm?: ((...args: any[]) => any) | undefined;
|
|
93
93
|
onCustomRequest?: ((...args: any[]) => any) | undefined;
|
|
94
94
|
}, {
|
|
95
95
|
value: unknown[];
|
package/es/index.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import installer from './defaults.mjs';
|
|
2
2
|
import './packages/components/index.mjs';
|
|
3
|
-
export { ALL_VALUE, advancedFilteringEmits, advancedFilteringParamsEmits, advancedFilteringParamsProps, advancedFilteringProps, advancedFilteringTagsEmits, filterAllValue, findLabelByValue, initValue, treeDataFormat } from './packages/components/advanced-filtering/src/advanced-filtering.mjs';
|
|
3
|
+
export { ALL_VALUE, advancedFilteringEmits, advancedFilteringParamsEmits, advancedFilteringParamsProps, advancedFilteringProps, advancedFilteringTagsEmits, filterAllValue, findLabelByValue, hasValue, initValue, treeDataFormat } from './packages/components/advanced-filtering/src/advanced-filtering.mjs';
|
|
4
4
|
export { LlAdvancedFiltering, LlAdvancedFilteringParams, LlAdvancedFilteringTags } from './packages/components/advanced-filtering/index.mjs';
|
|
5
5
|
export { DEFAULT_METHOD, apiComponentEmits, apiComponentProps, bodyList, requestList } from './packages/components/api-component/src/config/api-component.mjs';
|
|
6
6
|
export { apiModalEmits, apiModalProps } from './packages/components/api-component/src/config/api-modal.mjs';
|
|
@@ -2,7 +2,7 @@ import '../../utils/index.mjs';
|
|
|
2
2
|
import AdvancedFiltering from './src/advanced-filtering.vue.mjs';
|
|
3
3
|
import AdvancedFilteringParams from './src/components/advanced-filtering-params.vue.mjs';
|
|
4
4
|
import AdvancedFilteringTags from './src/components/advanced-filtering-tags.vue.mjs';
|
|
5
|
-
export { ALL_VALUE, advancedFilteringEmits, advancedFilteringParamsEmits, advancedFilteringParamsProps, advancedFilteringProps, advancedFilteringTagsEmits, filterAllValue, findLabelByValue, initValue, treeDataFormat } from './src/advanced-filtering.mjs';
|
|
5
|
+
export { ALL_VALUE, advancedFilteringEmits, advancedFilteringParamsEmits, advancedFilteringParamsProps, advancedFilteringProps, advancedFilteringTagsEmits, filterAllValue, findLabelByValue, hasValue, initValue, treeDataFormat } from './src/advanced-filtering.mjs';
|
|
6
6
|
import { withInstall } from '../../utils/with-install.mjs';
|
|
7
7
|
|
|
8
8
|
"use strict";
|
|
@@ -1,26 +1,32 @@
|
|
|
1
1
|
import '../../../utils/index.mjs';
|
|
2
|
-
import { has,
|
|
2
|
+
import { has, isNull, isUndefined, isEqual } from 'lodash-es';
|
|
3
3
|
import { buildProps, definePropType } from '../../../utils/props/runtime.mjs';
|
|
4
4
|
|
|
5
5
|
"use strict";
|
|
6
6
|
const ALL_VALUE = "_ALL";
|
|
7
|
-
const initValue = (
|
|
8
|
-
|
|
9
|
-
if (
|
|
10
|
-
|
|
11
|
-
value =
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
7
|
+
const initValue = (columns, values) => {
|
|
8
|
+
const copyValues = {};
|
|
9
|
+
if (columns.length) {
|
|
10
|
+
columns.forEach((column) => {
|
|
11
|
+
let value = has(values, column.key) ? values[column.key] : null;
|
|
12
|
+
if (has(column, "options") && !column.unUseDefaultOption) {
|
|
13
|
+
if (column.type === "checkbox-group" || has(column, "mode")) {
|
|
14
|
+
value = isNull(value) || isUndefined(value) || Array.isArray(value) && value.length === 0 ? [ALL_VALUE] : value;
|
|
15
|
+
} else {
|
|
16
|
+
value = isNull(value) || isUndefined(value) ? ALL_VALUE : value;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
copyValues[column.key] = value;
|
|
20
|
+
});
|
|
15
21
|
}
|
|
16
|
-
return
|
|
22
|
+
return copyValues;
|
|
17
23
|
};
|
|
18
24
|
const filterAllValue = (values, column) => {
|
|
19
25
|
let value = null;
|
|
20
26
|
if (Array.isArray(values)) {
|
|
21
27
|
value = values.filter((item) => item !== ALL_VALUE);
|
|
22
28
|
if (column && column.type === "number-range") {
|
|
23
|
-
value = values ? values.every((e) => !
|
|
29
|
+
value = values ? values.every((e) => !isNull(e)) ? values : null : null;
|
|
24
30
|
}
|
|
25
31
|
} else {
|
|
26
32
|
value = values === ALL_VALUE ? null : values;
|
|
@@ -48,7 +54,7 @@ const findLabelByValue = (tree, value) => {
|
|
|
48
54
|
if (!nodes)
|
|
49
55
|
return [];
|
|
50
56
|
for (const node of nodes) {
|
|
51
|
-
if (node.value
|
|
57
|
+
if (isEqual(node.value, value)) {
|
|
52
58
|
labels.push(node.label);
|
|
53
59
|
}
|
|
54
60
|
if (node.children && node.children.length > 0) {
|
|
@@ -62,6 +68,9 @@ const findLabelByValue = (tree, value) => {
|
|
|
62
68
|
}
|
|
63
69
|
return _findLabel(tree).join(",");
|
|
64
70
|
};
|
|
71
|
+
const hasValue = (value) => {
|
|
72
|
+
return Array.isArray(value) ? value.length > 0 : !isNull(value) && !isUndefined(value);
|
|
73
|
+
};
|
|
65
74
|
const advancedFilteringProps = buildProps({
|
|
66
75
|
filterColumns: {
|
|
67
76
|
type: definePropType(Array),
|
|
@@ -115,5 +124,5 @@ const advancedFilteringTagsEmits = {
|
|
|
115
124
|
"update:value": (value) => !!value
|
|
116
125
|
};
|
|
117
126
|
|
|
118
|
-
export { ALL_VALUE, advancedFilteringEmits, advancedFilteringParamsEmits, advancedFilteringParamsProps, advancedFilteringProps, advancedFilteringTagsEmits, filterAllValue, findLabelByValue, initValue, treeDataFormat };
|
|
127
|
+
export { ALL_VALUE, advancedFilteringEmits, advancedFilteringParamsEmits, advancedFilteringParamsProps, advancedFilteringProps, advancedFilteringTagsEmits, filterAllValue, findLabelByValue, hasValue, initValue, treeDataFormat };
|
|
119
128
|
//# sourceMappingURL=advanced-filtering.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"advanced-filtering.mjs","sources":["../../../../../../packages/components/advanced-filtering/src/advanced-filtering.ts"],"sourcesContent":["import { buildProps, definePropType } from '@ll-plus/utils'\nimport { has,
|
|
1
|
+
{"version":3,"file":"advanced-filtering.mjs","sources":["../../../../../../packages/components/advanced-filtering/src/advanced-filtering.ts"],"sourcesContent":["import { buildProps, definePropType } from '@ll-plus/utils'\nimport { has, isNull, isUndefined, isEqual } from 'lodash-es'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type { FormProps as AntFormProps, TooltipProps } from 'ant-design-vue'\nimport type { FormColumn } from '@ll-plus/components'\nimport type advancedFiltering from './advanced-filtering.vue'\nimport type advancedFilteringParams from './components/advanced-filtering-params.vue'\nimport type advancedFilteringTags from './components/advanced-filtering-tags.vue'\n\nexport interface IAvancedFilteringTag {\n label: string\n key: string\n value: string | string[]\n showValue: string | string[]\n}\n\nexport const ALL_VALUE: string = '_ALL'\n\nexport type FilterColumn = FormColumn<{\n unUseDefaultOption?: boolean\n defaultOptionLabel?: string\n}>\n\nexport const initValue = (columns: FilterColumn[], values: any) => {\n const copyValues = {}\n if (columns.length) {\n columns.forEach(column => {\n let value: any = has(values, column.key) ? values[column.key] : null\n if (has(column, 'options') && !column.unUseDefaultOption) {\n if (column.type === 'checkbox-group' || has(column, 'mode')) {\n value =\n isNull(value) ||\n isUndefined(value) ||\n (Array.isArray(value) && value.length === 0)\n ? [ALL_VALUE]\n : value\n } else {\n value = isNull(value) || isUndefined(value) ? ALL_VALUE : value\n }\n }\n copyValues[column.key] = value\n })\n }\n\n return copyValues\n}\n\nexport const filterAllValue = (\n values: string | string[],\n column: FilterColumn\n): any => {\n let value: any = null\n if (Array.isArray(values)) {\n value = values.filter(item => item !== ALL_VALUE)\n if (column && column.type === 'number-range') {\n value = values ? (values.every(e => !isNull(e)) ? values : null) : null\n }\n } else {\n value = values === ALL_VALUE ? null : values\n }\n\n return value\n}\n\nexport const treeDataFormat = (\n arr = [] as any[],\n fieldNames: { [key: string]: string }\n) => {\n let options = [] as any[]\n if (!arr) return []\n options = arr.map((e: any) => {\n const obj: any = {}\n obj.label = e[fieldNames.label]\n obj.value = e[fieldNames.value]\n if (e[fieldNames.children] && e[fieldNames.children].length) {\n obj.children = treeDataFormat(e[fieldNames.children], fieldNames)\n }\n\n return obj\n })\n return options\n}\n\n// const isEqual = (val1,val2)=>{\n\n// }\n\nexport const findLabelByValue = (\n tree: FilterColumn['options'],\n value: any\n): string => {\n // 递归函数,用于遍历 Tree 数据\n function _findLabel(nodes: FilterColumn['options']): string[] {\n const labels: string[] = []\n if (!nodes) return []\n for (const node of nodes) {\n if (isEqual(node.value, value)) {\n labels.push(node.label)\n }\n if (node.children && node.children.length > 0) {\n const childLabels = _findLabel(node.children)\n if (childLabels) {\n labels.push(...childLabels)\n }\n }\n }\n return labels.length > 0 ? labels : []\n }\n // 开始递归查找\n return _findLabel(tree).join(',')\n}\n\nexport const hasValue = (value: any) => {\n return Array.isArray(value)\n ? value.length > 0\n : !isNull(value) && !isUndefined(value)\n}\n\nexport const advancedFilteringProps = buildProps({\n filterColumns: {\n type: definePropType<FilterColumn[]>(Array),\n default: () => []\n },\n value: {\n type: Object,\n default: () => ({})\n },\n formOptions: {\n type: definePropType<AntFormProps>(Object),\n default: () => ({ layout: 'vertical' })\n },\n overlayStyle: {\n type: definePropType<TooltipProps['overlayStyle']>(Object),\n default: () => ({\n width: '500px'\n })\n }\n} as const)\n\nexport const advancedFilteringParamsProps = buildProps({\n filterColumns: {\n type: definePropType<FilterColumn[]>(Array),\n default: () => []\n },\n value: {\n type: Object,\n default: () => ({})\n },\n formOptions: {\n type: definePropType<AntFormProps>(Object),\n default: () => ({ layout: 'vertical' })\n },\n showFooter: {\n type: Boolean,\n default: false\n }\n} as const)\n\nexport const advancedFilteringEmits = {\n change: (value: Record<string, any>) => !!value,\n 'update:value': (value: Record<string, any>) => !!value\n}\n\nexport const advancedFilteringParamsEmits = {\n close: () => true,\n confirm: () => true,\n changeValue: (value: Record<string, any>) => !!value,\n 'update:value': (value: Record<string, any>) => !!value\n}\n\nexport const advancedFilteringTagsEmits = {\n change: (value: Record<string, any>) => !!value,\n 'update:value': (value: Record<string, any>) => !!value\n}\n\n// props\nexport type AdvancedFilteringProps = ExtractPropTypes<\n typeof advancedFilteringProps\n>\n\nexport type AdvancedFilteringParamsProps = ExtractPropTypes<\n typeof advancedFilteringParamsProps\n>\n\n// emits\nexport type AdvancedFilteringEmits = typeof advancedFilteringEmits\n\nexport type AdvancedFilteringParamsEmits = typeof advancedFilteringParamsEmits\n\nexport type AdvancedFilteringTagsEmits = typeof advancedFilteringTagsEmits\n\n// instance\nexport type AdvancedFilteringInstance = InstanceType<typeof advancedFiltering>\n\nexport type AdvancedFilteringParamsInstance = InstanceType<\n typeof advancedFilteringParams\n>\n\nexport type AdvancedFilteringTagsInstance = InstanceType<\n typeof advancedFilteringTags\n>\n"],"names":[],"mappings":"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"}
|
package/es/packages/components/advanced-filtering/src/components/advanced-filtering-params.vue2.mjs
CHANGED
|
@@ -69,14 +69,11 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
69
69
|
(val) => {
|
|
70
70
|
const value = cloneDeep(val);
|
|
71
71
|
const cloneInnerValue = cloneDeep(innerValue.value);
|
|
72
|
-
const obj =
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
computeFormColumns.value.forEach((item) => {
|
|
78
|
-
comparedObj[item.key] = initValue(item, cloneInnerValue);
|
|
79
|
-
});
|
|
72
|
+
const obj = initValue(computeFormColumns.value, value);
|
|
73
|
+
const comparedObj = initValue(
|
|
74
|
+
computeFormColumns.value,
|
|
75
|
+
cloneInnerValue
|
|
76
|
+
);
|
|
80
77
|
if (JSON.stringify(obj) !== JSON.stringify(comparedObj)) {
|
|
81
78
|
innerValue.value = cloneDeep(obj);
|
|
82
79
|
}
|
|
@@ -97,7 +94,6 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
97
94
|
return openBlock(), createBlock(_component_a_card, {
|
|
98
95
|
title: "\u9AD8\u7EA7\u7B5B\u9009",
|
|
99
96
|
class: normalizeClass(unref(bem).b()),
|
|
100
|
-
onselectstart: "return false",
|
|
101
97
|
bordered: false
|
|
102
98
|
}, {
|
|
103
99
|
extra: withCtx(() => [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"advanced-filtering-params.vue2.mjs","sources":["../../../../../../../packages/components/advanced-filtering/src/components/advanced-filtering-params.vue"],"sourcesContent":["<template>\n <a-card
|
|
1
|
+
{"version":3,"file":"advanced-filtering-params.vue2.mjs","sources":["../../../../../../../packages/components/advanced-filtering/src/components/advanced-filtering-params.vue"],"sourcesContent":["<template>\n <a-card title=\"高级筛选\" :class=\"bem.b()\" :bordered=\"false\">\n <template #extra>\n <ll-icon\n icon-name=\"icon-close2\"\n :style=\"{\n cursor: 'pointer'\n }\"\n @click=\"handleClose\"\n />\n </template>\n <div :class=\"bem.m('content')\">\n <ll-form\n v-if=\"props.filterColumns.length > 0\"\n v-bind=\"$attrs\"\n :form-columns=\"computeFormColumns\"\n :form-options=\"props.formOptions\"\n :form-data=\"innerValue\"\n :row-options=\"\n $attrs['row-options'] || {\n gutter: 30\n }\n \"\n @change=\"handleChange\"\n />\n <div v-else :class=\"bem.m('empty')\">\n <p>暂无数据</p>\n </div>\n </div>\n <div v-if=\"props.showFooter\" :class=\"bem.m('footer')\">\n <ll-button\n type=\"primary\"\n style=\"margin-right: 16px\"\n @click=\"handleAdvancedFilterConfirm\"\n >\n 确定\n </ll-button>\n <ll-button @click=\"handleClose\">取消</ll-button>\n </div>\n </a-card>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, watch, computed } from 'vue'\nimport { has, cloneDeep } from 'lodash-es'\nimport { createNamespace } from '@ll-plus/utils'\nimport { LlForm } from '@ll-plus/components'\nimport {\n advancedFilteringParamsProps,\n advancedFilteringParamsEmits,\n ALL_VALUE,\n initValue,\n filterAllValue\n} from '../advanced-filtering'\n\nimport type { FormChangeEvent } from '@ll-plus/components'\n\ndefineOptions({ name: 'LlAdvancedFilteringParams' })\n\nconst props = defineProps(advancedFilteringParamsProps)\n\nconst emits = defineEmits(advancedFilteringParamsEmits)\n\nconst bem = createNamespace('advanced-filtering-params')\n\nconst innerValue = ref({})\n\nconst key = ref(0)\n\nconst computeFormColumns = computed(() => {\n return props.filterColumns.map(column => {\n if (has(column, 'options')) {\n if (\n (column.options.length && column.options[0].value === ALL_VALUE) ||\n column.unUseDefaultOption\n ) {\n return column\n }\n column.options = [\n {\n label: column?.defaultOptionLabel ?? '全部',\n value: ALL_VALUE\n },\n ...column.options\n ]\n }\n return column\n })\n})\n\nconst handleClose = () => {\n emits('close')\n}\n\nconst handleAdvancedFilterConfirm = () => {\n emits('confirm')\n}\n\nconst handleChange = (params: FormChangeEvent) => {\n setData(params)\n}\n\nconst setData = (params: FormChangeEvent) => {\n const value = cloneDeep(params.formData)\n const obj: Record<string, any> = {}\n computeFormColumns.value.forEach(item => {\n const i = item.key\n obj[i] = filterAllValue(value[i], item)\n })\n emits('update:value', obj)\n emits('changeValue', { ...params, formData: obj })\n}\n\nwatch(\n () => props.value,\n val => {\n const value = cloneDeep(val)\n const cloneInnerValue = cloneDeep(innerValue.value)\n const obj: Record<string, any> = initValue(computeFormColumns.value, value)\n\n const comparedObj: Record<string, any> = initValue(\n computeFormColumns.value,\n cloneInnerValue\n )\n if (JSON.stringify(obj) !== JSON.stringify(comparedObj)) {\n innerValue.value = cloneDeep(obj)\n }\n if (key.value === 0) {\n innerValue.value = cloneDeep(obj)\n key.value++\n }\n },\n {\n deep: true,\n immediate: true\n }\n)\n// watch(\n// () => innerValue.value,\n// val => {\n// setData(val)\n// },\n// {\n// deep: true,\n// immediate: true\n// }\n// )\n</script>\n"],"names":[],"mappings":"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"}
|
package/es/packages/components/advanced-filtering/src/components/advanced-filtering-tags.vue2.mjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { createElementVNode, defineComponent, ref, watchEffect, resolveComponent, openBlock, createElementBlock, normalizeClass, unref, Fragment, renderList, toDisplayString, createVNode } from 'vue';
|
|
2
2
|
import dayjs from 'dayjs';
|
|
3
3
|
import '../../../../utils/index.mjs';
|
|
4
|
-
import {
|
|
5
|
-
import { advancedFilteringProps, advancedFilteringTagsEmits, filterAllValue, treeDataFormat, findLabelByValue } from '../advanced-filtering.mjs';
|
|
4
|
+
import { has } from 'lodash-es';
|
|
5
|
+
import { advancedFilteringProps, advancedFilteringTagsEmits, filterAllValue, hasValue, treeDataFormat, findLabelByValue } from '../advanced-filtering.mjs';
|
|
6
6
|
import { createNamespace } from '../../../../utils/create-namespace.mjs';
|
|
7
7
|
|
|
8
8
|
"use strict";
|
|
@@ -54,7 +54,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
54
54
|
const arr = [];
|
|
55
55
|
filterColumns.map((item) => {
|
|
56
56
|
const value = filterAllValue(values[item.key], item);
|
|
57
|
-
if (
|
|
57
|
+
if (hasValue(value)) {
|
|
58
58
|
let tagValue = "";
|
|
59
59
|
if (item?.options) {
|
|
60
60
|
let options = [];
|
|
@@ -71,6 +71,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
71
71
|
tagValue = tagArr.join(",");
|
|
72
72
|
} else {
|
|
73
73
|
tagValue = findLabelByValue(options, value);
|
|
74
|
+
console.log({ value, tagValue });
|
|
74
75
|
}
|
|
75
76
|
} else {
|
|
76
77
|
tagValue = value;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"advanced-filtering-tags.vue2.mjs","sources":["../../../../../../../packages/components/advanced-filtering/src/components/advanced-filtering-tags.vue"],"sourcesContent":["<template>\n <div :class=\"bem.b()\">\n <div :class=\"bem.m('title')\">\n <p>筛选结果:</p>\n <a @click=\"handleClean(null)\">清除筛选结果</a>\n </div>\n <div v-if=\"tags.length > 0\" :class=\"bem.m('box')\">\n <div v-for=\"tag in tags\" :key=\"tag.key\" :class=\"bem.m('tag')\">\n <span :class=\"bem.m('label')\">{{ tag.label }}:</span>\n <span :class=\"bem.m('value')\">{{ tag.showValue }}</span>\n <span :class=\"bem.m('close')\" @click=\"handleClean(tag)\">\n <ll-icon icon-name=\"icon-close2\" :class-name=\"bem.m('icon')\" />\n </span>\n </div>\n </div>\n <div v-else :class=\"bem.m('empty')\">\n <span>暂无数据</span>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, watchEffect } from 'vue'\nimport dayjs from 'dayjs'\n\nimport { createNamespace } from '@ll-plus/utils'\nimport {
|
|
1
|
+
{"version":3,"file":"advanced-filtering-tags.vue2.mjs","sources":["../../../../../../../packages/components/advanced-filtering/src/components/advanced-filtering-tags.vue"],"sourcesContent":["<template>\n <div :class=\"bem.b()\">\n <div :class=\"bem.m('title')\">\n <p>筛选结果:</p>\n <a @click=\"handleClean(null)\">清除筛选结果</a>\n </div>\n <div v-if=\"tags.length > 0\" :class=\"bem.m('box')\">\n <div v-for=\"tag in tags\" :key=\"tag.key\" :class=\"bem.m('tag')\">\n <span :class=\"bem.m('label')\">{{ tag.label }}:</span>\n <span :class=\"bem.m('value')\">{{ tag.showValue }}</span>\n <span :class=\"bem.m('close')\" @click=\"handleClean(tag)\">\n <ll-icon icon-name=\"icon-close2\" :class-name=\"bem.m('icon')\" />\n </span>\n </div>\n </div>\n <div v-else :class=\"bem.m('empty')\">\n <span>暂无数据</span>\n </div>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, watchEffect } from 'vue'\nimport dayjs from 'dayjs'\n\nimport { createNamespace } from '@ll-plus/utils'\nimport { has } from 'lodash-es'\nimport {\n advancedFilteringProps,\n advancedFilteringTagsEmits,\n type IAvancedFilteringTag,\n filterAllValue,\n treeDataFormat,\n findLabelByValue,\n hasValue\n} from '../advanced-filtering'\nimport type { FormColumn } from '@ll-plus/components'\ndefineOptions({ name: 'LlAdvancedFilteringTags' })\nconst props = defineProps(advancedFilteringProps)\nconst emits = defineEmits(advancedFilteringTagsEmits)\nconst bem = createNamespace('advanced-filtering-tags')\nconst tags = ref([] as IAvancedFilteringTag[])\n\nconst handleClean = (tag: IAvancedFilteringTag | null = null) => {\n const copyValue = {}\n if (tag) {\n tags.value = tags.value.filter(e => e.key !== tag.key)\n } else {\n tags.value = []\n }\n tags.value.map(e => {\n copyValue[e.key] = e.value\n })\n setData(copyValue)\n}\nconst setData = (obj: Record<string, any>) => {\n emits('update:value', obj)\n emits('change', obj)\n}\n\nconst getTags = (filterColumns: FormColumn[], values: Record<string, any>) => {\n const arr = [] as IAvancedFilteringTag[]\n filterColumns.map(item => {\n const value = filterAllValue(values[item.key], item)\n if (hasValue(value)) {\n let tagValue = ''\n\n if (item?.options) {\n let options = [] as FormColumn['options']\n if (item.fieldNames) {\n options = treeDataFormat(options, item.fieldNames)\n } else {\n options = item.options\n }\n if (Array.isArray(value)) {\n let tagArr: any = []\n tagArr = value.map((val: string) => {\n return findLabelByValue(options, val)\n })\n\n tagValue = tagArr.join(',')\n } else {\n tagValue = findLabelByValue(options, value)\n console.log({ value, tagValue })\n }\n } else {\n tagValue = value\n }\n\n if (item.type === 'date-picker') {\n tagValue = dayjs(value).format(item?.format ?? 'YYYY-MM-DD')\n }\n if (item.type === 'time-picker') {\n tagValue = dayjs(value).format(item?.format ?? 'YYYY/MM/DD hh:mm:ss')\n }\n if (item.type === 'date-range') {\n tagValue = `${dayjs(value[0]).format(\n item?.format ?? 'YYYY-MM-DD'\n )} - ${dayjs(value[1]).format(item?.format ?? 'YYYY-MM-DD')}`\n }\n\n if (item.type === 'number-range') {\n tagValue = `${value[0]}${value[1] ? ` - ${value[1]}` : ''}`\n }\n\n if (item.type === 'time-range') {\n tagValue = `${dayjs(value[0]).format(\n item?.format ?? 'YYYY/MM/DD HH:mm:ss'\n )} - ${dayjs(value[1]).format(item?.format ?? 'YYYY/MM/DD HH:mm:ss')}`\n }\n\n if (item.type === 'switch') {\n if (\n has(item, 'checkedChildren') &&\n has(item, 'checkedValue') &&\n has(item, 'unCheckedChildren') &&\n has(item, 'unCheckedValue')\n ) {\n tagValue =\n value === item.checkedValue\n ? item.checkedChildren\n : item.unCheckedChildren\n }\n\n if (has(item, 'checkedChildren') && !has(item, 'checkedValue')) {\n tagValue = value ? item.checkedChildren : false\n }\n }\n if (tagValue) {\n arr.push({\n label: item.label || '',\n key: item.key,\n value: value,\n showValue: tagValue\n })\n }\n }\n })\n return arr\n}\n\nwatchEffect(() => {\n tags.value = getTags(props.filterColumns, props.value)\n})\n</script>\n"],"names":[],"mappings":"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"}
|
|
@@ -48,7 +48,7 @@ export { LlDropdown, LlDropdownButton } from './dropdown/index.mjs';
|
|
|
48
48
|
export { LlUploadDrag } from './upload-drag/index.mjs';
|
|
49
49
|
export { LlUploadImage } from './upload-image/index.mjs';
|
|
50
50
|
export { LlUriInput } from './uri-input/index.mjs';
|
|
51
|
-
export { ALL_VALUE, advancedFilteringEmits, advancedFilteringParamsEmits, advancedFilteringParamsProps, advancedFilteringProps, advancedFilteringTagsEmits, filterAllValue, findLabelByValue, initValue, treeDataFormat } from './advanced-filtering/src/advanced-filtering.mjs';
|
|
51
|
+
export { ALL_VALUE, advancedFilteringEmits, advancedFilteringParamsEmits, advancedFilteringParamsProps, advancedFilteringProps, advancedFilteringTagsEmits, filterAllValue, findLabelByValue, hasValue, initValue, treeDataFormat } from './advanced-filtering/src/advanced-filtering.mjs';
|
|
52
52
|
export { DEFAULT_METHOD, apiComponentEmits, apiComponentProps, bodyList, requestList } from './api-component/src/config/api-component.mjs';
|
|
53
53
|
export { apiModalEmits, apiModalProps } from './api-component/src/config/api-modal.mjs';
|
|
54
54
|
export { apiUrlEmits, apiUrlProps, methods } from './api-component/src/config/api-url.mjs';
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { defineComponent, ref, computed, watch, resolveComponent, openBlock, createElementBlock, normalizeClass, unref, createElementVNode, createVNode, withCtx, createCommentVNode, normalizeStyle, Fragment, renderList, createBlock, createTextVNode, toDisplayString, renderSlot, normalizeProps, mergeProps } from 'vue';
|
|
2
|
+
import { isNull, isUndefined } from 'lodash-es';
|
|
2
3
|
import { selectGroupProps, selectGroupEmits, LEFT_SELECT_MIN_WIDTH } from './select-group.mjs';
|
|
3
4
|
import '../../../utils/index.mjs';
|
|
4
5
|
import { createNamespace } from '../../../utils/create-namespace.mjs';
|
|
@@ -95,7 +96,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
95
96
|
watch(
|
|
96
97
|
() => [props.value, props.selectValue],
|
|
97
98
|
(newV) => {
|
|
98
|
-
value.value = newV[0];
|
|
99
|
+
value.value = isNull(newV[0]) || isUndefined(newV[0]) || Array.isArray(newV[0]) && newV[0].length === 0 ? -1 : newV[0];
|
|
99
100
|
},
|
|
100
101
|
{
|
|
101
102
|
immediate: true
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select-group.vue2.mjs","sources":["../../../../../../packages/components/select-group/src/select-group.vue"],"sourcesContent":["<template>\n <div :class=\"bem.b()\">\n <div :class=\"bemContainer.b()\">\n <a-input-group compact>\n <!-- 左侧select -->\n <a-select\n v-model:value=\"typeSelectValue\"\n class=\"select-group-left-select-container\"\n :style=\"{ minWidth: leftSelectWidth }\"\n @change=\"handleSelectChange\"\n >\n <a-select-option\n v-for=\"item in newList\"\n :key=\"item.name\"\n :value=\"item.value\"\n :item=\"item\"\n >\n {{ item.name }}\n </a-select-option>\n </a-select>\n <!-- 右侧组合表单 -->\n <!-- input输入框 -->\n <template\n v-if=\"\n !selectItem?.showFormType || selectItem?.showFormType === 'input'\n \"\n >\n <a-input\n v-model:value=\"value\"\n :class=\"bem.e('right-input')\"\n :placeholder=\"selectItem?.placeholder\"\n @press-enter=\"handleChange\"\n >\n <template #suffix>\n <ll-icon :icon-name=\"`icon-search`\" @click=\"handleChange\" />\n </template>\n </a-input>\n </template>\n <!-- select下拉框 -->\n <template v-else-if=\"selectItem?.showFormType === 'select'\">\n <a-select\n v-model:value=\"value\"\n :class=\"bem.e('right-select')\"\n popup-class-name=\"select-group-right-select\"\n :options=\"selectItem?.options\"\n :placeholder=\"selectItem?.placeholder\"\n :field-names=\"selectItem?.fieldNames\"\n @change=\"handleChange\"\n >\n <a-select-option\n v-for=\"item in selectItem.list\"\n :key=\"item.value\"\n :value=\"item.value\"\n >\n {{ item.name }}\n </a-select-option>\n </a-select>\n </template>\n <!-- 日期选择 -->\n <template v-else-if=\"selectItem?.showFormType === 'range-picker'\">\n <a-range-picker\n v-model:value=\"value\"\n :class=\"bem.e('right-range-picker')\"\n @change=\"handleChange\"\n />\n </template>\n <!-- 树选择 -->\n <template v-else-if=\"selectItem?.showFormType === 'treeSelect'\">\n <a-tree-select\n v-model:value=\"value\"\n :class=\"bem.e('right-tree-select')\"\n :field-names=\"selectItem.fieldNames\"\n :placeholder=\"selectItem?.placeholder\"\n :tree-data=\"selectItem.list\"\n @select=\"handleChange\"\n ></a-tree-select>\n </template>\n <template v-else>\n <slot name=\"extra\" v-bind=\"selectItem\" />\n </template>\n </a-input-group>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { ref, computed, watch } from 'vue'\n\nimport { selectGroupProps, selectGroupEmits } from './select-group'\nimport { createNamespace } from '@ll-plus/utils'\nimport { LEFT_SELECT_MIN_WIDTH } from './select-group'\n\nimport type { SelectGroupData } from './select-group'\n\n// 1.defineOptions\ndefineOptions({ name: 'LlSelectGroup' })\n\n// 1.props/emits\nconst props = defineProps(selectGroupProps)\nconst emits = defineEmits(selectGroupEmits)\n\n// 3.ref/const\nconst typeSelectValue = ref('1') // selectinput组合select的值\nconst value = ref<any>('') // 左边的value\nconst selectItem = ref<SelectGroupData>() // 选中表单的类型\nconst newList = ref<SelectGroupData[]>([]) // 处理后的数据,比如select的类型前面加个全部\nconst bem = createNamespace('select-group')\nconst bemContainer = createNamespace('select-group-container')\n\n// 动态计算左边文字最长的宽度\nconst leftSelectWidth = computed(() => {\n const names = newList.value.map(item => item.name.length)\n const maxNameLength = Math.max(...names)\n if (maxNameLength <= 3) {\n return LEFT_SELECT_MIN_WIDTH + 'px'\n }\n const width = LEFT_SELECT_MIN_WIDTH + (maxNameLength - 3) * 14\n return width + 'px'\n})\n\n// 4.methods\n// 第一个select的change\nconst handleSelectChange = (_: string, options: any) => {\n const item = options.item\n const formType = item.showFormType\n // 如果\n if (!formType || formType === 'input' || formType === 'treeSelect') {\n value.value = ''\n } else if (formType === 'range-picker') {\n value.value = [undefined, undefined]\n } else if (formType === 'select') {\n value.value = item.noFirstAddAll ? undefined : -1\n }\n selectItem.value = options.item\n emits('onSelectChange', _, item)\n}\n// 整合处理change\nconst handleChange = () => {\n // 过滤-1的下拉全部\n emits(\n 'change',\n selectItem.value?.value as string,\n value.value === -1 ? null : value.value\n )\n}\n\n// 5.watch\n// 已第一个为标准\nwatch(\n () => [props.selectValue, props.data] as [string, SelectGroupData[]],\n ([selectValue, newData]) => {\n if (newData && newData.length) {\n const list = newData.map(item => {\n const newItem = { ...item }\n if (newItem.showFormType === 'select') {\n if (newItem.options?.length && !newItem.noFirstAddAll) {\n newItem.options = [\n {\n label: '全部',\n value: -1\n },\n ...newItem.options!\n ]\n } else if (newItem.list?.length && !newItem.noFirstAddAll) {\n newItem.list = [\n {\n name: '全部',\n value: -1\n },\n ...newItem.list!\n ]\n }\n }\n return newItem\n })\n let firstItem = list[0]\n const findItem = list.find(item => item.value === selectValue)\n if (findItem) {\n firstItem = findItem\n }\n // 如果默认第一个是下拉框,选中全部\n if (firstItem.showFormType === 'select' && !firstItem.noFirstAddAll) {\n value.value = -1\n }\n selectItem.value = firstItem!\n typeSelectValue.value = selectValue ? selectValue : firstItem.value\n newList.value = list\n }\n },\n {\n deep: true,\n immediate: true\n }\n)\n\nwatch(\n () => [props.value, props.selectValue],\n (newV: any) => {\n value.value = newV[0]\n },\n {\n immediate: true\n }\n)\n</script>\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"select-group.vue2.mjs","sources":["../../../../../../packages/components/select-group/src/select-group.vue"],"sourcesContent":["<template>\n <div :class=\"bem.b()\">\n <div :class=\"bemContainer.b()\">\n <a-input-group compact>\n <!-- 左侧select -->\n <a-select\n v-model:value=\"typeSelectValue\"\n class=\"select-group-left-select-container\"\n :style=\"{ minWidth: leftSelectWidth }\"\n @change=\"handleSelectChange\"\n >\n <a-select-option\n v-for=\"item in newList\"\n :key=\"item.name\"\n :value=\"item.value\"\n :item=\"item\"\n >\n {{ item.name }}\n </a-select-option>\n </a-select>\n <!-- 右侧组合表单 -->\n <!-- input输入框 -->\n <template\n v-if=\"\n !selectItem?.showFormType || selectItem?.showFormType === 'input'\n \"\n >\n <a-input\n v-model:value=\"value\"\n :class=\"bem.e('right-input')\"\n :placeholder=\"selectItem?.placeholder\"\n @press-enter=\"handleChange\"\n >\n <template #suffix>\n <ll-icon :icon-name=\"`icon-search`\" @click=\"handleChange\" />\n </template>\n </a-input>\n </template>\n <!-- select下拉框 -->\n <template v-else-if=\"selectItem?.showFormType === 'select'\">\n <a-select\n v-model:value=\"value\"\n :class=\"bem.e('right-select')\"\n popup-class-name=\"select-group-right-select\"\n :options=\"selectItem?.options\"\n :placeholder=\"selectItem?.placeholder\"\n :field-names=\"selectItem?.fieldNames\"\n @change=\"handleChange\"\n >\n <a-select-option\n v-for=\"item in selectItem.list\"\n :key=\"item.value\"\n :value=\"item.value\"\n >\n {{ item.name }}\n </a-select-option>\n </a-select>\n </template>\n <!-- 日期选择 -->\n <template v-else-if=\"selectItem?.showFormType === 'range-picker'\">\n <a-range-picker\n v-model:value=\"value\"\n :class=\"bem.e('right-range-picker')\"\n @change=\"handleChange\"\n />\n </template>\n <!-- 树选择 -->\n <template v-else-if=\"selectItem?.showFormType === 'treeSelect'\">\n <a-tree-select\n v-model:value=\"value\"\n :class=\"bem.e('right-tree-select')\"\n :field-names=\"selectItem.fieldNames\"\n :placeholder=\"selectItem?.placeholder\"\n :tree-data=\"selectItem.list\"\n @select=\"handleChange\"\n ></a-tree-select>\n </template>\n <template v-else>\n <slot name=\"extra\" v-bind=\"selectItem\" />\n </template>\n </a-input-group>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { ref, computed, watch } from 'vue'\nimport { isNull, isUndefined } from 'lodash-es'\n\nimport { selectGroupProps, selectGroupEmits } from './select-group'\nimport { createNamespace } from '@ll-plus/utils'\nimport { LEFT_SELECT_MIN_WIDTH } from './select-group'\n\nimport type { SelectGroupData } from './select-group'\n\n// 1.defineOptions\ndefineOptions({ name: 'LlSelectGroup' })\n\n// 1.props/emits\nconst props = defineProps(selectGroupProps)\nconst emits = defineEmits(selectGroupEmits)\n\n// 3.ref/const\nconst typeSelectValue = ref('1') // selectinput组合select的值\nconst value = ref<any>('') // 左边的value\nconst selectItem = ref<SelectGroupData>() // 选中表单的类型\nconst newList = ref<SelectGroupData[]>([]) // 处理后的数据,比如select的类型前面加个全部\nconst bem = createNamespace('select-group')\nconst bemContainer = createNamespace('select-group-container')\n\n// 动态计算左边文字最长的宽度\nconst leftSelectWidth = computed(() => {\n const names = newList.value.map(item => item.name.length)\n const maxNameLength = Math.max(...names)\n if (maxNameLength <= 3) {\n return LEFT_SELECT_MIN_WIDTH + 'px'\n }\n const width = LEFT_SELECT_MIN_WIDTH + (maxNameLength - 3) * 14\n return width + 'px'\n})\n\n// 4.methods\n// 第一个select的change\nconst handleSelectChange = (_: string, options: any) => {\n const item = options.item\n const formType = item.showFormType\n // 如果\n if (!formType || formType === 'input' || formType === 'treeSelect') {\n value.value = ''\n } else if (formType === 'range-picker') {\n value.value = [undefined, undefined]\n } else if (formType === 'select') {\n value.value = item.noFirstAddAll ? undefined : -1\n }\n selectItem.value = options.item\n emits('onSelectChange', _, item)\n}\n// 整合处理change\nconst handleChange = () => {\n // 过滤-1的下拉全部\n emits(\n 'change',\n selectItem.value?.value as string,\n value.value === -1 ? null : value.value\n )\n}\n\n// 5.watch\n// 已第一个为标准\nwatch(\n () => [props.selectValue, props.data] as [string, SelectGroupData[]],\n ([selectValue, newData]) => {\n if (newData && newData.length) {\n const list = newData.map(item => {\n const newItem = { ...item }\n if (newItem.showFormType === 'select') {\n if (newItem.options?.length && !newItem.noFirstAddAll) {\n newItem.options = [\n {\n label: '全部',\n value: -1\n },\n ...newItem.options!\n ]\n } else if (newItem.list?.length && !newItem.noFirstAddAll) {\n newItem.list = [\n {\n name: '全部',\n value: -1\n },\n ...newItem.list!\n ]\n }\n }\n return newItem\n })\n let firstItem = list[0]\n const findItem = list.find(item => item.value === selectValue)\n if (findItem) {\n firstItem = findItem\n }\n // 如果默认第一个是下拉框,选中全部\n if (firstItem.showFormType === 'select' && !firstItem.noFirstAddAll) {\n value.value = -1\n }\n selectItem.value = firstItem!\n typeSelectValue.value = selectValue ? selectValue : firstItem.value\n newList.value = list\n }\n },\n {\n deep: true,\n immediate: true\n }\n)\n\nwatch(\n () => [props.value, props.selectValue],\n (newV: any) => {\n value.value =\n isNull(newV[0]) ||\n isUndefined(newV[0]) ||\n (Array.isArray(newV[0]) && newV[0].length === 0)\n ? -1\n : newV[0]\n },\n {\n immediate: true\n }\n)\n</script>\n"],"names":[],"mappings":"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"}
|
|
@@ -290,11 +290,6 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
290
290
|
"custom-row": props.showDrag ? dragCustomRow : _ctx.customRowProps,
|
|
291
291
|
pagination: false,
|
|
292
292
|
"show-header": "",
|
|
293
|
-
scroll: {
|
|
294
|
-
scrollToFirstRowOnChange: true,
|
|
295
|
-
x: props?.scroll?.x ? props?.scroll?.x : "max-content",
|
|
296
|
-
y: props?.scroll?.y ? props?.scroll?.y : "100%"
|
|
297
|
-
},
|
|
298
293
|
onExpand: handleExpand,
|
|
299
294
|
onResizeColumn: handleResizeColumn,
|
|
300
295
|
onChange: props.change,
|
|
@@ -588,7 +583,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
588
583
|
]),
|
|
589
584
|
key: "3"
|
|
590
585
|
} : void 0
|
|
591
|
-
]), 1040, ["class", "columns", "data-source", "expanded-row-keys", "custom-row", "
|
|
586
|
+
]), 1040, ["class", "columns", "data-source", "expanded-row-keys", "custom-row", "onChange", "onExpandedRowsChange"]);
|
|
592
587
|
};
|
|
593
588
|
}
|
|
594
589
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main-table.vue2.mjs","sources":["../../../../../../../packages/components/table/src/components/main-table.vue"],"sourcesContent":["<template>\n <a-table\n :class=\"`${bem.e('main-content')}`\"\n row-key=\"id\"\n v-bind=\"attrs\"\n :columns=\"newColumns\"\n :data-source=\"newDataSource\"\n :expanded-row-keys=\"newExpandedRowKeys\"\n :custom-row=\"props.showDrag ? dragCustomRow : (customRowProps as any)\"\n :pagination=\"false\"\n show-header\n :scroll=\"{\n scrollToFirstRowOnChange: true,\n x: props?.scroll?.x ? props?.scroll?.x : 'max-content',\n y: props?.scroll?.y ? props?.scroll?.y : '100%'\n }\"\n @expand=\"handleExpand\"\n @resize-column=\"handleResizeColumn\"\n @change=\"props.change\"\n @expanded-rows-change=\"props.expandedRowsChange\"\n >\n <!-- 1.表头插槽 -->\n <template #headerCell=\"slots\">\n <template v-if=\"slots.column.key === 'operate' && showSetting\">\n <div :class=\"`${bem.e('operate')}`\">\n <span>{{ slots.column.title }}</span>\n <a-popover\n trigger=\"click\"\n placement=\"bottomRight\"\n :overlay-inner-style=\"{\n padding: '0'\n }\"\n >\n <template #content>\n <div :class=\"`${bem.e('setting-popover')}`\">\n <!-- 头部 -->\n <div :class=\"`${bem.e('setting-popover-header')}`\">\n <a-checkbox\n :indeterminate=\"isIndeterminate\"\n :checked=\"isAllCheck\"\n @change=\"handleAllColumnChange\"\n >\n 列展示\n </a-checkbox>\n <span\n :class=\"`${bem.e('setting-reset-btn')}`\"\n @click=\"handleClickResetBtn\"\n >\n 重置\n </span>\n </div>\n <!-- 内容 -->\n <div :class=\"`${bem.e('setting-popover-content')}`\">\n <div>\n <draggable\n :list=\"settingColumns\"\n item-key=\"key\"\n :group=\"{ name: 'g1' }\"\n @change=\"dragChange\"\n >\n <template #item=\"{ element }\">\n <div :class=\"`${bem.e('setting-popover-menu')}`\">\n <!-- 拖拽 -->\n <div\n :class=\"`flex items-center ${bem.e(\n 'setting-popover-menu-left'\n )}`\"\n >\n <a-button\n type=\"text\"\n :class=\"`${bem.e('setting-popover-menu-icon')}`\"\n :style=\"{\n marginright: '5px'\n }\"\n >\n <ll-icon\n icon-name=\"icon-move\"\n class-name=\"icon\"\n />\n </a-button>\n <a-checkbox\n :checked=\"element.isCheck\"\n @change=\"\n (e: any) => {\n handleColumnItemChange(\n e.target?.checked!,\n element\n )\n }\n \"\n >\n {{ element.title }}\n </a-checkbox>\n </div>\n <div\n :class=\"`flex items-center ${bem.e(\n 'setting-popover-menu-right'\n )}`\"\n >\n <!-- 左移 -->\n <a-button\n type=\"text\"\n :class=\"`${bem.e('setting-popover-menu-icon')}`\"\n @click=\"handleColumnMove(element, 'left')\"\n >\n <ll-icon\n icon-name=\"icon-zuoyi\"\n :class-name=\"`icon ${\n element.fixed === 'left'\n ? bem.e('setting-popover-menu-fixed-icon')\n : ''\n }`\"\n />\n </a-button>\n <a-divider type=\"vertical\" />\n <!-- 右移 -->\n <a-button\n type=\"text\"\n :class=\"`${bem.e('setting-popover-menu-icon')}`\"\n @click=\"handleColumnMove(element, 'right')\"\n >\n <ll-icon\n icon-name=\"icon-youyi\"\n :class-name=\"`icon ${\n element.fixed === 'right'\n ? bem.e('setting-popover-menu-fixed-icon')\n : ''\n }`\"\n />\n </a-button>\n </div>\n </div>\n </template>\n </draggable>\n </div>\n </div>\n </div>\n </template>\n <a-button type=\"text\" :class=\"`${bem.e('setting-icon')}`\">\n <ll-icon icon-name=\"icon-set-line\" />\n </a-button>\n </a-popover>\n </div>\n </template>\n <template v-else-if=\"has(slots.column, 'RC_TABLE_INTERNAL_COL_DEFINE')\">\n <slot name=\"expandedTitle\"></slot>\n </template>\n <template v-else>{{ slots.column.title }}</template>\n <!-- 额外header单元格的插槽内容 -->\n <slot name=\"tableHeaderCell\" v-bind=\"slots\"></slot>\n </template>\n <!-- 2.表格内容插槽 -->\n <template #bodyCell=\"slots\">\n <!-- 添加序列列 -->\n <template v-if=\"slots.column.key === '#' && showIndexColumn\">\n {{ slots.index + 1 }}\n </template>\n <!-- 添加操作列 -->\n <template v-else-if=\"slots.column.key === 'operate'\">\n <slot name=\"tableOperate\" v-bind=\"slots\"></slot>\n </template>\n <!-- 额外Body单元格的插槽内容 -->\n <slot name=\"tableBodyCell\" v-bind=\"slots\"></slot>\n </template>\n <!-- 3.空状态自定义插槽 -->\n <template #emptyText>\n <slot name=\"emptyText\">\n <ll-empty> </ll-empty>\n </slot>\n </template>\n <!-- 4.表格自定义展开内容插槽 -->\n <template v-if=\"$slots.expandedRow\" #expandedRowRender=\"slots\">\n <slot name=\"expandedRow\" v-bind=\"slots\"> </slot>\n </template>\n <!-- 5.表格自定义列筛选 -->\n <template v-if=\"$slots.customFilterDropdown\" #customFilterDropdown=\"slots\">\n <slot name=\"customFilterDropdown\" v-bind=\"slots\"> </slot>\n </template>\n <!-- 6.表格自定义筛选图标 -->\n <template v-if=\"$slots.customFilterIcon\" #customFilterIcon=\"slots\">\n <slot name=\"customFilterIcon\" v-bind=\"slots\"> </slot>\n </template>\n <!-- 6.表格总结栏 -->\n <template v-if=\"$slots.summary\" #summary=\"slots\">\n <slot name=\"summary\" v-bind=\"slots\"> </slot>\n </template>\n </a-table>\n</template>\n<script lang=\"ts\" setup>\nimport { ref, watch, computed, useAttrs } from 'vue'\n\nimport { createNamespace } from '@ll-plus/utils'\n\nimport draggable from 'vuedraggable'\n\nimport { has } from 'lodash-es'\nimport { mainTableProps, mainTableEmits } from '../config'\n\n// 1.defineOptions\ndefineOptions({\n name: 'MainTable'\n})\n\n// 2.props/emits\nconst props = defineProps(mainTableProps)\nconst emits = defineEmits(mainTableEmits)\n\n// 3.hooks\nconst attrs = useAttrs()\n\n// 3.ref/let/const\nconst newColumns: any = ref([]) // 显示在表格的columns\nconst settingColumns: any = ref([])\nconst newDataSource: any = ref([])\nconst newExpandedRowKeys: any = ref([]) //展开的id数组\nlet preIndex = -1 // 源目标数据序号\nlet nextIndex = -1 // 目标数据序号\nconst bem = createNamespace('table')\n\n// 往表格列中添加序号和操作\nconst handleAddSerialNumberAndOperateToColumns = () => {\n if (props.showIndexColumn) {\n newColumns.value.unshift({\n title: '#',\n dataIndex: '#',\n key: '#',\n maxWidth: 60,\n minWidth: 60,\n width: 60,\n fixed: 'left',\n class: 'table-serial-number-cell'\n })\n }\n // ...(props.size ? { 'font-size': addUnit(props.size) } : {}),\n if (props.showOperate) {\n let maxWidth = 70\n let minWidth = 120\n let width = 120\n if (props.operateWidth) {\n const operateWidth = props.operateWidth\n maxWidth = operateWidth\n minWidth = operateWidth\n width = operateWidth\n }\n newColumns.value.push({\n title: '操作',\n dataIndex: '',\n key: 'operate',\n maxWidth,\n minWidth,\n width,\n fixed: 'right',\n class: 'table-serial-operate-cell'\n })\n }\n}\n// 处理表格列的左、右固定排序(letf放最左边,没有定位放中间,右边放right定位)\nconst handleColumnsSortByFixed = (list: any, isDrag?: boolean) => {\n const newList = list\n const leftFixedColumns: any = [],\n normalFixedColumns: any = [],\n rightFixedColumns: any = []\n newList.forEach((item: any) => {\n const fixed = item.fixed\n if (fixed === 'left') {\n leftFixedColumns.push(item)\n } else if (fixed === 'right') {\n rightFixedColumns.push(item)\n } else {\n normalFixedColumns.push(item)\n }\n })\n leftFixedColumns.sort(\n (a: any, b: any) => a.columnSortIndex - b.columnSortIndex\n )\n normalFixedColumns.sort(\n (a: any, b: any) => a.columnSortIndex - b.columnSortIndex\n )\n rightFixedColumns.sort(\n (a: any, b: any) => a.columnSortIndex - b.columnSortIndex\n )\n newColumns.value = [\n ...leftFixedColumns,\n ...normalFixedColumns,\n ...rightFixedColumns\n ]\n if (isDrag) {\n handleAddSerialNumberAndOperateToColumns()\n }\n}\n\n// 4.watch\nwatch(\n () => props.dataSource,\n (newValue: any) => {\n newDataSource.value = [...newValue]\n },\n {\n deep: true,\n immediate: true\n }\n)\n// 从本地存储中获取columns/没有则用用户传的\nwatch(\n () => [\n props.columns,\n props.settingKey,\n props.showIndexColumn,\n props.showOperate\n ],\n (arr: any) => {\n const [newValue, key] = arr\n let newcolumns = []\n // 有key\n if (key && localStorage.getItem(key)) {\n const localStorageColumns = localStorage.getItem(key)\n if (localStorageColumns) {\n newcolumns = JSON.parse(localStorageColumns)\n }\n } else {\n // 没key\n newcolumns = newValue.map((item: any, index: number) => ({\n ...item,\n isCheck: true,\n columnSortIndex:\n item.columnSortIndex === 0 || item.columnSortIndex\n ? item.columnSortIndex\n : index\n }))\n }\n // 1.过滤掉没有选中的\n newColumns.value = [...newcolumns].filter((item: any) => item.isCheck)\n // 2.如果有设置序列和操作,则添加\n handleAddSerialNumberAndOperateToColumns()\n // 3.根据定位来排序\n handleColumnsSortByFixed(newColumns.value)\n settingColumns.value = [...newcolumns]\n },\n {\n deep: true,\n immediate: true\n }\n)\nwatch(\n () => props.expandedRowKeys,\n (newValue: any) => {\n if (Array.isArray(newValue)) {\n newExpandedRowKeys.value = [...newValue]\n }\n },\n {\n deep: true,\n immediate: true\n }\n)\n// 5.methods\n//重新定义树状展开关闭功能\nconst handleExpand = (expanded: boolean, record: any) => {\n if (expanded) {\n newExpandedRowKeys.value.push(record.id)\n } else {\n const index = newExpandedRowKeys.value.findIndex(\n (e: any) => e === record.id\n )\n newExpandedRowKeys.value.splice(index, 1)\n }\n props.expand && props.expand(expanded, record)\n}\n// 列拖拽\nconst handleResizeColumn = (w: any, col: any) => {\n col.width = w\n props.resizeColumn && props.resizeColumn(w, col)\n}\n// 拖动排序\nconst dragCustomRow = (_: any, index: number) => {\n const normalConfig = {\n props: {\n // draggable: 'true'\n },\n draggable: true,\n style: {\n cursor: 'pointer'\n },\n // 鼠标移入\n onMouseenter: (event: Event) => {\n const target = event.target as HTMLElement\n target.draggable = true // 让你要拖动的行可以拖动,默认不可以\n },\n // 开始拖拽\n onDragstart: (event: Event) => {\n event.stopPropagation()\n preIndex = index\n },\n // 拖动元素经过的元素\n onDragover: (event: Event) => {\n event.preventDefault()\n },\n // 鼠标松开\n onDrop: (event: Event) => {\n let sortSource: any[] = []\n event.stopPropagation()\n // 得到目标数据序号\n nextIndex = index\n const dataSource = newDataSource.value\n // 排序后两个sort互换\n const preItem = { ...dataSource[preIndex] }\n const nextItem = { ...dataSource[nextIndex] }\n const preSort = preItem.sort\n const nextSort = nextItem.sort\n preItem.sort = nextSort\n nextItem.sort = preSort\n\n dataSource[preIndex] = nextItem\n dataSource[nextIndex] = preItem\n sortSource = [...dataSource]\n emits('handleChangeDataSource', sortSource)\n props.dragChange && props.dragChange(sortSource)\n }\n }\n const extraConfig = props.customRowProps\n ? { ...props.customRowProps(_, index) }\n : {}\n return { ...normalConfig, ...extraConfig }\n}\n// 是否全选\nconst isAllCheck = computed(() => {\n return settingColumns.value.every((item: any) => item.isCheck)\n})\n// 是否全选\nconst isIndeterminate = computed(() => {\n const getIsChecks = settingColumns.value.filter((item: any) => item.isCheck)\n return getIsChecks.length === 0\n ? false\n : settingColumns.value.length > getIsChecks.length\n})\n// 单个checkbox的change\nconst handleChangeColumns = () => {\n const isCheckSettingColumns = settingColumns.value.filter(\n (item: any, index: number) => {\n item.columnSortIndex = index\n return item.isCheck\n }\n )\n handleColumnsSortByFixed(isCheckSettingColumns, true)\n}\n\nconst handleColumnItemChange = (value: boolean, item: any) => {\n const findSettingIndex = settingColumns.value.findIndex(\n (citem: any) => item.key === citem.key\n )\n\n if (findSettingIndex > -1) {\n settingColumns.value[findSettingIndex].isCheck = value\n handleChangeColumns()\n handleClickSubmitBtn()\n }\n}\n// 全选change\nconst handleAllColumnChange = (e: any) => {\n const checked = e.target.checked\n settingColumns.value.forEach((item: any) => (item.isCheck = checked))\n if (checked) {\n newColumns.value = [...props.columns]\n } else {\n newColumns.value = []\n }\n handleAddSerialNumberAndOperateToColumns()\n handleClickSubmitBtn()\n}\n// 拖拽change\nconst dragChange = () => {\n handleChangeColumns()\n handleClickSubmitBtn()\n}\n// 点击重置按钮\nconst handleClickResetBtn = () => {\n const newcolumns = props.columns.map((item: any, index: number) => ({\n ...item,\n isCheck: true,\n columnSortIndex: index\n }))\n newColumns.value = [...newcolumns]\n handleAddSerialNumberAndOperateToColumns()\n settingColumns.value = [...newcolumns]\n handleClickSubmitBtn()\n}\n// 点击保存按钮\nconst handleClickSubmitBtn = () => {\n if (props.settingKey) {\n localStorage.setItem(props.settingKey, JSON.stringify(settingColumns.value))\n }\n}\n// 处理column左固定和右固定\nconst handleColumnMove = (element: any, way: string) => {\n const fixed = element.fixed\n if (fixed === way) {\n element.fixed = false\n } else {\n element.fixed = way\n }\n handleColumnsSortByFixed(newColumns.value)\n handleClickSubmitBtn()\n}\n</script>\n../config/table\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"main-table.vue2.mjs","sources":["../../../../../../../packages/components/table/src/components/main-table.vue"],"sourcesContent":["<template>\n <a-table\n :class=\"`${bem.e('main-content')}`\"\n row-key=\"id\"\n v-bind=\"attrs\"\n :columns=\"newColumns\"\n :data-source=\"newDataSource\"\n :expanded-row-keys=\"newExpandedRowKeys\"\n :custom-row=\"props.showDrag ? dragCustomRow : (customRowProps as any)\"\n :pagination=\"false\"\n show-header\n @expand=\"handleExpand\"\n @resize-column=\"handleResizeColumn\"\n @change=\"props.change\"\n @expanded-rows-change=\"props.expandedRowsChange\"\n >\n <!-- 1.表头插槽 -->\n <template #headerCell=\"slots\">\n <template v-if=\"slots.column.key === 'operate' && showSetting\">\n <div :class=\"`${bem.e('operate')}`\">\n <span>{{ slots.column.title }}</span>\n <a-popover\n trigger=\"click\"\n placement=\"bottomRight\"\n :overlay-inner-style=\"{\n padding: '0'\n }\"\n >\n <template #content>\n <div :class=\"`${bem.e('setting-popover')}`\">\n <!-- 头部 -->\n <div :class=\"`${bem.e('setting-popover-header')}`\">\n <a-checkbox\n :indeterminate=\"isIndeterminate\"\n :checked=\"isAllCheck\"\n @change=\"handleAllColumnChange\"\n >\n 列展示\n </a-checkbox>\n <span\n :class=\"`${bem.e('setting-reset-btn')}`\"\n @click=\"handleClickResetBtn\"\n >\n 重置\n </span>\n </div>\n <!-- 内容 -->\n <div :class=\"`${bem.e('setting-popover-content')}`\">\n <div>\n <draggable\n :list=\"settingColumns\"\n item-key=\"key\"\n :group=\"{ name: 'g1' }\"\n @change=\"dragChange\"\n >\n <template #item=\"{ element }\">\n <div :class=\"`${bem.e('setting-popover-menu')}`\">\n <!-- 拖拽 -->\n <div\n :class=\"`flex items-center ${bem.e(\n 'setting-popover-menu-left'\n )}`\"\n >\n <a-button\n type=\"text\"\n :class=\"`${bem.e('setting-popover-menu-icon')}`\"\n :style=\"{\n marginright: '5px'\n }\"\n >\n <ll-icon\n icon-name=\"icon-move\"\n class-name=\"icon\"\n />\n </a-button>\n <a-checkbox\n :checked=\"element.isCheck\"\n @change=\"\n (e: any) => {\n handleColumnItemChange(\n e.target?.checked!,\n element\n )\n }\n \"\n >\n {{ element.title }}\n </a-checkbox>\n </div>\n <div\n :class=\"`flex items-center ${bem.e(\n 'setting-popover-menu-right'\n )}`\"\n >\n <!-- 左移 -->\n <a-button\n type=\"text\"\n :class=\"`${bem.e('setting-popover-menu-icon')}`\"\n @click=\"handleColumnMove(element, 'left')\"\n >\n <ll-icon\n icon-name=\"icon-zuoyi\"\n :class-name=\"`icon ${\n element.fixed === 'left'\n ? bem.e('setting-popover-menu-fixed-icon')\n : ''\n }`\"\n />\n </a-button>\n <a-divider type=\"vertical\" />\n <!-- 右移 -->\n <a-button\n type=\"text\"\n :class=\"`${bem.e('setting-popover-menu-icon')}`\"\n @click=\"handleColumnMove(element, 'right')\"\n >\n <ll-icon\n icon-name=\"icon-youyi\"\n :class-name=\"`icon ${\n element.fixed === 'right'\n ? bem.e('setting-popover-menu-fixed-icon')\n : ''\n }`\"\n />\n </a-button>\n </div>\n </div>\n </template>\n </draggable>\n </div>\n </div>\n </div>\n </template>\n <a-button type=\"text\" :class=\"`${bem.e('setting-icon')}`\">\n <ll-icon icon-name=\"icon-set-line\" />\n </a-button>\n </a-popover>\n </div>\n </template>\n <template v-else-if=\"has(slots.column, 'RC_TABLE_INTERNAL_COL_DEFINE')\">\n <slot name=\"expandedTitle\"></slot>\n </template>\n <template v-else>{{ slots.column.title }}</template>\n <!-- 额外header单元格的插槽内容 -->\n <slot name=\"tableHeaderCell\" v-bind=\"slots\"></slot>\n </template>\n <!-- 2.表格内容插槽 -->\n <template #bodyCell=\"slots\">\n <!-- 添加序列列 -->\n <template v-if=\"slots.column.key === '#' && showIndexColumn\">\n {{ slots.index + 1 }}\n </template>\n <!-- 添加操作列 -->\n <template v-else-if=\"slots.column.key === 'operate'\">\n <slot name=\"tableOperate\" v-bind=\"slots\"></slot>\n </template>\n <!-- 额外Body单元格的插槽内容 -->\n <slot name=\"tableBodyCell\" v-bind=\"slots\"></slot>\n </template>\n <!-- 3.空状态自定义插槽 -->\n <template #emptyText>\n <slot name=\"emptyText\">\n <ll-empty> </ll-empty>\n </slot>\n </template>\n <!-- 4.表格自定义展开内容插槽 -->\n <template v-if=\"$slots.expandedRow\" #expandedRowRender=\"slots\">\n <slot name=\"expandedRow\" v-bind=\"slots\"> </slot>\n </template>\n <!-- 5.表格自定义列筛选 -->\n <template v-if=\"$slots.customFilterDropdown\" #customFilterDropdown=\"slots\">\n <slot name=\"customFilterDropdown\" v-bind=\"slots\"> </slot>\n </template>\n <!-- 6.表格自定义筛选图标 -->\n <template v-if=\"$slots.customFilterIcon\" #customFilterIcon=\"slots\">\n <slot name=\"customFilterIcon\" v-bind=\"slots\"> </slot>\n </template>\n <!-- 6.表格总结栏 -->\n <template v-if=\"$slots.summary\" #summary=\"slots\">\n <slot name=\"summary\" v-bind=\"slots\"> </slot>\n </template>\n </a-table>\n</template>\n<script lang=\"ts\" setup>\nimport { ref, watch, computed, useAttrs } from 'vue'\n\nimport { createNamespace } from '@ll-plus/utils'\n\nimport draggable from 'vuedraggable'\n\nimport { has } from 'lodash-es'\nimport { mainTableProps, mainTableEmits } from '../config'\n\n// 1.defineOptions\ndefineOptions({\n name: 'MainTable'\n})\n\n// 2.props/emits\nconst props = defineProps(mainTableProps)\nconst emits = defineEmits(mainTableEmits)\n\n// 3.hooks\nconst attrs = useAttrs()\n\n// 3.ref/let/const\nconst newColumns: any = ref([]) // 显示在表格的columns\nconst settingColumns: any = ref([])\nconst newDataSource: any = ref([])\nconst newExpandedRowKeys: any = ref([]) //展开的id数组\nlet preIndex = -1 // 源目标数据序号\nlet nextIndex = -1 // 目标数据序号\nconst bem = createNamespace('table')\n\n// 往表格列中添加序号和操作\nconst handleAddSerialNumberAndOperateToColumns = () => {\n if (props.showIndexColumn) {\n newColumns.value.unshift({\n title: '#',\n dataIndex: '#',\n key: '#',\n maxWidth: 60,\n minWidth: 60,\n width: 60,\n fixed: 'left',\n class: 'table-serial-number-cell'\n })\n }\n // ...(props.size ? { 'font-size': addUnit(props.size) } : {}),\n if (props.showOperate) {\n let maxWidth = 70\n let minWidth = 120\n let width = 120\n if (props.operateWidth) {\n const operateWidth = props.operateWidth\n maxWidth = operateWidth\n minWidth = operateWidth\n width = operateWidth\n }\n newColumns.value.push({\n title: '操作',\n dataIndex: '',\n key: 'operate',\n maxWidth,\n minWidth,\n width,\n fixed: 'right',\n class: 'table-serial-operate-cell'\n })\n }\n}\n// 处理表格列的左、右固定排序(letf放最左边,没有定位放中间,右边放right定位)\nconst handleColumnsSortByFixed = (list: any, isDrag?: boolean) => {\n const newList = list\n const leftFixedColumns: any = [],\n normalFixedColumns: any = [],\n rightFixedColumns: any = []\n newList.forEach((item: any) => {\n const fixed = item.fixed\n if (fixed === 'left') {\n leftFixedColumns.push(item)\n } else if (fixed === 'right') {\n rightFixedColumns.push(item)\n } else {\n normalFixedColumns.push(item)\n }\n })\n leftFixedColumns.sort(\n (a: any, b: any) => a.columnSortIndex - b.columnSortIndex\n )\n normalFixedColumns.sort(\n (a: any, b: any) => a.columnSortIndex - b.columnSortIndex\n )\n rightFixedColumns.sort(\n (a: any, b: any) => a.columnSortIndex - b.columnSortIndex\n )\n newColumns.value = [\n ...leftFixedColumns,\n ...normalFixedColumns,\n ...rightFixedColumns\n ]\n if (isDrag) {\n handleAddSerialNumberAndOperateToColumns()\n }\n}\n\n// 4.watch\nwatch(\n () => props.dataSource,\n (newValue: any) => {\n newDataSource.value = [...newValue]\n },\n {\n deep: true,\n immediate: true\n }\n)\n// 从本地存储中获取columns/没有则用用户传的\nwatch(\n () => [\n props.columns,\n props.settingKey,\n props.showIndexColumn,\n props.showOperate\n ],\n (arr: any) => {\n const [newValue, key] = arr\n let newcolumns = []\n // 有key\n if (key && localStorage.getItem(key)) {\n const localStorageColumns = localStorage.getItem(key)\n if (localStorageColumns) {\n newcolumns = JSON.parse(localStorageColumns)\n }\n } else {\n // 没key\n newcolumns = newValue.map((item: any, index: number) => ({\n ...item,\n isCheck: true,\n columnSortIndex:\n item.columnSortIndex === 0 || item.columnSortIndex\n ? item.columnSortIndex\n : index\n }))\n }\n // 1.过滤掉没有选中的\n newColumns.value = [...newcolumns].filter((item: any) => item.isCheck)\n // 2.如果有设置序列和操作,则添加\n handleAddSerialNumberAndOperateToColumns()\n // 3.根据定位来排序\n handleColumnsSortByFixed(newColumns.value)\n settingColumns.value = [...newcolumns]\n },\n {\n deep: true,\n immediate: true\n }\n)\nwatch(\n () => props.expandedRowKeys,\n (newValue: any) => {\n if (Array.isArray(newValue)) {\n newExpandedRowKeys.value = [...newValue]\n }\n },\n {\n deep: true,\n immediate: true\n }\n)\n// 5.methods\n//重新定义树状展开关闭功能\nconst handleExpand = (expanded: boolean, record: any) => {\n if (expanded) {\n newExpandedRowKeys.value.push(record.id)\n } else {\n const index = newExpandedRowKeys.value.findIndex(\n (e: any) => e === record.id\n )\n newExpandedRowKeys.value.splice(index, 1)\n }\n props.expand && props.expand(expanded, record)\n}\n// 列拖拽\nconst handleResizeColumn = (w: any, col: any) => {\n col.width = w\n props.resizeColumn && props.resizeColumn(w, col)\n}\n// 拖动排序\nconst dragCustomRow = (_: any, index: number) => {\n const normalConfig = {\n props: {\n // draggable: 'true'\n },\n draggable: true,\n style: {\n cursor: 'pointer'\n },\n // 鼠标移入\n onMouseenter: (event: Event) => {\n const target = event.target as HTMLElement\n target.draggable = true // 让你要拖动的行可以拖动,默认不可以\n },\n // 开始拖拽\n onDragstart: (event: Event) => {\n event.stopPropagation()\n preIndex = index\n },\n // 拖动元素经过的元素\n onDragover: (event: Event) => {\n event.preventDefault()\n },\n // 鼠标松开\n onDrop: (event: Event) => {\n let sortSource: any[] = []\n event.stopPropagation()\n // 得到目标数据序号\n nextIndex = index\n const dataSource = newDataSource.value\n // 排序后两个sort互换\n const preItem = { ...dataSource[preIndex] }\n const nextItem = { ...dataSource[nextIndex] }\n const preSort = preItem.sort\n const nextSort = nextItem.sort\n preItem.sort = nextSort\n nextItem.sort = preSort\n\n dataSource[preIndex] = nextItem\n dataSource[nextIndex] = preItem\n sortSource = [...dataSource]\n emits('handleChangeDataSource', sortSource)\n props.dragChange && props.dragChange(sortSource)\n }\n }\n const extraConfig = props.customRowProps\n ? { ...props.customRowProps(_, index) }\n : {}\n return { ...normalConfig, ...extraConfig }\n}\n// 是否全选\nconst isAllCheck = computed(() => {\n return settingColumns.value.every((item: any) => item.isCheck)\n})\n// 是否全选\nconst isIndeterminate = computed(() => {\n const getIsChecks = settingColumns.value.filter((item: any) => item.isCheck)\n return getIsChecks.length === 0\n ? false\n : settingColumns.value.length > getIsChecks.length\n})\n// 单个checkbox的change\nconst handleChangeColumns = () => {\n const isCheckSettingColumns = settingColumns.value.filter(\n (item: any, index: number) => {\n item.columnSortIndex = index\n return item.isCheck\n }\n )\n handleColumnsSortByFixed(isCheckSettingColumns, true)\n}\n\nconst handleColumnItemChange = (value: boolean, item: any) => {\n const findSettingIndex = settingColumns.value.findIndex(\n (citem: any) => item.key === citem.key\n )\n\n if (findSettingIndex > -1) {\n settingColumns.value[findSettingIndex].isCheck = value\n handleChangeColumns()\n handleClickSubmitBtn()\n }\n}\n// 全选change\nconst handleAllColumnChange = (e: any) => {\n const checked = e.target.checked\n settingColumns.value.forEach((item: any) => (item.isCheck = checked))\n if (checked) {\n newColumns.value = [...props.columns]\n } else {\n newColumns.value = []\n }\n handleAddSerialNumberAndOperateToColumns()\n handleClickSubmitBtn()\n}\n// 拖拽change\nconst dragChange = () => {\n handleChangeColumns()\n handleClickSubmitBtn()\n}\n// 点击重置按钮\nconst handleClickResetBtn = () => {\n const newcolumns = props.columns.map((item: any, index: number) => ({\n ...item,\n isCheck: true,\n columnSortIndex: index\n }))\n newColumns.value = [...newcolumns]\n handleAddSerialNumberAndOperateToColumns()\n settingColumns.value = [...newcolumns]\n handleClickSubmitBtn()\n}\n// 点击保存按钮\nconst handleClickSubmitBtn = () => {\n if (props.settingKey) {\n localStorage.setItem(props.settingKey, JSON.stringify(settingColumns.value))\n }\n}\n// 处理column左固定和右固定\nconst handleColumnMove = (element: any, way: string) => {\n const fixed = element.fixed\n if (fixed === way) {\n element.fixed = false\n } else {\n element.fixed = way\n }\n handleColumnsSortByFixed(newColumns.value)\n handleClickSubmitBtn()\n}\n</script>\n../config/table\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main-table.mjs","sources":["../../../../../../../packages/components/table/src/config/main-table.ts"],"sourcesContent":["import { buildProps, definePropType } from '@ll-plus/utils'\n\nimport MainTable from '../components/main-table.vue'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type { TableColumnProps } from 'ant-design-vue'\n\n//
|
|
1
|
+
{"version":3,"file":"main-table.mjs","sources":["../../../../../../../packages/components/table/src/config/main-table.ts"],"sourcesContent":["import { buildProps, definePropType } from '@ll-plus/utils'\n\nimport MainTable from '../components/main-table.vue'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type { TableColumnProps } from 'ant-design-vue'\n\n// 弹窗定位的位置\nexport const tableContentType = ['table', 'card'] as const\nexport const mainTableProps = buildProps({\n /**\n * @description 动态插槽显示card和table\n */\n operateWidth: {\n type: Number,\n default: 120\n },\n /**\n * @description 动态插槽显示card和table\n */\n contentType: {\n type: String,\n values: tableContentType,\n default: 'table'\n },\n /**\n * @description 操作栏编辑操作列的key,用于下次记录用户行为\n */\n settingKey: {\n type: String,\n default: ''\n },\n /**\n * @description 列设置\n */\n columns: {\n type: definePropType<TableColumnProps[]>(Array),\n default: () => []\n },\n /**\n * @description 数据源\n */\n dataSource: {\n type: definePropType<any[]>(Array),\n default: () => []\n },\n /**\n * @description 是否数据拖拽\n */\n showDrag: {\n type: Boolean\n },\n /**\n * @description 是否显示#序列\n */\n showIndexColumn: {\n type: Boolean,\n default: true\n },\n /**\n * @description 展示操作列的\n */\n showOperate: {\n type: Boolean,\n default: true\n },\n /**\n * @description 是否显示操作栏上的设置\n */\n showSetting: {\n type: Boolean,\n default: true\n },\n /**\n * @description table的scroll\n */\n // scroll: {\n // type: definePropType<any>(Object)\n // },\n /**\n * @description 展开的key\n */\n expandedRowKeys: {\n type: definePropType<string[]>(Array)\n },\n /**\n * @description 是否隐藏分页\n */\n hiddenPagination: {\n type: Boolean\n },\n /**\n * @description 设置行属性同表格的customRow属性\n */\n customRowProps: {\n type: Function\n },\n /**\n * @description 点击展开图标时触发\n */\n expand: {\n type: Function\n },\n /**\n * @description 分页、排序、筛选变化时触发\n */\n change: {\n type: Function\n },\n /**\n * @description 展开的行变化时触发\n */\n expandedRowsChange: {\n type: Function\n },\n /**\n * @description 拖动列改变列的宽度时触发\n */\n resizeColumn: {\n type: Function\n },\n /**\n * @description 拖拽后的change\n */\n dragChange: {\n type: Function\n }\n} as const)\n\nexport const mainTableEmits = {\n handleChangeDataSource: (dataSource: any[]) => !!dataSource\n}\n\n// props\nexport type MainTableProps = ExtractPropTypes<typeof mainTableProps>\nexport type TableContentType = MainTableProps['contentType']\n\n// emits\nexport type MainTableEmits = typeof mainTableEmits\n\n// instance\nexport type MainTableInstance = InstanceType<typeof MainTable>\n"],"names":[],"mappings":";;;;AAQa,MAAA,gBAAA,GAAmB,CAAC,OAAA,EAAS,MAAM,EAAA;AACzC,MAAM,iBAAiB,UAAW,CAAA;AAAA;AAAA;AAAA;AAAA,EAIvC,YAAc,EAAA;AAAA,IACZ,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,GAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,WAAa,EAAA;AAAA,IACX,IAAM,EAAA,MAAA;AAAA,IACN,MAAQ,EAAA,gBAAA;AAAA,IACR,OAAS,EAAA,OAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,UAAY,EAAA;AAAA,IACV,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,OAAS,EAAA;AAAA,IACP,IAAA,EAAM,eAAmC,KAAK,CAAA;AAAA,IAC9C,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA;AAAA;AAAA;AAAA,EAIA,UAAY,EAAA;AAAA,IACV,IAAA,EAAM,eAAsB,KAAK,CAAA;AAAA,IACjC,OAAA,EAAS,MAAM,EAAC;AAAA,GAClB;AAAA;AAAA;AAAA;AAAA,EAIA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,eAAiB,EAAA;AAAA,IACf,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,WAAa,EAAA;AAAA,IACX,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,WAAa,EAAA;AAAA,IACX,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,eAAiB,EAAA;AAAA,IACf,IAAA,EAAM,eAAyB,KAAK,CAAA;AAAA,GACtC;AAAA;AAAA;AAAA;AAAA,EAIA,gBAAkB,EAAA;AAAA,IAChB,IAAM,EAAA,OAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,cAAgB,EAAA;AAAA,IACd,IAAM,EAAA,QAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,MAAQ,EAAA;AAAA,IACN,IAAM,EAAA,QAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,MAAQ,EAAA;AAAA,IACN,IAAM,EAAA,QAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,kBAAoB,EAAA;AAAA,IAClB,IAAM,EAAA,QAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,YAAc,EAAA;AAAA,IACZ,IAAM,EAAA,QAAA;AAAA,GACR;AAAA;AAAA;AAAA;AAAA,EAIA,UAAY,EAAA;AAAA,IACV,IAAM,EAAA,QAAA;AAAA,GACR;AACF,CAAU,EAAA;AAEH,MAAM,cAAiB,GAAA;AAAA,EAC5B,sBAAwB,EAAA,CAAC,UAAsB,KAAA,CAAC,CAAC,UAAA;AACnD;;;;"}
|