ll-plus 2.3.19 → 2.3.20

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 (121) hide show
  1. package/es/components/advanced-filtering/index.d.ts +36 -34
  2. package/es/components/advanced-filtering/index.mjs +1 -1
  3. package/es/components/advanced-filtering/src/advanced-filtering.d.ts +15 -2
  4. package/es/components/advanced-filtering/src/advanced-filtering.mjs +60 -2
  5. package/es/components/advanced-filtering/src/advanced-filtering.mjs.map +1 -1
  6. package/es/components/advanced-filtering/src/advanced-filtering.vue.d.ts +20 -19
  7. package/es/components/advanced-filtering/src/advanced-filtering.vue2.mjs +4 -3
  8. package/es/components/advanced-filtering/src/advanced-filtering.vue2.mjs.map +1 -1
  9. package/es/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +11 -6
  10. package/es/components/advanced-filtering/src/components/advanced-filtering-params.vue2.mjs +64 -11
  11. package/es/components/advanced-filtering/src/components/advanced-filtering-params.vue2.mjs.map +1 -1
  12. package/es/components/advanced-filtering/src/components/advanced-filtering-tags.vue.d.ts +5 -9
  13. package/es/components/advanced-filtering/src/components/advanced-filtering-tags.vue2.mjs +33 -61
  14. package/es/components/advanced-filtering/src/components/advanced-filtering-tags.vue2.mjs.map +1 -1
  15. package/es/components/api-component/index.d.ts +8 -8
  16. package/es/components/api-component/src/api-component.vue.d.ts +8 -8
  17. package/es/components/api-component/src/components/body-component.vue.d.ts +4 -4
  18. package/es/components/api-component/src/components/params-table-row.vue.d.ts +2 -2
  19. package/es/components/api-component/src/components/params-table.vue.d.ts +4 -4
  20. package/es/components/code-editor/index.d.ts +2 -2
  21. package/es/components/code-editor/src/code-editor.vue.d.ts +2 -2
  22. package/es/components/drawer/src/components/second-confirmation/index.d.ts +2 -2
  23. package/es/components/drawer/src/components/second-confirmation/src/second-confirmation.vue.d.ts +2 -2
  24. package/es/components/easy-cron/index.d.ts +5 -5
  25. package/es/components/easy-cron/src/easy-cron.vue.d.ts +5 -5
  26. package/es/components/form/src/form.vue2.mjs +12 -0
  27. package/es/components/form/src/form.vue2.mjs.map +1 -1
  28. package/es/components/index.mjs +1 -1
  29. package/es/components/input/index.d.ts +31 -31
  30. package/es/components/input/src/input.vue.d.ts +31 -31
  31. package/es/components/number-range/index.d.ts +13 -13
  32. package/es/components/number-range/src/number-range.d.ts +4 -4
  33. package/es/components/number-range/src/number-range.mjs +1 -1
  34. package/es/components/number-range/src/number-range.mjs.map +1 -1
  35. package/es/components/number-range/src/number-range.vue.d.ts +13 -14
  36. package/es/components/number-range/src/number-range.vue2.mjs +14 -7
  37. package/es/components/number-range/src/number-range.vue2.mjs.map +1 -1
  38. package/es/components/select-group/index.d.ts +1 -1
  39. package/es/components/select-group/src/select-group.vue.d.ts +1 -1
  40. package/es/components/textarea/index.d.ts +5 -5
  41. package/es/components/textarea/src/textarea.vue.d.ts +5 -5
  42. package/es/index.mjs +1 -1
  43. package/index.full.js +196 -83
  44. package/index.full.min.js +17 -17
  45. package/index.full.min.js.map +1 -1
  46. package/index.full.min.mjs +17 -17
  47. package/index.full.min.mjs.map +1 -1
  48. package/index.full.mjs +193 -85
  49. package/lib/components/advanced-filtering/index.d.ts +36 -34
  50. package/lib/components/advanced-filtering/index.js +5 -0
  51. package/lib/components/advanced-filtering/index.js.map +1 -1
  52. package/lib/components/advanced-filtering/src/advanced-filtering.d.ts +15 -2
  53. package/lib/components/advanced-filtering/src/advanced-filtering.js +64 -1
  54. package/lib/components/advanced-filtering/src/advanced-filtering.js.map +1 -1
  55. package/lib/components/advanced-filtering/src/advanced-filtering.vue.d.ts +20 -19
  56. package/lib/components/advanced-filtering/src/advanced-filtering.vue2.js +3 -2
  57. package/lib/components/advanced-filtering/src/advanced-filtering.vue2.js.map +1 -1
  58. package/lib/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +11 -6
  59. package/lib/components/advanced-filtering/src/components/advanced-filtering-params.vue2.js +62 -9
  60. package/lib/components/advanced-filtering/src/components/advanced-filtering-params.vue2.js.map +1 -1
  61. package/lib/components/advanced-filtering/src/components/advanced-filtering-tags.vue.d.ts +5 -9
  62. package/lib/components/advanced-filtering/src/components/advanced-filtering-tags.vue2.js +33 -61
  63. package/lib/components/advanced-filtering/src/components/advanced-filtering-tags.vue2.js.map +1 -1
  64. package/lib/components/api-component/index.d.ts +8 -8
  65. package/lib/components/api-component/src/api-component.vue.d.ts +8 -8
  66. package/lib/components/api-component/src/components/body-component.vue.d.ts +4 -4
  67. package/lib/components/api-component/src/components/params-table-row.vue.d.ts +2 -2
  68. package/lib/components/api-component/src/components/params-table.vue.d.ts +4 -4
  69. package/lib/components/code-editor/index.d.ts +2 -2
  70. package/lib/components/code-editor/src/code-editor.vue.d.ts +2 -2
  71. package/lib/components/drawer/src/components/second-confirmation/index.d.ts +2 -2
  72. package/lib/components/drawer/src/components/second-confirmation/src/second-confirmation.vue.d.ts +2 -2
  73. package/lib/components/easy-cron/index.d.ts +5 -5
  74. package/lib/components/easy-cron/src/easy-cron.vue.d.ts +5 -5
  75. package/lib/components/form/src/form.vue2.js +12 -0
  76. package/lib/components/form/src/form.vue2.js.map +1 -1
  77. package/lib/components/index.js +5 -0
  78. package/lib/components/index.js.map +1 -1
  79. package/lib/components/input/index.d.ts +31 -31
  80. package/lib/components/input/src/input.vue.d.ts +31 -31
  81. package/lib/components/number-range/index.d.ts +13 -13
  82. package/lib/components/number-range/src/number-range.d.ts +4 -4
  83. package/lib/components/number-range/src/number-range.js +1 -1
  84. package/lib/components/number-range/src/number-range.js.map +1 -1
  85. package/lib/components/number-range/src/number-range.vue.d.ts +13 -14
  86. package/lib/components/number-range/src/number-range.vue2.js +14 -7
  87. package/lib/components/number-range/src/number-range.vue2.js.map +1 -1
  88. package/lib/components/select-group/index.d.ts +1 -1
  89. package/lib/components/select-group/src/select-group.vue.d.ts +1 -1
  90. package/lib/components/textarea/index.d.ts +5 -5
  91. package/lib/components/textarea/src/textarea.vue.d.ts +5 -5
  92. package/lib/index.js +5 -0
  93. package/lib/index.js.map +1 -1
  94. package/package.json +1 -1
  95. package/theme-chalk/css/index.css +1 -1
  96. package/theme-chalk/css/operate-icon.css +1 -1
  97. package/types/packages/components/advanced-filtering/index.d.ts +36 -34
  98. package/types/packages/components/advanced-filtering/src/advanced-filtering.d.ts +15 -2
  99. package/types/packages/components/advanced-filtering/src/advanced-filtering.vue.d.ts +20 -19
  100. package/types/packages/components/advanced-filtering/src/components/advanced-filtering-params.vue.d.ts +11 -6
  101. package/types/packages/components/advanced-filtering/src/components/advanced-filtering-tags.vue.d.ts +5 -9
  102. package/types/packages/components/api-component/index.d.ts +8 -8
  103. package/types/packages/components/api-component/src/api-component.vue.d.ts +8 -8
  104. package/types/packages/components/api-component/src/components/body-component.vue.d.ts +4 -4
  105. package/types/packages/components/api-component/src/components/params-table-row.vue.d.ts +2 -2
  106. package/types/packages/components/api-component/src/components/params-table.vue.d.ts +4 -4
  107. package/types/packages/components/code-editor/index.d.ts +2 -2
  108. package/types/packages/components/code-editor/src/code-editor.vue.d.ts +2 -2
  109. package/types/packages/components/drawer/src/components/second-confirmation/index.d.ts +2 -2
  110. package/types/packages/components/drawer/src/components/second-confirmation/src/second-confirmation.vue.d.ts +2 -2
  111. package/types/packages/components/easy-cron/index.d.ts +5 -5
  112. package/types/packages/components/easy-cron/src/easy-cron.vue.d.ts +5 -5
  113. package/types/packages/components/input/index.d.ts +31 -31
  114. package/types/packages/components/input/src/input.vue.d.ts +31 -31
  115. package/types/packages/components/number-range/index.d.ts +13 -13
  116. package/types/packages/components/number-range/src/number-range.d.ts +4 -4
  117. package/types/packages/components/number-range/src/number-range.vue.d.ts +13 -14
  118. package/types/packages/components/select-group/index.d.ts +1 -1
  119. package/types/packages/components/select-group/src/select-group.vue.d.ts +1 -1
  120. package/types/packages/components/textarea/index.d.ts +5 -5
  121. package/types/packages/components/textarea/src/textarea.vue.d.ts +5 -5
