@wix/patterns 1.366.0 → 1.370.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 (678) hide show
  1. package/dist/cjs/components/CardContainer/CardContainer.st.css.js +2 -2
  2. package/dist/cjs/components/CardContainer/CardContainer.st.css.js.map +1 -1
  3. package/dist/cjs/components/Collapse/Collapse.st.css.js +3 -3
  4. package/dist/cjs/components/Collapse/Collapse.st.css.js.map +1 -1
  5. package/dist/cjs/components/CollectionPageNew/CollectionPage.st.css.js +2 -2
  6. package/dist/cjs/components/CollectionPageNew/CollectionPage.st.css.js.map +1 -1
  7. package/dist/cjs/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js +3 -3
  8. package/dist/cjs/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js.map +1 -1
  9. package/dist/cjs/components/CollectionTable/CollectionTable.st.css.js +2 -2
  10. package/dist/cjs/components/CollectionTable/CollectionTable.st.css.js.map +1 -1
  11. package/dist/cjs/components/CollectionTable/CollectionTableWSRTable.js +6 -3
  12. package/dist/cjs/components/CollectionTable/CollectionTableWSRTable.js.map +1 -1
  13. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.js +25 -30
  14. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.js.map +1 -1
  15. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js +5 -5
  16. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js.map +1 -1
  17. package/dist/cjs/components/CollectionToolbar/CollectionToolbarActionsGroupProps.js.map +1 -1
  18. package/dist/cjs/components/CollectionToolbar/CollectionToolbarActionsGroupResponsiveLayout.js +66 -17
  19. package/dist/cjs/components/CollectionToolbar/CollectionToolbarActionsGroupResponsiveLayout.js.map +1 -1
  20. package/dist/cjs/components/CollectionToolbar/CollectionToolbarActionsToolbarItemsGroup.js +22 -14
  21. package/dist/cjs/components/CollectionToolbar/CollectionToolbarActionsToolbarItemsGroup.js.map +1 -1
  22. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +4 -4
  23. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js.map +1 -1
  24. package/dist/cjs/components/CollectionToolbar/ToolbarOverflowMenu.js +329 -0
  25. package/dist/cjs/components/CollectionToolbar/ToolbarOverflowMenu.js.map +1 -0
  26. package/dist/cjs/components/CollectionToolbar/useToolbarOverflowItems.js +85 -0
  27. package/dist/cjs/components/CollectionToolbar/useToolbarOverflowItems.js.map +1 -0
  28. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
  29. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js.map +1 -1
  30. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
  31. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js.map +1 -1
  32. package/dist/cjs/components/CtaProps.js.map +1 -1
  33. package/dist/cjs/components/DragHandle/DragHandle.st.css.js +2 -2
  34. package/dist/cjs/components/DragHandle/DragHandle.st.css.js.map +1 -1
  35. package/dist/cjs/components/EditableTable/EditableCell.st.css.js +3 -3
  36. package/dist/cjs/components/EditableTable/EditableCell.st.css.js.map +1 -1
  37. package/dist/cjs/components/EditableTable/cellTypes/boolean/Edit.st.css.js +3 -3
  38. package/dist/cjs/components/EditableTable/cellTypes/boolean/Edit.st.css.js.map +1 -1
  39. package/dist/cjs/components/EditableTable/cellTypes/boolean/View.st.css.js +3 -3
  40. package/dist/cjs/components/EditableTable/cellTypes/boolean/View.st.css.js.map +1 -1
  41. package/dist/cjs/components/EditableTable/cellTypes/date/Edit.st.css.js +3 -3
  42. package/dist/cjs/components/EditableTable/cellTypes/date/Edit.st.css.js.map +1 -1
  43. package/dist/cjs/components/EditableTable/cellTypes/date/View.st.css.js +3 -3
  44. package/dist/cjs/components/EditableTable/cellTypes/date/View.st.css.js.map +1 -1
  45. package/dist/cjs/components/EditableTable/cellTypes/email/Edit.js +59 -0
  46. package/dist/cjs/components/EditableTable/cellTypes/email/Edit.js.map +1 -0
  47. package/dist/cjs/components/EditableTable/cellTypes/email/Edit.st.css +4 -0
  48. package/dist/cjs/components/EditableTable/cellTypes/email/Edit.st.css.js +23 -0
  49. package/dist/cjs/components/EditableTable/cellTypes/email/Edit.st.css.js.map +1 -0
  50. package/dist/cjs/components/EditableTable/cellTypes/email/Edit.uni.driver.js +20 -0
  51. package/dist/cjs/components/EditableTable/cellTypes/email/Edit.uni.driver.js.map +1 -0
  52. package/dist/cjs/components/EditableTable/cellTypes/email/View.js +23 -0
  53. package/dist/cjs/components/EditableTable/cellTypes/email/View.js.map +1 -0
  54. package/dist/cjs/components/EditableTable/cellTypes/email/View.st.css +4 -0
  55. package/dist/cjs/components/EditableTable/cellTypes/email/View.st.css.js +23 -0
  56. package/dist/cjs/components/EditableTable/cellTypes/email/View.st.css.js.map +1 -0
  57. package/dist/cjs/components/EditableTable/cellTypes/email/View.uni.driver.js +12 -0
  58. package/dist/cjs/components/EditableTable/cellTypes/email/View.uni.driver.js.map +1 -0
  59. package/dist/cjs/components/EditableTable/cellTypes/email/index.js +31 -0
  60. package/dist/cjs/components/EditableTable/cellTypes/email/index.js.map +1 -0
  61. package/dist/cjs/components/EditableTable/cellTypes/index.js +5 -1
  62. package/dist/cjs/components/EditableTable/cellTypes/index.js.map +1 -1
  63. package/dist/cjs/components/EditableTable/cellTypes/number/Edit.js +4 -9
  64. package/dist/cjs/components/EditableTable/cellTypes/number/Edit.js.map +1 -1
  65. package/dist/cjs/components/EditableTable/cellTypes/number/Edit.st.css.js +3 -3
  66. package/dist/cjs/components/EditableTable/cellTypes/number/Edit.st.css.js.map +1 -1
  67. package/dist/cjs/components/EditableTable/cellTypes/number/View.js +4 -5
  68. package/dist/cjs/components/EditableTable/cellTypes/number/View.js.map +1 -1
  69. package/dist/cjs/components/EditableTable/cellTypes/number/View.st.css.js +3 -3
  70. package/dist/cjs/components/EditableTable/cellTypes/number/View.st.css.js.map +1 -1
  71. package/dist/cjs/components/EditableTable/cellTypes/object/Edit.js +79 -0
  72. package/dist/cjs/components/EditableTable/cellTypes/object/Edit.js.map +1 -0
  73. package/dist/cjs/components/EditableTable/cellTypes/object/Edit.st.css +4 -0
  74. package/dist/cjs/components/EditableTable/cellTypes/object/Edit.st.css.js +23 -0
  75. package/dist/cjs/components/EditableTable/cellTypes/object/Edit.st.css.js.map +1 -0
  76. package/dist/cjs/components/EditableTable/cellTypes/object/Edit.uni.driver.js +20 -0
  77. package/dist/cjs/components/EditableTable/cellTypes/object/Edit.uni.driver.js.map +1 -0
  78. package/dist/cjs/components/EditableTable/cellTypes/object/View.js +30 -0
  79. package/dist/cjs/components/EditableTable/cellTypes/object/View.js.map +1 -0
  80. package/dist/cjs/components/EditableTable/cellTypes/object/View.st.css +4 -0
  81. package/dist/cjs/components/EditableTable/cellTypes/object/View.st.css.js +23 -0
  82. package/dist/cjs/components/EditableTable/cellTypes/object/View.st.css.js.map +1 -0
  83. package/dist/cjs/components/EditableTable/cellTypes/object/View.uni.driver.js +12 -0
  84. package/dist/cjs/components/EditableTable/cellTypes/object/View.uni.driver.js.map +1 -0
  85. package/dist/cjs/components/EditableTable/cellTypes/object/index.js +45 -0
  86. package/dist/cjs/components/EditableTable/cellTypes/object/index.js.map +1 -0
  87. package/dist/cjs/components/EditableTable/cellTypes/select/Edit.st.css.js +3 -3
  88. package/dist/cjs/components/EditableTable/cellTypes/select/Edit.st.css.js.map +1 -1
  89. package/dist/cjs/components/EditableTable/cellTypes/select/View.st.css.js +3 -3
  90. package/dist/cjs/components/EditableTable/cellTypes/select/View.st.css.js.map +1 -1
  91. package/dist/cjs/components/EditableTable/cellTypes/text/Edit.st.css.js +4 -4
  92. package/dist/cjs/components/EditableTable/cellTypes/text/Edit.st.css.js.map +1 -1
  93. package/dist/cjs/components/EditableTable/cellTypes/text/View.st.css.js +3 -3
  94. package/dist/cjs/components/EditableTable/cellTypes/text/View.st.css.js.map +1 -1
  95. package/dist/cjs/components/EditableTable/cellTypes/url/Edit.st.css.js +3 -3
  96. package/dist/cjs/components/EditableTable/cellTypes/url/Edit.st.css.js.map +1 -1
  97. package/dist/cjs/components/EditableTable/cellTypes/url/View.st.css.js +5 -5
  98. package/dist/cjs/components/EditableTable/cellTypes/url/View.st.css.js.map +1 -1
  99. package/dist/cjs/components/EditableTable/useCellFocusAndEditing.js +15 -0
  100. package/dist/cjs/components/EditableTable/useCellFocusAndEditing.js.map +1 -1
  101. package/dist/cjs/components/EditableTable/useKeyboardNavigation.js +10 -0
  102. package/dist/cjs/components/EditableTable/useKeyboardNavigation.js.map +1 -1
  103. package/dist/cjs/components/EntityPage/EntityPagePlain.st.css.js +2 -2
  104. package/dist/cjs/components/EntityPage/EntityPagePlain.st.css.js.map +1 -1
  105. package/dist/cjs/components/Fade/Fade.st.css.js +2 -2
  106. package/dist/cjs/components/Fade/Fade.st.css.js.map +1 -1
  107. package/dist/cjs/components/Heading/Heading.st.css.js +2 -2
  108. package/dist/cjs/components/Heading/Heading.st.css.js.map +1 -1
  109. package/dist/cjs/components/ImportButton/ImportStepUpload.st.css.js +3 -3
  110. package/dist/cjs/components/ImportButton/ImportStepUpload.st.css.js.map +1 -1
  111. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js +2 -2
  112. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js.map +1 -1
  113. package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js +3 -3
  114. package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js.map +1 -1
  115. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  116. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js.map +1 -1
  117. package/dist/cjs/components/MaxLines/MaxLines.st.css.js +2 -2
  118. package/dist/cjs/components/MaxLines/MaxLines.st.css.js.map +1 -1
  119. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +5 -5
  120. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js.map +1 -1
  121. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
  122. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js.map +1 -1
  123. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js +5 -5
  124. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js.map +1 -1
  125. package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
  126. package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js.map +1 -1
  127. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
  128. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js.map +1 -1
  129. package/dist/cjs/components/PickerContent/PickerContent.st.css.js +2 -2
  130. package/dist/cjs/components/PickerContent/PickerContent.st.css.js.map +1 -1
  131. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js +4 -4
  132. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js.map +1 -1
  133. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  134. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js.map +1 -1
  135. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  136. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
  137. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js +3 -3
  138. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js.map +1 -1
  139. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js +2 -2
  140. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js.map +1 -1
  141. package/dist/cjs/components/TableGridSwitchButton/TableGridSwitchButton.js +14 -38
  142. package/dist/cjs/components/TableGridSwitchButton/TableGridSwitchButton.js.map +1 -1
  143. package/dist/cjs/components/TableGridSwitchButton/layoutConfig.js +34 -0
  144. package/dist/cjs/components/TableGridSwitchButton/layoutConfig.js.map +1 -0
  145. package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js +3 -3
  146. package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js.map +1 -1
  147. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  148. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js.map +1 -1
  149. package/dist/cjs/components/ToolbarItem/ToolbarItem.st.css.js +2 -2
  150. package/dist/cjs/components/ToolbarItem/ToolbarItem.st.css.js.map +1 -1
  151. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  152. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js.map +1 -1
  153. package/dist/cjs/components/common.st.css.js +4 -4
  154. package/dist/cjs/components/common.st.css.js.map +1 -1
  155. package/dist/cjs/hooks/useStaticListFilterCollection.js +2 -1
  156. package/dist/cjs/hooks/useStaticListFilterCollection.js.map +1 -1
  157. package/dist/cjs/state/CollectionPage/CollectionPageHeader.st.css.js +2 -2
  158. package/dist/cjs/state/CollectionPage/CollectionPageHeader.st.css.js.map +1 -1
  159. package/dist/cjs/state/EditableTable/CellInteractionState.js +65 -0
  160. package/dist/cjs/state/EditableTable/CellInteractionState.js.map +1 -1
  161. package/dist/cjs/state/EditableTable/types.js.map +1 -1
  162. package/dist/cjs/state/FormPage/FormPageHeader.st.css.js +2 -2
  163. package/dist/cjs/state/FormPage/FormPageHeader.st.css.js.map +1 -1
  164. package/dist/cjs/state/TableState.js +2 -0
  165. package/dist/cjs/state/TableState.js.map +1 -1
  166. package/dist/cjs/state/Toolbar/ToolbarResponsiveState.js +38 -4
  167. package/dist/cjs/state/Toolbar/ToolbarResponsiveState.js.map +1 -1
  168. package/dist/cjs/state/Toolbar/computeResponsiveTargetState.js +56 -17
  169. package/dist/cjs/state/Toolbar/computeResponsiveTargetState.js.map +1 -1
  170. package/dist/cjs/state/Toolbar/toolbarResponsiveConstants.js +5 -1
  171. package/dist/cjs/state/Toolbar/toolbarResponsiveConstants.js.map +1 -1
  172. package/dist/cjs/styles.global.css +1 -1
  173. package/dist/cjs/version.js +1 -1
  174. package/dist/cjs/version.js.map +1 -1
  175. package/dist/docs/AI Assistant.md +171 -0
  176. package/dist/docs/ActionCellProps.md +40 -0
  177. package/dist/docs/ActionSubItem.md +24 -0
  178. package/dist/docs/Allow Users to Add Extended Fields.md +194 -0
  179. package/dist/docs/AutoCompleteFilter.md +276 -0
  180. package/dist/docs/BulkActionModalRenderProp.md +22 -0
  181. package/dist/docs/BulkSelectState.md +18 -0
  182. package/dist/docs/Category.md +19 -0
  183. package/dist/docs/CollectionEmptyState.md +240 -0
  184. package/dist/docs/CollectionErrorState.md +107 -0
  185. package/dist/docs/CollectionNoResultsState.md +116 -0
  186. package/dist/docs/CollectionOptimisticActions.md +1074 -0
  187. package/dist/docs/CollectionPage.Content.md +154 -0
  188. package/dist/docs/CollectionPage.Header.md +216 -0
  189. package/dist/docs/CollectionPage.md +183 -0
  190. package/dist/docs/CollectionPremiumEmptyState.md +115 -0
  191. package/dist/docs/CollectionSearch.md +345 -0
  192. package/dist/docs/CollectionSection.md +16 -0
  193. package/dist/docs/CollectionState.md +29 -0
  194. package/dist/docs/CollectionSubToolbar.md +14 -0
  195. package/dist/docs/CollectionToolbar.md +18 -0
  196. package/dist/docs/Component Tests.md +191 -0
  197. package/dist/docs/ComputedQuery.md +45 -0
  198. package/dist/docs/CtaBaseProps.md +19 -0
  199. package/dist/docs/CustomColumns.md +916 -0
  200. package/dist/docs/CustomFieldsViewWidget.md +191 -0
  201. package/dist/docs/CustomFieldsWidget.md +635 -0
  202. package/dist/docs/Data Extension Overview.md +85 -0
  203. package/dist/docs/DataResultRaw.md +25 -0
  204. package/dist/docs/DateRangeFilter.md +202 -0
  205. package/dist/docs/Display Extended Fields.md +244 -0
  206. package/dist/docs/Enable Filters for Extended Fields.md +243 -0
  207. package/dist/docs/EntityPage.AdditionalContent.md +25 -0
  208. package/dist/docs/EntityPage.Card.md +250 -0
  209. package/dist/docs/EntityPage.Content.md +24 -0
  210. package/dist/docs/EntityPage.Header.md +260 -0
  211. package/dist/docs/EntityPage.MainContent.md +24 -0
  212. package/dist/docs/EntityPage.Slots.md +75 -0
  213. package/dist/docs/EntityPage.md +1030 -0
  214. package/dist/docs/EntityPageState.md +23 -0
  215. package/dist/docs/Explore Apps.md +170 -0
  216. package/dist/docs/ExportTo.md +894 -0
  217. package/dist/docs/Filter Overview.md +448 -0
  218. package/dist/docs/FilterProps.md +26 -0
  219. package/dist/docs/FormPageState.md +17 -0
  220. package/dist/docs/Grid Sections.md +170 -0
  221. package/dist/docs/Grid.md +598 -0
  222. package/dist/docs/GridDragAndDrop.md +131 -0
  223. package/dist/docs/GridFolders.md +259 -0
  224. package/dist/docs/GridFoldersSection.md +16 -0
  225. package/dist/docs/GridFoldersState.md +20 -0
  226. package/dist/docs/GridSectionsProp.md +22 -0
  227. package/dist/docs/GridState.md +22 -0
  228. package/dist/docs/Highlighted Search.md +114 -0
  229. package/dist/docs/InMemoryBackend.md +81 -0
  230. package/dist/docs/Indeterminate.md +273 -0
  231. package/dist/docs/Internal Scroll.md +236 -0
  232. package/dist/docs/More Actions.md +1015 -0
  233. package/dist/docs/MoreActionsItem.md +33 -0
  234. package/dist/docs/MultiAutoInlineCheckboxFilter.md +850 -0
  235. package/dist/docs/MultiBulkActionToolbar.md +1174 -0
  236. package/dist/docs/MultiInlineCheckboxFilter.md +871 -0
  237. package/dist/docs/MultiLevelSorting.md +376 -0
  238. package/dist/docs/MultiSelectCheckboxFilter.md +369 -0
  239. package/dist/docs/MultiSelectCollectionFilter.md +218 -0
  240. package/dist/docs/NestedTable.md +1101 -0
  241. package/dist/docs/NestedTableLevel.md +24 -0
  242. package/dist/docs/NestedTableNodeState.md +23 -0
  243. package/dist/docs/NestedTableOptimisticActions.md +21 -0
  244. package/dist/docs/NestedTableState.md +21 -0
  245. package/dist/docs/Next.js.md +143 -0
  246. package/dist/docs/NumberRangeFilter.md +230 -0
  247. package/dist/docs/OperatorFilterPicker.md +195 -0
  248. package/dist/docs/PageWrapper.md +50 -0
  249. package/dist/docs/PatternsReactRoute.md +31 -0
  250. package/dist/docs/PatternsReactRouter.md +24 -0
  251. package/dist/docs/PickerContent.md +129 -0
  252. package/dist/docs/PickerModal.md +680 -0
  253. package/dist/docs/PickerStandalone.md +332 -0
  254. package/dist/docs/PrimaryActionButton.md +323 -0
  255. package/dist/docs/PrimaryActions.md +173 -0
  256. package/dist/docs/PrimaryPageButton.md +140 -0
  257. package/dist/docs/RadioGroupFilter.md +73 -0
  258. package/dist/docs/RequestId.md +58 -0
  259. package/dist/docs/SecondaryActions.md +175 -0
  260. package/dist/docs/SettingsPage.AdditionalContent.md +25 -0
  261. package/dist/docs/SettingsPage.Card.md +246 -0
  262. package/dist/docs/SettingsPage.Content.md +24 -0
  263. package/dist/docs/SettingsPage.Header.md +176 -0
  264. package/dist/docs/SettingsPage.MainContent.md +24 -0
  265. package/dist/docs/SettingsPage.md +680 -0
  266. package/dist/docs/SettingsPageState.md +22 -0
  267. package/dist/docs/SingleSelectFilter.md +401 -0
  268. package/dist/docs/Sled Tests.md +109 -0
  269. package/dist/docs/Sortable Columns.md +250 -0
  270. package/dist/docs/Suggestions.md +370 -0
  271. package/dist/docs/SummaryBar.md +515 -0
  272. package/dist/docs/Table Sections.md +473 -0
  273. package/dist/docs/Table.md +1065 -0
  274. package/dist/docs/TableColumn.md +35 -0
  275. package/dist/docs/TableDragAndDrop.md +502 -0
  276. package/dist/docs/TableFolders.md +419 -0
  277. package/dist/docs/TableFoldersState.md +22 -0
  278. package/dist/docs/TableGridSwitch.md +298 -0
  279. package/dist/docs/TableGridSwitchDragAndDrop.md +170 -0
  280. package/dist/docs/TableGridSwitchFolders.md +446 -0
  281. package/dist/docs/TableGridSwitchFoldersState.md +22 -0
  282. package/dist/docs/TableGridSwitchState.md +23 -0
  283. package/dist/docs/TableSectionsProp.md +22 -0
  284. package/dist/docs/TableState.md +24 -0
  285. package/dist/docs/TableTopNotification.md +314 -0
  286. package/dist/docs/TabsFilter.md +484 -0
  287. package/dist/docs/Tags Overview.md +118 -0
  288. package/dist/docs/Tags.md +718 -0
  289. package/dist/docs/TagsWidget.md +419 -0
  290. package/dist/docs/ToolbarCollectionState.md +19 -0
  291. package/dist/docs/ToolbarFilters.md +1588 -0
  292. package/dist/docs/ToolbarSecondaryActions.md +383 -0
  293. package/dist/docs/ToolbarTitle.md +324 -0
  294. package/dist/docs/View.md +23 -0
  295. package/dist/docs/Views.md +786 -0
  296. package/dist/docs/WidgetsFormProvider.md +61 -0
  297. package/dist/docs/WixPatternsBMProvider.md +31 -0
  298. package/dist/docs/WixPatternsBaseProvider.md +87 -0
  299. package/dist/docs/WixPatternsEssentialsProvider.md +43 -0
  300. package/dist/docs/WixPatternsGizaProvider.md +37 -0
  301. package/dist/docs/WixPatternsProvider.md +68 -0
  302. package/dist/docs/Working with Cache.md +114 -0
  303. package/dist/docs/arrayFilter.md +226 -0
  304. package/dist/docs/bulkActionModal.md +40 -0
  305. package/dist/docs/createNestedTableLevel.md +24 -0
  306. package/dist/docs/createNestedTableSingleEntityLevels.md +20 -0
  307. package/dist/docs/customFilter.md +182 -0
  308. package/dist/docs/dateRangeFilter.md +55 -0
  309. package/dist/docs/deleteSecondaryAction.md +122 -0
  310. package/dist/docs/idNameArrayFilter.md +206 -0
  311. package/dist/docs/index.json +662 -0
  312. package/dist/docs/operatorFilter.md +183 -0
  313. package/dist/docs/stringFilter.md +204 -0
  314. package/dist/docs/stringsArrayFilter.md +118 -0
  315. package/dist/docs/useAmbassadorCollection.md +45 -0
  316. package/dist/docs/useCollection.md +61 -0
  317. package/dist/docs/useCreateCollection.md +32 -0
  318. package/dist/docs/useCreateNestedOptimisticActions.md +21 -0
  319. package/dist/docs/useEntity.md +44 -0
  320. package/dist/docs/useEntityPage.md +57 -0
  321. package/dist/docs/useEntityPageContext.md +28 -0
  322. package/dist/docs/useFilterCollection.md +163 -0
  323. package/dist/docs/useGridCollection.md +58 -0
  324. package/dist/docs/useGridFolders.md +25 -0
  325. package/dist/docs/useItemsSelectionFilter.md +60 -0
  326. package/dist/docs/useNestedTable.md +66 -0
  327. package/dist/docs/useOptimisticActions.md +1288 -0
  328. package/dist/docs/usePatternsNavigate.md +57 -0
  329. package/dist/docs/usePickerContent.md +61 -0
  330. package/dist/docs/usePickerModal.md +68 -0
  331. package/dist/docs/usePickerStandalone.md +56 -0
  332. package/dist/docs/useSelector.md +181 -0
  333. package/dist/docs/useSettingsPage.md +54 -0
  334. package/dist/docs/useSettingsPageContext.md +28 -0
  335. package/dist/docs/useStaticListFilterCollection.md +194 -0
  336. package/dist/docs/useTableCollection.md +58 -0
  337. package/dist/docs/useTableFolders.md +25 -0
  338. package/dist/docs/useTableGridSwitchCollection.md +58 -0
  339. package/dist/docs/useTableGridSwitchFolders.md +25 -0
  340. package/dist/docs/useWidgetsFormContext.md +19 -0
  341. package/dist/esm/components/CardContainer/CardContainer.st.css.js +2 -2
  342. package/dist/esm/components/Collapse/Collapse.st.css.js +2 -2
  343. package/dist/esm/components/Collapse/Collapse.st.css.js.map +1 -1
  344. package/dist/esm/components/CollectionPageNew/CollectionPage.st.css.js +2 -2
  345. package/dist/esm/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js +2 -2
  346. package/dist/esm/components/CollectionTable/CollectionTable.st.css.js +2 -2
  347. package/dist/esm/components/CollectionTable/CollectionTableWSRTable.js +3 -1
  348. package/dist/esm/components/CollectionTable/CollectionTableWSRTable.js.map +1 -1
  349. package/dist/esm/components/CollectionToolbar/CollectionToolbar.js +3 -2
  350. package/dist/esm/components/CollectionToolbar/CollectionToolbar.js.map +1 -1
  351. package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js +2 -2
  352. package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js.map +1 -1
  353. package/dist/esm/components/CollectionToolbar/CollectionToolbarActionsGroupResponsiveLayout.js +39 -6
  354. package/dist/esm/components/CollectionToolbar/CollectionToolbarActionsGroupResponsiveLayout.js.map +1 -1
  355. package/dist/esm/components/CollectionToolbar/CollectionToolbarActionsToolbarItemsGroup.js +2 -1
  356. package/dist/esm/components/CollectionToolbar/CollectionToolbarActionsToolbarItemsGroup.js.map +1 -1
  357. package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +2 -2
  358. package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css.js.map +1 -1
  359. package/dist/esm/components/CollectionToolbar/ToolbarOverflowMenu.js +110 -0
  360. package/dist/esm/components/CollectionToolbar/ToolbarOverflowMenu.js.map +1 -0
  361. package/dist/esm/components/CollectionToolbar/useToolbarOverflowItems.js +74 -0
  362. package/dist/esm/components/CollectionToolbar/useToolbarOverflowItems.js.map +1 -0
  363. package/dist/esm/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
  364. package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
  365. package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.st.css.js.map +1 -1
  366. package/dist/esm/components/DragHandle/DragHandle.st.css.js +2 -2
  367. package/dist/esm/components/EditableTable/EditableCell.st.css.js +2 -2
  368. package/dist/esm/components/EditableTable/EditableCell.st.css.js.map +1 -1
  369. package/dist/esm/components/EditableTable/cellTypes/boolean/Edit.st.css.js +2 -2
  370. package/dist/esm/components/EditableTable/cellTypes/boolean/View.st.css.js +2 -2
  371. package/dist/esm/components/EditableTable/cellTypes/date/Edit.st.css.js +2 -2
  372. package/dist/esm/components/EditableTable/cellTypes/date/View.st.css.js +2 -2
  373. package/dist/esm/components/EditableTable/cellTypes/email/Edit.js +21 -0
  374. package/dist/esm/components/EditableTable/cellTypes/email/Edit.js.map +1 -0
  375. package/dist/esm/components/EditableTable/cellTypes/email/Edit.st.css +4 -0
  376. package/dist/esm/components/EditableTable/cellTypes/email/Edit.st.css.js +15 -0
  377. package/dist/esm/components/EditableTable/cellTypes/email/Edit.st.css.js.map +1 -0
  378. package/dist/esm/components/EditableTable/cellTypes/email/Edit.uni.driver.js +13 -0
  379. package/dist/esm/components/EditableTable/cellTypes/email/Edit.uni.driver.js.map +1 -0
  380. package/dist/esm/components/EditableTable/cellTypes/email/View.js +5 -0
  381. package/dist/esm/components/EditableTable/cellTypes/email/View.js.map +1 -0
  382. package/dist/esm/components/EditableTable/cellTypes/email/View.st.css +4 -0
  383. package/dist/esm/components/EditableTable/cellTypes/email/View.st.css.js +15 -0
  384. package/dist/esm/components/EditableTable/cellTypes/email/View.st.css.js.map +1 -0
  385. package/dist/esm/components/EditableTable/cellTypes/email/View.uni.driver.js +8 -0
  386. package/dist/esm/components/EditableTable/cellTypes/email/View.uni.driver.js.map +1 -0
  387. package/dist/esm/components/EditableTable/cellTypes/email/index.js +22 -0
  388. package/dist/esm/components/EditableTable/cellTypes/email/index.js.map +1 -0
  389. package/dist/esm/components/EditableTable/cellTypes/index.js +5 -1
  390. package/dist/esm/components/EditableTable/cellTypes/index.js.map +1 -1
  391. package/dist/esm/components/EditableTable/cellTypes/number/Edit.js +2 -5
  392. package/dist/esm/components/EditableTable/cellTypes/number/Edit.js.map +1 -1
  393. package/dist/esm/components/EditableTable/cellTypes/number/Edit.st.css.js +2 -2
  394. package/dist/esm/components/EditableTable/cellTypes/number/View.js +2 -2
  395. package/dist/esm/components/EditableTable/cellTypes/number/View.js.map +1 -1
  396. package/dist/esm/components/EditableTable/cellTypes/number/View.st.css.js +2 -2
  397. package/dist/esm/components/EditableTable/cellTypes/number/View.st.css.js.map +1 -1
  398. package/dist/esm/components/EditableTable/cellTypes/object/Edit.js +39 -0
  399. package/dist/esm/components/EditableTable/cellTypes/object/Edit.js.map +1 -0
  400. package/dist/esm/components/EditableTable/cellTypes/object/Edit.st.css +4 -0
  401. package/dist/esm/components/EditableTable/cellTypes/object/Edit.st.css.js +15 -0
  402. package/dist/esm/components/EditableTable/cellTypes/object/Edit.st.css.js.map +1 -0
  403. package/dist/esm/components/EditableTable/cellTypes/object/Edit.uni.driver.js +13 -0
  404. package/dist/esm/components/EditableTable/cellTypes/object/Edit.uni.driver.js.map +1 -0
  405. package/dist/esm/components/EditableTable/cellTypes/object/View.js +5 -0
  406. package/dist/esm/components/EditableTable/cellTypes/object/View.js.map +1 -0
  407. package/dist/esm/components/EditableTable/cellTypes/object/View.st.css +4 -0
  408. package/dist/esm/components/EditableTable/cellTypes/object/View.st.css.js +15 -0
  409. package/dist/esm/components/EditableTable/cellTypes/object/View.st.css.js.map +1 -0
  410. package/dist/esm/components/EditableTable/cellTypes/object/View.uni.driver.js +8 -0
  411. package/dist/esm/components/EditableTable/cellTypes/object/View.uni.driver.js.map +1 -0
  412. package/dist/esm/components/EditableTable/cellTypes/object/index.js +47 -0
  413. package/dist/esm/components/EditableTable/cellTypes/object/index.js.map +1 -0
  414. package/dist/esm/components/EditableTable/cellTypes/select/Edit.st.css.js +2 -2
  415. package/dist/esm/components/EditableTable/cellTypes/select/Edit.st.css.js.map +1 -1
  416. package/dist/esm/components/EditableTable/cellTypes/select/View.st.css.js +2 -2
  417. package/dist/esm/components/EditableTable/cellTypes/text/Edit.st.css.js +2 -2
  418. package/dist/esm/components/EditableTable/cellTypes/text/View.st.css.js +2 -2
  419. package/dist/esm/components/EditableTable/cellTypes/text/View.st.css.js.map +1 -1
  420. package/dist/esm/components/EditableTable/cellTypes/url/Edit.st.css.js +2 -2
  421. package/dist/esm/components/EditableTable/cellTypes/url/View.st.css.js +2 -2
  422. package/dist/esm/components/EditableTable/cellTypes/url/View.st.css.js.map +1 -1
  423. package/dist/esm/components/EditableTable/useCellFocusAndEditing.js +15 -1
  424. package/dist/esm/components/EditableTable/useCellFocusAndEditing.js.map +1 -1
  425. package/dist/esm/components/EditableTable/useKeyboardNavigation.js +10 -0
  426. package/dist/esm/components/EditableTable/useKeyboardNavigation.js.map +1 -1
  427. package/dist/esm/components/EntityPage/EntityPagePlain.st.css.js +2 -2
  428. package/dist/esm/components/EntityPage/EntityPagePlain.st.css.js.map +1 -1
  429. package/dist/esm/components/Fade/Fade.st.css.js +2 -2
  430. package/dist/esm/components/Fade/Fade.st.css.js.map +1 -1
  431. package/dist/esm/components/Heading/Heading.st.css.js +2 -2
  432. package/dist/esm/components/Heading/Heading.st.css.js.map +1 -1
  433. package/dist/esm/components/ImportButton/ImportStepUpload.st.css.js +2 -2
  434. package/dist/esm/components/InputOverflow/InputOverflow.st.css.js +2 -2
  435. package/dist/esm/components/LoadingRow/LoadingRow.st.css.js +3 -3
  436. package/dist/esm/components/LoadingRow/LoadingRow.st.css.js.map +1 -1
  437. package/dist/esm/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  438. package/dist/esm/components/MaxHeightText/MaxHeightText.st.css.js.map +1 -1
  439. package/dist/esm/components/MaxLines/MaxLines.st.css.js +2 -2
  440. package/dist/esm/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +2 -2
  441. package/dist/esm/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
  442. package/dist/esm/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js.map +1 -1
  443. package/dist/esm/components/NestedTable/NestedTableRow.st.css.js +2 -2
  444. package/dist/esm/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
  445. package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
  446. package/dist/esm/components/PickerContent/PickerContent.st.css.js +2 -2
  447. package/dist/esm/components/PickerContent/PickerContentAdditionalStep.st.css.js +2 -2
  448. package/dist/esm/components/PickerContent/PickerContentAdditionalStep.st.css.js.map +1 -1
  449. package/dist/esm/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  450. package/dist/esm/components/PickerTableListItem/PickerTableListItem.st.css.js.map +1 -1
  451. package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  452. package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
  453. package/dist/esm/components/SkeletonCard/SkeletonCard.st.css.js +2 -2
  454. package/dist/esm/components/SlidingModal/SlidingModal.st.css.js +2 -2
  455. package/dist/esm/components/SlidingModal/SlidingModal.st.css.js.map +1 -1
  456. package/dist/esm/components/TableGridSwitchButton/TableGridSwitchButton.js +2 -12
  457. package/dist/esm/components/TableGridSwitchButton/TableGridSwitchButton.js.map +1 -1
  458. package/dist/esm/components/TableGridSwitchButton/layoutConfig.js +14 -0
  459. package/dist/esm/components/TableGridSwitchButton/layoutConfig.js.map +1 -0
  460. package/dist/esm/components/TabsFilter/TabsFilter.st.css.js +2 -2
  461. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  462. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js.map +1 -1
  463. package/dist/esm/components/ToolbarItem/ToolbarItem.st.css.js +2 -2
  464. package/dist/esm/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  465. package/dist/esm/components/common.st.css.js +2 -2
  466. package/dist/esm/hooks/useStaticListFilterCollection.js +1 -0
  467. package/dist/esm/hooks/useStaticListFilterCollection.js.map +1 -1
  468. package/dist/esm/state/CollectionPage/CollectionPageHeader.st.css.js +2 -2
  469. package/dist/esm/state/CollectionPage/CollectionPageHeader.st.css.js.map +1 -1
  470. package/dist/esm/state/EditableTable/CellInteractionState.js +58 -0
  471. package/dist/esm/state/EditableTable/CellInteractionState.js.map +1 -1
  472. package/dist/esm/state/FormPage/FormPageHeader.st.css.js +2 -2
  473. package/dist/esm/state/TableState.js +2 -0
  474. package/dist/esm/state/TableState.js.map +1 -1
  475. package/dist/esm/state/Toolbar/ToolbarResponsiveState.js +40 -5
  476. package/dist/esm/state/Toolbar/ToolbarResponsiveState.js.map +1 -1
  477. package/dist/esm/state/Toolbar/computeResponsiveTargetState.js +46 -18
  478. package/dist/esm/state/Toolbar/computeResponsiveTargetState.js.map +1 -1
  479. package/dist/esm/state/Toolbar/toolbarResponsiveConstants.js +4 -0
  480. package/dist/esm/state/Toolbar/toolbarResponsiveConstants.js.map +1 -1
  481. package/dist/esm/styles.global.css +1 -1
  482. package/dist/esm/version.js +1 -1
  483. package/dist/types/components/Collapse/Collapse.st.css.d.ts.map +1 -1
  484. package/dist/types/components/CollectionTable/CollectionTable.uni.driver.d.ts +24 -24
  485. package/dist/types/components/CollectionTable/CollectionTableWSRTable.d.ts.map +1 -1
  486. package/dist/types/components/CollectionToolbar/CollectionToolbar.d.ts.map +1 -1
  487. package/dist/types/components/CollectionToolbar/CollectionToolbar.st.css.d.ts.map +1 -1
  488. package/dist/types/components/CollectionToolbar/CollectionToolbar.uni.driver.d.ts +11 -11
  489. package/dist/types/components/CollectionToolbar/CollectionToolbarActionsGroupProps.d.ts +3 -0
  490. package/dist/types/components/CollectionToolbar/CollectionToolbarActionsGroupProps.d.ts.map +1 -1
  491. package/dist/types/components/CollectionToolbar/CollectionToolbarActionsGroupResponsiveLayout.d.ts +5 -1
  492. package/dist/types/components/CollectionToolbar/CollectionToolbarActionsGroupResponsiveLayout.d.ts.map +1 -1
  493. package/dist/types/components/CollectionToolbar/CollectionToolbarActionsToolbarItemsGroup.d.ts.map +1 -1
  494. package/dist/types/components/CollectionToolbar/SearchOrCustomFilter.st.css.d.ts.map +1 -1
  495. package/dist/types/components/CollectionToolbar/ToolbarOverflowMenu.d.ts +24 -0
  496. package/dist/types/components/CollectionToolbar/ToolbarOverflowMenu.d.ts.map +1 -0
  497. package/dist/types/components/CollectionToolbar/useToolbarOverflowItems.d.ts +17 -0
  498. package/dist/types/components/CollectionToolbar/useToolbarOverflowItems.d.ts.map +1 -0
  499. package/dist/types/components/CollectionViewsDropdown/ViewsDropdown.st.css.d.ts.map +1 -1
  500. package/dist/types/components/CtaProps.d.ts +1 -1
  501. package/dist/types/components/CustomFieldModal/CustomFieldModal.uni.driver.d.ts +2 -2
  502. package/dist/types/components/CustomFieldsWidget/CustomFieldsWidget.uni.driver.d.ts +3 -3
  503. package/dist/types/components/DropdownFilter/CollectionDropdownFilter.uni.driver.d.ts +1 -1
  504. package/dist/types/components/EditableTable/EditableCell.st.css.d.ts.map +1 -1
  505. package/dist/types/components/EditableTable/cellTypes/email/Edit.d.ts +4 -0
  506. package/dist/types/components/EditableTable/cellTypes/email/Edit.d.ts.map +1 -0
  507. package/dist/types/components/EditableTable/cellTypes/email/Edit.st.css.d.ts +14 -0
  508. package/dist/types/components/EditableTable/cellTypes/email/Edit.st.css.d.ts.map +1 -0
  509. package/dist/types/components/EditableTable/cellTypes/email/Edit.uni.driver.d.ts +22 -0
  510. package/dist/types/components/EditableTable/cellTypes/email/Edit.uni.driver.d.ts.map +1 -0
  511. package/dist/types/components/EditableTable/cellTypes/email/View.d.ts +4 -0
  512. package/dist/types/components/EditableTable/cellTypes/email/View.d.ts.map +1 -0
  513. package/dist/types/components/EditableTable/cellTypes/email/View.st.css.d.ts +14 -0
  514. package/dist/types/components/EditableTable/cellTypes/email/View.st.css.d.ts.map +1 -0
  515. package/dist/types/components/EditableTable/cellTypes/email/View.uni.driver.d.ts +15 -0
  516. package/dist/types/components/EditableTable/cellTypes/email/View.uni.driver.d.ts.map +1 -0
  517. package/dist/types/components/EditableTable/cellTypes/email/index.d.ts +5 -0
  518. package/dist/types/components/EditableTable/cellTypes/email/index.d.ts.map +1 -0
  519. package/dist/types/components/EditableTable/cellTypes/index.d.ts +3 -1
  520. package/dist/types/components/EditableTable/cellTypes/index.d.ts.map +1 -1
  521. package/dist/types/components/EditableTable/cellTypes/number/Edit.d.ts.map +1 -1
  522. package/dist/types/components/EditableTable/cellTypes/number/View.d.ts.map +1 -1
  523. package/dist/types/components/EditableTable/cellTypes/number/View.st.css.d.ts.map +1 -1
  524. package/dist/types/components/EditableTable/cellTypes/object/Edit.d.ts +4 -0
  525. package/dist/types/components/EditableTable/cellTypes/object/Edit.d.ts.map +1 -0
  526. package/dist/types/components/EditableTable/cellTypes/object/Edit.st.css.d.ts +14 -0
  527. package/dist/types/components/EditableTable/cellTypes/object/Edit.st.css.d.ts.map +1 -0
  528. package/dist/types/components/EditableTable/cellTypes/object/Edit.uni.driver.d.ts +22 -0
  529. package/dist/types/components/EditableTable/cellTypes/object/Edit.uni.driver.d.ts.map +1 -0
  530. package/dist/types/components/EditableTable/cellTypes/object/View.d.ts +4 -0
  531. package/dist/types/components/EditableTable/cellTypes/object/View.d.ts.map +1 -0
  532. package/dist/types/components/EditableTable/cellTypes/object/View.st.css.d.ts +14 -0
  533. package/dist/types/components/EditableTable/cellTypes/object/View.st.css.d.ts.map +1 -0
  534. package/dist/types/components/EditableTable/cellTypes/object/View.uni.driver.d.ts +15 -0
  535. package/dist/types/components/EditableTable/cellTypes/object/View.uni.driver.d.ts.map +1 -0
  536. package/dist/types/components/EditableTable/cellTypes/object/index.d.ts +5 -0
  537. package/dist/types/components/EditableTable/cellTypes/object/index.d.ts.map +1 -0
  538. package/dist/types/components/EditableTable/cellTypes/select/Edit.st.css.d.ts.map +1 -1
  539. package/dist/types/components/EditableTable/cellTypes/text/View.st.css.d.ts.map +1 -1
  540. package/dist/types/components/EditableTable/cellTypes/url/View.st.css.d.ts.map +1 -1
  541. package/dist/types/components/EditableTable/useCellFocusAndEditing.d.ts.map +1 -1
  542. package/dist/types/components/EditableTable/useKeyboardNavigation.d.ts.map +1 -1
  543. package/dist/types/components/EntityPage/EntityPagePlain.st.css.d.ts.map +1 -1
  544. package/dist/types/components/Fade/Fade.st.css.d.ts.map +1 -1
  545. package/dist/types/components/FiltersPanel/FiltersPanel.uni.driver.d.ts +4 -4
  546. package/dist/types/components/Grid/Grid.uni.driver.d.ts +13 -13
  547. package/dist/types/components/Grid/GridFolders.uni.driver.d.ts +38 -38
  548. package/dist/types/components/Grid/GridFoldersSection.uni.driver.d.ts +13 -13
  549. package/dist/types/components/Heading/Heading.st.css.d.ts.map +1 -1
  550. package/dist/types/components/Kanban/Kanban.uni.driver.d.ts +11 -11
  551. package/dist/types/components/LoadingRow/LoadingRow.st.css.d.ts.map +1 -1
  552. package/dist/types/components/MaxHeightText/MaxHeightText.st.css.d.ts.map +1 -1
  553. package/dist/types/components/NestedTable/NestedTable.uni.driver.d.ts +37 -37
  554. package/dist/types/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.d.ts.map +1 -1
  555. package/dist/types/components/PickerContent/PickerContentAdditionalStep.st.css.d.ts.map +1 -1
  556. package/dist/types/components/PickerTableListItem/PickerTableListItem.st.css.d.ts.map +1 -1
  557. package/dist/types/components/ScrollableContent/ScrollableContent.st.css.d.ts.map +1 -1
  558. package/dist/types/components/SlidingModal/SlidingModal.st.css.d.ts.map +1 -1
  559. package/dist/types/components/SummaryBar/SummaryBar.uni.driver.d.ts +1 -1
  560. package/dist/types/components/Table/Table.uni.driver.d.ts +26 -26
  561. package/dist/types/components/TableFolders/TableFolders.uni.driver.d.ts +37 -37
  562. package/dist/types/components/TableGridSwitch/TableGridSwitch.uni.driver.d.ts +40 -40
  563. package/dist/types/components/TableGridSwitchButton/TableGridSwitchButton.d.ts.map +1 -1
  564. package/dist/types/components/TableGridSwitchButton/layoutConfig.d.ts +9 -0
  565. package/dist/types/components/TableGridSwitchButton/layoutConfig.d.ts.map +1 -0
  566. package/dist/types/components/TabsFilter/TabsFilter.uni.driver.d.ts +1 -1
  567. package/dist/types/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.d.ts.map +1 -1
  568. package/dist/types/hooks/useStaticListFilterCollection.d.ts.map +1 -1
  569. package/dist/types/state/CollectionPage/CollectionPageHeader.st.css.d.ts.map +1 -1
  570. package/dist/types/state/EditableTable/CellInteractionState.d.ts +7 -0
  571. package/dist/types/state/EditableTable/CellInteractionState.d.ts.map +1 -1
  572. package/dist/types/state/EditableTable/types.d.ts +2 -0
  573. package/dist/types/state/EditableTable/types.d.ts.map +1 -1
  574. package/dist/types/state/TableState.d.ts +2 -0
  575. package/dist/types/state/TableState.d.ts.map +1 -1
  576. package/dist/types/state/Toolbar/ToolbarResponsiveState.d.ts +3 -0
  577. package/dist/types/state/Toolbar/ToolbarResponsiveState.d.ts.map +1 -1
  578. package/dist/types/state/Toolbar/computeResponsiveTargetState.d.ts +8 -1
  579. package/dist/types/state/Toolbar/computeResponsiveTargetState.d.ts.map +1 -1
  580. package/dist/types/state/Toolbar/toolbarResponsiveConstants.d.ts +2 -0
  581. package/dist/types/state/Toolbar/toolbarResponsiveConstants.d.ts.map +1 -1
  582. package/dist/types/testkit/enzyme.d.ts +194 -194
  583. package/dist/types/testkit/jsdom.d.ts +207 -207
  584. package/dist/types/testkit/playwright.d.ts +194 -194
  585. package/dist/types/testkit/puppeteer.d.ts +205 -205
  586. package/dist/types/version.d.ts +1 -1
  587. package/package.json +10 -7
  588. package/src/components/CardContainer/CardContainer.st.css.ts +2 -2
  589. package/src/components/Collapse/Collapse.st.css.ts +2 -2
  590. package/src/components/CollectionPageNew/CollectionPage.st.css.ts +2 -2
  591. package/src/components/CollectionSectionHeader/CollectionSectionHeader.st.css.ts +2 -2
  592. package/src/components/CollectionTable/CollectionTable.st.css.ts +2 -2
  593. package/src/components/CollectionTable/CollectionTableWSRTable.tsx +3 -0
  594. package/src/components/CollectionToolbar/CollectionToolbar.st.css.ts +2 -2
  595. package/src/components/CollectionToolbar/CollectionToolbar.tsx +11 -4
  596. package/src/components/CollectionToolbar/CollectionToolbarActionsGroupProps.ts +3 -0
  597. package/src/components/CollectionToolbar/CollectionToolbarActionsGroupResponsiveLayout.tsx +73 -16
  598. package/src/components/CollectionToolbar/CollectionToolbarActionsToolbarItemsGroup.tsx +4 -0
  599. package/src/components/CollectionToolbar/SearchOrCustomFilter.st.css.ts +2 -2
  600. package/src/components/CollectionToolbar/ToolbarOverflowMenu.tsx +323 -0
  601. package/src/components/CollectionToolbar/useToolbarOverflowItems.ts +112 -0
  602. package/src/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.ts +2 -2
  603. package/src/components/CollectionViewsDropdown/ViewsDropdown.st.css.ts +2 -2
  604. package/src/components/CtaProps.ts +1 -1
  605. package/src/components/DragHandle/DragHandle.st.css.ts +2 -2
  606. package/src/components/EditableTable/EditableCell.st.css.ts +2 -2
  607. package/src/components/EditableTable/cellTypes/boolean/Edit.st.css.ts +2 -2
  608. package/src/components/EditableTable/cellTypes/boolean/View.st.css.ts +2 -2
  609. package/src/components/EditableTable/cellTypes/date/Edit.st.css.ts +2 -2
  610. package/src/components/EditableTable/cellTypes/date/View.st.css.ts +2 -2
  611. package/src/components/EditableTable/cellTypes/email/Edit.st.css +4 -0
  612. package/src/components/EditableTable/cellTypes/email/Edit.st.css.ts +25 -0
  613. package/src/components/EditableTable/cellTypes/email/Edit.tsx +46 -0
  614. package/src/components/EditableTable/cellTypes/email/Edit.uni.driver.ts +23 -0
  615. package/src/components/EditableTable/cellTypes/email/View.st.css +4 -0
  616. package/src/components/EditableTable/cellTypes/email/View.st.css.ts +25 -0
  617. package/src/components/EditableTable/cellTypes/email/View.tsx +8 -0
  618. package/src/components/EditableTable/cellTypes/email/View.uni.driver.ts +9 -0
  619. package/src/components/EditableTable/cellTypes/email/index.ts +23 -0
  620. package/src/components/EditableTable/cellTypes/index.ts +6 -0
  621. package/src/components/EditableTable/cellTypes/number/Edit.st.css.ts +2 -2
  622. package/src/components/EditableTable/cellTypes/number/Edit.tsx +3 -8
  623. package/src/components/EditableTable/cellTypes/number/View.st.css.ts +2 -2
  624. package/src/components/EditableTable/cellTypes/number/View.tsx +2 -4
  625. package/src/components/EditableTable/cellTypes/object/Edit.st.css +4 -0
  626. package/src/components/EditableTable/cellTypes/object/Edit.st.css.ts +25 -0
  627. package/src/components/EditableTable/cellTypes/object/Edit.tsx +72 -0
  628. package/src/components/EditableTable/cellTypes/object/Edit.uni.driver.ts +22 -0
  629. package/src/components/EditableTable/cellTypes/object/View.st.css +4 -0
  630. package/src/components/EditableTable/cellTypes/object/View.st.css.ts +25 -0
  631. package/src/components/EditableTable/cellTypes/object/View.tsx +12 -0
  632. package/src/components/EditableTable/cellTypes/object/View.uni.driver.ts +9 -0
  633. package/src/components/EditableTable/cellTypes/object/index.ts +49 -0
  634. package/src/components/EditableTable/cellTypes/select/Edit.st.css.ts +2 -2
  635. package/src/components/EditableTable/cellTypes/select/View.st.css.ts +2 -2
  636. package/src/components/EditableTable/cellTypes/text/Edit.st.css.ts +2 -2
  637. package/src/components/EditableTable/cellTypes/text/View.st.css.ts +2 -2
  638. package/src/components/EditableTable/cellTypes/url/Edit.st.css.ts +2 -2
  639. package/src/components/EditableTable/cellTypes/url/View.st.css.ts +2 -2
  640. package/src/components/EditableTable/useCellFocusAndEditing.ts +16 -1
  641. package/src/components/EditableTable/useKeyboardNavigation.ts +11 -0
  642. package/src/components/EntityPage/EntityPagePlain.st.css.ts +2 -2
  643. package/src/components/Fade/Fade.st.css.ts +2 -2
  644. package/src/components/Heading/Heading.st.css.ts +2 -2
  645. package/src/components/ImportButton/ImportStepUpload.st.css.ts +2 -2
  646. package/src/components/InputOverflow/InputOverflow.st.css.ts +2 -2
  647. package/src/components/LoadingRow/LoadingRow.st.css.ts +3 -3
  648. package/src/components/MaxHeightText/MaxHeightText.st.css.ts +2 -2
  649. package/src/components/MaxLines/MaxLines.st.css.ts +2 -2
  650. package/src/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.ts +2 -2
  651. package/src/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.ts +2 -2
  652. package/src/components/NestedTable/NestedTableRow.st.css.ts +2 -2
  653. package/src/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.ts +2 -2
  654. package/src/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.ts +2 -2
  655. package/src/components/PickerContent/PickerContent.st.css.ts +2 -2
  656. package/src/components/PickerContent/PickerContentAdditionalStep.st.css.ts +2 -2
  657. package/src/components/PickerTableListItem/PickerTableListItem.st.css.ts +2 -2
  658. package/src/components/ScrollableContent/ScrollableContent.st.css.ts +2 -2
  659. package/src/components/SkeletonCard/SkeletonCard.st.css.ts +2 -2
  660. package/src/components/SlidingModal/SlidingModal.st.css.ts +2 -2
  661. package/src/components/TableGridSwitchButton/TableGridSwitchButton.tsx +2 -21
  662. package/src/components/TableGridSwitchButton/layoutConfig.tsx +20 -0
  663. package/src/components/TabsFilter/TabsFilter.st.css.ts +2 -2
  664. package/src/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.ts +2 -2
  665. package/src/components/ToolbarItem/ToolbarItem.st.css.ts +2 -2
  666. package/src/components/ToolbarItemBox/ToolbarItemBox.st.css.ts +2 -2
  667. package/src/components/common.st.css.ts +2 -2
  668. package/src/hooks/useStaticListFilterCollection.ts +1 -0
  669. package/src/state/CollectionPage/CollectionPageHeader.st.css.ts +2 -2
  670. package/src/state/EditableTable/CellInteractionState.ts +63 -0
  671. package/src/state/EditableTable/types.ts +2 -0
  672. package/src/state/FormPage/FormPageHeader.st.css.ts +2 -2
  673. package/src/state/TableState.ts +3 -0
  674. package/src/state/Toolbar/ToolbarResponsiveState.ts +64 -10
  675. package/src/state/Toolbar/computeResponsiveTargetState.ts +68 -18
  676. package/src/state/Toolbar/toolbarResponsiveConstants.ts +4 -0
  677. package/src/styles.global.css +1 -1
  678. package/src/version.ts +1 -1
