@wix/auto-patterns 1.14.0 → 1.15.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 (155) hide show
  1. package/dist/cjs/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.js +1 -2
  2. package/dist/cjs/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.js.map +1 -1
  3. package/dist/cjs/components/AutoPatternsRoute/AutoPatternsPage.js +2 -3
  4. package/dist/cjs/components/AutoPatternsRoute/AutoPatternsPage.js.map +1 -1
  5. package/dist/cjs/components/filters/DynamicCollectionFilter.js +5 -11
  6. package/dist/cjs/components/filters/DynamicCollectionFilter.js.map +1 -1
  7. package/dist/cjs/dataSourceAdapters/cms/cmsAdapter.js +51 -88
  8. package/dist/cjs/dataSourceAdapters/cms/cmsAdapter.js.map +1 -1
  9. package/dist/cjs/dataSourceAdapters/cms/fetchCmsData.js +43 -0
  10. package/dist/cjs/dataSourceAdapters/cms/fetchCmsData.js.map +1 -0
  11. package/dist/cjs/dataSourceAdapters/cms/filterUtils.js +15 -15
  12. package/dist/cjs/dataSourceAdapters/cms/filterUtils.js.map +1 -1
  13. package/dist/cjs/dataSourceAdapters/cms/sortUtils.js +2 -2
  14. package/dist/cjs/dataSourceAdapters/cms/sortUtils.js.map +1 -1
  15. package/dist/cjs/dataSourceAdapters/factory.js +0 -20
  16. package/dist/cjs/dataSourceAdapters/factory.js.map +1 -1
  17. package/dist/cjs/hooks/useActionCell.js +0 -6
  18. package/dist/cjs/hooks/useActionCell.js.map +1 -1
  19. package/dist/cjs/hooks/useBulkActionToolbar.js +1 -7
  20. package/dist/cjs/hooks/useBulkActionToolbar.js.map +1 -1
  21. package/dist/cjs/hooks/useCollectionPageActions.js +2 -8
  22. package/dist/cjs/hooks/useCollectionPageActions.js.map +1 -1
  23. package/dist/cjs/hooks/useFetchData.js +9 -29
  24. package/dist/cjs/hooks/useFetchData.js.map +1 -1
  25. package/dist/cjs/hooks/useFilters.js +2 -2
  26. package/dist/cjs/hooks/useFilters.js.map +1 -1
  27. package/dist/cjs/hooks/useGridFeatures.js +3 -4
  28. package/dist/cjs/hooks/useGridFeatures.js.map +1 -1
  29. package/dist/cjs/hooks/useTableFeatures.js +3 -4
  30. package/dist/cjs/hooks/useTableFeatures.js.map +1 -1
  31. package/dist/cjs/hooks/useTableGridSwitchFeatures.js +3 -4
  32. package/dist/cjs/hooks/useTableGridSwitchFeatures.js.map +1 -1
  33. package/dist/cjs/providers/PatternsWizardOverridesContext.js +1 -1
  34. package/dist/cjs/providers/PatternsWizardOverridesContext.js.map +1 -1
  35. package/dist/cjs/providers/SchemaContext.js +29 -6
  36. package/dist/cjs/providers/SchemaContext.js.map +1 -1
  37. package/dist/cjs/types/CollectionPageConfig.js.map +1 -1
  38. package/dist/cjs/types/EntityPageConfig.js.map +1 -1
  39. package/dist/cjs/types/actions/actionCell.js.map +1 -1
  40. package/dist/cjs/types/actions/base.js.map +1 -1
  41. package/dist/cjs/types/actions/bulkActions.js.map +1 -1
  42. package/dist/cjs/types/actions/collectionPageActions.js.map +1 -1
  43. package/dist/cjs/types/index.js +6 -0
  44. package/dist/cjs/types/index.js.map +1 -1
  45. package/dist/cjs/types/providers.js +4 -0
  46. package/dist/cjs/types/providers.js.map +1 -0
  47. package/dist/cjs/types/types.js.map +1 -1
  48. package/dist/cjs/utils/actions/index.js +0 -6
  49. package/dist/cjs/utils/actions/index.js.map +1 -1
  50. package/dist/cjs/utils/actions/types.js.map +1 -1
  51. package/dist/esm/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.js +1 -2
  52. package/dist/esm/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.js.map +1 -1
  53. package/dist/esm/components/AutoPatternsRoute/AutoPatternsPage.js +1 -2
  54. package/dist/esm/components/AutoPatternsRoute/AutoPatternsPage.js.map +1 -1
  55. package/dist/esm/components/filters/DynamicCollectionFilter.js +4 -10
  56. package/dist/esm/components/filters/DynamicCollectionFilter.js.map +1 -1
  57. package/dist/esm/dataSourceAdapters/cms/cmsAdapter.js +54 -88
  58. package/dist/esm/dataSourceAdapters/cms/cmsAdapter.js.map +1 -1
  59. package/dist/esm/dataSourceAdapters/cms/fetchCmsData.js +42 -0
  60. package/dist/esm/dataSourceAdapters/cms/fetchCmsData.js.map +1 -0
  61. package/dist/esm/dataSourceAdapters/cms/filterUtils.js +15 -15
  62. package/dist/esm/dataSourceAdapters/cms/filterUtils.js.map +1 -1
  63. package/dist/esm/dataSourceAdapters/cms/sortUtils.js +2 -2
  64. package/dist/esm/dataSourceAdapters/cms/sortUtils.js.map +1 -1
  65. package/dist/esm/dataSourceAdapters/factory.js +1 -21
  66. package/dist/esm/dataSourceAdapters/factory.js.map +1 -1
  67. package/dist/esm/hooks/useActionCell.js +1 -7
  68. package/dist/esm/hooks/useActionCell.js.map +1 -1
  69. package/dist/esm/hooks/useBulkActionToolbar.js +1 -7
  70. package/dist/esm/hooks/useBulkActionToolbar.js.map +1 -1
  71. package/dist/esm/hooks/useCollectionPageActions.js +1 -7
  72. package/dist/esm/hooks/useCollectionPageActions.js.map +1 -1
  73. package/dist/esm/hooks/useFetchData.js +9 -29
  74. package/dist/esm/hooks/useFetchData.js.map +1 -1
  75. package/dist/esm/hooks/useFilters.js +2 -2
  76. package/dist/esm/hooks/useFilters.js.map +1 -1
  77. package/dist/esm/hooks/useGridFeatures.js +3 -4
  78. package/dist/esm/hooks/useGridFeatures.js.map +1 -1
  79. package/dist/esm/hooks/useTableFeatures.js +3 -4
  80. package/dist/esm/hooks/useTableFeatures.js.map +1 -1
  81. package/dist/esm/hooks/useTableGridSwitchFeatures.js +3 -4
  82. package/dist/esm/hooks/useTableGridSwitchFeatures.js.map +1 -1
  83. package/dist/esm/providers/PatternsWizardOverridesContext.js.map +1 -1
  84. package/dist/esm/providers/SchemaContext.js +28 -5
  85. package/dist/esm/providers/SchemaContext.js.map +1 -1
  86. package/dist/esm/types/CollectionPageConfig.js.map +1 -1
  87. package/dist/esm/types/EntityPageConfig.js.map +1 -1
  88. package/dist/esm/types/actions/actionCell.js.map +1 -1
  89. package/dist/esm/types/actions/base.js.map +1 -1
  90. package/dist/esm/types/actions/bulkActions.js.map +1 -1
  91. package/dist/esm/types/actions/collectionPageActions.js.map +1 -1
  92. package/dist/esm/types/index.js +1 -0
  93. package/dist/esm/types/index.js.map +1 -1
  94. package/dist/esm/types/providers.js +2 -0
  95. package/dist/esm/types/providers.js.map +1 -0
  96. package/dist/esm/types/types.js.map +1 -1
  97. package/dist/esm/utils/actions/index.js +0 -2
  98. package/dist/esm/utils/actions/index.js.map +1 -1
  99. package/dist/esm/utils/actions/types.js.map +1 -1
  100. package/dist/types/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.d.ts.map +1 -1
  101. package/dist/types/components/AutoPatternsRoute/AutoPatternsPage.d.ts.map +1 -1
  102. package/dist/types/components/filters/DynamicCollectionFilter.d.ts.map +1 -1
  103. package/dist/types/dataSourceAdapters/cms/cmsAdapter.d.ts +1 -10
  104. package/dist/types/dataSourceAdapters/cms/cmsAdapter.d.ts.map +1 -1
  105. package/dist/types/dataSourceAdapters/cms/fetchCmsData.d.ts +13 -0
  106. package/dist/types/dataSourceAdapters/cms/fetchCmsData.d.ts.map +1 -0
  107. package/dist/types/dataSourceAdapters/cms/filterUtils.d.ts +9 -7
  108. package/dist/types/dataSourceAdapters/cms/filterUtils.d.ts.map +1 -1
  109. package/dist/types/dataSourceAdapters/cms/sortUtils.d.ts +2 -2
  110. package/dist/types/dataSourceAdapters/cms/sortUtils.d.ts.map +1 -1
  111. package/dist/types/dataSourceAdapters/factory.d.ts +1 -11
  112. package/dist/types/dataSourceAdapters/factory.d.ts.map +1 -1
  113. package/dist/types/hooks/useActionCell.d.ts.map +1 -1
  114. package/dist/types/hooks/useBulkActionToolbar.d.ts.map +1 -1
  115. package/dist/types/hooks/useCollectionPageActions.d.ts.map +1 -1
  116. package/dist/types/hooks/useEntityPageHeaderTexts.d.ts.map +1 -1
  117. package/dist/types/hooks/useFetchData.d.ts +13 -7
  118. package/dist/types/hooks/useFetchData.d.ts.map +1 -1
  119. package/dist/types/hooks/useFilters.d.ts +1 -1
  120. package/dist/types/hooks/useGridFeatures.d.ts.map +1 -1
  121. package/dist/types/hooks/useTableFeatures.d.ts.map +1 -1
  122. package/dist/types/hooks/useTableGridSwitchFeatures.d.ts.map +1 -1
  123. package/dist/types/providers/PatternsWizardOverridesContext.d.ts +2 -3
  124. package/dist/types/providers/PatternsWizardOverridesContext.d.ts.map +1 -1
  125. package/dist/types/providers/SchemaContext.d.ts +3 -4
  126. package/dist/types/providers/SchemaContext.d.ts.map +1 -1
  127. package/dist/types/types/CollectionPageConfig.d.ts +2 -7
  128. package/dist/types/types/CollectionPageConfig.d.ts.map +1 -1
  129. package/dist/types/types/EntityPageConfig.d.ts +3 -4
  130. package/dist/types/types/EntityPageConfig.d.ts.map +1 -1
  131. package/dist/types/types/actions/actionCell.d.ts +2 -2
  132. package/dist/types/types/actions/actionCell.d.ts.map +1 -1
  133. package/dist/types/types/actions/base.d.ts +0 -7
  134. package/dist/types/types/actions/base.d.ts.map +1 -1
  135. package/dist/types/types/actions/bulkActions.d.ts +2 -2
  136. package/dist/types/types/actions/bulkActions.d.ts.map +1 -1
  137. package/dist/types/types/actions/collectionPageActions.d.ts +2 -2
  138. package/dist/types/types/actions/collectionPageActions.d.ts.map +1 -1
  139. package/dist/types/types/index.d.ts +1 -0
  140. package/dist/types/types/index.d.ts.map +1 -1
  141. package/dist/types/types/providers.d.ts +11 -0
  142. package/dist/types/types/providers.d.ts.map +1 -0
  143. package/dist/types/types/types.d.ts +25 -1
  144. package/dist/types/types/types.d.ts.map +1 -1
  145. package/dist/types/utils/actions/index.d.ts +0 -2
  146. package/dist/types/utils/actions/index.d.ts.map +1 -1
  147. package/dist/types/utils/actions/types.d.ts +1 -4
  148. package/dist/types/utils/actions/types.d.ts.map +1 -1
  149. package/package.json +2 -2
  150. package/dist/cjs/utils/actions/customModalAction.js +0 -22
  151. package/dist/cjs/utils/actions/customModalAction.js.map +0 -1
  152. package/dist/esm/utils/actions/customModalAction.js +0 -17
  153. package/dist/esm/utils/actions/customModalAction.js.map +0 -1
  154. package/dist/types/utils/actions/customModalAction.d.ts +0 -5
  155. package/dist/types/utils/actions/customModalAction.d.ts.map +0 -1
