@wix/patterns 1.460.0 → 1.462.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 (668) 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/CmsFieldManagement/CmsFieldForm.st.css.js +3 -3
  4. package/dist/cjs/components/CmsFieldManagement/CmsFieldForm.st.css.js.map +1 -1
  5. package/dist/cjs/components/CmsFieldManagement/CmsFieldModal.st.css.js +3 -3
  6. package/dist/cjs/components/CmsFieldManagement/CmsFieldModal.st.css.js.map +1 -1
  7. package/dist/cjs/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.js +3 -3
  8. package/dist/cjs/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.js.map +1 -1
  9. package/dist/cjs/components/Collapse/Collapse.st.css.js +3 -3
  10. package/dist/cjs/components/Collapse/Collapse.st.css.js.map +1 -1
  11. package/dist/cjs/components/CollectionPageHeaderNew/CollectionPageHeader.js.map +1 -1
  12. package/dist/cjs/components/CollectionPageNew/CollectionPage.js +4 -3
  13. package/dist/cjs/components/CollectionPageNew/CollectionPage.js.map +1 -1
  14. package/dist/cjs/components/CollectionPageNew/CollectionPage.st.css.js +2 -2
  15. package/dist/cjs/components/CollectionPageNew/CollectionPage.st.css.js.map +1 -1
  16. package/dist/cjs/components/CollectionPageNew/CollectionPage.uni.driver.js +4 -0
  17. package/dist/cjs/components/CollectionPageNew/CollectionPage.uni.driver.js.map +1 -1
  18. package/dist/cjs/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js +3 -3
  19. package/dist/cjs/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js.map +1 -1
  20. package/dist/cjs/components/CollectionTable/CollectionTable.st.css.js +2 -2
  21. package/dist/cjs/components/CollectionTable/CollectionTable.st.css.js.map +1 -1
  22. package/dist/cjs/components/CollectionTable/CollectionTableWSRTable.st.css.js +2 -2
  23. package/dist/cjs/components/CollectionTable/CollectionTableWSRTable.st.css.js.map +1 -1
  24. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js +5 -5
  25. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js.map +1 -1
  26. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +4 -4
  27. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js.map +1 -1
  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/CustomFieldModal/CustomFieldForm.js +1 -0
  33. package/dist/cjs/components/CustomFieldModal/CustomFieldForm.js.map +1 -1
  34. package/dist/cjs/components/DragHandle/DragHandle.st.css.js +2 -2
  35. package/dist/cjs/components/DragHandle/DragHandle.st.css.js.map +1 -1
  36. package/dist/cjs/components/EditableTable/EditableCell.st.css.js +3 -3
  37. package/dist/cjs/components/EditableTable/EditableCell.st.css.js.map +1 -1
  38. package/dist/cjs/components/EditableTable/EditableTable.uni.driver.js +27 -1
  39. package/dist/cjs/components/EditableTable/EditableTable.uni.driver.js.map +1 -1
  40. package/dist/cjs/components/EditableTable/EditableTableContextMenu.js +19 -20
  41. package/dist/cjs/components/EditableTable/EditableTableContextMenu.js.map +1 -1
  42. package/dist/cjs/components/EditableTable/HeaderActionsPopover.st.css.js +2 -2
  43. package/dist/cjs/components/EditableTable/HeaderActionsPopover.st.css.js.map +1 -1
  44. package/dist/cjs/components/EditableTable/cellTypes/CellViewLayout.st.css.js +2 -2
  45. package/dist/cjs/components/EditableTable/cellTypes/CellViewLayout.st.css.js.map +1 -1
  46. package/dist/cjs/components/EditableTable/cellTypes/address/Edit.st.css.js +3 -3
  47. package/dist/cjs/components/EditableTable/cellTypes/address/Edit.st.css.js.map +1 -1
  48. package/dist/cjs/components/EditableTable/cellTypes/address/index.js +0 -1
  49. package/dist/cjs/components/EditableTable/cellTypes/address/index.js.map +1 -1
  50. package/dist/cjs/components/EditableTable/cellTypes/array/Edit.st.css.js +3 -3
  51. package/dist/cjs/components/EditableTable/cellTypes/array/Edit.st.css.js.map +1 -1
  52. package/dist/cjs/components/EditableTable/cellTypes/array/index.js +1 -2
  53. package/dist/cjs/components/EditableTable/cellTypes/array/index.js.map +1 -1
  54. package/dist/cjs/components/EditableTable/cellTypes/audio/index.js +0 -1
  55. package/dist/cjs/components/EditableTable/cellTypes/audio/index.js.map +1 -1
  56. package/dist/cjs/components/EditableTable/cellTypes/boolean/Edit.st.css.js +3 -3
  57. package/dist/cjs/components/EditableTable/cellTypes/boolean/Edit.st.css.js.map +1 -1
  58. package/dist/cjs/components/EditableTable/cellTypes/boolean/View.st.css.js +3 -3
  59. package/dist/cjs/components/EditableTable/cellTypes/boolean/View.st.css.js.map +1 -1
  60. package/dist/cjs/components/EditableTable/cellTypes/boolean/index.js +0 -1
  61. package/dist/cjs/components/EditableTable/cellTypes/boolean/index.js.map +1 -1
  62. package/dist/cjs/components/EditableTable/cellTypes/color/Edit.st.css.js +2 -2
  63. package/dist/cjs/components/EditableTable/cellTypes/color/Edit.st.css.js.map +1 -1
  64. package/dist/cjs/components/EditableTable/cellTypes/color/index.js +1 -2
  65. package/dist/cjs/components/EditableTable/cellTypes/color/index.js.map +1 -1
  66. package/dist/cjs/components/EditableTable/cellTypes/date/Edit.st.css.js +3 -3
  67. package/dist/cjs/components/EditableTable/cellTypes/date/Edit.st.css.js.map +1 -1
  68. package/dist/cjs/components/EditableTable/cellTypes/date/View.st.css.js +2 -2
  69. package/dist/cjs/components/EditableTable/cellTypes/date/View.st.css.js.map +1 -1
  70. package/dist/cjs/components/EditableTable/cellTypes/date/index.js +0 -1
  71. package/dist/cjs/components/EditableTable/cellTypes/date/index.js.map +1 -1
  72. package/dist/cjs/components/EditableTable/cellTypes/datetime/Edit.st.css.js +8 -8
  73. package/dist/cjs/components/EditableTable/cellTypes/datetime/Edit.st.css.js.map +1 -1
  74. package/dist/cjs/components/EditableTable/cellTypes/datetime/View.st.css.js +7 -7
  75. package/dist/cjs/components/EditableTable/cellTypes/datetime/View.st.css.js.map +1 -1
  76. package/dist/cjs/components/EditableTable/cellTypes/datetime/index.js +0 -1
  77. package/dist/cjs/components/EditableTable/cellTypes/datetime/index.js.map +1 -1
  78. package/dist/cjs/components/EditableTable/cellTypes/document/index.js +0 -1
  79. package/dist/cjs/components/EditableTable/cellTypes/document/index.js.map +1 -1
  80. package/dist/cjs/components/EditableTable/cellTypes/email/Edit.st.css.js +3 -3
  81. package/dist/cjs/components/EditableTable/cellTypes/email/Edit.st.css.js.map +1 -1
  82. package/dist/cjs/components/EditableTable/cellTypes/email/View.st.css.js +2 -2
  83. package/dist/cjs/components/EditableTable/cellTypes/email/View.st.css.js.map +1 -1
  84. package/dist/cjs/components/EditableTable/cellTypes/email/index.js +0 -1
  85. package/dist/cjs/components/EditableTable/cellTypes/email/index.js.map +1 -1
  86. package/dist/cjs/components/EditableTable/cellTypes/image/index.js +0 -1
  87. package/dist/cjs/components/EditableTable/cellTypes/image/index.js.map +1 -1
  88. package/dist/cjs/components/EditableTable/cellTypes/mediaGallery/index.js +4 -5
  89. package/dist/cjs/components/EditableTable/cellTypes/mediaGallery/index.js.map +1 -1
  90. package/dist/cjs/components/EditableTable/cellTypes/multiDocument/index.js +0 -1
  91. package/dist/cjs/components/EditableTable/cellTypes/multiDocument/index.js.map +1 -1
  92. package/dist/cjs/components/EditableTable/cellTypes/multiReference/index.js +0 -1
  93. package/dist/cjs/components/EditableTable/cellTypes/multiReference/index.js.map +1 -1
  94. package/dist/cjs/components/EditableTable/cellTypes/number/Edit.st.css.js +3 -3
  95. package/dist/cjs/components/EditableTable/cellTypes/number/Edit.st.css.js.map +1 -1
  96. package/dist/cjs/components/EditableTable/cellTypes/number/View.st.css.js +3 -3
  97. package/dist/cjs/components/EditableTable/cellTypes/number/View.st.css.js.map +1 -1
  98. package/dist/cjs/components/EditableTable/cellTypes/number/index.js +0 -1
  99. package/dist/cjs/components/EditableTable/cellTypes/number/index.js.map +1 -1
  100. package/dist/cjs/components/EditableTable/cellTypes/object/Edit.st.css.js +3 -3
  101. package/dist/cjs/components/EditableTable/cellTypes/object/Edit.st.css.js.map +1 -1
  102. package/dist/cjs/components/EditableTable/cellTypes/object/View.st.css.js +2 -2
  103. package/dist/cjs/components/EditableTable/cellTypes/object/View.st.css.js.map +1 -1
  104. package/dist/cjs/components/EditableTable/cellTypes/object/index.js +1 -2
  105. package/dist/cjs/components/EditableTable/cellTypes/object/index.js.map +1 -1
  106. package/dist/cjs/components/EditableTable/cellTypes/reference/index.js +0 -1
  107. package/dist/cjs/components/EditableTable/cellTypes/reference/index.js.map +1 -1
  108. package/dist/cjs/components/EditableTable/cellTypes/richContent/index.js +0 -1
  109. package/dist/cjs/components/EditableTable/cellTypes/richContent/index.js.map +1 -1
  110. package/dist/cjs/components/EditableTable/cellTypes/richText/index.js +0 -1
  111. package/dist/cjs/components/EditableTable/cellTypes/richText/index.js.map +1 -1
  112. package/dist/cjs/components/EditableTable/cellTypes/select/Edit.st.css.js +3 -3
  113. package/dist/cjs/components/EditableTable/cellTypes/select/Edit.st.css.js.map +1 -1
  114. package/dist/cjs/components/EditableTable/cellTypes/text/Edit.st.css.js +4 -4
  115. package/dist/cjs/components/EditableTable/cellTypes/text/Edit.st.css.js.map +1 -1
  116. package/dist/cjs/components/EditableTable/cellTypes/text/View.st.css.js +2 -2
  117. package/dist/cjs/components/EditableTable/cellTypes/text/View.st.css.js.map +1 -1
  118. package/dist/cjs/components/EditableTable/cellTypes/text/index.js +0 -1
  119. package/dist/cjs/components/EditableTable/cellTypes/text/index.js.map +1 -1
  120. package/dist/cjs/components/EditableTable/cellTypes/time/Edit.st.css.js +4 -4
  121. package/dist/cjs/components/EditableTable/cellTypes/time/Edit.st.css.js.map +1 -1
  122. package/dist/cjs/components/EditableTable/cellTypes/time/index.js +0 -1
  123. package/dist/cjs/components/EditableTable/cellTypes/time/index.js.map +1 -1
  124. package/dist/cjs/components/EditableTable/cellTypes/url/Edit.st.css.js +3 -3
  125. package/dist/cjs/components/EditableTable/cellTypes/url/Edit.st.css.js.map +1 -1
  126. package/dist/cjs/components/EditableTable/cellTypes/url/View.st.css.js +5 -5
  127. package/dist/cjs/components/EditableTable/cellTypes/url/View.st.css.js.map +1 -1
  128. package/dist/cjs/components/EditableTable/cellTypes/url/index.js +0 -1
  129. package/dist/cjs/components/EditableTable/cellTypes/url/index.js.map +1 -1
  130. package/dist/cjs/components/EditableTable/cellTypes/video/index.js +0 -1
  131. package/dist/cjs/components/EditableTable/cellTypes/video/index.js.map +1 -1
  132. package/dist/cjs/components/EditableTable/types.js.map +1 -1
  133. package/dist/cjs/components/EditableTable/useClipboardHandler.js +13 -4
  134. package/dist/cjs/components/EditableTable/useClipboardHandler.js.map +1 -1
  135. package/dist/cjs/components/EmptyState/EmptyStateBase.st.css.js +2 -2
  136. package/dist/cjs/components/EmptyState/EmptyStateBase.st.css.js.map +1 -1
  137. package/dist/cjs/components/EntityPage/EntityPagePlain.st.css.js +2 -2
  138. package/dist/cjs/components/EntityPage/EntityPagePlain.st.css.js.map +1 -1
  139. package/dist/cjs/components/Fade/Fade.st.css.js +2 -2
  140. package/dist/cjs/components/Fade/Fade.st.css.js.map +1 -1
  141. package/dist/cjs/components/Heading/Heading.st.css.js +2 -2
  142. package/dist/cjs/components/Heading/Heading.st.css.js.map +1 -1
  143. package/dist/cjs/components/ImportButton/ImportStepUpload.st.css.js +3 -3
  144. package/dist/cjs/components/ImportButton/ImportStepUpload.st.css.js.map +1 -1
  145. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js +2 -2
  146. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js.map +1 -1
  147. package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js +3 -3
  148. package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js.map +1 -1
  149. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  150. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js.map +1 -1
  151. package/dist/cjs/components/MaxLines/MaxLines.st.css.js +2 -2
  152. package/dist/cjs/components/MaxLines/MaxLines.st.css.js.map +1 -1
  153. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +5 -5
  154. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js.map +1 -1
  155. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
  156. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js.map +1 -1
  157. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js +5 -5
  158. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js.map +1 -1
  159. package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
  160. package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js.map +1 -1
  161. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
  162. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js.map +1 -1
  163. package/dist/cjs/components/PageSubTitle/PageSubTitle.js +15 -4
  164. package/dist/cjs/components/PageSubTitle/PageSubTitle.js.map +1 -1
  165. package/dist/cjs/components/PageSubTitle/PageSubTitle.uni.driver.js +4 -0
  166. package/dist/cjs/components/PageSubTitle/PageSubTitle.uni.driver.js.map +1 -1
  167. package/dist/cjs/components/PickerContent/PickerContent.st.css.js +2 -2
  168. package/dist/cjs/components/PickerContent/PickerContent.st.css.js.map +1 -1
  169. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js +4 -4
  170. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js.map +1 -1
  171. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  172. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js.map +1 -1
  173. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  174. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
  175. package/dist/cjs/components/SettingsPage/SettingsPage.uni.driver.js +2 -0
  176. package/dist/cjs/components/SettingsPage/SettingsPage.uni.driver.js.map +1 -1
  177. package/dist/cjs/components/SetupWidget/SetupWidget.st.css.js +10 -10
  178. package/dist/cjs/components/SetupWidget/SetupWidget.st.css.js.map +1 -1
  179. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js +3 -3
  180. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js.map +1 -1
  181. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js +2 -2
  182. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js.map +1 -1
  183. package/dist/cjs/components/Table/AddFieldColumnHeader.st.css.js +4 -4
  184. package/dist/cjs/components/Table/AddFieldColumnHeader.st.css.js.map +1 -1
  185. package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js +3 -3
  186. package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js.map +1 -1
  187. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  188. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js.map +1 -1
  189. package/dist/cjs/components/ToolbarItem/ToolbarItem.st.css.js +2 -2
  190. package/dist/cjs/components/ToolbarItem/ToolbarItem.st.css.js.map +1 -1
  191. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  192. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js.map +1 -1
  193. package/dist/cjs/components/common.st.css.js +4 -4
  194. package/dist/cjs/components/common.st.css.js.map +1 -1
  195. package/dist/cjs/exports/page.js.map +1 -1
  196. package/dist/cjs/index.js.map +1 -1
  197. package/dist/cjs/state/CollectionPage/CollectionPageHeader.st.css.js +2 -2
  198. package/dist/cjs/state/CollectionPage/CollectionPageHeader.st.css.js.map +1 -1
  199. package/dist/cjs/state/CollectionPage/PanelHeader.js +25 -7
  200. package/dist/cjs/state/CollectionPage/PanelHeader.js.map +1 -1
  201. package/dist/cjs/state/CollectionPage/TitleBadges.js +53 -0
  202. package/dist/cjs/state/CollectionPage/TitleBadges.js.map +1 -0
  203. package/dist/cjs/state/CollectionPage/useCollectionPageHeader.js +42 -15
  204. package/dist/cjs/state/CollectionPage/useCollectionPageHeader.js.map +1 -1
  205. package/dist/cjs/state/EditableTable/CellValueState.js +48 -6
  206. package/dist/cjs/state/EditableTable/CellValueState.js.map +1 -1
  207. package/dist/cjs/state/EditableTable/ClipboardState.js +45 -30
  208. package/dist/cjs/state/EditableTable/ClipboardState.js.map +1 -1
  209. package/dist/cjs/state/EditableTable/types.js.map +1 -1
  210. package/dist/cjs/state/EditableTable/utils.js +3 -0
  211. package/dist/cjs/state/EditableTable/utils.js.map +1 -1
  212. package/dist/cjs/state/FormPage/FormPageHeader.st.css.js +2 -2
  213. package/dist/cjs/state/FormPage/FormPageHeader.st.css.js.map +1 -1
  214. package/dist/cjs/state/FormPage/useFormPageHeader.js +19 -10
  215. package/dist/cjs/state/FormPage/useFormPageHeader.js.map +1 -1
  216. package/dist/cjs/styles.global.css +2 -2
  217. package/dist/cjs/version.js +1 -1
  218. package/dist/cjs/version.js.map +1 -1
  219. package/dist/docs/AI Assistant.md +2 -1
  220. package/dist/docs/AutoCompleteFilter.md +12 -6
  221. package/dist/docs/CollectionPage.Content.md +4 -4
  222. package/dist/docs/CollectionPage.Header/full.tsx +112 -0
  223. package/dist/docs/CollectionPage.Header/with-badges.tsx +70 -0
  224. package/dist/docs/CollectionPage.Header/without-total.tsx +62 -0
  225. package/dist/docs/CollectionPage.Header.md +9 -178
  226. package/dist/docs/CollectionPage.md +2 -1
  227. package/dist/docs/CollectionSearch.md +3 -1
  228. package/dist/docs/CustomFieldType/editable-cell.tsx +9 -0
  229. package/dist/docs/CustomFieldType.md +21 -3
  230. package/dist/docs/DataResultRaw.md +6 -7
  231. package/dist/docs/Display Extended Fields.md +7 -2
  232. package/dist/docs/EntityPage.Card.md +4 -2
  233. package/dist/docs/Explore Apps.md +2 -1
  234. package/dist/docs/Filter Overview.md +3 -3
  235. package/dist/docs/Grid/card-with-a-cta-that-opens-a-modal.tsx +2 -3
  236. package/dist/docs/Grid/card-with-a-cta-that-opens-a-popup.tsx +2 -2
  237. package/dist/docs/Grid/demo.tsx +7 -3
  238. package/dist/docs/Grid/grid-sections.tsx +7 -2
  239. package/dist/docs/Grid/grid-with-a-reduced-width.tsx +2 -3
  240. package/dist/docs/Grid/use-the-preset-prop.tsx +2 -2
  241. package/dist/docs/Grid Sections.md +15 -4
  242. package/dist/docs/ImportButton/backup-error-handling.tsx +2 -1
  243. package/dist/docs/ImportButton/platformized-import-fields-inline.tsx +2 -1
  244. package/dist/docs/ImportButton/platformized-import-from-a-source.tsx +1 -1
  245. package/dist/docs/ImportButton/required-fields.tsx +2 -1
  246. package/dist/docs/More Actions/collection-page-2.tsx +2 -1
  247. package/dist/docs/More Actions/collection-page.tsx +2 -1
  248. package/dist/docs/More Actions/explore-related-apps.tsx +2 -1
  249. package/dist/docs/More Actions/featured-more-actions-custom-position.tsx +2 -1
  250. package/dist/docs/More Actions/featured-more-actions-opt-out.tsx +2 -1
  251. package/dist/docs/More Actions/featured-more-actions.tsx +2 -1
  252. package/dist/docs/More Actions/integrate-with-extension.tsx +2 -1
  253. package/dist/docs/More Actions/more-actions-with-a-divider.tsx +2 -1
  254. package/dist/docs/MultiSelectCheckboxFilter.md +5 -3
  255. package/dist/docs/MultiSelectCollectionFilter.md +6 -3
  256. package/dist/docs/NestedTable/drag-and-drop.tsx +2 -1
  257. package/dist/docs/NestedTable/filters.tsx +2 -2
  258. package/dist/docs/NestedTable/flat-mode-search.tsx +2 -1
  259. package/dist/docs/NestedTable/node-api-usage.tsx +31 -33
  260. package/dist/docs/NestedTable/single-entity.tsx +2 -1
  261. package/dist/docs/NestedTable/various-entities.tsx +3 -2
  262. package/dist/docs/NestedTable.md +6 -4
  263. package/dist/docs/NumberRangeFilter.md +10 -2
  264. package/dist/docs/OperatorFilterPicker.md +14 -3
  265. package/dist/docs/SettingsPage.Card.md +4 -2
  266. package/dist/docs/SingleSelectFilter/custom-render-items.tsx +2 -1
  267. package/dist/docs/SingleSelectFilter/empty-state.tsx +1 -1
  268. package/dist/docs/SingleSelectFilter/sections.tsx +2 -1
  269. package/dist/docs/SingleSelectFilter/server-data.tsx +2 -1
  270. package/dist/docs/Table/filters.tsx +2 -1
  271. package/dist/docs/Table Sections/demo.tsx +7 -2
  272. package/dist/docs/Table Sections/with-badge.tsx +2 -1
  273. package/dist/docs/Table Sections/with-collapse.tsx +13 -4
  274. package/dist/docs/Table Sections/with-summary.tsx +2 -1
  275. package/dist/docs/TableTopNotification/nested-table.tsx +2 -1
  276. package/dist/docs/ToolbarCollectionState.md +1 -1
  277. package/dist/docs/Working with Cache.md +3 -3
  278. package/dist/docs/idNameArrayFilter.md +5 -3
  279. package/dist/docs/index.json +31 -30
  280. package/dist/docs/operatorFilter.md +14 -3
  281. package/dist/docs/useNestedTable.md +2 -1
  282. package/dist/dts-bundle/components/CollectionPage.d.ts +181 -21
  283. package/dist/dts-bundle/components/TableFolders.d.ts +157 -5
  284. package/dist/dts-bundle/components/WixPatternsBMProvider.d.ts +13 -3
  285. package/dist/dts-bundle/components/WixPatternsBaseProvider.d.ts +13 -3
  286. package/dist/dts-bundle/components/WixPatternsEssentialsProvider.d.ts +13 -3
  287. package/dist/dts-bundle/components/WixPatternsGizaProvider.d.ts +13 -3
  288. package/dist/dts-bundle/components/WixPatternsProvider.d.ts +14 -3
  289. package/dist/dts-bundle/exports/core.d.ts +2 -0
  290. package/dist/dts-bundle/exports/index.d.ts +1 -0
  291. package/dist/dts-bundle/hooks/useCreateCollection.d.ts +12 -30
  292. package/dist/dts-bundle/hooks/useEntityPage.d.ts +909 -2
  293. package/dist/dts-bundle/hooks/useFilterCollection.d.ts +261 -1
  294. package/dist/dts-bundle/hooks/useGridCollection.d.ts +295 -1
  295. package/dist/dts-bundle/hooks/usePickerModal.d.ts +32 -29
  296. package/dist/dts-bundle/hooks/useTableCollection.d.ts +295 -1
  297. package/dist/dts-bundle/hooks/useTableGridSwitchCollection.d.ts +295 -1
  298. package/dist/dts-bundle/index.json +41 -23
  299. package/dist/dts-bundle/types/CollectionTableBaseProps.d.ts +155 -3
  300. package/dist/dts-bundle/types/Column.d.ts +1 -1
  301. package/dist/dts-bundle/types/CursorQuery.d.ts +11 -29
  302. package/dist/dts-bundle/types/DataResultRaw.d.ts +31 -0
  303. package/dist/dts-bundle/types/EntityPageStateParams.d.ts +42 -32
  304. package/dist/dts-bundle/types/OffsetQuery.d.ts +53 -0
  305. package/dist/dts-bundle/types/OnSaveParams.d.ts +905 -1
  306. package/dist/dts-bundle/types/TagsProps.d.ts +164 -2
  307. package/dist/dts-bundle/types/UseEntityPageParams.d.ts +904 -2
  308. package/dist/esm/components/CardContainer/CardContainer.st.css.js +2 -2
  309. package/dist/esm/components/CmsFieldManagement/CmsFieldForm.st.css.js +2 -2
  310. package/dist/esm/components/CmsFieldManagement/CmsFieldForm.st.css.js.map +1 -1
  311. package/dist/esm/components/CmsFieldManagement/CmsFieldModal.st.css.js +2 -2
  312. package/dist/esm/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.js +2 -2
  313. package/dist/esm/components/Collapse/Collapse.st.css.js +2 -2
  314. package/dist/esm/components/CollectionPageHeaderNew/CollectionPageHeader.js.map +1 -1
  315. package/dist/esm/components/CollectionPageNew/CollectionPage.js +1 -1
  316. package/dist/esm/components/CollectionPageNew/CollectionPage.js.map +1 -1
  317. package/dist/esm/components/CollectionPageNew/CollectionPage.st.css.js +2 -2
  318. package/dist/esm/components/CollectionPageNew/CollectionPage.uni.driver.js +5 -1
  319. package/dist/esm/components/CollectionPageNew/CollectionPage.uni.driver.js.map +1 -1
  320. package/dist/esm/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js +2 -2
  321. package/dist/esm/components/CollectionTable/CollectionTable.st.css.js +2 -2
  322. package/dist/esm/components/CollectionTable/CollectionTableWSRTable.st.css.js +2 -2
  323. package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js +2 -2
  324. package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +2 -2
  325. package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css.js.map +1 -1
  326. package/dist/esm/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
  327. package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
  328. package/dist/esm/components/CustomFieldModal/CustomFieldForm.js +1 -1
  329. package/dist/esm/components/CustomFieldModal/CustomFieldForm.js.map +1 -1
  330. package/dist/esm/components/DragHandle/DragHandle.st.css.js +2 -2
  331. package/dist/esm/components/EditableTable/EditableCell.st.css.js +2 -2
  332. package/dist/esm/components/EditableTable/EditableTable.uni.driver.js +20 -3
  333. package/dist/esm/components/EditableTable/EditableTable.uni.driver.js.map +1 -1
  334. package/dist/esm/components/EditableTable/EditableTableContextMenu.js +12 -19
  335. package/dist/esm/components/EditableTable/EditableTableContextMenu.js.map +1 -1
  336. package/dist/esm/components/EditableTable/HeaderActionsPopover.st.css.js +2 -2
  337. package/dist/esm/components/EditableTable/cellTypes/CellViewLayout.st.css.js +2 -2
  338. package/dist/esm/components/EditableTable/cellTypes/address/Edit.st.css.js +2 -2
  339. package/dist/esm/components/EditableTable/cellTypes/address/index.js +0 -1
  340. package/dist/esm/components/EditableTable/cellTypes/address/index.js.map +1 -1
  341. package/dist/esm/components/EditableTable/cellTypes/array/Edit.st.css.js +2 -2
  342. package/dist/esm/components/EditableTable/cellTypes/array/Edit.st.css.js.map +1 -1
  343. package/dist/esm/components/EditableTable/cellTypes/array/index.js +0 -1
  344. package/dist/esm/components/EditableTable/cellTypes/array/index.js.map +1 -1
  345. package/dist/esm/components/EditableTable/cellTypes/audio/index.js +0 -1
  346. package/dist/esm/components/EditableTable/cellTypes/audio/index.js.map +1 -1
  347. package/dist/esm/components/EditableTable/cellTypes/boolean/Edit.st.css.js +2 -2
  348. package/dist/esm/components/EditableTable/cellTypes/boolean/Edit.st.css.js.map +1 -1
  349. package/dist/esm/components/EditableTable/cellTypes/boolean/View.st.css.js +2 -2
  350. package/dist/esm/components/EditableTable/cellTypes/boolean/View.st.css.js.map +1 -1
  351. package/dist/esm/components/EditableTable/cellTypes/boolean/index.js +0 -1
  352. package/dist/esm/components/EditableTable/cellTypes/boolean/index.js.map +1 -1
  353. package/dist/esm/components/EditableTable/cellTypes/color/Edit.st.css.js +2 -2
  354. package/dist/esm/components/EditableTable/cellTypes/color/index.js +1 -2
  355. package/dist/esm/components/EditableTable/cellTypes/color/index.js.map +1 -1
  356. package/dist/esm/components/EditableTable/cellTypes/date/Edit.st.css.js +2 -2
  357. package/dist/esm/components/EditableTable/cellTypes/date/Edit.st.css.js.map +1 -1
  358. package/dist/esm/components/EditableTable/cellTypes/date/View.st.css.js +2 -2
  359. package/dist/esm/components/EditableTable/cellTypes/date/index.js +0 -1
  360. package/dist/esm/components/EditableTable/cellTypes/date/index.js.map +1 -1
  361. package/dist/esm/components/EditableTable/cellTypes/datetime/Edit.st.css.js +2 -2
  362. package/dist/esm/components/EditableTable/cellTypes/datetime/View.st.css.js +2 -2
  363. package/dist/esm/components/EditableTable/cellTypes/datetime/index.js +0 -1
  364. package/dist/esm/components/EditableTable/cellTypes/datetime/index.js.map +1 -1
  365. package/dist/esm/components/EditableTable/cellTypes/document/index.js +0 -1
  366. package/dist/esm/components/EditableTable/cellTypes/document/index.js.map +1 -1
  367. package/dist/esm/components/EditableTable/cellTypes/email/Edit.st.css.js +2 -2
  368. package/dist/esm/components/EditableTable/cellTypes/email/View.st.css.js +2 -2
  369. package/dist/esm/components/EditableTable/cellTypes/email/View.st.css.js.map +1 -1
  370. package/dist/esm/components/EditableTable/cellTypes/email/index.js +0 -1
  371. package/dist/esm/components/EditableTable/cellTypes/email/index.js.map +1 -1
  372. package/dist/esm/components/EditableTable/cellTypes/image/index.js +0 -1
  373. package/dist/esm/components/EditableTable/cellTypes/image/index.js.map +1 -1
  374. package/dist/esm/components/EditableTable/cellTypes/mediaGallery/index.js +3 -3
  375. package/dist/esm/components/EditableTable/cellTypes/mediaGallery/index.js.map +1 -1
  376. package/dist/esm/components/EditableTable/cellTypes/multiDocument/index.js +0 -1
  377. package/dist/esm/components/EditableTable/cellTypes/multiDocument/index.js.map +1 -1
  378. package/dist/esm/components/EditableTable/cellTypes/multiReference/index.js +0 -1
  379. package/dist/esm/components/EditableTable/cellTypes/multiReference/index.js.map +1 -1
  380. package/dist/esm/components/EditableTable/cellTypes/number/Edit.st.css.js +2 -2
  381. package/dist/esm/components/EditableTable/cellTypes/number/View.st.css.js +2 -2
  382. package/dist/esm/components/EditableTable/cellTypes/number/index.js +0 -1
  383. package/dist/esm/components/EditableTable/cellTypes/number/index.js.map +1 -1
  384. package/dist/esm/components/EditableTable/cellTypes/object/Edit.st.css.js +2 -2
  385. package/dist/esm/components/EditableTable/cellTypes/object/View.st.css.js +2 -2
  386. package/dist/esm/components/EditableTable/cellTypes/object/View.st.css.js.map +1 -1
  387. package/dist/esm/components/EditableTable/cellTypes/object/index.js +0 -1
  388. package/dist/esm/components/EditableTable/cellTypes/object/index.js.map +1 -1
  389. package/dist/esm/components/EditableTable/cellTypes/reference/index.js +0 -1
  390. package/dist/esm/components/EditableTable/cellTypes/reference/index.js.map +1 -1
  391. package/dist/esm/components/EditableTable/cellTypes/richContent/index.js +0 -1
  392. package/dist/esm/components/EditableTable/cellTypes/richContent/index.js.map +1 -1
  393. package/dist/esm/components/EditableTable/cellTypes/richText/index.js +0 -1
  394. package/dist/esm/components/EditableTable/cellTypes/richText/index.js.map +1 -1
  395. package/dist/esm/components/EditableTable/cellTypes/select/Edit.st.css.js +2 -2
  396. package/dist/esm/components/EditableTable/cellTypes/select/Edit.st.css.js.map +1 -1
  397. package/dist/esm/components/EditableTable/cellTypes/text/Edit.st.css.js +2 -2
  398. package/dist/esm/components/EditableTable/cellTypes/text/View.st.css.js +2 -2
  399. package/dist/esm/components/EditableTable/cellTypes/text/index.js +0 -1
  400. package/dist/esm/components/EditableTable/cellTypes/text/index.js.map +1 -1
  401. package/dist/esm/components/EditableTable/cellTypes/time/Edit.st.css.js +2 -2
  402. package/dist/esm/components/EditableTable/cellTypes/time/index.js +0 -1
  403. package/dist/esm/components/EditableTable/cellTypes/time/index.js.map +1 -1
  404. package/dist/esm/components/EditableTable/cellTypes/url/Edit.st.css.js +2 -2
  405. package/dist/esm/components/EditableTable/cellTypes/url/Edit.st.css.js.map +1 -1
  406. package/dist/esm/components/EditableTable/cellTypes/url/View.st.css.js +2 -2
  407. package/dist/esm/components/EditableTable/cellTypes/url/index.js +0 -1
  408. package/dist/esm/components/EditableTable/cellTypes/url/index.js.map +1 -1
  409. package/dist/esm/components/EditableTable/cellTypes/video/index.js +0 -1
  410. package/dist/esm/components/EditableTable/cellTypes/video/index.js.map +1 -1
  411. package/dist/esm/components/EditableTable/types.js.map +1 -1
  412. package/dist/esm/components/EditableTable/useClipboardHandler.js +13 -4
  413. package/dist/esm/components/EditableTable/useClipboardHandler.js.map +1 -1
  414. package/dist/esm/components/EmptyState/EmptyStateBase.st.css.js +2 -2
  415. package/dist/esm/components/EntityPage/EntityPagePlain.st.css.js +2 -2
  416. package/dist/esm/components/EntityPage/EntityPagePlain.st.css.js.map +1 -1
  417. package/dist/esm/components/Fade/Fade.st.css.js +2 -2
  418. package/dist/esm/components/Heading/Heading.st.css.js +2 -2
  419. package/dist/esm/components/ImportButton/ImportStepUpload.st.css.js +2 -2
  420. package/dist/esm/components/InputOverflow/InputOverflow.st.css.js +2 -2
  421. package/dist/esm/components/LoadingRow/LoadingRow.st.css.js +3 -3
  422. package/dist/esm/components/LoadingRow/LoadingRow.st.css.js.map +1 -1
  423. package/dist/esm/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  424. package/dist/esm/components/MaxHeightText/MaxHeightText.st.css.js.map +1 -1
  425. package/dist/esm/components/MaxLines/MaxLines.st.css.js +2 -2
  426. package/dist/esm/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +2 -2
  427. package/dist/esm/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
  428. package/dist/esm/components/NestedTable/NestedTableRow.st.css.js +2 -2
  429. package/dist/esm/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
  430. package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
  431. package/dist/esm/components/PageSubTitle/PageSubTitle.js +14 -2
  432. package/dist/esm/components/PageSubTitle/PageSubTitle.js.map +1 -1
  433. package/dist/esm/components/PageSubTitle/PageSubTitle.uni.driver.js +4 -0
  434. package/dist/esm/components/PageSubTitle/PageSubTitle.uni.driver.js.map +1 -1
  435. package/dist/esm/components/PickerContent/PickerContent.st.css.js +2 -2
  436. package/dist/esm/components/PickerContent/PickerContentAdditionalStep.st.css.js +2 -2
  437. package/dist/esm/components/PickerContent/PickerContentAdditionalStep.st.css.js.map +1 -1
  438. package/dist/esm/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  439. package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  440. package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
  441. package/dist/esm/components/SettingsPage/SettingsPage.uni.driver.js +2 -0
  442. package/dist/esm/components/SettingsPage/SettingsPage.uni.driver.js.map +1 -1
  443. package/dist/esm/components/SetupWidget/SetupWidget.st.css.js +2 -2
  444. package/dist/esm/components/SetupWidget/SetupWidget.st.css.js.map +1 -1
  445. package/dist/esm/components/SkeletonCard/SkeletonCard.st.css.js +2 -2
  446. package/dist/esm/components/SlidingModal/SlidingModal.st.css.js +2 -2
  447. package/dist/esm/components/Table/AddFieldColumnHeader.st.css.js +2 -2
  448. package/dist/esm/components/TabsFilter/TabsFilter.st.css.js +2 -2
  449. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  450. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js.map +1 -1
  451. package/dist/esm/components/ToolbarItem/ToolbarItem.st.css.js +2 -2
  452. package/dist/esm/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  453. package/dist/esm/components/common.st.css.js +2 -2
  454. package/dist/esm/exports/page.js.map +1 -1
  455. package/dist/esm/index.js.map +1 -1
  456. package/dist/esm/state/CollectionPage/CollectionPageHeader.st.css.js +2 -2
  457. package/dist/esm/state/CollectionPage/PanelHeader.js +5 -2
  458. package/dist/esm/state/CollectionPage/PanelHeader.js.map +1 -1
  459. package/dist/esm/state/CollectionPage/TitleBadges.js +11 -0
  460. package/dist/esm/state/CollectionPage/TitleBadges.js.map +1 -0
  461. package/dist/esm/state/CollectionPage/useCollectionPageHeader.js +18 -6
  462. package/dist/esm/state/CollectionPage/useCollectionPageHeader.js.map +1 -1
  463. package/dist/esm/state/EditableTable/CellValueState.js +50 -6
  464. package/dist/esm/state/EditableTable/CellValueState.js.map +1 -1
  465. package/dist/esm/state/EditableTable/ClipboardState.js +49 -32
  466. package/dist/esm/state/EditableTable/ClipboardState.js.map +1 -1
  467. package/dist/esm/state/EditableTable/utils.js +3 -0
  468. package/dist/esm/state/EditableTable/utils.js.map +1 -1
  469. package/dist/esm/state/FormPage/FormPageHeader.st.css.js +2 -2
  470. package/dist/esm/state/FormPage/useFormPageHeader.js +7 -1
  471. package/dist/esm/state/FormPage/useFormPageHeader.js.map +1 -1
  472. package/dist/esm/styles.global.css +2 -2
  473. package/dist/esm/version.js +1 -1
  474. package/dist/types/components/CmsFieldManagement/CmsFieldForm.st.css.d.ts.map +1 -1
  475. package/dist/types/components/CollectionPageHeaderNew/CollectionPageHeader.d.ts +8 -2
  476. package/dist/types/components/CollectionPageHeaderNew/CollectionPageHeader.d.ts.map +1 -1
  477. package/dist/types/components/CollectionPageNew/CollectionPage.d.ts.map +1 -1
  478. package/dist/types/components/CollectionPageNew/CollectionPage.uni.driver.d.ts +5 -0
  479. package/dist/types/components/CollectionPageNew/CollectionPage.uni.driver.d.ts.map +1 -1
  480. package/dist/types/components/CollectionToolbar/SearchOrCustomFilter.st.css.d.ts.map +1 -1
  481. package/dist/types/components/CustomFieldModal/CustomFieldForm.d.ts.map +1 -1
  482. package/dist/types/components/EditableTable/EditableTable.uni.driver.d.ts +42 -30
  483. package/dist/types/components/EditableTable/EditableTable.uni.driver.d.ts.map +1 -1
  484. package/dist/types/components/EditableTable/EditableTableContextMenu.d.ts.map +1 -1
  485. package/dist/types/components/EditableTable/cellTypes/address/index.d.ts.map +1 -1
  486. package/dist/types/components/EditableTable/cellTypes/array/Edit.st.css.d.ts.map +1 -1
  487. package/dist/types/components/EditableTable/cellTypes/array/index.d.ts.map +1 -1
  488. package/dist/types/components/EditableTable/cellTypes/audio/index.d.ts.map +1 -1
  489. package/dist/types/components/EditableTable/cellTypes/boolean/Edit.st.css.d.ts.map +1 -1
  490. package/dist/types/components/EditableTable/cellTypes/boolean/View.st.css.d.ts.map +1 -1
  491. package/dist/types/components/EditableTable/cellTypes/boolean/index.d.ts.map +1 -1
  492. package/dist/types/components/EditableTable/cellTypes/color/index.d.ts.map +1 -1
  493. package/dist/types/components/EditableTable/cellTypes/date/Edit.st.css.d.ts.map +1 -1
  494. package/dist/types/components/EditableTable/cellTypes/date/index.d.ts.map +1 -1
  495. package/dist/types/components/EditableTable/cellTypes/datetime/index.d.ts.map +1 -1
  496. package/dist/types/components/EditableTable/cellTypes/document/index.d.ts.map +1 -1
  497. package/dist/types/components/EditableTable/cellTypes/email/View.st.css.d.ts.map +1 -1
  498. package/dist/types/components/EditableTable/cellTypes/email/index.d.ts.map +1 -1
  499. package/dist/types/components/EditableTable/cellTypes/image/index.d.ts.map +1 -1
  500. package/dist/types/components/EditableTable/cellTypes/mediaGallery/index.d.ts.map +1 -1
  501. package/dist/types/components/EditableTable/cellTypes/multiDocument/index.d.ts.map +1 -1
  502. package/dist/types/components/EditableTable/cellTypes/multiReference/index.d.ts.map +1 -1
  503. package/dist/types/components/EditableTable/cellTypes/number/index.d.ts.map +1 -1
  504. package/dist/types/components/EditableTable/cellTypes/object/View.st.css.d.ts.map +1 -1
  505. package/dist/types/components/EditableTable/cellTypes/object/index.d.ts.map +1 -1
  506. package/dist/types/components/EditableTable/cellTypes/reference/index.d.ts.map +1 -1
  507. package/dist/types/components/EditableTable/cellTypes/richContent/index.d.ts.map +1 -1
  508. package/dist/types/components/EditableTable/cellTypes/richText/index.d.ts.map +1 -1
  509. package/dist/types/components/EditableTable/cellTypes/select/Edit.st.css.d.ts.map +1 -1
  510. package/dist/types/components/EditableTable/cellTypes/text/index.d.ts.map +1 -1
  511. package/dist/types/components/EditableTable/cellTypes/time/index.d.ts.map +1 -1
  512. package/dist/types/components/EditableTable/cellTypes/url/Edit.st.css.d.ts.map +1 -1
  513. package/dist/types/components/EditableTable/cellTypes/url/index.d.ts.map +1 -1
  514. package/dist/types/components/EditableTable/cellTypes/video/index.d.ts.map +1 -1
  515. package/dist/types/components/EditableTable/types.d.ts +1 -1
  516. package/dist/types/components/EditableTable/types.d.ts.map +1 -1
  517. package/dist/types/components/EditableTable/useClipboardHandler.d.ts.map +1 -1
  518. package/dist/types/components/EntityPage/EntityPagePlain.st.css.d.ts.map +1 -1
  519. package/dist/types/components/LoadingRow/LoadingRow.st.css.d.ts.map +1 -1
  520. package/dist/types/components/MaxHeightText/MaxHeightText.st.css.d.ts.map +1 -1
  521. package/dist/types/components/PageSubTitle/PageSubTitle.d.ts.map +1 -1
  522. package/dist/types/components/PageSubTitle/PageSubTitle.uni.driver.d.ts +2 -0
  523. package/dist/types/components/PageSubTitle/PageSubTitle.uni.driver.d.ts.map +1 -1
  524. package/dist/types/components/PickerContent/PickerContentAdditionalStep.st.css.d.ts.map +1 -1
  525. package/dist/types/components/ScrollableContent/ScrollableContent.st.css.d.ts.map +1 -1
  526. package/dist/types/components/SettingsPage/SettingsPage.uni.driver.d.ts +2 -0
  527. package/dist/types/components/SettingsPage/SettingsPage.uni.driver.d.ts.map +1 -1
  528. package/dist/types/components/SetupWidget/SetupWidget.st.css.d.ts.map +1 -1
  529. package/dist/types/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.d.ts.map +1 -1
  530. package/dist/types/exports/page.d.ts +1 -0
  531. package/dist/types/exports/page.d.ts.map +1 -1
  532. package/dist/types/index.d.ts +1 -1
  533. package/dist/types/index.d.ts.map +1 -1
  534. package/dist/types/state/CollectionPage/PanelHeader.d.ts +2 -0
  535. package/dist/types/state/CollectionPage/PanelHeader.d.ts.map +1 -1
  536. package/dist/types/state/CollectionPage/TitleBadges.d.ts +7 -0
  537. package/dist/types/state/CollectionPage/TitleBadges.d.ts.map +1 -0
  538. package/dist/types/state/CollectionPage/useCollectionPageHeader.d.ts.map +1 -1
  539. package/dist/types/state/EditableTable/CellValueState.d.ts +8 -2
  540. package/dist/types/state/EditableTable/CellValueState.d.ts.map +1 -1
  541. package/dist/types/state/EditableTable/ClipboardState.d.ts +2 -1
  542. package/dist/types/state/EditableTable/ClipboardState.d.ts.map +1 -1
  543. package/dist/types/state/EditableTable/types.d.ts +5 -3
  544. package/dist/types/state/EditableTable/types.d.ts.map +1 -1
  545. package/dist/types/state/EditableTable/utils.d.ts.map +1 -1
  546. package/dist/types/state/FormPage/useFormPageHeader.d.ts.map +1 -1
  547. package/dist/types/testkit/enzyme.d.ts +1 -0
  548. package/dist/types/testkit/enzyme.d.ts.map +1 -1
  549. package/dist/types/testkit/jsdom.d.ts +14 -0
  550. package/dist/types/testkit/jsdom.d.ts.map +1 -1
  551. package/dist/types/testkit/playwright.d.ts +13 -0
  552. package/dist/types/testkit/playwright.d.ts.map +1 -1
  553. package/dist/types/testkit/puppeteer.d.ts +13 -0
  554. package/dist/types/testkit/puppeteer.d.ts.map +1 -1
  555. package/dist/types/version.d.ts +1 -1
  556. package/package.json +9 -7
  557. package/src/components/CardContainer/CardContainer.st.css.ts +2 -2
  558. package/src/components/CmsFieldManagement/CmsFieldForm.st.css.ts +2 -2
  559. package/src/components/CmsFieldManagement/CmsFieldModal.st.css.ts +2 -2
  560. package/src/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.ts +2 -2
  561. package/src/components/Collapse/Collapse.st.css.ts +2 -2
  562. package/src/components/CollectionPageHeaderNew/CollectionPageHeader.tsx +20 -3
  563. package/src/components/CollectionPageNew/CollectionPage.st.css.ts +2 -2
  564. package/src/components/CollectionPageNew/CollectionPage.tsx +1 -0
  565. package/src/components/CollectionPageNew/CollectionPage.uni.driver.ts +12 -0
  566. package/src/components/CollectionSectionHeader/CollectionSectionHeader.st.css.ts +2 -2
  567. package/src/components/CollectionTable/CollectionTable.st.css.ts +2 -2
  568. package/src/components/CollectionTable/CollectionTableWSRTable.st.css.ts +2 -2
  569. package/src/components/CollectionToolbar/CollectionToolbar.st.css.ts +2 -2
  570. package/src/components/CollectionToolbar/SearchOrCustomFilter.st.css.ts +2 -2
  571. package/src/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.ts +2 -2
  572. package/src/components/CollectionViewsDropdown/ViewsDropdown.st.css.ts +2 -2
  573. package/src/components/CustomFieldModal/CustomFieldForm.tsx +4 -1
  574. package/src/components/DragHandle/DragHandle.st.css.ts +2 -2
  575. package/src/components/EditableTable/EditableCell.st.css.ts +2 -2
  576. package/src/components/EditableTable/EditableTable.uni.driver.ts +30 -3
  577. package/src/components/EditableTable/EditableTableContextMenu.tsx +27 -26
  578. package/src/components/EditableTable/HeaderActionsPopover.st.css.ts +2 -2
  579. package/src/components/EditableTable/cellTypes/CellViewLayout.st.css.ts +2 -2
  580. package/src/components/EditableTable/cellTypes/address/Edit.st.css.ts +2 -2
  581. package/src/components/EditableTable/cellTypes/address/index.tsx +0 -1
  582. package/src/components/EditableTable/cellTypes/array/Edit.st.css.ts +2 -2
  583. package/src/components/EditableTable/cellTypes/array/index.ts +0 -1
  584. package/src/components/EditableTable/cellTypes/audio/index.ts +0 -1
  585. package/src/components/EditableTable/cellTypes/boolean/Edit.st.css.ts +2 -2
  586. package/src/components/EditableTable/cellTypes/boolean/View.st.css.ts +2 -2
  587. package/src/components/EditableTable/cellTypes/boolean/index.ts +0 -1
  588. package/src/components/EditableTable/cellTypes/color/Edit.st.css.ts +2 -2
  589. package/src/components/EditableTable/cellTypes/color/index.tsx +1 -2
  590. package/src/components/EditableTable/cellTypes/date/Edit.st.css.ts +2 -2
  591. package/src/components/EditableTable/cellTypes/date/View.st.css.ts +2 -2
  592. package/src/components/EditableTable/cellTypes/date/index.ts +0 -1
  593. package/src/components/EditableTable/cellTypes/datetime/Edit.st.css.ts +2 -2
  594. package/src/components/EditableTable/cellTypes/datetime/View.st.css.ts +2 -2
  595. package/src/components/EditableTable/cellTypes/datetime/index.ts +0 -1
  596. package/src/components/EditableTable/cellTypes/document/index.ts +0 -1
  597. package/src/components/EditableTable/cellTypes/email/Edit.st.css.ts +2 -2
  598. package/src/components/EditableTable/cellTypes/email/View.st.css.ts +2 -2
  599. package/src/components/EditableTable/cellTypes/email/index.ts +0 -1
  600. package/src/components/EditableTable/cellTypes/image/index.ts +0 -1
  601. package/src/components/EditableTable/cellTypes/mediaGallery/index.tsx +6 -3
  602. package/src/components/EditableTable/cellTypes/multiDocument/index.ts +0 -1
  603. package/src/components/EditableTable/cellTypes/multiReference/index.ts +0 -1
  604. package/src/components/EditableTable/cellTypes/number/Edit.st.css.ts +2 -2
  605. package/src/components/EditableTable/cellTypes/number/View.st.css.ts +2 -2
  606. package/src/components/EditableTable/cellTypes/number/index.ts +0 -1
  607. package/src/components/EditableTable/cellTypes/object/Edit.st.css.ts +2 -2
  608. package/src/components/EditableTable/cellTypes/object/View.st.css.ts +2 -2
  609. package/src/components/EditableTable/cellTypes/object/index.ts +0 -1
  610. package/src/components/EditableTable/cellTypes/reference/index.ts +0 -1
  611. package/src/components/EditableTable/cellTypes/richContent/index.tsx +0 -1
  612. package/src/components/EditableTable/cellTypes/richText/index.tsx +0 -1
  613. package/src/components/EditableTable/cellTypes/select/Edit.st.css.ts +2 -2
  614. package/src/components/EditableTable/cellTypes/text/Edit.st.css.ts +2 -2
  615. package/src/components/EditableTable/cellTypes/text/View.st.css.ts +2 -2
  616. package/src/components/EditableTable/cellTypes/text/index.ts +3 -2
  617. package/src/components/EditableTable/cellTypes/time/Edit.st.css.ts +2 -2
  618. package/src/components/EditableTable/cellTypes/time/index.ts +0 -1
  619. package/src/components/EditableTable/cellTypes/url/Edit.st.css.ts +2 -2
  620. package/src/components/EditableTable/cellTypes/url/View.st.css.ts +2 -2
  621. package/src/components/EditableTable/cellTypes/url/index.ts +0 -1
  622. package/src/components/EditableTable/cellTypes/video/index.ts +0 -1
  623. package/src/components/EditableTable/types.ts +3 -0
  624. package/src/components/EditableTable/useClipboardHandler.ts +28 -5
  625. package/src/components/EmptyState/EmptyStateBase.st.css.ts +2 -2
  626. package/src/components/EntityPage/EntityPagePlain.st.css.ts +2 -2
  627. package/src/components/Fade/Fade.st.css.ts +2 -2
  628. package/src/components/Heading/Heading.st.css.ts +2 -2
  629. package/src/components/ImportButton/ImportStepUpload.st.css.ts +2 -2
  630. package/src/components/InputOverflow/InputOverflow.st.css.ts +2 -2
  631. package/src/components/LoadingRow/LoadingRow.st.css.ts +3 -3
  632. package/src/components/MaxHeightText/MaxHeightText.st.css.ts +2 -2
  633. package/src/components/MaxLines/MaxLines.st.css.ts +2 -2
  634. package/src/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.ts +2 -2
  635. package/src/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.ts +2 -2
  636. package/src/components/NestedTable/NestedTableRow.st.css.ts +2 -2
  637. package/src/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.ts +2 -2
  638. package/src/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.ts +2 -2
  639. package/src/components/PageSubTitle/PageSubTitle.tsx +16 -1
  640. package/src/components/PageSubTitle/PageSubTitle.uni.driver.ts +4 -0
  641. package/src/components/PickerContent/PickerContent.st.css.ts +2 -2
  642. package/src/components/PickerContent/PickerContentAdditionalStep.st.css.ts +2 -2
  643. package/src/components/PickerTableListItem/PickerTableListItem.st.css.ts +2 -2
  644. package/src/components/ScrollableContent/ScrollableContent.st.css.ts +2 -2
  645. package/src/components/SettingsPage/SettingsPage.uni.driver.ts +4 -0
  646. package/src/components/SetupWidget/SetupWidget.st.css.ts +2 -2
  647. package/src/components/SkeletonCard/SkeletonCard.st.css.ts +2 -2
  648. package/src/components/SlidingModal/SlidingModal.st.css.ts +2 -2
  649. package/src/components/Table/AddFieldColumnHeader.st.css.ts +2 -2
  650. package/src/components/TabsFilter/TabsFilter.st.css.ts +2 -2
  651. package/src/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.ts +2 -2
  652. package/src/components/ToolbarItem/ToolbarItem.st.css.ts +2 -2
  653. package/src/components/ToolbarItemBox/ToolbarItemBox.st.css.ts +2 -2
  654. package/src/components/common.st.css.ts +2 -2
  655. package/src/exports/page.ts +4 -0
  656. package/src/index.ts +3 -0
  657. package/src/state/CollectionPage/CollectionPageHeader.st.css.ts +2 -2
  658. package/src/state/CollectionPage/PanelHeader.tsx +10 -4
  659. package/src/state/CollectionPage/TitleBadges.tsx +42 -0
  660. package/src/state/CollectionPage/useCollectionPageHeader.tsx +35 -5
  661. package/src/state/EditableTable/CellValueState.ts +74 -7
  662. package/src/state/EditableTable/ClipboardState.ts +55 -40
  663. package/src/state/EditableTable/types.ts +11 -3
  664. package/src/state/EditableTable/utils.ts +4 -0
  665. package/src/state/FormPage/FormPageHeader.st.css.ts +2 -2
  666. package/src/state/FormPage/useFormPageHeader.tsx +10 -1
  667. package/src/styles.global.css +2 -2
  668. package/src/version.ts +1 -1
