@wix/auto-patterns 1.10.0 → 1.11.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.
- package/README.md +0 -50
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/ImageInput.js +2 -1
- package/dist/cjs/components/AutoPatternsEntityPage/Fields/ImageInput.js.map +1 -1
- package/dist/cjs/components/AutoPatternsTable/AutoPatternsTable.js +6 -2
- package/dist/cjs/components/AutoPatternsTable/AutoPatternsTable.js.map +1 -1
- package/dist/cjs/components/DynamicIcon.js +9 -45
- package/dist/cjs/components/DynamicIcon.js.map +1 -1
- package/dist/cjs/hooks/useActionCell.js +6 -3
- package/dist/cjs/hooks/useActionCell.js.map +1 -1
- package/dist/cjs/hooks/useBaseTableFeatures.js +7 -2
- package/dist/cjs/hooks/useBaseTableFeatures.js.map +1 -1
- package/dist/cjs/hooks/useBulkActionToolbar.js +28 -6
- package/dist/cjs/hooks/useBulkActionToolbar.js.map +1 -1
- package/dist/cjs/hooks/useCollectionPageActions.js +2 -3
- package/dist/cjs/hooks/useCollectionPageActions.js.map +1 -1
- package/dist/cjs/hooks/useColumns.js +19 -10
- package/dist/cjs/hooks/useColumns.js.map +1 -1
- package/dist/cjs/hooks/useTableFeatures.js +6 -2
- package/dist/cjs/hooks/useTableFeatures.js.map +1 -1
- package/dist/cjs/hooks/useTableGridSwitchFeatures.js +5 -1
- package/dist/cjs/hooks/useTableGridSwitchFeatures.js.map +1 -1
- package/dist/cjs/types/CollectionPageConfig.js.map +1 -1
- package/dist/cjs/types/actions/actionCell.js.map +1 -1
- package/dist/cjs/types/actions/base.js.map +1 -1
- package/dist/cjs/types/actions/bulkActions.js.map +1 -1
- package/dist/cjs/types/actions/collectionPageActions.js.map +1 -1
- package/dist/cjs/types/types.js.map +1 -1
- package/dist/cjs/utils/actions/bulkDeleteAction.js +12 -1
- package/dist/cjs/utils/actions/bulkDeleteAction.js.map +1 -1
- package/dist/cjs/utils/actions/createAction.js +12 -1
- package/dist/cjs/utils/actions/createAction.js.map +1 -1
- package/dist/cjs/utils/actions/deleteAction.js +12 -1
- package/dist/cjs/utils/actions/deleteAction.js.map +1 -1
- package/dist/cjs/utils/actions/resolveAction.js +2 -17
- package/dist/cjs/utils/actions/resolveAction.js.map +1 -1
- package/dist/cjs/utils/actions/types.js.map +1 -1
- package/dist/cjs/utils/actions/updateAction.js +12 -1
- package/dist/cjs/utils/actions/updateAction.js.map +1 -1
- package/dist/esm/components/AutoPatternsEntityPage/Fields/ImageInput.js +2 -1
- package/dist/esm/components/AutoPatternsEntityPage/Fields/ImageInput.js.map +1 -1
- package/dist/esm/components/AutoPatternsTable/AutoPatternsTable.js +6 -2
- package/dist/esm/components/AutoPatternsTable/AutoPatternsTable.js.map +1 -1
- package/dist/esm/components/DynamicIcon.js +4 -13
- package/dist/esm/components/DynamicIcon.js.map +1 -1
- package/dist/esm/hooks/useActionCell.js +6 -3
- package/dist/esm/hooks/useActionCell.js.map +1 -1
- package/dist/esm/hooks/useBaseTableFeatures.js +6 -1
- package/dist/esm/hooks/useBaseTableFeatures.js.map +1 -1
- package/dist/esm/hooks/useBulkActionToolbar.js +27 -5
- package/dist/esm/hooks/useBulkActionToolbar.js.map +1 -1
- package/dist/esm/hooks/useCollectionPageActions.js +1 -2
- package/dist/esm/hooks/useCollectionPageActions.js.map +1 -1
- package/dist/esm/hooks/useColumns.js +19 -10
- package/dist/esm/hooks/useColumns.js.map +1 -1
- package/dist/esm/hooks/useTableFeatures.js +6 -2
- package/dist/esm/hooks/useTableFeatures.js.map +1 -1
- package/dist/esm/hooks/useTableGridSwitchFeatures.js +5 -1
- package/dist/esm/hooks/useTableGridSwitchFeatures.js.map +1 -1
- package/dist/esm/types/CollectionPageConfig.js.map +1 -1
- package/dist/esm/types/actions/actionCell.js.map +1 -1
- package/dist/esm/types/actions/base.js.map +1 -1
- package/dist/esm/types/actions/bulkActions.js.map +1 -1
- package/dist/esm/types/actions/collectionPageActions.js.map +1 -1
- package/dist/esm/types/types.js.map +1 -1
- package/dist/esm/utils/actions/bulkDeleteAction.js +3 -1
- package/dist/esm/utils/actions/bulkDeleteAction.js.map +1 -1
- package/dist/esm/utils/actions/createAction.js +3 -1
- package/dist/esm/utils/actions/createAction.js.map +1 -1
- package/dist/esm/utils/actions/deleteAction.js +3 -1
- package/dist/esm/utils/actions/deleteAction.js.map +1 -1
- package/dist/esm/utils/actions/resolveAction.js +1 -7
- package/dist/esm/utils/actions/resolveAction.js.map +1 -1
- package/dist/esm/utils/actions/types.js.map +1 -1
- package/dist/esm/utils/actions/updateAction.js +3 -1
- package/dist/esm/utils/actions/updateAction.js.map +1 -1
- package/dist/types/components/AutoPatternsEntityPage/Fields/ImageInput.d.ts.map +1 -1
- package/dist/types/components/AutoPatternsTable/AutoPatternsTable.d.ts.map +1 -1
- package/dist/types/components/DynamicIcon.d.ts.map +1 -1
- package/dist/types/hooks/useActionCell.d.ts.map +1 -1
- package/dist/types/hooks/useBaseTableFeatures.d.ts +2 -0
- package/dist/types/hooks/useBaseTableFeatures.d.ts.map +1 -1
- package/dist/types/hooks/useBulkActionToolbar.d.ts.map +1 -1
- package/dist/types/hooks/useCollectionPageActions.d.ts.map +1 -1
- package/dist/types/hooks/useColumns.d.ts.map +1 -1
- package/dist/types/hooks/useTableFeatures.d.ts +2 -0
- package/dist/types/hooks/useTableFeatures.d.ts.map +1 -1
- package/dist/types/hooks/useTableGridSwitchFeatures.d.ts +2 -0
- package/dist/types/hooks/useTableGridSwitchFeatures.d.ts.map +1 -1
- package/dist/types/types/CollectionPageConfig.d.ts +1 -0
- package/dist/types/types/CollectionPageConfig.d.ts.map +1 -1
- package/dist/types/types/actions/actionCell.d.ts +2 -0
- package/dist/types/types/actions/actionCell.d.ts.map +1 -1
- package/dist/types/types/actions/base.d.ts +0 -1
- package/dist/types/types/actions/base.d.ts.map +1 -1
- package/dist/types/types/actions/bulkActions.d.ts +19 -11
- package/dist/types/types/actions/bulkActions.d.ts.map +1 -1
- package/dist/types/types/actions/collectionPageActions.d.ts +0 -1
- package/dist/types/types/actions/collectionPageActions.d.ts.map +1 -1
- package/dist/types/types/types.d.ts +1 -0
- package/dist/types/types/types.d.ts.map +1 -1
- package/dist/types/utils/actions/bulkDeleteAction.d.ts +2 -1
- package/dist/types/utils/actions/bulkDeleteAction.d.ts.map +1 -1
- package/dist/types/utils/actions/createAction.d.ts +2 -1
- package/dist/types/utils/actions/createAction.d.ts.map +1 -1
- package/dist/types/utils/actions/deleteAction.d.ts +2 -1
- package/dist/types/utils/actions/deleteAction.d.ts.map +1 -1
- package/dist/types/utils/actions/resolveAction.d.ts +1 -3
- package/dist/types/utils/actions/resolveAction.d.ts.map +1 -1
- package/dist/types/utils/actions/types.d.ts +2 -1
- package/dist/types/utils/actions/types.d.ts.map +1 -1
- package/dist/types/utils/actions/updateAction.d.ts +2 -1
- package/dist/types/utils/actions/updateAction.d.ts.map +1 -1
- package/package.json +5 -8
- package/dist/cjs/types/wix-icons.d.js +0 -2
- package/dist/cjs/types/wix-icons.d.js.map +0 -1
- package/dist/cjs/utils/generated-icon-imports.js +0 -1438
- package/dist/cjs/utils/generated-icon-imports.js.map +0 -1
- package/dist/esm/types/wix-icons.d.js +0 -2
- package/dist/esm/types/wix-icons.d.js.map +0 -1
- package/dist/esm/utils/generated-icon-imports.js +0 -1432
- package/dist/esm/utils/generated-icon-imports.js.map +0 -1
- package/dist/types/utils/generated-icon-imports.d.ts +0 -4
- package/dist/types/utils/generated-icon-imports.d.ts.map +0 -1
|
@@ -15,7 +15,9 @@ export const AutoPatternsTable = _ref => {
|
|
|
15
15
|
filters,
|
|
16
16
|
actionCell,
|
|
17
17
|
bulkActionToolbar,
|
|
18
|
-
onRowClick
|
|
18
|
+
onRowClick,
|
|
19
|
+
stickyColumns,
|
|
20
|
+
stickySelectionColumn
|
|
19
21
|
} = useTableFeatures(configuration);
|
|
20
22
|
return /*#__PURE__*/React.createElement(Table, {
|
|
21
23
|
dataHook: "auto-patterns-table",
|
|
@@ -29,7 +31,9 @@ export const AutoPatternsTable = _ref => {
|
|
|
29
31
|
emptyState: emptyState,
|
|
30
32
|
bulkActionToolbar: bulkActionToolbar,
|
|
31
33
|
onRowClick: onRowClick,
|
|
32
|
-
horizontalScroll: true
|
|
34
|
+
horizontalScroll: true,
|
|
35
|
+
stickyColumns: stickyColumns,
|
|
36
|
+
stickySelectionColumn: stickySelectionColumn
|
|
33
37
|
});
|
|
34
38
|
};
|
|
35
39
|
//# sourceMappingURL=AutoPatternsTable.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Table","useTableFeatures","AutoPatternsTable","_ref","configuration","state","columns","customColumns","search","title","emptyState","filters","actionCell","bulkActionToolbar","onRowClick","createElement","dataHook","horizontalScroll"],"sources":["../../../../src/components/AutoPatternsTable/AutoPatternsTable.tsx"],"sourcesContent":["import React from 'react';\nimport { Table } from '@wix/patterns';\nimport { TableConfig } from '../../types';\nimport { useTableFeatures } from '../../hooks';\n\nexport interface AutoPatternsTableContentProps {\n configuration: TableConfig;\n}\n\nexport const AutoPatternsTable = ({\n configuration,\n}: AutoPatternsTableContentProps) => {\n const {\n state,\n columns,\n customColumns,\n search,\n title,\n emptyState,\n filters,\n actionCell,\n bulkActionToolbar,\n onRowClick,\n } = useTableFeatures(configuration);\n\n return (\n <Table\n dataHook=\"auto-patterns-table\"\n search={search}\n title={title}\n state={state}\n columns={columns}\n customColumns={customColumns}\n actionCell={actionCell}\n filters={filters}\n emptyState={emptyState}\n bulkActionToolbar={bulkActionToolbar}\n onRowClick={onRowClick}\n horizontalScroll\n />\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,KAAK,QAAQ,eAAe;AAErC,SAASC,gBAAgB,QAAQ,aAAa;AAM9C,OAAO,MAAMC,iBAAiB,GAAGC,IAAA,IAEI;EAAA,IAFH;IAChCC;EAC6B,CAAC,GAAAD,IAAA;EAC9B,MAAM;IACJE,KAAK;IACLC,OAAO;IACPC,aAAa;IACbC,MAAM;IACNC,KAAK;IACLC,UAAU;IACVC,OAAO;IACPC,UAAU;IACVC,iBAAiB;IACjBC;EACF,CAAC,
|
|
1
|
+
{"version":3,"names":["React","Table","useTableFeatures","AutoPatternsTable","_ref","configuration","state","columns","customColumns","search","title","emptyState","filters","actionCell","bulkActionToolbar","onRowClick","stickyColumns","stickySelectionColumn","createElement","dataHook","horizontalScroll"],"sources":["../../../../src/components/AutoPatternsTable/AutoPatternsTable.tsx"],"sourcesContent":["import React from 'react';\nimport { Table } from '@wix/patterns';\nimport { TableConfig } from '../../types';\nimport { useTableFeatures } from '../../hooks';\n\nexport interface AutoPatternsTableContentProps {\n configuration: TableConfig;\n}\n\nexport const AutoPatternsTable = ({\n configuration,\n}: AutoPatternsTableContentProps) => {\n const {\n state,\n columns,\n customColumns,\n search,\n title,\n emptyState,\n filters,\n actionCell,\n bulkActionToolbar,\n onRowClick,\n stickyColumns,\n stickySelectionColumn,\n } = useTableFeatures(configuration);\n\n return (\n <Table\n dataHook=\"auto-patterns-table\"\n search={search}\n title={title}\n state={state}\n columns={columns}\n customColumns={customColumns}\n actionCell={actionCell}\n filters={filters}\n emptyState={emptyState}\n bulkActionToolbar={bulkActionToolbar}\n onRowClick={onRowClick}\n horizontalScroll\n stickyColumns={stickyColumns}\n stickySelectionColumn={stickySelectionColumn}\n />\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,KAAK,QAAQ,eAAe;AAErC,SAASC,gBAAgB,QAAQ,aAAa;AAM9C,OAAO,MAAMC,iBAAiB,GAAGC,IAAA,IAEI;EAAA,IAFH;IAChCC;EAC6B,CAAC,GAAAD,IAAA;EAC9B,MAAM;IACJE,KAAK;IACLC,OAAO;IACPC,aAAa;IACbC,MAAM;IACNC,KAAK;IACLC,UAAU;IACVC,OAAO;IACPC,UAAU;IACVC,iBAAiB;IACjBC,UAAU;IACVC,aAAa;IACbC;EACF,CAAC,GAAGf,gBAAgB,CAACG,aAAa,CAAC;EAEnC,oBACEL,KAAA,CAAAkB,aAAA,CAACjB,KAAK;IACJkB,QAAQ,EAAC,qBAAqB;IAC9BV,MAAM,EAAEA,MAAO;IACfC,KAAK,EAAEA,KAAM;IACbJ,KAAK,EAAEA,KAAM;IACbC,OAAO,EAAEA,OAAQ;IACjBC,aAAa,EAAEA,aAAc;IAC7BK,UAAU,EAAEA,UAAW;IACvBD,OAAO,EAAEA,OAAQ;IACjBD,UAAU,EAAEA,UAAW;IACvBG,iBAAiB,EAAEA,iBAAkB;IACrCC,UAAU,EAAEA,UAAW;IACvBK,gBAAgB;IAChBJ,aAAa,EAAEA,aAAc;IAC7BC,qBAAqB,EAAEA;EAAsB,CAC9C,CAAC;AAEN,CAAC","ignoreList":[]}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import React, { lazy, memo, Suspense } from 'react';
|
|
2
|
-
import { iconImports } from '../utils/generated-icon-imports';
|
|
3
2
|
export const DynamicIcon = /*#__PURE__*/memo(_ref => {
|
|
4
3
|
let {
|
|
5
4
|
icon
|
|
@@ -16,18 +15,10 @@ export const DynamicIcon = /*#__PURE__*/memo(_ref => {
|
|
|
16
15
|
if (!icon) {
|
|
17
16
|
return null;
|
|
18
17
|
}
|
|
19
|
-
const
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
return /*#__PURE__*/React.createElement(FallbackIcon, null);
|
|
24
|
-
}
|
|
25
|
-
const DefaultIconComponent = /*#__PURE__*/lazy(defaultIconLoader);
|
|
26
|
-
return /*#__PURE__*/React.createElement(Suspense, {
|
|
27
|
-
fallback: /*#__PURE__*/React.createElement(FallbackIcon, null)
|
|
28
|
-
}, /*#__PURE__*/React.createElement(DefaultIconComponent, null));
|
|
29
|
-
}
|
|
30
|
-
const ImportedIconComponent = /*#__PURE__*/lazy(iconLoader);
|
|
18
|
+
const ImportedIconComponent = /*#__PURE__*/lazy(() => import(`@wix/wix-ui-icons-common/dist/esm/general/dist/components/${icon}.js`).catch(() => {
|
|
19
|
+
const defaultIconName = 'Edit';
|
|
20
|
+
return import(`@wix/wix-ui-icons-common/dist/esm/general/dist/components/${defaultIconName}.js`).catch(() => null);
|
|
21
|
+
}));
|
|
31
22
|
return /*#__PURE__*/React.createElement(Suspense, {
|
|
32
23
|
fallback: /*#__PURE__*/React.createElement(FallbackIcon, null)
|
|
33
24
|
}, /*#__PURE__*/React.createElement(ImportedIconComponent, null));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","lazy","memo","Suspense","
|
|
1
|
+
{"version":3,"names":["React","lazy","memo","Suspense","DynamicIcon","_ref","icon","process","env","NODE_ENV","createElement","style","height","width","ImportedIconComponent","catch","defaultIconName","fallback","FallbackIcon"],"sources":["../../../src/components/DynamicIcon.tsx"],"sourcesContent":["import React, { lazy, memo, Suspense } from 'react';\n\nexport const DynamicIcon = memo(({ icon }: { icon: string | undefined }) => {\n if (process.env.NODE_ENV === 'test') {\n return <div data-hook=\"icon-fallback\" style={{ height: 18, width: 18 }} />;\n }\n\n if (!icon) {\n return null;\n }\n\n const ImportedIconComponent = lazy(() =>\n import(\n `@wix/wix-ui-icons-common/dist/esm/general/dist/components/${icon}.js`\n ).catch(() => {\n const defaultIconName = 'Edit';\n return import(\n `@wix/wix-ui-icons-common/dist/esm/general/dist/components/${defaultIconName}.js`\n ).catch(() => null);\n }),\n );\n\n return (\n <Suspense fallback={<FallbackIcon />}>\n <ImportedIconComponent />\n </Suspense>\n );\n});\n\nexport const FallbackIcon = memo(() => (\n <div data-hook=\"icon-fallback\" style={{ height: 18, width: 18 }} />\n));\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,IAAI,EAAEC,IAAI,EAAEC,QAAQ,QAAQ,OAAO;AAEnD,OAAO,MAAMC,WAAW,gBAAGF,IAAI,CAACG,IAAA,IAA4C;EAAA,IAA3C;IAAEC;EAAmC,CAAC,GAAAD,IAAA;EACrE,IAAIE,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,MAAM,EAAE;IACnC,oBAAOT,KAAA,CAAAU,aAAA;MAAK,aAAU,eAAe;MAACC,KAAK,EAAE;QAAEC,MAAM,EAAE,EAAE;QAAEC,KAAK,EAAE;MAAG;IAAE,CAAE,CAAC;EAC5E;EAEA,IAAI,CAACP,IAAI,EAAE;IACT,OAAO,IAAI;EACb;EAEA,MAAMQ,qBAAqB,gBAAGb,IAAI,CAAC,MACjC,MAAM,CACJ,6DAA6DK,IAAI,KACnE,CAAC,CAACS,KAAK,CAAC,MAAM;IACZ,MAAMC,eAAe,GAAG,MAAM;IAC9B,OAAO,MAAM,CACX,6DAA6DA,eAAe,KAC9E,CAAC,CAACD,KAAK,CAAC,MAAM,IAAI,CAAC;EACrB,CAAC,CACH,CAAC;EAED,oBACEf,KAAA,CAAAU,aAAA,CAACP,QAAQ;IAACc,QAAQ,eAAEjB,KAAA,CAAAU,aAAA,CAACQ,YAAY,MAAE;EAAE,gBACnClB,KAAA,CAAAU,aAAA,CAACI,qBAAqB,MAAE,CAChB,CAAC;AAEf,CAAC,CAAC;AAEF,OAAO,MAAMI,YAAY,gBAAGhB,IAAI,CAAC,mBAC/BF,KAAA,CAAAU,aAAA;EAAK,aAAU,eAAe;EAACC,KAAK,EAAE;IAAEC,MAAM,EAAE,EAAE;IAAEC,KAAK,EAAE;EAAG;AAAE,CAAE,CACnE,CAAC","ignoreList":[]}
|
|
@@ -19,7 +19,7 @@ export const useActionCell = _ref => {
|
|
|
19
19
|
collectionId
|
|
20
20
|
});
|
|
21
21
|
const buildCellActions = useCallback((item, index, api) => {
|
|
22
|
-
var _config$primaryAction, _config$secondaryActi;
|
|
22
|
+
var _config$primaryAction, _config$secondaryActi, _config$secondaryActi2, _config$secondaryActi3;
|
|
23
23
|
const buildAction = actionConfig => {
|
|
24
24
|
let actionToResolve = null;
|
|
25
25
|
const baseParams = {
|
|
@@ -75,7 +75,6 @@ export const useActionCell = _ref => {
|
|
|
75
75
|
};
|
|
76
76
|
const primaryAction = config != null && (_config$primaryAction = config.primaryAction) != null && _config$primaryAction.item ? buildAction(config.primaryAction.item) : collectionType === 'Grid' && entityPageId ? {
|
|
77
77
|
text: editText,
|
|
78
|
-
icon: 'edit',
|
|
79
78
|
onClick: () => {
|
|
80
79
|
navigateToEntityPage({
|
|
81
80
|
item,
|
|
@@ -84,6 +83,8 @@ export const useActionCell = _ref => {
|
|
|
84
83
|
}
|
|
85
84
|
} : undefined;
|
|
86
85
|
const secondaryActions = config != null && (_config$secondaryActi = config.secondaryActions) != null && _config$secondaryActi.items.length ? config.secondaryActions.items.map(buildAction).filter(Boolean) : [];
|
|
86
|
+
const numOfVisibleSecondaryActions = config == null || (_config$secondaryActi2 = config.secondaryActions) == null ? void 0 : _config$secondaryActi2.inlineCount;
|
|
87
|
+
const alwaysShowSecondaryActions = config == null || (_config$secondaryActi3 = config.secondaryActions) == null ? void 0 : _config$secondaryActi3.inlineAlwaysVisible;
|
|
87
88
|
if (!primaryAction && !secondaryActions.length) {
|
|
88
89
|
return {};
|
|
89
90
|
}
|
|
@@ -95,7 +96,9 @@ export const useActionCell = _ref => {
|
|
|
95
96
|
}),
|
|
96
97
|
...(secondaryActions.length && {
|
|
97
98
|
secondaryActions
|
|
98
|
-
})
|
|
99
|
+
}),
|
|
100
|
+
numOfVisibleSecondaryActions,
|
|
101
|
+
alwaysShowSecondaryActions
|
|
99
102
|
};
|
|
100
103
|
}, [config, sdk, entityPageId, navigateToEntityPage, collectionType, editText]);
|
|
101
104
|
return buildCellActions;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useCallback","useActionsSDK","useWixPatternsContainer","useSelector","updateAction","customModalAction","customAction","resolveAction","deleteAction","useNavigation","useActionCell","_ref","config","collectionId","collectionType","entityPageId","navigateToEntityPage","container","editText","translate","sdk","buildCellActions","item","index","api","_config$primaryAction","_config$secondaryActi","buildAction","actionConfig","actionToResolve","baseParams","actionParams","type","action","resolvedAction","label","tooltip","resolvedActionProps","text","disabledDescription","primaryAction","
|
|
1
|
+
{"version":3,"names":["useCallback","useActionsSDK","useWixPatternsContainer","useSelector","updateAction","customModalAction","customAction","resolveAction","deleteAction","useNavigation","useActionCell","_ref","config","collectionId","collectionType","entityPageId","navigateToEntityPage","container","editText","translate","sdk","buildCellActions","item","index","api","_config$primaryAction","_config$secondaryActi","_config$secondaryActi2","_config$secondaryActi3","buildAction","actionConfig","actionToResolve","baseParams","actionParams","type","action","resolvedAction","label","tooltip","resolvedActionProps","text","disabledDescription","primaryAction","onClick","undefined","secondaryActions","items","length","map","filter","Boolean","numOfVisibleSecondaryActions","inlineCount","alwaysShowSecondaryActions","inlineAlwaysVisible"],"sources":["../../../src/hooks/useActionCell.ts"],"sourcesContent":["import { useCallback } from 'react';\nimport {\n ActionCellConfig,\n ActionCellItemConfig,\n ComponentConfig,\n ResolvedAction,\n} from '../types';\nimport { useActionsSDK } from './useActionsSDK';\nimport { useWixPatternsContainer, useSelector } from '@wix/patterns';\nimport {\n updateAction,\n customModalAction,\n customAction,\n resolveAction,\n deleteAction,\n} from '../utils/actions';\nimport { useNavigation } from './useNavigationUtils';\n\nexport interface useActionCellParams {\n config?: ActionCellConfig;\n collectionId: string;\n collectionType?: ComponentConfig['type'];\n entityPageId?: string;\n}\n\nexport const useActionCell = ({\n config,\n collectionId,\n collectionType,\n entityPageId,\n}: useActionCellParams) => {\n const { navigateToEntityPage } = useNavigation();\n const container = useWixPatternsContainer();\n const editText = useSelector(() =>\n container.translate('cairo.collectionsPage.edit.CTA'),\n );\n\n const sdk = useActionsSDK({\n collectionId,\n });\n\n const buildCellActions = useCallback(\n (item, index, api) => {\n const buildAction = (actionConfig: ActionCellItemConfig) => {\n let actionToResolve: Partial<ResolvedAction> | null = null;\n\n const baseParams = {\n actionParams: { item, index, api },\n sdk,\n };\n\n switch (actionConfig.type) {\n case 'update':\n actionToResolve = updateAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n case 'delete':\n actionToResolve = deleteAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n case 'customModal':\n actionToResolve = customModalAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n case 'custom':\n actionToResolve = customAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n default:\n return null;\n }\n\n if (!actionToResolve) {\n return null;\n }\n\n const resolvedAction = resolveAction(actionConfig, actionToResolve);\n const { label, tooltip, ...resolvedActionProps } = resolvedAction;\n\n return {\n ...resolvedActionProps,\n text: resolvedAction.label,\n disabledDescription: resolvedAction.tooltip,\n };\n };\n\n const primaryAction = config?.primaryAction?.item\n ? buildAction(config.primaryAction.item)\n : collectionType === 'Grid' && entityPageId\n ? {\n text: editText,\n onClick: () => {\n navigateToEntityPage({\n item,\n entityPageId,\n });\n },\n }\n : undefined;\n\n const secondaryActions = config?.secondaryActions?.items.length\n ? config.secondaryActions.items.map(buildAction).filter(Boolean)\n : [];\n\n const numOfVisibleSecondaryActions =\n config?.secondaryActions?.inlineCount;\n const alwaysShowSecondaryActions =\n config?.secondaryActions?.inlineAlwaysVisible;\n\n if (!primaryAction && !secondaryActions.length) {\n return {};\n }\n\n return {\n ...(primaryAction ? { primaryAction } : { primaryAction: undefined }),\n ...(secondaryActions.length && { secondaryActions }),\n numOfVisibleSecondaryActions,\n alwaysShowSecondaryActions,\n };\n },\n [config, sdk, entityPageId, navigateToEntityPage, collectionType, editText],\n );\n\n return buildCellActions;\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -14,11 +14,16 @@ export const useBaseTableFeatures = configuration => {
|
|
|
14
14
|
item,
|
|
15
15
|
entityPageId
|
|
16
16
|
});
|
|
17
|
+
const stickyColumns = configuration.stickyColumns;
|
|
18
|
+
const stickySelectionColumn = !!stickyColumns; // Sticky selection column is true if stickyColumns is positive number
|
|
19
|
+
|
|
17
20
|
return {
|
|
18
21
|
columns,
|
|
19
22
|
visibleFieldIds,
|
|
20
23
|
onRowClick,
|
|
21
|
-
customColumns: (_configuration$custom = configuration.customColumns) != null && _configuration$custom.enabled ? /*#__PURE__*/React.createElement(CustomColumns, null) : undefined
|
|
24
|
+
customColumns: (_configuration$custom = configuration.customColumns) != null && _configuration$custom.enabled ? /*#__PURE__*/React.createElement(CustomColumns, null) : undefined,
|
|
25
|
+
stickyColumns,
|
|
26
|
+
stickySelectionColumn
|
|
22
27
|
};
|
|
23
28
|
};
|
|
24
29
|
//# sourceMappingURL=useBaseTableFeatures.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useMemo","useColumns","CustomColumns","useNavigation","useBaseTableFeatures","configuration","_configuration$custom","navigateToEntityPage","columns","visibleFieldIds","map","column","id","entityPageId","onRowClick","item","customColumns","enabled","createElement","undefined"],"sources":["../../../src/hooks/useBaseTableFeatures.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\nimport { TableConfig } from '../types';\nimport { useColumns } from './useColumns';\nimport { CustomColumns } from '@wix/patterns';\nimport { useNavigation } from './useNavigationUtils';\n\nexport const useBaseTableFeatures = (configuration: TableConfig) => {\n const { navigateToEntityPage } = useNavigation();\n\n const columns = useColumns(configuration.columns);\n const visibleFieldIds = useMemo(\n () => configuration.columns.map((column) => column.id),\n [configuration],\n );\n\n const entityPageId = configuration.entityPageId;\n\n const onRowClick = (item: any) =>\n navigateToEntityPage({\n item,\n entityPageId,\n });\n\n return {\n columns,\n visibleFieldIds,\n onRowClick,\n customColumns: configuration.customColumns?.enabled ? (\n <CustomColumns />\n ) : undefined,\n };\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,OAAO,QAAQ,OAAO;AAEtC,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,aAAa,QAAQ,eAAe;AAC7C,SAASC,aAAa,QAAQ,sBAAsB;AAEpD,OAAO,MAAMC,oBAAoB,GAAIC,aAA0B,IAAK;EAAA,IAAAC,qBAAA;EAClE,MAAM;IAAEC;EAAqB,CAAC,GAAGJ,aAAa,CAAC,CAAC;EAEhD,MAAMK,OAAO,GAAGP,UAAU,CAACI,aAAa,CAACG,OAAO,CAAC;EACjD,MAAMC,eAAe,GAAGT,OAAO,CAC7B,MAAMK,aAAa,CAACG,OAAO,CAACE,GAAG,CAAEC,MAAM,IAAKA,MAAM,CAACC,EAAE,CAAC,EACtD,CAACP,aAAa,CAChB,CAAC;EAED,MAAMQ,YAAY,GAAGR,aAAa,CAACQ,YAAY;EAE/C,MAAMC,UAAU,GAAIC,IAAS,IAC3BR,oBAAoB,CAAC;IACnBQ,IAAI;IACJF;EACF,CAAC,CAAC;EAEJ,OAAO;
|
|
1
|
+
{"version":3,"names":["React","useMemo","useColumns","CustomColumns","useNavigation","useBaseTableFeatures","configuration","_configuration$custom","navigateToEntityPage","columns","visibleFieldIds","map","column","id","entityPageId","onRowClick","item","stickyColumns","stickySelectionColumn","customColumns","enabled","createElement","undefined"],"sources":["../../../src/hooks/useBaseTableFeatures.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\nimport { TableConfig } from '../types';\nimport { useColumns } from './useColumns';\nimport { CustomColumns } from '@wix/patterns';\nimport { useNavigation } from './useNavigationUtils';\n\nexport const useBaseTableFeatures = (configuration: TableConfig) => {\n const { navigateToEntityPage } = useNavigation();\n\n const columns = useColumns(configuration.columns);\n const visibleFieldIds = useMemo(\n () => configuration.columns.map((column) => column.id),\n [configuration],\n );\n\n const entityPageId = configuration.entityPageId;\n\n const onRowClick = (item: any) =>\n navigateToEntityPage({\n item,\n entityPageId,\n });\n\n const stickyColumns = configuration.stickyColumns;\n const stickySelectionColumn = !!stickyColumns; // Sticky selection column is true if stickyColumns is positive number\n\n return {\n columns,\n visibleFieldIds,\n onRowClick,\n customColumns: configuration.customColumns?.enabled ? (\n <CustomColumns />\n ) : undefined,\n stickyColumns,\n stickySelectionColumn,\n };\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,OAAO,QAAQ,OAAO;AAEtC,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,aAAa,QAAQ,eAAe;AAC7C,SAASC,aAAa,QAAQ,sBAAsB;AAEpD,OAAO,MAAMC,oBAAoB,GAAIC,aAA0B,IAAK;EAAA,IAAAC,qBAAA;EAClE,MAAM;IAAEC;EAAqB,CAAC,GAAGJ,aAAa,CAAC,CAAC;EAEhD,MAAMK,OAAO,GAAGP,UAAU,CAACI,aAAa,CAACG,OAAO,CAAC;EACjD,MAAMC,eAAe,GAAGT,OAAO,CAC7B,MAAMK,aAAa,CAACG,OAAO,CAACE,GAAG,CAAEC,MAAM,IAAKA,MAAM,CAACC,EAAE,CAAC,EACtD,CAACP,aAAa,CAChB,CAAC;EAED,MAAMQ,YAAY,GAAGR,aAAa,CAACQ,YAAY;EAE/C,MAAMC,UAAU,GAAIC,IAAS,IAC3BR,oBAAoB,CAAC;IACnBQ,IAAI;IACJF;EACF,CAAC,CAAC;EAEJ,MAAMG,aAAa,GAAGX,aAAa,CAACW,aAAa;EACjD,MAAMC,qBAAqB,GAAG,CAAC,CAACD,aAAa,CAAC,CAAC;;EAE/C,OAAO;IACLR,OAAO;IACPC,eAAe;IACfK,UAAU;IACVI,aAAa,EAAE,CAAAZ,qBAAA,GAAAD,aAAa,CAACa,aAAa,aAA3BZ,qBAAA,CAA6Ba,OAAO,gBACjDpB,KAAA,CAAAqB,aAAA,CAAClB,aAAa,MAAE,CAAC,GACfmB,SAAS;IACbL,aAAa;IACbC;EACF,CAAC;AACH,CAAC","ignoreList":[]}
|
|
@@ -3,7 +3,6 @@ import { useActionsSDK } from './useActionsSDK';
|
|
|
3
3
|
import { MultiBulkActionToolbar } from '@wix/patterns';
|
|
4
4
|
import { bulkDeleteAction, customAction, customModalAction, resolveAction } from '../utils/actions';
|
|
5
5
|
export const useBulkActionToolbar = _ref => {
|
|
6
|
-
var _config$primaryAction2, _config$secondaryActi2;
|
|
7
6
|
let {
|
|
8
7
|
config,
|
|
9
8
|
collectionId
|
|
@@ -12,7 +11,6 @@ export const useBulkActionToolbar = _ref => {
|
|
|
12
11
|
collectionId
|
|
13
12
|
});
|
|
14
13
|
const bulkActionToolbar = useCallback(param => {
|
|
15
|
-
var _config$primaryAction, _config$secondaryActi;
|
|
16
14
|
const buildAction = actionConfig => {
|
|
17
15
|
let actionToResolve = null;
|
|
18
16
|
const baseParams = {
|
|
@@ -55,8 +53,30 @@ export const useBulkActionToolbar = _ref => {
|
|
|
55
53
|
...resolvedActionParams
|
|
56
54
|
};
|
|
57
55
|
};
|
|
58
|
-
const
|
|
59
|
-
|
|
56
|
+
const buildPrimaryActions = () => {
|
|
57
|
+
if (!(config != null && config.primaryActions)) {
|
|
58
|
+
return [];
|
|
59
|
+
}
|
|
60
|
+
return config.primaryActions.map((primaryItem, index) => {
|
|
61
|
+
if (primaryItem.type === 'single') {
|
|
62
|
+
return buildAction(primaryItem.single.item);
|
|
63
|
+
}
|
|
64
|
+
if (primaryItem.type === 'multi') {
|
|
65
|
+
const subItems = primaryItem.multi.items.map(buildAction).filter(action => Boolean(action));
|
|
66
|
+
if (subItems.length === 0) {
|
|
67
|
+
return null;
|
|
68
|
+
}
|
|
69
|
+
return {
|
|
70
|
+
label: primaryItem.multi.label,
|
|
71
|
+
subItems: [subItems],
|
|
72
|
+
dataHook: `bulk-multi-action-${index}`
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
return null;
|
|
76
|
+
}).filter(action => Boolean(action));
|
|
77
|
+
};
|
|
78
|
+
const primaryActionItems = buildPrimaryActions();
|
|
79
|
+
const secondaryActionItems = ((config == null ? void 0 : config.secondaryActions) || []).map(sectionItems => sectionItems.map(a => buildAction(a)).filter(action => Boolean(action)));
|
|
60
80
|
return /*#__PURE__*/React.createElement(MultiBulkActionToolbar, {
|
|
61
81
|
primaryActionItems: primaryActionItems,
|
|
62
82
|
secondaryActionItems: secondaryActionItems
|
|
@@ -65,7 +85,9 @@ export const useBulkActionToolbar = _ref => {
|
|
|
65
85
|
if (!config) {
|
|
66
86
|
return undefined;
|
|
67
87
|
}
|
|
68
|
-
|
|
88
|
+
const hasPrimaryActions = config.primaryActions && config.primaryActions.length > 0;
|
|
89
|
+
const hasSecondaryActions = config.secondaryActions && config.secondaryActions.length > 0;
|
|
90
|
+
if (!hasPrimaryActions && !hasSecondaryActions) {
|
|
69
91
|
return undefined;
|
|
70
92
|
}
|
|
71
93
|
return bulkActionToolbar;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useCallback","useActionsSDK","MultiBulkActionToolbar","bulkDeleteAction","customAction","customModalAction","resolveAction","useBulkActionToolbar","_ref","
|
|
1
|
+
{"version":3,"names":["React","useCallback","useActionsSDK","MultiBulkActionToolbar","bulkDeleteAction","customAction","customModalAction","resolveAction","useBulkActionToolbar","_ref","config","collectionId","sdk","bulkActionToolbar","param","buildAction","actionConfig","actionToResolve","baseParams","actionParams","type","action","resolvedAction","icon","resolvedActionParams","prefixIcon","isValidElement","undefined","dataHook","id","buildPrimaryActions","primaryActions","map","primaryItem","index","single","item","subItems","multi","items","filter","Boolean","length","label","primaryActionItems","secondaryActionItems","secondaryActions","sectionItems","a","createElement","hasPrimaryActions","hasSecondaryActions"],"sources":["../../../src/hooks/useBulkActionToolbar.tsx"],"sourcesContent":["import React, { useCallback } from 'react';\nimport {\n BulkActionItemConfig,\n BulkActionsConfig,\n ResolvedAction,\n} from '../types';\nimport { useActionsSDK } from './useActionsSDK';\nimport {\n TableProps,\n MultiBulkActionToolbar,\n ActionSubitem,\n} from '@wix/patterns';\nimport {\n bulkDeleteAction,\n customAction,\n customModalAction,\n resolveAction,\n} from '../utils/actions';\n\nexport type BulkActionToolbarRenderProp = Parameters<\n NonNullable<TableProps<any, any>['bulkActionToolbar']>\n>[0];\n\nexport interface useBulkActionToolbarParams {\n config?: BulkActionsConfig;\n collectionId: string;\n}\n\nexport const useBulkActionToolbar = ({\n config,\n collectionId,\n}: useBulkActionToolbarParams) => {\n const sdk = useActionsSDK({\n collectionId,\n });\n\n const bulkActionToolbar = useCallback(\n (param: BulkActionToolbarRenderProp) => {\n const buildAction = (\n actionConfig: BulkActionItemConfig,\n ): ActionSubitem | null => {\n let actionToResolve: Partial<ResolvedAction> | null = null;\n\n const baseParams = {\n actionParams: param,\n sdk,\n };\n\n switch (actionConfig.type) {\n case 'bulkDelete':\n actionToResolve = bulkDeleteAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n case 'customModal':\n actionToResolve = customModalAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n case 'custom':\n actionToResolve = customAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n default:\n return null;\n }\n\n if (!actionToResolve) {\n return null;\n }\n\n const resolvedAction = resolveAction(actionConfig, actionToResolve);\n const { icon, ...resolvedActionParams } = resolvedAction;\n\n return {\n prefixIcon: React.isValidElement(icon) ? icon : undefined,\n dataHook: actionConfig.id,\n ...resolvedActionParams,\n };\n };\n\n const buildPrimaryActions = (): ActionSubitem[] => {\n if (!config?.primaryActions) {\n return [];\n }\n\n return config.primaryActions\n .map((primaryItem, index) => {\n if (primaryItem.type === 'single') {\n return buildAction(primaryItem.single.item);\n }\n\n if (primaryItem.type === 'multi') {\n const subItems = primaryItem.multi.items\n .map(buildAction)\n .filter((action): action is ActionSubitem => Boolean(action));\n\n if (subItems.length === 0) {\n return null;\n }\n\n return {\n label: primaryItem.multi.label,\n subItems: [subItems],\n dataHook: `bulk-multi-action-${index}`,\n };\n }\n\n return null;\n })\n .filter((action): action is ActionSubitem => Boolean(action));\n };\n\n const primaryActionItems = buildPrimaryActions();\n const secondaryActionItems = (config?.secondaryActions || []).map(\n (sectionItems) =>\n sectionItems\n .map((a) => buildAction(a))\n .filter((action): action is ActionSubitem => Boolean(action)),\n );\n\n return (\n <MultiBulkActionToolbar\n primaryActionItems={primaryActionItems}\n secondaryActionItems={secondaryActionItems}\n />\n );\n },\n [config, sdk],\n );\n\n if (!config) {\n return undefined;\n }\n\n const hasPrimaryActions =\n config.primaryActions && config.primaryActions.length > 0;\n\n const hasSecondaryActions =\n config.secondaryActions && config.secondaryActions.length > 0;\n\n if (!hasPrimaryActions && !hasSecondaryActions) {\n return undefined;\n }\n\n return bulkActionToolbar;\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React, { useCallback, useMemo } from 'react';
|
|
2
2
|
import { useActionsSDK } from './useActionsSDK';
|
|
3
|
-
import { createAction, customAction, customModalAction, resolveAction
|
|
3
|
+
import { createAction, customAction, customModalAction, resolveAction } from '../utils/actions';
|
|
4
4
|
import { PrimaryActions, SecondaryActions } from '@wix/patterns';
|
|
5
5
|
export const useCollectionPageActions = _ref => {
|
|
6
6
|
let {
|
|
@@ -69,7 +69,6 @@ export const useCollectionPageActions = _ref => {
|
|
|
69
69
|
}
|
|
70
70
|
return {
|
|
71
71
|
label: actions.multi.label,
|
|
72
|
-
prefixIcon: resolveIcon(actions.multi.icon),
|
|
73
72
|
subItems
|
|
74
73
|
};
|
|
75
74
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useCallback","useMemo","useActionsSDK","createAction","customAction","customModalAction","resolveAction","
|
|
1
|
+
{"version":3,"names":["React","useCallback","useMemo","useActionsSDK","createAction","customAction","customModalAction","resolveAction","PrimaryActions","SecondaryActions","useCollectionPageActions","_ref","collectionPageActions","sdk","collectionId","buildCollectionPageActions","buildAction","actionConfig","actionToResolve","baseParams","actionParams","collection","type","action","resolvedAction","tooltip","icon","resolvedActionProps","prefixIcon","disabledDescription","handleActionsType","actions","single","item","subItems","multi","items","map","filter","length","label","primaryActions","secondaryActions","createElement","undefined"],"sources":["../../../src/hooks/useCollectionPageActions.tsx"],"sourcesContent":["import React, { useCallback, useMemo } from 'react';\nimport {\n CollectionPageActionConfig,\n CollectionPageConfig,\n CollectionPagePrimaryActions,\n CollectionPageSecondaryActions,\n ResolvedAction,\n} from '../types';\nimport { useActionsSDK } from './useActionsSDK';\nimport {\n createAction,\n customAction,\n customModalAction,\n resolveAction,\n} from '../utils/actions';\nimport { IconElement } from '@wix/design-system';\nimport { PrimaryActions, SecondaryActions } from '@wix/patterns';\n\nexport interface UseCollectionPageActionsParams {\n collectionPageActions: CollectionPageConfig['actions'];\n}\n\nexport const useCollectionPageActions = ({\n collectionPageActions,\n}: UseCollectionPageActionsParams) => {\n const sdk = useActionsSDK({\n collectionId: '',\n });\n\n const buildCollectionPageActions = useCallback(() => {\n if (!collectionPageActions) {\n return;\n }\n\n const buildAction = (actionConfig: CollectionPageActionConfig) => {\n let actionToResolve: Partial<ResolvedAction> | null = null;\n\n const baseParams = {\n actionParams: {\n collectionId: actionConfig.collection.collectionId,\n },\n sdk,\n };\n\n switch (actionConfig.type) {\n case 'create':\n actionToResolve = createAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n case 'customModal':\n actionToResolve = customModalAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n case 'custom':\n actionToResolve = customAction({\n action: actionConfig,\n ...baseParams,\n });\n break;\n\n default:\n return null;\n }\n\n if (!actionToResolve) {\n return null;\n }\n\n const resolvedAction = resolveAction(actionConfig, actionToResolve);\n const { tooltip, icon, ...resolvedActionProps } = resolvedAction;\n\n return {\n ...resolvedActionProps,\n prefixIcon: icon as IconElement,\n disabledDescription: resolvedAction.tooltip,\n };\n };\n\n const handleActionsType = (\n actions: CollectionPagePrimaryActions | CollectionPageSecondaryActions,\n ) => {\n if (actions.type === 'single') {\n return buildAction(actions.single.item);\n }\n\n if (actions.type === 'multi') {\n const subItems = actions.multi.items\n .map(buildAction)\n .filter((action) => action !== null);\n if (!subItems.length) {\n return null;\n }\n\n return {\n label: actions.multi.label,\n subItems,\n };\n }\n\n return null;\n };\n\n const primaryActions =\n collectionPageActions?.primaryActions &&\n handleActionsType(collectionPageActions.primaryActions);\n\n const secondaryActions =\n collectionPageActions?.secondaryActions &&\n handleActionsType(collectionPageActions.secondaryActions);\n\n if (!primaryActions && !secondaryActions) {\n return;\n }\n\n return {\n primaryActions: primaryActions ? (\n <PrimaryActions {...primaryActions} />\n ) : undefined,\n secondaryActions: secondaryActions ? (\n <SecondaryActions {...secondaryActions} />\n ) : undefined,\n };\n }, [collectionPageActions, sdk]);\n\n const actions = useMemo(() => {\n return {\n primaryActions: undefined,\n secondaryActions: undefined,\n };\n }, []);\n\n if (\n !collectionPageActions?.primaryActions &&\n !collectionPageActions?.secondaryActions\n ) {\n return { ...actions };\n }\n\n return buildCollectionPageActions() ?? { ...actions };\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -12,7 +12,8 @@ export const useColumns = columns => {
|
|
|
12
12
|
} = useSchemaRegistry();
|
|
13
13
|
const overrides = usePatternsWizardOverridesContext();
|
|
14
14
|
const existingColumns = columns.filter(column => {
|
|
15
|
-
|
|
15
|
+
var _overrides$columns;
|
|
16
|
+
return !!fields[column.id] || (overrides == null || (_overrides$columns = overrides.columns) == null ? void 0 : _overrides$columns[column.id]);
|
|
16
17
|
});
|
|
17
18
|
const createRenderer = (fieldDefinition, itemValue) => {
|
|
18
19
|
if (itemValue == null) {
|
|
@@ -83,24 +84,32 @@ export const useColumns = columns => {
|
|
|
83
84
|
}
|
|
84
85
|
};
|
|
85
86
|
return existingColumns.map(column => {
|
|
86
|
-
var _fieldDefinition$capa;
|
|
87
|
+
var _overrides$columns2, _fieldDefinition$capa;
|
|
87
88
|
const fieldDefinition = fields[column.id];
|
|
88
|
-
if (!fieldDefinition) {
|
|
89
|
+
if (!fieldDefinition && !(overrides != null && (_overrides$columns2 = overrides.columns) != null && _overrides$columns2[column.id])) {
|
|
89
90
|
return null;
|
|
90
91
|
}
|
|
91
92
|
const sortable = column.sortable && (fieldDefinition == null || (_fieldDefinition$capa = fieldDefinition.capabilities) == null ? void 0 : _fieldDefinition$capa.sortable);
|
|
92
93
|
const baseColumnConfig = {
|
|
93
94
|
id: column.id,
|
|
94
|
-
title: column.name || fieldDefinition.displayName,
|
|
95
|
+
title: column.name || (fieldDefinition == null ? void 0 : fieldDefinition.displayName),
|
|
95
96
|
width: column.width,
|
|
96
97
|
...createSortConfiguration(column, sortable),
|
|
97
98
|
...createCustomColumnConfiguration(column),
|
|
98
|
-
render:
|
|
99
|
-
var _overrides$
|
|
100
|
-
const itemValue = get(
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
99
|
+
render: row => {
|
|
100
|
+
var _overrides$columns3;
|
|
101
|
+
const itemValue = get(row, column.id);
|
|
102
|
+
if (overrides != null && (_overrides$columns3 = overrides.columns) != null && _overrides$columns3[camelCase(column.id)]) {
|
|
103
|
+
var _overrides$columns4, _overrides$columns4$c;
|
|
104
|
+
return overrides == null || (_overrides$columns4 = overrides.columns) == null || (_overrides$columns4$c = _overrides$columns4[camelCase(column.id)]) == null ? void 0 : _overrides$columns4$c.call(_overrides$columns4, {
|
|
105
|
+
value: itemValue,
|
|
106
|
+
row
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
if (fieldDefinition) {
|
|
110
|
+
return createRenderer(fieldDefinition, itemValue);
|
|
111
|
+
}
|
|
112
|
+
return null; // Shouldn't really happen
|
|
104
113
|
}
|
|
105
114
|
};
|
|
106
115
|
return baseColumnConfig;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","usePatternsWizardOverridesContext","useSchema","useSchemaRegistry","camelCase","get","Avatar","Box","Image","getImageUrl","useColumns","columns","fields","getSchema","overrides","existingColumns","filter","column","id","createRenderer","fieldDefinition","itemValue","type","Date","toLocaleDateString","date","toLocaleString","join","referenceMetadata","referencedCollectionId","refSchema","nameValue","imageValue","displayField","imageField","imageUrl","createElement","gap","verticalAlign","size","name","imgProps","src","width","dataHook","map","_fieldDefinition$capa","sortable","capabilities","baseColumnConfig","title","displayName","createSortConfiguration","createCustomColumnConfiguration","render","item","_overrides$columns","_overrides$columns$ca","call","value","Boolean","sortableColumnConfig","defaultSortOrder","sortMode","undefined","reorderDisabled","hiddenFromCustomColumnsSelection","hideable","defaultHidden"],"sources":["../../../src/hooks/useColumns.tsx"],"sourcesContent":["import React from 'react';\nimport { TableColumn } from '@wix/patterns';\nimport {\n usePatternsWizardOverridesContext,\n useSchema,\n useSchemaRegistry,\n} from '../providers';\nimport { Column, Field } from '../types';\nimport { camelCase, get } from 'lodash';\nimport { Avatar, Box, Image } from '@wix/design-system';\nimport { getImageUrl } from '../utils/media/getImageUrl';\n\nexport const useColumns = (columns: Column[]) => {\n const { fields } = useSchema();\n const { getSchema } = useSchemaRegistry();\n const overrides = usePatternsWizardOverridesContext();\n\n const existingColumns = columns.filter((column) => {\n return !!fields[column.id];\n });\n\n const createRenderer = (fieldDefinition: Field, itemValue: any) => {\n if (itemValue == null) {\n return '';\n }\n\n switch (fieldDefinition.type) {\n case 'BOOLEAN':\n return itemValue ? '✔' : '✖';\n case 'DATE':\n if (itemValue instanceof Date) {\n return itemValue.toLocaleDateString();\n }\n if (typeof itemValue === 'string') {\n const date = new Date(itemValue);\n return date.toLocaleDateString();\n }\n return itemValue;\n case 'DATETIME':\n if (itemValue instanceof Date) {\n return itemValue.toLocaleString();\n }\n if (typeof itemValue === 'string') {\n const date = new Date(itemValue);\n return date.toLocaleString();\n }\n return itemValue;\n case 'ARRAY':\n // We assume that the array contains strings\n // If the array contains objects, we need to handle it differently\n return itemValue.join(', ');\n case 'REFERENCE':\n if (fieldDefinition.referenceMetadata && getSchema) {\n const { referencedCollectionId } = fieldDefinition.referenceMetadata;\n const refSchema = getSchema(referencedCollectionId);\n\n if (refSchema) {\n let nameValue: string | undefined;\n let imageValue: string | undefined;\n const displayField = refSchema.displayField;\n if (typeof itemValue === 'object' && itemValue !== null) {\n nameValue = itemValue[displayField] || '';\n imageValue =\n refSchema.imageField && itemValue[refSchema.imageField];\n }\n\n const imageUrl = imageValue && getImageUrl(imageValue);\n return (\n <Box gap=\"SP2\" verticalAlign=\"middle\">\n {imageUrl && (\n <Avatar\n size=\"size24\"\n name={nameValue}\n imgProps={{ src: imageUrl }}\n />\n )}\n <div>{nameValue}</div>\n </Box>\n );\n }\n }\n\n return itemValue;\n case 'IMAGE':\n const imageUrl = getImageUrl(itemValue);\n\n return (\n <Image src={imageUrl} width=\"48px\" dataHook=\"auto-patterns-image\" />\n );\n default:\n return itemValue;\n }\n };\n\n return existingColumns\n .map((column) => {\n const fieldDefinition = fields[column.id];\n if (!fieldDefinition) {\n return null;\n }\n const sortable =\n column.sortable && fieldDefinition?.capabilities?.sortable;\n\n const baseColumnConfig = {\n id: column.id,\n title: column.name || fieldDefinition.displayName,\n width: column.width,\n ...createSortConfiguration(column, sortable),\n ...createCustomColumnConfiguration(column),\n render: (item: any) => {\n const itemValue = get(item, column.id);\n return (\n overrides?.columns?.[camelCase(column.id)]?.({\n value: itemValue,\n }) ?? createRenderer(fieldDefinition, itemValue)\n );\n },\n };\n\n return baseColumnConfig;\n })\n .filter(Boolean) as TableColumn<any>[];\n};\n\nconst createSortConfiguration = (\n column: Column,\n sortable?: boolean,\n): Partial<TableColumn<any>> => {\n if (!sortable) {\n return {};\n }\n const sortableColumnConfig = {\n sortable,\n defaultSortOrder: column.defaultSortOrder,\n };\n\n // default sort mode is ['asc', 'desc', undefined]\n // so if sort mode is 'desc' -> we want to override the default\n // and set it to ['desc', 'asc', undefined]\n if (column.sortMode && column.sortMode === 'desc') {\n return {\n ...sortableColumnConfig,\n sortMode: ['desc', 'asc', undefined],\n };\n }\n return {\n ...sortableColumnConfig,\n };\n};\n\nconst createCustomColumnConfiguration = (\n column: Column,\n): Partial<TableColumn<any>> => {\n const reorderDisabled = !!column.reorderDisabled;\n\n if (column.hiddenFromCustomColumnsSelection) {\n return { hiddenFromCustomColumnsSelection: true };\n }\n if (column.hideable === false) {\n return {\n hideable: false,\n reorderDisabled,\n };\n }\n return {\n defaultHidden: !!column.defaultHidden,\n reorderDisabled,\n };\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","usePatternsWizardOverridesContext","useSchema","useSchemaRegistry","camelCase","get","Avatar","Box","Image","getImageUrl","useColumns","columns","fields","getSchema","overrides","existingColumns","filter","column","_overrides$columns","id","createRenderer","fieldDefinition","itemValue","type","Date","toLocaleDateString","date","toLocaleString","join","referenceMetadata","referencedCollectionId","refSchema","nameValue","imageValue","displayField","imageField","imageUrl","createElement","gap","verticalAlign","size","name","imgProps","src","width","dataHook","map","_overrides$columns2","_fieldDefinition$capa","sortable","capabilities","baseColumnConfig","title","displayName","createSortConfiguration","createCustomColumnConfiguration","render","row","_overrides$columns3","_overrides$columns4","_overrides$columns4$c","call","value","Boolean","sortableColumnConfig","defaultSortOrder","sortMode","undefined","reorderDisabled","hiddenFromCustomColumnsSelection","hideable","defaultHidden"],"sources":["../../../src/hooks/useColumns.tsx"],"sourcesContent":["import React from 'react';\nimport { TableColumn } from '@wix/patterns';\nimport {\n usePatternsWizardOverridesContext,\n useSchema,\n useSchemaRegistry,\n} from '../providers';\nimport { Column, Field } from '../types';\nimport { camelCase, get } from 'lodash';\nimport { Avatar, Box, Image } from '@wix/design-system';\nimport { getImageUrl } from '../utils/media/getImageUrl';\n\nexport const useColumns = (columns: Column[]) => {\n const { fields } = useSchema();\n const { getSchema } = useSchemaRegistry();\n const overrides = usePatternsWizardOverridesContext();\n\n const existingColumns = columns.filter((column) => {\n return !!fields[column.id] || overrides?.columns?.[column.id];\n });\n\n const createRenderer = (fieldDefinition: Field, itemValue: any) => {\n if (itemValue == null) {\n return '';\n }\n\n switch (fieldDefinition.type) {\n case 'BOOLEAN':\n return itemValue ? '✔' : '✖';\n case 'DATE':\n if (itemValue instanceof Date) {\n return itemValue.toLocaleDateString();\n }\n if (typeof itemValue === 'string') {\n const date = new Date(itemValue);\n return date.toLocaleDateString();\n }\n return itemValue;\n case 'DATETIME':\n if (itemValue instanceof Date) {\n return itemValue.toLocaleString();\n }\n if (typeof itemValue === 'string') {\n const date = new Date(itemValue);\n return date.toLocaleString();\n }\n return itemValue;\n case 'ARRAY':\n // We assume that the array contains strings\n // If the array contains objects, we need to handle it differently\n return itemValue.join(', ');\n case 'REFERENCE':\n if (fieldDefinition.referenceMetadata && getSchema) {\n const { referencedCollectionId } = fieldDefinition.referenceMetadata;\n const refSchema = getSchema(referencedCollectionId);\n\n if (refSchema) {\n let nameValue: string | undefined;\n let imageValue: string | undefined;\n const displayField = refSchema.displayField;\n if (typeof itemValue === 'object' && itemValue !== null) {\n nameValue = itemValue[displayField] || '';\n imageValue =\n refSchema.imageField && itemValue[refSchema.imageField];\n }\n\n const imageUrl = imageValue && getImageUrl(imageValue);\n return (\n <Box gap=\"SP2\" verticalAlign=\"middle\">\n {imageUrl && (\n <Avatar\n size=\"size24\"\n name={nameValue}\n imgProps={{ src: imageUrl }}\n />\n )}\n <div>{nameValue}</div>\n </Box>\n );\n }\n }\n\n return itemValue;\n case 'IMAGE':\n const imageUrl = getImageUrl(itemValue);\n\n return (\n <Image src={imageUrl} width=\"48px\" dataHook=\"auto-patterns-image\" />\n );\n default:\n return itemValue;\n }\n };\n\n return existingColumns\n .map((column) => {\n const fieldDefinition = fields[column.id];\n if (!fieldDefinition && !overrides?.columns?.[column.id]) {\n return null;\n }\n\n const sortable =\n column.sortable && fieldDefinition?.capabilities?.sortable;\n\n const baseColumnConfig = {\n id: column.id,\n title: column.name || fieldDefinition?.displayName,\n width: column.width,\n ...createSortConfiguration(column, sortable),\n ...createCustomColumnConfiguration(column),\n render: (row: any) => {\n const itemValue = get(row, column.id);\n\n if (overrides?.columns?.[camelCase(column.id)]) {\n return overrides?.columns?.[camelCase(column.id)]?.({\n value: itemValue,\n row,\n });\n }\n\n if (fieldDefinition) {\n return createRenderer(fieldDefinition, itemValue);\n }\n\n return null; // Shouldn't really happen\n },\n };\n\n return baseColumnConfig;\n })\n .filter(Boolean) as TableColumn<any>[];\n};\n\nconst createSortConfiguration = (\n column: Column,\n sortable?: boolean,\n): Partial<TableColumn<any>> => {\n if (!sortable) {\n return {};\n }\n const sortableColumnConfig = {\n sortable,\n defaultSortOrder: column.defaultSortOrder,\n };\n\n // default sort mode is ['asc', 'desc', undefined]\n // so if sort mode is 'desc' -> we want to override the default\n // and set it to ['desc', 'asc', undefined]\n if (column.sortMode && column.sortMode === 'desc') {\n return {\n ...sortableColumnConfig,\n sortMode: ['desc', 'asc', undefined],\n };\n }\n return {\n ...sortableColumnConfig,\n };\n};\n\nconst createCustomColumnConfiguration = (\n column: Column,\n): Partial<TableColumn<any>> => {\n const reorderDisabled = !!column.reorderDisabled;\n\n if (column.hiddenFromCustomColumnsSelection) {\n return { hiddenFromCustomColumnsSelection: true };\n }\n if (column.hideable === false) {\n return {\n hideable: false,\n reorderDisabled,\n };\n }\n return {\n defaultHidden: !!column.defaultHidden,\n reorderDisabled,\n };\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -22,7 +22,9 @@ export const useTableFeatures = configuration => {
|
|
|
22
22
|
customColumns,
|
|
23
23
|
visibleFieldIds,
|
|
24
24
|
columns,
|
|
25
|
-
onRowClick
|
|
25
|
+
onRowClick,
|
|
26
|
+
stickyColumns,
|
|
27
|
+
stickySelectionColumn
|
|
26
28
|
} = useBaseTableFeatures(configuration);
|
|
27
29
|
const {
|
|
28
30
|
fetchData
|
|
@@ -62,7 +64,9 @@ export const useTableFeatures = configuration => {
|
|
|
62
64
|
filters: filterComponent,
|
|
63
65
|
optimisticActions,
|
|
64
66
|
customColumns,
|
|
65
|
-
onRowClick
|
|
67
|
+
onRowClick,
|
|
68
|
+
stickyColumns,
|
|
69
|
+
stickySelectionColumn
|
|
66
70
|
};
|
|
67
71
|
};
|
|
68
72
|
//# sourceMappingURL=useTableFeatures.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useFetchData","useTableCollection","useCommonCollectionFeatures","useFilters","useSchema","useAutoPatternsOptimisticActions","useBaseTableFeatures","useTableFeatures","configuration","collectionId","limit","persistQueryToUrl","disableAutoSelectAllCount","selectionConsistencyMode","collection","filterComponent","filtersObject","filtersMapping","filters","customColumns","visibleFieldIds","columns","onRowClick","fetchData","collectionConfig","schema","state","queryName","itemKey","item","idField","itemName","displayField","toExtendedFields","extendedFields","fetchErrorMessage","_ref","err","String","optimisticActions","commonFeatures"],"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 {
|
|
1
|
+
{"version":3,"names":["useFetchData","useTableCollection","useCommonCollectionFeatures","useFilters","useSchema","useAutoPatternsOptimisticActions","useBaseTableFeatures","useTableFeatures","configuration","collectionId","limit","persistQueryToUrl","disableAutoSelectAllCount","selectionConsistencyMode","collection","filterComponent","filtersObject","filtersMapping","filters","customColumns","visibleFieldIds","columns","onRowClick","stickyColumns","stickySelectionColumn","fetchData","collectionConfig","schema","state","queryName","itemKey","item","idField","itemName","displayField","toExtendedFields","extendedFields","fetchErrorMessage","_ref","err","String","optimisticActions","commonFeatures"],"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 {\n customColumns,\n visibleFieldIds,\n columns,\n onRowClick,\n stickyColumns,\n stickySelectionColumn,\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 stickyColumns,\n stickySelectionColumn,\n };\n};\n"],"mappings":"AACA,SAASA,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,kBAAkB,QAAQ,eAAe;AAClD,SAASC,2BAA2B,QAAQ,+BAA+B;AAC3E,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,SAAS,QAAQ,4BAA4B;AACtD,SAASC,gCAAgC,QAAQ,oCAAoC;AACrF,SAASC,oBAAoB,QAAQ,wBAAwB;AAE7D,OAAO,MAAMC,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,GAAGd,UAAU,CACnEK,aAAa,CAACU,OAChB,CAAC;EACD,MAAM;IACJC,aAAa;IACbC,eAAe;IACfC,OAAO;IACPC,UAAU;IACVC,aAAa;IACbC;EACF,CAAC,GAAGlB,oBAAoB,CAACE,aAAa,CAAC;EAEvC,MAAM;IAAEiB;EAAU,CAAC,GAAGzB,YAAY,CAAC;IACjC0B,gBAAgB,EAAElB,aAAa,CAACM,UAAU;IAC1CM,eAAe;IACfH;EACF,CAAC,CAAC;EAEF,MAAMU,MAAM,GAAGvB,SAAS,CAAC,CAAC;EAE1B,MAAMwB,KAAK,GAAG3B,kBAAkB,CAAM;IACpC4B,SAAS,EAAE,GAAGpB,YAAY,EAAE;IAC5BqB,OAAO,EAAGC,IAAI,IAAKA,IAAI,CAACJ,MAAM,CAACK,OAAO,CAAC;IACvCC,QAAQ,EAAGF,IAAI,IAAKA,IAAI,CAACJ,MAAM,CAACO,YAAY,CAAC;IAC7ChB,OAAO,EAAEF,aAAa;IACtBmB,gBAAgB,EAAGJ,IAAI,IAAKA,IAAI,CAACK,cAAc;IAC/CC,iBAAiB,EAAEC,IAAA;MAAA,IAAC;QAAEC;MAAI,CAAC,GAAAD,IAAA;MAAA,OAAKE,MAAM,CAACD,GAAG,CAAC;IAAA;IAC3Cd,SAAS;IACTf,KAAK;IACLC,iBAAiB;IACjBC,yBAAyB;IACzBC;EACF,CAAC,CAAC;EAEF,MAAM4B,iBAAiB,GAAGpC,gCAAgC,CACxDI,YAAY,EACZmB,KAAK,CAACd,UACR,CAAC;EAED,MAAM4B,cAAc,GAAGxC,2BAA2B,CAAC;IACjD,GAAGM,aAAa;IAChBiC;EACF,CAAC,CAAC;EAEF,OAAO;IACL,GAAGC,cAAc;IACjBd,KAAK;IACLP,OAAO;IACPH,OAAO,EAAEH,eAAe;IACxB0B,iBAAiB;IACjBtB,aAAa;IACbG,UAAU;IACVC,aAAa;IACbC;EACF,CAAC;AACH,CAAC","ignoreList":[]}
|
|
@@ -30,7 +30,9 @@ export const useTableGridSwitchFeatures = config => {
|
|
|
30
30
|
customColumns,
|
|
31
31
|
visibleFieldIds: tableVisibleFieldIds,
|
|
32
32
|
columns: tableColumns,
|
|
33
|
-
onRowClick
|
|
33
|
+
onRowClick,
|
|
34
|
+
stickyColumns,
|
|
35
|
+
stickySelectionColumn
|
|
34
36
|
} = useBaseTableFeatures(config);
|
|
35
37
|
const {
|
|
36
38
|
fetchData: tableFetchData
|
|
@@ -70,6 +72,8 @@ export const useTableGridSwitchFeatures = config => {
|
|
|
70
72
|
optimisticActions,
|
|
71
73
|
customColumns,
|
|
72
74
|
onRowClick,
|
|
75
|
+
stickyColumns,
|
|
76
|
+
stickySelectionColumn,
|
|
73
77
|
// Grid specific features
|
|
74
78
|
imagePlacement,
|
|
75
79
|
preset,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useFetchData","useTableGridSwitchCollection","useCommonCollectionFeatures","useFilters","useSchema","useAutoPatternsOptimisticActions","useBaseGridFeatures","useBaseTableFeatures","useTableGridSwitchFeatures","config","schema","collectionId","limit","persistQueryToUrl","disableAutoSelectAllCount","selectionConsistencyMode","collection","filterComponent","filtersObject","filtersMapping","filters","preset","imagePlacement","visibleFieldIds","gridVisibleFieldIds","renderItem","customColumns","tableVisibleFieldIds","columns","tableColumns","onRowClick","fetchData","tableFetchData","collectionConfig","Array","from","Set","state","queryName","itemKey","item","idField","itemName","displayField","toExtendedFields","extendedFields","fetchErrorMessage","_ref","err","String","optimisticActions","commonFeatures"],"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,SAASA,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,4BAA4B,QAAQ,eAAe;AAC5D,SAASC,2BAA2B,QAAQ,+BAA+B;AAC3E,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,SAAS,QAAQ,4BAA4B;AACtD,SAASC,gCAAgC,QAAQ,oCAAoC;AACrF,SAASC,mBAAmB,QAAQ,uBAAuB;AAC3D,SAASC,oBAAoB,QAAQ,wBAAwB;AAE7D,OAAO,MAAMC,0BAA0B,GAAIC,MAA6B,IAAK;EAC3E,MAAMC,MAAM,GAAGN,SAAS,CAAC,CAAC;EAE1B,MAAM;IACJO,YAAY;IACZC,KAAK;IACLC,iBAAiB;IACjBC,yBAAyB;IACzBC;EACF,CAAC,GAAGN,MAAM,CAACO,UAAU;EAErB,MAAM;IAAEC,eAAe;IAAEC,aAAa;IAAEC;EAAe,CAAC,GAAGhB,UAAU,CACnEM,MAAM,CAACW,OACT,CAAC;EAED,MAAM;IACJC,MAAM;IACNC,cAAc;IACdC,eAAe,EAAEC,mBAAmB;IACpCC;EACF,CAAC,GAAGnB,mBAAmB,CAACG,MAAM,CAAC;EAE/B,MAAM;IACJiB,aAAa;IACbH,eAAe,EAAEI,oBAAoB;IACrCC,OAAO,EAAEC,YAAY;IACrBC;EACF,CAAC,
|
|
1
|
+
{"version":3,"names":["useFetchData","useTableGridSwitchCollection","useCommonCollectionFeatures","useFilters","useSchema","useAutoPatternsOptimisticActions","useBaseGridFeatures","useBaseTableFeatures","useTableGridSwitchFeatures","config","schema","collectionId","limit","persistQueryToUrl","disableAutoSelectAllCount","selectionConsistencyMode","collection","filterComponent","filtersObject","filtersMapping","filters","preset","imagePlacement","visibleFieldIds","gridVisibleFieldIds","renderItem","customColumns","tableVisibleFieldIds","columns","tableColumns","onRowClick","stickyColumns","stickySelectionColumn","fetchData","tableFetchData","collectionConfig","Array","from","Set","state","queryName","itemKey","item","idField","itemName","displayField","toExtendedFields","extendedFields","fetchErrorMessage","_ref","err","String","optimisticActions","commonFeatures"],"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 stickyColumns,\n stickySelectionColumn,\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 stickyColumns,\n stickySelectionColumn,\n // Grid specific features\n imagePlacement,\n preset,\n renderItem,\n };\n};\n"],"mappings":"AACA,SAASA,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,4BAA4B,QAAQ,eAAe;AAC5D,SAASC,2BAA2B,QAAQ,+BAA+B;AAC3E,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,SAAS,QAAQ,4BAA4B;AACtD,SAASC,gCAAgC,QAAQ,oCAAoC;AACrF,SAASC,mBAAmB,QAAQ,uBAAuB;AAC3D,SAASC,oBAAoB,QAAQ,wBAAwB;AAE7D,OAAO,MAAMC,0BAA0B,GAAIC,MAA6B,IAAK;EAC3E,MAAMC,MAAM,GAAGN,SAAS,CAAC,CAAC;EAE1B,MAAM;IACJO,YAAY;IACZC,KAAK;IACLC,iBAAiB;IACjBC,yBAAyB;IACzBC;EACF,CAAC,GAAGN,MAAM,CAACO,UAAU;EAErB,MAAM;IAAEC,eAAe;IAAEC,aAAa;IAAEC;EAAe,CAAC,GAAGhB,UAAU,CACnEM,MAAM,CAACW,OACT,CAAC;EAED,MAAM;IACJC,MAAM;IACNC,cAAc;IACdC,eAAe,EAAEC,mBAAmB;IACpCC;EACF,CAAC,GAAGnB,mBAAmB,CAACG,MAAM,CAAC;EAE/B,MAAM;IACJiB,aAAa;IACbH,eAAe,EAAEI,oBAAoB;IACrCC,OAAO,EAAEC,YAAY;IACrBC,UAAU;IACVC,aAAa;IACbC;EACF,CAAC,GAAGzB,oBAAoB,CAACE,MAAM,CAAC;EAEhC,MAAM;IAAEwB,SAAS,EAAEC;EAAe,CAAC,GAAGlC,YAAY,CAAC;IACjDmC,gBAAgB,EAAE1B,MAAM,CAACO,UAAU;IACnCO,eAAe,EAAEa,KAAK,CAACC,IAAI,CACzB,IAAIC,GAAG,CAAC,CAAC,GAAGX,oBAAoB,EAAE,GAAGH,mBAAmB,CAAC,CAC3D,CAAC;IACDL;EACF,CAAC,CAAC;EAEF,MAAMoB,KAAK,GAAGtC,4BAA4B,CAAM;IAC9CuC,SAAS,EAAE,GAAG7B,YAAY,EAAE;IAC5B8B,OAAO,EAAGC,IAAI,IAAKA,IAAI,CAAChC,MAAM,CAACiC,OAAO,CAAC;IACvCC,QAAQ,EAAGF,IAAI,IAAKA,IAAI,CAAChC,MAAM,CAACmC,YAAY,CAAC;IAC7CzB,OAAO,EAAEF,aAAa;IACtB4B,gBAAgB,EAAGJ,IAAI,IAAKA,IAAI,CAACK,cAAc;IAC/CC,iBAAiB,EAAEC,IAAA;MAAA,IAAC;QAAEC;MAAI,CAAC,GAAAD,IAAA;MAAA,OAAKE,MAAM,CAACD,GAAG,CAAC;IAAA;IAC3CjB,SAAS,EAAEC,cAAc;IACzBtB,KAAK;IACLC,iBAAiB;IACjBC,yBAAyB;IACzBC;EACF,CAAC,CAAC;EAEF,MAAMqC,iBAAiB,GAAG/C,gCAAgC,CACxDM,YAAY,EACZ4B,KAAK,CAACvB,UACR,CAAC;EAED,MAAMqC,cAAc,GAAGnD,2BAA2B,CAAC;IACjD,GAAGO,MAAM;IACT2C;EACF,CAAC,CAAC;EAEF,OAAO;IACL,GAAGC,cAAc;IACjBd,KAAK;IACLX,OAAO,EAAEC,YAAY;IACrBT,OAAO,EAAEH,eAAe;IACxBmC,iBAAiB;IACjB1B,aAAa;IACbI,UAAU;IACVC,aAAa;IACbC,qBAAqB;IACrB;IACAV,cAAc;IACdD,MAAM;IACNI;EACF,CAAC;AACH,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ComponentTypeEnum"],"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":"
|
|
1
|
+
{"version":3,"names":["ComponentTypeEnum"],"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 stickyColumns?: number;\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":"AA+IA,WAAYA,iBAAiB,0BAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAA,OAAjBA,iBAAiB;AAAA","ignoreList":[]}
|