@mc20230601/keep-up 1.0.42 → 1.0.48

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 (69) hide show
  1. package/es/components/codeEditor/index.d.ts +4 -4
  2. package/es/components/codeEditor/index.mjs +2 -2
  3. package/es/components/codeEditor/index.mjs.map +1 -1
  4. package/es/components/commonEditor/index.d.ts +2 -2
  5. package/es/components/commonEditor/index.mjs +4 -3
  6. package/es/components/commonEditor/index.mjs.map +1 -1
  7. package/es/components/commonEditor/interfaces.d.ts +5 -1
  8. package/es/components/commonFilter/index.d.ts +6 -6
  9. package/es/components/commonFilter/index.mjs +6 -4
  10. package/es/components/commonFilter/index.mjs.map +1 -1
  11. package/es/components/commonFilter/interfaces.d.ts +3 -1
  12. package/es/components/commonFilter/useKeepFilter.d.ts +1 -1
  13. package/es/components/commonFilter/useKeepFilter.mjs +24 -3
  14. package/es/components/commonFilter/useKeepFilter.mjs.map +1 -1
  15. package/es/components/commonJsonPretty/index.mjs +3 -2
  16. package/es/components/commonJsonPretty/index.mjs.map +1 -1
  17. package/es/components/commonLocations/index.d.ts +1 -1
  18. package/es/components/commonLocations/index.mjs +2 -2
  19. package/es/components/commonLocations/index.mjs.map +1 -1
  20. package/es/components/commonLocations/useLocations.mjs +8 -2
  21. package/es/components/commonLocations/useLocations.mjs.map +1 -1
  22. package/es/components/commonPage/index.d.ts +4 -2
  23. package/es/components/commonPage/index.mjs +16 -9
  24. package/es/components/commonPage/index.mjs.map +1 -1
  25. package/es/components/commonPage/interfaces.d.ts +9 -2
  26. package/es/components/commonPage/usePageActions.mjs +7 -3
  27. package/es/components/commonPage/usePageActions.mjs.map +1 -1
  28. package/es/components/commonSetter/components/draggableList/index.mjs +6 -5
  29. package/es/components/commonSetter/components/draggableList/index.mjs.map +1 -1
  30. package/es/components/commonTable/constants.d.ts +6 -2
  31. package/es/components/commonTable/constants.mjs +3 -4
  32. package/es/components/commonTable/constants.mjs.map +1 -1
  33. package/es/components/commonTable/index.mjs +13 -7
  34. package/es/components/commonTable/index.mjs.map +1 -1
  35. package/es/components/commonTable/index.module.mjs +2 -2
  36. package/es/components/commonTable/usePagination.mjs +0 -1
  37. package/es/components/commonTable/usePagination.mjs.map +1 -1
  38. package/es/components/formTabs/index.mjs +0 -1
  39. package/es/components/formTabs/index.mjs.map +1 -1
  40. package/es/components/formilyCmps/formilyForm/index.d.ts +1 -1
  41. package/es/components/formilyCmps/formilyForm/index.mjs +18 -0
  42. package/es/components/formilyCmps/formilyForm/index.mjs.map +1 -1
  43. package/es/components/formilyCmps/index.d.ts +1 -0
  44. package/es/components/formilyCmps/index.mjs +1 -0
  45. package/es/components/formilyCmps/index.mjs.map +1 -1
  46. package/es/components/formilyCmps/sectionTitle/index.mjs +2 -2
  47. package/es/components/formilyCmps/sectionTitle/index.mjs.map +1 -1
  48. package/es/components/formilyCmps/title/index.d.ts +2 -0
  49. package/es/components/formilyCmps/title/index.mjs +19 -0
  50. package/es/components/formilyCmps/title/index.mjs.map +1 -0
  51. package/es/components/formilyCmps/title/index.module.mjs +4 -0
  52. package/es/components/formilyCmps/title/index.module.mjs.map +1 -0
  53. package/es/components/formilyCmps/virtualizedSelect/index.d.ts +1 -0
  54. package/es/components/formilyCmps/virtualizedSelect/index.mjs +15 -0
  55. package/es/components/formilyCmps/virtualizedSelect/index.mjs.map +1 -0
  56. package/es/components/index.mjs +1 -0
  57. package/es/components/index.mjs.map +1 -1
  58. package/es/components/radioGroup/index.d.ts +15 -15
  59. package/es/components/radioGroup/index.mjs +1 -0
  60. package/es/components/radioGroup/index.mjs.map +1 -1
  61. package/es/components/space/index.d.ts +1 -1
  62. package/es/components/upload/formilyUpload.d.ts +1 -1
  63. package/es/components/upload/index.d.ts +4 -4
  64. package/es/components/upload/upload.d.ts +1 -1
  65. package/es/index.d.ts +2334 -18
  66. package/es/index.mjs +1 -20
  67. package/es/index.mjs.map +1 -1
  68. package/es/styles/index.css +162 -128
  69. package/package.json +1 -1
@@ -29,8 +29,8 @@ declare const _default: {
29
29
  [key: string]: any;
30
30
  }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "update:modelValue")[], import("vue").PublicProps, {
31
31
  value: string;
32
- modelValue: string;
33
32
  theme: string;
33
+ modelValue: string;
34
34
  language: string;
35
35
  }, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
36
36
  P: {};
@@ -67,8 +67,8 @@ declare const _default: {
67
67
  [key: string]: any;
68
68
  }>, {}, {}, {}, {
69
69
  value: string;
70
- modelValue: string;
71
70
  theme: string;
71
+ modelValue: string;
72
72
  language: string;
73
73
  }>;
74
74
  __isFragment?: never;