@@ -0,0 +1,916 @@
1
+ # CustomColumns
2
+
3
+ **Category:** Features/Display/Custom Columns
4
+
5
+ ## Design
6
+
7
+ ### Description
8
+
9
+ Allows users to control the display behavior of [`Table`](./?path=/story/base-components-collections-table-table--table) columns. For more information, see [Custom Columns Overview](./?path=/story/features-display-custom-columns--overview).
10
+
11
+ ```tsx
12
+ import { CustomColumns } from '@wix/patterns';
13
+ ```
14
+
15
+ ### Basic
16
+
17
+ A basic table with the custom columns feature.
18
+
19
+ ```tsx
20
+ import { Avatar } from '@wix/design-system';
21
+ import React from 'react';
22
+ import { CollectionPage } from '@wix/patterns/page';
23
+ import {
24
+ CustomColumns,
25
+ OffsetQuery,
26
+ Table,
27
+ useTableCollection,
28
+ } from '@wix/patterns';
29
+ import { contacts } from '@wix/crm';
30
+
31
+ function VisibleColumns() {
32
+
33
+ const state = useTableCollection<contacts.Contact>({
34
+ queryName: 'contacts-VisibleColumns',
35
+ itemName: (item) => `${item.info?.name?.first} ${item.info?.name?.last}`,
36
+ fetchData: (query: OffsetQuery) => {
37
+ const { limit, offset, search, filters } = query;
38
+
39
+ let queryBuilder = contacts.queryContacts().limit(limit).skip(offset);
40
+
41
+ if (search) {
42
+ queryBuilder = queryBuilder.startsWith('info.name.first', search);
43
+ }
44
+
45
+ return queryBuilder.find().then(({ items = [], totalCount: total }) => ({
46
+ items,
47
+ total,
48
+ }));
49
+ },
50
+ fetchErrorMessage: () => 'Error fetching contacts',
51
+ filters: {},
52
+ });
53
+
54
+ return (
55
+ <CollectionPage height="400px">
56
+ <CollectionPage.Header title={{ text: 'Contacts' }} />
57
+ <CollectionPage.Content>
58
+ <Table
59
+ state={state}
60
+ columns={[
61
+ {
62
+ id: 'avatar',
63
+ name: 'Avatar',
64
+ title: '',
65
+ width: '50px',
66
+ render: (contact) => (
67
+ <Avatar
68
+ name={`${contact.info?.name?.first} ${contact.info?.name?.last}`}
69
+ imgProps={{ src: contact.info?.picture?.image }}
70
+ />
71
+ ),
72
+ },
73
+ {
74
+ id: 'name',
75
+ title: 'Name',
76
+ width: '250px',
77
+ render: (contact) =>
78
+ `${contact.info?.name?.first} ${contact.info?.name?.last}`,
79
+ },
80
+ {
81
+ id: 'level',
82
+ title: 'Level',
83
+ render: (contact) => contact.info?.jobTitle,
84
+ },
85
+ {
86
+ id: 'lastActivity',
87
+ title: 'Last Activity',
88
+ render: (contact) =>
89
+ contact.lastActivity?.activityDate?.toLocaleString(),
90
+ },
91
+ ]}
92
+ customColumns={<CustomColumns />}
93
+ />
94
+ </CollectionPage.Content>
95
+ </CollectionPage>
96
+ );
97
+ }
98
+ ```
99
+
100
+ ---
101
+
102
+ ### Hide specific columns by default
103
+
104
+ Customize a column to be hidden by default.
105
+
106
+ Set the column's `defaultHidden` property to `true`.
107
+
108
+ **Note:** By default, new columns added to an existing table are visible to users. Set `defaultHidden` to `true` to hide them.
109
+
110
+ ```tsx
111
+ import { Avatar } from '@wix/design-system';
112
+ import React from 'react';
113
+ import { CollectionPage } from '@wix/patterns/page';
114
+ import {
115
+ CustomColumns,
116
+ OffsetQuery,
117
+ Table,
118
+ useTableCollection,
119
+ } from '@wix/patterns';
120
+ import { contacts } from '@wix/crm';
121
+
122
+ function DefaultColumnsSelection() {
123
+
124
+ const state = useTableCollection<contacts.Contact>({
125
+ queryName: 'contacts-DefaultColumnsSelection',
126
+ itemName: (item) => `${item.info?.name?.first} ${item.info?.name?.last}`,
127
+ fetchData: (query: OffsetQuery) => {
128
+ const { limit, offset, search, filters } = query;
129
+
130
+ let queryBuilder = contacts.queryContacts().limit(limit).skip(offset);
131
+
132
+ if (search) {
133
+ queryBuilder = queryBuilder.startsWith('info.name.first', search);
134
+ }
135
+
136
+ return queryBuilder.find().then(({ items = [], totalCount: total }) => ({
137
+ items,
138
+ total,
139
+ }));
140
+ },
141
+ fetchErrorMessage: () => 'Error fetching contacts',
142
+ filters: {},
143
+ });
144
+
145
+ return (
146
+ <CollectionPage height="400px">
147
+ <CollectionPage.Header title={{ text: 'Contacts' }} />
148
+ <CollectionPage.Content>
149
+ <Table
150
+ state={state}
151
+ columns={[
152
+ {
153
+ id: 'avatar',
154
+ name: 'Avatar',
155
+ title: '',
156
+ width: '50px',
157
+ render: (contact) => (
158
+ <Avatar
159
+ name={`${contact.info?.name?.first} ${contact.info?.name?.last}`}
160
+ imgProps={{ src: contact.info?.picture?.image }}
161
+ />
162
+ ),
163
+ },
164
+ {
165
+ id: 'name',
166
+ title: 'Name',
167
+ width: '250px',
168
+ render: (contact) =>
169
+ `${contact.info?.name?.first} ${contact.info?.name?.last}`,
170
+ },
171
+ {
172
+ id: 'level',
173
+ title: 'Level',
174
+ render: (contact) => contact.info?.jobTitle,
175
+ },
176
+ {
177
+ id: 'lastActivity',
178
+ title: 'Last Activity',
179
+ render: (contact) =>
180
+ contact.lastActivity?.activityDate?.toLocaleString(),
181
+ defaultHidden: true,
182
+ },
183
+ ]}
184
+ customColumns={<CustomColumns />}
185
+ />
186
+ </CollectionPage.Content>
187
+ </CollectionPage>
188
+ );
189
+ }
190
+ ```
191
+
192
+ ---
193
+
194
+ ### Lock columns
195
+
196
+ Locking columns restricts users from editing the specified columns and disables the hide and show functionality (checkbox).
197
+
198
+ ```tsx
199
+ import { Avatar } from '@wix/design-system';
200
+ import React from 'react';
201
+ import { CollectionPage } from '@wix/patterns/page';
202
+ import {
203
+ CustomColumns,
204
+ OffsetQuery,
205
+ Table,
206
+ useTableCollection,
207
+ } from '@wix/patterns';
208
+ import { contacts } from '@wix/crm';
209
+
210
+ function DisabledCustomColumns() {
211
+
212
+ const state = useTableCollection<contacts.Contact>({
213
+ queryName: 'contacts-DisabledCustomColumns',
214
+ itemName: (item) => `${item.info?.name?.first} ${item.info?.name?.last}`,
215
+ fetchData: (query: OffsetQuery) => {
216
+ const { limit, offset, search, filters } = query;
217
+
218
+ let queryBuilder = contacts.queryContacts().limit(limit).skip(offset);
219
+
220
+ if (search) {
221
+ queryBuilder = queryBuilder.startsWith('info.name.first', search);
222
+ }
223
+
224
+ return queryBuilder.find().then(({ items = [], totalCount: total }) => ({
225
+ items,
226
+ total,
227
+ }));
228
+ },
229
+ fetchErrorMessage: () => 'Error fetching contacts',
230
+ filters: {},
231
+ });
232
+
233
+ return (
234
+ <CollectionPage height="400px">
235
+ <CollectionPage.Header title={{ text: 'Contacts' }} />
236
+ <CollectionPage.Content>
237
+ <Table
238
+ state={state}
239
+ columns={[
240
+ {
241
+ id: 'avatar',
242
+ name: 'Avatar',
243
+ title: '',
244
+ width: '50px',
245
+ hideable: false,
246
+ render: (contact) => (
247
+ <Avatar
248
+ name={`${contact.info?.name?.first} ${contact.info?.name?.last}`}
249
+ imgProps={{ src: contact.info?.picture?.image }}
250
+ />
251
+ ),
252
+ },
253
+ {
254
+ id: 'name',
255
+ title: 'Name',
256
+ width: '250px',
257
+ render: (contact) =>
258
+ `${contact.info?.name?.first} ${contact.info?.name?.last}`,
259
+ },
260
+ {
261
+ id: 'level',
262
+ title: 'Level',
263
+ render: (contact) => contact.info?.jobTitle,
264
+ },
265
+ {
266
+ id: 'lastActivity',
267
+ title: 'Last Activity',
268
+ hideable: false,
269
+ render: (contact) =>
270
+ contact.lastActivity?.activityDate?.toLocaleString(),
271
+ },
272
+ ]}
273
+ customColumns={<CustomColumns />}
274
+ />
275
+ </CollectionPage.Content>
276
+ </CollectionPage>
277
+ );
278
+ }
279
+ ```
280
+
281
+ ---
282
+
283
+ ### Exclude columns
284
+
285
+ Excluding columns restricts users from editing the specified columns and hides them from the custom column selection panel.
286
+
287
+ ```tsx
288
+ import { Avatar } from '@wix/design-system';
289
+ import React from 'react';
290
+ import { CollectionPage } from '@wix/patterns/page';
291
+ import {
292
+ CustomColumns,
293
+ OffsetQuery,
294
+ Table,
295
+ useTableCollection,
296
+ } from '@wix/patterns';
297
+ import { contacts } from '@wix/crm';
298
+
299
+ function HiddenColumns() {
300
+
301
+ const state = useTableCollection<contacts.Contact>({
302
+ queryName: 'contacts-HiddenColumns',
303
+ itemName: (item) => `${item.info?.name?.first} ${item.info?.name?.last}`,
304
+ fetchData: (query: OffsetQuery) => {
305
+ const { limit, offset, search, filters } = query;
306
+
307
+ let queryBuilder = contacts.queryContacts().limit(limit).skip(offset);
308
+
309
+ if (search) {
310
+ queryBuilder = queryBuilder.startsWith('info.name.first', search);
311
+ }
312
+
313
+ return queryBuilder.find().then(({ items = [], totalCount: total }) => ({
314
+ items,
315
+ total,
316
+ }));
317
+ },
318
+ fetchErrorMessage: () => 'Error fetching contacts',
319
+ filters: {},
320
+ });
321
+
322
+ return (
323
+ <CollectionPage height="400px">
324
+ <CollectionPage.Header title={{ text: 'Contacts' }} />
325
+ <CollectionPage.Content>
326
+ <Table
327
+ state={state}
328
+ columns={[
329
+ {
330
+ id: 'avatar',
331
+ name: 'Avatar',
332
+ hiddenFromCustomColumnsSelection: true,
333
+ title: '',
334
+ width: '50px',
335
+ render: (contact) => (
336
+ <Avatar
337
+ name={`${contact.info?.name?.first} ${contact.info?.name?.last}`}
338
+ imgProps={{ src: contact.info?.picture?.image }}
339
+ />
340
+ ),
341
+ },
342
+ {
343
+ id: 'name',
344
+ title: 'Name',
345
+ width: '250px',
346
+ render: (contact) =>
347
+ `${contact.info?.name?.first} ${contact.info?.name?.last}`,
348
+ },
349
+ {
350
+ id: 'level',
351
+ title: 'Level',
352
+ render: (contact) => contact.info?.jobTitle,
353
+ },
354
+ {
355
+ id: 'lastActivity',
356
+ title: 'Last Activity',
357
+ render: (contact) =>
358
+ contact.lastActivity?.activityDate?.toLocaleString(),
359
+ },
360
+ ]}
361
+ customColumns={<CustomColumns />}
362
+ />
363
+ </CollectionPage.Content>
364
+ </CollectionPage>
365
+ );
366
+ }
367
+ ```
368
+
369
+ ---
370
+
371
+ ### Add a tooltip
372
+
373
+ Add a tooltip next to the column's name. The tooltip allows you to add more information about the column.
374
+
375
+ ```tsx
376
+ import { Avatar } from '@wix/design-system';
377
+ import React from 'react';
378
+ import { CollectionPage } from '@wix/patterns/page';
379
+ import {
380
+ Table,
381
+ useTableCollection,
382
+ CustomColumns,
383
+ OffsetQuery,
384
+ } from '@wix/patterns';
385
+ import { contacts } from '@wix/crm';
386
+
387
+ function InfoTooltip() {
388
+
389
+ const state = useTableCollection<contacts.Contact>({
390
+ queryName: 'contacts-InfoTooltip',
391
+ itemName: (item) => `${item.info?.name?.first} ${item.info?.name?.last}`,
392
+ fetchData: (query: OffsetQuery) => {
393
+ const { limit, offset, search, filters } = query;
394
+
395
+ let queryBuilder = contacts.queryContacts().limit(limit).skip(offset);
396
+
397
+ if (search) {
398
+ queryBuilder = queryBuilder.startsWith('info.name.first', search);
399
+ }
400
+
401
+ return queryBuilder.find().then(({ items = [], totalCount: total }) => ({
402
+ items,
403
+ total,
404
+ }));
405
+ },
406
+ fetchErrorMessage: ({ err }) => String(err),
407
+ filters: {},
408
+ });
409
+
410
+ return (
411
+ <CollectionPage height="400px">
412
+ <CollectionPage.Header title={{ text: 'Contacts' }} />
413
+ <CollectionPage.Content>
414
+ <Table
415
+ state={state}
416
+ columns={[
417
+ {
418
+ id: 'avatar',
419
+ name: 'Avatar',
420
+ title: '',
421
+ width: '50px',
422
+ hideable: false,
423
+ infoTooltipProps: {
424
+ panelContent: 'Avatar info',
425
+ },
426
+ render: (contact) => (
427
+ <Avatar
428
+ name={`${contact.info?.name?.first} ${contact.info?.name?.last}`}
429
+ imgProps={{ src: contact.info?.picture?.image }}
430
+ />
431
+ ),
432
+ },
433
+ {
434
+ id: 'name',
435
+ title: 'Name',
436
+ width: '250px',
437
+ render: (contact) =>
438
+ `${contact.info?.name?.first} ${contact.info?.name?.last}`,
439
+ },
440
+ {
441
+ id: 'level',
442
+ title: 'Level',
443
+ render: (contact) => contact.info?.jobTitle,
444
+ infoTooltipProps: {
445
+ content: 'Level info',
446
+ },
447
+ },
448
+ {
449
+ id: 'lastActivity',
450
+ title: 'Last Activity',
451
+ render: (contact) =>
452
+ contact.lastActivity?.activityDate?.toLocaleString(),
453
+ },
454
+ ]}
455
+ customColumns={<CustomColumns />}
456
+ />
457
+ </CollectionPage.Content>
458
+ </CollectionPage>
459
+ );
460
+ }
461
+ ```
462
+
463
+ ---
464
+
465
+ ### Reorder columns
466
+
467
+ Drag and drop columns in the side panel to reorder the columns.
468
+
469
+ When adding new columns to an existing table component, the custom column order is preserved, and new columns are appended to the right of the existing columns. However, if the columns are still in their original order, the updated table overrides it.
470
+
471
+ ```tsx
472
+ import { Avatar } from '@wix/design-system';
473
+ import React from 'react';
474
+ import { CollectionPage } from '@wix/patterns/page';
475
+ import {
476
+ Table,
477
+ useTableCollection,
478
+ CustomColumns,
479
+ Views,
480
+ OffsetQuery,
481
+ } from '@wix/patterns';
482
+ import { contacts } from '@wix/crm';
483
+
484
+ function ReorderColumns() {
485
+
486
+ const state = useTableCollection<contacts.Contact>({
487
+ queryName: 'contacts-ReorderColumns',
488
+ itemName: (item) => `${item.info?.name?.first} ${item.info?.name?.last}`,
489
+ fetchData: (query: OffsetQuery) => {
490
+ const { limit, offset, search, filters } = query;
491
+
492
+ let queryBuilder = contacts.queryContacts().limit(limit).skip(offset);
493
+
494
+ if (search) {
495
+ queryBuilder = queryBuilder.startsWith('info.name.first', search);
496
+ }
497
+
498
+ return queryBuilder.find().then(({ items = [], totalCount: total }) => ({
499
+ items,
500
+ total,
501
+ }));
502
+ },
503
+ fetchErrorMessage: ({ err }) => String(err),
504
+ filters: {},
505
+ });
506
+
507
+ return (
508
+ <CollectionPage height="400px">
509
+ <CollectionPage.Header title={{ text: 'Contacts' }} />
510
+ <CollectionPage.Content>
511
+ <Table
512
+ state={state}
513
+ columns={[
514
+ {
515
+ id: 'avatar',
516
+ name: 'Avatar',
517
+ title: '',
518
+ width: '50px',
519
+ hideable: false,
520
+ infoTooltipProps: {
521
+ panelContent: 'Avatar info',
522
+ },
523
+ render: (contact) => (
524
+ <Avatar
525
+ name={`${contact.info?.name?.first} ${contact.info?.name?.last}`}
526
+ imgProps={{ src: contact.info?.picture?.image }}
527
+ />
528
+ ),
529
+ },
530
+ {
531
+ id: 'name',
532
+ title: 'Name',
533
+ width: '250px',
534
+ render: (contact) =>
535
+ `${contact.info?.name?.first} ${contact.info?.name?.last}`,
536
+ },
537
+ {
538
+ id: 'level',
539
+ title: 'Level',
540
+ render: (contact) => contact.info?.jobTitle,
541
+ },
542
+ {
543
+ id: 'lastActivity',
544
+ title: 'Last Activity',
545
+ render: (contact) =>
546
+ contact.lastActivity?.activityDate?.toLocaleString(),
547
+ },
548
+ ]}
549
+ views={<Views />}
550
+ customColumns={<CustomColumns />}
551
+ />
552
+ </CollectionPage.Content>
553
+ </CollectionPage>
554
+ );
555
+ }
556
+ ```
557
+
558
+ ---
559
+
560
+ ### Freeze column reorder
561
+
562
+ To freeze columns and prevent users from reordering them, use the `reorderDisabled` prop. This disables the drag and drop functionality for the specified columns. If a table has a horizontal scroll feature, the frozen columns are sticky.
563
+
564
+ >**Note**: You can only freeze columns in a table starting from the first column, and in consecutive order.
565
+
566
+ ```tsx
567
+ import { Avatar } from '@wix/design-system';
568
+ import React from 'react';
569
+ import { CollectionPage } from '@wix/patterns/page';
570
+ import {
571
+ CustomColumns,
572
+ OffsetQuery,
573
+ Table,
574
+ useTableCollection,
575
+ Views,
576
+ } from '@wix/patterns';
577
+ import { contacts } from '@wix/crm';
578
+
579
+ function ReorderDisabled() {
580
+
581
+ const state = useTableCollection<contacts.Contact>({
582
+ queryName: 'contacts-ReorderDisabled',
583
+ itemName: (item) => `${item.info?.name?.first} ${item.info?.name?.last}`,
584
+ fetchData: (query: OffsetQuery) => {
585
+ const { limit, offset, search, filters } = query;
586
+
587
+ let queryBuilder = contacts.queryContacts().limit(limit).skip(offset);
588
+
589
+ if (search) {
590
+ queryBuilder = queryBuilder.startsWith('info.name.first', search);
591
+ }
592
+
593
+ return queryBuilder.find().then(({ items = [], totalCount: total }) => ({
594
+ items,
595
+ total,
596
+ }));
597
+ },
598
+ fetchErrorMessage: ({ err }) => String(err),
599
+ filters: {},
600
+ });
601
+
602
+ return (
603
+ <CollectionPage height="400px">
604
+ <CollectionPage.Header title={{ text: 'Contacts' }} />
605
+ <CollectionPage.Content>
606
+ <Table
607
+ state={state}
608
+ horizontalScroll
609
+ columns={[
610
+ {
611
+ id: 'avatar',
612
+ name: 'Avatar',
613
+ title: '',
614
+ width: '50px',
615
+ hideable: false,
616
+ reorderDisabled: true,
617
+ infoTooltipProps: {
618
+ panelContent: 'Avatar info',
619
+ },
620
+ render: (contact) => (
621
+ <Avatar
622
+ name={`${contact.info?.name?.first} ${contact.info?.name?.last}`}
623
+ imgProps={{ src: contact.info?.picture?.image }}
624
+ />
625
+ ),
626
+ },
627
+ {
628
+ id: 'name',
629
+ title: 'Name',
630
+ width: '150px',
631
+ reorderDisabled: true,
632
+ render: (contact) =>
633
+ `${contact.info?.name?.first} ${contact.info?.name?.last}`,
634
+ },
635
+ {
636
+ id: 'level',
637
+ title: 'Level',
638
+ width: '80px',
639
+ render: (contact) => contact.info?.jobTitle,
640
+ },
641
+ {
642
+ id: 'lastActivity',
643
+ title: 'Last Activity',
644
+ width: '80px',
645
+ render: (contact) =>
646
+ contact.lastActivity?.activityDate?.toLocaleString(),
647
+ },
648
+ ...new Array(3).fill(null).flatMap((_, i) => [
649
+ {
650
+ id: `name-${i}`,
651
+ title: `Name ${i}`,
652
+ width: '150px',
653
+ render: (contact: contacts.Contact) =>
654
+ `${contact.info?.name?.first} ${contact.info?.name?.last}`,
655
+ },
656
+ {
657
+ id: `level-${i}`,
658
+ title: `Level ${i}`,
659
+ render: (contact: contacts.Contact) => contact.info?.jobTitle,
660
+ width: '80px',
661
+ },
662
+ {
663
+ id: `lastActivity-${i}`,
664
+ title: 'Last Activity',
665
+ render: (contact: contacts.Contact) =>
666
+ contact.lastActivity?.activityDate?.toLocaleString(),
667
+ width: '80px',
668
+ },
669
+ ]),
670
+ ]}
671
+ views={<Views />}
672
+ customColumns={<CustomColumns />}
673
+ />
674
+ </CollectionPage.Content>
675
+ </CollectionPage>
676
+ );
677
+ }
678
+ ```
679
+
680
+ ---
681
+
682
+ ### Load only selected columns
683
+
684
+ To achieve greater optimization, consider utilizing the `refreshOnColumnsChange` flag with `true` value and retrieving the `columns` array from the query object. This approach enables you to retrieve the necessary fields from your backend.
685
+
686
+ ```tsx
687
+ import { Avatar } from '@wix/design-system';
688
+ import React from 'react';
689
+ import { CollectionPage } from '@wix/patterns/page';
690
+ import {
691
+ Table,
692
+ useTableCollection,
693
+ Views,
694
+ CustomColumns,
695
+ OffsetQuery,
696
+ } from '@wix/patterns';
697
+ import { contacts } from '@wix/crm';
698
+
699
+ function LoadOnlySelectedColumns() {
700
+
701
+ const state = useTableCollection<contacts.Contact>({
702
+ queryName: 'contacts-LoadOnlySelectedColumns',
703
+ refreshOnColumnsChange: true,
704
+ itemName: (item) => `${item.info?.name?.first} ${item.info?.name?.last}`,
705
+ fetchData: (query: OffsetQuery) => {
706
+ const { limit, offset, search, filters } = query;
707
+
708
+ let queryBuilder = contacts.queryContacts().limit(limit).skip(offset);
709
+
710
+ if (search) {
711
+ queryBuilder = queryBuilder.startsWith('info.name.first', search);
712
+ }
713
+
714
+ return queryBuilder.find().then(({ items = [], totalCount: total }) => ({
715
+ items,
716
+ total,
717
+ }));
718
+ },
719
+ fetchErrorMessage: ({ err }) => String(err),
720
+ filters: {},
721
+ });
722
+
723
+ return (
724
+ <CollectionPage height="400px">
725
+ <CollectionPage.Header title={{ text: 'Contacts' }} />
726
+ <CollectionPage.Content>
727
+ <Table
728
+ state={state}
729
+ columns={[
730
+ {
731
+ id: 'avatar',
732
+ name: 'Avatar',
733
+ title: '',
734
+ width: '50px',
735
+ hideable: false,
736
+ infoTooltipProps: {
737
+ panelContent: 'Avatar info',
738
+ },
739
+ render: (contact) => (
740
+ <Avatar
741
+ name={`${contact.info?.name?.first} ${contact.info?.name?.last}`}
742
+ imgProps={{ src: contact.info?.picture?.image }}
743
+ />
744
+ ),
745
+ },
746
+ {
747
+ id: 'name',
748
+ title: 'Name',
749
+ width: '250px',
750
+ render: (contact) =>
751
+ `${contact.info?.name?.first} ${contact.info?.name?.last}`,
752
+ },
753
+ {
754
+ id: 'level',
755
+ title: 'Level',
756
+ render: (contact) => contact.info?.jobTitle,
757
+ },
758
+ {
759
+ id: 'lastActivity',
760
+ title: 'Last Activity',
761
+ render: (contact) =>
762
+ contact.lastActivity?.activityDate?.toLocaleString(),
763
+ },
764
+ ]}
765
+ views={<Views />}
766
+ customColumns={<CustomColumns />}
767
+ />
768
+ </CollectionPage.Content>
769
+ </CollectionPage>
770
+ );
771
+ }
772
+ ```
773
+
774
+ ---
775
+
776
+ ### Get visible columns
777
+
778
+ Retrieve the visible columns from the custom columns feature.
779
+
780
+ ```tsx
781
+ import { Avatar } from '@wix/design-system';
782
+ import React from 'react';
783
+ import { CollectionPage } from '@wix/patterns/page';
784
+ import {
785
+ CustomColumns,
786
+ OffsetQuery,
787
+ Table,
788
+ useTableCollection,
789
+ runInAction,
790
+ } from '@wix/patterns';
791
+ import { contacts } from '@wix/crm';
792
+ import { PrimaryActions } from '../../../src';
793
+
794
+ function VisibleColumns() {
795
+
796
+ const state = useTableCollection<contacts.Contact>({
797
+ queryName: 'contacts-GetVisibleColumns',
798
+ itemName: (item) => `${item.info?.name?.first} ${item.info?.name?.last}`,
799
+ fetchData: (query: OffsetQuery) => {
800
+ const { limit, offset, search, filters } = query;
801
+
802
+ let queryBuilder = contacts.queryContacts().limit(limit).skip(offset);
803
+
804
+ if (search) {
805
+ queryBuilder = queryBuilder.startsWith('info.name.first', search);
806
+ }
807
+
808
+ return queryBuilder.find().then(({ items = [], totalCount: total }) => ({
809
+ items,
810
+ total,
811
+ }));
812
+ },
813
+ fetchErrorMessage: () => 'Error fetching contacts',
814
+ filters: {},
815
+ });
816
+
817
+ return (
818
+ <CollectionPage height="400px">
819
+ <CollectionPage.Header
820
+ title={{ text: 'Contacts' }}
821
+ primaryAction={
822
+ <PrimaryActions
823
+ label="Settings"
824
+ onClick={() => {
825
+ runInAction(() => {
826
+ console.log(state.visibleColumns);
827
+ });
828
+ }}
829
+ />
830
+ }
831
+ />
832
+ <CollectionPage.Content>
833
+ <Table
834
+ state={state}
835
+ columns={[
836
+ {
837
+ id: 'avatar',
838
+ name: 'Avatar',
839
+ title: '',
840
+ width: '50px',
841
+ render: (contact) => (
842
+ <Avatar
843
+ name={`${contact.info?.name?.first} ${contact.info?.name?.last}`}
844
+ imgProps={{ src: contact.info?.picture?.image }}
845
+ />
846
+ ),
847
+ },
848
+ {
849
+ id: 'name',
850
+ title: 'Name',
851
+ width: '250px',
852
+ render: (contact) =>
853
+ `${contact.info?.name?.first} ${contact.info?.name?.last}`,
854
+ },
855
+ {
856
+ id: 'level',
857
+ title: 'Level',
858
+ render: (contact) => contact.info?.jobTitle,
859
+ },
860
+ {
861
+ id: 'lastActivity',
862
+ title: 'Last Activity',
863
+ render: (contact) =>
864
+ contact.lastActivity?.activityDate?.toLocaleString(),
865
+ },
866
+ ]}
867
+ customColumns={<CustomColumns />}
868
+ />
869
+ </CollectionPage.Content>
870
+ </CollectionPage>
871
+ );
872
+ }
873
+ ```
874
+
875
+ ## API
876
+
877
+ ### API
878
+
879
+ Columns are defined on the `Table` component, and their properties affect the behavior of the custom columns feature. For more information, see the [column properties](./?path=/story/features-display-custom-columns--overview#column-properties) section of the Custom Columns Overview.
880
+
881
+ ### Props
882
+
883
+ | Prop | Type | Required | Default | Description |
884
+ |------|------|----------|---------|-------------|
885
+ | `onColumnClick` | `((column: Column, checked: boolean) => unknown)` | No | - | Adds a callback that is called when a column is clicked. @param column @param checked |
886
+
887
+ ## BI
888
+
889
+ ### Custom Columns Events
890
+
891
+ | Event | Description |
892
+ | --------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------ |
893
+ | [144:119](https://bo.wix.com/data-tools/bi-catalog-app/event/144:119) | Sent when a feature sidebar/menu in a Wix Patterns component is opened or closed |
894
+ | [144:177](https://bo.wix.com/data-tools/bi-catalog-app/event/144:177) | Sent when a user is making his first change in visible columns- add / remove / reorder them- for every time he opened the side panel |
895
+
896
+
897
+
898
+ ### Component load events
899
+ Event | Description |
900
+ --------- | --------------- |
901
+ [144:110](https://bo.wix.com/data-tools/bi-catalog-app/event/144:110) | Sent when a Wix Patterns component starts loading
902
+ [144:111](https://bo.wix.com/data-tools/bi-catalog-app/event/144:111) | Sent when a Wix Patterns component is done loading
903
+
904
+
905
+ #### 🐪 Couldn't find what you need?
906
+ * Check our [BI Catalog](https://bo.wix.com/data-tools/bi-catalog-app?viewId=all-items-view&selectedColumns=src%2Cevid%2Cname%2Cowner%2Cproduct%2CuserType+false%2CdateUpdated%2CdateCreated+false%2CcreatedBy+false%2Cstatus&source=%5B%7B%22id%22%3A%22144%22%2C%22name%22%3A%22144+-+Cairo%22%7D%5D)
907
+ * Contact us on [#cairo-bi](https://wix.slack.com/archives/C03N53KURH9)
908
+
909
+
910
+ ## Testkit
911
+
912
+ ### Usage
913
+
914
+ All `` testkit APIs are exposed directly from the `` [testkit](./?path=/story/base-components-collections-table-table--table&tab=Testkit).
915
+
916
+