@wix/auto-patterns 1.6.0 → 1.8.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 (453) hide show
  1. package/dist/cjs/components/AutoPatternsApp/AutoPatternsApp.js +10 -25
  2. package/dist/cjs/components/AutoPatternsApp/AutoPatternsApp.js.map +1 -1
  3. package/dist/cjs/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.js +3 -2
  4. package/dist/cjs/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.js.map +1 -1
  5. package/dist/cjs/components/AutoPatternsEntityPage/AutoPatternsEntityPage.js +242 -71
  6. package/dist/cjs/components/AutoPatternsEntityPage/AutoPatternsEntityPage.js.map +1 -1
  7. package/dist/cjs/components/AutoPatternsEntityPage/Fields/DateInput.js +28 -5
  8. package/dist/cjs/components/AutoPatternsEntityPage/Fields/DateInput.js.map +1 -1
  9. package/dist/cjs/components/AutoPatternsEntityPage/Fields/DateTime.js +45 -10
  10. package/dist/cjs/components/AutoPatternsEntityPage/Fields/DateTime.js.map +1 -1
  11. package/dist/cjs/components/AutoPatternsEntityPage/Fields/FormFieldInput.js +7 -5
  12. package/dist/cjs/components/AutoPatternsEntityPage/Fields/FormFieldInput.js.map +1 -1
  13. package/dist/cjs/components/AutoPatternsEntityPage/Fields/LongText.js +16 -5
  14. package/dist/cjs/components/AutoPatternsEntityPage/Fields/LongText.js.map +1 -1
  15. package/dist/cjs/components/AutoPatternsEntityPage/Fields/Number.js +43 -5
  16. package/dist/cjs/components/AutoPatternsEntityPage/Fields/Number.js.map +1 -1
  17. package/dist/cjs/components/AutoPatternsEntityPage/Fields/ShortText.js +30 -5
  18. package/dist/cjs/components/AutoPatternsEntityPage/Fields/ShortText.js.map +1 -1
  19. package/dist/cjs/components/AutoPatternsEntityPage/Fields/Url.js +27 -9
  20. package/dist/cjs/components/AutoPatternsEntityPage/Fields/Url.js.map +1 -1
  21. package/dist/cjs/components/AutoPatternsEntityPage/Fields/types.js.map +1 -1
  22. package/dist/cjs/components/AutoPatternsEntityPage/Fields/utils/validateTextLength.js +39 -0
  23. package/dist/cjs/components/AutoPatternsEntityPage/Fields/utils/validateTextLength.js.map +1 -0
  24. package/dist/cjs/components/AutoPatternsGrid/AutoPatternsGrid.js +8 -10
  25. package/dist/cjs/components/AutoPatternsGrid/AutoPatternsGrid.js.map +1 -1
  26. package/dist/cjs/components/AutoPatternsRoute/AutoPatternsRoutes.js +84 -0
  27. package/dist/cjs/components/AutoPatternsRoute/AutoPatternsRoutes.js.map +1 -0
  28. package/dist/cjs/components/AutoPatternsTable/AutoPatternsTable.js +8 -10
  29. package/dist/cjs/components/AutoPatternsTable/AutoPatternsTable.js.map +1 -1
  30. package/dist/cjs/components/AutoPatternsTable/AutoPatternsTableContent.js +7 -8
  31. package/dist/cjs/components/AutoPatternsTable/AutoPatternsTableContent.js.map +1 -1
  32. package/dist/cjs/components/DynamicIcon.js +71 -0
  33. package/dist/cjs/components/DynamicIcon.js.map +1 -0
  34. package/dist/cjs/components/ModalRenderer.js +40 -0
  35. package/dist/cjs/components/ModalRenderer.js.map +1 -0
  36. package/dist/cjs/components/filters/DynamicCollectionFilter.js +63 -0
  37. package/dist/cjs/components/filters/DynamicCollectionFilter.js.map +1 -0
  38. package/dist/cjs/components/filters/StaticCollectionFilter.js +31 -0
  39. package/dist/cjs/components/filters/StaticCollectionFilter.js.map +1 -0
  40. package/dist/cjs/components/filters/index.js +9 -0
  41. package/dist/cjs/components/filters/index.js.map +1 -0
  42. package/dist/cjs/components/modals/actions/BulkDeleteModal.js +95 -0
  43. package/dist/cjs/components/modals/actions/BulkDeleteModal.js.map +1 -0
  44. package/dist/cjs/components/modals/actions/EditModal.js +136 -0
  45. package/dist/cjs/components/modals/actions/EditModal.js.map +1 -0
  46. package/dist/cjs/components/modals/actions/index.js +16 -0
  47. package/dist/cjs/components/modals/actions/index.js.map +1 -0
  48. package/dist/cjs/{collectionData/CollectionData.js → components/modals/actions/types.js} +1 -1
  49. package/dist/cjs/components/modals/actions/types.js.map +1 -0
  50. package/dist/cjs/components/modals/index.js +10 -0
  51. package/dist/cjs/components/modals/index.js.map +1 -0
  52. package/dist/cjs/{collectionData/cms/CmsCollectionData.js → dataSourceAdapters/cms/cmsAdapter.js} +57 -18
  53. package/dist/cjs/dataSourceAdapters/cms/cmsAdapter.js.map +1 -0
  54. package/dist/cjs/{collectionData → dataSourceAdapters}/cms/filterUtils.js +18 -11
  55. package/dist/cjs/dataSourceAdapters/cms/filterUtils.js.map +1 -0
  56. package/dist/cjs/dataSourceAdapters/cms/sortUtils.js.map +1 -0
  57. package/dist/cjs/dataSourceAdapters/constants.js.map +1 -0
  58. package/dist/cjs/dataSourceAdapters/factory.js +34 -0
  59. package/dist/cjs/dataSourceAdapters/factory.js.map +1 -0
  60. package/dist/cjs/exports/form.js +10 -0
  61. package/dist/cjs/exports/form.js.map +1 -0
  62. package/dist/cjs/hooks/index.js +12 -0
  63. package/dist/cjs/hooks/index.js.map +1 -1
  64. package/dist/cjs/hooks/useActionCell.js +109 -0
  65. package/dist/cjs/hooks/useActionCell.js.map +1 -0
  66. package/dist/cjs/hooks/useAutoPatternsOptimisticActions.js +15 -0
  67. package/dist/cjs/hooks/useAutoPatternsOptimisticActions.js.map +1 -0
  68. package/dist/cjs/hooks/useBulkActionToolbar.js +88 -0
  69. package/dist/cjs/hooks/useBulkActionToolbar.js.map +1 -0
  70. package/dist/cjs/hooks/useColumns.js +90 -37
  71. package/dist/cjs/hooks/useColumns.js.map +1 -1
  72. package/dist/cjs/hooks/useCommonCollectionFeatures.js +27 -35
  73. package/dist/cjs/hooks/useCommonCollectionFeatures.js.map +1 -1
  74. package/dist/cjs/hooks/useFetchData.js +33 -9
  75. package/dist/cjs/hooks/useFetchData.js.map +1 -1
  76. package/dist/cjs/hooks/useFilters.js +83 -92
  77. package/dist/cjs/hooks/useFilters.js.map +1 -1
  78. package/dist/cjs/hooks/useGridFeatures.js +31 -21
  79. package/dist/cjs/hooks/useGridFeatures.js.map +1 -1
  80. package/dist/cjs/hooks/useNavigationUtils.js +51 -0
  81. package/dist/cjs/hooks/useNavigationUtils.js.map +1 -0
  82. package/dist/cjs/hooks/usePagePath.js +35 -0
  83. package/dist/cjs/hooks/usePagePath.js.map +1 -0
  84. package/dist/cjs/hooks/useSharedDataForActions.js +44 -0
  85. package/dist/cjs/hooks/useSharedDataForActions.js.map +1 -0
  86. package/dist/cjs/hooks/useTableFeatures.js +23 -15
  87. package/dist/cjs/hooks/useTableFeatures.js.map +1 -1
  88. package/dist/cjs/providers/AppConfigContext.js +33 -0
  89. package/dist/cjs/providers/AppConfigContext.js.map +1 -0
  90. package/dist/cjs/providers/ModalContext.js +58 -0
  91. package/dist/cjs/providers/ModalContext.js.map +1 -0
  92. package/dist/cjs/providers/PatternsWizardOverridesContext.js +1 -1
  93. package/dist/cjs/providers/PatternsWizardOverridesContext.js.map +1 -1
  94. package/dist/cjs/providers/RootAppProvider.js +40 -0
  95. package/dist/cjs/providers/RootAppProvider.js.map +1 -0
  96. package/dist/cjs/providers/SchemaContext.js +49 -5
  97. package/dist/cjs/providers/SchemaContext.js.map +1 -1
  98. package/dist/cjs/providers/SchemaRegistryContext.js +49 -0
  99. package/dist/cjs/providers/SchemaRegistryContext.js.map +1 -0
  100. package/dist/cjs/providers/index.js +22 -4
  101. package/dist/cjs/providers/index.js.map +1 -1
  102. package/dist/cjs/types/CollectionPageConfig.js.map +1 -1
  103. package/dist/cjs/types/EntityPageConfig.js.map +1 -1
  104. package/dist/cjs/types/actions/actionCell.js +4 -0
  105. package/dist/cjs/types/actions/actionCell.js.map +1 -0
  106. package/dist/cjs/types/actions/base.js +4 -0
  107. package/dist/cjs/types/actions/base.js.map +1 -0
  108. package/dist/cjs/types/actions/bulkActions.js +4 -0
  109. package/dist/cjs/types/actions/bulkActions.js.map +1 -0
  110. package/dist/cjs/types/actions/index.js +22 -0
  111. package/dist/cjs/types/actions/index.js.map +1 -0
  112. package/dist/cjs/types/index.js +12 -0
  113. package/dist/cjs/types/index.js.map +1 -1
  114. package/dist/cjs/types/types.js.map +1 -1
  115. package/dist/cjs/utils/actions/bulkDeleteAction.js +26 -0
  116. package/dist/cjs/utils/actions/bulkDeleteAction.js.map +1 -0
  117. package/dist/cjs/utils/actions/customAction.js +23 -0
  118. package/dist/cjs/utils/actions/customAction.js.map +1 -0
  119. package/dist/cjs/utils/actions/customModalAction.js +22 -0
  120. package/dist/cjs/utils/actions/customModalAction.js.map +1 -0
  121. package/dist/cjs/utils/actions/deleteAction.js +61 -0
  122. package/dist/cjs/utils/actions/deleteAction.js.map +1 -0
  123. package/dist/cjs/utils/actions/index.js +40 -0
  124. package/dist/cjs/utils/actions/index.js.map +1 -0
  125. package/dist/cjs/utils/actions/resolveAction.js +27 -0
  126. package/dist/cjs/utils/actions/resolveAction.js.map +1 -0
  127. package/dist/cjs/utils/actions/types.js +4 -0
  128. package/dist/cjs/utils/actions/types.js.map +1 -0
  129. package/dist/cjs/utils/actions/updateAction.js +46 -0
  130. package/dist/cjs/utils/actions/updateAction.js.map +1 -0
  131. package/dist/cjs/utils/filterCreators.js +137 -0
  132. package/dist/cjs/utils/filterCreators.js.map +1 -0
  133. package/dist/cjs/utils/media/getImageUrl.js +22 -0
  134. package/dist/cjs/utils/media/getImageUrl.js.map +1 -0
  135. package/dist/esm/components/AutoPatternsApp/AutoPatternsApp.js +6 -14
  136. package/dist/esm/components/AutoPatternsApp/AutoPatternsApp.js.map +1 -1
  137. package/dist/esm/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.js +1 -0
  138. package/dist/esm/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.js.map +1 -1
  139. package/dist/esm/components/AutoPatternsEntityPage/AutoPatternsEntityPage.js +155 -34
  140. package/dist/esm/components/AutoPatternsEntityPage/AutoPatternsEntityPage.js.map +1 -1
  141. package/dist/esm/components/AutoPatternsEntityPage/Fields/DateInput.js +27 -4
  142. package/dist/esm/components/AutoPatternsEntityPage/Fields/DateInput.js.map +1 -1
  143. package/dist/esm/components/AutoPatternsEntityPage/Fields/DateTime.js +41 -6
  144. package/dist/esm/components/AutoPatternsEntityPage/Fields/DateTime.js.map +1 -1
  145. package/dist/esm/components/AutoPatternsEntityPage/Fields/FormFieldInput.js +7 -5
  146. package/dist/esm/components/AutoPatternsEntityPage/Fields/FormFieldInput.js.map +1 -1
  147. package/dist/esm/components/AutoPatternsEntityPage/Fields/LongText.js +14 -4
  148. package/dist/esm/components/AutoPatternsEntityPage/Fields/LongText.js.map +1 -1
  149. package/dist/esm/components/AutoPatternsEntityPage/Fields/Number.js +41 -4
  150. package/dist/esm/components/AutoPatternsEntityPage/Fields/Number.js.map +1 -1
  151. package/dist/esm/components/AutoPatternsEntityPage/Fields/ShortText.js +28 -4
  152. package/dist/esm/components/AutoPatternsEntityPage/Fields/ShortText.js.map +1 -1
  153. package/dist/esm/components/AutoPatternsEntityPage/Fields/Url.js +23 -5
  154. package/dist/esm/components/AutoPatternsEntityPage/Fields/Url.js.map +1 -1
  155. package/dist/esm/components/AutoPatternsEntityPage/Fields/types.js.map +1 -1
  156. package/dist/esm/components/AutoPatternsEntityPage/Fields/utils/validateTextLength.js +35 -0
  157. package/dist/esm/components/AutoPatternsEntityPage/Fields/utils/validateTextLength.js.map +1 -0
  158. package/dist/esm/components/AutoPatternsGrid/AutoPatternsGrid.js +5 -6
  159. package/dist/esm/components/AutoPatternsGrid/AutoPatternsGrid.js.map +1 -1
  160. package/dist/esm/components/AutoPatternsRoute/AutoPatternsRoutes.js +47 -0
  161. package/dist/esm/components/AutoPatternsRoute/AutoPatternsRoutes.js.map +1 -0
  162. package/dist/esm/components/AutoPatternsTable/AutoPatternsTable.js +5 -6
  163. package/dist/esm/components/AutoPatternsTable/AutoPatternsTable.js.map +1 -1
  164. package/dist/esm/components/AutoPatternsTable/AutoPatternsTableContent.js +9 -10
  165. package/dist/esm/components/AutoPatternsTable/AutoPatternsTableContent.js.map +1 -1
  166. package/dist/esm/components/DynamicIcon.js +33 -0
  167. package/dist/esm/components/DynamicIcon.js.map +1 -0
  168. package/dist/esm/components/ModalRenderer.js +25 -0
  169. package/dist/esm/components/ModalRenderer.js.map +1 -0
  170. package/dist/esm/components/filters/DynamicCollectionFilter.js +50 -0
  171. package/dist/esm/components/filters/DynamicCollectionFilter.js.map +1 -0
  172. package/dist/esm/components/filters/StaticCollectionFilter.js +18 -0
  173. package/dist/esm/components/filters/StaticCollectionFilter.js.map +1 -0
  174. package/dist/esm/components/filters/index.js +3 -0
  175. package/dist/esm/components/filters/index.js.map +1 -0
  176. package/dist/esm/components/modals/actions/BulkDeleteModal.js +57 -0
  177. package/dist/esm/components/modals/actions/BulkDeleteModal.js.map +1 -0
  178. package/dist/esm/components/modals/actions/EditModal.js +78 -0
  179. package/dist/esm/components/modals/actions/EditModal.js.map +1 -0
  180. package/dist/esm/components/modals/actions/index.js +3 -0
  181. package/dist/esm/components/modals/actions/index.js.map +1 -0
  182. package/dist/esm/components/modals/actions/types.js +2 -0
  183. package/dist/esm/components/modals/actions/types.js.map +1 -0
  184. package/dist/esm/components/modals/index.js +2 -0
  185. package/dist/esm/components/modals/index.js.map +1 -0
  186. package/dist/esm/dataSourceAdapters/cms/cmsAdapter.js +131 -0
  187. package/dist/esm/dataSourceAdapters/cms/cmsAdapter.js.map +1 -0
  188. package/dist/esm/{collectionData → dataSourceAdapters}/cms/filterUtils.js +18 -11
  189. package/dist/esm/dataSourceAdapters/cms/filterUtils.js.map +1 -0
  190. package/dist/esm/dataSourceAdapters/cms/sortUtils.js.map +1 -0
  191. package/dist/esm/dataSourceAdapters/constants.js.map +1 -0
  192. package/dist/esm/dataSourceAdapters/factory.js +30 -0
  193. package/dist/esm/dataSourceAdapters/factory.js.map +1 -0
  194. package/dist/esm/exports/form.js +2 -0
  195. package/dist/esm/exports/form.js.map +1 -0
  196. package/dist/esm/hooks/index.js +2 -0
  197. package/dist/esm/hooks/index.js.map +1 -1
  198. package/dist/esm/hooks/useActionCell.js +105 -0
  199. package/dist/esm/hooks/useActionCell.js.map +1 -0
  200. package/dist/esm/hooks/useAutoPatternsOptimisticActions.js +13 -0
  201. package/dist/esm/hooks/useAutoPatternsOptimisticActions.js.map +1 -0
  202. package/dist/esm/hooks/useBulkActionToolbar.js +75 -0
  203. package/dist/esm/hooks/useBulkActionToolbar.js.map +1 -0
  204. package/dist/esm/hooks/useColumns.js +70 -38
  205. package/dist/esm/hooks/useColumns.js.map +1 -1
  206. package/dist/esm/hooks/useCommonCollectionFeatures.js +23 -24
  207. package/dist/esm/hooks/useCommonCollectionFeatures.js.map +1 -1
  208. package/dist/esm/hooks/useFetchData.js +34 -10
  209. package/dist/esm/hooks/useFetchData.js.map +1 -1
  210. package/dist/esm/hooks/useFilters.js +75 -85
  211. package/dist/esm/hooks/useFilters.js.map +1 -1
  212. package/dist/esm/hooks/useGridFeatures.js +31 -21
  213. package/dist/esm/hooks/useGridFeatures.js.map +1 -1
  214. package/dist/esm/hooks/useNavigationUtils.js +47 -0
  215. package/dist/esm/hooks/useNavigationUtils.js.map +1 -0
  216. package/dist/esm/hooks/usePagePath.js +30 -0
  217. package/dist/esm/hooks/usePagePath.js.map +1 -0
  218. package/dist/esm/hooks/useSharedDataForActions.js +40 -0
  219. package/dist/esm/hooks/useSharedDataForActions.js.map +1 -0
  220. package/dist/esm/hooks/useTableFeatures.js +20 -13
  221. package/dist/esm/hooks/useTableFeatures.js.map +1 -1
  222. package/dist/esm/providers/AppConfigContext.js +19 -0
  223. package/dist/esm/providers/AppConfigContext.js.map +1 -0
  224. package/dist/esm/providers/ModalContext.js +37 -0
  225. package/dist/esm/providers/ModalContext.js.map +1 -0
  226. package/dist/esm/providers/PatternsWizardOverridesContext.js.map +1 -1
  227. package/dist/esm/providers/RootAppProvider.js +14 -0
  228. package/dist/esm/providers/RootAppProvider.js.map +1 -0
  229. package/dist/esm/providers/SchemaContext.js +48 -4
  230. package/dist/esm/providers/SchemaContext.js.map +1 -1
  231. package/dist/esm/providers/SchemaRegistryContext.js +35 -0
  232. package/dist/esm/providers/SchemaRegistryContext.js.map +1 -0
  233. package/dist/esm/providers/index.js +4 -1
  234. package/dist/esm/providers/index.js.map +1 -1
  235. package/dist/esm/types/CollectionPageConfig.js.map +1 -1
  236. package/dist/esm/types/EntityPageConfig.js.map +1 -1
  237. package/dist/esm/types/actions/actionCell.js +2 -0
  238. package/dist/esm/types/actions/actionCell.js.map +1 -0
  239. package/dist/esm/types/actions/base.js +2 -0
  240. package/dist/esm/types/actions/base.js.map +1 -0
  241. package/dist/esm/types/actions/bulkActions.js +2 -0
  242. package/dist/esm/types/actions/bulkActions.js.map +1 -0
  243. package/dist/esm/types/actions/index.js +4 -0
  244. package/dist/esm/types/actions/index.js.map +1 -0
  245. package/dist/esm/types/index.js +2 -0
  246. package/dist/esm/types/index.js.map +1 -1
  247. package/dist/esm/types/types.js.map +1 -1
  248. package/dist/esm/utils/actions/bulkDeleteAction.js +21 -0
  249. package/dist/esm/utils/actions/bulkDeleteAction.js.map +1 -0
  250. package/dist/esm/utils/actions/customAction.js +18 -0
  251. package/dist/esm/utils/actions/customAction.js.map +1 -0
  252. package/dist/esm/utils/actions/customModalAction.js +17 -0
  253. package/dist/esm/utils/actions/customModalAction.js.map +1 -0
  254. package/dist/esm/utils/actions/deleteAction.js +56 -0
  255. package/dist/esm/utils/actions/deleteAction.js.map +1 -0
  256. package/dist/esm/utils/actions/index.js +8 -0
  257. package/dist/esm/utils/actions/index.js.map +1 -0
  258. package/dist/esm/utils/actions/resolveAction.js +13 -0
  259. package/dist/esm/utils/actions/resolveAction.js.map +1 -0
  260. package/dist/esm/utils/actions/types.js +2 -0
  261. package/dist/esm/utils/actions/types.js.map +1 -0
  262. package/dist/esm/utils/actions/updateAction.js +41 -0
  263. package/dist/esm/utils/actions/updateAction.js.map +1 -0
  264. package/dist/esm/utils/filterCreators.js +139 -0
  265. package/dist/esm/utils/filterCreators.js.map +1 -0
  266. package/dist/esm/utils/media/getImageUrl.js +16 -0
  267. package/dist/esm/utils/media/getImageUrl.js.map +1 -0
  268. package/dist/types/components/AutoPatternsApp/AutoPatternsApp.d.ts.map +1 -1
  269. package/dist/types/components/AutoPatternsCollectionPageContent/AutoPatternsCollectionPageContent.d.ts.map +1 -1
  270. package/dist/types/components/AutoPatternsEntityPage/AutoPatternsEntityPage.d.ts.map +1 -1
  271. package/dist/types/components/AutoPatternsEntityPage/Fields/Checkbox.d.ts.map +1 -1
  272. package/dist/types/components/AutoPatternsEntityPage/Fields/DateInput.d.ts.map +1 -1
  273. package/dist/types/components/AutoPatternsEntityPage/Fields/DateTime.d.ts.map +1 -1
  274. package/dist/types/components/AutoPatternsEntityPage/Fields/FormFieldInput.d.ts +3 -1
  275. package/dist/types/components/AutoPatternsEntityPage/Fields/FormFieldInput.d.ts.map +1 -1
  276. package/dist/types/components/AutoPatternsEntityPage/Fields/LongText.d.ts.map +1 -1
  277. package/dist/types/components/AutoPatternsEntityPage/Fields/Number.d.ts.map +1 -1
  278. package/dist/types/components/AutoPatternsEntityPage/Fields/ShortText.d.ts.map +1 -1
  279. package/dist/types/components/AutoPatternsEntityPage/Fields/Url.d.ts.map +1 -1
  280. package/dist/types/components/AutoPatternsEntityPage/Fields/types.d.ts +2 -0
  281. package/dist/types/components/AutoPatternsEntityPage/Fields/types.d.ts.map +1 -1
  282. package/dist/types/components/AutoPatternsEntityPage/Fields/utils/dates.d.ts.map +1 -1
  283. package/dist/types/components/AutoPatternsEntityPage/Fields/utils/validateTextLength.d.ts +12 -0
  284. package/dist/types/components/AutoPatternsEntityPage/Fields/utils/validateTextLength.d.ts.map +1 -0
  285. package/dist/types/components/AutoPatternsGrid/AutoPatternsGrid.d.ts.map +1 -1
  286. package/dist/types/components/AutoPatternsGrid/AutoPatternsGridContent.d.ts.map +1 -1
  287. package/dist/types/components/AutoPatternsRoute/AutoPatternsPage.d.ts.map +1 -1
  288. package/dist/types/components/AutoPatternsRoute/AutoPatternsRoutes.d.ts +6 -0
  289. package/dist/types/components/AutoPatternsRoute/AutoPatternsRoutes.d.ts.map +1 -0
  290. package/dist/types/components/AutoPatternsTable/AutoPatternsTable.d.ts.map +1 -1
  291. package/dist/types/components/AutoPatternsTable/AutoPatternsTableContent.d.ts.map +1 -1
  292. package/dist/types/components/DynamicIcon.d.ts +6 -0
  293. package/dist/types/components/DynamicIcon.d.ts.map +1 -0
  294. package/dist/types/components/ModalRenderer.d.ts +3 -0
  295. package/dist/types/components/ModalRenderer.d.ts.map +1 -0
  296. package/dist/types/components/filters/DynamicCollectionFilter.d.ts +12 -0
  297. package/dist/types/components/filters/DynamicCollectionFilter.d.ts.map +1 -0
  298. package/dist/types/components/filters/StaticCollectionFilter.d.ts +14 -0
  299. package/dist/types/components/filters/StaticCollectionFilter.d.ts.map +1 -0
  300. package/dist/types/components/filters/index.d.ts +3 -0
  301. package/dist/types/components/filters/index.d.ts.map +1 -0
  302. package/dist/types/components/modals/actions/BulkDeleteModal.d.ts +9 -0
  303. package/dist/types/components/modals/actions/BulkDeleteModal.d.ts.map +1 -0
  304. package/dist/types/components/modals/actions/EditModal.d.ts +11 -0
  305. package/dist/types/components/modals/actions/EditModal.d.ts.map +1 -0
  306. package/dist/types/components/modals/actions/index.d.ts +3 -0
  307. package/dist/types/components/modals/actions/index.d.ts.map +1 -0
  308. package/dist/types/components/modals/actions/types.d.ts +7 -0
  309. package/dist/types/components/modals/actions/types.d.ts.map +1 -0
  310. package/dist/types/components/modals/index.d.ts +2 -0
  311. package/dist/types/components/modals/index.d.ts.map +1 -0
  312. package/dist/types/dataSourceAdapters/cms/cmsAdapter.d.ts +14 -0
  313. package/dist/types/dataSourceAdapters/cms/cmsAdapter.d.ts.map +1 -0
  314. package/dist/types/{collectionData → dataSourceAdapters}/cms/filterUtils.d.ts +3 -2
  315. package/dist/types/dataSourceAdapters/cms/filterUtils.d.ts.map +1 -0
  316. package/dist/types/dataSourceAdapters/cms/sortUtils.d.ts.map +1 -0
  317. package/dist/types/dataSourceAdapters/constants.d.ts.map +1 -0
  318. package/dist/types/dataSourceAdapters/factory.d.ts +13 -0
  319. package/dist/types/dataSourceAdapters/factory.d.ts.map +1 -0
  320. package/dist/types/exports/form.d.ts +2 -0
  321. package/dist/types/exports/form.d.ts.map +1 -0
  322. package/dist/types/hooks/index.d.ts +2 -0
  323. package/dist/types/hooks/index.d.ts.map +1 -1
  324. package/dist/types/hooks/useActionCell.d.ts +11 -0
  325. package/dist/types/hooks/useActionCell.d.ts.map +1 -0
  326. package/dist/types/hooks/useAutoPatternsOptimisticActions.d.ts +3 -0
  327. package/dist/types/hooks/useAutoPatternsOptimisticActions.d.ts.map +1 -0
  328. package/dist/types/hooks/useBulkActionToolbar.d.ts +11 -0
  329. package/dist/types/hooks/useBulkActionToolbar.d.ts.map +1 -0
  330. package/dist/types/hooks/useColumns.d.ts.map +1 -1
  331. package/dist/types/hooks/useCommonCollectionFeatures.d.ts +9 -9
  332. package/dist/types/hooks/useCommonCollectionFeatures.d.ts.map +1 -1
  333. package/dist/types/hooks/useEmptyStates.d.ts.map +1 -1
  334. package/dist/types/hooks/useFetchData.d.ts +6 -2
  335. package/dist/types/hooks/useFetchData.d.ts.map +1 -1
  336. package/dist/types/hooks/useFilters.d.ts +5 -1
  337. package/dist/types/hooks/useFilters.d.ts.map +1 -1
  338. package/dist/types/hooks/useGridFeatures.d.ts +2 -8
  339. package/dist/types/hooks/useGridFeatures.d.ts.map +1 -1
  340. package/dist/types/hooks/useNavigationUtils.d.ts +10 -0
  341. package/dist/types/hooks/useNavigationUtils.d.ts.map +1 -0
  342. package/dist/types/hooks/usePagePath.d.ts +5 -0
  343. package/dist/types/hooks/usePagePath.d.ts.map +1 -0
  344. package/dist/types/hooks/useSharedDataForActions.d.ts +8 -0
  345. package/dist/types/hooks/useSharedDataForActions.d.ts.map +1 -0
  346. package/dist/types/hooks/useTableFeatures.d.ts +3 -7
  347. package/dist/types/hooks/useTableFeatures.d.ts.map +1 -1
  348. package/dist/types/providers/AppConfigContext.d.ts +8 -0
  349. package/dist/types/providers/AppConfigContext.d.ts.map +1 -0
  350. package/dist/types/providers/ModalContext.d.ts +20 -0
  351. package/dist/types/providers/ModalContext.d.ts.map +1 -0
  352. package/dist/types/providers/PatternsWizardOverridesContext.d.ts +5 -2
  353. package/dist/types/providers/PatternsWizardOverridesContext.d.ts.map +1 -1
  354. package/dist/types/providers/RootAppProvider.d.ts +7 -0
  355. package/dist/types/providers/RootAppProvider.d.ts.map +1 -0
  356. package/dist/types/providers/SchemaContext.d.ts.map +1 -1
  357. package/dist/types/providers/SchemaRegistryContext.d.ts +13 -0
  358. package/dist/types/providers/SchemaRegistryContext.d.ts.map +1 -0
  359. package/dist/types/providers/index.d.ts +4 -1
  360. package/dist/types/providers/index.d.ts.map +1 -1
  361. package/dist/types/types/CollectionPageConfig.d.ts +33 -32
  362. package/dist/types/types/CollectionPageConfig.d.ts.map +1 -1
  363. package/dist/types/types/EntityPageConfig.d.ts +51 -2
  364. package/dist/types/types/EntityPageConfig.d.ts.map +1 -1
  365. package/dist/types/types/actions/actionCell.d.ts +24 -0
  366. package/dist/types/types/actions/actionCell.d.ts.map +1 -0
  367. package/dist/types/types/actions/base.d.ts +93 -0
  368. package/dist/types/types/actions/base.d.ts.map +1 -0
  369. package/dist/types/types/actions/bulkActions.d.ts +28 -0
  370. package/dist/types/types/actions/bulkActions.d.ts.map +1 -0
  371. package/dist/types/types/actions/index.d.ts +4 -0
  372. package/dist/types/types/actions/index.d.ts.map +1 -0
  373. package/dist/types/types/index.d.ts +2 -0
  374. package/dist/types/types/index.d.ts.map +1 -1
  375. package/dist/types/types/types.d.ts +48 -10
  376. package/dist/types/types/types.d.ts.map +1 -1
  377. package/dist/types/utils/actions/bulkDeleteAction.d.ts +7 -0
  378. package/dist/types/utils/actions/bulkDeleteAction.d.ts.map +1 -0
  379. package/dist/types/utils/actions/customAction.d.ts +3 -0
  380. package/dist/types/utils/actions/customAction.d.ts.map +1 -0
  381. package/dist/types/utils/actions/customModalAction.d.ts +5 -0
  382. package/dist/types/utils/actions/customModalAction.d.ts.map +1 -0
  383. package/dist/types/utils/actions/deleteAction.d.ts +7 -0
  384. package/dist/types/utils/actions/deleteAction.d.ts.map +1 -0
  385. package/dist/types/utils/actions/index.d.ts +8 -0
  386. package/dist/types/utils/actions/index.d.ts.map +1 -0
  387. package/dist/types/utils/actions/resolveAction.d.ts +11 -0
  388. package/dist/types/utils/actions/resolveAction.d.ts.map +1 -0
  389. package/dist/types/utils/actions/types.d.ts +65 -0
  390. package/dist/types/utils/actions/types.d.ts.map +1 -0
  391. package/dist/types/utils/actions/updateAction.d.ts +7 -0
  392. package/dist/types/utils/actions/updateAction.d.ts.map +1 -0
  393. package/dist/types/utils/filterCreators.d.ts +48 -0
  394. package/dist/types/utils/filterCreators.d.ts.map +1 -0
  395. package/dist/types/utils/media/getImageUrl.d.ts +3 -0
  396. package/dist/types/utils/media/getImageUrl.d.ts.map +1 -0
  397. package/form/package.json +6 -0
  398. package/package.json +10 -8
  399. package/dist/cjs/collectionData/CollectionData.js.map +0 -1
  400. package/dist/cjs/collectionData/CollectionDataFactory.js +0 -12
  401. package/dist/cjs/collectionData/CollectionDataFactory.js.map +0 -1
  402. package/dist/cjs/collectionData/SchemaFactory.js +0 -12
  403. package/dist/cjs/collectionData/SchemaFactory.js.map +0 -1
  404. package/dist/cjs/collectionData/cms/CmsCollectionData.js.map +0 -1
  405. package/dist/cjs/collectionData/cms/filterUtils.js.map +0 -1
  406. package/dist/cjs/collectionData/cms/sortUtils.js.map +0 -1
  407. package/dist/cjs/collectionData/constants.js.map +0 -1
  408. package/dist/cjs/collectionData/index.js +0 -10
  409. package/dist/cjs/collectionData/index.js.map +0 -1
  410. package/dist/cjs/providers/CollectionDataContext.js +0 -44
  411. package/dist/cjs/providers/CollectionDataContext.js.map +0 -1
  412. package/dist/cjs/utils/filters.js +0 -53
  413. package/dist/cjs/utils/filters.js.map +0 -1
  414. package/dist/esm/collectionData/CollectionData.js +0 -2
  415. package/dist/esm/collectionData/CollectionData.js.map +0 -1
  416. package/dist/esm/collectionData/CollectionDataFactory.js +0 -8
  417. package/dist/esm/collectionData/CollectionDataFactory.js.map +0 -1
  418. package/dist/esm/collectionData/SchemaFactory.js +0 -8
  419. package/dist/esm/collectionData/SchemaFactory.js.map +0 -1
  420. package/dist/esm/collectionData/cms/CmsCollectionData.js +0 -91
  421. package/dist/esm/collectionData/cms/CmsCollectionData.js.map +0 -1
  422. package/dist/esm/collectionData/cms/filterUtils.js.map +0 -1
  423. package/dist/esm/collectionData/cms/sortUtils.js.map +0 -1
  424. package/dist/esm/collectionData/constants.js.map +0 -1
  425. package/dist/esm/collectionData/index.js +0 -2
  426. package/dist/esm/collectionData/index.js.map +0 -1
  427. package/dist/esm/providers/CollectionDataContext.js +0 -30
  428. package/dist/esm/providers/CollectionDataContext.js.map +0 -1
  429. package/dist/esm/utils/filters.js +0 -49
  430. package/dist/esm/utils/filters.js.map +0 -1
  431. package/dist/types/collectionData/CollectionData.d.ts +0 -9
  432. package/dist/types/collectionData/CollectionData.d.ts.map +0 -1
  433. package/dist/types/collectionData/CollectionDataFactory.d.ts +0 -4
  434. package/dist/types/collectionData/CollectionDataFactory.d.ts.map +0 -1
  435. package/dist/types/collectionData/SchemaFactory.d.ts +0 -3
  436. package/dist/types/collectionData/SchemaFactory.d.ts.map +0 -1
  437. package/dist/types/collectionData/cms/CmsCollectionData.d.ts +0 -8
  438. package/dist/types/collectionData/cms/CmsCollectionData.d.ts.map +0 -1
  439. package/dist/types/collectionData/cms/filterUtils.d.ts.map +0 -1
  440. package/dist/types/collectionData/cms/sortUtils.d.ts.map +0 -1
  441. package/dist/types/collectionData/constants.d.ts.map +0 -1
  442. package/dist/types/collectionData/index.d.ts +0 -2
  443. package/dist/types/collectionData/index.d.ts.map +0 -1
  444. package/dist/types/providers/CollectionDataContext.d.ts +0 -12
  445. package/dist/types/providers/CollectionDataContext.d.ts.map +0 -1
  446. package/dist/types/utils/filters.d.ts +0 -7
  447. package/dist/types/utils/filters.d.ts.map +0 -1
  448. /package/dist/cjs/{collectionData → dataSourceAdapters}/cms/sortUtils.js +0 -0
  449. /package/dist/cjs/{collectionData → dataSourceAdapters}/constants.js +0 -0
  450. /package/dist/esm/{collectionData → dataSourceAdapters}/cms/sortUtils.js +0 -0
  451. /package/dist/esm/{collectionData → dataSourceAdapters}/constants.js +0 -0
  452. /package/dist/types/{collectionData → dataSourceAdapters}/cms/sortUtils.d.ts +0 -0
  453. /package/dist/types/{collectionData → dataSourceAdapters}/constants.d.ts +0 -0