@@ -1,3 +1,7 @@
1
1
  export * from '../components/CollectionPageNew';
2
+ export type {
3
+ CollectionPageHeaderBadge,
4
+ CollectionPageHeaderProps,
5
+ } from '../components/CollectionPageHeaderNew';
2
6
 
3
7
  export { WidgetsFormProvider } from '../components/FormPage';
package/src/index.ts CHANGED
@@ -181,6 +181,9 @@ export {
181
181
  type FormTypeConfig,
182
182
  type FormFieldComponentProps,
183
183
  type EditableCellConfig,
184
+ type EditableCellContextMenuAction,
185
+ type EditableCellContextMenuActionConfig,
186
+ type EditableCellContextMenuActionContext,
184
187
  type TableCellConfig,
185
188
  type CellViewProps,
186
189
  type CellEditProps,
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../stylable-esm-runtime.js";
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "CollectionPageHeader1525849123";
8
+ var _namespace_ = "CollectionPageHeader2538056537";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"CollectionPageHeader1525849123__root"};
16
+ export var classes = {"root":"CollectionPageHeader2538056537__root"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -1,20 +1,26 @@
1
1
  import { Box, Text } from '@wix/design-system';
2
2
  import React from 'react';
3
+ import { CollectionPageHeaderBadge } from '../../components/CollectionPageHeaderNew';
4
+ import { TitleBadges } from './TitleBadges';
3
5
 
4
6
  export interface PanelHeaderProps {
5
7
  title: string;
6
8
  subtitle?: string;
9
+ badges?: CollectionPageHeaderBadge[];
7
10
  }
8
11
 
9
12
  export function PanelHeader(props: PanelHeaderProps) {
10
- const { title, subtitle } = props;
13
+ const { title, subtitle, badges } = props;
11
14
 
12
15
  return (
13
16
  <Box padding="SP4">
14
17
  <Box direction="vertical">
15
- <Text size="small" weight="bold">
16
- {title}
17
- </Text>
18
+ <Box verticalAlign="middle">
19
+ <Text size="small" weight="bold">
20
+ {title}
21
+ </Text>
22
+ <TitleBadges badges={badges} />
23
+ </Box>
18
24
  {subtitle && <Text size="tiny">{subtitle}</Text>}
19
25
  </Box>
20
26
  </Box>
@@ -0,0 +1,42 @@
1
+ import React, { lazy, Suspense } from 'react';
2
+ import { Box } from '@wix/design-system';
3
+ import { CollectionPageHeaderBadge } from '../../components/CollectionPageHeaderNew';
4
+
5
+ const LazyBadge = lazy(() =>
6
+ import('@wix/design-system').then((m) => ({ default: m.Badge })),
7
+ );
8
+
9
+ export interface TitleBadgesProps {
10
+ badges?: CollectionPageHeaderBadge[];
11
+ }
12
+
13
+ export function TitleBadges({ badges }: TitleBadgesProps) {
14
+ if (!badges?.length) {
15
+ return null;
16
+ }
17
+
18
+ return (
19
+ <Suspense fallback={null}>
20
+ <Box
21
+ inline
22
+ gap="SP2"
23
+ verticalAlign="middle"
24
+ paddingLeft="SP2"
25
+ flexShrink={0}
26
+ >
27
+ {badges.map((badge, index) => (
28
+ <LazyBadge
29
+ key={index}
30
+ size="small"
31
+ skin={badge.skin}
32
+ prefixIcon={badge.prefixIcon}
33
+ suffixIcon={badge.suffixIcon}
34
+ dataHook={`collection-page-header-badge-${index}`}
35
+ >
36
+ {badge.text}
37
+ </LazyBadge>
38
+ ))}
39
+ </Box>
40
+ </Suspense>
41
+ );
42
+ }
@@ -1,14 +1,19 @@
1
1
  import React from 'react';
2
2
  import { Box, Heading, Page } from '@wix/design-system';
3
- import { CollectionPageHeaderElement } from '../../components/CollectionPageHeaderNew';
3
+ import {
4
+ CollectionPageHeaderBadge,
5
+ CollectionPageHeaderElement,
6
+ } from '../../components/CollectionPageHeaderNew';
4
7
  import { useCollectionPageContext } from '../../providers';
5
8
  import { observer } from 'mobx-react-lite';
6
9
  import { PageSubTitle } from '../../components/PageSubTitle';
7
10
  import { useIsMobile } from '../../hooks/useIsMobile';
8
11
  import { classes, st } from './CollectionPageHeader.st.css.js';
9
12
  import { useWixPatternsContainer } from '@wix/bex-core/react';
13
+ import { useBmHarmonyTheme } from '../../hooks/useBmHarmonyTheme';
10
14
  import { PanelHeader } from './PanelHeader';
11
15
  import { CollectionPageActionsBar } from './CollectionPageActionsBar';
16
+ import { TitleBadges } from './TitleBadges';
12
17
 
13
18
  export function useCollectionPageHeader(child: CollectionPageHeaderElement) {
14
19
  const isMobile = useIsMobile();
@@ -19,6 +24,7 @@ export function useCollectionPageHeader(child: CollectionPageHeaderElement) {
19
24
  <PanelHeader
20
25
  title={child.props.title.text}
21
26
  subtitle={child.props.subtitle?.text}
27
+ badges={child.props.title.badges}
22
28
  />
23
29
  );
24
30
  }
@@ -28,7 +34,12 @@ export function useCollectionPageHeader(child: CollectionPageHeaderElement) {
28
34
  key={child.key}
29
35
  className={st(classes.root, { mobile: isMobile })}
30
36
  dataHook="collection-page-header"
31
- title={(minimized) => <CollectionPageHeaderTitle minimized={minimized} />}
37
+ title={(minimized) => (
38
+ <CollectionPageHeaderTitle
39
+ minimized={minimized}
40
+ badges={child.props.title.badges}
41
+ />
42
+ )}
32
43
  subtitle={
33
44
  child.props.subtitle ? (
34
45
  <PageSubTitle {...child.props.subtitle} />
@@ -47,19 +58,37 @@ export function useCollectionPageHeader(child: CollectionPageHeaderElement) {
47
58
  }
48
59
 
49
60
  const CollectionPageHeaderTitle = observer(
50
- ({ minimized }: { minimized: boolean }) => {
61
+ ({
62
+ minimized,
63
+ badges,
64
+ }: {
65
+ minimized: boolean;
66
+ badges?: CollectionPageHeaderBadge[];
67
+ }) => {
51
68
  const state = useCollectionPageContext();
52
69
  const isMobile = useIsMobile();
70
+ const isBmHarmonyTheme = useBmHarmonyTheme();
53
71
 
54
72
  if (minimized) {
55
73
  return <>{state.pageTitle}</>;
56
74
  }
57
75
 
76
+ // Page.Header sizes its own title wrapper from
77
+ // `--wds-page-header-title-font-size`, which Harmony maps to the `large`
78
+ // heading tokens. The nested Heading needs the same size or it keeps
79
+ // painting the 32px `extraLarge` tokens over it.
80
+ const titleSize = isMobile || isBmHarmonyTheme ? 'large' : 'extraLarge';
81
+
82
+ // Page.Header already wraps this in the page's `h1`, so both Headings here
83
+ // only carry typography — `as` keeps them from nesting more headings
84
+ // inside it.
58
85
  return (
59
- <Heading size={isMobile ? 'large' : 'extraLarge'}>
86
+ <Heading as="div" size={titleSize}>
60
87
  <Box inline maxLines={1} paddingRight="9px" minWidth={0} width="100%">
61
88
  <Heading
62
- size={isMobile ? 'large' : 'extraLarge'}
89
+ as="span"
90
+ dataHook="collection-page-header-title"
91
+ size={titleSize}
63
92
  ellipsis
64
93
  showTooltip={!isMobile}
65
94
  placement="bottom"
@@ -76,6 +105,7 @@ const CollectionPageHeaderTitle = observer(
76
105
  {state.total}
77
106
  </Box>
78
107
  )}
108
+ <TitleBadges badges={badges} />
79
109
  </Box>
80
110
  </Heading>
81
111
  );
@@ -1,6 +1,6 @@
1
1
  import { action, computed, makeObservable, observable } from 'mobx';
2
2
  import type { CellType, Cell, ValidationResult } from './types';
3
- import type { FiltersMap } from '@wix/bex-core';
3
+ import type { EditableCellContextMenuAction, FiltersMap } from '@wix/bex-core';
4
4
  import type { EditableTableState } from './EditableTableState';
5
5
  import {
6
6
  builtInCellTypes,
@@ -145,6 +145,71 @@ export class CellValueState<T, F extends FiltersMap> {
145
145
  return column.editable !== false;
146
146
  }
147
147
 
148
+ getCellActionDisabledTooltip(
149
+ actionId: EditableCellContextMenuAction,
150
+ cell: Cell,
151
+ ): string | undefined {
152
+ const column = this._parent._columnMap.get(cell.columnId);
153
+ if (!column) {
154
+ return undefined;
155
+ }
156
+
157
+ const contextMenu = this.resolveCellTypeByColumnId(
158
+ cell.columnId,
159
+ ).contextMenu;
160
+ if (!contextMenu) {
161
+ return undefined;
162
+ }
163
+
164
+ const context = {
165
+ value: this.getCellDisplayValue(cell.rowKey, cell.columnId),
166
+ field: column.field,
167
+ rowKey: cell.rowKey,
168
+ columnId: cell.columnId,
169
+ };
170
+ const configs =
171
+ actionId === 'cut'
172
+ ? [contextMenu.cut, contextMenu.copy, contextMenu.clear]
173
+ : [contextMenu[actionId]];
174
+
175
+ for (const config of configs) {
176
+ const tooltip = config?.disabledTooltip(context);
177
+ if (tooltip) {
178
+ return tooltip;
179
+ }
180
+ }
181
+ return undefined;
182
+ }
183
+
184
+ getActionableCells(
185
+ actionId: EditableCellContextMenuAction,
186
+ cells: Cell[],
187
+ ): Cell[] {
188
+ return cells.filter(
189
+ (cell) => !this.getCellActionDisabledTooltip(actionId, cell),
190
+ );
191
+ }
192
+
193
+ getCellActionMenuAvailability(
194
+ actionId: EditableCellContextMenuAction,
195
+ cells: Cell[],
196
+ ): { disabled: boolean; disabledTooltip?: string } {
197
+ let disabledTooltip: string | undefined;
198
+
199
+ for (const cell of cells) {
200
+ const tooltip = this.getCellActionDisabledTooltip(actionId, cell);
201
+ disabledTooltip ??= tooltip;
202
+ const isAvailableWithoutCustomPolicy =
203
+ actionId === 'copy' ||
204
+ this.isColumnEditable(cell.rowKey, cell.columnId);
205
+ if (isAvailableWithoutCustomPolicy && !tooltip) {
206
+ return { disabled: false };
207
+ }
208
+ }
209
+
210
+ return { disabled: true, disabledTooltip };
211
+ }
212
+
148
213
  /** Serialize a cell value to a string (for clipboard copy/cut). */
149
214
  serializeCellValue(rowKey: string, columnId: string): string {
150
215
  const column = this._parent._columnMap.get(columnId);
@@ -157,7 +222,7 @@ export class CellValueState<T, F extends FiltersMap> {
157
222
  return resolved.serialize ? resolved.serialize(value) : String(value ?? '');
158
223
  }
159
224
 
160
- /** Clear selected cells (Delete/Backspace). Respects cellType.clearable and column.editable. */
225
+ /** Clear selected cells (Delete/Backspace). Respects column.editable and contextMenu.clear. */
161
226
  clearCells(cells: Cell[]) {
162
227
  const changes: { rowKey: string; columnId: string; value: any }[] = [];
163
228
 
@@ -166,11 +231,10 @@ export class CellValueState<T, F extends FiltersMap> {
166
231
  if (!column?.setValue) {
167
232
  continue;
168
233
  }
169
- const resolved = this.resolveCellTypeByColumnId(column.id);
170
- if (resolved.clearable === false) {
234
+ if (!this.isColumnEditable(cell.rowKey, cell.columnId)) {
171
235
  continue;
172
236
  }
173
- if (!this.isColumnEditable(cell.rowKey, cell.columnId)) {
237
+ if (this.getCellActionDisabledTooltip('clear', cell)) {
174
238
  continue;
175
239
  }
176
240
 
@@ -178,8 +242,11 @@ export class CellValueState<T, F extends FiltersMap> {
178
242
  if (pendingKey) {
179
243
  this._pendingCells.delete(pendingKey);
180
244
  }
181
- const value = resolved.deserialize ? resolved.deserialize('') : '';
182
- changes.push({ rowKey: cell.rowKey, columnId: cell.columnId, value });
245
+ changes.push({
246
+ rowKey: cell.rowKey,
247
+ columnId: cell.columnId,
248
+ value: undefined,
249
+ });
183
250
  }
184
251
 
185
252
  if (changes.length > 0) {
@@ -1,14 +1,15 @@
1
1
  import { action, computed, makeObservable, observable } from 'mobx';
2
- import type { CellBorder } from './types';
3
- import type { FiltersMap } from '@wix/bex-core';
2
+ import type { Cell, CellBorder } from './types';
3
+ import type { EditableCellContextMenuAction, FiltersMap } from '@wix/bex-core';
4
4
  import type { EditableTableState } from './EditableTableState';
5
5
  import { cellKey, parseCellKey, noBorder } from './utils';
6
6
 
7
7
  export class ClipboardState<T, F extends FiltersMap> {
8
8
  copiedCells = new Set<string>();
9
9
  isCut = false;
10
- private _copiedDataString = '';
10
+ private _copiedDataString?: string;
11
11
  private _copiedValues = new Map<string, any>();
12
+ private _copiedSourceKeys = new Map<string, string>();
12
13
  private readonly _parent: EditableTableState<T, F>;
13
14
 
14
15
  constructor(parent: EditableTableState<T, F>) {
@@ -29,7 +30,7 @@ export class ClipboardState<T, F extends FiltersMap> {
29
30
  */
30
31
  copy(): string {
31
32
  this.clear();
32
- return this._storeCells();
33
+ return this._storeCells('copy');
33
34
  }
34
35
 
35
36
  /**
@@ -37,8 +38,9 @@ export class ClipboardState<T, F extends FiltersMap> {
37
38
  */
38
39
  cut(): string {
39
40
  this.clear();
40
- this.isCut = true;
41
- return this._storeCells();
41
+ const data = this._storeCells('cut');
42
+ this.isCut = this.copiedCells.size > 0;
43
+ return data;
42
44
  }
43
45
 
44
46
  /**
@@ -52,15 +54,19 @@ export class ClipboardState<T, F extends FiltersMap> {
52
54
  if (!target) {
53
55
  return;
54
56
  }
57
+ if (cellValue.getCellActionDisabledTooltip('paste', target)) {
58
+ return;
59
+ }
55
60
  const targetPos = this._parent._toIndices(target);
56
61
  if (!targetPos) {
57
62
  return;
58
63
  }
59
64
 
60
65
  const isInternal =
61
- this._copiedDataString !== '' && this._copiedDataString === rawData;
66
+ this._copiedDataString !== undefined &&
67
+ this._copiedDataString === rawData;
62
68
 
63
- const pastedKeys = this._pasteGrid(
69
+ const keptSourceKeys = this._pasteGrid(
64
70
  rawData,
65
71
  targetPos,
66
72
  isInternal,
@@ -68,7 +74,7 @@ export class ClipboardState<T, F extends FiltersMap> {
68
74
  );
69
75
 
70
76
  if (this.isCut && isInternal) {
71
- this._clearCutSources(pastedKeys, cellValue);
77
+ this._clearCutSources(keptSourceKeys, cellValue);
72
78
  }
73
79
 
74
80
  this.clear();
@@ -80,32 +86,44 @@ export class ClipboardState<T, F extends FiltersMap> {
80
86
  useRichValues: boolean,
81
87
  cellValue: EditableTableState<T, F>['cellValue'],
82
88
  ): Set<string> {
83
- const pastedKeys = new Set<string>();
89
+ const keptSourceKeys = new Set<string>();
84
90
  const richChanges: { rowKey: string; columnId: string; value: any }[] = [];
85
91
  const rawChanges: { rowKey: string; columnId: string; rawValue: string }[] =
86
92
  [];
87
- const rows = rawData.split(/\r?\n/).filter((r) => r.length > 0);
93
+ const rows = rawData
94
+ .split(/\r?\n/)
95
+ .filter((row) => useRichValues || row.length > 0);
88
96
 
89
97
  for (let r = 0; r < rows.length; r++) {
90
98
  const cols = rows[r].split('\t');
91
99
  for (let c = 0; c < cols.length; c++) {
100
+ const offset = `${r}:${c}`;
101
+ if (useRichValues && !this._copiedValues.has(offset)) {
102
+ continue;
103
+ }
104
+
92
105
  const dest = this._parent._toPosition(
93
106
  targetPos.row + r,
94
107
  targetPos.col + c,
95
108
  );
96
- if (!dest) {
109
+ if (
110
+ !dest ||
111
+ !cellValue.isColumnEditable(dest.rowKey, dest.columnId) ||
112
+ cellValue.getCellActionDisabledTooltip('paste', dest)
113
+ ) {
114
+ const sourceKey = this._copiedSourceKeys.get(offset);
115
+ if (sourceKey) {
116
+ keptSourceKeys.add(sourceKey);
117
+ }
97
118
  continue;
98
119
  }
99
120
 
100
- const richValue = useRichValues
101
- ? this._copiedValues.get(`${r}:${c}`)
102
- : undefined;
103
-
104
- if (richValue !== undefined) {
121
+ keptSourceKeys.add(cellKey(dest.rowKey, dest.columnId));
122
+ if (useRichValues) {
105
123
  richChanges.push({
106
124
  rowKey: dest.rowKey,
107
125
  columnId: dest.columnId,
108
- value: richValue,
126
+ value: this._copiedValues.get(offset),
109
127
  });
110
128
  } else {
111
129
  rawChanges.push({
@@ -114,8 +132,6 @@ export class ClipboardState<T, F extends FiltersMap> {
114
132
  rawValue: cols[c],
115
133
  });
116
134
  }
117
-
118
- pastedKeys.add(cellKey(dest.rowKey, dest.columnId));
119
135
  }
120
136
  }
121
137
 
@@ -126,40 +142,33 @@ export class ClipboardState<T, F extends FiltersMap> {
126
142
  cellValue.applyBulkRawValues(rawChanges);
127
143
  }
128
144
 
129
- return pastedKeys;
145
+ return keptSourceKeys;
130
146
  }
131
147
 
132
148
  private _clearCutSources(
133
- pastedKeys: Set<string>,
149
+ keptSourceKeys: Set<string>,
134
150
  cellValue: EditableTableState<T, F>['cellValue'],
135
151
  ) {
136
- const rawChanges: {
137
- rowKey: string;
138
- columnId: string;
139
- rawValue: string;
140
- }[] = [];
152
+ const cells: Cell[] = [];
141
153
  for (const key of this.copiedCells) {
142
- if (pastedKeys.has(key)) {
154
+ if (keptSourceKeys.has(key)) {
143
155
  continue;
144
156
  }
145
157
  const pos = parseCellKey(key);
146
158
  if (pos) {
147
- rawChanges.push({
148
- rowKey: pos.rowKey,
149
- columnId: pos.columnId,
150
- rawValue: '',
151
- });
159
+ cells.push(pos);
152
160
  }
153
161
  }
154
162
 
155
- cellValue.applyBulkRawValues(rawChanges);
163
+ cellValue.clearCells(cells);
156
164
  }
157
165
 
158
166
  clear() {
159
167
  this.copiedCells.clear();
160
168
  this.isCut = false;
161
- this._copiedDataString = '';
169
+ this._copiedDataString = undefined;
162
170
  this._copiedValues.clear();
171
+ this._copiedSourceKeys.clear();
163
172
  }
164
173
 
165
174
  isCellCopied(rowKey: string, columnId: string): boolean {
@@ -196,19 +205,23 @@ export class ClipboardState<T, F extends FiltersMap> {
196
205
  return this.copiedCells.size > 0;
197
206
  }
198
207
 
199
- private _storeCells(): string {
200
- const cells = this._parent.cellInteraction.selectedCellsList;
201
- if (cells.length === 0) {
208
+ private _storeCells(actionId: EditableCellContextMenuAction): string {
209
+ const selectedCells = this._parent.cellInteraction.selectedCellsList;
210
+ if (selectedCells.length === 0) {
202
211
  return '';
203
212
  }
204
213
 
205
214
  const { cellValue } = this._parent;
215
+ const cells = cellValue.getActionableCells(actionId, selectedCells);
216
+ if (cells.length === 0) {
217
+ return '';
218
+ }
206
219
 
207
220
  for (const cell of cells) {
208
221
  this.copiedCells.add(cellKey(cell.rowKey, cell.columnId));
209
222
  }
210
223
 
211
- const indices = cells
224
+ const indices = selectedCells
212
225
  .map((c) => this._parent._toIndices(c))
213
226
  .filter((idx): idx is { row: number; col: number } => idx !== null);
214
227
 
@@ -232,10 +245,12 @@ export class ClipboardState<T, F extends FiltersMap> {
232
245
  pos.columnId,
233
246
  );
234
247
  row.push(serialized);
248
+ const offset = `${r - minRow}:${c - minCol}`;
235
249
  this._copiedValues.set(
236
- `${r - minRow}:${c - minCol}`,
250
+ offset,
237
251
  cellValue.getCellDisplayValue(pos.rowKey, pos.columnId),
238
252
  );
253
+ this._copiedSourceKeys.set(offset, cellKey(pos.rowKey, pos.columnId));
239
254
  } else {
240
255
  row.push('');
241
256
  }
@@ -1,5 +1,10 @@
1
1
  import type { ComponentType } from 'react';
2
- import type { Translate, ValidationRule } from '@wix/bex-core';
2
+ import type {
3
+ EditableCellConfig,
4
+ Field,
5
+ Translate,
6
+ ValidationRule,
7
+ } from '@wix/bex-core';
3
8
  import type { RichTextStyleVariables } from '@wix/patterns-fields';
4
9
  import type { TableColumn } from '../../model/tableColumn';
5
10
  import type { ReferenceTypeConfig } from '../../components/EditableTable/cellTypes/reference/types';
@@ -61,8 +66,8 @@ export interface CellType {
61
66
  /** Can this cell type be edited? (default: true) */
62
67
  editable?: boolean;
63
68
 
64
- /** Can this cell type be cleared with Delete key? (default: true) */
65
- clearable?: boolean;
69
+ /** Availability of Cairo's built-in cell context-menu actions. */
70
+ contextMenu?: EditableCellConfig<unknown>['contextMenu'];
66
71
 
67
72
  /** Toggle value on single click (e.g., boolean checkbox). Skips focus→edit flow. */
68
73
  toggleValue?: (value: any) => any;
@@ -150,6 +155,9 @@ interface EditableColumnBase<T> extends Omit<TableColumn<T>, 'render'> {
150
155
  /** Extract the cell value from the row data */
151
156
  getValue: (item: T) => any;
152
157
 
158
+ /** Field metadata associated with the column, when available. */
159
+ field?: Field;
160
+
153
161
  /** Return updated item with new cell value (immutable) */
154
162
  setValue?: (item: T, value: any) => T;
155
163
 
@@ -28,6 +28,10 @@ export const noBorder: CellBorder = {
28
28
  export const validResult: ValidationResult = { valid: true };
29
29
 
30
30
  function checkValidationRule(rule: ValidationRule, value: any): boolean {
31
+ if (value == null && rule.type !== 'required' && rule.type !== 'custom') {
32
+ return true;
33
+ }
34
+
31
35
  switch (rule.type) {
32
36
  case 'required':
33
37
  return value != null && value !== '';
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../stylable-esm-runtime.js";
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "FormPageHeader1416345675";
8
+ var _namespace_ = "FormPageHeader2338696575";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"FormPageHeader1416345675__root"};
16
+ export var classes = {"root":"FormPageHeader2338696575__root"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -13,6 +13,7 @@ import { FormPageActionsBar } from '../../components/FormPage';
13
13
  import { PageSubTitle, PageSubTitleProps } from '../../components/PageSubTitle';
14
14
  import { st, classes } from './FormPageHeader.st.css.js';
15
15
  import { useIsMobile } from '../../hooks/useIsMobile';
16
+ import { useBmHarmonyTheme } from '../../hooks/useBmHarmonyTheme';
16
17
  import { FormPageHeaderProps } from '../../components/FormPageHeader';
17
18
 
18
19
  export function useFormPageHeader(
@@ -31,6 +32,7 @@ export function useFormPageHeader(
31
32
  ) {
32
33
  const state = useFormPageContext();
33
34
  const isMobile = useIsMobile();
35
+ const isBmHarmonyTheme = useBmHarmonyTheme();
34
36
  const { title, subtitle, breadcrumbs } = overrides;
35
37
 
36
38
  const actionsBar = (
@@ -44,9 +46,16 @@ export function useFormPageHeader(
44
46
 
45
47
  const { text, badges } = title;
46
48
 
49
+ // Match the size Page.Header's own title wrapper takes from
50
+ // `--wds-page-header-title-font-size` — otherwise this nested Heading
51
+ // paints the 32px `extraLarge` tokens over Harmony's 24px.
52
+ const titleSize = isMobile || isBmHarmonyTheme ? 'large' : 'extraLarge';
53
+
47
54
  return (
48
55
  <Box gap="SP2" verticalAlign="middle" alignContent="center">
49
- <Heading size={isMobile ? 'large' : 'extraLarge'}>{text}</Heading>
56
+ <Heading as="span" dataHook="form-page-header-title" size={titleSize}>
57
+ {text}
58
+ </Heading>
50
59
  {badges && badges.length > 0 && (
51
60
  <Box gap="SP2">
52
61
  {badges.map((badge, index) => (