@wix/auto-patterns 1.9.0 → 1.10.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 (118) hide show
  1. package/README.md +50 -0
  2. package/dist/cjs/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.js +35 -6
  3. package/dist/cjs/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.js.map +1 -1
  4. package/dist/cjs/components/AutoPatternsEntityPage/Fields/ImageInput.js +2 -0
  5. package/dist/cjs/components/AutoPatternsEntityPage/Fields/ImageInput.js.map +1 -1
  6. package/dist/cjs/components/AutoPatternsGrid/AutoPatternsGrid.js +26 -15
  7. package/dist/cjs/components/AutoPatternsGrid/AutoPatternsGrid.js.map +1 -1
  8. package/dist/cjs/components/AutoPatternsTable/AutoPatternsTable.js +29 -15
  9. package/dist/cjs/components/AutoPatternsTable/AutoPatternsTable.js.map +1 -1
  10. package/dist/cjs/components/AutoPatternsTableGridSwitch/AutoPatternsTableGridSwitch.js +27 -0
  11. package/dist/cjs/components/AutoPatternsTableGridSwitch/AutoPatternsTableGridSwitch.js.map +1 -0
  12. package/dist/cjs/components/DynamicIcon.js +45 -9
  13. package/dist/cjs/components/DynamicIcon.js.map +1 -1
  14. package/dist/cjs/hooks/useBaseGridFeatures.js +39 -0
  15. package/dist/cjs/hooks/useBaseGridFeatures.js.map +1 -0
  16. package/dist/cjs/hooks/useBaseTableFeatures.js +39 -0
  17. package/dist/cjs/hooks/useBaseTableFeatures.js.map +1 -0
  18. package/dist/cjs/hooks/useCollectionPageActions.js +5 -3
  19. package/dist/cjs/hooks/useCollectionPageActions.js.map +1 -1
  20. package/dist/cjs/hooks/useColumns.js +14 -3
  21. package/dist/cjs/hooks/useColumns.js.map +1 -1
  22. package/dist/cjs/hooks/useGridFeatures.js +5 -19
  23. package/dist/cjs/hooks/useGridFeatures.js.map +1 -1
  24. package/dist/cjs/hooks/usePagePath.js +1 -1
  25. package/dist/cjs/hooks/usePagePath.js.map +1 -1
  26. package/dist/cjs/hooks/useTableFeatures.js +9 -16
  27. package/dist/cjs/hooks/useTableFeatures.js.map +1 -1
  28. package/dist/cjs/hooks/useTableGridSwitchFeatures.js +81 -0
  29. package/dist/cjs/hooks/useTableGridSwitchFeatures.js.map +1 -0
  30. package/dist/cjs/types/CollectionPageConfig.js.map +1 -1
  31. package/dist/cjs/types/actions/bulkActions.js.map +1 -1
  32. package/dist/cjs/types/actions/collectionPageActions.js.map +1 -1
  33. package/dist/cjs/types/wix-icons.d.js +2 -0
  34. package/dist/cjs/types/wix-icons.d.js.map +1 -0
  35. package/dist/cjs/utils/generated-icon-imports.js +1438 -0
  36. package/dist/cjs/utils/generated-icon-imports.js.map +1 -0
  37. package/dist/cjs/utils/media/getImageUrl.js +3 -0
  38. package/dist/cjs/utils/media/getImageUrl.js.map +1 -1
  39. package/dist/esm/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.js +19 -2
  40. package/dist/esm/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.js.map +1 -1
  41. package/dist/esm/components/AutoPatternsEntityPage/Fields/ImageInput.js +2 -0
  42. package/dist/esm/components/AutoPatternsEntityPage/Fields/ImageInput.js.map +1 -1
  43. package/dist/esm/components/AutoPatternsGrid/AutoPatternsGrid.js +25 -8
  44. package/dist/esm/components/AutoPatternsGrid/AutoPatternsGrid.js.map +1 -1
  45. package/dist/esm/components/AutoPatternsTable/AutoPatternsTable.js +28 -8
  46. package/dist/esm/components/AutoPatternsTable/AutoPatternsTable.js.map +1 -1
  47. package/dist/esm/components/AutoPatternsTableGridSwitch/AutoPatternsTableGridSwitch.js +14 -0
  48. package/dist/esm/components/AutoPatternsTableGridSwitch/AutoPatternsTableGridSwitch.js.map +1 -0
  49. package/dist/esm/components/DynamicIcon.js +13 -4
  50. package/dist/esm/components/DynamicIcon.js.map +1 -1
  51. package/dist/esm/hooks/useBaseGridFeatures.js +34 -0
  52. package/dist/esm/hooks/useBaseGridFeatures.js.map +1 -0
  53. package/dist/esm/hooks/useBaseTableFeatures.js +24 -0
  54. package/dist/esm/hooks/useBaseTableFeatures.js.map +1 -0
  55. package/dist/esm/hooks/useCollectionPageActions.js +3 -1
  56. package/dist/esm/hooks/useCollectionPageActions.js.map +1 -1
  57. package/dist/esm/hooks/useColumns.js +9 -4
  58. package/dist/esm/hooks/useColumns.js.map +1 -1
  59. package/dist/esm/hooks/useGridFeatures.js +5 -19
  60. package/dist/esm/hooks/useGridFeatures.js.map +1 -1
  61. package/dist/esm/hooks/usePagePath.js +1 -1
  62. package/dist/esm/hooks/usePagePath.js.map +1 -1
  63. package/dist/esm/hooks/useTableFeatures.js +10 -7
  64. package/dist/esm/hooks/useTableFeatures.js.map +1 -1
  65. package/dist/esm/hooks/useTableGridSwitchFeatures.js +79 -0
  66. package/dist/esm/hooks/useTableGridSwitchFeatures.js.map +1 -0
  67. package/dist/esm/types/CollectionPageConfig.js.map +1 -1
  68. package/dist/esm/types/actions/bulkActions.js.map +1 -1
  69. package/dist/esm/types/actions/collectionPageActions.js.map +1 -1
  70. package/dist/esm/types/wix-icons.d.js +2 -0
  71. package/dist/esm/types/wix-icons.d.js.map +1 -0
  72. package/dist/esm/utils/generated-icon-imports.js +1432 -0
  73. package/dist/esm/utils/generated-icon-imports.js.map +1 -0
  74. package/dist/esm/utils/media/getImageUrl.js +3 -0
  75. package/dist/esm/utils/media/getImageUrl.js.map +1 -1
  76. package/dist/types/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.d.ts.map +1 -1
  77. package/dist/types/components/AutoPatternsEntityPage/Fields/ImageInput.d.ts.map +1 -1
  78. package/dist/types/components/AutoPatternsGrid/AutoPatternsGrid.d.ts +2 -2
  79. package/dist/types/components/AutoPatternsGrid/AutoPatternsGrid.d.ts.map +1 -1
  80. package/dist/types/components/AutoPatternsTable/AutoPatternsTable.d.ts +2 -2
  81. package/dist/types/components/AutoPatternsTable/AutoPatternsTable.d.ts.map +1 -1
  82. package/dist/types/components/AutoPatternsTableGridSwitch/AutoPatternsTableGridSwitch.d.ts +7 -0
  83. package/dist/types/components/AutoPatternsTableGridSwitch/AutoPatternsTableGridSwitch.d.ts.map +1 -0
  84. package/dist/types/components/DynamicIcon.d.ts.map +1 -1
  85. package/dist/types/hooks/useBaseGridFeatures.d.ts +13 -0
  86. package/dist/types/hooks/useBaseGridFeatures.d.ts.map +1 -0
  87. package/dist/types/hooks/useBaseTableFeatures.d.ts +9 -0
  88. package/dist/types/hooks/useBaseTableFeatures.d.ts.map +1 -0
  89. package/dist/types/hooks/useCollectionPageActions.d.ts.map +1 -1
  90. package/dist/types/hooks/useColumns.d.ts.map +1 -1
  91. package/dist/types/hooks/useGridFeatures.d.ts.map +1 -1
  92. package/dist/types/hooks/useTableFeatures.d.ts +6 -6
  93. package/dist/types/hooks/useTableFeatures.d.ts.map +1 -1
  94. package/dist/types/hooks/useTableGridSwitchFeatures.d.ts +23 -0
  95. package/dist/types/hooks/useTableGridSwitchFeatures.d.ts.map +1 -0
  96. package/dist/types/types/CollectionPageConfig.d.ts +4 -1
  97. package/dist/types/types/CollectionPageConfig.d.ts.map +1 -1
  98. package/dist/types/types/actions/bulkActions.d.ts +1 -1
  99. package/dist/types/types/actions/bulkActions.d.ts.map +1 -1
  100. package/dist/types/types/actions/collectionPageActions.d.ts +11 -0
  101. package/dist/types/types/actions/collectionPageActions.d.ts.map +1 -1
  102. package/dist/types/utils/generated-icon-imports.d.ts +4 -0
  103. package/dist/types/utils/generated-icon-imports.d.ts.map +1 -0
  104. package/dist/types/utils/media/getImageUrl.d.ts +1 -1
  105. package/dist/types/utils/media/getImageUrl.d.ts.map +1 -1
  106. package/package.json +6 -3
  107. package/dist/cjs/components/AutoPatternsGrid/AutoPatternsGridContent.js +0 -44
  108. package/dist/cjs/components/AutoPatternsGrid/AutoPatternsGridContent.js.map +0 -1
  109. package/dist/cjs/components/AutoPatternsTable/AutoPatternsTableContent.js +0 -54
  110. package/dist/cjs/components/AutoPatternsTable/AutoPatternsTableContent.js.map +0 -1
  111. package/dist/esm/components/AutoPatternsGrid/AutoPatternsGridContent.js +0 -32
  112. package/dist/esm/components/AutoPatternsGrid/AutoPatternsGridContent.js.map +0 -1
  113. package/dist/esm/components/AutoPatternsTable/AutoPatternsTableContent.js +0 -42
  114. package/dist/esm/components/AutoPatternsTable/AutoPatternsTableContent.js.map +0 -1
  115. package/dist/types/components/AutoPatternsGrid/AutoPatternsGridContent.d.ts +0 -7
  116. package/dist/types/components/AutoPatternsGrid/AutoPatternsGridContent.d.ts.map +0 -1
  117. package/dist/types/components/AutoPatternsTable/AutoPatternsTableContent.d.ts +0 -7
  118. package/dist/types/components/AutoPatternsTable/AutoPatternsTableContent.d.ts.map +0 -1
