@wix/patterns 1.476.0 → 1.478.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 (570) 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/CollectionPageNew/CollectionPage.st.css.js +2 -2
  12. package/dist/cjs/components/CollectionPageNew/CollectionPage.st.css.js.map +1 -1
  13. package/dist/cjs/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js +3 -3
  14. package/dist/cjs/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js.map +1 -1
  15. package/dist/cjs/components/CollectionTable/CollectionTable.st.css.js +2 -2
  16. package/dist/cjs/components/CollectionTable/CollectionTable.st.css.js.map +1 -1
  17. package/dist/cjs/components/CollectionTable/CollectionTableWSRTable.st.css.js +2 -2
  18. package/dist/cjs/components/CollectionTable/CollectionTableWSRTable.st.css.js.map +1 -1
  19. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js +5 -5
  20. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js.map +1 -1
  21. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +4 -4
  22. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js.map +1 -1
  23. package/dist/cjs/components/CollectionToolbar/ToolbarOverflowMenu.js +57 -22
  24. package/dist/cjs/components/CollectionToolbar/ToolbarOverflowMenu.js.map +1 -1
  25. package/dist/cjs/components/CollectionToolbar/useToolbarOverflowItems.js +7 -1
  26. package/dist/cjs/components/CollectionToolbar/useToolbarOverflowItems.js.map +1 -1
  27. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
  28. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js.map +1 -1
  29. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
  30. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js.map +1 -1
  31. package/dist/cjs/components/CustomFieldModal/CustomFieldForm.js +13 -13
  32. package/dist/cjs/components/CustomFieldModal/CustomFieldForm.js.map +1 -1
  33. package/dist/cjs/components/CustomFieldModal/CustomFieldFormPiiFields.js +37 -21
  34. package/dist/cjs/components/CustomFieldModal/CustomFieldFormPiiFields.js.map +1 -1
  35. package/dist/cjs/components/CustomFieldModal/CustomFieldFormPiiFields.st.css +15 -0
  36. package/dist/cjs/components/CustomFieldModal/CustomFieldFormPiiFields.st.css.js +28 -0
  37. package/dist/cjs/components/CustomFieldModal/CustomFieldFormPiiFields.st.css.js.map +1 -0
  38. package/dist/cjs/components/CustomFieldModal/CustomFieldTypeDropdown.js +6 -8
  39. package/dist/cjs/components/CustomFieldModal/CustomFieldTypeDropdown.js.map +1 -1
  40. package/dist/cjs/components/DragHandle/DragHandle.st.css.js +2 -2
  41. package/dist/cjs/components/DragHandle/DragHandle.st.css.js.map +1 -1
  42. package/dist/cjs/components/EditableTable/AddItemRow.js +6 -3
  43. package/dist/cjs/components/EditableTable/AddItemRow.js.map +1 -1
  44. package/dist/cjs/components/EditableTable/EditableCell.st.css.js +3 -3
  45. package/dist/cjs/components/EditableTable/EditableCell.st.css.js.map +1 -1
  46. package/dist/cjs/components/EditableTable/EditableTable.js +12 -10
  47. package/dist/cjs/components/EditableTable/EditableTable.js.map +1 -1
  48. package/dist/cjs/components/EditableTable/EditableTable.uni.driver.js +1 -0
  49. package/dist/cjs/components/EditableTable/EditableTable.uni.driver.js.map +1 -1
  50. package/dist/cjs/components/EditableTable/EditableTableContextMenu.js +15 -11
  51. package/dist/cjs/components/EditableTable/EditableTableContextMenu.js.map +1 -1
  52. package/dist/cjs/components/EditableTable/HeaderActionsPopover.st.css.js +2 -2
  53. package/dist/cjs/components/EditableTable/HeaderActionsPopover.st.css.js.map +1 -1
  54. package/dist/cjs/components/EditableTable/cellTypes/CellViewLayout.st.css.js +2 -2
  55. package/dist/cjs/components/EditableTable/cellTypes/CellViewLayout.st.css.js.map +1 -1
  56. package/dist/cjs/components/EditableTable/cellTypes/address/Edit.st.css.js +3 -3
  57. package/dist/cjs/components/EditableTable/cellTypes/address/Edit.st.css.js.map +1 -1
  58. package/dist/cjs/components/EditableTable/cellTypes/array/Edit.st.css.js +3 -3
  59. package/dist/cjs/components/EditableTable/cellTypes/array/Edit.st.css.js.map +1 -1
  60. package/dist/cjs/components/EditableTable/cellTypes/boolean/Edit.st.css.js +3 -3
  61. package/dist/cjs/components/EditableTable/cellTypes/boolean/Edit.st.css.js.map +1 -1
  62. package/dist/cjs/components/EditableTable/cellTypes/boolean/View.st.css.js +3 -3
  63. package/dist/cjs/components/EditableTable/cellTypes/boolean/View.st.css.js.map +1 -1
  64. package/dist/cjs/components/EditableTable/cellTypes/color/Edit.st.css.js +2 -2
  65. package/dist/cjs/components/EditableTable/cellTypes/color/Edit.st.css.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/datetime/Edit.st.css.js +8 -8
  71. package/dist/cjs/components/EditableTable/cellTypes/datetime/Edit.st.css.js.map +1 -1
  72. package/dist/cjs/components/EditableTable/cellTypes/datetime/View.st.css.js +7 -7
  73. package/dist/cjs/components/EditableTable/cellTypes/datetime/View.st.css.js.map +1 -1
  74. package/dist/cjs/components/EditableTable/cellTypes/email/Edit.st.css.js +3 -3
  75. package/dist/cjs/components/EditableTable/cellTypes/email/Edit.st.css.js.map +1 -1
  76. package/dist/cjs/components/EditableTable/cellTypes/email/View.st.css.js +2 -2
  77. package/dist/cjs/components/EditableTable/cellTypes/email/View.st.css.js.map +1 -1
  78. package/dist/cjs/components/EditableTable/cellTypes/number/Edit.st.css.js +3 -3
  79. package/dist/cjs/components/EditableTable/cellTypes/number/Edit.st.css.js.map +1 -1
  80. package/dist/cjs/components/EditableTable/cellTypes/number/View.st.css.js +3 -3
  81. package/dist/cjs/components/EditableTable/cellTypes/number/View.st.css.js.map +1 -1
  82. package/dist/cjs/components/EditableTable/cellTypes/object/Edit.st.css.js +3 -3
  83. package/dist/cjs/components/EditableTable/cellTypes/object/Edit.st.css.js.map +1 -1
  84. package/dist/cjs/components/EditableTable/cellTypes/object/View.st.css.js +2 -2
  85. package/dist/cjs/components/EditableTable/cellTypes/object/View.st.css.js.map +1 -1
  86. package/dist/cjs/components/EditableTable/cellTypes/select/Edit.st.css.js +3 -3
  87. package/dist/cjs/components/EditableTable/cellTypes/select/Edit.st.css.js.map +1 -1
  88. package/dist/cjs/components/EditableTable/cellTypes/text/Edit.st.css.js +4 -4
  89. package/dist/cjs/components/EditableTable/cellTypes/text/Edit.st.css.js.map +1 -1
  90. package/dist/cjs/components/EditableTable/cellTypes/text/View.st.css.js +2 -2
  91. package/dist/cjs/components/EditableTable/cellTypes/text/View.st.css.js.map +1 -1
  92. package/dist/cjs/components/EditableTable/cellTypes/time/Edit.st.css.js +4 -4
  93. package/dist/cjs/components/EditableTable/cellTypes/time/Edit.st.css.js.map +1 -1
  94. package/dist/cjs/components/EditableTable/cellTypes/url/Edit.st.css.js +3 -3
  95. package/dist/cjs/components/EditableTable/cellTypes/url/Edit.st.css.js.map +1 -1
  96. package/dist/cjs/components/EditableTable/cellTypes/url/View.st.css.js +5 -5
  97. package/dist/cjs/components/EditableTable/cellTypes/url/View.st.css.js.map +1 -1
  98. package/dist/cjs/components/EditableTable/useAddRow.js +6 -1
  99. package/dist/cjs/components/EditableTable/useAddRow.js.map +1 -1
  100. package/dist/cjs/components/EmptyState/EmptyStateBase.st.css.js +2 -2
  101. package/dist/cjs/components/EmptyState/EmptyStateBase.st.css.js.map +1 -1
  102. package/dist/cjs/components/EntityPage/EntityPagePlain.st.css.js +2 -2
  103. package/dist/cjs/components/EntityPage/EntityPagePlain.st.css.js.map +1 -1
  104. package/dist/cjs/components/Fade/Fade.st.css.js +2 -2
  105. package/dist/cjs/components/Fade/Fade.st.css.js.map +1 -1
  106. package/dist/cjs/components/Heading/Heading.st.css.js +2 -2
  107. package/dist/cjs/components/Heading/Heading.st.css.js.map +1 -1
  108. package/dist/cjs/components/ImportButton/ImportButton.js +26 -12
  109. package/dist/cjs/components/ImportButton/ImportButton.js.map +1 -1
  110. package/dist/cjs/components/ImportButton/ImportButton.uni.driver.js +6 -1
  111. package/dist/cjs/components/ImportButton/ImportButton.uni.driver.js.map +1 -1
  112. package/dist/cjs/components/ImportButton/ImportProps.js.map +1 -1
  113. package/dist/cjs/components/ImportButton/ImportStepUpload.st.css.js +3 -3
  114. package/dist/cjs/components/ImportButton/ImportStepUpload.st.css.js.map +1 -1
  115. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js +2 -2
  116. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js.map +1 -1
  117. package/dist/cjs/components/LayoutSwitch/LayoutSwitch.js +42 -10
  118. package/dist/cjs/components/LayoutSwitch/LayoutSwitch.js.map +1 -1
  119. package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js +3 -3
  120. package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js.map +1 -1
  121. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  122. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js.map +1 -1
  123. package/dist/cjs/components/MaxLines/MaxLines.st.css.js +2 -2
  124. package/dist/cjs/components/MaxLines/MaxLines.st.css.js.map +1 -1
  125. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +5 -5
  126. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js.map +1 -1
  127. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
  128. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js.map +1 -1
  129. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js +5 -5
  130. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js.map +1 -1
  131. package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
  132. package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js.map +1 -1
  133. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
  134. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js.map +1 -1
  135. package/dist/cjs/components/PickerContent/PickerContent.st.css.js +2 -2
  136. package/dist/cjs/components/PickerContent/PickerContent.st.css.js.map +1 -1
  137. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js +4 -4
  138. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js.map +1 -1
  139. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  140. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js.map +1 -1
  141. package/dist/cjs/components/ResponsiveButton/ResponsiveButton.js +23 -9
  142. package/dist/cjs/components/ResponsiveButton/ResponsiveButton.js.map +1 -1
  143. package/dist/cjs/components/SchemaSource/schemaFieldManagement.js +2 -0
  144. package/dist/cjs/components/SchemaSource/schemaFieldManagement.js.map +1 -1
  145. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  146. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
  147. package/dist/cjs/components/SetupWidget/SetupWidget.st.css.js +10 -10
  148. package/dist/cjs/components/SetupWidget/SetupWidget.st.css.js.map +1 -1
  149. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js +3 -3
  150. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js.map +1 -1
  151. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js +2 -2
  152. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js.map +1 -1
  153. package/dist/cjs/components/Table/AddFieldColumnHeader.st.css.js +6 -6
  154. package/dist/cjs/components/Table/AddFieldColumnHeader.st.css.js.map +1 -1
  155. package/dist/cjs/components/TabsFilter/TabsFilter.js +9 -8
  156. package/dist/cjs/components/TabsFilter/TabsFilter.js.map +1 -1
  157. package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js +3 -3
  158. package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js.map +1 -1
  159. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  160. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js.map +1 -1
  161. package/dist/cjs/components/ToolbarCollection/ToolbarCollection.js +5 -3
  162. package/dist/cjs/components/ToolbarCollection/ToolbarCollection.js.map +1 -1
  163. package/dist/cjs/components/ToolbarItem/ToolbarItem.st.css.js +2 -2
  164. package/dist/cjs/components/ToolbarItem/ToolbarItem.st.css.js.map +1 -1
  165. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  166. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js.map +1 -1
  167. package/dist/cjs/components/common.st.css.js +4 -4
  168. package/dist/cjs/components/common.st.css.js.map +1 -1
  169. package/dist/cjs/schema/syncSourcePermissions.js +1 -0
  170. package/dist/cjs/schema/syncSourcePermissions.js.map +1 -1
  171. package/dist/cjs/state/CollectionPage/CollectionPageHeader.st.css.js +2 -2
  172. package/dist/cjs/state/CollectionPage/CollectionPageHeader.st.css.js.map +1 -1
  173. package/dist/cjs/state/CollectionPage/TitleBadges.st.css.js +4 -4
  174. package/dist/cjs/state/CollectionPage/TitleBadges.st.css.js.map +1 -1
  175. package/dist/cjs/state/EditableTable/EditableTableState.js +15 -0
  176. package/dist/cjs/state/EditableTable/EditableTableState.js.map +1 -1
  177. package/dist/cjs/state/EditableTable/index.js.map +1 -1
  178. package/dist/cjs/state/EntityPage/EntityPageState.js +2 -1
  179. package/dist/cjs/state/EntityPage/EntityPageState.js.map +1 -1
  180. package/dist/cjs/state/FormPage/FormPageHeader.st.css.js +2 -2
  181. package/dist/cjs/state/FormPage/FormPageHeader.st.css.js.map +1 -1
  182. package/dist/cjs/state/ToolbarCollectionState.js +8 -3
  183. package/dist/cjs/state/ToolbarCollectionState.js.map +1 -1
  184. package/dist/cjs/styles.global.css +2 -2
  185. package/dist/cjs/test-utils/index.js +6 -0
  186. package/dist/cjs/test-utils/index.js.map +1 -1
  187. package/dist/cjs/test-utils/scrollUntilRendered.js +45 -0
  188. package/dist/cjs/test-utils/scrollUntilRendered.js.map +1 -0
  189. package/dist/cjs/version.js +1 -1
  190. package/dist/cjs/version.js.map +1 -1
  191. package/dist/docs/Collection Toolkit.md +16 -1
  192. package/dist/docs/Collection to Entity Flow.md +8 -1
  193. package/dist/docs/Composition and Providers.md +16 -1
  194. package/dist/docs/CustomFieldType.md +10 -1
  195. package/dist/docs/ImportButton.md +6 -25
  196. package/dist/docs/Reading the Doc Indices.md +21 -0
  197. package/dist/docs/index.json +62 -6
  198. package/dist/docs/useSchemaSource.md +22 -84
  199. package/dist/dts-bundle/components/EditableTable.d.ts +551 -0
  200. package/dist/dts-bundle/components/EntityPageFieldsCard.d.ts +100 -0
  201. package/dist/dts-bundle/components/LayoutSwitch.d.ts +931 -0
  202. package/dist/dts-bundle/components/schema/EntityPage.d.ts +317 -0
  203. package/dist/dts-bundle/components/schema/Grid.d.ts +467 -0
  204. package/dist/dts-bundle/components/schema/Table.d.ts +360 -0
  205. package/dist/dts-bundle/exports/core.d.ts +1 -0
  206. package/dist/dts-bundle/exports/essentials.d.ts +0 -1
  207. package/dist/dts-bundle/exports/giza.d.ts +0 -1
  208. package/dist/dts-bundle/exports/index.d.ts +1 -2
  209. package/dist/dts-bundle/exports/schema.d.ts +14 -7
  210. package/dist/dts-bundle/functions/listCmsCollections.d.ts +12 -0
  211. package/dist/dts-bundle/hooks/schema/useCollection.d.ts +341 -0
  212. package/dist/dts-bundle/hooks/schema/useEntityPage.d.ts +244 -0
  213. package/dist/dts-bundle/hooks/schema/useGridCollection.d.ts +338 -0
  214. package/dist/dts-bundle/hooks/schema/useTableCollection.d.ts +338 -0
  215. package/dist/dts-bundle/hooks/useCmsSchemaSource.d.ts +439 -0
  216. package/dist/dts-bundle/hooks/useEditableTableCollection.d.ts +422 -0
  217. package/dist/dts-bundle/hooks/useLayoutSwitchCollection.d.ts +418 -0
  218. package/dist/dts-bundle/hooks/useSchemaSource.d.ts +59 -0
  219. package/dist/dts-bundle/index.json +328 -18
  220. package/dist/dts-bundle/index.txt +23 -2
  221. package/dist/dts-bundle/types/CellType.d.ts +839 -0
  222. package/dist/dts-bundle/types/CmsCollectionSummary.d.ts +9 -0
  223. package/dist/dts-bundle/types/EntityPageState.d.ts +8 -6
  224. package/dist/dts-bundle/types/SchemaSource.d.ts +21 -53
  225. package/dist/dts-bundle/types/SchemaSourceInput.d.ts +824 -0
  226. package/dist/dts-bundle/types/UseCmsSchemaSourceDeps.d.ts +922 -0
  227. package/dist/esm/components/CardContainer/CardContainer.st.css.js +2 -2
  228. package/dist/esm/components/CmsFieldManagement/CmsFieldForm.st.css.js +2 -2
  229. package/dist/esm/components/CmsFieldManagement/CmsFieldForm.st.css.js.map +1 -1
  230. package/dist/esm/components/CmsFieldManagement/CmsFieldModal.st.css.js +2 -2
  231. package/dist/esm/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.js +2 -2
  232. package/dist/esm/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.js.map +1 -1
  233. package/dist/esm/components/Collapse/Collapse.st.css.js +2 -2
  234. package/dist/esm/components/CollectionPageNew/CollectionPage.st.css.js +2 -2
  235. package/dist/esm/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js +2 -2
  236. package/dist/esm/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js.map +1 -1
  237. package/dist/esm/components/CollectionTable/CollectionTable.st.css.js +2 -2
  238. package/dist/esm/components/CollectionTable/CollectionTableWSRTable.st.css.js +2 -2
  239. package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js +2 -2
  240. package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js.map +1 -1
  241. package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +2 -2
  242. package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css.js.map +1 -1
  243. package/dist/esm/components/CollectionToolbar/ToolbarOverflowMenu.js +15 -6
  244. package/dist/esm/components/CollectionToolbar/ToolbarOverflowMenu.js.map +1 -1
  245. package/dist/esm/components/CollectionToolbar/useToolbarOverflowItems.js +5 -0
  246. package/dist/esm/components/CollectionToolbar/useToolbarOverflowItems.js.map +1 -1
  247. package/dist/esm/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
  248. package/dist/esm/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js.map +1 -1
  249. package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
  250. package/dist/esm/components/CustomFieldModal/CustomFieldForm.js +3 -2
  251. package/dist/esm/components/CustomFieldModal/CustomFieldForm.js.map +1 -1
  252. package/dist/esm/components/CustomFieldModal/CustomFieldFormPiiFields.js +8 -3
  253. package/dist/esm/components/CustomFieldModal/CustomFieldFormPiiFields.js.map +1 -1
  254. package/dist/esm/components/CustomFieldModal/CustomFieldFormPiiFields.st.css +15 -0
  255. package/dist/esm/components/CustomFieldModal/CustomFieldFormPiiFields.st.css.js +15 -0
  256. package/dist/esm/components/CustomFieldModal/CustomFieldFormPiiFields.st.css.js.map +1 -0
  257. package/dist/esm/components/CustomFieldModal/CustomFieldTypeDropdown.js +2 -2
  258. package/dist/esm/components/CustomFieldModal/CustomFieldTypeDropdown.js.map +1 -1
  259. package/dist/esm/components/DragHandle/DragHandle.st.css.js +2 -2
  260. package/dist/esm/components/DragHandle/DragHandle.st.css.js.map +1 -1
  261. package/dist/esm/components/EditableTable/AddItemRow.js +2 -2
  262. package/dist/esm/components/EditableTable/AddItemRow.js.map +1 -1
  263. package/dist/esm/components/EditableTable/EditableCell.st.css.js +2 -2
  264. package/dist/esm/components/EditableTable/EditableTable.js +2 -2
  265. package/dist/esm/components/EditableTable/EditableTable.js.map +1 -1
  266. package/dist/esm/components/EditableTable/EditableTable.uni.driver.js +2 -0
  267. package/dist/esm/components/EditableTable/EditableTable.uni.driver.js.map +1 -1
  268. package/dist/esm/components/EditableTable/EditableTableContextMenu.js +12 -2
  269. package/dist/esm/components/EditableTable/EditableTableContextMenu.js.map +1 -1
  270. package/dist/esm/components/EditableTable/HeaderActionsPopover.st.css.js +2 -2
  271. package/dist/esm/components/EditableTable/cellTypes/CellViewLayout.st.css.js +2 -2
  272. package/dist/esm/components/EditableTable/cellTypes/CellViewLayout.st.css.js.map +1 -1
  273. package/dist/esm/components/EditableTable/cellTypes/address/Edit.st.css.js +2 -2
  274. package/dist/esm/components/EditableTable/cellTypes/address/Edit.st.css.js.map +1 -1
  275. package/dist/esm/components/EditableTable/cellTypes/array/Edit.st.css.js +2 -2
  276. package/dist/esm/components/EditableTable/cellTypes/array/Edit.st.css.js.map +1 -1
  277. package/dist/esm/components/EditableTable/cellTypes/boolean/Edit.st.css.js +2 -2
  278. package/dist/esm/components/EditableTable/cellTypes/boolean/View.st.css.js +2 -2
  279. package/dist/esm/components/EditableTable/cellTypes/boolean/View.st.css.js.map +1 -1
  280. package/dist/esm/components/EditableTable/cellTypes/color/Edit.st.css.js +2 -2
  281. package/dist/esm/components/EditableTable/cellTypes/color/Edit.st.css.js.map +1 -1
  282. package/dist/esm/components/EditableTable/cellTypes/date/Edit.st.css.js +2 -2
  283. package/dist/esm/components/EditableTable/cellTypes/date/View.st.css.js +2 -2
  284. package/dist/esm/components/EditableTable/cellTypes/datetime/Edit.st.css.js +2 -2
  285. package/dist/esm/components/EditableTable/cellTypes/datetime/Edit.st.css.js.map +1 -1
  286. package/dist/esm/components/EditableTable/cellTypes/datetime/View.st.css.js +2 -2
  287. package/dist/esm/components/EditableTable/cellTypes/email/Edit.st.css.js +2 -2
  288. package/dist/esm/components/EditableTable/cellTypes/email/Edit.st.css.js.map +1 -1
  289. package/dist/esm/components/EditableTable/cellTypes/email/View.st.css.js +2 -2
  290. package/dist/esm/components/EditableTable/cellTypes/number/Edit.st.css.js +2 -2
  291. package/dist/esm/components/EditableTable/cellTypes/number/Edit.st.css.js.map +1 -1
  292. package/dist/esm/components/EditableTable/cellTypes/number/View.st.css.js +2 -2
  293. package/dist/esm/components/EditableTable/cellTypes/object/Edit.st.css.js +2 -2
  294. package/dist/esm/components/EditableTable/cellTypes/object/Edit.st.css.js.map +1 -1
  295. package/dist/esm/components/EditableTable/cellTypes/object/View.st.css.js +2 -2
  296. package/dist/esm/components/EditableTable/cellTypes/object/View.st.css.js.map +1 -1
  297. package/dist/esm/components/EditableTable/cellTypes/select/Edit.st.css.js +2 -2
  298. package/dist/esm/components/EditableTable/cellTypes/text/Edit.st.css.js +2 -2
  299. package/dist/esm/components/EditableTable/cellTypes/text/Edit.st.css.js.map +1 -1
  300. package/dist/esm/components/EditableTable/cellTypes/text/View.st.css.js +2 -2
  301. package/dist/esm/components/EditableTable/cellTypes/time/Edit.st.css.js +2 -2
  302. package/dist/esm/components/EditableTable/cellTypes/time/Edit.st.css.js.map +1 -1
  303. package/dist/esm/components/EditableTable/cellTypes/url/Edit.st.css.js +2 -2
  304. package/dist/esm/components/EditableTable/cellTypes/url/Edit.st.css.js.map +1 -1
  305. package/dist/esm/components/EditableTable/cellTypes/url/View.st.css.js +2 -2
  306. package/dist/esm/components/EditableTable/useAddRow.js +7 -2
  307. package/dist/esm/components/EditableTable/useAddRow.js.map +1 -1
  308. package/dist/esm/components/EmptyState/EmptyStateBase.st.css.js +2 -2
  309. package/dist/esm/components/EmptyState/EmptyStateBase.st.css.js.map +1 -1
  310. package/dist/esm/components/EntityPage/EntityPagePlain.st.css.js +2 -2
  311. package/dist/esm/components/Fade/Fade.st.css.js +2 -2
  312. package/dist/esm/components/Heading/Heading.st.css.js +2 -2
  313. package/dist/esm/components/Heading/Heading.st.css.js.map +1 -1
  314. package/dist/esm/components/ImportButton/ImportButton.js +3 -1
  315. package/dist/esm/components/ImportButton/ImportButton.js.map +1 -1
  316. package/dist/esm/components/ImportButton/ImportButton.uni.driver.js +5 -0
  317. package/dist/esm/components/ImportButton/ImportButton.uni.driver.js.map +1 -1
  318. package/dist/esm/components/ImportButton/ImportStepUpload.st.css.js +2 -2
  319. package/dist/esm/components/InputOverflow/InputOverflow.st.css.js +2 -2
  320. package/dist/esm/components/InputOverflow/InputOverflow.st.css.js.map +1 -1
  321. package/dist/esm/components/LayoutSwitch/LayoutSwitch.js +27 -0
  322. package/dist/esm/components/LayoutSwitch/LayoutSwitch.js.map +1 -1
  323. package/dist/esm/components/LoadingRow/LoadingRow.st.css.js +3 -3
  324. package/dist/esm/components/LoadingRow/LoadingRow.st.css.js.map +1 -1
  325. package/dist/esm/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  326. package/dist/esm/components/MaxLines/MaxLines.st.css.js +2 -2
  327. package/dist/esm/components/MaxLines/MaxLines.st.css.js.map +1 -1
  328. package/dist/esm/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +2 -2
  329. package/dist/esm/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
  330. package/dist/esm/components/NestedTable/NestedTableRow.st.css.js +2 -2
  331. package/dist/esm/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
  332. package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
  333. package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js.map +1 -1
  334. package/dist/esm/components/PickerContent/PickerContent.st.css.js +2 -2
  335. package/dist/esm/components/PickerContent/PickerContent.st.css.js.map +1 -1
  336. package/dist/esm/components/PickerContent/PickerContentAdditionalStep.st.css.js +2 -2
  337. package/dist/esm/components/PickerContent/PickerContentAdditionalStep.st.css.js.map +1 -1
  338. package/dist/esm/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  339. package/dist/esm/components/ResponsiveButton/ResponsiveButton.js +7 -3
  340. package/dist/esm/components/ResponsiveButton/ResponsiveButton.js.map +1 -1
  341. package/dist/esm/components/SchemaSource/schemaFieldManagement.js +2 -0
  342. package/dist/esm/components/SchemaSource/schemaFieldManagement.js.map +1 -1
  343. package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  344. package/dist/esm/components/SetupWidget/SetupWidget.st.css.js +2 -2
  345. package/dist/esm/components/SkeletonCard/SkeletonCard.st.css.js +2 -2
  346. package/dist/esm/components/SlidingModal/SlidingModal.st.css.js +2 -2
  347. package/dist/esm/components/Table/AddFieldColumnHeader.st.css.js +2 -2
  348. package/dist/esm/components/TabsFilter/TabsFilter.js +3 -2
  349. package/dist/esm/components/TabsFilter/TabsFilter.js.map +1 -1
  350. package/dist/esm/components/TabsFilter/TabsFilter.st.css.js +2 -2
  351. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  352. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js.map +1 -1
  353. package/dist/esm/components/ToolbarCollection/ToolbarCollection.js +2 -2
  354. package/dist/esm/components/ToolbarCollection/ToolbarCollection.js.map +1 -1
  355. package/dist/esm/components/ToolbarItem/ToolbarItem.st.css.js +2 -2
  356. package/dist/esm/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  357. package/dist/esm/components/common.st.css.js +2 -2
  358. package/dist/esm/schema/syncSourcePermissions.js +1 -0
  359. package/dist/esm/schema/syncSourcePermissions.js.map +1 -1
  360. package/dist/esm/state/CollectionPage/CollectionPageHeader.st.css.js +2 -2
  361. package/dist/esm/state/CollectionPage/TitleBadges.st.css.js +2 -2
  362. package/dist/esm/state/EditableTable/EditableTableState.js +13 -0
  363. package/dist/esm/state/EditableTable/EditableTableState.js.map +1 -1
  364. package/dist/esm/state/EntityPage/EntityPageState.js +2 -0
  365. package/dist/esm/state/EntityPage/EntityPageState.js.map +1 -1
  366. package/dist/esm/state/FormPage/FormPageHeader.st.css.js +2 -2
  367. package/dist/esm/state/FormPage/FormPageHeader.st.css.js.map +1 -1
  368. package/dist/esm/state/ToolbarCollectionState.js +6 -3
  369. package/dist/esm/state/ToolbarCollectionState.js.map +1 -1
  370. package/dist/esm/styles.global.css +2 -2
  371. package/dist/esm/test-utils/index.js +1 -0
  372. package/dist/esm/test-utils/index.js.map +1 -1
  373. package/dist/esm/test-utils/scrollUntilRendered.js +32 -0
  374. package/dist/esm/test-utils/scrollUntilRendered.js.map +1 -0
  375. package/dist/esm/version.js +1 -1
  376. package/dist/examples/ImportButton/cms-import.tsx +0 -6
  377. package/dist/examples/ImportButton/create-new-field.tsx +0 -6
  378. package/dist/examples/ImportButton/update-or-skip-by-id.tsx +0 -6
  379. package/dist/examples/useSchemaSource/cms-collection.tsx +1 -7
  380. package/dist/examples/useSchemaSource/extra-columns-and-data.tsx +1 -7
  381. package/dist/types/components/CmsFieldManagement/CmsFieldForm.st.css.d.ts.map +1 -1
  382. package/dist/types/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.d.ts.map +1 -1
  383. package/dist/types/components/CollectionSectionHeader/CollectionSectionHeader.st.css.d.ts.map +1 -1
  384. package/dist/types/components/CollectionTable/CollectionTable.uni.driver.d.ts +2 -0
  385. package/dist/types/components/CollectionTable/CollectionTable.uni.driver.d.ts.map +1 -1
  386. package/dist/types/components/CollectionToolbar/CollectionToolbar.st.css.d.ts.map +1 -1
  387. package/dist/types/components/CollectionToolbar/SearchOrCustomFilter.st.css.d.ts.map +1 -1
  388. package/dist/types/components/CollectionToolbar/ToolbarOverflowMenu.d.ts +3 -1
  389. package/dist/types/components/CollectionToolbar/ToolbarOverflowMenu.d.ts.map +1 -1
  390. package/dist/types/components/CollectionToolbar/useToolbarOverflowItems.d.ts.map +1 -1
  391. package/dist/types/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.d.ts.map +1 -1
  392. package/dist/types/components/CustomFieldModal/CustomFieldForm.d.ts.map +1 -1
  393. package/dist/types/components/CustomFieldModal/CustomFieldFormPiiFields.d.ts.map +1 -1
  394. package/dist/types/components/CustomFieldModal/CustomFieldFormPiiFields.st.css.d.ts +19 -0
  395. package/dist/types/components/CustomFieldModal/CustomFieldFormPiiFields.st.css.d.ts.map +1 -0
  396. package/dist/types/components/CustomFieldModal/CustomFieldTypeDropdown.d.ts.map +1 -1
  397. package/dist/types/components/DragHandle/DragHandle.st.css.d.ts.map +1 -1
  398. package/dist/types/components/EditableTable/AddItemRow.d.ts +3 -2
  399. package/dist/types/components/EditableTable/AddItemRow.d.ts.map +1 -1
  400. package/dist/types/components/EditableTable/EditableTable.d.ts.map +1 -1
  401. package/dist/types/components/EditableTable/EditableTable.uni.driver.d.ts +3 -0
  402. package/dist/types/components/EditableTable/EditableTable.uni.driver.d.ts.map +1 -1
  403. package/dist/types/components/EditableTable/EditableTableContextMenu.d.ts.map +1 -1
  404. package/dist/types/components/EditableTable/cellTypes/CellViewLayout.st.css.d.ts.map +1 -1
  405. package/dist/types/components/EditableTable/cellTypes/address/Edit.st.css.d.ts.map +1 -1
  406. package/dist/types/components/EditableTable/cellTypes/array/Edit.st.css.d.ts.map +1 -1
  407. package/dist/types/components/EditableTable/cellTypes/boolean/View.st.css.d.ts.map +1 -1
  408. package/dist/types/components/EditableTable/cellTypes/color/Edit.st.css.d.ts.map +1 -1
  409. package/dist/types/components/EditableTable/cellTypes/datetime/Edit.st.css.d.ts.map +1 -1
  410. package/dist/types/components/EditableTable/cellTypes/email/Edit.st.css.d.ts.map +1 -1
  411. package/dist/types/components/EditableTable/cellTypes/number/Edit.st.css.d.ts.map +1 -1
  412. package/dist/types/components/EditableTable/cellTypes/object/Edit.st.css.d.ts.map +1 -1
  413. package/dist/types/components/EditableTable/cellTypes/object/View.st.css.d.ts.map +1 -1
  414. package/dist/types/components/EditableTable/cellTypes/text/Edit.st.css.d.ts.map +1 -1
  415. package/dist/types/components/EditableTable/cellTypes/time/Edit.st.css.d.ts.map +1 -1
  416. package/dist/types/components/EditableTable/cellTypes/url/Edit.st.css.d.ts.map +1 -1
  417. package/dist/types/components/EditableTable/useAddRow.d.ts +1 -0
  418. package/dist/types/components/EditableTable/useAddRow.d.ts.map +1 -1
  419. package/dist/types/components/EmptyState/EmptyStateBase.st.css.d.ts.map +1 -1
  420. package/dist/types/components/Heading/Heading.st.css.d.ts.map +1 -1
  421. package/dist/types/components/ImportButton/ImportButton.d.ts.map +1 -1
  422. package/dist/types/components/ImportButton/ImportButton.uni.driver.d.ts +2 -0
  423. package/dist/types/components/ImportButton/ImportButton.uni.driver.d.ts.map +1 -1
  424. package/dist/types/components/ImportButton/ImportProps.d.ts +2 -0
  425. package/dist/types/components/ImportButton/ImportProps.d.ts.map +1 -1
  426. package/dist/types/components/InputOverflow/InputOverflow.st.css.d.ts.map +1 -1
  427. package/dist/types/components/LayoutSwitch/LayoutSwitch.d.ts.map +1 -1
  428. package/dist/types/components/LoadingRow/LoadingRow.st.css.d.ts.map +1 -1
  429. package/dist/types/components/MaxLines/MaxLines.st.css.d.ts.map +1 -1
  430. package/dist/types/components/NestedTable/NestedTable.uni.driver.d.ts +2 -0
  431. package/dist/types/components/NestedTable/NestedTable.uni.driver.d.ts.map +1 -1
  432. package/dist/types/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.d.ts.map +1 -1
  433. package/dist/types/components/PickerContent/PickerContent.st.css.d.ts.map +1 -1
  434. package/dist/types/components/PickerContent/PickerContentAdditionalStep.st.css.d.ts.map +1 -1
  435. package/dist/types/components/ResponsiveButton/ResponsiveButton.d.ts +6 -4
  436. package/dist/types/components/ResponsiveButton/ResponsiveButton.d.ts.map +1 -1
  437. package/dist/types/components/SchemaSource/schemaFieldManagement.d.ts.map +1 -1
  438. package/dist/types/components/Table/Table.uni.driver.d.ts +2 -0
  439. package/dist/types/components/Table/Table.uni.driver.d.ts.map +1 -1
  440. package/dist/types/components/TableFolders/TableFolders.uni.driver.d.ts +2 -0
  441. package/dist/types/components/TableFolders/TableFolders.uni.driver.d.ts.map +1 -1
  442. package/dist/types/components/TableGridSwitch/TableGridSwitch.uni.driver.d.ts +2 -0
  443. package/dist/types/components/TableGridSwitch/TableGridSwitch.uni.driver.d.ts.map +1 -1
  444. package/dist/types/components/TabsFilter/TabsFilter.d.ts.map +1 -1
  445. package/dist/types/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.d.ts.map +1 -1
  446. package/dist/types/components/ToolbarCollection/ToolbarCollection.d.ts.map +1 -1
  447. package/dist/types/schema/syncSourcePermissions.d.ts.map +1 -1
  448. package/dist/types/state/EditableTable/EditableTableState.d.ts +9 -2
  449. package/dist/types/state/EditableTable/EditableTableState.d.ts.map +1 -1
  450. package/dist/types/state/EditableTable/index.d.ts +1 -1
  451. package/dist/types/state/EditableTable/index.d.ts.map +1 -1
  452. package/dist/types/state/EntityPage/EntityPageState.d.ts +1 -1
  453. package/dist/types/state/EntityPage/EntityPageState.d.ts.map +1 -1
  454. package/dist/types/state/FormPage/FormPageHeader.st.css.d.ts.map +1 -1
  455. package/dist/types/state/ToolbarCollectionState.d.ts +3 -1
  456. package/dist/types/state/ToolbarCollectionState.d.ts.map +1 -1
  457. package/dist/types/test-utils/index.d.ts +1 -0
  458. package/dist/types/test-utils/index.d.ts.map +1 -1
  459. package/dist/types/test-utils/scrollUntilRendered.d.ts +24 -0
  460. package/dist/types/test-utils/scrollUntilRendered.d.ts.map +1 -0
  461. package/dist/types/testkit/enzyme.d.ts +8 -0
  462. package/dist/types/testkit/enzyme.d.ts.map +1 -1
  463. package/dist/types/testkit/jsdom.d.ts +11 -0
  464. package/dist/types/testkit/jsdom.d.ts.map +1 -1
  465. package/dist/types/testkit/playwright.d.ts +11 -0
  466. package/dist/types/testkit/playwright.d.ts.map +1 -1
  467. package/dist/types/testkit/puppeteer.d.ts +11 -0
  468. package/dist/types/testkit/puppeteer.d.ts.map +1 -1
  469. package/dist/types/version.d.ts +1 -1
  470. package/package.json +8 -8
  471. package/src/components/CardContainer/CardContainer.st.css.ts +2 -2
  472. package/src/components/CmsFieldManagement/CmsFieldForm.st.css.ts +2 -2
  473. package/src/components/CmsFieldManagement/CmsFieldModal.st.css.ts +2 -2
  474. package/src/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.ts +2 -2
  475. package/src/components/Collapse/Collapse.st.css.ts +2 -2
  476. package/src/components/CollectionPageNew/CollectionPage.st.css.ts +2 -2
  477. package/src/components/CollectionSectionHeader/CollectionSectionHeader.st.css.ts +2 -2
  478. package/src/components/CollectionTable/CollectionTable.st.css.ts +2 -2
  479. package/src/components/CollectionTable/CollectionTableWSRTable.st.css.ts +2 -2
  480. package/src/components/CollectionToolbar/CollectionToolbar.st.css.ts +2 -2
  481. package/src/components/CollectionToolbar/SearchOrCustomFilter.st.css.ts +2 -2
  482. package/src/components/CollectionToolbar/ToolbarOverflowMenu.tsx +47 -16
  483. package/src/components/CollectionToolbar/useToolbarOverflowItems.ts +7 -0
  484. package/src/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.ts +2 -2
  485. package/src/components/CollectionViewsDropdown/ViewsDropdown.st.css.ts +2 -2
  486. package/src/components/CustomFieldModal/CustomFieldForm.tsx +7 -4
  487. package/src/components/CustomFieldModal/CustomFieldFormPiiFields.st.css +15 -0
  488. package/src/components/CustomFieldModal/CustomFieldFormPiiFields.st.css.ts +25 -0
  489. package/src/components/CustomFieldModal/CustomFieldFormPiiFields.tsx +26 -14
  490. package/src/components/CustomFieldModal/CustomFieldTypeDropdown.tsx +3 -4
  491. package/src/components/DragHandle/DragHandle.st.css.ts +2 -2
  492. package/src/components/EditableTable/AddItemRow.tsx +5 -2
  493. package/src/components/EditableTable/EditableCell.st.css.ts +2 -2
  494. package/src/components/EditableTable/EditableTable.tsx +8 -2
  495. package/src/components/EditableTable/EditableTable.uni.driver.ts +4 -0
  496. package/src/components/EditableTable/EditableTableContextMenu.tsx +16 -4
  497. package/src/components/EditableTable/HeaderActionsPopover.st.css.ts +2 -2
  498. package/src/components/EditableTable/cellTypes/CellViewLayout.st.css.ts +2 -2
  499. package/src/components/EditableTable/cellTypes/address/Edit.st.css.ts +2 -2
  500. package/src/components/EditableTable/cellTypes/array/Edit.st.css.ts +2 -2
  501. package/src/components/EditableTable/cellTypes/boolean/Edit.st.css.ts +2 -2
  502. package/src/components/EditableTable/cellTypes/boolean/View.st.css.ts +2 -2
  503. package/src/components/EditableTable/cellTypes/color/Edit.st.css.ts +2 -2
  504. package/src/components/EditableTable/cellTypes/date/Edit.st.css.ts +2 -2
  505. package/src/components/EditableTable/cellTypes/date/View.st.css.ts +2 -2
  506. package/src/components/EditableTable/cellTypes/datetime/Edit.st.css.ts +2 -2
  507. package/src/components/EditableTable/cellTypes/datetime/View.st.css.ts +2 -2
  508. package/src/components/EditableTable/cellTypes/email/Edit.st.css.ts +2 -2
  509. package/src/components/EditableTable/cellTypes/email/View.st.css.ts +2 -2
  510. package/src/components/EditableTable/cellTypes/number/Edit.st.css.ts +2 -2
  511. package/src/components/EditableTable/cellTypes/number/View.st.css.ts +2 -2
  512. package/src/components/EditableTable/cellTypes/object/Edit.st.css.ts +2 -2
  513. package/src/components/EditableTable/cellTypes/object/View.st.css.ts +2 -2
  514. package/src/components/EditableTable/cellTypes/select/Edit.st.css.ts +2 -2
  515. package/src/components/EditableTable/cellTypes/text/Edit.st.css.ts +2 -2
  516. package/src/components/EditableTable/cellTypes/text/View.st.css.ts +2 -2
  517. package/src/components/EditableTable/cellTypes/time/Edit.st.css.ts +2 -2
  518. package/src/components/EditableTable/cellTypes/url/Edit.st.css.ts +2 -2
  519. package/src/components/EditableTable/cellTypes/url/View.st.css.ts +2 -2
  520. package/src/components/EditableTable/useAddRow.ts +8 -2
  521. package/src/components/EmptyState/EmptyStateBase.st.css.ts +2 -2
  522. package/src/components/EntityPage/EntityPagePlain.st.css.ts +2 -2
  523. package/src/components/Fade/Fade.st.css.ts +2 -2
  524. package/src/components/Heading/Heading.st.css.ts +2 -2
  525. package/src/components/ImportButton/ImportButton.tsx +19 -9
  526. package/src/components/ImportButton/ImportButton.uni.driver.ts +6 -0
  527. package/src/components/ImportButton/ImportProps.tsx +2 -0
  528. package/src/components/ImportButton/ImportStepUpload.st.css.ts +2 -2
  529. package/src/components/InputOverflow/InputOverflow.st.css.ts +2 -2
  530. package/src/components/LayoutSwitch/LayoutSwitch.tsx +43 -0
  531. package/src/components/LoadingRow/LoadingRow.st.css.ts +3 -3
  532. package/src/components/MaxHeightText/MaxHeightText.st.css.ts +2 -2
  533. package/src/components/MaxLines/MaxLines.st.css.ts +2 -2
  534. package/src/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.ts +2 -2
  535. package/src/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.ts +2 -2
  536. package/src/components/NestedTable/NestedTableRow.st.css.ts +2 -2
  537. package/src/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.ts +2 -2
  538. package/src/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.ts +2 -2
  539. package/src/components/PickerContent/PickerContent.st.css.ts +2 -2
  540. package/src/components/PickerContent/PickerContentAdditionalStep.st.css.ts +2 -2
  541. package/src/components/PickerTableListItem/PickerTableListItem.st.css.ts +2 -2
  542. package/src/components/ResponsiveButton/ResponsiveButton.tsx +26 -14
  543. package/src/components/SchemaSource/schemaFieldManagement.ts +2 -0
  544. package/src/components/ScrollableContent/ScrollableContent.st.css.ts +2 -2
  545. package/src/components/SetupWidget/SetupWidget.st.css.ts +2 -2
  546. package/src/components/SkeletonCard/SkeletonCard.st.css.ts +2 -2
  547. package/src/components/SlidingModal/SlidingModal.st.css.ts +2 -2
  548. package/src/components/Table/AddFieldColumnHeader.st.css.ts +2 -2
  549. package/src/components/TabsFilter/TabsFilter.st.css.ts +2 -2
  550. package/src/components/TabsFilter/TabsFilter.tsx +3 -2
  551. package/src/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.ts +2 -2
  552. package/src/components/ToolbarCollection/ToolbarCollection.tsx +2 -0
  553. package/src/components/ToolbarItem/ToolbarItem.st.css.ts +2 -2
  554. package/src/components/ToolbarItemBox/ToolbarItemBox.st.css.ts +2 -2
  555. package/src/components/common.st.css.ts +2 -2
  556. package/src/schema/syncSourcePermissions.ts +1 -0
  557. package/src/state/CollectionPage/CollectionPageHeader.st.css.ts +2 -2
  558. package/src/state/CollectionPage/TitleBadges.st.css.ts +2 -2
  559. package/src/state/EditableTable/EditableTableState.ts +28 -2
  560. package/src/state/EditableTable/index.ts +1 -0
  561. package/src/state/EntityPage/EntityPageState.ts +2 -1
  562. package/src/state/FormPage/FormPageHeader.st.css.ts +2 -2
  563. package/src/state/ToolbarCollectionState.ts +12 -3
  564. package/src/styles.global.css +2 -2
  565. package/src/test-utils/index.ts +1 -0
  566. package/src/test-utils/scrollUntilRendered.ts +98 -0
  567. package/src/version.ts +1 -1
  568. package/dist/examples/ImportButton/platformized-import-from-a-source.tsx +0 -56
  569. package/dist/examples/useSchemaSource/your-own-source.tsx +0 -173
  570. /package/dist/examples/ImportButton/{platformized-import-fields-inline.tsx → platformized-import.tsx} +0 -0
