@wix/auto-patterns 1.24.0 → 1.25.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 (58) hide show
  1. package/dist/cjs/components/AutoPatternsEntityPage/ViewModeEntityPage.js +13 -11
  2. package/dist/cjs/components/AutoPatternsEntityPage/ViewModeEntityPage.js.map +1 -1
  3. package/dist/cjs/dataSourceAdapters/cms/cmsAdapter.js +2 -1
  4. package/dist/cjs/dataSourceAdapters/cms/cmsAdapter.js.map +1 -1
  5. package/dist/cjs/hooks/useActionCell.js +2 -1
  6. package/dist/cjs/hooks/useActionCell.js.map +1 -1
  7. package/dist/cjs/hooks/useBulkActionToolbar.js +2 -1
  8. package/dist/cjs/hooks/useBulkActionToolbar.js.map +1 -1
  9. package/dist/cjs/hooks/useCollectionPageActions.js +2 -1
  10. package/dist/cjs/hooks/useCollectionPageActions.js.map +1 -1
  11. package/dist/cjs/hooks/useEntityPageActions.js +2 -1
  12. package/dist/cjs/hooks/useEntityPageActions.js.map +1 -1
  13. package/dist/cjs/hooks/useEntityPageMoreActions.js +1 -1
  14. package/dist/cjs/hooks/useEntityPageMoreActions.js.map +1 -1
  15. package/dist/cjs/providers/ErrorContext.js +6 -3
  16. package/dist/cjs/providers/ErrorContext.js.map +1 -1
  17. package/dist/cjs/providers/PatternsWizardOverridesContext.js +1 -1
  18. package/dist/cjs/providers/PatternsWizardOverridesContext.js.map +1 -1
  19. package/dist/cjs/types/actions/actionCell.js.map +1 -1
  20. package/dist/cjs/utils/actions/types.js.map +1 -1
  21. package/dist/docs/action_cell.md +5 -4
  22. package/dist/docs/auto-patterns-guide.md +6 -4
  23. package/dist/docs/bulk_actions.md +1 -0
  24. package/dist/esm/components/AutoPatternsEntityPage/ViewModeEntityPage.js +2 -0
  25. package/dist/esm/components/AutoPatternsEntityPage/ViewModeEntityPage.js.map +1 -1
  26. package/dist/esm/dataSourceAdapters/cms/cmsAdapter.js +2 -1
  27. package/dist/esm/dataSourceAdapters/cms/cmsAdapter.js.map +1 -1
  28. package/dist/esm/hooks/useActionCell.js +2 -1
  29. package/dist/esm/hooks/useActionCell.js.map +1 -1
  30. package/dist/esm/hooks/useBulkActionToolbar.js +2 -1
  31. package/dist/esm/hooks/useBulkActionToolbar.js.map +1 -1
  32. package/dist/esm/hooks/useCollectionPageActions.js +2 -1
  33. package/dist/esm/hooks/useCollectionPageActions.js.map +1 -1
  34. package/dist/esm/hooks/useEntityPageActions.js +2 -1
  35. package/dist/esm/hooks/useEntityPageActions.js.map +1 -1
  36. package/dist/esm/hooks/useEntityPageMoreActions.js +1 -1
  37. package/dist/esm/hooks/useEntityPageMoreActions.js.map +1 -1
  38. package/dist/esm/providers/ErrorContext.js +4 -1
  39. package/dist/esm/providers/ErrorContext.js.map +1 -1
  40. package/dist/esm/providers/PatternsWizardOverridesContext.js.map +1 -1
  41. package/dist/esm/types/actions/actionCell.js.map +1 -1
  42. package/dist/esm/utils/actions/types.js.map +1 -1
  43. package/dist/types/components/AutoPatternsEntityPage/ViewModeEntityPage.d.ts.map +1 -1
  44. package/dist/types/dataSourceAdapters/cms/cmsAdapter.d.ts.map +1 -1
  45. package/dist/types/hooks/useActionCell.d.ts.map +1 -1
  46. package/dist/types/providers/ErrorContext.d.ts +7 -0
  47. package/dist/types/providers/ErrorContext.d.ts.map +1 -1
  48. package/dist/types/providers/PatternsWizardOverridesContext.d.ts +2 -2
  49. package/dist/types/providers/PatternsWizardOverridesContext.d.ts.map +1 -1
  50. package/dist/types/types/actions/actionCell.d.ts +7 -1
  51. package/dist/types/types/actions/actionCell.d.ts.map +1 -1
  52. package/dist/types/utils/actions/customAction.d.ts +1 -1
  53. package/dist/types/utils/actions/customAction.d.ts.map +1 -1
  54. package/dist/types/utils/actions/resolveAction.d.ts +1 -0
  55. package/dist/types/utils/actions/resolveAction.d.ts.map +1 -1
  56. package/dist/types/utils/actions/types.d.ts +1 -0
  57. package/dist/types/utils/actions/types.d.ts.map +1 -1
  58. package/package.json +13 -12
