@wix/patterns 1.468.0 → 1.469.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 (856) hide show
  1. package/dist/cjs/components/ActionCell/ActionCell.js.map +1 -1
  2. package/dist/cjs/components/CardContainer/CardContainer.st.css.js +2 -2
  3. package/dist/cjs/components/CardContainer/CardContainer.st.css.js.map +1 -1
  4. package/dist/cjs/components/CmsFieldManagement/CmsFieldForm.st.css.js +3 -3
  5. package/dist/cjs/components/CmsFieldManagement/CmsFieldForm.st.css.js.map +1 -1
  6. package/dist/cjs/components/CmsFieldManagement/CmsFieldModal.st.css.js +3 -3
  7. package/dist/cjs/components/CmsFieldManagement/CmsFieldModal.st.css.js.map +1 -1
  8. package/dist/cjs/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.js +3 -3
  9. package/dist/cjs/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.js.map +1 -1
  10. package/dist/cjs/components/Collapse/Collapse.st.css.js +3 -3
  11. package/dist/cjs/components/Collapse/Collapse.st.css.js.map +1 -1
  12. package/dist/cjs/components/CollectionPageNew/CollectionPage.st.css.js +2 -2
  13. package/dist/cjs/components/CollectionPageNew/CollectionPage.st.css.js.map +1 -1
  14. package/dist/cjs/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js +3 -3
  15. package/dist/cjs/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js.map +1 -1
  16. package/dist/cjs/components/CollectionTable/CollectionTable.st.css.js +2 -2
  17. package/dist/cjs/components/CollectionTable/CollectionTable.st.css.js.map +1 -1
  18. package/dist/cjs/components/CollectionTable/CollectionTable.uni.driver.js +5 -1
  19. package/dist/cjs/components/CollectionTable/CollectionTable.uni.driver.js.map +1 -1
  20. package/dist/cjs/components/CollectionTable/CollectionTableWSRTable.st.css.js +2 -2
  21. package/dist/cjs/components/CollectionTable/CollectionTableWSRTable.st.css.js.map +1 -1
  22. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js +5 -5
  23. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js.map +1 -1
  24. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +4 -4
  25. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js.map +1 -1
  26. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
  27. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js.map +1 -1
  28. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
  29. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js.map +1 -1
  30. package/dist/cjs/components/DragHandle/DragHandle.st.css.js +2 -2
  31. package/dist/cjs/components/DragHandle/DragHandle.st.css.js.map +1 -1
  32. package/dist/cjs/components/EditableTable/EditableCell.st.css.js +3 -3
  33. package/dist/cjs/components/EditableTable/EditableCell.st.css.js.map +1 -1
  34. package/dist/cjs/components/EditableTable/EditableTable.js +16 -11
  35. package/dist/cjs/components/EditableTable/EditableTable.js.map +1 -1
  36. package/dist/cjs/components/EditableTable/EditableTable.uni.driver.js +4 -0
  37. package/dist/cjs/components/EditableTable/EditableTable.uni.driver.js.map +1 -1
  38. package/dist/cjs/components/EditableTable/HeaderActionsPopover.st.css.js +2 -2
  39. package/dist/cjs/components/EditableTable/HeaderActionsPopover.st.css.js.map +1 -1
  40. package/dist/cjs/components/EditableTable/cellTypes/CellViewLayout.st.css.js +2 -2
  41. package/dist/cjs/components/EditableTable/cellTypes/CellViewLayout.st.css.js.map +1 -1
  42. package/dist/cjs/components/EditableTable/cellTypes/address/Edit.st.css.js +3 -3
  43. package/dist/cjs/components/EditableTable/cellTypes/address/Edit.st.css.js.map +1 -1
  44. package/dist/cjs/components/EditableTable/cellTypes/array/Edit.st.css.js +3 -3
  45. package/dist/cjs/components/EditableTable/cellTypes/array/Edit.st.css.js.map +1 -1
  46. package/dist/cjs/components/EditableTable/cellTypes/boolean/Edit.st.css.js +3 -3
  47. package/dist/cjs/components/EditableTable/cellTypes/boolean/Edit.st.css.js.map +1 -1
  48. package/dist/cjs/components/EditableTable/cellTypes/boolean/View.st.css.js +3 -3
  49. package/dist/cjs/components/EditableTable/cellTypes/boolean/View.st.css.js.map +1 -1
  50. package/dist/cjs/components/EditableTable/cellTypes/color/Edit.st.css.js +2 -2
  51. package/dist/cjs/components/EditableTable/cellTypes/color/Edit.st.css.js.map +1 -1
  52. package/dist/cjs/components/EditableTable/cellTypes/date/Edit.st.css.js +3 -3
  53. package/dist/cjs/components/EditableTable/cellTypes/date/Edit.st.css.js.map +1 -1
  54. package/dist/cjs/components/EditableTable/cellTypes/date/View.st.css.js +2 -2
  55. package/dist/cjs/components/EditableTable/cellTypes/date/View.st.css.js.map +1 -1
  56. package/dist/cjs/components/EditableTable/cellTypes/datetime/Edit.st.css.js +8 -8
  57. package/dist/cjs/components/EditableTable/cellTypes/datetime/Edit.st.css.js.map +1 -1
  58. package/dist/cjs/components/EditableTable/cellTypes/datetime/View.st.css.js +7 -7
  59. package/dist/cjs/components/EditableTable/cellTypes/datetime/View.st.css.js.map +1 -1
  60. package/dist/cjs/components/EditableTable/cellTypes/email/Edit.st.css.js +3 -3
  61. package/dist/cjs/components/EditableTable/cellTypes/email/Edit.st.css.js.map +1 -1
  62. package/dist/cjs/components/EditableTable/cellTypes/email/View.st.css.js +2 -2
  63. package/dist/cjs/components/EditableTable/cellTypes/email/View.st.css.js.map +1 -1
  64. package/dist/cjs/components/EditableTable/cellTypes/number/Edit.st.css.js +3 -3
  65. package/dist/cjs/components/EditableTable/cellTypes/number/Edit.st.css.js.map +1 -1
  66. package/dist/cjs/components/EditableTable/cellTypes/number/View.st.css.js +3 -3
  67. package/dist/cjs/components/EditableTable/cellTypes/number/View.st.css.js.map +1 -1
  68. package/dist/cjs/components/EditableTable/cellTypes/object/Edit.st.css.js +3 -3
  69. package/dist/cjs/components/EditableTable/cellTypes/object/Edit.st.css.js.map +1 -1
  70. package/dist/cjs/components/EditableTable/cellTypes/object/View.st.css.js +2 -2
  71. package/dist/cjs/components/EditableTable/cellTypes/object/View.st.css.js.map +1 -1
  72. package/dist/cjs/components/EditableTable/cellTypes/select/Edit.st.css.js +3 -3
  73. package/dist/cjs/components/EditableTable/cellTypes/select/Edit.st.css.js.map +1 -1
  74. package/dist/cjs/components/EditableTable/cellTypes/text/Edit.st.css.js +4 -4
  75. package/dist/cjs/components/EditableTable/cellTypes/text/Edit.st.css.js.map +1 -1
  76. package/dist/cjs/components/EditableTable/cellTypes/text/View.st.css.js +2 -2
  77. package/dist/cjs/components/EditableTable/cellTypes/text/View.st.css.js.map +1 -1
  78. package/dist/cjs/components/EditableTable/cellTypes/time/Edit.st.css.js +4 -4
  79. package/dist/cjs/components/EditableTable/cellTypes/time/Edit.st.css.js.map +1 -1
  80. package/dist/cjs/components/EditableTable/cellTypes/url/Edit.st.css.js +3 -3
  81. package/dist/cjs/components/EditableTable/cellTypes/url/Edit.st.css.js.map +1 -1
  82. package/dist/cjs/components/EditableTable/cellTypes/url/View.st.css.js +5 -5
  83. package/dist/cjs/components/EditableTable/cellTypes/url/View.st.css.js.map +1 -1
  84. package/dist/cjs/components/EmptyState/EmptyStateBase.st.css.js +2 -2
  85. package/dist/cjs/components/EmptyState/EmptyStateBase.st.css.js.map +1 -1
  86. package/dist/cjs/components/EntityPage/EntityPagePlain.st.css.js +2 -2
  87. package/dist/cjs/components/EntityPage/EntityPagePlain.st.css.js.map +1 -1
  88. package/dist/cjs/components/EntityPageFields/EntityPageField.js +78 -8
  89. package/dist/cjs/components/EntityPageFields/EntityPageField.js.map +1 -1
  90. package/dist/cjs/components/EntityPageFields/EntityPageFields.js +5 -4
  91. package/dist/cjs/components/EntityPageFields/EntityPageFields.js.map +1 -1
  92. package/dist/cjs/components/EntityPageFields/EntityPageReferenceField.js +10 -31
  93. package/dist/cjs/components/EntityPageFields/EntityPageReferenceField.js.map +1 -1
  94. package/dist/cjs/components/EntityPageFields/EntityPageReferenceValue.js +71 -0
  95. package/dist/cjs/components/EntityPageFields/EntityPageReferenceValue.js.map +1 -0
  96. package/dist/cjs/components/EntityPageFields/useReferencedSchema.js +42 -0
  97. package/dist/cjs/components/EntityPageFields/useReferencedSchema.js.map +1 -0
  98. package/dist/cjs/components/Fade/Fade.st.css.js +2 -2
  99. package/dist/cjs/components/Fade/Fade.st.css.js.map +1 -1
  100. package/dist/cjs/components/Heading/Heading.st.css.js +2 -2
  101. package/dist/cjs/components/Heading/Heading.st.css.js.map +1 -1
  102. package/dist/cjs/components/ImportButton/ImportStepUpload.st.css.js +3 -3
  103. package/dist/cjs/components/ImportButton/ImportStepUpload.st.css.js.map +1 -1
  104. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js +2 -2
  105. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js.map +1 -1
  106. package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js +3 -3
  107. package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js.map +1 -1
  108. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  109. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js.map +1 -1
  110. package/dist/cjs/components/MaxLines/MaxLines.st.css.js +2 -2
  111. package/dist/cjs/components/MaxLines/MaxLines.st.css.js.map +1 -1
  112. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +5 -5
  113. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js.map +1 -1
  114. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
  115. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js.map +1 -1
  116. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js +5 -5
  117. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js.map +1 -1
  118. package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
  119. package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js.map +1 -1
  120. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
  121. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js.map +1 -1
  122. package/dist/cjs/components/PickerContent/PickerContent.st.css.js +2 -2
  123. package/dist/cjs/components/PickerContent/PickerContent.st.css.js.map +1 -1
  124. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js +4 -4
  125. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js.map +1 -1
  126. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  127. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js.map +1 -1
  128. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  129. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
  130. package/dist/cjs/components/SetupWidget/SetupWidget.st.css.js +10 -10
  131. package/dist/cjs/components/SetupWidget/SetupWidget.st.css.js.map +1 -1
  132. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js +3 -3
  133. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js.map +1 -1
  134. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js +2 -2
  135. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js.map +1 -1
  136. package/dist/cjs/components/Table/AddFieldColumnHeader.st.css.js +6 -6
  137. package/dist/cjs/components/Table/AddFieldColumnHeader.st.css.js.map +1 -1
  138. package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js +3 -3
  139. package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js.map +1 -1
  140. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  141. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js.map +1 -1
  142. package/dist/cjs/components/ToolbarItem/ToolbarItem.st.css.js +2 -2
  143. package/dist/cjs/components/ToolbarItem/ToolbarItem.st.css.js.map +1 -1
  144. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  145. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js.map +1 -1
  146. package/dist/cjs/components/common.st.css.js +4 -4
  147. package/dist/cjs/components/common.st.css.js.map +1 -1
  148. package/dist/cjs/schema/EntityPageFieldsCard.js +8 -8
  149. package/dist/cjs/schema/EntityPageFieldsCard.js.map +1 -1
  150. package/dist/cjs/state/CollectionPage/CollectionPageHeader.st.css.js +2 -2
  151. package/dist/cjs/state/CollectionPage/CollectionPageHeader.st.css.js.map +1 -1
  152. package/dist/cjs/state/CustomColumnsEntityPageState.js +3 -4
  153. package/dist/cjs/state/CustomColumnsEntityPageState.js.map +1 -1
  154. package/dist/cjs/state/EntityPage/resolveEntityPageFields.js +15 -9
  155. package/dist/cjs/state/EntityPage/resolveEntityPageFields.js.map +1 -1
  156. package/dist/cjs/state/EntityPageFieldsCardState.js +5 -10
  157. package/dist/cjs/state/EntityPageFieldsCardState.js.map +1 -1
  158. package/dist/cjs/state/FormPage/FormPageHeader.st.css.js +2 -2
  159. package/dist/cjs/state/FormPage/FormPageHeader.st.css.js.map +1 -1
  160. package/dist/cjs/state/buildEditableFieldColumns.js +6 -0
  161. package/dist/cjs/state/buildEditableFieldColumns.js.map +1 -1
  162. package/dist/cjs/state/buildFieldColumns.js +4 -1
  163. package/dist/cjs/state/buildFieldColumns.js.map +1 -1
  164. package/dist/cjs/styles.global.css +2 -2
  165. package/dist/cjs/version.js +1 -1
  166. package/dist/cjs/version.js.map +1 -1
  167. package/dist/docs/AI Assistant.md +2 -0
  168. package/dist/docs/ActionCellProps.md +2 -0
  169. package/dist/docs/Allow Users to Add Extended Fields.md +4 -0
  170. package/dist/docs/AutoCompleteFilter.md +4 -0
  171. package/dist/docs/Collection Toolkit.md +116 -0
  172. package/dist/docs/Collection to Entity Flow.md +145 -0
  173. package/dist/docs/CollectionEmptyState.md +5 -3
  174. package/dist/docs/CollectionErrorState.md +2 -0
  175. package/dist/docs/CollectionNoResultsState.md +4 -0
  176. package/dist/docs/CollectionOptimisticActions.md +12 -8
  177. package/dist/docs/CollectionPage.Content.md +2 -0
  178. package/dist/docs/CollectionPage.Header.md +5 -3
  179. package/dist/docs/CollectionPage.md +2 -0
  180. package/dist/docs/CollectionPremiumEmptyState.md +4 -0
  181. package/dist/docs/CollectionSearch.md +6 -4
  182. package/dist/docs/Component Tests.md +4 -0
  183. package/dist/docs/Composition and Providers.md +135 -0
  184. package/dist/docs/ComputedQuery.md +2 -0
  185. package/dist/docs/CustomColumns.md +11 -9
  186. package/dist/docs/CustomFieldType.md +6 -4
  187. package/dist/docs/CustomFieldsViewWidget.md +4 -0
  188. package/dist/docs/CustomFieldsWidget.md +11 -7
  189. package/dist/docs/DateRangeFilter.Components.md +2 -0
  190. package/dist/docs/Display Extended Fields.md +4 -0
  191. package/dist/docs/Enable Filters for Extended Fields.md +4 -0
  192. package/dist/docs/EntityPage.AdditionalContent.md +2 -0
  193. package/dist/docs/EntityPage.Card.md +2 -0
  194. package/dist/docs/EntityPage.Content.md +2 -0
  195. package/dist/docs/EntityPage.Header.md +4 -0
  196. package/dist/docs/EntityPage.MainContent.md +2 -0
  197. package/dist/docs/EntityPage.Slots.md +2 -0
  198. package/dist/docs/EntityPage.md +13 -11
  199. package/dist/docs/EntityPageState.md +2 -0
  200. package/dist/docs/Explore Apps.md +2 -0
  201. package/dist/docs/ExportTo.md +8 -4
  202. package/dist/docs/Filter Overview.md +3 -1
  203. package/dist/docs/Grid Sections.md +2 -0
  204. package/dist/docs/Grid.md +8 -6
  205. package/dist/docs/GridDragAndDrop.md +2 -0
  206. package/dist/docs/GridFolders.md +4 -0
  207. package/dist/docs/GridFoldersSection.md +2 -0
  208. package/dist/docs/Highlighted Search.md +2 -0
  209. package/dist/docs/ImportButton.md +11 -7
  210. package/dist/docs/InMemoryBackend.md +2 -0
  211. package/dist/docs/Indeterminate.md +6 -2
  212. package/dist/docs/Internal Scroll.md +4 -2
  213. package/dist/docs/More Actions.md +11 -9
  214. package/dist/docs/MultiAutoInlineCheckboxFilter.md +2 -0
  215. package/dist/docs/MultiBulkActionToolbar.md +8 -6
  216. package/dist/docs/MultiInlineCheckboxFilter.md +2 -0
  217. package/dist/docs/MultiLevelSorting.md +5 -3
  218. package/dist/docs/MultiSelectCheckboxFilter.md +4 -0
  219. package/dist/docs/MultiSelectCollectionFilter.md +4 -0
  220. package/dist/docs/NestedTable.md +10 -6
  221. package/dist/docs/NumberRangeFilter.md +2 -0
  222. package/dist/docs/OperatorFilterPicker.md +2 -0
  223. package/dist/docs/PageWrapper.md +2 -0
  224. package/dist/docs/PatternsReactRoute.md +2 -0
  225. package/dist/docs/PatternsReactRouter.md +2 -0
  226. package/dist/docs/PickerContent.md +2 -0
  227. package/dist/docs/PickerModal.md +9 -5
  228. package/dist/docs/PickerStandalone.md +8 -4
  229. package/dist/docs/PrimaryActionButton.md +2 -0
  230. package/dist/docs/PrimaryActions.md +2 -0
  231. package/dist/docs/PrimaryPageButton.md +2 -0
  232. package/dist/docs/RadioGroupFilter.md +2 -0
  233. package/dist/docs/Reading the Doc Indices.md +186 -0
  234. package/dist/docs/RequestId.md +2 -0
  235. package/dist/docs/SecondaryActions.md +2 -0
  236. package/dist/docs/SettingsPage.AdditionalContent.md +2 -0
  237. package/dist/docs/SettingsPage.Card.md +2 -0
  238. package/dist/docs/SettingsPage.Content.md +2 -0
  239. package/dist/docs/SettingsPage.Header.md +4 -0
  240. package/dist/docs/SettingsPage.MainContent.md +2 -0
  241. package/dist/docs/SettingsPage.md +9 -7
  242. package/dist/docs/SettingsPageState.md +2 -0
  243. package/dist/docs/SingleSelectFilter.md +9 -5
  244. package/dist/docs/Sled Tests.md +4 -0
  245. package/dist/docs/Sortable Columns.md +4 -2
  246. package/dist/docs/Suggestions.md +6 -4
  247. package/dist/docs/SummaryBar.md +7 -5
  248. package/dist/docs/Table Sections.md +6 -4
  249. package/dist/docs/Table.md +16 -12
  250. package/dist/docs/TableDragAndDrop.md +8 -4
  251. package/dist/docs/TableFolders.md +7 -3
  252. package/dist/docs/TableGridSwitch.md +4 -2
  253. package/dist/docs/TableGridSwitchDragAndDrop.md +2 -0
  254. package/dist/docs/TableGridSwitchFolders.md +7 -3
  255. package/dist/docs/TableTopNotification.md +6 -2
  256. package/dist/docs/TabsFilter.md +6 -4
  257. package/dist/docs/Tags.md +9 -5
  258. package/dist/docs/TagsWidget.md +4 -0
  259. package/dist/docs/ToolbarFilters.md +12 -10
  260. package/dist/docs/ToolbarSecondaryActions.md +6 -4
  261. package/dist/docs/ToolbarTitle.md +8 -6
  262. package/dist/docs/Views.md +6 -4
  263. package/dist/docs/WidgetsFormProvider.md +2 -0
  264. package/dist/docs/WixPatternsBMProvider.md +2 -0
  265. package/dist/docs/WixPatternsBaseProvider.md +4 -0
  266. package/dist/docs/WixPatternsEssentialsProvider.md +2 -0
  267. package/dist/docs/WixPatternsGizaProvider.md +2 -0
  268. package/dist/docs/WixPatternsProvider.md +2 -0
  269. package/dist/docs/Working with Cache.md +4 -0
  270. package/dist/docs/arrayFilter.md +2 -0
  271. package/dist/docs/bulkActionModal.md +2 -0
  272. package/dist/docs/customFilter.md +2 -0
  273. package/dist/docs/dateRangeFilter.Factories.md +2 -0
  274. package/dist/docs/deleteSecondaryAction.md +2 -0
  275. package/dist/docs/idNameArrayFilter.md +4 -0
  276. package/dist/docs/index.json +681 -162
  277. package/dist/docs/operatorFilter.md +2 -0
  278. package/dist/docs/stringFilter.md +2 -0
  279. package/dist/docs/stringsArrayFilter.md +2 -0
  280. package/dist/docs/useAmbassadorCollection.md +4 -0
  281. package/dist/docs/useCollection.md +5 -19
  282. package/dist/docs/useEntity.md +2 -0
  283. package/dist/docs/useEntityPage.md +40 -0
  284. package/dist/docs/useEntityPageContext.md +2 -0
  285. package/dist/docs/useFilterCollection.md +2 -0
  286. package/dist/docs/useGridCollection.md +2 -0
  287. package/dist/docs/useGridFolders.md +2 -0
  288. package/dist/docs/useItemsSelectionFilter.md +2 -0
  289. package/dist/docs/useNestedTable.md +4 -0
  290. package/dist/docs/useOptimisticActions.md +11 -7
  291. package/dist/docs/usePatternsNavigate.md +3 -1
  292. package/dist/docs/usePickerContent.md +2 -0
  293. package/dist/docs/usePickerModal.md +4 -0
  294. package/dist/docs/usePickerStandalone.md +4 -0
  295. package/dist/docs/useSelector.md +2 -0
  296. package/dist/docs/useSettingsPage.md +2 -0
  297. package/dist/docs/useSettingsPageContext.md +2 -0
  298. package/dist/docs/useStaticListFilterCollection.md +2 -0
  299. package/dist/docs/useTableCollection.md +2 -0
  300. package/dist/docs/useTableFolders.md +2 -0
  301. package/dist/docs/useTableGridSwitchCollection.md +4 -0
  302. package/dist/docs/useTableGridSwitchFolders.md +2 -0
  303. package/dist/docs/useWidgetsFormContext.md +2 -0
  304. package/dist/docs/withDashboard.md +2 -0
  305. package/dist/dts-bundle/components/AutoCompleteFilter.d.ts +2 -2
  306. package/dist/dts-bundle/components/CollectionOptimisticActions.d.ts +2 -2
  307. package/dist/dts-bundle/components/CollectionPage.d.ts +2 -2
  308. package/dist/dts-bundle/components/CollectionSearch.d.ts +1 -1
  309. package/dist/dts-bundle/components/CollectionToolbarFilters.d.ts +1 -1
  310. package/dist/dts-bundle/components/Controller.d.ts +48 -0
  311. package/dist/dts-bundle/components/DateRangeFilter.d.ts +2 -2
  312. package/dist/dts-bundle/components/EntityPage.d.ts +2 -2
  313. package/dist/dts-bundle/components/ExportButton.d.ts +2 -2
  314. package/dist/dts-bundle/components/Grid.d.ts +6 -6
  315. package/dist/dts-bundle/components/GridFolders.d.ts +5 -5
  316. package/dist/dts-bundle/components/MoreActions.d.ts +1 -1
  317. package/dist/dts-bundle/components/MultiAutoInlineCheckboxFilter.d.ts +1 -1
  318. package/dist/dts-bundle/components/MultiBulkActionToolbar.d.ts +1 -1
  319. package/dist/dts-bundle/components/MultiInlineCheckboxFilter.d.ts +1 -1
  320. package/dist/dts-bundle/components/MultiSelectCheckboxFilter.d.ts +2 -2
  321. package/dist/dts-bundle/components/MultiSelectCollectionFilter.d.ts +2 -2
  322. package/dist/dts-bundle/components/NumberRangeFilter.d.ts +2 -2
  323. package/dist/dts-bundle/components/OperatorFilterPicker.d.ts +1 -1
  324. package/dist/dts-bundle/components/PickerModal.d.ts +1 -1
  325. package/dist/dts-bundle/components/PrimaryActions.d.ts +1 -1
  326. package/dist/dts-bundle/components/RadioGroupFilter.d.ts +1 -1
  327. package/dist/dts-bundle/components/SecondaryActions.d.ts +1 -1
  328. package/dist/dts-bundle/components/SettingsPage.d.ts +1 -1
  329. package/dist/dts-bundle/components/SingleSelectFilter.d.ts +2 -2
  330. package/dist/dts-bundle/components/Table.d.ts +3 -3
  331. package/dist/dts-bundle/components/TableFolders.d.ts +6 -6
  332. package/dist/dts-bundle/components/TableGridSwitch.d.ts +9 -9
  333. package/dist/dts-bundle/components/TabsFilter.d.ts +2 -2
  334. package/dist/dts-bundle/exports/core.d.ts +1 -0
  335. package/dist/dts-bundle/exports/form.d.ts +2 -0
  336. package/dist/dts-bundle/exports/index.d.ts +1 -0
  337. package/dist/dts-bundle/exports/schema.d.ts +2 -0
  338. package/dist/dts-bundle/functions/dateRangeFilter.d.ts +1 -1
  339. package/dist/dts-bundle/functions/deleteSecondaryAction.d.ts +2 -2
  340. package/dist/dts-bundle/hooks/useCollection.d.ts +331 -0
  341. package/dist/dts-bundle/hooks/useCreateCollection.d.ts +5 -5
  342. package/dist/dts-bundle/hooks/useEntity.d.ts +1 -1
  343. package/dist/dts-bundle/hooks/useEntityPage.d.ts +9 -731
  344. package/dist/dts-bundle/hooks/useEntityPageContext.d.ts +1 -1
  345. package/dist/dts-bundle/hooks/useExportConfig.d.ts +2 -2
  346. package/dist/dts-bundle/hooks/useFilterCollection.d.ts +5 -5
  347. package/dist/dts-bundle/hooks/useGridCollection.d.ts +6 -6
  348. package/dist/dts-bundle/hooks/useGridFolders.d.ts +2 -2
  349. package/dist/dts-bundle/hooks/useOptimisticActions.d.ts +3 -3
  350. package/dist/dts-bundle/hooks/usePickerModal.d.ts +8 -5
  351. package/dist/dts-bundle/hooks/useStaticListFilterCollection.d.ts +1 -1
  352. package/dist/dts-bundle/hooks/useTableCollection.d.ts +6 -6
  353. package/dist/dts-bundle/hooks/useTableFolders.d.ts +2 -2
  354. package/dist/dts-bundle/hooks/useTableGridSwitchCollection.d.ts +6 -6
  355. package/dist/dts-bundle/index.json +643 -150
  356. package/dist/dts-bundle/index.txt +112 -0
  357. package/dist/dts-bundle/types/ActionCell.d.ts +2 -2
  358. package/dist/dts-bundle/types/ActionCellProps.d.ts +3 -2
  359. package/dist/dts-bundle/types/BulkActionModalRenderPropParams.d.ts +2 -2
  360. package/dist/dts-bundle/types/CollectionTableBaseProps.d.ts +10 -10
  361. package/dist/dts-bundle/types/CollectionViewsDropdownBaseProps.d.ts +1 -1
  362. package/dist/dts-bundle/types/Column.d.ts +1 -1
  363. package/dist/dts-bundle/types/ComputedQuery.d.ts +1 -1
  364. package/dist/dts-bundle/types/CursorQuery.d.ts +4 -4
  365. package/dist/dts-bundle/types/EntityPageState.d.ts +12 -481
  366. package/dist/dts-bundle/types/EntityPageStateParams.d.ts +7 -729
  367. package/dist/dts-bundle/types/FilterProps.d.ts +1 -1
  368. package/dist/dts-bundle/types/GridFoldersState.d.ts +1 -1
  369. package/dist/dts-bundle/types/GridState.d.ts +1 -1
  370. package/dist/dts-bundle/types/OffsetQuery.d.ts +4 -4
  371. package/dist/dts-bundle/types/OnSaveParams.d.ts +7 -729
  372. package/dist/dts-bundle/types/SchemaSource.d.ts +799 -0
  373. package/dist/dts-bundle/types/TableColumn.d.ts +1 -1
  374. package/dist/dts-bundle/types/TableFoldersState.d.ts +2 -2
  375. package/dist/dts-bundle/types/TableGridSwitchState.d.ts +3 -3
  376. package/dist/dts-bundle/types/TableState.d.ts +2 -2
  377. package/dist/dts-bundle/types/TagsProps.d.ts +4 -4
  378. package/dist/dts-bundle/types/ToolbarBaseProps.d.ts +4 -4
  379. package/dist/dts-bundle/types/ToolbarCollectionBaseProps.d.ts +10 -10
  380. package/dist/dts-bundle/types/ToolbarTitleProps.d.ts +1 -1
  381. package/dist/dts-bundle/types/UseEntityPageParams.d.ts +8 -730
  382. package/dist/dts-bundle/types/UseFormReturn.d.ts +713 -0
  383. package/dist/esm/components/CardContainer/CardContainer.st.css.js +2 -2
  384. package/dist/esm/components/CardContainer/CardContainer.st.css.js.map +1 -1
  385. package/dist/esm/components/CmsFieldManagement/CmsFieldForm.st.css.js +2 -2
  386. package/dist/esm/components/CmsFieldManagement/CmsFieldModal.st.css.js +2 -2
  387. package/dist/esm/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.js +2 -2
  388. package/dist/esm/components/Collapse/Collapse.st.css.js +2 -2
  389. package/dist/esm/components/Collapse/Collapse.st.css.js.map +1 -1
  390. package/dist/esm/components/CollectionPageNew/CollectionPage.st.css.js +2 -2
  391. package/dist/esm/components/CollectionPageNew/CollectionPage.st.css.js.map +1 -1
  392. package/dist/esm/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js +2 -2
  393. package/dist/esm/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js.map +1 -1
  394. package/dist/esm/components/CollectionTable/CollectionTable.st.css.js +2 -2
  395. package/dist/esm/components/CollectionTable/CollectionTable.st.css.js.map +1 -1
  396. package/dist/esm/components/CollectionTable/CollectionTable.uni.driver.js +8 -1
  397. package/dist/esm/components/CollectionTable/CollectionTable.uni.driver.js.map +1 -1
  398. package/dist/esm/components/CollectionTable/CollectionTableWSRTable.st.css.js +2 -2
  399. package/dist/esm/components/CollectionTable/CollectionTableWSRTable.st.css.js.map +1 -1
  400. package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js +2 -2
  401. package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +2 -2
  402. package/dist/esm/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
  403. package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
  404. package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.st.css.js.map +1 -1
  405. package/dist/esm/components/DragHandle/DragHandle.st.css.js +2 -2
  406. package/dist/esm/components/DragHandle/DragHandle.st.css.js.map +1 -1
  407. package/dist/esm/components/EditableTable/EditableCell.st.css.js +2 -2
  408. package/dist/esm/components/EditableTable/EditableTable.js +10 -3
  409. package/dist/esm/components/EditableTable/EditableTable.js.map +1 -1
  410. package/dist/esm/components/EditableTable/EditableTable.uni.driver.js +5 -1
  411. package/dist/esm/components/EditableTable/EditableTable.uni.driver.js.map +1 -1
  412. package/dist/esm/components/EditableTable/HeaderActionsPopover.st.css.js +2 -2
  413. package/dist/esm/components/EditableTable/HeaderActionsPopover.st.css.js.map +1 -1
  414. package/dist/esm/components/EditableTable/cellTypes/CellViewLayout.st.css.js +2 -2
  415. package/dist/esm/components/EditableTable/cellTypes/address/Edit.st.css.js +2 -2
  416. package/dist/esm/components/EditableTable/cellTypes/address/Edit.st.css.js.map +1 -1
  417. package/dist/esm/components/EditableTable/cellTypes/array/Edit.st.css.js +2 -2
  418. package/dist/esm/components/EditableTable/cellTypes/array/Edit.st.css.js.map +1 -1
  419. package/dist/esm/components/EditableTable/cellTypes/boolean/Edit.st.css.js +2 -2
  420. package/dist/esm/components/EditableTable/cellTypes/boolean/View.st.css.js +2 -2
  421. package/dist/esm/components/EditableTable/cellTypes/boolean/View.st.css.js.map +1 -1
  422. package/dist/esm/components/EditableTable/cellTypes/color/Edit.st.css.js +2 -2
  423. package/dist/esm/components/EditableTable/cellTypes/date/Edit.st.css.js +2 -2
  424. package/dist/esm/components/EditableTable/cellTypes/date/View.st.css.js +2 -2
  425. package/dist/esm/components/EditableTable/cellTypes/datetime/Edit.st.css.js +2 -2
  426. package/dist/esm/components/EditableTable/cellTypes/datetime/Edit.st.css.js.map +1 -1
  427. package/dist/esm/components/EditableTable/cellTypes/datetime/View.st.css.js +2 -2
  428. package/dist/esm/components/EditableTable/cellTypes/datetime/View.st.css.js.map +1 -1
  429. package/dist/esm/components/EditableTable/cellTypes/email/Edit.st.css.js +2 -2
  430. package/dist/esm/components/EditableTable/cellTypes/email/View.st.css.js +2 -2
  431. package/dist/esm/components/EditableTable/cellTypes/number/Edit.st.css.js +2 -2
  432. package/dist/esm/components/EditableTable/cellTypes/number/View.st.css.js +2 -2
  433. package/dist/esm/components/EditableTable/cellTypes/number/View.st.css.js.map +1 -1
  434. package/dist/esm/components/EditableTable/cellTypes/object/Edit.st.css.js +2 -2
  435. package/dist/esm/components/EditableTable/cellTypes/object/View.st.css.js +2 -2
  436. package/dist/esm/components/EditableTable/cellTypes/object/View.st.css.js.map +1 -1
  437. package/dist/esm/components/EditableTable/cellTypes/select/Edit.st.css.js +2 -2
  438. package/dist/esm/components/EditableTable/cellTypes/text/Edit.st.css.js +2 -2
  439. package/dist/esm/components/EditableTable/cellTypes/text/Edit.st.css.js.map +1 -1
  440. package/dist/esm/components/EditableTable/cellTypes/text/View.st.css.js +2 -2
  441. package/dist/esm/components/EditableTable/cellTypes/text/View.st.css.js.map +1 -1
  442. package/dist/esm/components/EditableTable/cellTypes/time/Edit.st.css.js +2 -2
  443. package/dist/esm/components/EditableTable/cellTypes/time/Edit.st.css.js.map +1 -1
  444. package/dist/esm/components/EditableTable/cellTypes/url/Edit.st.css.js +2 -2
  445. package/dist/esm/components/EditableTable/cellTypes/url/View.st.css.js +2 -2
  446. package/dist/esm/components/EmptyState/EmptyStateBase.st.css.js +2 -2
  447. package/dist/esm/components/EntityPage/EntityPagePlain.st.css.js +2 -2
  448. package/dist/esm/components/EntityPageFields/EntityPageField.js +13 -3
  449. package/dist/esm/components/EntityPageFields/EntityPageField.js.map +1 -1
  450. package/dist/esm/components/EntityPageFields/EntityPageFields.js +3 -3
  451. package/dist/esm/components/EntityPageFields/EntityPageFields.js.map +1 -1
  452. package/dist/esm/components/EntityPageFields/EntityPageReferenceField.js +4 -25
  453. package/dist/esm/components/EntityPageFields/EntityPageReferenceField.js.map +1 -1
  454. package/dist/esm/components/EntityPageFields/EntityPageReferenceValue.js +37 -0
  455. package/dist/esm/components/EntityPageFields/EntityPageReferenceValue.js.map +1 -0
  456. package/dist/esm/components/EntityPageFields/useReferencedSchema.js +30 -0
  457. package/dist/esm/components/EntityPageFields/useReferencedSchema.js.map +1 -0
  458. package/dist/esm/components/Fade/Fade.st.css.js +2 -2
  459. package/dist/esm/components/Fade/Fade.st.css.js.map +1 -1
  460. package/dist/esm/components/Heading/Heading.st.css.js +2 -2
  461. package/dist/esm/components/Heading/Heading.st.css.js.map +1 -1
  462. package/dist/esm/components/ImportButton/ImportStepUpload.st.css.js +2 -2
  463. package/dist/esm/components/InputOverflow/InputOverflow.st.css.js +2 -2
  464. package/dist/esm/components/LoadingRow/LoadingRow.st.css.js +3 -3
  465. package/dist/esm/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  466. package/dist/esm/components/MaxHeightText/MaxHeightText.st.css.js.map +1 -1
  467. package/dist/esm/components/MaxLines/MaxLines.st.css.js +2 -2
  468. package/dist/esm/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +2 -2
  469. package/dist/esm/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
  470. package/dist/esm/components/NestedTable/NestedTableRow.st.css.js +2 -2
  471. package/dist/esm/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
  472. package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
  473. package/dist/esm/components/PickerContent/PickerContent.st.css.js +2 -2
  474. package/dist/esm/components/PickerContent/PickerContent.st.css.js.map +1 -1
  475. package/dist/esm/components/PickerContent/PickerContentAdditionalStep.st.css.js +2 -2
  476. package/dist/esm/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  477. package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  478. package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
  479. package/dist/esm/components/SetupWidget/SetupWidget.st.css.js +2 -2
  480. package/dist/esm/components/SkeletonCard/SkeletonCard.st.css.js +2 -2
  481. package/dist/esm/components/SlidingModal/SlidingModal.st.css.js +2 -2
  482. package/dist/esm/components/SlidingModal/SlidingModal.st.css.js.map +1 -1
  483. package/dist/esm/components/Table/AddFieldColumnHeader.st.css.js +2 -2
  484. package/dist/esm/components/Table/AddFieldColumnHeader.st.css.js.map +1 -1
  485. package/dist/esm/components/TabsFilter/TabsFilter.st.css.js +2 -2
  486. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  487. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js.map +1 -1
  488. package/dist/esm/components/ToolbarItem/ToolbarItem.st.css.js +2 -2
  489. package/dist/esm/components/ToolbarItem/ToolbarItem.st.css.js.map +1 -1
  490. package/dist/esm/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  491. package/dist/esm/components/common.st.css.js +2 -2
  492. package/dist/esm/schema/EntityPageFieldsCard.js.map +1 -1
  493. package/dist/esm/state/CollectionPage/CollectionPageHeader.st.css.js +2 -2
  494. package/dist/esm/state/CollectionPage/CollectionPageHeader.st.css.js.map +1 -1
  495. package/dist/esm/state/CustomColumnsEntityPageState.js +2 -3
  496. package/dist/esm/state/CustomColumnsEntityPageState.js.map +1 -1
  497. package/dist/esm/state/EntityPage/resolveEntityPageFields.js +12 -9
  498. package/dist/esm/state/EntityPage/resolveEntityPageFields.js.map +1 -1
  499. package/dist/esm/state/EntityPageFieldsCardState.js +4 -6
  500. package/dist/esm/state/EntityPageFieldsCardState.js.map +1 -1
  501. package/dist/esm/state/FormPage/FormPageHeader.st.css.js +2 -2
  502. package/dist/esm/state/buildEditableFieldColumns.js +6 -0
  503. package/dist/esm/state/buildEditableFieldColumns.js.map +1 -1
  504. package/dist/esm/state/buildFieldColumns.js +3 -0
  505. package/dist/esm/state/buildFieldColumns.js.map +1 -1
  506. package/dist/esm/styles.global.css +2 -2
  507. package/dist/esm/version.js +1 -1
  508. package/dist/{docs → examples}/CollectionEmptyState/2-ctas.tsx +6 -0
  509. package/dist/{docs → examples}/CollectionEmptyState/demo.tsx +6 -0
  510. package/dist/{docs → examples}/CollectionEmptyState/passive-empty-state.tsx +6 -0
  511. package/dist/{docs → examples}/CollectionOptimisticActions/create-many.tsx +6 -0
  512. package/dist/{docs → examples}/CollectionOptimisticActions/create-one.tsx +6 -0
  513. package/dist/{docs → examples}/CollectionOptimisticActions/delete-all.tsx +14 -0
  514. package/dist/{docs → examples}/CollectionOptimisticActions/delete-many.tsx +6 -0
  515. package/dist/{docs → examples}/CollectionOptimisticActions/delete-one.tsx +6 -0
  516. package/dist/{docs → examples}/CollectionOptimisticActions/update-all.tsx +14 -0
  517. package/dist/{docs → examples}/CollectionOptimisticActions/update-many.tsx +6 -0
  518. package/dist/{docs → examples}/CollectionOptimisticActions/update-one.tsx +6 -0
  519. package/dist/{docs → examples}/CollectionPage.Header/full.tsx +6 -0
  520. package/dist/{docs → examples}/CollectionPage.Header/with-badges.tsx +6 -0
  521. package/dist/{docs → examples}/CollectionPage.Header/without-total.tsx +6 -0
  522. package/dist/{docs → examples}/CollectionSearch/default.tsx +6 -0
  523. package/dist/{docs → examples}/CollectionSearch/max-length.tsx +6 -0
  524. package/dist/{docs → examples}/CollectionSearch/placeholder.tsx +6 -0
  525. package/dist/{docs → examples}/CollectionSearch/search-highlighting.tsx +6 -0
  526. package/dist/{docs → examples}/CustomColumns/add-a-tooltip.tsx +6 -0
  527. package/dist/{docs → examples}/CustomColumns/basic.tsx +6 -0
  528. package/dist/{docs → examples}/CustomColumns/exclude-columns.tsx +6 -0
  529. package/dist/{docs → examples}/CustomColumns/freeze-column-reorder.tsx +6 -0
  530. package/dist/{docs → examples}/CustomColumns/get-visible-columns.tsx +6 -0
  531. package/dist/{docs → examples}/CustomColumns/hide-specific-columns-by-default.tsx +6 -0
  532. package/dist/{docs → examples}/CustomColumns/load-only-selected-columns.tsx +6 -0
  533. package/dist/{docs → examples}/CustomColumns/lock-columns.tsx +6 -0
  534. package/dist/{docs → examples}/CustomColumns/reorder-columns.tsx +6 -0
  535. package/dist/{docs → examples}/CustomFieldType/add-field-modal.tsx +6 -0
  536. package/dist/{docs → examples}/CustomFieldType/editable-cell.tsx +6 -0
  537. package/dist/{docs → examples}/CustomFieldType/entity-page-form.tsx +6 -0
  538. package/dist/{docs → examples}/CustomFieldType/table-cell-and-filter.tsx +6 -0
  539. package/dist/{docs → examples}/CustomFieldsWidget/basic.tsx +12 -0
  540. package/dist/{docs → examples}/CustomFieldsWidget/controllable-state.tsx +12 -0
  541. package/dist/{docs → examples}/CustomFieldsWidget/empty-state.tsx +6 -0
  542. package/dist/{docs → examples}/CustomFieldsWidget/inline-theme.tsx +12 -0
  543. package/dist/{docs → examples}/CustomFieldsWidget/responsive.tsx +12 -0
  544. package/dist/{docs → examples}/CustomFieldsWidget/with-tpa-fields.tsx +12 -0
  545. package/dist/{docs → examples}/CustomFieldsWidget/without-entity-page.tsx +12 -0
  546. package/dist/{docs → examples}/EntityPage/2-columns.tsx +6 -0
  547. package/dist/{docs → examples}/EntityPage/basic.tsx +6 -0
  548. package/dist/{docs → examples}/EntityPage/delete-action.tsx +6 -0
  549. package/dist/{docs → examples}/EntityPage/delete-error-handling.tsx +6 -0
  550. package/dist/{docs → examples}/EntityPage/demo.tsx +6 -0
  551. package/dist/{docs → examples}/EntityPage/error-on-fetch.tsx +6 -0
  552. package/dist/{docs → examples}/EntityPage/error-on-save.tsx +6 -0
  553. package/dist/{docs → examples}/EntityPage/input-initialization-with-controller.tsx +6 -0
  554. package/dist/{docs → examples}/EntityPage/input-initialization-with-usecontroller.tsx +6 -0
  555. package/dist/{docs → examples}/EntityPage/loading.tsx +6 -0
  556. package/dist/{docs → examples}/EntityPage/overriding-save-button-text.tsx +6 -0
  557. package/dist/{docs → examples}/ExportTo/cta-is-out-of-the-table.tsx +14 -0
  558. package/dist/{docs → examples}/ExportTo/export-all-table.tsx +14 -0
  559. package/dist/{docs → examples}/ExportTo/export-filtered-table.tsx +14 -0
  560. package/dist/{docs → examples}/ExportTo/export-table-with-selection-bulk-selection.tsx +14 -0
  561. package/dist/{docs → examples}/Filter Overview/interactive-example.tsx +6 -0
  562. package/dist/{docs → examples}/Grid/card-with-a-cta-that-opens-a-modal.tsx +6 -0
  563. package/dist/{docs → examples}/Grid/card-with-a-cta-that-opens-a-popup.tsx +6 -0
  564. package/dist/{docs → examples}/Grid/demo.tsx +6 -0
  565. package/dist/{docs → examples}/Grid/grid-sections.tsx +6 -0
  566. package/dist/{docs → examples}/Grid/grid-with-a-reduced-width.tsx +6 -0
  567. package/dist/{docs → examples}/Grid/use-the-preset-prop.tsx +6 -0
  568. package/dist/{docs → examples}/ImportButton/backup-error-handling.tsx +14 -0
  569. package/dist/{docs → examples}/ImportButton/cms-import.tsx +12 -0
  570. package/dist/{docs → examples}/ImportButton/create-new-field.tsx +12 -0
  571. package/dist/{docs → examples}/ImportButton/platformized-import-fields-inline.tsx +14 -0
  572. package/dist/{docs → examples}/ImportButton/platformized-import-from-a-source.tsx +6 -0
  573. package/dist/{docs → examples}/ImportButton/required-fields.tsx +14 -0
  574. package/dist/{docs → examples}/ImportButton/update-or-skip-by-id.tsx +12 -0
  575. package/dist/{docs → examples}/Indeterminate/all-indeterminate.tsx +14 -0
  576. package/dist/{docs → examples}/Indeterminate/items-indeterminate-status.tsx +14 -0
  577. package/dist/{docs → examples}/Internal Scroll/full-width-section.tsx +6 -0
  578. package/dist/{docs → examples}/Internal Scroll/narrow-side-section.tsx +6 -0
  579. package/dist/{docs → examples}/More Actions/collection-page-2.tsx +6 -0
  580. package/dist/{docs → examples}/More Actions/collection-page.tsx +6 -0
  581. package/dist/{docs → examples}/More Actions/explore-related-apps.tsx +6 -0
  582. package/dist/{docs → examples}/More Actions/featured-more-actions-custom-position.tsx +6 -0
  583. package/dist/{docs → examples}/More Actions/featured-more-actions-opt-out.tsx +6 -0
  584. package/dist/{docs → examples}/More Actions/featured-more-actions.tsx +6 -0
  585. package/dist/{docs → examples}/More Actions/integrate-with-extension.tsx +6 -0
  586. package/dist/{docs → examples}/More Actions/more-actions-in-the-toolbar.tsx +6 -0
  587. package/dist/{docs → examples}/More Actions/more-actions-with-a-divider.tsx +6 -0
  588. package/dist/{docs → examples}/MultiBulkActionToolbar/basic-secondary-action.tsx +6 -0
  589. package/dist/{docs → examples}/MultiBulkActionToolbar/bulk-action.tsx +6 -0
  590. package/dist/{docs → examples}/MultiBulkActionToolbar/extend-menu-items.tsx +6 -0
  591. package/dist/{docs → examples}/MultiBulkActionToolbar/maximum-selection.tsx +6 -0
  592. package/dist/{docs → examples}/MultiBulkActionToolbar/popover-menu.tsx +6 -0
  593. package/dist/{docs → examples}/MultiBulkActionToolbar/primary-secondary-actions-with-a-divider.tsx +6 -0
  594. package/dist/{docs → examples}/MultiLevelSorting/basic-multi-level-sorting.tsx +6 -0
  595. package/dist/{docs → examples}/MultiLevelSorting/multi-level-sorting-with-custom-sort-order.tsx +6 -0
  596. package/dist/{docs → examples}/MultiLevelSorting/multi-level-sorting-with-defined-sort-directions.tsx +6 -0
  597. package/dist/{docs → examples}/NestedTable/drag-and-drop.tsx +14 -0
  598. package/dist/{docs → examples}/NestedTable/filters.tsx +6 -0
  599. package/dist/{docs → examples}/NestedTable/flat-mode-search.tsx +14 -0
  600. package/dist/{docs → examples}/NestedTable/node-api-usage.tsx +14 -0
  601. package/dist/{docs → examples}/NestedTable/single-entity.tsx +14 -0
  602. package/dist/{docs → examples}/NestedTable/various-entities.tsx +14 -0
  603. package/dist/{docs → examples}/PickerModal/multi-select.tsx +14 -0
  604. package/dist/{docs → examples}/PickerModal/pre-selected-item.tsx +14 -0
  605. package/dist/{docs → examples}/PickerModal/search-override.tsx +14 -0
  606. package/dist/{docs → examples}/PickerModal/single-selection.tsx +14 -0
  607. package/dist/{docs → examples}/PickerModal/with-filter-dropdown.tsx +14 -0
  608. package/dist/{docs → examples}/PickerStandalone/basic.tsx +13 -0
  609. package/dist/{docs → examples}/PickerStandalone/createnew.tsx +13 -0
  610. package/dist/{docs → examples}/PickerStandalone/custom-empty-state.tsx +12 -0
  611. package/dist/{docs → examples}/PickerStandalone/custom-items.tsx +13 -0
  612. package/dist/{docs → examples}/SettingsPage/2-columns.tsx +6 -0
  613. package/dist/{docs → examples}/SettingsPage/basic.tsx +6 -0
  614. package/dist/{docs → examples}/SettingsPage/error-on-fetch.tsx +6 -0
  615. package/dist/{docs → examples}/SettingsPage/error-on-save.tsx +6 -0
  616. package/dist/{docs → examples}/SettingsPage/input-initialization-with-controller.tsx +6 -0
  617. package/dist/{docs → examples}/SettingsPage/input-initialization-with-usecontroller.tsx +6 -0
  618. package/dist/{docs → examples}/SettingsPage/loading.tsx +6 -0
  619. package/dist/{docs → examples}/SingleSelectFilter/custom-render-items.tsx +12 -0
  620. package/dist/{docs → examples}/SingleSelectFilter/empty-state.tsx +6 -0
  621. package/dist/{docs → examples}/SingleSelectFilter/sections.tsx +12 -0
  622. package/dist/{docs → examples}/SingleSelectFilter/server-data.tsx +12 -0
  623. package/dist/{docs → examples}/SingleSelectFilter/static-data.tsx +6 -0
  624. package/dist/{docs → examples}/Sortable Columns/basic-sortable-column.tsx +6 -0
  625. package/dist/{docs → examples}/Sortable Columns/custom-sort-order.tsx +6 -0
  626. package/dist/{docs → examples}/Suggestions/carousel-customization.tsx +6 -0
  627. package/dist/{docs → examples}/Suggestions/carousel-vs-container-layout.tsx +6 -0
  628. package/dist/{docs → examples}/Suggestions/custom-card-rendering.tsx +6 -0
  629. package/dist/{docs → examples}/Suggestions/with-transform-function.tsx +6 -0
  630. package/dist/{docs → examples}/SummaryBar/error.tsx +6 -0
  631. package/dist/{docs → examples}/SummaryBar/loading-with-error.tsx +6 -0
  632. package/dist/{docs → examples}/SummaryBar/loading-with-success.tsx +6 -0
  633. package/dist/{docs → examples}/SummaryBar/loading.tsx +6 -0
  634. package/dist/{docs → examples}/SummaryBar/success.tsx +6 -0
  635. package/dist/{docs → examples}/Table/basic-table.tsx +6 -0
  636. package/dist/{docs → examples}/Table/cursor-pagination.tsx +12 -0
  637. package/dist/{docs → examples}/Table/fetch-total-async.tsx +12 -0
  638. package/dist/{docs → examples}/Table/filters.tsx +6 -0
  639. package/dist/{docs → examples}/Table/header.tsx +6 -0
  640. package/dist/{docs → examples}/Table/horizontal-scroll.tsx +6 -0
  641. package/dist/{docs → examples}/Table/table-disabled-rows.tsx +6 -0
  642. package/dist/{docs → examples}/Table/using-ambassador.tsx +12 -0
  643. package/dist/{docs → examples}/Table/using-with-external-data-source.tsx +6 -0
  644. package/dist/{docs → examples}/Table/virtual.tsx +6 -0
  645. package/dist/{docs → examples}/Table Sections/demo.tsx +6 -0
  646. package/dist/{docs → examples}/Table Sections/with-badge.tsx +6 -0
  647. package/dist/{docs → examples}/Table Sections/with-collapse.tsx +6 -0
  648. package/dist/{docs → examples}/Table Sections/with-summary.tsx +6 -0
  649. package/dist/{docs → examples}/TableDragAndDrop/save-order-mode.tsx +6 -0
  650. package/dist/{docs → examples}/TableDragAndDrop/specific-filters.tsx +6 -0
  651. package/dist/{docs → examples}/TableDragAndDrop/specific-tabs.tsx +12 -0
  652. package/dist/{docs → examples}/TableDragAndDrop/table.tsx +6 -0
  653. package/dist/{docs → examples}/TableFolders/demo.tsx +14 -0
  654. package/dist/{docs → examples}/TableFolders/table-folders.tsx +14 -0
  655. package/dist/{docs → examples}/TableFolders/with-tags.tsx +15 -0
  656. package/dist/{docs → examples}/TableGridSwitch/basic-table-grid-switch.tsx +6 -0
  657. package/dist/{docs → examples}/TableGridSwitch/custom-columns.tsx +6 -0
  658. package/dist/{docs → examples}/TableGridSwitchFolders/demo.tsx +14 -0
  659. package/dist/{docs → examples}/TableGridSwitchFolders/tablegridswitchfolders.tsx +14 -0
  660. package/dist/{docs → examples}/TableGridSwitchFolders/with-tags.tsx +15 -0
  661. package/dist/{docs → examples}/TableTopNotification/base.tsx +14 -0
  662. package/dist/{docs → examples}/TableTopNotification/nested-table.tsx +14 -0
  663. package/dist/{docs → examples}/TabsFilter/basic-tabs.tsx +6 -0
  664. package/dist/{docs → examples}/TabsFilter/disabled-tabs.tsx +6 -0
  665. package/dist/{docs → examples}/TabsFilter/tabs-with-a-basic-counter.tsx +6 -0
  666. package/dist/{docs → examples}/TabsFilter/tabs-with-a-counter-badge.tsx +6 -0
  667. package/dist/{docs → examples}/Tags/basic.tsx +12 -0
  668. package/dist/{docs → examples}/Tags/custom-config-for-tags-column.tsx +12 -0
  669. package/dist/{docs → examples}/Tags/customized-filter-position.tsx +12 -0
  670. package/dist/{docs → examples}/Tags/customized-tags-column-position.tsx +12 -0
  671. package/dist/{docs → examples}/Tags/on-table-with-folders.tsx +15 -0
  672. package/dist/{docs → examples}/ToolbarFilters/2-filters-with-a-title.tsx +6 -0
  673. package/dist/{docs → examples}/ToolbarFilters/2-filters-without-a-title.tsx +6 -0
  674. package/dist/{docs → examples}/ToolbarFilters/add-filter-presets-for-future-dates.tsx +6 -0
  675. package/dist/{docs → examples}/ToolbarFilters/apply-changes.tsx +6 -0
  676. package/dist/{docs → examples}/ToolbarFilters/custom-label-for-tags.tsx +6 -0
  677. package/dist/{docs → examples}/ToolbarFilters/customize-filter-display-tags.tsx +6 -0
  678. package/dist/{docs → examples}/ToolbarFilters/mini-toolbar-with-filters.tsx +6 -0
  679. package/dist/{docs → examples}/ToolbarFilters/mini-toolbar.tsx +6 -0
  680. package/dist/{docs → examples}/ToolbarFilters/more-than-2-filters.tsx +6 -0
  681. package/dist/{docs → examples}/ToolbarFilters/postpone-collection-filter-initial-fetch.tsx +6 -0
  682. package/dist/{docs → examples}/ToolbarSecondaryActions/grouped-actions-with-dividers.tsx +6 -0
  683. package/dist/{docs → examples}/ToolbarSecondaryActions/mixed-buttons-and-dropdown-menus.tsx +6 -0
  684. package/dist/{docs → examples}/ToolbarSecondaryActions/multiple-actions-with-dropdown-menus.tsx +6 -0
  685. package/dist/{docs → examples}/ToolbarSecondaryActions/multiple-secondary-action-buttons.tsx +6 -0
  686. package/dist/{docs → examples}/ToolbarTitle/title-and-count.tsx +6 -0
  687. package/dist/{docs → examples}/ToolbarTitle/title-count-and-the-collection-s-item-limit.tsx +6 -0
  688. package/dist/{docs → examples}/ToolbarTitle/title-subtitle-and-learn-more.tsx +6 -0
  689. package/dist/{docs → examples}/ToolbarTitle/title.tsx +6 -0
  690. package/dist/{docs → examples}/Views/basic-view-that-can-be-chosen.tsx +6 -0
  691. package/dist/{docs → examples}/Views/basic-view.tsx +6 -0
  692. package/dist/{docs → examples}/Views/view-with-selected-columns.tsx +6 -0
  693. package/dist/{docs → examples}/Views/views-separated-by-category-in-the-dropdown.tsx +6 -0
  694. package/dist/{docs → examples}/useOptimisticActions/custom-error-handling.tsx +6 -0
  695. package/dist/{docs → examples}/useOptimisticActions/default-behaviour.tsx +6 -0
  696. package/dist/{docs → examples}/useOptimisticActions/error-handling-and-retries.tsx +6 -0
  697. package/dist/{docs → examples}/useOptimisticActions/items-orders.tsx +6 -0
  698. package/dist/{docs → examples}/useOptimisticActions/revision-handling.tsx +6 -0
  699. package/dist/{docs → examples}/useOptimisticActions/success-toast-with-undo.tsx +6 -0
  700. package/dist/{docs → examples}/useOptimisticActions/update-with-query.tsx +14 -0
  701. package/dist/types/components/ActionCell/ActionCell.d.ts +1 -0
  702. package/dist/types/components/ActionCell/ActionCell.d.ts.map +1 -1
  703. package/dist/types/components/CardContainer/CardContainer.st.css.d.ts.map +1 -1
  704. package/dist/types/components/Collapse/Collapse.st.css.d.ts.map +1 -1
  705. package/dist/types/components/CollectionPageNew/CollectionPage.st.css.d.ts.map +1 -1
  706. package/dist/types/components/CollectionSectionHeader/CollectionSectionHeader.st.css.d.ts.map +1 -1
  707. package/dist/types/components/CollectionTable/CollectionTable.st.css.d.ts.map +1 -1
  708. package/dist/types/components/CollectionTable/CollectionTable.uni.driver.d.ts +20 -4
  709. package/dist/types/components/CollectionTable/CollectionTable.uni.driver.d.ts.map +1 -1
  710. package/dist/types/components/CollectionTable/CollectionTableWSRTable.st.css.d.ts.map +1 -1
  711. package/dist/types/components/CollectionViewsDropdown/ViewsDropdown.st.css.d.ts.map +1 -1
  712. package/dist/types/components/DragHandle/DragHandle.st.css.d.ts.map +1 -1
  713. package/dist/types/components/EditableTable/EditableTable.d.ts.map +1 -1
  714. package/dist/types/components/EditableTable/EditableTable.uni.driver.d.ts +83 -48
  715. package/dist/types/components/EditableTable/EditableTable.uni.driver.d.ts.map +1 -1
  716. package/dist/types/components/EditableTable/HeaderActionsPopover.st.css.d.ts.map +1 -1
  717. package/dist/types/components/EditableTable/cellTypes/address/Edit.st.css.d.ts.map +1 -1
  718. package/dist/types/components/EditableTable/cellTypes/array/Edit.st.css.d.ts.map +1 -1
  719. package/dist/types/components/EditableTable/cellTypes/boolean/View.st.css.d.ts.map +1 -1
  720. package/dist/types/components/EditableTable/cellTypes/datetime/Edit.st.css.d.ts.map +1 -1
  721. package/dist/types/components/EditableTable/cellTypes/datetime/View.st.css.d.ts.map +1 -1
  722. package/dist/types/components/EditableTable/cellTypes/number/View.st.css.d.ts.map +1 -1
  723. package/dist/types/components/EditableTable/cellTypes/object/View.st.css.d.ts.map +1 -1
  724. package/dist/types/components/EditableTable/cellTypes/text/Edit.st.css.d.ts.map +1 -1
  725. package/dist/types/components/EditableTable/cellTypes/text/View.st.css.d.ts.map +1 -1
  726. package/dist/types/components/EditableTable/cellTypes/time/Edit.st.css.d.ts.map +1 -1
  727. package/dist/types/components/EntityPageFields/EntityPageField.d.ts +3 -1
  728. package/dist/types/components/EntityPageFields/EntityPageField.d.ts.map +1 -1
  729. package/dist/types/components/EntityPageFields/EntityPageFields.d.ts.map +1 -1
  730. package/dist/types/components/EntityPageFields/EntityPageReferenceField.d.ts.map +1 -1
  731. package/dist/types/components/EntityPageFields/EntityPageReferenceValue.d.ts +11 -0
  732. package/dist/types/components/EntityPageFields/EntityPageReferenceValue.d.ts.map +1 -0
  733. package/dist/types/components/EntityPageFields/useReferencedSchema.d.ts +8 -0
  734. package/dist/types/components/EntityPageFields/useReferencedSchema.d.ts.map +1 -0
  735. package/dist/types/components/Fade/Fade.st.css.d.ts.map +1 -1
  736. package/dist/types/components/Heading/Heading.st.css.d.ts.map +1 -1
  737. package/dist/types/components/MaxHeightText/MaxHeightText.st.css.d.ts.map +1 -1
  738. package/dist/types/components/NestedTable/NestedTable.uni.driver.d.ts +1 -0
  739. package/dist/types/components/NestedTable/NestedTable.uni.driver.d.ts.map +1 -1
  740. package/dist/types/components/PickerContent/PickerContent.st.css.d.ts.map +1 -1
  741. package/dist/types/components/ScrollableContent/ScrollableContent.st.css.d.ts.map +1 -1
  742. package/dist/types/components/SlidingModal/SlidingModal.st.css.d.ts.map +1 -1
  743. package/dist/types/components/Table/AddFieldColumnHeader.st.css.d.ts.map +1 -1
  744. package/dist/types/components/Table/Table.uni.driver.d.ts +1 -0
  745. package/dist/types/components/Table/Table.uni.driver.d.ts.map +1 -1
  746. package/dist/types/components/TableFolders/TableFolders.uni.driver.d.ts +1 -0
  747. package/dist/types/components/TableFolders/TableFolders.uni.driver.d.ts.map +1 -1
  748. package/dist/types/components/TableGridSwitch/TableGridSwitch.uni.driver.d.ts +1 -0
  749. package/dist/types/components/TableGridSwitch/TableGridSwitch.uni.driver.d.ts.map +1 -1
  750. package/dist/types/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.d.ts.map +1 -1
  751. package/dist/types/components/ToolbarItem/ToolbarItem.st.css.d.ts.map +1 -1
  752. package/dist/types/schema/EntityPageFieldsCard.d.ts +2 -1
  753. package/dist/types/schema/EntityPageFieldsCard.d.ts.map +1 -1
  754. package/dist/types/state/CollectionPage/CollectionPageHeader.st.css.d.ts.map +1 -1
  755. package/dist/types/state/CustomColumnsEntityPageState.d.ts +1 -1
  756. package/dist/types/state/CustomColumnsEntityPageState.d.ts.map +1 -1
  757. package/dist/types/state/EntityPage/resolveEntityPageFields.d.ts +4 -4
  758. package/dist/types/state/EntityPage/resolveEntityPageFields.d.ts.map +1 -1
  759. package/dist/types/state/EntityPageFieldsCardState.d.ts +1 -3
  760. package/dist/types/state/EntityPageFieldsCardState.d.ts.map +1 -1
  761. package/dist/types/state/buildEditableFieldColumns.d.ts.map +1 -1
  762. package/dist/types/state/buildFieldColumns.d.ts.map +1 -1
  763. package/dist/types/testkit/enzyme.d.ts +4 -0
  764. package/dist/types/testkit/enzyme.d.ts.map +1 -1
  765. package/dist/types/testkit/jsdom.d.ts +6 -0
  766. package/dist/types/testkit/jsdom.d.ts.map +1 -1
  767. package/dist/types/testkit/playwright.d.ts +6 -0
  768. package/dist/types/testkit/playwright.d.ts.map +1 -1
  769. package/dist/types/testkit/puppeteer.d.ts +6 -0
  770. package/dist/types/testkit/puppeteer.d.ts.map +1 -1
  771. package/dist/types/version.d.ts +1 -1
  772. package/package.json +8 -7
  773. package/src/components/ActionCell/ActionCell.ts +1 -0
  774. package/src/components/CardContainer/CardContainer.st.css.ts +2 -2
  775. package/src/components/CmsFieldManagement/CmsFieldForm.st.css.ts +2 -2
  776. package/src/components/CmsFieldManagement/CmsFieldModal.st.css.ts +2 -2
  777. package/src/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.ts +2 -2
  778. package/src/components/Collapse/Collapse.st.css.ts +2 -2
  779. package/src/components/CollectionPageNew/CollectionPage.st.css.ts +2 -2
  780. package/src/components/CollectionSectionHeader/CollectionSectionHeader.st.css.ts +2 -2
  781. package/src/components/CollectionTable/CollectionTable.st.css.ts +2 -2
  782. package/src/components/CollectionTable/CollectionTable.uni.driver.ts +13 -0
  783. package/src/components/CollectionTable/CollectionTableWSRTable.st.css.ts +2 -2
  784. package/src/components/CollectionToolbar/CollectionToolbar.st.css.ts +2 -2
  785. package/src/components/CollectionToolbar/SearchOrCustomFilter.st.css.ts +2 -2
  786. package/src/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.ts +2 -2
  787. package/src/components/CollectionViewsDropdown/ViewsDropdown.st.css.ts +2 -2
  788. package/src/components/DragHandle/DragHandle.st.css.ts +2 -2
  789. package/src/components/EditableTable/EditableCell.st.css.ts +2 -2
  790. package/src/components/EditableTable/EditableTable.tsx +13 -3
  791. package/src/components/EditableTable/EditableTable.uni.driver.ts +15 -1
  792. package/src/components/EditableTable/HeaderActionsPopover.st.css.ts +2 -2
  793. package/src/components/EditableTable/cellTypes/CellViewLayout.st.css.ts +2 -2
  794. package/src/components/EditableTable/cellTypes/address/Edit.st.css.ts +2 -2
  795. package/src/components/EditableTable/cellTypes/array/Edit.st.css.ts +2 -2
  796. package/src/components/EditableTable/cellTypes/boolean/Edit.st.css.ts +2 -2
  797. package/src/components/EditableTable/cellTypes/boolean/View.st.css.ts +2 -2
  798. package/src/components/EditableTable/cellTypes/color/Edit.st.css.ts +2 -2
  799. package/src/components/EditableTable/cellTypes/date/Edit.st.css.ts +2 -2
  800. package/src/components/EditableTable/cellTypes/date/View.st.css.ts +2 -2
  801. package/src/components/EditableTable/cellTypes/datetime/Edit.st.css.ts +2 -2
  802. package/src/components/EditableTable/cellTypes/datetime/View.st.css.ts +2 -2
  803. package/src/components/EditableTable/cellTypes/email/Edit.st.css.ts +2 -2
  804. package/src/components/EditableTable/cellTypes/email/View.st.css.ts +2 -2
  805. package/src/components/EditableTable/cellTypes/number/Edit.st.css.ts +2 -2
  806. package/src/components/EditableTable/cellTypes/number/View.st.css.ts +2 -2
  807. package/src/components/EditableTable/cellTypes/object/Edit.st.css.ts +2 -2
  808. package/src/components/EditableTable/cellTypes/object/View.st.css.ts +2 -2
  809. package/src/components/EditableTable/cellTypes/select/Edit.st.css.ts +2 -2
  810. package/src/components/EditableTable/cellTypes/text/Edit.st.css.ts +2 -2
  811. package/src/components/EditableTable/cellTypes/text/View.st.css.ts +2 -2
  812. package/src/components/EditableTable/cellTypes/time/Edit.st.css.ts +2 -2
  813. package/src/components/EditableTable/cellTypes/url/Edit.st.css.ts +2 -2
  814. package/src/components/EditableTable/cellTypes/url/View.st.css.ts +2 -2
  815. package/src/components/EmptyState/EmptyStateBase.st.css.ts +2 -2
  816. package/src/components/EntityPage/EntityPagePlain.st.css.ts +2 -2
  817. package/src/components/EntityPageFields/EntityPageField.tsx +47 -2
  818. package/src/components/EntityPageFields/EntityPageFields.tsx +6 -6
  819. package/src/components/EntityPageFields/EntityPageReferenceField.tsx +5 -39
  820. package/src/components/EntityPageFields/EntityPageReferenceValue.tsx +64 -0
  821. package/src/components/EntityPageFields/useReferencedSchema.ts +42 -0
  822. package/src/components/Fade/Fade.st.css.ts +2 -2
  823. package/src/components/Heading/Heading.st.css.ts +2 -2
  824. package/src/components/ImportButton/ImportStepUpload.st.css.ts +2 -2
  825. package/src/components/InputOverflow/InputOverflow.st.css.ts +2 -2
  826. package/src/components/LoadingRow/LoadingRow.st.css.ts +3 -3
  827. package/src/components/MaxHeightText/MaxHeightText.st.css.ts +2 -2
  828. package/src/components/MaxLines/MaxLines.st.css.ts +2 -2
  829. package/src/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.ts +2 -2
  830. package/src/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.ts +2 -2
  831. package/src/components/NestedTable/NestedTableRow.st.css.ts +2 -2
  832. package/src/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.ts +2 -2
  833. package/src/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.ts +2 -2
  834. package/src/components/PickerContent/PickerContent.st.css.ts +2 -2
  835. package/src/components/PickerContent/PickerContentAdditionalStep.st.css.ts +2 -2
  836. package/src/components/PickerTableListItem/PickerTableListItem.st.css.ts +2 -2
  837. package/src/components/ScrollableContent/ScrollableContent.st.css.ts +2 -2
  838. package/src/components/SetupWidget/SetupWidget.st.css.ts +2 -2
  839. package/src/components/SkeletonCard/SkeletonCard.st.css.ts +2 -2
  840. package/src/components/SlidingModal/SlidingModal.st.css.ts +2 -2
  841. package/src/components/Table/AddFieldColumnHeader.st.css.ts +2 -2
  842. package/src/components/TabsFilter/TabsFilter.st.css.ts +2 -2
  843. package/src/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.ts +2 -2
  844. package/src/components/ToolbarItem/ToolbarItem.st.css.ts +2 -2
  845. package/src/components/ToolbarItemBox/ToolbarItemBox.st.css.ts +2 -2
  846. package/src/components/common.st.css.ts +2 -2
  847. package/src/schema/EntityPageFieldsCard.tsx +2 -1
  848. package/src/state/CollectionPage/CollectionPageHeader.st.css.ts +2 -2
  849. package/src/state/CustomColumnsEntityPageState.ts +7 -4
  850. package/src/state/EntityPage/resolveEntityPageFields.ts +22 -11
  851. package/src/state/EntityPageFieldsCardState.ts +11 -12
  852. package/src/state/FormPage/FormPageHeader.st.css.ts +2 -2
  853. package/src/state/buildEditableFieldColumns.ts +6 -0
  854. package/src/state/buildFieldColumns.tsx +3 -0
  855. package/src/styles.global.css +2 -2
  856. package/src/version.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["resolveEntityPageFields","fields","idField","fieldIds","map","id","filter","field","Boolean","Object","values","isSystem"],"sources":["../../../../src/state/EntityPage/resolveEntityPageFields.ts"],"sourcesContent":["import type { Field } from '@wix/bex-core';\n\n/** The fields an entity page renders: the given ids, or every editable schema\n * field. Lives here so the fields component and the card that wraps it offer\n * the same list. */\nexport function resolveEntityPageFields(\n fields: Record<string, Field | undefined>,\n idField: string,\n fieldIds?: string[],\n): Field[] {\n // An explicit fieldIds list is taken as-is — the consumer chose those fields.\n if (fieldIds) {\n return fieldIds\n .map((id) => fields[id])\n .filter((field): field is Field => Boolean(field));\n }\n\n // By default, skip the id field and system fields (e.g. `_id`, `_manualSort`,\n // `_createdDate`): they are not user-editable, and rendering a required one\n // would silently block save (react-hook-form marks the form invalid).\n return Object.values(fields).filter(\n (field): field is Field =>\n Boolean(field) && !field!.isSystem && field!.id !== idField,\n );\n}\n"],"mappings":";;;;AAEA;AACA;AACA;AACO,SAASA,uBAAuBA,CACrCC,MAAyC,EACzCC,OAAe,EACfC,QAAmB,EACV;EACT;EACA,IAAIA,QAAQ,EAAE;IACZ,OAAOA,QAAQ,CACZC,GAAG,CAAEC,EAAE,IAAKJ,MAAM,CAACI,EAAE,CAAC,CAAC,CACvBC,MAAM,CAAEC,KAAK,IAAqBC,OAAO,CAACD,KAAK,CAAC,CAAC;EACtD;;EAEA;EACA;EACA;EACA,OAAOE,MAAM,CAACC,MAAM,CAACT,MAAM,CAAC,CAACK,MAAM,CAChCC,KAAK,IACJC,OAAO,CAACD,KAAK,CAAC,IAAI,CAACA,KAAK,CAAEI,QAAQ,IAAIJ,KAAK,CAAEF,EAAE,KAAKH,OACxD,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"names":["resolveEntityPageFields","fields","fieldIds","map","id","filter","field","Boolean","Object","values","isEntityPageReadOnlyField","idField","isSystem","isEntityPageFieldHideable","_field$validation","validation","required"],"sources":["../../../../src/state/EntityPage/resolveEntityPageFields.ts"],"sourcesContent":["import type { Field } from '@wix/bex-core';\n\n/** The given ids, or every schema field. */\nexport function resolveEntityPageFields(\n fields: Record<string, Field | undefined>,\n fieldIds?: string[],\n): Field[] {\n if (fieldIds) {\n return fieldIds\n .map((id) => fields[id])\n .filter((field): field is Field => Boolean(field));\n }\n\n return Object.values(fields).filter((field): field is Field =>\n Boolean(field),\n );\n}\n\nexport function isEntityPageReadOnlyField(\n field: Field,\n idField: string | undefined,\n): boolean {\n return field.isSystem === true || field.id === idField;\n}\n\n// Hiding a required input would leave the form invalid with nothing on screen\n// to fix. A read-only field is not in the form, so its `required` does not\n// apply.\nexport function isEntityPageFieldHideable(\n field: Field,\n idField: string | undefined,\n): boolean {\n return (\n isEntityPageReadOnlyField(field, idField) || !field.validation?.required\n );\n}\n"],"mappings":";;;;;;AAEA;AACO,SAASA,uBAAuBA,CACrCC,MAAyC,EACzCC,QAAmB,EACV;EACT,IAAIA,QAAQ,EAAE;IACZ,OAAOA,QAAQ,CACZC,GAAG,CAAEC,EAAE,IAAKH,MAAM,CAACG,EAAE,CAAC,CAAC,CACvBC,MAAM,CAAEC,KAAK,IAAqBC,OAAO,CAACD,KAAK,CAAC,CAAC;EACtD;EAEA,OAAOE,MAAM,CAACC,MAAM,CAACR,MAAM,CAAC,CAACI,MAAM,CAAEC,KAAK,IACxCC,OAAO,CAACD,KAAK,CACf,CAAC;AACH;AAEO,SAASI,yBAAyBA,CACvCJ,KAAY,EACZK,OAA2B,EAClB;EACT,OAAOL,KAAK,CAACM,QAAQ,KAAK,IAAI,IAAIN,KAAK,CAACF,EAAE,KAAKO,OAAO;AACxD;;AAEA;AACA;AACA;AACO,SAASE,yBAAyBA,CACvCP,KAAY,EACZK,OAA2B,EAClB;EAAA,IAAAG,iBAAA;EACT,OACEJ,yBAAyB,CAACJ,KAAK,EAAEK,OAAO,CAAC,IAAI,GAAAG,iBAAA,GAACR,KAAK,CAACS,UAAU,aAAhBD,iBAAA,CAAkBE,QAAQ;AAE5E","ignoreList":[]}