@@ -0,0 +1,922 @@
1
+ import { ComponentType, ReactNode, ReactElement, MutableRefObject, FunctionComponent } from 'react';
2
+ import { collections } from '@wix/data';
3
+ import { useTranslation, Trans } from '@wix/fe-essentials/react';
4
+ import { History as History$1 } from 'history';
5
+ import * as lodash from 'lodash';
6
+ import { IObservableArray } from 'mobx';
7
+ import { EventEmitter } from 'events';
8
+ import { Essentials, EssentialsOptions } from '@wix/fe-essentials/core';
9
+ import { ReportProps, LogParams } from '@wix/fe-essentials/bi';
10
+ import { errorHandler } from '@wix/essentials';
11
+ import { QueryCache } from 'react-query/core';
12
+ import { HttpRequestOrHttpRequestFactory, RequestOverrides } from '@wix/fe-essentials/http-client';
13
+ import { SDK } from '@wix/dashboard';
14
+ import { Messages } from '@wix/fe-essentials/i18n';
15
+
16
+ type Arguments<T> = [T] extends [(...args: infer U) => any] ? U : [T] extends [void] ? [] : [T];
17
+ interface TypedEventEmitter<Events> {
18
+ addListener<E extends keyof Events>(event: E, listener: Events[E]): this;
19
+ on<E extends keyof Events>(event: E, listener: Events[E]): this;
20
+ once<E extends keyof Events>(event: E, listener: Events[E]): this;
21
+ off<E extends keyof Events>(event: E, listener: Events[E]): this;
22
+ removeAllListeners<E extends keyof Events>(event?: E): this;
23
+ removeListener<E extends keyof Events>(event: E, listener: Events[E]): this;
24
+ emit<E extends keyof Events>(event: E, ...args: Arguments<Events[E]>): boolean;
25
+ listeners<E extends keyof Events>(event: E): Events[E][];
26
+ }
27
+ type TypedEmitter<Events> = Omit<EventEmitter, keyof TypedEventEmitter<Events>> & TypedEventEmitter<Events>;
28
+
29
+ interface Environment {
30
+ readonly language: string;
31
+ readonly artifactId: string;
32
+ readonly componentId?: string;
33
+ readonly componentName?: string;
34
+ readonly uiLibVersion?: string;
35
+ readonly providerType?: 'bm' | 'giza' | 'essentials';
36
+ readonly msid?: string;
37
+ }
38
+ interface EnvironmentBi {
39
+ readonly artifactId?: string;
40
+ readonly componentId?: string;
41
+ }
42
+
43
+ type MonitorLogger = Pick<Essentials['fedopsLogger'], 'interactionStarted' | 'interactionEnded' | 'reportErrorThrownOncePerFlow'>;
44
+
45
+ interface ErrorMonitor {
46
+ captureException(exception: unknown): string;
47
+ }
48
+
49
+ interface OnlineManager {
50
+ isOnline: () => boolean;
51
+ subscribe: (listener?: () => unknown) => () => void;
52
+ }
53
+
54
+ type History = History$1;
55
+
56
+ interface PartialWindow {
57
+ readonly location: Pick<Location, 'href'>;
58
+ readonly matchMedia: Window['matchMedia'];
59
+ readonly download: (uri: string, saveAs?: string) => void;
60
+ readonly close: () => void;
61
+ readonly requestAnimationFrame: Window['requestAnimationFrame'];
62
+ readonly cancelAnimationFrame: Window['cancelAnimationFrame'];
63
+ }
64
+
65
+ type PartialLodash = Pick<typeof lodash, 'debounce' | 'throttle'>;
66
+
67
+ interface FocusManager {
68
+ isFocused: () => boolean;
69
+ subscribe: (listener?: () => unknown) => () => void;
70
+ }
71
+
72
+ interface Experiments {
73
+ enabled(key: string): boolean;
74
+ ready(): Promise<any>;
75
+ get(key: string): any;
76
+ }
77
+
78
+ interface ModalLayoutProps {
79
+ title?: string;
80
+ content?: string;
81
+ onConfirm?: () => void;
82
+ onResume?: () => void;
83
+ onClose?: () => void;
84
+ onAfterClose?: () => void;
85
+ primaryButtonText?: string;
86
+ secondaryButtonText?: string;
87
+ }
88
+
89
+ /**
90
+ * `TransitionState` — you receive this, you don't construct it.
91
+ * An internal state object — reached through another state object, never built directly.
92
+ */
93
+ declare class TransitionState<T = any> {
94
+ [key: string]: unknown;
95
+ }
96
+
97
+ /**
98
+ * `OptimisticPatch` — you receive this, you don't construct it.
99
+ * Produced by `prepareItemsToMergeIntoPage()`.
100
+ */
101
+ declare class OptimisticPatch<T = any> {
102
+ [key: string]: unknown;
103
+ }
104
+
105
+ type PatternsFieldType = 'SHORT_TEXT' | 'LONG_TEXT' | 'NUMBER' | 'BOOLEAN' | 'DATE' | 'DATETIME' | 'TIME' | 'URL' | 'ARRAY' | 'REFERENCE' | 'MULTI_REFERENCE' | 'OBJECT' | 'IMAGE' | 'VIDEO' | 'MEDIA_GALLERY' | 'ADDRESS' | 'RICH_TEXT' | 'DOCUMENT' | 'RICH_CONTENT' | 'MULTI_DOCUMENT' | 'EMAIL' | 'AUDIO' | 'COLOR' | 'CUSTOM' | 'UNKNOWN';
106
+ type QueryOperator = 'CONTAINS' | 'ENDS_WITH' | 'EQ' | 'EXISTS' | 'GT' | 'GTE' | 'HAS_ALL' | 'HAS_SOME' | 'LT' | 'LTE' | 'NE' | 'STARTS_WITH' | 'URLIZED';
107
+ interface NumberRange {
108
+ min?: number;
109
+ max?: number;
110
+ }
111
+ interface StringLengthRange {
112
+ minLength?: number;
113
+ maxLength?: number;
114
+ }
115
+ interface SpecificValue {
116
+ id: string;
117
+ value: string;
118
+ }
119
+ interface BaseField {
120
+ id: string;
121
+ displayName: string;
122
+ isPii?: boolean;
123
+ helpText?: string;
124
+ /** Whether this is a system-managed field (not user-created). */
125
+ isSystem?: boolean;
126
+ /** The group this field belongs to, when the source groups its fields.
127
+ * Absent ⇒ ungrouped. */
128
+ group?: string;
129
+ /** Whether this is the collection's primary display field. */
130
+ isPrimary?: boolean;
131
+ validation?: {
132
+ numberRange?: NumberRange;
133
+ stringLengthRange?: StringLengthRange;
134
+ specificValues?: SpecificValue[];
135
+ /** Regular expression source the value must match. Applies to text-like
136
+ * fields only; mutually exclusive with `specificValues`. */
137
+ pattern?: string;
138
+ required: boolean;
139
+ };
140
+ capabilities?: {
141
+ supportedQueryOperators: QueryOperator[];
142
+ sortable: boolean;
143
+ };
144
+ }
145
+ interface BaseReferenceField extends BaseField {
146
+ referenceMetadata: {
147
+ referencedCollectionId: string;
148
+ };
149
+ }
150
+ interface ReferenceField extends BaseReferenceField {
151
+ type: 'REFERENCE';
152
+ }
153
+ interface MultiReferenceField extends BaseReferenceField {
154
+ type: 'MULTI_REFERENCE';
155
+ }
156
+ interface NonReferenceField extends BaseField {
157
+ type: Exclude<PatternsFieldType, 'REFERENCE' | 'MULTI_REFERENCE'>;
158
+ /** Present iff `type` is 'CUSTOM'; keys a field type definition registered on the source. */
159
+ customType?: string;
160
+ }
161
+ type Field = ReferenceField | MultiReferenceField | NonReferenceField;
162
+
163
+ /**
164
+ * Whatever the source's settings section collected in the add/edit field modal.
165
+ * The modal and the collection layer only carry it; the source that produced it
166
+ * is the only one that looks inside, so it declares its own shape on `addField`
167
+ * and `editField` (both are methods, so a narrower parameter type is allowed).
168
+ */
169
+ type FieldSettings = unknown;
170
+
171
+ /** A warning shown under the PII toggle, with an optional action button. */
172
+ interface FieldPiiWarning {
173
+ text: string;
174
+ action?: {
175
+ label: string;
176
+ onClick: () => void;
177
+ };
178
+ }
179
+ interface FieldModalCollectionOption {
180
+ id: string;
181
+ label: string;
182
+ }
183
+ type FieldModalCollectionOptionsLoader = () => Promise<FieldModalCollectionOption[]>;
184
+ interface FieldModalCollectionAction {
185
+ label: string;
186
+ icon?: ComponentType;
187
+ disabled?: boolean;
188
+ /** Return an option to select, or undefined on cancellation. The option may
189
+ * be pending creation; persistence remains the source's responsibility. */
190
+ onClick: () => Promise<FieldModalCollectionOption | undefined>;
191
+ }
192
+ /** Extra collection picker a field type can add to the main modal body. */
193
+ interface FieldModalCollectionInput {
194
+ label?: string;
195
+ placeholder?: string;
196
+ emptyStateMessage?: string;
197
+ errorMessage?: string;
198
+ required?: boolean;
199
+ loadOptions?: FieldModalCollectionOptionsLoader;
200
+ /** An action below the options, also shown when no options match. */
201
+ dropdownAction?: FieldModalCollectionAction;
202
+ /** Restores the picker value from an existing field. */
203
+ getValue?: (field: Field) => string | undefined;
204
+ /** Adds picker-derived values to the source-owned settings payload. */
205
+ getSettings?: (collectionId: string) => FieldSettings;
206
+ }
207
+ interface FieldSettingsProps {
208
+ /** The picked field type, or absent before one is picked. */
209
+ fieldType?: string;
210
+ /** Validation rules the section should render as fixed, not user-editable.
211
+ * A section ignores any entry it doesn't recognize. */
212
+ lockedRules?: readonly string[];
213
+ }
214
+ /**
215
+ * The collapsible section below the main add/edit field inputs, supplied by the
216
+ * source. The modal renders it, blocks confirm while it has an error, and hands
217
+ * its values to the source's own `addField`/`editField` — it never looks inside.
218
+ */
219
+ interface FieldSettingsSection {
220
+ Component: ComponentType<FieldSettingsProps>;
221
+ /** True keeps the modal open on confirm. The section shows the error itself. */
222
+ hasError(fieldType?: string): boolean;
223
+ /** Passed to `FieldActions.addField`/`editField` as-is. */
224
+ getValues(fieldType?: string): FieldSettings;
225
+ /**
226
+ * Fills the inputs when the modal opens: the field being edited, or nothing
227
+ * for a new field. Pushed in rather than read from a prop, so the values are
228
+ * there whether or not the section has been rendered yet.
229
+ */
230
+ setValues(field?: Field): void;
231
+ /**
232
+ * Prefills a new field's rules from the caller's requested initial values —
233
+ * there is no backing `Field` yet, so this is separate from `setValues`.
234
+ * Absent ⇒ the section doesn't support prefilling any rule this way, and
235
+ * the modal drops that rule from `lockedProperties` rather than locking a
236
+ * control at a value it could never actually apply.
237
+ */
238
+ setInitialValues?(initial: {
239
+ required?: boolean;
240
+ }): void;
241
+ }
242
+
243
+ type ValidationRule = {
244
+ type: 'required';
245
+ message: string;
246
+ } | {
247
+ type: 'min' | 'max';
248
+ value: number;
249
+ message: string;
250
+ } | {
251
+ type: 'minLength' | 'maxLength';
252
+ value: number;
253
+ message: string;
254
+ } | {
255
+ type: 'pattern';
256
+ value: RegExp;
257
+ message: string;
258
+ } | {
259
+ type: 'custom';
260
+ validate: (value: unknown) => boolean;
261
+ message: string;
262
+ } | {
263
+ type: 'specificValues';
264
+ values: {
265
+ id: string;
266
+ value: string;
267
+ }[];
268
+ message: string;
269
+ };
270
+ interface Focusable {
271
+ focus: () => void;
272
+ }
273
+ type EditTrigger = {
274
+ kind: 'type';
275
+ key: string;
276
+ } | 'enter' | 'click' | 'doubleClick';
277
+ interface CellViewProps<V> {
278
+ value: V;
279
+ typeConfig?: unknown;
280
+ validation?: ValidationRule[];
281
+ /** Stable id of the column. Cell components can use it to derive unique DOM ids. */
282
+ columnId: string;
283
+ /** Stable key of the row. Cell components can use it to derive unique DOM ids. */
284
+ rowKey: string;
285
+ /** Whether the cell is editable. Used to conditionally render placeholders (don't show them for read-only cells). */
286
+ isEditable?: boolean;
287
+ }
288
+ interface CellEditProps<V> {
289
+ value: V;
290
+ onChange(value: V): void;
291
+ onCommit: () => void;
292
+ onCancel: () => void;
293
+ /**
294
+ * Signals that the cell is starting an editing operation that will move focus
295
+ * outside the table (e.g., opening a media manager or a modal). Calling this
296
+ * sets isEditing=true so the table does not clear cell focus while the
297
+ * external UI is open. Pair with onCommit (after the operation succeeds)
298
+ * or onCancel (if the user dismisses without a value change).
299
+ */
300
+ onStartEdit?: () => void;
301
+ /** Ref to the focusable input element. Used for type-to-edit (focusing the input when user starts typing on a focused cell). */
302
+ inputRef?: MutableRefObject<Focusable | undefined | null>;
303
+ typeConfig?: unknown;
304
+ /** How edit mode was triggered. Edit components can use this to customize behavior (e.g., date picker auto-opens on 'type'). */
305
+ editTrigger?: EditTrigger | null;
306
+ /** Column-level validation rules. Edit components can derive UI behavior (e.g., maxLength blocking/tooltip) from these. */
307
+ validation?: ValidationRule[];
308
+ /** Stable id of the column. Cell components can use it to derive unique DOM ids. */
309
+ columnId: string;
310
+ /** Stable key of the row. Cell components can use it to derive unique DOM ids. */
311
+ rowKey: string;
312
+ }
313
+ /**
314
+ * Props passed to a cell type's optional `EditWrapper`. The table mounts the
315
+ * wrapper around the cell content and keeps it mounted across the edit↔view
316
+ * transition, so the wrapper can own behavior that must outlive the inline
317
+ * editor (e.g. a reference cell navigating to an overlay and refreshing on
318
+ * return). The wrapper hands anything the editor needs down via its own context.
319
+ */
320
+ interface CellEditWrapperProps {
321
+ /** The column's typeConfig (same value handed to the cell's Edit/View). */
322
+ typeConfig?: unknown;
323
+ /** Stable id of the column. */
324
+ columnId: string;
325
+ /** Stable key of the row. */
326
+ rowKey: string;
327
+ /** The cell content (the Edit or View component) to render inside the wrapper. */
328
+ children: ReactNode;
329
+ }
330
+ type EditableCellContextMenuAction = 'copy' | 'cut' | 'paste' | 'clear';
331
+ interface EditableCellContextMenuActionContext<V> {
332
+ /** Current cell value, including pending or draft edits. */
333
+ value: V;
334
+ /** Field metadata associated with the column, when available. */
335
+ field?: Field;
336
+ /** Stable key of the row. */
337
+ rowKey: string;
338
+ /** Stable id of the column. */
339
+ columnId: string;
340
+ }
341
+ interface EditableCellContextMenuActionConfig<V> {
342
+ /** Returning a non-empty string disables the action and shows the tooltip. */
343
+ disabledTooltip(context: EditableCellContextMenuActionContext<V>): string | undefined;
344
+ }
345
+ /**
346
+ * The editable-cell slot of a field type definition: how a cell of that type
347
+ * renders, edits, and moves through the clipboard. The definition's key
348
+ * identifies the type and the definition's `value` owns validation, so the
349
+ * slot carries neither.
350
+ *
351
+ * Members that take `V` use method syntax so a definition typed with a
352
+ * concrete value type stays assignable where a loosely typed definition is
353
+ * expected (see `FieldTypeDefinition`).
354
+ */
355
+ interface EditableCellConfig<V> {
356
+ /** Render cell in view mode (read-only display). */
357
+ ViewComponent(props: CellViewProps<V>): ReactElement | null;
358
+ /** Render cell in edit mode (inline editor). Optional — omit for view-only cells. */
359
+ EditComponent?(props: CellEditProps<V>): ReactElement | null;
360
+ /** Serialize value to clipboard string. */
361
+ serialize?(value: V): string;
362
+ /** Deserialize clipboard string to value. */
363
+ deserialize?(raw: string): V;
364
+ /** Can this cell type be edited? (default: true) */
365
+ editable?: boolean;
366
+ /** Availability of Cairo's built-in cell context-menu actions. */
367
+ contextMenu?: Partial<Record<EditableCellContextMenuAction, EditableCellContextMenuActionConfig<V>>>;
368
+ /** Toggle value on single click (e.g., boolean checkbox). Skips focus→edit flow. */
369
+ toggleValue?(value: V): V;
370
+ /** Enter edit mode on single click (e.g., image cell with no value). */
371
+ editOnClick?(value: V): boolean;
372
+ /** Show the EditComponent when the cell is focused, without entering edit mode.
373
+ * Keyboard navigation remains active. Similar to toggleValue but without toggling. */
374
+ showEditWhenFocused?: boolean;
375
+ /** Optional wrapper component the cell type defines to own behavior that must
376
+ * outlive the inline editor. Mounted around the cell content and kept mounted
377
+ * across the edit↔view transition. */
378
+ EditWrapper?: ComponentType<CellEditWrapperProps>;
379
+ /** Cell content can grow past row height when focused. Only applies to
380
+ * showEditWhenFocused cells. */
381
+ growable?: boolean;
382
+ /** Called on type-to-edit. Return object with cleared value and/or prevent flag.
383
+ * Return undefined to block the key. Return {} to enter edit mode without changing the value. */
384
+ onTypeToEdit?(params: {
385
+ key: string;
386
+ validation?: ValidationRule[];
387
+ }): {
388
+ value?: V;
389
+ } | undefined;
390
+ /** Optional hook to normalize the committed value (e.g. auto-prepend https://).
391
+ * Called before the edit commits; the value is written back before committing. */
392
+ normalizeOnCommit?(value: V): V;
393
+ /** When true, type-to-edit flushes the edit-mode render synchronously and
394
+ * focuses the input within the same keydown event, then lets the browser's
395
+ * default action deliver the keystroke to the now-focused input naturally.
396
+ * Use for cells that wrap a controlled input whose value can't be seeded via props. */
397
+ nativeTypeToEdit?: boolean;
398
+ }
399
+ /** The props the filter builder passes to a definition's toolbar filter
400
+ * component — the same contract the built-in filter elements receive. */
401
+ interface FilterTypeComponentProps<V = any> {
402
+ filter: Filter<V>;
403
+ toolbarItemProps?: {
404
+ label?: ReactNode;
405
+ };
406
+ toolbarTagProps?: {
407
+ label?: string;
408
+ };
409
+ accordionItemProps?: {
410
+ label?: string;
411
+ };
412
+ }
413
+ /** The filter slot of a field type definition: the filter state registered on
414
+ * the collection query and the toolbar element that renders it. */
415
+ interface FilterTypeConfig {
416
+ createFilter: (field: Field) => Filter<any>;
417
+ Component: ComponentType<FilterTypeComponentProps>;
418
+ }
419
+ /**
420
+ * The read-only table slot of a field type definition: how a cell of that
421
+ * type renders in the table, and the column's layout. Independent of
422
+ * `editableTable` — neither slot falls back to the other.
423
+ */
424
+ /** What a read-only table cell is told about itself. */
425
+ interface TableCellProps<V> {
426
+ value: V;
427
+ /** Stable id of the column. Cell components can use it to derive unique DOM ids. */
428
+ columnId: string;
429
+ /** The row this cell belongs to, so a cell can act on its item and not just
430
+ * display it. Typed loosely for the same reason as `FieldsSource.getCellValue`:
431
+ * the row shape belongs to the source, not to Cairo. */
432
+ row: unknown;
433
+ }
434
+ interface TableCellConfig<V> {
435
+ /** Render the cell. Method syntax keeps the definition assignable to
436
+ * `FieldTypeDefinition<unknown>` (see FieldTypeDefinition). */
437
+ CellComponent(props: TableCellProps<V>): ReactElement | null;
438
+ /** Column width. Required — custom types get no built-in layout default. */
439
+ width: string;
440
+ /** Default: 'start'. */
441
+ align?: 'start' | 'center' | 'end';
442
+ }
443
+ /** An extra menu item a field type definition adds to a field's actions menu. */
444
+ interface FieldTypeActionItem {
445
+ key: string;
446
+ label: string;
447
+ icon?: ReactNode;
448
+ skin?: 'destructive';
449
+ onClick: (field: Field) => void;
450
+ /** Default: visible. */
451
+ visible?: (field: Field) => boolean;
452
+ /** Returning a string disables the item and shows the tooltip. */
453
+ disabledTooltip?: (field: Field) => string | undefined;
454
+ }
455
+ /** The actions slot of a field type definition: extra items for the field's "more actions" menu. */
456
+ interface FieldActionsConfig {
457
+ items?: FieldTypeActionItem[];
458
+ }
459
+ /** Display metadata for a field type: menu label and type icons. */
460
+ interface FieldTypeDisplay {
461
+ label: string;
462
+ icons: {
463
+ Small: ComponentType;
464
+ Medium: ComponentType;
465
+ };
466
+ }
467
+ /** Value semantics of a field type, independent of any rendering surface.
468
+ * Members use method syntax so a definition typed with a concrete value type
469
+ * stays assignable where a loosely typed definition is expected. */
470
+ interface FieldValueBehavior<V> {
471
+ defaultValue?: V;
472
+ isEmpty?(value: V): boolean;
473
+ /** Returns an error message, or null when the value is valid. Every surface
474
+ * that validates a field of this type runs this. */
475
+ validate?(value: V, rules?: ValidationRule[]): string | null;
476
+ }
477
+ interface FieldCapabilities {
478
+ sortable: boolean;
479
+ }
480
+ /** The field-modal slot of a field type definition: opts the type into the
481
+ * add/edit-field modal's type picker and describes its entry there. */
482
+ interface FieldModalConfig {
483
+ /** True ⇒ the add-field modal offers this type. */
484
+ creatable: boolean;
485
+ /** Placeholder for the name input. Absent ⇒ the modal's generic placeholder. */
486
+ namePlaceholder?: string;
487
+ /** Optional valid field ID base. Default: the normalized uppercase type ID.
488
+ * Numeric suffixes are added only on collision. */
489
+ keyBase?: string;
490
+ /** One-line description under the type in the picker. */
491
+ subtitle?: string;
492
+ /** Group heading this type is listed under in the picker. */
493
+ group?: string;
494
+ /** Whether a field of this type can be marked PII. Absent ⇒ follows the
495
+ * source-wide setting. */
496
+ supportsPii?: boolean;
497
+ /** Warning shown while the PII toggle is on. Read on every render, so it can
498
+ * use data that only exists once the schema has loaded. Default: none. */
499
+ piiWarning?: () => FieldPiiWarning | undefined;
500
+ /** This type's collapsible settings section — the same contract a
501
+ * source-declared type option carries (see `FieldSettingsSection`). */
502
+ settingsSection?: FieldSettingsSection;
503
+ /** Collection picker shown in the main add/edit field form. */
504
+ collectionInput?: FieldModalCollectionInput;
505
+ }
506
+ /**
507
+ * Props the entity-page form dispatcher passes to a field type's form
508
+ * component. The dispatcher owns the form wiring (registration, validation
509
+ * from the definition's `value.validate`) and the field UI (label, required
510
+ * marker, error message); the component renders the input: read `value`,
511
+ * report edits through `onChange`, and hand back the focusable control
512
+ * through `inputRef` so a blocked save can reach it.
513
+ */
514
+ interface FormFieldComponentProps<V> {
515
+ field: Field;
516
+ value: V;
517
+ onChange(value: V): void;
518
+ /** Call when the input loses focus — marks the field touched, so error
519
+ * timing matches the built-in renderers. */
520
+ onBlur: () => void;
521
+ /** Ref to the focusable input element. Used to focus the field when a
522
+ * blocked save reports an error on it. Absent ⇒ the entity page brings the
523
+ * field into view and focuses the first control it finds inside. */
524
+ inputRef?: MutableRefObject<Focusable | undefined | null>;
525
+ dataHook?: string;
526
+ }
527
+ /** The entity-page form slot of a field type definition. */
528
+ interface FormTypeConfig<V = unknown> {
529
+ /** Renders the input. Method syntax keeps the definition assignable to
530
+ * `FieldTypeDefinition<unknown>` (see FieldTypeDefinition). */
531
+ Component(props: FormFieldComponentProps<V>): ReactElement | null;
532
+ }
533
+ /**
534
+ * A consumer-defined field type. Defined once on the fields source; every
535
+ * entry point that renders the field resolves its slot from here. `V` is the
536
+ * field's value type — `defineFieldType` infers it, and it keeps all the
537
+ * slots consistent with each other.
538
+ *
539
+ * Sources hold definitions of mixed value types in one
540
+ * `FieldTypeDefinition[]` (= `FieldTypeDefinition<unknown>[]`) array. That
541
+ * works because every member that takes `V` is declared with method syntax,
542
+ * which TypeScript checks bivariantly — so `FieldTypeDefinition<number>` is
543
+ * assignable to `FieldTypeDefinition<unknown>` without casts.
544
+ */
545
+ interface FieldTypeDefinition<V = unknown> {
546
+ /** Unique key for the type. A built-in type uses its `PatternsFieldType`; a
547
+ * consumer-defined type uses the string its fields reference via `customType`. */
548
+ type: string;
549
+ display: FieldTypeDisplay;
550
+ /** Filter behavior, or an explicit opt-out — never silently absent. */
551
+ filter: FilterTypeConfig | {
552
+ filterable: false;
553
+ };
554
+ value?: FieldValueBehavior<V>;
555
+ capabilities?: FieldCapabilities;
556
+ /** Absent ⇒ the field renders with the default cell in the read-only table. */
557
+ table?: TableCellConfig<V>;
558
+ /** Absent ⇒ the field renders as a read-only cell in editable surfaces. */
559
+ editableTable?: EditableCellConfig<V>;
560
+ /** Required once a field of this type renders on an entity page:
561
+ * development throws without it; production skips the field. */
562
+ form?: FormTypeConfig<V>;
563
+ /** Extra items for the field's "more actions" menu. */
564
+ actions?: FieldActionsConfig;
565
+ /** Absent ⇒ the add/edit field modal never offers this type. Fields of the
566
+ * type created elsewhere still open in the modal for name/PII edits. */
567
+ fieldModal?: FieldModalConfig;
568
+ }
569
+
570
+ /** What a caller passes. Only `collectionId` and `loadSchema` are required. */
571
+ /**
572
+ * `SchemaSourceInput` — cut here because it has its own bundle.
573
+ * Full shape: `types/SchemaSourceInput.d.ts`.
574
+ */
575
+ interface SchemaSourceInput<T = any> {
576
+ [key: string]: unknown;
577
+ }
578
+ /** The resolved source: defaults filled, `loadSchema` memoized. */
579
+ /**
580
+ * `SchemaSource` — cut here because it has its own bundle.
581
+ * Full shape: `types/SchemaSource.d.ts`.
582
+ */
583
+ interface SchemaSource<T = any> {
584
+ [key: string]: unknown;
585
+ }
586
+
587
+ type ToastType = 'STANDARD' | 'PREMIUM' | 'SUCCESS' | 'WARNING' | 'ERROR';
588
+ type ToastTimeout = 'NONE' | 'NORMAL';
589
+ type ToastPriority = 'LOW' | 'NORMAL' | 'HIGH';
590
+ type ToastActionUiType = 'BUTTON' | 'LINK';
591
+ type ToastAction = {
592
+ text: string;
593
+ onClick?: Function;
594
+ removeToastOnClick?: boolean;
595
+ uiType?: ToastActionUiType;
596
+ navigationTarget?: {
597
+ url: string;
598
+ openInNewTab?: boolean;
599
+ };
600
+ };
601
+ type ErrorToastDetails = {
602
+ requestId: string;
603
+ };
604
+ type ToastConfig = {
605
+ message: string;
606
+ biName?: string;
607
+ timeout?: ToastTimeout;
608
+ priority?: ToastPriority;
609
+ type?: ToastType;
610
+ onCloseClick?: () => unknown;
611
+ onToastSeen?: () => unknown;
612
+ action?: ToastAction;
613
+ details?: ErrorToastDetails;
614
+ };
615
+ type RemoveToast = () => void;
616
+ type ShowToast = (toastConfig: ToastConfig) => {
617
+ remove: RemoveToast;
618
+ };
619
+
620
+ /**
621
+ * `ConditionalModalState` — you receive this, you don't construct it.
622
+ * An internal state object — reached through another state object, never built directly.
623
+ */
624
+ declare class ConditionalModalState<T = any> {
625
+ [key: string]: unknown;
626
+ }
627
+
628
+ type PatternsLayoutType = 'panel' | 'page';
629
+
630
+ type WixPatternsContainerEvents = TypedEmitter<{
631
+ navigation: () => ModalLayoutProps | null | undefined;
632
+ }>;
633
+ interface WixPatternsContainerParams {
634
+ readonly initialProps?: WixPatternsInitialProps;
635
+ readonly createEssentials: WixPatternsEssentials['createEssentials'];
636
+ readonly biLogger?: WixPatternsEssentials['biLogger'];
637
+ readonly messagesEnImport?: () => Promise<{}>;
638
+ readonly fetchTranslations?: (p: {
639
+ readonly errorMonitor: ErrorMonitor;
640
+ }) => (locale: string) => Promise<{}>;
641
+ readonly createComponentSettings?: WixPatternsEssentials['createComponentSettings'];
642
+ readonly errorMonitor: ErrorMonitor;
643
+ readonly httpClient: WixPatternsEssentials['httpClient'];
644
+ readonly onlineManager: OnlineManager;
645
+ readonly focusManager: FocusManager;
646
+ readonly contextType?: ContextType;
647
+ readonly history: History;
648
+ readonly window: PartialWindow;
649
+ readonly useTranslation: typeof useTranslation;
650
+ readonly Trans: typeof Trans;
651
+ readonly useExperiments: WixPatternsEssentials['useExperiments'];
652
+ readonly experiments: WixPatternsEssentials['experiments'];
653
+ readonly environment: WixPatternsEssentials['environment'];
654
+ readonly environmentBI: WixPatternsEssentials['environmentBI'];
655
+ readonly errorHandler?: WixPatternsEssentials['errorHandler'];
656
+ readonly user: WixPatternsEssentials['user'];
657
+ readonly showToast?: ShowToast;
658
+ readonly usePageLocation?: WixPatternsEssentials['usePageLocation'];
659
+ readonly navigateTo?: WixPatternsEssentials['navigateTo'];
660
+ readonly onNavigation?: OnNavigation;
661
+ readonly getHostContainer?: GetHostContainer;
662
+ readonly queryCache: QueryCache;
663
+ readonly patchesCache: Map<string, IObservableArray<OptimisticPatch<any>>>;
664
+ readonly onSidePanelOpen?: OnSidePanelOpen;
665
+ readonly closeSidePanel?: CloseSidePanel;
666
+ readonly lodash: PartialLodash;
667
+ readonly events?: WixPatternsContainerEvents;
668
+ readonly sidePanel?: TransitionState<string>;
669
+ readonly onNavigationModal?: ConditionalModalState<ModalLayoutProps>;
670
+ readonly sidePanelComponents?: Map<string, ReactElement>;
671
+ readonly appendModalsToBody?: boolean;
672
+ readonly layoutType?: PatternsLayoutType;
673
+ readonly useRelativeSidePanel?: boolean;
674
+ readonly onBeforeUnload?: WixPatternsEssentials['onBeforeUnload'];
675
+ readonly onLayerStateChange?: WixPatternsEssentials['onLayerStateChange'];
676
+ readonly openMediaManager?: WixPatternsEssentials['openMediaManager'];
677
+ }
678
+
679
+ interface HttpClient$1 {
680
+ request<T>(req: HttpRequestOrHttpRequestFactory<T>, overrides?: RequestOverrides): Promise<{
681
+ data: T;
682
+ status: number;
683
+ statusText: string;
684
+ headers: Record<string, string | undefined>;
685
+ }>;
686
+ }
687
+
688
+ /**
689
+ * `Filter` — cut here because it has its own bundle.
690
+ * Full shape: `types/Filter.d.ts`.
691
+ */
692
+ interface Filter<T = any> {
693
+ [key: string]: unknown;
694
+ }
695
+
696
+ interface DataCapsule {
697
+ setItem<T>(key: string, value: T, options?: Record<string, any>): Promise<void>;
698
+ removeItem(key: string, options?: Record<string, any>): Promise<void>;
699
+ getItem<T>(key: string): Promise<T>;
700
+ }
701
+
702
+ type OnSidePanelOpen = (listener: () => void) => {
703
+ remove(): void;
704
+ };
705
+ type CloseSidePanel = () => unknown;
706
+ interface BiLogger {
707
+ report(reportProps: ReportProps): Promise<any>;
708
+ }
709
+ interface CairoBILoggerFactory {
710
+ updateDefaults(params: LogParams): this;
711
+ logger(): BiLogger;
712
+ }
713
+ type PageLocation = {
714
+ pageId: string;
715
+ pathname: string;
716
+ search?: string;
717
+ hash?: string;
718
+ };
719
+ type OnNavigationPause = () => {
720
+ resume(): void;
721
+ };
722
+ type OnNavigationCallback = (pause: OnNavigationPause) => void;
723
+ type OnNavigation = (callback: OnNavigationCallback) => {
724
+ remove(): void;
725
+ };
726
+ type NavigateToObject = {
727
+ pageId: string;
728
+ relativeUrl?: string;
729
+ appState?: string;
730
+ referrer?: string;
731
+ /**
732
+ * How the target page should be presented. `overlay` opens it as a layer on
733
+ * top of the current page (e.g. the dashboard overlay). Hosts that don't
734
+ * support layered navigation ignore this and navigate in place.
735
+ */
736
+ displayMode?: 'auto' | 'main' | 'overlay';
737
+ /** Whether the navigation should push a new history entry or replace the current one. */
738
+ history?: 'push' | 'replace';
739
+ };
740
+ type NavigateToFunc = (to: NavigateToObject) => void;
741
+ type BeforeUnloadResponse = {
742
+ remove: () => void;
743
+ };
744
+ type OnBeforeUnload = (callback: (event: Event) => void) => BeforeUnloadResponse;
745
+ /** The layered-navigation state of the current page relative to the host. */
746
+ type LayerState = 'background' | 'foreground';
747
+ /**
748
+ * Subscribe to layer-state transitions of the current page. Fires `background`
749
+ * when another layer (e.g. an overlay) is opened on top of the current page and
750
+ * `foreground` when it returns to the top. Hosts without layered navigation
751
+ * leave this undefined.
752
+ */
753
+ type OnLayerStateChange = (callback: (newState: LayerState) => void) => {
754
+ remove: () => void;
755
+ };
756
+ interface HostContainerExtension {
757
+ appId?: string;
758
+ componentId: string;
759
+ title?: string;
760
+ menuItem?: {
761
+ IconComponent?: FunctionComponent;
762
+ IconSmallComponent?: FunctionComponent;
763
+ structuredAction: (params?: Record<string, any>) => unknown;
764
+ };
765
+ Component?: React.ComponentType;
766
+ Extension?: React.ComponentType;
767
+ }
768
+ type GetExtensions = () => HostContainerExtension[] | Promise<HostContainerExtension[]>;
769
+ interface HostContainer {
770
+ getExtensions: GetExtensions;
771
+ }
772
+ type GetHostContainer = (hostContainerId: string) => HostContainer;
773
+ type OpenMediaManager = SDK['openMediaManager'];
774
+ type CreateEssentials = (options: EssentialsOptions) => {
775
+ i18n: Essentials['i18n'];
776
+ dataCapsule: Essentials['dataCapsule'];
777
+ biLoggerFactory?: () => CairoBILoggerFactory;
778
+ errorMonitor: ErrorMonitor;
779
+ fedopsLogger?: MonitorLogger;
780
+ experiments?: Experiments;
781
+ };
782
+ type CreateComponentSettings = (container: {
783
+ httpClient: HttpClient$1;
784
+ queryCache: QueryCache;
785
+ environment: Environment;
786
+ createEssentials: CreateEssentials;
787
+ }) => (options: {
788
+ namespace: string;
789
+ }) => DataCapsule;
790
+ interface PatternsErrorHandler {
791
+ withErrorHandler: errorHandler.ErrorHandler['withErrorHandler'];
792
+ getResolvedError?: errorHandler.ErrorHandler['getResolvedError'];
793
+ showError?: errorHandler.ErrorHandler['showError'];
794
+ reportRetryAttempt?: errorHandler.ErrorHandler['reportRetryAttempt'];
795
+ }
796
+ interface WixPatternsEssentials {
797
+ httpClient: HttpClient$1;
798
+ /** A `ErrorMonitor` instance `@wix/fe-essentials/error-monitor` */
799
+ errorMonitor: ErrorMonitor;
800
+ /** A `Experiments` instance `@wix/fe-essentials/experiments` */
801
+ experiments: Experiments;
802
+ errorHandler?: PatternsErrorHandler;
803
+ biLogger?: BiLogger | null;
804
+ /**
805
+ * A function that returns the shape `{ i18n }` - should be compatible with `{createEssentials} from '@wix/fe-essentials'` */
806
+ createEssentials: CreateEssentials;
807
+ /** A `DataCapsule` to store component-level settings such as `Views` */
808
+ createComponentSettings?: CreateComponentSettings;
809
+ /** The user's environment
810
+ * - `language` - preferable language for the user
811
+ * - `artifactId` - App level identifier, usually the artifact ID
812
+ * - `componentId` - Component/page level identifier (Optional)
813
+ * - `componentName` - Readable component/page name (Optional)
814
+ */
815
+ environment: Pick<Environment, 'language'> & Partial<Omit<Environment, 'language'>> & {
816
+ uiLibVersion?: string;
817
+ msid?: string;
818
+ };
819
+ environmentBI: EnvironmentBi;
820
+ /** `useTranslation` hook from `react-i18next` or `@wix/fe-essentials/react` */
821
+ useTranslation: typeof useTranslation;
822
+ /** `Trans` component from `react-i18next` or `@wix/fe-essentials/react */
823
+ Trans: typeof Trans;
824
+ user: {
825
+ id?: string;
826
+ permissions: string[];
827
+ };
828
+ /** `useExperiments` hook from `@wix/yoshi-flow-bm` or `@wix/fe-essentials/react` */
829
+ useExperiments: () => {
830
+ ready: boolean;
831
+ experiments: {
832
+ enabled: (key: string) => boolean;
833
+ };
834
+ };
835
+ usePageLocation?: () => PageLocation | undefined;
836
+ /** A function that shows a global toast. For BM usage, it should be `showToast` from `business-manager-api` */
837
+ showToast?: ShowToast;
838
+ /** A function to perform a navigation to a given pageId */
839
+ navigateTo?: NavigateToFunc;
840
+ useAppLoaded?: () => void;
841
+ onSidePanelOpen?: OnSidePanelOpen;
842
+ closeSidePanel?: CloseSidePanel;
843
+ /** Custom [history](https://github.com/remix-run/history/tree/v5.3.0/packages/history) instance to sync custom consumer navigations with Cairo navigations */
844
+ history?: History$1;
845
+ /** An optional query cache instance for controlling the cache from other modules */
846
+ queryCache?: QueryCache;
847
+ /** A function that interrupts a navigation to another app inside wix platforms */
848
+ onNavigation?: OnNavigation;
849
+ getHostContainer?: GetHostContainer;
850
+ onlineManager?: OnlineManager;
851
+ /**
852
+ * Deals with dirty state by setting up a listener that triggers a confirmation dialog when a user attempts to leave a page. The event listener is removed upon component unmount.
853
+ * @param callback - called on navigation with an event object. Use event.preventDefault() within the callback to display the dialog.
854
+ * @returns { remove: () => void } - object that includes a remove method. You can use this method to remove the listener whenever necessary.
855
+ */
856
+ onBeforeUnload?: OnBeforeUnload;
857
+ /**
858
+ * Subscribe to layer-state transitions of the current page (e.g. to refresh
859
+ * data when an overlay opened on top of it is closed). Provided by hosts that
860
+ * support layered navigation; left undefined otherwise.
861
+ */
862
+ onLayerStateChange?: OnLayerStateChange;
863
+ /** Opens the Wix Media Manager. Provided by the Dashboard SDK via context. */
864
+ openMediaManager?: OpenMediaManager;
865
+ }
866
+ type ContextType = 'ACCOUNT' | 'SITE';
867
+
868
+ interface WixPatternsInitialProps {
869
+ messages?: Messages;
870
+ }
871
+
872
+ /** An external-database connection; determines whether an EXTERNAL collection is editable. */
873
+ interface ExternalDbConnection {
874
+ namespace: string;
875
+ capabilities?: {
876
+ collectionModificationsSupported?: boolean;
877
+ fieldTypes?: string[];
878
+ };
879
+ }
880
+
881
+ type HttpClient = WixPatternsContainerParams['httpClient'];
882
+ interface CreateCmsSchemaLoaderDeps {
883
+ httpClient: HttpClient;
884
+ /** Fetch the user's ABAC permissions for field-management gating. Default `false`. */
885
+ includeUserPermissions?: boolean;
886
+ /** Host-supplied metasite id; the ABAC permission fetch is skipped without it. */
887
+ metasiteId?: string;
888
+ /** Pre-resolved overrides (tests); skip the internal fetch when provided. */
889
+ userPermissions?: string[];
890
+ externalDbConnections?: ExternalDbConnection[];
891
+ /** Called with the raw collection on every load, for the parts of it that the
892
+ * source-neutral schema doesn't carry (e.g. who can read the collection). */
893
+ onCollectionLoaded?: (collection: collections.DataCollection) => void;
894
+ }
895
+
896
+ interface UseCmsSchemaSourceDeps extends Omit<CreateCmsSchemaLoaderDeps, 'httpClient' | 'onCollectionLoaded'> {
897
+ collectionId: string;
898
+ /** Default: the patterns container's client. */
899
+ httpClient?: CreateCmsSchemaLoaderDeps['httpClient'];
900
+ /** The site whose user permissions `includeUserPermissions` fetches.
901
+ * Default: the patterns container's `environment.msid`. */
902
+ metasiteId?: string;
903
+ /** Seed sources for referenced collections, keyed by referenced collection
904
+ * id. Usually unnecessary — reference fields are resolved automatically from
905
+ * the loaded schema. Provide an entry only to override the auto-built one. */
906
+ references?: Record<string, SchemaSource<any>>;
907
+ /** Consumer-defined field types, resolved by fields with `type: 'CUSTOM'`. */
908
+ fieldTypes?: FieldTypeDefinition[];
909
+ /** Opens the host's collection-permissions UI. Without it the PII warning
910
+ * shows its text but no action. */
911
+ onEditCollectionPermissions?: () => void;
912
+ }
913
+ declare function cmsSchemaSourceInput<T extends Record<string, unknown> = Record<string, unknown>>(deps: UseCmsSchemaSourceDeps & Pick<CreateCmsSchemaLoaderDeps, 'httpClient'>): SchemaSourceInput<T>;
914
+ /**
915
+ * A ready-to-use `SchemaSource` for a CMS collection: wraps the CMS schema
916
+ * loader and supplies the CMS field types. Pass it to a `@wix/patterns/schema`
917
+ * collection hook.
918
+ */
919
+ declare function useCmsSchemaSource<T extends Record<string, unknown> = Record<string, unknown>>(deps: UseCmsSchemaSourceDeps): SchemaSource<T>;
920
+
921
+ export { cmsSchemaSourceInput, useCmsSchemaSource };
922
+ export type { UseCmsSchemaSourceDeps };