@@ -0,0 +1,30 @@
1
+ import { useCallback } from 'react';
2
+ export const usePagePath = configuration => {
3
+ const getPagePath = useCallback(pageId => {
4
+ var _currentPage$collecti, _currentPage$entityPa;
5
+ if (!pageId) {
6
+ return '/';
7
+ }
8
+ const currentPage = configuration.pages.find(page => page.id === pageId);
9
+ let path;
10
+ switch (currentPage == null ? void 0 : currentPage.type) {
11
+ case 'collectionPage':
12
+ path = (_currentPage$collecti = currentPage.collectionPage) == null ? void 0 : _currentPage$collecti.route.path;
13
+ break;
14
+ case 'entityPage':
15
+ path = (_currentPage$entityPa = currentPage.entityPage) == null ? void 0 : _currentPage$entityPa.route.path;
16
+ break;
17
+ default:
18
+ path = undefined;
19
+ }
20
+ if (process.env.NODE_ENV === 'test') {
21
+ // in test mode we sometime override pages so we need to return the path or '/'
22
+ return path || '/';
23
+ }
24
+ return path;
25
+ }, [configuration]);
26
+ return {
27
+ getPagePath
28
+ };
29
+ };
30
+ //# sourceMappingURL=usePagePath.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useCallback","usePagePath","configuration","getPagePath","pageId","_currentPage$collecti","_currentPage$entityPa","currentPage","pages","find","page","id","path","type","collectionPage","route","entityPage","undefined","process","env","NODE_ENV"],"sources":["../../../src/hooks/usePagePath.ts"],"sourcesContent":["import { useCallback } from 'react';\nimport { AppConfig } from '../types';\n\nexport const usePagePath = (configuration: AppConfig) => {\n const getPagePath = useCallback(\n (pageId?: string) => {\n if (!pageId) {\n return '/';\n }\n\n const currentPage = configuration.pages.find(\n (page) => page.id === pageId,\n );\n\n let path;\n switch (currentPage?.type) {\n case 'collectionPage':\n path = currentPage.collectionPage?.route.path;\n break;\n case 'entityPage':\n path = currentPage.entityPage?.route.path;\n break;\n default:\n path = undefined;\n }\n\n if (process.env.NODE_ENV === 'test') {\n // in test mode we sometime override pages so we need to return the path or '/'\n return path || '/';\n }\n\n return path;\n },\n [configuration],\n );\n\n return { getPagePath };\n};\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,OAAO;AAGnC,OAAO,MAAMC,WAAW,GAAIC,aAAwB,IAAK;EACvD,MAAMC,WAAW,GAAGH,WAAW,CAC5BI,MAAe,IAAK;IAAA,IAAAC,qBAAA,EAAAC,qBAAA;IACnB,IAAI,CAACF,MAAM,EAAE;MACX,OAAO,GAAG;IACZ;IAEA,MAAMG,WAAW,GAAGL,aAAa,CAACM,KAAK,CAACC,IAAI,CACzCC,IAAI,IAAKA,IAAI,CAACC,EAAE,KAAKP,MACxB,CAAC;IAED,IAAIQ,IAAI;IACR,QAAQL,WAAW,oBAAXA,WAAW,CAAEM,IAAI;MACvB,KAAK,gBAAgB;QACnBD,IAAI,IAAAP,qBAAA,GAAGE,WAAW,CAACO,cAAc,qBAA1BT,qBAAA,CAA4BU,KAAK,CAACH,IAAI;QAC7C;MACF,KAAK,YAAY;QACfA,IAAI,IAAAN,qBAAA,GAAGC,WAAW,CAACS,UAAU,qBAAtBV,qBAAA,CAAwBS,KAAK,CAACH,IAAI;QACzC;MACF;QACEA,IAAI,GAAGK,SAAS;IACpB;IAEA,IAAIC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,MAAM,EAAE;MACnC;MACA,OAAOR,IAAI,IAAI,GAAG;IACpB;IAEA,OAAOA,IAAI;EACb,CAAC,EACD,CAACV,aAAa,CAChB,CAAC;EAED,OAAO;IAAEC;EAAY,CAAC;AACxB,CAAC","ignoreList":[]}
@@ -0,0 +1,40 @@
1
+ import { useMemo } from 'react';
2
+ import { useAppConfigContext, useSchemaRegistry, usePatternsWizardOverridesContext } from '../providers';
3
+ import { useModalContext } from '../providers/ModalContext';
4
+ import { useNavigation } from './useNavigationUtils';
5
+ export const useSharedDataForActions = _ref => {
6
+ let {
7
+ collectionId,
8
+ optimisticActions
9
+ } = _ref;
10
+ const {
11
+ openModal,
12
+ closeModal
13
+ } = useModalContext();
14
+ const {
15
+ getSchema
16
+ } = useSchemaRegistry();
17
+ const appConfig = useAppConfigContext();
18
+ const overrides = usePatternsWizardOverridesContext();
19
+ const {
20
+ navigateToEntityPage
21
+ } = useNavigation();
22
+
23
+ /* eslint-disable react-hooks/exhaustive-deps */
24
+ // disabled because bug in Patterns that navigateToEntityPage isn't wrapped with useCallback,
25
+ const sharedData = useMemo(() => ({
26
+ getSchema,
27
+ appConfig,
28
+ overrides,
29
+ openModal,
30
+ closeModal,
31
+ collectionId,
32
+ optimisticActions,
33
+ navigateToEntityPage
34
+ }), [getSchema, appConfig, overrides, openModal, closeModal, collectionId, optimisticActions, navigateToEntityPage]);
35
+
36
+ /* eslint-enable react-hooks/exhaustive-deps */
37
+
38
+ return sharedData;
39
+ };
40
+ //# sourceMappingURL=useSharedDataForActions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useMemo","useAppConfigContext","useSchemaRegistry","usePatternsWizardOverridesContext","useModalContext","useNavigation","useSharedDataForActions","_ref","collectionId","optimisticActions","openModal","closeModal","getSchema","appConfig","overrides","navigateToEntityPage","sharedData"],"sources":["../../../src/hooks/useSharedDataForActions.ts"],"sourcesContent":["import { useMemo } from 'react';\nimport {\n useAppConfigContext,\n useSchemaRegistry,\n usePatternsWizardOverridesContext,\n} from '../providers';\nimport { useModalContext } from '../providers/ModalContext';\nimport { CollectionOptimisticActions } from '@wix/patterns';\nimport { SharedDataForActions } from '../utils/actions/types';\nimport { useNavigation } from './useNavigationUtils';\n\nexport interface SharedDataParams {\n collectionId: string;\n optimisticActions: CollectionOptimisticActions<any, any>;\n}\n\nexport const useSharedDataForActions = ({\n collectionId,\n optimisticActions,\n}: SharedDataParams) => {\n const { openModal, closeModal } = useModalContext();\n const { getSchema } = useSchemaRegistry();\n const appConfig = useAppConfigContext();\n const overrides = usePatternsWizardOverridesContext();\n const { navigateToEntityPage } = useNavigation();\n\n /* eslint-disable react-hooks/exhaustive-deps */\n // disabled because bug in Patterns that navigateToEntityPage isn't wrapped with useCallback,\n const sharedData = useMemo<SharedDataForActions>(\n () => ({\n getSchema,\n appConfig,\n overrides,\n openModal,\n closeModal,\n collectionId,\n optimisticActions,\n navigateToEntityPage,\n }),\n [\n getSchema,\n appConfig,\n overrides,\n openModal,\n closeModal,\n collectionId,\n optimisticActions,\n navigateToEntityPage,\n ],\n );\n\n /* eslint-enable react-hooks/exhaustive-deps */\n\n return sharedData;\n};\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,OAAO;AAC/B,SACEC,mBAAmB,EACnBC,iBAAiB,EACjBC,iCAAiC,QAC5B,cAAc;AACrB,SAASC,eAAe,QAAQ,2BAA2B;AAG3D,SAASC,aAAa,QAAQ,sBAAsB;AAOpD,OAAO,MAAMC,uBAAuB,GAAGC,IAAA,IAGf;EAAA,IAHgB;IACtCC,YAAY;IACZC;EACgB,CAAC,GAAAF,IAAA;EACjB,MAAM;IAAEG,SAAS;IAAEC;EAAW,CAAC,GAAGP,eAAe,CAAC,CAAC;EACnD,MAAM;IAAEQ;EAAU,CAAC,GAAGV,iBAAiB,CAAC,CAAC;EACzC,MAAMW,SAAS,GAAGZ,mBAAmB,CAAC,CAAC;EACvC,MAAMa,SAAS,GAAGX,iCAAiC,CAAC,CAAC;EACrD,MAAM;IAAEY;EAAqB,CAAC,GAAGV,aAAa,CAAC,CAAC;;EAEhD;EACA;EACA,MAAMW,UAAU,GAAGhB,OAAO,CACxB,OAAO;IACLY,SAAS;IACTC,SAAS;IACTC,SAAS;IACTJ,SAAS;IACTC,UAAU;IACVH,YAAY;IACZC,iBAAiB;IACjBM;EACF,CAAC,CAAC,EACF,CACEH,SAAS,EACTC,SAAS,EACTC,SAAS,EACTJ,SAAS,EACTC,UAAU,EACVH,YAAY,EACZC,iBAAiB,EACjBM,oBAAoB,CAExB,CAAC;;EAED;;EAEA,OAAOC,UAAU;AACnB,CAAC","ignoreList":[]}
@@ -1,10 +1,11 @@
1
- import React from 'react';
1
+ import React, { useMemo } from 'react';
2
2
  import { useColumns } from './useColumns';