@@ -73,8 +73,7 @@ const AutoPatternsCollectionPageContent = ({
73
73
  }
74
74
  return componentToRender ? /*#__PURE__*/_react.default.createElement(_providers.SchemaProvider, {
75
75
  key: `${sharedConfig.collection.collectionId}-${index}`,
76
- collectionId: sharedConfig.collection.collectionId,
77
- entityTypeSource: sharedConfig.collection.entityTypeSource,
76
+ collection: sharedConfig.collection,
78
77
  __self: void 0,
79
78
  __source: {
80
79
  fileName: _jsxFileName,
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_AutoPatternsTable","_AutoPatternsGrid","_AutoPatternsTableGridSwitch","_providers","_jsxFileName","AutoPatternsCollectionPageContent","configuration","components","default","createElement","Fragment","map","component","index","_layout$find","_layout$find2","layout","sharedConfig","length","tableConfig","find","item","type","table","gridConfig","grid","componentToRender","config","AutoPatternsTableGridSwitch","__self","__source","fileName","lineNumber","columnNumber","AutoPatternsTable","AutoPatternsGrid","SchemaProvider","key","collection","collectionId","entityTypeSource","filter","Boolean","exports"],"sources":["../../../../src/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.tsx"],"sourcesContent":["import React from 'react';\nimport { AutoPatternsTable } from '../AutoPatternsTable';\nimport { CollectionPageConfig } from '../../types';\nimport { AutoPatternsGrid } from '../AutoPatternsGrid';\nimport { AutoPatternsTableGridSwitch } from '../AutoPatternsTableGridSwitch/AutoPatternsTableGridSwitch';\nimport { SchemaProvider } from '../../providers';\n\nexport interface AutoPatternsCollectionPageContentProps {\n configuration: CollectionPageConfig;\n}\n\nexport const AutoPatternsCollectionPageContent = ({\n configuration,\n}: AutoPatternsCollectionPageContentProps) => {\n const { components } = configuration;\n return (\n <>\n {components\n .map((component, index) => {\n const { layout, ...sharedConfig } = component;\n\n if (!layout?.length) {\n return null;\n }\n\n const tableConfig = layout.find(\n (item) => item.type === 'Table',\n )?.table;\n const gridConfig = layout.find((item) => item.type === 'Grid')?.grid;\n\n let componentToRender = null;\n\n if (tableConfig && gridConfig) {\n const config = {\n ...sharedConfig,\n ...tableConfig,\n ...gridConfig,\n };\n componentToRender = (\n <AutoPatternsTableGridSwitch configuration={config} />\n );\n } else if (tableConfig) {\n const config = { ...sharedConfig, ...tableConfig };\n componentToRender = <AutoPatternsTable configuration={config} />;\n } else if (gridConfig) {\n const config = { ...sharedConfig, ...gridConfig };\n componentToRender = <AutoPatternsGrid configuration={config} />;\n }\n\n return componentToRender ? (\n <SchemaProvider\n key={`${sharedConfig.collection.collectionId}-${index}`}\n collectionId={sharedConfig.collection.collectionId}\n entityTypeSource={sharedConfig.collection.entityTypeSource}\n >\n {componentToRender}\n </SchemaProvider>\n ) : null;\n })\n .filter(Boolean)}\n </>\n );\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_AutoPatternsTable","_AutoPatternsGrid","_AutoPatternsTableGridSwitch","_providers","_jsxFileName","AutoPatternsCollectionPageContent","configuration","components","default","createElement","Fragment","map","component","index","_layout$find","_layout$find2","layout","sharedConfig","length","tableConfig","find","item","type","table","gridConfig","grid","componentToRender","config","AutoPatternsTableGridSwitch","__self","__source","fileName","lineNumber","columnNumber","AutoPatternsTable","AutoPatternsGrid","SchemaProvider","key","collection","collectionId","filter","Boolean","exports"],"sources":["../../../../src/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.tsx"],"sourcesContent":["import React from 'react';\nimport { AutoPatternsTable } from '../AutoPatternsTable';\nimport { CollectionPageConfig } from '../../types';\nimport { AutoPatternsGrid } from '../AutoPatternsGrid';\nimport { AutoPatternsTableGridSwitch } from '../AutoPatternsTableGridSwitch/AutoPatternsTableGridSwitch';\nimport { SchemaProvider } from '../../providers';\n\nexport interface AutoPatternsCollectionPageContentProps {\n configuration: CollectionPageConfig;\n}\n\nexport const AutoPatternsCollectionPageContent = ({\n configuration,\n}: AutoPatternsCollectionPageContentProps) => {\n const { components } = configuration;\n return (\n <>\n {components\n .map((component, index) => {\n const { layout, ...sharedConfig } = component;\n\n if (!layout?.length) {\n return null;\n }\n\n const tableConfig = layout.find(\n (item) => item.type === 'Table',\n )?.table;\n const gridConfig = layout.find((item) => item.type === 'Grid')?.grid;\n\n let componentToRender = null;\n\n if (tableConfig && gridConfig) {\n const config = {\n ...sharedConfig,\n ...tableConfig,\n ...gridConfig,\n };\n componentToRender = (\n <AutoPatternsTableGridSwitch configuration={config} />\n );\n } else if (tableConfig) {\n const config = { ...sharedConfig, ...tableConfig };\n componentToRender = <AutoPatternsTable configuration={config} />;\n } else if (gridConfig) {\n const config = { ...sharedConfig, ...gridConfig };\n componentToRender = <AutoPatternsGrid configuration={config} />;\n }\n\n return componentToRender ? (\n <SchemaProvider\n key={`${sharedConfig.collection.collectionId}-${index}`}\n collection={sharedConfig.collection}\n >\n {componentToRender}\n </SchemaProvider>\n ) : null;\n })\n .filter(Boolean)}\n </>\n );\n};\n"],"mappings":"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","ignoreList":[]}
@@ -33,8 +33,7 @@ const AutoPatternsPage = ({
33
33
  case 'entityPage':
34
34
  if (entityPage) {
35
35
  return /*#__PURE__*/_react.default.createElement(_SchemaContext.SchemaProvider, {
36
- collectionId: entityPage.collectionId,
37
- entityTypeSource: entityPage.entityTypeSource,
36
+ collection: entityPage,
38
37
  __self: void 0,
39
38
  __source: {
40
39
  fileName: _jsxFileName,
@@ -46,7 +45,7 @@ const AutoPatternsPage = ({
46
45
  __self: void 0,
47
46
  __source: {
48
47
  fileName: _jsxFileName,
49
- lineNumber: 27,
48
+ lineNumber: 24,
50
49
  columnNumber: 13
51
50
  }
52
51
  }));
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_AutoPatternsCollectionPage","_AutoPatternsEntityPage","_SchemaContext","_jsxFileName","AutoPatternsPage","pageConfig","type","collectionPage","entityPage","default","createElement","AutoPatternsCollectionPage","configuration","__self","__source","fileName","lineNumber","columnNumber","SchemaProvider","collectionId","entityTypeSource","AutoPatternsEntityPage","exports"],"sources":["../../../../src/components/AutoPatternsRoute/AutoPatternsPage.tsx"],"sourcesContent":["import React from 'react';\nimport { PageConfig } from '../../types';\nimport { AutoPatternsCollectionPage } from '../AutoPatternsCollectionPage';\nimport { AutoPatternsEntityPage } from '../AutoPatternsEntityPage';\nimport { SchemaProvider } from '../../providers/SchemaContext';\n\nexport interface AutoPatternsPageProps {\n pageConfig: PageConfig;\n}\n\nexport const AutoPatternsPage = ({ pageConfig }: AutoPatternsPageProps) => {\n const { type, collectionPage, entityPage } = pageConfig;\n\n switch (type) {\n case 'collectionPage':\n if (collectionPage) {\n return <AutoPatternsCollectionPage configuration={collectionPage} />;\n }\n break;\n case 'entityPage':\n if (entityPage) {\n return (\n <SchemaProvider\n collectionId={entityPage.collectionId}\n entityTypeSource={entityPage.entityTypeSource}\n >\n <AutoPatternsEntityPage configuration={entityPage} />\n </SchemaProvider>\n );\n }\n break;\n default:\n break;\n }\n\n return null;\n};\n"],"mappings":";;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,2BAAA,GAAAD,OAAA;AACA,IAAAE,uBAAA,GAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AAA+D,IAAAI,YAAA;AAMxD,MAAMC,gBAAgB,GAAGA,CAAC;EAAEC;AAAkC,CAAC,KAAK;EACzE,MAAM;IAAEC,IAAI;IAAEC,cAAc;IAAEC;EAAW,CAAC,GAAGH,UAAU;EAEvD,QAAQC,IAAI;IACV,KAAK,gBAAgB;MACnB,IAAIC,cAAc,EAAE;QAClB,oBAAOV,MAAA,CAAAY,OAAA,CAAAC,aAAA,CAACV,2BAAA,CAAAW,0BAA0B;UAACC,aAAa,EAAEL,cAAe;UAAAM,MAAA;UAAAC,QAAA;YAAAC,QAAA,EAAAZ,YAAA;YAAAa,UAAA;YAAAC,YAAA;UAAA;QAAA,CAAE,CAAC;MACtE;MACA;IACF,KAAK,YAAY;MACf,IAAIT,UAAU,EAAE;QACd,oBACEX,MAAA,CAAAY,OAAA,CAAAC,aAAA,CAACR,cAAA,CAAAgB,cAAc;UACbC,YAAY,EAAEX,UAAU,CAACW,YAAa;UACtCC,gBAAgB,EAAEZ,UAAU,CAACY,gBAAiB;UAAAP,MAAA;UAAAC,QAAA;YAAAC,QAAA,EAAAZ,YAAA;YAAAa,UAAA;YAAAC,YAAA;UAAA;QAAA,gBAE9CpB,MAAA,CAAAY,OAAA,CAAAC,aAAA,CAACT,uBAAA,CAAAoB,sBAAsB;UAACT,aAAa,EAAEJ,UAAW;UAAAK,MAAA;UAAAC,QAAA;YAAAC,QAAA,EAAAZ,YAAA;YAAAa,UAAA;YAAAC,YAAA;UAAA;QAAA,CAAE,CACtC,CAAC;MAErB;MACA;IACF;MACE;EACJ;EAEA,OAAO,IAAI;AACb,CAAC;AAACK,OAAA,CAAAlB,gBAAA,GAAAA,gBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_AutoPatternsCollectionPage","_AutoPatternsEntityPage","_SchemaContext","_jsxFileName","AutoPatternsPage","pageConfig","type","collectionPage","entityPage","default","createElement","AutoPatternsCollectionPage","configuration","__self","__source","fileName","lineNumber","columnNumber","SchemaProvider","collection","AutoPatternsEntityPage","exports"],"sources":["../../../../src/components/AutoPatternsRoute/AutoPatternsPage.tsx"],"sourcesContent":["import React from 'react';\nimport { PageConfig } from '../../types';\nimport { AutoPatternsCollectionPage } from '../AutoPatternsCollectionPage';\nimport { AutoPatternsEntityPage } from '../AutoPatternsEntityPage';\nimport { SchemaProvider } from '../../providers/SchemaContext';\n\nexport interface AutoPatternsPageProps {\n pageConfig: PageConfig;\n}\n\nexport const AutoPatternsPage = ({ pageConfig }: AutoPatternsPageProps) => {\n const { type, collectionPage, entityPage } = pageConfig;\n\n switch (type) {\n case 'collectionPage':\n if (collectionPage) {\n return <AutoPatternsCollectionPage configuration={collectionPage} />;\n }\n break;\n case 'entityPage':\n if (entityPage) {\n return (\n <SchemaProvider collection={entityPage}>\n <AutoPatternsEntityPage configuration={entityPage} />\n </SchemaProvider>\n );\n }\n break;\n default:\n break;\n }\n\n return null;\n};\n"],"mappings":";;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,2BAAA,GAAAD,OAAA;AACA,IAAAE,uBAAA,GAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AAA+D,IAAAI,YAAA;AAMxD,MAAMC,gBAAgB,GAAGA,CAAC;EAAEC;AAAkC,CAAC,KAAK;EACzE,MAAM;IAAEC,IAAI;IAAEC,cAAc;IAAEC;EAAW,CAAC,GAAGH,UAAU;EAEvD,QAAQC,IAAI;IACV,KAAK,gBAAgB;MACnB,IAAIC,cAAc,EAAE;QAClB,oBAAOV,MAAA,CAAAY,OAAA,CAAAC,aAAA,CAACV,2BAAA,CAAAW,0BAA0B;UAACC,aAAa,EAAEL,cAAe;UAAAM,MAAA;UAAAC,QAAA;YAAAC,QAAA,EAAAZ,YAAA;YAAAa,UAAA;YAAAC,YAAA;UAAA;QAAA,CAAE,CAAC;MACtE;MACA;IACF,KAAK,YAAY;MACf,IAAIT,UAAU,EAAE;QACd,oBACEX,MAAA,CAAAY,OAAA,CAAAC,aAAA,CAACR,cAAA,CAAAgB,cAAc;UAACC,UAAU,EAAEX,UAAW;UAAAK,MAAA;UAAAC,QAAA;YAAAC,QAAA,EAAAZ,YAAA;YAAAa,UAAA;YAAAC,YAAA;UAAA;QAAA,gBACrCpB,MAAA,CAAAY,OAAA,CAAAC,aAAA,CAACT,uBAAA,CAAAmB,sBAAsB;UAACR,aAAa,EAAEJ,UAAW;UAAAK,MAAA;UAAAC,QAAA;YAAAC,QAAA,EAAAZ,YAAA;YAAAa,UAAA;YAAAC,YAAA;UAAA;QAAA,CAAE,CACtC,CAAC;MAErB;MACA;IACF;MACE;EACJ;EAEA,OAAO,IAAI;AACb,CAAC;AAACI,OAAA,CAAAjB,gBAAA,GAAAA,gBAAA","ignoreList":[]}
@@ -7,7 +7,7 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
7
7
  var _react = _interopRequireDefault(require("react"));
8
8
  var _patterns = require("@wix/patterns");
9
9
  var _providers = require("../../providers");
10
- var _factory = require("../../dataSourceAdapters/factory");
10
+ var _fetchCmsData = require("../../dataSourceAdapters/cms/fetchCmsData");
11
11
  var _jsxFileName = "/home/builduser/work/73d19ce3378ce4dd/packages/auto-patterns/dist/cjs/components/filters/DynamicCollectionFilter.tsx";
12
12
  const DynamicCollectionFilter = ({
13
13
  filter,
@@ -26,16 +26,10 @@ const DynamicCollectionFilter = ({
26
26
  total: 0
27
27
  };
28
28
  }
29
- const {
30
- fetchData: fetchFilterData
31
- } = (0, _factory.createDataProvider)({
32
- collectionId,
33
- entityTypeSource: 'cms',
34
- schema: referencedSchema,
35
- visibleFieldIds: [referencedSchema.displayField],
36
- filtersMapping: {}
29
+ const result = await (0, _fetchCmsData.fetchCmsData)(collectionId, query, referencedSchema.fields, {
30
+ searchableFieldIds: [referencedSchema.displayField],
31
+ filterFieldMapping: {}
37
32
  });
38
- const result = await fetchFilterData(query);
39
33
  return {
40
34
  items: result.items.map(item => ({
41
35
  id: item[referencedSchema.idField],
@@ -54,7 +48,7 @@ const DynamicCollectionFilter = ({
54
48
  __self: void 0,
55
49
  __source: {
56
50
  fileName: _jsxFileName,
57
- lineNumber: 51,
51
+ lineNumber: 52,
58
52
  columnNumber: 5
59
53
  }
60
54
  }));
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_patterns","_providers","_factory","_jsxFileName","DynamicCollectionFilter","filter","collectionId","component","FilterComponent","filterProps","getSchema","useSchemaRegistry","referencedSchema","fetchData","React","useCallback","query","items","total","fetchFilterData","createDataProvider","entityTypeSource","schema","visibleFieldIds","displayField","filtersMapping","result","map","item","id","idField","name","collection","useFilterCollection","queryName","default","createElement","_extends2","__self","__source","fileName","lineNumber","columnNumber","exports"],"sources":["../../../../src/components/filters/DynamicCollectionFilter.tsx"],"sourcesContent":["import React from 'react';\nimport { Filter, useFilterCollection } from '@wix/patterns';\nimport { useSchemaRegistry } from '../../providers';\nimport { createDataProvider } from '../../dataSourceAdapters/factory';\n\ninterface DynamicCollectionFilterProps {\n filter: Filter<any>;\n collectionId: string;\n component: React.ElementType;\n componentName?: string;\n [key: string]: any;\n}\n\nexport const DynamicCollectionFilter: React.FC<\n DynamicCollectionFilterProps\n> = ({ filter, collectionId, component: FilterComponent, ...filterProps }) => {\n const { getSchema } = useSchemaRegistry();\n const referencedSchema = getSchema(collectionId);\n\n const fetchData = React.useCallback(\n async (query) => {\n if (!referencedSchema) {\n return { items: [], total: 0 };\n }\n\n const { fetchData: fetchFilterData } = createDataProvider({\n collectionId,\n entityTypeSource: 'cms',\n schema: referencedSchema,\n visibleFieldIds: [referencedSchema.displayField],\n filtersMapping: {},\n });\n\n const result = await fetchFilterData(query);\n return {\n items: result.items.map((item: any) => ({\n id: item[referencedSchema.idField],\n name: item[referencedSchema.displayField],\n })),\n };\n },\n [collectionId, referencedSchema],\n );\n\n const collection = useFilterCollection(filter, {\n queryName: `filter-collection-${collectionId}`,\n fetchData,\n });\n\n return (\n <FilterComponent filter={filter} collection={collection} {...filterProps} />\n );\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAAsE,IAAAI,YAAA;AAU/D,MAAMC,uBAEZ,GAAGA,CAAC;EAAEC,MAAM;EAAEC,YAAY;EAAEC,SAAS,EAAEC,eAAe;EAAE,GAAGC;AAAY,CAAC,KAAK;EAC5E,MAAM;IAAEC;EAAU,CAAC,GAAG,IAAAC,4BAAiB,EAAC,CAAC;EACzC,MAAMC,gBAAgB,GAAGF,SAAS,CAACJ,YAAY,CAAC;EAEhD,MAAMO,SAAS,GAAGC,cAAK,CAACC,WAAW,CACjC,MAAOC,KAAK,IAAK;IACf,IAAI,CAACJ,gBAAgB,EAAE;MACrB,OAAO;QAAEK,KAAK,EAAE,EAAE;QAAEC,KAAK,EAAE;MAAE,CAAC;IAChC;IAEA,MAAM;MAAEL,SAAS,EAAEM;IAAgB,CAAC,GAAG,IAAAC,2BAAkB,EAAC;MACxDd,YAAY;MACZe,gBAAgB,EAAE,KAAK;MACvBC,MAAM,EAAEV,gBAAgB;MACxBW,eAAe,EAAE,CAACX,gBAAgB,CAACY,YAAY,CAAC;MAChDC,cAAc,EAAE,CAAC;IACnB,CAAC,CAAC;IAEF,MAAMC,MAAM,GAAG,MAAMP,eAAe,CAACH,KAAK,CAAC;IAC3C,OAAO;MACLC,KAAK,EAAES,MAAM,CAACT,KAAK,CAACU,GAAG,CAAEC,IAAS,KAAM;QACtCC,EAAE,EAAED,IAAI,CAAChB,gBAAgB,CAACkB,OAAO,CAAC;QAClCC,IAAI,EAAEH,IAAI,CAAChB,gBAAgB,CAACY,YAAY;MAC1C,CAAC,CAAC;IACJ,CAAC;EACH,CAAC,EACD,CAAClB,YAAY,EAAEM,gBAAgB,CACjC,CAAC;EAED,MAAMoB,UAAU,GAAG,IAAAC,6BAAmB,EAAC5B,MAAM,EAAE;IAC7C6B,SAAS,EAAE,qBAAqB5B,YAAY,EAAE;IAC9CO;EACF,CAAC,CAAC;EAEF,oBACEhB,MAAA,CAAAsC,OAAA,CAAAC,aAAA,CAAC5B,eAAe,MAAA6B,SAAA,CAAAF,OAAA;IAAC9B,MAAM,EAAEA,MAAO;IAAC2B,UAAU,EAAEA;EAAW,GAAKvB,WAAW;IAAA6B,MAAA;IAAAC,QAAA;MAAAC,QAAA,EAAArC,YAAA;MAAAsC,UAAA;MAAAC,YAAA;IAAA;EAAA,EAAG,CAAC;AAEhF,CAAC;AAACC,OAAA,CAAAvC,uBAAA,GAAAA,uBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_patterns","_providers","_fetchCmsData","_jsxFileName","DynamicCollectionFilter","filter","collectionId","component","FilterComponent","filterProps","getSchema","useSchemaRegistry","referencedSchema","fetchData","React","useCallback","query","items","total","result","fetchCmsData","fields","searchableFieldIds","displayField","filterFieldMapping","map","item","id","idField","name","collection","useFilterCollection","queryName","default","createElement","_extends2","__self","__source","fileName","lineNumber","columnNumber","exports"],"sources":["../../../../src/components/filters/DynamicCollectionFilter.tsx"],"sourcesContent":["import React from 'react';\nimport { Filter, useFilterCollection } from '@wix/patterns';\nimport { useSchemaRegistry } from '../../providers';\nimport { fetchCmsData } from '../../dataSourceAdapters/cms/fetchCmsData';\n\ninterface DynamicCollectionFilterProps {\n filter: Filter<any>;\n collectionId: string;\n component: React.ElementType;\n componentName?: string;\n [key: string]: any;\n}\n\nexport const DynamicCollectionFilter: React.FC<\n DynamicCollectionFilterProps\n> = ({ filter, collectionId, component: FilterComponent, ...filterProps }) => {\n const { getSchema } = useSchemaRegistry();\n const referencedSchema = getSchema(collectionId);\n\n const fetchData = React.useCallback(\n async (query) => {\n if (!referencedSchema) {\n return { items: [], total: 0 };\n }\n\n const result = await fetchCmsData(\n collectionId,\n query,\n referencedSchema.fields,\n {\n searchableFieldIds: [referencedSchema.displayField],\n filterFieldMapping: {},\n },\n );\n\n return {\n items: result.items.map((item: any) => ({\n id: item[referencedSchema.idField],\n name: item[referencedSchema.displayField],\n })),\n };\n },\n [collectionId, referencedSchema],\n );\n\n const collection = useFilterCollection(filter, {\n queryName: `filter-collection-${collectionId}`,\n fetchData,\n });\n\n return (\n <FilterComponent filter={filter} collection={collection} {...filterProps} />\n );\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;AAAyE,IAAAI,YAAA;AAUlE,MAAMC,uBAEZ,GAAGA,CAAC;EAAEC,MAAM;EAAEC,YAAY;EAAEC,SAAS,EAAEC,eAAe;EAAE,GAAGC;AAAY,CAAC,KAAK;EAC5E,MAAM;IAAEC;EAAU,CAAC,GAAG,IAAAC,4BAAiB,EAAC,CAAC;EACzC,MAAMC,gBAAgB,GAAGF,SAAS,CAACJ,YAAY,CAAC;EAEhD,MAAMO,SAAS,GAAGC,cAAK,CAACC,WAAW,CACjC,MAAOC,KAAK,IAAK;IACf,IAAI,CAACJ,gBAAgB,EAAE;MACrB,OAAO;QAAEK,KAAK,EAAE,EAAE;QAAEC,KAAK,EAAE;MAAE,CAAC;IAChC;IAEA,MAAMC,MAAM,GAAG,MAAM,IAAAC,0BAAY,EAC/Bd,YAAY,EACZU,KAAK,EACLJ,gBAAgB,CAACS,MAAM,EACvB;MACEC,kBAAkB,EAAE,CAACV,gBAAgB,CAACW,YAAY,CAAC;MACnDC,kBAAkB,EAAE,CAAC;IACvB,CACF,CAAC;IAED,OAAO;MACLP,KAAK,EAAEE,MAAM,CAACF,KAAK,CAACQ,GAAG,CAAEC,IAAS,KAAM;QACtCC,EAAE,EAAED,IAAI,CAACd,gBAAgB,CAACgB,OAAO,CAAC;QAClCC,IAAI,EAAEH,IAAI,CAACd,gBAAgB,CAACW,YAAY;MAC1C,CAAC,CAAC;IACJ,CAAC;EACH,CAAC,EACD,CAACjB,YAAY,EAAEM,gBAAgB,CACjC,CAAC;EAED,MAAMkB,UAAU,GAAG,IAAAC,6BAAmB,EAAC1B,MAAM,EAAE;IAC7C2B,SAAS,EAAE,qBAAqB1B,YAAY,EAAE;IAC9CO;EACF,CAAC,CAAC;EAEF,oBACEhB,MAAA,CAAAoC,OAAA,CAAAC,aAAA,CAAC1B,eAAe,MAAA2B,SAAA,CAAAF,OAAA;IAAC5B,MAAM,EAAEA,MAAO;IAACyB,UAAU,EAAEA;EAAW,GAAKrB,WAAW;IAAA2B,MAAA;IAAAC,QAAA;MAAAC,QAAA,EAAAnC,YAAA;MAAAoC,UAAA;MAAAC,YAAA;IAAA;EAAA,EAAG,CAAC;AAEhF,CAAC;AAACC,OAAA,CAAArC,uBAAA,GAAAA,uBAAA","ignoreList":[]}
@@ -2,11 +2,9 @@
2
2
 
3
3
  exports.__esModule = true;
4
4
  exports.CmsFieldTypeToPatternsFieldType = void 0;
5
- exports.createCmsDataProvider = createCmsDataProvider;
6
5
  exports.fetchCmsSchema = fetchCmsSchema;
7
6
  var _data = require("@wix/data");
8
- var _filterUtils = require("./filterUtils");
9
- var _sortUtils = require("./sortUtils");
7
+ var _fetchCmsData = require("./fetchCmsData");
10
8
  const CmsFieldTypeToPatternsFieldType = exports.CmsFieldTypeToPatternsFieldType = {
11
9
  [_data.collections.Type.TEXT]: 'SHORT_TEXT',
12
10
  [_data.collections.Type.DATE]: 'DATE',
@@ -26,55 +24,56 @@ const CmsFieldTypeToPatternsFieldType = exports.CmsFieldTypeToPatternsFieldType
26
24
  async function fetchCmsSchema(collectionId) {
27
25
  var _schema$fields$find;
28
26
  const schema = await _data.collections.getDataCollection(collectionId);
29
- return {
27
+ const transformedFields = schema.fields.reduce((acc, field) => {
28
+ var _field$capabilities, _field$capabilities2, _field$typeMetadata;
29
+ if (!field.key) {
30
+ return acc;
31
+ }
32
+ const fieldType = field.type ? CmsFieldTypeToPatternsFieldType[field.type] || 'SHORT_TEXT' : 'SHORT_TEXT';
33
+ const baseField = {
34
+ id: field.key,
35
+ displayName: field.displayName || '',
36
+ validation: {
37
+ numberRange: field.numberRange ? {
38
+ min: field.numberRange.min ?? undefined,
39
+ max: field.numberRange.max ?? undefined
40
+ } : undefined,
41
+ stringLengthRange: field.stringLengthRange ? {
42
+ minLength: field.stringLengthRange.minLength ?? undefined,
43
+ maxLength: field.stringLengthRange.maxLength ?? undefined
44
+ } : undefined,
45
+ required: field.required ?? false
46
+ },
47
+ capabilities: {
48
+ supportedQueryOperators: ((_field$capabilities = field.capabilities) == null ? void 0 : _field$capabilities.queryOperators) || [],
49
+ sortable: ((_field$capabilities2 = field.capabilities) == null ? void 0 : _field$capabilities2.sortable) || false
50
+ }
51
+ };
52
+ if (fieldType === 'REFERENCE' && (_field$typeMetadata = field.typeMetadata) != null && (_field$typeMetadata = _field$typeMetadata.reference) != null && _field$typeMetadata.referencedCollectionId) {
53
+ const referenceField = {
54
+ ...baseField,
55
+ type: 'REFERENCE',
56
+ referenceMetadata: {
57
+ referencedCollectionId: field.typeMetadata.reference.referencedCollectionId
58
+ }
59
+ };
60
+ acc[field.key] = referenceField;
61
+ } else {
62
+ const nonReferenceType = fieldType === 'REFERENCE' ? 'SHORT_TEXT' : fieldType;
63
+ const nonReferenceField = {
64
+ ...baseField,
65
+ type: nonReferenceType
66
+ };
67
+ acc[field.key] = nonReferenceField;
68
+ }
69
+ return acc;
70
+ }, {});
71
+ const schemaConfig = {
30
72
  id: collectionId,
31
73
  displayField: schema.displayField ?? '_id',
32
74
  idField: '_id',
33
75
  imageField: (_schema$fields$find = schema.fields.find(field => field.type === 'IMAGE')) == null ? void 0 : _schema$fields$find.key,
34
- fields: schema.fields.reduce((acc, field) => {
35
- var _field$capabilities, _field$capabilities2, _field$typeMetadata;
36
- if (!field.key) {
37
- return acc;
38
- }
39
- const fieldType = field.type ? CmsFieldTypeToPatternsFieldType[field.type] || 'SHORT_TEXT' : 'SHORT_TEXT';
40
- const baseField = {
41
- id: field.key,
42
- displayName: field.displayName || '',
43
- validation: {
44
- numberRange: field.numberRange ? {
45
- min: field.numberRange.min ?? undefined,
46
- max: field.numberRange.max ?? undefined
47
- } : undefined,
48
- stringLengthRange: field.stringLengthRange ? {
49
- minLength: field.stringLengthRange.minLength ?? undefined,
50
- maxLength: field.stringLengthRange.maxLength ?? undefined
51
- } : undefined,
52
- required: field.required ?? false
53
- },
54
- capabilities: {
55
- supportedQueryOperators: ((_field$capabilities = field.capabilities) == null ? void 0 : _field$capabilities.queryOperators) || [],
56
- sortable: ((_field$capabilities2 = field.capabilities) == null ? void 0 : _field$capabilities2.sortable) || false
57
- }
58
- };
59
- if (fieldType === 'REFERENCE' && (_field$typeMetadata = field.typeMetadata) != null && (_field$typeMetadata = _field$typeMetadata.reference) != null && _field$typeMetadata.referencedCollectionId) {
60
- const referenceField = {
61
- ...baseField,
62
- type: 'REFERENCE',
63
- referenceMetadata: {
64
- referencedCollectionId: field.typeMetadata.reference.referencedCollectionId
65
- }
66
- };
67
- acc[field.key] = referenceField;
68
- } else {
69
- const nonReferenceType = fieldType === 'REFERENCE' ? 'SHORT_TEXT' : fieldType;
70
- const nonReferenceField = {
71
- ...baseField,
72
- type: nonReferenceType
73
- };
74
- acc[field.key] = nonReferenceField;
75
- }
76
- return acc;
77
- }, {}),
76
+ fields: transformedFields,
78
77
  actions: {
79
78
  get: entityId => {
80
79
  return _data.items.get(collectionId, entityId);
@@ -90,48 +89,12 @@ async function fetchCmsSchema(collectionId) {
90
89
  },
91
90
  bulkDelete: entityIds => {
92
91
  return _data.items.bulkRemove(collectionId, entityIds);
92
+ },
93
+ find: async (query, options = {}) => {
94
+ return (0, _fetchCmsData.fetchCmsData)(collectionId, query, transformedFields, options);
93
95
  }
94
96
  }
95
97
  };
96
- }
97
- function createCmsDataProvider({
98
- collectionId,
99
- schema,
100
- visibleFieldIds,
101
- filtersMapping
102
- }) {
103
- return {
104
- fetchData: async query => {
105
- let dataQuery = _data.items.query(collectionId);
106
- dataQuery = (0, _filterUtils.addSearchToDataQuery)({
107
- dataQuery,
108
- query,
109
- schema,
110
- visibleFieldIds
111
- });
112
- dataQuery = (0, _filterUtils.addFiltersToDataQuery)({
113
- dataQuery,
114
- query,
115
- schema,
116
- filtersMapping
117
- });
118
- dataQuery = (0, _sortUtils.addSortToDataQuery)({
119
- dataQuery,
120
- query,
121
- schema
122
- });
123
- const referenceFieldIds = Object.values(schema.fields).filter(field => !!field && field.type === 'REFERENCE' && visibleFieldIds.includes(field.id)).map(field => field.id);
124
- if (referenceFieldIds.length > 0) {
125
- dataQuery = dataQuery.include(...referenceFieldIds);
126
- }
127
- const res = await dataQuery.skip(query.offset).limit(query.limit).find({
128
- returnTotalCount: true
129
- });
130
- return {
131
- items: res.items,
132
- total: res.totalCount ?? 0
133
- };
134
- }
135
- };
98
+ return schemaConfig;
136
99
  }
137
100
  //# sourceMappingURL=cmsAdapter.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_data","require","_filterUtils","_sortUtils","CmsFieldTypeToPatternsFieldType","exports","collections","Type","TEXT","DATE","DATETIME","NUMBER","BOOLEAN","URL","ADDRESS","OBJECT","RICH_TEXT","RICH_CONTENT","ARRAY","ARRAY_STRING","REFERENCE","IMAGE","fetchCmsSchema","collectionId","_schema$fields$find","schema","getDataCollection","id","displayField","idField","imageField","fields","find","field","type","key","reduce","acc","_field$capabilities","_field$capabilities2","_field$typeMetadata","fieldType","baseField","displayName","validation","numberRange","min","undefined","max","stringLengthRange","minLength","maxLength","required","capabilities","supportedQueryOperators","queryOperators","sortable","typeMetadata","reference","referencedCollectionId","referenceField","referenceMetadata","nonReferenceType","nonReferenceField","actions","get","entityId","items","create","entity","insert","update","delete","remove","bulkDelete","entityIds","bulkRemove","createCmsDataProvider","visibleFieldIds","filtersMapping","fetchData","query","dataQuery","addSearchToDataQuery","addFiltersToDataQuery","addSortToDataQuery","referenceFieldIds","Object","values","filter","includes","map","length","include","res","skip","offset","limit","returnTotalCount","total","totalCount"],"sources":["../../../../src/dataSourceAdapters/cms/cmsAdapter.ts"],"sourcesContent":["import { Field, SchemaConfig, PatternsFieldType, Filter } from '../../types';\nimport { collections, items } from '@wix/data';\nimport { ComputedQuery, CollectionConfig } from '@wix/patterns';\nimport { addFiltersToDataQuery, addSearchToDataQuery } from './filterUtils';\nimport { addSortToDataQuery } from './sortUtils';\n\nexport const CmsFieldTypeToPatternsFieldType: Partial<\n Record<collections.Type, PatternsFieldType>\n> = {\n [collections.Type.TEXT]: 'SHORT_TEXT',\n [collections.Type.DATE]: 'DATE',\n [collections.Type.DATETIME]: 'DATETIME',\n [collections.Type.NUMBER]: 'NUMBER',\n [collections.Type.BOOLEAN]: 'BOOLEAN',\n [collections.Type.URL]: 'URL',\n [collections.Type.ADDRESS]: 'SHORT_TEXT',\n [collections.Type.OBJECT]: 'LONG_TEXT',\n [collections.Type.RICH_TEXT]: 'LONG_TEXT',\n [collections.Type.RICH_CONTENT]: 'SHORT_TEXT',\n [collections.Type.ARRAY]: 'ARRAY',\n [collections.Type.ARRAY_STRING]: 'ARRAY',\n [collections.Type.REFERENCE]: 'REFERENCE',\n [collections.Type.IMAGE]: 'IMAGE',\n};\n\nexport async function fetchCmsSchema(\n collectionId: string,\n): Promise<SchemaConfig> {\n const schema = await collections.getDataCollection(collectionId);\n\n return {\n id: collectionId,\n displayField: schema.displayField ?? '_id',\n idField: '_id',\n imageField: schema.fields.find((field) => field.type === 'IMAGE')?.key,\n fields: schema.fields.reduce<Record<string, Field>>((acc, field) => {\n if (!field.key) {\n return acc;\n }\n\n const fieldType = field.type\n ? CmsFieldTypeToPatternsFieldType[field.type] || 'SHORT_TEXT'\n : 'SHORT_TEXT';\n const baseField = {\n id: field.key,\n displayName: field.displayName || '',\n validation: {\n numberRange: field.numberRange\n ? {\n min: field.numberRange.min ?? undefined,\n max: field.numberRange.max ?? undefined,\n }\n : undefined,\n stringLengthRange: field.stringLengthRange\n ? {\n minLength: field.stringLengthRange.minLength ?? undefined,\n maxLength: field.stringLengthRange.maxLength ?? undefined,\n }\n : undefined,\n required: field.required ?? false,\n },\n capabilities: {\n supportedQueryOperators: field.capabilities?.queryOperators || [],\n sortable: field.capabilities?.sortable || false,\n },\n };\n\n if (\n fieldType === 'REFERENCE' &&\n field.typeMetadata?.reference?.referencedCollectionId\n ) {\n const referenceField: Field = {\n ...baseField,\n type: 'REFERENCE',\n referenceMetadata: {\n referencedCollectionId:\n field.typeMetadata.reference.referencedCollectionId,\n },\n };\n acc[field.key] = referenceField;\n } else {\n const nonReferenceType =\n fieldType === 'REFERENCE' ? 'SHORT_TEXT' : fieldType;\n const nonReferenceField: Field = {\n ...baseField,\n type: nonReferenceType,\n };\n acc[field.key] = nonReferenceField;\n }\n\n return acc;\n }, {}),\n actions: {\n get: (entityId: string) => {\n return items.get(collectionId, entityId);\n },\n create: (entity) => {\n return items.insert(collectionId, entity);\n },\n update: (entity) => {\n return items.update(collectionId, entity);\n },\n delete: (entityId) => {\n return items.remove(collectionId, entityId);\n },\n bulkDelete: (entityIds) => {\n return items.bulkRemove(collectionId, entityIds);\n },\n },\n };\n}\n\nexport function createCmsDataProvider({\n collectionId,\n schema,\n visibleFieldIds,\n filtersMapping,\n}: {\n collectionId: string;\n schema: SchemaConfig;\n visibleFieldIds: string[];\n filtersMapping?: Record<string, Filter>;\n}): { fetchData: CollectionConfig<any, any>['fetchData'] } {\n return {\n fetchData: async (query: ComputedQuery<any>) => {\n let dataQuery = items.query(collectionId);\n dataQuery = addSearchToDataQuery({\n dataQuery,\n query,\n schema,\n visibleFieldIds,\n });\n dataQuery = addFiltersToDataQuery({\n dataQuery,\n query,\n schema,\n filtersMapping,\n });\n dataQuery = addSortToDataQuery({\n dataQuery,\n query,\n schema,\n });\n\n const referenceFieldIds = Object.values(schema.fields)\n .filter(\n (field): field is Field =>\n !!field &&\n field.type === 'REFERENCE' &&\n visibleFieldIds.includes(field.id),\n )\n .map((field) => field.id);\n\n if (referenceFieldIds.length > 0) {\n dataQuery = dataQuery.include(...referenceFieldIds);\n }\n\n const res = await dataQuery\n .skip(query.offset)\n .limit(query.limit)\n .find({ returnTotalCount: true });\n\n return {\n items: res.items,\n total: res.totalCount ?? 0,\n };\n },\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_data","require","_fetchCmsData","CmsFieldTypeToPatternsFieldType","exports","collections","Type","TEXT","DATE","DATETIME","NUMBER","BOOLEAN","URL","ADDRESS","OBJECT","RICH_TEXT","RICH_CONTENT","ARRAY","ARRAY_STRING","REFERENCE","IMAGE","fetchCmsSchema","collectionId","_schema$fields$find","schema","getDataCollection","transformedFields","fields","reduce","acc","field","_field$capabilities","_field$capabilities2","_field$typeMetadata","key","fieldType","type","baseField","id","displayName","validation","numberRange","min","undefined","max","stringLengthRange","minLength","maxLength","required","capabilities","supportedQueryOperators","queryOperators","sortable","typeMetadata","reference","referencedCollectionId","referenceField","referenceMetadata","nonReferenceType","nonReferenceField","schemaConfig","displayField","idField","imageField","find","actions","get","entityId","items","create","entity","insert","update","delete","remove","bulkDelete","entityIds","bulkRemove","query","options","fetchCmsData"],"sources":["../../../../src/dataSourceAdapters/cms/cmsAdapter.ts"],"sourcesContent":["import { Field, SchemaConfig, PatternsFieldType } from '../../types';\nimport { ComputedQuery } from '@wix/patterns';\nimport { collections, items } from '@wix/data';\nimport { fetchCmsData } from './fetchCmsData';\n\nexport const CmsFieldTypeToPatternsFieldType: Partial<\n Record<collections.Type, PatternsFieldType>\n> = {\n [collections.Type.TEXT]: 'SHORT_TEXT',\n [collections.Type.DATE]: 'DATE',\n [collections.Type.DATETIME]: 'DATETIME',\n [collections.Type.NUMBER]: 'NUMBER',\n [collections.Type.BOOLEAN]: 'BOOLEAN',\n [collections.Type.URL]: 'URL',\n [collections.Type.ADDRESS]: 'SHORT_TEXT',\n [collections.Type.OBJECT]: 'LONG_TEXT',\n [collections.Type.RICH_TEXT]: 'LONG_TEXT',\n [collections.Type.RICH_CONTENT]: 'SHORT_TEXT',\n [collections.Type.ARRAY]: 'ARRAY',\n [collections.Type.ARRAY_STRING]: 'ARRAY',\n [collections.Type.REFERENCE]: 'REFERENCE',\n [collections.Type.IMAGE]: 'IMAGE',\n};\n\nexport async function fetchCmsSchema(\n collectionId: string,\n): Promise<SchemaConfig> {\n const schema = await collections.getDataCollection(collectionId);\n\n const transformedFields = schema.fields.reduce<Record<string, Field>>(\n (acc, field) => {\n if (!field.key) {\n return acc;\n }\n\n const fieldType = field.type\n ? CmsFieldTypeToPatternsFieldType[field.type] || 'SHORT_TEXT'\n : 'SHORT_TEXT';\n const baseField = {\n id: field.key,\n displayName: field.displayName || '',\n validation: {\n numberRange: field.numberRange\n ? {\n min: field.numberRange.min ?? undefined,\n max: field.numberRange.max ?? undefined,\n }\n : undefined,\n stringLengthRange: field.stringLengthRange\n ? {\n minLength: field.stringLengthRange.minLength ?? undefined,\n maxLength: field.stringLengthRange.maxLength ?? undefined,\n }\n : undefined,\n required: field.required ?? false,\n },\n capabilities: {\n supportedQueryOperators: field.capabilities?.queryOperators || [],\n sortable: field.capabilities?.sortable || false,\n },\n };\n\n if (\n fieldType === 'REFERENCE' &&\n field.typeMetadata?.reference?.referencedCollectionId\n ) {\n const referenceField: Field = {\n ...baseField,\n type: 'REFERENCE',\n referenceMetadata: {\n referencedCollectionId:\n field.typeMetadata.reference.referencedCollectionId,\n },\n };\n acc[field.key] = referenceField;\n } else {\n const nonReferenceType =\n fieldType === 'REFERENCE' ? 'SHORT_TEXT' : fieldType;\n const nonReferenceField: Field = {\n ...baseField,\n type: nonReferenceType,\n };\n acc[field.key] = nonReferenceField;\n }\n\n return acc;\n },\n {},\n );\n\n const schemaConfig: SchemaConfig = {\n id: collectionId,\n displayField: schema.displayField ?? '_id',\n idField: '_id',\n imageField: schema.fields.find((field) => field.type === 'IMAGE')?.key,\n fields: transformedFields,\n actions: {\n get: (entityId: string) => {\n return items.get(collectionId, entityId);\n },\n create: (entity) => {\n return items.insert(collectionId, entity);\n },\n update: (entity) => {\n return items.update(collectionId, entity);\n },\n delete: (entityId) => {\n return items.remove(collectionId, entityId);\n },\n bulkDelete: (entityIds) => {\n return items.bulkRemove(collectionId, entityIds);\n },\n find: async (\n query: ComputedQuery<any>,\n options: {\n searchableFieldIds?: string[];\n filterFieldMapping?: Record<string, { fieldId: string }>;\n } = {},\n ) => {\n return fetchCmsData(collectionId, query, transformedFields, options);\n },\n },\n };\n\n return schemaConfig;\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.fetchCmsData = fetchCmsData;
5
+ var _data = require("@wix/data");
6
+ var _filterUtils = require("./filterUtils");
7
+ var _sortUtils = require("./sortUtils");
8
+ async function fetchCmsData(collectionId, query, fields, options = {}) {
9
+ const {
10
+ searchableFieldIds = [],
11
+ filterFieldMapping
12
+ } = options;
13
+ let dataQuery = _data.items.query(collectionId);
14
+ dataQuery = (0, _filterUtils.addSearchToDataQuery)({
15
+ dataQuery,
16
+ query,
17
+ fields,
18
+ searchableFieldIds
19
+ });
20
+ dataQuery = (0, _filterUtils.addFiltersToDataQuery)({
21
+ dataQuery,
22
+ query,
23
+ fields,
24
+ filterFieldMapping
25
+ });
26
+ dataQuery = (0, _sortUtils.addSortToDataQuery)({
27
+ dataQuery,
28
+ query,
29
+ fields
30
+ });
31
+ const referenceFieldIds = Object.values(fields).filter(field => !!field && field.type === 'REFERENCE' && searchableFieldIds.includes(field.id)).map(field => field.id);
32
+ if (referenceFieldIds.length > 0) {
33
+ dataQuery = dataQuery.include(...referenceFieldIds);
34
+ }
35
+ const res = await dataQuery.skip(query.offset).limit(query.limit).find({
36
+ returnTotalCount: true
37
+ });
38
+ return {
39
+ items: res.items,
40
+ total: res.totalCount ?? 0
41
+ };
42
+ }
43
+ //# sourceMappingURL=fetchCmsData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_data","require","_filterUtils","_sortUtils","fetchCmsData","collectionId","query","fields","options","searchableFieldIds","filterFieldMapping","dataQuery","items","addSearchToDataQuery","addFiltersToDataQuery","addSortToDataQuery","referenceFieldIds","Object","values","filter","field","type","includes","id","map","length","include","res","skip","offset","limit","find","returnTotalCount","total","totalCount"],"sources":["../../../../src/dataSourceAdapters/cms/fetchCmsData.ts"],"sourcesContent":["import { ComputedQuery } from '@wix/patterns';\nimport { items } from '@wix/data';\nimport { Field } from '../../types';\nimport { addFiltersToDataQuery, addSearchToDataQuery } from './filterUtils';\nimport { addSortToDataQuery } from './sortUtils';\n\nexport async function fetchCmsData(\n collectionId: string,\n query: ComputedQuery<any>,\n fields: Record<string, Field | undefined>,\n options: {\n searchableFieldIds?: string[];\n filterFieldMapping?: Record<string, { fieldId: string }>;\n } = {},\n) {\n const { searchableFieldIds = [], filterFieldMapping } = options;\n\n let dataQuery = items.query(collectionId);\n dataQuery = addSearchToDataQuery({\n dataQuery,\n query,\n fields,\n searchableFieldIds,\n });\n dataQuery = addFiltersToDataQuery({\n dataQuery,\n query,\n fields,\n filterFieldMapping,\n });\n dataQuery = addSortToDataQuery({\n dataQuery,\n query,\n fields,\n });\n\n const referenceFieldIds = Object.values(fields)\n .filter(\n (field): field is Field =>\n !!field &&\n field.type === 'REFERENCE' &&\n searchableFieldIds.includes(field.id),\n )\n .map((field) => field.id);\n\n if (referenceFieldIds.length > 0) {\n dataQuery = dataQuery.include(...referenceFieldIds);\n }\n\n const res = await dataQuery\n .skip(query.offset)\n .limit(query.limit)\n .find({ returnTotalCount: true });\n\n return {\n items: res.items,\n total: res.totalCount ?? 0,\n };\n}\n"],"mappings":";;;;AACA,IAAAA,KAAA,GAAAC,OAAA;AAEA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AAEO,eAAeG,YAAYA,CAChCC,YAAoB,EACpBC,KAAyB,EACzBC,MAAyC,EACzCC,OAGC,GAAG,CAAC,CAAC,EACN;EACA,MAAM;IAAEC,kBAAkB,GAAG,EAAE;IAAEC;EAAmB,CAAC,GAAGF,OAAO;EAE/D,IAAIG,SAAS,GAAGC,WAAK,CAACN,KAAK,CAACD,YAAY,CAAC;EACzCM,SAAS,GAAG,IAAAE,iCAAoB,EAAC;IAC/BF,SAAS;IACTL,KAAK;IACLC,MAAM;IACNE;EACF,CAAC,CAAC;EACFE,SAAS,GAAG,IAAAG,kCAAqB,EAAC;IAChCH,SAAS;IACTL,KAAK;IACLC,MAAM;IACNG;EACF,CAAC,CAAC;EACFC,SAAS,GAAG,IAAAI,6BAAkB,EAAC;IAC7BJ,SAAS;IACTL,KAAK;IACLC;EACF,CAAC,CAAC;EAEF,MAAMS,iBAAiB,GAAGC,MAAM,CAACC,MAAM,CAACX,MAAM,CAAC,CAC5CY,MAAM,CACJC,KAAK,IACJ,CAAC,CAACA,KAAK,IACPA,KAAK,CAACC,IAAI,KAAK,WAAW,IAC1BZ,kBAAkB,CAACa,QAAQ,CAACF,KAAK,CAACG,EAAE,CACxC,CAAC,CACAC,GAAG,CAAEJ,KAAK,IAAKA,KAAK,CAACG,EAAE,CAAC;EAE3B,IAAIP,iBAAiB,CAACS,MAAM,GAAG,CAAC,EAAE;IAChCd,SAAS,GAAGA,SAAS,CAACe,OAAO,CAAC,GAAGV,iBAAiB,CAAC;EACrD;EAEA,MAAMW,GAAG,GAAG,MAAMhB,SAAS,CACxBiB,IAAI,CAACtB,KAAK,CAACuB,MAAM,CAAC,CAClBC,KAAK,CAACxB,KAAK,CAACwB,KAAK,CAAC,CAClBC,IAAI,CAAC;IAAEC,gBAAgB,EAAE;EAAK,CAAC,CAAC;EAEnC,OAAO;IACLpB,KAAK,EAAEe,GAAG,CAACf,KAAK;IAChBqB,KAAK,EAAEN,GAAG,CAACO,UAAU,IAAI;EAC3B,CAAC;AACH","ignoreList":[]}
@@ -18,8 +18,8 @@ function getOperatorForFilter(prop) {
18
18
  }
19
19
  return undefined;
20
20
  }
21
- const isSupportedOperator = (schema, filterProp, filterKey) => {
22
- const field = schema.fields[filterKey];
21
+ const isSupportedOperator = (fields, filterProp, filterKey) => {
22
+ const field = fields[filterKey];
23
23
  if (!field) {
24
24
  return false;
25
25
  }
@@ -33,10 +33,10 @@ const isSupportedOperator = (schema, filterProp, filterKey) => {
33
33
  function addFiltersToDataQuery({
34
34
  dataQuery,
35
35
  query,
36
- schema,
37
- filtersMapping
36
+ fields,
37
+ filterFieldMapping
38
38
  }) {
39
- if (!filtersMapping) {
39
+ if (!filterFieldMapping) {
40
40
  return dataQuery;
41
41
  }
42
42
  let dataQueryWithFilters = dataQuery;
@@ -44,13 +44,13 @@ function addFiltersToDataQuery({
44
44
  filters
45
45
  } = query;
46
46
  for (const fieldKey in filters) {
47
- const fieldId = filtersMapping[fieldKey].fieldId;
47
+ const fieldId = filterFieldMapping[fieldKey].fieldId;
48
48
  const filter = filters[fieldKey];
49
49
  if (filter) {
50
50
  if (Array.isArray(filter)) {
51
- var _schema$fields$fieldI;
51
+ var _fields$fieldId;
52
52
  const filterArray = filter;
53
- if (((_schema$fields$fieldI = schema.fields[fieldId]) == null ? void 0 : _schema$fields$fieldI.type) === 'BOOLEAN') {
53
+ if (((_fields$fieldId = fields[fieldId]) == null ? void 0 : _fields$fieldId.type) === 'BOOLEAN') {
54
54
  if (filterArray.some(item => item.id === _constants.BooleanFilters.checked)) {
55
55
  dataQueryWithFilters = dataQueryWithFilters.eq(fieldId, true);
56
56
  } else {
@@ -65,7 +65,7 @@ function addFiltersToDataQuery({
65
65
  const filterObj = filter;
66
66
  for (const filterProp in filterObj) {
67
67
  const operator = getOperatorForFilter(filterProp);
68
- if (operator && typeof dataQuery[operator] === 'function' && isSupportedOperator(schema, filterProp, fieldId)) {
68
+ if (operator && typeof dataQuery[operator] === 'function' && isSupportedOperator(fields, filterProp, fieldId)) {
69
69
  const value = filterObj[filterProp];
70
70
  if (value !== undefined && value !== null) {
71
71
  dataQueryWithFilters = dataQueryWithFilters[operator](fieldId, value);
@@ -81,13 +81,13 @@ const TEXT_FIELD_TYPES = ['LONG_TEXT', 'SHORT_TEXT'];
81
81
  function addSearchToDataQuery({
82
82
  dataQuery,
83
83
  query,
84
- schema,
85
- visibleFieldIds
84
+ fields,
85
+ searchableFieldIds
86
86
  }) {
87
- const searchableFields = Object.keys(schema.fields).filter(fieldId => {
88
- const field = schema.fields[fieldId];
89
- const column = visibleFieldIds.find(id => id === fieldId);
90
- return column && field && TEXT_FIELD_TYPES.includes(field.type);
87
+ const searchableFields = Object.keys(fields).filter(fieldId => {
88
+ const field = fields[fieldId];
89
+ const isFieldSearchable = searchableFieldIds.includes(fieldId);
90
+ return isFieldSearchable && field && TEXT_FIELD_TYPES.includes(field.type);
91
91
  });
92
92
  if (query.search && searchableFields.length > 0) {
93
93
  let searchFilter = null;
@@ -1 +1 @@
1
- {"version":3,"names":["_data","require","_constants","FilterPropToMethod","from","to","isValidFilterProp","prop","getOperatorForFilter","undefined","isSupportedOperator","schema","filterProp","filterKey","field","fields","operator","FilterPropToOperator","supportedOperators","capabilities","supportedQueryOperators","includes","addFiltersToDataQuery","dataQuery","query","filtersMapping","dataQueryWithFilters","filters","fieldKey","fieldId","filter","Array","isArray","_schema$fields$fieldI","filterArray","type","some","item","id","BooleanFilters","checked","eq","falseFilter","items","undefinedFilter","and","or","hasSome","map","filterObj","value","TEXT_FIELD_TYPES","addSearchToDataQuery","visibleFieldIds","searchableFields","Object","keys","column","find","search","length","searchFilter","forEach","currentFilter","contains"],"sources":["../../../../src/dataSourceAdapters/cms/filterUtils.ts"],"sourcesContent":["import { ComputedQuery } from '@wix/patterns';\nimport { items } from '@wix/data';\nimport { BooleanFilters, FilterProp, FilterPropToOperator } from '../constants';\nimport { SchemaConfig, Filter } from '../../types';\n\nexport type CmsOperatorMethod = 'ge' | 'le';\n\nconst FilterPropToMethod: Record<FilterProp, CmsOperatorMethod> = {\n from: 'ge',\n to: 'le',\n};\n\nfunction isValidFilterProp(prop: string): prop is FilterProp {\n return prop in FilterPropToMethod;\n}\n\nfunction getOperatorForFilter(prop: string): CmsOperatorMethod | undefined {\n if (isValidFilterProp(prop)) {\n return FilterPropToMethod[prop];\n }\n return undefined;\n}\n\nconst isSupportedOperator = (\n schema: SchemaConfig,\n filterProp: string,\n filterKey: string,\n) => {\n const field = schema.fields[filterKey];\n if (!field) {\n return false;\n }\n\n if (!isValidFilterProp(filterProp)) {\n return false;\n }\n\n const operator = FilterPropToOperator[filterProp];\n const supportedOperators = field.capabilities.supportedQueryOperators;\n return supportedOperators.includes(operator);\n};\n\nexport function addFiltersToDataQuery({\n dataQuery,\n query,\n schema,\n filtersMapping,\n}: {\n dataQuery: items.WixDataQuery;\n query: ComputedQuery<any>;\n schema: SchemaConfig;\n filtersMapping?: Record<string, Filter>;\n}) {\n if (!filtersMapping) {\n return dataQuery;\n }\n\n let dataQueryWithFilters = dataQuery;\n const { filters } = query;\n for (const fieldKey in filters) {\n const fieldId = filtersMapping[fieldKey].fieldId;\n const filter = filters[fieldKey];\n if (filter) {\n if (Array.isArray(filter)) {\n const filterArray = filter as { [key: string]: any }[];\n if (schema.fields[fieldId]?.type === 'BOOLEAN') {\n if (filterArray.some((item) => item.id === BooleanFilters.checked)) {\n dataQueryWithFilters = dataQueryWithFilters.eq(fieldId, true);\n } else {\n const falseFilter = items.filter().eq(fieldId, false);\n const undefinedFilter = items.filter().eq(fieldId, undefined);\n dataQueryWithFilters = dataQueryWithFilters.and(\n falseFilter.or(undefinedFilter),\n );\n }\n } else {\n dataQueryWithFilters = dataQueryWithFilters.hasSome(\n fieldId,\n filterArray.map((item) => item.id),\n );\n }\n } else if (typeof filter === 'object') {\n const filterObj = filter as Record<string, any>;\n\n for (const filterProp in filterObj) {\n const operator = getOperatorForFilter(filterProp);\n if (\n operator &&\n typeof dataQuery[operator] === 'function' &&\n isSupportedOperator(schema, filterProp, fieldId)\n ) {\n const value = filterObj[filterProp];\n if (value !== undefined && value !== null) {\n dataQueryWithFilters = dataQueryWithFilters[operator](\n fieldId,\n value,\n );\n }\n }\n }\n }\n }\n }\n\n return dataQueryWithFilters;\n}\n\nconst TEXT_FIELD_TYPES = ['LONG_TEXT', 'SHORT_TEXT'];\nexport function addSearchToDataQuery({\n dataQuery,\n query,\n schema,\n visibleFieldIds,\n}: {\n dataQuery: items.WixDataQuery;\n query: ComputedQuery<any>;\n schema: SchemaConfig;\n visibleFieldIds: string[];\n}) {\n const searchableFields = Object.keys(schema.fields).filter((fieldId) => {\n const field = schema.fields[fieldId];\n const column = visibleFieldIds.find((id) => id === fieldId);\n\n return column && field && TEXT_FIELD_TYPES.includes(field.type);\n });\n\n if (query.search && searchableFields.length > 0) {\n let searchFilter: items.WixDataFilter | null = null;\n\n searchableFields.forEach((field) => {\n const currentFilter = items.filter().contains(field, query.search!);\n searchFilter = searchFilter\n ? searchFilter.or(currentFilter)\n : currentFilter;\n });\n\n if (searchFilter) {\n dataQuery = dataQuery.and(searchFilter);\n }\n }\n\n return dataQuery;\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_data","require","_constants","FilterPropToMethod","from","to","isValidFilterProp","prop","getOperatorForFilter","undefined","isSupportedOperator","fields","filterProp","filterKey","field","operator","FilterPropToOperator","supportedOperators","capabilities","supportedQueryOperators","includes","addFiltersToDataQuery","dataQuery","query","filterFieldMapping","dataQueryWithFilters","filters","fieldKey","fieldId","filter","Array","isArray","_fields$fieldId","filterArray","type","some","item","id","BooleanFilters","checked","eq","falseFilter","items","undefinedFilter","and","or","hasSome","map","filterObj","value","TEXT_FIELD_TYPES","addSearchToDataQuery","searchableFieldIds","searchableFields","Object","keys","isFieldSearchable","search","length","searchFilter","forEach","currentFilter","contains"],"sources":["../../../../src/dataSourceAdapters/cms/filterUtils.ts"],"sourcesContent":["import { ComputedQuery } from '@wix/patterns';\nimport { items } from '@wix/data';\nimport { BooleanFilters, FilterProp, FilterPropToOperator } from '../constants';\nimport { SchemaConfig } from '../../types';\n\nexport type CmsOperatorMethod = 'ge' | 'le';\n\nconst FilterPropToMethod: Record<FilterProp, CmsOperatorMethod> = {\n from: 'ge',\n to: 'le',\n};\n\nfunction isValidFilterProp(prop: string): prop is FilterProp {\n return prop in FilterPropToMethod;\n}\n\nfunction getOperatorForFilter(prop: string): CmsOperatorMethod | undefined {\n if (isValidFilterProp(prop)) {\n return FilterPropToMethod[prop];\n }\n return undefined;\n}\n\nconst isSupportedOperator = (\n fields: SchemaConfig['fields'],\n filterProp: string,\n filterKey: string,\n) => {\n const field = fields[filterKey];\n if (!field) {\n return false;\n }\n\n if (!isValidFilterProp(filterProp)) {\n return false;\n }\n\n const operator = FilterPropToOperator[filterProp];\n const supportedOperators = field.capabilities.supportedQueryOperators;\n return supportedOperators.includes(operator);\n};\n\nexport function addFiltersToDataQuery({\n dataQuery,\n query,\n fields,\n filterFieldMapping,\n}: {\n dataQuery: items.WixDataQuery;\n query: ComputedQuery<any>;\n fields: SchemaConfig['fields'];\n filterFieldMapping?: Record<string, { fieldId: string }>;\n}) {\n if (!filterFieldMapping) {\n return dataQuery;\n }\n\n let dataQueryWithFilters = dataQuery;\n const { filters } = query;\n for (const fieldKey in filters) {\n const fieldId = filterFieldMapping[fieldKey].fieldId;\n const filter = filters[fieldKey];\n if (filter) {\n if (Array.isArray(filter)) {\n const filterArray = filter as { [key: string]: any }[];\n if (fields[fieldId]?.type === 'BOOLEAN') {\n if (filterArray.some((item) => item.id === BooleanFilters.checked)) {\n dataQueryWithFilters = dataQueryWithFilters.eq(fieldId, true);\n } else {\n const falseFilter = items.filter().eq(fieldId, false);\n const undefinedFilter = items.filter().eq(fieldId, undefined);\n dataQueryWithFilters = dataQueryWithFilters.and(\n falseFilter.or(undefinedFilter),\n );\n }\n } else {\n dataQueryWithFilters = dataQueryWithFilters.hasSome(\n fieldId,\n filterArray.map((item) => item.id),\n );\n }\n } else if (typeof filter === 'object') {\n const filterObj = filter as Record<string, any>;\n\n for (const filterProp in filterObj) {\n const operator = getOperatorForFilter(filterProp);\n if (\n operator &&\n typeof dataQuery[operator] === 'function' &&\n isSupportedOperator(fields, filterProp, fieldId)\n ) {\n const value = filterObj[filterProp];\n if (value !== undefined && value !== null) {\n dataQueryWithFilters = dataQueryWithFilters[operator](\n fieldId,\n value,\n );\n }\n }\n }\n }\n }\n }\n\n return dataQueryWithFilters;\n}\n\nconst TEXT_FIELD_TYPES = ['LONG_TEXT', 'SHORT_TEXT'];\nexport function addSearchToDataQuery({\n dataQuery,\n query,\n fields,\n searchableFieldIds,\n}: {\n dataQuery: items.WixDataQuery;\n query: ComputedQuery<any>;\n fields: SchemaConfig['fields'];\n searchableFieldIds: string[];\n}) {\n const searchableFields = Object.keys(fields).filter((fieldId) => {\n const field = fields[fieldId];\n const isFieldSearchable = searchableFieldIds.includes(fieldId);\n\n return isFieldSearchable && field && TEXT_FIELD_TYPES.includes(field.type);\n });\n\n if (query.search && searchableFields.length > 0) {\n let searchFilter: items.WixDataFilter | null = null;\n\n searchableFields.forEach((field) => {\n const currentFilter = items.filter().contains(field, query.search!);\n searchFilter = searchFilter\n ? searchFilter.or(currentFilter)\n : currentFilter;\n });\n\n if (searchFilter) {\n dataQuery = dataQuery.and(searchFilter);\n }\n }\n\n return dataQuery;\n}\n"],"mappings":"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","ignoreList":[]}
@@ -5,7 +5,7 @@ exports.addSortToDataQuery = addSortToDataQuery;
5
5
  function addSortToDataQuery({
6
6
  dataQuery,
7
7
  query,
8
- schema
8
+ fields
9
9
  }) {
10
10
  let dataQueryWithSort = dataQuery;
11
11
  const {
@@ -17,7 +17,7 @@ function addSortToDataQuery({
17
17
  order
18
18
  } = sortField;
19
19
  if (fieldName && order) {
20
- const fieldDefinition = schema.fields[fieldName];
20
+ const fieldDefinition = fields[fieldName];
21
21
  if (fieldDefinition != null && fieldDefinition.capabilities.sortable) {
22
22
  if (order === 'asc') {
23
23
  dataQueryWithSort = dataQueryWithSort.ascending(fieldName);
@@ -1 +1 @@
1
- {"version":3,"names":["addSortToDataQuery","dataQuery","query","schema","dataQueryWithSort","sort","forEach","sortField","fieldName","order","fieldDefinition","fields","capabilities","sortable","ascending","descending"],"sources":["../../../../src/dataSourceAdapters/cms/sortUtils.ts"],"sourcesContent":["import { items } from '@wix/data';\nimport { SchemaConfig } from '../../types';\nimport { ComputedQuery } from '@wix/patterns';\n\nexport function addSortToDataQuery({\n dataQuery,\n query,\n schema,\n}: {\n dataQuery: items.WixDataQuery;\n query: ComputedQuery<any>;\n schema: SchemaConfig;\n}) {\n let dataQueryWithSort = dataQuery;\n const { sort } = query;\n sort?.forEach((sortField) => {\n const { fieldName, order } = sortField;\n if (fieldName && order) {\n const fieldDefinition = schema.fields[fieldName];\n if (fieldDefinition?.capabilities.sortable) {\n if (order === 'asc') {\n dataQueryWithSort = dataQueryWithSort.ascending(fieldName);\n } else if (order === 'desc') {\n dataQueryWithSort = dataQueryWithSort.descending(fieldName);\n }\n }\n }\n });\n\n return dataQueryWithSort;\n}\n"],"mappings":";;;;AAIO,SAASA,kBAAkBA,CAAC;EACjCC,SAAS;EACTC,KAAK;EACLC;AAKF,CAAC,EAAE;EACD,IAAIC,iBAAiB,GAAGH,SAAS;EACjC,MAAM;IAAEI;EAAK,CAAC,GAAGH,KAAK;EACtBG,IAAI,YAAJA,IAAI,CAAEC,OAAO,CAAEC,SAAS,IAAK;IAC3B,MAAM;MAAEC,SAAS;MAAEC;IAAM,CAAC,GAAGF,SAAS;IACtC,IAAIC,SAAS,IAAIC,KAAK,EAAE;MACtB,MAAMC,eAAe,GAAGP,MAAM,CAACQ,MAAM,CAACH,SAAS,CAAC;MAChD,IAAIE,eAAe,YAAfA,eAAe,CAAEE,YAAY,CAACC,QAAQ,EAAE;QAC1C,IAAIJ,KAAK,KAAK,KAAK,EAAE;UACnBL,iBAAiB,GAAGA,iBAAiB,CAACU,SAAS,CAACN,SAAS,CAAC;QAC5D,CAAC,MAAM,IAAIC,KAAK,KAAK,MAAM,EAAE;UAC3BL,iBAAiB,GAAGA,iBAAiB,CAACW,UAAU,CAACP,SAAS,CAAC;QAC7D;MACF;IACF;EACF,CAAC,CAAC;EAEF,OAAOJ,iBAAiB;AAC1B","ignoreList":[]}
1
+ {"version":3,"names":["addSortToDataQuery","dataQuery","query","fields","dataQueryWithSort","sort","forEach","sortField","fieldName","order","fieldDefinition","capabilities","sortable","ascending","descending"],"sources":["../../../../src/dataSourceAdapters/cms/sortUtils.ts"],"sourcesContent":["import { items } from '@wix/data';\nimport { SchemaConfig } from '../../types';\nimport { ComputedQuery } from '@wix/patterns';\n\nexport function addSortToDataQuery({\n dataQuery,\n query,\n fields,\n}: {\n dataQuery: items.WixDataQuery;\n query: ComputedQuery<any>;\n fields: SchemaConfig['fields'];\n}) {\n let dataQueryWithSort = dataQuery;\n const { sort } = query;\n sort?.forEach((sortField) => {\n const { fieldName, order } = sortField;\n if (fieldName && order) {\n const fieldDefinition = fields[fieldName];\n if (fieldDefinition?.capabilities.sortable) {\n if (order === 'asc') {\n dataQueryWithSort = dataQueryWithSort.ascending(fieldName);\n } else if (order === 'desc') {\n dataQueryWithSort = dataQueryWithSort.descending(fieldName);\n }\n }\n }\n });\n\n return dataQueryWithSort;\n}\n"],"mappings":";;;;AAIO,SAASA,kBAAkBA,CAAC;EACjCC,SAAS;EACTC,KAAK;EACLC;AAKF,CAAC,EAAE;EACD,IAAIC,iBAAiB,GAAGH,SAAS;EACjC,MAAM;IAAEI;EAAK,CAAC,GAAGH,KAAK;EACtBG,IAAI,YAAJA,IAAI,CAAEC,OAAO,CAAEC,SAAS,IAAK;IAC3B,MAAM;MAAEC,SAAS;MAAEC;IAAM,CAAC,GAAGF,SAAS;IACtC,IAAIC,SAAS,IAAIC,KAAK,EAAE;MACtB,MAAMC,eAAe,GAAGP,MAAM,CAACK,SAAS,CAAC;MACzC,IAAIE,eAAe,YAAfA,eAAe,CAAEC,YAAY,CAACC,QAAQ,EAAE;QAC1C,IAAIH,KAAK,KAAK,KAAK,EAAE;UACnBL,iBAAiB,GAAGA,iBAAiB,CAACS,SAAS,CAACL,SAAS,CAAC;QAC5D,CAAC,MAAM,IAAIC,KAAK,KAAK,MAAM,EAAE;UAC3BL,iBAAiB,GAAGA,iBAAiB,CAACU,UAAU,CAACN,SAAS,CAAC;QAC7D;MACF;IACF;EACF,CAAC,CAAC;EAEF,OAAOJ,iBAAiB;AAC1B","ignoreList":[]}
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  exports.__esModule = true;
4
- exports.createDataProvider = createDataProvider;
5
4
  exports.getSchema = getSchema;
6
5
  var _cmsAdapter = require("./cms/cmsAdapter");
7
6
  async function getSchema(collectionId, entityTypeSource) {
@@ -12,23 +11,4 @@ async function getSchema(collectionId, entityTypeSource) {
12
11
  throw new Error(`Unsupported entityTypeSource: ${entityTypeSource}`);
13
12
  }
14
13
  }
15
- function createDataProvider({
16
- collectionId,
17
- entityTypeSource,
18
- schema,
19
- visibleFieldIds,
20
- filtersMapping
21
- }) {
22
- switch (entityTypeSource) {
23
- case 'cms':
24
- return (0, _cmsAdapter.createCmsDataProvider)({
25
- collectionId,
26
- schema,
27
- visibleFieldIds,
28
- filtersMapping
29
- });
30
- default:
31
- throw new Error(`Unsupported entityTypeSource: ${entityTypeSource}`);
32
- }
33
- }
34
14
  //# sourceMappingURL=factory.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_cmsAdapter","require","getSchema","collectionId","entityTypeSource","fetchCmsSchema","Error","createDataProvider","schema","visibleFieldIds","filtersMapping","createCmsDataProvider"],"sources":["../../../src/dataSourceAdapters/factory.ts"],"sourcesContent":["import { Filter, SchemaConfig } from '../types';\nimport { fetchCmsSchema, createCmsDataProvider } from './cms/cmsAdapter';\nimport { CollectionConfig as PatternsCollectionConfig } from '@wix/patterns';\n\nexport async function getSchema(\n collectionId: string,\n entityTypeSource: string,\n): Promise<SchemaConfig> {\n switch (entityTypeSource) {\n case 'cms':\n return fetchCmsSchema(collectionId);\n default:\n throw new Error(`Unsupported entityTypeSource: ${entityTypeSource}`);\n }\n}\n\nexport function createDataProvider({\n collectionId,\n entityTypeSource,\n schema,\n visibleFieldIds,\n filtersMapping,\n}: {\n collectionId: string;\n entityTypeSource: string;\n schema: SchemaConfig;\n visibleFieldIds: string[];\n filtersMapping?: Record<string, Filter>;\n}): { fetchData: PatternsCollectionConfig<any, any>['fetchData'] } {\n switch (entityTypeSource) {\n case 'cms':\n return createCmsDataProvider({\n collectionId,\n schema,\n visibleFieldIds,\n filtersMapping,\n });\n default:\n throw new Error(`Unsupported entityTypeSource: ${entityTypeSource}`);\n }\n}\n"],"mappings":";;;;;AACA,IAAAA,WAAA,GAAAC,OAAA;AAGO,eAAeC,SAASA,CAC7BC,YAAoB,EACpBC,gBAAwB,EACD;EACvB,QAAQA,gBAAgB;IACtB,KAAK,KAAK;MACR,OAAO,IAAAC,0BAAc,EAACF,YAAY,CAAC;IACrC;MACE,MAAM,IAAIG,KAAK,CAAC,iCAAiCF,gBAAgB,EAAE,CAAC;EACxE;AACF;AAEO,SAASG,kBAAkBA,CAAC;EACjCJ,YAAY;EACZC,gBAAgB;EAChBI,MAAM;EACNC,eAAe;EACfC;AAOF,CAAC,EAAkE;EACjE,QAAQN,gBAAgB;IACtB,KAAK,KAAK;MACR,OAAO,IAAAO,iCAAqB,EAAC;QAC3BR,YAAY;QACZK,MAAM;QACNC,eAAe;QACfC;MACF,CAAC,CAAC;IACJ;MACE,MAAM,IAAIJ,KAAK,CAAC,iCAAiCF,gBAAgB,EAAE,CAAC;EACxE;AACF","ignoreList":[]}
1
+ {"version":3,"names":["_cmsAdapter","require","getSchema","collectionId","entityTypeSource","fetchCmsSchema","Error"],"sources":["../../../src/dataSourceAdapters/factory.ts"],"sourcesContent":["import { SchemaConfig } from '../types';\nimport { fetchCmsSchema } from './cms/cmsAdapter';\n\nexport async function getSchema(\n collectionId: string,\n entityTypeSource: string,\n): Promise<SchemaConfig> {\n switch (entityTypeSource) {\n case 'cms':\n return fetchCmsSchema(collectionId);\n default:\n throw new Error(`Unsupported entityTypeSource: ${entityTypeSource}`);\n }\n}\n"],"mappings":";;;;AACA,IAAAA,WAAA,GAAAC,OAAA;AAEO,eAAeC,SAASA,CAC7BC,YAAoB,EACpBC,gBAAwB,EACD;EACvB,QAAQA,gBAAgB;IACtB,KAAK,KAAK;MACR,OAAO,IAAAC,0BAAc,EAACF,YAAY,CAAC;IACrC;MACE,MAAM,IAAIG,KAAK,CAAC,iCAAiCF,gBAAgB,EAAE,CAAC;EACxE;AACF","ignoreList":[]}
@@ -49,12 +49,6 @@ const useActionCell = ({
49
49
  ...baseParams
50
50
  });
51
51
  break;
52
- case 'customModal':
53
- actionToResolve = (0, _actions.customModalAction)({
54
- action: actionConfig,
55
- ...baseParams
56
- });
57
- break;
58
52
  case 'custom':
59
53
  actionToResolve = (0, _actions.customAction)({
60
54
  action: actionConfig,