@wix/auto-patterns 1.43.0 → 1.45.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 (473) hide show
  1. package/dist/cjs/components/AutoPatternsApp/AutoPatternsApp.js +19 -5
  2. package/dist/cjs/components/AutoPatternsApp/AutoPatternsApp.js.map +1 -1
  3. package/dist/cjs/components/AutoPatternsApp/AutoPatternsApp.uni.driver.js +3 -0
  4. package/dist/cjs/components/AutoPatternsApp/AutoPatternsApp.uni.driver.js.map +1 -1
  5. package/dist/cjs/components/AutoPatternsCollectionComponent/AutoPatternsCollectionComponent.js +29 -74
  6. package/dist/cjs/components/AutoPatternsCollectionComponent/AutoPatternsCollectionComponent.js.map +1 -1
  7. package/dist/cjs/components/AutoPatternsEntityPage/AutoPatternsEntityPage.js +3 -3
  8. package/dist/cjs/components/AutoPatternsEntityPage/AutoPatternsEntityPage.js.map +1 -1
  9. package/dist/cjs/components/AutoPatternsEntityPage/EditModeEntityPage.js +26 -14
  10. package/dist/cjs/components/AutoPatternsEntityPage/EditModeEntityPage.js.map +1 -1
  11. package/dist/cjs/components/AutoPatternsEntityPage/ViewModeEntityPage.js +38 -29
  12. package/dist/cjs/components/AutoPatternsEntityPage/ViewModeEntityPage.js.map +1 -1
  13. package/dist/cjs/components/AutoPatternsEntityPage/index.js +0 -6
  14. package/dist/cjs/components/AutoPatternsEntityPage/index.js.map +1 -1
  15. package/dist/cjs/components/AutoPatternsGrid/AutoPatternsGrid.js +147 -25
  16. package/dist/cjs/components/AutoPatternsGrid/AutoPatternsGrid.js.map +1 -1
  17. package/dist/cjs/components/AutoPatternsRoute/AutoPatternsPage.js +68 -30
  18. package/dist/cjs/components/AutoPatternsRoute/AutoPatternsPage.js.map +1 -1
  19. package/dist/cjs/components/AutoPatternsRoute/AutoPatternsRoutes.js +8 -7
  20. package/dist/cjs/components/AutoPatternsRoute/AutoPatternsRoutes.js.map +1 -1
  21. package/dist/cjs/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.js +165 -0
  22. package/dist/cjs/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.js.map +1 -0
  23. package/dist/cjs/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.uni.driver.js +15 -0
  24. package/dist/cjs/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.uni.driver.js.map +1 -0
  25. package/dist/cjs/components/AutoPatternsSettingsPage/index.js +10 -0
  26. package/dist/cjs/components/AutoPatternsSettingsPage/index.js.map +1 -0
  27. package/dist/cjs/components/AutoPatternsTable/AutoPatternsTable.js +141 -41
  28. package/dist/cjs/components/AutoPatternsTable/AutoPatternsTable.js.map +1 -1
  29. package/dist/cjs/components/AutoPatternsTableGridSwitch/AutoPatternsTableGridSwitch.js +169 -9
  30. package/dist/cjs/components/AutoPatternsTableGridSwitch/AutoPatternsTableGridSwitch.js.map +1 -1
  31. package/dist/cjs/components/{AutoPatternsEntityPage/Fields → fields}/Checkbox.js +1 -1
  32. package/dist/cjs/components/fields/Checkbox.js.map +1 -0
  33. package/dist/cjs/components/{AutoPatternsEntityPage/Fields → fields}/DateInput.js +9 -8
  34. package/dist/cjs/components/fields/DateInput.js.map +1 -0
  35. package/dist/cjs/components/{AutoPatternsEntityPage/Fields → fields}/DateTime.js +13 -12
  36. package/dist/cjs/components/fields/DateTime.js.map +1 -0
  37. package/dist/cjs/components/{AutoPatternsEntityPage/Fields → fields}/ImageInput.js +11 -10
  38. package/dist/cjs/components/fields/ImageInput.js.map +1 -0
  39. package/dist/cjs/components/{AutoPatternsEntityPage/Fields → fields}/LongText.js +9 -8
  40. package/dist/cjs/components/fields/LongText.js.map +1 -0
  41. package/dist/cjs/components/{AutoPatternsEntityPage/Fields → fields}/Number.js +9 -8
  42. package/dist/cjs/components/fields/Number.js.map +1 -0
  43. package/dist/cjs/components/{AutoPatternsEntityPage/Fields → fields}/ShortText.js +9 -8
  44. package/dist/cjs/components/fields/ShortText.js.map +1 -0
  45. package/dist/cjs/components/{AutoPatternsEntityPage/Fields → fields}/Url.js +11 -10
  46. package/dist/cjs/components/fields/Url.js.map +1 -0
  47. package/dist/cjs/components/fields/index.js +38 -0
  48. package/dist/cjs/components/fields/index.js.map +1 -0
  49. package/dist/cjs/components/fields/types.js.map +1 -0
  50. package/dist/cjs/components/fields/utils/dates.js.map +1 -0
  51. package/dist/cjs/components/{AutoPatternsEntityPage/RenderLayout/RenderLayoutCard.js → layouts/ContentCard.js} +26 -15
  52. package/dist/cjs/components/layouts/ContentCard.js.map +1 -0
  53. package/dist/cjs/components/layouts/ContentCardLayout.js +157 -0
  54. package/dist/cjs/components/layouts/ContentCardLayout.js.map +1 -0
  55. package/dist/cjs/components/layouts/ContentSkeleton.js +98 -0
  56. package/dist/cjs/components/layouts/ContentSkeleton.js.map +1 -0
  57. package/dist/cjs/components/layouts/FormField.js +52 -0
  58. package/dist/cjs/components/layouts/FormField.js.map +1 -0
  59. package/dist/cjs/components/layouts/ViewField.js +68 -0
  60. package/dist/cjs/components/layouts/ViewField.js.map +1 -0
  61. package/dist/cjs/components/layouts/types.js +4 -0
  62. package/dist/cjs/components/layouts/types.js.map +1 -0
  63. package/dist/cjs/hooks/getCommonCollectionFeaturesAsync.js +11 -0
  64. package/dist/cjs/hooks/getCommonCollectionFeaturesAsync.js.map +1 -0
  65. package/dist/cjs/hooks/getFilterComponent.js +52 -0
  66. package/dist/cjs/hooks/getFilterComponent.js.map +1 -0
  67. package/dist/cjs/hooks/index.js +4 -11
  68. package/dist/cjs/hooks/index.js.map +1 -1
  69. package/dist/cjs/hooks/pluginsDynamicImports.js +25 -0
  70. package/dist/cjs/hooks/pluginsDynamicImports.js.map +1 -0
  71. package/dist/cjs/hooks/useAsyncFeaturesPromiseState.js +30 -0
  72. package/dist/cjs/hooks/useAsyncFeaturesPromiseState.js.map +1 -0
  73. package/dist/cjs/hooks/useBaseCollectionComponentReadyFeatures.js +62 -0
  74. package/dist/cjs/hooks/useBaseCollectionComponentReadyFeatures.js.map +1 -0
  75. package/dist/cjs/hooks/useBasePatternsStateParams.js +36 -0
  76. package/dist/cjs/hooks/useBasePatternsStateParams.js.map +1 -0
  77. package/dist/cjs/hooks/useBaseTableFeatures.js +2 -1
  78. package/dist/cjs/hooks/useBaseTableFeatures.js.map +1 -1
  79. package/dist/cjs/hooks/useCollectionInitAsyncDeps.js +15 -0
  80. package/dist/cjs/hooks/useCollectionInitAsyncDeps.js.map +1 -0
  81. package/dist/cjs/hooks/useCommonCollectionFeatures.js +14 -4
  82. package/dist/cjs/hooks/useCommonCollectionFeatures.js.map +1 -1
  83. package/dist/cjs/hooks/useFilters.js +17 -103
  84. package/dist/cjs/hooks/useFilters.js.map +1 -1
  85. package/dist/cjs/hooks/useFiltersState.js +112 -0
  86. package/dist/cjs/hooks/useFiltersState.js.map +1 -0
  87. package/dist/cjs/hooks/useGridFeaturesAsync.js +42 -0
  88. package/dist/cjs/hooks/useGridFeaturesAsync.js.map +1 -0
  89. package/dist/cjs/hooks/useGridVisibleFieldIds.js +17 -0
  90. package/dist/cjs/hooks/useGridVisibleFieldIds.js.map +1 -0
  91. package/dist/cjs/hooks/usePagePath.js +4 -1
  92. package/dist/cjs/hooks/usePagePath.js.map +1 -1
  93. package/dist/cjs/hooks/useSettingsPageMoreActions.js +36 -0
  94. package/dist/cjs/hooks/useSettingsPageMoreActions.js.map +1 -0
  95. package/dist/cjs/hooks/useSyncCollectionStateToAppContext.js +22 -0
  96. package/dist/cjs/hooks/useSyncCollectionStateToAppContext.js.map +1 -0
  97. package/dist/cjs/hooks/useTableFeaturesAsync.js +51 -0
  98. package/dist/cjs/hooks/useTableFeaturesAsync.js.map +1 -0
  99. package/dist/cjs/hooks/useTableGridSwitchFeaturesAsync.js +52 -0
  100. package/dist/cjs/hooks/useTableGridSwitchFeaturesAsync.js.map +1 -0
  101. package/dist/cjs/hooks/useTableSections.js +18 -0
  102. package/dist/cjs/hooks/useTableSections.js.map +1 -0
  103. package/dist/cjs/providers/AutoPatternsOverridesContext.js +1 -1
  104. package/dist/cjs/providers/AutoPatternsOverridesContext.js.map +1 -1
  105. package/dist/cjs/types/SettingsPageConfig.js +4 -0
  106. package/dist/cjs/types/SettingsPageConfig.js.map +1 -0
  107. package/dist/cjs/types/actions/base.js.map +1 -1
  108. package/dist/cjs/types/actions/entityPageActions.js.map +1 -1
  109. package/dist/cjs/types/actions/formPageActions.js +4 -0
  110. package/dist/cjs/types/actions/formPageActions.js.map +1 -0
  111. package/dist/cjs/types/actions/index.js +6 -0
  112. package/dist/cjs/types/actions/index.js.map +1 -1
  113. package/dist/cjs/types/index.js +6 -0
  114. package/dist/cjs/types/index.js.map +1 -1
  115. package/dist/cjs/types/types.js.map +1 -1
  116. package/dist/cjs/utils/filterCreators.js +16 -31
  117. package/dist/cjs/utils/filterCreators.js.map +1 -1
  118. package/dist/cjs/utils/minimalRequiredPatternsRuntimeCheck.js +18 -0
  119. package/dist/cjs/utils/minimalRequiredPatternsRuntimeCheck.js.map +1 -0
  120. package/dist/cjs/utils/minimalRequiredRuntimeCheck.js +21 -0
  121. package/dist/cjs/utils/minimalRequiredRuntimeCheck.js.map +1 -0
  122. package/dist/esm/components/AutoPatternsApp/AutoPatternsApp.js +14 -1
  123. package/dist/esm/components/AutoPatternsApp/AutoPatternsApp.js.map +1 -1
  124. package/dist/esm/components/AutoPatternsApp/AutoPatternsApp.uni.driver.js +4 -1
  125. package/dist/esm/components/AutoPatternsApp/AutoPatternsApp.uni.driver.js.map +1 -1
  126. package/dist/esm/components/AutoPatternsCollectionComponent/AutoPatternsCollectionComponent.js +23 -31
  127. package/dist/esm/components/AutoPatternsCollectionComponent/AutoPatternsCollectionComponent.js.map +1 -1
  128. package/dist/esm/components/AutoPatternsEntityPage/AutoPatternsEntityPage.js +3 -3
  129. package/dist/esm/components/AutoPatternsEntityPage/AutoPatternsEntityPage.js.map +1 -1
  130. package/dist/esm/components/AutoPatternsEntityPage/EditModeEntityPage.js +21 -8
  131. package/dist/esm/components/AutoPatternsEntityPage/EditModeEntityPage.js.map +1 -1
  132. package/dist/esm/components/AutoPatternsEntityPage/ViewModeEntityPage.js +21 -12
  133. package/dist/esm/components/AutoPatternsEntityPage/ViewModeEntityPage.js.map +1 -1
  134. package/dist/esm/components/AutoPatternsEntityPage/index.js +0 -1
  135. package/dist/esm/components/AutoPatternsEntityPage/index.js.map +1 -1
  136. package/dist/esm/components/AutoPatternsGrid/AutoPatternsGrid.js +134 -28
  137. package/dist/esm/components/AutoPatternsGrid/AutoPatternsGrid.js.map +1 -1
  138. package/dist/esm/components/AutoPatternsRoute/AutoPatternsPage.js +34 -13
  139. package/dist/esm/components/AutoPatternsRoute/AutoPatternsPage.js.map +1 -1
  140. package/dist/esm/components/AutoPatternsRoute/AutoPatternsRoutes.js +2 -1
  141. package/dist/esm/components/AutoPatternsRoute/AutoPatternsRoutes.js.map +1 -1
  142. package/dist/esm/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.js +108 -0
  143. package/dist/esm/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.js.map +1 -0
  144. package/dist/esm/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.uni.driver.js +10 -0
  145. package/dist/esm/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.uni.driver.js.map +1 -0
  146. package/dist/esm/components/AutoPatternsSettingsPage/index.js +2 -0
  147. package/dist/esm/components/AutoPatternsSettingsPage/index.js.map +1 -0
  148. package/dist/esm/components/AutoPatternsTable/AutoPatternsTable.js +126 -42
  149. package/dist/esm/components/AutoPatternsTable/AutoPatternsTable.js.map +1 -1
  150. package/dist/esm/components/AutoPatternsTableGridSwitch/AutoPatternsTableGridSwitch.js +155 -10
  151. package/dist/esm/components/AutoPatternsTableGridSwitch/AutoPatternsTableGridSwitch.js.map +1 -1
  152. package/dist/esm/components/fields/Checkbox.js.map +1 -0
  153. package/dist/esm/components/{AutoPatternsEntityPage/Fields → fields}/DateInput.js +7 -6
  154. package/dist/esm/components/fields/DateInput.js.map +1 -0
  155. package/dist/esm/components/{AutoPatternsEntityPage/Fields → fields}/DateTime.js +7 -6
  156. package/dist/esm/components/fields/DateTime.js.map +1 -0
  157. package/dist/esm/components/{AutoPatternsEntityPage/Fields → fields}/ImageInput.js +9 -8
  158. package/dist/esm/components/fields/ImageInput.js.map +1 -0
  159. package/dist/esm/components/{AutoPatternsEntityPage/Fields → fields}/LongText.js +7 -6
  160. package/dist/esm/components/fields/LongText.js.map +1 -0
  161. package/dist/esm/components/{AutoPatternsEntityPage/Fields → fields}/Number.js +7 -6
  162. package/dist/esm/components/fields/Number.js.map +1 -0
  163. package/dist/esm/components/{AutoPatternsEntityPage/Fields → fields}/ShortText.js +7 -6
  164. package/dist/esm/components/fields/ShortText.js.map +1 -0
  165. package/dist/esm/components/{AutoPatternsEntityPage/Fields → fields}/Url.js +7 -6
  166. package/dist/esm/components/fields/Url.js.map +1 -0
  167. package/dist/esm/components/fields/index.js +10 -0
  168. package/dist/esm/components/fields/index.js.map +1 -0
  169. package/dist/esm/components/fields/types.js.map +1 -0
  170. package/dist/esm/components/fields/utils/dates.js.map +1 -0
  171. package/dist/esm/components/{AutoPatternsEntityPage/RenderLayout/RenderLayoutCard.js → layouts/ContentCard.js} +19 -8
  172. package/dist/esm/components/layouts/ContentCard.js.map +1 -0
  173. package/dist/esm/components/{AutoPatternsEntityPage/RenderLayout/RenderLayoutContent.js → layouts/ContentCardLayout.js} +38 -19
  174. package/dist/esm/components/layouts/ContentCardLayout.js.map +1 -0
  175. package/dist/esm/components/layouts/ContentSkeleton.js +47 -0
  176. package/dist/esm/components/layouts/ContentSkeleton.js.map +1 -0
  177. package/dist/esm/components/layouts/FormField.js +40 -0
  178. package/dist/esm/components/layouts/FormField.js.map +1 -0
  179. package/dist/esm/components/layouts/ViewField.js +43 -0
  180. package/dist/esm/components/layouts/ViewField.js.map +1 -0
  181. package/dist/esm/components/layouts/types.js +2 -0
  182. package/dist/esm/components/layouts/types.js.map +1 -0
  183. package/dist/esm/hooks/getCommonCollectionFeaturesAsync.js +7 -0
  184. package/dist/esm/hooks/getCommonCollectionFeaturesAsync.js.map +1 -0
  185. package/dist/esm/hooks/getFilterComponent.js +48 -0
  186. package/dist/esm/hooks/getFilterComponent.js.map +1 -0
  187. package/dist/esm/hooks/index.js +1 -2
  188. package/dist/esm/hooks/index.js.map +1 -1
  189. package/dist/esm/hooks/pluginsDynamicImports.js +13 -0
  190. package/dist/esm/hooks/pluginsDynamicImports.js.map +1 -0
  191. package/dist/esm/hooks/useAsyncFeaturesPromiseState.js +28 -0
  192. package/dist/esm/hooks/useAsyncFeaturesPromiseState.js.map +1 -0
  193. package/dist/esm/hooks/useBaseCollectionComponentReadyFeatures.js +58 -0
  194. package/dist/esm/hooks/useBaseCollectionComponentReadyFeatures.js.map +1 -0
  195. package/dist/esm/hooks/useBasePatternsStateParams.js +32 -0
  196. package/dist/esm/hooks/useBasePatternsStateParams.js.map +1 -0
  197. package/dist/esm/hooks/useBaseTableFeatures.js +1 -0
  198. package/dist/esm/hooks/useBaseTableFeatures.js.map +1 -1
  199. package/dist/esm/hooks/useCollectionInitAsyncDeps.js +11 -0
  200. package/dist/esm/hooks/useCollectionInitAsyncDeps.js.map +1 -0
  201. package/dist/esm/hooks/useCommonCollectionFeatures.js +1 -0
  202. package/dist/esm/hooks/useCommonCollectionFeatures.js.map +1 -1
  203. package/dist/esm/hooks/useFilters.js +14 -100
  204. package/dist/esm/hooks/useFilters.js.map +1 -1
  205. package/dist/esm/hooks/useFiltersState.js +107 -0
  206. package/dist/esm/hooks/useFiltersState.js.map +1 -0
  207. package/dist/esm/hooks/useGridFeaturesAsync.js +37 -0
  208. package/dist/esm/hooks/useGridFeaturesAsync.js.map +1 -0
  209. package/dist/esm/hooks/useGridVisibleFieldIds.js +13 -0
  210. package/dist/esm/hooks/useGridVisibleFieldIds.js.map +1 -0
  211. package/dist/esm/hooks/usePagePath.js +4 -1
  212. package/dist/esm/hooks/usePagePath.js.map +1 -1
  213. package/dist/esm/hooks/useSettingsPageMoreActions.js +32 -0
  214. package/dist/esm/hooks/useSettingsPageMoreActions.js.map +1 -0
  215. package/dist/esm/hooks/useSyncCollectionStateToAppContext.js +18 -0
  216. package/dist/esm/hooks/useSyncCollectionStateToAppContext.js.map +1 -0
  217. package/dist/esm/hooks/useTableFeaturesAsync.js +46 -0
  218. package/dist/esm/hooks/useTableFeaturesAsync.js.map +1 -0
  219. package/dist/esm/hooks/useTableGridSwitchFeaturesAsync.js +47 -0
  220. package/dist/esm/hooks/useTableGridSwitchFeaturesAsync.js.map +1 -0
  221. package/dist/esm/hooks/useTableSections.js +14 -0
  222. package/dist/esm/hooks/useTableSections.js.map +1 -0
  223. package/dist/esm/providers/AutoPatternsOverridesContext.js.map +1 -1
  224. package/dist/esm/types/SettingsPageConfig.js +2 -0
  225. package/dist/esm/types/SettingsPageConfig.js.map +1 -0
  226. package/dist/esm/types/actions/base.js.map +1 -1
  227. package/dist/esm/types/actions/entityPageActions.js.map +1 -1
  228. package/dist/esm/types/actions/formPageActions.js +2 -0
  229. package/dist/esm/types/actions/formPageActions.js.map +1 -0
  230. package/dist/esm/types/actions/index.js +1 -0
  231. package/dist/esm/types/actions/index.js.map +1 -1
  232. package/dist/esm/types/index.js +1 -0
  233. package/dist/esm/types/index.js.map +1 -1
  234. package/dist/esm/types/types.js.map +1 -1
  235. package/dist/esm/utils/filterCreators.js +17 -32
  236. package/dist/esm/utils/filterCreators.js.map +1 -1
  237. package/dist/esm/utils/minimalRequiredPatternsRuntimeCheck.js +14 -0
  238. package/dist/esm/utils/minimalRequiredPatternsRuntimeCheck.js.map +1 -0
  239. package/dist/esm/utils/minimalRequiredRuntimeCheck.js +17 -0
  240. package/dist/esm/utils/minimalRequiredRuntimeCheck.js.map +1 -0
  241. package/dist/types/components/AutoPatternsApp/AutoPatternsApp.d.ts.map +1 -1
  242. package/dist/types/components/AutoPatternsApp/AutoPatternsApp.uni.driver.d.ts +4 -1
  243. package/dist/types/components/AutoPatternsApp/AutoPatternsApp.uni.driver.d.ts.map +1 -1
  244. package/dist/types/components/AutoPatternsCollectionComponent/AutoPatternsCollectionComponent.d.ts +6 -0
  245. package/dist/types/components/AutoPatternsCollectionComponent/AutoPatternsCollectionComponent.d.ts.map +1 -1
  246. package/dist/types/components/AutoPatternsEntityPage/EditModeEntityPage.d.ts.map +1 -1
  247. package/dist/types/components/AutoPatternsEntityPage/ViewModeEntityPage.d.ts.map +1 -1
  248. package/dist/types/components/AutoPatternsEntityPage/index.d.ts +0 -1
  249. package/dist/types/components/AutoPatternsEntityPage/index.d.ts.map +1 -1
  250. package/dist/types/components/AutoPatternsGrid/AutoPatternsGrid.d.ts +17 -2
  251. package/dist/types/components/AutoPatternsGrid/AutoPatternsGrid.d.ts.map +1 -1
  252. package/dist/types/components/AutoPatternsRoute/AutoPatternsPage.d.ts.map +1 -1
  253. package/dist/types/components/AutoPatternsRoute/AutoPatternsRoutes.d.ts.map +1 -1
  254. package/dist/types/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.d.ts +6 -0
  255. package/dist/types/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.d.ts.map +1 -0
  256. package/dist/types/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.uni.driver.d.ts +145 -0
  257. package/dist/types/components/AutoPatternsSettingsPage/AutoPatternsSettingsPage.uni.driver.d.ts.map +1 -0
  258. package/dist/types/components/AutoPatternsSettingsPage/index.d.ts +2 -0
  259. package/dist/types/components/AutoPatternsSettingsPage/index.d.ts.map +1 -0
  260. package/dist/types/components/AutoPatternsTable/AutoPatternsTable.d.ts +17 -2
  261. package/dist/types/components/AutoPatternsTable/AutoPatternsTable.d.ts.map +1 -1
  262. package/dist/types/components/AutoPatternsTableGridSwitch/AutoPatternsTableGridSwitch.d.ts +18 -2
  263. package/dist/types/components/AutoPatternsTableGridSwitch/AutoPatternsTableGridSwitch.d.ts.map +1 -1
  264. package/dist/types/components/fields/Checkbox.d.ts.map +1 -0
  265. package/dist/types/components/fields/DateInput.d.ts.map +1 -0
  266. package/dist/types/components/fields/DateTime.d.ts.map +1 -0
  267. package/dist/types/components/fields/ImageInput.d.ts.map +1 -0
  268. package/dist/types/components/fields/LongText.d.ts.map +1 -0
  269. package/dist/types/components/fields/Number.d.ts.map +1 -0
  270. package/dist/types/components/fields/ShortText.d.ts.map +1 -0
  271. package/dist/types/components/fields/Url.d.ts.map +1 -0
  272. package/dist/types/components/fields/index.d.ts +10 -0
  273. package/dist/types/components/fields/index.d.ts.map +1 -0
  274. package/dist/types/components/{AutoPatternsEntityPage/Fields → fields}/types.d.ts +4 -1
  275. package/dist/types/components/fields/types.d.ts.map +1 -0
  276. package/dist/types/components/fields/utils/dates.d.ts.map +1 -0
  277. package/dist/types/components/layouts/ContentCard.d.ts +17 -0
  278. package/dist/types/components/layouts/ContentCard.d.ts.map +1 -0
  279. package/dist/types/components/layouts/ContentCardLayout.d.ts +18 -0
  280. package/dist/types/components/layouts/ContentCardLayout.d.ts.map +1 -0
  281. package/dist/types/components/layouts/ContentSkeleton.d.ts +9 -0
  282. package/dist/types/components/layouts/ContentSkeleton.d.ts.map +1 -0
  283. package/dist/types/components/layouts/FormField.d.ts +13 -0
  284. package/dist/types/components/layouts/FormField.d.ts.map +1 -0
  285. package/dist/types/components/layouts/ViewField.d.ts +8 -0
  286. package/dist/types/components/layouts/ViewField.d.ts.map +1 -0
  287. package/dist/types/components/layouts/types.d.ts +3 -0
  288. package/dist/types/components/layouts/types.d.ts.map +1 -0
  289. package/dist/types/hooks/getCommonCollectionFeaturesAsync.d.ts +4 -0
  290. package/dist/types/hooks/getCommonCollectionFeaturesAsync.d.ts.map +1 -0
  291. package/dist/types/hooks/getFilterComponent.d.ts +4 -0
  292. package/dist/types/hooks/getFilterComponent.d.ts.map +1 -0
  293. package/dist/types/hooks/index.d.ts +1 -2
  294. package/dist/types/hooks/index.d.ts.map +1 -1
  295. package/dist/types/hooks/pluginsDynamicImports.d.ts +7 -0
  296. package/dist/types/hooks/pluginsDynamicImports.d.ts.map +1 -0
  297. package/dist/types/hooks/useAsyncFeaturesPromiseState.d.ts +6 -0
  298. package/dist/types/hooks/useAsyncFeaturesPromiseState.d.ts.map +1 -0
  299. package/dist/types/hooks/useBaseCollectionComponentReadyFeatures.d.ts +36 -0
  300. package/dist/types/hooks/useBaseCollectionComponentReadyFeatures.d.ts.map +1 -0
  301. package/dist/types/hooks/useBasePatternsStateParams.d.ts +31 -0
  302. package/dist/types/hooks/useBasePatternsStateParams.d.ts.map +1 -0
  303. package/dist/types/hooks/useBaseTableFeatures.d.ts +2 -0
  304. package/dist/types/hooks/useBaseTableFeatures.d.ts.map +1 -1
  305. package/dist/types/hooks/useCollectionInitAsyncDeps.d.ts +4 -0
  306. package/dist/types/hooks/useCollectionInitAsyncDeps.d.ts.map +1 -0
  307. package/dist/types/hooks/useCommonCollectionFeatures.d.ts +1 -0
  308. package/dist/types/hooks/useCommonCollectionFeatures.d.ts.map +1 -1
  309. package/dist/types/hooks/useFilters.d.ts +9 -21
  310. package/dist/types/hooks/useFilters.d.ts.map +1 -1
  311. package/dist/types/hooks/useFiltersState.d.ts +26 -0
  312. package/dist/types/hooks/useFiltersState.d.ts.map +1 -0
  313. package/dist/types/hooks/useGridDragAndDrop.d.ts +1 -1
  314. package/dist/types/hooks/useGridFeaturesAsync.d.ts +26 -0
  315. package/dist/types/hooks/useGridFeaturesAsync.d.ts.map +1 -0
  316. package/dist/types/hooks/useGridVisibleFieldIds.d.ts +3 -0
  317. package/dist/types/hooks/useGridVisibleFieldIds.d.ts.map +1 -0
  318. package/dist/types/hooks/usePagePath.d.ts.map +1 -1
  319. package/dist/types/hooks/useSettingsPageMoreActions.d.ts +5 -0
  320. package/dist/types/hooks/useSettingsPageMoreActions.d.ts.map +1 -0
  321. package/dist/types/hooks/useSyncCollectionStateToAppContext.d.ts +6 -0
  322. package/dist/types/hooks/useSyncCollectionStateToAppContext.d.ts.map +1 -0
  323. package/dist/types/hooks/useTableFeaturesAsync.d.ts +29 -0
  324. package/dist/types/hooks/useTableFeaturesAsync.d.ts.map +1 -0
  325. package/dist/types/hooks/useTableGridSwitchDragAndDrop.d.ts +1 -1
  326. package/dist/types/hooks/useTableGridSwitchFeaturesAsync.d.ts +29 -0
  327. package/dist/types/hooks/useTableGridSwitchFeaturesAsync.d.ts.map +1 -0
  328. package/dist/types/hooks/useTableSections.d.ts +8 -0
  329. package/dist/types/hooks/useTableSections.d.ts.map +1 -0
  330. package/dist/types/providers/AutoPatternsOverridesContext.d.ts +2 -2
  331. package/dist/types/providers/AutoPatternsOverridesContext.d.ts.map +1 -1
  332. package/dist/types/testkit/enzyme.d.ts +1 -0
  333. package/dist/types/testkit/enzyme.d.ts.map +1 -1
  334. package/dist/types/testkit/jsdom.d.ts +1 -0
  335. package/dist/types/testkit/jsdom.d.ts.map +1 -1
  336. package/dist/types/testkit/playwright.d.ts +1 -0
  337. package/dist/types/testkit/playwright.d.ts.map +1 -1
  338. package/dist/types/testkit/puppeteer.d.ts +1 -0
  339. package/dist/types/testkit/puppeteer.d.ts.map +1 -1
  340. package/dist/types/types/SettingsPageConfig.d.ts +140 -0
  341. package/dist/types/types/SettingsPageConfig.d.ts.map +1 -0
  342. package/dist/types/types/actions/base.d.ts +1 -0
  343. package/dist/types/types/actions/base.d.ts.map +1 -1
  344. package/dist/types/types/actions/entityPageActions.d.ts +2 -7
  345. package/dist/types/types/actions/entityPageActions.d.ts.map +1 -1
  346. package/dist/types/types/actions/formPageActions.d.ts +8 -0
  347. package/dist/types/types/actions/formPageActions.d.ts.map +1 -0
  348. package/dist/types/types/actions/index.d.ts +1 -0
  349. package/dist/types/types/actions/index.d.ts.map +1 -1
  350. package/dist/types/types/index.d.ts +1 -0
  351. package/dist/types/types/index.d.ts.map +1 -1
  352. package/dist/types/types/types.d.ts +20 -1
  353. package/dist/types/types/types.d.ts.map +1 -1
  354. package/dist/types/utils/filterCreators.d.ts +10 -19
  355. package/dist/types/utils/filterCreators.d.ts.map +1 -1
  356. package/dist/types/utils/minimalRequiredPatternsRuntimeCheck.d.ts +5 -0
  357. package/dist/types/utils/minimalRequiredPatternsRuntimeCheck.d.ts.map +1 -0
  358. package/dist/types/utils/minimalRequiredRuntimeCheck.d.ts +9 -0
  359. package/dist/types/utils/minimalRequiredRuntimeCheck.d.ts.map +1 -0
  360. package/docs/GETTING_STARTED.md +73 -18
  361. package/mcp-docs/app_config_structure.md +66 -3
  362. package/mcp-docs/auto-patterns-guide.md +86 -6
  363. package/mcp-docs/index.md +4 -0
  364. package/mcp-docs/pages_configuration.md +20 -3
  365. package/mcp-docs/settings_page.md +599 -0
  366. package/package.json +14 -13
  367. package/dist/cjs/components/AutoPatternsEntityPage/Fields/Checkbox.js.map +0 -1
  368. package/dist/cjs/components/AutoPatternsEntityPage/Fields/DateInput.js.map +0 -1
  369. package/dist/cjs/components/AutoPatternsEntityPage/Fields/DateTime.js.map +0 -1
  370. package/dist/cjs/components/AutoPatternsEntityPage/Fields/FormFieldInput.js +0 -59
  371. package/dist/cjs/components/AutoPatternsEntityPage/Fields/FormFieldInput.js.map +0 -1
  372. package/dist/cjs/components/AutoPatternsEntityPage/Fields/ImageInput.js.map +0 -1
  373. package/dist/cjs/components/AutoPatternsEntityPage/Fields/LongText.js.map +0 -1
  374. package/dist/cjs/components/AutoPatternsEntityPage/Fields/Number.js.map +0 -1
  375. package/dist/cjs/components/AutoPatternsEntityPage/Fields/ShortText.js.map +0 -1
  376. package/dist/cjs/components/AutoPatternsEntityPage/Fields/Url.js.map +0 -1
  377. package/dist/cjs/components/AutoPatternsEntityPage/Fields/types.js.map +0 -1
  378. package/dist/cjs/components/AutoPatternsEntityPage/Fields/utils/dates.js.map +0 -1
  379. package/dist/cjs/components/AutoPatternsEntityPage/RenderLayout/RenderLayoutCard.js.map +0 -1
  380. package/dist/cjs/components/AutoPatternsEntityPage/RenderLayout/RenderLayoutContent.js +0 -119
  381. package/dist/cjs/components/AutoPatternsEntityPage/RenderLayout/RenderLayoutContent.js.map +0 -1
  382. package/dist/cjs/components/AutoPatternsEntityPage/RenderLayout/RenderViewField.js +0 -79
  383. package/dist/cjs/components/AutoPatternsEntityPage/RenderLayout/RenderViewField.js.map +0 -1
  384. package/dist/cjs/components/AutoPatternsEntityPage/RenderLayout/index.js +0 -16
  385. package/dist/cjs/components/AutoPatternsEntityPage/RenderLayout/index.js.map +0 -1
  386. package/dist/cjs/components/AutoPatternsEntityPage/SkeletonEntity.js +0 -198
  387. package/dist/cjs/components/AutoPatternsEntityPage/SkeletonEntity.js.map +0 -1
  388. package/dist/cjs/components/AutoPatternsEntityPage/ViewEntityPage/RenderViewLayoutCard.js +0 -77
  389. package/dist/cjs/components/AutoPatternsEntityPage/ViewEntityPage/RenderViewLayoutCard.js.map +0 -1
  390. package/dist/cjs/components/AutoPatternsEntityPage/ViewEntityPage/RenderViewLayoutContent.js +0 -109
  391. package/dist/cjs/components/AutoPatternsEntityPage/ViewEntityPage/RenderViewLayoutContent.js.map +0 -1
  392. package/dist/cjs/hooks/useGridFeatures.js +0 -63
  393. package/dist/cjs/hooks/useGridFeatures.js.map +0 -1
  394. package/dist/cjs/hooks/useTableFeatures.js +0 -79
  395. package/dist/cjs/hooks/useTableFeatures.js.map +0 -1
  396. package/dist/cjs/hooks/useTableGridSwitchFeatures.js +0 -83
  397. package/dist/cjs/hooks/useTableGridSwitchFeatures.js.map +0 -1
  398. package/dist/esm/components/AutoPatternsEntityPage/Fields/Checkbox.js.map +0 -1
  399. package/dist/esm/components/AutoPatternsEntityPage/Fields/DateInput.js.map +0 -1
  400. package/dist/esm/components/AutoPatternsEntityPage/Fields/DateTime.js.map +0 -1
  401. package/dist/esm/components/AutoPatternsEntityPage/Fields/FormFieldInput.js +0 -46
  402. package/dist/esm/components/AutoPatternsEntityPage/Fields/FormFieldInput.js.map +0 -1
  403. package/dist/esm/components/AutoPatternsEntityPage/Fields/ImageInput.js.map +0 -1
  404. package/dist/esm/components/AutoPatternsEntityPage/Fields/LongText.js.map +0 -1
  405. package/dist/esm/components/AutoPatternsEntityPage/Fields/Number.js.map +0 -1
  406. package/dist/esm/components/AutoPatternsEntityPage/Fields/ShortText.js.map +0 -1
  407. package/dist/esm/components/AutoPatternsEntityPage/Fields/Url.js.map +0 -1
  408. package/dist/esm/components/AutoPatternsEntityPage/Fields/types.js.map +0 -1
  409. package/dist/esm/components/AutoPatternsEntityPage/Fields/utils/dates.js.map +0 -1
  410. package/dist/esm/components/AutoPatternsEntityPage/RenderLayout/RenderLayoutCard.js.map +0 -1
  411. package/dist/esm/components/AutoPatternsEntityPage/RenderLayout/RenderLayoutContent.js.map +0 -1
  412. package/dist/esm/components/AutoPatternsEntityPage/RenderLayout/RenderViewField.js +0 -48
  413. package/dist/esm/components/AutoPatternsEntityPage/RenderLayout/RenderViewField.js.map +0 -1
  414. package/dist/esm/components/AutoPatternsEntityPage/RenderLayout/index.js +0 -3
  415. package/dist/esm/components/AutoPatternsEntityPage/RenderLayout/index.js.map +0 -1
  416. package/dist/esm/components/AutoPatternsEntityPage/SkeletonEntity.js +0 -91
  417. package/dist/esm/components/AutoPatternsEntityPage/SkeletonEntity.js.map +0 -1
  418. package/dist/esm/components/AutoPatternsEntityPage/ViewEntityPage/RenderViewLayoutCard.js +0 -31
  419. package/dist/esm/components/AutoPatternsEntityPage/ViewEntityPage/RenderViewLayoutCard.js.map +0 -1
  420. package/dist/esm/components/AutoPatternsEntityPage/ViewEntityPage/RenderViewLayoutContent.js +0 -66
  421. package/dist/esm/components/AutoPatternsEntityPage/ViewEntityPage/RenderViewLayoutContent.js.map +0 -1
  422. package/dist/esm/hooks/useGridFeatures.js +0 -58
  423. package/dist/esm/hooks/useGridFeatures.js.map +0 -1
  424. package/dist/esm/hooks/useTableFeatures.js +0 -74
  425. package/dist/esm/hooks/useTableFeatures.js.map +0 -1
  426. package/dist/esm/hooks/useTableGridSwitchFeatures.js +0 -78
  427. package/dist/esm/hooks/useTableGridSwitchFeatures.js.map +0 -1
  428. package/dist/types/components/AutoPatternsEntityPage/Fields/Checkbox.d.ts.map +0 -1
  429. package/dist/types/components/AutoPatternsEntityPage/Fields/DateInput.d.ts.map +0 -1
  430. package/dist/types/components/AutoPatternsEntityPage/Fields/DateTime.d.ts.map +0 -1
  431. package/dist/types/components/AutoPatternsEntityPage/Fields/FormFieldInput.d.ts +0 -10
  432. package/dist/types/components/AutoPatternsEntityPage/Fields/FormFieldInput.d.ts.map +0 -1
  433. package/dist/types/components/AutoPatternsEntityPage/Fields/ImageInput.d.ts.map +0 -1
  434. package/dist/types/components/AutoPatternsEntityPage/Fields/LongText.d.ts.map +0 -1
  435. package/dist/types/components/AutoPatternsEntityPage/Fields/Number.d.ts.map +0 -1
  436. package/dist/types/components/AutoPatternsEntityPage/Fields/ShortText.d.ts.map +0 -1
  437. package/dist/types/components/AutoPatternsEntityPage/Fields/Url.d.ts.map +0 -1
  438. package/dist/types/components/AutoPatternsEntityPage/Fields/types.d.ts.map +0 -1
  439. package/dist/types/components/AutoPatternsEntityPage/Fields/utils/dates.d.ts.map +0 -1
  440. package/dist/types/components/AutoPatternsEntityPage/RenderLayout/RenderLayoutCard.d.ts +0 -11
  441. package/dist/types/components/AutoPatternsEntityPage/RenderLayout/RenderLayoutCard.d.ts.map +0 -1
  442. package/dist/types/components/AutoPatternsEntityPage/RenderLayout/RenderLayoutContent.d.ts +0 -13
  443. package/dist/types/components/AutoPatternsEntityPage/RenderLayout/RenderLayoutContent.d.ts.map +0 -1
  444. package/dist/types/components/AutoPatternsEntityPage/RenderLayout/RenderViewField.d.ts +0 -8
  445. package/dist/types/components/AutoPatternsEntityPage/RenderLayout/RenderViewField.d.ts.map +0 -1
  446. package/dist/types/components/AutoPatternsEntityPage/RenderLayout/index.d.ts +0 -3
  447. package/dist/types/components/AutoPatternsEntityPage/RenderLayout/index.d.ts.map +0 -1
  448. package/dist/types/components/AutoPatternsEntityPage/SkeletonEntity.d.ts +0 -7
  449. package/dist/types/components/AutoPatternsEntityPage/SkeletonEntity.d.ts.map +0 -1
  450. package/dist/types/components/AutoPatternsEntityPage/ViewEntityPage/RenderViewLayoutCard.d.ts +0 -8
  451. package/dist/types/components/AutoPatternsEntityPage/ViewEntityPage/RenderViewLayoutCard.d.ts.map +0 -1
  452. package/dist/types/components/AutoPatternsEntityPage/ViewEntityPage/RenderViewLayoutContent.d.ts +0 -8
  453. package/dist/types/components/AutoPatternsEntityPage/ViewEntityPage/RenderViewLayoutContent.d.ts.map +0 -1
  454. package/dist/types/hooks/useGridFeatures.d.ts +0 -43
  455. package/dist/types/hooks/useGridFeatures.d.ts.map +0 -1
  456. package/dist/types/hooks/useTableFeatures.d.ts +0 -27
  457. package/dist/types/hooks/useTableFeatures.d.ts.map +0 -1
  458. package/dist/types/hooks/useTableGridSwitchFeatures.d.ts +0 -52
  459. package/dist/types/hooks/useTableGridSwitchFeatures.d.ts.map +0 -1
  460. /package/dist/cjs/components/{AutoPatternsEntityPage/Fields → fields}/types.js +0 -0
  461. /package/dist/cjs/components/{AutoPatternsEntityPage/Fields → fields}/utils/dates.js +0 -0
  462. /package/dist/esm/components/{AutoPatternsEntityPage/Fields → fields}/Checkbox.js +0 -0
  463. /package/dist/esm/components/{AutoPatternsEntityPage/Fields → fields}/types.js +0 -0
  464. /package/dist/esm/components/{AutoPatternsEntityPage/Fields → fields}/utils/dates.js +0 -0
  465. /package/dist/types/components/{AutoPatternsEntityPage/Fields → fields}/Checkbox.d.ts +0 -0
  466. /package/dist/types/components/{AutoPatternsEntityPage/Fields → fields}/DateInput.d.ts +0 -0
  467. /package/dist/types/components/{AutoPatternsEntityPage/Fields → fields}/DateTime.d.ts +0 -0
  468. /package/dist/types/components/{AutoPatternsEntityPage/Fields → fields}/ImageInput.d.ts +0 -0
  469. /package/dist/types/components/{AutoPatternsEntityPage/Fields → fields}/LongText.d.ts +0 -0
  470. /package/dist/types/components/{AutoPatternsEntityPage/Fields → fields}/Number.d.ts +0 -0
  471. /package/dist/types/components/{AutoPatternsEntityPage/Fields → fields}/ShortText.d.ts +0 -0
  472. /package/dist/types/components/{AutoPatternsEntityPage/Fields → fields}/Url.d.ts +0 -0
  473. /package/dist/types/components/{AutoPatternsEntityPage/Fields → fields}/utils/dates.d.ts +0 -0
