@wix/auto-patterns 1.10.0 → 1.12.0

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 (177) hide show
  1. package/README.md +0 -50
  2. package/dist/cjs/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.js +57 -53
  3. package/dist/cjs/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.js.map +1 -1
  4. package/dist/cjs/components/AutoPatternsEntityPage/AutoPatternsEntityPage.js +38 -21
  5. package/dist/cjs/components/AutoPatternsEntityPage/AutoPatternsEntityPage.js.map +1 -1
  6. package/dist/cjs/components/AutoPatternsEntityPage/Fields/ImageInput.js +2 -1
  7. package/dist/cjs/components/AutoPatternsEntityPage/Fields/ImageInput.js.map +1 -1
  8. package/dist/cjs/components/AutoPatternsTable/AutoPatternsTable.js +6 -2
  9. package/dist/cjs/components/AutoPatternsTable/AutoPatternsTable.js.map +1 -1
  10. package/dist/cjs/components/DynamicIcon.js +9 -45
  11. package/dist/cjs/components/DynamicIcon.js.map +1 -1
  12. package/dist/cjs/hooks/useActionCell.js +9 -23
  13. package/dist/cjs/hooks/useActionCell.js.map +1 -1
  14. package/dist/cjs/hooks/useBaseTableFeatures.js +7 -2
  15. package/dist/cjs/hooks/useBaseTableFeatures.js.map +1 -1
  16. package/dist/cjs/hooks/useBulkActionToolbar.js +28 -6
  17. package/dist/cjs/hooks/useBulkActionToolbar.js.map +1 -1
  18. package/dist/cjs/hooks/useCollectionPageActions.js +2 -3
  19. package/dist/cjs/hooks/useCollectionPageActions.js.map +1 -1
  20. package/dist/cjs/hooks/useColumns.js +19 -10
  21. package/dist/cjs/hooks/useColumns.js.map +1 -1
  22. package/dist/cjs/hooks/useCommonCollectionFeatures.js +6 -10
  23. package/dist/cjs/hooks/useCommonCollectionFeatures.js.map +1 -1
  24. package/dist/cjs/hooks/useEntityPageMoreActions.js +46 -0
  25. package/dist/cjs/hooks/useEntityPageMoreActions.js.map +1 -0
  26. package/dist/cjs/hooks/useGridFeatures.js +8 -12
  27. package/dist/cjs/hooks/useGridFeatures.js.map +1 -1
  28. package/dist/cjs/hooks/useTableFeatures.js +12 -8
  29. package/dist/cjs/hooks/useTableFeatures.js.map +1 -1
  30. package/dist/cjs/hooks/useTableGridSwitchFeatures.js +11 -7
  31. package/dist/cjs/hooks/useTableGridSwitchFeatures.js.map +1 -1
  32. package/dist/cjs/providers/PatternsWizardOverridesContext.js +1 -1
  33. package/dist/cjs/providers/PatternsWizardOverridesContext.js.map +1 -1
  34. package/dist/cjs/types/CollectionPageConfig.js.map +1 -1
  35. package/dist/cjs/types/EntityPageConfig.js.map +1 -1
  36. package/dist/cjs/types/actions/actionCell.js.map +1 -1
  37. package/dist/cjs/types/actions/base.js.map +1 -1
  38. package/dist/cjs/types/actions/bulkActions.js.map +1 -1
  39. package/dist/cjs/types/actions/collectionPageActions.js.map +1 -1
  40. package/dist/cjs/types/actions/entityPageActions.js +4 -0
  41. package/dist/cjs/types/actions/entityPageActions.js.map +1 -0
  42. package/dist/cjs/types/actions/index.js +6 -0
  43. package/dist/cjs/types/actions/index.js.map +1 -1
  44. package/dist/cjs/types/types.js.map +1 -1
  45. package/dist/cjs/utils/actions/bulkDeleteAction.js +12 -1
  46. package/dist/cjs/utils/actions/bulkDeleteAction.js.map +1 -1
  47. package/dist/cjs/utils/actions/createAction.js +12 -1
  48. package/dist/cjs/utils/actions/createAction.js.map +1 -1
  49. package/dist/cjs/utils/actions/customAction.js.map +1 -1
  50. package/dist/cjs/utils/actions/deleteAction.js +12 -1
  51. package/dist/cjs/utils/actions/deleteAction.js.map +1 -1
  52. package/dist/cjs/utils/actions/resolveAction.js +2 -17
  53. package/dist/cjs/utils/actions/resolveAction.js.map +1 -1
  54. package/dist/cjs/utils/actions/types.js.map +1 -1
  55. package/dist/cjs/utils/actions/updateAction.js +12 -1
  56. package/dist/cjs/utils/actions/updateAction.js.map +1 -1
  57. package/dist/esm/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.js +40 -36
  58. package/dist/esm/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.js.map +1 -1
  59. package/dist/esm/components/AutoPatternsEntityPage/AutoPatternsEntityPage.js +14 -3
  60. package/dist/esm/components/AutoPatternsEntityPage/AutoPatternsEntityPage.js.map +1 -1
  61. package/dist/esm/components/AutoPatternsEntityPage/Fields/ImageInput.js +2 -1
  62. package/dist/esm/components/AutoPatternsEntityPage/Fields/ImageInput.js.map +1 -1
  63. package/dist/esm/components/AutoPatternsTable/AutoPatternsTable.js +6 -2
  64. package/dist/esm/components/AutoPatternsTable/AutoPatternsTable.js.map +1 -1
  65. package/dist/esm/components/DynamicIcon.js +4 -13
  66. package/dist/esm/components/DynamicIcon.js.map +1 -1
  67. package/dist/esm/hooks/useActionCell.js +9 -23
  68. package/dist/esm/hooks/useActionCell.js.map +1 -1
  69. package/dist/esm/hooks/useBaseTableFeatures.js +6 -1
  70. package/dist/esm/hooks/useBaseTableFeatures.js.map +1 -1
  71. package/dist/esm/hooks/useBulkActionToolbar.js +27 -5
  72. package/dist/esm/hooks/useBulkActionToolbar.js.map +1 -1
  73. package/dist/esm/hooks/useCollectionPageActions.js +1 -2
  74. package/dist/esm/hooks/useCollectionPageActions.js.map +1 -1
  75. package/dist/esm/hooks/useColumns.js +19 -10
  76. package/dist/esm/hooks/useColumns.js.map +1 -1
  77. package/dist/esm/hooks/useCommonCollectionFeatures.js +2 -6
  78. package/dist/esm/hooks/useCommonCollectionFeatures.js.map +1 -1
  79. package/dist/esm/hooks/useEntityPageMoreActions.js +42 -0
  80. package/dist/esm/hooks/useEntityPageMoreActions.js.map +1 -0
  81. package/dist/esm/hooks/useGridFeatures.js +8 -12
  82. package/dist/esm/hooks/useGridFeatures.js.map +1 -1
  83. package/dist/esm/hooks/useTableFeatures.js +12 -8
  84. package/dist/esm/hooks/useTableFeatures.js.map +1 -1
  85. package/dist/esm/hooks/useTableGridSwitchFeatures.js +11 -7
  86. package/dist/esm/hooks/useTableGridSwitchFeatures.js.map +1 -1
  87. package/dist/esm/providers/PatternsWizardOverridesContext.js.map +1 -1
  88. package/dist/esm/types/CollectionPageConfig.js.map +1 -1
  89. package/dist/esm/types/EntityPageConfig.js.map +1 -1
  90. package/dist/esm/types/actions/actionCell.js.map +1 -1
  91. package/dist/esm/types/actions/base.js.map +1 -1
  92. package/dist/esm/types/actions/bulkActions.js.map +1 -1
  93. package/dist/esm/types/actions/collectionPageActions.js.map +1 -1
  94. package/dist/esm/types/actions/entityPageActions.js +2 -0
  95. package/dist/esm/types/actions/entityPageActions.js.map +1 -0
  96. package/dist/esm/types/actions/index.js +1 -0
  97. package/dist/esm/types/actions/index.js.map +1 -1
  98. package/dist/esm/types/types.js.map +1 -1
  99. package/dist/esm/utils/actions/bulkDeleteAction.js +3 -1
  100. package/dist/esm/utils/actions/bulkDeleteAction.js.map +1 -1
  101. package/dist/esm/utils/actions/createAction.js +3 -1
  102. package/dist/esm/utils/actions/createAction.js.map +1 -1
  103. package/dist/esm/utils/actions/customAction.js.map +1 -1
  104. package/dist/esm/utils/actions/deleteAction.js +3 -1
  105. package/dist/esm/utils/actions/deleteAction.js.map +1 -1
  106. package/dist/esm/utils/actions/resolveAction.js +1 -7
  107. package/dist/esm/utils/actions/resolveAction.js.map +1 -1
  108. package/dist/esm/utils/actions/types.js.map +1 -1
  109. package/dist/esm/utils/actions/updateAction.js +3 -1
  110. package/dist/esm/utils/actions/updateAction.js.map +1 -1
  111. package/dist/types/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.d.ts.map +1 -1
  112. package/dist/types/components/AutoPatternsEntityPage/AutoPatternsEntityPage.d.ts.map +1 -1
  113. package/dist/types/components/AutoPatternsEntityPage/Fields/ImageInput.d.ts.map +1 -1
  114. package/dist/types/components/AutoPatternsTable/AutoPatternsTable.d.ts.map +1 -1
  115. package/dist/types/components/DynamicIcon.d.ts.map +1 -1
  116. package/dist/types/hooks/useActionCell.d.ts +2 -4
  117. package/dist/types/hooks/useActionCell.d.ts.map +1 -1
  118. package/dist/types/hooks/useBaseTableFeatures.d.ts +2 -0
  119. package/dist/types/hooks/useBaseTableFeatures.d.ts.map +1 -1
  120. package/dist/types/hooks/useBulkActionToolbar.d.ts.map +1 -1
  121. package/dist/types/hooks/useCollectionPageActions.d.ts.map +1 -1
  122. package/dist/types/hooks/useColumns.d.ts.map +1 -1
  123. package/dist/types/hooks/useCommonCollectionFeatures.d.ts +2 -3
  124. package/dist/types/hooks/useCommonCollectionFeatures.d.ts.map +1 -1
  125. package/dist/types/hooks/useEntityPageHeaderTexts.d.ts.map +1 -1
  126. package/dist/types/hooks/useEntityPageMoreActions.d.ts +6 -0
  127. package/dist/types/hooks/useEntityPageMoreActions.d.ts.map +1 -0
  128. package/dist/types/hooks/useGridFeatures.d.ts.map +1 -1
  129. package/dist/types/hooks/useTableFeatures.d.ts +2 -0
  130. package/dist/types/hooks/useTableFeatures.d.ts.map +1 -1
  131. package/dist/types/hooks/useTableGridSwitchFeatures.d.ts +2 -0
  132. package/dist/types/hooks/useTableGridSwitchFeatures.d.ts.map +1 -1
  133. package/dist/types/providers/PatternsWizardOverridesContext.d.ts +4 -2
  134. package/dist/types/providers/PatternsWizardOverridesContext.d.ts.map +1 -1
  135. package/dist/types/types/CollectionPageConfig.d.ts +42 -31
  136. package/dist/types/types/CollectionPageConfig.d.ts.map +1 -1
  137. package/dist/types/types/EntityPageConfig.d.ts +2 -0
  138. package/dist/types/types/EntityPageConfig.d.ts.map +1 -1
  139. package/dist/types/types/actions/actionCell.d.ts +4 -4
  140. package/dist/types/types/actions/actionCell.d.ts.map +1 -1
  141. package/dist/types/types/actions/base.d.ts +0 -1
  142. package/dist/types/types/actions/base.d.ts.map +1 -1
  143. package/dist/types/types/actions/bulkActions.d.ts +19 -11
  144. package/dist/types/types/actions/bulkActions.d.ts.map +1 -1
  145. package/dist/types/types/actions/collectionPageActions.d.ts +2 -5
  146. package/dist/types/types/actions/collectionPageActions.d.ts.map +1 -1
  147. package/dist/types/types/actions/entityPageActions.d.ts +12 -0
  148. package/dist/types/types/actions/entityPageActions.d.ts.map +1 -0
  149. package/dist/types/types/actions/index.d.ts +1 -0
  150. package/dist/types/types/actions/index.d.ts.map +1 -1
  151. package/dist/types/types/types.d.ts +1 -0
  152. package/dist/types/types/types.d.ts.map +1 -1
  153. package/dist/types/utils/actions/bulkDeleteAction.d.ts +2 -1
  154. package/dist/types/utils/actions/bulkDeleteAction.d.ts.map +1 -1
  155. package/dist/types/utils/actions/createAction.d.ts +2 -1
  156. package/dist/types/utils/actions/createAction.d.ts.map +1 -1
  157. package/dist/types/utils/actions/customAction.d.ts +1 -1
  158. package/dist/types/utils/actions/customAction.d.ts.map +1 -1
  159. package/dist/types/utils/actions/deleteAction.d.ts +2 -1
  160. package/dist/types/utils/actions/deleteAction.d.ts.map +1 -1
  161. package/dist/types/utils/actions/resolveAction.d.ts +1 -3
  162. package/dist/types/utils/actions/resolveAction.d.ts.map +1 -1
  163. package/dist/types/utils/actions/types.d.ts +5 -4
  164. package/dist/types/utils/actions/types.d.ts.map +1 -1
  165. package/dist/types/utils/actions/updateAction.d.ts +2 -1
  166. package/dist/types/utils/actions/updateAction.d.ts.map +1 -1
  167. package/package.json +19 -22
  168. package/dist/cjs/types/wix-icons.d.js +0 -2
  169. package/dist/cjs/types/wix-icons.d.js.map +0 -1
  170. package/dist/cjs/utils/generated-icon-imports.js +0 -1438
  171. package/dist/cjs/utils/generated-icon-imports.js.map +0 -1
  172. package/dist/esm/types/wix-icons.d.js +0 -2
  173. package/dist/esm/types/wix-icons.d.js.map +0 -1
  174. package/dist/esm/utils/generated-icon-imports.js +0 -1432
  175. package/dist/esm/utils/generated-icon-imports.js.map +0 -1
  176. package/dist/types/utils/generated-icon-imports.d.ts +0 -4
  177. package/dist/types/utils/generated-icon-imports.d.ts.map +0 -1