@@ -24,7 +24,9 @@ const useCollectionPageActions = ({
24
24
  const buildAction = actionConfig => {
25
25
  let actionToResolve = null;
26
26
  const baseParams = {
27
- actionParams: {},
27
+ actionParams: {
28
+ collectionId: actionConfig.collection.collectionId
29
+ },
28
30
  sdk
29
31
  };
30
32
  switch (actionConfig.type) {
@@ -91,7 +93,7 @@ const useCollectionPageActions = ({
91
93
  __self: void 0,
92
94
  __source: {
93
95
  fileName: _jsxFileName,
94
- lineNumber: 123,
96
+ lineNumber: 125,
95
97
  columnNumber: 9
96
98
  }
97
99
  })) : undefined,
@@ -99,7 +101,7 @@ const useCollectionPageActions = ({
99
101
  __self: void 0,
100
102
  __source: {
101
103
  fileName: _jsxFileName,
102
- lineNumber: 126,
104
+ lineNumber: 128,
103
105
  columnNumber: 9
104
106
  }
105
107
  })) : 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","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 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","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":[]}
@@ -96,6 +96,19 @@ const useColumns = columns => {
96
96
  }
97
97
  }
98
98
  return itemValue;
99
+ case 'IMAGE':
100
+ const imageUrl = (0, _getImageUrl.getImageUrl)(itemValue);
101
+ return /*#__PURE__*/_react.default.createElement(_designSystem.Image, {
102
+ src: imageUrl,
103
+ width: "48px",
104
+ dataHook: "auto-patterns-image",
105
+ __self: void 0,
106
+ __source: {
107
+ fileName: _jsxFileName,
108
+ lineNumber: 88,
109
+ columnNumber: 11
110
+ }
111
+ });
99
112
  default:
100
113
  return itemValue;
101
114
  }