@@ -102,8 +102,8 @@ declare const _default: {
102
102
  [key: string]: any;
103
103
  }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "update:modelValue")[], "change" | "update:modelValue", {
104
104
  value: string;
105
- modelValue: string;
106
105
  theme: string;
106
+ modelValue: string;
107
107
  language: string;
108
108
  }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & {
109
109
  FormilyCodeEditor: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
@@ -155,8 +155,8 @@ declare const _default: {
155
155
  "onUpdate:modelValue"?: (...args: any[]) => any;
156
156
  }>, {
157
157
  value: string;
158
- modelValue: string;
159
158
  theme: string;
159
+ modelValue: string;
160
160
  language: string;
161
161
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
162
162
  };
@@ -66,9 +66,9 @@ const FormilyCodeEditor = connect(
66
66
  mapProps({ value: "modelValue" }),
67
67
  mapReadPretty(PreviewText.Input)
68
68
  );
69
- var index = composeExpose(CodeEditor, {
69
+ var CodeEditor$1 = composeExpose(CodeEditor, {
70
70
  FormilyCodeEditor
71
71
  });
72
72
 
73
- export { index as default };
73
+ export { CodeEditor$1 as default };
74
74
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../packages/components/codeEditor/index.ts"],"sourcesContent":["import { defineComponent, h, ref, onMounted } from 'vue'\nimport { connect, mapProps, mapReadPretty } from '@formily/vue'\nimport ace from 'ace-builds'\nimport 'ace-builds/src-noconflict/mode-javascript'\nimport 'ace-builds/src-noconflict/theme-monokai'\nimport { composeExpose } from '../../utils'\n\nimport { PreviewText } from '@formily/element-plus'\n\nconst props = {\n /** v-model体系-内容 */\n modelValue: {\n type: String,\n default: '',\n },\n /** formily体系-内容 */\n value: {\n type: String,\n default: '',\n },\n /** 语言 */\n language: {\n type: String,\n default: '',\n },\n /** 主题 */\n theme: {\n type: String,\n default: '',\n },\n}\nconst CodeEditor = defineComponent({\n name: 'CodeEditor',\n props,\n emits: ['update:modelValue', 'change'],\n setup(props, { emit, attrs }) {\n const codeEditorRef = ref<HTMLDivElement | null>(null)\n const codeEditorInstance = ref<ace.Ace.Editor | null>(null)\n const init = async () => {\n codeEditorInstance.value = ace.edit(codeEditorRef.value)\n codeEditorInstance.value.session.setMode(`ace/mode/${props.language || 'javascript'}`)\n codeEditorInstance.value.setOptions({\n fontSize: 14,\n tabSize: 2,\n useSoftTabs: true,\n showPrintMargin: false,\n wrap: true,\n })\n codeEditorInstance.value.on('change', () => {\n emit('update:modelValue', codeEditorInstance.value!.getValue())\n emit('change', codeEditorInstance.value!.getValue())\n })\n setTimeout(() => {\n codeEditorInstance.value.setValue(props.modelValue || props.value || '', -1)\n }, 500)\n }\n onMounted(init)\n return () =>\n h('div', {\n ref: codeEditorRef,\n style: 'width: 100%; height: 100%; border: 1px solid #333',\n })\n },\n})\n\nconst FormilyCodeEditor = connect(\n CodeEditor,\n mapProps({ value: 'modelValue' }),\n mapReadPretty(PreviewText.Input),\n)\n\nexport default composeExpose(CodeEditor, {\n FormilyCodeEditor: FormilyCodeEditor,\n})\n"],"names":["props"],"mappings":";;;;;;;;;AASA,MAAM,KAAQ,GAAA;AAAA;AAAA,EAEZ,UAAY,EAAA;AAAA,IACV,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA;AAAA,EAEA,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA;AAAA,EAEA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA;AAAA,EAEA,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AACF,CAAA,CAAA;AACA,MAAM,aAAa,eAAgB,CAAA;AAAA,EACjC,IAAM,EAAA,YAAA;AAAA,EACN,KAAA;AAAA,EACA,KAAA,EAAO,CAAC,mBAAA,EAAqB,QAAQ,CAAA;AAAA,EACrC,KAAMA,CAAAA,MAAAA,EAAO,EAAE,IAAA,EAAM,OAAS,EAAA;AAC5B,IAAM,MAAA,aAAA,GAAgB,IAA2B,IAAI,CAAA,CAAA;AACrD,IAAM,MAAA,kBAAA,GAAqB,IAA2B,IAAI,CAAA,CAAA;AAC1D,IAAA,MAAM,OAAO,YAAY;AACvB,MAAA,kBAAA,CAAmB,KAAQ,GAAA,GAAA,CAAI,IAAK,CAAA,aAAA,CAAc,KAAK,CAAA,CAAA;AACvD,MAAA,kBAAA,CAAmB,MAAM,OAAQ,CAAA,OAAA,CAAQ,YAAYA,MAAM,CAAA,QAAA,IAAY,YAAY,CAAE,CAAA,CAAA,CAAA;AACrF,MAAA,kBAAA,CAAmB,MAAM,UAAW,CAAA;AAAA,QAClC,QAAU,EAAA,EAAA;AAAA,QACV,OAAS,EAAA,CAAA;AAAA,QACT,WAAa,EAAA,IAAA;AAAA,QACb,eAAiB,EAAA,KAAA;AAAA,QACjB,IAAM,EAAA,IAAA;AAAA,OACP,CAAA,CAAA;AACD,MAAmB,kBAAA,CAAA,KAAA,CAAM,EAAG,CAAA,QAAA,EAAU,MAAM;AAC1C,QAAA,IAAA,CAAK,mBAAqB,EAAA,kBAAA,CAAmB,KAAO,CAAA,QAAA,EAAU,CAAA,CAAA;AAC9D,QAAA,IAAA,CAAK,QAAU,EAAA,kBAAA,CAAmB,KAAO,CAAA,QAAA,EAAU,CAAA,CAAA;AAAA,OACpD,CAAA,CAAA;AACD,MAAA,UAAA,CAAW,MAAM;AACf,QAAA,kBAAA,CAAmB,MAAM,QAASA,CAAAA,MAAAA,CAAM,cAAcA,MAAM,CAAA,KAAA,IAAS,IAAI,CAAE,CAAA,CAAA,CAAA;AAAA,SAC1E,GAAG,CAAA,CAAA;AAAA,KACR,CAAA;AACA,IAAA,SAAA,CAAU,IAAI,CAAA,CAAA;AACd,IAAO,OAAA,MACL,EAAE,KAAO,EAAA;AAAA,MACP,GAAK,EAAA,aAAA;AAAA,MACL,KAAO,EAAA,mDAAA;AAAA,KACR,CAAA,CAAA;AAAA,GACL;AACF,CAAC,CAAA,CAAA;AAED,MAAM,iBAAoB,GAAA,OAAA;AAAA,EACxB,UAAA;AAAA,EACA,QAAS,CAAA,EAAE,KAAO,EAAA,YAAA,EAAc,CAAA;AAAA,EAChC,aAAA,CAAc,YAAY,KAAK,CAAA;AACjC,CAAA,CAAA;AAEA,YAAe,cAAc,UAAY,EAAA;AAAA,EACvC,iBAAA;AACF,CAAC,CAAA;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../packages/components/codeEditor/index.ts"],"sourcesContent":["import { defineComponent, h, ref, onMounted } from 'vue'\nimport { connect, mapProps, mapReadPretty } from '@formily/vue'\nimport ace from 'ace-builds'\nimport 'ace-builds/src-noconflict/mode-javascript'\nimport 'ace-builds/src-noconflict/theme-monokai'\nimport { composeExpose } from '../../utils'\n\nimport { PreviewText } from '@formily/element-plus'\n\nconst props = {\n /** v-model体系-内容 */\n modelValue: {\n type: String,\n default: '',\n },\n /** formily体系-内容 */\n value: {\n type: String,\n default: '',\n },\n /** 语言 */\n language: {\n type: String,\n default: '',\n },\n /** 主题 */\n theme: {\n type: String,\n default: '',\n },\n}\nconst CodeEditor = defineComponent({\n name: 'CodeEditor',\n props,\n emits: ['update:modelValue', 'change'],\n setup(props, { emit, attrs }) {\n const codeEditorRef = ref<HTMLDivElement | null>(null)\n const codeEditorInstance = ref<ace.Ace.Editor | null>(null)\n const init = async () => {\n codeEditorInstance.value = ace.edit(codeEditorRef.value)\n codeEditorInstance.value.session.setMode(`ace/mode/${props.language || 'javascript'}`)\n codeEditorInstance.value.setOptions({\n fontSize: 14,\n tabSize: 2,\n useSoftTabs: true,\n showPrintMargin: false,\n wrap: true,\n })\n codeEditorInstance.value.on('change', () => {\n emit('update:modelValue', codeEditorInstance.value!.getValue())\n emit('change', codeEditorInstance.value!.getValue())\n })\n setTimeout(() => {\n codeEditorInstance.value.setValue(props.modelValue || props.value || '', -1)\n }, 500)\n }\n onMounted(init)\n return () =>\n h('div', {\n ref: codeEditorRef,\n style: 'width: 100%; height: 100%; border: 1px solid #333',\n })\n },\n})\n\nconst FormilyCodeEditor = connect(\n CodeEditor,\n mapProps({ value: 'modelValue' }),\n mapReadPretty(PreviewText.Input),\n)\n\nexport default composeExpose(CodeEditor, {\n FormilyCodeEditor: FormilyCodeEditor,\n})\n"],"names":["props"],"mappings":";;;;;;;;;AASA,MAAM,KAAQ,GAAA;AAAA;AAAA,EAEZ,UAAY,EAAA;AAAA,IACV,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA;AAAA,EAEA,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA;AAAA,EAEA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AAAA;AAAA,EAEA,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,GACX;AACF,CAAA,CAAA;AACA,MAAM,aAAa,eAAgB,CAAA;AAAA,EACjC,IAAM,EAAA,YAAA;AAAA,EACN,KAAA;AAAA,EACA,KAAA,EAAO,CAAC,mBAAA,EAAqB,QAAQ,CAAA;AAAA,EACrC,KAAMA,CAAAA,MAAAA,EAAO,EAAE,IAAA,EAAM,OAAS,EAAA;AAC5B,IAAM,MAAA,aAAA,GAAgB,IAA2B,IAAI,CAAA,CAAA;AACrD,IAAM,MAAA,kBAAA,GAAqB,IAA2B,IAAI,CAAA,CAAA;AAC1D,IAAA,MAAM,OAAO,YAAY;AACvB,MAAA,kBAAA,CAAmB,KAAQ,GAAA,GAAA,CAAI,IAAK,CAAA,aAAA,CAAc,KAAK,CAAA,CAAA;AACvD,MAAA,kBAAA,CAAmB,MAAM,OAAQ,CAAA,OAAA,CAAQ,YAAYA,MAAM,CAAA,QAAA,IAAY,YAAY,CAAE,CAAA,CAAA,CAAA;AACrF,MAAA,kBAAA,CAAmB,MAAM,UAAW,CAAA;AAAA,QAClC,QAAU,EAAA,EAAA;AAAA,QACV,OAAS,EAAA,CAAA;AAAA,QACT,WAAa,EAAA,IAAA;AAAA,QACb,eAAiB,EAAA,KAAA;AAAA,QACjB,IAAM,EAAA,IAAA;AAAA,OACP,CAAA,CAAA;AACD,MAAmB,kBAAA,CAAA,KAAA,CAAM,EAAG,CAAA,QAAA,EAAU,MAAM;AAC1C,QAAA,IAAA,CAAK,mBAAqB,EAAA,kBAAA,CAAmB,KAAO,CAAA,QAAA,EAAU,CAAA,CAAA;AAC9D,QAAA,IAAA,CAAK,QAAU,EAAA,kBAAA,CAAmB,KAAO,CAAA,QAAA,EAAU,CAAA,CAAA;AAAA,OACpD,CAAA,CAAA;AACD,MAAA,UAAA,CAAW,MAAM;AACf,QAAA,kBAAA,CAAmB,MAAM,QAASA,CAAAA,MAAAA,CAAM,cAAcA,MAAM,CAAA,KAAA,IAAS,IAAI,CAAE,CAAA,CAAA,CAAA;AAAA,SAC1E,GAAG,CAAA,CAAA;AAAA,KACR,CAAA;AACA,IAAA,SAAA,CAAU,IAAI,CAAA,CAAA;AACd,IAAO,OAAA,MACL,EAAE,KAAO,EAAA;AAAA,MACP,GAAK,EAAA,aAAA;AAAA,MACL,KAAO,EAAA,mDAAA;AAAA,KACR,CAAA,CAAA;AAAA,GACL;AACF,CAAC,CAAA,CAAA;AAED,MAAM,iBAAoB,GAAA,OAAA;AAAA,EACxB,UAAA;AAAA,EACA,QAAS,CAAA,EAAE,KAAO,EAAA,YAAA,EAAc,CAAA;AAAA,EAChC,aAAA,CAAc,YAAY,KAAK,CAAA;AACjC,CAAA,CAAA;AAEA,mBAAe,cAAc,UAAY,EAAA;AAAA,EACvC,iBAAA;AACF,CAAC,CAAA;;;;"}
@@ -113,10 +113,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
113
113
  onConfirmSuccess?: (...args: any[]) => any;
114
114
  }>, {
115
115
  title: string;
116
- effectHooks: IEffectHooks;
116
+ size: string;
117
117
  components: Record<string, any>;
118
+ effectHooks: IEffectHooks;
118
119
  layout: IEditorLayout;
119
- size: string;
120
120
  createApi: (p: ICommonObj) => Promise<ICommonObj>;
121
121
  editApi: (p: ICommonObj) => Promise<ICommonObj>;
122
122
  formatEditParams: (p: any) => any;
@@ -12,7 +12,6 @@ const props = {
12
12
  /** 创建Api */
13
13
  createApi: {
14
14
  type: Function,
15
- // TODO:建一个全局通用的async ts,这里的ICommonObj是否正确
16
15
  default: void 0
17
16
  },
18
17
  /** 编辑Api */
@@ -100,7 +99,8 @@ var CommonEditor = defineComponent({
100
99
  };
101
100
  const open = async ({
102
101
  mode: curMode,
103
- rowData
102
+ rowData,
103
+ extra = {}
104
104
  }) => {
105
105
  var _a, _b;
106
106
  (_b = (_a = commonDrawerRef.value) == null ? void 0 : _a.open) == null ? void 0 : _b.call(_a);
@@ -111,7 +111,8 @@ var CommonEditor = defineComponent({
111
111
  }
112
112
  Object.assign(formRef.value, {
113
113
  data: {
114
- mode: mode.value
114
+ mode: mode.value,
115
+ ...extra
115
116
  }
116
117
  });
117
118
  formRef.value.readPretty = isView.value;
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../packages/components/commonEditor/index.tsx"],"sourcesContent":["import { defineComponent, ref, nextTick, computed } from 'vue'\nimport { ElMessage, ElSpace, ElButton } from 'element-plus'\nimport FormilyForm from '../formilyCmps/formilyForm'\nimport { getRootSchema } from '../../constants/common'\nimport CommonDrawer from '../commonDrawer'\nimport { defaultLayout } from './constants'\nimport useModeMap from './useModeMap'\nimport styles from './index.module.scss'\n\nimport type { PropType } from 'vue'\nimport type { ISchema } from '@formily/vue'\nimport type { IFormilyFormExpose, IEffectHooks } from '../formilyCmps/formilyForm'\nimport type { ICommonObj } from '../../interfaces/common'\nimport type { ICommonDrawerExpose } from '../commonDrawer'\nimport type { IOpenParams, IEditorLayout, ICommonEditorExpose } from './interfaces'\n\nconst props = {\n /** 创建Api */\n createApi: {\n type: Function as PropType<(p: ICommonObj) => Promise<ICommonObj>>, // TODO:建一个全局通用的async ts,这里的ICommonObj是否正确\n default: undefined,\n },\n /** 编辑Api */\n editApi: {\n type: Function as PropType<(p: ICommonObj) => Promise<ICommonObj>>,\n default: undefined,\n },\n /** 格式化列表接口入参 */\n formatEditParams: {\n type: Function as PropType<(p: any) => any>,\n default: undefined,\n },\n /** 编辑器字段 */\n editFields: {\n type: Object as PropType<ISchema>,\n default: () => ({}),\n },\n /** 标题 */\n title: {\n type: String,\n default: '',\n },\n /** 宽度 */\n size: {\n type: String,\n default: '42%',\n },\n /** layout */\n layout: {\n type: Object as PropType<IEditorLayout>,\n default: () => ({\n columns: 0,\n labelStyle: {\n width: '100px',\n margin: '0',\n },\n }),\n },\n /** effectHooks */\n effectHooks: {\n type: Object as PropType<IEffectHooks>,\n default: () => ({}),\n },\n /** 需要注册的组件 */\n components: {\n type: Object,\n default: () => ({}),\n },\n}\n\nexport * from './constants'\nexport * from './interfaces'\nexport default defineComponent({\n name: 'CommonEditor',\n props,\n emits: ['confirmSuccess'],\n setup(props, { emit, expose, slots }) {\n const commonDrawerRef = ref<ICommonDrawerExpose>()\n const formilyFormRef = ref<IFormilyFormExpose>()\n const formRef = computed(() => formilyFormRef.value?.formRef)\n const mode = ref<'VIEW' | 'CREATE' | 'EDIT'>('VIEW')\n const isCreate = computed(() => mode.value === 'CREATE')\n const isView = computed(() => mode.value === 'VIEW')\n const modeMap = useModeMap({ createApi: props.createApi, editApi: props.editApi })\n const innerLayout = computed(() => ({ ...defaultLayout, ...props.layout }))\n const loading = ref(false)\n const fields = computed(() =>\n getRootSchema({ maxColumns: innerLayout.value.columns, properties: props.editFields }),\n )\n const onClose = () => {\n formRef.value.values = {}\n formRef.value.clearErrors?.()\n }\n const open = async ({ mode: curMode, rowData }: IOpenParams) => {\n commonDrawerRef.value?.open?.()\n mode.value = curMode\n await nextTick()\n if (!isCreate.value) {\n formRef.value.values = rowData\n }\n Object.assign(formRef.value, {\n data: { mode: mode.value },\n })\n formRef.value.readPretty = isView.value\n }\n const close = () => {\n commonDrawerRef.value?.close?.()\n }\n const confirm = async () => {\n try {\n loading.value = true\n const result = await formRef.value.submit()\n await modeMap[mode.value]?.api?.(\n typeof props?.formatEditParams === 'function' ? props.formatEditParams(result) : result,\n )\n ElMessage({\n message: `${modeMap[mode.value].text}成功`,\n type: 'success',\n })\n close()\n emit('confirmSuccess')\n } catch (error: any) {\n console.error(`${modeMap[mode.value].text}失败,失败原因:${error}`)\n } finally {\n loading.value = false\n }\n }\n expose<ICommonEditorExpose>({\n open,\n getForm: () => formilyFormRef.value?.formRef,\n })\n return () => {\n const footer = () =>\n !isView.value ? (\n <ElSpace class={styles.footer}>\n <ElButton onClick={close}>取消</ElButton>\n <ElButton type='primary' loading={loading.value} onClick={confirm}>\n 确认\n </ElButton>\n </ElSpace>\n ) : null\n return (\n <CommonDrawer\n ref={commonDrawerRef}\n title={props.title || modeMap[mode.value]?.text}\n size={props.size}\n onClose={onClose}\n class={[styles.container, { [styles.editMode]: !isView.value }]}\n style={{\n '--common-editor-label-width': innerLayout.value.labelStyle.width,\n '--common-editor-label-margin': innerLayout.value.labelStyle.margin,\n }}\n appendToBody\n v-slots={{\n ...slots,\n default: () => (\n <FormilyForm\n ref={formilyFormRef}\n config={fields.value}\n components={props.components}\n effectHooks={props.effectHooks}\n />\n ),\n footer,\n }}\n />\n )\n }\n },\n})\n"],"names":["props","createApi","type","Function","default","undefined","editApi","formatEditParams","editFields","Object","title","String","size","layout","columns","labelStyle","width","margin","effectHooks","components","defineComponent","name","emits","setup","emit","expose","slots","commonDrawerRef","ref","formilyFormRef","formRef","computed","value","mode","isCreate","isView","modeMap","useModeMap","innerLayout","defaultLayout","loading","fields","getRootSchema","maxColumns","properties","onClose","values","clearErrors","open","curMode","rowData","nextTick","assign","data","readPretty","close","confirm","result","submit","api","ElMessage","message","text","error","console","getForm","footer","_createVNode","ElSpace","styles","ElButton","_createTextVNode","CommonDrawer","container","editMode","FormilyForm"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../packages/components/commonEditor/index.tsx"],"sourcesContent":["import { defineComponent, ref, nextTick, computed } from 'vue'\nimport { ElMessage, ElSpace, ElButton } from 'element-plus'\nimport FormilyForm from '../formilyCmps/formilyForm'\nimport { getRootSchema } from '../../constants/common'\nimport CommonDrawer from '../commonDrawer'\nimport { defaultLayout } from './constants'\nimport useModeMap from './useModeMap'\nimport styles from './index.module.scss'\n\nimport type { PropType } from 'vue'\nimport type { ISchema } from '@formily/vue'\nimport type { IFormilyFormExpose, IEffectHooks } from '../formilyCmps/formilyForm'\nimport type { ICommonObj } from '../../interfaces/common'\nimport type { ICommonDrawerExpose } from '../commonDrawer'\nimport type { IOpenParams, IEditorLayout, ICommonEditorExpose } from './interfaces'\n\nconst props = {\n /** 创建Api */\n createApi: {\n type: Function as PropType<(p: ICommonObj) => Promise<ICommonObj>>,\n default: undefined,\n },\n /** 编辑Api */\n editApi: {\n type: Function as PropType<(p: ICommonObj) => Promise<ICommonObj>>,\n default: undefined,\n },\n /** 格式化列表接口入参 */\n formatEditParams: {\n type: Function as PropType<(p: any) => any>,\n default: undefined,\n },\n /** 编辑器字段 */\n editFields: {\n type: Object as PropType<ISchema>,\n default: () => ({}),\n },\n /** 标题 */\n title: {\n type: String,\n default: '',\n },\n /** 宽度 */\n size: {\n type: String,\n default: '42%',\n },\n /** layout */\n layout: {\n type: Object as PropType<IEditorLayout>,\n default: () => ({\n columns: 0,\n labelStyle: {\n width: '100px',\n margin: '0',\n },\n }),\n },\n /** effectHooks */\n effectHooks: {\n type: Object as PropType<IEffectHooks>,\n default: () => ({}),\n },\n /** 需要注册的组件 */\n components: {\n type: Object,\n default: () => ({}),\n },\n}\n\nexport * from './constants'\nexport * from './interfaces'\nexport default defineComponent({\n name: 'CommonEditor',\n props,\n emits: ['confirmSuccess'],\n setup(props, { emit, expose, slots }) {\n const commonDrawerRef = ref<ICommonDrawerExpose>()\n const formilyFormRef = ref<IFormilyFormExpose>()\n const formRef = computed(() => formilyFormRef.value?.formRef)\n const mode = ref<'VIEW' | 'CREATE' | 'EDIT'>('VIEW')\n const isCreate = computed(() => mode.value === 'CREATE')\n const isView = computed(() => mode.value === 'VIEW')\n const modeMap = useModeMap({ createApi: props.createApi, editApi: props.editApi })\n const innerLayout = computed(() => ({ ...defaultLayout, ...props.layout }))\n const loading = ref(false)\n const fields = computed(() =>\n getRootSchema({ maxColumns: innerLayout.value.columns, properties: props.editFields }),\n )\n const onClose = () => {\n formRef.value.values = {}\n formRef.value.clearErrors?.()\n }\n const open = async ({ mode: curMode, rowData, extra = {} }: IOpenParams) => {\n commonDrawerRef.value?.open?.()\n mode.value = curMode\n await nextTick()\n if (!isCreate.value) {\n formRef.value.values = rowData\n }\n Object.assign(formRef.value, {\n data: { mode: mode.value, ...extra },\n })\n formRef.value.readPretty = isView.value\n }\n const close = () => {\n commonDrawerRef.value?.close?.()\n }\n const confirm = async () => {\n try {\n loading.value = true\n const result = await formRef.value.submit()\n await modeMap[mode.value]?.api?.(\n typeof props?.formatEditParams === 'function' ? props.formatEditParams(result) : result,\n )\n ElMessage({\n message: `${modeMap[mode.value].text}成功`,\n type: 'success',\n })\n close()\n emit('confirmSuccess')\n } catch (error: any) {\n console.error(`${modeMap[mode.value].text}失败,失败原因:${error}`)\n } finally {\n loading.value = false\n }\n }\n expose<ICommonEditorExpose>({\n open,\n getForm: () => formilyFormRef.value?.formRef,\n })\n return () => {\n const footer = () =>\n !isView.value ? (\n <ElSpace class={styles.footer}>\n <ElButton onClick={close}>取消</ElButton>\n <ElButton type='primary' loading={loading.value} onClick={confirm}>\n 确认\n </ElButton>\n </ElSpace>\n ) : null\n return (\n <CommonDrawer\n ref={commonDrawerRef}\n title={props.title || modeMap[mode.value]?.text}\n size={props.size}\n onClose={onClose}\n class={[styles.container, { [styles.editMode]: !isView.value }]}\n style={{\n '--common-editor-label-width': innerLayout.value.labelStyle.width,\n '--common-editor-label-margin': innerLayout.value.labelStyle.margin,\n }}\n appendToBody\n v-slots={{\n ...slots,\n default: () => (\n <FormilyForm\n ref={formilyFormRef}\n config={fields.value}\n components={props.components}\n effectHooks={props.effectHooks}\n />\n ),\n footer,\n }}\n />\n )\n }\n },\n})\n"],"names":["props","createApi","type","Function","default","undefined","editApi","formatEditParams","editFields","Object","title","String","size","layout","columns","labelStyle","width","margin","effectHooks","components","defineComponent","name","emits","setup","emit","expose","slots","commonDrawerRef","ref","formilyFormRef","formRef","computed","value","mode","isCreate","isView","modeMap","useModeMap","innerLayout","defaultLayout","loading","fields","getRootSchema","maxColumns","properties","onClose","values","clearErrors","open","curMode","rowData","extra","nextTick","assign","data","readPretty","close","confirm","result","submit","api","ElMessage","message","text","error","console","getForm","footer","_createVNode","ElSpace","styles","ElButton","_createTextVNode","CommonDrawer","container","editMode","FormilyForm"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { Form } from '@formily/core';
2
- import type { ICommonObj } from '@mc20230601/keep-up/interfaces';
2
+ import type { ICommonObj } from '../../interfaces/common';
3
3
  /** 打开侧边栏入参 */
4
4
  export interface IOpenParams {
5
5
  /** 查看/创建/编辑态 */
@@ -8,6 +8,8 @@ export interface IOpenParams {
8
8
  rowData?: any;
9
9
  /** 行下标 */
10
10
  rowIndex?: number;
11
+ /** 额外的小体积配置项,可以存入formRef实例的data中 */
12
+ extra?: ICommonObj;
11
13
  }
12
14
  /** CommonEditor出参 */
13
15
  export type ICommonEditorExpose = {
@@ -34,6 +36,8 @@ export interface IUseModeMapResItem {
34
36
  export type IUseModeMapRes = Record<'VIEW' | 'CREATE' | 'EDIT', IUseModeMapResItem>;
35
37
  /** IEditorLayout */
36
38
  export interface IEditorLayout {
39
+ /** 编辑器宽度 */
40
+ size: string;
37
41
  /** 栅格列数 */
38
42
  columns: number;
39
43
  /** labelStyle */
@@ -9,11 +9,11 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
9
9
  default: number;
10
10
  };
11
11
  operateActions: {
12
- type: import("vue").PropType<import("packages/keepUp").IOperateActions>;
12
+ type: import("vue").PropType<import("@mc20230601/keep-up/keepUp").IOperateActions>;
13
13
  default: () => {};
14
14
  };
15
15
  effectHooks: {
16
- type: import("vue").PropType<import("packages/keepUp").IEffectHooks>;
16
+ type: import("vue").PropType<import("@mc20230601/keep-up/keepUp").IEffectHooks>;
17
17
  default: () => {};
18
18
  };
19
19
  pageKey: {
@@ -30,11 +30,11 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
30
30
  default: number;
31
31
  };
32
32
  operateActions: {
33
- type: import("vue").PropType<import("packages/keepUp").IOperateActions>;
33
+ type: import("vue").PropType<import("@mc20230601/keep-up/keepUp").IOperateActions>;
34
34
  default: () => {};
35
35
  };
36
36
  effectHooks: {
37
- type: import("vue").PropType<import("packages/keepUp").IEffectHooks>;
37
+ type: import("vue").PropType<import("@mc20230601/keep-up/keepUp").IEffectHooks>;
38
38
  default: () => {};
39
39
  };
40
40
  pageKey: {
@@ -42,9 +42,9 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
42
42
  default: string;
43
43
  };
44
44
  }>> & Readonly<{}>, {
45
- effectHooks: import("packages/keepUp").IEffectHooks;
46
45
  maxColumns: number;
47
46
  pageKey: string;
47
+ effectHooks: import("@mc20230601/keep-up/keepUp").IEffectHooks;
48
48
  filterFields: import("@formily/json-schema").Stringify<{
49
49
  [key: symbol]: any;
50
50
  [key: `x-${string}`]: any;
@@ -102,6 +102,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
102
102
  "x-read-pretty"?: boolean;
103
103
  "x-compile-omitted"?: string[];
104
104
  }>;
105
- operateActions: import("packages/keepUp").IOperateActions;
105
+ operateActions: import("@mc20230601/keep-up/keepUp").IOperateActions;
106
106
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
107
107
  export default _default;
@@ -1,14 +1,14 @@
1
1
  import { defineComponent, ref, computed, onMounted, createVNode, createTextVNode } from 'vue';
2
+ import { useRoute } from 'vue-router';
2
3
  import { isEmpty } from 'lodash';
3
4
  import { ElButton } from 'element-plus';
4
- import FormilyForm from '../formilyCmps/formilyForm/index.mjs';
5
- import '../formilyCmps/formTab/index.mjs';
6
- import Space from '../space/index.mjs';
7
5
  import { getRootSchema } from '../../constants/common.mjs';
8
6
  import { useKeepFilter } from './useKeepFilter.mjs';
9
7
  import { props } from './props.mjs';
10
8
  import { useFieldsParser } from './useFieldsParser.mjs';
11
9
  import { useCollapse } from './useCollapse.mjs';
10
+ import FormilyForm from '../formilyCmps/formilyForm/index.mjs';
11
+ import Space from '../space/index.mjs';
12
12
  import styles from './index.module.mjs';
13
13
 
14
14
  var CommonFilter = defineComponent({
@@ -17,6 +17,7 @@ var CommonFilter = defineComponent({
17
17
  setup(props2, {
18
18
  expose
19
19
  }) {
20
+ const route = useRoute();
20
21
  const formilyFormRef = ref();
21
22
  const formRef = computed(() => {
22
23
  var _a;
@@ -42,7 +43,8 @@ var CommonFilter = defineComponent({
42
43
  init: keepFilterInit
43
44
  } = useKeepFilter({
44
45
  pageKey: props2.pageKey,
45
- formRef
46
+ formRef,
47
+ route
46
48
  });
47
49
  onMounted(() => {
48
50
  collapse();
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../packages/components/commonFilter/index.tsx"],"sourcesContent":["import { defineComponent, ref, computed, onMounted } from 'vue'\nimport { isEmpty } from 'lodash'\nimport { ElButton } from 'element-plus'\nimport { FormilyForm } from '../formilyCmps'\nimport Space from '../space'\nimport { getRootSchema } from '../../constants/common'\nimport { useKeepFilter } from './useKeepFilter'\nimport { props } from './props'\nimport { useFieldsParser } from './useFieldsParser'\nimport { useCollapse } from './useCollapse'\nimport styles from './index.module.scss'\n\nimport type { IFormilyFormExpose } from '../formilyCmps'\n\nexport type * from './interfaces'\nexport default defineComponent({\n name: 'CommonFilter',\n props,\n setup(props, { expose }) {\n const formilyFormRef = ref<IFormilyFormExpose>()\n const formRef = computed(() => formilyFormRef.value?.formRef)\n const { collapseData } = useFieldsParser(props) // 派生展开收起所需所有数据\n const fields = computed(() =>\n getRootSchema({\n maxColumns: props.maxColumns,\n properties: collapseData.value.allFields,\n }),\n ) // schema\n const { visible, collapse } = useCollapse({ formRef, collapseData }) // 展开收起\n const {\n filterParams,\n keepFilter,\n init: keepFilterInit,\n } = useKeepFilter({ pageKey: props.pageKey, formRef }) // 筛选项数据缓存\n onMounted(() => {\n collapse()\n keepFilterInit()\n if (!isEmpty(filterParams.value)) {\n formRef.value.values = filterParams.value\n }\n })\n expose({\n collapseData,\n visible,\n collapse,\n keepFilter,\n getForm: () => formRef.value,\n reset: () => {\n formRef.value.reset()\n },\n getCommonFilterHeight: () => {\n return formilyFormRef.value.getContainerRef().clientHeight\n },\n })\n return () => (\n <Space class={styles.container} align='flex-start' justify='start' size={12} fill>\n <FormilyForm ref={formilyFormRef} config={fields.value} effectHooks={props.effectHooks} />\n <Space size={12}>\n <ElButton class={styles.btn} type='primary' onClick={props.operateActions.query}>\n 查询\n </ElButton>\n <ElButton class={styles.btn} onClick={props.operateActions.reset}>\n 重置\n </ElButton>\n </Space>\n </Space>\n )\n },\n})\n"],"names":["defineComponent","name","props","setup","expose","formilyFormRef","ref","formRef","computed","value","collapseData","useFieldsParser","fields","getRootSchema","maxColumns","properties","allFields","visible","collapse","useCollapse","filterParams","keepFilter","init","keepFilterInit","useKeepFilter","pageKey","onMounted","isEmpty","values","getForm","reset","getCommonFilterHeight","getContainerRef","clientHeight","_createVNode","Space","styles","container","default","FormilyForm","effectHooks","ElButton","btn","operateActions","query","_createTextVNode"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../packages/components/commonFilter/index.tsx"],"sourcesContent":["import { defineComponent, ref, computed, onMounted } from 'vue'\nimport { useRoute } from 'vue-router'\nimport { isEmpty } from 'lodash'\nimport { ElButton } from 'element-plus'\nimport { getRootSchema } from '../../constants/common'\nimport { useKeepFilter } from './useKeepFilter'\nimport { props } from './props'\nimport { useFieldsParser } from './useFieldsParser'\nimport { useCollapse } from './useCollapse'\nimport FormilyForm from '../formilyCmps/formilyForm'\nimport Space from '../space'\nimport styles from './index.module.scss'\n\nimport type { IFormilyFormExpose } from '../formilyCmps/formilyForm'\n\nexport type * from './interfaces'\nexport default defineComponent({\n name: 'CommonFilter',\n props,\n setup(props, { expose }) {\n const route = useRoute()\n const formilyFormRef = ref<IFormilyFormExpose>()\n const formRef = computed(() => formilyFormRef.value?.formRef)\n const { collapseData } = useFieldsParser(props) // 派生展开收起所需所有数据\n const fields = computed(() =>\n getRootSchema({\n maxColumns: props.maxColumns,\n properties: collapseData.value.allFields,\n }),\n ) // schema\n const { visible, collapse } = useCollapse({ formRef, collapseData }) // 展开收起\n const {\n filterParams,\n keepFilter,\n init: keepFilterInit,\n } = useKeepFilter({ pageKey: props.pageKey, formRef, route }) // 筛选项数据缓存\n onMounted(() => {\n collapse()\n keepFilterInit()\n if (!isEmpty(filterParams.value)) {\n formRef.value.values = filterParams.value\n }\n })\n expose({\n collapseData,\n visible,\n collapse,\n keepFilter,\n getForm: () => formRef.value,\n reset: () => {\n formRef.value.reset()\n },\n getCommonFilterHeight: () => {\n return formilyFormRef.value.getContainerRef().clientHeight\n },\n })\n return () => (\n <Space class={styles.container} align='flex-start' justify='start' size={12} fill>\n <FormilyForm ref={formilyFormRef} config={fields.value} effectHooks={props.effectHooks} />\n <Space size={12}>\n <ElButton class={styles.btn} type='primary' onClick={props.operateActions.query}>\n 查询\n </ElButton>\n <ElButton class={styles.btn} onClick={props.operateActions.reset}>\n 重置\n </ElButton>\n </Space>\n </Space>\n )\n },\n})\n"],"names":["defineComponent","name","props","setup","expose","route","useRoute","formilyFormRef","ref","formRef","computed","value","collapseData","useFieldsParser","fields","getRootSchema","maxColumns","properties","allFields","visible","collapse","useCollapse","filterParams","keepFilter","init","keepFilterInit","useKeepFilter","pageKey","onMounted","isEmpty","values","getForm","reset","getCommonFilterHeight","getContainerRef","clientHeight","_createVNode","Space","styles","container","default","FormilyForm","effectHooks","ElButton","btn","operateActions","query","_createTextVNode"],"mappings":"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"}
@@ -1,8 +1,9 @@
1
1
  import type { Ref, ComputedRef } from 'vue';
2
+ import type { RouteLocationNormalizedLoadedGeneric } from 'vue-router';
2
3
  import type { RemovableRef } from '@vueuse/core';
3
4
  import type { ISchema } from '@formily/vue';
4
5
  import type { Form } from '@formily/core';
5
- import type { ICommonObj } from '@mc20230601/keep-up/interfaces';
6
+ import type { ICommonObj } from '../../interfaces/common';
6
7
  /** CommonFilter出参 */
7
8
  export type ICommonFilterExpose = {
8
9
  /** 可折叠 */
@@ -33,6 +34,7 @@ export interface IUseKeepFilterParams {
33
34
  pageKey: string;
34
35
  /** form实例 */
35
36
  formRef: Ref<Form>;
37
+ route: RouteLocationNormalizedLoadedGeneric;
36
38
  }
37
39
  /** useKeepFilter出参 */
38
40
  export interface IUseKeepFilterRes {
@@ -1,3 +1,3 @@
1
1
  import type { IUseKeepFilterParams, IUseKeepFilterRes } from './interfaces';
2
2
  /** 保存filter数据,在页面初始化时取出数据回显在filter区域 */
3
- export declare const useKeepFilter: ({ pageKey, formRef }: IUseKeepFilterParams) => IUseKeepFilterRes;
3
+ export declare const useKeepFilter: ({ pageKey, formRef, route, }: IUseKeepFilterParams) => IUseKeepFilterRes;
@@ -1,9 +1,14 @@
1
1
  import { ref } from 'vue';
2
+ import { isEmpty } from 'lodash';
2
3
  import '../../utils/emitter.mjs';
3
4
  import { setStorage, getStorage } from '../../utils/storage.mjs';
4
5
  import { KEEP_FILTER_KEY } from './constants.mjs';
5
6
 
6
- const useKeepFilter = ({ pageKey, formRef }) => {
7
+ const useKeepFilter = ({
8
+ pageKey,
9
+ formRef,
10
+ route
11
+ }) => {
7
12
  const filterParams = ref({});
8
13
  const keepFilter = (params) => {
9
14
  if (!pageKey) {
@@ -12,14 +17,30 @@ const useKeepFilter = ({ pageKey, formRef }) => {
12
17
  }
13
18
  setStorage(`${pageKey}${KEEP_FILTER_KEY}`, params);
14
19
  };
20
+ const rangeReg = /^\[\s*([^,\s]+)\s*,\s*([^,\s]+)\s*\]$/;
15
21
  const init = () => {
16
22
  var _a;
17
23
  const formValues = (_a = formRef == null ? void 0 : formRef.value) == null ? void 0 : _a.values;
24
+ const formKeys = [];
25
+ Object.entries(formRef == null ? void 0 : formRef.value.fields).forEach(([_, field]) => {
26
+ var _a2, _b;
27
+ const match = ((_a2 = field == null ? void 0 : field.path) == null ? void 0 : _a2.entire).match(rangeReg);
28
+ if (match) {
29
+ const [, key1, key2] = match;
30
+ formKeys.push(...[key1, key2]);
31
+ } else {
32
+ formKeys.push((_b = field == null ? void 0 : field.path) == null ? void 0 : _b.entire);
33
+ }
34
+ });
35
+ const queryParams = Object.fromEntries(
36
+ Object.entries(route.query).filter(([k, v]) => formKeys.some((v1) => v1 === k))
37
+ );
38
+ const result = isEmpty(queryParams) ? void 0 : queryParams;
18
39
  if (pageKey) {
19
40
  const cache = getStorage(`${pageKey}${KEEP_FILTER_KEY}`);
20
- filterParams.value = cache || formValues;
41
+ filterParams.value = result || cache || formValues;
21
42
  } else {
22
- filterParams.value = formValues;
43
+ filterParams.value = result || formValues;
23
44
  }
24
45
  };
25
46
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"useKeepFilter.mjs","sources":["../../../../../packages/components/commonFilter/useKeepFilter.ts"],"sourcesContent":["import { ref } from 'vue'\nimport { setStorage, getStorage } from '../../utils'\nimport { KEEP_FILTER_KEY } from './constants'\n\nimport type { ICommonObj } from '../../interfaces/common'\nimport type { IUseKeepFilterParams, IUseKeepFilterRes } from './interfaces'\n\n/** 保存filter数据,在页面初始化时取出数据回显在filter区域 */\nexport const useKeepFilter = ({ pageKey, formRef }: IUseKeepFilterParams): IUseKeepFilterRes => {\n /** 筛选项数据 */\n const filterParams = ref({})\n /** 缓存筛选项数据 */\n const keepFilter = (params: ICommonObj) => {\n if (!pageKey) {\n console.error(`保存筛选数据失败,失败原因:缺少pageKey`)\n return\n }\n setStorage(`${pageKey}${KEEP_FILTER_KEY}`, params)\n }\n /** 初始化 */\n const init = () => {\n const formValues = formRef?.value?.values\n if (pageKey) {\n const cache = getStorage(`${pageKey}${KEEP_FILTER_KEY}`)\n filterParams.value = cache || formValues\n } else {\n filterParams.value = formValues\n }\n }\n return {\n filterParams,\n keepFilter,\n init,\n }\n}\n"],"names":[],"mappings":";;;;;AAQO,MAAM,aAAgB,GAAA,CAAC,EAAE,OAAA,EAAS,SAAuD,KAAA;AAE9F,EAAM,MAAA,YAAA,GAAe,GAAI,CAAA,EAAE,CAAA,CAAA;AAE3B,EAAM,MAAA,UAAA,GAAa,CAAC,MAAuB,KAAA;AACzC,IAAA,IAAI,CAAC,OAAS,EAAA;AACZ,MAAA,OAAA,CAAQ,MAAM,CAAyB,uGAAA,CAAA,CAAA,CAAA;AACvC,MAAA,OAAA;AAAA,KACF;AACA,IAAA,UAAA,CAAW,CAAG,EAAA,OAAO,CAAG,EAAA,eAAe,IAAI,MAAM,CAAA,CAAA;AAAA,GACnD,CAAA;AAEA,EAAA,MAAM,OAAO,MAAM;AApBrB,IAAA,IAAA,EAAA,CAAA;AAqBI,IAAM,MAAA,UAAA,GAAA,CAAa,EAAS,GAAA,OAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,OAAA,CAAA,KAAA,KAAT,IAAgB,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,MAAA,CAAA;AACnC,IAAA,IAAI,OAAS,EAAA;AACX,MAAA,MAAM,QAAQ,UAAW,CAAA,CAAA,EAAG,OAAO,CAAA,EAAG,eAAe,CAAE,CAAA,CAAA,CAAA;AACvD,MAAA,YAAA,CAAa,QAAQ,KAAS,IAAA,UAAA,CAAA;AAAA,KACzB,MAAA;AACL,MAAA,YAAA,CAAa,KAAQ,GAAA,UAAA,CAAA;AAAA,KACvB;AAAA,GACF,CAAA;AACA,EAAO,OAAA;AAAA,IACL,YAAA;AAAA,IACA,UAAA;AAAA,IACA,IAAA;AAAA,GACF,CAAA;AACF;;;;"}
1
+ {"version":3,"file":"useKeepFilter.mjs","sources":["../../../../../packages/components/commonFilter/useKeepFilter.ts"],"sourcesContent":["import { ref } from 'vue'\nimport { isEmpty } from 'lodash'\nimport { setStorage, getStorage } from '../../utils'\nimport { KEEP_FILTER_KEY } from './constants'\n\nimport type { ICommonObj } from '../../interfaces/common'\nimport type { IUseKeepFilterParams, IUseKeepFilterRes } from './interfaces'\n\n/** 保存filter数据,在页面初始化时取出数据回显在filter区域 */\nexport const useKeepFilter = ({\n pageKey,\n formRef,\n route,\n}: IUseKeepFilterParams): IUseKeepFilterRes => {\n /** 筛选项数据 */\n const filterParams = ref({})\n /** 缓存筛选项数据 */\n const keepFilter = (params: ICommonObj) => {\n if (!pageKey) {\n console.error(`保存筛选数据失败,失败原因:缺少pageKey`)\n return\n }\n setStorage(`${pageKey}${KEEP_FILTER_KEY}`, params)\n }\n\n const rangeReg = /^\\[\\s*([^,\\s]+)\\s*,\\s*([^,\\s]+)\\s*\\]$/\n /** 初始化 */\n const init = () => {\n const formValues = formRef?.value?.values\n const formKeys = []\n Object.entries(formRef?.value.fields).forEach(([_, field]) => {\n const match = (field?.path?.entire as string).match(rangeReg)\n if (match) {\n const [, key1, key2] = match\n formKeys.push(...[key1, key2])\n } else {\n formKeys.push(field?.path?.entire)\n }\n })\n const queryParams = Object.fromEntries(\n Object.entries(route.query).filter(([k, v]) => formKeys.some((v1: string) => v1 === k)),\n )\n const result = isEmpty(queryParams) ? undefined : queryParams\n if (pageKey) {\n const cache = getStorage(`${pageKey}${KEEP_FILTER_KEY}`)\n filterParams.value = result || cache || formValues\n } else {\n filterParams.value = result || formValues\n }\n }\n return {\n filterParams,\n keepFilter,\n init,\n }\n}\n"],"names":["_a"],"mappings":";;;;;;AASO,MAAM,gBAAgB,CAAC;AAAA,EAC5B,OAAA;AAAA,EACA,OAAA;AAAA,EACA,KAAA;AACF,CAA+C,KAAA;AAE7C,EAAM,MAAA,YAAA,GAAe,GAAI,CAAA,EAAE,CAAA,CAAA;AAE3B,EAAM,MAAA,UAAA,GAAa,CAAC,MAAuB,KAAA;AACzC,IAAA,IAAI,CAAC,OAAS,EAAA;AACZ,MAAA,OAAA,CAAQ,MAAM,CAAyB,uGAAA,CAAA,CAAA,CAAA;AACvC,MAAA,OAAA;AAAA,KACF;AACA,IAAA,UAAA,CAAW,CAAG,EAAA,OAAO,CAAG,EAAA,eAAe,IAAI,MAAM,CAAA,CAAA;AAAA,GACnD,CAAA;AAEA,EAAA,MAAM,QAAW,GAAA,uCAAA,CAAA;AAEjB,EAAA,MAAM,OAAO,MAAM;AA3BrB,IAAA,IAAA,EAAA,CAAA;AA4BI,IAAM,MAAA,UAAA,GAAA,CAAa,EAAS,GAAA,OAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,OAAA,CAAA,KAAA,KAAT,IAAgB,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,MAAA,CAAA;AACnC,IAAA,MAAM,WAAW,EAAC,CAAA;AAClB,IAAO,MAAA,CAAA,OAAA,CAAQ,OAAS,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,OAAA,CAAA,KAAA,CAAM,MAAM,CAAA,CAAE,QAAQ,CAAC,CAAC,CAAG,EAAA,KAAK,CAAM,KAAA;AA9BlE,MAAA,IAAAA,GAAA,EAAA,EAAA,CAAA;AA+BM,MAAM,MAAA,KAAA,GAAA,CAAA,CAASA,MAAA,KAAO,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,KAAA,CAAA,IAAA,KAAP,gBAAAA,GAAa,CAAA,MAAA,EAAkB,MAAM,QAAQ,CAAA,CAAA;AAC5D,MAAA,IAAI,KAAO,EAAA;AACT,QAAA,MAAM,GAAG,IAAM,EAAA,IAAI,CAAI,GAAA,KAAA,CAAA;AACvB,QAAA,QAAA,CAAS,IAAK,CAAA,GAAG,CAAC,IAAA,EAAM,IAAI,CAAC,CAAA,CAAA;AAAA,OACxB,MAAA;AACL,QAAA,QAAA,CAAS,IAAK,CAAA,CAAA,EAAA,GAAA,KAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,KAAA,CAAO,IAAP,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAa,MAAM,CAAA,CAAA;AAAA,OACnC;AAAA,KACD,CAAA,CAAA;AACD,IAAA,MAAM,cAAc,MAAO,CAAA,WAAA;AAAA,MACzB,OAAO,OAAQ,CAAA,KAAA,CAAM,KAAK,CAAA,CAAE,OAAO,CAAC,CAAC,CAAG,EAAA,CAAC,MAAM,QAAS,CAAA,IAAA,CAAK,CAAC,EAAe,KAAA,EAAA,KAAO,CAAC,CAAC,CAAA;AAAA,KACxF,CAAA;AACA,IAAA,MAAM,MAAS,GAAA,OAAA,CAAQ,WAAW,CAAA,GAAI,KAAY,CAAA,GAAA,WAAA,CAAA;AAClD,IAAA,IAAI,OAAS,EAAA;AACX,MAAA,MAAM,QAAQ,UAAW,CAAA,CAAA,EAAG,OAAO,CAAA,EAAG,eAAe,CAAE,CAAA,CAAA,CAAA;AACvD,MAAa,YAAA,CAAA,KAAA,GAAQ,UAAU,KAAS,IAAA,UAAA,CAAA;AAAA,KACnC,MAAA;AACL,MAAA,YAAA,CAAa,QAAQ,MAAU,IAAA,UAAA,CAAA;AAAA,KACjC;AAAA,GACF,CAAA;AACA,EAAO,OAAA;AAAA,IACL,YAAA;AAAA,IACA,UAAA;AAAA,IACA,IAAA;AAAA,GACF,CAAA;AACF;;;;"}
@@ -2,6 +2,7 @@ import { defineComponent, h } from 'vue';
2
2
  import { connect, mapProps } from '@formily/vue';
3
3
  import VueJsonPretty from 'vue-json-pretty';
4
4
  import 'vue-json-pretty/lib/styles.css';
5
+ import '../../utils/emitter.mjs';
5
6
  import { composeExpose } from '../../utils/shared.mjs';
6
7
 
7
8
  const CommonJsonPretty = defineComponent({
@@ -12,9 +13,9 @@ const CommonJsonPretty = defineComponent({
12
13
  }
13
14
  });
14
15
  const FormilyCommonJsonPretty = connect(CommonJsonPretty, mapProps({ value: "data" }));
15
- var index = composeExpose(CommonJsonPretty, {
16
+ var CommonJsonPretty$1 = composeExpose(CommonJsonPretty, {
16
17
  FormilyCommonJsonPretty
17
18
  });
18
19
 
19
- export { CommonJsonPretty, FormilyCommonJsonPretty, index as default };
20
+ export { CommonJsonPretty, FormilyCommonJsonPretty, CommonJsonPretty$1 as default };
20
21
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../packages/components/commonJsonPretty/index.ts"],"sourcesContent":["import { defineComponent, h } from 'vue'\nimport { connect, mapProps } from '@formily/vue'\nimport VueJsonPretty from 'vue-json-pretty'\nimport 'vue-json-pretty/lib/styles.css'\nimport { composeExpose } from '../../utils/shared'\n\nexport const CommonJsonPretty = defineComponent({\n name: 'CommonJsonPretty',\n inheritAttrs: false,\n setup(_, { attrs }) {\n return () => h(VueJsonPretty, { ...attrs })\n },\n})\n\nexport const FormilyCommonJsonPretty = connect(CommonJsonPretty, mapProps({ value: 'data' }))\n\nexport default composeExpose(CommonJsonPretty, {\n FormilyCommonJsonPretty,\n})\n"],"names":[],"mappings":";;;;;;AAMO,MAAM,mBAAmB,eAAgB,CAAA;AAAA,EAC9C,IAAM,EAAA,kBAAA;AAAA,EACN,YAAc,EAAA,KAAA;AAAA,EACd,KAAM,CAAA,CAAA,EAAG,EAAE,KAAA,EAAS,EAAA;AAClB,IAAA,OAAO,MAAM,CAAE,CAAA,aAAA,EAAe,EAAE,GAAG,OAAO,CAAA,CAAA;AAAA,GAC5C;AACF,CAAC,EAAA;AAEY,MAAA,uBAAA,GAA0B,QAAQ,gBAAkB,EAAA,QAAA,CAAS,EAAE,KAAO,EAAA,MAAA,EAAQ,CAAC,EAAA;AAE5F,YAAe,cAAc,gBAAkB,EAAA;AAAA,EAC7C,uBAAA;AACF,CAAC,CAAA;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../packages/components/commonJsonPretty/index.ts"],"sourcesContent":["import { defineComponent, h } from 'vue'\nimport { connect, mapProps } from '@formily/vue'\nimport VueJsonPretty from 'vue-json-pretty'\nimport 'vue-json-pretty/lib/styles.css'\nimport { composeExpose } from '../../utils'\n\nexport const CommonJsonPretty = defineComponent({\n name: 'CommonJsonPretty',\n inheritAttrs: false,\n setup(_, { attrs }) {\n return () => h(VueJsonPretty, { ...attrs })\n },\n})\n\nexport const FormilyCommonJsonPretty = connect(CommonJsonPretty, mapProps({ value: 'data' }))\n\nexport default composeExpose(CommonJsonPretty, {\n FormilyCommonJsonPretty,\n})\n"],"names":[],"mappings":";;;;;;;AAMO,MAAM,mBAAmB,eAAgB,CAAA;AAAA,EAC9C,IAAM,EAAA,kBAAA;AAAA,EACN,YAAc,EAAA,KAAA;AAAA,EACd,KAAM,CAAA,CAAA,EAAG,EAAE,KAAA,EAAS,EAAA;AAClB,IAAA,OAAO,MAAM,CAAE,CAAA,aAAA,EAAe,EAAE,GAAG,OAAO,CAAA,CAAA;AAAA,GAC5C;AACF,CAAC,EAAA;AAEY,MAAA,uBAAA,GAA0B,QAAQ,gBAAkB,EAAA,QAAA,CAAS,EAAE,KAAO,EAAA,MAAA,EAAQ,CAAC,EAAA;AAE5F,yBAAe,cAAc,gBAAkB,EAAA;AAAA,EAC7C,uBAAA;AACF,CAAC,CAAA;;;;"}
@@ -33,8 +33,8 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
33
33
  default: boolean;
34
34
  };
35
35
  }>> & Readonly<{}>, {
36
- disabled: boolean;
37
36
  value: string[];
37
+ disabled: boolean;
38
38
  options: ILocationItem[];
39
39
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
40
40
  export default _default;
@@ -23,7 +23,7 @@ const props = {
23
23
  default: false
24
24
  }
25
25
  };
26
- var index = defineComponent({
26
+ var CommonLocations = defineComponent({
27
27
  name: "Locations",
28
28
  props,
29
29
  setup(props2, {
@@ -90,5 +90,5 @@ var index = defineComponent({
90
90
  }
91
91
  });
92
92
 
93
- export { index as default };
93
+ export { CommonLocations as default };
94
94
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../packages/components/commonLocations/index.tsx"],"sourcesContent":["import { defineComponent, watch } from 'vue'\nimport { useLocations } from './useLocations'\nimport { valueKey } from './constants'\nimport styles from './index.module.scss'\n\nimport type { PropType } from 'vue'\nimport type { ILocationItem } from './interfaces'\n\nconst props = {\n /** value */\n value: {\n type: Array as PropType<string[]>,\n default: () => [],\n },\n /** 主要用于做数据回显 */\n options: {\n type: Array as PropType<ILocationItem[]>,\n default: () => [],\n },\n /** 禁用 */\n disabled: {\n type: Boolean,\n default: false,\n },\n}\n\nexport default defineComponent({\n name: 'Locations',\n props,\n setup(props, { emit }) {\n const { locations, allLocations } = useLocations(props)\n\n /** 配合formily的value/change模式 */\n watch(\n () => allLocations.value.selectedChildren,\n (val) => {\n emit('change', val)\n },\n )\n\n return () => {\n return (\n <el-space\n class={styles.container}\n direction='column'\n alignment='space-between'\n fill={true}\n style={{ padding: '0 16px' }}\n >\n {Object.entries(locations.value)\n .sort(([aKey]) => (aKey === 'all' ? -1 : 0))\n .map(([k, v]) => (\n <div\n style={{\n width: '100%',\n display: 'flex',\n alignItems: 'flex-start',\n justifyContent: 'space-between',\n }}\n >\n <el-checkbox\n v-model={v.isAllChecked}\n indeterminate={v.isHalfChecked}\n disabled={props.disabled}\n onChange={v.onChange}\n >\n {v.label}\n </el-checkbox>\n <el-checkbox-group\n v-model={v.selectedChildren}\n disabled={props.disabled}\n style={{\n width: 'calc(100% - 132px - 8px)',\n }}\n >\n {v.children.map((v1) => (\n <el-checkbox\n key={v1.label}\n label={v1.label}\n value={v1[valueKey]}\n {...(v.label === '全选' ? { indeterminate: v1.isHalfChecked } : {})}\n onChange={v1.onChange}\n >\n {v1.label}\n </el-checkbox>\n ))}\n </el-checkbox-group>\n </div>\n ))}\n </el-space>\n )\n }\n },\n})\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","props","value","type","Array","default","options","disabled","Boolean","defineComponent","name","setup","emit","locations","allLocations","useLocations","watch","selectedChildren","val","_slot2","_createVNode","_resolveComponent","styles","container","padding","entries","sort","aKey","map","k","v","_slot","width","display","alignItems","justifyContent","isAllChecked","$event","isHalfChecked","onChange","label","children","v1","_mergeProps","valueKey","indeterminate"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../packages/components/commonLocations/index.tsx"],"sourcesContent":["import { defineComponent, watch } from 'vue'\nimport { useLocations } from './useLocations'\nimport { valueKey } from './constants'\nimport styles from './index.module.scss'\n\nimport type { PropType } from 'vue'\nimport type { ILocationItem } from './interfaces'\n\nconst props = {\n /** value */\n value: {\n type: Array as PropType<string[]>,\n default: () => [],\n },\n /** 主要用于做数据回显 */\n options: {\n type: Array as PropType<ILocationItem[]>,\n default: () => [],\n },\n /** 禁用 */\n disabled: {\n type: Boolean,\n default: false,\n },\n}\n\nexport default defineComponent({\n name: 'Locations',\n props,\n setup(props, { emit }) {\n const { locations, allLocations } = useLocations(props)\n\n /** 配合formily的value/change模式 */\n watch(\n () => allLocations.value.selectedChildren,\n (val) => {\n emit('change', val)\n },\n )\n\n return () => {\n return (\n <el-space\n class={styles.container}\n direction='column'\n alignment='space-between'\n fill={true}\n style={{ padding: '0 16px' }}\n >\n {Object.entries(locations.value)\n .sort(([aKey]) => (aKey === 'all' ? -1 : 0))\n .map(([k, v]) => (\n <div\n style={{\n width: '100%',\n display: 'flex',\n alignItems: 'flex-start',\n justifyContent: 'space-between',\n }}\n >\n <el-checkbox\n v-model={v.isAllChecked}\n indeterminate={v.isHalfChecked}\n disabled={props.disabled}\n onChange={v.onChange}\n >\n {v.label}\n </el-checkbox>\n <el-checkbox-group\n v-model={v.selectedChildren}\n disabled={props.disabled}\n style={{\n width: 'calc(100% - 132px - 8px)',\n }}\n >\n {v.children.map((v1) => (\n <el-checkbox\n key={v1.label}\n label={v1.label}\n value={v1[valueKey]}\n {...(v.label === '全选' ? { indeterminate: v1.isHalfChecked } : {})}\n onChange={v1.onChange}\n >\n {v1.label}\n </el-checkbox>\n ))}\n </el-checkbox-group>\n </div>\n ))}\n </el-space>\n )\n }\n },\n})\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","props","value","type","Array","default","options","disabled","Boolean","defineComponent","name","setup","emit","locations","allLocations","useLocations","watch","selectedChildren","val","_slot2","_createVNode","_resolveComponent","styles","container","padding","entries","sort","aKey","map","k","v","_slot","width","display","alignItems","justifyContent","isAllChecked","$event","isHalfChecked","onChange","label","children","v1","_mergeProps","valueKey","indeterminate"],"mappings":"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"}
@@ -109,8 +109,14 @@ const useLocations = (props) => {
109
109
  console.log(
110
110
  `\u3010\u{1F527} \u70B9\u51FB\u3011\u8282\u70B9\u7C7B\u578B\uFF1A\u5168\u9009\u8282\u70B9\u3002\u52A8\u4F5C: \u624B\u52A8\u5207\u6362\u3010${curItem.ispName}\u3011\u8FD0\u8425\u5546\u8282\u70B9\u7684\u9009\u4E2D\u72B6\u6001`
111
111
  );
112
- Object.entries(locations.value).filter(([k, v]) => k !== "all").forEach(([k, v]) => {
113
- v.selectedChildren = val ? v.children.filter((v1) => v1[TypeKey[Type.IS_ISP]] === curItem[TypeKey[Type.IS_ISP]]).map((v2) => v2[valueKey]) : [];
112
+ Object.entries(locations.value).filter(([k]) => k !== "all").forEach(([_, v]) => {
113
+ if (val) {
114
+ const newSelectedNodes = v.children.filter((v1) => v1[TypeKey[Type.IS_ISP]] === curItem[TypeKey[Type.IS_ISP]]).map((v2) => v2[valueKey]);
115
+ v.selectedChildren = [...v.selectedChildren, ...newSelectedNodes];
116
+ } else {
117
+ const unCheckedNodes = v.children.filter((v1) => v1[TypeKey[Type.IS_ISP]] === curItem[TypeKey[Type.IS_ISP]]).map((v2) => v2[valueKey]);
118
+ v.selectedChildren = v.selectedChildren.filter((v2) => !unCheckedNodes.includes(v2));
119
+ }
114
120
  });
115
121
  dispatchAllNodesOnCheck();
116
122
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useLocations.mjs","sources":["../../../../../packages/components/commonLocations/useLocations.ts"],"sourcesContent":["import { ref, computed, watch } from 'vue'\nimport { isEmpty, isEqual } from 'lodash'\nimport { getUtils } from './utils'\nimport { Type, TypeKey, valueKey } from './constants'\n\nimport type {\n IProps,\n IUseLocationsRes,\n ILocationItem,\n IAllNode,\n IIspNode,\n IGroupNode,\n ILeafNode,\n ILocations,\n ISelectedData,\n} from './interfaces'\n\nexport const useLocations = (props: IProps): IUseLocationsRes => {\n const locations = ref<ILocations>({})\n /** 获取所有选中的和可选的leaf节点 */\n const allLocations = computed<ISelectedData>(() => {\n return Object.entries(locations.value)\n .filter(([k]) => k !== 'all')\n .reduce(\n (iniVal, [_, v]) => ({\n selectedChildren: [\n ...iniVal.selectedChildren,\n ...((v as unknown as ILeafNode).selectedChildren || []),\n ],\n children: [...iniVal.children, ...((v as unknown as ILeafNode).children || [])],\n }),\n { children: [], selectedChildren: [] } as ISelectedData,\n )\n })\n const { ispNodeOnCheck, groupNodeOnCheck, allNodeOnCheck, dispatchAllNodesOnCheck } = getUtils(\n locations,\n allLocations,\n )\n /** 格式化locations */\n const formatLocations = (curLocations: ILocationItem[] = []): ILocations => {\n const getLeafNode = (curItem: ILeafNode): ILeafNode => ({\n ...curItem,\n label: curItem.friendlyArea,\n selected: false,\n type: Type.IS_LEAF,\n children: [],\n selectedChildren: [],\n onChange: () => {\n console.log(\n `【🔧 点击】节点类型:叶子节点。动作: 手动切换【${curItem.friendlyArea}】地区的选中状态。`,\n )\n dispatchAllNodesOnCheck()\n },\n })\n return curLocations.reduce((initVal, curItem) => {\n // 按regionName分组\n if (curItem[TypeKey[Type.IS_LEAF]] in initVal) {\n initVal[curItem[TypeKey[Type.IS_LEAF]]].children?.push?.(getLeafNode(curItem as ILeafNode))\n } else {\n initVal[curItem[TypeKey[Type.IS_GROUP]]] = {\n label: curItem.regionName,\n [TypeKey[Type.IS_GROUP]]: curItem[TypeKey[Type.IS_GROUP]],\n isHalfChecked: false,\n isAllChecked: false,\n type: Type.IS_GROUP,\n children: [getLeafNode(curItem as ILeafNode)],\n selectedChildren: [],\n onCheck: () => {\n console.log(\n `【🔧 检查】节点类型:组节点。动作: 检查更新【${curItem.regionName}】地区的选中状态`,\n )\n groupNodeOnCheck(curItem, Type.IS_GROUP)\n },\n onChange: (val: boolean) => {\n console.log(\n `【🔧 点击】节点类型:组节点。动作: 手动切换【${curItem.regionName}】地区的选中状态`,\n )\n locations.value[curItem[TypeKey[Type.IS_GROUP]]].selectedChildren = val\n ? locations.value[curItem[TypeKey[Type.IS_GROUP]]].children.map((v) => v[valueKey])\n : []\n /** 调用所有IGroupNode和IIspNode的onCheck */\n dispatchAllNodesOnCheck()\n },\n } as IGroupNode\n }\n // 全选\n if (!('all' in initVal)) {\n initVal['all'] = {\n label: '全选',\n isHalfChecked: false,\n isAllChecked: false,\n type: Type.IS_ALL,\n children: [],\n selectedChildren: [],\n onCheck: () => {\n console.log(`【🔧 检查】节点类型:全选节点。动作: 检查更新全选节点的选中状态`)\n allNodeOnCheck()\n },\n onChange: (val: boolean) => {\n console.log(`【🔧 点击】节点类型:全选节点。动作: 手动切换所有叶子节点的选中状态`)\n Object.entries(locations.value)\n .filter(([k, v]) => k !== 'all')\n .forEach(([k, v]) => {\n v.selectedChildren = val ? (v as IGroupNode).children.map((v1) => v1[valueKey]) : []\n })\n /** 调用所有IGroupNode和IIspNode的onCheck */\n dispatchAllNodesOnCheck()\n },\n } as IAllNode\n }\n // 运营商全选节点【布局方便,所以放进all的children中】\n if (\n !(initVal['all']?.children || []).find(\n (v) => v[TypeKey[Type.IS_ISP]] === curItem[TypeKey[Type.IS_ISP]],\n )\n ) {\n initVal['all']?.children?.push({\n label: curItem.ispName,\n [TypeKey[Type.IS_ISP]]: curItem[TypeKey[Type.IS_ISP]],\n /** 因为运营商的唯一值是asn,其余的叶子节点唯一值是regionId,所以在这里如果要把运营商模拟为叶子结点的话,需要把asn填进regionId */\n [valueKey]: curItem[TypeKey[Type.IS_ISP]], // 用唯一的asn,因为ui中将运营商节点放入leaf节点的位置,所以有了这个key\n isHalfChecked: false,\n isAllChecked: false,\n type: Type.IS_ISP,\n children: [],\n selectedChildren: [],\n onCheck: () => {\n console.log(\n `【🔧 检查】节点类型:运营商节点。动作: 检查更新【${curItem.ispName}】运营商节点的选中状态`,\n )\n ispNodeOnCheck(curItem, Type.IS_ISP)\n },\n onChange: (val: boolean) => {\n console.log(\n `【🔧 点击】节点类型:全选节点。动作: 手动切换【${curItem.ispName}】运营商节点的选中状态`,\n )\n Object.entries(locations.value)\n .filter(([k, v]) => k !== 'all')\n .forEach(([k, v]) => {\n v.selectedChildren = val\n ? (v as IGroupNode).children\n .filter((v1) => v1[TypeKey[Type.IS_ISP]] === curItem[TypeKey[Type.IS_ISP]])\n .map((v) => v[valueKey])\n : []\n })\n dispatchAllNodesOnCheck()\n },\n } as IIspNode)\n }\n return initVal\n }, {} as ILocations)\n }\n const init = () => {\n locations.value = formatLocations(props.options as ILocationItem[])\n if (isEmpty(locations.value)) {\n return\n }\n Object.entries(locations.value)\n .filter(([k]) => k !== 'all')\n .map(([_, v]) => {\n const same = v.children\n .filter((v) => props.value.includes(v[valueKey]))\n .map((v) => v[valueKey])\n if (same.length) {\n v.selectedChildren = [...v.selectedChildren, ...same]\n }\n })\n dispatchAllNodesOnCheck()\n }\n /** 配合formily的value/change模式 */\n watch(\n () => [props.options, props.value],\n (newVal, oldVal) => {\n if (!isEqual(newVal?.[0], oldVal?.[0]) || !isEqual(newVal?.[1], oldVal?.[1])) {\n init()\n }\n },\n { immediate: true },\n )\n return {\n locations,\n allLocations,\n }\n}\n"],"names":["v"],"mappings":";;;;;AAiBa,MAAA,YAAA,GAAe,CAAC,KAAoC,KAAA;AAC/D,EAAM,MAAA,SAAA,GAAY,GAAgB,CAAA,EAAE,CAAA,CAAA;AAEpC,EAAM,MAAA,YAAA,GAAe,SAAwB,MAAM;AACjD,IAAA,OAAO,MAAO,CAAA,OAAA,CAAQ,SAAU,CAAA,KAAK,CAClC,CAAA,MAAA,CAAO,CAAC,CAAC,CAAC,CAAA,KAAM,CAAM,KAAA,KAAK,CAC3B,CAAA,MAAA;AAAA,MACC,CAAC,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAC,CAAO,MAAA;AAAA,QACnB,gBAAkB,EAAA;AAAA,UAChB,GAAG,MAAO,CAAA,gBAAA;AAAA,UACV,GAAK,CAA2B,CAAA,gBAAA,IAAoB,EAAC;AAAA,SACvD;AAAA,QACA,QAAA,EAAU,CAAC,GAAG,MAAA,CAAO,UAAU,GAAK,CAAA,CAA2B,QAAY,IAAA,EAAG,CAAA;AAAA,OAChF,CAAA;AAAA,MACA,EAAE,QAAU,EAAA,EAAI,EAAA,gBAAA,EAAkB,EAAG,EAAA;AAAA,KACvC,CAAA;AAAA,GACH,CAAA,CAAA;AACD,EAAA,MAAM,EAAE,cAAA,EAAgB,gBAAkB,EAAA,cAAA,EAAgB,yBAA4B,GAAA,QAAA;AAAA,IACpF,SAAA;AAAA,IACA,YAAA;AAAA,GACF,CAAA;AAEA,EAAA,MAAM,eAAkB,GAAA,CAAC,YAAgC,GAAA,EAAmB,KAAA;AAC1E,IAAM,MAAA,WAAA,GAAc,CAAC,OAAmC,MAAA;AAAA,MACtD,GAAG,OAAA;AAAA,MACH,OAAO,OAAQ,CAAA,YAAA;AAAA,MACf,QAAU,EAAA,KAAA;AAAA,MACV,MAAM,IAAK,CAAA,OAAA;AAAA,MACX,UAAU,EAAC;AAAA,MACX,kBAAkB,EAAC;AAAA,MACnB,UAAU,MAAM;AACd,QAAQ,OAAA,CAAA,GAAA;AAAA,UACN,CAAA,0IAAA,EAA6B,QAAQ,YAAY,CAAA,sDAAA,CAAA;AAAA,SACnD,CAAA;AACA,QAAwB,uBAAA,EAAA,CAAA;AAAA,OAC1B;AAAA,KACF,CAAA,CAAA;AACA,IAAA,OAAO,YAAa,CAAA,MAAA,CAAO,CAAC,OAAA,EAAS,OAAY,KAAA;AAtDrD,MAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,CAAA;AAwDM,MAAA,IAAI,QAAQ,OAAQ,CAAA,IAAA,CAAK,OAAO,CAAC,KAAK,OAAS,EAAA;AAC7C,QAAA,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,OAAA,CAAQ,OAAQ,CAAA,OAAA,CAAQ,IAAK,CAAA,OAAO,CAAC,CAAC,CAAE,CAAA,QAAA,KAAxC,IAAkD,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,KAAlD,IAAyD,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,EAAA,EAAA,WAAA,CAAY,OAAoB,CAAA,CAAA,CAAA;AAAA,OACpF,MAAA;AACL,QAAA,OAAA,CAAQ,QAAQ,OAAQ,CAAA,IAAA,CAAK,QAAQ,CAAC,CAAC,CAAI,GAAA;AAAA,UACzC,OAAO,OAAQ,CAAA,UAAA;AAAA,UACf,CAAC,OAAQ,CAAA,IAAA,CAAK,QAAQ,CAAC,GAAG,OAAQ,CAAA,OAAA,CAAQ,IAAK,CAAA,QAAQ,CAAC,CAAA;AAAA,UACxD,aAAe,EAAA,KAAA;AAAA,UACf,YAAc,EAAA,KAAA;AAAA,UACd,MAAM,IAAK,CAAA,QAAA;AAAA,UACX,QAAU,EAAA,CAAC,WAAY,CAAA,OAAoB,CAAC,CAAA;AAAA,UAC5C,kBAAkB,EAAC;AAAA,UACnB,SAAS,MAAM;AACb,YAAQ,OAAA,CAAA,GAAA;AAAA,cACN,CAAA,oIAAA,EAA4B,QAAQ,UAAU,CAAA,gDAAA,CAAA;AAAA,aAChD,CAAA;AACA,YAAiB,gBAAA,CAAA,OAAA,EAAS,KAAK,QAAQ,CAAA,CAAA;AAAA,WACzC;AAAA,UACA,QAAA,EAAU,CAAC,GAAiB,KAAA;AAC1B,YAAQ,OAAA,CAAA,GAAA;AAAA,cACN,CAAA,oIAAA,EAA4B,QAAQ,UAAU,CAAA,gDAAA,CAAA;AAAA,aAChD,CAAA;AACA,YAAU,SAAA,CAAA,KAAA,CAAM,OAAQ,CAAA,OAAA,CAAQ,IAAK,CAAA,QAAQ,CAAC,CAAC,CAAE,CAAA,gBAAA,GAAmB,GAChE,GAAA,SAAA,CAAU,KAAM,CAAA,OAAA,CAAQ,OAAQ,CAAA,IAAA,CAAK,QAAQ,CAAC,CAAC,CAAA,CAAE,QAAS,CAAA,GAAA,CAAI,CAAC,CAAA,KAAM,CAAE,CAAA,QAAQ,CAAC,CAAA,GAChF,EAAC,CAAA;AAEL,YAAwB,uBAAA,EAAA,CAAA;AAAA,WAC1B;AAAA,SACF,CAAA;AAAA,OACF;AAEA,MAAI,IAAA,EAAE,SAAS,OAAU,CAAA,EAAA;AACvB,QAAA,OAAA,CAAQ,KAAK,CAAI,GAAA;AAAA,UACf,KAAO,EAAA,cAAA;AAAA,UACP,aAAe,EAAA,KAAA;AAAA,UACf,YAAc,EAAA,KAAA;AAAA,UACd,MAAM,IAAK,CAAA,MAAA;AAAA,UACX,UAAU,EAAC;AAAA,UACX,kBAAkB,EAAC;AAAA,UACnB,SAAS,MAAM;AACb,YAAA,OAAA,CAAQ,IAAI,CAAoC,0LAAA,CAAA,CAAA,CAAA;AAChD,YAAe,cAAA,EAAA,CAAA;AAAA,WACjB;AAAA,UACA,QAAA,EAAU,CAAC,GAAiB,KAAA;AAC1B,YAAA,OAAA,CAAQ,IAAI,CAAsC,sMAAA,CAAA,CAAA,CAAA;AAClD,YAAA,MAAA,CAAO,QAAQ,SAAU,CAAA,KAAK,EAC3B,MAAO,CAAA,CAAC,CAAC,CAAG,EAAA,CAAC,CAAM,KAAA,CAAA,KAAM,KAAK,CAC9B,CAAA,OAAA,CAAQ,CAAC,CAAC,CAAA,EAAG,CAAC,CAAM,KAAA;AACnB,cAAE,CAAA,CAAA,gBAAA,GAAmB,GAAO,GAAA,CAAA,CAAiB,QAAS,CAAA,GAAA,CAAI,CAAC,EAAA,KAAO,EAAG,CAAA,QAAQ,CAAC,CAAA,GAAI,EAAC,CAAA;AAAA,aACpF,CAAA,CAAA;AAEH,YAAwB,uBAAA,EAAA,CAAA;AAAA,WAC1B;AAAA,SACF,CAAA;AAAA,OACF;AAEA,MAAA,IACE,IAAE,EAAQ,GAAA,OAAA,CAAA,KAAK,MAAb,IAAgB,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,QAAA,KAAY,EAAI,EAAA,IAAA;AAAA,QAChC,CAAC,CAAA,KAAM,CAAE,CAAA,OAAA,CAAQ,IAAK,CAAA,MAAM,CAAC,CAAA,KAAM,OAAQ,CAAA,OAAA,CAAQ,IAAK,CAAA,MAAM,CAAC,CAAA;AAAA,OAEjE,EAAA;AACA,QAAA,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,OAAA,CAAQ,KAAK,CAAA,KAAb,IAAgB,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,QAAA,KAAhB,mBAA0B,IAAK,CAAA;AAAA,UAC7B,OAAO,OAAQ,CAAA,OAAA;AAAA,UACf,CAAC,OAAQ,CAAA,IAAA,CAAK,MAAM,CAAC,GAAG,OAAQ,CAAA,OAAA,CAAQ,IAAK,CAAA,MAAM,CAAC,CAAA;AAAA;AAAA,UAEpD,CAAC,QAAQ,GAAG,QAAQ,OAAQ,CAAA,IAAA,CAAK,MAAM,CAAC,CAAA;AAAA;AAAA,UACxC,aAAe,EAAA,KAAA;AAAA,UACf,YAAc,EAAA,KAAA;AAAA,UACd,MAAM,IAAK,CAAA,MAAA;AAAA,UACX,UAAU,EAAC;AAAA,UACX,kBAAkB,EAAC;AAAA,UACnB,SAAS,MAAM;AACb,YAAQ,OAAA,CAAA,GAAA;AAAA,cACN,CAAA,gJAAA,EAA8B,QAAQ,OAAO,CAAA,kEAAA,CAAA;AAAA,aAC/C,CAAA;AACA,YAAe,cAAA,CAAA,OAAA,EAAS,KAAK,MAAM,CAAA,CAAA;AAAA,WACrC;AAAA,UACA,QAAA,EAAU,CAAC,GAAiB,KAAA;AAC1B,YAAQ,OAAA,CAAA,GAAA;AAAA,cACN,CAAA,0IAAA,EAA6B,QAAQ,OAAO,CAAA,kEAAA,CAAA;AAAA,aAC9C,CAAA;AACA,YAAA,MAAA,CAAO,QAAQ,SAAU,CAAA,KAAK,EAC3B,MAAO,CAAA,CAAC,CAAC,CAAG,EAAA,CAAC,CAAM,KAAA,CAAA,KAAM,KAAK,CAC9B,CAAA,OAAA,CAAQ,CAAC,CAAC,CAAA,EAAG,CAAC,CAAM,KAAA;AACnB,cAAE,CAAA,CAAA,gBAAA,GAAmB,GAChB,GAAA,CAAA,CAAiB,QACf,CAAA,MAAA,CAAO,CAAC,EAAA,KAAO,EAAG,CAAA,OAAA,CAAQ,IAAK,CAAA,MAAM,CAAC,CAAA,KAAM,OAAQ,CAAA,OAAA,CAAQ,IAAK,CAAA,MAAM,CAAC,CAAC,CACzE,CAAA,GAAA,CAAI,CAACA,EAAAA,KAAMA,EAAE,CAAA,QAAQ,CAAC,CAAA,GACzB,EAAC,CAAA;AAAA,aACN,CAAA,CAAA;AACH,YAAwB,uBAAA,EAAA,CAAA;AAAA,WAC1B;AAAA,SACF,CAAA,CAAA;AAAA,OACF;AACA,MAAO,OAAA,OAAA,CAAA;AAAA,KACT,EAAG,EAAgB,CAAA,CAAA;AAAA,GACrB,CAAA;AACA,EAAA,MAAM,OAAO,MAAM;AACjB,IAAU,SAAA,CAAA,KAAA,GAAQ,eAAgB,CAAA,KAAA,CAAM,OAA0B,CAAA,CAAA;AAClE,IAAI,IAAA,OAAA,CAAQ,SAAU,CAAA,KAAK,CAAG,EAAA;AAC5B,MAAA,OAAA;AAAA,KACF;AACA,IAAA,MAAA,CAAO,QAAQ,SAAU,CAAA,KAAK,CAC3B,CAAA,MAAA,CAAO,CAAC,CAAC,CAAC,CAAM,KAAA,CAAA,KAAM,KAAK,CAC3B,CAAA,GAAA,CAAI,CAAC,CAAC,CAAA,EAAG,CAAC,CAAM,KAAA;AACf,MAAA,MAAM,OAAO,CAAE,CAAA,QAAA,CACZ,OAAO,CAACA,EAAAA,KAAM,MAAM,KAAM,CAAA,QAAA,CAASA,GAAE,QAAQ,CAAC,CAAC,CAC/C,CAAA,GAAA,CAAI,CAACA,EAAMA,KAAAA,EAAAA,CAAE,QAAQ,CAAC,CAAA,CAAA;AACzB,MAAA,IAAI,KAAK,MAAQ,EAAA;AACf,QAAA,CAAA,CAAE,mBAAmB,CAAC,GAAG,CAAE,CAAA,gBAAA,EAAkB,GAAG,IAAI,CAAA,CAAA;AAAA,OACtD;AAAA,KACD,CAAA,CAAA;AACH,IAAwB,uBAAA,EAAA,CAAA;AAAA,GAC1B,CAAA;AAEA,EAAA,KAAA;AAAA,IACE,MAAM,CAAC,KAAM,CAAA,OAAA,EAAS,MAAM,KAAK,CAAA;AAAA,IACjC,CAAC,QAAQ,MAAW,KAAA;AAClB,MAAA,IAAI,CAAC,OAAA,CAAQ,MAAS,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,MAAA,CAAA,CAAA,CAAA,EAAI,MAAS,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,MAAA,CAAA,CAAA,CAAE,CAAK,IAAA,CAAC,OAAQ,CAAA,MAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,MAAA,CAAS,CAAI,CAAA,EAAA,MAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,MAAA,CAAS,EAAE,CAAG,EAAA;AAC5E,QAAK,IAAA,EAAA,CAAA;AAAA,OACP;AAAA,KACF;AAAA,IACA,EAAE,WAAW,IAAK,EAAA;AAAA,GACpB,CAAA;AACA,EAAO,OAAA;AAAA,IACL,SAAA;AAAA,IACA,YAAA;AAAA,GACF,CAAA;AACF;;;;"}
1
+ {"version":3,"file":"useLocations.mjs","sources":["../../../../../packages/components/commonLocations/useLocations.ts"],"sourcesContent":["import { ref, computed, watch } from 'vue'\nimport { isEmpty, isEqual } from 'lodash'\nimport { getUtils } from './utils'\nimport { Type, TypeKey, valueKey } from './constants'\n\nimport type {\n IProps,\n IUseLocationsRes,\n ILocationItem,\n IAllNode,\n IIspNode,\n IGroupNode,\n ILeafNode,\n ILocations,\n ISelectedData,\n} from './interfaces'\n\nexport const useLocations = (props: IProps): IUseLocationsRes => {\n const locations = ref<ILocations>({})\n /** 获取所有选中的和可选的leaf节点 */\n const allLocations = computed<ISelectedData>(() => {\n return Object.entries(locations.value)\n .filter(([k]) => k !== 'all')\n .reduce(\n (iniVal, [_, v]) => ({\n selectedChildren: [\n ...iniVal.selectedChildren,\n ...((v as unknown as ILeafNode).selectedChildren || []),\n ],\n children: [...iniVal.children, ...((v as unknown as ILeafNode).children || [])],\n }),\n { children: [], selectedChildren: [] } as ISelectedData,\n )\n })\n const { ispNodeOnCheck, groupNodeOnCheck, allNodeOnCheck, dispatchAllNodesOnCheck } = getUtils(\n locations,\n allLocations,\n )\n /** 格式化locations */\n const formatLocations = (curLocations: ILocationItem[] = []): ILocations => {\n const getLeafNode = (curItem: ILeafNode): ILeafNode => ({\n ...curItem,\n label: curItem.friendlyArea,\n selected: false,\n type: Type.IS_LEAF,\n children: [],\n selectedChildren: [],\n onChange: () => {\n console.log(\n `【🔧 点击】节点类型:叶子节点。动作: 手动切换【${curItem.friendlyArea}】地区的选中状态。`,\n )\n dispatchAllNodesOnCheck()\n },\n })\n return curLocations.reduce((initVal, curItem) => {\n // 按regionName分组\n if (curItem[TypeKey[Type.IS_LEAF]] in initVal) {\n initVal[curItem[TypeKey[Type.IS_LEAF]]].children?.push?.(getLeafNode(curItem as ILeafNode))\n } else {\n initVal[curItem[TypeKey[Type.IS_GROUP]]] = {\n label: curItem.regionName,\n [TypeKey[Type.IS_GROUP]]: curItem[TypeKey[Type.IS_GROUP]],\n isHalfChecked: false,\n isAllChecked: false,\n type: Type.IS_GROUP,\n children: [getLeafNode(curItem as ILeafNode)],\n selectedChildren: [],\n onCheck: () => {\n console.log(\n `【🔧 检查】节点类型:组节点。动作: 检查更新【${curItem.regionName}】地区的选中状态`,\n )\n groupNodeOnCheck(curItem, Type.IS_GROUP)\n },\n onChange: (val: boolean) => {\n console.log(\n `【🔧 点击】节点类型:组节点。动作: 手动切换【${curItem.regionName}】地区的选中状态`,\n )\n locations.value[curItem[TypeKey[Type.IS_GROUP]]].selectedChildren = val\n ? locations.value[curItem[TypeKey[Type.IS_GROUP]]].children.map((v) => v[valueKey])\n : []\n /** 调用所有IGroupNode和IIspNode的onCheck */\n dispatchAllNodesOnCheck()\n },\n } as IGroupNode\n }\n // 全选\n if (!('all' in initVal)) {\n initVal['all'] = {\n label: '全选',\n isHalfChecked: false,\n isAllChecked: false,\n type: Type.IS_ALL,\n children: [],\n selectedChildren: [],\n onCheck: () => {\n console.log(`【🔧 检查】节点类型:全选节点。动作: 检查更新全选节点的选中状态`)\n allNodeOnCheck()\n },\n onChange: (val: boolean) => {\n console.log(`【🔧 点击】节点类型:全选节点。动作: 手动切换所有叶子节点的选中状态`)\n Object.entries(locations.value)\n .filter(([k, v]) => k !== 'all')\n .forEach(([k, v]) => {\n v.selectedChildren = val ? (v as IGroupNode).children.map((v1) => v1[valueKey]) : []\n })\n /** 调用所有IGroupNode和IIspNode的onCheck */\n dispatchAllNodesOnCheck()\n },\n } as IAllNode\n }\n // 运营商全选节点【布局方便,所以放进all的children中】\n if (\n !(initVal['all']?.children || []).find(\n (v) => v[TypeKey[Type.IS_ISP]] === curItem[TypeKey[Type.IS_ISP]],\n )\n ) {\n initVal['all']?.children?.push({\n label: curItem.ispName,\n [TypeKey[Type.IS_ISP]]: curItem[TypeKey[Type.IS_ISP]],\n /** 因为运营商的唯一值是asn,其余的叶子节点唯一值是regionId,所以在这里如果要把运营商模拟为叶子结点的话,需要把asn填进regionId */\n [valueKey]: curItem[TypeKey[Type.IS_ISP]], // 用唯一的asn,因为ui中将运营商节点放入leaf节点的位置,所以有了这个key\n isHalfChecked: false,\n isAllChecked: false,\n type: Type.IS_ISP,\n children: [],\n selectedChildren: [],\n onCheck: () => {\n console.log(\n `【🔧 检查】节点类型:运营商节点。动作: 检查更新【${curItem.ispName}】运营商节点的选中状态`,\n )\n ispNodeOnCheck(curItem, Type.IS_ISP)\n },\n onChange: (val: boolean) => {\n console.log(\n `【🔧 点击】节点类型:全选节点。动作: 手动切换【${curItem.ispName}】运营商节点的选中状态`,\n )\n Object.entries(locations.value)\n .filter(([k]) => k !== 'all')\n .forEach(([_, v]) => {\n if (val) {\n /** 需要选中的nodes */\n const newSelectedNodes = (v as IGroupNode).children\n .filter((v1) => v1[TypeKey[Type.IS_ISP]] === curItem[TypeKey[Type.IS_ISP]])\n .map((v) => v[valueKey])\n /** 向当前选中的nodes中加入需要选中的nodes */\n v.selectedChildren = [...v.selectedChildren, ...newSelectedNodes]\n } else {\n /** 需要取消选中的nodes */\n const unCheckedNodes = (v as IGroupNode).children\n .filter((v1) => v1[TypeKey[Type.IS_ISP]] === curItem[TypeKey[Type.IS_ISP]])\n .map((v) => v[valueKey])\n /** 从当前选中的nodes中去掉取消选中的nodes */\n v.selectedChildren = v.selectedChildren.filter((v) => !unCheckedNodes.includes(v))\n }\n })\n dispatchAllNodesOnCheck()\n },\n } as IIspNode)\n }\n return initVal\n }, {} as ILocations)\n }\n const init = () => {\n locations.value = formatLocations(props.options as ILocationItem[])\n if (isEmpty(locations.value)) {\n return\n }\n Object.entries(locations.value)\n .filter(([k]) => k !== 'all')\n .map(([_, v]) => {\n const same = v.children\n .filter((v) => props.value.includes(v[valueKey]))\n .map((v) => v[valueKey])\n if (same.length) {\n v.selectedChildren = [...v.selectedChildren, ...same]\n }\n })\n dispatchAllNodesOnCheck()\n }\n /** 配合formily的value/change模式 */\n watch(\n () => [props.options, props.value],\n (newVal, oldVal) => {\n if (!isEqual(newVal?.[0], oldVal?.[0]) || !isEqual(newVal?.[1], oldVal?.[1])) {\n init()\n }\n },\n { immediate: true },\n )\n return {\n locations,\n allLocations,\n }\n}\n"],"names":["v"],"mappings":"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"}