@mc20230601/keep-up 1.0.41 → 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 (93) 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/constants.mjs.map +1 -1
  5. package/es/components/commonEditor/index.d.ts +2 -2
  6. package/es/components/commonEditor/index.mjs +4 -3
  7. package/es/components/commonEditor/index.mjs.map +1 -1
  8. package/es/components/commonEditor/interfaces.d.ts +5 -1
  9. package/es/components/commonFilter/constants.mjs.map +1 -1
  10. package/es/components/commonFilter/index.d.ts +6 -6
  11. package/es/components/commonFilter/index.mjs +6 -4
  12. package/es/components/commonFilter/index.mjs.map +1 -1
  13. package/es/components/commonFilter/interfaces.d.ts +3 -1
  14. package/es/components/commonFilter/useFieldsParser.mjs +22 -19
  15. package/es/components/commonFilter/useFieldsParser.mjs.map +1 -1
  16. package/es/components/commonFilter/useKeepFilter.d.ts +1 -1
  17. package/es/components/commonFilter/useKeepFilter.mjs +21 -3
  18. package/es/components/commonFilter/useKeepFilter.mjs.map +1 -1
  19. package/es/components/commonJsonPretty/index.mjs +6 -11
  20. package/es/components/commonJsonPretty/index.mjs.map +1 -1
  21. package/es/components/commonLocations/index.d.ts +1 -1
  22. package/es/components/commonLocations/index.mjs +2 -2
  23. package/es/components/commonLocations/index.mjs.map +1 -1
  24. package/es/components/commonLocations/useLocations.mjs +8 -2
  25. package/es/components/commonLocations/useLocations.mjs.map +1 -1
  26. package/es/components/commonLocations/utils.mjs +3 -1
  27. package/es/components/commonLocations/utils.mjs.map +1 -1
  28. package/es/components/commonModal/index.mjs.map +1 -1
  29. package/es/components/commonPage/index.d.ts +4 -2
  30. package/es/components/commonPage/index.mjs +16 -9
  31. package/es/components/commonPage/index.mjs.map +1 -1
  32. package/es/components/commonPage/interfaces.d.ts +4 -0
  33. package/es/components/commonPage/useAsyncDataSource.d.ts +1 -1
  34. package/es/components/commonPage/useAsyncDataSource.mjs +11 -4
  35. package/es/components/commonPage/useAsyncDataSource.mjs.map +1 -1
  36. package/es/components/commonPage/usePage.mjs +37 -32
  37. package/es/components/commonPage/usePage.mjs.map +1 -1
  38. package/es/components/commonPage/usePageActions.mjs +19 -13
  39. package/es/components/commonPage/usePageActions.mjs.map +1 -1
  40. package/es/components/commonPage/usePagePreferences.mjs +28 -10
  41. package/es/components/commonPage/usePagePreferences.mjs.map +1 -1
  42. package/es/components/commonPage/utils.mjs.map +1 -1
  43. package/es/components/commonSetter/components/draggableList/index.mjs +6 -5
  44. package/es/components/commonSetter/components/draggableList/index.mjs.map +1 -1
  45. package/es/components/commonSetter/index.mjs.map +1 -1
  46. package/es/components/commonTable/constants.d.ts +6 -2
  47. package/es/components/commonTable/constants.mjs +3 -4
  48. package/es/components/commonTable/constants.mjs.map +1 -1
  49. package/es/components/commonTable/index.mjs +13 -7
  50. package/es/components/commonTable/index.mjs.map +1 -1
  51. package/es/components/commonTable/index.module.mjs +2 -2
  52. package/es/components/commonTable/props.mjs.map +1 -1
  53. package/es/components/commonTable/usePagination.mjs +0 -1
  54. package/es/components/commonTable/usePagination.mjs.map +1 -1
  55. package/es/components/commonTable/utils.d.ts +1 -1
  56. package/es/components/commonTable/utils.mjs +1 -6
  57. package/es/components/commonTable/utils.mjs.map +1 -1
  58. package/es/components/formTabs/index.mjs +0 -1
  59. package/es/components/formTabs/index.mjs.map +1 -1
  60. package/es/components/formilyCmps/formTab/index.mjs +1 -5
  61. package/es/components/formilyCmps/formTab/index.mjs.map +1 -1
  62. package/es/components/formilyCmps/formilyForm/index.d.ts +1 -1
  63. package/es/components/formilyCmps/formilyForm/index.mjs +18 -0
  64. package/es/components/formilyCmps/formilyForm/index.mjs.map +1 -1
  65. package/es/components/formilyCmps/formilyForm/interfaces.d.ts +2 -2
  66. package/es/components/formilyCmps/index.d.ts +1 -0
  67. package/es/components/formilyCmps/index.mjs +1 -0
  68. package/es/components/formilyCmps/index.mjs.map +1 -1
  69. package/es/components/formilyCmps/sectionTitle/index.mjs +2 -2
  70. package/es/components/formilyCmps/sectionTitle/index.mjs.map +1 -1
  71. package/es/components/formilyCmps/title/index.d.ts +2 -0
  72. package/es/components/formilyCmps/title/index.mjs +19 -0
  73. package/es/components/formilyCmps/title/index.mjs.map +1 -0
  74. package/es/components/formilyCmps/title/index.module.mjs +4 -0
  75. package/es/components/formilyCmps/title/index.module.mjs.map +1 -0
  76. package/es/components/formilyCmps/virtualizedSelect/index.d.ts +1 -0
  77. package/es/components/formilyCmps/virtualizedSelect/index.mjs +15 -0
  78. package/es/components/formilyCmps/virtualizedSelect/index.mjs.map +1 -0
  79. package/es/components/index.d.ts +1 -1
  80. package/es/components/index.mjs +1 -0
  81. package/es/components/index.mjs.map +1 -1
  82. package/es/components/radioGroup/index.d.ts +15 -15
  83. package/es/components/radioGroup/index.mjs +1 -0
  84. package/es/components/radioGroup/index.mjs.map +1 -1
  85. package/es/components/space/index.d.ts +1 -1
  86. package/es/components/upload/formilyUpload.d.ts +1 -1
  87. package/es/components/upload/index.d.ts +4 -4
  88. package/es/components/upload/upload.d.ts +1 -1
  89. package/es/index.d.ts +2334 -18
  90. package/es/index.mjs +1 -20
  91. package/es/index.mjs.map +1 -1
  92. package/es/styles/index.css +169 -135
  93. package/package.json +1 -1