@@ -92,9 +92,7 @@ class EntityPageFieldsCardState {
92
92
  return this.params.pageState.schema ?? ((_this$sourceState = this.sourceState) == null ? void 0 : _this$sourceState.schema) ?? null;
93
93
  }
94
94
 
95
- /** The fields the card offers — empty until the schema loads. A required
96
- * field is not hideable: hiding it would leave the form invalid with nothing
97
- * on screen to fix. */
95
+ /** The fields the card offers — empty until the schema loads. */
98
96
  get declaredFields() {
99
97
  const {
100
98
  schema
@@ -102,13 +100,10 @@ class EntityPageFieldsCardState {
102
100
  if (!schema) {
103
101
  return [];
104
102
  }
105
- return (0, _resolveEntityPageFields.resolveEntityPageFields)(schema.fields, schema.idField, this.params.fieldIds).map(field => {
106
- var _field$validation;
107
- return {
108
- id: field.id,
109
- hideable: !((_field$validation = field.validation) != null && _field$validation.required)
110
- };
111
- });
103
+ return (0, _resolveEntityPageFields.resolveEntityPageFields)(schema.fields, this.params.fieldIds).map(field => ({
104
+ id: field.id,
105
+ hideable: (0, _resolveEntityPageFields.isEntityPageFieldHideable)(field, schema.idField)
106
+ }));
112
107
  }
113
108
 
114
109
  /** What the card renders. Before the schema loads this is whatever the card
@@ -1 +1 @@
1
- {"version":3,"names":["_mobx","require","_bexCore","_resolveEntityPageFields","_SchemaCardState","_CustomColumnsEntityPageState","EntityPageFieldsCardState","constructor","params","_defineProperty2","default","TaskState","makeObservable","schema","computed","declaredFields","visibleFieldIds","isLayoutReady","canManageFields","schemaSource","pageState","sourceState","SourceState","container","source","undefined","cardState","SchemaCardState","fields","persistencyKey","panels","showManageFields","_params$pageState$sch","manageFieldsSource","fieldManagement","closeSidePanel","panelState","CustomColumnsEntityPageState","collectionId","fieldsState","isFieldsEditable","showFieldTypeIcons","dragAndDrop","modalsContainerRef","customColumnsState","_this$sourceState","resolveEntityPageFields","idField","fieldIds","map","field","_field$validation","id","hideable","validation","required","length","orderedFields","filter","isFieldVisible","status","initTask","isSuccess","isError","openManageFields","_this$panelState","toggleSidePanel","init","_this$loadTask$status","loadTask","runOnce","_this$sourceState2","load","promise","catch","releaseSaveHold","holdSave","disposers","when","addEventListener","events","_this$loadTask$status2","reaction","_this$sourceState3","loadedSchema","setLoadedSchema","setSchema","forEach","dispose","exports"],"sources":["../../../src/state/EntityPageFieldsCardState.ts"],"sourcesContent":["import { computed, makeObservable, reaction, when } from 'mobx';\nimport {\n addEventListener,\n SourceState,\n TaskState,\n type Schema,\n type WixPatternsContainer,\n} from '@wix/bex-core';\nimport type { CustomColumnsDragAndDrop } from '../components/CustomColumns/CustomColumnsDragAndDrop';\nimport { resolveEntityPageFields } from './EntityPage/resolveEntityPageFields';\nimport type { EntityPageState } from './EntityPage/EntityPageState';\nimport { SchemaCardState } from './SchemaCard/SchemaCardState';\nimport type { SchemaViewConfig } from './SchemaCard/SchemaFieldsState';\nimport type { ManageFieldsSource } from './ManageFieldsSource';\nimport { CustomColumnsEntityPageState } from './CustomColumnsEntityPageState';\n\nexport interface EntityPageFieldsCardStateParams {\n pageState: EntityPageState<any, any>;\n container: WixPatternsContainer;\n /** Namespace the per-user show/hide and order are stored under. */\n persistencyKey: string;\n /** Field ids to offer, in order. Omitted ⇒ every editable schema field. */\n fieldIds?: string[];\n /** Whether to build the manage-fields panel. Default: `true`. */\n showManageFields?: boolean;\n /** Passed in rather than imported so this stays free of component imports. */\n dragAndDrop?: typeof CustomColumnsDragAndDrop;\n /** Builds add / edit / delete field over the page's source. Passed in for the\n * same reason as `dragAndDrop`. Omitted ⇒ the panel only shows and reorders. */\n fieldManagement?: (params: {\n sourceState: SourceState<any>;\n closeSidePanel: () => void;\n }) => ManageFieldsSource;\n modalsContainerRef: {\n current: HTMLElement | null | undefined;\n };\n}\n\n/**\n * Owns the card's field layout: which of the page's schema fields are visible\n * and in what order, plus the panel that edits them.\n *\n * The schema loads after this state is created, so `init()` awaits the source's\n * load and everything below reads the result through computeds — the states are\n * built once, on the first render, and fill in when the schema arrives.\n */\nexport class EntityPageFieldsCardState {\n readonly cardState: SchemaCardState;\n readonly panelState?: CustomColumnsEntityPageState;\n /** Holds the loaded schema for the card. The page loads the same (memoized)\n * schema into its own copy; this one is also what the field mutations merge\n * their result into, so an added or renamed field shows up with no reload. */\n readonly sourceState?: SourceState<any>;\n /** Add / edit / delete field, when the page has a source and the panel is on. */\n readonly manageFieldsSource?: ManageFieldsSource;\n /** The source's schema load. Owned here rather than read off the page state,\n * because this state's `init()` runs before the page's (child effects run\n * first) and the stored layout must not be read before the fields exist. */\n readonly loadTask = new TaskState();\n private readonly params: EntityPageFieldsCardStateParams;\n\n constructor(params: EntityPageFieldsCardStateParams) {\n this.params = params;\n\n makeObservable(this, {\n schema: computed,\n declaredFields: computed,\n visibleFieldIds: computed,\n isLayoutReady: computed,\n canManageFields: computed,\n });\n\n const { schemaSource } = params.pageState;\n this.sourceState = schemaSource\n ? new SourceState({ container: params.container, source: schemaSource })\n : undefined;\n\n this.cardState = new SchemaCardState({\n fields: () => this.declaredFields,\n persistencyKey: params.persistencyKey,\n container: params.container,\n });\n\n const { panels } = params.pageState;\n\n if ((params.showManageFields ?? true) && panels) {\n this.manageFieldsSource =\n this.sourceState &&\n params.fieldManagement?.({\n sourceState: this.sourceState,\n closeSidePanel: panels.closeSidePanel,\n });\n this.panelState = new CustomColumnsEntityPageState({\n container: params.container,\n // The page's host, so this panel and anything else on the page take\n // turns rather than stacking.\n panels,\n // Namespaces the panel's column collection, the way a table's is\n // namespaced by its collection.\n collectionId: params.pageState.schemaSource?.collectionId,\n fieldsState: this.cardState.fieldsState,\n schema: () => this.schema,\n manageFieldsSource: this.manageFieldsSource,\n isFieldsEditable: true,\n showFieldTypeIcons: true,\n dragAndDrop: params.dragAndDrop,\n modalsContainerRef: params.modalsContainerRef,\n });\n\n // Where the registered panel reads it from — it renders with no props.\n params.pageState.customColumnsState = this.panelState;\n }\n }\n\n /** The page's schema, or this state's own copy until the page has one — this\n * load resolves first, since the page also waits for the entity fetch. They\n * are the same object (the source memoizes its load), and after a field\n * mutation the page holds the merged one, which `init` mirrors to it. */\n get schema(): Schema | null {\n return this.params.pageState.schema ?? this.sourceState?.schema ?? null;\n }\n\n /** The fields the card offers — empty until the schema loads. A required\n * field is not hideable: hiding it would leave the form invalid with nothing\n * on screen to fix. */\n get declaredFields(): SchemaViewConfig[] {\n const { schema } = this;\n if (!schema) {\n return [];\n }\n return resolveEntityPageFields(\n schema.fields,\n schema.idField,\n this.params.fieldIds,\n ).map((field) => ({\n id: field.id,\n hideable: !field.validation?.required,\n }));\n }\n\n /** What the card renders. Before the schema loads this is whatever the card\n * was asked for, which is also what the fields show a skeleton for. */\n get visibleFieldIds(): string[] | undefined {\n if (!this.declaredFields.length) {\n return this.params.fieldIds;\n }\n const { fieldsState } = this.cardState;\n return fieldsState.orderedFields\n .filter((field) => fieldsState.isFieldVisible(field.id))\n .map((field) => field.id);\n }\n\n get isLayoutReady(): boolean {\n const { status } = this.cardState.fieldsState.initTask;\n return status.isSuccess || status.isError;\n }\n\n get canManageFields(): boolean {\n return !!this.panelState && this.declaredFields.length > 0;\n }\n\n openManageFields() {\n this.panelState?.panels.toggleSidePanel('customColumns');\n }\n\n init() {\n // `loadSchema` is memoized on the source, so this shares the one fetch the\n // page and the collection already make.\n this.loadTask.runOnce(async () => {\n await this.sourceState?.load();\n });\n // The card renders its fields regardless; a failed load leaves the page\n // itself showing the error.\n this.loadTask.status.promise?.catch(() => null);\n\n const releaseSaveHold = this.params.pageState.holdSave();\n\n const disposers: (void | (() => void))[] = [\n when(() => this.isLayoutReady, releaseSaveHold),\n releaseSaveHold,\n // Hold the stored-layout read until the schema is in, so a saved\n // show/hide and order survives a reload. Registered before the card\n // state's init below, which is what collects the listeners.\n addEventListener(\n this.cardState.fieldsState.events,\n 'beforeInitialFetch',\n () => this.loadTask.status.promise?.catch(() => {}),\n ),\n // A field mutation replaces this state's loaded schema. The page keeps\n // its own copy, so update both public views of it together.\n reaction(\n () => this.sourceState?.loadedSchema,\n (loadedSchema) => {\n if (!loadedSchema) {\n return;\n }\n this.params.pageState.setLoadedSchema(loadedSchema);\n this.params.pageState.setSchema(loadedSchema.schema);\n },\n ),\n this.cardState.init(),\n ];\n\n return () => {\n disposers.forEach((dispose) => dispose?.());\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_mobx","require","_bexCore","_resolveEntityPageFields","_SchemaCardState","_CustomColumnsEntityPageState","EntityPageFieldsCardState","constructor","params","_defineProperty2","default","TaskState","makeObservable","schema","computed","declaredFields","visibleFieldIds","isLayoutReady","canManageFields","schemaSource","pageState","sourceState","SourceState","container","source","undefined","cardState","SchemaCardState","fields","persistencyKey","panels","showManageFields","_params$pageState$sch","manageFieldsSource","fieldManagement","closeSidePanel","panelState","CustomColumnsEntityPageState","collectionId","fieldsState","isFieldsEditable","showFieldTypeIcons","dragAndDrop","modalsContainerRef","customColumnsState","_this$sourceState","resolveEntityPageFields","fieldIds","map","field","id","hideable","isEntityPageFieldHideable","idField","length","orderedFields","filter","isFieldVisible","status","initTask","isSuccess","isError","openManageFields","_this$panelState","toggleSidePanel","init","_this$loadTask$status","loadTask","runOnce","_this$sourceState2","load","promise","catch","releaseSaveHold","holdSave","disposers","when","addEventListener","events","_this$loadTask$status2","reaction","_this$sourceState3","loadedSchema","setLoadedSchema","setSchema","forEach","dispose","exports"],"sources":["../../../src/state/EntityPageFieldsCardState.ts"],"sourcesContent":["import { computed, makeObservable, reaction, when } from 'mobx';\nimport {\n addEventListener,\n SourceState,\n TaskState,\n type Schema,\n type WixPatternsContainer,\n} from '@wix/bex-core';\nimport type { CustomColumnsDragAndDrop } from '../components/CustomColumns/CustomColumnsDragAndDrop';\nimport {\n isEntityPageFieldHideable,\n resolveEntityPageFields,\n} from './EntityPage/resolveEntityPageFields';\nimport type { EntityPageState } from './EntityPage/EntityPageState';\nimport { SchemaCardState } from './SchemaCard/SchemaCardState';\nimport type { SchemaViewConfig } from './SchemaCard/SchemaFieldsState';\nimport type { ManageFieldsSource } from './ManageFieldsSource';\nimport { CustomColumnsEntityPageState } from './CustomColumnsEntityPageState';\n\nexport interface EntityPageFieldsCardStateParams {\n pageState: EntityPageState<any, any>;\n container: WixPatternsContainer;\n /** Namespace the per-user show/hide and order are stored under. */\n persistencyKey: string;\n /** Field ids to offer, in order. Omitted ⇒ every editable schema field. */\n fieldIds?: string[];\n /** Whether to build the manage-fields panel. Default: `true`. */\n showManageFields?: boolean;\n /** Passed in rather than imported so this stays free of component imports. */\n dragAndDrop?: typeof CustomColumnsDragAndDrop;\n /** Builds add / edit / delete field over the page's source. Passed in for the\n * same reason as `dragAndDrop`. Omitted ⇒ the panel only shows and reorders. */\n fieldManagement?: (params: {\n sourceState: SourceState<any>;\n closeSidePanel: () => void;\n }) => ManageFieldsSource;\n modalsContainerRef: {\n current: HTMLElement | null | undefined;\n };\n}\n\n/**\n * Owns the card's field layout: which of the page's schema fields are visible\n * and in what order, plus the panel that edits them.\n *\n * The schema loads after this state is created, so `init()` awaits the source's\n * load and everything below reads the result through computeds — the states are\n * built once, on the first render, and fill in when the schema arrives.\n */\nexport class EntityPageFieldsCardState {\n readonly cardState: SchemaCardState;\n readonly panelState?: CustomColumnsEntityPageState;\n /** Holds the loaded schema for the card. The page loads the same (memoized)\n * schema into its own copy; this one is also what the field mutations merge\n * their result into, so an added or renamed field shows up with no reload. */\n readonly sourceState?: SourceState<any>;\n /** Add / edit / delete field, when the page has a source and the panel is on. */\n readonly manageFieldsSource?: ManageFieldsSource;\n /** The source's schema load. Owned here rather than read off the page state,\n * because this state's `init()` runs before the page's (child effects run\n * first) and the stored layout must not be read before the fields exist. */\n readonly loadTask = new TaskState();\n private readonly params: EntityPageFieldsCardStateParams;\n\n constructor(params: EntityPageFieldsCardStateParams) {\n this.params = params;\n\n makeObservable(this, {\n schema: computed,\n declaredFields: computed,\n visibleFieldIds: computed,\n isLayoutReady: computed,\n canManageFields: computed,\n });\n\n const { schemaSource } = params.pageState;\n this.sourceState = schemaSource\n ? new SourceState({ container: params.container, source: schemaSource })\n : undefined;\n\n this.cardState = new SchemaCardState({\n fields: () => this.declaredFields,\n persistencyKey: params.persistencyKey,\n container: params.container,\n });\n\n const { panels } = params.pageState;\n\n if ((params.showManageFields ?? true) && panels) {\n this.manageFieldsSource =\n this.sourceState &&\n params.fieldManagement?.({\n sourceState: this.sourceState,\n closeSidePanel: panels.closeSidePanel,\n });\n this.panelState = new CustomColumnsEntityPageState({\n container: params.container,\n // The page's host, so this panel and anything else on the page take\n // turns rather than stacking.\n panels,\n // Namespaces the panel's column collection, the way a table's is\n // namespaced by its collection.\n collectionId: params.pageState.schemaSource?.collectionId,\n fieldsState: this.cardState.fieldsState,\n schema: () => this.schema,\n manageFieldsSource: this.manageFieldsSource,\n isFieldsEditable: true,\n showFieldTypeIcons: true,\n dragAndDrop: params.dragAndDrop,\n modalsContainerRef: params.modalsContainerRef,\n });\n\n // Where the registered panel reads it from — it renders with no props.\n params.pageState.customColumnsState = this.panelState;\n }\n }\n\n /** The page's schema, or this state's own copy until the page has one — this\n * load resolves first, since the page also waits for the entity fetch. They\n * are the same object (the source memoizes its load), and after a field\n * mutation the page holds the merged one, which `init` mirrors to it. */\n get schema(): Schema | null {\n return this.params.pageState.schema ?? this.sourceState?.schema ?? null;\n }\n\n /** The fields the card offers — empty until the schema loads. */\n get declaredFields(): SchemaViewConfig[] {\n const { schema } = this;\n if (!schema) {\n return [];\n }\n return resolveEntityPageFields(schema.fields, this.params.fieldIds).map(\n (field) => ({\n id: field.id,\n hideable: isEntityPageFieldHideable(field, schema.idField),\n }),\n );\n }\n\n /** What the card renders. Before the schema loads this is whatever the card\n * was asked for, which is also what the fields show a skeleton for. */\n get visibleFieldIds(): string[] | undefined {\n if (!this.declaredFields.length) {\n return this.params.fieldIds;\n }\n const { fieldsState } = this.cardState;\n return fieldsState.orderedFields\n .filter((field) => fieldsState.isFieldVisible(field.id))\n .map((field) => field.id);\n }\n\n get isLayoutReady(): boolean {\n const { status } = this.cardState.fieldsState.initTask;\n return status.isSuccess || status.isError;\n }\n\n get canManageFields(): boolean {\n return !!this.panelState && this.declaredFields.length > 0;\n }\n\n openManageFields() {\n this.panelState?.panels.toggleSidePanel('customColumns');\n }\n\n init() {\n // `loadSchema` is memoized on the source, so this shares the one fetch the\n // page and the collection already make.\n this.loadTask.runOnce(async () => {\n await this.sourceState?.load();\n });\n // The card renders its fields regardless; a failed load leaves the page\n // itself showing the error.\n this.loadTask.status.promise?.catch(() => null);\n\n const releaseSaveHold = this.params.pageState.holdSave();\n\n const disposers: (void | (() => void))[] = [\n when(() => this.isLayoutReady, releaseSaveHold),\n releaseSaveHold,\n // Hold the stored-layout read until the schema is in, so a saved\n // show/hide and order survives a reload. Registered before the card\n // state's init below, which is what collects the listeners.\n addEventListener(\n this.cardState.fieldsState.events,\n 'beforeInitialFetch',\n () => this.loadTask.status.promise?.catch(() => {}),\n ),\n // A field mutation replaces this state's loaded schema. The page keeps\n // its own copy, so update both public views of it together.\n reaction(\n () => this.sourceState?.loadedSchema,\n (loadedSchema) => {\n if (!loadedSchema) {\n return;\n }\n this.params.pageState.setLoadedSchema(loadedSchema);\n this.params.pageState.setSchema(loadedSchema.schema);\n },\n ),\n this.cardState.init(),\n ];\n\n return () => {\n disposers.forEach((dispose) => dispose?.());\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -5,14 +5,14 @@ exports.vars = exports.style = exports.stVars = exports.st = exports.namespace =
5
5
  var _stylableEsmRuntime = require("../../stylable-esm-runtime.js");
6
6
  // @ts-nocheck
7
7
 
8
- var _namespace_ = "FormPageHeader2666273753";
8
+ var _namespace_ = "FormPageHeader4154625186";
9
9
  var _style_ = _stylableEsmRuntime.classesRuntime.bind(null, _namespace_);
10
10
  var cssStates = exports.cssStates = _stylableEsmRuntime.statesRuntime.bind(null, _namespace_);
11
11
  var style = exports.style = _style_;
12
12
  var st = exports.st = _style_;
13
13
  var namespace = exports.namespace = _namespace_;
14
14
  var classes = exports.classes = {
15
- "root": "FormPageHeader2666273753__root"
15
+ "root": "FormPageHeader4154625186__root"
16
16
  };
17
17
  var keyframes = exports.keyframes = {};
18
18
  var layers = exports.layers = {};
@@ -1 +1 @@
1
- {"version":3,"names":["_stylableEsmRuntime","require","_namespace_","_style_","classesRuntime","bind","cssStates","exports","statesRuntime","style","st","namespace","classes","keyframes","layers","containers","stVars","vars"],"sources":["../../../../src/state/FormPage/FormPageHeader.st.css.ts"],"sourcesContent":["// @ts-nocheck\n\n\nimport { classesRuntime, statesRuntime } from \"../../stylable-esm-runtime.js\";\n\n\n\nvar _namespace_ = \"FormPageHeader2666273753\";\nvar _style_ = classesRuntime.bind(null, _namespace_);\n\nexport var cssStates = statesRuntime.bind(null, _namespace_);\nexport var style = _style_;\nexport var st: import(\"@stylable/runtime\").STFunction = _style_;\n\nexport var namespace = _namespace_;\nexport var classes = {\"root\":\"FormPageHeader2666273753__root\"};\nexport var keyframes = {}; \nexport var layers = {};\nexport var containers = {};\nexport var stVars = {}; \nexport var vars = {}; \n\n\n\n\n"],"mappings":";;;;AAGA,IAAAA,mBAAA,GAAAC,OAAA;AAHA;;AAOA,IAAIC,WAAW,GAAG,0BAA0B;AAC5C,IAAIC,OAAO,GAAGC,kCAAc,CAACC,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AAE7C,IAAII,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAGE,iCAAa,CAACH,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AACrD,IAAIO,KAAK,GAAAF,OAAA,CAAAE,KAAA,GAAGN,OAAO;AACnB,IAAIO,EAA0C,GAAAH,OAAA,CAAAG,EAAA,GAAGP,OAAO;AAExD,IAAIQ,SAAS,GAAAJ,OAAA,CAAAI,SAAA,GAAGT,WAAW;AAC3B,IAAIU,OAAO,GAAAL,OAAA,CAAAK,OAAA,GAAG;EAAC,MAAM,EAAC;AAAgC,CAAC;AACvD,IAAIC,SAAS,GAAAN,OAAA,CAAAM,SAAA,GAAG,CAAC,CAAC;AAClB,IAAIC,MAAM,GAAAP,OAAA,CAAAO,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,UAAU,GAAAR,OAAA,CAAAQ,UAAA,GAAG,CAAC,CAAC;AACnB,IAAIC,MAAM,GAAAT,OAAA,CAAAS,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,IAAI,GAAAV,OAAA,CAAAU,IAAA,GAAG,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_stylableEsmRuntime","require","_namespace_","_style_","classesRuntime","bind","cssStates","exports","statesRuntime","style","st","namespace","classes","keyframes","layers","containers","stVars","vars"],"sources":["../../../../src/state/FormPage/FormPageHeader.st.css.ts"],"sourcesContent":["// @ts-nocheck\n\n\nimport { classesRuntime, statesRuntime } from \"../../stylable-esm-runtime.js\";\n\n\n\nvar _namespace_ = \"FormPageHeader4154625186\";\nvar _style_ = classesRuntime.bind(null, _namespace_);\n\nexport var cssStates = statesRuntime.bind(null, _namespace_);\nexport var style = _style_;\nexport var st: import(\"@stylable/runtime\").STFunction = _style_;\n\nexport var namespace = _namespace_;\nexport var classes = {\"root\":\"FormPageHeader4154625186__root\"};\nexport var keyframes = {}; \nexport var layers = {};\nexport var containers = {};\nexport var stVars = {}; \nexport var vars = {}; \n\n\n\n\n"],"mappings":";;;;AAGA,IAAAA,mBAAA,GAAAC,OAAA;AAHA;;AAOA,IAAIC,WAAW,GAAG,0BAA0B;AAC5C,IAAIC,OAAO,GAAGC,kCAAc,CAACC,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AAE7C,IAAII,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAGE,iCAAa,CAACH,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AACrD,IAAIO,KAAK,GAAAF,OAAA,CAAAE,KAAA,GAAGN,OAAO;AACnB,IAAIO,EAA0C,GAAAH,OAAA,CAAAG,EAAA,GAAGP,OAAO;AAExD,IAAIQ,SAAS,GAAAJ,OAAA,CAAAI,SAAA,GAAGT,WAAW;AAC3B,IAAIU,OAAO,GAAAL,OAAA,CAAAK,OAAA,GAAG;EAAC,MAAM,EAAC;AAAgC,CAAC;AACvD,IAAIC,SAAS,GAAAN,OAAA,CAAAM,SAAA,GAAG,CAAC,CAAC;AAClB,IAAIC,MAAM,GAAAP,OAAA,CAAAO,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,UAAU,GAAAR,OAAA,CAAAQ,UAAA,GAAG,CAAC,CAAC;AACnB,IAAIC,MAAM,GAAAT,OAAA,CAAAS,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,IAAI,GAAAV,OAAA,CAAAU,IAAA,GAAG,CAAC,CAAC","ignoreList":[]}
@@ -140,6 +140,12 @@ function buildEditableFieldColumns(source, translate, editableCellFor) {
140
140
  name: field.displayName,
141
141
  isPrimary: field.isPrimary,
142
142
  isSystem: field.isSystem,
143
+ // Also set by buildFieldColumns, and needed here too: this column reaches
144
+ // the toolbar through simplifyColumn, which always emits the key, so it
145
+ // would overwrite the display column's value with undefined.
146
+ infoTooltipProps: field.helpText ? {
147
+ content: field.helpText
148
+ } : undefined,
143
149
  hideable: true,
144
150
  sortable: (definition == null || (_definition$capabilit = definition.capabilities) == null ? void 0 : _definition$capabilit.sortable) ?? ((_field$capabilities = field.capabilities) == null ? void 0 : _field$capabilities.sortable) ?? false,
145
151
  editable,
@@ -1 +1 @@
1
- {"version":3,"names":["_bexCore","require","_patternsFields","_fieldTypeToCellType","NEEDS_TYPE_CONFIG","Set","hasEditor","field","customCell","EditComponent","type","has","toValidationRules","translate","_v$numberRange","_v$numberRange2","_v$stringLengthRange","_v$stringLengthRange2","_v$specificValues","v","validation","rules","required","push","message","fieldName","displayName","numberRange","min","value","max","stringLengthRange","minLength","maxLength","patternRegex","compilePattern","pattern","specificValues","length","values","synthesizeCellConfig","definition","_definition$value","editableTable","valueValidate","validate","buildEditableFieldColumns","source","editableCellFor","canWrite","setCellValue","fields","map","_definition$capabilit","_field$capabilities","id","columnIdForField","resolveFieldTypeDefinition","undefined","sourceCell","cellType","FIELD_TYPE_TO_CELL_TYPE","editable","isSystem","typeConfig","title","name","isPrimary","hideable","sortable","capabilities","getValue","item","getCellValue","setValue"],"sources":["../../../src/state/buildEditableFieldColumns.ts"],"sourcesContent":["import type {\n Field,\n FieldsSource,\n FieldTypeDefinition,\n PatternsFieldType,\n Translate,\n ValidationRule,\n} from '@wix/bex-core';\nimport { resolveFieldTypeDefinition } from '@wix/bex-core';\nimport { compilePattern } from '@wix/patterns-fields';\nimport type { CellType, EditableColumn } from './EditableTable/types';\nimport { FIELD_TYPE_TO_CELL_TYPE } from './EditableTable/fieldTypeToCellType';\nimport type { EditableCellUpgrade } from './CollectionFieldsSourceState';\n\n// Types whose editable cell needs typeConfig the projection can't supply yet\n// (referenced collection). Until that lands, they render as a\n// read-only 'object' cell rather than a broken editor.\nconst NEEDS_TYPE_CONFIG = new Set<PatternsFieldType>([\n 'REFERENCE',\n 'MULTI_REFERENCE',\n]);\n\n/**\n * Whether this column has a usable inline editor. Read-only cases:\n * `NEEDS_TYPE_CONFIG` types are downgraded to a display cell, `UNKNOWN` has no\n * editor, and a `CUSTOM` field is only editable through a definition that\n * supplies an EditComponent. Everything else keeps its cell type's own editor —\n * including OBJECT / ARRAY, whose cells edit as JSON.\n */\nfunction hasEditor(field: Field, customCell?: Omit<CellType, 'type'>): boolean {\n if (customCell) {\n return !!customCell.EditComponent;\n }\n return (\n field.type !== 'CUSTOM' &&\n field.type !== 'UNKNOWN' &&\n !NEEDS_TYPE_CONFIG.has(field.type)\n );\n}\n\nexport function toValidationRules(\n field: Field,\n translate: Translate,\n): ValidationRule[] {\n const v = field.validation;\n if (!v) {\n return [];\n }\n const rules: ValidationRule[] = [];\n if (v.required) {\n rules.push({\n type: 'required',\n message: translate('cairo.editableTable.field.validation.required', {\n fieldName: field.displayName,\n }),\n });\n }\n if (v.numberRange?.min != null) {\n rules.push({ type: 'min', value: v.numberRange.min, message: '' });\n }\n if (v.numberRange?.max != null) {\n rules.push({ type: 'max', value: v.numberRange.max, message: '' });\n }\n if (v.stringLengthRange?.minLength != null) {\n rules.push({\n type: 'minLength',\n value: v.stringLengthRange.minLength,\n message: '',\n });\n }\n if (v.stringLengthRange?.maxLength != null) {\n rules.push({\n type: 'maxLength',\n value: v.stringLengthRange.maxLength,\n message: '',\n });\n }\n // A pattern the platform refuses to run (uncompilable, over-long, or able to\n // backtrack catastrophically) yields no rule, matching what the form inputs do.\n const patternRegex = compilePattern(v.pattern);\n if (patternRegex) {\n rules.push({\n type: 'pattern',\n value: patternRegex,\n message: translate('cairo.editableTable.field.validation.pattern', {\n fieldName: field.displayName,\n }),\n });\n }\n if (v.specificValues?.length) {\n rules.push({\n type: 'specificValues',\n values: v.specificValues,\n message: translate(\n 'cairo.editableTable.field.validation.specificValues',\n { fieldName: field.displayName },\n ),\n });\n }\n return rules;\n}\n\n// The inline-custom cell config for a resolved definition: its editableTable\n// slot, with the definition's value-level validation layered in when the slot\n// doesn't validate itself.\nfunction synthesizeCellConfig(\n definition: FieldTypeDefinition,\n): Omit<CellType, 'type'> {\n const editableTable = definition.editableTable!;\n const valueValidate = definition.value?.validate;\n const validate =\n valueValidate &&\n ((value: unknown, rules?: ValidationRule[]) => valueValidate(value, rules));\n return { ...editableTable, validate };\n}\n\n/**\n * Projects a FieldsSource's fields into EditableTable columns: a cell type by\n * field type, value read/write through the source, validation from the field,\n * and the flags the header reads for its disable rules. A cell is editable only\n * when the source can write it back (setCellValue) and the field isn't a system\n * field. A CUSTOM field renders through its definition's editableTable slot as\n * an inline custom cell; without one it falls back to a read-only object cell.\n */\nexport function buildEditableFieldColumns(\n source: FieldsSource,\n translate: Translate,\n editableCellFor?: (field: Field) => EditableCellUpgrade | undefined,\n): EditableColumn<Record<string, unknown>>[] {\n const canWrite = typeof source.setCellValue === 'function';\n return source.fields.map((field) => {\n const id = source.columnIdForField(field);\n const definition = resolveFieldTypeDefinition(source, field);\n const customCell = definition?.editableTable\n ? synthesizeCellConfig(definition)\n : undefined;\n // A source-supplied cell wins over the downgrade: it carries the typeConfig\n // that made the type read-only here in the first place.\n const sourceCell = customCell\n ? undefined\n : NEEDS_TYPE_CONFIG.has(field.type)\n ? editableCellFor?.(field)\n : undefined;\n const cellType = customCell\n ? 'custom'\n : sourceCell?.cellType ??\n (NEEDS_TYPE_CONFIG.has(field.type)\n ? 'object'\n : FIELD_TYPE_TO_CELL_TYPE[field.type] ?? 'object');\n const validation = toValidationRules(field, translate);\n const editable =\n canWrite &&\n !field.isSystem &&\n (!!sourceCell || hasEditor(field, customCell));\n return {\n id,\n cellType,\n ...(customCell && { typeConfig: customCell }),\n ...(sourceCell && { typeConfig: sourceCell.typeConfig }),\n field,\n title: field.displayName,\n name: field.displayName,\n isPrimary: field.isPrimary,\n isSystem: field.isSystem,\n hideable: true,\n sortable:\n definition?.capabilities?.sortable ??\n field.capabilities?.sortable ??\n false,\n editable,\n validation: validation.length ? validation : undefined,\n getValue: (item) => source.getCellValue(item, field),\n setValue: editable\n ? (item, value) =>\n source.setCellValue!(item, field, value) as Record<string, unknown>\n : undefined,\n } as EditableColumn<Record<string, unknown>>;\n });\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_bexCore","require","_patternsFields","_fieldTypeToCellType","NEEDS_TYPE_CONFIG","Set","hasEditor","field","customCell","EditComponent","type","has","toValidationRules","translate","_v$numberRange","_v$numberRange2","_v$stringLengthRange","_v$stringLengthRange2","_v$specificValues","v","validation","rules","required","push","message","fieldName","displayName","numberRange","min","value","max","stringLengthRange","minLength","maxLength","patternRegex","compilePattern","pattern","specificValues","length","values","synthesizeCellConfig","definition","_definition$value","editableTable","valueValidate","validate","buildEditableFieldColumns","source","editableCellFor","canWrite","setCellValue","fields","map","_definition$capabilit","_field$capabilities","id","columnIdForField","resolveFieldTypeDefinition","undefined","sourceCell","cellType","FIELD_TYPE_TO_CELL_TYPE","editable","isSystem","typeConfig","title","name","isPrimary","infoTooltipProps","helpText","content","hideable","sortable","capabilities","getValue","item","getCellValue","setValue"],"sources":["../../../src/state/buildEditableFieldColumns.ts"],"sourcesContent":["import type {\n Field,\n FieldsSource,\n FieldTypeDefinition,\n PatternsFieldType,\n Translate,\n ValidationRule,\n} from '@wix/bex-core';\nimport { resolveFieldTypeDefinition } from '@wix/bex-core';\nimport { compilePattern } from '@wix/patterns-fields';\nimport type { CellType, EditableColumn } from './EditableTable/types';\nimport { FIELD_TYPE_TO_CELL_TYPE } from './EditableTable/fieldTypeToCellType';\nimport type { EditableCellUpgrade } from './CollectionFieldsSourceState';\n\n// Types whose editable cell needs typeConfig the projection can't supply yet\n// (referenced collection). Until that lands, they render as a\n// read-only 'object' cell rather than a broken editor.\nconst NEEDS_TYPE_CONFIG = new Set<PatternsFieldType>([\n 'REFERENCE',\n 'MULTI_REFERENCE',\n]);\n\n/**\n * Whether this column has a usable inline editor. Read-only cases:\n * `NEEDS_TYPE_CONFIG` types are downgraded to a display cell, `UNKNOWN` has no\n * editor, and a `CUSTOM` field is only editable through a definition that\n * supplies an EditComponent. Everything else keeps its cell type's own editor —\n * including OBJECT / ARRAY, whose cells edit as JSON.\n */\nfunction hasEditor(field: Field, customCell?: Omit<CellType, 'type'>): boolean {\n if (customCell) {\n return !!customCell.EditComponent;\n }\n return (\n field.type !== 'CUSTOM' &&\n field.type !== 'UNKNOWN' &&\n !NEEDS_TYPE_CONFIG.has(field.type)\n );\n}\n\nexport function toValidationRules(\n field: Field,\n translate: Translate,\n): ValidationRule[] {\n const v = field.validation;\n if (!v) {\n return [];\n }\n const rules: ValidationRule[] = [];\n if (v.required) {\n rules.push({\n type: 'required',\n message: translate('cairo.editableTable.field.validation.required', {\n fieldName: field.displayName,\n }),\n });\n }\n if (v.numberRange?.min != null) {\n rules.push({ type: 'min', value: v.numberRange.min, message: '' });\n }\n if (v.numberRange?.max != null) {\n rules.push({ type: 'max', value: v.numberRange.max, message: '' });\n }\n if (v.stringLengthRange?.minLength != null) {\n rules.push({\n type: 'minLength',\n value: v.stringLengthRange.minLength,\n message: '',\n });\n }\n if (v.stringLengthRange?.maxLength != null) {\n rules.push({\n type: 'maxLength',\n value: v.stringLengthRange.maxLength,\n message: '',\n });\n }\n // A pattern the platform refuses to run (uncompilable, over-long, or able to\n // backtrack catastrophically) yields no rule, matching what the form inputs do.\n const patternRegex = compilePattern(v.pattern);\n if (patternRegex) {\n rules.push({\n type: 'pattern',\n value: patternRegex,\n message: translate('cairo.editableTable.field.validation.pattern', {\n fieldName: field.displayName,\n }),\n });\n }\n if (v.specificValues?.length) {\n rules.push({\n type: 'specificValues',\n values: v.specificValues,\n message: translate(\n 'cairo.editableTable.field.validation.specificValues',\n { fieldName: field.displayName },\n ),\n });\n }\n return rules;\n}\n\n// The inline-custom cell config for a resolved definition: its editableTable\n// slot, with the definition's value-level validation layered in when the slot\n// doesn't validate itself.\nfunction synthesizeCellConfig(\n definition: FieldTypeDefinition,\n): Omit<CellType, 'type'> {\n const editableTable = definition.editableTable!;\n const valueValidate = definition.value?.validate;\n const validate =\n valueValidate &&\n ((value: unknown, rules?: ValidationRule[]) => valueValidate(value, rules));\n return { ...editableTable, validate };\n}\n\n/**\n * Projects a FieldsSource's fields into EditableTable columns: a cell type by\n * field type, value read/write through the source, validation from the field,\n * and the flags the header reads for its disable rules. A cell is editable only\n * when the source can write it back (setCellValue) and the field isn't a system\n * field. A CUSTOM field renders through its definition's editableTable slot as\n * an inline custom cell; without one it falls back to a read-only object cell.\n */\nexport function buildEditableFieldColumns(\n source: FieldsSource,\n translate: Translate,\n editableCellFor?: (field: Field) => EditableCellUpgrade | undefined,\n): EditableColumn<Record<string, unknown>>[] {\n const canWrite = typeof source.setCellValue === 'function';\n return source.fields.map((field) => {\n const id = source.columnIdForField(field);\n const definition = resolveFieldTypeDefinition(source, field);\n const customCell = definition?.editableTable\n ? synthesizeCellConfig(definition)\n : undefined;\n // A source-supplied cell wins over the downgrade: it carries the typeConfig\n // that made the type read-only here in the first place.\n const sourceCell = customCell\n ? undefined\n : NEEDS_TYPE_CONFIG.has(field.type)\n ? editableCellFor?.(field)\n : undefined;\n const cellType = customCell\n ? 'custom'\n : sourceCell?.cellType ??\n (NEEDS_TYPE_CONFIG.has(field.type)\n ? 'object'\n : FIELD_TYPE_TO_CELL_TYPE[field.type] ?? 'object');\n const validation = toValidationRules(field, translate);\n const editable =\n canWrite &&\n !field.isSystem &&\n (!!sourceCell || hasEditor(field, customCell));\n return {\n id,\n cellType,\n ...(customCell && { typeConfig: customCell }),\n ...(sourceCell && { typeConfig: sourceCell.typeConfig }),\n field,\n title: field.displayName,\n name: field.displayName,\n isPrimary: field.isPrimary,\n isSystem: field.isSystem,\n // Also set by buildFieldColumns, and needed here too: this column reaches\n // the toolbar through simplifyColumn, which always emits the key, so it\n // would overwrite the display column's value with undefined.\n infoTooltipProps: field.helpText\n ? { content: field.helpText }\n : undefined,\n hideable: true,\n sortable:\n definition?.capabilities?.sortable ??\n field.capabilities?.sortable ??\n false,\n editable,\n validation: validation.length ? validation : undefined,\n getValue: (item) => source.getCellValue(item, field),\n setValue: editable\n ? (item, value) =>\n source.setCellValue!(item, field, value) as Record<string, unknown>\n : undefined,\n } as EditableColumn<Record<string, unknown>>;\n });\n}\n"],"mappings":"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","ignoreList":[]}
@@ -85,6 +85,9 @@ function buildFieldColumns(source, columnOverrides, ctx = {
85
85
  isPii: field.isPii,
86
86
  isSystem: field.isSystem,
87
87
  isPrimary: field.isPrimary,
88
+ infoTooltipProps: field.helpText ? {
89
+ content: field.helpText
90
+ } : undefined,
88
91
  fieldType: (0, _fieldTypePrefixIcons.toFieldType)(field.type),
89
92
  fieldTypeIcons: definition == null ? void 0 : definition.display.icons,
90
93
  width: layout.width,
@@ -99,7 +102,7 @@ function buildFieldColumns(source, columnOverrides, ctx = {
99
102
  __self: this,
100
103
  __source: {
101
104
  fileName: _jsxFileName,
102
- lineNumber: 79,
105
+ lineNumber: 82,
103
106
  columnNumber: 9
104
107
  }
105
108
  }),
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_bexCore","_FieldCell","_fieldTypePrefixIcons","_jsxFileName","LAYOUT_BY_TYPE","SHORT_TEXT","width","align","LONG_TEXT","URL","DATE","DATETIME","NUMBER","BOOLEAN","ARRAY","DOCUMENT","DEFAULT_LAYOUT","buildFieldColumns","source","columnOverrides","ctx","firstBuild","fields","map","field","_field$capabilities","id","columnIdForField","definition","resolveFieldTypeDefinition","layout","table","type","dataHook","name","displayName","title","hideable","sortable","capabilities","isPii","isSystem","isPrimary","fieldType","toFieldType","fieldTypeIcons","display","icons","render","row","rowNum","default","createElement","FieldCell","value","getCellValue","fieldId","columnId","__self","__source","fileName","lineNumber","columnNumber"],"sources":["../../../src/state/buildFieldColumns.tsx"],"sourcesContent":["import React from 'react';\nimport type { Field, FieldsSource, PatternsFieldType } from '@wix/bex-core';\nimport { resolveFieldTypeDefinition } from '@wix/bex-core';\nimport type { DataTableColumnAlign } from '@wix/design-system/dist/types/Table/DataTable';\nimport { Column } from '../model';\nimport { FieldCell } from '../components/FieldCell/FieldCell';\nimport { toFieldType } from '../utils/fieldTypePrefixIcons';\n\n/**\n * Column width and alignment per field type. These match the widths the table\n * used before this builder existed, so columns keep the same layout. Types not\n * listed fall back to DEFAULT_LAYOUT.\n */\nconst LAYOUT_BY_TYPE: Partial<\n Record<PatternsFieldType, { width: string; align: DataTableColumnAlign }>\n> = {\n SHORT_TEXT: { width: '150px', align: 'start' },\n LONG_TEXT: { width: '250px', align: 'start' },\n URL: { width: '250px', align: 'start' },\n DATE: { width: '150px', align: 'center' },\n DATETIME: { width: '200px', align: 'center' },\n NUMBER: { width: '100px', align: 'center' },\n BOOLEAN: { width: '100px', align: 'center' },\n ARRAY: { width: '150px', align: 'start' },\n DOCUMENT: { width: '180px', align: 'start' },\n};\n\nconst DEFAULT_LAYOUT = {\n width: '200px',\n align: 'start' as DataTableColumnAlign,\n};\n\nexport interface ColumnOverridesContext {\n /** True on the first push for a source, when every column starts hidden. */\n firstBuild: boolean;\n}\n\n/**\n * Builds table columns from a FieldsSource. Each column renders its value with\n * FieldCell by type. A source can replace any column property — including the\n * render function for media types — through columnOverrides.\n */\nexport function buildFieldColumns(\n source: FieldsSource,\n columnOverrides?: (\n field: Field,\n ctx: ColumnOverridesContext,\n ) => Partial<Column>,\n ctx: ColumnOverridesContext = { firstBuild: false },\n): Column[] {\n // align and dataHook aren't on Column but the WDS table reads them, so the\n // callback is left unannotated — annotating the literal as Column would reject\n // them as excess properties. The function still returns Column[].\n return source.fields.map((field) => {\n const id = source.columnIdForField(field);\n const definition = resolveFieldTypeDefinition(source, field);\n const layout = definition?.table\n ? {\n width: definition.table.width,\n align: definition.table.align ?? 'start',\n }\n : LAYOUT_BY_TYPE[field.type] ?? DEFAULT_LAYOUT;\n return {\n id,\n field,\n dataHook: id,\n name: field.displayName,\n title: field.displayName,\n hideable: true,\n sortable: field.capabilities?.sortable ?? false,\n isPii: field.isPii,\n isSystem: field.isSystem,\n isPrimary: field.isPrimary,\n fieldType: toFieldType(field.type),\n fieldTypeIcons: definition?.display.icons,\n width: layout.width,\n align: layout.align,\n render: (row, rowNum) => (\n <FieldCell\n type={field.type}\n value={source.getCellValue(row, field)}\n fieldId={`${id}-${rowNum}`}\n columnId={id}\n row={row}\n definition={definition}\n />\n ),\n ...columnOverrides?.(field, ctx),\n };\n });\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_bexCore","_FieldCell","_fieldTypePrefixIcons","_jsxFileName","LAYOUT_BY_TYPE","SHORT_TEXT","width","align","LONG_TEXT","URL","DATE","DATETIME","NUMBER","BOOLEAN","ARRAY","DOCUMENT","DEFAULT_LAYOUT","buildFieldColumns","source","columnOverrides","ctx","firstBuild","fields","map","field","_field$capabilities","id","columnIdForField","definition","resolveFieldTypeDefinition","layout","table","type","dataHook","name","displayName","title","hideable","sortable","capabilities","isPii","isSystem","isPrimary","infoTooltipProps","helpText","content","undefined","fieldType","toFieldType","fieldTypeIcons","display","icons","render","row","rowNum","default","createElement","FieldCell","value","getCellValue","fieldId","columnId","__self","__source","fileName","lineNumber","columnNumber"],"sources":["../../../src/state/buildFieldColumns.tsx"],"sourcesContent":["import React from 'react';\nimport type { Field, FieldsSource, PatternsFieldType } from '@wix/bex-core';\nimport { resolveFieldTypeDefinition } from '@wix/bex-core';\nimport type { DataTableColumnAlign } from '@wix/design-system/dist/types/Table/DataTable';\nimport { Column } from '../model';\nimport { FieldCell } from '../components/FieldCell/FieldCell';\nimport { toFieldType } from '../utils/fieldTypePrefixIcons';\n\n/**\n * Column width and alignment per field type. These match the widths the table\n * used before this builder existed, so columns keep the same layout. Types not\n * listed fall back to DEFAULT_LAYOUT.\n */\nconst LAYOUT_BY_TYPE: Partial<\n Record<PatternsFieldType, { width: string; align: DataTableColumnAlign }>\n> = {\n SHORT_TEXT: { width: '150px', align: 'start' },\n LONG_TEXT: { width: '250px', align: 'start' },\n URL: { width: '250px', align: 'start' },\n DATE: { width: '150px', align: 'center' },\n DATETIME: { width: '200px', align: 'center' },\n NUMBER: { width: '100px', align: 'center' },\n BOOLEAN: { width: '100px', align: 'center' },\n ARRAY: { width: '150px', align: 'start' },\n DOCUMENT: { width: '180px', align: 'start' },\n};\n\nconst DEFAULT_LAYOUT = {\n width: '200px',\n align: 'start' as DataTableColumnAlign,\n};\n\nexport interface ColumnOverridesContext {\n /** True on the first push for a source, when every column starts hidden. */\n firstBuild: boolean;\n}\n\n/**\n * Builds table columns from a FieldsSource. Each column renders its value with\n * FieldCell by type. A source can replace any column property — including the\n * render function for media types — through columnOverrides.\n */\nexport function buildFieldColumns(\n source: FieldsSource,\n columnOverrides?: (\n field: Field,\n ctx: ColumnOverridesContext,\n ) => Partial<Column>,\n ctx: ColumnOverridesContext = { firstBuild: false },\n): Column[] {\n // align and dataHook aren't on Column but the WDS table reads them, so the\n // callback is left unannotated — annotating the literal as Column would reject\n // them as excess properties. The function still returns Column[].\n return source.fields.map((field) => {\n const id = source.columnIdForField(field);\n const definition = resolveFieldTypeDefinition(source, field);\n const layout = definition?.table\n ? {\n width: definition.table.width,\n align: definition.table.align ?? 'start',\n }\n : LAYOUT_BY_TYPE[field.type] ?? DEFAULT_LAYOUT;\n return {\n id,\n field,\n dataHook: id,\n name: field.displayName,\n title: field.displayName,\n hideable: true,\n sortable: field.capabilities?.sortable ?? false,\n isPii: field.isPii,\n isSystem: field.isSystem,\n isPrimary: field.isPrimary,\n infoTooltipProps: field.helpText\n ? { content: field.helpText }\n : undefined,\n fieldType: toFieldType(field.type),\n fieldTypeIcons: definition?.display.icons,\n width: layout.width,\n align: layout.align,\n render: (row, rowNum) => (\n <FieldCell\n type={field.type}\n value={source.getCellValue(row, field)}\n fieldId={`${id}-${rowNum}`}\n columnId={id}\n row={row}\n definition={definition}\n />\n ),\n ...columnOverrides?.(field, ctx),\n };\n });\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,3 @@
1
- .CardContainer179446655__root.CardContainer179446655--mobile{border-radius:0}.CmsFieldForm2296801681__fullBleedDivider{margin-top:var(--wds-space-300, 18px);margin-inline:calc(-1*var(--wds-custom-modal-content-padding-horizontal, 24px))}.CmsFieldModal2787546348__modal{--wds-custom-modal-content-padding-vertical:0}.ValidationAndDefaultsSection2053269587__accordionWrapper{margin-inline:calc(-1*var(--wds-custom-modal-content-padding-horizontal, 24px))}.Collapse560640468__root{transition-property:height;transition-timing-function:cubic-bezier(.4,0,.2,1)}.Collapse560640468__exit{height:0}.CollectionPage801811228__root [data-hook=page-header-wrapper]{--wds-space-300:18px}.CollectionPage801811228__root.CollectionPage801811228--mobile{--wds-page-header-padding-horizontal:0;--wds-page-header-padding-horizontal-small:0;--wds-color-fill-surface-sunken:#ffffff}.CollectionPage801811228__root.CollectionPage801811228--panel{overflow:hidden;position:relative}.CollectionSectionHeader3985538636__summaryIcon{display:flex;color:var(--wds-color-text-standard-secondary)}.CollectionTable2794573160__root td{vertical-align:middle}.CollectionTable2794573160__root.CollectionTable2794573160--mobile td:first-child{padding-left:18px}.CollectionTable2794573160__root.CollectionTable2794573160--mobile td:last-child{padding-right:18px}.CollectionTableWSRTable1039809708__root.CollectionTableWSRTable1039809708--resizable table{min-width:100%}.CollectionTableWSRTable1039809708__root.CollectionTableWSRTable1039809708--resizable [data-hook=table-resize-handle]{right:-4px!important;z-index:1}.CollectionToolbar2384329588__root.CollectionToolbar2384329588--harmony .CollectionToolbar2384329588__right [data-hook=horizontal-overflow-box]>*{margin-inline-start:0}.CollectionToolbar2384329588__left{min-width:0}.CollectionToolbar2384329588__left.CollectionToolbar2384329588--expandable{flex:auto}.CollectionToolbar2384329588__left.CollectionToolbar2384329588--title>*{width:100%}.CollectionToolbar2384329588__root.CollectionToolbar2384329588---responsiveMode-5-title .CollectionToolbar2384329588__left{flex:1 100;min-width:50px}.CollectionToolbar2384329588__root.CollectionToolbar2384329588---responsiveMode-4-tabs .CollectionToolbar2384329588__left,.CollectionToolbar2384329588__root.CollectionToolbar2384329588---responsiveMode-4-tabs .CollectionToolbar2384329588__left.CollectionToolbar2384329588--expandable{flex:1 100 auto;min-width:140px}.CollectionToolbar2384329588__root.CollectionToolbar2384329588---responsiveMode-4-tabs .CollectionToolbar2384329588__left>*{flex-shrink:1;min-width:0}.CollectionToolbar2384329588__root .CollectionToolbar2384329588__right{justify-content:flex-end!important;flex-grow:1;flex-shrink:1;flex-basis:auto}.CollectionToolbar2384329588__root.CollectionToolbar2384329588--views .CollectionToolbar2384329588__right{min-width:0;flex-grow:1;flex-shrink:0;flex-basis:0}.CollectionToolbar2384329588__root.CollectionToolbar2384329588---responsiveMode-4-tabs .CollectionToolbar2384329588__right,.CollectionToolbar2384329588__root.CollectionToolbar2384329588---responsiveMode-5-title .CollectionToolbar2384329588__right{flex:0 1 auto;min-width:0}.CollectionToolbar2384329588__root .CollectionToolbar2384329588__right.CollectionToolbar2384329588__fullWidth{margin-inline-start:0!important}.CollectionToolbar2384329588__root.CollectionToolbar2384329588--mobile:not(.CollectionToolbar2384329588--harmony){padding-right:18px;padding-left:18px}.SearchOrCustomFilter3401884258__search{min-width:140px;max-width:240px;flex:1 0}.SearchOrCustomFilter3401884258__searchMobile{justify-content:flex-end;position:absolute;right:18px}.SearchOrCustomFilter3401884258__searchMobile:not(.SearchOrCustomFilter3401884258--expandable){left:18px}.SearchOrCustomFilter3401884258__searchMobile.SearchOrCustomFilter3401884258--expandable.SearchOrCustomFilter3401884258--expanded{left:18px}.AutoCompleteReadonly2555179000__root.AutoCompleteReadonly2555179000--disableEditing{cursor:pointer}.AutoCompleteReadonly2555179000__root.AutoCompleteReadonly2555179000--disableEditing input{cursor:pointer}.ViewsDropdown520767598__root{width:200px}.DragHandle3454605988__root{display:flex;align-items:center}.DragHandle3454605988__root:not(.DragHandle3454605988--disabled){cursor:grab;color:#a8caff}.DragHandle3454605988__root.DragHandle3454605988--disabled{color:#acafc4}.DragHandle3454605988__root:focus-visible:not(.DragHandle3454605988--disabled){outline:0;box-shadow:0 0 0 3px #a6d0ff}.DragHandle3454605988__root.DragHandle3454605988--disabled{pointer-events:none}.DragHandle3454605988__root.DragHandle3454605988--dragging:not(.DragHandle3454605988--disabled){cursor:grabbing}td:has(>.EditableCell1770231380__root){position:relative;overflow:visible}tr:has(.EditableCell1770231380__root)>td{padding-top:0!important;padding-bottom:0!important;height:36px}.EditableCell1770231380__root{display:flex;align-items:center;padding:0;position:absolute;top:-1px;left:-1px;right:0;bottom:0;overflow:hidden;box-sizing:border-box;outline:0;cursor:default;user-select:none;background:var(--wds-color-fill-surface-raised, var(--wsr-color-D80, #ffffff));border:var(--wds-border-width-default, 1px) solid var(--wds-color-border-dark-secondary, var(--wsr-color-D60, #dfe5eb))}tr:first-child>td>.EditableCell1770231380__root{top:0}.EditableCell1770231380__root:hover:not(.EditableCell1770231380--rowActive):not(.EditableCell1770231380--rangeSelected){background:var(--wds-color-black-750, #f6f7f9)}.EditableCell1770231380__root.EditableCell1770231380--rowActive:not(.EditableCell1770231380--rangeSelected){background:var(--wds-color-black-750, #f6f7f9);box-shadow:inset 0 22px 18px -18px rgba(0,6,36,.1)}.EditableCell1770231380__root.EditableCell1770231380--rowActive:hover:not(.EditableCell1770231380--focused):not(.EditableCell1770231380--rangeSelected):not(.EditableCell1770231380--readOnly){border-color:var(--wds-input-border-color-hover, var(--wsr-color-B40, #d6e6fe));box-shadow:inset 0 8px 6px -6px rgba(0,6,36,.05)}.EditableCell1770231380__root.EditableCell1770231380--readOnly{--wds-color-text-standard-primary:var(--wds-color-text-disabled, var(--wsr-color-D10-30, rgba(0, 6, 36, 0.30)));color:var(--wds-color-text-standard-primary)}.EditableCell1770231380__root.EditableCell1770231380--readOnly:hover:not(.EditableCell1770231380--rowActive):not(.EditableCell1770231380--rangeSelected),.EditableCell1770231380__root.EditableCell1770231380--readOnly.EditableCell1770231380--rowActive:not(.EditableCell1770231380--rangeSelected){background:var(--wds-color-fill-surface-raised, var(--wsr-color-D80, #ffffff))}.EditableCell1770231380__root.EditableCell1770231380--readOnly.EditableCell1770231380--rowActive:hover:not(.EditableCell1770231380--focused):not(.EditableCell1770231380--rangeSelected){border-color:var(--wds-color-black-700, var(--wsr-color-D70, #eceff3))}.EditableCell1770231380__root.EditableCell1770231380--focused:not(.EditableCell1770231380--rangeSelected){border-color:var(--wds-input-border-color-focus, var(--wsr-color-B10, #116dff));box-shadow:inset 0 8px 6px -6px rgba(0,6,36,.05);z-index:2}.EditableCell1770231380__root.EditableCell1770231380--editing{z-index:3;user-select:auto;overflow:visible;background:var(--wds-color-fill-surface-raised, var(--wsr-color-D80, #ffffff))}.EditableCell1770231380__root.EditableCell1770231380--editing:not(.EditableCell1770231380--showEditWhenFocused){bottom:auto;min-height:calc(100% + 1px)}.EditableCell1770231380__root.EditableCell1770231380--focused.EditableCell1770231380--growable{bottom:auto;min-height:calc(100% + 1px);z-index:3}.EditableCell1770231380__root:has([data-inner-focused]){overflow:visible;z-index:3;border-color:var(--wds-input-border-color-focus, var(--wsr-color-B10, #116dff));box-shadow:inset 0 8px 6px -6px rgba(0,6,36,.05)}.EditableCell1770231380__root.EditableCell1770231380--rangeSelected{background:rgba(56,153,236,.08)}.EditableCell1770231380__root.EditableCell1770231380--selectionTop:not(.EditableCell1770231380--editing){border-top:2px solid var(--wsr-color-B10)}.EditableCell1770231380__root.EditableCell1770231380--selectionBottom:not(.EditableCell1770231380--editing){border-bottom:2px solid var(--wsr-color-B10)}.EditableCell1770231380__root.EditableCell1770231380--selectionLeft:not(.EditableCell1770231380--editing){border-left:2px solid var(--wsr-color-B10)}.EditableCell1770231380__root.EditableCell1770231380--selectionRight:not(.EditableCell1770231380--editing){border-right:2px solid var(--wsr-color-B10)}.EditableCell1770231380__root.EditableCell1770231380--invalid,.EditableCell1770231380__root.EditableCell1770231380--invalid.EditableCell1770231380--rowActive:hover:not(.EditableCell1770231380--focused):not(.EditableCell1770231380--rangeSelected),.EditableCell1770231380__root.EditableCell1770231380--invalid.EditableCell1770231380--focused:not(.EditableCell1770231380--rangeSelected),.EditableCell1770231380__root.EditableCell1770231380--invalid:has([data-inner-focused]){border-color:var(--wds-color-red-100, var(--wsr-color-R10, #e62214))}.EditableCell1770231380__root.EditableCell1770231380--copiedTop:not(.EditableCell1770231380--selectionTop){border-top:2px dashed var(--wsr-color-B10)}.EditableCell1770231380__root.EditableCell1770231380--copiedBottom:not(.EditableCell1770231380--selectionBottom){border-bottom:2px dashed var(--wsr-color-B10)}.EditableCell1770231380__root.EditableCell1770231380--copiedLeft:not(.EditableCell1770231380--selectionLeft){border-left:2px dashed var(--wsr-color-B10)}.EditableCell1770231380__root.EditableCell1770231380--copiedRight:not(.EditableCell1770231380--selectionRight){border-right:2px dashed var(--wsr-color-B10)}.EditableCell1770231380__root.EditableCell1770231380--invalid:not(.EditableCell1770231380--focused):not(.EditableCell1770231380--editing){z-index:1}.EditableCell1770231380__errorMessage{position:absolute;top:calc(100% + 4px);left:-1px;z-index:4;box-sizing:border-box;width:max-content;max-width:240px;padding:6px 8px;pointer-events:none;border-radius:var(--wds-popover-border-radius, var(--wds-border-radius-400, 8px));background:var(--wds-popover-fill, var(--wds-color-fill-surface-overlay, var(--wsr-color-D80, #ffffff)));box-shadow:var(--wds-shadow-surface-overlay, 0 0 18px rgba(0, 6, 36, 0.1), 0 6px 6px rgba(0, 6, 36, 0.05))}tr:last-child .EditableCell1770231380__errorMessage{top:auto;bottom:calc(100% + 4px)}.HeaderActionsPopover1067728408__root{opacity:0;transition:opacity .15s}th:hover .HeaderActionsPopover1067728408__root,.HeaderActionsPopover1067728408__root[data-menu-open=true],.HeaderActionsPopover1067728408__root:focus-within{opacity:1}.CellViewLayout1002375023__root{width:100%;height:100%;padding:6px 8px;box-sizing:border-box;display:flex;align-items:center;overflow:clip}.CellViewLayout1002375023__root>*{flex:1;min-width:0}.Edit239199024__addressInput{width:100%;height:100%;display:flex;align-items:center;box-sizing:border-box;padding-left:8px;padding-right:8px;min-width:0;overflow:hidden}.Edit239199024__addressInput>div,.Edit239199024__addressInput>div>div,.Edit239199024__addressInput>div>div>div{width:100%;min-width:0}.Edit2022385014__jsonInput{width:100%;margin-left:-1px}.Edit1566232662__booleanEdit{display:flex;align-items:center;margin-left:8px}.View2144628230__booleanView{display:flex;align-items:center;margin-left:8px;pointer-events:none}.Edit3934856254__root{width:100%;height:100%;display:flex;align-items:center}.Edit2622028289__dateInput{width:100%;margin-left:-1px}.Edit2962708343__half{min-width:0;position:relative;display:flex;align-items:center;box-sizing:border-box}.Edit2962708343__dateHalf{flex:60 1 0}.Edit2962708343__timeHalf{flex:40 1 0}.Edit2962708343__divider{width:1px;height:16px;background:var(--wds-color-border-standard, #dfe5eb);flex-shrink:0}.Edit2962708343__passiveText{padding:6px 8px;font-size:14px;line-height:18px;font-family:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;width:100%}.Edit2962708343__placeholderText{color:var(--wds-color-text-placeholder, #868aa5)}.View2330499855__leaf{min-width:0;padding:6px 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:18px;font-family:inherit;box-sizing:border-box}.View2330499855__datePart{flex:60 1 0}.View2330499855__timePart{flex:40 1 0}.View2330499855__placeholder{color:var(--wds-color-text-placeholder, #868aa5)}.View2330499855__divider{width:1px;height:16px;background:var(--wds-color-border-standard, #dfe5eb);flex-shrink:0}.Edit3828404961__emailInput{width:100%;margin-left:-1px}.Edit222370521__numberInput{width:100%;margin-right:2px}.Edit222370521__numberInput input{text-align:right;direction:ltr}.View222058160__textView{width:100%;text-align:right}.Edit1325328982__jsonInput{width:100%;margin-left:-1px}.Edit1598171467__selectInput{width:100%}.Edit243497837__editWrapper{width:100%}.Edit243497837__inputArea{background-color:transparent;width:100%}.Edit243497837__inputArea input,.Edit243497837__inputArea textarea{font-size:var(--wds-font-size-body-small, var(--wsr-text-font-size-small, 14px))!important;line-height:var(--wds-font-line-height-body-small, var(--wsr-text-line-height-small, 18px))!important}.Edit243497837__inputArea input{padding:6px 8px!important;outline:0!important;border:0!important;box-sizing:border-box!important}.Edit243497837__inputArea>div{border:0!important;border-radius:0!important;box-shadow:none!important;background-color:transparent!important;outline:0!important}.Edit243497837__inputArea>div::after{box-shadow:none!important}.Edit243497837__inputArea textarea{padding:6px 8px!important;outline:0!important;border:0!important;box-sizing:border-box!important}.Edit243497837__inputArea:not(.Edit243497837--isFocused) textarea{resize:none;overflow:hidden}.Edit243497837__inputArea:not(.Edit243497837--isFocused) textarea::-webkit-scrollbar{display:none}.Edit3875448302__wrapper{position:relative;width:100%;height:100%;display:flex;align-items:center;--wds-input-value-font-size-small:var(--wds-font-size-body-small);--wds-input-value-font-line-height-small:var(
1
+ .CardContainer3535345257__root.CardContainer3535345257--mobile{border-radius:0}.CmsFieldForm1275885253__fullBleedDivider{margin-top:var(--wds-space-300, 18px);margin-inline:calc(-1*var(--wds-custom-modal-content-padding-horizontal, 24px))}.CmsFieldModal3343705393__modal{--wds-custom-modal-content-padding-vertical:0}.ValidationAndDefaultsSection3827089162__accordionWrapper{margin-inline:calc(-1*var(--wds-custom-modal-content-padding-horizontal, 24px))}.Collapse1826189329__root{transition-property:height;transition-timing-function:cubic-bezier(.4,0,.2,1)}.Collapse1826189329__exit{height:0}.CollectionPage2714372964__root [data-hook=page-header-wrapper]{--wds-space-300:18px}.CollectionPage2714372964__root.CollectionPage2714372964--mobile{--wds-page-header-padding-horizontal:0;--wds-page-header-padding-horizontal-small:0;--wds-color-fill-surface-sunken:#ffffff}.CollectionPage2714372964__root.CollectionPage2714372964--panel{overflow:hidden;position:relative}.CollectionSectionHeader305811667__summaryIcon{display:flex;color:var(--wds-color-text-standard-secondary)}.CollectionTable713064089__root td{vertical-align:middle}.CollectionTable713064089__root.CollectionTable713064089--mobile td:first-child{padding-left:18px}.CollectionTable713064089__root.CollectionTable713064089--mobile td:last-child{padding-right:18px}.CollectionTableWSRTable857727311__root.CollectionTableWSRTable857727311--resizable table{min-width:100%}.CollectionTableWSRTable857727311__root.CollectionTableWSRTable857727311--resizable [data-hook=table-resize-handle]{right:-4px!important;z-index:1}.CollectionToolbar3733098124__root.CollectionToolbar3733098124--harmony .CollectionToolbar3733098124__right [data-hook=horizontal-overflow-box]>*{margin-inline-start:0}.CollectionToolbar3733098124__left{min-width:0}.CollectionToolbar3733098124__left.CollectionToolbar3733098124--expandable{flex:auto}.CollectionToolbar3733098124__left.CollectionToolbar3733098124--title>*{width:100%}.CollectionToolbar3733098124__root.CollectionToolbar3733098124---responsiveMode-5-title .CollectionToolbar3733098124__left{flex:1 100;min-width:50px}.CollectionToolbar3733098124__root.CollectionToolbar3733098124---responsiveMode-4-tabs .CollectionToolbar3733098124__left,.CollectionToolbar3733098124__root.CollectionToolbar3733098124---responsiveMode-4-tabs .CollectionToolbar3733098124__left.CollectionToolbar3733098124--expandable{flex:1 100 auto;min-width:140px}.CollectionToolbar3733098124__root.CollectionToolbar3733098124---responsiveMode-4-tabs .CollectionToolbar3733098124__left>*{flex-shrink:1;min-width:0}.CollectionToolbar3733098124__root .CollectionToolbar3733098124__right{justify-content:flex-end!important;flex-grow:1;flex-shrink:1;flex-basis:auto}.CollectionToolbar3733098124__root.CollectionToolbar3733098124--views .CollectionToolbar3733098124__right{min-width:0;flex-grow:1;flex-shrink:0;flex-basis:0}.CollectionToolbar3733098124__root.CollectionToolbar3733098124---responsiveMode-4-tabs .CollectionToolbar3733098124__right,.CollectionToolbar3733098124__root.CollectionToolbar3733098124---responsiveMode-5-title .CollectionToolbar3733098124__right{flex:0 1 auto;min-width:0}.CollectionToolbar3733098124__root .CollectionToolbar3733098124__right.CollectionToolbar3733098124__fullWidth{margin-inline-start:0!important}.CollectionToolbar3733098124__root.CollectionToolbar3733098124--mobile:not(.CollectionToolbar3733098124--harmony){padding-right:18px;padding-left:18px}.SearchOrCustomFilter3857586553__search{min-width:140px;max-width:240px;flex:1 0}.SearchOrCustomFilter3857586553__searchMobile{justify-content:flex-end;position:absolute;right:18px}.SearchOrCustomFilter3857586553__searchMobile:not(.SearchOrCustomFilter3857586553--expandable){left:18px}.SearchOrCustomFilter3857586553__searchMobile.SearchOrCustomFilter3857586553--expandable.SearchOrCustomFilter3857586553--expanded{left:18px}.AutoCompleteReadonly2029553353__root.AutoCompleteReadonly2029553353--disableEditing{cursor:pointer}.AutoCompleteReadonly2029553353__root.AutoCompleteReadonly2029553353--disableEditing input{cursor:pointer}.ViewsDropdown3791931914__root{width:200px}.DragHandle980352039__root{display:flex;align-items:center}.DragHandle980352039__root:not(.DragHandle980352039--disabled){cursor:grab;color:#a8caff}.DragHandle980352039__root.DragHandle980352039--disabled{color:#acafc4}.DragHandle980352039__root:focus-visible:not(.DragHandle980352039--disabled){outline:0;box-shadow:0 0 0 3px #a6d0ff}.DragHandle980352039__root.DragHandle980352039--disabled{pointer-events:none}.DragHandle980352039__root.DragHandle980352039--dragging:not(.DragHandle980352039--disabled){cursor:grabbing}td:has(>.EditableCell2159728911__root){position:relative;overflow:visible}tr:has(.EditableCell2159728911__root)>td{padding-top:0!important;padding-bottom:0!important;height:36px}.EditableCell2159728911__root{display:flex;align-items:center;padding:0;position:absolute;top:-1px;left:-1px;right:0;bottom:0;overflow:hidden;box-sizing:border-box;outline:0;cursor:default;user-select:none;background:var(--wds-color-fill-surface-raised, var(--wsr-color-D80, #ffffff));border:var(--wds-border-width-default, 1px) solid var(--wds-color-border-dark-secondary, var(--wsr-color-D60, #dfe5eb))}tr:first-child>td>.EditableCell2159728911__root{top:0}.EditableCell2159728911__root:hover:not(.EditableCell2159728911--rowActive):not(.EditableCell2159728911--rangeSelected){background:var(--wds-color-black-750, #f6f7f9)}.EditableCell2159728911__root.EditableCell2159728911--rowActive:not(.EditableCell2159728911--rangeSelected){background:var(--wds-color-black-750, #f6f7f9);box-shadow:inset 0 22px 18px -18px rgba(0,6,36,.1)}.EditableCell2159728911__root.EditableCell2159728911--rowActive:hover:not(.EditableCell2159728911--focused):not(.EditableCell2159728911--rangeSelected):not(.EditableCell2159728911--readOnly){border-color:var(--wds-input-border-color-hover, var(--wsr-color-B40, #d6e6fe));box-shadow:inset 0 8px 6px -6px rgba(0,6,36,.05)}.EditableCell2159728911__root.EditableCell2159728911--readOnly{--wds-color-text-standard-primary:var(--wds-color-text-disabled, var(--wsr-color-D10-30, rgba(0, 6, 36, 0.30)));color:var(--wds-color-text-standard-primary)}.EditableCell2159728911__root.EditableCell2159728911--readOnly:hover:not(.EditableCell2159728911--rowActive):not(.EditableCell2159728911--rangeSelected),.EditableCell2159728911__root.EditableCell2159728911--readOnly.EditableCell2159728911--rowActive:not(.EditableCell2159728911--rangeSelected){background:var(--wds-color-fill-surface-raised, var(--wsr-color-D80, #ffffff))}.EditableCell2159728911__root.EditableCell2159728911--readOnly.EditableCell2159728911--rowActive:hover:not(.EditableCell2159728911--focused):not(.EditableCell2159728911--rangeSelected){border-color:var(--wds-color-black-700, var(--wsr-color-D70, #eceff3))}.EditableCell2159728911__root.EditableCell2159728911--focused:not(.EditableCell2159728911--rangeSelected){border-color:var(--wds-input-border-color-focus, var(--wsr-color-B10, #116dff));box-shadow:inset 0 8px 6px -6px rgba(0,6,36,.05);z-index:2}.EditableCell2159728911__root.EditableCell2159728911--editing{z-index:3;user-select:auto;overflow:visible;background:var(--wds-color-fill-surface-raised, var(--wsr-color-D80, #ffffff))}.EditableCell2159728911__root.EditableCell2159728911--editing:not(.EditableCell2159728911--showEditWhenFocused){bottom:auto;min-height:calc(100% + 1px)}.EditableCell2159728911__root.EditableCell2159728911--focused.EditableCell2159728911--growable{bottom:auto;min-height:calc(100% + 1px);z-index:3}.EditableCell2159728911__root:has([data-inner-focused]){overflow:visible;z-index:3;border-color:var(--wds-input-border-color-focus, var(--wsr-color-B10, #116dff));box-shadow:inset 0 8px 6px -6px rgba(0,6,36,.05)}.EditableCell2159728911__root.EditableCell2159728911--rangeSelected{background:rgba(56,153,236,.08)}.EditableCell2159728911__root.EditableCell2159728911--selectionTop:not(.EditableCell2159728911--editing){border-top:2px solid var(--wsr-color-B10)}.EditableCell2159728911__root.EditableCell2159728911--selectionBottom:not(.EditableCell2159728911--editing){border-bottom:2px solid var(--wsr-color-B10)}.EditableCell2159728911__root.EditableCell2159728911--selectionLeft:not(.EditableCell2159728911--editing){border-left:2px solid var(--wsr-color-B10)}.EditableCell2159728911__root.EditableCell2159728911--selectionRight:not(.EditableCell2159728911--editing){border-right:2px solid var(--wsr-color-B10)}.EditableCell2159728911__root.EditableCell2159728911--invalid,.EditableCell2159728911__root.EditableCell2159728911--invalid.EditableCell2159728911--rowActive:hover:not(.EditableCell2159728911--focused):not(.EditableCell2159728911--rangeSelected),.EditableCell2159728911__root.EditableCell2159728911--invalid.EditableCell2159728911--focused:not(.EditableCell2159728911--rangeSelected),.EditableCell2159728911__root.EditableCell2159728911--invalid:has([data-inner-focused]){border-color:var(--wds-color-red-100, var(--wsr-color-R10, #e62214))}.EditableCell2159728911__root.EditableCell2159728911--copiedTop:not(.EditableCell2159728911--selectionTop){border-top:2px dashed var(--wsr-color-B10)}.EditableCell2159728911__root.EditableCell2159728911--copiedBottom:not(.EditableCell2159728911--selectionBottom){border-bottom:2px dashed var(--wsr-color-B10)}.EditableCell2159728911__root.EditableCell2159728911--copiedLeft:not(.EditableCell2159728911--selectionLeft){border-left:2px dashed var(--wsr-color-B10)}.EditableCell2159728911__root.EditableCell2159728911--copiedRight:not(.EditableCell2159728911--selectionRight){border-right:2px dashed var(--wsr-color-B10)}.EditableCell2159728911__root.EditableCell2159728911--invalid:not(.EditableCell2159728911--focused):not(.EditableCell2159728911--editing){z-index:1}.EditableCell2159728911__errorMessage{position:absolute;top:calc(100% + 4px);left:-1px;z-index:4;box-sizing:border-box;width:max-content;max-width:240px;padding:6px 8px;pointer-events:none;border-radius:var(--wds-popover-border-radius, var(--wds-border-radius-400, 8px));background:var(--wds-popover-fill, var(--wds-color-fill-surface-overlay, var(--wsr-color-D80, #ffffff)));box-shadow:var(--wds-shadow-surface-overlay, 0 0 18px rgba(0, 6, 36, 0.1), 0 6px 6px rgba(0, 6, 36, 0.05))}tr:last-child .EditableCell2159728911__errorMessage{top:auto;bottom:calc(100% + 4px)}.HeaderActionsPopover889934995__root{opacity:0;transition:opacity .15s}th:hover .HeaderActionsPopover889934995__root,.HeaderActionsPopover889934995__root[data-menu-open=true],.HeaderActionsPopover889934995__root:focus-within{opacity:1}.CellViewLayout3916992801__root{width:100%;height:100%;padding:6px 8px;box-sizing:border-box;display:flex;align-items:center;overflow:clip}.CellViewLayout3916992801__root>*{flex:1;min-width:0}.Edit3887131894__addressInput{width:100%;height:100%;display:flex;align-items:center;box-sizing:border-box;padding-left:8px;padding-right:8px;min-width:0;overflow:hidden}.Edit3887131894__addressInput>div,.Edit3887131894__addressInput>div>div,.Edit3887131894__addressInput>div>div>div{width:100%;min-width:0}.Edit51404321__jsonInput{width:100%;margin-left:-1px}.Edit3650420564__booleanEdit{display:flex;align-items:center;margin-left:8px}.View122554543__booleanView{display:flex;align-items:center;margin-left:8px;pointer-events:none}.Edit3201352786__root{width:100%;height:100%;display:flex;align-items:center}.Edit3358315152__dateInput{width:100%;margin-left:-1px}.Edit531955114__half{min-width:0;position:relative;display:flex;align-items:center;box-sizing:border-box}.Edit531955114__dateHalf{flex:60 1 0}.Edit531955114__timeHalf{flex:40 1 0}.Edit531955114__divider{width:1px;height:16px;background:var(--wds-color-border-standard, #dfe5eb);flex-shrink:0}.Edit531955114__passiveText{padding:6px 8px;font-size:14px;line-height:18px;font-family:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;width:100%}.Edit531955114__placeholderText{color:var(--wds-color-text-placeholder, #868aa5)}.View81328521__leaf{min-width:0;padding:6px 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:18px;font-family:inherit;box-sizing:border-box}.View81328521__datePart{flex:60 1 0}.View81328521__timePart{flex:40 1 0}.View81328521__placeholder{color:var(--wds-color-text-placeholder, #868aa5)}.View81328521__divider{width:1px;height:16px;background:var(--wds-color-border-standard, #dfe5eb);flex-shrink:0}.Edit1668941113__emailInput{width:100%;margin-left:-1px}.Edit459163716__numberInput{width:100%;margin-right:2px}.Edit459163716__numberInput input{text-align:right;direction:ltr}.View1846099798__textView{width:100%;text-align:right}.Edit1594528042__jsonInput{width:100%;margin-left:-1px}.Edit2161933100__selectInput{width:100%}.Edit3590475092__editWrapper{width:100%}.Edit3590475092__inputArea{background-color:transparent;width:100%}.Edit3590475092__inputArea input,.Edit3590475092__inputArea textarea{font-size:var(--wds-font-size-body-small, var(--wsr-text-font-size-small, 14px))!important;line-height:var(--wds-font-line-height-body-small, var(--wsr-text-line-height-small, 18px))!important}.Edit3590475092__inputArea input{padding:6px 8px!important;outline:0!important;border:0!important;box-sizing:border-box!important}.Edit3590475092__inputArea>div{border:0!important;border-radius:0!important;box-shadow:none!important;background-color:transparent!important;outline:0!important}.Edit3590475092__inputArea>div::after{box-shadow:none!important}.Edit3590475092__inputArea textarea{padding:6px 8px!important;outline:0!important;border:0!important;box-sizing:border-box!important}.Edit3590475092__inputArea:not(.Edit3590475092--isFocused) textarea{resize:none;overflow:hidden}.Edit3590475092__inputArea:not(.Edit3590475092--isFocused) textarea::-webkit-scrollbar{display:none}.Edit75563061__wrapper{position:relative;width:100%;height:100%;display:flex;align-items:center;--wds-input-value-font-size-small:var(--wds-font-size-body-small);--wds-input-value-font-line-height-small:var(
2
2
  --wds-font-line-height-body-small
3
- )}.Edit3875448302__overlay{position:absolute;inset:2px;pointer-events:none;background:var(--wds-color-background-elevation-base, #fff)}.Edit2808291241__urlInput{width:100%;margin-left:-1px}.View1242253653__textView{width:100%;padding:9px 12px;display:flex;align-items:center;justify-content:space-between}.View1242253653__urlText{flex:1;min-width:0}.View1242253653__suffix{flex-shrink:0;margin-left:10px}.View1242253653__textView.View1242253653--suffixOnHover:not(:hover) .View1242253653__suffix{display:none}.EmptyStateBase2797762578__root{min-height:230px;align-items:center}.EntityPagePlain442159298__root.EntityPagePlain442159298--mobile{--wds-page-header-padding-horizontal:0}.Fade992719951__root{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);opacity:1}.Fade992719951__root.Fade992719951--exit{opacity:0}.Heading1397210772__root{visibility:visible}.Heading1397210772__root.Heading1397210772--appearanceH2{font-size:28px!important;line-height:36px!important}.ImportStepUpload1816577347__fileUpload{width:100%}.InputOverflow1661076173__root.InputOverflow1661076173--selected:not(.InputOverflow1661076173--focused) input::placeholder{color:#000624}@keyframes LoadingRow2194277522__gradientSwoosh{0%{background-position:50% 50%;background-size:150% 125%}15%{background-position:75% 40%;background-size:130% 115%}30%{background-position:50% 50%;background-size:120% 135%}60%{background-position:30% 50%;background-size:120% 135%}80%{background-position:10% 30%;background-size:130% 155%}to{background-position:40% 45%;background-size:125% 135%}}.LoadingRow2194277522__root{background-image:linear-gradient(60deg,rgba(255,255,255,.15)0,rgba(255,255,255,.15) 50%,rgba(95,242,174,.15) 100%),linear-gradient(284.81deg,#fff 67.18%,#91bbff 158.87%),linear-gradient(29deg,rgba(145,187,255,.6)0,#fff 40%,rgba(95,242,174,.6) 100%);height:100%;background-size:150% 125%;background-repeat:no-repeat;animation:LoadingRow2194277522__gradientSwoosh 2s ease-out infinite alternate}.MaxHeightText3594640238__root{opacity:1}.MaxHeightText3594640238__root.MaxHeightText3594640238--height24{line-height:24px}.MaxLines1821347204__root{overflow:hidden}.MaxLines1821347204__root.MaxLines1821347204--clamp{-webkit-box-orient:vertical;display:-webkit-box}.MultiBulkActionToolbar3973334724__root{min-width:0}.MultiBulkActionToolbar3973334724__leftGroupWrapper{padding-right:12px;min-width:0;flex-wrap:nowrap;align-items:center}.MultiBulkActionToolbar3973334724__selectedCountItem{min-width:0;flex-shrink:1;white-space:nowrap;overflow:hidden}.MultiBulkActionToolbar3973334724__selectedCountText{display:block;width:100%}.NestedTablePlaceholderStatesRow2500048676__root td{padding:0!important;width:100%}.NestedTableRow1727132175__firstLevel td{padding-top:var(--wds-space-300, 18px)!important;padding-bottom:var(--wds-space-300, 18px)!important}.NestedTableRow1727132175__root:hover{background-color:var(--wds-table-list-item-fill-hover, var(--wsr-color-B50, #e7f0ff))!important}.NestedTableRow1727132175__root.NestedTableRow1727132175--expandable{cursor:pointer}.NestedTableRow1727132175__placeholder td{padding:0!important;width:100%}.NestedTableRow1727132175__root:hover td:first-of-type::before,.NestedTableRow1727132175__parentHovered td:first-of-type::before{content:"";position:absolute;top:0;bottom:0;left:0;width:2px;background-color:var(--wds-color-border-standard-primary-active, var(--wsr-color-B10, #116DFF))}.MultipleDragOverlayEffect2880892721__root{position:absolute;transform:translate(6px,6px);background-color:var(--wds-color-fill-surface-overlay, var(--wsr-color-D80, #ffffff));box-shadow:var(--wds-shadow-surface-overlay, var(--wsr-shadow20, 0 2px 4px 0 rgba(22, 45, 61, 0.12), 0 0 6px 0 rgba(22, 45, 61, 0.12)))}.NestedTableDragAndDropRow2964883176__root.NestedTableDragAndDropRow2964883176--draggingInto td{background-color:var(--wds-table-list-item-fill-hover, var(--wsr-color-B50, #E7F0FF))!important}.PickerContent279598614__root{display:flex}.PickerContentAdditionalStep1268835811__titles{display:flex;justify-content:center;flex:1 1 auto;overflow:hidden;flex-direction:column}.PickerContentAdditionalStep1268835811__suffix{display:flex;align-items:center;flex:0 0 auto;overflow:hidden}.PickerTableListItem2152260888__root{box-sizing:border-box}.ScrollableContent2295773302__root.ScrollableContent2295773302--overflowY{overflow-y:auto}.ScrollableContent2295773302__root.ScrollableContent2295773302--overflowX{overflow-x:auto}.ScrollableContent2295773302__root.ScrollableContent2295773302--smooth{scroll-behavior:smooth}.SetupWidget2579698650__row{display:flex;flex-direction:column;overflow:clip;--wds-clickable-card-outline-border-color:var(--wds-color-border-dark-secondary, var(--wsr-color-D60, #DFE5EB))}.SetupWidget2579698650__row.SetupWidget2579698650--focused{--wds-clickable-card-outline-border-color:var(--wds-color-border-standard-primary-active, var(--wsr-color-B10, #116DFF))}.SetupWidget2579698650__row.SetupWidget2579698650--focused.SetupWidget2579698650--withBackground{--wds-color-fill-surface-default:var(--wds-color-fill-standard-tertiary-hover, var(--wsr-color-B60, #F4F7FF))}.SetupWidget2579698650__completedCta,.SetupWidget2579698650__secondaryCta{opacity:0;transition:opacity .25s ease-in-out}@media (hover:hover){.SetupWidget2579698650__row:hover .SetupWidget2579698650__completedCta,.SetupWidget2579698650__row:hover .SetupWidget2579698650__secondaryCta{opacity:1}}.SetupWidget2579698650__row:focus-within .SetupWidget2579698650__completedCta,.SetupWidget2579698650__row:focus-within .SetupWidget2579698650__secondaryCta,.SetupWidget2579698650__secondaryCta:focus-within{opacity:1}.SetupWidget2579698650__card{display:block;width:100%;border:0;border-radius:var(--wds-border-radius-400, 8px);background-color:var(--wds-color-fill-standard-tertiary, var(--wsr-color-D80, #FFFFFF));box-shadow:0 0 6px 0 rgba(0,6,36,.1),0 2px 4px 0 rgba(0,6,36,.05);overflow:clip;box-sizing:border-box;text-align:start;font:inherit;color:inherit;padding:0;margin:0}.SetupWidget2579698650__card.SetupWidget2579698650--primary{background-color:var(--wds-color-fill-standard-tertiary-hover, var(--wsr-color-B60, #F4F7FF))}.SetupWidget2579698650__card.SetupWidget2579698650--clickable{cursor:pointer}.SetupWidget2579698650__stepIcon{display:flex;align-items:center;flex-shrink:0;height:24px}.SetupWidget2579698650__chevron{display:flex;flex-shrink:0;color:var(--wds-color-text-standard-primary, var(--wsr-color-D10, #000624))}.SetupWidget2579698650__chevronDisabled{display:flex;flex-shrink:0;color:var(--wds-color-text-disabled, var(--wsr-color-D10-30, rgba(0, 6, 36, 0.30)))}.SetupWidget2579698650__inProgressLabel{--wds-color-text-standard-primary:var(--wds-color-text-urgent, var(--wsr-color-O10, #FE620F));text-transform:uppercase}.SkeletonCard3666684108__headerLoading{display:block!important}.SlidingModal304127389__root{transition:transform .4s ease 0s;position:fixed;z-index:1}.SlidingModal304127389__root.SlidingModal304127389--overlay{transition:transform 0s ease 0s}.SlidingModal304127389__root.SlidingModal304127389---appendTo-6-parent{position:absolute}.SlidingModal304127389__root.SlidingModal304127389--inset{border-radius:var(--wds-side-panel-standard-corner-radius, 0);will-change:transform}.SlidingModal304127389__root:not(.SlidingModal304127389--exited){box-shadow:0 3px 24px 0 rgba(22,45,61,.18),0 8px 8px 0 rgba(22,45,61,.12)}th:not([data-sticky=true]):has(.AddFieldColumnHeader475769976__anchorLayer){position:relative}.AddFieldColumnHeader475769976__anchorLayer{position:absolute;inset:0;pointer-events:none}.AddFieldColumnHeader475769976__anchorLayer>.AddFieldColumnHeader475769976__popover{display:grid;width:100%;height:100%}.AddFieldColumnHeader475769976__popover{--wds-popover-fill:transparent;--wds-popover-border-width:0;--wds-popover-border-radius:0;--wds-shadow-surface-overlay:none;--wds-background-blur-surface-overlay:0px}.AddFieldColumnHeader475769976__title{display:flex;align-items:center;box-sizing:content-box;width:100%;min-width:0;min-height:24px;margin-block:calc(-1*var(--wds-space-150, 9px));padding-block:var(--wds-space-150, 9px)}.AddFieldColumnHeader475769976__hoverBridge{display:inline-block;padding:4px;background:0 0;transform:translate(50%,-50%)}.AddFieldColumnHeader475769976__hoverBridge.AddFieldColumnHeader475769976---side-4-left{transform:translate(-50%,-50%)}.TabsFilter1758085590__root .TabsFilter1758085590__titleBox *{color:inherit!important}.ManageTagsModal323279871__root{display:flex}.ManageTagsModal323279871__root.ManageTagsModal323279871--harmony .wds_1_301_0_TableListItem__root{padding-inline-end:16px}.ManageTagsModal323279871__root.ManageTagsModal323279871--harmony .wds_1_301_0_TableListItem__optionsContainer{align-items:start}.ToolbarItem37333139__root{min-width:0}.ToolbarItemBox4138502288__root{min-width:0}.ToolbarItemBox4138502288__root.ToolbarItemBox4138502288--removeStartPadding{margin-left:-24px}.ToolbarItemBox4138502288__root.ToolbarItemBox4138502288--expandable{flex:1 0}.common3746632953__column{display:flex;flex-direction:column}.common3746632953__fullHeight{height:100%;min-height:0}.CollectionPageHeader386705226__root:not(.CollectionPageHeader386705226--mobile){gap:12px}.CollectionPageHeader386705226__root.CollectionPageHeader386705226--mobile{flex-direction:column;padding-right:18px;padding-left:18px}.CollectionPageHeader386705226__root.CollectionPageHeader386705226--mobile>*{margin-left:0;margin-top:6px!important;height:auto}.FormPageHeader2666273753__root.FormPageHeader2666273753--mobile{flex-direction:column;padding-right:18px;padding-left:18px}.FormPageHeader2666273753__root.FormPageHeader2666273753--mobile>*{margin-left:0;margin-top:6px!important;height:auto}
3
+ )}.Edit75563061__overlay{position:absolute;inset:2px;pointer-events:none;background:var(--wds-color-background-elevation-base, #fff)}.Edit1058556639__urlInput{width:100%;margin-left:-1px}.View3625243124__textView{width:100%;padding:9px 12px;display:flex;align-items:center;justify-content:space-between}.View3625243124__urlText{flex:1;min-width:0}.View3625243124__suffix{flex-shrink:0;margin-left:10px}.View3625243124__textView.View3625243124--suffixOnHover:not(:hover) .View3625243124__suffix{display:none}.EmptyStateBase4063106878__root{min-height:230px;align-items:center}.EntityPagePlain972709233__root.EntityPagePlain972709233--mobile{--wds-page-header-padding-horizontal:0}.Fade2089013670__root{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);opacity:1}.Fade2089013670__root.Fade2089013670--exit{opacity:0}.Heading5664972__root{visibility:visible}.Heading5664972__root.Heading5664972--appearanceH2{font-size:28px!important;line-height:36px!important}.ImportStepUpload1096372970__fileUpload{width:100%}.InputOverflow1389624861__root.InputOverflow1389624861--selected:not(.InputOverflow1389624861--focused) input::placeholder{color:#000624}@keyframes LoadingRow4183285706__gradientSwoosh{0%{background-position:50% 50%;background-size:150% 125%}15%{background-position:75% 40%;background-size:130% 115%}30%{background-position:50% 50%;background-size:120% 135%}60%{background-position:30% 50%;background-size:120% 135%}80%{background-position:10% 30%;background-size:130% 155%}to{background-position:40% 45%;background-size:125% 135%}}.LoadingRow4183285706__root{background-image:linear-gradient(60deg,rgba(255,255,255,.15)0,rgba(255,255,255,.15) 50%,rgba(95,242,174,.15) 100%),linear-gradient(284.81deg,#fff 67.18%,#91bbff 158.87%),linear-gradient(29deg,rgba(145,187,255,.6)0,#fff 40%,rgba(95,242,174,.6) 100%);height:100%;background-size:150% 125%;background-repeat:no-repeat;animation:LoadingRow4183285706__gradientSwoosh 2s ease-out infinite alternate}.MaxHeightText587563954__root{opacity:1}.MaxHeightText587563954__root.MaxHeightText587563954--height24{line-height:24px}.MaxLines1899537561__root{overflow:hidden}.MaxLines1899537561__root.MaxLines1899537561--clamp{-webkit-box-orient:vertical;display:-webkit-box}.MultiBulkActionToolbar4001429243__root{min-width:0}.MultiBulkActionToolbar4001429243__leftGroupWrapper{padding-right:12px;min-width:0;flex-wrap:nowrap;align-items:center}.MultiBulkActionToolbar4001429243__selectedCountItem{min-width:0;flex-shrink:1;white-space:nowrap;overflow:hidden}.MultiBulkActionToolbar4001429243__selectedCountText{display:block;width:100%}.NestedTablePlaceholderStatesRow1449507865__root td{padding:0!important;width:100%}.NestedTableRow3864270784__firstLevel td{padding-top:var(--wds-space-300, 18px)!important;padding-bottom:var(--wds-space-300, 18px)!important}.NestedTableRow3864270784__root:hover{background-color:var(--wds-table-list-item-fill-hover, var(--wsr-color-B50, #e7f0ff))!important}.NestedTableRow3864270784__root.NestedTableRow3864270784--expandable{cursor:pointer}.NestedTableRow3864270784__placeholder td{padding:0!important;width:100%}.NestedTableRow3864270784__root:hover td:first-of-type::before,.NestedTableRow3864270784__parentHovered td:first-of-type::before{content:"";position:absolute;top:0;bottom:0;left:0;width:2px;background-color:var(--wds-color-border-standard-primary-active, var(--wsr-color-B10, #116DFF))}.MultipleDragOverlayEffect1578670324__root{position:absolute;transform:translate(6px,6px);background-color:var(--wds-color-fill-surface-overlay, var(--wsr-color-D80, #ffffff));box-shadow:var(--wds-shadow-surface-overlay, var(--wsr-shadow20, 0 2px 4px 0 rgba(22, 45, 61, 0.12), 0 0 6px 0 rgba(22, 45, 61, 0.12)))}.NestedTableDragAndDropRow1288385230__root.NestedTableDragAndDropRow1288385230--draggingInto td{background-color:var(--wds-table-list-item-fill-hover, var(--wsr-color-B50, #E7F0FF))!important}.PickerContent3632886375__root{display:flex}.PickerContentAdditionalStep1191243546__titles{display:flex;justify-content:center;flex:1 1 auto;overflow:hidden;flex-direction:column}.PickerContentAdditionalStep1191243546__suffix{display:flex;align-items:center;flex:0 0 auto;overflow:hidden}.PickerTableListItem1935451459__root{box-sizing:border-box}.ScrollableContent493490318__root.ScrollableContent493490318--overflowY{overflow-y:auto}.ScrollableContent493490318__root.ScrollableContent493490318--overflowX{overflow-x:auto}.ScrollableContent493490318__root.ScrollableContent493490318--smooth{scroll-behavior:smooth}.SetupWidget2110234757__row{display:flex;flex-direction:column;overflow:clip;--wds-clickable-card-outline-border-color:var(--wds-color-border-dark-secondary, var(--wsr-color-D60, #DFE5EB))}.SetupWidget2110234757__row.SetupWidget2110234757--focused{--wds-clickable-card-outline-border-color:var(--wds-color-border-standard-primary-active, var(--wsr-color-B10, #116DFF))}.SetupWidget2110234757__row.SetupWidget2110234757--focused.SetupWidget2110234757--withBackground{--wds-color-fill-surface-default:var(--wds-color-fill-standard-tertiary-hover, var(--wsr-color-B60, #F4F7FF))}.SetupWidget2110234757__completedCta,.SetupWidget2110234757__secondaryCta{opacity:0;transition:opacity .25s ease-in-out}@media (hover:hover){.SetupWidget2110234757__row:hover .SetupWidget2110234757__completedCta,.SetupWidget2110234757__row:hover .SetupWidget2110234757__secondaryCta{opacity:1}}.SetupWidget2110234757__row:focus-within .SetupWidget2110234757__completedCta,.SetupWidget2110234757__row:focus-within .SetupWidget2110234757__secondaryCta,.SetupWidget2110234757__secondaryCta:focus-within{opacity:1}.SetupWidget2110234757__card{display:block;width:100%;border:0;border-radius:var(--wds-border-radius-400, 8px);background-color:var(--wds-color-fill-standard-tertiary, var(--wsr-color-D80, #FFFFFF));box-shadow:0 0 6px 0 rgba(0,6,36,.1),0 2px 4px 0 rgba(0,6,36,.05);overflow:clip;box-sizing:border-box;text-align:start;font:inherit;color:inherit;padding:0;margin:0}.SetupWidget2110234757__card.SetupWidget2110234757--primary{background-color:var(--wds-color-fill-standard-tertiary-hover, var(--wsr-color-B60, #F4F7FF))}.SetupWidget2110234757__card.SetupWidget2110234757--clickable{cursor:pointer}.SetupWidget2110234757__stepIcon{display:flex;align-items:center;flex-shrink:0;height:24px}.SetupWidget2110234757__chevron{display:flex;flex-shrink:0;color:var(--wds-color-text-standard-primary, var(--wsr-color-D10, #000624))}.SetupWidget2110234757__chevronDisabled{display:flex;flex-shrink:0;color:var(--wds-color-text-disabled, var(--wsr-color-D10-30, rgba(0, 6, 36, 0.30)))}.SetupWidget2110234757__inProgressLabel{--wds-color-text-standard-primary:var(--wds-color-text-urgent, var(--wsr-color-O10, #FE620F));text-transform:uppercase}.SkeletonCard1353692677__headerLoading{display:block!important}.SlidingModal3699716134__root{transition:transform .4s ease 0s;position:fixed;z-index:1}.SlidingModal3699716134__root.SlidingModal3699716134--overlay{transition:transform 0s ease 0s}.SlidingModal3699716134__root.SlidingModal3699716134---appendTo-6-parent{position:absolute}.SlidingModal3699716134__root.SlidingModal3699716134--inset{border-radius:var(--wds-side-panel-standard-corner-radius, 0);will-change:transform}.SlidingModal3699716134__root:not(.SlidingModal3699716134--exited){box-shadow:0 3px 24px 0 rgba(22,45,61,.18),0 8px 8px 0 rgba(22,45,61,.12)}th:not([data-sticky=true]):has(.AddFieldColumnHeader3342868055__anchorLayer){position:relative}.AddFieldColumnHeader3342868055__anchorLayer{position:absolute;inset:0;pointer-events:none}.AddFieldColumnHeader3342868055__anchorLayer>.AddFieldColumnHeader3342868055__popover{display:grid;width:100%;height:100%}.AddFieldColumnHeader3342868055__popover{--wds-popover-fill:transparent;--wds-popover-border-width:0;--wds-popover-border-radius:0;--wds-shadow-surface-overlay:none;--wds-background-blur-surface-overlay:0px}.AddFieldColumnHeader3342868055__title{display:flex;align-items:center;box-sizing:content-box;width:100%;min-width:0;min-height:24px;margin-block:calc(-1*var(--wds-space-150, 9px));padding-block:var(--wds-space-150, 9px)}.AddFieldColumnHeader3342868055__hoverBridge{display:inline-block;padding:4px;background:0 0;transform:translate(50%,-50%)}.AddFieldColumnHeader3342868055__hoverBridge.AddFieldColumnHeader3342868055---side-4-left{transform:translate(-50%,-50%)}.TabsFilter1621023237__root .TabsFilter1621023237__titleBox *{color:inherit!important}.ManageTagsModal2882622398__root{display:flex}.ManageTagsModal2882622398__root.ManageTagsModal2882622398--harmony .wds_1_301_0_TableListItem__root{padding-inline-end:16px}.ManageTagsModal2882622398__root.ManageTagsModal2882622398--harmony .wds_1_301_0_TableListItem__optionsContainer{align-items:start}.ToolbarItem1460566793__root{min-width:0}.ToolbarItemBox3952381993__root{min-width:0}.ToolbarItemBox3952381993__root.ToolbarItemBox3952381993--removeStartPadding{margin-left:-24px}.ToolbarItemBox3952381993__root.ToolbarItemBox3952381993--expandable{flex:1 0}.common1675353889__column{display:flex;flex-direction:column}.common1675353889__fullHeight{height:100%;min-height:0}.CollectionPageHeader3232782993__root:not(.CollectionPageHeader3232782993--mobile){gap:12px}.CollectionPageHeader3232782993__root.CollectionPageHeader3232782993--mobile{flex-direction:column;padding-right:18px;padding-left:18px}.CollectionPageHeader3232782993__root.CollectionPageHeader3232782993--mobile>*{margin-left:0;margin-top:6px!important;height:auto}.FormPageHeader4154625186__root.FormPageHeader4154625186--mobile{flex-direction:column;padding-right:18px;padding-left:18px}.FormPageHeader4154625186__root.FormPageHeader4154625186--mobile>*{margin-left:0;margin-top:6px!important;height:auto}
@@ -2,5 +2,5 @@
2
2
 
3
3
  exports.__esModule = true;
4
4
  exports.version = void 0;
5
- const version = exports.version = 'patterns@1.468.0';
5
+ const version = exports.version = 'patterns@1.469.0';
6
6
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["version","exports"],"sources":["../../src/version.ts"],"sourcesContent":["export const version = 'patterns@1.468.0';\n"],"mappings":";;;;AAAO,MAAMA,OAAO,GAAAC,OAAA,CAAAD,OAAA,GAAG,kBAAkB","ignoreList":[]}
1
+ {"version":3,"names":["version","exports"],"sources":["../../src/version.ts"],"sourcesContent":["export const version = 'patterns@1.469.0';\n"],"mappings":";;;;AAAO,MAAMA,OAAO,GAAAC,OAAA,CAAAD,OAAA,GAAG,kBAAkB","ignoreList":[]}
@@ -2,6 +2,8 @@
2
2
 
3
3
  **Category:** Integrations/AI Assistant
4
4
 
5
+ Examples below are illustrative: each one demonstrates this page's API, and everything around it — data source, layout, http client — is only scaffolding to make that runnable.
6
+
5
7
  ## Design
6
8
 
7
9
  ### Description
@@ -4,6 +4,8 @@
4
4
 
5
5
  Paths written as `dist/…` below are relative to the `@wix/patterns` package root — the directory holding its `package.json`.
6
6
 
7
+ Examples below are illustrative: each one demonstrates this page's API, and everything around it — data source, layout, http client — is only scaffolding to make that runnable.
8
+
7
9
  ## API
8
10
 
9
11
  ### Disabling the secondary actions menu
@@ -2,6 +2,10 @@
2
2
 
3
3
  **Category:** Features/Enrich/Data Extension
4
4
 
5
+ Examples below are illustrative: each one demonstrates this page's API, and everything around it — data source, layout, http client — is only scaffolding to make that runnable.
6
+
7
+ Some of that scaffolding is environment-scoped and is **not** needed to use this component: `@wix/ambassador-contacts-v5-contact/http`, `@wix/ambassador-contacts-v5-contact/types`, `@wix/ambassador-v1-entity/http`, `@wix/ambassador-v1-entity/types`, `@wix/yoshi-flow-bm`. Those resolve only against a Wix build environment (a Yoshi flow's runtime, a generated service client, an internal sibling package) — substitute your own data source and http client rather than installing them.
8
+
5
9
  ## Guide
6
10
 
7
11
  This guide shows you how to let users add and manage extended fields.
@@ -4,6 +4,10 @@
4
4
 
5
5
  Paths written as `dist/…` below are relative to the `@wix/patterns` package root — the directory holding its `package.json`.
6
6
 
7
+ Examples below are illustrative: each one demonstrates this page's API, and everything around it — data source, layout, http client — is only scaffolding to make that runnable.
8
+
9
+ Some of that scaffolding is environment-scoped and is **not** needed to use this component: `@wix/yoshi-flow-bm`. Those resolve only against a Wix build environment (a Yoshi flow's runtime, a generated service client, an internal sibling package) — substitute your own data source and http client rather than installing them.
10
+
7
11
  ## Design
8
12
 
9
13
  ```tsx
@@ -0,0 +1,116 @@
1
+ # Collection Toolkit
2
+
3
+ **Category:** Guides
4
+
5
+ Paths written as `dist/…` below are relative to the `@wix/patterns` package root — the directory holding its `package.json`.
6
+
7
+ ## Related components
8
+
9
+ `SummaryBar`, `CollectionSearch`, `CollectionToolbarFilters`, `MultiSelectCheckboxFilter`, `MultiInlineCheckboxFilter`, `MultiAutoInlineCheckboxFilter`, `SingleSelectFilter`, `RadioGroupFilter`, `TabsFilter`, `MultiSelectCollectionFilter`, `useFilterCollection`, `AutoCompleteFilter`, `DateRangeFilter`, `NumberRangeFilter`, `OperatorFilterPicker`, `operatorFilter`, `idNameArrayFilter`, `stringFilter`, `stringsArrayFilter`, `arrayFilter`, `dateRangeFilter`, `customFilter`, `useStaticListFilterCollection`, `Sortable Columns`, `MultiLevelSorting`, `EntityPage`, `useEntityPage`, `usePatternsNavigate`, `PickerModal`, `usePickerModal`, `bulkActionModal`, `PrimaryActions`, `SecondaryActions`, `More Actions`, `deleteSecondaryAction`, `PrimaryActionButton`, `MultiBulkActionToolbar`, `useOptimisticActions`, `CollectionOptimisticActions`, `TableTopNotification`, `CollectionEmptyState`, `CollectionNoResultsState`, `CollectionPremiumEmptyState`, `ExportButton`
10
+
11
+ Each name resolves in `dist/docs/index.json` — as a key, or as one of an entry's `symbols` aliases.
12
+
13
+ ## Overview
14
+
15
+ Which component to reach for, arranged by what the person using the dashboard is trying to
16
+ do: understand the situation, narrow it, open one record, act, and be told what happened.
17
+
18
+ Two of those stages get skipped most often, and both leave a page that technically works:
19
+
20
+ 1. **A dashboard that reports on records should show aggregate numbers, not only rows.** A
21
+ filtered table answers "what are all the records" and none of "how many", "which one
22
+ needs me", or "why did this happen".
23
+ 2. **If a row represents a real business record, the user should be able to open it** —
24
+ unless the page is explicitly a report or an export.
25
+
26
+ ## Understand — the aggregate
27
+
28
+ | Need | Component |
29
+ | --- | --- |
30
+ | Totals, counts, a status breakdown above the table | `SummaryBar` |
31
+ | Making the numbers describe the visible subset | wire each metric to the collection's filter state, so the count follows the filters |
32
+
33
+ `SummaryBar` goes inside the page shell, above the collection. Compute its values from the
34
+ same query the table runs, or from a count query alongside it — a metric that disagrees with
35
+ the rows on screen is worse than no metric.
36
+
37
+ ## Focus — narrowing
38
+
39
+ | Need | Component |
40
+ | --- | --- |
41
+ | Free-text search | `CollectionSearch` |
42
+ | The filter bar itself | `CollectionToolbarFilters` |
43
+ | Several values from a known list | `MultiSelectCheckboxFilter`, `MultiInlineCheckboxFilter`, `MultiAutoInlineCheckboxFilter` |
44
+ | One value | `SingleSelectFilter`, `RadioGroupFilter`, `TabsFilter` |
45
+ | Values fetched from an API rather than a fixed list | `MultiSelectCollectionFilter` + `useFilterCollection` |
46
+ | Type-ahead over many values | `AutoCompleteFilter` |
47
+ | Date or number ranges | `DateRangeFilter`, `NumberRangeFilter` |
48
+ | Comparison operators — greater than, contains | `OperatorFilterPicker` + `operatorFilter` |
49
+ | The filter's state object | `idNameArrayFilter`, `stringFilter`, `stringsArrayFilter`, `arrayFilter`, `dateRangeFilter`, `customFilter` |
50
+ | A fixed in-memory option list | `useStaticListFilterCollection` |
51
+ | Sorting | `Sortable Columns`, `MultiLevelSorting` |
52
+
53
+ **A filter has to reach the query.** Declare it in the filters map you pass the collection
54
+ hook, and read its value inside the hook's fetch callback. Filter UI that renders but never
55
+ changes the rows is a defect that looks like a feature — and it is the failure these
56
+ components exist to prevent.
57
+
58
+ **For the factories and hooks above, the signature is in the bundle, not the doc.** Props
59
+ tables are generated from components, so a factory's doc has an API heading with no table
60
+ under it while its bundle carries the real signature — the generic it constrains, the
61
+ optional params object it accepts, and the filter-state type it returns. That is the
62
+ difference between knowing a name and being able to call it, and it holds for every hook and
63
+ every filter factory listed here.
64
+
65
+ ## Investigate — opening one record
66
+
67
+ | Surface | When | Built from |
68
+ | --- | --- | --- |
69
+ | **Side panel** | Inspect or lightly edit one record while keeping the filtered list on screen. | The design system's `SidePanel` — patterns has no side panel of its own. |
70
+ | **Entity page** | Multi-section detail, editing, history, or a URL someone can share. | `EntityPage` and `useEntityPage`, navigated to through `usePatternsNavigate`. |
71
+ | **Expanded row** | A couple of extra fields, no separate workspace needed. | The collection's own row expansion. |
72
+ | **Picker / bulk confirm** | Choosing records, or confirming an action across many. | `PickerModal` + `usePickerModal`, `bulkActionModal` |
73
+
74
+ A dialog that creates, updates or displays one record listed by the collection is an
75
+ `EntityPage`, not a modal — a create or "add new" form included, since it writes the record.
76
+ `useEntityPage`'s **Create route** section covers registering that route and the params that
77
+ differ from the edit call.
78
+
79
+ Form state on an entity page comes from `@wix/patterns/form`: `useForm` for the form,
80
+ `useController` for a single field. That entry point re-exports `@wix/bex-core/form`, which
81
+ wraps [react-hook-form](https://react-hook-form.com/) — so reading values, resetting, and the
82
+ rest of the form object's surface are react-hook-form's API and are documented there, not
83
+ here.
84
+
85
+ ## Act and confirm
86
+
87
+ | Need | Component |
88
+ | --- | --- |
89
+ | Page header actions | `PrimaryActions`, `SecondaryActions`, `More Actions` — into the page header's `primaryAction`, `secondaryActions` and `moreActions` slots |
90
+ | Table toolbar button | `PrimaryActionButton` — the table's own `primaryActionButton` prop |
91
+ | Row actions | `deleteSecondaryAction`, in the row's `actionCell` |
92
+ | Acting on a multi-row selection | `MultiBulkActionToolbar`, `bulkActionModal` |
93
+ | Immediate feedback, reconciled after the call | `useOptimisticActions`, which returns `CollectionOptimisticActions` |
94
+ | A banner above the table | `TableTopNotification` |
95
+
96
+ `useOptimisticActions` takes the collection state — the collection property of the state
97
+ object your collection hook returns — and not that state object itself. The two are different
98
+ types and the wrong one does not compile.
99
+
100
+ ## The states that are not the happy path
101
+
102
+ | State | Component |
103
+ | --- | --- |
104
+ | The collection is genuinely empty | `CollectionEmptyState` |
105
+ | Filters or search matched nothing | `CollectionNoResultsState` |
106
+ | The feature needs a paid plan | `CollectionPremiumEmptyState` |
107
+ | The load failed | the collection state's error handling — give the user a retry |
108
+
109
+ Empty and no-results are different messages: one says "add your first record", the other
110
+ says "loosen the filters". Shipping only the first makes a working filter look broken.
111
+
112
+ ## Export
113
+
114
+ `ExportButton` for CSV and similar. Its doc is titled `ExportTo`.
115
+
116
+