@@ -83,12 +83,13 @@ const ViewModeEntityPage = ({
83
83
  columnNumber: 5
84
84
  }
85
85
  }, /*#__PURE__*/_react.default.createElement(_designSystem.Page.Header, {
86
+ dataHook: "view-mode-entity-page-header",
86
87
  title: /*#__PURE__*/_react.default.createElement(_designSystem.Heading, {
87
88
  size: "extraLarge",
88
89
  __self: void 0,
89
90
  __source: {
90
91
  fileName: _jsxFileName,
91
- lineNumber: 84,
92
+ lineNumber: 85,
92
93
  columnNumber: 16
93
94
  }
94
95
  }, title),
@@ -100,15 +101,16 @@ const ViewModeEntityPage = ({
100
101
  __self: void 0,
101
102
  __source: {
102
103
  fileName: _jsxFileName,
103
- lineNumber: 91,
104
+ lineNumber: 92,
104
105
  columnNumber: 11
105
106
  }
106
107
  }, resolvedMoreActions.length > 0 ? /*#__PURE__*/_react.default.createElement(_patterns.MoreActions, {
108
+ dataHook: "view-mode-entity-page-more-actions",
107
109
  items: resolvedMoreActions,
108
110
  __self: void 0,
109
111
  __source: {
110
112
  fileName: _jsxFileName,
111
- lineNumber: 93,
113
+ lineNumber: 94,
112
114
  columnNumber: 15
113
115
  }
114
116
  }) : undefined, actions),
@@ -122,14 +124,14 @@ const ViewModeEntityPage = ({
122
124
  __self: void 0,
123
125
  __source: {
124
126
  fileName: _jsxFileName,
125
- lineNumber: 99,
127
+ lineNumber: 103,
126
128
  columnNumber: 7
127
129
  }
128
130
  }, /*#__PURE__*/_react.default.createElement(_designSystem.Layout, {
129
131
  __self: void 0,
130
132
  __source: {
131
133
  fileName: _jsxFileName,
132
- lineNumber: 100,
134
+ lineNumber: 104,
133
135
  columnNumber: 9
134
136
  }
135
137
  }, /*#__PURE__*/_react.default.createElement(_designSystem.Cell, {
@@ -137,7 +139,7 @@ const ViewModeEntityPage = ({
137
139
  __self: void 0,
138
140
  __source: {
139
141
  fileName: _jsxFileName,
140
- lineNumber: 101,
142
+ lineNumber: 105,
141
143
  columnNumber: 11
142
144
  }
143
145
  }, /*#__PURE__*/_react.default.createElement(_designSystem.Box, {
@@ -146,7 +148,7 @@ const ViewModeEntityPage = ({
146
148
  __self: void 0,
147
149
  __source: {
148
150
  fileName: _jsxFileName,
149
- lineNumber: 102,
151
+ lineNumber: 106,
150
152
  columnNumber: 13
151
153
  }
152
154
  }, pageLayout == null || (_pageLayout$main = pageLayout.main) == null ? void 0 : _pageLayout$main.map((layout, layoutIndex) => /*#__PURE__*/_react.default.createElement(_RenderViewLayoutCard.RenderViewLayoutCard, {
@@ -158,7 +160,7 @@ const ViewModeEntityPage = ({
158
160
  __self: void 0,
159
161
  __source: {
160
162
  fileName: _jsxFileName,
161
- lineNumber: 104,
163
+ lineNumber: 108,
162
164
  columnNumber: 17
163
165
  }
164
166
  })))), pageLayout != null && pageLayout.sidebar ? /*#__PURE__*/_react.default.createElement(_designSystem.Cell, {
@@ -166,7 +168,7 @@ const ViewModeEntityPage = ({
166
168
  __self: void 0,
167
169
  __source: {
168
170
  fileName: _jsxFileName,
169
- lineNumber: 115,
171
+ lineNumber: 119,
170
172
  columnNumber: 13
171
173
  }
172
174
  }, /*#__PURE__*/_react.default.createElement(_designSystem.Box, {
@@ -175,7 +177,7 @@ const ViewModeEntityPage = ({
175
177
  __self: void 0,
176
178
  __source: {
177
179
  fileName: _jsxFileName,
178
- lineNumber: 116,
180
+ lineNumber: 120,
179
181
  columnNumber: 15
180
182
  }
181
183
  }, (_pageLayout$sidebar = pageLayout.sidebar) == null ? void 0 : _pageLayout$sidebar.map((layout, layoutIndex) => /*#__PURE__*/_react.default.createElement(_RenderViewLayoutCard.RenderViewLayoutCard, {
@@ -187,7 +189,7 @@ const ViewModeEntityPage = ({
187
189
  __self: void 0,
188
190
  __source: {
189
191
  fileName: _jsxFileName,
190
- lineNumber: 118,
192
+ lineNumber: 122,
191
193
  columnNumber: 19
192
194
  }
193
195
  })))) : null)));
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_designSystem","_RenderViewLayoutCard","_reactRouterDom","_providers","_useNavigationUtils","_patterns","_useEntityPageActions","_useEntityPageMoreActions","_useActionsSDK","_useNavigateEditEntityAction","_jsxFileName","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ViewModeEntityPage","configuration","_configuration$subtit","_pageLayout$main","_pageLayout$sidebar","route","params","useParams","entityId","id","schema","useSchema","layout","pageLayout","navigateToCollectionPage","useNavigation","entity","setEntity","useState","undefined","useEffect","isMounted","fetchEntity","fetchedEntity","actions","title","useMemo","text","displayField","subtitle","sdk","useActionsSDK","collectionId","useEntityPageActions","entityPageActions","moreActions","useNavigateEditEntityAction","displayName","resolvedMoreActions","useEntityPageMoreActions","createElement","Page","dataHook","__self","__source","fileName","lineNumber","columnNumber","Header","Heading","size","showBackButton","onBackClicked","parentPageId","actionsBar","Box","gap","length","MoreActions","items","Content","Layout","Cell","span","sidebar","direction","main","map","layoutIndex","RenderViewLayoutCard","key","sectionId","cardIndex","exports"],"sources":["../../../../src/components/AutoPatternsEntityPage/ViewModeEntityPage.tsx"],"sourcesContent":["import React, { useEffect, useMemo, useState } from 'react';\nimport { ViewEntityPageConfig } from '../../types';\nimport { Box, Cell, Heading, Layout, Page } from '@wix/design-system';\nimport { RenderViewLayoutCard } from './ViewEntityPage/RenderViewLayoutCard';\nimport { useParams } from 'react-router-dom';\nimport { useSchema } from '../../providers';\nimport { useNavigation } from '../../hooks/useNavigationUtils';\nimport { MoreActions } from '@wix/patterns';\nimport { useEntityPageActions } from '../../hooks/useEntityPageActions';\nimport { useEntityPageMoreActions } from '../../hooks/useEntityPageMoreActions';\nimport { useActionsSDK } from '../../hooks/useActionsSDK';\nimport { useNavigateEditEntityAction } from '../../hooks/useNavigateEditEntityAction';\n\ninterface ViewModeEntityPageProps {\n configuration: ViewEntityPageConfig;\n}\n\n// TODO: temp solution until we have a proper view mode entity page\nexport const ViewModeEntityPage: React.FC<ViewModeEntityPageProps> = ({\n configuration,\n}) => {\n const { route } = configuration;\n const params = useParams();\n const entityId = params[route.params.id];\n const schema = useSchema();\n const { layout: pageLayout } = configuration;\n const { navigateToCollectionPage } = useNavigation();\n\n const [entity, setEntity] = useState<any>(undefined);\n\n useEffect(() => {\n let isMounted = true;\n const fetchEntity = async () => {\n if (!entityId) {\n setEntity(undefined);\n return;\n }\n const fetchedEntity = await schema.actions.get(entityId);\n if (isMounted) {\n setEntity(fetchedEntity);\n }\n };\n fetchEntity();\n return () => {\n isMounted = false;\n };\n }, [entityId, schema]);\n\n const title = useMemo(() => {\n if (configuration.title) {\n return configuration.title.text;\n } else {\n return entity?.[schema.displayField] ?? 'View Item';\n }\n }, [configuration.title, entity, schema.displayField]);\n\n const subtitle = configuration.subtitle?.text;\n\n const sdk = useActionsSDK({\n collectionId: configuration.collectionId,\n });\n\n const actions = useEntityPageActions({\n entityPageActions: configuration.actions,\n entity,\n sdk,\n });\n\n // add OOTB navigate to edit action\n const moreActions = useNavigateEditEntityAction({\n displayName: entity?.[schema.displayField],\n configuration,\n });\n\n const resolvedMoreActions = useEntityPageMoreActions(\n moreActions,\n entity,\n sdk,\n );\n\n return (\n <Page dataHook=\"view-mode-entity-page\">\n <Page.Header\n title={<Heading size=\"extraLarge\">{title}</Heading>}\n subtitle={subtitle}\n showBackButton\n onBackClicked={() =>\n navigateToCollectionPage(configuration.parentPageId!)\n }\n actionsBar={\n <Box gap=\"SP2\">\n {resolvedMoreActions.length > 0 ? (\n <MoreActions items={resolvedMoreActions} />\n ) : undefined}\n {actions}\n </Box>\n }\n />\n <Page.Content>\n <Layout>\n <Cell span={pageLayout?.sidebar ? 8 : 12}>\n <Box direction=\"vertical\" gap=\"SP4\">\n {pageLayout?.main?.map((layout, layoutIndex) => (\n <RenderViewLayoutCard\n key={`main-section-card-${layoutIndex}`}\n entity={entity}\n layout={layout}\n sectionId=\"main\"\n cardIndex={layoutIndex}\n />\n ))}\n </Box>\n </Cell>\n {pageLayout?.sidebar ? (\n <Cell span={4}>\n <Box direction=\"vertical\" gap=\"SP4\">\n {pageLayout.sidebar?.map((layout, layoutIndex) => (\n <RenderViewLayoutCard\n key={`sidebar-section-card-${layoutIndex}`}\n entity={entity}\n layout={layout}\n sectionId=\"sidebar\"\n cardIndex={layoutIndex}\n />\n ))}\n </Box>\n </Cell>\n ) : null}\n </Layout>\n </Page.Content>\n </Page>\n );\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_designSystem","_RenderViewLayoutCard","_reactRouterDom","_providers","_useNavigationUtils","_patterns","_useEntityPageActions","_useEntityPageMoreActions","_useActionsSDK","_useNavigateEditEntityAction","_jsxFileName","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ViewModeEntityPage","configuration","_configuration$subtit","_pageLayout$main","_pageLayout$sidebar","route","params","useParams","entityId","id","schema","useSchema","layout","pageLayout","navigateToCollectionPage","useNavigation","entity","setEntity","useState","undefined","useEffect","isMounted","fetchEntity","fetchedEntity","actions","title","useMemo","text","displayField","subtitle","sdk","useActionsSDK","collectionId","useEntityPageActions","entityPageActions","moreActions","useNavigateEditEntityAction","displayName","resolvedMoreActions","useEntityPageMoreActions","createElement","Page","dataHook","__self","__source","fileName","lineNumber","columnNumber","Header","Heading","size","showBackButton","onBackClicked","parentPageId","actionsBar","Box","gap","length","MoreActions","items","Content","Layout","Cell","span","sidebar","direction","main","map","layoutIndex","RenderViewLayoutCard","key","sectionId","cardIndex","exports"],"sources":["../../../../src/components/AutoPatternsEntityPage/ViewModeEntityPage.tsx"],"sourcesContent":["import React, { useEffect, useMemo, useState } from 'react';\nimport { ViewEntityPageConfig } from '../../types';\nimport { Box, Cell, Heading, Layout, Page } from '@wix/design-system';\nimport { RenderViewLayoutCard } from './ViewEntityPage/RenderViewLayoutCard';\nimport { useParams } from 'react-router-dom';\nimport { useSchema } from '../../providers';\nimport { useNavigation } from '../../hooks/useNavigationUtils';\nimport { MoreActions } from '@wix/patterns';\nimport { useEntityPageActions } from '../../hooks/useEntityPageActions';\nimport { useEntityPageMoreActions } from '../../hooks/useEntityPageMoreActions';\nimport { useActionsSDK } from '../../hooks/useActionsSDK';\nimport { useNavigateEditEntityAction } from '../../hooks/useNavigateEditEntityAction';\n\ninterface ViewModeEntityPageProps {\n configuration: ViewEntityPageConfig;\n}\n\n// TODO: temp solution until we have a proper view mode entity page\nexport const ViewModeEntityPage: React.FC<ViewModeEntityPageProps> = ({\n configuration,\n}) => {\n const { route } = configuration;\n const params = useParams();\n const entityId = params[route.params.id];\n const schema = useSchema();\n const { layout: pageLayout } = configuration;\n const { navigateToCollectionPage } = useNavigation();\n\n const [entity, setEntity] = useState<any>(undefined);\n\n useEffect(() => {\n let isMounted = true;\n const fetchEntity = async () => {\n if (!entityId) {\n setEntity(undefined);\n return;\n }\n const fetchedEntity = await schema.actions.get(entityId);\n if (isMounted) {\n setEntity(fetchedEntity);\n }\n };\n fetchEntity();\n return () => {\n isMounted = false;\n };\n }, [entityId, schema]);\n\n const title = useMemo(() => {\n if (configuration.title) {\n return configuration.title.text;\n } else {\n return entity?.[schema.displayField] ?? 'View Item';\n }\n }, [configuration.title, entity, schema.displayField]);\n\n const subtitle = configuration.subtitle?.text;\n\n const sdk = useActionsSDK({\n collectionId: configuration.collectionId,\n });\n\n const actions = useEntityPageActions({\n entityPageActions: configuration.actions,\n entity,\n sdk,\n });\n\n // add OOTB navigate to edit action\n const moreActions = useNavigateEditEntityAction({\n displayName: entity?.[schema.displayField],\n configuration,\n });\n\n const resolvedMoreActions = useEntityPageMoreActions(\n moreActions,\n entity,\n sdk,\n );\n\n return (\n <Page dataHook=\"view-mode-entity-page\">\n <Page.Header\n dataHook=\"view-mode-entity-page-header\"\n title={<Heading size=\"extraLarge\">{title}</Heading>}\n subtitle={subtitle}\n showBackButton\n onBackClicked={() =>\n navigateToCollectionPage(configuration.parentPageId!)\n }\n actionsBar={\n <Box gap=\"SP2\">\n {resolvedMoreActions.length > 0 ? (\n <MoreActions\n dataHook=\"view-mode-entity-page-more-actions\"\n items={resolvedMoreActions}\n />\n ) : undefined}\n {actions}\n </Box>\n }\n />\n <Page.Content>\n <Layout>\n <Cell span={pageLayout?.sidebar ? 8 : 12}>\n <Box direction=\"vertical\" gap=\"SP4\">\n {pageLayout?.main?.map((layout, layoutIndex) => (\n <RenderViewLayoutCard\n key={`main-section-card-${layoutIndex}`}\n entity={entity}\n layout={layout}\n sectionId=\"main\"\n cardIndex={layoutIndex}\n />\n ))}\n </Box>\n </Cell>\n {pageLayout?.sidebar ? (\n <Cell span={4}>\n <Box direction=\"vertical\" gap=\"SP4\">\n {pageLayout.sidebar?.map((layout, layoutIndex) => (\n <RenderViewLayoutCard\n key={`sidebar-section-card-${layoutIndex}`}\n entity={entity}\n layout={layout}\n sectionId=\"sidebar\"\n cardIndex={layoutIndex}\n />\n ))}\n </Box>\n </Cell>\n ) : null}\n </Layout>\n </Page.Content>\n </Page>\n );\n};\n"],"mappings":"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","ignoreList":[]}
@@ -5,6 +5,7 @@ exports.CmsFieldTypeToPatternsFieldType = void 0;
5
5
  exports.fetchCmsSchema = fetchCmsSchema;
6
6
  var _data = require("@wix/data");
7
7
  var _fetchCmsData = require("./fetchCmsData");
8
+ var _essentials = require("@wix/essentials");
8
9
  const CmsFieldTypeToPatternsFieldType = exports.CmsFieldTypeToPatternsFieldType = {
9
10
  [_data.collections.Type.TEXT]: 'SHORT_TEXT',
10
11
  [_data.collections.Type.DATE]: 'DATE',
@@ -22,7 +23,7 @@ const CmsFieldTypeToPatternsFieldType = exports.CmsFieldTypeToPatternsFieldType
22
23
  [_data.collections.Type.IMAGE]: 'IMAGE'
23
24
  };
24
25
  async function fetchCmsSchema(collectionId) {
25
- const schema = await _data.collections.getDataCollection(collectionId);
26
+ const schema = await _essentials.errorHandler.withErrorHandler(async () => _data.collections.getDataCollection(collectionId), {});
26
27
  const transformedFields = schema.fields.reduce((acc, field) => {
27
28
  var _field$capabilities, _field$capabilities2, _field$typeMetadata;
28
29
  if (!field.key) {
@@ -1 +1 @@
1
- {"version":3,"names":["_data","require","_fetchCmsData","CmsFieldTypeToPatternsFieldType","exports","collections","Type","TEXT","DATE","DATETIME","NUMBER","BOOLEAN","URL","ADDRESS","OBJECT","RICH_TEXT","RICH_CONTENT","ARRAY","ARRAY_STRING","REFERENCE","IMAGE","fetchCmsSchema","collectionId","schema","getDataCollection","transformedFields","fields","reduce","acc","field","_field$capabilities","_field$capabilities2","_field$typeMetadata","key","fieldType","type","baseField","id","displayName","validation","numberRange","min","undefined","max","stringLengthRange","minLength","maxLength","required","capabilities","supportedQueryOperators","queryOperators","sortable","typeMetadata","reference","referencedCollectionId","referenceField","referenceMetadata","nonReferenceType","nonReferenceField","schemaConfig","displayField","idField","actions","get","entityId","items","create","entity","insert","update","delete","remove","bulkDelete","entityIds","bulkRemove","find","query","options","fetchCmsData"],"sources":["../../../../src/dataSourceAdapters/cms/cmsAdapter.ts"],"sourcesContent":["import { Field, SchemaConfig, PatternsFieldType } from '../../types';\nimport { collections, items } from '@wix/data';\nimport { fetchCmsData } from './fetchCmsData';\n\nexport const CmsFieldTypeToPatternsFieldType: Partial<\n Record<collections.Type, PatternsFieldType>\n> = {\n [collections.Type.TEXT]: 'SHORT_TEXT',\n [collections.Type.DATE]: 'DATE',\n [collections.Type.DATETIME]: 'DATETIME',\n [collections.Type.NUMBER]: 'NUMBER',\n [collections.Type.BOOLEAN]: 'BOOLEAN',\n [collections.Type.URL]: 'URL',\n [collections.Type.ADDRESS]: 'SHORT_TEXT',\n [collections.Type.OBJECT]: 'LONG_TEXT',\n [collections.Type.RICH_TEXT]: 'LONG_TEXT',\n [collections.Type.RICH_CONTENT]: 'SHORT_TEXT',\n [collections.Type.ARRAY]: 'ARRAY',\n [collections.Type.ARRAY_STRING]: 'ARRAY',\n [collections.Type.REFERENCE]: 'REFERENCE',\n [collections.Type.IMAGE]: 'IMAGE',\n};\n\nexport async function fetchCmsSchema(\n collectionId: string,\n): Promise<SchemaConfig> {\n const schema = await collections.getDataCollection(collectionId);\n\n const transformedFields = schema.fields.reduce<Record<string, Field>>(\n (acc, field) => {\n if (!field.key) {\n return acc;\n }\n\n const fieldType = field.type\n ? CmsFieldTypeToPatternsFieldType[field.type] || 'SHORT_TEXT'\n : 'SHORT_TEXT';\n const baseField = {\n id: field.key,\n displayName: field.displayName || '',\n validation: {\n numberRange: field.numberRange\n ? {\n min: field.numberRange.min ?? undefined,\n max: field.numberRange.max ?? undefined,\n }\n : undefined,\n stringLengthRange: field.stringLengthRange\n ? {\n minLength: field.stringLengthRange.minLength ?? undefined,\n maxLength: field.stringLengthRange.maxLength ?? undefined,\n }\n : undefined,\n required: field.required ?? false,\n },\n capabilities: {\n supportedQueryOperators: field.capabilities?.queryOperators || [],\n sortable: field.capabilities?.sortable || false,\n },\n };\n\n if (\n fieldType === 'REFERENCE' &&\n field.typeMetadata?.reference?.referencedCollectionId\n ) {\n const referenceField: Field = {\n ...baseField,\n type: 'REFERENCE',\n referenceMetadata: {\n referencedCollectionId:\n field.typeMetadata.reference.referencedCollectionId,\n },\n };\n acc[field.key] = referenceField;\n } else {\n const nonReferenceType =\n fieldType === 'REFERENCE' ? 'SHORT_TEXT' : fieldType;\n const nonReferenceField: Field = {\n ...baseField,\n type: nonReferenceType,\n };\n acc[field.key] = nonReferenceField;\n }\n\n return acc;\n },\n {},\n );\n\n const schemaConfig: SchemaConfig = {\n id: collectionId,\n displayField: schema.displayField ?? '_id',\n idField: '_id',\n fields: transformedFields,\n actions: {\n get: (entityId: string) => {\n return items.get(collectionId, entityId);\n },\n create: (entity) => {\n return items.insert(collectionId, entity);\n },\n update: (entity) => {\n return items.update(collectionId, entity);\n },\n delete: (entityId) => {\n return items.remove(collectionId, entityId);\n },\n bulkDelete: (entityIds) => {\n return items.bulkRemove(collectionId, entityIds);\n },\n find: async (\n query,\n options: {\n searchableFieldIds?: string[];\n filterFieldMapping?: Record<string, { fieldId: string }>;\n } = {},\n ) => {\n return fetchCmsData(collectionId, query, transformedFields, options);\n },\n },\n };\n\n return schemaConfig;\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_data","require","_fetchCmsData","_essentials","CmsFieldTypeToPatternsFieldType","exports","collections","Type","TEXT","DATE","DATETIME","NUMBER","BOOLEAN","URL","ADDRESS","OBJECT","RICH_TEXT","RICH_CONTENT","ARRAY","ARRAY_STRING","REFERENCE","IMAGE","fetchCmsSchema","collectionId","schema","errorHandler","withErrorHandler","getDataCollection","transformedFields","fields","reduce","acc","field","_field$capabilities","_field$capabilities2","_field$typeMetadata","key","fieldType","type","baseField","id","displayName","validation","numberRange","min","undefined","max","stringLengthRange","minLength","maxLength","required","capabilities","supportedQueryOperators","queryOperators","sortable","typeMetadata","reference","referencedCollectionId","referenceField","referenceMetadata","nonReferenceType","nonReferenceField","schemaConfig","displayField","idField","actions","get","entityId","items","create","entity","insert","update","delete","remove","bulkDelete","entityIds","bulkRemove","find","query","options","fetchCmsData"],"sources":["../../../../src/dataSourceAdapters/cms/cmsAdapter.ts"],"sourcesContent":["import { Field, SchemaConfig, PatternsFieldType } from '../../types';\nimport { collections, items } from '@wix/data';\nimport { fetchCmsData } from './fetchCmsData';\nimport { errorHandler } from '@wix/essentials';\n\nexport const CmsFieldTypeToPatternsFieldType: Partial<\n Record<collections.Type, PatternsFieldType>\n> = {\n [collections.Type.TEXT]: 'SHORT_TEXT',\n [collections.Type.DATE]: 'DATE',\n [collections.Type.DATETIME]: 'DATETIME',\n [collections.Type.NUMBER]: 'NUMBER',\n [collections.Type.BOOLEAN]: 'BOOLEAN',\n [collections.Type.URL]: 'URL',\n [collections.Type.ADDRESS]: 'SHORT_TEXT',\n [collections.Type.OBJECT]: 'LONG_TEXT',\n [collections.Type.RICH_TEXT]: 'LONG_TEXT',\n [collections.Type.RICH_CONTENT]: 'SHORT_TEXT',\n [collections.Type.ARRAY]: 'ARRAY',\n [collections.Type.ARRAY_STRING]: 'ARRAY',\n [collections.Type.REFERENCE]: 'REFERENCE',\n [collections.Type.IMAGE]: 'IMAGE',\n};\n\nexport async function fetchCmsSchema(\n collectionId: string,\n): Promise<SchemaConfig> {\n const schema = await errorHandler.withErrorHandler(\n async () => collections.getDataCollection(collectionId),\n {},\n );\n const transformedFields = schema.fields.reduce<Record<string, Field>>(\n (acc, field) => {\n if (!field.key) {\n return acc;\n }\n\n const fieldType = field.type\n ? CmsFieldTypeToPatternsFieldType[field.type] || 'SHORT_TEXT'\n : 'SHORT_TEXT';\n const baseField = {\n id: field.key,\n displayName: field.displayName || '',\n validation: {\n numberRange: field.numberRange\n ? {\n min: field.numberRange.min ?? undefined,\n max: field.numberRange.max ?? undefined,\n }\n : undefined,\n stringLengthRange: field.stringLengthRange\n ? {\n minLength: field.stringLengthRange.minLength ?? undefined,\n maxLength: field.stringLengthRange.maxLength ?? undefined,\n }\n : undefined,\n required: field.required ?? false,\n },\n capabilities: {\n supportedQueryOperators: field.capabilities?.queryOperators || [],\n sortable: field.capabilities?.sortable || false,\n },\n };\n\n if (\n fieldType === 'REFERENCE' &&\n field.typeMetadata?.reference?.referencedCollectionId\n ) {\n const referenceField: Field = {\n ...baseField,\n type: 'REFERENCE',\n referenceMetadata: {\n referencedCollectionId:\n field.typeMetadata.reference.referencedCollectionId,\n },\n };\n acc[field.key] = referenceField;\n } else {\n const nonReferenceType =\n fieldType === 'REFERENCE' ? 'SHORT_TEXT' : fieldType;\n const nonReferenceField: Field = {\n ...baseField,\n type: nonReferenceType,\n };\n acc[field.key] = nonReferenceField;\n }\n\n return acc;\n },\n {},\n );\n\n const schemaConfig: SchemaConfig = {\n id: collectionId,\n displayField: schema.displayField ?? '_id',\n idField: '_id',\n fields: transformedFields,\n actions: {\n get: (entityId: string) => {\n return items.get(collectionId, entityId);\n },\n create: (entity) => {\n return items.insert(collectionId, entity);\n },\n update: (entity) => {\n return items.update(collectionId, entity);\n },\n delete: (entityId) => {\n return items.remove(collectionId, entityId);\n },\n bulkDelete: (entityIds) => {\n return items.bulkRemove(collectionId, entityIds);\n },\n find: async (\n query,\n options: {\n searchableFieldIds?: string[];\n filterFieldMapping?: Record<string, { fieldId: string }>;\n } = {},\n ) => {\n return fetchCmsData(collectionId, query, transformedFields, options);\n },\n },\n };\n\n return schemaConfig;\n}\n"],"mappings":"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","ignoreList":[]}
@@ -58,13 +58,14 @@ const useActionCell = ({
58
58
  default:
59
59
  return null;
60
60
  }
61
- if (!actionToResolve) {
61
+ if (!actionToResolve || actionToResolve.hidden) {
62
62
  return null;
63
63
  }
64
64
  const resolvedAction = (0, _actions.resolveAction)(actionConfig, actionToResolve);
65
65
  const {
66
66
  label,
67
67
  tooltip,
68
+ hidden,
68
69
  ...resolvedActionProps
69
70
  } = resolvedAction;
70
71
  return {
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_useActionsSDK","_actions","cleanupActionsWithDividers","actions","inlineCount","clean","a","filter","x","i","ar","_ar","divider","length","slice","useActionCell","config","collectionId","sdk","useActionsSDK","buildCellActions","useCallback","item","index","api","_config$primaryAction","_config$primaryAction2","_config$secondaryActi","_config$secondaryActi2","_config$secondaryActi3","_config$secondaryActi4","buildAction","actionConfig","type","actionToResolve","baseParams","actionParams","updateAction","action","deleteAction","customAction","resolvedAction","resolveAction","label","tooltip","resolvedActionProps","text","disabledDescription","primaryAction","undefined","primaryActionProps","alwaysVisible","visibility","rawSecondaryActions","secondaryActions","items","map","Boolean","numOfVisibleSecondaryActions","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 customAction,\n resolveAction,\n deleteAction,\n} from '../utils/actions';\nimport { DividerActionConfig } from '../types/actions/base';\n\nexport interface useActionCellParams {\n config?: ActionCellConfig;\n collectionId: string;\n}\n\nconst cleanupActionsWithDividers = (\n actions: any[],\n inlineCount?: number,\n): any[] => {\n const clean = (a: any[]) =>\n a.filter(\n (x, i, ar) =>\n x?.divider !== true ||\n (i > 0 && i < ar.length - 1 && ar[i - 1]?.divider !== true),\n );\n return !actions?.length || !inlineCount || inlineCount >= actions.length\n ? clean(actions || [])\n : [\n ...clean(actions.slice(0, inlineCount)),\n ...clean(actions.slice(inlineCount)),\n ];\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 = (\n actionConfig: ActionCellItemConfig | DividerActionConfig,\n ) => {\n if (actionConfig.type === 'divider') {\n return { divider: true };\n }\n\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 '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 primaryActionProps = {\n ...(config?.primaryAction?.alwaysVisible\n ? { visibility: 'always' }\n : {}),\n };\n\n const rawSecondaryActions = config?.secondaryActions?.items.length\n ? config.secondaryActions.items.map(buildAction).filter(Boolean)\n : [];\n\n // Process secondary actions with inline count consideration\n const secondaryActions = cleanupActionsWithDividers(\n rawSecondaryActions,\n config?.secondaryActions?.inlineCount,\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\n ? {\n primaryAction: {\n ...primaryAction,\n ...primaryActionProps,\n },\n }\n : { 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":[]}
1
+ {"version":3,"names":["_react","require","_useActionsSDK","_actions","cleanupActionsWithDividers","actions","inlineCount","clean","a","filter","x","i","ar","_ar","divider","length","slice","useActionCell","config","collectionId","sdk","useActionsSDK","buildCellActions","useCallback","item","index","api","_config$primaryAction","_config$primaryAction2","_config$secondaryActi","_config$secondaryActi2","_config$secondaryActi3","_config$secondaryActi4","buildAction","actionConfig","type","actionToResolve","baseParams","actionParams","updateAction","action","deleteAction","customAction","hidden","resolvedAction","resolveAction","label","tooltip","resolvedActionProps","text","disabledDescription","primaryAction","undefined","primaryActionProps","alwaysVisible","visibility","rawSecondaryActions","secondaryActions","items","map","Boolean","numOfVisibleSecondaryActions","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 customAction,\n resolveAction,\n deleteAction,\n} from '../utils/actions';\nimport { DividerActionConfig } from '../types/actions/base';\n\nexport interface useActionCellParams {\n config?: ActionCellConfig;\n collectionId: string;\n}\n\nconst cleanupActionsWithDividers = (\n actions: any[],\n inlineCount?: number,\n): any[] => {\n const clean = (a: any[]) =>\n a.filter(\n (x, i, ar) =>\n x?.divider !== true ||\n (i > 0 && i < ar.length - 1 && ar[i - 1]?.divider !== true),\n );\n return !actions?.length || !inlineCount || inlineCount >= actions.length\n ? clean(actions || [])\n : [\n ...clean(actions.slice(0, inlineCount)),\n ...clean(actions.slice(inlineCount)),\n ];\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 = (\n actionConfig: ActionCellItemConfig | DividerActionConfig,\n ) => {\n if (actionConfig.type === 'divider') {\n return { divider: true };\n }\n\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 'custom':\n actionToResolve = customAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n default:\n return null;\n }\n\n if (!actionToResolve || actionToResolve.hidden) {\n return null;\n }\n\n const resolvedAction = resolveAction(actionConfig, actionToResolve);\n\n const { label, tooltip, hidden, ...resolvedActionProps } =\n 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 primaryActionProps = {\n ...(config?.primaryAction?.alwaysVisible\n ? { visibility: 'always' }\n : {}),\n };\n\n const rawSecondaryActions = config?.secondaryActions?.items.length\n ? config.secondaryActions.items.map(buildAction).filter(Boolean)\n : [];\n\n // Process secondary actions with inline count consideration\n const secondaryActions = cleanupActionsWithDividers(\n rawSecondaryActions,\n config?.secondaryActions?.inlineCount,\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\n ? {\n primaryAction: {\n ...primaryAction,\n ...primaryActionProps,\n },\n }\n : { 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":[]}
@@ -39,12 +39,13 @@ const useBulkActionToolbar = ({
39
39
  default:
40
40
  return null;
41
41
  }
42
- if (!actionToResolve) {
42
+ if (!actionToResolve || actionToResolve.hidden) {
43
43
  return null;
44
44
  }
45
45
  const resolvedAction = (0, _actions.resolveAction)(actionConfig, actionToResolve);
46
46
  const {
47
47
  icon,
48
+ hidden,
48
49
  ...resolvedActionParams
49
50
  } = resolvedAction;
50
51
  return {
@@ -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","sdk","useActionsSDK","bulkActionToolbar","useCallback","param","buildAction","actionConfig","actionToResolve","baseParams","actionParams","type","bulkDeleteAction","action","customAction","resolvedAction","resolveAction","icon","resolvedActionParams","prefixIcon","React","isValidElement","undefined","dataHook","id","buildPrimaryActions","primaryActions","map","primaryItem","index","item","actionGroups","groupActions","menu","items","subItems","group","filter","Boolean","length","label","primaryActionItems","secondaryActionItems","secondaryActions","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 resolveAction,\n groupActions,\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 '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 === 'action') {\n return buildAction(primaryItem.action.item);\n }\n\n if (primaryItem.type === 'menu') {\n const actionGroups = groupActions(primaryItem.menu.items);\n const subItems = actionGroups\n .map((group) =>\n group\n .map(buildAction)\n .filter((action): action is ActionSubitem =>\n Boolean(action),\n ),\n )\n .filter((group) => group.length > 0);\n\n if (subItems.length === 0) {\n return null;\n }\n\n return {\n label: primaryItem.menu.label,\n 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\n const secondaryActionItems = config?.secondaryActions\n ? groupActions(config.secondaryActions)\n .map((group) =>\n group\n .map(buildAction)\n .filter((action): action is ActionSubitem => Boolean(action)),\n )\n .filter((group) => group.length > 0)\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":[]}
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","customAction","hidden","resolvedAction","resolveAction","icon","resolvedActionParams","prefixIcon","React","isValidElement","undefined","dataHook","id","buildPrimaryActions","primaryActions","map","primaryItem","index","item","actionGroups","groupActions","menu","items","subItems","group","filter","Boolean","length","label","primaryActionItems","secondaryActionItems","secondaryActions","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 resolveAction,\n groupActions,\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 'custom':\n actionToResolve = customAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n default:\n return null;\n }\n\n if (!actionToResolve || actionToResolve.hidden) {\n return null;\n }\n\n const resolvedAction = resolveAction(actionConfig, actionToResolve);\n const { icon, hidden, ...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 === 'action') {\n return buildAction(primaryItem.action.item);\n }\n\n if (primaryItem.type === 'menu') {\n const actionGroups = groupActions(primaryItem.menu.items);\n const subItems = actionGroups\n .map((group) =>\n group\n .map(buildAction)\n .filter((action): action is ActionSubitem =>\n Boolean(action),\n ),\n )\n .filter((group) => group.length > 0);\n\n if (subItems.length === 0) {\n return null;\n }\n\n return {\n label: primaryItem.menu.label,\n 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\n const secondaryActionItems = config?.secondaryActions\n ? groupActions(config.secondaryActions)\n .map((group) =>\n group\n .map(buildAction)\n .filter((action): action is ActionSubitem => Boolean(action)),\n )\n .filter((group) => group.length > 0)\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":[]}
@@ -45,13 +45,14 @@ const useCollectionPageActions = ({
45
45
  default:
46
46
  return null;
47
47
  }
48
- if (!actionToResolve) {
48
+ if (!actionToResolve || actionToResolve.hidden) {
49
49
  return null;
50
50
  }
51
51
  const resolvedAction = (0, _actions.resolveAction)(actionConfig, actionToResolve);
52
52
  const {
53
53
  tooltip,
54
54
  icon,
55
+ hidden,
55
56
  ...resolvedActionProps
56
57
  } = resolvedAction;
57
58
  return {
@@ -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","customAction","resolvedAction","resolveAction","tooltip","icon","resolvedActionProps","prefixIcon","disabledDescription","handleActionsType","actions","item","actionGroups","groupActions","menu","items","subItems","map","group","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 resolveAction,\n groupActions,\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 '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 === 'action') {\n return buildAction(actions.action.item);\n }\n\n if (actions.type === 'menu') {\n const actionGroups = groupActions(actions.menu.items);\n const subItems = actionGroups\n .map((group) =>\n group.map(buildAction).filter((action) => action !== null),\n )\n .filter((group) => group.length > 0);\n\n if (!subItems.length) {\n return null;\n }\n\n return {\n label: actions.menu.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":[]}
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","customAction","hidden","resolvedAction","resolveAction","tooltip","icon","resolvedActionProps","prefixIcon","disabledDescription","handleActionsType","actions","item","actionGroups","groupActions","menu","items","subItems","map","group","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 resolveAction,\n groupActions,\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 'custom':\n actionToResolve = customAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n default:\n return null;\n }\n\n if (!actionToResolve || actionToResolve.hidden) {\n return null;\n }\n\n const resolvedAction = resolveAction(actionConfig, actionToResolve);\n const { tooltip, icon, hidden, ...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 === 'action') {\n return buildAction(actions.action.item);\n }\n\n if (actions.type === 'menu') {\n const actionGroups = groupActions(actions.menu.items);\n const subItems = actionGroups\n .map((group) =>\n group.map(buildAction).filter((action) => action !== null),\n )\n .filter((group) => group.length > 0);\n\n if (!subItems.length) {\n return null;\n }\n\n return {\n label: actions.menu.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":[]}
@@ -43,13 +43,14 @@ const useEntityPageActions = ({
43
43
  default:
44
44
  return null;
45
45
  }
46
- if (!actionToResolve) {
46
+ if (!actionToResolve || actionToResolve.hidden) {
47
47
  return null;
48
48
  }
49
49
  const resolvedAction = (0, _actions.resolveAction)(actionConfig, actionToResolve);
50
50
  const {
51
51
  tooltip,
52
52
  icon,
53
+ hidden,
53
54
  ...resolvedActionProps
54
55
  } = resolvedAction;
55
56
  return {
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_actions","_patterns","_jsxFileName","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useEntityPageActions","entityPageActions","entity","sdk","buildEntityPageActions","useCallback","buildAction","actionConfig","actionToResolve","baseParams","actionParams","type","createAction","action","customAction","resolvedAction","resolveAction","tooltip","icon","resolvedActionProps","prefixIcon","disabledDescription","handleActionsType","actions","item","actionGroups","groupActions","menu","items","subItems","map","group","filter","length","label","primaryActions","secondaryActions","createElement","Fragment","SecondaryActions","_extends2","__self","__source","fileName","lineNumber","columnNumber","undefined","PrimaryActions","exports"],"sources":["../../../src/hooks/useEntityPageActions.tsx"],"sourcesContent":["import React, { useCallback } from 'react';\nimport {\n ActionsSDK,\n EntityPageActionConfig,\n EntityPageConfig,\n EntityPagePrimaryActions,\n EntityPageSecondaryActions,\n ResolvedAction,\n} from '../types';\nimport {\n createAction,\n customAction,\n resolveAction,\n groupActions,\n} from '../utils/actions';\nimport { IconElement } from '@wix/design-system';\nimport { PrimaryActions, SecondaryActions } from '@wix/patterns';\n\nexport interface UseEntityPageActionsParams {\n entityPageActions: EntityPageConfig['actions'];\n entity: Record<string, any>;\n sdk: ActionsSDK;\n}\n\nexport const useEntityPageActions = ({\n entityPageActions,\n entity,\n sdk,\n}: UseEntityPageActionsParams) => {\n const buildEntityPageActions = useCallback(() => {\n if (!entityPageActions) {\n return;\n }\n\n const buildAction = (actionConfig: EntityPageActionConfig) => {\n let actionToResolve: Partial<ResolvedAction> | null = null;\n\n const baseParams = {\n actionParams: {\n entity,\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 '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: EntityPagePrimaryActions | EntityPageSecondaryActions,\n ) => {\n if (actions.type === 'action') {\n return buildAction(actions.action.item);\n }\n\n if (actions.type === 'menu') {\n const actionGroups = groupActions(actions.menu.items);\n const subItems = actionGroups\n .map((group) =>\n group.map(buildAction).filter((action) => action !== null),\n )\n .filter((group) => group.length > 0);\n\n if (!subItems.length) {\n return null;\n }\n\n return {\n label: actions.menu.label,\n subItems,\n };\n }\n\n return null;\n };\n\n const primaryActions =\n entityPageActions?.primaryActions &&\n handleActionsType(entityPageActions.primaryActions);\n\n const secondaryActions =\n entityPageActions?.secondaryActions &&\n handleActionsType(entityPageActions.secondaryActions);\n\n if (!primaryActions && !secondaryActions) {\n return;\n }\n\n return (\n <>\n {secondaryActions ? (\n <SecondaryActions {...secondaryActions} />\n ) : undefined}\n {primaryActions ? <PrimaryActions {...primaryActions} /> : undefined}\n </>\n );\n }, [entityPageActions, entity, sdk]);\n\n if (\n !entityPageActions?.primaryActions &&\n !entityPageActions?.secondaryActions\n ) {\n return null;\n }\n\n return buildEntityPageActions() ?? null;\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_actions","_patterns","_jsxFileName","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useEntityPageActions","entityPageActions","entity","sdk","buildEntityPageActions","useCallback","buildAction","actionConfig","actionToResolve","baseParams","actionParams","type","createAction","action","customAction","hidden","resolvedAction","resolveAction","tooltip","icon","resolvedActionProps","prefixIcon","disabledDescription","handleActionsType","actions","item","actionGroups","groupActions","menu","items","subItems","map","group","filter","length","label","primaryActions","secondaryActions","createElement","Fragment","SecondaryActions","_extends2","__self","__source","fileName","lineNumber","columnNumber","undefined","PrimaryActions","exports"],"sources":["../../../src/hooks/useEntityPageActions.tsx"],"sourcesContent":["import React, { useCallback } from 'react';\nimport {\n ActionsSDK,\n EntityPageActionConfig,\n EntityPageConfig,\n EntityPagePrimaryActions,\n EntityPageSecondaryActions,\n ResolvedAction,\n} from '../types';\nimport {\n createAction,\n customAction,\n resolveAction,\n groupActions,\n} from '../utils/actions';\nimport { IconElement } from '@wix/design-system';\nimport { PrimaryActions, SecondaryActions } from '@wix/patterns';\n\nexport interface UseEntityPageActionsParams {\n entityPageActions: EntityPageConfig['actions'];\n entity: Record<string, any>;\n sdk: ActionsSDK;\n}\n\nexport const useEntityPageActions = ({\n entityPageActions,\n entity,\n sdk,\n}: UseEntityPageActionsParams) => {\n const buildEntityPageActions = useCallback(() => {\n if (!entityPageActions) {\n return;\n }\n\n const buildAction = (actionConfig: EntityPageActionConfig) => {\n let actionToResolve: Partial<ResolvedAction> | null = null;\n\n const baseParams = {\n actionParams: {\n entity,\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 'custom':\n actionToResolve = customAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n default:\n return null;\n }\n\n if (!actionToResolve || actionToResolve.hidden) {\n return null;\n }\n\n const resolvedAction = resolveAction(actionConfig, actionToResolve);\n const { tooltip, icon, hidden, ...resolvedActionProps } = resolvedAction;\n\n return {\n ...resolvedActionProps,\n prefixIcon: icon as IconElement,\n disabledDescription: resolvedAction.tooltip,\n };\n };\n\n const handleActionsType = (\n actions: EntityPagePrimaryActions | EntityPageSecondaryActions,\n ) => {\n if (actions.type === 'action') {\n return buildAction(actions.action.item);\n }\n\n if (actions.type === 'menu') {\n const actionGroups = groupActions(actions.menu.items);\n const subItems = actionGroups\n .map((group) =>\n group.map(buildAction).filter((action) => action !== null),\n )\n .filter((group) => group.length > 0);\n\n if (!subItems.length) {\n return null;\n }\n\n return {\n label: actions.menu.label,\n subItems,\n };\n }\n\n return null;\n };\n\n const primaryActions =\n entityPageActions?.primaryActions &&\n handleActionsType(entityPageActions.primaryActions);\n\n const secondaryActions =\n entityPageActions?.secondaryActions &&\n handleActionsType(entityPageActions.secondaryActions);\n\n if (!primaryActions && !secondaryActions) {\n return;\n }\n\n return (\n <>\n {secondaryActions ? (\n <SecondaryActions {...secondaryActions} />\n ) : undefined}\n {primaryActions ? <PrimaryActions {...primaryActions} /> : undefined}\n </>\n );\n }, [entityPageActions, entity, sdk]);\n\n if (\n !entityPageActions?.primaryActions &&\n !entityPageActions?.secondaryActions\n ) {\n return null;\n }\n\n return buildEntityPageActions() ?? null;\n};\n"],"mappings":"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","ignoreList":[]}
@@ -38,7 +38,7 @@ function useEntityPageMoreActions(moreActions, entity, sdk, form) {
38
38
  default:
39
39
  return null;
40
40
  }
41
- if (!actionToResolve) {
41
+ if (!actionToResolve || actionToResolve.hidden) {
42
42
  return null;
43
43
  }
44
44
  const resolved = (0, _actions.resolveAction)(actionConfig, actionToResolve);
@@ -1 +1 @@
1
- {"version":3,"names":["_actions","require","_react","useEntityPageMoreActions","moreActions","entity","sdk","form","buildEntityPageActions","useCallback","buildAction","actionConfig","actionToResolve","baseParams","actionParams","type","updateAction","action","item","customAction","resolved","resolveAction","onClick","text","label","prefixIcon","icon","disabled","actionGroups","groupActions","map","group","filter","Boolean","length"],"sources":["../../../src/hooks/useEntityPageMoreActions.ts"],"sourcesContent":["import { ActionsSDK, ResolvedAction } from '../types';\nimport {\n customAction,\n resolveAction,\n groupActions,\n updateAction,\n} from '../utils/actions';\nimport { useCallback } from 'react';\nimport { MoreActionsItem } from '@wix/patterns';\nimport { FieldValues, UseFormReturn } from '@wix/patterns/form';\nimport {\n CustomActionConfig,\n DividerActionConfig,\n UpdateActionConfig,\n} from '../types/actions/base';\n\nexport function useEntityPageMoreActions(\n moreActions:\n | (CustomActionConfig | UpdateActionConfig | DividerActionConfig)[]\n | undefined,\n entity: Record<string, any>,\n sdk: ActionsSDK,\n form?: UseFormReturn<FieldValues, any, undefined>,\n) {\n const buildEntityPageActions = useCallback(() => {\n if (!moreActions) {\n return;\n }\n\n const buildAction = (\n actionConfig: CustomActionConfig | UpdateActionConfig,\n ): MoreActionsItem | null => {\n let actionToResolve: Partial<ResolvedAction> | null = null;\n const baseParams = {\n actionParams: { entity, form },\n sdk,\n };\n\n switch (actionConfig.type) {\n case 'update':\n actionToResolve = updateAction({\n action: actionConfig,\n ...baseParams,\n actionParams: {\n ...baseParams.actionParams,\n item: entity,\n },\n });\n break;\n case 'custom':\n actionToResolve = customAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n default:\n return null;\n }\n\n if (!actionToResolve) {\n return null;\n }\n\n const resolved = resolveAction(\n actionConfig,\n actionToResolve,\n ) as ResolvedAction;\n\n return {\n onClick: resolved.onClick,\n text: resolved.label,\n prefixIcon: resolved.icon,\n disabled: resolved.disabled,\n };\n };\n\n const actionGroups = groupActions(moreActions);\n return actionGroups\n .map((group) =>\n group\n .map(buildAction)\n .filter((action): action is MoreActionsItem => Boolean(action)),\n )\n .filter((group) => group.length > 0);\n }, [moreActions, sdk, entity, form]);\n\n return buildEntityPageActions() ?? [];\n}\n"],"mappings":";;;;AACA,IAAAA,QAAA,GAAAC,OAAA;AAMA,IAAAC,MAAA,GAAAD,OAAA;AASO,SAASE,wBAAwBA,CACtCC,WAEa,EACbC,MAA2B,EAC3BC,GAAe,EACfC,IAAiD,EACjD;EACA,MAAMC,sBAAsB,GAAG,IAAAC,kBAAW,EAAC,MAAM;IAC/C,IAAI,CAACL,WAAW,EAAE;MAChB;IACF;IAEA,MAAMM,WAAW,GACfC,YAAqD,IAC1B;MAC3B,IAAIC,eAA+C,GAAG,IAAI;MAC1D,MAAMC,UAAU,GAAG;QACjBC,YAAY,EAAE;UAAET,MAAM;UAAEE;QAAK,CAAC;QAC9BD;MACF,CAAC;MAED,QAAQK,YAAY,CAACI,IAAI;QACvB,KAAK,QAAQ;UACXH,eAAe,GAAG,IAAAI,qBAAY,EAAC;YAC7BC,MAAM,EAAEN,YAAY;YACpB,GAAGE,UAAU;YACbC,YAAY,EAAE;cACZ,GAAGD,UAAU,CAACC,YAAY;cAC1BI,IAAI,EAAEb;YACR;UACF,CAAC,CAAC;UACF;QACF,KAAK,QAAQ;UACXO,eAAe,GAAG,IAAAO,qBAAY,EAAC;YAC7BF,MAAM,EAAEN,YAAY;YACpB,GAAGE;UACL,CAAC,CAAC;UACF;QACF;UACE,OAAO,IAAI;MACf;MAEA,IAAI,CAACD,eAAe,EAAE;QACpB,OAAO,IAAI;MACb;MAEA,MAAMQ,QAAQ,GAAG,IAAAC,sBAAa,EAC5BV,YAAY,EACZC,eACF,CAAmB;MAEnB,OAAO;QACLU,OAAO,EAAEF,QAAQ,CAACE,OAAO;QACzBC,IAAI,EAAEH,QAAQ,CAACI,KAAK;QACpBC,UAAU,EAAEL,QAAQ,CAACM,IAAI;QACzBC,QAAQ,EAAEP,QAAQ,CAACO;MACrB,CAAC;IACH,CAAC;IAED,MAAMC,YAAY,GAAG,IAAAC,qBAAY,EAACzB,WAAW,CAAC;IAC9C,OAAOwB,YAAY,CAChBE,GAAG,CAAEC,KAAK,IACTA,KAAK,CACFD,GAAG,CAACpB,WAAW,CAAC,CAChBsB,MAAM,CAAEf,MAAM,IAAgCgB,OAAO,CAAChB,MAAM,CAAC,CAClE,CAAC,CACAe,MAAM,CAAED,KAAK,IAAKA,KAAK,CAACG,MAAM,GAAG,CAAC,CAAC;EACxC,CAAC,EAAE,CAAC9B,WAAW,EAAEE,GAAG,EAAED,MAAM,EAAEE,IAAI,CAAC,CAAC;EAEpC,OAAOC,sBAAsB,CAAC,CAAC,IAAI,EAAE;AACvC","ignoreList":[]}
1
+ {"version":3,"names":["_actions","require","_react","useEntityPageMoreActions","moreActions","entity","sdk","form","buildEntityPageActions","useCallback","buildAction","actionConfig","actionToResolve","baseParams","actionParams","type","updateAction","action","item","customAction","hidden","resolved","resolveAction","onClick","text","label","prefixIcon","icon","disabled","actionGroups","groupActions","map","group","filter","Boolean","length"],"sources":["../../../src/hooks/useEntityPageMoreActions.ts"],"sourcesContent":["import { ActionsSDK, ResolvedAction } from '../types';\nimport {\n customAction,\n resolveAction,\n groupActions,\n updateAction,\n} from '../utils/actions';\nimport { useCallback } from 'react';\nimport { MoreActionsItem } from '@wix/patterns';\nimport { FieldValues, UseFormReturn } from '@wix/patterns/form';\nimport {\n CustomActionConfig,\n DividerActionConfig,\n UpdateActionConfig,\n} from '../types/actions/base';\n\nexport function useEntityPageMoreActions(\n moreActions:\n | (CustomActionConfig | UpdateActionConfig | DividerActionConfig)[]\n | undefined,\n entity: Record<string, any>,\n sdk: ActionsSDK,\n form?: UseFormReturn<FieldValues, any, undefined>,\n) {\n const buildEntityPageActions = useCallback(() => {\n if (!moreActions) {\n return;\n }\n\n const buildAction = (\n actionConfig: CustomActionConfig | UpdateActionConfig,\n ): MoreActionsItem | null => {\n let actionToResolve: Partial<ResolvedAction> | null = null;\n const baseParams = {\n actionParams: { entity, form },\n sdk,\n };\n\n switch (actionConfig.type) {\n case 'update':\n actionToResolve = updateAction({\n action: actionConfig,\n ...baseParams,\n actionParams: {\n ...baseParams.actionParams,\n item: entity,\n },\n });\n break;\n case 'custom':\n actionToResolve = customAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n default:\n return null;\n }\n\n if (!actionToResolve || actionToResolve.hidden) {\n return null;\n }\n\n const resolved = resolveAction(\n actionConfig,\n actionToResolve,\n ) as ResolvedAction;\n\n return {\n onClick: resolved.onClick,\n text: resolved.label,\n prefixIcon: resolved.icon,\n disabled: resolved.disabled,\n };\n };\n\n const actionGroups = groupActions(moreActions);\n return actionGroups\n .map((group) =>\n group\n .map(buildAction)\n .filter((action): action is MoreActionsItem => Boolean(action)),\n )\n .filter((group) => group.length > 0);\n }, [moreActions, sdk, entity, form]);\n\n return buildEntityPageActions() ?? [];\n}\n"],"mappings":";;;;AACA,IAAAA,QAAA,GAAAC,OAAA;AAMA,IAAAC,MAAA,GAAAD,OAAA;AASO,SAASE,wBAAwBA,CACtCC,WAEa,EACbC,MAA2B,EAC3BC,GAAe,EACfC,IAAiD,EACjD;EACA,MAAMC,sBAAsB,GAAG,IAAAC,kBAAW,EAAC,MAAM;IAC/C,IAAI,CAACL,WAAW,EAAE;MAChB;IACF;IAEA,MAAMM,WAAW,GACfC,YAAqD,IAC1B;MAC3B,IAAIC,eAA+C,GAAG,IAAI;MAC1D,MAAMC,UAAU,GAAG;QACjBC,YAAY,EAAE;UAAET,MAAM;UAAEE;QAAK,CAAC;QAC9BD;MACF,CAAC;MAED,QAAQK,YAAY,CAACI,IAAI;QACvB,KAAK,QAAQ;UACXH,eAAe,GAAG,IAAAI,qBAAY,EAAC;YAC7BC,MAAM,EAAEN,YAAY;YACpB,GAAGE,UAAU;YACbC,YAAY,EAAE;cACZ,GAAGD,UAAU,CAACC,YAAY;cAC1BI,IAAI,EAAEb;YACR;UACF,CAAC,CAAC;UACF;QACF,KAAK,QAAQ;UACXO,eAAe,GAAG,IAAAO,qBAAY,EAAC;YAC7BF,MAAM,EAAEN,YAAY;YACpB,GAAGE;UACL,CAAC,CAAC;UACF;QACF;UACE,OAAO,IAAI;MACf;MAEA,IAAI,CAACD,eAAe,IAAIA,eAAe,CAACQ,MAAM,EAAE;QAC9C,OAAO,IAAI;MACb;MAEA,MAAMC,QAAQ,GAAG,IAAAC,sBAAa,EAC5BX,YAAY,EACZC,eACF,CAAmB;MAEnB,OAAO;QACLW,OAAO,EAAEF,QAAQ,CAACE,OAAO;QACzBC,IAAI,EAAEH,QAAQ,CAACI,KAAK;QACpBC,UAAU,EAAEL,QAAQ,CAACM,IAAI;QACzBC,QAAQ,EAAEP,QAAQ,CAACO;MACrB,CAAC;IACH,CAAC;IAED,MAAMC,YAAY,GAAG,IAAAC,qBAAY,EAAC1B,WAAW,CAAC;IAC9C,OAAOyB,YAAY,CAChBE,GAAG,CAAEC,KAAK,IACTA,KAAK,CACFD,GAAG,CAACrB,WAAW,CAAC,CAChBuB,MAAM,CAAEhB,MAAM,IAAgCiB,OAAO,CAACjB,MAAM,CAAC,CAClE,CAAC,CACAgB,MAAM,CAAED,KAAK,IAAKA,KAAK,CAACG,MAAM,GAAG,CAAC,CAAC;EACxC,CAAC,EAAE,CAAC/B,WAAW,EAAEE,GAAG,EAAED,MAAM,EAAEE,IAAI,CAAC,CAAC;EAEpC,OAAOC,sBAAsB,CAAC,CAAC,IAAI,EAAE;AACvC","ignoreList":[]}
@@ -4,6 +4,7 @@ exports.__esModule = true;
4
4
  exports.useError = exports.ErrorProvider = void 0;
5
5
  var _react = _interopRequireWildcard(require("react"));
6
6
  var _patterns = require("@wix/patterns");
7
+ var _essentials = require("@wix/essentials");
7
8
  var _jsxFileName = "/home/builduser/work/73d19ce3378ce4dd/packages/auto-patterns/dist/cjs/providers/ErrorContext.tsx";
8
9
  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
10
  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; }
@@ -29,12 +30,14 @@ const ErrorProvider = ({
29
30
  });
30
31
  }, []);
31
32
  if (errorState.hasError && errorState.error) {
33
+ const subtitle = _essentials.errorHandler.getResolvedError(errorState.error).message;
32
34
  return /*#__PURE__*/_react.default.createElement(_patterns.PageErrorState, {
33
- subtitle: errorState.error.message,
35
+ subtitle: subtitle,
36
+ dataHook: "error-page",
34
37
  __self: void 0,
35
38
  __source: {
36
39
  fileName: _jsxFileName,
37
- lineNumber: 46,
40
+ lineNumber: 57,
38
41
  columnNumber: 12
39
42
  }
40
43
  });
@@ -47,7 +50,7 @@ const ErrorProvider = ({
47
50
  __self: void 0,
48
51
  __source: {
49
52
  fileName: _jsxFileName,
50
- lineNumber: 50,
53
+ lineNumber: 61,
51
54
  columnNumber: 5
52
55
  }
53
56
  }, children);
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_patterns","_jsxFileName","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ErrorContext","createContext","undefined","ErrorProvider","children","errorState","setErrorState","useState","hasError","error","showError","useCallback","errorObj","Error","clearError","createElement","PageErrorState","subtitle","message","__self","__source","fileName","lineNumber","columnNumber","Provider","value","exports","useError","context","useContext"],"sources":["../../../src/providers/ErrorContext.tsx"],"sourcesContent":["import React, {\n createContext,\n useContext,\n useState,\n useCallback,\n ReactNode,\n} from 'react';\nimport { PageErrorState } from '@wix/patterns';\n\ninterface ErrorState {\n hasError: boolean;\n error: Error | null;\n}\n\ninterface ErrorContextType {\n showError: (error: Error) => void;\n clearError: () => void;\n}\n\nconst ErrorContext = createContext<ErrorContextType | undefined>(undefined);\n\nexport const ErrorProvider: React.FC<{ children: ReactNode }> = ({\n children,\n}) => {\n const [errorState, setErrorState] = useState<ErrorState>({\n hasError: false,\n error: null,\n });\n\n const showError = useCallback((error: Error | string) => {\n const errorObj = typeof error === 'string' ? new Error(error) : error;\n setErrorState({\n hasError: true,\n error: errorObj,\n });\n }, []);\n\n const clearError = useCallback(() => {\n setErrorState({\n hasError: false,\n error: null,\n });\n }, []);\n\n if (errorState.hasError && errorState.error) {\n return <PageErrorState subtitle={errorState.error.message} />;\n }\n\n return (\n <ErrorContext.Provider value={{ showError, clearError }}>\n {children}\n </ErrorContext.Provider>\n );\n};\n\nexport const useError = (): ErrorContextType => {\n const context = useContext(ErrorContext);\n if (!context) {\n throw new Error('useError must be used within an ErrorProvider');\n }\n return context;\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_patterns","_essentials","_jsxFileName","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ErrorContext","createContext","undefined","ErrorProvider","children","errorState","setErrorState","useState","hasError","error","showError","useCallback","errorObj","Error","clearError","subtitle","errorHandler","getResolvedError","message","createElement","PageErrorState","dataHook","__self","__source","fileName","lineNumber","columnNumber","Provider","value","exports","useError","context","useContext"],"sources":["../../../src/providers/ErrorContext.tsx"],"sourcesContent":["import React, {\n createContext,\n useContext,\n useState,\n useCallback,\n ReactNode,\n} from 'react';\nimport { PageErrorState } from '@wix/patterns';\nimport { errorHandler } from '@wix/essentials';\n\nexport interface ErrorResponse extends Error {\n details: {\n applicationError: {\n description: string;\n };\n };\n}\n\ninterface ErrorState {\n hasError: boolean;\n error: Error | null;\n}\n\ninterface ErrorContextType {\n showError: (error: Error) => void;\n clearError: () => void;\n}\n\nconst ErrorContext = createContext<ErrorContextType | undefined>(undefined);\n\nexport const ErrorProvider: React.FC<{ children: ReactNode }> = ({\n children,\n}) => {\n const [errorState, setErrorState] = useState<ErrorState>({\n hasError: false,\n error: null,\n });\n\n const showError = useCallback((error: Error | string) => {\n const errorObj = typeof error === 'string' ? new Error(error) : error;\n setErrorState({\n hasError: true,\n error: errorObj,\n });\n }, []);\n\n const clearError = useCallback(() => {\n setErrorState({\n hasError: false,\n error: null,\n });\n }, []);\n\n if (errorState.hasError && errorState.error) {\n const subtitle = errorHandler.getResolvedError(errorState.error).message;\n\n return <PageErrorState subtitle={subtitle} dataHook=\"error-page\" />;\n }\n\n return (\n <ErrorContext.Provider value={{ showError, clearError }}>\n {children}\n </ErrorContext.Provider>\n );\n};\n\nexport const useError = (): ErrorContextType => {\n const context = useContext(ErrorContext);\n if (!context) {\n throw new Error('useError must be used within an ErrorProvider');\n }\n return context;\n};\n"],"mappings":"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","ignoreList":[]}
@@ -16,7 +16,7 @@ const PatternsWizardOverridesProvider = ({
16
16
  __self: void 0,
17
17
  __source: {
18
18
  fileName: _jsxFileName,
19
- lineNumber: 45,
19
+ lineNumber: 47,
20
20
  columnNumber: 5
21
21
  }
22
22
  }, children);