@@ -110,9 +123,7 @@ const useColumns = columns => {
110
123
  const baseColumnConfig = {
111
124
  id: column.id,
112
125
  title: column.name || fieldDefinition.displayName,
113
- ...(column.width ? {
114
- width: column.width
115
- } : {}),
126
+ width: column.width,
116
127
  ...createSortConfiguration(column, sortable),
117
128
  ...createCustomColumnConfiguration(column),
118
129
  render: item => {
@@ -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","map","_fieldDefinition$capa","sortable","capabilities","baseColumnConfig","title","displayName","width","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 } 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 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 ...(column.width ? { 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","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":[]}
@@ -6,13 +6,11 @@ var _useFetchData = require("./useFetchData");
6
6
  var _patterns = require("@wix/patterns");
7
7
  var _useCommonCollectionFeatures = require("./useCommonCollectionFeatures");
8
8
  var _useFilters = require("./useFilters");
9
- var _react = require("react");
10
9
  var _SchemaContext = require("../providers/SchemaContext");
11
10
  var _useAutoPatternsOptimisticActions = require("./useAutoPatternsOptimisticActions");
12
- var _getImageUrl = require("../utils/media/getImageUrl");
11
+ var _useBaseGridFeatures = require("./useBaseGridFeatures");
13
12
  const useGridFeatures = configuration => {
14
13
  const {
15
- item,
16
14
  collection
17
15
  } = configuration;
18
16
  const {
@@ -23,18 +21,16 @@ const useGridFeatures = configuration => {
23
21
  selectionConsistencyMode
24
22
  } = collection;
25
23
  const {
26
- titleFieldId,
27
- subtitleFieldId,
28
- imageFieldId,
24
+ renderItem,
29
25
  imagePlacement,
30
- cardContentMode: preset
31
- } = item;
26
+ preset,
27
+ visibleFieldIds
28
+ } = (0, _useBaseGridFeatures.useBaseGridFeatures)(configuration);
32
29
  const {
33
30
  filterComponent,
34
31
  filtersObject,
35
32
  filtersMapping
36
33
  } = (0, _useFilters.useFilters)(configuration.filters);
37
- const visibleFieldIds = (0, _react.useMemo)(() => [titleFieldId, subtitleFieldId, imageFieldId].filter(Boolean), [titleFieldId, subtitleFieldId, imageFieldId]);
38
34
  const {
39
35
  fetchData
40
36
  } = (0, _useFetchData.useFetchData)({
@@ -64,16 +60,6 @@ const useGridFeatures = configuration => {
64
60
  optimisticActions,
65
61
  collectionType: 'Grid'
66
62
  });
67
- const renderItem = (0, _react.useMemo)(() => gridItem => ({
68
- id: gridItem[schema.idField],
69
- title: `${gridItem[titleFieldId]}`,
70
- ...(subtitleFieldId ? {
71
- subtitle: `${gridItem[subtitleFieldId] ?? ''}`
72
- } : {}),
73
- ...(imageFieldId ? {
74
- backgroundImageUrl: (0, _getImageUrl.getImageUrl)(gridItem[imageFieldId])
75
- } : {})
76
- }), [titleFieldId, subtitleFieldId, imageFieldId, schema.idField]);
77
63
  return {
78
64
  ...commonFeatures,
79
65
  state,
@@ -1 +1 @@
1
- {"version":3,"names":["_useFetchData","require","_patterns","_useCommonCollectionFeatures","_useFilters","_react","_SchemaContext","_useAutoPatternsOptimisticActions","_getImageUrl","useGridFeatures","configuration","item","collection","collectionId","limit","persistQueryToUrl","disableAutoSelectAllCount","selectionConsistencyMode","titleFieldId","subtitleFieldId","imageFieldId","imagePlacement","cardContentMode","preset","filterComponent","filtersObject","filtersMapping","useFilters","filters","visibleFieldIds","useMemo","filter","Boolean","fetchData","useFetchData","collectionConfig","schema","useSchema","state","useGridCollection","queryName","itemKey","gridItem","idField","itemName","displayField","toExtendedFields","extendedFields","fetchErrorMessage","err","String","optimisticActions","useAutoPatternsOptimisticActions","commonFeatures","useCommonCollectionFeatures","collectionType","renderItem","id","title","subtitle","backgroundImageUrl","getImageUrl","exports"],"sources":["../../../src/hooks/useGridFeatures.tsx"],"sourcesContent":["import { GridConfig } from '../types';\nimport { useFetchData } from './useFetchData';\nimport { useGridCollection } from '@wix/patterns';\nimport { useCommonCollectionFeatures } from './useCommonCollectionFeatures';\nimport { useFilters } from './useFilters';\nimport { useMemo } from 'react';\nimport { useSchema } from '../providers/SchemaContext';\nimport { useAutoPatternsOptimisticActions } from './useAutoPatternsOptimisticActions';\nimport { getImageUrl } from '../utils/media/getImageUrl';\n\nexport const useGridFeatures = (configuration: GridConfig) => {\n const { item, collection } = configuration;\n\n const {\n collectionId,\n limit,\n persistQueryToUrl,\n disableAutoSelectAllCount,\n selectionConsistencyMode,\n } = collection;\n\n const {\n titleFieldId,\n subtitleFieldId,\n imageFieldId,\n imagePlacement,\n cardContentMode: preset,\n } = item;\n\n const { filterComponent, filtersObject, filtersMapping } = useFilters(\n configuration.filters,\n );\n\n const visibleFieldIds = useMemo(\n () =>\n [titleFieldId, subtitleFieldId, imageFieldId].filter(Boolean) as string[],\n [titleFieldId, subtitleFieldId, imageFieldId],\n );\n\n const { fetchData } = useFetchData({\n collectionConfig: configuration.collection,\n visibleFieldIds,\n filtersMapping,\n });\n const schema = useSchema();\n\n const state = useGridCollection<any>({\n queryName: `${collectionId}`,\n itemKey: (gridItem) => gridItem[schema.idField],\n itemName: (gridItem) => gridItem[schema.displayField],\n filters: filtersObject,\n toExtendedFields: (gridItem) => gridItem.extendedFields,\n fetchErrorMessage: ({ err }) => String(err),\n fetchData,\n limit,\n persistQueryToUrl,\n disableAutoSelectAllCount,\n selectionConsistencyMode,\n });\n\n const optimisticActions = useAutoPatternsOptimisticActions(\n collectionId,\n state.collection,\n );\n\n const commonFeatures = useCommonCollectionFeatures({\n ...configuration,\n optimisticActions,\n collectionType: 'Grid',\n });\n\n const renderItem = useMemo(\n () => (gridItem: any) => ({\n id: gridItem[schema.idField],\n title: `${gridItem[titleFieldId]}`,\n ...(subtitleFieldId\n ? { subtitle: `${gridItem[subtitleFieldId] ?? ''}` }\n : {}),\n ...(imageFieldId\n ? { backgroundImageUrl: getImageUrl(gridItem[imageFieldId]) }\n : {}),\n }),\n [titleFieldId, subtitleFieldId, imageFieldId, schema.idField],\n );\n\n return {\n ...commonFeatures,\n state,\n imagePlacement,\n preset,\n optimisticActions,\n renderItem,\n filters: filterComponent,\n };\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_useFetchData","require","_patterns","_useCommonCollectionFeatures","_useFilters","_SchemaContext","_useAutoPatternsOptimisticActions","_useBaseGridFeatures","useGridFeatures","configuration","collection","collectionId","limit","persistQueryToUrl","disableAutoSelectAllCount","selectionConsistencyMode","renderItem","imagePlacement","preset","visibleFieldIds","useBaseGridFeatures","filterComponent","filtersObject","filtersMapping","useFilters","filters","fetchData","useFetchData","collectionConfig","schema","useSchema","state","useGridCollection","queryName","itemKey","gridItem","idField","itemName","displayField","toExtendedFields","extendedFields","fetchErrorMessage","err","String","optimisticActions","useAutoPatternsOptimisticActions","commonFeatures","useCommonCollectionFeatures","collectionType","exports"],"sources":["../../../src/hooks/useGridFeatures.tsx"],"sourcesContent":["import { GridConfig } from '../types';\nimport { useFetchData } from './useFetchData';\nimport { useGridCollection } from '@wix/patterns';\nimport { useCommonCollectionFeatures } from './useCommonCollectionFeatures';\nimport { useFilters } from './useFilters';\nimport { useSchema } from '../providers/SchemaContext';\nimport { useAutoPatternsOptimisticActions } from './useAutoPatternsOptimisticActions';\nimport { useBaseGridFeatures } from './useBaseGridFeatures';\n\nexport const useGridFeatures = (configuration: GridConfig) => {\n const { collection } = configuration;\n\n const {\n collectionId,\n limit,\n persistQueryToUrl,\n disableAutoSelectAllCount,\n selectionConsistencyMode,\n } = collection;\n\n const { renderItem, imagePlacement, preset, visibleFieldIds } =\n useBaseGridFeatures(configuration);\n\n const { filterComponent, filtersObject, filtersMapping } = useFilters(\n configuration.filters,\n );\n\n const { fetchData } = useFetchData({\n collectionConfig: configuration.collection,\n visibleFieldIds,\n filtersMapping,\n });\n\n const schema = useSchema();\n\n const state = useGridCollection<any>({\n queryName: `${collectionId}`,\n itemKey: (gridItem) => gridItem[schema.idField],\n itemName: (gridItem) => gridItem[schema.displayField],\n filters: filtersObject,\n toExtendedFields: (gridItem) => gridItem.extendedFields,\n fetchErrorMessage: ({ err }) => String(err),\n fetchData,\n limit,\n persistQueryToUrl,\n disableAutoSelectAllCount,\n selectionConsistencyMode,\n });\n\n const optimisticActions = useAutoPatternsOptimisticActions(\n collectionId,\n state.collection,\n );\n\n const commonFeatures = useCommonCollectionFeatures({\n ...configuration,\n optimisticActions,\n collectionType: 'Grid',\n });\n\n return {\n ...commonFeatures,\n state,\n imagePlacement,\n preset,\n optimisticActions,\n renderItem,\n filters: filterComponent,\n };\n};\n"],"mappings":";;;;AACA,IAAAA,aAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,4BAAA,GAAAF,OAAA;AACA,IAAAG,WAAA,GAAAH,OAAA;AACA,IAAAI,cAAA,GAAAJ,OAAA;AACA,IAAAK,iCAAA,GAAAL,OAAA;AACA,IAAAM,oBAAA,GAAAN,OAAA;AAEO,MAAMO,eAAe,GAAIC,aAAyB,IAAK;EAC5D,MAAM;IAAEC;EAAW,CAAC,GAAGD,aAAa;EAEpC,MAAM;IACJE,YAAY;IACZC,KAAK;IACLC,iBAAiB;IACjBC,yBAAyB;IACzBC;EACF,CAAC,GAAGL,UAAU;EAEd,MAAM;IAAEM,UAAU;IAAEC,cAAc;IAAEC,MAAM;IAAEC;EAAgB,CAAC,GAC3D,IAAAC,wCAAmB,EAACX,aAAa,CAAC;EAEpC,MAAM;IAAEY,eAAe;IAAEC,aAAa;IAAEC;EAAe,CAAC,GAAG,IAAAC,sBAAU,EACnEf,aAAa,CAACgB,OAChB,CAAC;EAED,MAAM;IAAEC;EAAU,CAAC,GAAG,IAAAC,0BAAY,EAAC;IACjCC,gBAAgB,EAAEnB,aAAa,CAACC,UAAU;IAC1CS,eAAe;IACfI;EACF,CAAC,CAAC;EAEF,MAAMM,MAAM,GAAG,IAAAC,wBAAS,EAAC,CAAC;EAE1B,MAAMC,KAAK,GAAG,IAAAC,2BAAiB,EAAM;IACnCC,SAAS,EAAE,GAAGtB,YAAY,EAAE;IAC5BuB,OAAO,EAAGC,QAAQ,IAAKA,QAAQ,CAACN,MAAM,CAACO,OAAO,CAAC;IAC/CC,QAAQ,EAAGF,QAAQ,IAAKA,QAAQ,CAACN,MAAM,CAACS,YAAY,CAAC;IACrDb,OAAO,EAAEH,aAAa;IACtBiB,gBAAgB,EAAGJ,QAAQ,IAAKA,QAAQ,CAACK,cAAc;IACvDC,iBAAiB,EAAEA,CAAC;MAAEC;IAAI,CAAC,KAAKC,MAAM,CAACD,GAAG,CAAC;IAC3ChB,SAAS;IACTd,KAAK;IACLC,iBAAiB;IACjBC,yBAAyB;IACzBC;EACF,CAAC,CAAC;EAEF,MAAM6B,iBAAiB,GAAG,IAAAC,kEAAgC,EACxDlC,YAAY,EACZoB,KAAK,CAACrB,UACR,CAAC;EAED,MAAMoC,cAAc,GAAG,IAAAC,wDAA2B,EAAC;IACjD,GAAGtC,aAAa;IAChBmC,iBAAiB;IACjBI,cAAc,EAAE;EAClB,CAAC,CAAC;EAEF,OAAO;IACL,GAAGF,cAAc;IACjBf,KAAK;IACLd,cAAc;IACdC,MAAM;IACN0B,iBAAiB;IACjB5B,UAAU;IACVS,OAAO,EAAEJ;EACX,CAAC;AACH,CAAC;AAAC4B,OAAA,CAAAzC,eAAA,GAAAA,eAAA","ignoreList":[]}
@@ -16,7 +16,7 @@ const usePagePath = configuration => {
16
16
  path = (_currentPage$collecti = currentPage.collectionPage) == null ? void 0 : _currentPage$collecti.route.path;
17
17
  break;
18
18
  case 'entityPage':
19
- path = (_currentPage$entityPa = currentPage.entityPage) == null ? void 0 : _currentPage$entityPa.route.path;
19
+ path = `${(_currentPage$entityPa = currentPage.entityPage) == null ? void 0 : _currentPage$entityPa.route.path}?`;
20
20
  break;
21
21
  default:
22
22
  path = undefined;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","usePagePath","configuration","getPagePath","useCallback","pageId","_currentPage$collecti","_currentPage$entityPa","currentPage","pages","find","page","id","path","type","collectionPage","route","entityPage","undefined","process","env","NODE_ENV","exports"],"sources":["../../../src/hooks/usePagePath.ts"],"sourcesContent":["import { useCallback } from 'react';\nimport { AppConfig } from '../types';\n\nexport const usePagePath = (configuration: AppConfig) => {\n const getPagePath = useCallback(\n (pageId?: string) => {\n if (!pageId) {\n return '/';\n }\n\n const currentPage = configuration.pages.find(\n (page) => page.id === pageId,\n );\n\n let path;\n switch (currentPage?.type) {\n case 'collectionPage':\n path = currentPage.collectionPage?.route.path;\n break;\n case 'entityPage':\n path = currentPage.entityPage?.route.path;\n break;\n default:\n path = undefined;\n }\n\n if (process.env.NODE_ENV === 'test') {\n // in test mode we sometime override pages so we need to return the path or '/'\n return path || '/';\n }\n\n return path;\n },\n [configuration],\n );\n\n return { getPagePath };\n};\n"],"mappings":";;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAGO,MAAMC,WAAW,GAAIC,aAAwB,IAAK;EACvD,MAAMC,WAAW,GAAG,IAAAC,kBAAW,EAC5BC,MAAe,IAAK;IAAA,IAAAC,qBAAA,EAAAC,qBAAA;IACnB,IAAI,CAACF,MAAM,EAAE;MACX,OAAO,GAAG;IACZ;IAEA,MAAMG,WAAW,GAAGN,aAAa,CAACO,KAAK,CAACC,IAAI,CACzCC,IAAI,IAAKA,IAAI,CAACC,EAAE,KAAKP,MACxB,CAAC;IAED,IAAIQ,IAAI;IACR,QAAQL,WAAW,oBAAXA,WAAW,CAAEM,IAAI;MACvB,KAAK,gBAAgB;QACnBD,IAAI,IAAAP,qBAAA,GAAGE,WAAW,CAACO,cAAc,qBAA1BT,qBAAA,CAA4BU,KAAK,CAACH,IAAI;QAC7C;MACF,KAAK,YAAY;QACfA,IAAI,IAAAN,qBAAA,GAAGC,WAAW,CAACS,UAAU,qBAAtBV,qBAAA,CAAwBS,KAAK,CAACH,IAAI;QACzC;MACF;QACEA,IAAI,GAAGK,SAAS;IACpB;IAEA,IAAIC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,MAAM,EAAE;MACnC;MACA,OAAOR,IAAI,IAAI,GAAG;IACpB;IAEA,OAAOA,IAAI;EACb,CAAC,EACD,CAACX,aAAa,CAChB,CAAC;EAED,OAAO;IAAEC;EAAY,CAAC;AACxB,CAAC;AAACmB,OAAA,CAAArB,WAAA,GAAAA,WAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","usePagePath","configuration","getPagePath","useCallback","pageId","_currentPage$collecti","_currentPage$entityPa","currentPage","pages","find","page","id","path","type","collectionPage","route","entityPage","undefined","process","env","NODE_ENV","exports"],"sources":["../../../src/hooks/usePagePath.ts"],"sourcesContent":["import { useCallback } from 'react';\nimport { AppConfig } from '../types';\n\nexport const usePagePath = (configuration: AppConfig) => {\n const getPagePath = useCallback(\n (pageId?: string) => {\n if (!pageId) {\n return '/';\n }\n\n const currentPage = configuration.pages.find(\n (page) => page.id === pageId,\n );\n\n let path;\n switch (currentPage?.type) {\n case 'collectionPage':\n path = currentPage.collectionPage?.route.path;\n break;\n case 'entityPage':\n path = `${currentPage.entityPage?.route.path}?`;\n break;\n default:\n path = undefined;\n }\n\n if (process.env.NODE_ENV === 'test') {\n // in test mode we sometime override pages so we need to return the path or '/'\n return path || '/';\n }\n\n return path;\n },\n [configuration],\n );\n\n return { getPagePath };\n};\n"],"mappings":";;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAGO,MAAMC,WAAW,GAAIC,aAAwB,IAAK;EACvD,MAAMC,WAAW,GAAG,IAAAC,kBAAW,EAC5BC,MAAe,IAAK;IAAA,IAAAC,qBAAA,EAAAC,qBAAA;IACnB,IAAI,CAACF,MAAM,EAAE;MACX,OAAO,GAAG;IACZ;IAEA,MAAMG,WAAW,GAAGN,aAAa,CAACO,KAAK,CAACC,IAAI,CACzCC,IAAI,IAAKA,IAAI,CAACC,EAAE,KAAKP,MACxB,CAAC;IAED,IAAIQ,IAAI;IACR,QAAQL,WAAW,oBAAXA,WAAW,CAAEM,IAAI;MACvB,KAAK,gBAAgB;QACnBD,IAAI,IAAAP,qBAAA,GAAGE,WAAW,CAACO,cAAc,qBAA1BT,qBAAA,CAA4BU,KAAK,CAACH,IAAI;QAC7C;MACF,KAAK,YAAY;QACfA,IAAI,GAAG,IAAAN,qBAAA,GAAGC,WAAW,CAACS,UAAU,qBAAtBV,qBAAA,CAAwBS,KAAK,CAACH,IAAI,GAAG;QAC/C;MACF;QACEA,IAAI,GAAGK,SAAS;IACpB;IAEA,IAAIC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,MAAM,EAAE;MACnC;MACA,OAAOR,IAAI,IAAI,GAAG;IACpB;IAEA,OAAOA,IAAI;EACb,CAAC,EACD,CAACX,aAAa,CAChB,CAAC;EAED,OAAO;IAAEC;EAAY,CAAC;AACxB,CAAC;AAACmB,OAAA,CAAArB,WAAA,GAAAA,WAAA","ignoreList":[]}
@@ -2,19 +2,14 @@
2
2
 
3
3
  exports.__esModule = true;
4
4
  exports.useTableFeatures = void 0;
5
- var _react = _interopRequireWildcard(require("react"));
6
- var _useColumns = require("./useColumns");
7
5
  var _useFetchData = require("./useFetchData");
8
6
  var _patterns = require("@wix/patterns");
9
7
  var _useCommonCollectionFeatures = require("./useCommonCollectionFeatures");
10
8
  var _useFilters = require("./useFilters");
11
9
  var _SchemaContext = require("../providers/SchemaContext");
12
10
  var _useAutoPatternsOptimisticActions = require("./useAutoPatternsOptimisticActions");
13
- var _jsxFileName = "/home/builduser/work/73d19ce3378ce4dd/packages/auto-patterns/dist/cjs/hooks/useTableFeatures.tsx";
14
- 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); }
15
- 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; }
11
+ var _useBaseTableFeatures = require("./useBaseTableFeatures");
16
12
  const useTableFeatures = configuration => {
17
- var _configuration$custom;
18
13
  const {
19
14
  collectionId,
20
15
  limit,
@@ -27,8 +22,12 @@ const useTableFeatures = configuration => {
27
22
  filtersObject,
28
23
  filtersMapping
29
24
  } = (0, _useFilters.useFilters)(configuration.filters);
30
- const columns = (0, _useColumns.useColumns)(configuration.columns);
31
- const visibleFieldIds = (0, _react.useMemo)(() => configuration.columns.map(column => column.id), [configuration]);
25
+ const {
26
+ customColumns,
27
+ visibleFieldIds,
28
+ columns,
29
+ onRowClick
30
+ } = (0, _useBaseTableFeatures.useBaseTableFeatures)(configuration);
32
31
  const {
33
32
  fetchData
34
33
  } = (0, _useFetchData.useFetchData)({
@@ -63,14 +62,8 @@ const useTableFeatures = configuration => {
63
62
  columns,
64
63
  filters: filterComponent,
65
64
  optimisticActions,
66
- customColumns: (_configuration$custom = configuration.customColumns) != null && _configuration$custom.enabled ? /*#__PURE__*/_react.default.createElement(_patterns.CustomColumns, {
67
- __self: void 0,
68
- __source: {
69
- fileName: _jsxFileName,
70
- lineNumber: 68,
71
- columnNumber: 7
72
- }
73
- }) : undefined
65
+ customColumns,
66
+ onRowClick
74
67
  };
75
68
  };
76
69
  exports.useTableFeatures = useTableFeatures;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_useColumns","_useFetchData","_patterns","_useCommonCollectionFeatures","_useFilters","_SchemaContext","_useAutoPatternsOptimisticActions","_jsxFileName","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useTableFeatures","configuration","_configuration$custom","collectionId","limit","persistQueryToUrl","disableAutoSelectAllCount","selectionConsistencyMode","collection","filterComponent","filtersObject","filtersMapping","useFilters","filters","columns","useColumns","visibleFieldIds","useMemo","map","column","id","fetchData","useFetchData","collectionConfig","schema","useSchema","state","useTableCollection","queryName","itemKey","item","idField","itemName","displayField","toExtendedFields","extendedFields","fetchErrorMessage","err","String","optimisticActions","useAutoPatternsOptimisticActions","commonFeatures","useCommonCollectionFeatures","customColumns","enabled","createElement","CustomColumns","__self","__source","fileName","lineNumber","columnNumber","undefined","exports"],"sources":["../../../src/hooks/useTableFeatures.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\nimport { TableConfig } from '../types';\nimport { useColumns } from './useColumns';\nimport { useFetchData } from './useFetchData';\nimport { CustomColumns, useTableCollection } from '@wix/patterns';\nimport { useCommonCollectionFeatures } from './useCommonCollectionFeatures';\nimport { useFilters } from './useFilters';\nimport { useSchema } from '../providers/SchemaContext';\nimport { useAutoPatternsOptimisticActions } from './useAutoPatternsOptimisticActions';\n\nexport const useTableFeatures = (configuration: TableConfig) => {\n const {\n collectionId,\n limit,\n persistQueryToUrl,\n disableAutoSelectAllCount,\n selectionConsistencyMode,\n } = configuration.collection;\n\n const { filterComponent, filtersObject, filtersMapping } = useFilters(\n configuration.filters,\n );\n const columns = useColumns(configuration.columns);\n const visibleFieldIds = useMemo(\n () => configuration.columns.map((column) => column.id),\n [configuration],\n );\n\n const { fetchData } = useFetchData({\n collectionConfig: configuration.collection,\n visibleFieldIds,\n filtersMapping,\n });\n\n const schema = useSchema();\n\n const state = useTableCollection<any>({\n queryName: `${collectionId}`,\n itemKey: (item) => item[schema.idField],\n itemName: (item) => item[schema.displayField],\n filters: filtersObject,\n toExtendedFields: (item) => item.extendedFields,\n fetchErrorMessage: ({ err }) => String(err),\n fetchData,\n limit,\n persistQueryToUrl,\n disableAutoSelectAllCount,\n selectionConsistencyMode,\n });\n\n const optimisticActions = useAutoPatternsOptimisticActions(\n collectionId,\n state.collection,\n );\n\n const commonFeatures = useCommonCollectionFeatures({\n ...configuration,\n optimisticActions,\n });\n\n return {\n ...commonFeatures,\n state,\n columns,\n filters: filterComponent,\n optimisticActions,\n customColumns: configuration.customColumns?.enabled ? (\n <CustomColumns />\n ) : undefined,\n };\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_useFetchData","require","_patterns","_useCommonCollectionFeatures","_useFilters","_SchemaContext","_useAutoPatternsOptimisticActions","_useBaseTableFeatures","useTableFeatures","configuration","collectionId","limit","persistQueryToUrl","disableAutoSelectAllCount","selectionConsistencyMode","collection","filterComponent","filtersObject","filtersMapping","useFilters","filters","customColumns","visibleFieldIds","columns","onRowClick","useBaseTableFeatures","fetchData","useFetchData","collectionConfig","schema","useSchema","state","useTableCollection","queryName","itemKey","item","idField","itemName","displayField","toExtendedFields","extendedFields","fetchErrorMessage","err","String","optimisticActions","useAutoPatternsOptimisticActions","commonFeatures","useCommonCollectionFeatures","exports"],"sources":["../../../src/hooks/useTableFeatures.tsx"],"sourcesContent":["import { TableConfig } from '../types';\nimport { useFetchData } from './useFetchData';\nimport { useTableCollection } from '@wix/patterns';\nimport { useCommonCollectionFeatures } from './useCommonCollectionFeatures';\nimport { useFilters } from './useFilters';\nimport { useSchema } from '../providers/SchemaContext';\nimport { useAutoPatternsOptimisticActions } from './useAutoPatternsOptimisticActions';\nimport { useBaseTableFeatures } from './useBaseTableFeatures';\n\nexport const useTableFeatures = (configuration: TableConfig) => {\n const {\n collectionId,\n limit,\n persistQueryToUrl,\n disableAutoSelectAllCount,\n selectionConsistencyMode,\n } = configuration.collection;\n\n const { filterComponent, filtersObject, filtersMapping } = useFilters(\n configuration.filters,\n );\n const { customColumns, visibleFieldIds, columns, onRowClick } =\n useBaseTableFeatures(configuration);\n\n const { fetchData } = useFetchData({\n collectionConfig: configuration.collection,\n visibleFieldIds,\n filtersMapping,\n });\n\n const schema = useSchema();\n\n const state = useTableCollection<any>({\n queryName: `${collectionId}`,\n itemKey: (item) => item[schema.idField],\n itemName: (item) => item[schema.displayField],\n filters: filtersObject,\n toExtendedFields: (item) => item.extendedFields,\n fetchErrorMessage: ({ err }) => String(err),\n fetchData,\n limit,\n persistQueryToUrl,\n disableAutoSelectAllCount,\n selectionConsistencyMode,\n });\n\n const optimisticActions = useAutoPatternsOptimisticActions(\n collectionId,\n state.collection,\n );\n\n const commonFeatures = useCommonCollectionFeatures({\n ...configuration,\n optimisticActions,\n });\n\n return {\n ...commonFeatures,\n state,\n columns,\n filters: filterComponent,\n optimisticActions,\n customColumns,\n onRowClick,\n };\n};\n"],"mappings":";;;;AACA,IAAAA,aAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,4BAAA,GAAAF,OAAA;AACA,IAAAG,WAAA,GAAAH,OAAA;AACA,IAAAI,cAAA,GAAAJ,OAAA;AACA,IAAAK,iCAAA,GAAAL,OAAA;AACA,IAAAM,qBAAA,GAAAN,OAAA;AAEO,MAAMO,gBAAgB,GAAIC,aAA0B,IAAK;EAC9D,MAAM;IACJC,YAAY;IACZC,KAAK;IACLC,iBAAiB;IACjBC,yBAAyB;IACzBC;EACF,CAAC,GAAGL,aAAa,CAACM,UAAU;EAE5B,MAAM;IAAEC,eAAe;IAAEC,aAAa;IAAEC;EAAe,CAAC,GAAG,IAAAC,sBAAU,EACnEV,aAAa,CAACW,OAChB,CAAC;EACD,MAAM;IAAEC,aAAa;IAAEC,eAAe;IAAEC,OAAO;IAAEC;EAAW,CAAC,GAC3D,IAAAC,0CAAoB,EAAChB,aAAa,CAAC;EAErC,MAAM;IAAEiB;EAAU,CAAC,GAAG,IAAAC,0BAAY,EAAC;IACjCC,gBAAgB,EAAEnB,aAAa,CAACM,UAAU;IAC1CO,eAAe;IACfJ;EACF,CAAC,CAAC;EAEF,MAAMW,MAAM,GAAG,IAAAC,wBAAS,EAAC,CAAC;EAE1B,MAAMC,KAAK,GAAG,IAAAC,4BAAkB,EAAM;IACpCC,SAAS,EAAE,GAAGvB,YAAY,EAAE;IAC5BwB,OAAO,EAAGC,IAAI,IAAKA,IAAI,CAACN,MAAM,CAACO,OAAO,CAAC;IACvCC,QAAQ,EAAGF,IAAI,IAAKA,IAAI,CAACN,MAAM,CAACS,YAAY,CAAC;IAC7ClB,OAAO,EAAEH,aAAa;IACtBsB,gBAAgB,EAAGJ,IAAI,IAAKA,IAAI,CAACK,cAAc;IAC/CC,iBAAiB,EAAEA,CAAC;MAAEC;IAAI,CAAC,KAAKC,MAAM,CAACD,GAAG,CAAC;IAC3ChB,SAAS;IACTf,KAAK;IACLC,iBAAiB;IACjBC,yBAAyB;IACzBC;EACF,CAAC,CAAC;EAEF,MAAM8B,iBAAiB,GAAG,IAAAC,kEAAgC,EACxDnC,YAAY,EACZqB,KAAK,CAAChB,UACR,CAAC;EAED,MAAM+B,cAAc,GAAG,IAAAC,wDAA2B,EAAC;IACjD,GAAGtC,aAAa;IAChBmC;EACF,CAAC,CAAC;EAEF,OAAO;IACL,GAAGE,cAAc;IACjBf,KAAK;IACLR,OAAO;IACPH,OAAO,EAAEJ,eAAe;IACxB4B,iBAAiB;IACjBvB,aAAa;IACbG;EACF,CAAC;AACH,CAAC;AAACwB,OAAA,CAAAxC,gBAAA,GAAAA,gBAAA","ignoreList":[]}
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.useTableGridSwitchFeatures = void 0;
5
+ var _useFetchData = require("./useFetchData");
6
+ var _patterns = require("@wix/patterns");
7
+ var _useCommonCollectionFeatures = require("./useCommonCollectionFeatures");
8
+ var _useFilters = require("./useFilters");
9
+ var _SchemaContext = require("../providers/SchemaContext");
10
+ var _useAutoPatternsOptimisticActions = require("./useAutoPatternsOptimisticActions");
11
+ var _useBaseGridFeatures = require("./useBaseGridFeatures");
12
+ var _useBaseTableFeatures = require("./useBaseTableFeatures");
13
+ const useTableGridSwitchFeatures = config => {
14
+ const schema = (0, _SchemaContext.useSchema)();
15
+ const {
16
+ collectionId,
17
+ limit,
18
+ persistQueryToUrl,
19
+ disableAutoSelectAllCount,
20
+ selectionConsistencyMode
21
+ } = config.collection;
22
+ const {
23
+ filterComponent,
24
+ filtersObject,
25
+ filtersMapping
26
+ } = (0, _useFilters.useFilters)(config.filters);
27
+ const {
28
+ preset,
29
+ imagePlacement,
30
+ visibleFieldIds: gridVisibleFieldIds,
31
+ renderItem
32
+ } = (0, _useBaseGridFeatures.useBaseGridFeatures)(config);
33
+ const {
34
+ customColumns,
35
+ visibleFieldIds: tableVisibleFieldIds,
36
+ columns: tableColumns,
37
+ onRowClick
38
+ } = (0, _useBaseTableFeatures.useBaseTableFeatures)(config);
39
+ const {
40
+ fetchData: tableFetchData
41
+ } = (0, _useFetchData.useFetchData)({
42
+ collectionConfig: config.collection,
43
+ visibleFieldIds: Array.from(new Set([...tableVisibleFieldIds, ...gridVisibleFieldIds])),
44
+ filtersMapping
45
+ });
46
+ const state = (0, _patterns.useTableGridSwitchCollection)({
47
+ queryName: `${collectionId}`,
48
+ itemKey: item => item[schema.idField],
49
+ itemName: item => item[schema.displayField],
50
+ filters: filtersObject,
51
+ toExtendedFields: item => item.extendedFields,
52
+ fetchErrorMessage: ({
53
+ err
54
+ }) => String(err),
55
+ fetchData: tableFetchData,
56
+ limit,
57
+ persistQueryToUrl,
58
+ disableAutoSelectAllCount,
59
+ selectionConsistencyMode
60
+ });
61
+ const optimisticActions = (0, _useAutoPatternsOptimisticActions.useAutoPatternsOptimisticActions)(collectionId, state.collection);
62
+ const commonFeatures = (0, _useCommonCollectionFeatures.useCommonCollectionFeatures)({
63
+ ...config,
64
+ optimisticActions
65
+ });
66
+ return {
67
+ ...commonFeatures,
68
+ state,
69
+ columns: tableColumns,
70
+ filters: filterComponent,
71
+ optimisticActions,
72
+ customColumns,
73
+ onRowClick,
74
+ // Grid specific features
75
+ imagePlacement,
76
+ preset,
77
+ renderItem
78
+ };
79
+ };
80
+ exports.useTableGridSwitchFeatures = useTableGridSwitchFeatures;
81
+ //# sourceMappingURL=useTableGridSwitchFeatures.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_useFetchData","require","_patterns","_useCommonCollectionFeatures","_useFilters","_SchemaContext","_useAutoPatternsOptimisticActions","_useBaseGridFeatures","_useBaseTableFeatures","useTableGridSwitchFeatures","config","schema","useSchema","collectionId","limit","persistQueryToUrl","disableAutoSelectAllCount","selectionConsistencyMode","collection","filterComponent","filtersObject","filtersMapping","useFilters","filters","preset","imagePlacement","visibleFieldIds","gridVisibleFieldIds","renderItem","useBaseGridFeatures","customColumns","tableVisibleFieldIds","columns","tableColumns","onRowClick","useBaseTableFeatures","fetchData","tableFetchData","useFetchData","collectionConfig","Array","from","Set","state","useTableGridSwitchCollection","queryName","itemKey","item","idField","itemName","displayField","toExtendedFields","extendedFields","fetchErrorMessage","err","String","optimisticActions","useAutoPatternsOptimisticActions","commonFeatures","useCommonCollectionFeatures","exports"],"sources":["../../../src/hooks/useTableGridSwitchFeatures.tsx"],"sourcesContent":["import { TableGridSwitchConfig } from '../types';\nimport { useFetchData } from './useFetchData';\nimport { useTableGridSwitchCollection } from '@wix/patterns';\nimport { useCommonCollectionFeatures } from './useCommonCollectionFeatures';\nimport { useFilters } from './useFilters';\nimport { useSchema } from '../providers/SchemaContext';\nimport { useAutoPatternsOptimisticActions } from './useAutoPatternsOptimisticActions';\nimport { useBaseGridFeatures } from './useBaseGridFeatures';\nimport { useBaseTableFeatures } from './useBaseTableFeatures';\n\nexport const useTableGridSwitchFeatures = (config: TableGridSwitchConfig) => {\n const schema = useSchema();\n\n const {\n collectionId,\n limit,\n persistQueryToUrl,\n disableAutoSelectAllCount,\n selectionConsistencyMode,\n } = config.collection;\n\n const { filterComponent, filtersObject, filtersMapping } = useFilters(\n config.filters,\n );\n\n const {\n preset,\n imagePlacement,\n visibleFieldIds: gridVisibleFieldIds,\n renderItem,\n } = useBaseGridFeatures(config);\n\n const {\n customColumns,\n visibleFieldIds: tableVisibleFieldIds,\n columns: tableColumns,\n onRowClick,\n } = useBaseTableFeatures(config);\n\n const { fetchData: tableFetchData } = useFetchData({\n collectionConfig: config.collection,\n visibleFieldIds: Array.from(\n new Set([...tableVisibleFieldIds, ...gridVisibleFieldIds]),\n ),\n filtersMapping,\n });\n\n const state = useTableGridSwitchCollection<any>({\n queryName: `${collectionId}`,\n itemKey: (item) => item[schema.idField],\n itemName: (item) => item[schema.displayField],\n filters: filtersObject,\n toExtendedFields: (item) => item.extendedFields,\n fetchErrorMessage: ({ err }) => String(err),\n fetchData: tableFetchData,\n limit,\n persistQueryToUrl,\n disableAutoSelectAllCount,\n selectionConsistencyMode,\n });\n\n const optimisticActions = useAutoPatternsOptimisticActions(\n collectionId,\n state.collection,\n );\n\n const commonFeatures = useCommonCollectionFeatures({\n ...config,\n optimisticActions,\n });\n\n return {\n ...commonFeatures,\n state,\n columns: tableColumns,\n filters: filterComponent,\n optimisticActions,\n customColumns,\n onRowClick,\n // Grid specific features\n imagePlacement,\n preset,\n renderItem,\n };\n};\n"],"mappings":";;;;AACA,IAAAA,aAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,4BAAA,GAAAF,OAAA;AACA,IAAAG,WAAA,GAAAH,OAAA;AACA,IAAAI,cAAA,GAAAJ,OAAA;AACA,IAAAK,iCAAA,GAAAL,OAAA;AACA,IAAAM,oBAAA,GAAAN,OAAA;AACA,IAAAO,qBAAA,GAAAP,OAAA;AAEO,MAAMQ,0BAA0B,GAAIC,MAA6B,IAAK;EAC3E,MAAMC,MAAM,GAAG,IAAAC,wBAAS,EAAC,CAAC;EAE1B,MAAM;IACJC,YAAY;IACZC,KAAK;IACLC,iBAAiB;IACjBC,yBAAyB;IACzBC;EACF,CAAC,GAAGP,MAAM,CAACQ,UAAU;EAErB,MAAM;IAAEC,eAAe;IAAEC,aAAa;IAAEC;EAAe,CAAC,GAAG,IAAAC,sBAAU,EACnEZ,MAAM,CAACa,OACT,CAAC;EAED,MAAM;IACJC,MAAM;IACNC,cAAc;IACdC,eAAe,EAAEC,mBAAmB;IACpCC;EACF,CAAC,GAAG,IAAAC,wCAAmB,EAACnB,MAAM,CAAC;EAE/B,MAAM;IACJoB,aAAa;IACbJ,eAAe,EAAEK,oBAAoB;IACrCC,OAAO,EAAEC,YAAY;IACrBC;EACF,CAAC,GAAG,IAAAC,0CAAoB,EAACzB,MAAM,CAAC;EAEhC,MAAM;IAAE0B,SAAS,EAAEC;EAAe,CAAC,GAAG,IAAAC,0BAAY,EAAC;IACjDC,gBAAgB,EAAE7B,MAAM,CAACQ,UAAU;IACnCQ,eAAe,EAAEc,KAAK,CAACC,IAAI,CACzB,IAAIC,GAAG,CAAC,CAAC,GAAGX,oBAAoB,EAAE,GAAGJ,mBAAmB,CAAC,CAC3D,CAAC;IACDN;EACF,CAAC,CAAC;EAEF,MAAMsB,KAAK,GAAG,IAAAC,sCAA4B,EAAM;IAC9CC,SAAS,EAAE,GAAGhC,YAAY,EAAE;IAC5BiC,OAAO,EAAGC,IAAI,IAAKA,IAAI,CAACpC,MAAM,CAACqC,OAAO,CAAC;IACvCC,QAAQ,EAAGF,IAAI,IAAKA,IAAI,CAACpC,MAAM,CAACuC,YAAY,CAAC;IAC7C3B,OAAO,EAAEH,aAAa;IACtB+B,gBAAgB,EAAGJ,IAAI,IAAKA,IAAI,CAACK,cAAc;IAC/CC,iBAAiB,EAAEA,CAAC;MAAEC;IAAI,CAAC,KAAKC,MAAM,CAACD,GAAG,CAAC;IAC3ClB,SAAS,EAAEC,cAAc;IACzBvB,KAAK;IACLC,iBAAiB;IACjBC,yBAAyB;IACzBC;EACF,CAAC,CAAC;EAEF,MAAMuC,iBAAiB,GAAG,IAAAC,kEAAgC,EACxD5C,YAAY,EACZ8B,KAAK,CAACzB,UACR,CAAC;EAED,MAAMwC,cAAc,GAAG,IAAAC,wDAA2B,EAAC;IACjD,GAAGjD,MAAM;IACT8C;EACF,CAAC,CAAC;EAEF,OAAO;IACL,GAAGE,cAAc;IACjBf,KAAK;IACLX,OAAO,EAAEC,YAAY;IACrBV,OAAO,EAAEJ,eAAe;IACxBqC,iBAAiB;IACjB1B,aAAa;IACbI,UAAU;IACV;IACAT,cAAc;IACdD,MAAM;IACNI;EACF,CAAC;AACH,CAAC;AAACgC,OAAA,CAAAnD,0BAAA,GAAAA,0BAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["ComponentTypeEnum","exports"],"sources":["../../../src/types/CollectionPageConfig.ts"],"sourcesContent":["import { CollectionToolbarFiltersProps } from '@wix/patterns';\nimport { DateRangeFilterMode, DateRangeOptions } from '@wix/patterns/core';\nimport { BaseCollectionConfig } from './types';\nimport {\n ActionCellConfig,\n BulkActionsConfig,\n CollectionPagePrimaryActions,\n CollectionPageSecondaryActions,\n} from './actions';\n\nexport interface CollectionPageConfig {\n route: {\n path: string;\n };\n title: { text: string; hideTotal?: boolean };\n subtitle?: {\n text: string;\n learnMore?: {\n url: string;\n label?: string;\n };\n };\n actions?: {\n primaryActions?: CollectionPagePrimaryActions;\n secondaryActions?: CollectionPageSecondaryActions;\n };\n components: ComponentConfig[];\n}\n\nexport interface ComponentConfig {\n type: 'Table' | 'Grid' | 'TableGridSwitch';\n table?: TableConfig;\n grid?: GridConfig;\n}\n\nexport interface CollectionConfig extends BaseCollectionConfig {\n fetchData?: FetchData;\n limit?: number;\n persistQueryToUrl?: boolean;\n disableAutoSelectAllCount?: boolean;\n selectionConsistencyMode?: 'preserve' | 'clear';\n}\n\nexport interface BaseCollectionComponentConfig {\n collection: CollectionConfig;\n entityPageId?: string;\n search?: { shown?: boolean };\n toolbarTitle?: ToolbarTitle;\n actionCell?: ActionCellConfig;\n emptyState?: EmptyState;\n filters?: FiltersConfig;\n bulkActionToolbar?: BulkActionsConfig;\n}\n\nexport interface TableConfig extends BaseCollectionComponentConfig {\n columns: Column[];\n customColumns?: {\n enabled: boolean;\n };\n}\n\nexport interface GridConfig extends BaseCollectionComponentConfig {\n item: GridItem;\n}\n\nexport interface ToolbarTitle {\n title: string;\n subtitle?: {\n text: string;\n info?: {\n content: {\n text: string;\n link?: {\n url: string;\n label: string;\n };\n };\n };\n learnMore?: {\n url: string;\n label?: string;\n };\n };\n showTotal?: boolean;\n itemsLimit?: number;\n}\n\nexport interface Column {\n id: string;\n name: string;\n width?: string;\n sortable?: boolean;\n defaultSortOrder?: 'asc' | 'desc';\n sortMode?: 'asc' | 'desc';\n defaultHidden?: boolean;\n hiddenFromCustomColumnsSelection?: boolean;\n hideable?: boolean;\n reorderDisabled?: boolean;\n}\n\nexport interface GridItem {\n titleFieldId: string;\n subtitleFieldId?: string;\n imageFieldId?: string;\n cardContentMode?: 'full' | 'title' | 'empty'; // Footer is not supported in auto-patterns\n imagePlacement?: 'top' | 'side';\n}\n\nexport interface EmptyState {\n title?: string;\n subtitle?: string;\n image?: {\n id: string;\n };\n addNewCta?: {\n id?: string;\n text?: string;\n };\n customCta?: {\n id?: string;\n };\n}\n\ninterface FetchData {\n id: string;\n}\n\nexport interface FilterOption {\n value: string;\n label: string;\n}\n\nexport type FilterSelectionMode = 'single' | 'multiple';\nexport type FilterOptionType =\n | 'checkbox'\n | 'inlineCheckbox'\n | 'radio'\n | 'select';\n\nexport enum ComponentTypeEnum {\n SINGLE = 'single',\n MULTI_SELECT = 'multi-select',\n RADIO_GROUP = 'radio-group',\n NUMBER = 'number',\n DATE_RANGE = 'date-range',\n}\n\nexport interface FiltersConfig {\n items: Filter[];\n maxInlineFilters?: CollectionToolbarFiltersProps['inline'];\n panelTitle?: string;\n}\n\nexport interface BaseOptionsFilterConfig {\n selectionMode: FilterSelectionMode;\n}\n\nexport interface DateFilterConfig {\n mode?: DateRangeFilterMode;\n presets?: DateRangeOptions;\n includeTime?: boolean;\n}\n\nexport interface NumberFilterConfig {\n min?: number;\n max?: number;\n allowedDecimals?: boolean;\n}\n\nexport interface BooleanFilterConfig {\n trueLabel?: string;\n falseLabel?: string;\n}\n\nexport interface EnumFilterConfig extends BaseOptionsFilterConfig {\n options: FilterOption[];\n optionType?: FilterOptionType;\n}\n\nexport interface DynamicOptionsFilterConfig extends BaseOptionsFilterConfig {}\n\nexport interface Filter {\n id: string;\n fieldId: string;\n displayName?: string;\n sectionTitle?: string;\n openByDefault?: boolean;\n tagLabel?: string;\n numberConfig?: NumberFilterConfig;\n dateConfig?: DateFilterConfig;\n booleanConfig?: BooleanFilterConfig;\n enumConfig?: EnumFilterConfig;\n dynamicOptionsConfig?: DynamicOptionsFilterConfig;\n}\n"],"mappings":";;;;IA2IYA,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,0BAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAA,OAAjBA,iBAAiB;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["ComponentTypeEnum","exports"],"sources":["../../../src/types/CollectionPageConfig.ts"],"sourcesContent":["import { CollectionToolbarFiltersProps } from '@wix/patterns';\nimport { DateRangeFilterMode, DateRangeOptions } from '@wix/patterns/core';\nimport { BaseCollectionConfig } from './types';\nimport {\n ActionCellConfig,\n BulkActionsConfig,\n CollectionPagePrimaryActions,\n CollectionPageSecondaryActions,\n} from './actions';\n\nexport interface CollectionPageConfig {\n route: {\n path: string;\n };\n title: { text: string; hideTotal?: boolean };\n subtitle?: {\n text: string;\n learnMore?: {\n url: string;\n label?: string;\n };\n };\n actions?: {\n primaryActions?: CollectionPagePrimaryActions;\n secondaryActions?: CollectionPageSecondaryActions;\n };\n components: ComponentConfig[];\n}\n\nexport interface ComponentConfig {\n type: 'Table' | 'Grid' | 'TableGridSwitch';\n table?: TableConfig;\n grid?: GridConfig;\n tableGridSwitch?: TableGridSwitchConfig;\n}\n\nexport interface CollectionConfig extends BaseCollectionConfig {\n fetchData?: FetchData;\n limit?: number;\n persistQueryToUrl?: boolean;\n disableAutoSelectAllCount?: boolean;\n selectionConsistencyMode?: 'preserve' | 'clear';\n}\n\nexport interface BaseCollectionComponentConfig {\n collection: CollectionConfig;\n entityPageId?: string;\n search?: { shown?: boolean };\n toolbarTitle?: ToolbarTitle;\n actionCell?: ActionCellConfig;\n emptyState?: EmptyState;\n filters?: FiltersConfig;\n bulkActionToolbar?: BulkActionsConfig;\n}\n\nexport interface TableConfig extends BaseCollectionComponentConfig {\n columns: Column[];\n customColumns?: {\n enabled: boolean;\n };\n}\n\nexport interface GridConfig extends BaseCollectionComponentConfig {\n item: GridItem;\n}\n\nexport interface TableGridSwitchConfig extends TableConfig, GridConfig {}\n\nexport interface ToolbarTitle {\n title: string;\n subtitle?: {\n text: string;\n info?: {\n content: {\n text: string;\n link?: {\n url: string;\n label: string;\n };\n };\n };\n learnMore?: {\n url: string;\n label?: string;\n };\n };\n showTotal?: boolean;\n itemsLimit?: number;\n}\n\nexport interface Column {\n id: string;\n name: string;\n width: string;\n sortable?: boolean;\n defaultSortOrder?: 'asc' | 'desc';\n sortMode?: 'asc' | 'desc';\n defaultHidden?: boolean;\n hiddenFromCustomColumnsSelection?: boolean;\n hideable?: boolean;\n reorderDisabled?: boolean;\n}\n\nexport interface GridItem {\n titleFieldId: string;\n subtitleFieldId?: string;\n imageFieldId?: string;\n cardContentMode?: 'full' | 'title' | 'empty'; // Footer is not supported in auto-patterns\n imagePlacement?: 'top' | 'side';\n}\n\nexport interface EmptyState {\n title?: string;\n subtitle?: string;\n image?: {\n id: string;\n };\n addNewCta?: {\n id?: string;\n text?: string;\n };\n customCta?: {\n id?: string;\n };\n}\n\ninterface FetchData {\n id: string;\n}\n\nexport interface FilterOption {\n value: string;\n label: string;\n}\n\nexport type FilterSelectionMode = 'single' | 'multiple';\nexport type FilterOptionType =\n | 'checkbox'\n | 'inlineCheckbox'\n | 'radio'\n | 'select';\n\nexport enum ComponentTypeEnum {\n SINGLE = 'single',\n MULTI_SELECT = 'multi-select',\n RADIO_GROUP = 'radio-group',\n NUMBER = 'number',\n DATE_RANGE = 'date-range',\n}\n\nexport interface FiltersConfig {\n items: Filter[];\n maxInlineFilters?: CollectionToolbarFiltersProps['inline'];\n panelTitle?: string;\n}\n\nexport interface BaseOptionsFilterConfig {\n selectionMode: FilterSelectionMode;\n}\n\nexport interface DateFilterConfig {\n mode?: DateRangeFilterMode;\n presets?: DateRangeOptions;\n includeTime?: boolean;\n}\n\nexport interface NumberFilterConfig {\n min?: number;\n max?: number;\n allowedDecimals?: boolean;\n}\n\nexport interface BooleanFilterConfig {\n trueLabel?: string;\n falseLabel?: string;\n}\n\nexport interface EnumFilterConfig extends BaseOptionsFilterConfig {\n options: FilterOption[];\n optionType?: FilterOptionType;\n}\n\nexport interface DynamicOptionsFilterConfig extends BaseOptionsFilterConfig {}\n\nexport interface Filter {\n id: string;\n fieldId: string;\n displayName?: string;\n sectionTitle?: string;\n openByDefault?: boolean;\n tagLabel?: string;\n numberConfig?: NumberFilterConfig;\n dateConfig?: DateFilterConfig;\n booleanConfig?: BooleanFilterConfig;\n enumConfig?: EnumFilterConfig;\n dynamicOptionsConfig?: DynamicOptionsFilterConfig;\n}\n"],"mappings":";;;;IA8IYA,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,0BAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAA,OAAjBA,iBAAiB;AAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["../../../../src/types/actions/bulkActions.ts"],"sourcesContent":["import {\n BaseActionParams,\n CustomActionModalProps,\n ResolvedAction,\n} from '../../exports/types';\nimport {\n BulkDeleteActionConfig,\n CustomActionConfig,\n CustomModalActionConfig,\n} from './base';\n\nexport type BulkActionItemConfig =\n | BulkDeleteActionConfig\n | CustomModalActionConfig\n | CustomActionConfig;\n\nexport interface BulkActionsPrimaryActions {\n items: BulkActionItemConfig[];\n}\n\nexport interface BulkActionSection {\n items: BulkActionItemConfig[];\n}\n\nexport interface BulkActionsSecondaryActions {\n sections: BulkActionSection[];\n}\n\nexport interface BulkActionsConfig {\n primaryActions?: BulkActionsPrimaryActions;\n secondaryActions?: BulkActionsSecondaryActions;\n}\n\nexport interface BulkActionsActionParams {\n selectedValues: any[];\n total: number;\n}\n\nexport interface CustomBulkActionsActionParams extends BaseActionParams {\n actionParams: BulkActionsActionParams;\n}\nexport type CustomBulkActionsActionResolver = (\n params: CustomBulkActionsActionParams,\n) => ResolvedAction;\n\nexport interface CustomBulkActionsActionModalProps\n extends CustomActionModalProps {\n actionParams: CustomBulkActionsActionParams;\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["../../../../src/types/actions/bulkActions.ts"],"sourcesContent":["import {\n BaseActionParams,\n CustomActionModalProps,\n ResolvedAction,\n} from '../../exports/types';\nimport {\n BulkDeleteActionConfig,\n CustomActionConfig,\n CustomModalActionConfig,\n} from './base';\n\nexport type BulkActionItemConfig =\n | BulkDeleteActionConfig\n | CustomModalActionConfig\n | CustomActionConfig;\n\nexport interface BulkActionsPrimaryActions {\n items: BulkActionItemConfig[];\n}\n\nexport interface BulkActionSection {\n items: BulkActionItemConfig[];\n}\n\nexport interface BulkActionsSecondaryActions {\n sections: BulkActionSection[];\n}\n\nexport interface BulkActionsConfig {\n primaryActions?: BulkActionsPrimaryActions;\n secondaryActions?: BulkActionsSecondaryActions;\n}\n\nexport interface BulkActionsActionParams {\n selectedValues: any[];\n total: number;\n}\n\nexport interface CustomBulkActionsActionParams extends BaseActionParams {\n actionParams: BulkActionsActionParams;\n}\nexport type CustomBulkActionsActionResolver = (\n params: CustomBulkActionsActionParams,\n) => ResolvedAction;\n\nexport interface CustomBulkActionsActionModalProps\n extends CustomActionModalProps {\n actionParams: BulkActionsActionParams;\n}\n"],"mappings":"","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["../../../../src/types/actions/collectionPageActions.ts"],"sourcesContent":["import {\n CreateActionConfig,\n CustomActionConfig,\n CustomModalActionConfig,\n} from './base';\n\nexport type CollectionPageActionConfig = (\n | CreateActionConfig\n | CustomModalActionConfig\n | CustomActionConfig\n) & {\n collection: {\n collectionId: string;\n entityTypeSource: 'cms';\n };\n};\n\ntype CollectionPageSingleAction = {\n type: 'single';\n single: {\n item: CollectionPageActionConfig;\n };\n multi?: never;\n};\n\ntype CollectionPageMultiAction = {\n type: 'multi';\n multi: {\n label: string;\n icon?: string;\n items: CollectionPageActionConfig[];\n };\n single?: never;\n};\n\nexport type CollectionPagePrimaryActions =\n | CollectionPageSingleAction\n | CollectionPageMultiAction;\n\nexport type CollectionPageSecondaryActions =\n | CollectionPageSingleAction\n | CollectionPageMultiAction;\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["../../../../src/types/actions/collectionPageActions.ts"],"sourcesContent":["import {\n BaseActionParams,\n CustomActionModalProps,\n ResolvedAction,\n} from '../../exports/types';\nimport {\n CreateActionConfig,\n CustomActionConfig,\n CustomModalActionConfig,\n} from './base';\n\nexport type CollectionPageActionConfig = (\n | CreateActionConfig\n | CustomModalActionConfig\n | CustomActionConfig\n) & {\n collection: {\n collectionId: string;\n entityTypeSource: 'cms';\n };\n};\n\ntype CollectionPageSingleAction = {\n type: 'single';\n single: {\n item: CollectionPageActionConfig;\n };\n multi?: never;\n};\n\ntype CollectionPageMultiAction = {\n type: 'multi';\n multi: {\n label: string;\n icon?: string;\n items: CollectionPageActionConfig[];\n };\n single?: never;\n};\n\nexport type CollectionPagePrimaryActions =\n | CollectionPageSingleAction\n | CollectionPageMultiAction;\n\nexport type CollectionPageSecondaryActions =\n | CollectionPageSingleAction\n | CollectionPageMultiAction;\n\nexport interface CollectionPageActionParams {\n collectionId: string;\n}\n\nexport interface CustomActionCollectionPageActionParams\n extends BaseActionParams {\n actionParams: CollectionPageActionParams;\n}\nexport type CustomActionCollectionPageActionResolver = (\n params: CustomActionCollectionPageActionParams,\n) => ResolvedAction;\n\nexport interface CustomActionCollectionPageActionModalProps\n extends CustomActionModalProps {\n actionParams: CollectionPageActionParams;\n}\n"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=wix-icons.d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["../../../src/types/wix-icons.d.ts"],"sourcesContent":["declare module '@wix/wix-ui-icons-common/dist/esm/general/dist/components/*.js' {\n import { ComponentType } from 'react';\n\n const component: ComponentType;\n export default component;\n}\n"],"mappings":"","ignoreList":[]}