3
3
  import { useFetchData } from './useFetchData';
4
4
  import { CustomColumns, useTableCollection } from '@wix/patterns';
5
5
  import { useCommonCollectionFeatures } from './useCommonCollectionFeatures';
6
6
  import { useFilters } from './useFilters';
7
- import { useCollectionData } from '../providers';
7
+ import { useSchema } from '../providers/SchemaContext';
8
+ import { useAutoPatternsOptimisticActions } from './useAutoPatternsOptimisticActions';
8
9
  export const useTableFeatures = configuration => {
9
10
  var _configuration$custom;
10
11
  const {
@@ -14,25 +15,25 @@ export const useTableFeatures = configuration => {
14
15
  disableAutoSelectAllCount,
15
16
  selectionConsistencyMode
16
17
  } = configuration.collection;
17
- const commonFeatures = useCommonCollectionFeatures({
18
- ...configuration
19
- });
20
18
  const {
21
19
  filterComponent,
22
- filtersObject
20
+ filtersObject,
21
+ filtersMapping
23
22
  } = useFilters(configuration.filters);
24
23
  const columns = useColumns(configuration.columns);
24
+ const visibleFieldIds = useMemo(() => configuration.columns.map(column => column.id), [configuration]);
25
25
  const {
26
26
  fetchData
27
- } = useFetchData(configuration.collection);
28
- const {
29
- entityIdKey,
30
- entityNameKey
31
- } = useCollectionData();
27
+ } = useFetchData({
28
+ collectionConfig: configuration.collection,
29
+ visibleFieldIds,
30
+ filtersMapping
31
+ });
32
+ const schema = useSchema();
32
33
  const state = useTableCollection({
33
34
  queryName: `${collectionId}`,
34
- itemKey: item => item[entityIdKey],
35
- itemName: item => item[entityNameKey],
35
+ itemKey: item => item[schema.idField],
36
+ itemName: item => item[schema.displayField],
36
37
  filters: filtersObject,
37
38
  toExtendedFields: item => item.extendedFields,
38
39
  fetchErrorMessage: _ref => {
@@ -47,11 +48,17 @@ export const useTableFeatures = configuration => {
47
48
  disableAutoSelectAllCount,
48
49
  selectionConsistencyMode
49
50
  });
51
+ const optimisticActions = useAutoPatternsOptimisticActions(state.collection);
52
+ const commonFeatures = useCommonCollectionFeatures({
53
+ ...configuration,
54
+ optimisticActions
55
+ });
50
56
  return {
51
57
  ...commonFeatures,
52
58
  state,
53
59
  columns,
54
60
  filters: filterComponent,
61
+ optimisticActions,
55
62
  customColumns: (_configuration$custom = configuration.customColumns) != null && _configuration$custom.enabled ? /*#__PURE__*/React.createElement(CustomColumns, null) : undefined
56
63
  };
57
64
  };
@@ -1 +1 @@
1
- {"version":3,"names":["React","useColumns","useFetchData","CustomColumns","useTableCollection","useCommonCollectionFeatures","useFilters","useCollectionData","useTableFeatures","configuration","_configuration$custom","collectionId","limit","persistQueryToUrl","disableAutoSelectAllCount","selectionConsistencyMode","collection","commonFeatures","filterComponent","filtersObject","filters","columns","fetchData","entityIdKey","entityNameKey","state","queryName","itemKey","item","itemName","toExtendedFields","extendedFields","fetchErrorMessage","_ref","err","String","customColumns","enabled","createElement","undefined"],"sources":["../../../src/hooks/useTableFeatures.tsx"],"sourcesContent":["import React from 'react';\nimport { TableConfig } from '../types';\nimport { useColumns } from './useColumns';\nimport { useFetchData } from './useFetchData';\nimport { CustomColumns, useTableCollection } from '@wix/patterns';\nimport { useCommonCollectionFeatures } from './useCommonCollectionFeatures';\nimport { useFilters } from './useFilters';\nimport { useCollectionData } from '../providers';\n\nexport const useTableFeatures = (configuration: TableConfig) => {\n const {\n collectionId,\n limit,\n persistQueryToUrl,\n disableAutoSelectAllCount,\n selectionConsistencyMode,\n } = configuration.collection;\n\n const commonFeatures = useCommonCollectionFeatures({\n ...configuration,\n });\n\n const { filterComponent, filtersObject } = useFilters(configuration.filters);\n const columns = useColumns(configuration.columns);\n const { fetchData } = useFetchData(configuration.collection);\n\n const { entityIdKey, entityNameKey } = useCollectionData();\n\n const state = useTableCollection<any>({\n queryName: `${collectionId}`,\n itemKey: (item) => item[entityIdKey],\n itemName: (item) => item[entityNameKey],\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 return {\n ...commonFeatures,\n state,\n columns,\n filters: filterComponent,\n customColumns: configuration.customColumns?.enabled ? (\n <CustomColumns />\n ) : undefined,\n };\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,eAAe;AACjE,SAASC,2BAA2B,QAAQ,+BAA+B;AAC3E,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,iBAAiB,QAAQ,cAAc;AAEhD,OAAO,MAAMC,gBAAgB,GAAIC,aAA0B,IAAK;EAAA,IAAAC,qBAAA;EAC9D,MAAM;IACJC,YAAY;IACZC,KAAK;IACLC,iBAAiB;IACjBC,yBAAyB;IACzBC;EACF,CAAC,GAAGN,aAAa,CAACO,UAAU;EAE5B,MAAMC,cAAc,GAAGZ,2BAA2B,CAAC;IACjD,GAAGI;EACL,CAAC,CAAC;EAEF,MAAM;IAAES,eAAe;IAAEC;EAAc,CAAC,GAAGb,UAAU,CAACG,aAAa,CAACW,OAAO,CAAC;EAC5E,MAAMC,OAAO,GAAGpB,UAAU,CAACQ,aAAa,CAACY,OAAO,CAAC;EACjD,MAAM;IAAEC;EAAU,CAAC,GAAGpB,YAAY,CAACO,aAAa,CAACO,UAAU,CAAC;EAE5D,MAAM;IAAEO,WAAW;IAAEC;EAAc,CAAC,GAAGjB,iBAAiB,CAAC,CAAC;EAE1D,MAAMkB,KAAK,GAAGrB,kBAAkB,CAAM;IACpCsB,SAAS,EAAE,GAAGf,YAAY,EAAE;IAC5BgB,OAAO,EAAGC,IAAI,IAAKA,IAAI,CAACL,WAAW,CAAC;IACpCM,QAAQ,EAAGD,IAAI,IAAKA,IAAI,CAACJ,aAAa,CAAC;IACvCJ,OAAO,EAAED,aAAa;IACtBW,gBAAgB,EAAGF,IAAI,IAAKA,IAAI,CAACG,cAAc;IAC/CC,iBAAiB,EAAEC,IAAA;MAAA,IAAC;QAAEC;MAAI,CAAC,GAAAD,IAAA;MAAA,OAAKE,MAAM,CAACD,GAAG,CAAC;IAAA;IAC3CZ,SAAS;IACTV,KAAK;IACLC,iBAAiB;IACjBC,yBAAyB;IACzBC;EACF,CAAC,CAAC;EAEF,OAAO;IACL,GAAGE,cAAc;IACjBQ,KAAK;IACLJ,OAAO;IACPD,OAAO,EAAEF,eAAe;IACxBkB,aAAa,EAAE,CAAA1B,qBAAA,GAAAD,aAAa,CAAC2B,aAAa,aAA3B1B,qBAAA,CAA6B2B,OAAO,gBACjDrC,KAAA,CAAAsC,aAAA,CAACnC,aAAa,MAAE,CAAC,GACfoC;EACN,CAAC;AACH,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","useMemo","useColumns","useFetchData","CustomColumns","useTableCollection","useCommonCollectionFeatures","useFilters","useSchema","useAutoPatternsOptimisticActions","useTableFeatures","configuration","_configuration$custom","collectionId","limit","persistQueryToUrl","disableAutoSelectAllCount","selectionConsistencyMode","collection","filterComponent","filtersObject","filtersMapping","filters","columns","visibleFieldIds","map","column","id","fetchData","collectionConfig","schema","state","queryName","itemKey","item","idField","itemName","displayField","toExtendedFields","extendedFields","fetchErrorMessage","_ref","err","String","optimisticActions","commonFeatures","customColumns","enabled","createElement","undefined"],"sources":["../../../src/hooks/useTableFeatures.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\nimport { TableConfig } from '../types';\nimport { useColumns } from './useColumns';\nimport { useFetchData } from './useFetchData';\nimport { CustomColumns, useTableCollection } from '@wix/patterns';\nimport { useCommonCollectionFeatures } from './useCommonCollectionFeatures';\nimport { useFilters } from './useFilters';\nimport { useSchema } from '../providers/SchemaContext';\nimport { useAutoPatternsOptimisticActions } from './useAutoPatternsOptimisticActions';\n\nexport const useTableFeatures = (configuration: TableConfig) => {\n const {\n collectionId,\n limit,\n persistQueryToUrl,\n disableAutoSelectAllCount,\n selectionConsistencyMode,\n } = configuration.collection;\n\n const { filterComponent, filtersObject, filtersMapping } = useFilters(\n configuration.filters,\n );\n const columns = useColumns(configuration.columns);\n const visibleFieldIds = useMemo(\n () => configuration.columns.map((column) => column.id),\n [configuration],\n );\n\n const { fetchData } = useFetchData({\n collectionConfig: configuration.collection,\n visibleFieldIds,\n filtersMapping,\n });\n\n const schema = useSchema();\n\n const state = useTableCollection<any>({\n queryName: `${collectionId}`,\n itemKey: (item) => item[schema.idField],\n itemName: (item) => item[schema.displayField],\n filters: filtersObject,\n toExtendedFields: (item) => item.extendedFields,\n fetchErrorMessage: ({ err }) => String(err),\n fetchData,\n limit,\n persistQueryToUrl,\n disableAutoSelectAllCount,\n selectionConsistencyMode,\n });\n\n const optimisticActions = useAutoPatternsOptimisticActions(state.collection);\n\n const commonFeatures = useCommonCollectionFeatures({\n ...configuration,\n optimisticActions,\n });\n\n return {\n ...commonFeatures,\n state,\n columns,\n filters: filterComponent,\n optimisticActions,\n customColumns: configuration.customColumns?.enabled ? (\n <CustomColumns />\n ) : undefined,\n };\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,OAAO,QAAQ,OAAO;AAEtC,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,eAAe;AACjE,SAASC,2BAA2B,QAAQ,+BAA+B;AAC3E,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,SAAS,QAAQ,4BAA4B;AACtD,SAASC,gCAAgC,QAAQ,oCAAoC;AAErF,OAAO,MAAMC,gBAAgB,GAAIC,aAA0B,IAAK;EAAA,IAAAC,qBAAA;EAC9D,MAAM;IACJC,YAAY;IACZC,KAAK;IACLC,iBAAiB;IACjBC,yBAAyB;IACzBC;EACF,CAAC,GAAGN,aAAa,CAACO,UAAU;EAE5B,MAAM;IAAEC,eAAe;IAAEC,aAAa;IAAEC;EAAe,CAAC,GAAGd,UAAU,CACnEI,aAAa,CAACW,OAChB,CAAC;EACD,MAAMC,OAAO,GAAGrB,UAAU,CAACS,aAAa,CAACY,OAAO,CAAC;EACjD,MAAMC,eAAe,GAAGvB,OAAO,CAC7B,MAAMU,aAAa,CAACY,OAAO,CAACE,GAAG,CAAEC,MAAM,IAAKA,MAAM,CAACC,EAAE,CAAC,EACtD,CAAChB,aAAa,CAChB,CAAC;EAED,MAAM;IAAEiB;EAAU,CAAC,GAAGzB,YAAY,CAAC;IACjC0B,gBAAgB,EAAElB,aAAa,CAACO,UAAU;IAC1CM,eAAe;IACfH;EACF,CAAC,CAAC;EAEF,MAAMS,MAAM,GAAGtB,SAAS,CAAC,CAAC;EAE1B,MAAMuB,KAAK,GAAG1B,kBAAkB,CAAM;IACpC2B,SAAS,EAAE,GAAGnB,YAAY,EAAE;IAC5BoB,OAAO,EAAGC,IAAI,IAAKA,IAAI,CAACJ,MAAM,CAACK,OAAO,CAAC;IACvCC,QAAQ,EAAGF,IAAI,IAAKA,IAAI,CAACJ,MAAM,CAACO,YAAY,CAAC;IAC7Cf,OAAO,EAAEF,aAAa;IACtBkB,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;IACTd,KAAK;IACLC,iBAAiB;IACjBC,yBAAyB;IACzBC;EACF,CAAC,CAAC;EAEF,MAAM2B,iBAAiB,GAAGnC,gCAAgC,CAACsB,KAAK,CAACb,UAAU,CAAC;EAE5E,MAAM2B,cAAc,GAAGvC,2BAA2B,CAAC;IACjD,GAAGK,aAAa;IAChBiC;EACF,CAAC,CAAC;EAEF,OAAO;IACL,GAAGC,cAAc;IACjBd,KAAK;IACLR,OAAO;IACPD,OAAO,EAAEH,eAAe;IACxByB,iBAAiB;IACjBE,aAAa,EAAE,CAAAlC,qBAAA,GAAAD,aAAa,CAACmC,aAAa,aAA3BlC,qBAAA,CAA6BmC,OAAO,gBACjD/C,KAAA,CAAAgD,aAAA,CAAC5C,aAAa,MAAE,CAAC,GACf6C;EACN,CAAC;AACH,CAAC","ignoreList":[]}
@@ -0,0 +1,19 @@
1
+ import React, { createContext, useContext } from 'react';
2
+ const AppConfigContext = /*#__PURE__*/createContext(null);
3
+ export const AppConfigProvider = _ref => {
4
+ let {
5
+ appConfig,
6
+ children
7
+ } = _ref;
8
+ return /*#__PURE__*/React.createElement(AppConfigContext.Provider, {
9
+ value: appConfig
10
+ }, children);
11
+ };
12
+ export const useAppConfigContext = () => {
13
+ const context = useContext(AppConfigContext);
14
+ if (!context) {
15
+ throw new Error('useAppConfigContext must be used within AppConfigProvider');
16
+ }
17
+ return context;
18
+ };
19
+ //# sourceMappingURL=AppConfigContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","createContext","useContext","AppConfigContext","AppConfigProvider","_ref","appConfig","children","createElement","Provider","value","useAppConfigContext","context","Error"],"sources":["../../../src/providers/AppConfigContext.tsx"],"sourcesContent":["import React, { createContext, ReactNode, useContext } from 'react';\nimport { AppConfig } from '../types';\n\nconst AppConfigContext = createContext<AppConfig | null>(null);\n\nexport const AppConfigProvider = ({\n appConfig,\n children,\n}: {\n appConfig: AppConfig;\n children: ReactNode;\n}) => {\n return (\n <AppConfigContext.Provider value={appConfig}>\n {children}\n </AppConfigContext.Provider>\n );\n};\n\nexport const useAppConfigContext = () => {\n const context = useContext(AppConfigContext);\n if (!context) {\n throw new Error(\n 'useAppConfigContext must be used within AppConfigProvider',\n );\n }\n return context;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,aAAa,EAAaC,UAAU,QAAQ,OAAO;AAGnE,MAAMC,gBAAgB,gBAAGF,aAAa,CAAmB,IAAI,CAAC;AAE9D,OAAO,MAAMG,iBAAiB,GAAGC,IAAA,IAM3B;EAAA,IAN4B;IAChCC,SAAS;IACTC;EAIF,CAAC,GAAAF,IAAA;EACC,oBACEL,KAAA,CAAAQ,aAAA,CAACL,gBAAgB,CAACM,QAAQ;IAACC,KAAK,EAAEJ;EAAU,GACzCC,QACwB,CAAC;AAEhC,CAAC;AAED,OAAO,MAAMI,mBAAmB,GAAGA,CAAA,KAAM;EACvC,MAAMC,OAAO,GAAGV,UAAU,CAACC,gBAAgB,CAAC;EAC5C,IAAI,CAACS,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CACb,2DACF,CAAC;EACH;EACA,OAAOD,OAAO;AAChB,CAAC","ignoreList":[]}
@@ -0,0 +1,37 @@
1
+ import { ModalRenderer } from '../components/ModalRenderer';
2
+ import React, { createContext, useCallback, useContext, useState } from 'react';
3
+ const ModalContext = /*#__PURE__*/createContext(null);
4
+ export const ModalProvider = _ref => {
5
+ let {
6
+ children
7
+ } = _ref;
8
+ const [modal, setModal] = useState({
9
+ id: null
10
+ });
11
+ const openModal = useCallback((id, props) => {
12
+ setModal({
13
+ id,
14
+ props
15
+ });
16
+ }, []);
17
+ const closeModal = useCallback(() => {
18
+ setModal({
19
+ id: null
20
+ });
21
+ }, []);
22
+ return /*#__PURE__*/React.createElement(ModalContext.Provider, {
23
+ value: {
24
+ modal,
25
+ openModal,
26
+ closeModal
27
+ }
28
+ }, children, /*#__PURE__*/React.createElement(ModalRenderer, null));
29
+ };
30
+ export const useModalContext = () => {
31
+ const context = useContext(ModalContext);
32
+ if (!context) {
33
+ throw new Error('useModalContext must be used within ModalProvider');
34
+ }
35
+ return context;
36
+ };
37
+ //# sourceMappingURL=ModalContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ModalRenderer","React","createContext","useCallback","useContext","useState","ModalContext","ModalProvider","_ref","children","modal","setModal","id","openModal","props","closeModal","createElement","Provider","value","useModalContext","context","Error"],"sources":["../../../src/providers/ModalContext.tsx"],"sourcesContent":["import { ModalRenderer } from '../components/ModalRenderer';\nimport * as modals from '../components/modals';\n\nimport React, {\n createContext,\n useCallback,\n useContext,\n useState,\n ReactNode,\n} from 'react';\n\nexport type KnownModals = typeof modals;\nexport type KnownModalId = keyof KnownModals;\nexport type ModalId = KnownModalId | (string & {});\n\ninterface ModalState {\n id: ModalId | null;\n props?: Record<string, any>;\n}\n\ninterface ModalContextValue {\n modal: ModalState;\n openModal: (id: ModalId, props?: Record<string, any>) => void;\n closeModal: () => void;\n}\n\nconst ModalContext = createContext<ModalContextValue | null>(null);\n\nexport const ModalProvider = ({ children }: { children: ReactNode }) => {\n const [modal, setModal] = useState<ModalState>({ id: null });\n\n const openModal = useCallback((id: ModalId, props?: Record<string, any>) => {\n setModal({ id, props });\n }, []);\n\n const closeModal = useCallback(() => {\n setModal({ id: null });\n }, []);\n\n return (\n <ModalContext.Provider value={{ modal, openModal, closeModal }}>\n {children}\n <ModalRenderer />\n </ModalContext.Provider>\n );\n};\n\nexport const useModalContext = () => {\n const context = useContext(ModalContext);\n if (!context) {\n throw new Error('useModalContext must be used within ModalProvider');\n }\n return context;\n};\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,6BAA6B;AAG3D,OAAOC,KAAK,IACVC,aAAa,EACbC,WAAW,EACXC,UAAU,EACVC,QAAQ,QAEH,OAAO;AAiBd,MAAMC,YAAY,gBAAGJ,aAAa,CAA2B,IAAI,CAAC;AAElE,OAAO,MAAMK,aAAa,GAAGC,IAAA,IAA2C;EAAA,IAA1C;IAAEC;EAAkC,CAAC,GAAAD,IAAA;EACjE,MAAM,CAACE,KAAK,EAAEC,QAAQ,CAAC,GAAGN,QAAQ,CAAa;IAAEO,EAAE,EAAE;EAAK,CAAC,CAAC;EAE5D,MAAMC,SAAS,GAAGV,WAAW,CAAC,CAACS,EAAW,EAAEE,KAA2B,KAAK;IAC1EH,QAAQ,CAAC;MAAEC,EAAE;MAAEE;IAAM,CAAC,CAAC;EACzB,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,UAAU,GAAGZ,WAAW,CAAC,MAAM;IACnCQ,QAAQ,CAAC;MAAEC,EAAE,EAAE;IAAK,CAAC,CAAC;EACxB,CAAC,EAAE,EAAE,CAAC;EAEN,oBACEX,KAAA,CAAAe,aAAA,CAACV,YAAY,CAACW,QAAQ;IAACC,KAAK,EAAE;MAAER,KAAK;MAAEG,SAAS;MAAEE;IAAW;EAAE,GAC5DN,QAAQ,eACTR,KAAA,CAAAe,aAAA,CAAChB,aAAa,MAAE,CACK,CAAC;AAE5B,CAAC;AAED,OAAO,MAAMmB,eAAe,GAAGA,CAAA,KAAM;EACnC,MAAMC,OAAO,GAAGhB,UAAU,CAACE,YAAY,CAAC;EACxC,IAAI,CAACc,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CAAC,mDAAmD,CAAC;EACtE;EACA,OAAOD,OAAO;AAChB,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["React","createContext","useContext","PatternsWizardOverridesContext","undefined","PatternsWizardOverridesProvider","_ref","children","value","createElement","Provider","usePatternsWizardOverridesContext"],"sources":["../../../src/providers/PatternsWizardOverridesContext.tsx"],"sourcesContent":["import React, { createContext, useContext, ReactNode } from 'react';\nimport {\n IColumnValue,\n IMenuItem,\n PagePrimaryActionProps,\n PageSecondaryActionProps,\n} from '../types';\nimport { CollectionConfig } from '@wix/patterns';\n\nexport interface PatternsWizardOverridesContextProps {\n actions?: Record<string, (props: IMenuItem<any>) => void>;\n columns?: Record<string, (props: IColumnValue<any>) => void>;\n HeaderAddon?: React.FC;\n emptyState?: Record<string, () => void>;\n usePagePrimaryAction?: () => PagePrimaryActionProps;\n usePageSecondaryAction?: () => PageSecondaryActionProps;\n fetchData?: Record<string, CollectionConfig<any, any>['fetchData']>;\n}\n\nconst PatternsWizardOverridesContext = createContext<\n PatternsWizardOverridesContextProps | undefined\n>(undefined);\n\nexport const PatternsWizardOverridesProvider: React.FC<{\n children: ReactNode;\n value: PatternsWizardOverridesContextProps;\n}> = ({ children, value }) => {\n return (\n <PatternsWizardOverridesContext.Provider value={value}>\n {children}\n </PatternsWizardOverridesContext.Provider>\n );\n};\n\nexport const usePatternsWizardOverridesContext = ():\n | PatternsWizardOverridesContextProps\n | undefined => {\n return useContext(PatternsWizardOverridesContext);\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,aAAa,EAAEC,UAAU,QAAmB,OAAO;AAmBnE,MAAMC,8BAA8B,gBAAGF,aAAa,CAElDG,SAAS,CAAC;AAEZ,OAAO,MAAMC,+BAGX,GAAGC,IAAA,IAAyB;EAAA,IAAxB;IAAEC,QAAQ;IAAEC;EAAM,CAAC,GAAAF,IAAA;EACvB,oBACEN,KAAA,CAAAS,aAAA,CAACN,8BAA8B,CAACO,QAAQ;IAACF,KAAK,EAAEA;EAAM,GACnDD,QACsC,CAAC;AAE9C,CAAC;AAED,OAAO,MAAMI,iCAAiC,GAAGA,CAAA,KAEhC;EACf,OAAOT,UAAU,CAACC,8BAA8B,CAAC;AACnD,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","createContext","useContext","PatternsWizardOverridesContext","undefined","PatternsWizardOverridesProvider","_ref","children","value","createElement","Provider","usePatternsWizardOverridesContext"],"sources":["../../../src/providers/PatternsWizardOverridesContext.tsx"],"sourcesContent":["import React, { createContext, useContext, ReactNode } from 'react';\nimport {\n CustomComponentProps,\n IColumnValue,\n PagePrimaryActionProps,\n PageSecondaryActionProps,\n} from '../types';\nimport { CollectionConfig } from '@wix/patterns';\nimport { CustomActionParams, ResolvedAction } from '../utils/actions/types';\n\nexport interface PatternsWizardOverridesContextProps {\n actions?: Record<string, (props: CustomActionParams) => ResolvedAction>;\n columns?: Record<string, (props: IColumnValue<any>) => void>;\n modals?: Record<string, React.FC<any>>;\n HeaderAddon?: React.FC;\n emptyState?: Record<string, () => void>;\n usePagePrimaryAction?: () => PagePrimaryActionProps;\n usePageSecondaryAction?: () => PageSecondaryActionProps;\n fetchData?: Record<string, CollectionConfig<any, any>['fetchData']>;\n components?: Record<string, React.FC<CustomComponentProps>>;\n}\n\nconst PatternsWizardOverridesContext = createContext<\n PatternsWizardOverridesContextProps | undefined\n>(undefined);\n\nexport const PatternsWizardOverridesProvider: React.FC<{\n children: ReactNode;\n value: PatternsWizardOverridesContextProps;\n}> = ({ children, value }) => {\n return (\n <PatternsWizardOverridesContext.Provider value={value}>\n {children}\n </PatternsWizardOverridesContext.Provider>\n );\n};\n\nexport const usePatternsWizardOverridesContext = ():\n | PatternsWizardOverridesContextProps\n | undefined => {\n return useContext(PatternsWizardOverridesContext);\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,aAAa,EAAEC,UAAU,QAAmB,OAAO;AAsBnE,MAAMC,8BAA8B,gBAAGF,aAAa,CAElDG,SAAS,CAAC;AAEZ,OAAO,MAAMC,+BAGX,GAAGC,IAAA,IAAyB;EAAA,IAAxB;IAAEC,QAAQ;IAAEC;EAAM,CAAC,GAAAF,IAAA;EACvB,oBACEN,KAAA,CAAAS,aAAA,CAACN,8BAA8B,CAACO,QAAQ;IAACF,KAAK,EAAEA;EAAM,GACnDD,QACsC,CAAC;AAE9C,CAAC;AAED,OAAO,MAAMI,iCAAiC,GAAGA,CAAA,KAEhC;EACf,OAAOT,UAAU,CAACC,8BAA8B,CAAC;AACnD,CAAC","ignoreList":[]}
@@ -0,0 +1,14 @@
1
+ import React from 'react';
2
+ import { AppConfigProvider } from './AppConfigContext';
3
+ import { ModalProvider } from './ModalContext';
4
+ import { SchemaRegistryProvider } from './SchemaRegistryContext';
5
+ export const RootAppProvider = _ref => {
6
+ let {
7
+ appConfig,
8
+ children
9
+ } = _ref;
10
+ return /*#__PURE__*/React.createElement(AppConfigProvider, {
11
+ appConfig: appConfig
12
+ }, /*#__PURE__*/React.createElement(SchemaRegistryProvider, null, /*#__PURE__*/React.createElement(ModalProvider, null, children)));
13
+ };
14
+ //# sourceMappingURL=RootAppProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","AppConfigProvider","ModalProvider","SchemaRegistryProvider","RootAppProvider","_ref","appConfig","children","createElement"],"sources":["../../../src/providers/RootAppProvider.tsx"],"sourcesContent":["import React, { ReactNode } from 'react';\nimport { AppConfig } from '../types';\nimport { AppConfigProvider } from './AppConfigContext';\nimport { ModalProvider } from './ModalContext';\nimport { SchemaRegistryProvider } from './SchemaRegistryContext';\n\nexport const RootAppProvider = ({\n appConfig,\n children,\n}: {\n appConfig: AppConfig;\n children: ReactNode;\n}) => {\n return (\n <AppConfigProvider appConfig={appConfig}>\n <SchemaRegistryProvider>\n <ModalProvider>{children}</ModalProvider>\n </SchemaRegistryProvider>\n </AppConfigProvider>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAqB,OAAO;AAExC,SAASC,iBAAiB,QAAQ,oBAAoB;AACtD,SAASC,aAAa,QAAQ,gBAAgB;AAC9C,SAASC,sBAAsB,QAAQ,yBAAyB;AAEhE,OAAO,MAAMC,eAAe,GAAGC,IAAA,IAMzB;EAAA,IAN0B;IAC9BC,SAAS;IACTC;EAIF,CAAC,GAAAF,IAAA;EACC,oBACEL,KAAA,CAAAQ,aAAA,CAACP,iBAAiB;IAACK,SAAS,EAAEA;EAAU,gBACtCN,KAAA,CAAAQ,aAAA,CAACL,sBAAsB,qBACrBH,KAAA,CAAAQ,aAAA,CAACN,aAAa,QAAEK,QAAwB,CAClB,CACP,CAAC;AAExB,CAAC","ignoreList":[]}
@@ -1,5 +1,6 @@
1
1
  import React, { createContext, useContext, useEffect, useState } from 'react';
2
- import { getSchema } from '../collectionData/SchemaFactory';
2
+ import { getSchema } from '../dataSourceAdapters/factory';
3
+ import { useSchemaRegistry } from './SchemaRegistryContext';
3
4
  const SchemaContext = /*#__PURE__*/createContext(null);
4
5
  export const SchemaProvider = _ref => {
5
6
  let {
@@ -7,13 +8,56 @@ export const SchemaProvider = _ref => {
7
8
  entityTypeSource,
8
9
  children
9
10
  } = _ref;
11
+ const {
12
+ getSchema: getSchemaFromRegistry,
13
+ addSchema: addSchemaToRegistry
14
+ } = useSchemaRegistry();
10
15
  const [schema, setSchema] = useState(null);
16
+ const [isLoading, setIsLoading] = useState(false);
11
17
  useEffect(() => {
12
- getSchema(collectionId, entityTypeSource).then(setSchema).catch(error => {
18
+ const fetchReferencedSchemas = async referencedSchema => {
19
+ const referencedCollectionIds = new Set();
20
+ Object.values(referencedSchema.fields).forEach(field => {
21
+ if (field && field.type === 'REFERENCE' && field.referenceMetadata) {
22
+ const {
23
+ referencedCollectionId
24
+ } = field.referenceMetadata;
25
+ if (referencedCollectionId && !getSchemaFromRegistry(referencedCollectionId)) {
26
+ referencedCollectionIds.add(referencedCollectionId);
27
+ }
28
+ }
29
+ });
30
+ if (referencedCollectionIds.size === 0) {
31
+ return;
32
+ }
33
+ const fetchPromises = Array.from(referencedCollectionIds).map(async refCollectionId => {
34
+ try {
35
+ const refSchema = await getSchema(refCollectionId, entityTypeSource);
36
+ addSchemaToRegistry(refCollectionId, refSchema);
37
+ await fetchReferencedSchemas(refSchema);
38
+ } catch (error) {
39
+ console.error(`Error fetching referenced schema ${refCollectionId}:`, error);
40
+ }
41
+ });
42
+ await Promise.all(fetchPromises);
43
+ };
44
+ const cachedSchema = getSchemaFromRegistry(collectionId);
45
+ if (cachedSchema) {
46
+ setSchema(cachedSchema);
47
+ return;
48
+ }
49
+ setIsLoading(true);
50
+ getSchema(collectionId, entityTypeSource).then(async fetchedSchema => {
51
+ setSchema(fetchedSchema);
52
+ addSchemaToRegistry(collectionId, fetchedSchema);
53
+ await fetchReferencedSchemas(fetchedSchema);
54
+ }).catch(error => {
13
55
  console.error('Error fetching schema config:', error);
56
+ }).finally(() => {
57
+ setIsLoading(false);
14
58
  });
15
- }, [collectionId, entityTypeSource]);
16
- if (!schema) {
59
+ }, [collectionId, entityTypeSource, addSchemaToRegistry, getSchemaFromRegistry]);
60
+ if (!schema || isLoading) {
17
61
  return null;
18
62
  }
19
63
  return /*#__PURE__*/React.createElement(SchemaContext.Provider, {
@@ -1 +1 @@
1
- {"version":3,"names":["React","createContext","useContext","useEffect","useState","getSchema","SchemaContext","SchemaProvider","_ref","collectionId","entityTypeSource","children","schema","setSchema","then","catch","error","console","createElement","Provider","value","useSchema","context","Error"],"sources":["../../../src/providers/SchemaContext.tsx"],"sourcesContent":["import React, {\n createContext,\n useContext,\n useEffect,\n useState,\n ReactNode,\n} from 'react';\nimport { getSchema } from '../collectionData/SchemaFactory';\nimport { SchemaConfig } from '../types';\n\nconst SchemaContext = createContext<SchemaConfig | null>(null);\n\ninterface SchemaProviderProps {\n collectionId: string;\n entityTypeSource: string;\n children: ReactNode;\n}\n\nexport const SchemaProvider = ({\n collectionId,\n entityTypeSource,\n children,\n}: SchemaProviderProps) => {\n const [schema, setSchema] = useState<SchemaConfig | null>(null);\n\n useEffect(() => {\n getSchema(collectionId, entityTypeSource)\n .then(setSchema)\n .catch((error) => {\n console.error('Error fetching schema config:', error);\n });\n }, [collectionId, entityTypeSource]);\n\n if (!schema) {\n return null;\n }\n\n return (\n <SchemaContext.Provider value={schema}>{children}</SchemaContext.Provider>\n );\n};\n\nexport const useSchema = (): SchemaConfig => {\n const context = useContext(SchemaContext);\n if (!context) {\n throw new Error('useSchema must be used within a SchemaProvider');\n }\n return context;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IACVC,aAAa,EACbC,UAAU,EACVC,SAAS,EACTC,QAAQ,QAEH,OAAO;AACd,SAASC,SAAS,QAAQ,iCAAiC;AAG3D,MAAMC,aAAa,gBAAGL,aAAa,CAAsB,IAAI,CAAC;AAQ9D,OAAO,MAAMM,cAAc,GAAGC,IAAA,IAIH;EAAA,IAJI;IAC7BC,YAAY;IACZC,gBAAgB;IAChBC;EACmB,CAAC,GAAAH,IAAA;EACpB,MAAM,CAACI,MAAM,EAAEC,SAAS,CAAC,GAAGT,QAAQ,CAAsB,IAAI,CAAC;EAE/DD,SAAS,CAAC,MAAM;IACdE,SAAS,CAACI,YAAY,EAAEC,gBAAgB,CAAC,CACtCI,IAAI,CAACD,SAAS,CAAC,CACfE,KAAK,CAAEC,KAAK,IAAK;MAChBC,OAAO,CAACD,KAAK,CAAC,+BAA+B,EAAEA,KAAK,CAAC;IACvD,CAAC,CAAC;EACN,CAAC,EAAE,CAACP,YAAY,EAAEC,gBAAgB,CAAC,CAAC;EAEpC,IAAI,CAACE,MAAM,EAAE;IACX,OAAO,IAAI;EACb;EAEA,oBACEZ,KAAA,CAAAkB,aAAA,CAACZ,aAAa,CAACa,QAAQ;IAACC,KAAK,EAAER;EAAO,GAAED,QAAiC,CAAC;AAE9E,CAAC;AAED,OAAO,MAAMU,SAAS,GAAGA,CAAA,KAAoB;EAC3C,MAAMC,OAAO,GAAGpB,UAAU,CAACI,aAAa,CAAC;EACzC,IAAI,CAACgB,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CAAC,gDAAgD,CAAC;EACnE;EACA,OAAOD,OAAO;AAChB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","createContext","useContext","useEffect","useState","getSchema","useSchemaRegistry","SchemaContext","SchemaProvider","_ref","collectionId","entityTypeSource","children","getSchemaFromRegistry","addSchema","addSchemaToRegistry","schema","setSchema","isLoading","setIsLoading","fetchReferencedSchemas","referencedSchema","referencedCollectionIds","Set","Object","values","fields","forEach","field","type","referenceMetadata","referencedCollectionId","add","size","fetchPromises","Array","from","map","refCollectionId","refSchema","error","console","Promise","all","cachedSchema","then","fetchedSchema","catch","finally","createElement","Provider","value","useSchema","context","Error"],"sources":["../../../src/providers/SchemaContext.tsx"],"sourcesContent":["import React, {\n createContext,\n useContext,\n useEffect,\n useState,\n ReactNode,\n} from 'react';\n\nimport { SchemaConfig } from '../types';\nimport { getSchema } from '../dataSourceAdapters/factory';\nimport { useSchemaRegistry } from './SchemaRegistryContext';\n\nconst SchemaContext = createContext<SchemaConfig | null>(null);\n\ninterface SchemaProviderProps {\n collectionId: string;\n entityTypeSource: string;\n children: ReactNode;\n}\n\nexport const SchemaProvider = ({\n collectionId,\n entityTypeSource,\n children,\n}: SchemaProviderProps) => {\n const { getSchema: getSchemaFromRegistry, addSchema: addSchemaToRegistry } =\n useSchemaRegistry();\n const [schema, setSchema] = useState<SchemaConfig | null>(null);\n const [isLoading, setIsLoading] = useState<boolean>(false);\n\n useEffect(() => {\n const fetchReferencedSchemas = async (referencedSchema: SchemaConfig) => {\n const referencedCollectionIds = new Set<string>();\n\n Object.values(referencedSchema.fields).forEach((field) => {\n if (field && field.type === 'REFERENCE' && field.referenceMetadata) {\n const { referencedCollectionId } = field.referenceMetadata;\n if (\n referencedCollectionId &&\n !getSchemaFromRegistry(referencedCollectionId)\n ) {\n referencedCollectionIds.add(referencedCollectionId);\n }\n }\n });\n\n if (referencedCollectionIds.size === 0) {\n return;\n }\n\n const fetchPromises = Array.from(referencedCollectionIds).map(\n async (refCollectionId) => {\n try {\n const refSchema = await getSchema(\n refCollectionId,\n entityTypeSource,\n );\n\n addSchemaToRegistry(refCollectionId, refSchema);\n\n await fetchReferencedSchemas(refSchema);\n } catch (error) {\n console.error(\n `Error fetching referenced schema ${refCollectionId}:`,\n error,\n );\n }\n },\n );\n\n await Promise.all(fetchPromises);\n };\n\n const cachedSchema = getSchemaFromRegistry(collectionId);\n if (cachedSchema) {\n setSchema(cachedSchema);\n return;\n }\n\n setIsLoading(true);\n getSchema(collectionId, entityTypeSource)\n .then(async (fetchedSchema) => {\n setSchema(fetchedSchema);\n addSchemaToRegistry(collectionId, fetchedSchema);\n\n await fetchReferencedSchemas(fetchedSchema);\n })\n .catch((error) => {\n console.error('Error fetching schema config:', error);\n })\n .finally(() => {\n setIsLoading(false);\n });\n }, [\n collectionId,\n entityTypeSource,\n addSchemaToRegistry,\n getSchemaFromRegistry,\n ]);\n\n if (!schema || isLoading) {\n return null;\n }\n\n return (\n <SchemaContext.Provider value={schema}>{children}</SchemaContext.Provider>\n );\n};\n\nexport const useSchema = (): SchemaConfig => {\n const context = useContext(SchemaContext);\n if (!context) {\n throw new Error('useSchema must be used within a SchemaProvider');\n }\n return context;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IACVC,aAAa,EACbC,UAAU,EACVC,SAAS,EACTC,QAAQ,QAEH,OAAO;AAGd,SAASC,SAAS,QAAQ,+BAA+B;AACzD,SAASC,iBAAiB,QAAQ,yBAAyB;AAE3D,MAAMC,aAAa,gBAAGN,aAAa,CAAsB,IAAI,CAAC;AAQ9D,OAAO,MAAMO,cAAc,GAAGC,IAAA,IAIH;EAAA,IAJI;IAC7BC,YAAY;IACZC,gBAAgB;IAChBC;EACmB,CAAC,GAAAH,IAAA;EACpB,MAAM;IAAEJ,SAAS,EAAEQ,qBAAqB;IAAEC,SAAS,EAAEC;EAAoB,CAAC,GACxET,iBAAiB,CAAC,CAAC;EACrB,MAAM,CAACU,MAAM,EAAEC,SAAS,CAAC,GAAGb,QAAQ,CAAsB,IAAI,CAAC;EAC/D,MAAM,CAACc,SAAS,EAAEC,YAAY,CAAC,GAAGf,QAAQ,CAAU,KAAK,CAAC;EAE1DD,SAAS,CAAC,MAAM;IACd,MAAMiB,sBAAsB,GAAG,MAAOC,gBAA8B,IAAK;MACvE,MAAMC,uBAAuB,GAAG,IAAIC,GAAG,CAAS,CAAC;MAEjDC,MAAM,CAACC,MAAM,CAACJ,gBAAgB,CAACK,MAAM,CAAC,CAACC,OAAO,CAAEC,KAAK,IAAK;QACxD,IAAIA,KAAK,IAAIA,KAAK,CAACC,IAAI,KAAK,WAAW,IAAID,KAAK,CAACE,iBAAiB,EAAE;UAClE,MAAM;YAAEC;UAAuB,CAAC,GAAGH,KAAK,CAACE,iBAAiB;UAC1D,IACEC,sBAAsB,IACtB,CAAClB,qBAAqB,CAACkB,sBAAsB,CAAC,EAC9C;YACAT,uBAAuB,CAACU,GAAG,CAACD,sBAAsB,CAAC;UACrD;QACF;MACF,CAAC,CAAC;MAEF,IAAIT,uBAAuB,CAACW,IAAI,KAAK,CAAC,EAAE;QACtC;MACF;MAEA,MAAMC,aAAa,GAAGC,KAAK,CAACC,IAAI,CAACd,uBAAuB,CAAC,CAACe,GAAG,CAC3D,MAAOC,eAAe,IAAK;QACzB,IAAI;UACF,MAAMC,SAAS,GAAG,MAAMlC,SAAS,CAC/BiC,eAAe,EACf3B,gBACF,CAAC;UAEDI,mBAAmB,CAACuB,eAAe,EAAEC,SAAS,CAAC;UAE/C,MAAMnB,sBAAsB,CAACmB,SAAS,CAAC;QACzC,CAAC,CAAC,OAAOC,KAAK,EAAE;UACdC,OAAO,CAACD,KAAK,CACX,oCAAoCF,eAAe,GAAG,EACtDE,KACF,CAAC;QACH;MACF,CACF,CAAC;MAED,MAAME,OAAO,CAACC,GAAG,CAACT,aAAa,CAAC;IAClC,CAAC;IAED,MAAMU,YAAY,GAAG/B,qBAAqB,CAACH,YAAY,CAAC;IACxD,IAAIkC,YAAY,EAAE;MAChB3B,SAAS,CAAC2B,YAAY,CAAC;MACvB;IACF;IAEAzB,YAAY,CAAC,IAAI,CAAC;IAClBd,SAAS,CAACK,YAAY,EAAEC,gBAAgB,CAAC,CACtCkC,IAAI,CAAC,MAAOC,aAAa,IAAK;MAC7B7B,SAAS,CAAC6B,aAAa,CAAC;MACxB/B,mBAAmB,CAACL,YAAY,EAAEoC,aAAa,CAAC;MAEhD,MAAM1B,sBAAsB,CAAC0B,aAAa,CAAC;IAC7C,CAAC,CAAC,CACDC,KAAK,CAAEP,KAAK,IAAK;MAChBC,OAAO,CAACD,KAAK,CAAC,+BAA+B,EAAEA,KAAK,CAAC;IACvD,CAAC,CAAC,CACDQ,OAAO,CAAC,MAAM;MACb7B,YAAY,CAAC,KAAK,CAAC;IACrB,CAAC,CAAC;EACN,CAAC,EAAE,CACDT,YAAY,EACZC,gBAAgB,EAChBI,mBAAmB,EACnBF,qBAAqB,CACtB,CAAC;EAEF,IAAI,CAACG,MAAM,IAAIE,SAAS,EAAE;IACxB,OAAO,IAAI;EACb;EAEA,oBACElB,KAAA,CAAAiD,aAAA,CAAC1C,aAAa,CAAC2C,QAAQ;IAACC,KAAK,EAAEnC;EAAO,GAAEJ,QAAiC,CAAC;AAE9E,CAAC;AAED,OAAO,MAAMwC,SAAS,GAAGA,CAAA,KAAoB;EAC3C,MAAMC,OAAO,GAAGnD,UAAU,CAACK,aAAa,CAAC;EACzC,IAAI,CAAC8C,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CAAC,gDAAgD,CAAC;EACnE;EACA,OAAOD,OAAO;AAChB,CAAC","ignoreList":[]}
@@ -0,0 +1,35 @@
1
+ import React, { createContext, useContext, useState, useCallback, useMemo } from 'react';
2
+ const SchemaRegistryContext = /*#__PURE__*/createContext({
3
+ getSchema: () => undefined,
4
+ addSchema: () => {}
5
+ });
6
+ export const SchemaRegistryProvider = _ref => {
7
+ let {
8
+ children
9
+ } = _ref;
10
+ const [registry, setRegistry] = useState({});
11
+ const addSchema = useCallback((collectionId, schema) => {
12
+ setRegistry(prevRegistry => ({
13
+ ...prevRegistry,
14
+ [collectionId]: schema
15
+ }));
16
+ }, []);
17
+ const getSchema = useCallback(collectionId => {
18
+ return registry == null ? void 0 : registry[collectionId];
19
+ }, [registry]);
20
+ const contextValue = useMemo(() => ({
21
+ getSchema,
22
+ addSchema
23
+ }), [getSchema, addSchema]);
24
+ return /*#__PURE__*/React.createElement(SchemaRegistryContext.Provider, {
25
+ value: contextValue
26
+ }, children);
27
+ };
28
+ export const useSchemaRegistry = () => {
29
+ const context = useContext(SchemaRegistryContext);
30
+ if (!context) {
31
+ throw new Error('useSchemaRegistry must be used within a UseRegistryProvider');
32
+ }
33
+ return context;
34
+ };
35
+ //# sourceMappingURL=SchemaRegistryContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","createContext","useContext","useState","useCallback","useMemo","SchemaRegistryContext","getSchema","undefined","addSchema","SchemaRegistryProvider","_ref","children","registry","setRegistry","collectionId","schema","prevRegistry","contextValue","createElement","Provider","value","useSchemaRegistry","context","Error"],"sources":["../../../src/providers/SchemaRegistryContext.tsx"],"sourcesContent":["import React, {\n createContext,\n useContext,\n useState,\n ReactNode,\n useCallback,\n useMemo,\n} from 'react';\n\nimport { SchemaConfig } from '../types';\n\nexport interface SchemaRegistryContextValue {\n getSchema: (collectionId: string) => SchemaConfig | undefined;\n addSchema: (collectionId: string, schema: SchemaConfig) => void;\n}\n\nexport type SchemaRegistry = Record<string, SchemaConfig>;\n\nconst SchemaRegistryContext = createContext<SchemaRegistryContextValue>({\n getSchema: () => undefined,\n addSchema: () => {},\n});\n\nexport interface SchemaRegistryProviderProps {\n children: ReactNode;\n}\n\nexport const SchemaRegistryProvider = ({\n children,\n}: SchemaRegistryProviderProps) => {\n const [registry, setRegistry] = useState<SchemaRegistry>({});\n\n const addSchema = useCallback(\n (collectionId: string, schema: SchemaConfig) => {\n setRegistry((prevRegistry) => ({\n ...prevRegistry,\n [collectionId]: schema,\n }));\n },\n [],\n );\n\n const getSchema = useCallback(\n (collectionId: string) => {\n return registry?.[collectionId];\n },\n [registry],\n );\n\n const contextValue = useMemo(\n () => ({\n getSchema,\n addSchema,\n }),\n [getSchema, addSchema],\n );\n\n return (\n <SchemaRegistryContext.Provider value={contextValue}>\n {children}\n </SchemaRegistryContext.Provider>\n );\n};\n\nexport const useSchemaRegistry = (): SchemaRegistryContextValue => {\n const context = useContext(SchemaRegistryContext);\n if (!context) {\n throw new Error(\n 'useSchemaRegistry must be used within a UseRegistryProvider',\n );\n }\n return context;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IACVC,aAAa,EACbC,UAAU,EACVC,QAAQ,EAERC,WAAW,EACXC,OAAO,QACF,OAAO;AAWd,MAAMC,qBAAqB,gBAAGL,aAAa,CAA6B;EACtEM,SAAS,EAAEA,CAAA,KAAMC,SAAS;EAC1BC,SAAS,EAAEA,CAAA,KAAM,CAAC;AACpB,CAAC,CAAC;AAMF,OAAO,MAAMC,sBAAsB,GAAGC,IAAA,IAEH;EAAA,IAFI;IACrCC;EAC2B,CAAC,GAAAD,IAAA;EAC5B,MAAM,CAACE,QAAQ,EAAEC,WAAW,CAAC,GAAGX,QAAQ,CAAiB,CAAC,CAAC,CAAC;EAE5D,MAAMM,SAAS,GAAGL,WAAW,CAC3B,CAACW,YAAoB,EAAEC,MAAoB,KAAK;IAC9CF,WAAW,CAAEG,YAAY,KAAM;MAC7B,GAAGA,YAAY;MACf,CAACF,YAAY,GAAGC;IAClB,CAAC,CAAC,CAAC;EACL,CAAC,EACD,EACF,CAAC;EAED,MAAMT,SAAS,GAAGH,WAAW,CAC1BW,YAAoB,IAAK;IACxB,OAAOF,QAAQ,oBAARA,QAAQ,CAAGE,YAAY,CAAC;EACjC,CAAC,EACD,CAACF,QAAQ,CACX,CAAC;EAED,MAAMK,YAAY,GAAGb,OAAO,CAC1B,OAAO;IACLE,SAAS;IACTE;EACF,CAAC,CAAC,EACF,CAACF,SAAS,EAAEE,SAAS,CACvB,CAAC;EAED,oBACET,KAAA,CAAAmB,aAAA,CAACb,qBAAqB,CAACc,QAAQ;IAACC,KAAK,EAAEH;EAAa,GACjDN,QAC6B,CAAC;AAErC,CAAC;AAED,OAAO,MAAMU,iBAAiB,GAAGA,CAAA,KAAkC;EACjE,MAAMC,OAAO,GAAGrB,UAAU,CAACI,qBAAqB,CAAC;EACjD,IAAI,CAACiB,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CACb,6DACF,CAAC;EACH;EACA,OAAOD,OAAO;AAChB,CAAC","ignoreList":[]}
@@ -1,3 +1,6 @@
1
- export * from './CollectionDataContext';
1
+ export * from './SchemaContext';
2
2
  export * from './PatternsWizardOverridesContext';
3
+ export * from './ModalContext';
4
+ export * from './SchemaRegistryContext';
5
+ export * from './AppConfigContext';
3
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["../../../src/providers/index.ts"],"sourcesContent":["export * from './CollectionDataContext';\nexport * from './PatternsWizardOverridesContext';\n"],"mappings":"AAAA,cAAc,yBAAyB;AACvC,cAAc,kCAAkC","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["../../../src/providers/index.ts"],"sourcesContent":["export * from './SchemaContext';\nexport * from './PatternsWizardOverridesContext';\nexport * from './ModalContext';\nexport * from './SchemaRegistryContext';\nexport * from './AppConfigContext';\n"],"mappings":"AAAA,cAAc,iBAAiB;AAC/B,cAAc,kCAAkC;AAChD,cAAc,gBAAgB;AAC9B,cAAc,yBAAyB;AACvC,cAAc,oBAAoB","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';\n\nexport interface CollectionPageConfig {\n title: { text: string; hideTotal?: boolean };\n subtitle?: {\n text: string;\n learnMore?: {\n url: string;\n label?: string;\n };\n };\n components: ComponentConfig[];\n}\n\ninterface ComponentConfig {\n type: 'Table' | 'Grid' | 'TableGridSwitch';\n table?: TableConfig;\n grid?: GridConfig;\n}\n\nexport interface CollectionConfig {\n collectionId: string;\n entityTypeSource: 'cms';\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 search?: { shown?: boolean };\n toolbarTitle?: ToolbarTitle;\n actions?: Action[];\n emptyState?: EmptyState;\n filters?: FiltersConfig;\n}\n\nexport interface TableConfig extends BaseCollectionComponentConfig {\n columns: Column[];\n customColumns?: {\n enabled: boolean;\n };\n}\n\nexport interface GridConfig extends BaseCollectionComponentConfig {\n item: GridItem;\n}\n\nexport interface ToolbarTitle {\n title: string;\n subtitle?: {\n text: string;\n info?: {\n content: {\n text: string;\n link?: {\n url: string;\n label: string;\n };\n };\n };\n learnMore?: {\n url: string;\n label?: string;\n };\n };\n showTotal?: boolean;\n itemsLimit?: number;\n}\n\nexport interface Column {\n id: string;\n name: string;\n width?: string;\n sortable?: boolean;\n defaultSortOrder?: 'asc' | 'desc';\n sortMode?: 'asc' | 'desc';\n defaultHidden?: boolean;\n hiddenFromCustomColumnsSelection?: boolean;\n hideable?: boolean;\n reorderDisabled?: boolean;\n}\n\nexport interface GridItem {\n title: string;\n subtitle?: string;\n image?: string;\n preset?: 'full' | 'title' | 'empty';\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 EnumFilterOptionType =\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 maxToolbarFilters?: CollectionToolbarFiltersProps['inline'];\n panelTitle?: string;\n}\n\nexport interface DateFilterConfig {\n mode?: DateRangeFilterMode;\n dateRangeOptions?: DateRangeOptions;\n filterByTime?: boolean;\n}\n\nexport interface NumberFilterConfig {\n min?: number;\n max?: number;\n decimal?: boolean;\n}\n\nexport interface BooleanFilterConfig {\n checkedLabel?: string;\n uncheckedLabel?: string;\n}\n\nexport interface EnumFilterConfig {\n options: FilterOption[];\n selectionMode: FilterSelectionMode;\n optionType?: EnumFilterOptionType;\n}\n\nexport interface Filter {\n fieldId: string;\n displayName?: string;\n accordionItemProps?: {\n initiallyOpen?: boolean;\n sectionTitle?: string;\n };\n toolbarTagProps?: {\n label: string;\n };\n componentType?: ComponentTypeEnum;\n numberConfig?: NumberFilterConfig;\n dateConfig?: DateFilterConfig;\n booleanConfig?: BooleanFilterConfig;\n enumConfig?: EnumFilterConfig;\n}\n\ninterface Action {\n id: string;\n text: string;\n icon: string;\n}\n"],"mappings":"AA6HA,WAAYA,iBAAiB,0BAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAA,OAAjBA,iBAAiB;AAAA","ignoreList":[]}
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 { ActionCellConfig, BulkActionsConfig } 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 components: ComponentConfig[];\n}\n\nexport interface ComponentConfig {\n type: 'Table' | 'Grid' | 'TableGridSwitch';\n table?: TableConfig;\n grid?: GridConfig;\n}\n\nexport interface CollectionConfig extends BaseCollectionConfig {\n fetchData?: FetchData;\n limit?: number;\n persistQueryToUrl?: boolean;\n disableAutoSelectAllCount?: boolean;\n selectionConsistencyMode?: 'preserve' | 'clear';\n}\n\nexport interface BaseCollectionComponentConfig {\n collection: CollectionConfig;\n entityPageId?: string;\n search?: { shown?: boolean };\n toolbarTitle?: ToolbarTitle;\n actionCell?: ActionCellConfig;\n emptyState?: EmptyState;\n filters?: FiltersConfig;\n bulkActionToolbar?: BulkActionsConfig;\n}\n\nexport interface TableConfig extends BaseCollectionComponentConfig {\n columns: Column[];\n customColumns?: {\n enabled: boolean;\n };\n}\n\nexport interface GridConfig extends BaseCollectionComponentConfig {\n item: GridItem;\n}\n\nexport interface ToolbarTitle {\n title: string;\n subtitle?: {\n text: string;\n info?: {\n content: {\n text: string;\n link?: {\n url: string;\n label: string;\n };\n };\n };\n learnMore?: {\n url: string;\n label?: string;\n };\n };\n showTotal?: boolean;\n itemsLimit?: number;\n}\n\nexport interface Column {\n id: string;\n name: string;\n width?: string;\n sortable?: boolean;\n defaultSortOrder?: 'asc' | 'desc';\n sortMode?: 'asc' | 'desc';\n defaultHidden?: boolean;\n hiddenFromCustomColumnsSelection?: boolean;\n hideable?: boolean;\n reorderDisabled?: boolean;\n}\n\nexport interface GridItem {\n titleFieldId: string;\n subtitleFieldId?: string;\n imageFieldId?: string;\n cardContentMode?: 'full' | 'title' | 'empty'; // Footer is not supported in auto-patterns\n imagePlacement?: 'top' | 'side';\n}\n\nexport interface EmptyState {\n title?: string;\n subtitle?: string;\n image?: {\n id: string;\n };\n addNewCta?: {\n id?: string;\n text?: string;\n };\n customCta?: {\n id?: string;\n };\n}\n\ninterface FetchData {\n id: string;\n}\n\nexport interface FilterOption {\n value: string;\n label: string;\n}\n\nexport type FilterSelectionMode = 'single' | 'multiple';\nexport type FilterOptionType =\n | 'checkbox'\n | 'inlineCheckbox'\n | 'radio'\n | 'select';\n\nexport enum ComponentTypeEnum {\n SINGLE = 'single',\n MULTI_SELECT = 'multi-select',\n RADIO_GROUP = 'radio-group',\n NUMBER = 'number',\n DATE_RANGE = 'date-range',\n}\n\nexport interface FiltersConfig {\n items: Filter[];\n maxInlineFilters?: CollectionToolbarFiltersProps['inline'];\n panelTitle?: string;\n}\n\nexport interface BaseOptionsFilterConfig {\n selectionMode: FilterSelectionMode;\n}\n\nexport interface DateFilterConfig {\n mode?: DateRangeFilterMode;\n presets?: DateRangeOptions;\n includeTime?: boolean;\n}\n\nexport interface NumberFilterConfig {\n min?: number;\n max?: number;\n allowedDecimals?: boolean;\n}\n\nexport interface BooleanFilterConfig {\n trueLabel?: string;\n falseLabel?: string;\n}\n\nexport interface EnumFilterConfig extends BaseOptionsFilterConfig {\n options: FilterOption[];\n optionType?: FilterOptionType;\n}\n\nexport interface DynamicOptionsFilterConfig extends BaseOptionsFilterConfig {}\n\nexport interface Filter {\n id: string;\n fieldId: string;\n displayName?: string;\n sectionTitle?: string;\n openByDefault?: boolean;\n tagLabel?: string;\n numberConfig?: NumberFilterConfig;\n dateConfig?: DateFilterConfig;\n booleanConfig?: BooleanFilterConfig;\n enumConfig?: EnumFilterConfig;\n dynamicOptionsConfig?: DynamicOptionsFilterConfig;\n}\n"],"mappings":"AAkIA,WAAYA,iBAAiB,0BAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAA,OAAjBA,iBAAiB;AAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["../../../src/types/EntityPageConfig.ts"],"sourcesContent":["export interface EntityPageConfig {\n title?: { text: string };\n subtitle?: {\n text: string;\n learnMore?: {\n url: string;\n label?: string;\n };\n };\n visibleFieldIds: string[];\n collectionId: string;\n entityTypeSource: string;\n collectionPagePath: string;\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["../../../src/types/EntityPageConfig.ts"],"sourcesContent":["import { FieldValues, UseFormReturn } from '@wix/patterns/form';\n\nexport interface EntityPageConfig {\n route: {\n path: string;\n params: {\n id: string;\n };\n };\n title?: {\n text: string;\n };\n subtitle?: {\n text: string;\n learnMore?: {\n url: string;\n label?: string;\n };\n };\n collectionId: string;\n entityTypeSource: string;\n parentPageId?: string;\n layout?: {\n main: CardLayout[];\n sidebar?: CardLayout[];\n };\n}\n\nexport interface CardLayout {\n type: 'card';\n card: {\n title: {\n text: string;\n };\n subtitle?: {\n text: string;\n };\n children: LayoutContent[];\n };\n}\n\nexport type LayoutContent =\n | FieldContent\n | ContainerContent\n | ComponentItemContent;\n\ninterface FieldContent {\n type: 'field';\n field: {\n span?: number;\n fieldId: string;\n };\n}\n\ninterface ContainerContent {\n type: 'container';\n container: {\n span?: number;\n children: LayoutContent[];\n };\n}\n\ninterface ComponentItemContent {\n type: 'component';\n component: {\n span?: number;\n componentId: string;\n };\n}\n\nexport interface CustomComponentProps {\n entity?: Record<string, any>;\n form: UseFormReturn<FieldValues, any, undefined>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=actionCell.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["../../../../src/types/actions/actionCell.ts"],"sourcesContent":["import {\n BaseActionParams,\n CustomActionModalProps,\n ResolvedAction,\n} from '../../exports/types';\nimport {\n CustomActionConfig,\n CustomModalActionConfig,\n DeleteActionConfig,\n UpdateActionConfig,\n} from './base';\n\nexport type ActionCellItemConfig =\n | UpdateActionConfig\n | CustomModalActionConfig\n | CustomActionConfig\n | DeleteActionConfig;\n\nexport interface ActionCellPrimaryAction {\n item: ActionCellItemConfig;\n}\n\nexport interface ActionCellSecondaryActions {\n items: ActionCellItemConfig[];\n}\n\nexport interface ActionCellConfig {\n primaryAction?: ActionCellPrimaryAction;\n secondaryActions?: ActionCellSecondaryActions;\n}\n\nexport interface ActionCellActionParams {\n item: any;\n}\n\nexport interface CustomActionCellActionParams extends BaseActionParams {\n actionParams: ActionCellActionParams;\n}\nexport type CustomActionCellActionResolver = (\n params: CustomActionCellActionParams,\n) => ResolvedAction;\n\nexport interface CustomActionCellActionModalProps\n extends CustomActionModalProps {\n actionParams: ActionCellActionParams;\n}\n"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["../../../../src/types/actions/base.ts"],"sourcesContent":["export type BaseActionItemConfig = {\n id: string;\n label?: string;\n icon?: string;\n};\n\nexport interface Feedback {\n successToast?: { text: string };\n errorToast?: { text: string };\n}\n\nexport interface BaseActionModal {\n title?: { text: string };\n actions?: {\n submit?: { text: string };\n cancel?: { text: string };\n };\n feedback?: Feedback;\n}\n\nexport interface ActionModalField {\n id: string;\n label?: string;\n}\n\nexport interface DeleteActionModal extends BaseActionModal {\n description?: { text: string };\n}\n\nexport interface BulkDeleteActionModal extends DeleteActionModal {}\n\nexport type BulkDeleteAction =\n | {\n mode: 'modal';\n modal: BulkDeleteActionModal;\n custom?: never;\n }\n | {\n mode: 'custom';\n custom: CustomAction;\n modal?: never;\n };\n\nexport type DeleteAction = {\n mode: 'modal';\n modal: DeleteActionModal;\n};\n\nexport interface BaseActionPage {\n id: string;\n}\n\nexport type CustomAction = {};\n\nexport type CustomModalAction = {\n id: string;\n};\n\nexport interface UpdateActionModal extends BaseActionModal {\n fields: ActionModalField[];\n}\n\nexport interface UpdateActionPage extends BaseActionPage {}\n\nexport type UpdateAction =\n | {\n mode: 'modal';\n modal: UpdateActionModal;\n page?: never;\n }\n | {\n mode: 'page';\n page: UpdateActionPage;\n modal?: never;\n };\n\nexport type UpdateActionConfig = BaseActionItemConfig & {\n type: 'update';\n update: UpdateAction;\n};\n\nexport type DeleteActionConfig = BaseActionItemConfig & {\n type: 'delete';\n delete: DeleteAction;\n};\n\nexport type BulkDeleteActionConfig = BaseActionItemConfig & {\n type: 'bulkDelete';\n bulkDelete: BulkDeleteAction;\n};\n\nexport type CustomModalActionConfig = BaseActionItemConfig & {\n type: 'customModal';\n customModal: CustomModalAction;\n};\n\nexport type CustomActionConfig = BaseActionItemConfig & {\n type: 'custom';\n custom: CustomAction;\n};\n"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=bulkActions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["../../../../src/types/actions/bulkActions.ts"],"sourcesContent":["import {\n BaseActionParams,\n CustomActionModalProps,\n ResolvedAction,\n} from '../../exports/types';\nimport {\n BulkDeleteActionConfig,\n CustomActionConfig,\n CustomModalActionConfig,\n} from './base';\n\nexport type BulkActionItemConfig =\n | BulkDeleteActionConfig\n | CustomModalActionConfig\n | CustomActionConfig;\n\nexport interface BulkActionsPrimaryActions {\n items: BulkActionItemConfig[];\n}\n\nexport interface BulkActionSection {\n items: BulkActionItemConfig[];\n}\n\nexport interface BulkActionsSecondaryActions {\n sections: BulkActionSection[];\n}\n\nexport interface BulkActionsConfig {\n primaryActions?: BulkActionsPrimaryActions;\n secondaryActions?: BulkActionsSecondaryActions;\n}\n\nexport interface BulkActionsActionParams {\n selectedValues: any[];\n total: number;\n}\n\nexport interface CustomBulkActionsActionParams extends BaseActionParams {\n actionParams: BulkActionsActionParams;\n}\nexport type CustomBulkActionsActionResolver = (\n params: CustomBulkActionsActionParams,\n) => ResolvedAction;\n\nexport interface CustomBulkActionsActionModalProps\n extends CustomActionModalProps {\n actionParams: CustomBulkActionsActionParams;\n}\n"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ export * from './base';
2
+ export * from './actionCell';
3
+ export * from './bulkActions';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["../../../../src/types/actions/index.ts"],"sourcesContent":["export * from './base';\nexport * from './actionCell';\nexport * from './bulkActions';\n"],"mappings":"AAAA,cAAc,QAAQ;AACtB,cAAc,cAAc;AAC5B,cAAc,eAAe","ignoreList":[]}
@@ -1,4 +1,6 @@
1
1
  export * from './types';
2
2
  export * from './CollectionPageConfig';
3
3
  export * from './EntityPageConfig';
4
+ export * from './actions';
5
+ export * from '../utils/actions/types';
4
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["../../../src/types/index.ts"],"sourcesContent":["export * from './types';\nexport * from './CollectionPageConfig';\nexport * from './EntityPageConfig';\n"],"mappings":"AAAA,cAAc,SAAS;AACvB,cAAc,wBAAwB;AACtC,cAAc,oBAAoB","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["../../../src/types/index.ts"],"sourcesContent":["export * from './types';\nexport * from './CollectionPageConfig';\nexport * from './EntityPageConfig';\nexport * from './actions';\nexport * from '../utils/actions/types';\n"],"mappings":"AAAA,cAAc,SAAS;AACvB,cAAc,wBAAwB;AACtC,cAAc,oBAAoB;AAClC,cAAc,WAAW;AACzB,cAAc,wBAAwB","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["../../../src/types/types.ts"],"sourcesContent":["import { PrimaryActions, SecondaryActions } from '@wix/patterns';\nimport { EntityPageConfig } from './EntityPageConfig';\nimport { CollectionPageConfig } from './CollectionPageConfig';\n\nexport type PatternsFieldType =\n | 'SHORT_TEXT'\n | 'LONG_TEXT'\n | 'NUMBER'\n | 'BOOLEAN'\n | 'DATE'\n | 'DATETIME'\n | 'URL'\n | 'ARRAY';\n\nexport interface AppConfig {\n pages: PageConfig[];\n}\n\nexport interface PageConfig {\n id: string;\n routePath: string;\n type: 'collectionPage' | 'entityPage';\n collectionPage?: CollectionPageConfig;\n entityPage?: EntityPageConfig;\n}\n\nexport type EntityProps = { [key: string]: any };\n\nexport interface IMenuItem<T extends EntityProps = {}> {\n item: T;\n}\nexport interface IColumnValue<T> {\n value: T;\n}\n\nexport type QueryOperator =\n | 'CONTAINS'\n | 'ENDS_WITH'\n | 'EQ'\n | 'EXISTS'\n | 'GT'\n | 'GTE'\n | 'HAS_ALL'\n | 'HAS_SOME'\n | 'LT'\n | 'LTE'\n | 'NE'\n | 'STARTS_WITH'\n | 'URLIZED';\n\nexport interface Field {\n id: string;\n displayName: string;\n type: PatternsFieldType;\n capabilities: {\n supportedQueryOperators: QueryOperator[];\n sortable: boolean;\n };\n}\n\nexport interface SchemaConfig {\n fields: Record<string, Field | undefined>;\n displayField: string;\n actions: {\n get: (entityId: string) => Promise<any>;\n create: (newEntity: Partial<any>) => Promise<any>;\n update: (updatedEntity: any) => Promise<any>;\n delete: (entityId: string) => Promise<any>;\n };\n}\n\nexport type PagePrimaryActionProps = React.ComponentProps<\n typeof PrimaryActions\n>;\n\nexport type PageSecondaryActionProps = React.ComponentProps<\n typeof SecondaryActions\n>;\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["../../../src/types/types.ts"],"sourcesContent":["import { PrimaryActions, SecondaryActions } from '@wix/patterns';\nimport { EntityPageConfig } from './EntityPageConfig';\nimport { CollectionPageConfig } from './CollectionPageConfig';\n\nexport interface BaseCollectionConfig {\n collectionId: string;\n entityTypeSource: 'cms';\n}\n\nexport type PatternsFieldType =\n | 'SHORT_TEXT'\n | 'LONG_TEXT'\n | 'NUMBER'\n | 'BOOLEAN'\n | 'DATE'\n | 'DATETIME'\n | 'URL'\n | 'ARRAY'\n | 'REFERENCE';\n\nexport interface AppConfig {\n pages: PageConfig[];\n}\n\nexport interface BasePageConfig {\n id: string;\n appMainPage?: boolean;\n}\n\nexport interface CollectionPageConfigType extends BasePageConfig {\n type: 'collectionPage';\n collectionPage: CollectionPageConfig;\n entityPage?: never;\n}\n\nexport interface EntityPageConfigType extends BasePageConfig {\n type: 'entityPage';\n entityPage: EntityPageConfig;\n collectionPage?: never;\n}\n\nexport type PageConfig = CollectionPageConfigType | EntityPageConfigType;\n\nexport type EntityProps = { [key: string]: any };\n\nexport interface IMenuItem<T extends EntityProps = any> {\n item: T;\n}\nexport interface IColumnValue<T> {\n value: T;\n}\n\nexport type QueryOperator =\n | 'CONTAINS'\n | 'ENDS_WITH'\n | 'EQ'\n | 'EXISTS'\n | 'GT'\n | 'GTE'\n | 'HAS_ALL'\n | 'HAS_SOME'\n | 'LT'\n | 'LTE'\n | 'NE'\n | 'STARTS_WITH'\n | 'URLIZED';\n\ninterface BaseField {\n id: string;\n displayName: string;\n validation?: {\n numberRange?: NumberRange;\n stringLengthRange?: StringLengthRange;\n required: boolean;\n };\n capabilities: {\n supportedQueryOperators: QueryOperator[];\n sortable: boolean;\n };\n}\n\nexport interface ReferenceField extends BaseField {\n type: 'REFERENCE';\n referenceMetadata: {\n referencedCollectionId: string;\n };\n}\n\nexport interface NonReferenceField extends BaseField {\n type: Exclude<PatternsFieldType, 'REFERENCE'>;\n}\n\nexport type Field = ReferenceField | NonReferenceField;\n\nexport interface NumberRange {\n min?: number;\n max?: number;\n}\nexport interface StringLengthRange {\n minLength?: number;\n maxLength?: number;\n}\n\nexport interface SchemaConfig {\n id: string;\n fields: Record<string, Field | undefined>;\n displayField: string;\n idField: string;\n imageField?: string;\n actions: {\n get: (entityId: string) => Promise<any>;\n create: (newEntity: Partial<any>) => Promise<any>;\n update: (updatedEntity: any) => Promise<any>;\n delete: (entityId: string) => Promise<any>;\n bulkDelete: (entityIds: string[]) => Promise<any>;\n };\n}\n\nexport type PagePrimaryActionProps = React.ComponentProps<\n typeof PrimaryActions\n>;\n\nexport type PageSecondaryActionProps = React.ComponentProps<\n typeof SecondaryActions\n>;\n"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,21 @@
1
+ export const bulkDeleteAction = params => {
2
+ const {
3
+ action,
4
+ sharedData,
5
+ actionParams
6
+ } = params;
7
+ return {
8
+ onClick: () => {
9
+ if (action.bulkDelete.mode === 'modal') {
10
+ sharedData.openModal('BulkDeleteModal', {
11
+ modalParams: action.bulkDelete.modal,
12
+ actionParams,
13
+ sharedData
14
+ });
15
+ }
16
+ },
17
+ label: 'Delete',
18
+ icon: 'Delete'
19
+ };
20
+ };
21
+ //# sourceMappingURL=bulkDeleteAction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["bulkDeleteAction","params","action","sharedData","actionParams","onClick","bulkDelete","mode","openModal","modalParams","modal","label","icon"],"sources":["../../../../src/utils/actions/bulkDeleteAction.ts"],"sourcesContent":["import { BulkDeleteActionParams } from './types';\n\nexport const bulkDeleteAction = (params: BulkDeleteActionParams) => {\n const { action, sharedData, actionParams } = params;\n return {\n onClick: () => {\n if (action.bulkDelete.mode === 'modal') {\n sharedData.openModal('BulkDeleteModal', {\n modalParams: action.bulkDelete.modal,\n actionParams,\n sharedData,\n });\n }\n },\n label: 'Delete',\n icon: 'Delete',\n };\n};\n"],"mappings":"AAEA,OAAO,MAAMA,gBAAgB,GAAIC,MAA8B,IAAK;EAClE,MAAM;IAAEC,MAAM;IAAEC,UAAU;IAAEC;EAAa,CAAC,GAAGH,MAAM;EACnD,OAAO;IACLI,OAAO,EAAEA,CAAA,KAAM;MACb,IAAIH,MAAM,CAACI,UAAU,CAACC,IAAI,KAAK,OAAO,EAAE;QACtCJ,UAAU,CAACK,SAAS,CAAC,iBAAiB,EAAE;UACtCC,WAAW,EAAEP,MAAM,CAACI,UAAU,CAACI,KAAK;UACpCN,YAAY;UACZD;QACF,CAAC,CAAC;MACJ;IACF,CAAC;IACDQ,KAAK,EAAE,QAAQ;IACfC,IAAI,EAAE;EACR,CAAC;AACH,CAAC","ignoreList":[]}
@@ -0,0 +1,18 @@
1
+ export const customAction = params => {
2
+ var _sharedData$overrides;
3
+ const {
4
+ sharedData,
5
+ action,
6
+ actionParams
7
+ } = params;
8
+ const actionFunc = (_sharedData$overrides = sharedData.overrides) == null || (_sharedData$overrides = _sharedData$overrides.actions) == null ? void 0 : _sharedData$overrides[action.id];
9
+ if (!actionFunc) {
10
+ return null;
11
+ }
12
+ return actionFunc({
13
+ action,
14
+ actionParams,
15
+ sharedData
16
+ });
17
+ };
18
+ //# sourceMappingURL=customAction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["customAction","params","_sharedData$overrides","sharedData","action","actionParams","actionFunc","overrides","actions","id"],"sources":["../../../../src/utils/actions/customAction.tsx"],"sourcesContent":["import { CustomActionParams } from './types';\n\nexport const customAction = (params: CustomActionParams) => {\n const { sharedData, action, actionParams } = params;\n\n const actionFunc = sharedData.overrides?.actions?.[action.id];\n if (!actionFunc) {\n return null;\n }\n\n return actionFunc({\n action,\n actionParams,\n sharedData,\n });\n};\n"],"mappings":"AAEA,OAAO,MAAMA,YAAY,GAAIC,MAA0B,IAAK;EAAA,IAAAC,qBAAA;EAC1D,MAAM;IAAEC,UAAU;IAAEC,MAAM;IAAEC;EAAa,CAAC,GAAGJ,MAAM;EAEnD,MAAMK,UAAU,IAAAJ,qBAAA,GAAGC,UAAU,CAACI,SAAS,cAAAL,qBAAA,GAApBA,qBAAA,CAAsBM,OAAO,qBAA7BN,qBAAA,CAAgCE,MAAM,CAACK,EAAE,CAAC;EAC7D,IAAI,CAACH,UAAU,EAAE;IACf,OAAO,IAAI;EACb;EAEA,OAAOA,UAAU,CAAC;IAChBF,MAAM;IACNC,YAAY;IACZF;EACF,CAAC,CAAC;AACJ,CAAC","ignoreList":[]}