@@ -1,108 +1,23 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import React from 'react';
3
3
  import { CollectionToolbarFilters } from '@wix/patterns';
4
- import { useSchema } from '../providers/SchemaContext';
5
- import { useSchemaRegistry } from '../providers';
6
- import { StaticCollectionFilter, DynamicCollectionFilter } from '../components/filters';
7
- import { createDateTimeFilter, createBooleanFilter, createNumberFilter, createEnumFilter, createReferenceFilter } from '../utils/filterCreators';
8
- export const useFilters = configuration => {
9
- const schema = useSchema();
10
- const schemaRegistry = useSchemaRegistry();
11
- const [filters] = React.useState(() => {
12
- const currFilters = [];
13
- configuration == null || configuration.items.forEach(filter => {
14
- const {
15
- id,
16
- fieldId
17
- } = filter;
18
- const fieldDefinition = schema.fields[fieldId];
19
- if (!fieldDefinition) {
20
- return;
21
- }
22
- const label = filter.displayName || fieldDefinition.displayName;
23
- const {
24
- openByDefault,
25
- tagLabel,
26
- sectionTitle
27
- } = filter;
28
- const baseParams = {
29
- id,
30
- fieldId,
31
- commonFilterProps: {
32
- sectionTitle,
33
- initiallyOpen: openByDefault,
34
- accordionItemProps: {
35
- label
36
- },
37
- toolbarItemProps: {
38
- label
39
- },
40
- toolbarTagProps: {
41
- label: tagLabel
42
- }
43
- }
44
- };
45
- switch (fieldDefinition.type) {
46
- case 'DATE':
47
- case 'DATETIME':
48
- currFilters.push(createDateTimeFilter({
49
- ...baseParams,
50
- config: filter.dateConfig
51
- }));
52
- break;
53
- case 'BOOLEAN':
54
- currFilters.push(createBooleanFilter({
55
- ...baseParams,
56
- config: filter.booleanConfig
57
- }));
58
- break;
59
- case 'NUMBER':
60
- currFilters.push(createNumberFilter({
61
- ...baseParams,
62
- config: filter.numberConfig
63
- }));
64
- break;
65
- case 'REFERENCE':
66
- {
67
- const {
68
- referencedCollectionId
69
- } = fieldDefinition.referenceMetadata;
70
- const referencedSchema = schemaRegistry.getSchema(referencedCollectionId);
71
- if (referencedSchema) {
72
- currFilters.push(createReferenceFilter({
73
- ...baseParams,
74
- config: filter.dynamicOptionsConfig,
75
- additionalParams: {
76
- referencedSchema
77
- }
78
- }));
79
- }
80
- break;
81
- }
82
- default:
83
- if (filter != null && filter.enumConfig) {
84
- currFilters.push(createEnumFilter({
85
- ...baseParams,
86
- config: filter.enumConfig
87
- }));
88
- }
89
- break;
90
- }
91
- });
92
- return currFilters;
93
- });
94
- const filterFieldMapping = React.useMemo(() => {
95
- return configuration == null ? void 0 : configuration.items.reduce((acc, filter) => {
96
- acc[filter.id] = filter;
97
- return acc;
98
- }, {});
99
- }, [configuration == null ? void 0 : configuration.items]);
4
+ import { DynamicCollectionFilter, StaticCollectionFilter } from '../components/filters';
5
+ import { getFilterComponent } from './getFilterComponent';
6
+ export const useFilters = (configuration, filtersState) => {
7
+ const {
8
+ filters,
9
+ filterFieldMapping,
10
+ filtersObject
11
+ } = filtersState;
100
12
  const collectionToolbarFiltersProps = React.useMemo(() => ({
101
13
  inline: (configuration == null ? void 0 : configuration.maxInlineFilters) || 0,
102
14
  panelTitle: configuration == null ? void 0 : configuration.panelTitle
103
15
  }), [configuration]);
104
- const filtersData = filters.reduce((acc, filter) => {
105
- acc.filters[filter.key] = filter.filter;
16
+ const filtersWithComponents = filters.map(filter => ({
17
+ ...filter,
18
+ component: getFilterComponent(filter)
19
+ })).filter(filter => filter.component !== null);
20
+ const filtersData = filtersWithComponents.reduce((acc, filter) => {
106
21
  acc.components.push(filter.collectionData ? /*#__PURE__*/React.createElement(StaticCollectionFilter, _extends({
107
22
  filter: filter.filter,
108
23
  key: filter.key,
@@ -120,13 +35,12 @@ export const useFilters = configuration => {
120
35
  }, filter.props)));
121
36
  return acc;
122
37
  }, {
123
- filters: {},
124
38
  components: [],
125
39
  collectionToolbarFiltersProps
126
40
  });
127
41
  return {
128
42
  filterFieldMapping,
129
- filtersObject: filtersData.filters,
43
+ filtersObject,
130
44
  filterComponent: filtersData.components.length > 0 ? /*#__PURE__*/React.createElement(CollectionToolbarFilters, collectionToolbarFiltersProps, filtersData.components) : undefined
131
45
  };
132
46
  };
@@ -1 +1 @@
1
- {"version":3,"names":["React","CollectionToolbarFilters","useSchema","useSchemaRegistry","StaticCollectionFilter","DynamicCollectionFilter","createDateTimeFilter","createBooleanFilter","createNumberFilter","createEnumFilter","createReferenceFilter","useFilters","configuration","schema","schemaRegistry","filters","useState","currFilters","items","forEach","filter","id","fieldId","fieldDefinition","fields","label","displayName","openByDefault","tagLabel","sectionTitle","baseParams","commonFilterProps","initiallyOpen","accordionItemProps","toolbarItemProps","toolbarTagProps","type","push","config","dateConfig","booleanConfig","numberConfig","referencedCollectionId","referenceMetadata","referencedSchema","getSchema","dynamicOptionsConfig","additionalParams","enumConfig","filterFieldMapping","useMemo","reduce","acc","collectionToolbarFiltersProps","inline","maxInlineFilters","panelTitle","filtersData","key","components","collectionData","createElement","_extends","component","props","collectionId","componentName","filtersObject","filterComponent","length","undefined"],"sources":["../../../src/hooks/useFilters.tsx"],"sourcesContent":["import React from 'react';\nimport {\n CollectionToolbarFilters,\n CollectionToolbarFiltersProps,\n Filter,\n} from '@wix/patterns';\nimport { Filter as SchemaFilterType, FiltersConfig } from '../types';\nimport { useSchema } from '../providers/SchemaContext';\nimport { useSchemaRegistry } from '../providers';\nimport {\n StaticCollectionFilter,\n DynamicCollectionFilter,\n} from '../components/filters';\nimport {\n createDateTimeFilter,\n createBooleanFilter,\n createNumberFilter,\n createEnumFilter,\n createReferenceFilter,\n} from '../utils/filterCreators';\n\nexport interface FilterOptions {\n key: string;\n fieldId: string;\n filter: Filter<any>;\n component: React.ElementType;\n collectionData?: { id: string; name: string }[];\n collectionId?: string;\n componentName?: string;\n props: Record<string, any>;\n}\n\nexport interface ReturnValue {\n filters: { [key: string]: Filter<any> };\n components: React.JSX.Element[];\n collectionToolbarFiltersProps: Pick<\n CollectionToolbarFiltersProps,\n 'inline' | 'panelTitle' | 'useNewFilters'\n >;\n}\n\nexport const useFilters = (configuration?: FiltersConfig) => {\n const schema = useSchema();\n const schemaRegistry = useSchemaRegistry();\n const [filters] = React.useState(() => {\n const currFilters: FilterOptions[] = [];\n configuration?.items.forEach((filter) => {\n const { id, fieldId } = filter;\n const fieldDefinition = schema.fields[fieldId];\n if (!fieldDefinition) {\n return;\n }\n\n const label = filter.displayName || fieldDefinition.displayName;\n const { openByDefault, tagLabel, sectionTitle } = filter;\n\n const baseParams = {\n id,\n fieldId,\n commonFilterProps: {\n sectionTitle,\n initiallyOpen: openByDefault,\n accordionItemProps: { label },\n toolbarItemProps: { label },\n toolbarTagProps: { label: tagLabel },\n },\n };\n\n switch (fieldDefinition.type) {\n case 'DATE':\n case 'DATETIME':\n currFilters.push(\n createDateTimeFilter({\n ...baseParams,\n config: filter.dateConfig,\n }),\n );\n break;\n\n case 'BOOLEAN':\n currFilters.push(\n createBooleanFilter({\n ...baseParams,\n config: filter.booleanConfig,\n }),\n );\n break;\n\n case 'NUMBER':\n currFilters.push(\n createNumberFilter({\n ...baseParams,\n config: filter.numberConfig,\n }),\n );\n break;\n\n case 'REFERENCE': {\n const { referencedCollectionId } = fieldDefinition.referenceMetadata;\n const referencedSchema = schemaRegistry.getSchema(\n referencedCollectionId,\n );\n\n if (referencedSchema) {\n currFilters.push(\n createReferenceFilter({\n ...baseParams,\n config: filter.dynamicOptionsConfig,\n additionalParams: {\n referencedSchema,\n },\n }),\n );\n }\n break;\n }\n\n default:\n if (filter?.enumConfig) {\n currFilters.push(\n createEnumFilter({\n ...baseParams,\n config: filter.enumConfig,\n }),\n );\n }\n break;\n }\n });\n return currFilters;\n });\n\n const filterFieldMapping = React.useMemo(() => {\n return configuration?.items.reduce((acc, filter) => {\n acc[filter.id] = filter;\n return acc;\n }, {} as Record<string, SchemaFilterType>);\n }, [configuration?.items]);\n\n const collectionToolbarFiltersProps = React.useMemo<\n Pick<CollectionToolbarFiltersProps, 'inline' | 'panelTitle'>\n >(\n () => ({\n inline: configuration?.maxInlineFilters || 0,\n panelTitle: configuration?.panelTitle,\n }),\n [configuration],\n );\n\n const filtersData = filters.reduce<ReturnValue>(\n (acc, filter) => {\n acc.filters[filter.key] = filter.filter;\n acc.components.push(\n filter.collectionData ? (\n <StaticCollectionFilter\n filter={filter.filter}\n key={filter.key}\n component={filter.component}\n collectionData={filter.collectionData}\n {...filter.props}\n />\n ) : filter.collectionId ? (\n <DynamicCollectionFilter\n filter={filter.filter}\n key={filter.key}\n component={filter.component}\n collectionId={filter.collectionId}\n componentName={filter.props.componentName}\n {...filter.props}\n />\n ) : (\n <filter.component\n key={filter.key}\n filter={filter.filter}\n {...filter.props}\n />\n ),\n );\n\n return acc;\n },\n { filters: {}, components: [], collectionToolbarFiltersProps },\n );\n\n return {\n filterFieldMapping,\n filtersObject: filtersData.filters,\n filterComponent:\n filtersData.components.length > 0 ? (\n <CollectionToolbarFilters {...collectionToolbarFiltersProps}>\n {filtersData.components}\n </CollectionToolbarFilters>\n ) : undefined,\n };\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","CollectionToolbarFilters","DynamicCollectionFilter","StaticCollectionFilter","getFilterComponent","useFilters","configuration","filtersState","filters","filterFieldMapping","filtersObject","collectionToolbarFiltersProps","useMemo","inline","maxInlineFilters","panelTitle","filtersWithComponents","map","filter","component","filtersData","reduce","acc","components","push","collectionData","createElement","_extends","key","props","collectionId","componentName","filterComponent","length","undefined"],"sources":["../../../src/hooks/useFilters.tsx"],"sourcesContent":["import React, { ElementType } from 'react';\nimport {\n CollectionToolbarFilters,\n CollectionToolbarFiltersProps,\n} from '@wix/patterns';\nimport { FiltersConfig } from '../types';\nimport {\n DynamicCollectionFilter,\n StaticCollectionFilter,\n} from '../components/filters';\nimport { FilterOptions, useFiltersState } from './useFiltersState';\nimport { getFilterComponent } from './getFilterComponent';\n\nexport interface FilterOptionsWithComponent extends FilterOptions {\n component: ElementType;\n}\n\nexport interface ReturnValue {\n components: React.JSX.Element[];\n collectionToolbarFiltersProps: Pick<\n CollectionToolbarFiltersProps,\n 'inline' | 'panelTitle' | 'useNewFilters'\n >;\n}\n\nexport const useFilters = (\n configuration: FiltersConfig | undefined,\n filtersState: ReturnType<typeof useFiltersState>,\n) => {\n const { filters, filterFieldMapping, filtersObject } = filtersState;\n\n const collectionToolbarFiltersProps = React.useMemo<\n Pick<CollectionToolbarFiltersProps, 'inline' | 'panelTitle'>\n >(\n () => ({\n inline: configuration?.maxInlineFilters || 0,\n panelTitle: configuration?.panelTitle,\n }),\n [configuration],\n );\n\n const filtersWithComponents = filters\n .map((filter) => ({\n ...filter,\n component: getFilterComponent(filter),\n }))\n .filter(\n (filter): filter is FilterOptionsWithComponent =>\n filter.component !== null,\n );\n\n const filtersData = filtersWithComponents.reduce<ReturnValue>(\n (acc, filter) => {\n acc.components.push(\n filter.collectionData ? (\n <StaticCollectionFilter\n filter={filter.filter}\n key={filter.key}\n component={filter.component}\n collectionData={filter.collectionData}\n {...filter.props}\n />\n ) : filter.collectionId ? (\n <DynamicCollectionFilter\n filter={filter.filter}\n key={filter.key}\n component={filter.component}\n collectionId={filter.collectionId}\n componentName={filter.props.componentName}\n {...filter.props}\n />\n ) : (\n <filter.component\n key={filter.key}\n filter={filter.filter}\n {...filter.props}\n />\n ),\n );\n\n return acc;\n },\n { components: [], collectionToolbarFiltersProps },\n );\n\n return {\n filterFieldMapping,\n filtersObject,\n filterComponent:\n filtersData.components.length > 0 ? (\n <CollectionToolbarFilters {...collectionToolbarFiltersProps}>\n {filtersData.components}\n </CollectionToolbarFilters>\n ) : undefined,\n };\n};\n"],"mappings":";AAAA,OAAOA,KAAK,MAAuB,OAAO;AAC1C,SACEC,wBAAwB,QAEnB,eAAe;AAEtB,SACEC,uBAAuB,EACvBC,sBAAsB,QACjB,uBAAuB;AAE9B,SAASC,kBAAkB,QAAQ,sBAAsB;AAczD,OAAO,MAAMC,UAAU,GAAGA,CACxBC,aAAwC,EACxCC,YAAgD,KAC7C;EACH,MAAM;IAAEC,OAAO;IAAEC,kBAAkB;IAAEC;EAAc,CAAC,GAAGH,YAAY;EAEnE,MAAMI,6BAA6B,GAAGX,KAAK,CAACY,OAAO,CAGjD,OAAO;IACLC,MAAM,EAAE,CAAAP,aAAa,oBAAbA,aAAa,CAAEQ,gBAAgB,KAAI,CAAC;IAC5CC,UAAU,EAAET,aAAa,oBAAbA,aAAa,CAAES;EAC7B,CAAC,CAAC,EACF,CAACT,aAAa,CAChB,CAAC;EAED,MAAMU,qBAAqB,GAAGR,OAAO,CAClCS,GAAG,CAAEC,MAAM,KAAM;IAChB,GAAGA,MAAM;IACTC,SAAS,EAAEf,kBAAkB,CAACc,MAAM;EACtC,CAAC,CAAC,CAAC,CACFA,MAAM,CACJA,MAAM,IACLA,MAAM,CAACC,SAAS,KAAK,IACzB,CAAC;EAEH,MAAMC,WAAW,GAAGJ,qBAAqB,CAACK,MAAM,CAC9C,CAACC,GAAG,EAAEJ,MAAM,KAAK;IACfI,GAAG,CAACC,UAAU,CAACC,IAAI,CACjBN,MAAM,CAACO,cAAc,gBACnBzB,KAAA,CAAA0B,aAAA,CAACvB,sBAAsB,EAAAwB,QAAA;MACrBT,MAAM,EAAEA,MAAM,CAACA,MAAO;MACtBU,GAAG,EAAEV,MAAM,CAACU,GAAI;MAChBT,SAAS,EAAED,MAAM,CAACC,SAAU;MAC5BM,cAAc,EAAEP,MAAM,CAACO;IAAe,GAClCP,MAAM,CAACW,KAAK,CACjB,CAAC,GACAX,MAAM,CAACY,YAAY,gBACrB9B,KAAA,CAAA0B,aAAA,CAACxB,uBAAuB,EAAAyB,QAAA;MACtBT,MAAM,EAAEA,MAAM,CAACA,MAAO;MACtBU,GAAG,EAAEV,MAAM,CAACU,GAAI;MAChBT,SAAS,EAAED,MAAM,CAACC,SAAU;MAC5BW,YAAY,EAAEZ,MAAM,CAACY,YAAa;MAClCC,aAAa,EAAEb,MAAM,CAACW,KAAK,CAACE;IAAc,GACtCb,MAAM,CAACW,KAAK,CACjB,CAAC,gBAEF7B,KAAA,CAAA0B,aAAA,CAACR,MAAM,CAACC,SAAS,EAAAQ,QAAA;MACfC,GAAG,EAAEV,MAAM,CAACU,GAAI;MAChBV,MAAM,EAAEA,MAAM,CAACA;IAAO,GAClBA,MAAM,CAACW,KAAK,CACjB,CAEL,CAAC;IAED,OAAOP,GAAG;EACZ,CAAC,EACD;IAAEC,UAAU,EAAE,EAAE;IAAEZ;EAA8B,CAClD,CAAC;EAED,OAAO;IACLF,kBAAkB;IAClBC,aAAa;IACbsB,eAAe,EACbZ,WAAW,CAACG,UAAU,CAACU,MAAM,GAAG,CAAC,gBAC/BjC,KAAA,CAAA0B,aAAA,CAACzB,wBAAwB,EAAKU,6BAA6B,EACxDS,WAAW,CAACG,UACW,CAAC,GACzBW;EACR,CAAC;AACH,CAAC","ignoreList":[]}
@@ -0,0 +1,107 @@
1
+ import { useSchema, useSchemaRegistry } from '../providers';
2
+ import React from 'react';
3
+ import { createBooleanFilter, createDateTimeFilter, createEnumFilter, createNumberFilter, createReferenceFilter } from '../utils/filterCreators';
4
+ export function useFiltersState(config) {
5
+ const schema = useSchema();
6
+ const schemaRegistry = useSchemaRegistry();
7
+ const [filters] = React.useState(() => {
8
+ const currFilters = [];
9
+ config == null || config.items.forEach(filter => {
10
+ const {
11
+ id,
12
+ fieldId
13
+ } = filter;
14
+ const fieldDefinition = schema.fields[fieldId];
15
+ if (!fieldDefinition) {
16
+ return;
17
+ }
18
+ const label = filter.displayName || fieldDefinition.displayName;
19
+ const {
20
+ openByDefault,
21
+ tagLabel,
22
+ sectionTitle
23
+ } = filter;
24
+ const baseParams = {
25
+ id,
26
+ fieldId,
27
+ fieldDefinition,
28
+ commonFilterProps: {
29
+ sectionTitle,
30
+ initiallyOpen: openByDefault,
31
+ accordionItemProps: {
32
+ label
33
+ },
34
+ toolbarItemProps: {
35
+ label
36
+ },
37
+ toolbarTagProps: {
38
+ label: tagLabel
39
+ }
40
+ }
41
+ };
42
+ switch (fieldDefinition.type) {
43
+ case 'DATE':
44
+ case 'DATETIME':
45
+ currFilters.push(createDateTimeFilter({
46
+ ...baseParams,
47
+ config: filter.dateConfig
48
+ }));
49
+ break;
50
+ case 'BOOLEAN':
51
+ currFilters.push(createBooleanFilter({
52
+ ...baseParams,
53
+ config: filter.booleanConfig
54
+ }));
55
+ break;
56
+ case 'NUMBER':
57
+ currFilters.push(createNumberFilter({
58
+ ...baseParams,
59
+ config: filter.numberConfig
60
+ }));
61
+ break;
62
+ case 'REFERENCE':
63
+ {
64
+ const {
65
+ referencedCollectionId
66
+ } = fieldDefinition.referenceMetadata;
67
+ const referencedSchema = schemaRegistry.getSchema(referencedCollectionId);
68
+ if (referencedSchema) {
69
+ currFilters.push(createReferenceFilter({
70
+ ...baseParams,
71
+ config: filter.dynamicOptionsConfig,
72
+ additionalParams: {
73
+ referencedSchema
74
+ }
75
+ }));
76
+ }
77
+ break;
78
+ }
79
+ default:
80
+ if (filter != null && filter.enumConfig) {
81
+ currFilters.push(createEnumFilter({
82
+ ...baseParams,
83
+ config: filter.enumConfig
84
+ }));
85
+ }
86
+ break;
87
+ }
88
+ });
89
+ return currFilters;
90
+ });
91
+ const filterFieldMapping = React.useMemo(() => {
92
+ return config == null ? void 0 : config.items.reduce((acc, filter) => {
93
+ acc[filter.id] = filter;
94
+ return acc;
95
+ }, {});
96
+ }, [config == null ? void 0 : config.items]);
97
+ const filtersObject = filters.reduce((acc, filter) => {
98
+ acc[filter.key] = filter.filter;
99
+ return acc;
100
+ }, {});
101
+ return {
102
+ filters,
103
+ filterFieldMapping,
104
+ filtersObject
105
+ };
106
+ }
107
+ //# sourceMappingURL=useFiltersState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useSchema","useSchemaRegistry","React","createBooleanFilter","createDateTimeFilter","createEnumFilter","createNumberFilter","createReferenceFilter","useFiltersState","config","schema","schemaRegistry","filters","useState","currFilters","items","forEach","filter","id","fieldId","fieldDefinition","fields","label","displayName","openByDefault","tagLabel","sectionTitle","baseParams","commonFilterProps","initiallyOpen","accordionItemProps","toolbarItemProps","toolbarTagProps","type","push","dateConfig","booleanConfig","numberConfig","referencedCollectionId","referenceMetadata","referencedSchema","getSchema","dynamicOptionsConfig","additionalParams","enumConfig","filterFieldMapping","useMemo","reduce","acc","filtersObject","key"],"sources":["../../../src/hooks/useFiltersState.ts"],"sourcesContent":["import { useSchema, useSchemaRegistry } from '../providers';\nimport React from 'react';\nimport {\n createBooleanFilter,\n createDateTimeFilter,\n createEnumFilter,\n createNumberFilter,\n createReferenceFilter,\n} from '../utils/filterCreators';\nimport {\n DateFilterConfig,\n DynamicOptionsFilterConfig,\n EnumFilterConfig,\n Field,\n Filter as SchemaFilterType,\n FiltersConfig,\n} from '../types';\nimport { Filter } from '@wix/patterns';\n\nexport interface FilterOptions {\n key: string;\n fieldId: string;\n fieldDefinition: Field;\n filter: Filter<any>;\n collectionData?: { id: string; name: string }[];\n collectionId?: string;\n componentName?: string;\n props: Record<string, any>;\n dateConfig?: DateFilterConfig;\n enumConfig?: EnumFilterConfig;\n dynamicOptionsFilterConfig?: DynamicOptionsFilterConfig;\n}\n\nexport function useFiltersState(config?: FiltersConfig) {\n const schema = useSchema();\n const schemaRegistry = useSchemaRegistry();\n const [filters] = React.useState(() => {\n const currFilters: FilterOptions[] = [];\n config?.items.forEach((filter) => {\n const { id, fieldId } = filter;\n const fieldDefinition = schema.fields[fieldId];\n if (!fieldDefinition) {\n return;\n }\n\n const label = filter.displayName || fieldDefinition.displayName;\n const { openByDefault, tagLabel, sectionTitle } = filter;\n\n const baseParams = {\n id,\n fieldId,\n fieldDefinition,\n commonFilterProps: {\n sectionTitle,\n initiallyOpen: openByDefault,\n accordionItemProps: { label },\n toolbarItemProps: { label },\n toolbarTagProps: { label: tagLabel },\n },\n };\n\n switch (fieldDefinition.type) {\n case 'DATE':\n case 'DATETIME':\n currFilters.push(\n createDateTimeFilter({\n ...baseParams,\n config: filter.dateConfig,\n }),\n );\n break;\n\n case 'BOOLEAN':\n currFilters.push(\n createBooleanFilter({\n ...baseParams,\n config: filter.booleanConfig,\n }),\n );\n break;\n\n case 'NUMBER':\n currFilters.push(\n createNumberFilter({\n ...baseParams,\n config: filter.numberConfig,\n }),\n );\n break;\n\n case 'REFERENCE': {\n const { referencedCollectionId } = fieldDefinition.referenceMetadata;\n const referencedSchema = schemaRegistry.getSchema(\n referencedCollectionId,\n );\n\n if (referencedSchema) {\n currFilters.push(\n createReferenceFilter({\n ...baseParams,\n config: filter.dynamicOptionsConfig,\n additionalParams: {\n referencedSchema,\n },\n }),\n );\n }\n break;\n }\n\n default:\n if (filter?.enumConfig) {\n currFilters.push(\n createEnumFilter({\n ...baseParams,\n config: filter.enumConfig,\n }),\n );\n }\n break;\n }\n });\n return currFilters;\n });\n\n const filterFieldMapping = React.useMemo(() => {\n return config?.items.reduce((acc, filter) => {\n acc[filter.id] = filter;\n return acc;\n }, {} as Record<string, SchemaFilterType>);\n }, [config?.items]);\n\n const filtersObject = filters.reduce((acc, filter) => {\n acc[filter.key] = filter.filter;\n return acc;\n }, {} as { [key: string]: Filter<any> });\n\n return { filters, filterFieldMapping, filtersObject };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,37 @@
1
+ import { useAsyncFeaturesPromiseState } from './useAsyncFeaturesPromiseState';
2
+ import { importGridDragAndDrop } from './pluginsDynamicImports';
3
+ import { getCommonCollectionFeaturesAsync } from './getCommonCollectionFeaturesAsync';
4
+ /**
5
+ * useGridFeaturesAsync - Step 3 in Grid Flow
6
+ *
7
+ * FLOW 2: AutoPatternsCollectionComponent → AutoPatternsGrid → [useGridFeaturesAsync] → AutoPatternsGridLoaded → useBaseCollectionComponentReadyFeatures → Grid
8
+ *
9
+ * This hook is responsible for loading all grid-specific async features and plugins.
10
+ * It dynamically imports features based on configuration to optimize bundle size.
11
+ * Grid flow is simpler than table flow since grids have fewer optional features.
12
+ *
13
+ * Key Responsibilities:
14
+ * - Loads common collection features (shared across all flows)
15
+ * - Conditionally loads grid-specific dragAndDrop if enabled
16
+ * - Returns promise state that tracks loading status of all features
17
+ * - Enables AutoPatternsGrid to know when all features are ready
18
+ */
19
+ export const useGridFeaturesAsync = props => {
20
+ const {
21
+ config
22
+ } = props;
23
+ const asyncFeaturesState = useAsyncFeaturesPromiseState({
24
+ // Load common features shared by all collection components (filters, common actions, etc.)
25
+ ...getCommonCollectionFeaturesAsync(),
26
+ // Grid-specific drag and drop functionality - only load if enabled in config
27
+ // Note: Grid has fewer async features compared to Table (no sections, no baseTableFeatures)
28
+ dragAndDrop: () => {
29
+ var _config$dragAndDrop;
30
+ return (_config$dragAndDrop = config.dragAndDrop) != null && _config$dragAndDrop.enabled ? importGridDragAndDrop() : null;
31
+ }
32
+ });
33
+ return {
34
+ asyncFeaturesState
35
+ };
36
+ };
37
+ //# sourceMappingURL=useGridFeaturesAsync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useAsyncFeaturesPromiseState","importGridDragAndDrop","getCommonCollectionFeaturesAsync","useGridFeaturesAsync","props","config","asyncFeaturesState","dragAndDrop","_config$dragAndDrop","enabled"],"sources":["../../../src/hooks/useGridFeaturesAsync.tsx"],"sourcesContent":["import { GridConfig } from '../types';\nimport { useAsyncFeaturesPromiseState } from './useAsyncFeaturesPromiseState';\nimport { importGridDragAndDrop } from './pluginsDynamicImports';\nimport { getCommonCollectionFeaturesAsync } from './getCommonCollectionFeaturesAsync';\n\nexport interface UseGridFeaturesAsyncProps {\n config: GridConfig;\n}\n\n/**\n * useGridFeaturesAsync - Step 3 in Grid Flow\n *\n * FLOW 2: AutoPatternsCollectionComponent → AutoPatternsGrid → [useGridFeaturesAsync] → AutoPatternsGridLoaded → useBaseCollectionComponentReadyFeatures → Grid\n *\n * This hook is responsible for loading all grid-specific async features and plugins.\n * It dynamically imports features based on configuration to optimize bundle size.\n * Grid flow is simpler than table flow since grids have fewer optional features.\n *\n * Key Responsibilities:\n * - Loads common collection features (shared across all flows)\n * - Conditionally loads grid-specific dragAndDrop if enabled\n * - Returns promise state that tracks loading status of all features\n * - Enables AutoPatternsGrid to know when all features are ready\n */\nexport const useGridFeaturesAsync = (props: UseGridFeaturesAsyncProps) => {\n const { config } = props;\n\n const asyncFeaturesState = useAsyncFeaturesPromiseState({\n // Load common features shared by all collection components (filters, common actions, etc.)\n ...getCommonCollectionFeaturesAsync(),\n\n // Grid-specific drag and drop functionality - only load if enabled in config\n // Note: Grid has fewer async features compared to Table (no sections, no baseTableFeatures)\n dragAndDrop: () =>\n config.dragAndDrop?.enabled ? importGridDragAndDrop() : null,\n });\n\n return {\n asyncFeaturesState,\n };\n};\n"],"mappings":"AACA,SAASA,4BAA4B,QAAQ,gCAAgC;AAC7E,SAASC,qBAAqB,QAAQ,yBAAyB;AAC/D,SAASC,gCAAgC,QAAQ,oCAAoC;AAMrF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,oBAAoB,GAAIC,KAAgC,IAAK;EACxE,MAAM;IAAEC;EAAO,CAAC,GAAGD,KAAK;EAExB,MAAME,kBAAkB,GAAGN,4BAA4B,CAAC;IACtD;IACA,GAAGE,gCAAgC,CAAC,CAAC;IAErC;IACA;IACAK,WAAW,EAAEA,CAAA;MAAA,IAAAC,mBAAA;MAAA,OACX,CAAAA,mBAAA,GAAAH,MAAM,CAACE,WAAW,aAAlBC,mBAAA,CAAoBC,OAAO,GAAGR,qBAAqB,CAAC,CAAC,GAAG,IAAI;IAAA;EAChE,CAAC,CAAC;EAEF,OAAO;IACLK;EACF,CAAC;AACH,CAAC","ignoreList":[]}
@@ -0,0 +1,13 @@
1
+ import { useMemo } from 'react';
2
+ export function useGridVisibleFieldIds(config) {
3
+ const {
4
+ item
5
+ } = config;
6
+ const {
7
+ titleFieldId,
8
+ subtitleFieldId,
9
+ imageFieldId
10
+ } = item;
11
+ return useMemo(() => [titleFieldId, subtitleFieldId, imageFieldId].filter(Boolean), [titleFieldId, subtitleFieldId, imageFieldId]);
12
+ }
13
+ //# sourceMappingURL=useGridVisibleFieldIds.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useMemo","useGridVisibleFieldIds","config","item","titleFieldId","subtitleFieldId","imageFieldId","filter","Boolean"],"sources":["../../../src/hooks/useGridVisibleFieldIds.ts"],"sourcesContent":["import { useMemo } from 'react';\nimport { GridSpecificConfig } from '../types';\n\nexport function useGridVisibleFieldIds(config: GridSpecificConfig) {\n const { item } = config;\n\n const { titleFieldId, subtitleFieldId, imageFieldId } = item;\n return useMemo(\n () =>\n [titleFieldId, subtitleFieldId, imageFieldId].filter(Boolean) as string[],\n [titleFieldId, subtitleFieldId, imageFieldId],\n );\n}\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,OAAO;AAG/B,OAAO,SAASC,sBAAsBA,CAACC,MAA0B,EAAE;EACjE,MAAM;IAAEC;EAAK,CAAC,GAAGD,MAAM;EAEvB,MAAM;IAAEE,YAAY;IAAEC,eAAe;IAAEC;EAAa,CAAC,GAAGH,IAAI;EAC5D,OAAOH,OAAO,CACZ,MACE,CAACI,YAAY,EAAEC,eAAe,EAAEC,YAAY,CAAC,CAACC,MAAM,CAACC,OAAO,CAAa,EAC3E,CAACJ,YAAY,EAAEC,eAAe,EAAEC,YAAY,CAC9C,CAAC;AACH","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  import { useCallback } from 'react';
2
2
  export const usePagePath = configuration => {
3
3
  const getPagePath = useCallback(pageId => {
4
- var _currentPage$collecti, _currentPage$entityPa;
4
+ var _currentPage$collecti, _currentPage$entityPa, _currentPage$settings;
5
5
  if (!pageId) {
6
6
  return '/';
7
7
  }
@@ -14,6 +14,9 @@ export const usePagePath = configuration => {
14
14
  case 'entityPage':
15
15
  path = `${(_currentPage$entityPa = currentPage.entityPage) == null ? void 0 : _currentPage$entityPa.route.path}?`;
16
16
  break;
17
+ case 'settingsPage':
18
+ path = (_currentPage$settings = currentPage.settingsPage) == null ? void 0 : _currentPage$settings.route.path;
19
+ break;
17
20
  default:
18
21
  path = undefined;
19
22
  }
@@ -1 +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,GAAG,IAAAN,qBAAA,GAAGC,WAAW,CAACS,UAAU,qBAAtBV,qBAAA,CAAwBS,KAAK,CAACH,IAAI,GAAG;QAC/C;MACF;QACEA,IAAI,GAAGK,SAAS;IACpB;IAEA,IAAIC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,MAAM,EAAE;MACnC;MACA,OAAOR,IAAI,IAAI,GAAG;IACpB;IAEA,OAAOA,IAAI;EACb,CAAC,EACD,CAACV,aAAa,CAChB,CAAC;EAED,OAAO;IAAEC;EAAY,CAAC;AACxB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","usePagePath","configuration","getPagePath","pageId","_currentPage$collecti","_currentPage$entityPa","_currentPage$settings","currentPage","pages","find","page","id","path","type","collectionPage","route","entityPage","settingsPage","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 case 'settingsPage':\n path = currentPage.settingsPage?.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,EAAAC,qBAAA;IACnB,IAAI,CAACH,MAAM,EAAE;MACX,OAAO,GAAG;IACZ;IAEA,MAAMI,WAAW,GAAGN,aAAa,CAACO,KAAK,CAACC,IAAI,CACzCC,IAAI,IAAKA,IAAI,CAACC,EAAE,KAAKR,MACxB,CAAC;IAED,IAAIS,IAAI;IACR,QAAQL,WAAW,oBAAXA,WAAW,CAAEM,IAAI;MACvB,KAAK,gBAAgB;QACnBD,IAAI,IAAAR,qBAAA,GAAGG,WAAW,CAACO,cAAc,qBAA1BV,qBAAA,CAA4BW,KAAK,CAACH,IAAI;QAC7C;MACF,KAAK,YAAY;QACfA,IAAI,GAAG,IAAAP,qBAAA,GAAGE,WAAW,CAACS,UAAU,qBAAtBX,qBAAA,CAAwBU,KAAK,CAACH,IAAI,GAAG;QAC/C;MACF,KAAK,cAAc;QACjBA,IAAI,IAAAN,qBAAA,GAAGC,WAAW,CAACU,YAAY,qBAAxBX,qBAAA,CAA0BS,KAAK,CAACH,IAAI;QAC3C;MACF;QACEA,IAAI,GAAGM,SAAS;IACpB;IAEA,IAAIC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,MAAM,EAAE;MACnC;MACA,OAAOT,IAAI,IAAI,GAAG;IACpB;IAEA,OAAOA,IAAI;EACb,CAAC,EACD,CAACX,aAAa,CAChB,CAAC;EAED,OAAO;IAAEC;EAAY,CAAC;AACxB,CAAC","ignoreList":[]}
@@ -0,0 +1,32 @@
1
+ import { useCallback } from 'react';
2
+ import { customAction, resolveAction, groupActions } from '../utils/actions';
3
+ export function useSettingsPageMoreActions(moreActions, baseSDK) {
4
+ const buildSettingsPageActions = useCallback(() => {
5
+ if (!moreActions) {
6
+ return;
7
+ }
8
+ const buildAction = actionConfig => {
9
+ // Settings page doesn't have collection context, so we cast to ActionsSDK
10
+ // The customAction function only uses sdk.overrides which is available in BaseSDK
11
+ const actionToResolve = customAction({
12
+ action: actionConfig,
13
+ actionParams: {},
14
+ sdk: baseSDK
15
+ });
16
+ if (!actionToResolve || actionToResolve.hidden) {
17
+ return null;
18
+ }
19
+ const resolved = resolveAction(actionConfig, actionToResolve);
20
+ return {
21
+ onClick: resolved.onClick,
22
+ text: resolved.label,
23
+ prefixIcon: resolved.icon,
24
+ disabled: resolved.disabled
25
+ };
26
+ };
27
+ const actionGroups = groupActions(moreActions);
28
+ return actionGroups.map(group => group.map(buildAction).filter(action => Boolean(action))).filter(group => group.length > 0);
29
+ }, [moreActions, baseSDK]);
30
+ return buildSettingsPageActions() ?? [];
31
+ }
32
+ //# sourceMappingURL=useSettingsPageMoreActions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useCallback","customAction","resolveAction","groupActions","useSettingsPageMoreActions","moreActions","baseSDK","buildSettingsPageActions","buildAction","actionConfig","actionToResolve","action","actionParams","sdk","hidden","resolved","onClick","text","label","prefixIcon","icon","disabled","actionGroups","map","group","filter","Boolean","length"],"sources":["../../../src/hooks/useSettingsPageMoreActions.ts"],"sourcesContent":["import { useCallback } from 'react';\nimport { MoreActionsItem } from '@wix/patterns';\nimport { ActionsSDK, BaseSDK, ResolvedAction } from '../types';\nimport { MoreActionsType, CustomActionConfig } from '../types/actions/base';\nimport { customAction, resolveAction, groupActions } from '../utils/actions';\n\nexport function useSettingsPageMoreActions(\n moreActions?: MoreActionsType,\n baseSDK?: BaseSDK,\n) {\n const buildSettingsPageActions = useCallback(() => {\n if (!moreActions) {\n return;\n }\n\n const buildAction = (\n actionConfig: CustomActionConfig,\n ): MoreActionsItem | null => {\n // Settings page doesn't have collection context, so we cast to ActionsSDK\n // The customAction function only uses sdk.overrides which is available in BaseSDK\n const actionToResolve = customAction({\n action: actionConfig,\n actionParams: {},\n sdk: baseSDK as ActionsSDK,\n });\n\n if (!actionToResolve || actionToResolve.hidden) {\n return null;\n }\n\n const resolved = resolveAction(\n actionConfig,\n actionToResolve,\n ) as ResolvedAction;\n\n return {\n onClick: resolved.onClick,\n text: resolved.label,\n prefixIcon: resolved.icon,\n disabled: resolved.disabled,\n };\n };\n\n const actionGroups = groupActions(moreActions);\n return actionGroups\n .map((group) =>\n group\n .map(buildAction)\n .filter((action): action is MoreActionsItem => Boolean(action)),\n )\n .filter((group) => group.length > 0);\n }, [moreActions, baseSDK]);\n\n return buildSettingsPageActions() ?? [];\n}\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,OAAO;AAInC,SAASC,YAAY,EAAEC,aAAa,EAAEC,YAAY,QAAQ,kBAAkB;AAE5E,OAAO,SAASC,0BAA0BA,CACxCC,WAA6B,EAC7BC,OAAiB,EACjB;EACA,MAAMC,wBAAwB,GAAGP,WAAW,CAAC,MAAM;IACjD,IAAI,CAACK,WAAW,EAAE;MAChB;IACF;IAEA,MAAMG,WAAW,GACfC,YAAgC,IACL;MAC3B;MACA;MACA,MAAMC,eAAe,GAAGT,YAAY,CAAC;QACnCU,MAAM,EAAEF,YAAY;QACpBG,YAAY,EAAE,CAAC,CAAC;QAChBC,GAAG,EAAEP;MACP,CAAC,CAAC;MAEF,IAAI,CAACI,eAAe,IAAIA,eAAe,CAACI,MAAM,EAAE;QAC9C,OAAO,IAAI;MACb;MAEA,MAAMC,QAAQ,GAAGb,aAAa,CAC5BO,YAAY,EACZC,eACF,CAAmB;MAEnB,OAAO;QACLM,OAAO,EAAED,QAAQ,CAACC,OAAO;QACzBC,IAAI,EAAEF,QAAQ,CAACG,KAAK;QACpBC,UAAU,EAAEJ,QAAQ,CAACK,IAAI;QACzBC,QAAQ,EAAEN,QAAQ,CAACM;MACrB,CAAC;IACH,CAAC;IAED,MAAMC,YAAY,GAAGnB,YAAY,CAACE,WAAW,CAAC;IAC9C,OAAOiB,YAAY,CAChBC,GAAG,CAAEC,KAAK,IACTA,KAAK,CACFD,GAAG,CAACf,WAAW,CAAC,CAChBiB,MAAM,CAAEd,MAAM,IAAgCe,OAAO,CAACf,MAAM,CAAC,CAClE,CAAC,CACAc,MAAM,CAAED,KAAK,IAAKA,KAAK,CAACG,MAAM,GAAG,CAAC,CAAC;EACxC,CAAC,EAAE,CAACtB,WAAW,EAAEC,OAAO,CAAC,CAAC;EAE1B,OAAOC,wBAAwB,CAAC,CAAC,IAAI,EAAE;AACzC","ignoreList":[]}
@@ -0,0 +1,18 @@
1
+ import { useSelector } from '@wix/patterns';
2
+ import { useCallback } from 'react';
3
+ import { useAppContextSync } from './useAppContextSync';
4
+ export function useSyncCollectionStateToAppContext(props) {
5
+ const {
6
+ collection
7
+ } = props;
8
+ const items = useSelector(() => collection.result.items);
9
+ const refreshCollection = useCallback(() => {
10
+ return () => {
11
+ return collection.clearResultAndMoveToStart({
12
+ force: true
13
+ });
14
+ };
15
+ }, [collection]);
16
+ useAppContextSync(items, refreshCollection);
17
+ }
18
+ //# sourceMappingURL=useSyncCollectionStateToAppContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useSelector","useCallback","useAppContextSync","useSyncCollectionStateToAppContext","props","collection","items","result","refreshCollection","clearResultAndMoveToStart","force"],"sources":["../../../src/hooks/useSyncCollectionStateToAppContext.ts"],"sourcesContent":["import { CollectionState, useSelector } from '@wix/patterns';\nimport { useCallback } from 'react';\nimport { useAppContextSync } from './useAppContextSync';\n\nexport interface UseSyncCollectionStateToAppContextProps {\n collection: CollectionState<any, {}>;\n}\n\nexport function useSyncCollectionStateToAppContext(\n props: UseSyncCollectionStateToAppContextProps,\n) {\n const { collection } = props;\n const items = useSelector(() => collection.result.items);\n\n const refreshCollection = useCallback(() => {\n return () => {\n return collection.clearResultAndMoveToStart({ force: true });\n };\n }, [collection]);\n\n useAppContextSync(items, refreshCollection);\n}\n"],"mappings":"AAAA,SAA0BA,WAAW,QAAQ,eAAe;AAC5D,SAASC,WAAW,QAAQ,OAAO;AACnC,SAASC,iBAAiB,QAAQ,qBAAqB;AAMvD,OAAO,SAASC,kCAAkCA,CAChDC,KAA8C,EAC9C;EACA,MAAM;IAAEC;EAAW,CAAC,GAAGD,KAAK;EAC5B,MAAME,KAAK,GAAGN,WAAW,CAAC,MAAMK,UAAU,CAACE,MAAM,CAACD,KAAK,CAAC;EAExD,MAAME,iBAAiB,GAAGP,WAAW,CAAC,MAAM;IAC1C,OAAO,MAAM;MACX,OAAOI,UAAU,CAACI,yBAAyB,CAAC;QAAEC,KAAK,EAAE;MAAK,CAAC,CAAC;IAC9D,CAAC;EACH,CAAC,EAAE,CAACL,UAAU,CAAC,CAAC;EAEhBH,iBAAiB,CAACI,KAAK,EAAEE,iBAAiB,CAAC;AAC7C","ignoreList":[]}
@@ -0,0 +1,46 @@
1
+ import { useAutoPatternsOverridesContext } from '../providers/AutoPatternsOverridesContext';
2
+ import { importBaseTableFeatures, importTableDragAndDrop, importTableSections } from './pluginsDynamicImports';
3
+ import { useAsyncFeaturesPromiseState } from './useAsyncFeaturesPromiseState';
4
+ import { getCommonCollectionFeaturesAsync } from './getCommonCollectionFeaturesAsync';
5
+ /**
6
+ * useTableFeaturesAsync - Step 3 in Table Flow
7
+ *
8
+ * FLOW 1: AutoPatternsCollectionComponent → AutoPatternsTable → [useTableFeaturesAsync] → AutoPatternsTableLoaded → useBaseCollectionComponentReadyFeatures → Table
9
+ *
10
+ * This hook is responsible for loading all table-specific async features and plugins.
11
+ * It dynamically imports features based on configuration to optimize bundle size.
12
+ *
13
+ * Key Responsibilities:
14
+ * - Loads common collection features (shared across all flows)
15
+ * - Conditionally loads table-specific dragAndDrop if enabled
16
+ * - Always loads baseTableFeatures for core table functionality
17
+ * - Conditionally loads table sections if configured with overrides
18
+ * - Returns promise state that tracks loading status of all features
19
+ * - Enables AutoPatternsTable to know when all features are ready
20
+ */
21
+ export const useTableFeaturesAsync = props => {
22
+ const {
23
+ config
24
+ } = props;
25
+ const overrides = useAutoPatternsOverridesContext();
26
+ const asyncFeaturesState = useAsyncFeaturesPromiseState({
27
+ // Load common features shared by all collection components (filters, common actions, etc.)
28
+ ...getCommonCollectionFeaturesAsync(),
29
+ // Table-specific drag and drop functionality - only load if enabled in config
30
+ dragAndDrop: () => {
31
+ var _config$dragAndDrop;
32
+ return (_config$dragAndDrop = config.dragAndDrop) != null && _config$dragAndDrop.enabled ? importTableDragAndDrop() : null;
33
+ },
34
+ // Core table features (columns, custom columns, row clicks, etc.) - always required
35
+ baseTableFeatures: () => importBaseTableFeatures(),
36
+ // Table sections feature - only load if sections are configured AND overrides exist
37
+ sections: () => {
38
+ var _config$sections, _overrides$sections;
39
+ return !!((_config$sections = config.sections) != null && _config$sections.id) && (overrides == null || (_overrides$sections = overrides.sections) == null ? void 0 : _overrides$sections[config.sections.id]) != null ? importTableSections() : null;
40
+ }
41
+ });
42
+ return {
43
+ asyncFeaturesState
44
+ };
45
+ };
46
+ //# sourceMappingURL=useTableFeaturesAsync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useAutoPatternsOverridesContext","importBaseTableFeatures","importTableDragAndDrop","importTableSections","useAsyncFeaturesPromiseState","getCommonCollectionFeaturesAsync","useTableFeaturesAsync","props","config","overrides","asyncFeaturesState","dragAndDrop","_config$dragAndDrop","enabled","baseTableFeatures","sections","_config$sections","_overrides$sections","id"],"sources":["../../../src/hooks/useTableFeaturesAsync.tsx"],"sourcesContent":["import { TableConfig } from '../types';\nimport { useAutoPatternsOverridesContext } from '../providers/AutoPatternsOverridesContext';\nimport {\n importBaseTableFeatures,\n importTableDragAndDrop,\n importTableSections,\n} from './pluginsDynamicImports';\nimport { useAsyncFeaturesPromiseState } from './useAsyncFeaturesPromiseState';\nimport { getCommonCollectionFeaturesAsync } from './getCommonCollectionFeaturesAsync';\n\nexport interface UseTableFeaturesAsyncProps {\n config: TableConfig;\n}\n\n/**\n * useTableFeaturesAsync - Step 3 in Table Flow\n *\n * FLOW 1: AutoPatternsCollectionComponent → AutoPatternsTable → [useTableFeaturesAsync] → AutoPatternsTableLoaded → useBaseCollectionComponentReadyFeatures → Table\n *\n * This hook is responsible for loading all table-specific async features and plugins.\n * It dynamically imports features based on configuration to optimize bundle size.\n *\n * Key Responsibilities:\n * - Loads common collection features (shared across all flows)\n * - Conditionally loads table-specific dragAndDrop if enabled\n * - Always loads baseTableFeatures for core table functionality\n * - Conditionally loads table sections if configured with overrides\n * - Returns promise state that tracks loading status of all features\n * - Enables AutoPatternsTable to know when all features are ready\n */\nexport const useTableFeaturesAsync = (props: UseTableFeaturesAsyncProps) => {\n const { config } = props;\n\n const overrides = useAutoPatternsOverridesContext();\n\n const asyncFeaturesState = useAsyncFeaturesPromiseState({\n // Load common features shared by all collection components (filters, common actions, etc.)\n ...getCommonCollectionFeaturesAsync(),\n\n // Table-specific drag and drop functionality - only load if enabled in config\n dragAndDrop: () =>\n config.dragAndDrop?.enabled ? importTableDragAndDrop() : null,\n\n // Core table features (columns, custom columns, row clicks, etc.) - always required\n baseTableFeatures: () => importBaseTableFeatures(),\n\n // Table sections feature - only load if sections are configured AND overrides exist\n sections: () =>\n !!config.sections?.id && overrides?.sections?.[config.sections.id] != null\n ? importTableSections()\n : null,\n });\n\n return { asyncFeaturesState };\n};\n"],"mappings":"AACA,SAASA,+BAA+B,QAAQ,2CAA2C;AAC3F,SACEC,uBAAuB,EACvBC,sBAAsB,EACtBC,mBAAmB,QACd,yBAAyB;AAChC,SAASC,4BAA4B,QAAQ,gCAAgC;AAC7E,SAASC,gCAAgC,QAAQ,oCAAoC;AAMrF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,qBAAqB,GAAIC,KAAiC,IAAK;EAC1E,MAAM;IAAEC;EAAO,CAAC,GAAGD,KAAK;EAExB,MAAME,SAAS,GAAGT,+BAA+B,CAAC,CAAC;EAEnD,MAAMU,kBAAkB,GAAGN,4BAA4B,CAAC;IACtD;IACA,GAAGC,gCAAgC,CAAC,CAAC;IAErC;IACAM,WAAW,EAAEA,CAAA;MAAA,IAAAC,mBAAA;MAAA,OACX,CAAAA,mBAAA,GAAAJ,MAAM,CAACG,WAAW,aAAlBC,mBAAA,CAAoBC,OAAO,GAAGX,sBAAsB,CAAC,CAAC,GAAG,IAAI;IAAA;IAE/D;IACAY,iBAAiB,EAAEA,CAAA,KAAMb,uBAAuB,CAAC,CAAC;IAElD;IACAc,QAAQ,EAAEA,CAAA;MAAA,IAAAC,gBAAA,EAAAC,mBAAA;MAAA,OACR,CAAC,GAAAD,gBAAA,GAACR,MAAM,CAACO,QAAQ,aAAfC,gBAAA,CAAiBE,EAAE,KAAI,CAAAT,SAAS,aAAAQ,mBAAA,GAATR,SAAS,CAAEM,QAAQ,qBAAnBE,mBAAA,CAAsBT,MAAM,CAACO,QAAQ,CAACG,EAAE,CAAC,KAAI,IAAI,GACtEf,mBAAmB,CAAC,CAAC,GACrB,IAAI;IAAA;EACZ,CAAC,CAAC;EAEF,OAAO;IAAEO;EAAmB,CAAC;AAC/B,CAAC","ignoreList":[]}
@@ -0,0 +1,47 @@
1
+ import { useAutoPatternsOverridesContext } from '../providers';
2
+ import { useAsyncFeaturesPromiseState } from './useAsyncFeaturesPromiseState';
3
+ import { importBaseTableFeatures, importTableGridSwitchDragAndDrop, importTableSections } from './pluginsDynamicImports';
4
+ import { getCommonCollectionFeaturesAsync } from './getCommonCollectionFeaturesAsync';
5
+ /**
6
+ * useTableGridSwitchFeaturesAsync - Step 3 in TableGridSwitch Flow
7
+ *
8
+ * FLOW 3: AutoPatternsCollectionComponent → AutoPatternsTableGridSwitch → [useTableGridSwitchFeaturesAsync] → AutoPatternsTableGridSwitchLoaded → useBaseCollectionComponentReadyFeatures → TableGridSwitch
9
+ *
10
+ * This hook is responsible for loading all table-grid-switch specific async features and plugins.
11
+ * It combines features from both table and grid flows to support runtime switching between views.
12
+ *
13
+ * Key Responsibilities:
14
+ * - Loads common collection features (shared across all flows)
15
+ * - Conditionally loads table-grid-switch specific dragAndDrop if enabled
16
+ * - Always loads baseTableFeatures for core table functionality (needed for table mode)
17
+ * - Conditionally loads table sections if configured with overrides (table mode feature)
18
+ * - Note: Grid-specific features are handled synchronously via useBaseGridFeatures
19
+ * - Returns promise state that tracks loading status of all features
20
+ */
21
+ export const useTableGridSwitchFeaturesAsync = props => {
22
+ const {
23
+ config
24
+ } = props;
25
+ const overrides = useAutoPatternsOverridesContext();
26
+ const asyncFeaturesState = useAsyncFeaturesPromiseState({
27
+ // Load common features shared by all collection components (filters, common actions, etc.)
28
+ ...getCommonCollectionFeaturesAsync(),
29
+ // Table-grid-switch specific drag and drop functionality - handles both table AND grid drag&drop
30
+ dragAndDrop: () => {
31
+ var _config$dragAndDrop;
32
+ return (_config$dragAndDrop = config.dragAndDrop) != null && _config$dragAndDrop.enabled ? importTableGridSwitchDragAndDrop() : null;
33
+ },
34
+ // Core table features (columns, custom columns, row clicks, etc.) - required for table mode
35
+ baseTableFeatures: () => importBaseTableFeatures(),
36
+ // Table sections feature - only load if sections are configured AND overrides exist
37
+ // This is table-specific functionality not used in grid mode
38
+ sections: () => {
39
+ var _config$sections, _overrides$sections;
40
+ return !!((_config$sections = config.sections) != null && _config$sections.id) && (overrides == null || (_overrides$sections = overrides.sections) == null ? void 0 : _overrides$sections[config.sections.id]) != null ? importTableSections() : null;
41
+ }
42
+ });
43
+ return {
44
+ asyncFeaturesState
45
+ };
46
+ };
47
+ //# sourceMappingURL=useTableGridSwitchFeaturesAsync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useAutoPatternsOverridesContext","useAsyncFeaturesPromiseState","importBaseTableFeatures","importTableGridSwitchDragAndDrop","importTableSections","getCommonCollectionFeaturesAsync","useTableGridSwitchFeaturesAsync","props","config","overrides","asyncFeaturesState","dragAndDrop","_config$dragAndDrop","enabled","baseTableFeatures","sections","_config$sections","_overrides$sections","id"],"sources":["../../../src/hooks/useTableGridSwitchFeaturesAsync.tsx"],"sourcesContent":["import { TableGridSwitchConfig } from '../types';\nimport { useAutoPatternsOverridesContext } from '../providers';\nimport { useAsyncFeaturesPromiseState } from './useAsyncFeaturesPromiseState';\nimport {\n importBaseTableFeatures,\n importTableGridSwitchDragAndDrop,\n importTableSections,\n} from './pluginsDynamicImports';\nimport { getCommonCollectionFeaturesAsync } from './getCommonCollectionFeaturesAsync';\n\nexport interface UseTableGridSwitchFeaturesAsyncProps {\n config: TableGridSwitchConfig;\n}\n\n/**\n * useTableGridSwitchFeaturesAsync - Step 3 in TableGridSwitch Flow\n *\n * FLOW 3: AutoPatternsCollectionComponent → AutoPatternsTableGridSwitch → [useTableGridSwitchFeaturesAsync] → AutoPatternsTableGridSwitchLoaded → useBaseCollectionComponentReadyFeatures → TableGridSwitch\n *\n * This hook is responsible for loading all table-grid-switch specific async features and plugins.\n * It combines features from both table and grid flows to support runtime switching between views.\n *\n * Key Responsibilities:\n * - Loads common collection features (shared across all flows)\n * - Conditionally loads table-grid-switch specific dragAndDrop if enabled\n * - Always loads baseTableFeatures for core table functionality (needed for table mode)\n * - Conditionally loads table sections if configured with overrides (table mode feature)\n * - Note: Grid-specific features are handled synchronously via useBaseGridFeatures\n * - Returns promise state that tracks loading status of all features\n */\nexport const useTableGridSwitchFeaturesAsync = (\n props: UseTableGridSwitchFeaturesAsyncProps,\n) => {\n const { config } = props;\n\n const overrides = useAutoPatternsOverridesContext();\n\n const asyncFeaturesState = useAsyncFeaturesPromiseState({\n // Load common features shared by all collection components (filters, common actions, etc.)\n ...getCommonCollectionFeaturesAsync(),\n\n // Table-grid-switch specific drag and drop functionality - handles both table AND grid drag&drop\n dragAndDrop: () =>\n config.dragAndDrop?.enabled ? importTableGridSwitchDragAndDrop() : null,\n\n // Core table features (columns, custom columns, row clicks, etc.) - required for table mode\n baseTableFeatures: () => importBaseTableFeatures(),\n\n // Table sections feature - only load if sections are configured AND overrides exist\n // This is table-specific functionality not used in grid mode\n sections: () =>\n !!config.sections?.id && overrides?.sections?.[config.sections.id] != null\n ? importTableSections()\n : null,\n });\n\n return { asyncFeaturesState };\n};\n"],"mappings":"AACA,SAASA,+BAA+B,QAAQ,cAAc;AAC9D,SAASC,4BAA4B,QAAQ,gCAAgC;AAC7E,SACEC,uBAAuB,EACvBC,gCAAgC,EAChCC,mBAAmB,QACd,yBAAyB;AAChC,SAASC,gCAAgC,QAAQ,oCAAoC;AAMrF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,+BAA+B,GAC1CC,KAA2C,IACxC;EACH,MAAM;IAAEC;EAAO,CAAC,GAAGD,KAAK;EAExB,MAAME,SAAS,GAAGT,+BAA+B,CAAC,CAAC;EAEnD,MAAMU,kBAAkB,GAAGT,4BAA4B,CAAC;IACtD;IACA,GAAGI,gCAAgC,CAAC,CAAC;IAErC;IACAM,WAAW,EAAEA,CAAA;MAAA,IAAAC,mBAAA;MAAA,OACX,CAAAA,mBAAA,GAAAJ,MAAM,CAACG,WAAW,aAAlBC,mBAAA,CAAoBC,OAAO,GAAGV,gCAAgC,CAAC,CAAC,GAAG,IAAI;IAAA;IAEzE;IACAW,iBAAiB,EAAEA,CAAA,KAAMZ,uBAAuB,CAAC,CAAC;IAElD;IACA;IACAa,QAAQ,EAAEA,CAAA;MAAA,IAAAC,gBAAA,EAAAC,mBAAA;MAAA,OACR,CAAC,GAAAD,gBAAA,GAACR,MAAM,CAACO,QAAQ,aAAfC,gBAAA,CAAiBE,EAAE,KAAI,CAAAT,SAAS,aAAAQ,mBAAA,GAATR,SAAS,CAAEM,QAAQ,qBAAnBE,mBAAA,CAAsBT,MAAM,CAACO,QAAQ,CAACG,EAAE,CAAC,KAAI,IAAI,GACtEd,mBAAmB,CAAC,CAAC,GACrB,IAAI;IAAA;EACZ,CAAC,CAAC;EAEF,OAAO;IAAEM;EAAmB,CAAC;AAC/B,CAAC","ignoreList":[]}
@@ -0,0 +1,14 @@
1
+ import { TableSections } from '@wix/patterns';
2
+ import { useAutoPatternsOverridesContext } from '../providers';
3
+ export function useTableSections(config) {
4
+ var _config$sections, _overrides$sections, _overrides$sections2;
5
+ const overrides = useAutoPatternsOverridesContext();
6
+ if (!((_config$sections = config.sections) != null && _config$sections.id) || !(overrides != null && (_overrides$sections = overrides.sections) != null && _overrides$sections[config.sections.id])) {
7
+ return undefined;
8
+ }
9
+ return {
10
+ renderSection: (_overrides$sections2 = overrides.sections) == null ? void 0 : _overrides$sections2[config.sections.id],
11
+ TableSections
12
+ };
13
+ }
14
+ //# sourceMappingURL=useTableSections.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["TableSections","useAutoPatternsOverridesContext","useTableSections","config","_config$sections","_overrides$sections","_overrides$sections2","overrides","sections","id","undefined","renderSection"],"sources":["../../../src/hooks/useTableSections.ts"],"sourcesContent":["import { TableSections } from '@wix/patterns';\nimport { useAutoPatternsOverridesContext } from '../providers';\nimport { TableConfig } from '../types';\n\nexport function useTableSections(config: TableConfig) {\n const overrides = useAutoPatternsOverridesContext();\n\n if (!config.sections?.id || !overrides?.sections?.[config.sections.id]) {\n return undefined;\n }\n\n return {\n renderSection: overrides.sections?.[config.sections.id],\n TableSections,\n };\n}\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,eAAe;AAC7C,SAASC,+BAA+B,QAAQ,cAAc;AAG9D,OAAO,SAASC,gBAAgBA,CAACC,MAAmB,EAAE;EAAA,IAAAC,gBAAA,EAAAC,mBAAA,EAAAC,oBAAA;EACpD,MAAMC,SAAS,GAAGN,+BAA+B,CAAC,CAAC;EAEnD,IAAI,GAAAG,gBAAA,GAACD,MAAM,CAACK,QAAQ,aAAfJ,gBAAA,CAAiBK,EAAE,KAAI,EAACF,SAAS,aAAAF,mBAAA,GAATE,SAAS,CAAEC,QAAQ,aAAnBH,mBAAA,CAAsBF,MAAM,CAACK,QAAQ,CAACC,EAAE,CAAC,GAAE;IACtE,OAAOC,SAAS;EAClB;EAEA,OAAO;IACLC,aAAa,GAAAL,oBAAA,GAAEC,SAAS,CAACC,QAAQ,qBAAlBF,oBAAA,CAAqBH,MAAM,CAACK,QAAQ,CAACC,EAAE,CAAC;IACvDT;EACF,CAAC;AACH","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["React","createContext","useContext","AutoPatternsOverridesContext","undefined","AutoPatternsOverridesProvider","_ref","children","value","createElement","Provider","useAutoPatternsOverridesContext","PatternsWizardOverridesProvider"],"sources":["../../../src/providers/AutoPatternsOverridesContext.tsx"],"sourcesContent":["import React, { createContext, useContext, ReactNode } from 'react';\nimport {\n CustomComponentProps,\n CustomActionCellPrimaryActionResolver,\n CustomActionCellSecondaryActionResolver,\n CustomEntityPageActionResolver,\n CustomBulkActionsActionResolver,\n CustomActionCollectionPageActionResolver,\n CustomActionCollectionPageActionOnRowClickResolver,\n IColumnValue,\n SchemaConfig,\n} from '../types';\n\nimport { Section, useOptimisticActions } from '@wix/patterns';\nimport { BadgeSkin, IconElement } from '@wix/design-system';\nimport { collections } from '@wix/data';\n\nexport interface AutoPatternsOverridesContextProps {\n actions?: Record<\n string,\n | CustomActionCellPrimaryActionResolver\n | CustomActionCellSecondaryActionResolver\n | CustomBulkActionsActionResolver\n | CustomEntityPageActionResolver\n | CustomActionCollectionPageActionResolver\n | CustomActionCollectionPageActionOnRowClickResolver\n >;\n columns?: Record<string, (props: IColumnValue<any>) => void>;\n modals?: Record<string, React.FC<any>>;\n emptyState?: Record<string, () => void>;\n components?: Record<string, React.FC<CustomComponentProps>>;\n slots?: Record<string, React.FC>;\n entityPageHeaderSubtitle?: Record<\n string,\n (entity: Record<string, any>) => { text: string }\n >;\n entityPageHeaderBadges?: Record<\n string,\n (entity: Record<string, any>) => {\n text: string;\n skin?: BadgeSkin;\n prefixIcon?: IconElement;\n suffixIcon?: IconElement;\n }[]\n >;\n customDataSources?: Record<\n string,\n (collectionId: string, context: any) => Promise<SchemaConfig>\n >;\n cmsSchema?: Record<string, collections.DataCollection>;\n sections?: Record<string, (item: any) => Section>;\n optimisticActions?: Record<\n string,\n Parameters<typeof useOptimisticActions>[1]\n >;\n bulkDeleteModalTitle?: Record<\n string,\n (params: { selectedCount: number; selectedValues: any[] }) => {\n text: string;\n }\n >;\n dragAndDrop?: Record<string, () => void>;\n}\n\nconst AutoPatternsOverridesContext = createContext<\n AutoPatternsOverridesContextProps | undefined\n>(undefined);\n\nexport const AutoPatternsOverridesProvider: React.FC<{\n children: ReactNode;\n value: AutoPatternsOverridesContextProps;\n}> = ({ children, value }) => {\n return (\n <AutoPatternsOverridesContext.Provider value={value}>\n {children}\n </AutoPatternsOverridesContext.Provider>\n );\n};\n\nexport const useAutoPatternsOverridesContext = ():\n | AutoPatternsOverridesContextProps\n | undefined => {\n return useContext(AutoPatternsOverridesContext);\n};\n\n// For backwards compatibility\nexport interface PatternsWizardOverridesContextProps\n extends AutoPatternsOverridesContextProps {}\nexport const PatternsWizardOverridesProvider = AutoPatternsOverridesProvider;\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,aAAa,EAAEC,UAAU,QAAmB,OAAO;AAgEnE,MAAMC,4BAA4B,gBAAGF,aAAa,CAEhDG,SAAS,CAAC;AAEZ,OAAO,MAAMC,6BAGX,GAAGC,IAAA,IAAyB;EAAA,IAAxB;IAAEC,QAAQ;IAAEC;EAAM,CAAC,GAAAF,IAAA;EACvB,oBACEN,KAAA,CAAAS,aAAA,CAACN,4BAA4B,CAACO,QAAQ;IAACF,KAAK,EAAEA;EAAM,GACjDD,QACoC,CAAC;AAE5C,CAAC;AAED,OAAO,MAAMI,+BAA+B,GAAGA,CAAA,KAE9B;EACf,OAAOT,UAAU,CAACC,4BAA4B,CAAC;AACjD,CAAC;;AAED;;AAGA,OAAO,MAAMS,+BAA+B,GAAGP,6BAA6B","ignoreList":[]}
1
+ {"version":3,"names":["React","createContext","useContext","AutoPatternsOverridesContext","undefined","AutoPatternsOverridesProvider","_ref","children","value","createElement","Provider","useAutoPatternsOverridesContext","PatternsWizardOverridesProvider"],"sources":["../../../src/providers/AutoPatternsOverridesContext.tsx"],"sourcesContent":["import React, { createContext, useContext, ReactNode } from 'react';\nimport {\n CustomComponentProps,\n CustomActionCellPrimaryActionResolver,\n CustomActionCellSecondaryActionResolver,\n CustomEntityPageActionResolver,\n CustomFormPageActionResolver,\n CustomBulkActionsActionResolver,\n CustomActionCollectionPageActionResolver,\n CustomActionCollectionPageActionOnRowClickResolver,\n IColumnValue,\n SchemaConfig,\n} from '../types';\n\nimport { Section, useOptimisticActions } from '@wix/patterns';\nimport { BadgeSkin, IconElement } from '@wix/design-system';\nimport { collections } from '@wix/data';\n\nexport interface AutoPatternsOverridesContextProps {\n actions?: Record<\n string,\n | CustomActionCellPrimaryActionResolver\n | CustomActionCellSecondaryActionResolver\n | CustomBulkActionsActionResolver\n | CustomEntityPageActionResolver\n | CustomFormPageActionResolver\n | CustomActionCollectionPageActionResolver\n | CustomActionCollectionPageActionOnRowClickResolver\n >;\n columns?: Record<string, (props: IColumnValue<any>) => void>;\n modals?: Record<string, React.FC<any>>;\n emptyState?: Record<string, () => void>;\n components?: Record<string, React.FC<CustomComponentProps>>;\n slots?: Record<string, React.FC>;\n entityPageHeaderSubtitle?: Record<\n string,\n (entity: Record<string, any>) => { text: string }\n >;\n entityPageHeaderBadges?: Record<\n string,\n (entity: Record<string, any>) => {\n text: string;\n skin?: BadgeSkin;\n prefixIcon?: IconElement;\n suffixIcon?: IconElement;\n }[]\n >;\n customDataSources?: Record<\n string,\n (collectionId: string, context: any) => Promise<SchemaConfig>\n >;\n cmsSchema?: Record<string, collections.DataCollection>;\n sections?: Record<string, (item: any) => Section>;\n optimisticActions?: Record<\n string,\n Parameters<typeof useOptimisticActions>[1]\n >;\n bulkDeleteModalTitle?: Record<\n string,\n (params: { selectedCount: number; selectedValues: any[] }) => {\n text: string;\n }\n >;\n dragAndDrop?: Record<string, () => void>;\n}\n\nconst AutoPatternsOverridesContext = createContext<\n AutoPatternsOverridesContextProps | undefined\n>(undefined);\n\nexport const AutoPatternsOverridesProvider: React.FC<{\n children: ReactNode;\n value: AutoPatternsOverridesContextProps;\n}> = ({ children, value }) => {\n return (\n <AutoPatternsOverridesContext.Provider value={value}>\n {children}\n </AutoPatternsOverridesContext.Provider>\n );\n};\n\nexport const useAutoPatternsOverridesContext = ():\n | AutoPatternsOverridesContextProps\n | undefined => {\n return useContext(AutoPatternsOverridesContext);\n};\n\n// For backwards compatibility\nexport interface PatternsWizardOverridesContextProps\n extends AutoPatternsOverridesContextProps {}\nexport const PatternsWizardOverridesProvider = AutoPatternsOverridesProvider;\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,aAAa,EAAEC,UAAU,QAAmB,OAAO;AAkEnE,MAAMC,4BAA4B,gBAAGF,aAAa,CAEhDG,SAAS,CAAC;AAEZ,OAAO,MAAMC,6BAGX,GAAGC,IAAA,IAAyB;EAAA,IAAxB;IAAEC,QAAQ;IAAEC;EAAM,CAAC,GAAAF,IAAA;EACvB,oBACEN,KAAA,CAAAS,aAAA,CAACN,4BAA4B,CAACO,QAAQ;IAACF,KAAK,EAAEA;EAAM,GACjDD,QACoC,CAAC;AAE5C,CAAC;AAED,OAAO,MAAMI,+BAA+B,GAAGA,CAAA,KAE9B;EACf,OAAOT,UAAU,CAACC,4BAA4B,CAAC;AACjD,CAAC;;AAED;;AAGA,OAAO,MAAMS,+BAA+B,GAAGP,6BAA6B","ignoreList":[]}