@@ -3,7 +3,6 @@
3
3
  exports.__esModule = true;
4
4
  exports.FallbackIcon = exports.DynamicIcon = void 0;
5
5
  var _react = _interopRequireWildcard(require("react"));
6
- var _generatedIconImports = require("../utils/generated-icon-imports");
7
6
  var _jsxFileName = "/home/builduser/work/73d19ce3378ce4dd/packages/auto-patterns/dist/cjs/components/DynamicIcon.tsx";
8
7
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
9
8
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
@@ -20,7 +19,7 @@ const DynamicIcon = exports.DynamicIcon = /*#__PURE__*/(0, _react.memo)(({
20
19
  __self: void 0,
21
20
  __source: {
22
21
  fileName: _jsxFileName,
23
- lineNumber: 6,
22
+ lineNumber: 5,
24
23
  columnNumber: 12
25
24
  }
26
25
  });
@@ -28,65 +27,30 @@ const DynamicIcon = exports.DynamicIcon = /*#__PURE__*/(0, _react.memo)(({
28
27
  if (!icon) {
29
28
  return null;
30
29
  }
31
- const iconLoader = _generatedIconImports.iconImports[icon];
32
- if (!iconLoader) {
33
- const defaultIconLoader = _generatedIconImports.iconImports.Edit;
34
- if (!defaultIconLoader) {
35
- return /*#__PURE__*/_react.default.createElement(FallbackIcon, {
36
- __self: void 0,
37
- __source: {
38
- fileName: _jsxFileName,
39
- lineNumber: 18,
40
- columnNumber: 14
41
- }
42
- });
43
- }
44
- const DefaultIconComponent = /*#__PURE__*/(0, _react.lazy)(defaultIconLoader);
45
- return /*#__PURE__*/_react.default.createElement(_react.Suspense, {
46
- fallback: /*#__PURE__*/_react.default.createElement(FallbackIcon, {
47
- __self: void 0,
48
- __source: {
49
- fileName: _jsxFileName,
50
- lineNumber: 23,
51
- columnNumber: 27
52
- }
53
- }),
54
- __self: void 0,
55
- __source: {
56
- fileName: _jsxFileName,
57
- lineNumber: 23,
58
- columnNumber: 7
59
- }
60
- }, /*#__PURE__*/_react.default.createElement(DefaultIconComponent, {
61
- __self: void 0,
62
- __source: {
63
- fileName: _jsxFileName,
64
- lineNumber: 24,
65
- columnNumber: 9
66
- }
67
- }));
68
- }
69
- const ImportedIconComponent = /*#__PURE__*/(0, _react.lazy)(iconLoader);
30
+ const ImportedIconComponent = /*#__PURE__*/(0, _react.lazy)(() => (specifier => new Promise(r => r(specifier)).then(s => _interopRequireWildcard(require(s))))(`@wix/wix-ui-icons-common/dist/esm/general/dist/components/${icon}.js`).catch(() => {
31
+ const defaultIconName = 'Edit';
32
+ return (specifier => new Promise(r => r(specifier)).then(s => _interopRequireWildcard(require(s))))(`@wix/wix-ui-icons-common/dist/esm/general/dist/components/${defaultIconName}.js`).catch(() => null);
33
+ }));
70
34
  return /*#__PURE__*/_react.default.createElement(_react.Suspense, {
71
35
  fallback: /*#__PURE__*/_react.default.createElement(FallbackIcon, {
72
36
  __self: void 0,
73
37
  __source: {
74
38
  fileName: _jsxFileName,
75
- lineNumber: 32,
39
+ lineNumber: 24,
76
40
  columnNumber: 25
77
41
  }
78
42
  }),
79
43
  __self: void 0,
80
44
  __source: {
81
45
  fileName: _jsxFileName,
82
- lineNumber: 32,
46
+ lineNumber: 24,
83
47
  columnNumber: 5
84
48
  }
85
49
  }, /*#__PURE__*/_react.default.createElement(ImportedIconComponent, {
86
50
  __self: void 0,
87
51
  __source: {
88
52
  fileName: _jsxFileName,
89
- lineNumber: 33,
53
+ lineNumber: 25,
90
54
  columnNumber: 7
91
55
  }
92
56
  }));
@@ -100,7 +64,7 @@ const FallbackIcon = exports.FallbackIcon = /*#__PURE__*/(0, _react.memo)(() =>
100
64
  __self: void 0,
101
65
  __source: {
102
66
  fileName: _jsxFileName,
103
- lineNumber: 39,
67
+ lineNumber: 31,
104
68
  columnNumber: 3
105
69
  }
106
70
  }));
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_generatedIconImports","_jsxFileName","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","DynamicIcon","exports","memo","icon","process","env","NODE_ENV","createElement","style","height","width","__self","__source","fileName","lineNumber","columnNumber","iconLoader","iconImports","defaultIconLoader","Edit","FallbackIcon","DefaultIconComponent","lazy","Suspense","fallback","ImportedIconComponent"],"sources":["../../../src/components/DynamicIcon.tsx"],"sourcesContent":["import React, { lazy, memo, Suspense } from 'react';\nimport { iconImports } from '../utils/generated-icon-imports';\n\nexport const DynamicIcon = memo(({ icon }: { icon: string | undefined }) => {\n if (process.env.NODE_ENV === 'test') {\n return <div data-hook=\"icon-fallback\" style={{ height: 18, width: 18 }} />;\n }\n\n if (!icon) {\n return null;\n }\n\n const iconLoader = iconImports[icon];\n\n if (!iconLoader) {\n const defaultIconLoader = iconImports.Edit;\n if (!defaultIconLoader) {\n return <FallbackIcon />;\n }\n\n const DefaultIconComponent = lazy(defaultIconLoader);\n return (\n <Suspense fallback={<FallbackIcon />}>\n <DefaultIconComponent />\n </Suspense>\n );\n }\n\n const ImportedIconComponent = lazy(iconLoader);\n\n return (\n <Suspense fallback={<FallbackIcon />}>\n <ImportedIconComponent />\n </Suspense>\n );\n});\n\nexport const FallbackIcon = memo(() => (\n <div data-hook=\"icon-fallback\" style={{ height: 18, width: 18 }} />\n));\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_jsxFileName","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","DynamicIcon","exports","memo","icon","process","env","NODE_ENV","createElement","style","height","width","__self","__source","fileName","lineNumber","columnNumber","ImportedIconComponent","lazy","specifier","Promise","then","s","catch","defaultIconName","Suspense","fallback","FallbackIcon"],"sources":["../../../src/components/DynamicIcon.tsx"],"sourcesContent":["import React, { lazy, memo, Suspense } from 'react';\n\nexport const DynamicIcon = memo(({ icon }: { icon: string | undefined }) => {\n if (process.env.NODE_ENV === 'test') {\n return <div data-hook=\"icon-fallback\" style={{ height: 18, width: 18 }} />;\n }\n\n if (!icon) {\n return null;\n }\n\n const ImportedIconComponent = lazy(() =>\n import(\n `@wix/wix-ui-icons-common/dist/esm/general/dist/components/${icon}.js`\n ).catch(() => {\n const defaultIconName = 'Edit';\n return import(\n `@wix/wix-ui-icons-common/dist/esm/general/dist/components/${defaultIconName}.js`\n ).catch(() => null);\n }),\n );\n\n return (\n <Suspense fallback={<FallbackIcon />}>\n <ImportedIconComponent />\n </Suspense>\n );\n});\n\nexport const FallbackIcon = memo(() => (\n <div data-hook=\"icon-fallback\" style={{ height: 18, width: 18 }} />\n));\n"],"mappings":"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","ignoreList":[]}
@@ -4,25 +4,16 @@ exports.__esModule = true;
4
4
  exports.useActionCell = void 0;
5
5
  var _react = require("react");
6
6
  var _useActionsSDK = require("./useActionsSDK");
7
- var _patterns = require("@wix/patterns");
8
7
  var _actions = require("../utils/actions");
9
- var _useNavigationUtils = require("./useNavigationUtils");
10
8
  const useActionCell = ({
11
9
  config,
12
- collectionId,
13
- collectionType,
14
- entityPageId
10
+ collectionId
15
11
  }) => {
16
- const {
17
- navigateToEntityPage
18
- } = (0, _useNavigationUtils.useNavigation)();
19
- const container = (0, _patterns.useWixPatternsContainer)();
20
- const editText = (0, _patterns.useSelector)(() => container.translate('cairo.collectionsPage.edit.CTA'));
21
12
  const sdk = (0, _useActionsSDK.useActionsSDK)({
22
13
  collectionId
23
14
  });
24
15
  const buildCellActions = (0, _react.useCallback)((item, index, api) => {
25
- var _config$primaryAction, _config$secondaryActi;
16
+ var _config$primaryAction, _config$secondaryActi, _config$secondaryActi2, _config$secondaryActi3;
26
17
  const buildAction = actionConfig => {
27
18
  let actionToResolve = null;
28
19
  const baseParams = {
@@ -76,17 +67,10 @@ const useActionCell = ({
76
67
  disabledDescription: resolvedAction.tooltip
77
68
  };
78
69
  };
79
- const primaryAction = config != null && (_config$primaryAction = config.primaryAction) != null && _config$primaryAction.item ? buildAction(config.primaryAction.item) : collectionType === 'Grid' && entityPageId ? {
80
- text: editText,
81
- icon: 'edit',
82
- onClick: () => {
83
- navigateToEntityPage({
84
- item,
85
- entityPageId
86
- });
87
- }
88
- } : undefined;
70
+ const primaryAction = config != null && (_config$primaryAction = config.primaryAction) != null && _config$primaryAction.item ? buildAction(config.primaryAction.item) : undefined;
89
71
  const secondaryActions = config != null && (_config$secondaryActi = config.secondaryActions) != null && _config$secondaryActi.items.length ? config.secondaryActions.items.map(buildAction).filter(Boolean) : [];
72
+ const numOfVisibleSecondaryActions = config == null || (_config$secondaryActi2 = config.secondaryActions) == null ? void 0 : _config$secondaryActi2.inlineCount;
73
+ const alwaysShowSecondaryActions = config == null || (_config$secondaryActi3 = config.secondaryActions) == null ? void 0 : _config$secondaryActi3.inlineAlwaysVisible;
90
74
  if (!primaryAction && !secondaryActions.length) {
91
75
  return {};
92
76
  }
@@ -98,9 +82,11 @@ const useActionCell = ({
98
82
  }),
99
83
  ...(secondaryActions.length && {
100
84
  secondaryActions
101
- })
85
+ }),
86
+ numOfVisibleSecondaryActions,
87
+ alwaysShowSecondaryActions
102
88
  };
103
- }, [config, sdk, entityPageId, navigateToEntityPage, collectionType, editText]);
89
+ }, [config, sdk]);
104
90
  return buildCellActions;
105
91
  };