@@ -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":"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"}
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":";;;;;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,CAC3B,CAAA,MAAA,CAAO,CAAC,CAAC,CAAC,CAAM,KAAA,CAAA,KAAM,KAAK,CAC3B,CAAA,OAAA,CAAQ,CAAC,CAAC,CAAA,EAAG,CAAC,CAAM,KAAA;AACnB,cAAA,IAAI,GAAK,EAAA;AAEP,gBAAM,MAAA,gBAAA,GAAoB,CAAiB,CAAA,QAAA,CACxC,MAAO,CAAA,CAAC,OAAO,EAAG,CAAA,OAAA,CAAQ,IAAK,CAAA,MAAM,CAAC,CAAA,KAAM,QAAQ,OAAQ,CAAA,IAAA,CAAK,MAAM,CAAC,CAAC,CAAA,CACzE,IAAI,CAACA,EAAAA,KAAMA,EAAE,CAAA,QAAQ,CAAC,CAAA,CAAA;AAEzB,gBAAA,CAAA,CAAE,mBAAmB,CAAC,GAAG,CAAE,CAAA,gBAAA,EAAkB,GAAG,gBAAgB,CAAA,CAAA;AAAA,eAC3D,MAAA;AAEL,gBAAM,MAAA,cAAA,GAAkB,CAAiB,CAAA,QAAA,CACtC,MAAO,CAAA,CAAC,OAAO,EAAG,CAAA,OAAA,CAAQ,IAAK,CAAA,MAAM,CAAC,CAAA,KAAM,QAAQ,OAAQ,CAAA,IAAA,CAAK,MAAM,CAAC,CAAC,CAAA,CACzE,IAAI,CAACA,EAAAA,KAAMA,EAAE,CAAA,QAAQ,CAAC,CAAA,CAAA;AAEzB,gBAAE,CAAA,CAAA,gBAAA,GAAmB,CAAE,CAAA,gBAAA,CAAiB,MAAO,CAAA,CAACA,OAAM,CAAC,cAAA,CAAe,QAASA,CAAAA,EAAC,CAAC,CAAA,CAAA;AAAA,eACnF;AAAA,aACD,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;;;;"}
@@ -9,7 +9,9 @@ const getUtils = (locations, allLocations) => {
9
9
  const target = (_a = locations.value.all) == null ? void 0 : _a.children.find((v) => v[key] === curItem[key]);
10
10
  const index = (_b = locations.value.all) == null ? void 0 : _b.selectedChildren.findIndex((v) => v === target[valueKey]);
11
11
  const sameAsnLeafs = allLocations.value.children.filter((v) => v[key] === target[key]);
12
- const selectedLeafs = sameAsnLeafs.filter((v) => allLocations.value.selectedChildren.includes(v[valueKey]));
12
+ const selectedLeafs = sameAsnLeafs.filter(
13
+ (v) => allLocations.value.selectedChildren.includes(v[valueKey])
14
+ );
13
15
  if (!(selectedLeafs == null ? void 0 : selectedLeafs.length)) {
14
16
  target.isAllChecked = false;
15
17
  target.isHalfChecked = false;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.mjs","sources":["../../../../../packages/components/commonLocations/utils.ts"],"sourcesContent":["import { Type, TypeKey, valueKey } from './constants'\n\nimport type { Ref, ComputedRef } from 'vue'\nimport type { \n ILocations,\n ILocationItem, \n ISelectedData,\n} from './interfaces'\n\n/** 获取状态检查函数 */\nexport const getUtils = (locations: Ref<ILocations>, allLocations: ComputedRef<ISelectedData>) => {\n return {\n /** 运营商选中状态检查【运营商节点和all节点】 */\n ispNodeOnCheck(curItem: ILocationItem, type: Type) {\n /** 因为运营商的唯一值是asn,其余的叶子节点唯一值是regionId,所以在这里如果要把运营商模拟为叶子结点的话,需要把asn填进regionId */\n const key = TypeKey[type]\n const target = locations.value.all?.children.find(v => v[key] === curItem[key]) // 当前节点\n const index = locations.value.all?.selectedChildren.findIndex(v => v === target[valueKey]) // 当前节点在selectedChildren中的下标\n const sameAsnLeafs = allLocations.value.children.filter(v => v[key] === target[key]) // 所有本运营商的leaf节点\n const selectedLeafs = sameAsnLeafs.filter(v => allLocations.value.selectedChildren.includes(v[valueKey])) // 本运营商中被选中的leaf节点\n if (!selectedLeafs?.length) {\n target.isAllChecked = false\n target.isHalfChecked = false\n if (locations.value.all?.selectedChildren.includes(target[valueKey])) {\n locations.value.all?.selectedChildren.splice(index, 1)\n }\n } else if (selectedLeafs.length > 0 && selectedLeafs?.length < sameAsnLeafs.length) {\n target.isAllChecked = false\n target.isHalfChecked = true\n if (locations.value.all?.selectedChildren.includes(target[valueKey])) {\n locations.value.all?.selectedChildren.splice(index, 1)\n }\n } else if (selectedLeafs.length === sameAsnLeafs.length) {\n target.isAllChecked = true\n target.isHalfChecked = false\n if (!locations.value.all?.selectedChildren.includes(target[valueKey])) {\n locations.value.all?.selectedChildren.push(target[valueKey])\n }\n }\n },\n /** 组节点选中状态检查 */\n groupNodeOnCheck (curItem: ILocationItem, type: Type) {\n const key = TypeKey[type]\n const target = locations.value[curItem[key]]\n if (!target.selectedChildren?.length) {\n target.isAllChecked = false\n target.isHalfChecked = false\n } else if (target.selectedChildren?.length > 0 && target.selectedChildren?.length < target.children?.length) {\n target.isAllChecked = false\n target.isHalfChecked = true\n } else if (target.selectedChildren?.length === target.children?.length) {\n target.isAllChecked = true\n target.isHalfChecked = false\n }\n },\n /** 全选节点选中状态检查 */\n allNodeOnCheck () {\n if (!allLocations.value.selectedChildren.length) {\n locations.value.all.isAllChecked = false\n locations.value.all.isHalfChecked = false\n } else if (allLocations.value.selectedChildren.length > 0 && allLocations.value.selectedChildren.length < allLocations.value.children?.length) {\n locations.value.all.isAllChecked = false\n locations.value.all.isHalfChecked = true\n } else if (allLocations.value.selectedChildren.length === allLocations.value.children?.length) {\n locations.value.all.isAllChecked = true\n locations.value.all.isHalfChecked = false\n }\n },\n /** 调用组节点/运营商节点/全选节点的onCheck */\n dispatchAllNodesOnCheck () {\n ;(locations.value.all?.children || []).forEach(v => v.onCheck())\n Object.entries(locations.value).forEach(([k, v]) => v.onCheck())\n }\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.mjs","sources":["../../../../../packages/components/commonLocations/utils.ts"],"sourcesContent":["import { Type, TypeKey, valueKey } from './constants'\n\nimport type { Ref, ComputedRef } from 'vue'\nimport type { ILocations, ILocationItem, ISelectedData } from './interfaces'\n\n/** 获取状态检查函数 */\nexport const getUtils = (locations: Ref<ILocations>, allLocations: ComputedRef<ISelectedData>) => {\n return {\n /** 运营商选中状态检查【运营商节点和all节点】 */\n ispNodeOnCheck(curItem: ILocationItem, type: Type) {\n /** 因为运营商的唯一值是asn,其余的叶子节点唯一值是regionId,所以在这里如果要把运营商模拟为叶子结点的话,需要把asn填进regionId */\n const key = TypeKey[type]\n const target = locations.value.all?.children.find((v) => v[key] === curItem[key]) // 当前节点\n const index = locations.value.all?.selectedChildren.findIndex((v) => v === target[valueKey]) // 当前节点在selectedChildren中的下标\n const sameAsnLeafs = allLocations.value.children.filter((v) => v[key] === target[key]) // 所有本运营商的leaf节点\n const selectedLeafs = sameAsnLeafs.filter((v) =>\n allLocations.value.selectedChildren.includes(v[valueKey]),\n ) // 本运营商中被选中的leaf节点\n if (!selectedLeafs?.length) {\n target.isAllChecked = false\n target.isHalfChecked = false\n if (locations.value.all?.selectedChildren.includes(target[valueKey])) {\n locations.value.all?.selectedChildren.splice(index, 1)\n }\n } else if (selectedLeafs.length > 0 && selectedLeafs?.length < sameAsnLeafs.length) {\n target.isAllChecked = false\n target.isHalfChecked = true\n if (locations.value.all?.selectedChildren.includes(target[valueKey])) {\n locations.value.all?.selectedChildren.splice(index, 1)\n }\n } else if (selectedLeafs.length === sameAsnLeafs.length) {\n target.isAllChecked = true\n target.isHalfChecked = false\n if (!locations.value.all?.selectedChildren.includes(target[valueKey])) {\n locations.value.all?.selectedChildren.push(target[valueKey])\n }\n }\n },\n /** 组节点选中状态检查 */\n groupNodeOnCheck(curItem: ILocationItem, type: Type) {\n const key = TypeKey[type]\n const target = locations.value[curItem[key]]\n if (!target.selectedChildren?.length) {\n target.isAllChecked = false\n target.isHalfChecked = false\n } else if (\n target.selectedChildren?.length > 0 &&\n target.selectedChildren?.length < target.children?.length\n ) {\n target.isAllChecked = false\n target.isHalfChecked = true\n } else if (target.selectedChildren?.length === target.children?.length) {\n target.isAllChecked = true\n target.isHalfChecked = false\n }\n },\n /** 全选节点选中状态检查 */\n allNodeOnCheck() {\n if (!allLocations.value.selectedChildren.length) {\n locations.value.all.isAllChecked = false\n locations.value.all.isHalfChecked = false\n } else if (\n allLocations.value.selectedChildren.length > 0 &&\n allLocations.value.selectedChildren.length < allLocations.value.children?.length\n ) {\n locations.value.all.isAllChecked = false\n locations.value.all.isHalfChecked = true\n } else if (\n allLocations.value.selectedChildren.length === allLocations.value.children?.length\n ) {\n locations.value.all.isAllChecked = true\n locations.value.all.isHalfChecked = false\n }\n },\n /** 调用组节点/运营商节点/全选节点的onCheck */\n dispatchAllNodesOnCheck() {\n ;(locations.value.all?.children || []).forEach((v) => v.onCheck())\n Object.entries(locations.value).forEach(([k, v]) => v.onCheck())\n },\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../packages/components/commonModal/index.tsx"],"sourcesContent":["import { defineComponent, ref } from 'vue'\nimport { ElDialog } from 'element-plus'\nimport styles from './index.module.scss'\n\nimport type { ICommonModalExpose } from './interfaces'\n\nconst props = {\n /** 标题 */\n title: {\n type: String,\n default: '',\n },\n /** 宽度 */\n size: {\n type: String,\n default: '42%',\n },\n}\n\nexport * from './interfaces'\nexport default defineComponent({\n name: 'CommonEditor',\n props,\n emits: ['close'],\n setup(props, { emit, expose, slots }) {\n const visible = ref(false)\n const onClose = () => {\n emit('close')\n }\n const open = () => {\n visible.value = true\n }\n const close = () => {\n visible.value = false\n }\n expose<ICommonModalExpose>({ open, close })\n return () => (\n <ElDialog\n modelValue={visible.value}\n onUpdate:modelValue={(modelValue: boolean) => { visible.value = modelValue }}\n title={props.title || '默认标题'}\n width={props.size}\n class={styles.container}\n bodyClass={styles.content}\n destroyOnClose\n onClose={onClose}\n v-slots={slots}\n />\n )\n }\n})\n"],"names":["props","title","type","String","default","size","defineComponent","name","emits","setup","emit","expose","slots","visible","ref","onClose","open","value","close","_createVNode","ElDialog","modelValue","styles","container","content"],"mappings":";;;;AAMA,MAAMA,KAAQ,GAAA;AAAA;AAAA,EAEZC,KAAO,EAAA;AAAA,IACLC,IAAMC,EAAAA,MAAAA;AAAAA,IACNC,OAAS,EAAA,EAAA;AAAA,GACX;AAAA;AAAA,EAEAC,IAAM,EAAA;AAAA,IACJH,IAAMC,EAAAA,MAAAA;AAAAA,IACNC,OAAS,EAAA,KAAA;AAAA,GACX;AACF,CAAA,CAAA;AAGA,kBAAeE,eAAgB,CAAA;AAAA,EAC7BC,IAAM,EAAA,cAAA;AAAA,EACNP,KAAAA;AAAAA,EACAQ,KAAAA,EAAO,CAAC,OAAO,CAAA;AAAA,EACfC,MAAMT,MAAO,EAAA;AAAA,IAAEU,IAAAA;AAAAA,IAAMC,MAAAA;AAAAA,IAAQC,KAAAA;AAAAA,GAAS,EAAA;AACpC,IAAMC,MAAAA,OAAAA,GAAUC,IAAI,KAAK,CAAA,CAAA;AACzB,IAAA,MAAMC,UAAUA,MAAM;AACpBL,MAAAA,IAAAA,CAAK,OAAO,CAAA,CAAA;AAAA,KACd,CAAA;AACA,IAAA,MAAMM,OAAOA,MAAM;AACfH,MAAAA,OAAAA,CAAQI,KAAQ,GAAA,IAAA,CAAA;AAAA,KAClB,CAAA;AACF,IAAA,MAAMC,QAAQA,MAAM;AAClBL,MAAAA,OAAAA,CAAQI,KAAQ,GAAA,KAAA,CAAA;AAAA,KAClB,CAAA;AACAN,IAA2B,MAAA,CAAA;AAAA,MAAEK,IAAAA;AAAAA,MAAME,KAAAA;AAAAA,KAAO,CAAA,CAAA;AAC1C,IAAO,OAAA,MAAAC,YAAAC,QAAA,EAAA;AAAA,MAAA,cAESP,OAAQI,CAAAA,KAAAA;AAAAA,MAAK,uBACHI,CAAwB,UAAA,KAAA;AAAER,QAAAA,OAAAA,CAAQI,KAAQI,GAAAA,UAAAA,CAAAA;AAAAA,OAAW;AAAA,MAAC,OAAA,EACrErB,OAAMC,KAAS,IAAA,0BAAA;AAAA,MAAM,SACrBD,MAAMK,CAAAA,IAAAA;AAAAA,MAAI,SACViB,MAAOC,CAAAA,SAAAA;AAAAA,MAAS,aACZD,MAAOE,CAAAA,OAAAA;AAAAA,MAAO,gBAAA,EAAA,IAAA;AAAA,MAAA,SAEhBT,EAAAA,OAAAA;AAAAA,OACAH,KAAK,CAAA,CAAA;AAAA,GAGpB;AACF,CAAC,CAAA;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../packages/components/commonModal/index.tsx"],"sourcesContent":["import { defineComponent, ref } from 'vue'\nimport { ElDialog } from 'element-plus'\nimport styles from './index.module.scss'\n\nimport type { ICommonModalExpose } from './interfaces'\n\nconst props = {\n /** 标题 */\n title: {\n type: String,\n default: '',\n },\n /** 宽度 */\n size: {\n type: String,\n default: '42%',\n },\n}\n\nexport * from './interfaces'\nexport default defineComponent({\n name: 'CommonEditor',\n props,\n emits: ['close'],\n setup(props, { emit, expose, slots }) {\n const visible = ref(false)\n const onClose = () => {\n emit('close')\n }\n const open = () => {\n visible.value = true\n }\n const close = () => {\n visible.value = false\n }\n expose<ICommonModalExpose>({ open, close })\n return () => (\n <ElDialog\n modelValue={visible.value}\n onUpdate:modelValue={(modelValue: boolean) => {\n visible.value = modelValue\n }}\n title={props.title || '默认标题'}\n width={props.size}\n class={styles.container}\n bodyClass={styles.content}\n destroyOnClose\n onClose={onClose}\n v-slots={slots}\n />\n )\n },\n})\n"],"names":["props","title","type","String","default","size","defineComponent","name","emits","setup","emit","expose","slots","visible","ref","onClose","open","value","close","_createVNode","ElDialog","modelValue","styles","container","content"],"mappings":";;;;AAMA,MAAMA,KAAQ,GAAA;AAAA;AAAA,EAEZC,KAAO,EAAA;AAAA,IACLC,IAAMC,EAAAA,MAAAA;AAAAA,IACNC,OAAS,EAAA,EAAA;AAAA,GACX;AAAA;AAAA,EAEAC,IAAM,EAAA;AAAA,IACJH,IAAMC,EAAAA,MAAAA;AAAAA,IACNC,OAAS,EAAA,KAAA;AAAA,GACX;AACF,CAAA,CAAA;AAGA,kBAAeE,eAAgB,CAAA;AAAA,EAC7BC,IAAM,EAAA,cAAA;AAAA,EACNP,KAAAA;AAAAA,EACAQ,KAAAA,EAAO,CAAC,OAAO,CAAA;AAAA,EACfC,MAAMT,MAAO,EAAA;AAAA,IAAEU,IAAAA;AAAAA,IAAMC,MAAAA;AAAAA,IAAQC,KAAAA;AAAAA,GAAS,EAAA;AACpC,IAAMC,MAAAA,OAAAA,GAAUC,IAAI,KAAK,CAAA,CAAA;AACzB,IAAA,MAAMC,UAAUA,MAAM;AACpBL,MAAAA,IAAAA,CAAK,OAAO,CAAA,CAAA;AAAA,KACd,CAAA;AACA,IAAA,MAAMM,OAAOA,MAAM;AACjBH,MAAAA,OAAAA,CAAQI,KAAQ,GAAA,IAAA,CAAA;AAAA,KAClB,CAAA;AACA,IAAA,MAAMC,QAAQA,MAAM;AAClBL,MAAAA,OAAAA,CAAQI,KAAQ,GAAA,KAAA,CAAA;AAAA,KAClB,CAAA;AACAN,IAA2B,MAAA,CAAA;AAAA,MAAEK,IAAAA;AAAAA,MAAME,KAAAA;AAAAA,KAAO,CAAA,CAAA;AAC1C,IAAO,OAAA,MAAAC,YAAAC,QAAA,EAAA;AAAA,MAAA,cAESP,OAAQI,CAAAA,KAAAA;AAAAA,MAAK,uBACHI,CAAwB,UAAA,KAAA;AAC5CR,QAAAA,OAAAA,CAAQI,KAAQI,GAAAA,UAAAA,CAAAA;AAAAA,OAClB;AAAA,MAAC,OAAA,EACMrB,OAAMC,KAAS,IAAA,0BAAA;AAAA,MAAM,SACrBD,MAAMK,CAAAA,IAAAA;AAAAA,MAAI,SACViB,MAAOC,CAAAA,SAAAA;AAAAA,MAAS,aACZD,MAAOE,CAAAA,OAAAA;AAAAA,MAAO,gBAAA,EAAA,IAAA;AAAA,MAAA,SAEhBT,EAAAA,OAAAA;AAAAA,OACAH,KAAK,CAAA,CAAA;AAAA,GAGpB;AACF,CAAC,CAAA;;;;"}
@@ -101,6 +101,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
101
101
  editorLayout: {
102
102
  type: PropType<IEditorLayout>;
103
103
  default: () => {
104
+ size: string;
104
105
  columns: number;
105
106
  labelStyle: {
106
107
  width: string;
@@ -213,6 +214,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
213
214
  editorLayout: {
214
215
  type: PropType<IEditorLayout>;
215
216
  default: () => {
217
+ size: string;
216
218
  columns: number;
217
219
  labelStyle: {
218
220
  width: string;
@@ -231,14 +233,14 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
231
233
  default: boolean;
232
234
  };
233
235
  }>> & Readonly<{}>, {
234
- fields: IField[] | Ref<IField[], IField[]>;
235
236
  pageKey: string;
237
+ selected: unknown[];
238
+ fields: IField[] | Ref<IField[], IField[]>;
236
239
  rowKey: string;
237
240
  listApi: IListApi;
238
241
  formatListParams: (p: any) => any;
239
242
  selectable: boolean;
240
243
  selectOptions: (row?: any, index?: number) => boolean;
241
- selected: unknown[];
242
244
  expandedRowRender: (p: IExpandedRowRenderParams) => VNode;
243
245
  paginationConfig: Record<string, any>;
244
246
  needPagination: boolean;
@@ -111,6 +111,7 @@ const props = {
111
111
  editorLayout: {
112
112
  type: Object,
113
113
  default: () => ({
114
+ size: "40%",
114
115
  columns: 0,
115
116
  labelStyle: {
116
117
  width: "100px",
@@ -179,6 +180,10 @@ var index = defineComponent({
179
180
  var _a;
180
181
  return (_a = commonFilterRef.value) == null ? void 0 : _a.getForm();
181
182
  },
183
+ getEditorForm: () => {
184
+ var _a;
185
+ return (_a = commonEditorRef.value) == null ? void 0 : _a.getForm();
186
+ },
182
187
  getPagination: () => {
183
188
  var _a;
184
189
  return (_a = commonTableRef.value) == null ? void 0 : _a.pagination;
@@ -242,9 +247,6 @@ var index = defineComponent({
242
247
  });
243
248
  const actionTsx = () => createVNode(Space, {
244
249
  "class": styles.setter,
245
- "style": {
246
- width: "100%"
247
- },
248
250
  "align": "flex-start",
249
251
  "justify": "space-between",
250
252
  "size": 12,
@@ -252,14 +254,16 @@ var index = defineComponent({
252
254
  }, {
253
255
  default: () => [createVNode(Space, null, {
254
256
  default: () => {
255
- var _a, _b;
256
- return [props2.createApi && createVNode(ElButton, {
257
+ var _a, _b, _c;
258
+ return [props2.createApi && (((_a = slots.create) == null ? void 0 : _a.call(slots, {
259
+ create
260
+ })) || createVNode(ElButton, {
257
261
  "type": "primary",
258
262
  "icon": Plus,
259
263
  "onClick": create
260
264
  }, {
261
265
  default: () => [createTextVNode("\u65B0\u589E")]
262
- }), (_a = slots.setterPrefix) == null ? void 0 : _a.call(slots), props2.downloadApi && (((_b = slots.download) == null ? void 0 : _b.call(slots, download)) || createVNode(ElButton, {
266
+ })), (_b = slots.setterPrefix) == null ? void 0 : _b.call(slots), props2.downloadApi && (((_c = slots.download) == null ? void 0 : _c.call(slots, download)) || createVNode(ElButton, {
263
267
  "onClick": download
264
268
  }, {
265
269
  default: () => [createTextVNode("\u4E0B\u8F7D")]
@@ -320,14 +324,16 @@ var index = defineComponent({
320
324
  }, {
321
325
  default: () => [hasSetter && createVNode(Space, null, {
322
326
  default: () => {
323
- var _a, _b;
324
- return [props2.createApi && createVNode(ElButton, {
327
+ var _a, _b, _c;
328
+ return [props2.createApi && (((_a = slots.create) == null ? void 0 : _a.call(slots, {
329
+ create
330
+ })) || createVNode(ElButton, {
325
331
  "type": "primary",
326
332
  "icon": Plus,
327
333
  "onClick": create
328
334
  }, {
329
335
  default: () => [createTextVNode("\u65B0\u589E")]
330
- }), (_a = slots.setterPrefix) == null ? void 0 : _a.call(slots), props2.downloadApi && (((_b = slots.download) == null ? void 0 : _b.call(slots, download)) || createVNode(ElButton, {
336
+ })), (_b = slots.setterPrefix) == null ? void 0 : _b.call(slots), props2.downloadApi && (((_c = slots.download) == null ? void 0 : _c.call(slots, download)) || createVNode(ElButton, {
331
337
  "onClick": download
332
338
  }, {
333
339
  default: () => [createTextVNode("\u4E0B\u8F7D")]
@@ -449,6 +455,7 @@ var index = defineComponent({
449
455
  "editApi": props2.editApi,
450
456
  "editFields": allEditFields.value,
451
457
  "layout": props2.editorLayout,
458
+ "size": props2.editorLayout.size,
452
459
  "effectHooks": fetchEffects.value,
453
460
  "formatEditParams": props2.formatEditParams,
454
461
  "onConfirmSuccess": () => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../packages/components/commonPage/index.tsx"],"sourcesContent":["import { defineComponent, ref, onMounted, onUnmounted, nextTick, provide, h } from 'vue'\nimport { isEmpty } from 'lodash'\nimport { ElButton, ElSpace } from 'element-plus'\nimport { Plus } from '@element-plus/icons-vue'\nimport IconFont from '../iconFont'\nimport Space from '../space'\nimport emitter from '../../utils/emitter'\nimport CommonFilter from '../commonFilter'\nimport CommonSetter from '../commonSetter'\nimport CommonTable from '../commonTable'\nimport CommonEditor from '../commonEditor'\nimport usePage from './usePage'\nimport { usePageActions } from './usePageActions'\nimport { COMMON_FILTER_INJECTION_KEY } from './constants'\nimport styles from './index.module.scss'\n\nimport type { PropType, Ref, VNode } from 'vue'\nimport type { IListApi, ICommonObj } from '../../interfaces/common'\nimport type { IField } from '../../interfaces/commonPage'\nimport type { IExpose, IExpandedRowRenderParams } from './interfaces'\nimport type { ICommonFilterExpose } from '../commonFilter'\nimport type { ICommonEditorExpose, IEditorLayout } from '../commonEditor'\nimport type { ICommonTableExpose } from '../commonTable'\n\nconst props = {\n /** fields */\n fields: {\n type: Array as PropType<IField[] | Ref<IField[]>>,\n default: () => [],\n },\n /** 获取列表 */\n listApi: {\n type: Function as PropType<IListApi>,\n default: undefined,\n },\n /** 创建 */\n createApi: {\n type: Function as PropType<(p: ICommonObj) => Promise<ICommonObj>>,\n default: undefined,\n },\n /** 编辑 */\n editApi: {\n type: Function as PropType<(p: ICommonObj) => Promise<ICommonObj>>,\n default: undefined,\n },\n /** 下载 */\n downloadApi: {\n type: Function as PropType<(p?: ICommonObj) => Promise<ICommonObj>>,\n default: undefined,\n },\n /** 导出 */\n exportApi: {\n type: Function as PropType<(p?: ICommonObj) => Promise<ICommonObj>>,\n default: undefined,\n },\n /** 格式化列表接口入参 */\n formatListParams: {\n type: Function as PropType<(p: any) => any>,\n default: undefined,\n },\n /** 格式化创建&编辑接口入参 */\n formatEditParams: {\n type: Function as PropType<(p: any) => any>,\n default: undefined,\n },\n /** 格式化创建&编辑接口入参 */\n formatExportParams: {\n type: Function as PropType<(p: any) => any>,\n default: undefined,\n },\n /** 页面标识 */\n pageKey: {\n type: String,\n default: '',\n },\n /** 行标识 */\n rowKey: {\n type: String,\n default: 'id',\n },\n /** 可选择 */\n selectable: {\n type: Boolean,\n default: false,\n },\n /** 选择配置 */\n selectOptions: {\n type: Function as PropType<(row?: any, index?: number) => boolean>,\n default: () => true,\n },\n /** 选中值 */\n selected: {\n type: Array,\n default: () => [],\n },\n /** 表格展开区域渲染器 */\n expandedRowRender: {\n type: Function as PropType<(p: IExpandedRowRenderParams) => VNode>,\n default: undefined,\n },\n /** 需要分页 */\n needPagination: {\n type: Boolean,\n default: false,\n },\n /** 分页配置 */\n paginationConfig: {\n type: Object,\n default: () => ({}),\n },\n /** 筛选区域栅格数量 */\n filterColumns: {\n type: Number,\n default: 3,\n },\n /** 编辑器样式 */\n editorLayout: {\n type: Object as PropType<IEditorLayout>,\n default: () => ({\n columns: 0,\n labelStyle: {\n width: '100px',\n margin: '0',\n },\n }),\n },\n /** 刷新 */\n refreshable: {\n type: Boolean,\n default: false,\n },\n /** 单行操作栏 */\n singleActionBar: {\n type: Boolean,\n default: false,\n },\n}\n\nexport * from './constants'\nexport * from '../commonEditor/constants'\nexport type { IField, IExpose }\nexport default defineComponent({\n name: 'CommonPage',\n props,\n setup(props, { emit, slots, expose }) {\n const containerRef = ref()\n const commonFilterRef = ref<ICommonFilterExpose>()\n const commonEditorRef = ref<ICommonEditorExpose>()\n const commonTableRef = ref<ICommonTableExpose>()\n const setterBarRef = ref()\n const extraPaneRef = ref()\n const commonIconBtnStyle = ref({\n padding: '8px',\n marginLeft: 0,\n })\n const {\n allEditFields,\n fetchEffects,\n visibleFilterFields,\n visibleColumns,\n allVisibleFilterFields,\n allVisibleColumnFields,\n setPagePreferences,\n } = usePage(props) // 数据派生\n const { query, openEditor, create, filterReset, download, exportFn, watchList } =\n usePageActions(\n props.paginationConfig,\n props.downloadApi,\n props.exportApi,\n props.formatExportParams,\n commonFilterRef,\n commonEditorRef,\n commonTableRef,\n ) // 动作抽离\n watchList(ref([visibleColumns]))\n provide(COMMON_FILTER_INJECTION_KEY, commonFilterRef)\n onMounted(async () => {\n emitter.on('openEditor', openEditor)\n })\n onUnmounted(() => {\n emitter.off('openEditor', openEditor)\n })\n expose<IExpose>({\n query,\n getFilterForm: () => commonFilterRef.value?.getForm(),\n getPagination: () => commonTableRef.value?.pagination,\n updateTableHeight: () => {\n /** 暂时废弃 */\n },\n })\n /** 筛选区域 */\n const commonFilterTsx = (needPadding: boolean = false) => (\n <Space\n class={styles.commonFilterContainer}\n style={{ padding: needPadding ? '0 12px' : '0px', boxSizing: 'border-box' }}\n align='flex-start'\n justify='start'\n size={12}\n fill\n >\n {isEmpty(visibleFilterFields.value) ? null : (\n <CommonFilter\n ref={commonFilterRef}\n maxColumns={props.filterColumns}\n filterFields={visibleFilterFields.value}\n operateActions={{ query, reset: filterReset }}\n effectHooks={fetchEffects.value}\n pageKey={props.pageKey}\n v-slots={{\n ...(slots.filterTitle ? { title: slots.filterTitle } : {}),\n }}\n />\n )}\n {commonFilterRef.value?.collapseData?.collapsible && (\n <ElButton\n class={styles.collapse}\n icon={h(IconFont, {\n name: 'double_arrow_down',\n class: styles.collapseIcon,\n style: {\n transform: `rotate(${commonFilterRef.value?.visible ? '180deg' : '0deg'})`,\n },\n size: '10',\n })}\n text\n onClick={async () => {\n if (!commonFilterRef.value?.collapseData?.collapsible) {\n return\n }\n commonFilterRef.value?.collapse()\n await nextTick()\n // updateTableHeight()\n }}\n >\n {commonFilterRef.value?.visible ? '收起' : '展开'}\n </ElButton>\n )}\n </Space>\n )\n /** 纯操作栏 */\n const actionTsx = () => (\n <Space class={styles.setter} style={{ width: '100%' }} align='flex-start' justify='space-between' size={12} fill>\n <Space>\n {props.createApi && (\n <ElButton type='primary' icon={Plus} onClick={create}>\n 新增\n </ElButton>\n )}\n {slots.setterPrefix?.()}\n {props.downloadApi &&\n (slots.download?.(download) || <ElButton onClick={download}>下载</ElButton>)}\n </Space>\n <Space class={styles.end} size={12} justify='end'>\n {slots.setterSuffix?.()}\n {props.exportApi &&\n (slots.exportBtn?.(exportFn) || (\n <ElButton\n style={commonIconBtnStyle.value}\n icon={h(IconFont, { name: 'export', size: '22' })}\n link\n onClick={exportFn}\n />\n ))}\n {props.refreshable && (\n <ElButton\n style={commonIconBtnStyle.value}\n icon={h(IconFont, { name: 'refresh', size: '22' })}\n link\n onClick={() => query({ text: '刷新' })}\n />\n )}\n {props.pageKey && (\n <CommonSetter\n allVisibleFilterFields={allVisibleFilterFields}\n allVisibleColumnFields={allVisibleColumnFields}\n onConfirm={setPagePreferences}\n v-slots={{\n reference: () => (\n <ElButton\n style={{ margin: 0, ...commonIconBtnStyle.value }}\n icon={h(IconFont, { name: 'setter', size: '22' })}\n />\n ),\n }}\n />\n )}\n </Space>\n </Space>\n )\n /** 操作栏 + 筛选区域 */\n const action2Tsx = () => {\n const hasSetter =\n (props.createApi || props.downloadApi || slots.setterPrefix) &&\n !isEmpty(visibleFilterFields.value)\n return (\n <Space class={styles.setter} align='flex-start' justify='end' size={12} fill>\n {hasSetter && (\n <Space>\n {props.createApi && (\n <ElButton type='primary' icon={Plus} onClick={create}>\n 新增\n </ElButton>\n )}\n {slots.setterPrefix?.()}\n {props.downloadApi &&\n (slots.download?.(download) || <ElButton onClick={download}>下载</ElButton>)}\n </Space>\n )}\n {hasSetter && <el-divider direction='vertical' class={styles.line} />}\n {commonFilterTsx()}\n <Space class={styles.end} size={12} justify='end'>\n {slots.setterSuffix?.()}\n {props.exportApi &&\n (slots.exportBtn?.(exportFn) || (\n <ElButton\n style={commonIconBtnStyle.value}\n icon={h(IconFont, { name: 'export', size: '22' })}\n text\n onClick={exportFn}\n />\n ))}\n {props.refreshable && (\n <ElButton\n style={commonIconBtnStyle.value}\n icon={h(IconFont, { name: 'refresh', size: '22' })}\n text\n onClick={() => query({ text: '刷新' })}\n />\n )}\n {props.pageKey && (\n <CommonSetter\n allVisibleFilterFields={allVisibleFilterFields}\n allVisibleColumnFields={allVisibleColumnFields}\n onConfirm={setPagePreferences}\n v-slots={{\n reference: () => (\n <ElButton\n style={{ margin: 0, ...commonIconBtnStyle.value }}\n icon={h(IconFont, { name: 'setter', size: '22' })}\n text\n />\n ),\n }}\n />\n )}\n </Space>\n </Space>\n )\n }\n return () => (\n <>\n <Space ref={containerRef} class={styles.container} direction='column'>\n <Space ref={setterBarRef} direction='column' fill>\n {/* 临时逻辑,代码太差,后续优化 */}\n {isEmpty(visibleFilterFields.value) ? (\n actionTsx()\n ) : (\n <>\n {props.singleActionBar ? actionTsx() : null}\n {props.singleActionBar ? commonFilterTsx(true) : action2Tsx()}\n </>\n )}\n </Space>\n {slots?.extraPane && (\n <div ref={extraPaneRef} class={styles.extraPane}>\n {slots.extraPane()}\n </div>\n )}\n <Space class={styles.tableContainer} justify='start'>\n {slots?.commonTableLeftPane?.({ height: 0 })}\n <CommonTable\n style={{ flex: 1 }}\n ref={commonTableRef}\n rowKey={props.rowKey}\n columns={visibleColumns}\n listApi={props.listApi}\n formatListParams={props.formatListParams}\n beforeFetch={({ formData }) => {\n commonFilterRef.value?.keepFilter?.(formData)\n }}\n selectable={props.selectable}\n selectOptions={props.selectOptions}\n selected={props.selected}\n expandedRowRender={props.expandedRowRender}\n onUpdate:selected={(val: any[]) => {\n emit('update:selected', val)\n }}\n needPagination={props.needPagination}\n onRowClick={(row: any, column: any, event: Event) => {\n emit('rowClick', { rowData: row, column, event })\n }}\n stripe\n v-slots={{\n empty: slots?.commonTableEmpty,\n content: slots?.commonTableContent,\n }}\n />\n {slots?.commonTableRightPane?.({ height: 0 })}\n </Space>\n </Space>\n <CommonEditor\n ref={commonEditorRef}\n createApi={props.createApi}\n editApi={props.editApi}\n editFields={allEditFields.value}\n layout={props.editorLayout}\n effectHooks={fetchEffects.value}\n formatEditParams={props.formatEditParams}\n onConfirmSuccess={() => {\n query({ page: commonTableRef.value.pagination?.page })\n }}\n />\n </>\n )\n },\n})\n"],"names":["props","fields","type","Array","default","listApi","Function","undefined","createApi","editApi","downloadApi","exportApi","formatListParams","formatEditParams","formatExportParams","pageKey","String","rowKey","selectable","Boolean","selectOptions","selected","expandedRowRender","needPagination","paginationConfig","Object","filterColumns","Number","editorLayout","columns","labelStyle","width","margin","refreshable","singleActionBar","defineComponent","name","setup","emit","slots","expose","containerRef","ref","commonFilterRef","commonEditorRef","commonTableRef","setterBarRef","extraPaneRef","commonIconBtnStyle","padding","marginLeft","allEditFields","fetchEffects","visibleFilterFields","visibleColumns","allVisibleFilterFields","allVisibleColumnFields","setPagePreferences","usePage","query","openEditor","create","filterReset","download","exportFn","watchList","usePageActions","provide","COMMON_FILTER_INJECTION_KEY","onMounted","emitter","on","onUnmounted","off","getFilterForm","value","getForm","getPagination","pagination","updateTableHeight","commonFilterTsx","needPadding","_createVNode","Space","styles","commonFilterContainer","boxSizing","isEmpty","CommonFilter","reset","filterTitle","title","collapseData","collapsible","ElButton","collapse","h","IconFont","class","collapseIcon","style","transform","visible","size","_a","_b","_c","nextTick","actionTsx","setter","Plus","_createTextVNode","setterPrefix","end","setterSuffix","exportBtn","onClick","text","CommonSetter","reference","action2Tsx","hasSetter","_resolveComponent","line","_Fragment","container","extraPane","tableContainer","commonTableLeftPane","height","CommonTable","flex","beforeFetch","formData","keepFilter","val","onRowClick","row","column","event","rowData","empty","commonTableEmpty","content","commonTableContent","commonTableRightPane","CommonEditor","onConfirmSuccess","page"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../packages/components/commonPage/index.tsx"],"sourcesContent":["import { defineComponent, ref, onMounted, onUnmounted, nextTick, provide, h } from 'vue'\nimport { isEmpty } from 'lodash'\nimport { ElButton } from 'element-plus'\nimport { Plus } from '@element-plus/icons-vue'\nimport IconFont from '../iconFont'\nimport Space from '../space'\nimport emitter from '../../utils/emitter'\nimport CommonFilter from '../commonFilter'\nimport CommonSetter from '../commonSetter'\nimport CommonTable from '../commonTable'\nimport CommonEditor from '../commonEditor'\nimport usePage from './usePage'\nimport { usePageActions } from './usePageActions'\nimport { COMMON_FILTER_INJECTION_KEY } from './constants'\nimport styles from './index.module.scss'\n\nimport type { PropType, Ref, VNode } from 'vue'\nimport type { IListApi, ICommonObj } from '../../interfaces/common'\nimport type { IField } from '../../interfaces/commonPage'\nimport type { IExpose, IExpandedRowRenderParams } from './interfaces'\nimport type { ICommonFilterExpose } from '../commonFilter'\nimport type { ICommonEditorExpose, IEditorLayout } from '../commonEditor'\nimport type { ICommonTableExpose } from '../commonTable'\n\nconst props = {\n /** fields */\n fields: {\n type: Array as PropType<IField[] | Ref<IField[]>>,\n default: () => [],\n },\n /** 获取列表 */\n listApi: {\n type: Function as PropType<IListApi>,\n default: undefined,\n },\n /** 创建 */\n createApi: {\n type: Function as PropType<(p: ICommonObj) => Promise<ICommonObj>>,\n default: undefined,\n },\n /** 编辑 */\n editApi: {\n type: Function as PropType<(p: ICommonObj) => Promise<ICommonObj>>,\n default: undefined,\n },\n /** 下载 */\n downloadApi: {\n type: Function as PropType<(p?: ICommonObj) => Promise<ICommonObj>>,\n default: undefined,\n },\n /** 导出 */\n exportApi: {\n type: Function as PropType<(p?: ICommonObj) => Promise<ICommonObj>>,\n default: undefined,\n },\n /** 格式化列表接口入参 */\n formatListParams: {\n type: Function as PropType<(p: any) => any>,\n default: undefined,\n },\n /** 格式化创建&编辑接口入参 */\n formatEditParams: {\n type: Function as PropType<(p: any) => any>,\n default: undefined,\n },\n /** 格式化创建&编辑接口入参 */\n formatExportParams: {\n type: Function as PropType<(p: any) => any>,\n default: undefined,\n },\n /** 页面标识 */\n pageKey: {\n type: String,\n default: '',\n },\n /** 行标识 */\n rowKey: {\n type: String,\n default: 'id',\n },\n /** 可选择 */\n selectable: {\n type: Boolean,\n default: false,\n },\n /** 选择配置 */\n selectOptions: {\n type: Function as PropType<(row?: any, index?: number) => boolean>,\n default: () => true,\n },\n /** 选中值 */\n selected: {\n type: Array,\n default: () => [],\n },\n /** 表格展开区域渲染器 */\n expandedRowRender: {\n type: Function as PropType<(p: IExpandedRowRenderParams) => VNode>,\n default: undefined,\n },\n /** 需要分页 */\n needPagination: {\n type: Boolean,\n default: false,\n },\n /** 分页配置 */\n paginationConfig: {\n type: Object,\n default: () => ({}),\n },\n /** 筛选区域栅格数量 */\n filterColumns: {\n type: Number,\n default: 3,\n },\n /** 编辑器样式 */\n editorLayout: {\n type: Object as PropType<IEditorLayout>,\n default: () => ({\n size: '40%',\n columns: 0,\n labelStyle: {\n width: '100px',\n margin: '0',\n },\n }),\n },\n /** 刷新 */\n refreshable: {\n type: Boolean,\n default: false,\n },\n /** 单行操作栏 */\n singleActionBar: {\n type: Boolean,\n default: false,\n },\n}\n\nexport * from './constants'\nexport * from '../commonEditor/constants'\nexport type { IField, IExpose }\nexport default defineComponent({\n name: 'CommonPage',\n props,\n setup(props, { emit, slots, expose }) {\n const containerRef = ref()\n const commonFilterRef = ref<ICommonFilterExpose>()\n const commonEditorRef = ref<ICommonEditorExpose>()\n const commonTableRef = ref<ICommonTableExpose>()\n const setterBarRef = ref()\n const extraPaneRef = ref()\n const commonIconBtnStyle = ref({\n padding: '8px',\n marginLeft: 0,\n })\n const {\n allEditFields,\n fetchEffects,\n visibleFilterFields,\n visibleColumns,\n allVisibleFilterFields,\n allVisibleColumnFields,\n setPagePreferences,\n } = usePage(props) // 数据派生\n const { query, openEditor, create, filterReset, download, exportFn, watchList } =\n usePageActions(\n props.paginationConfig,\n props.downloadApi,\n props.exportApi,\n props.formatExportParams,\n commonFilterRef,\n commonEditorRef,\n commonTableRef,\n ) // 动作抽离\n watchList(ref([visibleColumns]))\n provide(COMMON_FILTER_INJECTION_KEY, commonFilterRef)\n onMounted(async () => {\n emitter.on('openEditor', openEditor)\n })\n onUnmounted(() => {\n emitter.off('openEditor', openEditor)\n })\n expose<IExpose>({\n query,\n getFilterForm: () => commonFilterRef.value?.getForm(),\n getEditorForm: () => commonEditorRef.value?.getForm(),\n getPagination: () => commonTableRef.value?.pagination,\n updateTableHeight: () => {\n /** 暂时废弃 */\n },\n })\n /** 筛选区域 */\n const commonFilterTsx = (needPadding: boolean = false) => (\n <Space\n class={styles.commonFilterContainer}\n style={{ padding: needPadding ? '0 12px' : '0px', boxSizing: 'border-box' }}\n align='flex-start'\n justify='start'\n size={12}\n fill\n >\n {isEmpty(visibleFilterFields.value) ? null : (\n <CommonFilter\n ref={commonFilterRef}\n maxColumns={props.filterColumns}\n filterFields={visibleFilterFields.value}\n operateActions={{ query, reset: filterReset }}\n effectHooks={fetchEffects.value}\n pageKey={props.pageKey}\n v-slots={{\n ...(slots.filterTitle ? { title: slots.filterTitle } : {}),\n }}\n />\n )}\n {commonFilterRef.value?.collapseData?.collapsible && (\n <ElButton\n class={styles.collapse}\n icon={h(IconFont, {\n name: 'double_arrow_down',\n class: styles.collapseIcon,\n style: {\n transform: `rotate(${commonFilterRef.value?.visible ? '180deg' : '0deg'})`,\n },\n size: '10',\n })}\n text\n onClick={async () => {\n if (!commonFilterRef.value?.collapseData?.collapsible) {\n return\n }\n commonFilterRef.value?.collapse()\n await nextTick()\n // updateTableHeight()\n }}\n >\n {commonFilterRef.value?.visible ? '收起' : '展开'}\n </ElButton>\n )}\n </Space>\n )\n /** 纯操作栏 */\n const actionTsx = () => (\n <Space class={styles.setter} align='flex-start' justify='space-between' size={12} fill>\n <Space>\n {props.createApi &&\n (slots.create?.({ create }) || (\n <ElButton type='primary' icon={Plus} onClick={create}>\n 新增\n </ElButton>\n ))}\n {slots.setterPrefix?.()}\n {props.downloadApi &&\n (slots.download?.(download) || <ElButton onClick={download}>下载</ElButton>)}\n </Space>\n <Space class={styles.end} size={12} justify='end'>\n {slots.setterSuffix?.()}\n {props.exportApi &&\n (slots.exportBtn?.(exportFn) || (\n <ElButton\n style={commonIconBtnStyle.value}\n icon={h(IconFont, { name: 'export', size: '22' })}\n link\n onClick={exportFn}\n />\n ))}\n {props.refreshable && (\n <ElButton\n style={commonIconBtnStyle.value}\n icon={h(IconFont, { name: 'refresh', size: '22' })}\n link\n onClick={() => query({ text: '刷新' })}\n />\n )}\n {props.pageKey && (\n <CommonSetter\n allVisibleFilterFields={allVisibleFilterFields}\n allVisibleColumnFields={allVisibleColumnFields}\n onConfirm={setPagePreferences}\n v-slots={{\n reference: () => (\n <ElButton\n style={{ margin: 0, ...commonIconBtnStyle.value }}\n icon={h(IconFont, { name: 'setter', size: '22' })}\n />\n ),\n }}\n />\n )}\n </Space>\n </Space>\n )\n /** 操作栏 + 筛选区域 */\n const action2Tsx = () => {\n const hasSetter =\n (props.createApi || props.downloadApi || slots.setterPrefix) &&\n !isEmpty(visibleFilterFields.value)\n return (\n <Space class={styles.setter} align='flex-start' justify='end' size={12} fill>\n {hasSetter && (\n <Space>\n {props.createApi &&\n (slots.create?.({ create }) || (\n <ElButton type='primary' icon={Plus} onClick={create}>\n 新增\n </ElButton>\n ))}\n {slots.setterPrefix?.()}\n {props.downloadApi &&\n (slots.download?.(download) || <ElButton onClick={download}>下载</ElButton>)}\n </Space>\n )}\n {hasSetter && <el-divider direction='vertical' class={styles.line} />}\n {commonFilterTsx()}\n <Space class={styles.end} size={12} justify='end'>\n {slots.setterSuffix?.()}\n {props.exportApi &&\n (slots.exportBtn?.(exportFn) || (\n <ElButton\n style={commonIconBtnStyle.value}\n icon={h(IconFont, { name: 'export', size: '22' })}\n text\n onClick={exportFn}\n />\n ))}\n {props.refreshable && (\n <ElButton\n style={commonIconBtnStyle.value}\n icon={h(IconFont, { name: 'refresh', size: '22' })}\n text\n onClick={() => query({ text: '刷新' })}\n />\n )}\n {props.pageKey && (\n <CommonSetter\n allVisibleFilterFields={allVisibleFilterFields}\n allVisibleColumnFields={allVisibleColumnFields}\n onConfirm={setPagePreferences}\n v-slots={{\n reference: () => (\n <ElButton\n style={{ margin: 0, ...commonIconBtnStyle.value }}\n icon={h(IconFont, { name: 'setter', size: '22' })}\n text\n />\n ),\n }}\n />\n )}\n </Space>\n </Space>\n )\n }\n return () => (\n <>\n <Space ref={containerRef} class={styles.container} direction='column'>\n <Space ref={setterBarRef} direction='column' fill>\n {/* 临时逻辑,代码太差,后续优化 */}\n {isEmpty(visibleFilterFields.value) ? (\n actionTsx()\n ) : (\n <>\n {props.singleActionBar ? actionTsx() : null}\n {props.singleActionBar ? commonFilterTsx(true) : action2Tsx()}\n </>\n )}\n </Space>\n {slots?.extraPane && (\n <div ref={extraPaneRef} class={styles.extraPane}>\n {slots.extraPane()}\n </div>\n )}\n <Space class={styles.tableContainer} justify='start'>\n {slots?.commonTableLeftPane?.({ height: 0 })}\n <CommonTable\n style={{ flex: 1 }}\n ref={commonTableRef}\n rowKey={props.rowKey}\n columns={visibleColumns}\n listApi={props.listApi}\n formatListParams={props.formatListParams}\n beforeFetch={({ formData }) => {\n commonFilterRef.value?.keepFilter?.(formData)\n }}\n selectable={props.selectable}\n selectOptions={props.selectOptions}\n selected={props.selected}\n expandedRowRender={props.expandedRowRender}\n onUpdate:selected={(val: any[]) => {\n emit('update:selected', val)\n }}\n needPagination={props.needPagination}\n onRowClick={(row: any, column: any, event: Event) => {\n emit('rowClick', { rowData: row, column, event })\n }}\n stripe\n v-slots={{\n empty: slots?.commonTableEmpty,\n content: slots?.commonTableContent,\n }}\n />\n {slots?.commonTableRightPane?.({ height: 0 })}\n </Space>\n </Space>\n <CommonEditor\n ref={commonEditorRef}\n createApi={props.createApi}\n editApi={props.editApi}\n editFields={allEditFields.value}\n layout={props.editorLayout}\n size={props.editorLayout.size}\n effectHooks={fetchEffects.value}\n formatEditParams={props.formatEditParams}\n onConfirmSuccess={() => {\n query({ page: commonTableRef.value.pagination?.page })\n }}\n />\n </>\n )\n },\n})\n"],"names":["props","fields","type","Array","default","listApi","Function","undefined","createApi","editApi","downloadApi","exportApi","formatListParams","formatEditParams","formatExportParams","pageKey","String","rowKey","selectable","Boolean","selectOptions","selected","expandedRowRender","needPagination","paginationConfig","Object","filterColumns","Number","editorLayout","size","columns","labelStyle","width","margin","refreshable","singleActionBar","defineComponent","name","setup","emit","slots","expose","containerRef","ref","commonFilterRef","commonEditorRef","commonTableRef","setterBarRef","extraPaneRef","commonIconBtnStyle","padding","marginLeft","allEditFields","fetchEffects","visibleFilterFields","visibleColumns","allVisibleFilterFields","allVisibleColumnFields","setPagePreferences","usePage","query","openEditor","create","filterReset","download","exportFn","watchList","usePageActions","provide","COMMON_FILTER_INJECTION_KEY","onMounted","emitter","on","onUnmounted","off","getFilterForm","value","getForm","getEditorForm","getPagination","pagination","updateTableHeight","commonFilterTsx","needPadding","_createVNode","Space","styles","commonFilterContainer","boxSizing","isEmpty","CommonFilter","reset","filterTitle","title","collapseData","collapsible","ElButton","collapse","h","IconFont","class","collapseIcon","style","transform","visible","_a","_b","_c","nextTick","actionTsx","setter","Plus","_createTextVNode","setterPrefix","end","setterSuffix","exportBtn","onClick","text","CommonSetter","reference","action2Tsx","hasSetter","_resolveComponent","line","_Fragment","container","extraPane","tableContainer","commonTableLeftPane","height","CommonTable","flex","beforeFetch","formData","keepFilter","val","onRowClick","row","column","event","rowData","empty","commonTableEmpty","content","commonTableContent","commonTableRightPane","CommonEditor","onConfirmSuccess","page"],"mappings":"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"}
@@ -88,6 +88,8 @@ export interface IQueryParams {
88
88
  page?: number;
89
89
  /** query接口成功态提示文案的前缀 */
90
90
  text?: string;
91
+ /** 保持页码 */
92
+ keepPage?: boolean;
91
93
  }
92
94
  /** CommonPage出参 */
93
95
  export interface IExpose {
@@ -95,6 +97,8 @@ export interface IExpose {
95
97
  query: (p?: IQueryParams) => Promise<void>;
96
98
  /** 获取筛选区域表单实例 */
97
99
  getFilterForm: () => Form;
100
+ /** 获取编辑区域表单实例 */
101
+ getEditorForm: () => Form;
98
102
  /** page信息 */
99
103
  getPagination: () => IPagination;
100
104
  /** 更新table高度 */
@@ -1,4 +1,4 @@
1
1
  import type { IFetchConfig } from '../../interfaces';
2
2
  import type { IFieldEffect } from '../formilyCmps';
3
- declare const useAsyncDataSource: ({ api, params, remote, formatter }: IFetchConfig) => IFieldEffect;
3
+ declare const useAsyncDataSource: ({ api, params, remote, formatter, }: IFetchConfig) => IFieldEffect;
4
4
  export default useAsyncDataSource;
@@ -1,7 +1,12 @@
1
1
  import { observable } from '@formily/reactive';
2
2
 
3
3
  const keyword = observable.ref("");
4
- const useAsyncDataSource = ({ api, params = {}, remote, formatter }) => {
4
+ const useAsyncDataSource = ({
5
+ api,
6
+ params = {},
7
+ remote,
8
+ formatter
9
+ }) => {
5
10
  const commonFetch = async (field) => {
6
11
  field.loading = true;
7
12
  try {
@@ -20,9 +25,11 @@ const useAsyncDataSource = ({ api, params = {}, remote, formatter }) => {
20
25
  return {
21
26
  onFieldInit: async (field) => {
22
27
  if (remote) {
23
- field.setComponentProps({ remoteMethod: (val) => {
24
- keyword.value = val;
25
- } });
28
+ field.setComponentProps({
29
+ remoteMethod: (val) => {
30
+ keyword.value = val;
31
+ }
32
+ });
26
33
  } else {
27
34
  await commonFetch(field);
28
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useAsyncDataSource.mjs","sources":["../../../../../packages/components/commonPage/useAsyncDataSource.ts"],"sourcesContent":["import { observable } from '@formily/reactive'\n\nimport type { Field } from '@formily/core'\nimport type { IFetchConfig } from '../../interfaces'\nimport type { IFieldEffect } from '../formilyCmps'\n\nconst keyword = observable.ref('')\nconst useAsyncDataSource = ({ api, params = {}, remote, formatter }: IFetchConfig): IFieldEffect => {\n const commonFetch = async (field: Field) => {\n field.loading = true\n try {\n const res = await api?.({\n ...(\n keyword.value \n ? { keyword: keyword.value } \n : {}\n ),\n ...(typeof params === 'function' ? await params?.() : params),\n })\n const result = formatter?.(res) || res\n field.setDataSource(result)\n } catch (error: any) {\n console.error(`远程搜索失败,失败原因:${JSON.stringify(error)}`)\n } finally {\n field.loading = false\n }\n }\n return {\n onFieldInit: async (field: Field) => {\n if (remote) {\n field.setComponentProps({ remoteMethod: (val: string) => { keyword.value = val } })\n } else {\n await commonFetch(field)\n }\n },\n ...(\n remote\n ? {\n onFieldReact: async (field: Field) => {\n await commonFetch(field)\n }\n }\n : {}\n ),\n } as unknown as IFieldEffect\n}\n\nexport default useAsyncDataSource\n"],"names":[],"mappings":";;AAMA,MAAM,OAAA,GAAU,UAAW,CAAA,GAAA,CAAI,EAAE,CAAA,CAAA;AAC3B,MAAA,kBAAA,GAAqB,CAAC,EAAE,GAAA,EAAK,SAAS,EAAC,EAAG,MAAQ,EAAA,SAAA,EAA4C,KAAA;AAClG,EAAM,MAAA,WAAA,GAAc,OAAO,KAAiB,KAAA;AAC1C,IAAA,KAAA,CAAM,OAAU,GAAA,IAAA,CAAA;AAChB,IAAI,IAAA;AACF,MAAM,MAAA,GAAA,GAAM,OAAM,GAAM,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,GAAA,CAAA;AAAA,QACtB,GACE,QAAQ,KACJ,GAAA,EAAE,SAAS,OAAQ,CAAA,KAAA,KACnB,EAAC;AAAA,QAEP,GAAI,OAAO,MAAW,KAAA,UAAA,GAAa,OAAM,MAAa,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,MAAA,EAAA,CAAA,GAAA,MAAA;AAAA,OACxD,CAAA,CAAA,CAAA;AACA,MAAM,MAAA,MAAA,GAAA,CAAS,uCAAY,GAAQ,CAAA,KAAA,GAAA,CAAA;AACnC,MAAA,KAAA,CAAM,cAAc,MAAM,CAAA,CAAA;AAAA,aACnB,KAAY,EAAA;AACnB,MAAA,OAAA,CAAQ,MAAM,CAAe,wEAAA,EAAA,IAAA,CAAK,SAAU,CAAA,KAAK,CAAC,CAAE,CAAA,CAAA,CAAA;AAAA,KACpD,SAAA;AACA,MAAA,KAAA,CAAM,OAAU,GAAA,KAAA,CAAA;AAAA,KAClB;AAAA,GACF,CAAA;AACA,EAAO,OAAA;AAAA,IACL,WAAA,EAAa,OAAO,KAAiB,KAAA;AACnC,MAAA,IAAI,MAAQ,EAAA;AACV,QAAA,KAAA,CAAM,iBAAkB,CAAA,EAAE,YAAc,EAAA,CAAC,GAAgB,KAAA;AAAE,UAAA,OAAA,CAAQ,KAAQ,GAAA,GAAA,CAAA;AAAA,WAAQ,CAAA,CAAA;AAAA,OAC9E,MAAA;AACL,QAAA,MAAM,YAAY,KAAK,CAAA,CAAA;AAAA,OACzB;AAAA,KACF;AAAA,IACA,GACE,MACI,GAAA;AAAA,MACA,YAAA,EAAc,OAAO,KAAiB,KAAA;AACpC,QAAA,MAAM,YAAY,KAAK,CAAA,CAAA;AAAA,OACzB;AAAA,QAEA,EAAC;AAAA,GAET,CAAA;AACF;;;;"}
1
+ {"version":3,"file":"useAsyncDataSource.mjs","sources":["../../../../../packages/components/commonPage/useAsyncDataSource.ts"],"sourcesContent":["import { observable } from '@formily/reactive'\n\nimport type { Field } from '@formily/core'\nimport type { IFetchConfig } from '../../interfaces'\nimport type { IFieldEffect } from '../formilyCmps'\n\nconst keyword = observable.ref('')\nconst useAsyncDataSource = ({\n api,\n params = {},\n remote,\n formatter,\n}: IFetchConfig): IFieldEffect => {\n const commonFetch = async (field: Field) => {\n field.loading = true\n try {\n const res = await api?.({\n ...(keyword.value ? { keyword: keyword.value } : {}),\n ...(typeof params === 'function' ? await params?.() : params),\n })\n const result = formatter?.(res) || res\n field.setDataSource(result)\n } catch (error: any) {\n console.error(`远程搜索失败,失败原因:${JSON.stringify(error)}`)\n } finally {\n field.loading = false\n }\n }\n return {\n onFieldInit: async (field: Field) => {\n if (remote) {\n field.setComponentProps({\n remoteMethod: (val: string) => {\n keyword.value = val\n },\n })\n } else {\n await commonFetch(field)\n }\n },\n ...(remote\n ? {\n onFieldReact: async (field: Field) => {\n await commonFetch(field)\n },\n }\n : {}),\n } as unknown as IFieldEffect\n}\n\nexport default useAsyncDataSource\n"],"names":[],"mappings":";;AAMA,MAAM,OAAA,GAAU,UAAW,CAAA,GAAA,CAAI,EAAE,CAAA,CAAA;AACjC,MAAM,qBAAqB,CAAC;AAAA,EAC1B,GAAA;AAAA,EACA,SAAS,EAAC;AAAA,EACV,MAAA;AAAA,EACA,SAAA;AACF,CAAkC,KAAA;AAChC,EAAM,MAAA,WAAA,GAAc,OAAO,KAAiB,KAAA;AAC1C,IAAA,KAAA,CAAM,OAAU,GAAA,IAAA,CAAA;AAChB,IAAI,IAAA;AACF,MAAM,MAAA,GAAA,GAAM,OAAM,GAAM,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,GAAA,CAAA;AAAA,QACtB,GAAI,QAAQ,KAAQ,GAAA,EAAE,SAAS,OAAQ,CAAA,KAAA,KAAU,EAAC;AAAA,QAClD,GAAI,OAAO,MAAW,KAAA,UAAA,GAAa,OAAM,MAAa,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,MAAA,EAAA,CAAA,GAAA,MAAA;AAAA,OACxD,CAAA,CAAA,CAAA;AACA,MAAM,MAAA,MAAA,GAAA,CAAS,uCAAY,GAAQ,CAAA,KAAA,GAAA,CAAA;AACnC,MAAA,KAAA,CAAM,cAAc,MAAM,CAAA,CAAA;AAAA,aACnB,KAAY,EAAA;AACnB,MAAA,OAAA,CAAQ,MAAM,CAAe,wEAAA,EAAA,IAAA,CAAK,SAAU,CAAA,KAAK,CAAC,CAAE,CAAA,CAAA,CAAA;AAAA,KACpD,SAAA;AACA,MAAA,KAAA,CAAM,OAAU,GAAA,KAAA,CAAA;AAAA,KAClB;AAAA,GACF,CAAA;AACA,EAAO,OAAA;AAAA,IACL,WAAA,EAAa,OAAO,KAAiB,KAAA;AACnC,MAAA,IAAI,MAAQ,EAAA;AACV,QAAA,KAAA,CAAM,iBAAkB,CAAA;AAAA,UACtB,YAAA,EAAc,CAAC,GAAgB,KAAA;AAC7B,YAAA,OAAA,CAAQ,KAAQ,GAAA,GAAA,CAAA;AAAA,WAClB;AAAA,SACD,CAAA,CAAA;AAAA,OACI,MAAA;AACL,QAAA,MAAM,YAAY,KAAK,CAAA,CAAA;AAAA,OACzB;AAAA,KACF;AAAA,IACA,GAAI,MACA,GAAA;AAAA,MACE,YAAA,EAAc,OAAO,KAAiB,KAAA;AACpC,QAAA,MAAM,YAAY,KAAK,CAAA,CAAA;AAAA,OACzB;AAAA,QAEF,EAAC;AAAA,GACP,CAAA;AACF;;;;"}
@@ -4,42 +4,47 @@ import usePagePreferences from './usePagePreferences.mjs';
4
4
  import useAsyncDataSource from './useAsyncDataSource.mjs';
5
5
 
6
6
  const usePage = (props) => {
7
- const {
8
- fields,
9
- pageKey
10
- } = toRefs(props);
7
+ const { fields, pageKey } = toRefs(props);
11
8
  const allFilterFields = ref({});
12
9
  const allEditFields = ref({});
13
10
  const allColumns = ref([]);
14
11
  const fetchEffects = ref({ fieldEffects: {} });
15
- watch(() => fields.value, () => {
16
- try {
17
- const {
18
- curFilterFields,
19
- curEditFields,
20
- curColumns,
21
- curFetchEffects
22
- } = fields.value.reduce(
23
- (initVal, curItem) => {
24
- const { isColumn, columnConfig = {}, isFilter, filterConfig = {}, isEdit, editConfig = {}, fetchConfig, ...config } = curItem;
25
- isColumn && initVal.curColumns.push({ ...config, ...columnConfig });
26
- isFilter && Object.assign(initVal.curFilterFields, formatTableToFormily(curItem, "filterConfig"));
27
- isEdit && Object.assign(initVal.curEditFields, formatTableToFormily(curItem, "editConfig"));
28
- if (fetchConfig) {
29
- initVal.curFetchEffects[config.prop] = useAsyncDataSource(fetchConfig);
30
- }
31
- return initVal;
32
- },
33
- { curFilterFields: {}, curEditFields: {}, curColumns: [], curFetchEffects: {} }
34
- );
35
- allFilterFields.value = curFilterFields;
36
- allEditFields.value = curEditFields;
37
- allColumns.value = curColumns;
38
- fetchEffects.value.fieldEffects = curFetchEffects;
39
- } catch (error) {
40
- console.error(`\u6784\u5EFAfields\u5931\u8D25\uFF0C\u5931\u8D25\u539F\u56E0\uFF1A${error}`);
41
- }
42
- }, { immediate: true, deep: true });
12
+ watch(
13
+ () => fields.value,
14
+ () => {
15
+ try {
16
+ const { curFilterFields, curEditFields, curColumns, curFetchEffects } = fields.value.reduce(
17
+ (initVal, curItem) => {
18
+ const {
19
+ isColumn,
20
+ columnConfig = {},
21
+ isFilter,
22
+ filterConfig = {},
23
+ isEdit,
24
+ editConfig = {},
25
+ fetchConfig,
26
+ ...config
27
+ } = curItem;
28
+ isColumn && initVal.curColumns.push({ ...config, ...columnConfig });
29
+ isFilter && Object.assign(initVal.curFilterFields, formatTableToFormily(curItem, "filterConfig"));
30
+ isEdit && Object.assign(initVal.curEditFields, formatTableToFormily(curItem, "editConfig"));
31
+ if (fetchConfig) {
32
+ initVal.curFetchEffects[config.prop] = useAsyncDataSource(fetchConfig);
33
+ }
34
+ return initVal;
35
+ },
36
+ { curFilterFields: {}, curEditFields: {}, curColumns: [], curFetchEffects: {} }
37
+ );
38
+ allFilterFields.value = curFilterFields;
39
+ allEditFields.value = curEditFields;
40
+ allColumns.value = curColumns;
41
+ fetchEffects.value.fieldEffects = curFetchEffects;
42
+ } catch (error) {
43
+ console.error(`\u6784\u5EFAfields\u5931\u8D25\uFF0C\u5931\u8D25\u539F\u56E0\uFF1A${error}`);
44
+ }
45
+ },
46
+ { immediate: true, deep: true }
47
+ );
43
48
  const {
44
49
  visibleFilterFields,
45
50
  visibleColumns,