@@ -1,6 +1,6 @@
1
1
  import { createElementVNode, defineComponent, ref, watch, resolveComponent, openBlock, createBlock, unref, withCtx, createVNode, withModifiers } from 'vue';
2
2
  import '../../../utils/index.mjs';
3
- import { advancedFilteringProps, advancedFilteringEmits } from './advanced-filtering.mjs';
3
+ import { advancedFilteringProps, advancedFilteringEmits, filterAllValue } from './advanced-filtering.mjs';
4
4
  import '../../index.mjs';
5
5
  import AdvancedFilteringParams from './components/advanced-filtering-params.vue.mjs';
6
6
  import AdvancedFilteringTags from './components/advanced-filtering-tags.vue.mjs';
@@ -47,8 +47,9 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
47
47
  watch(
48
48
  filterValue,
49
49
  (n) => {
50
- emits("update:value", n);
51
- emits("change", n);
50
+ const value = filterAllValue(n);
51
+ emits("update:value", value);
52
+ emits("change", value);
52
53
  },
53
54
  {
54
55
  deep: true
@@ -1 +1 @@
1
- {"version":3,"file":"advanced-filtering.vue2.mjs","sources":["../../../../../packages/components/advanced-filtering/src/advanced-filtering.vue"],"sourcesContent":["<template>\n <a-popover\n :overlay-class-name=\"bem.b()\"\n placement=\"bottomRight\"\n :overlay-style=\"props.overlayStyle\"\n :open=\"showSelectBox\"\n >\n <template #content>\n <advanced-filtering-params\n v-model:value=\"filterValue\"\n :filter-columns=\"props.filterColumns\"\n :form-options=\"props.formOptions\"\n @close=\"handleClose\"\n />\n </template>\n <a-popover\n :overlay-class-name=\"bem.b()\"\n trigger=\"hover\"\n placement=\"bottomRight\"\n :open=\"showValueBox\"\n :overlay-style=\"props.overlayStyle\"\n @open-change=\"handleHoverChange\"\n >\n <template #content>\n <advanced-filtering-tags\n :value=\"filterValue\"\n :filter-columns=\"props.filterColumns\"\n @change=\"handleChange\"\n />\n </template>\n <ll-button @click.stop=\"handleClickChange\">\n <ll-icon icon-name=\"icon-Screening\" style=\"margin-right: 10px\" />\n <span>高级筛选</span>\n </ll-button>\n </a-popover>\n </a-popover>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, watch } from 'vue'\n\nimport { createNamespace } from '@ll-plus/utils'\n\nimport {\n advancedFilteringProps,\n advancedFilteringEmits\n} from './advanced-filtering'\n\nimport { LlButton, LlIcon } from '@ll-plus/components'\nimport AdvancedFilteringParams from './components/advanced-filtering-params.vue'\nimport AdvancedFilteringTags from './components/advanced-filtering-tags.vue'\n\ndefineOptions({ name: 'LlAdvancedFiltering' })\nconst props = defineProps(advancedFilteringProps)\nconst emits = defineEmits(advancedFilteringEmits)\nconst bem = createNamespace('advanced-filtering')\nconst filterValue = ref<any>(props.value)\nconst showSelectBox = ref<boolean>(false)\nconst showValueBox = ref<boolean>(false)\n\nconst handleHoverChange = (visible: boolean) => {\n if (showSelectBox.value) return\n showValueBox.value = visible\n}\n\nconst handleClickChange = () => {\n showSelectBox.value = !showSelectBox.value\n showValueBox.value = false\n}\n\nconst handleClose = () => {\n showSelectBox.value = false\n showValueBox.value = false\n}\n\nconst handleChange = val => {\n filterValue.value = val\n}\nwatch(\n filterValue,\n n => {\n emits('update:value', n)\n emits('change', n)\n },\n {\n deep: true\n }\n)\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAqDA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AACd,IAAM,MAAA,GAAA,GAAM,gBAAgB,oBAAoB,CAAA,CAAA;AAChD,IAAM,MAAA,WAAA,GAAc,GAAS,CAAA,KAAA,CAAM,KAAK,CAAA,CAAA;AACxC,IAAM,MAAA,aAAA,GAAgB,IAAa,KAAK,CAAA,CAAA;AACxC,IAAM,MAAA,YAAA,GAAe,IAAa,KAAK,CAAA,CAAA;AAEvC,IAAM,MAAA,iBAAA,GAAoB,CAAC,OAAqB,KAAA;AAC9C,MAAA,IAAI,aAAc,CAAA,KAAA;AAAO,QAAA,OAAA;AACzB,MAAA,YAAA,CAAa,KAAQ,GAAA,OAAA,CAAA;AAAA,KACvB,CAAA;AAEA,IAAA,MAAM,oBAAoB,MAAM;AAC9B,MAAc,aAAA,CAAA,KAAA,GAAQ,CAAC,aAAc,CAAA,KAAA,CAAA;AACrC,MAAA,YAAA,CAAa,KAAQ,GAAA,KAAA,CAAA;AAAA,KACvB,CAAA;AAEA,IAAA,MAAM,cAAc,MAAM;AACxB,MAAA,aAAA,CAAc,KAAQ,GAAA,KAAA,CAAA;AACtB,MAAA,YAAA,CAAa,KAAQ,GAAA,KAAA,CAAA;AAAA,KACvB,CAAA;AAEA,IAAA,MAAM,eAAe,CAAO,GAAA,KAAA;AAC1B,MAAA,WAAA,CAAY,KAAQ,GAAA,GAAA,CAAA;AAAA,KACtB,CAAA;AACA,IAAA,KAAA;AAAA,MACE,WAAA;AAAA,MACA,CAAK,CAAA,KAAA;AACH,QAAA,KAAA,CAAM,gBAAgB,CAAC,CAAA,CAAA;AACvB,QAAA,KAAA,CAAM,UAAU,CAAC,CAAA,CAAA;AAAA,OACnB;AAAA,MACA;AAAA,QACE,IAAM,EAAA,IAAA;AAAA,OACR;AAAA,KACF,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"advanced-filtering.vue2.mjs","sources":["../../../../../packages/components/advanced-filtering/src/advanced-filtering.vue"],"sourcesContent":["<template>\n <a-popover\n :overlay-class-name=\"bem.b()\"\n placement=\"bottomRight\"\n :overlay-style=\"props.overlayStyle\"\n :open=\"showSelectBox\"\n >\n <template #content>\n <advanced-filtering-params\n v-model:value=\"filterValue\"\n :filter-columns=\"props.filterColumns\"\n :form-options=\"props.formOptions\"\n @close=\"handleClose\"\n />\n </template>\n <a-popover\n :overlay-class-name=\"bem.b()\"\n trigger=\"hover\"\n placement=\"bottomRight\"\n :open=\"showValueBox\"\n :overlay-style=\"props.overlayStyle\"\n @open-change=\"handleHoverChange\"\n >\n <template #content>\n <advanced-filtering-tags\n :value=\"filterValue\"\n :filter-columns=\"props.filterColumns\"\n @change=\"handleChange\"\n />\n </template>\n <ll-button @click.stop=\"handleClickChange\">\n <ll-icon icon-name=\"icon-Screening\" style=\"margin-right: 10px\" />\n <span>高级筛选</span>\n </ll-button>\n </a-popover>\n </a-popover>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, watch } from 'vue'\n\nimport { createNamespace } from '@ll-plus/utils'\n\nimport {\n advancedFilteringProps,\n advancedFilteringEmits,\n filterAllValue\n} from './advanced-filtering'\n\nimport { LlButton, LlIcon } from '@ll-plus/components'\nimport AdvancedFilteringParams from './components/advanced-filtering-params.vue'\nimport AdvancedFilteringTags from './components/advanced-filtering-tags.vue'\n\ndefineOptions({ name: 'LlAdvancedFiltering' })\nconst props = defineProps(advancedFilteringProps)\nconst emits = defineEmits(advancedFilteringEmits)\nconst bem = createNamespace('advanced-filtering')\nconst filterValue = ref<any>(props.value)\nconst showSelectBox = ref<boolean>(false)\nconst showValueBox = ref<boolean>(false)\n\nconst handleHoverChange = (visible: boolean) => {\n if (showSelectBox.value) return\n showValueBox.value = visible\n}\n\nconst handleClickChange = () => {\n showSelectBox.value = !showSelectBox.value\n showValueBox.value = false\n}\n\nconst handleClose = () => {\n showSelectBox.value = false\n showValueBox.value = false\n}\n\nconst handleChange = val => {\n filterValue.value = val\n}\n\nwatch(\n filterValue,\n n => {\n const value = filterAllValue(n)\n emits('update:value', value)\n emits('change', value)\n },\n {\n deep: true\n }\n)\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAsDA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AACd,IAAM,MAAA,GAAA,GAAM,gBAAgB,oBAAoB,CAAA,CAAA;AAChD,IAAM,MAAA,WAAA,GAAc,GAAS,CAAA,KAAA,CAAM,KAAK,CAAA,CAAA;AACxC,IAAM,MAAA,aAAA,GAAgB,IAAa,KAAK,CAAA,CAAA;AACxC,IAAM,MAAA,YAAA,GAAe,IAAa,KAAK,CAAA,CAAA;AAEvC,IAAM,MAAA,iBAAA,GAAoB,CAAC,OAAqB,KAAA;AAC9C,MAAA,IAAI,aAAc,CAAA,KAAA;AAAO,QAAA,OAAA;AACzB,MAAA,YAAA,CAAa,KAAQ,GAAA,OAAA,CAAA;AAAA,KACvB,CAAA;AAEA,IAAA,MAAM,oBAAoB,MAAM;AAC9B,MAAc,aAAA,CAAA,KAAA,GAAQ,CAAC,aAAc,CAAA,KAAA,CAAA;AACrC,MAAA,YAAA,CAAa,KAAQ,GAAA,KAAA,CAAA;AAAA,KACvB,CAAA;AAEA,IAAA,MAAM,cAAc,MAAM;AACxB,MAAA,aAAA,CAAc,KAAQ,GAAA,KAAA,CAAA;AACtB,MAAA,YAAA,CAAa,KAAQ,GAAA,KAAA,CAAA;AAAA,KACvB,CAAA;AAEA,IAAA,MAAM,eAAe,CAAO,GAAA,KAAA;AAC1B,MAAA,WAAA,CAAY,KAAQ,GAAA,GAAA,CAAA;AAAA,KACtB,CAAA;AAEA,IAAA,KAAA;AAAA,MACE,WAAA;AAAA,MACA,CAAK,CAAA,KAAA;AACH,QAAM,MAAA,KAAA,GAAQ,eAAe,CAAC,CAAA,CAAA;AAC9B,QAAA,KAAA,CAAM,gBAAgB,KAAK,CAAA,CAAA;AAC3B,QAAA,KAAA,CAAM,UAAU,KAAK,CAAA,CAAA;AAAA,OACvB;AAAA,MACA;AAAA,QACE,IAAM,EAAA,IAAA;AAAA,OACR;AAAA,KACF,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,5 +1,5 @@
1
1
  declare const _default: import("vue").DefineComponent<{
2
- readonly filterColumns: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => any[]) | (() => any[]) | ((new (...args: any[]) => any[]) | (() => any[]))[], unknown, unknown, () => never[], boolean>;
2
+ readonly filterColumns: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("ll-plus/es/components").FilterColumn[]) | (() => import("ll-plus/es/components").FilterColumn[]) | ((new (...args: any[]) => import("ll-plus/es/components").FilterColumn[]) | (() => import("ll-plus/es/components").FilterColumn[]))[], unknown, unknown, () => never[], boolean>;
3
3
  readonly value: import("ll-plus/es/utils").EpPropFinalized<ObjectConstructor, unknown, unknown, () => {}, boolean>;
4
4
  readonly formOptions: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => Partial<import("vue").ExtractPropTypes<{
5
5
  layout: import("vue-types").VueTypeDef<string>;
@@ -899,7 +899,7 @@ declare const _default: import("vue").DefineComponent<{
899
899
  readonly showFooter: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
900
900
  }, {
901
901
  props: import("@vue/shared").LooseRequired<{
902
- readonly filterColumns: any[];
902
+ readonly filterColumns: import("ll-plus/es/components").FilterColumn[];
903
903
  readonly value: Record<string, any>;
904
904
  readonly formOptions: Partial<import("vue").ExtractPropTypes<{
905
905
  layout: import("vue-types").VueTypeDef<string>;
@@ -1126,11 +1126,12 @@ declare const _default: import("vue").DefineComponent<{
1126
1126
  };
1127
1127
  }>>;
1128
1128
  readonly showFooter: import("ll-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
1129
+ readonly "onUpdate:value"?: ((value: Record<string, any>) => any) | undefined;
1129
1130
  readonly onClose?: (() => any) | undefined;
1130
1131
  readonly onConfirm?: (() => any) | undefined;
1131
1132
  readonly onChangeValue?: ((value: Record<string, any>) => any) | undefined;
1132
1133
  } & {}>;
1133
- emits: ((event: "close") => void) & ((event: "confirm") => void) & ((event: "changeValue", value: Record<string, any>) => void);
1134
+ emits: ((event: "update:value", value: Record<string, any>) => void) & ((event: "close") => void) & ((event: "confirm") => void) & ((event: "changeValue", value: Record<string, any>) => void);
1134
1135
  bem: {
1135
1136
  b: (blockSuffix?: string) => string;
1136
1137
  e: (element?: string) => string;
@@ -1141,10 +1142,12 @@ declare const _default: import("vue").DefineComponent<{
1141
1142
  bem: (blockSuffix: string, element: string, modifier: string) => string;
1142
1143
  is: (name?: string) => string;
1143
1144
  };
1144
- key: import("vue").Ref<number>;
1145
+ innerValue: import("vue").Ref<{}>;
1146
+ computeFormColumns: import("vue").ComputedRef<import("ll-plus/es/components").FilterColumn[]>;
1145
1147
  handleClose: () => void;
1146
1148
  handleAdvancedFilterConfirm: () => void;
1147
1149
  handleChange: (val: Record<string, any>) => void;
1150
+ setData: (val: Record<string, any>) => void;
1148
1151
  readonly LlForm: import("ll-plus/es/utils").SFCWithInstall<import("vue").DefineComponent<{
1149
1152
  readonly formColumns: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => any[]) | (() => any[]) | ((new (...args: any[]) => any[]) | (() => any[]))[], unknown, unknown, () => never[], boolean>;
1150
1153
  readonly formOptions: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => Partial<import("vue").ExtractPropTypes<{
@@ -3940,8 +3943,9 @@ declare const _default: import("vue").DefineComponent<{
3940
3943
  close: () => boolean;
3941
3944
  confirm: () => boolean;
3942
3945
  changeValue: (value: Record<string, any>) => boolean;
3946
+ 'update:value': (value: Record<string, any>) => boolean;
3943
3947
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
3944
- readonly filterColumns: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => any[]) | (() => any[]) | ((new (...args: any[]) => any[]) | (() => any[]))[], unknown, unknown, () => never[], boolean>;
3948
+ readonly filterColumns: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("ll-plus/es/components").FilterColumn[]) | (() => import("ll-plus/es/components").FilterColumn[]) | ((new (...args: any[]) => import("ll-plus/es/components").FilterColumn[]) | (() => import("ll-plus/es/components").FilterColumn[]))[], unknown, unknown, () => never[], boolean>;
3945
3949
  readonly value: import("ll-plus/es/utils").EpPropFinalized<ObjectConstructor, unknown, unknown, () => {}, boolean>;
3946
3950
  readonly formOptions: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => Partial<import("vue").ExtractPropTypes<{
3947
3951
  layout: import("vue-types").VueTypeDef<string>;
@@ -4840,11 +4844,12 @@ declare const _default: import("vue").DefineComponent<{
4840
4844
  }, boolean>;
4841
4845
  readonly showFooter: import("ll-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
4842
4846
  }>> & {
4847
+ "onUpdate:value"?: ((value: Record<string, any>) => any) | undefined;
4843
4848
  onClose?: (() => any) | undefined;
4844
4849
  onConfirm?: (() => any) | undefined;
4845
4850
  onChangeValue?: ((value: Record<string, any>) => any) | undefined;
4846
4851
  }, {
4847
- readonly filterColumns: any[];
4852
+ readonly filterColumns: import("ll-plus/es/components").FilterColumn[];
4848
4853
  readonly value: Record<string, any>;
4849
4854
  readonly formOptions: Partial<import("vue").ExtractPropTypes<{
4850
4855
  layout: import("vue-types").VueTypeDef<string>;
@@ -1,7 +1,8 @@
1
- import { createElementVNode, defineComponent, ref, watch, resolveComponent, openBlock, createBlock, normalizeClass, unref, withCtx, createVNode, createElementBlock, createTextVNode, createCommentVNode } from 'vue';
1
+ import { createElementVNode, defineComponent, ref, computed, watch, resolveComponent, openBlock, createBlock, normalizeClass, unref, withCtx, createVNode, mergeProps, createElementBlock, createTextVNode, createCommentVNode } from 'vue';
2
+ import { has, cloneDeep } from 'lodash-es';
2
3
  import '../../../../utils/index.mjs';
3
4
  import '../../../index.mjs';
4
- import { advancedFilteringParamsProps, advancedFilteringParamsEmits } from '../advanced-filtering.mjs';
5
+ import { advancedFilteringParamsProps, advancedFilteringParamsEmits, ALL_VALUE, filterAllValue, initValue } from '../advanced-filtering.mjs';
5
6
  import { createNamespace } from '../../../../utils/create-namespace.mjs';
6
7
  import { LlForm } from '../../../form/index.mjs';
7
8
 
@@ -25,7 +26,25 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
25
26
  const props = __props;
26
27
  const emits = __emit;
27
28
  const bem = createNamespace("advanced-filtering-params");
28
- const key = ref(0);
29
+ const innerValue = ref({});
30
+ const computeFormColumns = computed(() => {
31
+ return props.filterColumns.map((column) => {
32
+ if (has(column, "options")) {
33
+ if (column.options.length && column.options[0].value === ALL_VALUE || column.unUseDefaultOption) {
34
+ console.log({ column });
35
+ return column;
36
+ }
37
+ column.options = [
38
+ {
39
+ label: column?.defaultOptionLabel ?? "\u5168\u90E8",
40
+ value: ALL_VALUE
41
+ },
42
+ ...column.options
43
+ ];
44
+ }
45
+ return column;
46
+ });
47
+ });
29
48
  const handleClose = () => {
30
49
  emits("close");
31
50
  };
@@ -33,12 +52,47 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
33
52
  emits("confirm");
34
53
  };
35
54
  const handleChange = (val) => {
36
- emits("changeValue", val);
55
+ setData(val);
56
+ };
57
+ const setData = (val) => {
58
+ const value = cloneDeep(val);
59
+ const obj = {};
60
+ for (const i in value) {
61
+ obj[i] = filterAllValue(value[i]);
62
+ }
63
+ emits("update:value", obj);
64
+ emits("changeValue", obj);
37
65
  };
38
66
  watch(
39
67
  () => props.value,
40
- () => {
41
- key.value++;
68
+ (val) => {
69
+ const value = cloneDeep(val);
70
+ const cloneInnerValue = cloneDeep(innerValue.value);
71
+ const obj = {};
72
+ computeFormColumns.value.forEach((item) => {
73
+ obj[item.key] = initValue(item, value);
74
+ });
75
+ const comparedObj = {};
76
+ computeFormColumns.value.forEach((item) => {
77
+ comparedObj[item.key] = initValue(item, cloneInnerValue);
78
+ });
79
+ if (JSON.stringify(obj) !== JSON.stringify(comparedObj)) {
80
+ innerValue.value = cloneDeep(obj);
81
+ }
82
+ },
83
+ {
84
+ deep: true,
85
+ immediate: true
86
+ }
87
+ );
88
+ watch(
89
+ () => innerValue.value,
90
+ (val) => {
91
+ setData(val);
92
+ },
93
+ {
94
+ deep: true,
95
+ immediate: true
42
96
  }
43
97
  );
44
98
  return (_ctx, _cache) => {
@@ -67,13 +121,12 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
67
121
  class: normalizeClass(unref(bem).m("content"))
68
122
  },
69
123
  [
70
- props.filterColumns.length > 0 ? (openBlock(), createBlock(unref(LlForm), {
71
- key: key.value,
72
- "form-columns": props.filterColumns,
124
+ props.filterColumns.length > 0 ? (openBlock(), createBlock(unref(LlForm), mergeProps({ key: 0 }, _ctx.$attrs, {
125
+ "form-columns": computeFormColumns.value,
73
126
  "form-options": props.formOptions,
74
- "form-data": props.value,
127
+ "form-data": innerValue.value,
75
128
  onChange: handleChange
76
- }, null, 8, ["form-columns", "form-options", "form-data"])) : (openBlock(), createElementBlock(
129
+ }), null, 16, ["form-columns", "form-options", "form-data"])) : (openBlock(), createElementBlock(
77
130
  "div",
78
131
  {
79
132
  key: 1,
@@ -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\n title=\"高级筛选\"\n :class=\"bem.b()\"\n onselectstart=\"return false\"\n :bordered=\"false\"\n >\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 :key=\"key\"\n :form-columns=\"props.filterColumns\"\n :form-options=\"props.formOptions\"\n :form-data=\"props.value\"\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: 8px\"\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 } from 'vue'\nimport { createNamespace } from '@ll-plus/utils'\nimport { LlForm } from '@ll-plus/components'\nimport {\n advancedFilteringParamsProps,\n advancedFilteringParamsEmits\n} from '../advanced-filtering'\n\ndefineOptions({ name: 'LlAdvancedFilteringParams' })\n\nconst props = defineProps(advancedFilteringParamsProps)\n\nconst emits = defineEmits(advancedFilteringParamsEmits)\n\nconst bem = createNamespace('advanced-filtering-params')\n\nconst key = ref(0)\n\nconst handleClose = () => {\n emits('close')\n}\nconst handleAdvancedFilterConfirm = () => {\n emits('confirm')\n}\n\nconst handleChange = (val: Record<string, any>) => {\n emits('changeValue', val)\n}\n\nwatch(\n () => props.value,\n () => {\n key.value++\n }\n)\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAqDA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AAEd,IAAA,MAAM,KAAQ,GAAA,MAAA,CAAA;AAEd,IAAM,MAAA,GAAA,GAAM,gBAAgB,2BAA2B,CAAA,CAAA;AAEvD,IAAM,MAAA,GAAA,GAAM,IAAI,CAAC,CAAA,CAAA;AAEjB,IAAA,MAAM,cAAc,MAAM;AACxB,MAAA,KAAA,CAAM,OAAO,CAAA,CAAA;AAAA,KACf,CAAA;AACA,IAAA,MAAM,8BAA8B,MAAM;AACxC,MAAA,KAAA,CAAM,SAAS,CAAA,CAAA;AAAA,KACjB,CAAA;AAEA,IAAM,MAAA,YAAA,GAAe,CAAC,GAA6B,KAAA;AACjD,MAAA,KAAA,CAAM,eAAe,GAAG,CAAA,CAAA;AAAA,KAC1B,CAAA;AAEA,IAAA,KAAA;AAAA,MACE,MAAM,KAAM,CAAA,KAAA;AAAA,MACZ,MAAM;AACJ,QAAI,GAAA,CAAA,KAAA,EAAA,CAAA;AAAA,OACN;AAAA,KACF,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
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\n title=\"高级筛选\"\n :class=\"bem.b()\"\n onselectstart=\"return false\"\n :bordered=\"false\"\n >\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 @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: 8px\"\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\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 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 console.log({ column })\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 = (val: Record<string, any>) => {\n setData(val)\n}\n\nconst setData = (val: Record<string, any>) => {\n const value = cloneDeep(val)\n const obj: Record<string, any> = {}\n for (const i in value) {\n obj[i] = filterAllValue(value[i])\n }\n emits('update:value', obj)\n emits('changeValue', 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> = {}\n computeFormColumns.value.forEach(item => {\n obj[item.key] = initValue(item, value)\n })\n const comparedObj: Record<string, any> = {}\n computeFormColumns.value.forEach(item => {\n comparedObj[item.key] = initValue(item, cloneInnerValue)\n })\n\n if (JSON.stringify(obj) !== JSON.stringify(comparedObj)) {\n innerValue.value = cloneDeep(obj)\n }\n },\n {\n deep: true,\n immediate: true\n }\n)\nwatch(\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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"}
@@ -1,7 +1,7 @@
1
1
  import { type IAvancedFilteringTag } from '../advanced-filtering';
2
2
  import type { FormColumn } from 'll-plus/es/components';
3
3
  declare const _default: import("vue").DefineComponent<{
4
- readonly filterColumns: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => any[]) | (() => any[]) | ((new (...args: any[]) => any[]) | (() => any[]))[], unknown, unknown, () => never[], boolean>;
4
+ readonly filterColumns: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("ll-plus/es/components").FilterColumn[]) | (() => import("ll-plus/es/components").FilterColumn[]) | ((new (...args: any[]) => import("ll-plus/es/components").FilterColumn[]) | (() => import("ll-plus/es/components").FilterColumn[]))[], unknown, unknown, () => never[], boolean>;
5
5
  readonly value: import("ll-plus/es/utils").EpPropFinalized<ObjectConstructor, unknown, unknown, () => {}, boolean>;
6
6
  readonly formOptions: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => Partial<import("vue").ExtractPropTypes<{
7
7
  layout: import("vue-types").VueTypeDef<string>;
@@ -903,7 +903,7 @@ declare const _default: import("vue").DefineComponent<{
903
903
  }, boolean>;
904
904
  }, {
905
905
  props: import("@vue/shared").LooseRequired<{
906
- readonly filterColumns: any[];
906
+ readonly filterColumns: import("ll-plus/es/components").FilterColumn[];
907
907
  readonly value: Record<string, any>;
908
908
  readonly formOptions: Partial<import("vue").ExtractPropTypes<{
909
909
  layout: import("vue-types").VueTypeDef<string>;
@@ -1152,16 +1152,12 @@ declare const _default: import("vue").DefineComponent<{
1152
1152
  }[]>;
1153
1153
  handleClean: (tag?: IAvancedFilteringTag | null) => void;
1154
1154
  setData: (obj: Record<string, any>) => void;
1155
- treeDataFormat: (arr: any[] | undefined, fieldNames: {
1156
- [key: string]: string;
1157
- }) => any[];
1158
- findLabelByValue: (tree: FormColumn['options'], value: any) => string;
1159
- getTags: (filterColumns: FormColumn[], value: Record<string, any>) => IAvancedFilteringTag[];
1155
+ getTags: (filterColumns: FormColumn[], values: Record<string, any>) => IAvancedFilteringTag[];
1160
1156
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
1161
1157
  change: (value: Record<string, any>) => boolean;
1162
1158
  'update:value': (value: Record<string, any>) => boolean;
1163
1159
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
1164
- readonly filterColumns: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => any[]) | (() => any[]) | ((new (...args: any[]) => any[]) | (() => any[]))[], unknown, unknown, () => never[], boolean>;
1160
+ readonly filterColumns: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("ll-plus/es/components").FilterColumn[]) | (() => import("ll-plus/es/components").FilterColumn[]) | ((new (...args: any[]) => import("ll-plus/es/components").FilterColumn[]) | (() => import("ll-plus/es/components").FilterColumn[]))[], unknown, unknown, () => never[], boolean>;
1165
1161
  readonly value: import("ll-plus/es/utils").EpPropFinalized<ObjectConstructor, unknown, unknown, () => {}, boolean>;
1166
1162
  readonly formOptions: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => Partial<import("vue").ExtractPropTypes<{
1167
1163
  layout: import("vue-types").VueTypeDef<string>;
@@ -2065,7 +2061,7 @@ declare const _default: import("vue").DefineComponent<{
2065
2061
  onChange?: ((value: Record<string, any>) => any) | undefined;
2066
2062
  "onUpdate:value"?: ((value: Record<string, any>) => any) | undefined;
2067
2063
  }, {
2068
- readonly filterColumns: any[];
2064
+ readonly filterColumns: import("ll-plus/es/components").FilterColumn[];
2069
2065
  readonly value: Record<string, any>;
2070
2066
  readonly formOptions: Partial<import("vue").ExtractPropTypes<{
2071
2067
  layout: import("vue-types").VueTypeDef<string>;
@@ -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 { isNil } from 'lodash-es';
5
- import { advancedFilteringProps, advancedFilteringTagsEmits } from '../advanced-filtering.mjs';
4
+ import { isNil, has } from 'lodash-es';
5
+ import { advancedFilteringProps, advancedFilteringTagsEmits, filterAllValue, treeDataFormat, findLabelByValue } from '../advanced-filtering.mjs';
6
6
  import { createNamespace } from '../../../../utils/create-namespace.mjs';
7
7
 
8
8
  "use strict";
@@ -50,45 +50,11 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
50
50
  emits("update:value", obj);
51
51
  emits("change", obj);
52
52
  };
53
- const treeDataFormat = (arr = [], fieldNames) => {
54
- let options = [];
55
- if (!arr)
56
- return [];
57
- options = arr.map((e) => {
58
- const obj = {};
59
- obj.label = e[fieldNames.label];
60
- obj.value = e[fieldNames.value];
61
- if (e[fieldNames.children] && e[fieldNames.children].length) {
62
- obj.children = treeDataFormat(e[fieldNames.children], fieldNames);
63
- }
64
- return obj;
65
- });
66
- return options;
67
- };
68
- const findLabelByValue = (tree, value) => {
69
- function _findLabel(nodes) {
70
- const labels = [];
71
- if (!nodes)
72
- return [];
73
- for (const node of nodes) {
74
- if (node.value === value) {
75
- labels.push(node.label);
76
- }
77
- if (node.children && node.children.length > 0) {
78
- const childLabels = _findLabel(node.children);
79
- if (childLabels) {
80
- labels.push(...childLabels);
81
- }
82
- }
83
- }
84
- return labels.length > 0 ? labels : [];
85
- }
86
- return _findLabel(tree).join(",");
87
- };
88
- const getTags = (filterColumns, value) => {
53
+ const getTags = (filterColumns, values) => {
89
54
  const arr = [];
90
55
  filterColumns.map((item) => {
91
- if (!isNil(value[item.key])) {
56
+ const value = filterAllValue(values[item.key]);
57
+ if (!isNil(value)) {
92
58
  let tagValue = "";
93
59
  if (item?.options) {
94
60
  let options = [];
@@ -97,47 +63,53 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
97
63
  } else {
98
64
  options = item.options;
99
65
  }
100
- if (Array.isArray(value[item.key])) {
66
+ if (Array.isArray(value)) {
101
67
  let tagArr = [];
102
- tagArr = value[item.key].map((val) => {
68
+ tagArr = value.map((val) => {
103
69
  return findLabelByValue(options, val);
104
70
  });
105
71
  tagValue = tagArr.join(",");
106
72
  } else {
107
- tagValue = findLabelByValue(options, value[item.key]);
73
+ tagValue = findLabelByValue(options, value);
108
74
  }
109
75
  } else {
110
- tagValue = value[item.key];
76
+ tagValue = value;
111
77
  }
112
78
  if (item.type === "date-picker") {
113
- tagValue = dayjs(value[item.key]).format(item?.format ?? "YYYY-MM-DD");
79
+ tagValue = dayjs(value).format(item?.format ?? "YYYY-MM-DD");
114
80
  }
115
81
  if (item.type === "time-picker") {
116
- tagValue = dayjs(value[item.key]).format(
117
- item?.format ?? "YYYY/MM/DD hh:mm:ss"
118
- );
82
+ tagValue = dayjs(value).format(item?.format ?? "YYYY/MM/DD hh:mm:ss");
119
83
  }
120
84
  if (item.type === "date-range") {
121
- tagValue = `${dayjs(value[item.key][0]).format(
85
+ tagValue = `${dayjs(value[0]).format(
122
86
  item?.format ?? "YYYY-MM-DD"
123
- )}-${dayjs(value[item.key][1]).format(item?.format ?? "YYYY-MM-DD")}`;
87
+ )}-${dayjs(value[1]).format(item?.format ?? "YYYY-MM-DD")}`;
124
88
  }
125
89
  if (item.type === "number-range") {
126
- tagValue = `${value[item.key][0]}${value[item.key][1] ? `-${value[item.key][1]}` : ""}`;
90
+ tagValue = `${value[0]}${value[1] ? `-${value[1]}` : ""}`;
127
91
  }
128
- if (item.type === "time-picker") {
129
- tagValue = `${dayjs(value[item.key][0]).format(
92
+ if (item.type === "time-range") {
93
+ tagValue = `${dayjs(value[0]).format(
130
94
  item?.format ?? "YYYY/MM/DD HH:mm:ss"
131
- )}-${dayjs(value[item.key][1]).format(
132
- item?.format ?? "YYYY/MM/DD HH:mm:ss"
133
- )}`;
95
+ )}-${dayjs(value[1]).format(item?.format ?? "YYYY/MM/DD HH:mm:ss")}`;
96
+ }
97
+ if (item.type === "switch") {
98
+ if (has(item, "checkedChildren") && has(item, "checkedValue") && has(item, "unCheckedChildren") && has(item, "unCheckedValue")) {
99
+ tagValue = value === item.checkedValue ? item.checkedChildren : item.unCheckedChildren;
100
+ }
101
+ if (has(item, "checkedChildren") && !has(item, "checkedValue")) {
102
+ tagValue = value ? item.checkedChildren : false;
103
+ }
104
+ }
105
+ if (tagValue) {
106
+ arr.push({
107
+ label: item.label || "",
108
+ key: item.key,
109
+ value,
110
+ showValue: tagValue
111
+ });
134
112
  }
135
- arr.push({
136
- label: item.label || "",
137
- key: item.key,
138
- value: value[item.key],
139
- showValue: tagValue
140
- });
141
113
  }
142
114
  });
143
115
  return arr;
@@ -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 { isNil } from 'lodash-es'\nimport {\n advancedFilteringProps,\n advancedFilteringTagsEmits,\n type IAvancedFilteringTag\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}\nconst 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\nconst findLabelByValue = (tree: FormColumn['options'], value: any): string => {\n // 递归函数,用于遍历 Tree 数据\n function _findLabel(nodes: FormColumn['options']): string[] {\n const labels: string[] = []\n if (!nodes) return []\n for (const node of nodes) {\n if (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}\nconst getTags = (filterColumns: FormColumn[], value: Record<string, any>) => {\n const arr = [] as IAvancedFilteringTag[]\n filterColumns.map(item => {\n if (!isNil(value[item.key])) {\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[item.key])) {\n let tagArr = []\n tagArr = value[item.key].map((val: string) => {\n return findLabelByValue(options, val)\n })\n\n tagValue = tagArr.join(',')\n } else {\n tagValue = findLabelByValue(options, value[item.key])\n }\n } else {\n tagValue = value[item.key]\n }\n if (item.type === 'date-picker') {\n tagValue = dayjs(value[item.key]).format(item?.format ?? 'YYYY-MM-DD')\n }\n if (item.type === 'time-picker') {\n tagValue = dayjs(value[item.key]).format(\n item?.format ?? 'YYYY/MM/DD hh:mm:ss'\n )\n }\n if (item.type === 'date-range') {\n tagValue = `${dayjs(value[item.key][0]).format(\n item?.format ?? 'YYYY-MM-DD'\n )}-${dayjs(value[item.key][1]).format(item?.format ?? 'YYYY-MM-DD')}`\n }\n if (item.type === 'number-range') {\n tagValue = `${value[item.key][0]}${\n value[item.key][1] ? `-${value[item.key][1]}` : ''\n }`\n }\n if (item.type === 'time-picker') {\n tagValue = `${dayjs(value[item.key][0]).format(\n item?.format ?? 'YYYY/MM/DD HH:mm:ss'\n )}-${dayjs(value[item.key][1]).format(\n item?.format ?? 'YYYY/MM/DD HH:mm:ss'\n )}`\n }\n arr.push({\n label: item.label || '',\n key: item.key,\n value: value[item.key],\n showValue: tagValue\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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"}
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 { isNil, has } from 'lodash-es'\nimport {\n advancedFilteringProps,\n advancedFilteringTagsEmits,\n type IAvancedFilteringTag,\n filterAllValue,\n treeDataFormat,\n findLabelByValue\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])\n\n if (!isNil(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 }\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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"}
@@ -282,9 +282,9 @@ export declare const LlApiComponent: import("ll-plus/es/utils").SFCWithInstall<i
282
282
  is: (name?: string) => string;
283
283
  };
284
284
  props: import("@vue/shared").LooseRequired<{
285
- readonly options: import("./src/config").IParamsOption[];
286
285
  readonly columns: import("./src/config").IParamsColumn[];
287
286
  readonly dataSource: import("./src/config").IParamsData[];
287
+ readonly options: import("./src/config").IParamsOption[];
288
288
  } & {}>;
289
289
  disabled: unknown;
290
290
  addData: import("vue").Ref<string>;
@@ -296,9 +296,9 @@ export declare const LlApiComponent: import("ll-plus/es/utils").SFCWithInstall<i
296
296
  readonly options: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("./src/config").IParamsOption[]) | (() => import("./src/config").IParamsOption[]) | ((new (...args: any[]) => import("./src/config").IParamsOption[]) | (() => import("./src/config").IParamsOption[]))[], unknown, unknown, () => never[], boolean>;
297
297
  }, {
298
298
  props: import("@vue/shared").LooseRequired<{
299
- readonly options: import("./src/config").IParamsOption[];
300
299
  readonly columns: import("./src/config").IParamsColumn[];
301
300
  readonly dataSource: import("./src/config").IParamsData[];
301
+ readonly options: import("./src/config").IParamsOption[];
302
302
  readonly data: import("./src/config").IParamsData;
303
303
  } & {}>;
304
304
  bem: {
@@ -441,9 +441,9 @@ export declare const LlApiComponent: import("ll-plus/es/utils").SFCWithInstall<i
441
441
  readonly data: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("./src/config").IParamsData) | (() => import("./src/config").IParamsData) | ((new (...args: any[]) => import("./src/config").IParamsData) | (() => import("./src/config").IParamsData))[], unknown, unknown, () => {}, boolean>;
442
442
  readonly options: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("./src/config").IParamsOption[]) | (() => import("./src/config").IParamsOption[]) | ((new (...args: any[]) => import("./src/config").IParamsOption[]) | (() => import("./src/config").IParamsOption[]))[], unknown, unknown, () => never[], boolean>;
443
443
  }>>, {
444
- readonly options: import("./src/config").IParamsOption[];
445
444
  readonly columns: import("./src/config").IParamsColumn[];
446
445
  readonly dataSource: import("./src/config").IParamsData[];
446
+ readonly options: import("./src/config").IParamsOption[];
447
447
  readonly data: import("./src/config").IParamsData;
448
448
  }, {}>;
449
449
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
@@ -451,9 +451,9 @@ export declare const LlApiComponent: import("ll-plus/es/utils").SFCWithInstall<i
451
451
  readonly columns: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("./src/config").IParamsColumn[]) | (() => import("./src/config").IParamsColumn[]) | ((new (...args: any[]) => import("./src/config").IParamsColumn[]) | (() => import("./src/config").IParamsColumn[]))[], unknown, unknown, () => never[], boolean>;
452
452
  readonly options: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("./src/config").IParamsOption[]) | (() => import("./src/config").IParamsOption[]) | ((new (...args: any[]) => import("./src/config").IParamsOption[]) | (() => import("./src/config").IParamsOption[]))[], unknown, unknown, () => never[], boolean>;
453
453
  }>>, {
454
- readonly options: import("./src/config").IParamsOption[];
455
454
  readonly columns: import("./src/config").IParamsColumn[];
456
455
  readonly dataSource: import("./src/config").IParamsData[];
456
+ readonly options: import("./src/config").IParamsOption[];
457
457
  }, {}>;
458
458
  BodyComponent: import("vue").DefineComponent<{
459
459
  readonly value: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("./src/config").HttpModel) | (() => import("./src/config").HttpModel) | ((new (...args: any[]) => import("./src/config").HttpModel) | (() => import("./src/config").HttpModel))[], unknown, unknown, () => {
@@ -626,9 +626,9 @@ export declare const LlApiComponent: import("ll-plus/es/utils").SFCWithInstall<i
626
626
  is: (name?: string) => string;
627
627
  };
628
628
  props: import("@vue/shared").LooseRequired<{
629
- readonly options: import("./src/config").IParamsOption[];
630
629
  readonly columns: import("./src/config").IParamsColumn[];
631
630
  readonly dataSource: import("./src/config").IParamsData[];
631
+ readonly options: import("./src/config").IParamsOption[];
632
632
  } & {}>;
633
633
  disabled: unknown;
634
634
  addData: import("vue").Ref<string>;
@@ -640,9 +640,9 @@ export declare const LlApiComponent: import("ll-plus/es/utils").SFCWithInstall<i
640
640
  readonly options: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("./src/config").IParamsOption[]) | (() => import("./src/config").IParamsOption[]) | ((new (...args: any[]) => import("./src/config").IParamsOption[]) | (() => import("./src/config").IParamsOption[]))[], unknown, unknown, () => never[], boolean>;
641
641
  }, {
642
642
  props: import("@vue/shared").LooseRequired<{
643
- readonly options: import("./src/config").IParamsOption[];
644
643
  readonly columns: import("./src/config").IParamsColumn[];
645
644
  readonly dataSource: import("./src/config").IParamsData[];
645
+ readonly options: import("./src/config").IParamsOption[];
646
646
  readonly data: import("./src/config").IParamsData;
647
647
  } & {}>;
648
648
  bem: {
@@ -785,9 +785,9 @@ export declare const LlApiComponent: import("ll-plus/es/utils").SFCWithInstall<i
785
785
  readonly data: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("./src/config").IParamsData) | (() => import("./src/config").IParamsData) | ((new (...args: any[]) => import("./src/config").IParamsData) | (() => import("./src/config").IParamsData))[], unknown, unknown, () => {}, boolean>;
786
786
  readonly options: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("./src/config").IParamsOption[]) | (() => import("./src/config").IParamsOption[]) | ((new (...args: any[]) => import("./src/config").IParamsOption[]) | (() => import("./src/config").IParamsOption[]))[], unknown, unknown, () => never[], boolean>;
787
787
  }>>, {
788
- readonly options: import("./src/config").IParamsOption[];
789
788
  readonly columns: import("./src/config").IParamsColumn[];
790
789
  readonly dataSource: import("./src/config").IParamsData[];
790
+ readonly options: import("./src/config").IParamsOption[];
791
791
  readonly data: import("./src/config").IParamsData;
792
792
  }, {}>;
793
793
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
@@ -795,9 +795,9 @@ export declare const LlApiComponent: import("ll-plus/es/utils").SFCWithInstall<i
795
795
  readonly columns: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("./src/config").IParamsColumn[]) | (() => import("./src/config").IParamsColumn[]) | ((new (...args: any[]) => import("./src/config").IParamsColumn[]) | (() => import("./src/config").IParamsColumn[]))[], unknown, unknown, () => never[], boolean>;
796
796
  readonly options: import("ll-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("./src/config").IParamsOption[]) | (() => import("./src/config").IParamsOption[]) | ((new (...args: any[]) => import("./src/config").IParamsOption[]) | (() => import("./src/config").IParamsOption[]))[], unknown, unknown, () => never[], boolean>;
797
797
  }>>, {
798
- readonly options: import("./src/config").IParamsOption[];
799
798
  readonly columns: import("./src/config").IParamsColumn[];
800
799
  readonly dataSource: import("./src/config").IParamsData[];
800
+ readonly options: import("./src/config").IParamsOption[];
801
801
  }, {}>;
802
802
  readonly formdataTableColumns: ({
803
803
  key: string;