106
92
  exports.useActionCell = useActionCell;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_useActionsSDK","_patterns","_actions","_useNavigationUtils","useActionCell","config","collectionId","collectionType","entityPageId","navigateToEntityPage","useNavigation","container","useWixPatternsContainer","editText","useSelector","translate","sdk","useActionsSDK","buildCellActions","useCallback","item","index","api","_config$primaryAction","_config$secondaryActi","buildAction","actionConfig","actionToResolve","baseParams","actionParams","type","updateAction","action","deleteAction","customModalAction","customAction","resolvedAction","resolveAction","label","tooltip","resolvedActionProps","text","disabledDescription","primaryAction","icon","onClick","undefined","secondaryActions","items","length","map","filter","Boolean","exports"],"sources":["../../../src/hooks/useActionCell.ts"],"sourcesContent":["import { useCallback } from 'react';\nimport {\n ActionCellConfig,\n ActionCellItemConfig,\n ComponentConfig,\n ResolvedAction,\n} from '../types';\nimport { useActionsSDK } from './useActionsSDK';\nimport { useWixPatternsContainer, useSelector } from '@wix/patterns';\nimport {\n updateAction,\n customModalAction,\n customAction,\n resolveAction,\n deleteAction,\n} from '../utils/actions';\nimport { useNavigation } from './useNavigationUtils';\n\nexport interface useActionCellParams {\n config?: ActionCellConfig;\n collectionId: string;\n collectionType?: ComponentConfig['type'];\n entityPageId?: string;\n}\n\nexport const useActionCell = ({\n config,\n collectionId,\n collectionType,\n entityPageId,\n}: useActionCellParams) => {\n const { navigateToEntityPage } = useNavigation();\n const container = useWixPatternsContainer();\n const editText = useSelector(() =>\n container.translate('cairo.collectionsPage.edit.CTA'),\n );\n\n const sdk = useActionsSDK({\n collectionId,\n });\n\n const buildCellActions = useCallback(\n (item, index, api) => {\n const buildAction = (actionConfig: ActionCellItemConfig) => {\n let actionToResolve: Partial<ResolvedAction> | null = null;\n\n const baseParams = {\n actionParams: { item, index, api },\n sdk,\n };\n\n switch (actionConfig.type) {\n case 'update':\n actionToResolve = updateAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n case 'delete':\n actionToResolve = deleteAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n case 'customModal':\n actionToResolve = customModalAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n case 'custom':\n actionToResolve = customAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n default:\n return null;\n }\n\n if (!actionToResolve) {\n return null;\n }\n\n const resolvedAction = resolveAction(actionConfig, actionToResolve);\n const { label, tooltip, ...resolvedActionProps } = resolvedAction;\n\n return {\n ...resolvedActionProps,\n text: resolvedAction.label,\n disabledDescription: resolvedAction.tooltip,\n };\n };\n\n const primaryAction = config?.primaryAction?.item\n ? buildAction(config.primaryAction.item)\n : collectionType === 'Grid' && entityPageId\n ? {\n text: editText,\n icon: 'edit',\n onClick: () => {\n navigateToEntityPage({\n item,\n entityPageId,\n });\n },\n }\n : undefined;\n\n const secondaryActions = config?.secondaryActions?.items.length\n ? config.secondaryActions.items.map(buildAction).filter(Boolean)\n : [];\n\n if (!primaryAction && !secondaryActions.length) {\n return {};\n }\n\n return {\n ...(primaryAction ? { primaryAction } : { primaryAction: undefined }),\n ...(secondaryActions.length && { secondaryActions }),\n };\n },\n [config, sdk, entityPageId, navigateToEntityPage, collectionType, editText],\n );\n\n return buildCellActions;\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_useActionsSDK","_actions","useActionCell","config","collectionId","sdk","useActionsSDK","buildCellActions","useCallback","item","index","api","_config$primaryAction","_config$secondaryActi","_config$secondaryActi2","_config$secondaryActi3","buildAction","actionConfig","actionToResolve","baseParams","actionParams","type","updateAction","action","deleteAction","customModalAction","customAction","resolvedAction","resolveAction","label","tooltip","resolvedActionProps","text","disabledDescription","primaryAction","undefined","secondaryActions","items","length","map","filter","Boolean","numOfVisibleSecondaryActions","inlineCount","alwaysShowSecondaryActions","inlineAlwaysVisible","exports"],"sources":["../../../src/hooks/useActionCell.ts"],"sourcesContent":["import { useCallback } from 'react';\nimport {\n ActionCellConfig,\n ActionCellItemConfig,\n ResolvedAction,\n} from '../types';\nimport { useActionsSDK } from './useActionsSDK';\nimport {\n updateAction,\n customModalAction,\n customAction,\n resolveAction,\n deleteAction,\n} from '../utils/actions';\n\nexport interface useActionCellParams {\n config?: ActionCellConfig;\n collectionId: string;\n}\n\nexport const useActionCell = ({\n config,\n collectionId,\n}: useActionCellParams) => {\n const sdk = useActionsSDK({\n collectionId,\n });\n\n const buildCellActions = useCallback(\n (item, index, api) => {\n const buildAction = (actionConfig: ActionCellItemConfig) => {\n let actionToResolve: Partial<ResolvedAction> | null = null;\n\n const baseParams = {\n actionParams: { item, index, api },\n sdk,\n };\n\n switch (actionConfig.type) {\n case 'update':\n actionToResolve = updateAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n case 'delete':\n actionToResolve = deleteAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n case 'customModal':\n actionToResolve = customModalAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n case 'custom':\n actionToResolve = customAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n default:\n return null;\n }\n\n if (!actionToResolve) {\n return null;\n }\n\n const resolvedAction = resolveAction(actionConfig, actionToResolve);\n const { label, tooltip, ...resolvedActionProps } = resolvedAction;\n\n return {\n ...resolvedActionProps,\n text: resolvedAction.label,\n disabledDescription: resolvedAction.tooltip,\n };\n };\n\n const primaryAction = config?.primaryAction?.item\n ? buildAction(config.primaryAction.item)\n : undefined;\n\n const secondaryActions = config?.secondaryActions?.items.length\n ? config.secondaryActions.items.map(buildAction).filter(Boolean)\n : [];\n\n const numOfVisibleSecondaryActions =\n config?.secondaryActions?.inlineCount;\n const alwaysShowSecondaryActions =\n config?.secondaryActions?.inlineAlwaysVisible;\n\n if (!primaryAction && !secondaryActions.length) {\n return {};\n }\n\n return {\n ...(primaryAction ? { primaryAction } : { primaryAction: undefined }),\n ...(secondaryActions.length && { secondaryActions }),\n numOfVisibleSecondaryActions,\n alwaysShowSecondaryActions,\n };\n },\n [config, sdk],\n );\n\n return buildCellActions;\n};\n"],"mappings":"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","ignoreList":[]}
@@ -21,6 +21,9 @@ const useBaseTableFeatures = configuration => {
21
21
  item,
22
22
  entityPageId
23
23
  });
24
+ const stickyColumns = configuration.stickyColumns;
25
+ const stickySelectionColumn = !!stickyColumns; // Sticky selection column is true if stickyColumns is positive number
26
+
24
27
  return {
25
28
  columns,
26
29
  visibleFieldIds,
@@ -29,10 +32,12 @@ const useBaseTableFeatures = configuration => {
29
32
  __self: void 0,
30
33
  __source: {
31
34
  fileName: _jsxFileName,
32
- lineNumber: 29,
35
+ lineNumber: 32,
33
36
  columnNumber: 7
34
37
  }
35
- }) : undefined
38
+ }) : undefined,
39
+ stickyColumns,
40
+ stickySelectionColumn
36
41
  };
37
42
  };
38
43
  exports.useBaseTableFeatures = useBaseTableFeatures;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_useColumns","_patterns","_useNavigationUtils","_jsxFileName","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useBaseTableFeatures","configuration","_configuration$custom","navigateToEntityPage","useNavigation","columns","useColumns","visibleFieldIds","useMemo","map","column","id","entityPageId","onRowClick","item","customColumns","enabled","createElement","CustomColumns","__self","__source","fileName","lineNumber","columnNumber","undefined","exports"],"sources":["../../../src/hooks/useBaseTableFeatures.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\nimport { TableConfig } from '../types';\nimport { useColumns } from './useColumns';\nimport { CustomColumns } from '@wix/patterns';\nimport { useNavigation } from './useNavigationUtils';\n\nexport const useBaseTableFeatures = (configuration: TableConfig) => {\n const { navigateToEntityPage } = useNavigation();\n\n const columns = useColumns(configuration.columns);\n const visibleFieldIds = useMemo(\n () => configuration.columns.map((column) => column.id),\n [configuration],\n );\n\n const entityPageId = configuration.entityPageId;\n\n const onRowClick = (item: any) =>\n navigateToEntityPage({\n item,\n entityPageId,\n });\n\n return {\n columns,\n visibleFieldIds,\n onRowClick,\n customColumns: configuration.customColumns?.enabled ? (\n <CustomColumns />\n ) : undefined,\n };\n};\n"],"mappings":";;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,mBAAA,GAAAH,OAAA;AAAqD,IAAAI,YAAA;AAAA,SAAAC,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAP,wBAAAO,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAE9C,MAAMW,oBAAoB,GAAIC,aAA0B,IAAK;EAAA,IAAAC,qBAAA;EAClE,MAAM;IAAEC;EAAqB,CAAC,GAAG,IAAAC,iCAAa,EAAC,CAAC;EAEhD,MAAMC,OAAO,GAAG,IAAAC,sBAAU,EAACL,aAAa,CAACI,OAAO,CAAC;EACjD,MAAME,eAAe,GAAG,IAAAC,cAAO,EAC7B,MAAMP,aAAa,CAACI,OAAO,CAACI,GAAG,CAAEC,MAAM,IAAKA,MAAM,CAACC,EAAE,CAAC,EACtD,CAACV,aAAa,CAChB,CAAC;EAED,MAAMW,YAAY,GAAGX,aAAa,CAACW,YAAY;EAE/C,MAAMC,UAAU,GAAIC,IAAS,IAC3BX,oBAAoB,CAAC;IACnBW,IAAI;IACJF;EACF,CAAC,CAAC;EAEJ,OAAO;IACLP,OAAO;IACPE,eAAe;IACfM,UAAU;IACVE,aAAa,EAAE,CAAAb,qBAAA,GAAAD,aAAa,CAACc,aAAa,aAA3Bb,qBAAA,CAA6Bc,OAAO,gBACjD3C,MAAA,CAAAa,OAAA,CAAA+B,aAAA,CAACxC,SAAA,CAAAyC,aAAa;MAAAC,MAAA;MAAAC,QAAA;QAAAC,QAAA,EAAA1C,YAAA;QAAA2C,UAAA;QAAAC,YAAA;MAAA;IAAA,CAAE,CAAC,GACfC;EACN,CAAC;AACH,CAAC;AAACC,OAAA,CAAAzB,oBAAA,GAAAA,oBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_useColumns","_patterns","_useNavigationUtils","_jsxFileName","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useBaseTableFeatures","configuration","_configuration$custom","navigateToEntityPage","useNavigation","columns","useColumns","visibleFieldIds","useMemo","map","column","id","entityPageId","onRowClick","item","stickyColumns","stickySelectionColumn","customColumns","enabled","createElement","CustomColumns","__self","__source","fileName","lineNumber","columnNumber","undefined","exports"],"sources":["../../../src/hooks/useBaseTableFeatures.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\nimport { TableConfig } from '../types';\nimport { useColumns } from './useColumns';\nimport { CustomColumns } from '@wix/patterns';\nimport { useNavigation } from './useNavigationUtils';\n\nexport const useBaseTableFeatures = (configuration: TableConfig) => {\n const { navigateToEntityPage } = useNavigation();\n\n const columns = useColumns(configuration.columns);\n const visibleFieldIds = useMemo(\n () => configuration.columns.map((column) => column.id),\n [configuration],\n );\n\n const entityPageId = configuration.entityPageId;\n\n const onRowClick = (item: any) =>\n navigateToEntityPage({\n item,\n entityPageId,\n });\n\n const stickyColumns = configuration.stickyColumns;\n const stickySelectionColumn = !!stickyColumns; // Sticky selection column is true if stickyColumns is positive number\n\n return {\n columns,\n visibleFieldIds,\n onRowClick,\n customColumns: configuration.customColumns?.enabled ? (\n <CustomColumns />\n ) : undefined,\n stickyColumns,\n stickySelectionColumn,\n };\n};\n"],"mappings":";;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,mBAAA,GAAAH,OAAA;AAAqD,IAAAI,YAAA;AAAA,SAAAC,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAP,wBAAAO,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAE9C,MAAMW,oBAAoB,GAAIC,aAA0B,IAAK;EAAA,IAAAC,qBAAA;EAClE,MAAM;IAAEC;EAAqB,CAAC,GAAG,IAAAC,iCAAa,EAAC,CAAC;EAEhD,MAAMC,OAAO,GAAG,IAAAC,sBAAU,EAACL,aAAa,CAACI,OAAO,CAAC;EACjD,MAAME,eAAe,GAAG,IAAAC,cAAO,EAC7B,MAAMP,aAAa,CAACI,OAAO,CAACI,GAAG,CAAEC,MAAM,IAAKA,MAAM,CAACC,EAAE,CAAC,EACtD,CAACV,aAAa,CAChB,CAAC;EAED,MAAMW,YAAY,GAAGX,aAAa,CAACW,YAAY;EAE/C,MAAMC,UAAU,GAAIC,IAAS,IAC3BX,oBAAoB,CAAC;IACnBW,IAAI;IACJF;EACF,CAAC,CAAC;EAEJ,MAAMG,aAAa,GAAGd,aAAa,CAACc,aAAa;EACjD,MAAMC,qBAAqB,GAAG,CAAC,CAACD,aAAa,CAAC,CAAC;;EAE/C,OAAO;IACLV,OAAO;IACPE,eAAe;IACfM,UAAU;IACVI,aAAa,EAAE,CAAAf,qBAAA,GAAAD,aAAa,CAACgB,aAAa,aAA3Bf,qBAAA,CAA6BgB,OAAO,gBACjD7C,MAAA,CAAAa,OAAA,CAAAiC,aAAA,CAAC1C,SAAA,CAAA2C,aAAa;MAAAC,MAAA;MAAAC,QAAA;QAAAC,QAAA,EAAA5C,YAAA;QAAA6C,UAAA;QAAAC,YAAA;MAAA;IAAA,CAAE,CAAC,GACfC,SAAS;IACbX,aAAa;IACbC;EACF,CAAC;AACH,CAAC;AAACW,OAAA,CAAA3B,oBAAA,GAAAA,oBAAA","ignoreList":[]}
@@ -13,12 +13,10 @@ const useBulkActionToolbar = ({
13
13
  config,
14
14
  collectionId
15
15
  }) => {
16
- var _config$primaryAction2, _config$secondaryActi2;
17
16
  const sdk = (0, _useActionsSDK.useActionsSDK)({
18
17
  collectionId
19
18
  });
20
19
  const bulkActionToolbar = (0, _react.useCallback)(param => {
21
- var _config$primaryAction, _config$secondaryActi;
22
20
  const buildAction = actionConfig => {
23
21
  let actionToResolve = null;
24
22
  const baseParams = {
@@ -61,15 +59,37 @@ const useBulkActionToolbar = ({
61
59
  ...resolvedActionParams
62
60
  };
63
61
  };
64
- const primaryActionItems = ((config == null || (_config$primaryAction = config.primaryActions) == null ? void 0 : _config$primaryAction.items) || []).map(buildAction).filter(action => Boolean(action));
65
- const secondaryActionItems = ((config == null || (_config$secondaryActi = config.secondaryActions) == null ? void 0 : _config$secondaryActi.sections) || []).map(section => section.items.map(buildAction).filter(action => Boolean(action)));
62
+ const buildPrimaryActions = () => {
63
+ if (!(config != null && config.primaryActions)) {
64
+ return [];
65
+ }
66
+ return config.primaryActions.map((primaryItem, index) => {
67
+ if (primaryItem.type === 'single') {
68
+ return buildAction(primaryItem.single.item);
69
+ }
70
+ if (primaryItem.type === 'multi') {
71
+ const subItems = primaryItem.multi.items.map(buildAction).filter(action => Boolean(action));
72
+ if (subItems.length === 0) {
73
+ return null;
74
+ }
75
+ return {
76
+ label: primaryItem.multi.label,
77
+ subItems: [subItems],
78
+ dataHook: `bulk-multi-action-${index}`
79
+ };
80
+ }
81
+ return null;
82
+ }).filter(action => Boolean(action));
83
+ };
84
+ const primaryActionItems = buildPrimaryActions();
85
+ const secondaryActionItems = ((config == null ? void 0 : config.secondaryActions) || []).map(sectionItems => sectionItems.map(a => buildAction(a)).filter(action => Boolean(action)));
66
86
  return /*#__PURE__*/_react.default.createElement(_patterns.MultiBulkActionToolbar, {
67
87
  primaryActionItems: primaryActionItems,
68
88
  secondaryActionItems: secondaryActionItems,
69
89
  __self: void 0,
70
90
  __source: {
71
91
  fileName: _jsxFileName,
72
- lineNumber: 101,
92
+ lineNumber: 130,
73
93
  columnNumber: 9
74
94
  }
75
95
  });
@@ -77,7 +97,9 @@ const useBulkActionToolbar = ({
77
97
  if (!config) {
78
98
  return undefined;
79
99
  }
80
- if (!((_config$primaryAction2 = config.primaryActions) != null && _config$primaryAction2.items.length) && !((_config$secondaryActi2 = config.secondaryActions) != null && _config$secondaryActi2.sections.length)) {
100
+ const hasPrimaryActions = config.primaryActions && config.primaryActions.length > 0;
101
+ const hasSecondaryActions = config.secondaryActions && config.secondaryActions.length > 0;
102
+ if (!hasPrimaryActions && !hasSecondaryActions) {
81
103
  return undefined;
82
104
  }
83
105
  return bulkActionToolbar;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_useActionsSDK","_patterns","_actions","_jsxFileName","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useBulkActionToolbar","config","collectionId","_config$primaryAction2","_config$secondaryActi2","sdk","useActionsSDK","bulkActionToolbar","useCallback","param","_config$primaryAction","_config$secondaryActi","buildAction","actionConfig","actionToResolve","baseParams","actionParams","type","bulkDeleteAction","action","customModalAction","customAction","resolvedAction","resolveAction","icon","resolvedActionParams","prefixIcon","React","isValidElement","undefined","dataHook","id","primaryActionItems","primaryActions","items","map","filter","Boolean","secondaryActionItems","secondaryActions","sections","section","createElement","MultiBulkActionToolbar","__self","__source","fileName","lineNumber","columnNumber","length","exports"],"sources":["../../../src/hooks/useBulkActionToolbar.tsx"],"sourcesContent":["import React, { useCallback } from 'react';\nimport {\n BulkActionItemConfig,\n BulkActionsConfig,\n ResolvedAction,\n} from '../types';\nimport { useActionsSDK } from './useActionsSDK';\nimport {\n TableProps,\n MultiBulkActionToolbar,\n ActionSubitem,\n} from '@wix/patterns';\nimport {\n bulkDeleteAction,\n customAction,\n customModalAction,\n resolveAction,\n} from '../utils/actions';\n\nexport type BulkActionToolbarRenderProp = Parameters<\n NonNullable<TableProps<any, any>['bulkActionToolbar']>\n>[0];\n\nexport interface useBulkActionToolbarParams {\n config?: BulkActionsConfig;\n collectionId: string;\n}\n\nexport const useBulkActionToolbar = ({\n config,\n collectionId,\n}: useBulkActionToolbarParams) => {\n const sdk = useActionsSDK({\n collectionId,\n });\n\n const bulkActionToolbar = useCallback(\n (param: BulkActionToolbarRenderProp) => {\n const buildAction = (\n actionConfig: BulkActionItemConfig,\n ): ActionSubitem | null => {\n let actionToResolve: Partial<ResolvedAction> | null = null;\n\n const baseParams = {\n actionParams: param,\n sdk,\n };\n\n switch (actionConfig.type) {\n case 'bulkDelete':\n actionToResolve = bulkDeleteAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n case 'customModal':\n actionToResolve = customModalAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n case 'custom':\n actionToResolve = customAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n default:\n return null;\n }\n\n if (!actionToResolve) {\n return null;\n }\n\n const resolvedAction = resolveAction(actionConfig, actionToResolve);\n const { icon, ...resolvedActionParams } = resolvedAction;\n\n return {\n prefixIcon: React.isValidElement(icon) ? icon : undefined,\n dataHook: actionConfig.id,\n ...resolvedActionParams,\n };\n };\n\n const primaryActionItems = (config?.primaryActions?.items || [])\n .map(buildAction)\n .filter((action): action is ActionSubitem => Boolean(action));\n const secondaryActionItems = (\n config?.secondaryActions?.sections || []\n ).map((section) =>\n section.items\n .map(buildAction)\n .filter((action): action is ActionSubitem => Boolean(action)),\n );\n\n return (\n <MultiBulkActionToolbar\n primaryActionItems={primaryActionItems}\n secondaryActionItems={secondaryActionItems}\n />\n );\n },\n [config, sdk],\n );\n\n if (!config) {\n return undefined;\n }\n\n if (\n !config.primaryActions?.items.length &&\n !config.secondaryActions?.sections.length\n ) {\n return undefined;\n }\n return bulkActionToolbar;\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_useActionsSDK","_patterns","_actions","_jsxFileName","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useBulkActionToolbar","config","collectionId","sdk","useActionsSDK","bulkActionToolbar","useCallback","param","buildAction","actionConfig","actionToResolve","baseParams","actionParams","type","bulkDeleteAction","action","customModalAction","customAction","resolvedAction","resolveAction","icon","resolvedActionParams","prefixIcon","React","isValidElement","undefined","dataHook","id","buildPrimaryActions","primaryActions","map","primaryItem","index","single","item","subItems","multi","items","filter","Boolean","length","label","primaryActionItems","secondaryActionItems","secondaryActions","sectionItems","createElement","MultiBulkActionToolbar","__self","__source","fileName","lineNumber","columnNumber","hasPrimaryActions","hasSecondaryActions","exports"],"sources":["../../../src/hooks/useBulkActionToolbar.tsx"],"sourcesContent":["import React, { useCallback } from 'react';\nimport {\n BulkActionItemConfig,\n BulkActionsConfig,\n ResolvedAction,\n} from '../types';\nimport { useActionsSDK } from './useActionsSDK';\nimport {\n TableProps,\n MultiBulkActionToolbar,\n ActionSubitem,\n} from '@wix/patterns';\nimport {\n bulkDeleteAction,\n customAction,\n customModalAction,\n resolveAction,\n} from '../utils/actions';\n\nexport type BulkActionToolbarRenderProp = Parameters<\n NonNullable<TableProps<any, any>['bulkActionToolbar']>\n>[0];\n\nexport interface useBulkActionToolbarParams {\n config?: BulkActionsConfig;\n collectionId: string;\n}\n\nexport const useBulkActionToolbar = ({\n config,\n collectionId,\n}: useBulkActionToolbarParams) => {\n const sdk = useActionsSDK({\n collectionId,\n });\n\n const bulkActionToolbar = useCallback(\n (param: BulkActionToolbarRenderProp) => {\n const buildAction = (\n actionConfig: BulkActionItemConfig,\n ): ActionSubitem | null => {\n let actionToResolve: Partial<ResolvedAction> | null = null;\n\n const baseParams = {\n actionParams: param,\n sdk,\n };\n\n switch (actionConfig.type) {\n case 'bulkDelete':\n actionToResolve = bulkDeleteAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n case 'customModal':\n actionToResolve = customModalAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n case 'custom':\n actionToResolve = customAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n default:\n return null;\n }\n\n if (!actionToResolve) {\n return null;\n }\n\n const resolvedAction = resolveAction(actionConfig, actionToResolve);\n const { icon, ...resolvedActionParams } = resolvedAction;\n\n return {\n prefixIcon: React.isValidElement(icon) ? icon : undefined,\n dataHook: actionConfig.id,\n ...resolvedActionParams,\n };\n };\n\n const buildPrimaryActions = (): ActionSubitem[] => {\n if (!config?.primaryActions) {\n return [];\n }\n\n return config.primaryActions\n .map((primaryItem, index) => {\n if (primaryItem.type === 'single') {\n return buildAction(primaryItem.single.item);\n }\n\n if (primaryItem.type === 'multi') {\n const subItems = primaryItem.multi.items\n .map(buildAction)\n .filter((action): action is ActionSubitem => Boolean(action));\n\n if (subItems.length === 0) {\n return null;\n }\n\n return {\n label: primaryItem.multi.label,\n subItems: [subItems],\n dataHook: `bulk-multi-action-${index}`,\n };\n }\n\n return null;\n })\n .filter((action): action is ActionSubitem => Boolean(action));\n };\n\n const primaryActionItems = buildPrimaryActions();\n const secondaryActionItems = (config?.secondaryActions || []).map(\n (sectionItems) =>\n sectionItems\n .map((a) => buildAction(a))\n .filter((action): action is ActionSubitem => Boolean(action)),\n );\n\n return (\n <MultiBulkActionToolbar\n primaryActionItems={primaryActionItems}\n secondaryActionItems={secondaryActionItems}\n />\n );\n },\n [config, sdk],\n );\n\n if (!config) {\n return undefined;\n }\n\n const hasPrimaryActions =\n config.primaryActions && config.primaryActions.length > 0;\n\n const hasSecondaryActions =\n config.secondaryActions && config.secondaryActions.length > 0;\n\n if (!hasPrimaryActions && !hasSecondaryActions) {\n return undefined;\n }\n\n return bulkActionToolbar;\n};\n"],"mappings":"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","ignoreList":[]}
@@ -77,7 +77,6 @@ const useCollectionPageActions = ({
77
77
  }
78
78
  return {
79
79
  label: actions.multi.label,
80
- prefixIcon: (0, _actions.resolveIcon)(actions.multi.icon),
81
80
  subItems
82
81
  };
83
82
  }
@@ -93,7 +92,7 @@ const useCollectionPageActions = ({
93
92
  __self: void 0,
94
93
  __source: {
95
94
  fileName: _jsxFileName,
96
- lineNumber: 125,
95
+ lineNumber: 123,
97
96
  columnNumber: 9
98
97
  }
99
98
  })) : undefined,
@@ -101,7 +100,7 @@ const useCollectionPageActions = ({
101
100
  __self: void 0,
102
101
  __source: {
103
102
  fileName: _jsxFileName,
104
- lineNumber: 128,
103
+ lineNumber: 126,
105
104
  columnNumber: 9
106
105
  }
107
106
  })) : undefined
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_useActionsSDK","_actions","_patterns","_jsxFileName","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useCollectionPageActions","collectionPageActions","sdk","useActionsSDK","collectionId","buildCollectionPageActions","useCallback","buildAction","actionConfig","actionToResolve","baseParams","actionParams","collection","type","createAction","action","customModalAction","customAction","resolvedAction","resolveAction","tooltip","icon","resolvedActionProps","prefixIcon","disabledDescription","handleActionsType","actions","single","item","subItems","multi","items","map","filter","length","label","resolveIcon","primaryActions","secondaryActions","createElement","PrimaryActions","_extends2","__self","__source","fileName","lineNumber","columnNumber","undefined","SecondaryActions","useMemo","exports"],"sources":["../../../src/hooks/useCollectionPageActions.tsx"],"sourcesContent":["import React, { useCallback, useMemo } from 'react';\nimport {\n CollectionPageActionConfig,\n CollectionPageConfig,\n CollectionPagePrimaryActions,\n CollectionPageSecondaryActions,\n ResolvedAction,\n} from '../types';\nimport { useActionsSDK } from './useActionsSDK';\nimport {\n createAction,\n customAction,\n customModalAction,\n resolveAction,\n resolveIcon,\n} from '../utils/actions';\nimport { IconElement } from '@wix/design-system';\nimport { PrimaryActions, SecondaryActions } from '@wix/patterns';\n\nexport interface UseCollectionPageActionsParams {\n collectionPageActions: CollectionPageConfig['actions'];\n}\n\nexport const useCollectionPageActions = ({\n collectionPageActions,\n}: UseCollectionPageActionsParams) => {\n const sdk = useActionsSDK({\n collectionId: '',\n });\n\n const buildCollectionPageActions = useCallback(() => {\n if (!collectionPageActions) {\n return;\n }\n\n const buildAction = (actionConfig: CollectionPageActionConfig) => {\n let actionToResolve: Partial<ResolvedAction> | null = null;\n\n const baseParams = {\n actionParams: {\n collectionId: actionConfig.collection.collectionId,\n },\n sdk,\n };\n\n switch (actionConfig.type) {\n case 'create':\n actionToResolve = createAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n case 'customModal':\n actionToResolve = customModalAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n case 'custom':\n actionToResolve = customAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n default:\n return null;\n }\n\n if (!actionToResolve) {\n return null;\n }\n\n const resolvedAction = resolveAction(actionConfig, actionToResolve);\n const { tooltip, icon, ...resolvedActionProps } = resolvedAction;\n\n return {\n ...resolvedActionProps,\n prefixIcon: icon as IconElement,\n disabledDescription: resolvedAction.tooltip,\n };\n };\n\n const handleActionsType = (\n actions: CollectionPagePrimaryActions | CollectionPageSecondaryActions,\n ) => {\n if (actions.type === 'single') {\n return buildAction(actions.single.item);\n }\n\n if (actions.type === 'multi') {\n const subItems = actions.multi.items\n .map(buildAction)\n .filter((action) => action !== null);\n if (!subItems.length) {\n return null;\n }\n\n return {\n label: actions.multi.label,\n prefixIcon: resolveIcon(actions.multi.icon) as IconElement,\n subItems,\n };\n }\n\n return null;\n };\n\n const primaryActions =\n collectionPageActions?.primaryActions &&\n handleActionsType(collectionPageActions.primaryActions);\n\n const secondaryActions =\n collectionPageActions?.secondaryActions &&\n handleActionsType(collectionPageActions.secondaryActions);\n\n if (!primaryActions && !secondaryActions) {\n return;\n }\n\n return {\n primaryActions: primaryActions ? (\n <PrimaryActions {...primaryActions} />\n ) : undefined,\n secondaryActions: secondaryActions ? (\n <SecondaryActions {...secondaryActions} />\n ) : undefined,\n };\n }, [collectionPageActions, sdk]);\n\n const actions = useMemo(() => {\n return {\n primaryActions: undefined,\n secondaryActions: undefined,\n };\n }, []);\n\n if (\n !collectionPageActions?.primaryActions &&\n !collectionPageActions?.secondaryActions\n ) {\n return { ...actions };\n }\n\n return buildCollectionPageActions() ?? { ...actions };\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_useActionsSDK","_actions","_patterns","_jsxFileName","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useCollectionPageActions","collectionPageActions","sdk","useActionsSDK","collectionId","buildCollectionPageActions","useCallback","buildAction","actionConfig","actionToResolve","baseParams","actionParams","collection","type","createAction","action","customModalAction","customAction","resolvedAction","resolveAction","tooltip","icon","resolvedActionProps","prefixIcon","disabledDescription","handleActionsType","actions","single","item","subItems","multi","items","map","filter","length","label","primaryActions","secondaryActions","createElement","PrimaryActions","_extends2","__self","__source","fileName","lineNumber","columnNumber","undefined","SecondaryActions","useMemo","exports"],"sources":["../../../src/hooks/useCollectionPageActions.tsx"],"sourcesContent":["import React, { useCallback, useMemo } from 'react';\nimport {\n CollectionPageActionConfig,\n CollectionPageConfig,\n CollectionPagePrimaryActions,\n CollectionPageSecondaryActions,\n ResolvedAction,\n} from '../types';\nimport { useActionsSDK } from './useActionsSDK';\nimport {\n createAction,\n customAction,\n customModalAction,\n resolveAction,\n} from '../utils/actions';\nimport { IconElement } from '@wix/design-system';\nimport { PrimaryActions, SecondaryActions } from '@wix/patterns';\n\nexport interface UseCollectionPageActionsParams {\n collectionPageActions: CollectionPageConfig['actions'];\n}\n\nexport const useCollectionPageActions = ({\n collectionPageActions,\n}: UseCollectionPageActionsParams) => {\n const sdk = useActionsSDK({\n collectionId: '',\n });\n\n const buildCollectionPageActions = useCallback(() => {\n if (!collectionPageActions) {\n return;\n }\n\n const buildAction = (actionConfig: CollectionPageActionConfig) => {\n let actionToResolve: Partial<ResolvedAction> | null = null;\n\n const baseParams = {\n actionParams: {\n collectionId: actionConfig.collection.collectionId,\n },\n sdk,\n };\n\n switch (actionConfig.type) {\n case 'create':\n actionToResolve = createAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n case 'customModal':\n actionToResolve = customModalAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n case 'custom':\n actionToResolve = customAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n default:\n return null;\n }\n\n if (!actionToResolve) {\n return null;\n }\n\n const resolvedAction = resolveAction(actionConfig, actionToResolve);\n const { tooltip, icon, ...resolvedActionProps } = resolvedAction;\n\n return {\n ...resolvedActionProps,\n prefixIcon: icon as IconElement,\n disabledDescription: resolvedAction.tooltip,\n };\n };\n\n const handleActionsType = (\n actions: CollectionPagePrimaryActions | CollectionPageSecondaryActions,\n ) => {\n if (actions.type === 'single') {\n return buildAction(actions.single.item);\n }\n\n if (actions.type === 'multi') {\n const subItems = actions.multi.items\n .map(buildAction)\n .filter((action) => action !== null);\n if (!subItems.length) {\n return null;\n }\n\n return {\n label: actions.multi.label,\n subItems,\n };\n }\n\n return null;\n };\n\n const primaryActions =\n collectionPageActions?.primaryActions &&\n handleActionsType(collectionPageActions.primaryActions);\n\n const secondaryActions =\n collectionPageActions?.secondaryActions &&\n handleActionsType(collectionPageActions.secondaryActions);\n\n if (!primaryActions && !secondaryActions) {\n return;\n }\n\n return {\n primaryActions: primaryActions ? (\n <PrimaryActions {...primaryActions} />\n ) : undefined,\n secondaryActions: secondaryActions ? (\n <SecondaryActions {...secondaryActions} />\n ) : undefined,\n };\n }, [collectionPageActions, sdk]);\n\n const actions = useMemo(() => {\n return {\n primaryActions: undefined,\n secondaryActions: undefined,\n };\n }, []);\n\n if (\n !collectionPageActions?.primaryActions &&\n !collectionPageActions?.secondaryActions\n ) {\n return { ...actions };\n }\n\n return buildCollectionPageActions() ?? { ...actions };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -18,7 +18,8 @@ const useColumns = columns => {
18
18
  } = (0, _providers.useSchemaRegistry)();
19
19
  const overrides = (0, _providers.usePatternsWizardOverridesContext)();
20
20
  const existingColumns = columns.filter(column => {
21
- return !!fields[column.id];
21
+ var _overrides$columns;
22
+ return !!fields[column.id] || (overrides == null || (_overrides$columns = overrides.columns) == null ? void 0 : _overrides$columns[column.id]);
22
23
  });
23
24
  const createRenderer = (fieldDefinition, itemValue) => {
24
25
  if (itemValue == null) {
@@ -114,24 +115,32 @@ const useColumns = columns => {
114
115
  }
115
116
  };
116
117
  return existingColumns.map(column => {
117
- var _fieldDefinition$capa;
118
+ var _overrides$columns2, _fieldDefinition$capa;
118
119
  const fieldDefinition = fields[column.id];
119
- if (!fieldDefinition) {
120
+ if (!fieldDefinition && !(overrides != null && (_overrides$columns2 = overrides.columns) != null && _overrides$columns2[column.id])) {
120
121
  return null;
121
122
  }
122
123
  const sortable = column.sortable && (fieldDefinition == null || (_fieldDefinition$capa = fieldDefinition.capabilities) == null ? void 0 : _fieldDefinition$capa.sortable);
123
124
  const baseColumnConfig = {
124
125
  id: column.id,
125
- title: column.name || fieldDefinition.displayName,
126
+ title: column.name || (fieldDefinition == null ? void 0 : fieldDefinition.displayName),
126
127
  width: column.width,
127
128
  ...createSortConfiguration(column, sortable),
128
129
  ...createCustomColumnConfiguration(column),
129
- render: item => {
130
- var _overrides$columns, _overrides$columns$ca;
131
- const itemValue = (0, _lodash.get)(item, column.id);
132
- return (overrides == null || (_overrides$columns = overrides.columns) == null || (_overrides$columns$ca = _overrides$columns[(0, _lodash.camelCase)(column.id)]) == null ? void 0 : _overrides$columns$ca.call(_overrides$columns, {
133
- value: itemValue
134
- })) ?? createRenderer(fieldDefinition, itemValue);
130
+ render: row => {
131
+ var _overrides$columns3;
132
+ const itemValue = (0, _lodash.get)(row, column.id);
133
+ if (overrides != null && (_overrides$columns3 = overrides.columns) != null && _overrides$columns3[(0, _lodash.camelCase)(column.id)]) {
134
+ var _overrides$columns4, _overrides$columns4$c;
135
+ return overrides == null || (_overrides$columns4 = overrides.columns) == null || (_overrides$columns4$c = _overrides$columns4[(0, _lodash.camelCase)(column.id)]) == null ? void 0 : _overrides$columns4$c.call(_overrides$columns4, {
136
+ value: itemValue,
137
+ row
138
+ });
139
+ }
140
+ if (fieldDefinition) {
141
+ return createRenderer(fieldDefinition, itemValue);
142
+ }
143
+ return null; // Shouldn't really happen
135
144
  }
136
145
  };
137
146
  return baseColumnConfig;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_providers","_lodash","_designSystem","_getImageUrl","_jsxFileName","useColumns","columns","fields","useSchema","getSchema","useSchemaRegistry","overrides","usePatternsWizardOverridesContext","existingColumns","filter","column","id","createRenderer","fieldDefinition","itemValue","type","Date","toLocaleDateString","date","toLocaleString","join","referenceMetadata","referencedCollectionId","refSchema","nameValue","imageValue","displayField","imageField","imageUrl","getImageUrl","default","createElement","Box","gap","verticalAlign","__self","__source","fileName","lineNumber","columnNumber","Avatar","size","name","imgProps","src","Image","width","dataHook","map","_fieldDefinition$capa","sortable","capabilities","baseColumnConfig","title","displayName","createSortConfiguration","createCustomColumnConfiguration","render","item","_overrides$columns","_overrides$columns$ca","get","camelCase","call","value","Boolean","exports","sortableColumnConfig","defaultSortOrder","sortMode","undefined","reorderDisabled","hiddenFromCustomColumnsSelection","hideable","defaultHidden"],"sources":["../../../src/hooks/useColumns.tsx"],"sourcesContent":["import React from 'react';\nimport { TableColumn } from '@wix/patterns';\nimport {\n usePatternsWizardOverridesContext,\n useSchema,\n useSchemaRegistry,\n} from '../providers';\nimport { Column, Field } from '../types';\nimport { camelCase, get } from 'lodash';\nimport { Avatar, Box, Image } from '@wix/design-system';\nimport { getImageUrl } from '../utils/media/getImageUrl';\n\nexport const useColumns = (columns: Column[]) => {\n const { fields } = useSchema();\n const { getSchema } = useSchemaRegistry();\n const overrides = usePatternsWizardOverridesContext();\n\n const existingColumns = columns.filter((column) => {\n return !!fields[column.id];\n });\n\n const createRenderer = (fieldDefinition: Field, itemValue: any) => {\n if (itemValue == null) {\n return '';\n }\n\n switch (fieldDefinition.type) {\n case 'BOOLEAN':\n return itemValue ? '✔' : '✖';\n case 'DATE':\n if (itemValue instanceof Date) {\n return itemValue.toLocaleDateString();\n }\n if (typeof itemValue === 'string') {\n const date = new Date(itemValue);\n return date.toLocaleDateString();\n }\n return itemValue;\n case 'DATETIME':\n if (itemValue instanceof Date) {\n return itemValue.toLocaleString();\n }\n if (typeof itemValue === 'string') {\n const date = new Date(itemValue);\n return date.toLocaleString();\n }\n return itemValue;\n case 'ARRAY':\n // We assume that the array contains strings\n // If the array contains objects, we need to handle it differently\n return itemValue.join(', ');\n case 'REFERENCE':\n if (fieldDefinition.referenceMetadata && getSchema) {\n const { referencedCollectionId } = fieldDefinition.referenceMetadata;\n const refSchema = getSchema(referencedCollectionId);\n\n if (refSchema) {\n let nameValue: string | undefined;\n let imageValue: string | undefined;\n const displayField = refSchema.displayField;\n if (typeof itemValue === 'object' && itemValue !== null) {\n nameValue = itemValue[displayField] || '';\n imageValue =\n refSchema.imageField && itemValue[refSchema.imageField];\n }\n\n const imageUrl = imageValue && getImageUrl(imageValue);\n return (\n <Box gap=\"SP2\" verticalAlign=\"middle\">\n {imageUrl && (\n <Avatar\n size=\"size24\"\n name={nameValue}\n imgProps={{ src: imageUrl }}\n />\n )}\n <div>{nameValue}</div>\n </Box>\n );\n }\n }\n\n return itemValue;\n case 'IMAGE':\n const imageUrl = getImageUrl(itemValue);\n\n return (\n <Image src={imageUrl} width=\"48px\" dataHook=\"auto-patterns-image\" />\n );\n default:\n return itemValue;\n }\n };\n\n return existingColumns\n .map((column) => {\n const fieldDefinition = fields[column.id];\n if (!fieldDefinition) {\n return null;\n }\n const sortable =\n column.sortable && fieldDefinition?.capabilities?.sortable;\n\n const baseColumnConfig = {\n id: column.id,\n title: column.name || fieldDefinition.displayName,\n width: column.width,\n ...createSortConfiguration(column, sortable),\n ...createCustomColumnConfiguration(column),\n render: (item: any) => {\n const itemValue = get(item, column.id);\n return (\n overrides?.columns?.[camelCase(column.id)]?.({\n value: itemValue,\n }) ?? createRenderer(fieldDefinition, itemValue)\n );\n },\n };\n\n return baseColumnConfig;\n })\n .filter(Boolean) as TableColumn<any>[];\n};\n\nconst createSortConfiguration = (\n column: Column,\n sortable?: boolean,\n): Partial<TableColumn<any>> => {\n if (!sortable) {\n return {};\n }\n const sortableColumnConfig = {\n sortable,\n defaultSortOrder: column.defaultSortOrder,\n };\n\n // default sort mode is ['asc', 'desc', undefined]\n // so if sort mode is 'desc' -> we want to override the default\n // and set it to ['desc', 'asc', undefined]\n if (column.sortMode && column.sortMode === 'desc') {\n return {\n ...sortableColumnConfig,\n sortMode: ['desc', 'asc', undefined],\n };\n }\n return {\n ...sortableColumnConfig,\n };\n};\n\nconst createCustomColumnConfiguration = (\n column: Column,\n): Partial<TableColumn<any>> => {\n const reorderDisabled = !!column.reorderDisabled;\n\n if (column.hiddenFromCustomColumnsSelection) {\n return { hiddenFromCustomColumnsSelection: true };\n }\n if (column.hideable === false) {\n return {\n hideable: false,\n reorderDisabled,\n };\n }\n return {\n defaultHidden: !!column.defaultHidden,\n reorderDisabled,\n };\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_providers","_lodash","_designSystem","_getImageUrl","_jsxFileName","useColumns","columns","fields","useSchema","getSchema","useSchemaRegistry","overrides","usePatternsWizardOverridesContext","existingColumns","filter","column","_overrides$columns","id","createRenderer","fieldDefinition","itemValue","type","Date","toLocaleDateString","date","toLocaleString","join","referenceMetadata","referencedCollectionId","refSchema","nameValue","imageValue","displayField","imageField","imageUrl","getImageUrl","default","createElement","Box","gap","verticalAlign","__self","__source","fileName","lineNumber","columnNumber","Avatar","size","name","imgProps","src","Image","width","dataHook","map","_overrides$columns2","_fieldDefinition$capa","sortable","capabilities","baseColumnConfig","title","displayName","createSortConfiguration","createCustomColumnConfiguration","render","row","_overrides$columns3","get","camelCase","_overrides$columns4","_overrides$columns4$c","call","value","Boolean","exports","sortableColumnConfig","defaultSortOrder","sortMode","undefined","reorderDisabled","hiddenFromCustomColumnsSelection","hideable","defaultHidden"],"sources":["../../../src/hooks/useColumns.tsx"],"sourcesContent":["import React from 'react';\nimport { TableColumn } from '@wix/patterns';\nimport {\n usePatternsWizardOverridesContext,\n useSchema,\n useSchemaRegistry,\n} from '../providers';\nimport { Column, Field } from '../types';\nimport { camelCase, get } from 'lodash';\nimport { Avatar, Box, Image } from '@wix/design-system';\nimport { getImageUrl } from '../utils/media/getImageUrl';\n\nexport const useColumns = (columns: Column[]) => {\n const { fields } = useSchema();\n const { getSchema } = useSchemaRegistry();\n const overrides = usePatternsWizardOverridesContext();\n\n const existingColumns = columns.filter((column) => {\n return !!fields[column.id] || overrides?.columns?.[column.id];\n });\n\n const createRenderer = (fieldDefinition: Field, itemValue: any) => {\n if (itemValue == null) {\n return '';\n }\n\n switch (fieldDefinition.type) {\n case 'BOOLEAN':\n return itemValue ? '✔' : '✖';\n case 'DATE':\n if (itemValue instanceof Date) {\n return itemValue.toLocaleDateString();\n }\n if (typeof itemValue === 'string') {\n const date = new Date(itemValue);\n return date.toLocaleDateString();\n }\n return itemValue;\n case 'DATETIME':\n if (itemValue instanceof Date) {\n return itemValue.toLocaleString();\n }\n if (typeof itemValue === 'string') {\n const date = new Date(itemValue);\n return date.toLocaleString();\n }\n return itemValue;\n case 'ARRAY':\n // We assume that the array contains strings\n // If the array contains objects, we need to handle it differently\n return itemValue.join(', ');\n case 'REFERENCE':\n if (fieldDefinition.referenceMetadata && getSchema) {\n const { referencedCollectionId } = fieldDefinition.referenceMetadata;\n const refSchema = getSchema(referencedCollectionId);\n\n if (refSchema) {\n let nameValue: string | undefined;\n let imageValue: string | undefined;\n const displayField = refSchema.displayField;\n if (typeof itemValue === 'object' && itemValue !== null) {\n nameValue = itemValue[displayField] || '';\n imageValue =\n refSchema.imageField && itemValue[refSchema.imageField];\n }\n\n const imageUrl = imageValue && getImageUrl(imageValue);\n return (\n <Box gap=\"SP2\" verticalAlign=\"middle\">\n {imageUrl && (\n <Avatar\n size=\"size24\"\n name={nameValue}\n imgProps={{ src: imageUrl }}\n />\n )}\n <div>{nameValue}</div>\n </Box>\n );\n }\n }\n\n return itemValue;\n case 'IMAGE':\n const imageUrl = getImageUrl(itemValue);\n\n return (\n <Image src={imageUrl} width=\"48px\" dataHook=\"auto-patterns-image\" />\n );\n default:\n return itemValue;\n }\n };\n\n return existingColumns\n .map((column) => {\n const fieldDefinition = fields[column.id];\n if (!fieldDefinition && !overrides?.columns?.[column.id]) {\n return null;\n }\n\n const sortable =\n column.sortable && fieldDefinition?.capabilities?.sortable;\n\n const baseColumnConfig = {\n id: column.id,\n title: column.name || fieldDefinition?.displayName,\n width: column.width,\n ...createSortConfiguration(column, sortable),\n ...createCustomColumnConfiguration(column),\n render: (row: any) => {\n const itemValue = get(row, column.id);\n\n if (overrides?.columns?.[camelCase(column.id)]) {\n return overrides?.columns?.[camelCase(column.id)]?.({\n value: itemValue,\n row,\n });\n }\n\n if (fieldDefinition) {\n return createRenderer(fieldDefinition, itemValue);\n }\n\n return null; // Shouldn't really happen\n },\n };\n\n return baseColumnConfig;\n })\n .filter(Boolean) as TableColumn<any>[];\n};\n\nconst createSortConfiguration = (\n column: Column,\n sortable?: boolean,\n): Partial<TableColumn<any>> => {\n if (!sortable) {\n return {};\n }\n const sortableColumnConfig = {\n sortable,\n defaultSortOrder: column.defaultSortOrder,\n };\n\n // default sort mode is ['asc', 'desc', undefined]\n // so if sort mode is 'desc' -> we want to override the default\n // and set it to ['desc', 'asc', undefined]\n if (column.sortMode && column.sortMode === 'desc') {\n return {\n ...sortableColumnConfig,\n sortMode: ['desc', 'asc', undefined],\n };\n }\n return {\n ...sortableColumnConfig,\n };\n};\n\nconst createCustomColumnConfiguration = (\n column: Column,\n): Partial<TableColumn<any>> => {\n const reorderDisabled = !!column.reorderDisabled;\n\n if (column.hiddenFromCustomColumnsSelection) {\n return { hiddenFromCustomColumnsSelection: true };\n }\n if (column.hideable === false) {\n return {\n hideable: false,\n reorderDisabled,\n };\n }\n return {\n defaultHidden: !!column.defaultHidden,\n reorderDisabled,\n };\n};\n"],"mappings":"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","ignoreList":[]}