@wix/patterns 1.430.0 → 1.432.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 (1490) hide show
  1. package/dist/cjs/components/ActionCell/DisabledActionCellMenu.js +2 -2
  2. package/dist/cjs/components/ActionCell/DisabledActionCellMenu.js.map +1 -1
  3. package/dist/cjs/components/ArchivedItemsPanel/ArchivedItemsCTAButton.js +18 -15
  4. package/dist/cjs/components/ArchivedItemsPanel/ArchivedItemsCTAButton.js.map +1 -1
  5. package/dist/cjs/components/ArchivedItemsPanel/ArchivedItemsList.js +5 -4
  6. package/dist/cjs/components/ArchivedItemsPanel/ArchivedItemsList.js.map +1 -1
  7. package/dist/cjs/components/ArchivedItemsPanel/ArchivedItemsListItem.js +32 -25
  8. package/dist/cjs/components/ArchivedItemsPanel/ArchivedItemsListItem.js.map +1 -1
  9. package/dist/cjs/components/CardContainer/CardContainer.js +2 -2
  10. package/dist/cjs/components/CardContainer/CardContainer.js.map +1 -1
  11. package/dist/cjs/components/CardContainer/CardContainer.st.css.js +2 -2
  12. package/dist/cjs/components/CardContainer/CardContainer.st.css.js.map +1 -1
  13. package/dist/cjs/components/CmsFieldManagement/CmsFieldForm.st.css.js +3 -3
  14. package/dist/cjs/components/CmsFieldManagement/CmsFieldForm.st.css.js.map +1 -1
  15. package/dist/cjs/components/CmsFieldManagement/CmsFieldModal.st.css.js +3 -3
  16. package/dist/cjs/components/CmsFieldManagement/CmsFieldModal.st.css.js.map +1 -1
  17. package/dist/cjs/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.js +3 -3
  18. package/dist/cjs/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.js.map +1 -1
  19. package/dist/cjs/components/CmsFieldManagement/formFields/CharactersLimitInput.st.css.js +3 -3
  20. package/dist/cjs/components/CmsFieldManagement/formFields/CharactersLimitInput.st.css.js.map +1 -1
  21. package/dist/cjs/components/Collapse/Collapse.st.css.js +3 -3
  22. package/dist/cjs/components/Collapse/Collapse.st.css.js.map +1 -1
  23. package/dist/cjs/components/CollectionActionsBar.js +2 -2
  24. package/dist/cjs/components/CollectionActionsBar.js.map +1 -1
  25. package/dist/cjs/components/CollectionAutoComplete/CollectionAutoComplete.js +5 -2
  26. package/dist/cjs/components/CollectionAutoComplete/CollectionAutoComplete.js.map +1 -1
  27. package/dist/cjs/components/CollectionPageNew/CollectionPage.st.css.js +2 -2
  28. package/dist/cjs/components/CollectionPageNew/CollectionPage.st.css.js.map +1 -1
  29. package/dist/cjs/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js +3 -3
  30. package/dist/cjs/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js.map +1 -1
  31. package/dist/cjs/components/CollectionSectionHeader/CollectionSectionHeaderActionBar.js +3 -3
  32. package/dist/cjs/components/CollectionSectionHeader/CollectionSectionHeaderActionBar.js.map +1 -1
  33. package/dist/cjs/components/CollectionTable/CollectionTable.st.css.js +2 -2
  34. package/dist/cjs/components/CollectionTable/CollectionTable.st.css.js.map +1 -1
  35. package/dist/cjs/components/CollectionTable/CollectionTableWSRTable.st.css.js +2 -2
  36. package/dist/cjs/components/CollectionTable/CollectionTableWSRTable.st.css.js.map +1 -1
  37. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js +5 -5
  38. package/dist/cjs/components/CollectionToolbar/CollectionToolbar.st.css.js.map +1 -1
  39. package/dist/cjs/components/CollectionToolbar/PrimaryActionButton.js +0 -1
  40. package/dist/cjs/components/CollectionToolbar/PrimaryActionButton.js.map +1 -1
  41. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +4 -4
  42. package/dist/cjs/components/CollectionToolbar/SearchOrCustomFilter.st.css.js.map +1 -1
  43. package/dist/cjs/components/CollectionToolbar/ToolbarOverflowMenu.js +4 -4
  44. package/dist/cjs/components/CollectionToolbar/ToolbarOverflowMenu.js.map +1 -1
  45. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
  46. package/dist/cjs/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js.map +1 -1
  47. package/dist/cjs/components/CollectionViewsDropdown/ManageViewPopover.js +26 -25
  48. package/dist/cjs/components/CollectionViewsDropdown/ManageViewPopover.js.map +1 -1
  49. package/dist/cjs/components/CollectionViewsDropdown/SaveToNewViewFooter.js +7 -14
  50. package/dist/cjs/components/CollectionViewsDropdown/SaveToNewViewFooter.js.map +1 -1
  51. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.js +18 -17
  52. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.js.map +1 -1
  53. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
  54. package/dist/cjs/components/CollectionViewsDropdown/ViewsDropdown.st.css.js.map +1 -1
  55. package/dist/cjs/components/CollectionViewsDropdown/modals/SaveView/CollectionSaveViewModal.js +2 -0
  56. package/dist/cjs/components/CollectionViewsDropdown/modals/SaveView/CollectionSaveViewModal.js.map +1 -1
  57. package/dist/cjs/components/CollectionViewsDropdown/viewsDropdownRenderHelpers.js +8 -1
  58. package/dist/cjs/components/CollectionViewsDropdown/viewsDropdownRenderHelpers.js.map +1 -1
  59. package/dist/cjs/components/CustomColumnsPanel/ColumnListTableListItem.js +19 -16
  60. package/dist/cjs/components/CustomColumnsPanel/ColumnListTableListItem.js.map +1 -1
  61. package/dist/cjs/components/CustomColumnsPanel/ColumnsList.js +20 -17
  62. package/dist/cjs/components/CustomColumnsPanel/ColumnsList.js.map +1 -1
  63. package/dist/cjs/components/CustomColumnsPanel/CustomColumnsEntityPageContext.js +18 -0
  64. package/dist/cjs/components/CustomColumnsPanel/CustomColumnsEntityPageContext.js.map +1 -0
  65. package/dist/cjs/components/CustomColumnsPanel/CustomColumnsEntityPagePanelEntry.js +3 -5
  66. package/dist/cjs/components/CustomColumnsPanel/CustomColumnsEntityPagePanelEntry.js.map +1 -1
  67. package/dist/cjs/components/CustomColumnsPanel/CustomColumnsEntityPagePanelMount.js +25 -16
  68. package/dist/cjs/components/CustomColumnsPanel/CustomColumnsEntityPagePanelMount.js.map +1 -1
  69. package/dist/cjs/components/CustomColumnsPanel/CustomColumnsNoResults.js +2 -2
  70. package/dist/cjs/components/CustomColumnsPanel/CustomColumnsNoResults.js.map +1 -1
  71. package/dist/cjs/components/CustomColumnsPanel/CustomColumnsPanel.js +62 -26
  72. package/dist/cjs/components/CustomColumnsPanel/CustomColumnsPanel.js.map +1 -1
  73. package/dist/cjs/components/CustomColumnsPanel/CustomColumnsSearch.js +4 -1
  74. package/dist/cjs/components/CustomColumnsPanel/CustomColumnsSearch.js.map +1 -1
  75. package/dist/cjs/components/CustomColumnsPanel/FieldIndications.js +3 -3
  76. package/dist/cjs/components/CustomColumnsPanel/FieldIndications.js.map +1 -1
  77. package/dist/cjs/components/CustomFieldModal/CustomFieldForm.js +63 -63
  78. package/dist/cjs/components/CustomFieldModal/CustomFieldForm.js.map +1 -1
  79. package/dist/cjs/components/CustomFieldModal/CustomFieldFormPiiFieldsV2.js +172 -0
  80. package/dist/cjs/components/CustomFieldModal/CustomFieldFormPiiFieldsV2.js.map +1 -0
  81. package/dist/cjs/components/CustomFieldModal/CustomFieldFormV2.js +305 -0
  82. package/dist/cjs/components/CustomFieldModal/CustomFieldFormV2.js.map +1 -0
  83. package/dist/cjs/components/CustomFieldModal/CustomFieldFormV2Permissions.js +296 -0
  84. package/dist/cjs/components/CustomFieldModal/CustomFieldFormV2Permissions.js.map +1 -0
  85. package/dist/cjs/components/CustomFieldModal/CustomFieldModal.js +70 -30
  86. package/dist/cjs/components/CustomFieldModal/CustomFieldModal.js.map +1 -1
  87. package/dist/cjs/components/CustomFieldModal/CustomFieldModal.uni.driver.js +14 -0
  88. package/dist/cjs/components/CustomFieldModal/CustomFieldModal.uni.driver.js.map +1 -1
  89. package/dist/cjs/components/CustomFieldModal/CustomFieldTypeDropdownV2.js +130 -0
  90. package/dist/cjs/components/CustomFieldModal/CustomFieldTypeDropdownV2.js.map +1 -0
  91. package/dist/cjs/components/CustomFieldsPanel/FieldManagementModals.js +5 -6
  92. package/dist/cjs/components/CustomFieldsPanel/FieldManagementModals.js.map +1 -1
  93. package/dist/cjs/components/CustomFieldsPanel/FieldsSourceAddFieldCTA.js +9 -7
  94. package/dist/cjs/components/CustomFieldsPanel/FieldsSourceAddFieldCTA.js.map +1 -1
  95. package/dist/cjs/components/CustomFieldsPanel/ManageFieldsCTAButton.js +2 -2
  96. package/dist/cjs/components/CustomFieldsPanel/ManageFieldsCTAButton.js.map +1 -1
  97. package/dist/cjs/components/CustomFieldsWidget/ActionButtons.js +2 -2
  98. package/dist/cjs/components/CustomFieldsWidget/ActionButtons.js.map +1 -1
  99. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsViewWidgetSection.js +24 -16
  100. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsViewWidgetSection.js.map +1 -1
  101. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsWidgetCard.js +2 -2
  102. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsWidgetCard.js.map +1 -1
  103. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsWidgetInline.js +2 -2
  104. package/dist/cjs/components/CustomFieldsWidget/CustomFieldsWidgetInline.js.map +1 -1
  105. package/dist/cjs/components/CustomFieldsWidget/ErrorStateContent.js +2 -2
  106. package/dist/cjs/components/CustomFieldsWidget/ErrorStateContent.js.map +1 -1
  107. package/dist/cjs/components/DataExtension/dataExtensionFieldManagement.js +20 -0
  108. package/dist/cjs/components/DataExtension/dataExtensionFieldManagement.js.map +1 -1
  109. package/dist/cjs/components/DataExtension/manageCustomFieldsPageAction.js +2 -2
  110. package/dist/cjs/components/DataExtension/manageCustomFieldsPageAction.js.map +1 -1
  111. package/dist/cjs/components/DateRangePicker/DateRangePicker.js +2 -2
  112. package/dist/cjs/components/DateRangePicker/DateRangePicker.js.map +1 -1
  113. package/dist/cjs/components/DragHandle/DragHandle.st.css.js +2 -2
  114. package/dist/cjs/components/DragHandle/DragHandle.st.css.js.map +1 -1
  115. package/dist/cjs/components/EditableTable/EditableCell.js +2 -2
  116. package/dist/cjs/components/EditableTable/EditableCell.js.map +1 -1
  117. package/dist/cjs/components/EditableTable/EditableCell.st.css.js +3 -3
  118. package/dist/cjs/components/EditableTable/EditableCell.st.css.js.map +1 -1
  119. package/dist/cjs/components/EditableTable/EditableTable.uni.driver.js +5 -16
  120. package/dist/cjs/components/EditableTable/EditableTable.uni.driver.js.map +1 -1
  121. package/dist/cjs/components/EditableTable/EditableTableContextMenu.js +135 -81
  122. package/dist/cjs/components/EditableTable/EditableTableContextMenu.js.map +1 -1
  123. package/dist/cjs/components/EditableTable/EditableTableContextMenu.uni.driver.js +4 -0
  124. package/dist/cjs/components/EditableTable/EditableTableContextMenu.uni.driver.js.map +1 -1
  125. package/dist/cjs/components/EditableTable/HeaderActionsPopover.st.css.js +2 -2
  126. package/dist/cjs/components/EditableTable/HeaderActionsPopover.st.css.js.map +1 -1
  127. package/dist/cjs/components/EditableTable/HeaderFieldActions.js +16 -1
  128. package/dist/cjs/components/EditableTable/HeaderFieldActions.js.map +1 -1
  129. package/dist/cjs/components/EditableTable/cellTypes/CellViewLayout.st.css.js +2 -2
  130. package/dist/cjs/components/EditableTable/cellTypes/CellViewLayout.st.css.js.map +1 -1
  131. package/dist/cjs/components/EditableTable/cellTypes/address/Edit.st.css.js +3 -3
  132. package/dist/cjs/components/EditableTable/cellTypes/address/Edit.st.css.js.map +1 -1
  133. package/dist/cjs/components/EditableTable/cellTypes/array/Edit.st.css.js +3 -3
  134. package/dist/cjs/components/EditableTable/cellTypes/array/Edit.st.css.js.map +1 -1
  135. package/dist/cjs/components/EditableTable/cellTypes/boolean/Edit.st.css.js +3 -3
  136. package/dist/cjs/components/EditableTable/cellTypes/boolean/Edit.st.css.js.map +1 -1
  137. package/dist/cjs/components/EditableTable/cellTypes/boolean/View.st.css.js +3 -3
  138. package/dist/cjs/components/EditableTable/cellTypes/boolean/View.st.css.js.map +1 -1
  139. package/dist/cjs/components/EditableTable/cellTypes/color/Edit.st.css.js +2 -2
  140. package/dist/cjs/components/EditableTable/cellTypes/color/Edit.st.css.js.map +1 -1
  141. package/dist/cjs/components/EditableTable/cellTypes/date/Edit.st.css.js +3 -3
  142. package/dist/cjs/components/EditableTable/cellTypes/date/Edit.st.css.js.map +1 -1
  143. package/dist/cjs/components/EditableTable/cellTypes/date/View.st.css.js +2 -2
  144. package/dist/cjs/components/EditableTable/cellTypes/date/View.st.css.js.map +1 -1
  145. package/dist/cjs/components/EditableTable/cellTypes/datetime/Edit.st.css.js +8 -8
  146. package/dist/cjs/components/EditableTable/cellTypes/datetime/Edit.st.css.js.map +1 -1
  147. package/dist/cjs/components/EditableTable/cellTypes/datetime/View.st.css.js +7 -7
  148. package/dist/cjs/components/EditableTable/cellTypes/datetime/View.st.css.js.map +1 -1
  149. package/dist/cjs/components/EditableTable/cellTypes/email/Edit.st.css.js +3 -3
  150. package/dist/cjs/components/EditableTable/cellTypes/email/Edit.st.css.js.map +1 -1
  151. package/dist/cjs/components/EditableTable/cellTypes/email/View.st.css.js +2 -2
  152. package/dist/cjs/components/EditableTable/cellTypes/email/View.st.css.js.map +1 -1
  153. package/dist/cjs/components/EditableTable/cellTypes/number/Edit.st.css.js +3 -3
  154. package/dist/cjs/components/EditableTable/cellTypes/number/Edit.st.css.js.map +1 -1
  155. package/dist/cjs/components/EditableTable/cellTypes/number/View.st.css.js +3 -3
  156. package/dist/cjs/components/EditableTable/cellTypes/number/View.st.css.js.map +1 -1
  157. package/dist/cjs/components/EditableTable/cellTypes/object/Edit.st.css.js +3 -3
  158. package/dist/cjs/components/EditableTable/cellTypes/object/Edit.st.css.js.map +1 -1
  159. package/dist/cjs/components/EditableTable/cellTypes/object/View.st.css.js +2 -2
  160. package/dist/cjs/components/EditableTable/cellTypes/object/View.st.css.js.map +1 -1
  161. package/dist/cjs/components/EditableTable/cellTypes/reference/ReferenceEditWrapper.js +1 -1
  162. package/dist/cjs/components/EditableTable/cellTypes/reference/ReferenceEditWrapper.js.map +1 -1
  163. package/dist/cjs/components/EditableTable/cellTypes/reference/openCollectionContext.js.map +1 -1
  164. package/dist/cjs/components/EditableTable/cellTypes/select/Edit.st.css.js +3 -3
  165. package/dist/cjs/components/EditableTable/cellTypes/select/Edit.st.css.js.map +1 -1
  166. package/dist/cjs/components/EditableTable/cellTypes/text/Edit.st.css.js +4 -4
  167. package/dist/cjs/components/EditableTable/cellTypes/text/Edit.st.css.js.map +1 -1
  168. package/dist/cjs/components/EditableTable/cellTypes/text/View.st.css.js +2 -2
  169. package/dist/cjs/components/EditableTable/cellTypes/text/View.st.css.js.map +1 -1
  170. package/dist/cjs/components/EditableTable/cellTypes/time/Edit.st.css.js +4 -4
  171. package/dist/cjs/components/EditableTable/cellTypes/time/Edit.st.css.js.map +1 -1
  172. package/dist/cjs/components/EditableTable/cellTypes/url/Edit.st.css.js +3 -3
  173. package/dist/cjs/components/EditableTable/cellTypes/url/Edit.st.css.js.map +1 -1
  174. package/dist/cjs/components/EditableTable/cellTypes/url/View.st.css.js +5 -5
  175. package/dist/cjs/components/EditableTable/cellTypes/url/View.st.css.js.map +1 -1
  176. package/dist/cjs/components/EditableTable/index.js.map +1 -1
  177. package/dist/cjs/components/EditableTable/types.js +4 -10
  178. package/dist/cjs/components/EditableTable/types.js.map +1 -1
  179. package/dist/cjs/components/EmptyState/CollectionNoResultsState.js +2 -2
  180. package/dist/cjs/components/EmptyState/CollectionNoResultsState.js.map +1 -1
  181. package/dist/cjs/components/EmptyState/NewItemButton.js +2 -2
  182. package/dist/cjs/components/EmptyState/NewItemButton.js.map +1 -1
  183. package/dist/cjs/components/EntityPage/EntityPageColumnsPanelEntry.js +32 -0
  184. package/dist/cjs/components/EntityPage/EntityPageColumnsPanelEntry.js.map +1 -0
  185. package/dist/cjs/components/EntityPage/EntityPagePlain.st.css.js +2 -2
  186. package/dist/cjs/components/EntityPage/EntityPagePlain.st.css.js.map +1 -1
  187. package/dist/cjs/components/EntityPage/EntityPageSidePanels.js +52 -0
  188. package/dist/cjs/components/EntityPage/EntityPageSidePanels.js.map +1 -0
  189. package/dist/cjs/components/EntityPageFields/EntityPageField.js +18 -9
  190. package/dist/cjs/components/EntityPageFields/EntityPageField.js.map +1 -1
  191. package/dist/cjs/components/EntityPageFields/EntityPageFields.js +77 -29
  192. package/dist/cjs/components/EntityPageFields/EntityPageFields.js.map +1 -1
  193. package/dist/cjs/components/EntityPageFields/EntityPageReferenceField.js +45 -5
  194. package/dist/cjs/components/EntityPageFields/EntityPageReferenceField.js.map +1 -1
  195. package/dist/cjs/components/ErrorState/OfflineErrorState.js +2 -2
  196. package/dist/cjs/components/ErrorState/OfflineErrorState.js.map +1 -1
  197. package/dist/cjs/components/ExportButton/ExportButton.js +26 -23
  198. package/dist/cjs/components/ExportButton/ExportButton.js.map +1 -1
  199. package/dist/cjs/components/Fade/Fade.st.css.js +2 -2
  200. package/dist/cjs/components/Fade/Fade.st.css.js.map +1 -1
  201. package/dist/cjs/components/FieldActions/FieldActions.js +24 -27
  202. package/dist/cjs/components/FieldActions/FieldActions.js.map +1 -1
  203. package/dist/cjs/components/FieldActions/FieldActionsPopover.js +16 -11
  204. package/dist/cjs/components/FieldActions/FieldActionsPopover.js.map +1 -1
  205. package/dist/cjs/components/FieldActions/HeaderActionsPopover.js +2 -2
  206. package/dist/cjs/components/FieldActions/HeaderActionsPopover.js.map +1 -1
  207. package/dist/cjs/components/FieldActions/fieldTypeActions.js +62 -0
  208. package/dist/cjs/components/FieldActions/fieldTypeActions.js.map +1 -0
  209. package/dist/cjs/components/FieldActions/index.js +4 -1
  210. package/dist/cjs/components/FieldActions/index.js.map +1 -1
  211. package/dist/cjs/components/FieldActions/types.js +4 -0
  212. package/dist/cjs/components/FieldActions/types.js.map +1 -0
  213. package/dist/cjs/components/FieldCell/FieldCell.js +68 -45
  214. package/dist/cjs/components/FieldCell/FieldCell.js.map +1 -1
  215. package/dist/cjs/components/FileCard/DownloadButton.js +2 -2
  216. package/dist/cjs/components/FileCard/DownloadButton.js.map +1 -1
  217. package/dist/cjs/components/FileCard/FilePreviewModal.js +2 -2
  218. package/dist/cjs/components/FileCard/FilePreviewModal.js.map +1 -1
  219. package/dist/cjs/components/FiltersPanel/FilterAccordionResetButton.js +4 -2
  220. package/dist/cjs/components/FiltersPanel/FilterAccordionResetButton.js.map +1 -1
  221. package/dist/cjs/components/FiltersPanel/FilterAccordionTitle.js +4 -2
  222. package/dist/cjs/components/FiltersPanel/FilterAccordionTitle.js.map +1 -1
  223. package/dist/cjs/components/FiltersPanel/FiltersPanel.js +16 -12
  224. package/dist/cjs/components/FiltersPanel/FiltersPanel.js.map +1 -1
  225. package/dist/cjs/components/FiltersPanel/FiltersPanelFooter.js +7 -5
  226. package/dist/cjs/components/FiltersPanel/FiltersPanelFooter.js.map +1 -1
  227. package/dist/cjs/components/FiltersPanel/FiltersPanelSearch.js +4 -1
  228. package/dist/cjs/components/FiltersPanel/FiltersPanelSearch.js.map +1 -1
  229. package/dist/cjs/components/FormPage/FormPageActionsBar.js +8 -6
  230. package/dist/cjs/components/FormPage/FormPageActionsBar.js.map +1 -1
  231. package/dist/cjs/components/Grid/useGridItemActions.js +2 -2
  232. package/dist/cjs/components/Grid/useGridItemActions.js.map +1 -1
  233. package/dist/cjs/components/Heading/Heading.st.css.js +2 -2
  234. package/dist/cjs/components/Heading/Heading.st.css.js.map +1 -1
  235. package/dist/cjs/components/ImportButton/ImportButton.js +26 -23
  236. package/dist/cjs/components/ImportButton/ImportButton.js.map +1 -1
  237. package/dist/cjs/components/ImportButton/ImportIdCollisionControl.js +2 -2
  238. package/dist/cjs/components/ImportButton/ImportIdCollisionControl.js.map +1 -1
  239. package/dist/cjs/components/ImportButton/ImportRequiredFieldsSideNote.js +3 -3
  240. package/dist/cjs/components/ImportButton/ImportRequiredFieldsSideNote.js.map +1 -1
  241. package/dist/cjs/components/ImportButton/ImportStepConfiguration.js +3 -3
  242. package/dist/cjs/components/ImportButton/ImportStepConfiguration.js.map +1 -1
  243. package/dist/cjs/components/ImportButton/ImportStepSummary.js +4 -4
  244. package/dist/cjs/components/ImportButton/ImportStepSummary.js.map +1 -1
  245. package/dist/cjs/components/ImportButton/ImportStepUpload.st.css.js +3 -3
  246. package/dist/cjs/components/ImportButton/ImportStepUpload.st.css.js.map +1 -1
  247. package/dist/cjs/components/ImportButton/ImportStepper.js +2 -2
  248. package/dist/cjs/components/ImportButton/ImportStepper.js.map +1 -1
  249. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js +2 -2
  250. package/dist/cjs/components/InputOverflow/InputOverflow.st.css.js.map +1 -1
  251. package/dist/cjs/components/Kanban/StageActions.js +2 -2
  252. package/dist/cjs/components/Kanban/StageActions.js.map +1 -1
  253. package/dist/cjs/components/Kanban/useCardActions.js +3 -3
  254. package/dist/cjs/components/Kanban/useCardActions.js.map +1 -1
  255. package/dist/cjs/components/LayoutSwitch/LayoutSwitch.uni.driver.js.map +1 -1
  256. package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js +3 -3
  257. package/dist/cjs/components/LoadingRow/LoadingRow.st.css.js.map +1 -1
  258. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  259. package/dist/cjs/components/MaxHeightText/MaxHeightText.st.css.js.map +1 -1
  260. package/dist/cjs/components/MaxLines/MaxLines.st.css.js +2 -2
  261. package/dist/cjs/components/MaxLines/MaxLines.st.css.js.map +1 -1
  262. package/dist/cjs/components/MaxSelection.js +4 -1
  263. package/dist/cjs/components/MaxSelection.js.map +1 -1
  264. package/dist/cjs/components/MoreActions/ExploreAppsState.js +2 -2
  265. package/dist/cjs/components/MoreActions/ExploreAppsState.js.map +1 -1
  266. package/dist/cjs/components/MoreActions/MoreActionsIcon.js +2 -2
  267. package/dist/cjs/components/MoreActions/MoreActionsIcon.js.map +1 -1
  268. package/dist/cjs/components/MoreActions/MoreActionsText.js +2 -2
  269. package/dist/cjs/components/MoreActions/MoreActionsText.js.map +1 -1
  270. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +5 -5
  271. package/dist/cjs/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js.map +1 -1
  272. package/dist/cjs/components/MultiLevelSortingPanel/MultiLevelSortingList.js +20 -17
  273. package/dist/cjs/components/MultiLevelSortingPanel/MultiLevelSortingList.js.map +1 -1
  274. package/dist/cjs/components/MultiLevelSortingPanel/MultiLevelSortingOrderSelect.js +5 -5
  275. package/dist/cjs/components/MultiLevelSortingPanel/MultiLevelSortingOrderSelect.js.map +1 -1
  276. package/dist/cjs/components/MultiLevelSortingPanel/MultiLevelSortingPanel.js +16 -14
  277. package/dist/cjs/components/MultiLevelSortingPanel/MultiLevelSortingPanel.js.map +1 -1
  278. package/dist/cjs/components/MultiLevelSortingPanel/MultiLevelSortingTableListItem.js +17 -11
  279. package/dist/cjs/components/MultiLevelSortingPanel/MultiLevelSortingTableListItem.js.map +1 -1
  280. package/dist/cjs/components/MultiSelectCheckboxFilterBase/MultiSelectCheckboxFilterBase.js +2 -1
  281. package/dist/cjs/components/MultiSelectCheckboxFilterBase/MultiSelectCheckboxFilterBase.js.map +1 -1
  282. package/dist/cjs/components/MultiSelectFilterBase/MultiSelectFilterBase.js +2 -2
  283. package/dist/cjs/components/MultiSelectFilterBase/MultiSelectFilterBase.js.map +1 -1
  284. package/dist/cjs/components/NestedTable/NestedTableMainColumnTitle.js +3 -3
  285. package/dist/cjs/components/NestedTable/NestedTableMainColumnTitle.js.map +1 -1
  286. package/dist/cjs/components/NestedTable/NestedTableParentCell.js +2 -2
  287. package/dist/cjs/components/NestedTable/NestedTableParentCell.js.map +1 -1
  288. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
  289. package/dist/cjs/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js.map +1 -1
  290. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js +5 -5
  291. package/dist/cjs/components/NestedTable/NestedTableRow.st.css.js.map +1 -1
  292. package/dist/cjs/components/NestedTableDragAndDrop/DepthLimitMessage.js +2 -2
  293. package/dist/cjs/components/NestedTableDragAndDrop/DepthLimitMessage.js.map +1 -1
  294. package/dist/cjs/components/NestedTableDragAndDrop/DragAndDropDisabledMessage.js +2 -2
  295. package/dist/cjs/components/NestedTableDragAndDrop/DragAndDropDisabledMessage.js.map +1 -1
  296. package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
  297. package/dist/cjs/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js.map +1 -1
  298. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
  299. package/dist/cjs/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js.map +1 -1
  300. package/dist/cjs/components/NumberRangeFilter/NumberRangeFilter.js +11 -7
  301. package/dist/cjs/components/NumberRangeFilter/NumberRangeFilter.js.map +1 -1
  302. package/dist/cjs/components/OperatorFilterPicker/OperatorFilterPicker.js +21 -11
  303. package/dist/cjs/components/OperatorFilterPicker/OperatorFilterPicker.js.map +1 -1
  304. package/dist/cjs/components/PageErrorState/PageErrorState.js +2 -2
  305. package/dist/cjs/components/PageErrorState/PageErrorState.js.map +1 -1
  306. package/dist/cjs/components/PickerContent/PickerContent.js +8 -4
  307. package/dist/cjs/components/PickerContent/PickerContent.js.map +1 -1
  308. package/dist/cjs/components/PickerContent/PickerContent.st.css.js +2 -2
  309. package/dist/cjs/components/PickerContent/PickerContent.st.css.js.map +1 -1
  310. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.js +30 -21
  311. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.js.map +1 -1
  312. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js +4 -4
  313. package/dist/cjs/components/PickerContent/PickerContentAdditionalStep.st.css.js.map +1 -1
  314. package/dist/cjs/components/PickerEmptyState/PickerEmptyState.js +3 -3
  315. package/dist/cjs/components/PickerEmptyState/PickerEmptyState.js.map +1 -1
  316. package/dist/cjs/components/PickerStandaloneLayout/PickerStandaloneLayoutFooter.js +2 -2
  317. package/dist/cjs/components/PickerStandaloneLayout/PickerStandaloneLayoutFooter.js.map +1 -1
  318. package/dist/cjs/components/PickerStandaloneLayout/PickerStandaloneLayoutHeader.js +2 -2
  319. package/dist/cjs/components/PickerStandaloneLayout/PickerStandaloneLayoutHeader.js.map +1 -1
  320. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.js +2 -2
  321. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.js.map +1 -1
  322. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  323. package/dist/cjs/components/PickerTableListItem/PickerTableListItem.st.css.js.map +1 -1
  324. package/dist/cjs/components/PrimaryActions/PrimaryActions.js +2 -2
  325. package/dist/cjs/components/PrimaryActions/PrimaryActions.js.map +1 -1
  326. package/dist/cjs/components/PrimaryPageButton/PrimaryPageButton.js +2 -2
  327. package/dist/cjs/components/PrimaryPageButton/PrimaryPageButton.js.map +1 -1
  328. package/dist/cjs/components/RequestId/RequestId.js +3 -3
  329. package/dist/cjs/components/RequestId/RequestId.js.map +1 -1
  330. package/dist/cjs/components/SchemaCard/SchemaCard.js +2 -2
  331. package/dist/cjs/components/SchemaCard/SchemaCard.js.map +1 -1
  332. package/dist/cjs/components/SchemaSource/ReferenceFieldCell.js +109 -0
  333. package/dist/cjs/components/SchemaSource/ReferenceFieldCell.js.map +1 -0
  334. package/dist/cjs/components/SchemaSource/SchemaState.js +5 -1
  335. package/dist/cjs/components/SchemaSource/SchemaState.js.map +1 -1
  336. package/dist/cjs/components/SchemaSource/referenceCells.js +132 -0
  337. package/dist/cjs/components/SchemaSource/referenceCells.js.map +1 -0
  338. package/dist/cjs/components/SchemaSource/schemaFieldManagement.js +13 -0
  339. package/dist/cjs/components/SchemaSource/schemaFieldManagement.js.map +1 -1
  340. package/dist/cjs/components/SchemaSource/schemaFieldsSource.js +1 -0
  341. package/dist/cjs/components/SchemaSource/schemaFieldsSource.js.map +1 -1
  342. package/dist/cjs/components/SchemaSource/schemaRendering.js +27 -0
  343. package/dist/cjs/components/SchemaSource/schemaRendering.js.map +1 -1
  344. package/dist/cjs/components/SchemaSource/tableSchemaSource.js +8 -0
  345. package/dist/cjs/components/SchemaSource/tableSchemaSource.js.map +1 -1
  346. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  347. package/dist/cjs/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
  348. package/dist/cjs/components/SetupWidget/SetupStepCard.js +2 -2
  349. package/dist/cjs/components/SetupWidget/SetupStepCard.js.map +1 -1
  350. package/dist/cjs/components/SetupWidget/SetupStepGroup.js +2 -2
  351. package/dist/cjs/components/SetupWidget/SetupStepGroup.js.map +1 -1
  352. package/dist/cjs/components/SetupWidget/SetupStepIcon.js +3 -3
  353. package/dist/cjs/components/SetupWidget/SetupStepIcon.js.map +1 -1
  354. package/dist/cjs/components/SetupWidget/SetupWidget.st.css.js +9 -9
  355. package/dist/cjs/components/SetupWidget/SetupWidget.st.css.js.map +1 -1
  356. package/dist/cjs/components/SingleSelectFilterBase/SingleSelectFilterBase.js +2 -1
  357. package/dist/cjs/components/SingleSelectFilterBase/SingleSelectFilterBase.js.map +1 -1
  358. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js +3 -3
  359. package/dist/cjs/components/SkeletonCard/SkeletonCard.st.css.js.map +1 -1
  360. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js +2 -2
  361. package/dist/cjs/components/SlidingModal/SlidingModal.st.css.js.map +1 -1
  362. package/dist/cjs/components/Table/AddFieldColumnHeader.js +2 -2
  363. package/dist/cjs/components/Table/AddFieldColumnHeader.js.map +1 -1
  364. package/dist/cjs/components/Table/AddFieldColumnHeader.st.css.js +4 -4
  365. package/dist/cjs/components/Table/AddFieldColumnHeader.st.css.js.map +1 -1
  366. package/dist/cjs/components/Table/Table.uni.driver.js +11 -6
  367. package/dist/cjs/components/Table/Table.uni.driver.js.map +1 -1
  368. package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js +3 -3
  369. package/dist/cjs/components/TabsFilter/TabsFilter.st.css.js.map +1 -1
  370. package/dist/cjs/components/Tags/BulkAssignTagsPopover/CreateTagButton.js +8 -5
  371. package/dist/cjs/components/Tags/BulkAssignTagsPopover/CreateTagButton.js.map +1 -1
  372. package/dist/cjs/components/Tags/BulkAssignTagsPopover/Footer.js +12 -9
  373. package/dist/cjs/components/Tags/BulkAssignTagsPopover/Footer.js.map +1 -1
  374. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/List/TagListItemView.js +18 -16
  375. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/List/TagListItemView.js.map +1 -1
  376. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.js +68 -36
  377. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.js.map +1 -1
  378. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css +10 -1
  379. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  380. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js.map +1 -1
  381. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/TagItemEditable.js +123 -7
  382. package/dist/cjs/components/Tags/ManageTags/ManageTagsModal/TagItemEditable.js.map +1 -1
  383. package/dist/cjs/components/Tags/manageTagsPageAction.js +2 -2
  384. package/dist/cjs/components/Tags/manageTagsPageAction.js.map +1 -1
  385. package/dist/cjs/components/TagsAssignButton/TagsAssignButton.js +2 -2
  386. package/dist/cjs/components/TagsAssignButton/TagsAssignButton.js.map +1 -1
  387. package/dist/cjs/components/TagsWidget/TagsWidget.js +2 -2
  388. package/dist/cjs/components/TagsWidget/TagsWidget.js.map +1 -1
  389. package/dist/cjs/components/TagsWidget/TagsWidgetContent.js +3 -3
  390. package/dist/cjs/components/TagsWidget/TagsWidgetContent.js.map +1 -1
  391. package/dist/cjs/components/ToolbarCollection/useToolbarCollectionSyncProps.js +15 -17
  392. package/dist/cjs/components/ToolbarCollection/useToolbarCollectionSyncProps.js.map +1 -1
  393. package/dist/cjs/components/ToolbarItem/ToolbarItem.st.css.js +2 -2
  394. package/dist/cjs/components/ToolbarItem/ToolbarItem.st.css.js.map +1 -1
  395. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  396. package/dist/cjs/components/ToolbarItemBox/ToolbarItemBox.st.css.js.map +1 -1
  397. package/dist/cjs/components/common.st.css.js +4 -4
  398. package/dist/cjs/components/common.st.css.js.map +1 -1
  399. package/dist/cjs/components/deleteSecondaryAction/deleteSecondaryAction.js +2 -2
  400. package/dist/cjs/components/deleteSecondaryAction/deleteSecondaryAction.js.map +1 -1
  401. package/dist/cjs/exports/schema.js +13 -3
  402. package/dist/cjs/exports/schema.js.map +1 -1
  403. package/dist/cjs/fields/DateInput/DateInput.js +10 -5
  404. package/dist/cjs/fields/DateInput/DateInput.js.map +1 -1
  405. package/dist/cjs/fields/Url/Url.js +2 -2
  406. package/dist/cjs/fields/Url/Url.js.map +1 -1
  407. package/dist/cjs/hooks/useBuildOption.js +5 -0
  408. package/dist/cjs/hooks/useBuildOption.js.map +1 -1
  409. package/dist/cjs/hooks/useOpenCollectionOverlay.js.map +1 -0
  410. package/dist/cjs/index.js +50 -44
  411. package/dist/cjs/index.js.map +1 -1
  412. package/dist/cjs/model/schemaFieldsContainer.js +15 -0
  413. package/dist/cjs/model/schemaFieldsContainer.js.map +1 -0
  414. package/dist/cjs/providers/PatternsFieldsProvider.js +29 -5
  415. package/dist/cjs/providers/PatternsFieldsProvider.js.map +1 -1
  416. package/dist/cjs/providers/SchemaFieldsProvider.js +42 -0
  417. package/dist/cjs/providers/SchemaFieldsProvider.js.map +1 -0
  418. package/dist/cjs/providers/index.js +6 -0
  419. package/dist/cjs/providers/index.js.map +1 -1
  420. package/dist/cjs/schema/EditableTable.js +47 -0
  421. package/dist/cjs/schema/EditableTable.js.map +1 -0
  422. package/dist/cjs/schema/EntityPage.js +49 -0
  423. package/dist/cjs/schema/EntityPage.js.map +1 -0
  424. package/dist/cjs/schema/EntityPageFieldsCard.js +150 -0
  425. package/dist/cjs/schema/EntityPageFieldsCard.js.map +1 -0
  426. package/dist/cjs/schema/Grid.js +41 -0
  427. package/dist/cjs/schema/Grid.js.map +1 -0
  428. package/dist/cjs/schema/LayoutSwitch.js +73 -0
  429. package/dist/cjs/schema/LayoutSwitch.js.map +1 -0
  430. package/dist/cjs/schema/Table.js +48 -0
  431. package/dist/cjs/schema/Table.js.map +1 -0
  432. package/dist/cjs/schema/entityPageFieldManagement.js +45 -0
  433. package/dist/cjs/schema/entityPageFieldManagement.js.map +1 -0
  434. package/dist/cjs/schema/index.js +27 -2
  435. package/dist/cjs/schema/index.js.map +1 -1
  436. package/dist/cjs/schema/schemaCollectionOptions.js +1 -12
  437. package/dist/cjs/schema/schemaCollectionOptions.js.map +1 -1
  438. package/dist/cjs/schema/sourceMutations.js +26 -8
  439. package/dist/cjs/schema/sourceMutations.js.map +1 -1
  440. package/dist/cjs/schema/syncSourcePermissions.js +24 -0
  441. package/dist/cjs/schema/syncSourcePermissions.js.map +1 -0
  442. package/dist/cjs/schema/useEditableTableCollection.js +5 -7
  443. package/dist/cjs/schema/useEditableTableCollection.js.map +1 -1
  444. package/dist/cjs/schema/useEntityPage.js +86 -0
  445. package/dist/cjs/schema/useEntityPage.js.map +1 -0
  446. package/dist/cjs/schema/useLayoutSwitchCollection.js +10 -4
  447. package/dist/cjs/schema/useLayoutSwitchCollection.js.map +1 -1
  448. package/dist/cjs/schema/usePlatformizedSource.js +11 -4
  449. package/dist/cjs/schema/usePlatformizedSource.js.map +1 -1
  450. package/dist/cjs/schema/useSchemaSource.js +43 -0
  451. package/dist/cjs/schema/useSchemaSource.js.map +1 -0
  452. package/dist/cjs/state/CollectionFieldsSourceState.js +16 -3
  453. package/dist/cjs/state/CollectionFieldsSourceState.js.map +1 -1
  454. package/dist/cjs/state/CollectionPage/CollectionPageHeader.st.css.js +2 -2
  455. package/dist/cjs/state/CollectionPage/CollectionPageHeader.st.css.js.map +1 -1
  456. package/dist/cjs/state/CustomColumnsEntityPageState.js +21 -6
  457. package/dist/cjs/state/CustomColumnsEntityPageState.js.map +1 -1
  458. package/dist/cjs/state/CustomColumnsPanelStateBase.js +9 -0
  459. package/dist/cjs/state/CustomColumnsPanelStateBase.js.map +1 -1
  460. package/dist/cjs/state/CustomColumnsState.js +1 -1
  461. package/dist/cjs/state/CustomColumnsState.js.map +1 -1
  462. package/dist/cjs/state/CustomFields/CustomFieldsPanelState.js +15 -1
  463. package/dist/cjs/state/CustomFields/CustomFieldsPanelState.js.map +1 -1
  464. package/dist/cjs/state/EditableTable/CellValueState.js +21 -4
  465. package/dist/cjs/state/EditableTable/CellValueState.js.map +1 -1
  466. package/dist/cjs/state/EditableTable/EditableTableState.js +4 -1
  467. package/dist/cjs/state/EditableTable/EditableTableState.js.map +1 -1
  468. package/dist/cjs/state/EditableTable/fieldTypeToCellType.js +5 -3
  469. package/dist/cjs/state/EditableTable/fieldTypeToCellType.js.map +1 -1
  470. package/dist/cjs/state/EditableTable/types.js.map +1 -1
  471. package/dist/cjs/state/EntityPage/EntityPageState.js +34 -3
  472. package/dist/cjs/state/EntityPage/EntityPageState.js.map +1 -1
  473. package/dist/cjs/state/EntityPage/resolveEntityPageFields.js +19 -0
  474. package/dist/cjs/state/EntityPage/resolveEntityPageFields.js.map +1 -0
  475. package/dist/cjs/state/EntityPageFieldsCardState.js +163 -0
  476. package/dist/cjs/state/EntityPageFieldsCardState.js.map +1 -0
  477. package/dist/cjs/state/FormPage/FormPageHeader.st.css.js +2 -2
  478. package/dist/cjs/state/FormPage/FormPageHeader.st.css.js.map +1 -1
  479. package/dist/cjs/state/ManageFieldsSource.js +4 -0
  480. package/dist/cjs/state/ManageFieldsSource.js.map +1 -0
  481. package/dist/cjs/state/SchemaCard/SchemaCardState.js +3 -2
  482. package/dist/cjs/state/SchemaCard/SchemaCardState.js.map +1 -1
  483. package/dist/cjs/state/SchemaCard/SchemaFieldsState.js +25 -6
  484. package/dist/cjs/state/SchemaCard/SchemaFieldsState.js.map +1 -1
  485. package/dist/cjs/state/SidePanelsState.js +11 -0
  486. package/dist/cjs/state/SidePanelsState.js.map +1 -1
  487. package/dist/cjs/state/buildEditableFieldColumns.js +47 -6
  488. package/dist/cjs/state/buildEditableFieldColumns.js.map +1 -1
  489. package/dist/cjs/state/buildFieldColumns.js +8 -2
  490. package/dist/cjs/state/buildFieldColumns.js.map +1 -1
  491. package/dist/cjs/state/buildFieldFilters.js +62 -9
  492. package/dist/cjs/state/buildFieldFilters.js.map +1 -1
  493. package/dist/cjs/styles.global.css +2 -2
  494. package/dist/cjs/test-utils/WixPatternsEssentialsTestProvider.js +9 -2
  495. package/dist/cjs/test-utils/WixPatternsEssentialsTestProvider.js.map +1 -1
  496. package/dist/cjs/testkit/jsdom.js.map +1 -1
  497. package/dist/cjs/themes/panel-theme.js +2 -2
  498. package/dist/cjs/themes/panel-theme.js.map +1 -1
  499. package/dist/cjs/utils/datesUtil.js +18 -3
  500. package/dist/cjs/utils/datesUtil.js.map +1 -1
  501. package/dist/cjs/utils/fieldTypePrefixIcons.js +56 -56
  502. package/dist/cjs/utils/fieldTypePrefixIcons.js.map +1 -1
  503. package/dist/cjs/version.js +1 -1
  504. package/dist/cjs/version.js.map +1 -1
  505. package/dist/docs/EntityPageState.md +8 -0
  506. package/dist/docs/ImportButton.md +4 -1
  507. package/dist/docs/MultiBulkActionToolbar.md +1 -2
  508. package/dist/docs/PickerContent.md +3 -2
  509. package/dist/docs/PickerModal.md +3 -2
  510. package/dist/docs/index.json +39 -39
  511. package/dist/docs/useEntity.md +8 -0
  512. package/dist/esm/components/ActionCell/DisabledActionCellMenu.js +1 -1
  513. package/dist/esm/components/ActionCell/DisabledActionCellMenu.js.map +1 -1
  514. package/dist/esm/components/ArchivedItemsPanel/ArchivedItemsCTAButton.js +5 -3
  515. package/dist/esm/components/ArchivedItemsPanel/ArchivedItemsCTAButton.js.map +1 -1
  516. package/dist/esm/components/ArchivedItemsPanel/ArchivedItemsList.js +3 -1
  517. package/dist/esm/components/ArchivedItemsPanel/ArchivedItemsList.js.map +1 -1
  518. package/dist/esm/components/ArchivedItemsPanel/ArchivedItemsListItem.js +8 -6
  519. package/dist/esm/components/ArchivedItemsPanel/ArchivedItemsListItem.js.map +1 -1
  520. package/dist/esm/components/CardContainer/CardContainer.js +1 -1
  521. package/dist/esm/components/CardContainer/CardContainer.js.map +1 -1
  522. package/dist/esm/components/CardContainer/CardContainer.st.css.js +2 -2
  523. package/dist/esm/components/CmsFieldManagement/CmsFieldForm.st.css.js +2 -2
  524. package/dist/esm/components/CmsFieldManagement/CmsFieldModal.st.css.js +2 -2
  525. package/dist/esm/components/CmsFieldManagement/CmsFieldModal.st.css.js.map +1 -1
  526. package/dist/esm/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.js +2 -2
  527. package/dist/esm/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.js.map +1 -1
  528. package/dist/esm/components/CmsFieldManagement/formFields/CharactersLimitInput.st.css.js +2 -2
  529. package/dist/esm/components/Collapse/Collapse.st.css.js +2 -2
  530. package/dist/esm/components/CollectionActionsBar.js +1 -1
  531. package/dist/esm/components/CollectionActionsBar.js.map +1 -1
  532. package/dist/esm/components/CollectionAutoComplete/CollectionAutoComplete.js +3 -1
  533. package/dist/esm/components/CollectionAutoComplete/CollectionAutoComplete.js.map +1 -1
  534. package/dist/esm/components/CollectionPageNew/CollectionPage.st.css.js +2 -2
  535. package/dist/esm/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js +2 -2
  536. package/dist/esm/components/CollectionSectionHeader/CollectionSectionHeader.st.css.js.map +1 -1
  537. package/dist/esm/components/CollectionSectionHeader/CollectionSectionHeaderActionBar.js +1 -1
  538. package/dist/esm/components/CollectionSectionHeader/CollectionSectionHeaderActionBar.js.map +1 -1
  539. package/dist/esm/components/CollectionTable/CollectionTable.st.css.js +2 -2
  540. package/dist/esm/components/CollectionTable/CollectionTableWSRTable.st.css.js +2 -2
  541. package/dist/esm/components/CollectionToolbar/CollectionToolbar.st.css.js +2 -2
  542. package/dist/esm/components/CollectionToolbar/PrimaryActionButton.js +1 -1
  543. package/dist/esm/components/CollectionToolbar/PrimaryActionButton.js.map +1 -1
  544. package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css.js +2 -2
  545. package/dist/esm/components/CollectionToolbar/SearchOrCustomFilter.st.css.js.map +1 -1
  546. package/dist/esm/components/CollectionToolbar/ToolbarOverflowMenu.js +1 -1
  547. package/dist/esm/components/CollectionToolbar/ToolbarOverflowMenu.js.map +1 -1
  548. package/dist/esm/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js +2 -2
  549. package/dist/esm/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.js.map +1 -1
  550. package/dist/esm/components/CollectionViewsDropdown/ManageViewPopover.js +2 -2
  551. package/dist/esm/components/CollectionViewsDropdown/ManageViewPopover.js.map +1 -1
  552. package/dist/esm/components/CollectionViewsDropdown/SaveToNewViewFooter.js +3 -4
  553. package/dist/esm/components/CollectionViewsDropdown/SaveToNewViewFooter.js.map +1 -1
  554. package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.js +3 -1
  555. package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.js.map +1 -1
  556. package/dist/esm/components/CollectionViewsDropdown/ViewsDropdown.st.css.js +2 -2
  557. package/dist/esm/components/CollectionViewsDropdown/modals/SaveView/CollectionSaveViewModal.js +1 -1
  558. package/dist/esm/components/CollectionViewsDropdown/modals/SaveView/CollectionSaveViewModal.js.map +1 -1
  559. package/dist/esm/components/CollectionViewsDropdown/viewsDropdownRenderHelpers.js +3 -1
  560. package/dist/esm/components/CollectionViewsDropdown/viewsDropdownRenderHelpers.js.map +1 -1
  561. package/dist/esm/components/CustomColumnsPanel/ColumnListTableListItem.js +6 -4
  562. package/dist/esm/components/CustomColumnsPanel/ColumnListTableListItem.js.map +1 -1
  563. package/dist/esm/components/CustomColumnsPanel/ColumnsList.js +9 -5
  564. package/dist/esm/components/CustomColumnsPanel/ColumnsList.js.map +1 -1
  565. package/dist/esm/components/CustomColumnsPanel/CustomColumnsEntityPageContext.js +13 -0
  566. package/dist/esm/components/CustomColumnsPanel/CustomColumnsEntityPageContext.js.map +1 -0
  567. package/dist/esm/components/CustomColumnsPanel/CustomColumnsEntityPagePanelEntry.js +2 -4
  568. package/dist/esm/components/CustomColumnsPanel/CustomColumnsEntityPagePanelEntry.js.map +1 -1
  569. package/dist/esm/components/CustomColumnsPanel/CustomColumnsEntityPagePanelMount.js +5 -5
  570. package/dist/esm/components/CustomColumnsPanel/CustomColumnsEntityPagePanelMount.js.map +1 -1
  571. package/dist/esm/components/CustomColumnsPanel/CustomColumnsNoResults.js +1 -1
  572. package/dist/esm/components/CustomColumnsPanel/CustomColumnsNoResults.js.map +1 -1
  573. package/dist/esm/components/CustomColumnsPanel/CustomColumnsPanel.js +20 -10
  574. package/dist/esm/components/CustomColumnsPanel/CustomColumnsPanel.js.map +1 -1
  575. package/dist/esm/components/CustomColumnsPanel/CustomColumnsSearch.js +3 -1
  576. package/dist/esm/components/CustomColumnsPanel/CustomColumnsSearch.js.map +1 -1
  577. package/dist/esm/components/CustomColumnsPanel/FieldIndications.js +1 -1
  578. package/dist/esm/components/CustomColumnsPanel/FieldIndications.js.map +1 -1
  579. package/dist/esm/components/CustomFieldModal/CustomFieldForm.js +1 -1
  580. package/dist/esm/components/CustomFieldModal/CustomFieldForm.js.map +1 -1
  581. package/dist/esm/components/CustomFieldModal/CustomFieldFormPiiFieldsV2.js +32 -0
  582. package/dist/esm/components/CustomFieldModal/CustomFieldFormPiiFieldsV2.js.map +1 -0
  583. package/dist/esm/components/CustomFieldModal/CustomFieldFormV2.js +72 -0
  584. package/dist/esm/components/CustomFieldModal/CustomFieldFormV2.js.map +1 -0
  585. package/dist/esm/components/CustomFieldModal/CustomFieldFormV2Permissions.js +64 -0
  586. package/dist/esm/components/CustomFieldModal/CustomFieldFormV2Permissions.js.map +1 -0
  587. package/dist/esm/components/CustomFieldModal/CustomFieldModal.js +25 -12
  588. package/dist/esm/components/CustomFieldModal/CustomFieldModal.js.map +1 -1
  589. package/dist/esm/components/CustomFieldModal/CustomFieldModal.uni.driver.js +15 -1
  590. package/dist/esm/components/CustomFieldModal/CustomFieldModal.uni.driver.js.map +1 -1
  591. package/dist/esm/components/CustomFieldModal/CustomFieldTypeDropdownV2.js +69 -0
  592. package/dist/esm/components/CustomFieldModal/CustomFieldTypeDropdownV2.js.map +1 -0
  593. package/dist/esm/components/CustomFieldsPanel/FieldManagementModals.js +3 -4
  594. package/dist/esm/components/CustomFieldsPanel/FieldManagementModals.js.map +1 -1
  595. package/dist/esm/components/CustomFieldsPanel/FieldsSourceAddFieldCTA.js +4 -2
  596. package/dist/esm/components/CustomFieldsPanel/FieldsSourceAddFieldCTA.js.map +1 -1
  597. package/dist/esm/components/CustomFieldsPanel/ManageFieldsCTAButton.js +1 -1
  598. package/dist/esm/components/CustomFieldsPanel/ManageFieldsCTAButton.js.map +1 -1
  599. package/dist/esm/components/CustomFieldsWidget/ActionButtons.js +1 -1
  600. package/dist/esm/components/CustomFieldsWidget/ActionButtons.js.map +1 -1
  601. package/dist/esm/components/CustomFieldsWidget/CustomFieldsViewWidgetSection.js +11 -5
  602. package/dist/esm/components/CustomFieldsWidget/CustomFieldsViewWidgetSection.js.map +1 -1
  603. package/dist/esm/components/CustomFieldsWidget/CustomFieldsWidgetCard.js +1 -1
  604. package/dist/esm/components/CustomFieldsWidget/CustomFieldsWidgetCard.js.map +1 -1
  605. package/dist/esm/components/CustomFieldsWidget/CustomFieldsWidgetInline.js +1 -1
  606. package/dist/esm/components/CustomFieldsWidget/CustomFieldsWidgetInline.js.map +1 -1
  607. package/dist/esm/components/CustomFieldsWidget/ErrorStateContent.js +1 -1
  608. package/dist/esm/components/CustomFieldsWidget/ErrorStateContent.js.map +1 -1
  609. package/dist/esm/components/DataExtension/dataExtensionFieldManagement.js +17 -0
  610. package/dist/esm/components/DataExtension/dataExtensionFieldManagement.js.map +1 -1
  611. package/dist/esm/components/DataExtension/manageCustomFieldsPageAction.js +1 -1
  612. package/dist/esm/components/DataExtension/manageCustomFieldsPageAction.js.map +1 -1
  613. package/dist/esm/components/DateRangePicker/DateRangePicker.js +1 -1
  614. package/dist/esm/components/DateRangePicker/DateRangePicker.js.map +1 -1
  615. package/dist/esm/components/DragHandle/DragHandle.st.css.js +2 -2
  616. package/dist/esm/components/DragHandle/DragHandle.st.css.js.map +1 -1
  617. package/dist/esm/components/EditableTable/EditableCell.js +1 -1
  618. package/dist/esm/components/EditableTable/EditableCell.js.map +1 -1
  619. package/dist/esm/components/EditableTable/EditableCell.st.css.js +2 -2
  620. package/dist/esm/components/EditableTable/EditableTable.uni.driver.js +4 -15
  621. package/dist/esm/components/EditableTable/EditableTable.uni.driver.js.map +1 -1
  622. package/dist/esm/components/EditableTable/EditableTableContextMenu.js +110 -50
  623. package/dist/esm/components/EditableTable/EditableTableContextMenu.js.map +1 -1
  624. package/dist/esm/components/EditableTable/EditableTableContextMenu.uni.driver.js +6 -0
  625. package/dist/esm/components/EditableTable/EditableTableContextMenu.uni.driver.js.map +1 -1
  626. package/dist/esm/components/EditableTable/HeaderActionsPopover.st.css.js +2 -2
  627. package/dist/esm/components/EditableTable/HeaderActionsPopover.st.css.js.map +1 -1
  628. package/dist/esm/components/EditableTable/HeaderFieldActions.js +13 -1
  629. package/dist/esm/components/EditableTable/HeaderFieldActions.js.map +1 -1
  630. package/dist/esm/components/EditableTable/cellTypes/CellViewLayout.st.css.js +2 -2
  631. package/dist/esm/components/EditableTable/cellTypes/CellViewLayout.st.css.js.map +1 -1
  632. package/dist/esm/components/EditableTable/cellTypes/address/Edit.st.css.js +2 -2
  633. package/dist/esm/components/EditableTable/cellTypes/address/Edit.st.css.js.map +1 -1
  634. package/dist/esm/components/EditableTable/cellTypes/array/Edit.st.css.js +2 -2
  635. package/dist/esm/components/EditableTable/cellTypes/boolean/Edit.st.css.js +2 -2
  636. package/dist/esm/components/EditableTable/cellTypes/boolean/View.st.css.js +2 -2
  637. package/dist/esm/components/EditableTable/cellTypes/color/Edit.st.css.js +2 -2
  638. package/dist/esm/components/EditableTable/cellTypes/date/Edit.st.css.js +2 -2
  639. package/dist/esm/components/EditableTable/cellTypes/date/View.st.css.js +2 -2
  640. package/dist/esm/components/EditableTable/cellTypes/datetime/Edit.st.css.js +2 -2
  641. package/dist/esm/components/EditableTable/cellTypes/datetime/Edit.st.css.js.map +1 -1
  642. package/dist/esm/components/EditableTable/cellTypes/datetime/View.st.css.js +2 -2
  643. package/dist/esm/components/EditableTable/cellTypes/datetime/View.st.css.js.map +1 -1
  644. package/dist/esm/components/EditableTable/cellTypes/email/Edit.st.css.js +2 -2
  645. package/dist/esm/components/EditableTable/cellTypes/email/Edit.st.css.js.map +1 -1
  646. package/dist/esm/components/EditableTable/cellTypes/email/View.st.css.js +2 -2
  647. package/dist/esm/components/EditableTable/cellTypes/number/Edit.st.css.js +2 -2
  648. package/dist/esm/components/EditableTable/cellTypes/number/View.st.css.js +2 -2
  649. package/dist/esm/components/EditableTable/cellTypes/object/Edit.st.css.js +2 -2
  650. package/dist/esm/components/EditableTable/cellTypes/object/Edit.st.css.js.map +1 -1
  651. package/dist/esm/components/EditableTable/cellTypes/object/View.st.css.js +2 -2
  652. package/dist/esm/components/EditableTable/cellTypes/reference/ReferenceEditWrapper.js +1 -1
  653. package/dist/esm/components/EditableTable/cellTypes/reference/ReferenceEditWrapper.js.map +1 -1
  654. package/dist/esm/components/EditableTable/cellTypes/select/Edit.st.css.js +2 -2
  655. package/dist/esm/components/EditableTable/cellTypes/select/Edit.st.css.js.map +1 -1
  656. package/dist/esm/components/EditableTable/cellTypes/text/Edit.st.css.js +2 -2
  657. package/dist/esm/components/EditableTable/cellTypes/text/View.st.css.js +2 -2
  658. package/dist/esm/components/EditableTable/cellTypes/text/View.st.css.js.map +1 -1
  659. package/dist/esm/components/EditableTable/cellTypes/time/Edit.st.css.js +2 -2
  660. package/dist/esm/components/EditableTable/cellTypes/url/Edit.st.css.js +2 -2
  661. package/dist/esm/components/EditableTable/cellTypes/url/View.st.css.js +2 -2
  662. package/dist/esm/components/EditableTable/types.js.map +1 -1
  663. package/dist/esm/components/EmptyState/CollectionNoResultsState.js +1 -1
  664. package/dist/esm/components/EmptyState/CollectionNoResultsState.js.map +1 -1
  665. package/dist/esm/components/EmptyState/NewItemButton.js +1 -1
  666. package/dist/esm/components/EmptyState/NewItemButton.js.map +1 -1
  667. package/dist/esm/components/EntityPage/EntityPageColumnsPanelEntry.js +16 -0
  668. package/dist/esm/components/EntityPage/EntityPageColumnsPanelEntry.js.map +1 -0
  669. package/dist/esm/components/EntityPage/EntityPagePlain.st.css.js +2 -2
  670. package/dist/esm/components/EntityPage/EntityPageSidePanels.js +20 -0
  671. package/dist/esm/components/EntityPage/EntityPageSidePanels.js.map +1 -0
  672. package/dist/esm/components/EntityPageFields/EntityPageField.js +12 -3
  673. package/dist/esm/components/EntityPageFields/EntityPageField.js.map +1 -1
  674. package/dist/esm/components/EntityPageFields/EntityPageFields.js +29 -23
  675. package/dist/esm/components/EntityPageFields/EntityPageFields.js.map +1 -1
  676. package/dist/esm/components/EntityPageFields/EntityPageReferenceField.js +24 -3
  677. package/dist/esm/components/EntityPageFields/EntityPageReferenceField.js.map +1 -1
  678. package/dist/esm/components/ErrorState/OfflineErrorState.js +1 -1
  679. package/dist/esm/components/ErrorState/OfflineErrorState.js.map +1 -1
  680. package/dist/esm/components/ExportButton/ExportButton.js +5 -2
  681. package/dist/esm/components/ExportButton/ExportButton.js.map +1 -1
  682. package/dist/esm/components/Fade/Fade.st.css.js +2 -2
  683. package/dist/esm/components/Fade/Fade.st.css.js.map +1 -1
  684. package/dist/esm/components/FieldActions/FieldActions.js +2 -5
  685. package/dist/esm/components/FieldActions/FieldActions.js.map +1 -1
  686. package/dist/esm/components/FieldActions/FieldActionsPopover.js +5 -3
  687. package/dist/esm/components/FieldActions/FieldActionsPopover.js.map +1 -1
  688. package/dist/esm/components/FieldActions/HeaderActionsPopover.js +1 -1
  689. package/dist/esm/components/FieldActions/HeaderActionsPopover.js.map +1 -1
  690. package/dist/esm/components/FieldActions/fieldTypeActions.js +46 -0
  691. package/dist/esm/components/FieldActions/fieldTypeActions.js.map +1 -0
  692. package/dist/esm/components/FieldActions/index.js +1 -0
  693. package/dist/esm/components/FieldActions/index.js.map +1 -1
  694. package/dist/esm/components/FieldActions/types.js +2 -0
  695. package/dist/esm/components/FieldActions/types.js.map +1 -0
  696. package/dist/esm/components/FieldCell/FieldCell.js +22 -11
  697. package/dist/esm/components/FieldCell/FieldCell.js.map +1 -1
  698. package/dist/esm/components/FileCard/DownloadButton.js +1 -1
  699. package/dist/esm/components/FileCard/DownloadButton.js.map +1 -1
  700. package/dist/esm/components/FileCard/FilePreviewModal.js +1 -1
  701. package/dist/esm/components/FileCard/FilePreviewModal.js.map +1 -1
  702. package/dist/esm/components/FiltersPanel/FilterAccordionResetButton.js +3 -1
  703. package/dist/esm/components/FiltersPanel/FilterAccordionResetButton.js.map +1 -1
  704. package/dist/esm/components/FiltersPanel/FilterAccordionTitle.js +3 -1
  705. package/dist/esm/components/FiltersPanel/FilterAccordionTitle.js.map +1 -1
  706. package/dist/esm/components/FiltersPanel/FiltersPanel.js +4 -2
  707. package/dist/esm/components/FiltersPanel/FiltersPanel.js.map +1 -1
  708. package/dist/esm/components/FiltersPanel/FiltersPanelFooter.js +3 -1
  709. package/dist/esm/components/FiltersPanel/FiltersPanelFooter.js.map +1 -1
  710. package/dist/esm/components/FiltersPanel/FiltersPanelSearch.js +3 -1
  711. package/dist/esm/components/FiltersPanel/FiltersPanelSearch.js.map +1 -1
  712. package/dist/esm/components/FormPage/FormPageActionsBar.js +4 -2
  713. package/dist/esm/components/FormPage/FormPageActionsBar.js.map +1 -1
  714. package/dist/esm/components/Grid/useGridItemActions.js +1 -1
  715. package/dist/esm/components/Grid/useGridItemActions.js.map +1 -1
  716. package/dist/esm/components/Heading/Heading.st.css.js +2 -2
  717. package/dist/esm/components/ImportButton/ImportButton.js +5 -2
  718. package/dist/esm/components/ImportButton/ImportButton.js.map +1 -1
  719. package/dist/esm/components/ImportButton/ImportIdCollisionControl.js +1 -1
  720. package/dist/esm/components/ImportButton/ImportIdCollisionControl.js.map +1 -1
  721. package/dist/esm/components/ImportButton/ImportRequiredFieldsSideNote.js +1 -1
  722. package/dist/esm/components/ImportButton/ImportRequiredFieldsSideNote.js.map +1 -1
  723. package/dist/esm/components/ImportButton/ImportStepConfiguration.js +1 -1
  724. package/dist/esm/components/ImportButton/ImportStepConfiguration.js.map +1 -1
  725. package/dist/esm/components/ImportButton/ImportStepSummary.js +1 -1
  726. package/dist/esm/components/ImportButton/ImportStepSummary.js.map +1 -1
  727. package/dist/esm/components/ImportButton/ImportStepUpload.st.css.js +2 -2
  728. package/dist/esm/components/ImportButton/ImportStepper.js.map +1 -1
  729. package/dist/esm/components/InputOverflow/InputOverflow.st.css.js +2 -2
  730. package/dist/esm/components/Kanban/StageActions.js +1 -1
  731. package/dist/esm/components/Kanban/StageActions.js.map +1 -1
  732. package/dist/esm/components/Kanban/useCardActions.js +1 -1
  733. package/dist/esm/components/Kanban/useCardActions.js.map +1 -1
  734. package/dist/esm/components/LayoutSwitch/LayoutSwitch.uni.driver.js.map +1 -1
  735. package/dist/esm/components/LoadingRow/LoadingRow.st.css.js +3 -3
  736. package/dist/esm/components/MaxHeightText/MaxHeightText.st.css.js +2 -2
  737. package/dist/esm/components/MaxLines/MaxLines.st.css.js +2 -2
  738. package/dist/esm/components/MaxLines/MaxLines.st.css.js.map +1 -1
  739. package/dist/esm/components/MaxSelection.js +3 -1
  740. package/dist/esm/components/MaxSelection.js.map +1 -1
  741. package/dist/esm/components/MoreActions/ExploreAppsState.js +1 -1
  742. package/dist/esm/components/MoreActions/ExploreAppsState.js.map +1 -1
  743. package/dist/esm/components/MoreActions/MoreActionsIcon.js +1 -1
  744. package/dist/esm/components/MoreActions/MoreActionsIcon.js.map +1 -1
  745. package/dist/esm/components/MoreActions/MoreActionsText.js +1 -1
  746. package/dist/esm/components/MoreActions/MoreActionsText.js.map +1 -1
  747. package/dist/esm/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js +2 -2
  748. package/dist/esm/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.js.map +1 -1
  749. package/dist/esm/components/MultiLevelSortingPanel/MultiLevelSortingList.js +11 -5
  750. package/dist/esm/components/MultiLevelSortingPanel/MultiLevelSortingList.js.map +1 -1
  751. package/dist/esm/components/MultiLevelSortingPanel/MultiLevelSortingOrderSelect.js +1 -1
  752. package/dist/esm/components/MultiLevelSortingPanel/MultiLevelSortingOrderSelect.js.map +1 -1
  753. package/dist/esm/components/MultiLevelSortingPanel/MultiLevelSortingPanel.js +3 -1
  754. package/dist/esm/components/MultiLevelSortingPanel/MultiLevelSortingPanel.js.map +1 -1
  755. package/dist/esm/components/MultiLevelSortingPanel/MultiLevelSortingTableListItem.js +5 -3
  756. package/dist/esm/components/MultiLevelSortingPanel/MultiLevelSortingTableListItem.js.map +1 -1
  757. package/dist/esm/components/MultiSelectCheckboxFilterBase/MultiSelectCheckboxFilterBase.js +1 -1
  758. package/dist/esm/components/MultiSelectCheckboxFilterBase/MultiSelectCheckboxFilterBase.js.map +1 -1
  759. package/dist/esm/components/MultiSelectFilterBase/MultiSelectFilterBase.js +1 -1
  760. package/dist/esm/components/MultiSelectFilterBase/MultiSelectFilterBase.js.map +1 -1
  761. package/dist/esm/components/NestedTable/NestedTableMainColumnTitle.js +1 -1
  762. package/dist/esm/components/NestedTable/NestedTableMainColumnTitle.js.map +1 -1
  763. package/dist/esm/components/NestedTable/NestedTableParentCell.js +1 -1
  764. package/dist/esm/components/NestedTable/NestedTableParentCell.js.map +1 -1
  765. package/dist/esm/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.js +2 -2
  766. package/dist/esm/components/NestedTable/NestedTableRow.st.css.js +2 -2
  767. package/dist/esm/components/NestedTable/NestedTableRow.st.css.js.map +1 -1
  768. package/dist/esm/components/NestedTableDragAndDrop/DepthLimitMessage.js +1 -1
  769. package/dist/esm/components/NestedTableDragAndDrop/DepthLimitMessage.js.map +1 -1
  770. package/dist/esm/components/NestedTableDragAndDrop/DragAndDropDisabledMessage.js +1 -1
  771. package/dist/esm/components/NestedTableDragAndDrop/DragAndDropDisabledMessage.js.map +1 -1
  772. package/dist/esm/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.js +2 -2
  773. package/dist/esm/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.js +2 -2
  774. package/dist/esm/components/NumberRangeFilter/NumberRangeFilter.js +4 -2
  775. package/dist/esm/components/NumberRangeFilter/NumberRangeFilter.js.map +1 -1
  776. package/dist/esm/components/OperatorFilterPicker/OperatorFilterPicker.js +7 -4
  777. package/dist/esm/components/OperatorFilterPicker/OperatorFilterPicker.js.map +1 -1
  778. package/dist/esm/components/PageErrorState/PageErrorState.js +1 -1
  779. package/dist/esm/components/PageErrorState/PageErrorState.js.map +1 -1
  780. package/dist/esm/components/PickerContent/PickerContent.js +3 -1
  781. package/dist/esm/components/PickerContent/PickerContent.js.map +1 -1
  782. package/dist/esm/components/PickerContent/PickerContent.st.css.js +2 -2
  783. package/dist/esm/components/PickerContent/PickerContent.st.css.js.map +1 -1
  784. package/dist/esm/components/PickerContent/PickerContentAdditionalStep.js +4 -2
  785. package/dist/esm/components/PickerContent/PickerContentAdditionalStep.js.map +1 -1
  786. package/dist/esm/components/PickerContent/PickerContentAdditionalStep.st.css.js +2 -2
  787. package/dist/esm/components/PickerEmptyState/PickerEmptyState.js +1 -1
  788. package/dist/esm/components/PickerEmptyState/PickerEmptyState.js.map +1 -1
  789. package/dist/esm/components/PickerStandaloneLayout/PickerStandaloneLayoutFooter.js +1 -1
  790. package/dist/esm/components/PickerStandaloneLayout/PickerStandaloneLayoutFooter.js.map +1 -1
  791. package/dist/esm/components/PickerStandaloneLayout/PickerStandaloneLayoutHeader.js +1 -1
  792. package/dist/esm/components/PickerStandaloneLayout/PickerStandaloneLayoutHeader.js.map +1 -1
  793. package/dist/esm/components/PickerTableListItem/PickerTableListItem.js +1 -1
  794. package/dist/esm/components/PickerTableListItem/PickerTableListItem.js.map +1 -1
  795. package/dist/esm/components/PickerTableListItem/PickerTableListItem.st.css.js +2 -2
  796. package/dist/esm/components/PrimaryActions/PrimaryActions.js +1 -1
  797. package/dist/esm/components/PrimaryActions/PrimaryActions.js.map +1 -1
  798. package/dist/esm/components/PrimaryPageButton/PrimaryPageButton.js +1 -1
  799. package/dist/esm/components/PrimaryPageButton/PrimaryPageButton.js.map +1 -1
  800. package/dist/esm/components/RequestId/RequestId.js +1 -1
  801. package/dist/esm/components/RequestId/RequestId.js.map +1 -1
  802. package/dist/esm/components/SchemaCard/SchemaCard.js +1 -1
  803. package/dist/esm/components/SchemaCard/SchemaCard.js.map +1 -1
  804. package/dist/esm/components/SchemaSource/ReferenceFieldCell.js +57 -0
  805. package/dist/esm/components/SchemaSource/ReferenceFieldCell.js.map +1 -0
  806. package/dist/esm/components/SchemaSource/SchemaState.js +4 -2
  807. package/dist/esm/components/SchemaSource/SchemaState.js.map +1 -1
  808. package/dist/esm/components/SchemaSource/referenceCells.js +102 -0
  809. package/dist/esm/components/SchemaSource/referenceCells.js.map +1 -0
  810. package/dist/esm/components/SchemaSource/schemaFieldManagement.js +13 -0
  811. package/dist/esm/components/SchemaSource/schemaFieldManagement.js.map +1 -1
  812. package/dist/esm/components/SchemaSource/schemaFieldsSource.js +1 -0
  813. package/dist/esm/components/SchemaSource/schemaFieldsSource.js.map +1 -1
  814. package/dist/esm/components/SchemaSource/schemaRendering.js +14 -0
  815. package/dist/esm/components/SchemaSource/schemaRendering.js.map +1 -1
  816. package/dist/esm/components/SchemaSource/tableSchemaSource.js +8 -0
  817. package/dist/esm/components/SchemaSource/tableSchemaSource.js.map +1 -1
  818. package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js +2 -2
  819. package/dist/esm/components/ScrollableContent/ScrollableContent.st.css.js.map +1 -1
  820. package/dist/esm/components/SetupWidget/SetupStepCard.js +1 -1
  821. package/dist/esm/components/SetupWidget/SetupStepCard.js.map +1 -1
  822. package/dist/esm/components/SetupWidget/SetupStepGroup.js +1 -1
  823. package/dist/esm/components/SetupWidget/SetupStepGroup.js.map +1 -1
  824. package/dist/esm/components/SetupWidget/SetupStepIcon.js +1 -1
  825. package/dist/esm/components/SetupWidget/SetupStepIcon.js.map +1 -1
  826. package/dist/esm/components/SetupWidget/SetupWidget.st.css.js +2 -2
  827. package/dist/esm/components/SetupWidget/SetupWidget.st.css.js.map +1 -1
  828. package/dist/esm/components/SingleSelectFilterBase/SingleSelectFilterBase.js +1 -1
  829. package/dist/esm/components/SingleSelectFilterBase/SingleSelectFilterBase.js.map +1 -1
  830. package/dist/esm/components/SkeletonCard/SkeletonCard.st.css.js +2 -2
  831. package/dist/esm/components/SkeletonCard/SkeletonCard.st.css.js.map +1 -1
  832. package/dist/esm/components/SlidingModal/SlidingModal.st.css.js +2 -2
  833. package/dist/esm/components/SlidingModal/SlidingModal.st.css.js.map +1 -1
  834. package/dist/esm/components/Table/AddFieldColumnHeader.js +1 -1
  835. package/dist/esm/components/Table/AddFieldColumnHeader.js.map +1 -1
  836. package/dist/esm/components/Table/AddFieldColumnHeader.st.css.js +2 -2
  837. package/dist/esm/components/Table/Table.uni.driver.js +12 -7
  838. package/dist/esm/components/Table/Table.uni.driver.js.map +1 -1
  839. package/dist/esm/components/TabsFilter/TabsFilter.st.css.js +2 -2
  840. package/dist/esm/components/TabsFilter/TabsFilter.st.css.js.map +1 -1
  841. package/dist/esm/components/Tags/BulkAssignTagsPopover/CreateTagButton.js +4 -2
  842. package/dist/esm/components/Tags/BulkAssignTagsPopover/CreateTagButton.js.map +1 -1
  843. package/dist/esm/components/Tags/BulkAssignTagsPopover/Footer.js +4 -2
  844. package/dist/esm/components/Tags/BulkAssignTagsPopover/Footer.js.map +1 -1
  845. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/List/TagListItemView.js +7 -5
  846. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/List/TagListItemView.js.map +1 -1
  847. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.js +9 -6
  848. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.js.map +1 -1
  849. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css +10 -1
  850. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.js +2 -2
  851. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/TagItemEditable.js +26 -3
  852. package/dist/esm/components/Tags/ManageTags/ManageTagsModal/TagItemEditable.js.map +1 -1
  853. package/dist/esm/components/Tags/manageTagsPageAction.js +1 -1
  854. package/dist/esm/components/Tags/manageTagsPageAction.js.map +1 -1
  855. package/dist/esm/components/TagsAssignButton/TagsAssignButton.js +1 -1
  856. package/dist/esm/components/TagsAssignButton/TagsAssignButton.js.map +1 -1
  857. package/dist/esm/components/TagsWidget/TagsWidget.js +1 -1
  858. package/dist/esm/components/TagsWidget/TagsWidget.js.map +1 -1
  859. package/dist/esm/components/TagsWidget/TagsWidgetContent.js +1 -1
  860. package/dist/esm/components/TagsWidget/TagsWidgetContent.js.map +1 -1
  861. package/dist/esm/components/ToolbarCollection/useToolbarCollectionSyncProps.js +16 -13
  862. package/dist/esm/components/ToolbarCollection/useToolbarCollectionSyncProps.js.map +1 -1
  863. package/dist/esm/components/ToolbarItem/ToolbarItem.st.css.js +2 -2
  864. package/dist/esm/components/ToolbarItemBox/ToolbarItemBox.st.css.js +2 -2
  865. package/dist/esm/components/common.st.css.js +2 -2
  866. package/dist/esm/components/common.st.css.js.map +1 -1
  867. package/dist/esm/components/deleteSecondaryAction/deleteSecondaryAction.js +1 -1
  868. package/dist/esm/components/deleteSecondaryAction/deleteSecondaryAction.js.map +1 -1
  869. package/dist/esm/exports/schema.js +5 -2
  870. package/dist/esm/exports/schema.js.map +1 -1
  871. package/dist/esm/fields/DateInput/DateInput.js +9 -4
  872. package/dist/esm/fields/DateInput/DateInput.js.map +1 -1
  873. package/dist/esm/fields/Url/Url.js +1 -1
  874. package/dist/esm/fields/Url/Url.js.map +1 -1
  875. package/dist/esm/hooks/useBuildOption.js +3 -0
  876. package/dist/esm/hooks/useBuildOption.js.map +1 -1
  877. package/dist/esm/hooks/useOpenCollectionOverlay.js.map +1 -0
  878. package/dist/esm/index.js +1 -0
  879. package/dist/esm/index.js.map +1 -1
  880. package/dist/esm/model/schemaFieldsContainer.js +3 -0
  881. package/dist/esm/model/schemaFieldsContainer.js.map +1 -0
  882. package/dist/esm/providers/PatternsFieldsProvider.js +18 -4
  883. package/dist/esm/providers/PatternsFieldsProvider.js.map +1 -1
  884. package/dist/esm/providers/SchemaFieldsProvider.js +25 -0
  885. package/dist/esm/providers/SchemaFieldsProvider.js.map +1 -0
  886. package/dist/esm/providers/index.js +1 -0
  887. package/dist/esm/providers/index.js.map +1 -1
  888. package/dist/esm/schema/EditableTable.js +14 -0
  889. package/dist/esm/schema/EditableTable.js.map +1 -0
  890. package/dist/esm/schema/EntityPage.js +19 -0
  891. package/dist/esm/schema/EntityPage.js.map +1 -0
  892. package/dist/esm/schema/EntityPageFieldsCard.js +65 -0
  893. package/dist/esm/schema/EntityPageFieldsCard.js.map +1 -0
  894. package/dist/esm/schema/Grid.js +13 -0
  895. package/dist/esm/schema/Grid.js.map +1 -0
  896. package/dist/esm/schema/LayoutSwitch.js +45 -0
  897. package/dist/esm/schema/LayoutSwitch.js.map +1 -0
  898. package/dist/esm/schema/Table.js +14 -0
  899. package/dist/esm/schema/Table.js.map +1 -0
  900. package/dist/esm/schema/entityPageFieldManagement.js +34 -0
  901. package/dist/esm/schema/entityPageFieldManagement.js.map +1 -0
  902. package/dist/esm/schema/index.js +7 -0
  903. package/dist/esm/schema/index.js.map +1 -1
  904. package/dist/esm/schema/schemaCollectionOptions.js +1 -6
  905. package/dist/esm/schema/schemaCollectionOptions.js.map +1 -1
  906. package/dist/esm/schema/sourceMutations.js +19 -3
  907. package/dist/esm/schema/sourceMutations.js.map +1 -1
  908. package/dist/esm/schema/syncSourcePermissions.js +22 -0
  909. package/dist/esm/schema/syncSourcePermissions.js.map +1 -0
  910. package/dist/esm/schema/useEditableTableCollection.js +8 -8
  911. package/dist/esm/schema/useEditableTableCollection.js.map +1 -1
  912. package/dist/esm/schema/useEntityPage.js +55 -0
  913. package/dist/esm/schema/useEntityPage.js.map +1 -0
  914. package/dist/esm/schema/useLayoutSwitchCollection.js +13 -9
  915. package/dist/esm/schema/useLayoutSwitchCollection.js.map +1 -1
  916. package/dist/esm/schema/usePlatformizedSource.js +11 -4
  917. package/dist/esm/schema/usePlatformizedSource.js.map +1 -1
  918. package/dist/esm/schema/useSchemaSource.js +32 -0
  919. package/dist/esm/schema/useSchemaSource.js.map +1 -0
  920. package/dist/esm/state/CollectionFieldsSourceState.js +7 -2
  921. package/dist/esm/state/CollectionFieldsSourceState.js.map +1 -1
  922. package/dist/esm/state/CollectionPage/CollectionPageHeader.st.css.js +2 -2
  923. package/dist/esm/state/CollectionPage/CollectionPageHeader.st.css.js.map +1 -1
  924. package/dist/esm/state/CustomColumnsEntityPageState.js +25 -4
  925. package/dist/esm/state/CustomColumnsEntityPageState.js.map +1 -1
  926. package/dist/esm/state/CustomColumnsPanelStateBase.js +6 -0
  927. package/dist/esm/state/CustomColumnsPanelStateBase.js.map +1 -1
  928. package/dist/esm/state/CustomColumnsState.js +1 -1
  929. package/dist/esm/state/CustomColumnsState.js.map +1 -1
  930. package/dist/esm/state/CustomFields/CustomFieldsPanelState.js +17 -2
  931. package/dist/esm/state/CustomFields/CustomFieldsPanelState.js.map +1 -1
  932. package/dist/esm/state/EditableTable/CellValueState.js +23 -11
  933. package/dist/esm/state/EditableTable/CellValueState.js.map +1 -1
  934. package/dist/esm/state/EditableTable/EditableTableState.js +4 -1
  935. package/dist/esm/state/EditableTable/EditableTableState.js.map +1 -1
  936. package/dist/esm/state/EditableTable/fieldTypeToCellType.js +5 -3
  937. package/dist/esm/state/EditableTable/fieldTypeToCellType.js.map +1 -1
  938. package/dist/esm/state/EntityPage/EntityPageState.js +33 -1
  939. package/dist/esm/state/EntityPage/EntityPageState.js.map +1 -1
  940. package/dist/esm/state/EntityPage/resolveEntityPageFields.js +16 -0
  941. package/dist/esm/state/EntityPage/resolveEntityPageFields.js.map +1 -0
  942. package/dist/esm/state/EntityPageFieldsCardState.js +126 -0
  943. package/dist/esm/state/EntityPageFieldsCardState.js.map +1 -0
  944. package/dist/esm/state/FormPage/FormPageHeader.st.css.js +2 -2
  945. package/dist/esm/state/FormPage/FormPageHeader.st.css.js.map +1 -1
  946. package/dist/esm/state/ManageFieldsSource.js +2 -0
  947. package/dist/esm/state/ManageFieldsSource.js.map +1 -0
  948. package/dist/esm/state/SchemaCard/SchemaCardState.js +3 -2
  949. package/dist/esm/state/SchemaCard/SchemaCardState.js.map +1 -1
  950. package/dist/esm/state/SchemaCard/SchemaFieldsState.js +21 -5
  951. package/dist/esm/state/SchemaCard/SchemaFieldsState.js.map +1 -1
  952. package/dist/esm/state/SidePanelsState.js +11 -0
  953. package/dist/esm/state/SidePanelsState.js.map +1 -1
  954. package/dist/esm/state/buildEditableFieldColumns.js +54 -7
  955. package/dist/esm/state/buildEditableFieldColumns.js.map +1 -1
  956. package/dist/esm/state/buildFieldColumns.js +9 -2
  957. package/dist/esm/state/buildFieldColumns.js.map +1 -1
  958. package/dist/esm/state/buildFieldFilters.js +41 -8
  959. package/dist/esm/state/buildFieldFilters.js.map +1 -1
  960. package/dist/esm/styles.global.css +2 -2
  961. package/dist/esm/test-utils/WixPatternsEssentialsTestProvider.js +2 -2
  962. package/dist/esm/test-utils/WixPatternsEssentialsTestProvider.js.map +1 -1
  963. package/dist/esm/testkit/jsdom.js +1 -1
  964. package/dist/esm/testkit/jsdom.js.map +1 -1
  965. package/dist/esm/themes/panel-theme.js +1 -1
  966. package/dist/esm/themes/panel-theme.js.map +1 -1
  967. package/dist/esm/utils/datesUtil.js +15 -2
  968. package/dist/esm/utils/datesUtil.js.map +1 -1
  969. package/dist/esm/utils/fieldTypePrefixIcons.js +1 -1
  970. package/dist/esm/utils/fieldTypePrefixIcons.js.map +1 -1
  971. package/dist/esm/version.js +1 -1
  972. package/dist/types/components/ArchivedItemsPanel/ArchivedItemsCTAButton.d.ts.map +1 -1
  973. package/dist/types/components/ArchivedItemsPanel/ArchivedItemsList.d.ts.map +1 -1
  974. package/dist/types/components/ArchivedItemsPanel/ArchivedItemsListItem.d.ts.map +1 -1
  975. package/dist/types/components/CmsFieldManagement/CmsFieldModal.st.css.d.ts.map +1 -1
  976. package/dist/types/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.d.ts.map +1 -1
  977. package/dist/types/components/CollectionAutoComplete/CollectionAutoComplete.d.ts.map +1 -1
  978. package/dist/types/components/CollectionFilter/CollectionFilterState.d.ts +1 -1
  979. package/dist/types/components/CollectionSectionHeader/CollectionSectionHeader.st.css.d.ts.map +1 -1
  980. package/dist/types/components/CollectionTable/CollectionTable.uni.driver.d.ts +30 -30
  981. package/dist/types/components/CollectionToolbar/CollectionToolbar.uni.driver.d.ts +12 -12
  982. package/dist/types/components/CollectionToolbar/PrimaryActionButton.d.ts.map +1 -1
  983. package/dist/types/components/CollectionToolbar/SearchOrCustomFilter.st.css.d.ts.map +1 -1
  984. package/dist/types/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.d.ts.map +1 -1
  985. package/dist/types/components/CollectionViewsDropdown/ManageViewPopover.d.ts.map +1 -1
  986. package/dist/types/components/CollectionViewsDropdown/SaveToNewViewFooter.d.ts.map +1 -1
  987. package/dist/types/components/CollectionViewsDropdown/ViewsDropdown.d.ts.map +1 -1
  988. package/dist/types/components/CollectionViewsDropdown/viewsDropdownRenderHelpers.d.ts +2 -1
  989. package/dist/types/components/CollectionViewsDropdown/viewsDropdownRenderHelpers.d.ts.map +1 -1
  990. package/dist/types/components/CustomColumnsPanel/ColumnListTableListItem.d.ts.map +1 -1
  991. package/dist/types/components/CustomColumnsPanel/ColumnsList.d.ts.map +1 -1
  992. package/dist/types/components/CustomColumnsPanel/CustomColumnsEntityPageContext.d.ts +9 -0
  993. package/dist/types/components/CustomColumnsPanel/CustomColumnsEntityPageContext.d.ts.map +1 -0
  994. package/dist/types/components/CustomColumnsPanel/CustomColumnsEntityPagePanelEntry.d.ts +2 -3
  995. package/dist/types/components/CustomColumnsPanel/CustomColumnsEntityPagePanelEntry.d.ts.map +1 -1
  996. package/dist/types/components/CustomColumnsPanel/CustomColumnsEntityPagePanelMount.d.ts.map +1 -1
  997. package/dist/types/components/CustomColumnsPanel/CustomColumnsPanel.d.ts.map +1 -1
  998. package/dist/types/components/CustomColumnsPanel/CustomColumnsSearch.d.ts.map +1 -1
  999. package/dist/types/components/CustomFieldModal/CustomFieldForm.d.ts.map +1 -1
  1000. package/dist/types/components/CustomFieldModal/CustomFieldFormPiiFieldsV2.d.ts +15 -0
  1001. package/dist/types/components/CustomFieldModal/CustomFieldFormPiiFieldsV2.d.ts.map +1 -0
  1002. package/dist/types/components/CustomFieldModal/CustomFieldFormV2.d.ts +10 -0
  1003. package/dist/types/components/CustomFieldModal/CustomFieldFormV2.d.ts.map +1 -0
  1004. package/dist/types/components/CustomFieldModal/CustomFieldFormV2Permissions.d.ts +10 -0
  1005. package/dist/types/components/CustomFieldModal/CustomFieldFormV2Permissions.d.ts.map +1 -0
  1006. package/dist/types/components/CustomFieldModal/CustomFieldModal.d.ts.map +1 -1
  1007. package/dist/types/components/CustomFieldModal/CustomFieldModal.uni.driver.d.ts +9 -3
  1008. package/dist/types/components/CustomFieldModal/CustomFieldModal.uni.driver.d.ts.map +1 -1
  1009. package/dist/types/components/CustomFieldModal/CustomFieldTypeDropdownV2.d.ts +10 -0
  1010. package/dist/types/components/CustomFieldModal/CustomFieldTypeDropdownV2.d.ts.map +1 -0
  1011. package/dist/types/components/CustomFieldsPanel/FieldManagementModals.d.ts +5 -6
  1012. package/dist/types/components/CustomFieldsPanel/FieldManagementModals.d.ts.map +1 -1
  1013. package/dist/types/components/CustomFieldsPanel/FieldsSourceAddFieldCTA.d.ts +3 -3
  1014. package/dist/types/components/CustomFieldsPanel/FieldsSourceAddFieldCTA.d.ts.map +1 -1
  1015. package/dist/types/components/CustomFieldsWidget/CustomFieldsViewWidgetSection.d.ts.map +1 -1
  1016. package/dist/types/components/CustomFieldsWidget/CustomFieldsWidget.uni.driver.d.ts +11 -6
  1017. package/dist/types/components/CustomFieldsWidget/CustomFieldsWidget.uni.driver.d.ts.map +1 -1
  1018. package/dist/types/components/DataExtension/dataExtensionFieldManagement.d.ts.map +1 -1
  1019. package/dist/types/components/DragHandle/DragHandle.st.css.d.ts.map +1 -1
  1020. package/dist/types/components/DropdownFilter/CollectionDropdownFilter.uni.driver.d.ts +1 -1
  1021. package/dist/types/components/EditableTable/EditableCell.uni.driver.d.ts +1 -1
  1022. package/dist/types/components/EditableTable/EditableTable.uni.driver.d.ts +13229 -74
  1023. package/dist/types/components/EditableTable/EditableTable.uni.driver.d.ts.map +1 -1
  1024. package/dist/types/components/EditableTable/EditableTableContextMenu.d.ts.map +1 -1
  1025. package/dist/types/components/EditableTable/EditableTableContextMenu.uni.driver.d.ts +1 -0
  1026. package/dist/types/components/EditableTable/EditableTableContextMenu.uni.driver.d.ts.map +1 -1
  1027. package/dist/types/components/EditableTable/HeaderActionsPopover.st.css.d.ts.map +1 -1
  1028. package/dist/types/components/EditableTable/HeaderFieldActions.d.ts.map +1 -1
  1029. package/dist/types/components/EditableTable/cellTypes/CellViewLayout.st.css.d.ts.map +1 -1
  1030. package/dist/types/components/EditableTable/cellTypes/address/Edit.st.css.d.ts.map +1 -1
  1031. package/dist/types/components/EditableTable/cellTypes/datetime/Edit.st.css.d.ts.map +1 -1
  1032. package/dist/types/components/EditableTable/cellTypes/datetime/View.st.css.d.ts.map +1 -1
  1033. package/dist/types/components/EditableTable/cellTypes/email/Edit.st.css.d.ts.map +1 -1
  1034. package/dist/types/components/EditableTable/cellTypes/object/Edit.st.css.d.ts.map +1 -1
  1035. package/dist/types/components/EditableTable/cellTypes/reference/Edit.uni.driver.d.ts +1 -1
  1036. package/dist/types/components/EditableTable/cellTypes/reference/openCollectionContext.d.ts +1 -1
  1037. package/dist/types/components/EditableTable/cellTypes/reference/openCollectionContext.d.ts.map +1 -1
  1038. package/dist/types/components/EditableTable/cellTypes/select/Edit.st.css.d.ts.map +1 -1
  1039. package/dist/types/components/EditableTable/cellTypes/text/View.st.css.d.ts.map +1 -1
  1040. package/dist/types/components/EditableTable/index.d.ts +1 -1
  1041. package/dist/types/components/EditableTable/index.d.ts.map +1 -1
  1042. package/dist/types/components/EditableTable/types.d.ts +8 -77
  1043. package/dist/types/components/EditableTable/types.d.ts.map +1 -1
  1044. package/dist/types/components/EntityPage/EntityPageColumnsPanelEntry.d.ts +10 -0
  1045. package/dist/types/components/EntityPage/EntityPageColumnsPanelEntry.d.ts.map +1 -0
  1046. package/dist/types/components/EntityPage/EntityPageSidePanels.d.ts +16 -0
  1047. package/dist/types/components/EntityPage/EntityPageSidePanels.d.ts.map +1 -0
  1048. package/dist/types/components/EntityPageFields/EntityPageField.d.ts.map +1 -1
  1049. package/dist/types/components/EntityPageFields/EntityPageFields.d.ts +5 -3
  1050. package/dist/types/components/EntityPageFields/EntityPageFields.d.ts.map +1 -1
  1051. package/dist/types/components/EntityPageFields/EntityPageReferenceField.d.ts +1 -5
  1052. package/dist/types/components/EntityPageFields/EntityPageReferenceField.d.ts.map +1 -1
  1053. package/dist/types/components/ExportButton/ExportButton.d.ts.map +1 -1
  1054. package/dist/types/components/Fade/Fade.st.css.d.ts.map +1 -1
  1055. package/dist/types/components/FieldActions/FieldActions.d.ts.map +1 -1
  1056. package/dist/types/components/FieldActions/FieldActionsPopover.d.ts.map +1 -1
  1057. package/dist/types/components/FieldActions/fieldTypeActions.d.ts +20 -0
  1058. package/dist/types/components/FieldActions/fieldTypeActions.d.ts.map +1 -0
  1059. package/dist/types/components/FieldActions/index.d.ts +2 -0
  1060. package/dist/types/components/FieldActions/index.d.ts.map +1 -1
  1061. package/dist/types/components/FieldActions/types.d.ts +2 -0
  1062. package/dist/types/components/FieldActions/types.d.ts.map +1 -0
  1063. package/dist/types/components/FieldCell/FieldCell.d.ts +4 -1
  1064. package/dist/types/components/FieldCell/FieldCell.d.ts.map +1 -1
  1065. package/dist/types/components/FiltersPanel/FilterAccordionResetButton.d.ts.map +1 -1
  1066. package/dist/types/components/FiltersPanel/FilterAccordionTitle.d.ts.map +1 -1
  1067. package/dist/types/components/FiltersPanel/FiltersPanel.d.ts.map +1 -1
  1068. package/dist/types/components/FiltersPanel/FiltersPanel.uni.driver.d.ts +4 -4
  1069. package/dist/types/components/FiltersPanel/FiltersPanelFooter.d.ts.map +1 -1
  1070. package/dist/types/components/FiltersPanel/FiltersPanelSearch.d.ts.map +1 -1
  1071. package/dist/types/components/FormPage/FormPageActionsBar.d.ts.map +1 -1
  1072. package/dist/types/components/Grid/Grid.uni.driver.d.ts +14 -14
  1073. package/dist/types/components/Grid/GridFolders.uni.driver.d.ts +41 -41
  1074. package/dist/types/components/Grid/GridFoldersSection.uni.driver.d.ts +14 -14
  1075. package/dist/types/components/ImportButton/ImportButton.d.ts.map +1 -1
  1076. package/dist/types/components/ImportButton/ImportButton.uni.driver.d.ts +2 -2
  1077. package/dist/types/components/ImportButton/ImportModal.uni.driver.d.ts +2 -2
  1078. package/dist/types/components/ImportButton/ImportStepper.d.ts.map +1 -1
  1079. package/dist/types/components/Kanban/Kanban.uni.driver.d.ts +12 -12
  1080. package/dist/types/components/Kanban/KanbanCardActionsHelper.d.ts +11 -11
  1081. package/dist/types/components/Kanban/useCardActions.d.ts +11 -11
  1082. package/dist/types/components/LayoutSwitch/LayoutSwitch.uni.driver.d.ts +7 -19990
  1083. package/dist/types/components/LayoutSwitch/LayoutSwitch.uni.driver.d.ts.map +1 -1
  1084. package/dist/types/components/MaxLines/MaxLines.st.css.d.ts.map +1 -1
  1085. package/dist/types/components/MaxSelection.d.ts.map +1 -1
  1086. package/dist/types/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.d.ts.map +1 -1
  1087. package/dist/types/components/MultiLevelSortingPanel/MultiLevelSortingList.d.ts.map +1 -1
  1088. package/dist/types/components/MultiLevelSortingPanel/MultiLevelSortingPanel.d.ts.map +1 -1
  1089. package/dist/types/components/MultiLevelSortingPanel/MultiLevelSortingTableListItem.d.ts.map +1 -1
  1090. package/dist/types/components/MultiSelectCheckboxFilterBase/MultiSelectCheckboxFilterBase.d.ts.map +1 -1
  1091. package/dist/types/components/NestedTable/NestedTable.uni.driver.d.ts +51 -45
  1092. package/dist/types/components/NestedTable/NestedTable.uni.driver.d.ts.map +1 -1
  1093. package/dist/types/components/NestedTable/NestedTableRow.st.css.d.ts.map +1 -1
  1094. package/dist/types/components/NumberRangeFilter/NumberRangeFilter.d.ts.map +1 -1
  1095. package/dist/types/components/OperatorFilterPicker/OperatorFilterPicker.d.ts.map +1 -1
  1096. package/dist/types/components/PickerContent/PickerContent.d.ts.map +1 -1
  1097. package/dist/types/components/PickerContent/PickerContent.st.css.d.ts.map +1 -1
  1098. package/dist/types/components/PickerContent/PickerContentAdditionalStep.d.ts.map +1 -1
  1099. package/dist/types/components/PickerModal/PickerModal.uni.driver.d.ts +1 -1
  1100. package/dist/types/components/PickerModal/PickerModalLayout.uni.driver.d.ts +1 -1
  1101. package/dist/types/components/SchemaSource/ReferenceFieldCell.d.ts +23 -0
  1102. package/dist/types/components/SchemaSource/ReferenceFieldCell.d.ts.map +1 -0
  1103. package/dist/types/components/SchemaSource/SchemaState.d.ts +3 -0
  1104. package/dist/types/components/SchemaSource/SchemaState.d.ts.map +1 -1
  1105. package/dist/types/components/SchemaSource/referenceCells.d.ts +32 -0
  1106. package/dist/types/components/SchemaSource/referenceCells.d.ts.map +1 -0
  1107. package/dist/types/components/SchemaSource/schemaFieldManagement.d.ts.map +1 -1
  1108. package/dist/types/components/SchemaSource/schemaFieldsSource.d.ts.map +1 -1
  1109. package/dist/types/components/SchemaSource/schemaRendering.d.ts.map +1 -1
  1110. package/dist/types/components/SchemaSource/tableSchemaSource.d.ts.map +1 -1
  1111. package/dist/types/components/ScrollableContent/ScrollableContent.st.css.d.ts.map +1 -1
  1112. package/dist/types/components/SetupWidget/SetupWidget.st.css.d.ts.map +1 -1
  1113. package/dist/types/components/SingleSelectFilterBase/SingleSelectFilterBase.d.ts.map +1 -1
  1114. package/dist/types/components/SkeletonCard/SkeletonCard.st.css.d.ts.map +1 -1
  1115. package/dist/types/components/SlidingModal/SlidingModal.st.css.d.ts.map +1 -1
  1116. package/dist/types/components/SummaryBar/SummaryBar.uni.driver.d.ts +1 -1
  1117. package/dist/types/components/Table/Table.uni.driver.d.ts +54 -40
  1118. package/dist/types/components/Table/Table.uni.driver.d.ts.map +1 -1
  1119. package/dist/types/components/TableFolders/TableFolders.uni.driver.d.ts +51 -45
  1120. package/dist/types/components/TableFolders/TableFolders.uni.driver.d.ts.map +1 -1
  1121. package/dist/types/components/TableGridSwitch/TableGridSwitch.uni.driver.d.ts +55 -49
  1122. package/dist/types/components/TableGridSwitch/TableGridSwitch.uni.driver.d.ts.map +1 -1
  1123. package/dist/types/components/TabsFilter/TabsFilter.st.css.d.ts.map +1 -1
  1124. package/dist/types/components/TabsFilter/TabsFilter.uni.driver.d.ts +1 -1
  1125. package/dist/types/components/Tags/BulkAssignTagsPopover/CreateTagButton.d.ts.map +1 -1
  1126. package/dist/types/components/Tags/BulkAssignTagsPopover/Footer.d.ts.map +1 -1
  1127. package/dist/types/components/Tags/ManageTags/ManageTagsModal/List/TagListItemView.d.ts.map +1 -1
  1128. package/dist/types/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.d.ts.map +1 -1
  1129. package/dist/types/components/Tags/ManageTags/ManageTagsModal/TagItemEditable.d.ts +1 -2
  1130. package/dist/types/components/Tags/ManageTags/ManageTagsModal/TagItemEditable.d.ts.map +1 -1
  1131. package/dist/types/components/ToolbarCollection/useToolbarCollectionSyncProps.d.ts.map +1 -1
  1132. package/dist/types/components/common.st.css.d.ts.map +1 -1
  1133. package/dist/types/exports/schema.d.ts +6 -4
  1134. package/dist/types/exports/schema.d.ts.map +1 -1
  1135. package/dist/types/fields/DateInput/DateInput.d.ts.map +1 -1
  1136. package/dist/types/hooks/useBuildOption.d.ts.map +1 -1
  1137. package/dist/types/hooks/useOpenCollectionOverlay.d.ts.map +1 -0
  1138. package/dist/types/index.d.ts +2 -1
  1139. package/dist/types/index.d.ts.map +1 -1
  1140. package/dist/types/model/schemaFieldsContainer.d.ts +14 -0
  1141. package/dist/types/model/schemaFieldsContainer.d.ts.map +1 -0
  1142. package/dist/types/providers/PatternsFieldsProvider.d.ts +4 -0
  1143. package/dist/types/providers/PatternsFieldsProvider.d.ts.map +1 -1
  1144. package/dist/types/providers/SchemaFieldsProvider.d.ts +22 -0
  1145. package/dist/types/providers/SchemaFieldsProvider.d.ts.map +1 -0
  1146. package/dist/types/providers/index.d.ts +1 -0
  1147. package/dist/types/providers/index.d.ts.map +1 -1
  1148. package/dist/types/schema/EditableTable.d.ts +17 -0
  1149. package/dist/types/schema/EditableTable.d.ts.map +1 -0
  1150. package/dist/types/schema/EntityPage.d.ts +27 -0
  1151. package/dist/types/schema/EntityPage.d.ts.map +1 -0
  1152. package/dist/types/schema/EntityPageFieldsCard.d.ts +40 -0
  1153. package/dist/types/schema/EntityPageFieldsCard.d.ts.map +1 -0
  1154. package/dist/types/schema/Grid.d.ts +14 -0
  1155. package/dist/types/schema/Grid.d.ts.map +1 -0
  1156. package/dist/types/schema/LayoutSwitch.d.ts +22 -0
  1157. package/dist/types/schema/LayoutSwitch.d.ts.map +1 -0
  1158. package/dist/types/schema/Table.d.ts +18 -0
  1159. package/dist/types/schema/Table.d.ts.map +1 -0
  1160. package/dist/types/schema/entityPageFieldManagement.d.ts +16 -0
  1161. package/dist/types/schema/entityPageFieldManagement.d.ts.map +1 -0
  1162. package/dist/types/schema/index.d.ts +7 -0
  1163. package/dist/types/schema/index.d.ts.map +1 -1
  1164. package/dist/types/schema/schemaCollectionOptions.d.ts +1 -12
  1165. package/dist/types/schema/schemaCollectionOptions.d.ts.map +1 -1
  1166. package/dist/types/schema/sourceMutations.d.ts.map +1 -1
  1167. package/dist/types/schema/syncSourcePermissions.d.ts +10 -0
  1168. package/dist/types/schema/syncSourcePermissions.d.ts.map +1 -0
  1169. package/dist/types/schema/useEditableTableCollection.d.ts +1 -5
  1170. package/dist/types/schema/useEditableTableCollection.d.ts.map +1 -1
  1171. package/dist/types/schema/useEntityPage.d.ts +21 -0
  1172. package/dist/types/schema/useEntityPage.d.ts.map +1 -0
  1173. package/dist/types/schema/useLayoutSwitchCollection.d.ts +1 -5
  1174. package/dist/types/schema/useLayoutSwitchCollection.d.ts.map +1 -1
  1175. package/dist/types/schema/usePlatformizedSource.d.ts.map +1 -1
  1176. package/dist/types/schema/useSchemaSource.d.ts +22 -0
  1177. package/dist/types/schema/useSchemaSource.d.ts.map +1 -0
  1178. package/dist/types/state/CollectionFieldsSourceState.d.ts +23 -1
  1179. package/dist/types/state/CollectionFieldsSourceState.d.ts.map +1 -1
  1180. package/dist/types/state/CollectionPage/CollectionPageHeader.st.css.d.ts.map +1 -1
  1181. package/dist/types/state/CustomColumnsEntityPageState.d.ts +22 -3
  1182. package/dist/types/state/CustomColumnsEntityPageState.d.ts.map +1 -1
  1183. package/dist/types/state/CustomColumnsPanelStateBase.d.ts +7 -2
  1184. package/dist/types/state/CustomColumnsPanelStateBase.d.ts.map +1 -1
  1185. package/dist/types/state/CustomColumnsState.d.ts +1 -1
  1186. package/dist/types/state/CustomColumnsState.d.ts.map +1 -1
  1187. package/dist/types/state/CustomFields/CustomFieldsPanelState.d.ts.map +1 -1
  1188. package/dist/types/state/EditableTable/CellValueState.d.ts +11 -1
  1189. package/dist/types/state/EditableTable/CellValueState.d.ts.map +1 -1
  1190. package/dist/types/state/EditableTable/EditableTableState.d.ts +1 -0
  1191. package/dist/types/state/EditableTable/EditableTableState.d.ts.map +1 -1
  1192. package/dist/types/state/EditableTable/fieldTypeToCellType.d.ts +1 -2
  1193. package/dist/types/state/EditableTable/fieldTypeToCellType.d.ts.map +1 -1
  1194. package/dist/types/state/EditableTable/types.d.ts +7 -29
  1195. package/dist/types/state/EditableTable/types.d.ts.map +1 -1
  1196. package/dist/types/state/EntityPage/EntityPageState.d.ts +22 -0
  1197. package/dist/types/state/EntityPage/EntityPageState.d.ts.map +1 -1
  1198. package/dist/types/state/EntityPage/resolveEntityPageFields.d.ts +6 -0
  1199. package/dist/types/state/EntityPage/resolveEntityPageFields.d.ts.map +1 -0
  1200. package/dist/types/state/EntityPageFieldsCardState.d.ts +68 -0
  1201. package/dist/types/state/EntityPageFieldsCardState.d.ts.map +1 -0
  1202. package/dist/types/state/FormPage/FormPageHeader.st.css.d.ts.map +1 -1
  1203. package/dist/types/state/ManageFieldsSource.d.ts +21 -0
  1204. package/dist/types/state/ManageFieldsSource.d.ts.map +1 -0
  1205. package/dist/types/state/SchemaCard/SchemaCardState.d.ts +3 -1
  1206. package/dist/types/state/SchemaCard/SchemaCardState.d.ts.map +1 -1
  1207. package/dist/types/state/SchemaCard/SchemaFieldsState.d.ts +14 -2
  1208. package/dist/types/state/SchemaCard/SchemaFieldsState.d.ts.map +1 -1
  1209. package/dist/types/state/SidePanelsState.d.ts +8 -0
  1210. package/dist/types/state/SidePanelsState.d.ts.map +1 -1
  1211. package/dist/types/state/buildEditableFieldColumns.d.ts +5 -3
  1212. package/dist/types/state/buildEditableFieldColumns.d.ts.map +1 -1
  1213. package/dist/types/state/buildFieldColumns.d.ts.map +1 -1
  1214. package/dist/types/state/buildFieldFilters.d.ts +7 -3
  1215. package/dist/types/state/buildFieldFilters.d.ts.map +1 -1
  1216. package/dist/types/testkit/enzyme.d.ts +262 -232
  1217. package/dist/types/testkit/enzyme.d.ts.map +1 -1
  1218. package/dist/types/testkit/jsdom.d.ts +11331 -18136
  1219. package/dist/types/testkit/jsdom.d.ts.map +1 -1
  1220. package/dist/types/testkit/playwright.d.ts +13472 -288
  1221. package/dist/types/testkit/playwright.d.ts.map +1 -1
  1222. package/dist/types/testkit/puppeteer.d.ts +13484 -300
  1223. package/dist/types/testkit/puppeteer.d.ts.map +1 -1
  1224. package/dist/types/utils/datesUtil.d.ts +3 -2
  1225. package/dist/types/utils/datesUtil.d.ts.map +1 -1
  1226. package/dist/types/utils/useWindowFlipPopoverProps.d.ts +1 -1
  1227. package/dist/types/version.d.ts +1 -1
  1228. package/package.json +9 -9
  1229. package/src/components/ActionCell/DisabledActionCellMenu.tsx +1 -1
  1230. package/src/components/ArchivedItemsPanel/ArchivedItemsCTAButton.tsx +10 -4
  1231. package/src/components/ArchivedItemsPanel/ArchivedItemsList.tsx +5 -6
  1232. package/src/components/ArchivedItemsPanel/ArchivedItemsListItem.tsx +10 -5
  1233. package/src/components/CardContainer/CardContainer.st.css.ts +2 -2
  1234. package/src/components/CardContainer/CardContainer.tsx +1 -1
  1235. package/src/components/CmsFieldManagement/CmsFieldForm.st.css.ts +2 -2
  1236. package/src/components/CmsFieldManagement/CmsFieldModal.st.css.ts +2 -2
  1237. package/src/components/CmsFieldManagement/Sections/ValidationAndDefaultsSection.st.css.ts +2 -2
  1238. package/src/components/CmsFieldManagement/formFields/CharactersLimitInput.st.css.ts +2 -2
  1239. package/src/components/Collapse/Collapse.st.css.ts +2 -2
  1240. package/src/components/CollectionActionsBar.tsx +1 -1
  1241. package/src/components/CollectionAutoComplete/CollectionAutoComplete.tsx +4 -1
  1242. package/src/components/CollectionPageNew/CollectionPage.st.css.ts +2 -2
  1243. package/src/components/CollectionSectionHeader/CollectionSectionHeader.st.css.ts +2 -2
  1244. package/src/components/CollectionSectionHeader/CollectionSectionHeaderActionBar.tsx +1 -1
  1245. package/src/components/CollectionTable/CollectionTable.st.css.ts +2 -2
  1246. package/src/components/CollectionTable/CollectionTableWSRTable.st.css.ts +2 -2
  1247. package/src/components/CollectionToolbar/CollectionToolbar.st.css.ts +2 -2
  1248. package/src/components/CollectionToolbar/PrimaryActionButton.tsx +0 -1
  1249. package/src/components/CollectionToolbar/SearchOrCustomFilter.st.css.ts +2 -2
  1250. package/src/components/CollectionToolbar/ToolbarOverflowMenu.tsx +1 -1
  1251. package/src/components/CollectionViewsDropdown/AutoCompleteReadonly.st.css.ts +2 -2
  1252. package/src/components/CollectionViewsDropdown/ManageViewPopover.tsx +6 -4
  1253. package/src/components/CollectionViewsDropdown/SaveToNewViewFooter.tsx +4 -5
  1254. package/src/components/CollectionViewsDropdown/ViewsDropdown.st.css.ts +2 -2
  1255. package/src/components/CollectionViewsDropdown/ViewsDropdown.tsx +3 -1
  1256. package/src/components/CollectionViewsDropdown/modals/SaveView/CollectionSaveViewModal.tsx +1 -1
  1257. package/src/components/CollectionViewsDropdown/viewsDropdownRenderHelpers.tsx +4 -0
  1258. package/src/components/CustomColumnsPanel/ColumnListTableListItem.tsx +7 -4
  1259. package/src/components/CustomColumnsPanel/ColumnsList.tsx +11 -5
  1260. package/src/components/CustomColumnsPanel/CustomColumnsEntityPageContext.ts +18 -0
  1261. package/src/components/CustomColumnsPanel/CustomColumnsEntityPagePanelEntry.tsx +3 -9
  1262. package/src/components/CustomColumnsPanel/CustomColumnsEntityPagePanelMount.tsx +17 -10
  1263. package/src/components/CustomColumnsPanel/CustomColumnsNoResults.tsx +1 -1
  1264. package/src/components/CustomColumnsPanel/CustomColumnsPanel.tsx +38 -19
  1265. package/src/components/CustomColumnsPanel/CustomColumnsSearch.tsx +3 -0
  1266. package/src/components/CustomColumnsPanel/FieldIndications.tsx +1 -1
  1267. package/src/components/CustomFieldModal/CustomFieldForm.tsx +5 -1
  1268. package/src/components/CustomFieldModal/CustomFieldFormPiiFieldsV2.tsx +115 -0
  1269. package/src/components/CustomFieldModal/CustomFieldFormV2.tsx +206 -0
  1270. package/src/components/CustomFieldModal/CustomFieldFormV2Permissions.tsx +212 -0
  1271. package/src/components/CustomFieldModal/CustomFieldModal.tsx +61 -28
  1272. package/src/components/CustomFieldModal/CustomFieldModal.uni.driver.ts +21 -0
  1273. package/src/components/CustomFieldModal/CustomFieldTypeDropdownV2.tsx +134 -0
  1274. package/src/components/CustomFieldsPanel/FieldManagementModals.tsx +4 -9
  1275. package/src/components/CustomFieldsPanel/FieldsSourceAddFieldCTA.tsx +5 -7
  1276. package/src/components/CustomFieldsPanel/ManageFieldsCTAButton.tsx +1 -1
  1277. package/src/components/CustomFieldsWidget/ActionButtons.tsx +1 -1
  1278. package/src/components/CustomFieldsWidget/CustomFieldsViewWidgetSection.tsx +11 -5
  1279. package/src/components/CustomFieldsWidget/CustomFieldsWidgetCard.tsx +1 -1
  1280. package/src/components/CustomFieldsWidget/CustomFieldsWidgetInline.tsx +1 -1
  1281. package/src/components/CustomFieldsWidget/ErrorStateContent.tsx +1 -1
  1282. package/src/components/DataExtension/dataExtensionFieldManagement.ts +19 -0
  1283. package/src/components/DataExtension/manageCustomFieldsPageAction.tsx +1 -1
  1284. package/src/components/DateRangePicker/DateRangePicker.tsx +1 -1
  1285. package/src/components/DragHandle/DragHandle.st.css.ts +2 -2
  1286. package/src/components/EditableTable/EditableCell.st.css.ts +2 -2
  1287. package/src/components/EditableTable/EditableCell.tsx +1 -1
  1288. package/src/components/EditableTable/EditableTable.uni.driver.ts +6 -34
  1289. package/src/components/EditableTable/EditableTableContextMenu.tsx +131 -57
  1290. package/src/components/EditableTable/EditableTableContextMenu.uni.driver.ts +7 -0
  1291. package/src/components/EditableTable/HeaderActionsPopover.st.css.ts +2 -2
  1292. package/src/components/EditableTable/HeaderFieldActions.tsx +15 -0
  1293. package/src/components/EditableTable/cellTypes/CellViewLayout.st.css.ts +2 -2
  1294. package/src/components/EditableTable/cellTypes/address/Edit.st.css.ts +2 -2
  1295. package/src/components/EditableTable/cellTypes/array/Edit.st.css.ts +2 -2
  1296. package/src/components/EditableTable/cellTypes/boolean/Edit.st.css.ts +2 -2
  1297. package/src/components/EditableTable/cellTypes/boolean/View.st.css.ts +2 -2
  1298. package/src/components/EditableTable/cellTypes/color/Edit.st.css.ts +2 -2
  1299. package/src/components/EditableTable/cellTypes/date/Edit.st.css.ts +2 -2
  1300. package/src/components/EditableTable/cellTypes/date/View.st.css.ts +2 -2
  1301. package/src/components/EditableTable/cellTypes/datetime/Edit.st.css.ts +2 -2
  1302. package/src/components/EditableTable/cellTypes/datetime/View.st.css.ts +2 -2
  1303. package/src/components/EditableTable/cellTypes/email/Edit.st.css.ts +2 -2
  1304. package/src/components/EditableTable/cellTypes/email/View.st.css.ts +2 -2
  1305. package/src/components/EditableTable/cellTypes/number/Edit.st.css.ts +2 -2
  1306. package/src/components/EditableTable/cellTypes/number/View.st.css.ts +2 -2
  1307. package/src/components/EditableTable/cellTypes/object/Edit.st.css.ts +2 -2
  1308. package/src/components/EditableTable/cellTypes/object/View.st.css.ts +2 -2
  1309. package/src/components/EditableTable/cellTypes/reference/ReferenceEditWrapper.tsx +1 -1
  1310. package/src/components/EditableTable/cellTypes/reference/openCollectionContext.ts +1 -1
  1311. package/src/components/EditableTable/cellTypes/select/Edit.st.css.ts +2 -2
  1312. package/src/components/EditableTable/cellTypes/text/Edit.st.css.ts +2 -2
  1313. package/src/components/EditableTable/cellTypes/text/View.st.css.ts +2 -2
  1314. package/src/components/EditableTable/cellTypes/time/Edit.st.css.ts +2 -2
  1315. package/src/components/EditableTable/cellTypes/url/Edit.st.css.ts +2 -2
  1316. package/src/components/EditableTable/cellTypes/url/View.st.css.ts +2 -2
  1317. package/src/components/EditableTable/index.ts +1 -1
  1318. package/src/components/EditableTable/types.ts +19 -87
  1319. package/src/components/EmptyState/CollectionNoResultsState.tsx +1 -1
  1320. package/src/components/EmptyState/NewItemButton.tsx +1 -1
  1321. package/src/components/EntityPage/EntityPageColumnsPanelEntry.tsx +21 -0
  1322. package/src/components/EntityPage/EntityPagePlain.st.css.ts +2 -2
  1323. package/src/components/EntityPage/EntityPageSidePanels.tsx +36 -0
  1324. package/src/components/EntityPageFields/EntityPageField.tsx +16 -3
  1325. package/src/components/EntityPageFields/EntityPageFields.tsx +48 -34
  1326. package/src/components/EntityPageFields/EntityPageReferenceField.tsx +42 -3
  1327. package/src/components/ErrorState/OfflineErrorState.tsx +1 -1
  1328. package/src/components/ExportButton/ExportButton.tsx +6 -3
  1329. package/src/components/Fade/Fade.st.css.ts +2 -2
  1330. package/src/components/FieldActions/FieldActions.tsx +2 -6
  1331. package/src/components/FieldActions/FieldActionsPopover.tsx +7 -2
  1332. package/src/components/FieldActions/HeaderActionsPopover.tsx +1 -1
  1333. package/src/components/FieldActions/fieldTypeActions.tsx +56 -0
  1334. package/src/components/FieldActions/index.ts +5 -0
  1335. package/src/components/FieldActions/types.ts +1 -0
  1336. package/src/components/FieldCell/FieldCell.tsx +32 -14
  1337. package/src/components/FileCard/DownloadButton.tsx +1 -1
  1338. package/src/components/FileCard/FilePreviewModal.tsx +1 -1
  1339. package/src/components/FiltersPanel/FilterAccordionResetButton.tsx +4 -4
  1340. package/src/components/FiltersPanel/FilterAccordionTitle.tsx +3 -1
  1341. package/src/components/FiltersPanel/FiltersPanel.tsx +6 -1
  1342. package/src/components/FiltersPanel/FiltersPanelFooter.tsx +4 -2
  1343. package/src/components/FiltersPanel/FiltersPanelSearch.tsx +3 -0
  1344. package/src/components/FormPage/FormPageActionsBar.tsx +4 -2
  1345. package/src/components/Grid/useGridItemActions.tsx +1 -1
  1346. package/src/components/Heading/Heading.st.css.ts +2 -2
  1347. package/src/components/ImportButton/ImportButton.tsx +13 -3
  1348. package/src/components/ImportButton/ImportIdCollisionControl.tsx +1 -1
  1349. package/src/components/ImportButton/ImportRequiredFieldsSideNote.tsx +1 -1
  1350. package/src/components/ImportButton/ImportStepConfiguration.tsx +1 -1
  1351. package/src/components/ImportButton/ImportStepSummary.tsx +1 -1
  1352. package/src/components/ImportButton/ImportStepUpload.st.css.ts +2 -2
  1353. package/src/components/ImportButton/ImportStepper.tsx +5 -7
  1354. package/src/components/InputOverflow/InputOverflow.st.css.ts +2 -2
  1355. package/src/components/Kanban/StageActions.tsx +1 -1
  1356. package/src/components/Kanban/useCardActions.tsx +1 -1
  1357. package/src/components/LayoutSwitch/LayoutSwitch.uni.driver.ts +5 -3
  1358. package/src/components/LoadingRow/LoadingRow.st.css.ts +3 -3
  1359. package/src/components/MaxHeightText/MaxHeightText.st.css.ts +2 -2
  1360. package/src/components/MaxLines/MaxLines.st.css.ts +2 -2
  1361. package/src/components/MaxSelection.tsx +7 -2
  1362. package/src/components/MoreActions/ExploreAppsState.tsx +1 -1
  1363. package/src/components/MoreActions/MoreActionsIcon.tsx +1 -1
  1364. package/src/components/MoreActions/MoreActionsText.tsx +1 -1
  1365. package/src/components/MultiBulkActionToolbar/MultiBulkActionToolbar.st.css.ts +2 -2
  1366. package/src/components/MultiLevelSortingPanel/MultiLevelSortingList.tsx +13 -9
  1367. package/src/components/MultiLevelSortingPanel/MultiLevelSortingOrderSelect.tsx +1 -1
  1368. package/src/components/MultiLevelSortingPanel/MultiLevelSortingPanel.tsx +3 -2
  1369. package/src/components/MultiLevelSortingPanel/MultiLevelSortingTableListItem.tsx +8 -2
  1370. package/src/components/MultiSelectCheckboxFilterBase/MultiSelectCheckboxFilterBase.tsx +2 -1
  1371. package/src/components/MultiSelectFilterBase/MultiSelectFilterBase.tsx +2 -2
  1372. package/src/components/NestedTable/NestedTableMainColumnTitle.tsx +1 -1
  1373. package/src/components/NestedTable/NestedTableParentCell.tsx +1 -1
  1374. package/src/components/NestedTable/NestedTablePlaceholderStatesRow.st.css.ts +2 -2
  1375. package/src/components/NestedTable/NestedTableRow.st.css.ts +2 -2
  1376. package/src/components/NestedTableDragAndDrop/DepthLimitMessage.tsx +1 -1
  1377. package/src/components/NestedTableDragAndDrop/DragAndDropDisabledMessage.tsx +1 -1
  1378. package/src/components/NestedTableDragAndDrop/MultipleDragOverlayEffect.st.css.ts +2 -2
  1379. package/src/components/NestedTableDragAndDrop/NestedTableDragAndDropRow.st.css.ts +2 -2
  1380. package/src/components/NumberRangeFilter/NumberRangeFilter.tsx +7 -2
  1381. package/src/components/OperatorFilterPicker/OperatorFilterPicker.tsx +8 -2
  1382. package/src/components/PageErrorState/PageErrorState.tsx +1 -1
  1383. package/src/components/PickerContent/PickerContent.st.css.ts +2 -2
  1384. package/src/components/PickerContent/PickerContent.tsx +3 -0
  1385. package/src/components/PickerContent/PickerContentAdditionalStep.st.css.ts +2 -2
  1386. package/src/components/PickerContent/PickerContentAdditionalStep.tsx +7 -2
  1387. package/src/components/PickerEmptyState/PickerEmptyState.tsx +1 -1
  1388. package/src/components/PickerStandaloneLayout/PickerStandaloneLayoutFooter.tsx +1 -1
  1389. package/src/components/PickerStandaloneLayout/PickerStandaloneLayoutHeader.tsx +1 -1
  1390. package/src/components/PickerTableListItem/PickerTableListItem.st.css.ts +2 -2
  1391. package/src/components/PickerTableListItem/PickerTableListItem.tsx +1 -1
  1392. package/src/components/PrimaryActions/PrimaryActions.tsx +1 -1
  1393. package/src/components/PrimaryPageButton/PrimaryPageButton.tsx +1 -1
  1394. package/src/components/RequestId/RequestId.tsx +1 -1
  1395. package/src/components/SchemaCard/SchemaCard.tsx +1 -1
  1396. package/src/components/SchemaSource/ReferenceFieldCell.tsx +98 -0
  1397. package/src/components/SchemaSource/SchemaState.ts +8 -2
  1398. package/src/components/SchemaSource/referenceCells.ts +141 -0
  1399. package/src/components/SchemaSource/schemaFieldManagement.ts +15 -0
  1400. package/src/components/SchemaSource/schemaFieldsSource.ts +1 -0
  1401. package/src/components/SchemaSource/schemaRendering.tsx +22 -0
  1402. package/src/components/SchemaSource/tableSchemaSource.ts +9 -0
  1403. package/src/components/ScrollableContent/ScrollableContent.st.css.ts +2 -2
  1404. package/src/components/SetupWidget/SetupStepCard.tsx +1 -1
  1405. package/src/components/SetupWidget/SetupStepGroup.tsx +1 -1
  1406. package/src/components/SetupWidget/SetupStepIcon.tsx +1 -1
  1407. package/src/components/SetupWidget/SetupWidget.st.css.ts +2 -2
  1408. package/src/components/SingleSelectFilterBase/SingleSelectFilterBase.tsx +2 -1
  1409. package/src/components/SkeletonCard/SkeletonCard.st.css.ts +2 -2
  1410. package/src/components/SlidingModal/SlidingModal.st.css.ts +2 -2
  1411. package/src/components/Table/AddFieldColumnHeader.st.css.ts +2 -2
  1412. package/src/components/Table/AddFieldColumnHeader.tsx +1 -1
  1413. package/src/components/Table/Table.uni.driver.ts +13 -8
  1414. package/src/components/TabsFilter/TabsFilter.st.css.ts +2 -2
  1415. package/src/components/Tags/BulkAssignTagsPopover/CreateTagButton.tsx +4 -1
  1416. package/src/components/Tags/BulkAssignTagsPopover/Footer.tsx +4 -1
  1417. package/src/components/Tags/ManageTags/ManageTagsModal/List/TagListItemView.tsx +7 -5
  1418. package/src/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css +10 -1
  1419. package/src/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.st.css.ts +2 -2
  1420. package/src/components/Tags/ManageTags/ManageTagsModal/ManageTagsModal.tsx +29 -7
  1421. package/src/components/Tags/ManageTags/ManageTagsModal/TagItemEditable.tsx +83 -9
  1422. package/src/components/Tags/manageTagsPageAction.tsx +1 -1
  1423. package/src/components/TagsAssignButton/TagsAssignButton.tsx +1 -1
  1424. package/src/components/TagsWidget/TagsWidget.tsx +1 -1
  1425. package/src/components/TagsWidget/TagsWidgetContent.tsx +1 -1
  1426. package/src/components/ToolbarCollection/useToolbarCollectionSyncProps.ts +19 -18
  1427. package/src/components/ToolbarItem/ToolbarItem.st.css.ts +2 -2
  1428. package/src/components/ToolbarItemBox/ToolbarItemBox.st.css.ts +2 -2
  1429. package/src/components/common.st.css.ts +2 -2
  1430. package/src/components/deleteSecondaryAction/deleteSecondaryAction.tsx +1 -1
  1431. package/src/exports/schema.ts +30 -2
  1432. package/src/fields/DateInput/DateInput.tsx +9 -6
  1433. package/src/fields/Url/Url.tsx +1 -1
  1434. package/src/hooks/useBuildOption.ts +4 -0
  1435. package/src/index.ts +19 -0
  1436. package/src/model/schemaFieldsContainer.ts +18 -0
  1437. package/src/providers/PatternsFieldsProvider.tsx +25 -3
  1438. package/src/providers/SchemaFieldsProvider.tsx +47 -0
  1439. package/src/providers/index.ts +1 -0
  1440. package/src/schema/EditableTable.tsx +38 -0
  1441. package/src/schema/EntityPage.tsx +40 -0
  1442. package/src/schema/EntityPageFieldsCard.tsx +138 -0
  1443. package/src/schema/Grid.tsx +29 -0
  1444. package/src/schema/LayoutSwitch.tsx +78 -0
  1445. package/src/schema/Table.tsx +43 -0
  1446. package/src/schema/entityPageFieldManagement.ts +44 -0
  1447. package/src/schema/index.ts +10 -0
  1448. package/src/schema/schemaCollectionOptions.ts +2 -11
  1449. package/src/schema/sourceMutations.ts +24 -4
  1450. package/src/schema/syncSourcePermissions.ts +27 -0
  1451. package/src/schema/useEditableTableCollection.ts +18 -28
  1452. package/src/schema/useEntityPage.ts +105 -0
  1453. package/src/schema/useLayoutSwitchCollection.ts +22 -21
  1454. package/src/schema/usePlatformizedSource.ts +26 -11
  1455. package/src/schema/useSchemaSource.ts +52 -0
  1456. package/src/state/CollectionFieldsSourceState.ts +31 -6
  1457. package/src/state/CollectionPage/CollectionPageHeader.st.css.ts +2 -2
  1458. package/src/state/CustomColumnsEntityPageState.ts +46 -6
  1459. package/src/state/CustomColumnsPanelStateBase.ts +10 -5
  1460. package/src/state/CustomColumnsState.ts +1 -1
  1461. package/src/state/CustomFields/CustomFieldsPanelState.ts +21 -1
  1462. package/src/state/EditableTable/CellValueState.ts +26 -13
  1463. package/src/state/EditableTable/EditableTableState.ts +5 -0
  1464. package/src/state/EditableTable/fieldTypeToCellType.ts +5 -3
  1465. package/src/state/EditableTable/types.ts +7 -12
  1466. package/src/state/EntityPage/EntityPageState.ts +40 -1
  1467. package/src/state/EntityPage/resolveEntityPageFields.ts +25 -0
  1468. package/src/state/EntityPageFieldsCardState.ts +193 -0
  1469. package/src/state/FormPage/FormPageHeader.st.css.ts +2 -2
  1470. package/src/state/ManageFieldsSource.ts +24 -0
  1471. package/src/state/SchemaCard/SchemaCardState.ts +6 -3
  1472. package/src/state/SchemaCard/SchemaFieldsState.ts +31 -7
  1473. package/src/state/SidePanelsState.ts +15 -0
  1474. package/src/state/buildEditableFieldColumns.ts +72 -8
  1475. package/src/state/buildFieldColumns.tsx +9 -1
  1476. package/src/state/buildFieldFilters.tsx +64 -7
  1477. package/src/styles.global.css +2 -2
  1478. package/src/test-utils/WixPatternsEssentialsTestProvider.tsx +2 -2
  1479. package/src/testkit/jsdom.ts +7 -2
  1480. package/src/themes/panel-theme.tsx +1 -1
  1481. package/src/utils/datesUtil.ts +21 -4
  1482. package/src/utils/fieldTypePrefixIcons.tsx +1 -1
  1483. package/src/version.ts +1 -1
  1484. package/dist/cjs/components/EditableTable/useOpenCollectionOverlay.js.map +0 -1
  1485. package/dist/esm/components/EditableTable/useOpenCollectionOverlay.js.map +0 -1
  1486. package/dist/types/components/EditableTable/useOpenCollectionOverlay.d.ts.map +0 -1
  1487. /package/dist/cjs/{components/EditableTable → hooks}/useOpenCollectionOverlay.js +0 -0
  1488. /package/dist/esm/{components/EditableTable → hooks}/useOpenCollectionOverlay.js +0 -0
  1489. /package/dist/types/{components/EditableTable → hooks}/useOpenCollectionOverlay.d.ts +0 -0
  1490. /package/src/{components/EditableTable → hooks}/useOpenCollectionOverlay.ts +0 -0
@@ -33,7 +33,7 @@ class CellValueState {
33
33
  get _cellTypeMap() {
34
34
  const map = new Map();
35
35
  for (const col of this._parent.allColumns) {
36
- if (col.cellType === 'custom' && col.typeConfig && typeof col.typeConfig === 'object' && 'ViewComponent' in col.typeConfig) {
36
+ if (col.cellType === 'custom' && col.typeConfig) {
37
37
  map.set(col.id, {
38
38
  type: 'custom',
39
39
  ...col.typeConfig
@@ -75,7 +75,18 @@ class CellValueState {
75
75
  if (resolved.editable === false || !resolved.EditComponent) {
76
76
  return false;
77
77
  }
78
- if (!column.setValue) {
78
+ return this.isColumnEditable(rowKey, columnId);
79
+ }
80
+
81
+ /**
82
+ * Whether `column.editable` permits writing this cell for this row,
83
+ * independent of whether the cell type has an inline EditComponent. Gates
84
+ * bulk/programmatic writes (clear, cut, paste) — narrower than
85
+ * isCellEditable, which also requires an edit UI to exist.
86
+ */
87
+ isColumnEditable(rowKey, columnId) {
88
+ const column = this._parent._columnMap.get(columnId);
89
+ if (!(column != null && column.setValue)) {
79
90
  return false;
80
91
  }
81
92
  if (typeof column.editable === 'function') {
@@ -98,7 +109,7 @@ class CellValueState {
98
109
  return resolved.serialize ? resolved.serialize(value) : String(value ?? '');
99
110
  }
100
111
 
101
- /** Clear selected cells (Delete/Backspace). Respects cellType.clearable. */
112
+ /** Clear selected cells (Delete/Backspace). Respects cellType.clearable and column.editable. */
102
113
  clearCells(cells) {
103
114
  const changes = [];
104
115
  for (const cell of cells) {
@@ -110,6 +121,9 @@ class CellValueState {
110
121
  if (resolved.clearable === false) {
111
122
  continue;
112
123
  }
124
+ if (!this.isColumnEditable(cell.rowKey, cell.columnId)) {
125
+ continue;
126
+ }
113
127
  const pendingKey = this._pendingCellKey(cell.rowKey, cell.columnId);
114
128
  if (pendingKey) {
115
129
  this._pendingCells.delete(pendingKey);
@@ -228,6 +242,9 @@ class CellValueState {
228
242
  /**
229
243
  * Apply multiple cell values in bulk. Validates per cell, accumulates
230
244
  * changes per row, and submits all modified items in a single update.
245
+ * Every mutation path (clear, paste, cut) funnels through here, so
246
+ * checking isColumnEditable here — not just at the call sites — keeps
247
+ * read-only cells protected regardless of entry point.
231
248
  */
232
249
  applyBulkValues(changes) {
233
250
  const rowItems = new Map();
@@ -239,7 +256,7 @@ class CellValueState {
239
256
  var _this$_parent$collect;
240
257
  const column = this._parent._columnMap.get(columnId);
241
258
  const keyedItem = this._parent._getKeyedItem(rowKey);
242
- if (!(column != null && column.setValue) || !keyedItem) {
259
+ if (!(column != null && column.setValue) || !keyedItem || !this.isColumnEditable(rowKey, columnId)) {
243
260
  continue;
244
261
  }
245
262
  const resolved = this.resolveCellTypeByColumnId(column.id);
@@ -1 +1 @@
1
- {"version":3,"names":["_mobx","require","_cellTypes","_utils","builtInCellTypeMap","Map","builtInCellTypes","map","ct","type","CellValueState","constructor","parent","extraCellTypes","_defineProperty2","default","_parent","_extraCellTypes","makeObservable","_pendingCells","observable","_cellTypeMap","computed","clearCells","action","toggleCell","commitHandler","applyBulkRawValues","applyBulkValues","col","allColumns","cellType","typeConfig","set","id","get","textCellType","resolveCellTypeByColumnId","columnId","getCellDisplayValue","rowKey","pending","_getPendingCell","value","column","_columnMap","keyedItem","_getKeyedItem","getValue","item","undefined","getCellValidation","valid","errors","validResult","isCellEditable","resolved","editable","EditComponent","setValue","serializeCellValue","serialize","String","cells","changes","cell","clearable","pendingKey","_pendingCellKey","delete","deserialize","push","length","toggleValue","newValue","updatedItem","mutation","updateItems","editingValue","normalized","normalizeOnCommit","_applyValue","key","tryDeserialize","rawValue","error","rawChanges","rowItems","_this$_parent$collect","result","runCellValidation","validation","validate","collection","translate","currentItem","Array","from","values","_this$_parent$collect2","exports"],"sources":["../../../../src/state/EditableTable/CellValueState.ts"],"sourcesContent":["import { action, computed, makeObservable, observable } from 'mobx';\nimport type { CellType, Cell, ValidationResult } from './types';\nimport type { FiltersMap } from '@wix/bex-core';\nimport type { EditableTableState } from './EditableTableState';\nimport {\n builtInCellTypes,\n textCellType,\n} from '../../components/EditableTable/cellTypes';\nimport { runCellValidation, validResult } from './utils';\n\nconst builtInCellTypeMap = new Map<string, CellType>(\n builtInCellTypes.map((ct) => [ct.type, ct]),\n);\n\nexport class CellValueState<T, F extends FiltersMap> {\n /** Pending invalid cell values, keyed by `${itemId}:${colId}`. */\n readonly _pendingCells = new Map<string, { value: any; errors: string[] }>();\n\n private readonly _parent: EditableTableState<T, F>;\n private readonly _extraCellTypes: Map<string, CellType>;\n\n constructor(\n parent: EditableTableState<T, F>,\n extraCellTypes: Map<string, CellType> = new Map(),\n ) {\n this._parent = parent;\n this._extraCellTypes = extraCellTypes;\n\n makeObservable(this, {\n _pendingCells: observable,\n _cellTypeMap: computed,\n clearCells: action,\n toggleCell: action,\n commitHandler: action,\n applyBulkRawValues: action,\n applyBulkValues: action,\n });\n }\n\n // Cell-type config per column id, from the merged columns (consumer columns\n // plus the columns the wired source adds). A computed so source columns that\n // load after init still get their cell types registered, without a rebuild.\n get _cellTypeMap(): Map<string, CellType> {\n const map = new Map<string, CellType>();\n for (const col of this._parent.allColumns) {\n if (\n col.cellType === 'custom' &&\n col.typeConfig &&\n typeof col.typeConfig === 'object' &&\n 'ViewComponent' in col.typeConfig\n ) {\n map.set(col.id, {\n type: 'custom',\n ...(col.typeConfig as Omit<CellType, 'type'>),\n });\n } else {\n map.set(\n col.id,\n builtInCellTypeMap.get(col.cellType) ??\n this._extraCellTypes.get(col.cellType) ??\n textCellType,\n );\n }\n }\n return map;\n }\n\n resolveCellTypeByColumnId(columnId: string): CellType {\n return this._cellTypeMap.get(columnId) ?? textCellType;\n }\n\n getCellDisplayValue(rowKey: string, columnId: string): any {\n const pending = this._getPendingCell(rowKey, columnId);\n if (pending) {\n return pending.value;\n }\n const column = this._parent._columnMap.get(columnId);\n const keyedItem = this._parent._getKeyedItem(rowKey);\n return column && keyedItem ? column.getValue(keyedItem.item) : undefined;\n }\n\n getCellValidation(rowKey: string, columnId: string): ValidationResult {\n const pending = this._getPendingCell(rowKey, columnId);\n if (pending) {\n return { valid: false, errors: pending.errors };\n }\n return validResult;\n }\n\n isCellEditable(rowKey: string, columnId: string): boolean {\n const column = this._parent._columnMap.get(columnId);\n if (!column) {\n return false;\n }\n\n const resolved = this.resolveCellTypeByColumnId(column.id);\n if (resolved.editable === false || !resolved.EditComponent) {\n return false;\n }\n if (!column.setValue) {\n return false;\n }\n\n if (typeof column.editable === 'function') {\n const keyedItem = this._parent._getKeyedItem(rowKey);\n return keyedItem ? column.editable(keyedItem.item) : false;\n }\n return column.editable !== false;\n }\n\n /** Serialize a cell value to a string (for clipboard copy/cut). */\n serializeCellValue(rowKey: string, columnId: string): string {\n const column = this._parent._columnMap.get(columnId);\n const keyedItem = this._parent._getKeyedItem(rowKey);\n if (!column || !keyedItem) {\n return '';\n }\n const resolved = this.resolveCellTypeByColumnId(column.id);\n const pending = this._getPendingCell(rowKey, columnId);\n const value = pending ? pending.value : column.getValue(keyedItem.item);\n return resolved.serialize ? resolved.serialize(value) : String(value ?? '');\n }\n\n /** Clear selected cells (Delete/Backspace). Respects cellType.clearable. */\n clearCells(cells: Cell[]) {\n const changes: { rowKey: string; columnId: string; value: any }[] = [];\n\n for (const cell of cells) {\n const column = this._parent._columnMap.get(cell.columnId);\n if (!column?.setValue) {\n continue;\n }\n const resolved = this.resolveCellTypeByColumnId(column.id);\n if (resolved.clearable === false) {\n continue;\n }\n\n const pendingKey = this._pendingCellKey(cell.rowKey, cell.columnId);\n if (pendingKey) {\n this._pendingCells.delete(pendingKey);\n }\n const value = resolved.deserialize ? resolved.deserialize('') : '';\n changes.push({ rowKey: cell.rowKey, columnId: cell.columnId, value });\n }\n\n if (changes.length > 0) {\n this.applyBulkValues(changes);\n }\n }\n\n toggleCell(rowKey: string, columnId: string) {\n const column = this._parent._columnMap.get(columnId);\n const keyedItem = this._parent._getKeyedItem(rowKey);\n if (!column?.setValue || !keyedItem) {\n return;\n }\n\n const resolved = this.resolveCellTypeByColumnId(column.id);\n if (!resolved.toggleValue) {\n return;\n }\n\n const value = column.getValue(keyedItem.item);\n const newValue = resolved.toggleValue(value);\n const updatedItem = column.setValue(keyedItem.item, newValue);\n this._parent.mutation.updateItems([updatedItem]);\n }\n\n /** Commit handler — used as callback for CellInteractionState. */\n commitHandler(editingValue: any, cell: Cell) {\n if (editingValue !== undefined) {\n const resolved = this.resolveCellTypeByColumnId(cell.columnId);\n const normalized = resolved.normalizeOnCommit\n ? resolved.normalizeOnCommit(editingValue)\n : editingValue;\n this._applyValue(cell.rowKey, cell.columnId, normalized);\n }\n }\n\n private _getPendingCell(\n rowKey: string,\n columnId: string,\n ): { value: any; errors: string[] } | undefined {\n const key = this._pendingCellKey(rowKey, columnId);\n return key ? this._pendingCells.get(key) : undefined;\n }\n\n private _pendingCellKey(\n rowKey: string,\n columnId: string,\n ): string | undefined {\n const keyedItem = this._parent._getKeyedItem(rowKey);\n const column = this._parent._columnMap.get(columnId);\n if (!keyedItem || !column) {\n return undefined;\n }\n return `${keyedItem.key}:${column.id}`;\n }\n\n /**\n * Deserialize a raw string to a typed value. Returns an error message\n * if the conversion fails\n */\n tryDeserialize(\n columnId: string,\n rawValue: string,\n ): { value: any; error?: string } {\n const column = this._parent._columnMap.get(columnId);\n if (!column) {\n return { value: rawValue };\n }\n const resolved = this.resolveCellTypeByColumnId(column.id);\n if (!resolved.deserialize) {\n return { value: rawValue };\n }\n try {\n return { value: resolved.deserialize(rawValue) };\n } catch {\n return { value: rawValue, error: 'Value is not compatible' };\n }\n }\n\n /**\n * Deserialize and apply multiple raw string values in bulk.\n * Handles conversion failures by storing them as pending cells.\n */\n applyBulkRawValues(\n rawChanges: { rowKey: string; columnId: string; rawValue: string }[],\n ) {\n const changes: { rowKey: string; columnId: string; value: any }[] = [];\n for (const { rowKey, columnId, rawValue } of rawChanges) {\n const { value, error } = this.tryDeserialize(columnId, rawValue);\n if (error) {\n const pendingKey = this._pendingCellKey(rowKey, columnId);\n if (pendingKey) {\n this._pendingCells.set(pendingKey, { value, errors: [error] });\n }\n } else {\n changes.push({ rowKey, columnId, value });\n }\n }\n this.applyBulkValues(changes);\n }\n\n /**\n * Apply multiple cell values in bulk. Validates per cell, accumulates\n * changes per row, and submits all modified items in a single update.\n */\n applyBulkValues(changes: { rowKey: string; columnId: string; value: any }[]) {\n const rowItems = new Map<string, T>();\n\n for (const { rowKey, columnId, value } of changes) {\n const column = this._parent._columnMap.get(columnId);\n const keyedItem = this._parent._getKeyedItem(rowKey);\n if (!column?.setValue || !keyedItem) {\n continue;\n }\n\n const resolved = this.resolveCellTypeByColumnId(column.id);\n const result = runCellValidation(\n value,\n column.validation,\n resolved.validate,\n this._parent.collection?.translate,\n );\n const pendingKey = this._pendingCellKey(rowKey, columnId);\n\n if (result.valid) {\n if (pendingKey) {\n this._pendingCells.delete(pendingKey);\n }\n const currentItem = rowItems.get(rowKey) ?? keyedItem.item;\n rowItems.set(rowKey, column.setValue(currentItem, value));\n } else if (pendingKey) {\n this._pendingCells.set(pendingKey, {\n value,\n errors: result.errors ?? [],\n });\n }\n }\n\n this._parent.mutation.updateItems(Array.from(rowItems.values()));\n }\n\n private _applyValue(rowKey: string, columnId: string, value: any) {\n const column = this._parent._columnMap.get(columnId);\n const keyedItem = this._parent._getKeyedItem(rowKey);\n if (!column?.setValue || !keyedItem) {\n return;\n }\n\n const resolved = this.resolveCellTypeByColumnId(column.id);\n const result = runCellValidation(\n value,\n column.validation,\n resolved.validate,\n this._parent.collection?.translate,\n );\n const pendingKey = this._pendingCellKey(rowKey, columnId);\n\n if (result.valid) {\n if (pendingKey) {\n this._pendingCells.delete(pendingKey);\n }\n const updatedItem = column.setValue(keyedItem.item, value);\n this._parent.mutation.updateItems([updatedItem]);\n } else if (pendingKey) {\n this._pendingCells.set(pendingKey, {\n value,\n errors: result.errors ?? [],\n });\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_mobx","require","_cellTypes","_utils","builtInCellTypeMap","Map","builtInCellTypes","map","ct","type","CellValueState","constructor","parent","extraCellTypes","_defineProperty2","default","_parent","_extraCellTypes","makeObservable","_pendingCells","observable","_cellTypeMap","computed","clearCells","action","toggleCell","commitHandler","applyBulkRawValues","applyBulkValues","col","allColumns","cellType","typeConfig","set","id","get","textCellType","resolveCellTypeByColumnId","columnId","getCellDisplayValue","rowKey","pending","_getPendingCell","value","column","_columnMap","keyedItem","_getKeyedItem","getValue","item","undefined","getCellValidation","valid","errors","validResult","isCellEditable","resolved","editable","EditComponent","isColumnEditable","setValue","serializeCellValue","serialize","String","cells","changes","cell","clearable","pendingKey","_pendingCellKey","delete","deserialize","push","length","toggleValue","newValue","updatedItem","mutation","updateItems","editingValue","normalized","normalizeOnCommit","_applyValue","key","tryDeserialize","rawValue","error","rawChanges","rowItems","_this$_parent$collect","result","runCellValidation","validation","validate","collection","translate","currentItem","Array","from","values","_this$_parent$collect2","exports"],"sources":["../../../../src/state/EditableTable/CellValueState.ts"],"sourcesContent":["import { action, computed, makeObservable, observable } from 'mobx';\nimport type { CellType, Cell, ValidationResult } from './types';\nimport type { FiltersMap } from '@wix/bex-core';\nimport type { EditableTableState } from './EditableTableState';\nimport {\n builtInCellTypes,\n textCellType,\n} from '../../components/EditableTable/cellTypes';\nimport { runCellValidation, validResult } from './utils';\n\nconst builtInCellTypeMap = new Map<string, CellType>(\n builtInCellTypes.map((ct) => [ct.type, ct]),\n);\n\nexport class CellValueState<T, F extends FiltersMap> {\n /** Pending invalid cell values, keyed by `${itemId}:${colId}`. */\n readonly _pendingCells = new Map<string, { value: any; errors: string[] }>();\n\n private readonly _parent: EditableTableState<T, F>;\n private readonly _extraCellTypes: Map<string, CellType>;\n\n constructor(\n parent: EditableTableState<T, F>,\n extraCellTypes: Map<string, CellType> = new Map(),\n ) {\n this._parent = parent;\n this._extraCellTypes = extraCellTypes;\n\n makeObservable(this, {\n _pendingCells: observable,\n _cellTypeMap: computed,\n clearCells: action,\n toggleCell: action,\n commitHandler: action,\n applyBulkRawValues: action,\n applyBulkValues: action,\n });\n }\n\n // Cell-type config per column id, from the merged columns (consumer columns\n // plus the columns the wired source adds). A computed so source columns that\n // load after init still get their cell types registered, without a rebuild.\n get _cellTypeMap(): Map<string, CellType> {\n const map = new Map<string, CellType>();\n for (const col of this._parent.allColumns) {\n if (col.cellType === 'custom' && col.typeConfig) {\n map.set(col.id, { type: 'custom', ...col.typeConfig });\n } else {\n map.set(\n col.id,\n builtInCellTypeMap.get(col.cellType) ??\n this._extraCellTypes.get(col.cellType) ??\n textCellType,\n );\n }\n }\n return map;\n }\n\n resolveCellTypeByColumnId(columnId: string): CellType {\n return this._cellTypeMap.get(columnId) ?? textCellType;\n }\n\n getCellDisplayValue(rowKey: string, columnId: string): any {\n const pending = this._getPendingCell(rowKey, columnId);\n if (pending) {\n return pending.value;\n }\n const column = this._parent._columnMap.get(columnId);\n const keyedItem = this._parent._getKeyedItem(rowKey);\n return column && keyedItem ? column.getValue(keyedItem.item) : undefined;\n }\n\n getCellValidation(rowKey: string, columnId: string): ValidationResult {\n const pending = this._getPendingCell(rowKey, columnId);\n if (pending) {\n return { valid: false, errors: pending.errors };\n }\n return validResult;\n }\n\n isCellEditable(rowKey: string, columnId: string): boolean {\n const column = this._parent._columnMap.get(columnId);\n if (!column) {\n return false;\n }\n\n const resolved = this.resolveCellTypeByColumnId(column.id);\n if (resolved.editable === false || !resolved.EditComponent) {\n return false;\n }\n return this.isColumnEditable(rowKey, columnId);\n }\n\n /**\n * Whether `column.editable` permits writing this cell for this row,\n * independent of whether the cell type has an inline EditComponent. Gates\n * bulk/programmatic writes (clear, cut, paste) — narrower than\n * isCellEditable, which also requires an edit UI to exist.\n */\n isColumnEditable(rowKey: string, columnId: string): boolean {\n const column = this._parent._columnMap.get(columnId);\n if (!column?.setValue) {\n return false;\n }\n\n if (typeof column.editable === 'function') {\n const keyedItem = this._parent._getKeyedItem(rowKey);\n return keyedItem ? column.editable(keyedItem.item) : false;\n }\n return column.editable !== false;\n }\n\n /** Serialize a cell value to a string (for clipboard copy/cut). */\n serializeCellValue(rowKey: string, columnId: string): string {\n const column = this._parent._columnMap.get(columnId);\n const keyedItem = this._parent._getKeyedItem(rowKey);\n if (!column || !keyedItem) {\n return '';\n }\n const resolved = this.resolveCellTypeByColumnId(column.id);\n const pending = this._getPendingCell(rowKey, columnId);\n const value = pending ? pending.value : column.getValue(keyedItem.item);\n return resolved.serialize ? resolved.serialize(value) : String(value ?? '');\n }\n\n /** Clear selected cells (Delete/Backspace). Respects cellType.clearable and column.editable. */\n clearCells(cells: Cell[]) {\n const changes: { rowKey: string; columnId: string; value: any }[] = [];\n\n for (const cell of cells) {\n const column = this._parent._columnMap.get(cell.columnId);\n if (!column?.setValue) {\n continue;\n }\n const resolved = this.resolveCellTypeByColumnId(column.id);\n if (resolved.clearable === false) {\n continue;\n }\n if (!this.isColumnEditable(cell.rowKey, cell.columnId)) {\n continue;\n }\n\n const pendingKey = this._pendingCellKey(cell.rowKey, cell.columnId);\n if (pendingKey) {\n this._pendingCells.delete(pendingKey);\n }\n const value = resolved.deserialize ? resolved.deserialize('') : '';\n changes.push({ rowKey: cell.rowKey, columnId: cell.columnId, value });\n }\n\n if (changes.length > 0) {\n this.applyBulkValues(changes);\n }\n }\n\n toggleCell(rowKey: string, columnId: string) {\n const column = this._parent._columnMap.get(columnId);\n const keyedItem = this._parent._getKeyedItem(rowKey);\n if (!column?.setValue || !keyedItem) {\n return;\n }\n\n const resolved = this.resolveCellTypeByColumnId(column.id);\n if (!resolved.toggleValue) {\n return;\n }\n\n const value = column.getValue(keyedItem.item);\n const newValue = resolved.toggleValue(value);\n const updatedItem = column.setValue(keyedItem.item, newValue);\n this._parent.mutation.updateItems([updatedItem]);\n }\n\n /** Commit handler — used as callback for CellInteractionState. */\n commitHandler(editingValue: any, cell: Cell) {\n if (editingValue !== undefined) {\n const resolved = this.resolveCellTypeByColumnId(cell.columnId);\n const normalized = resolved.normalizeOnCommit\n ? resolved.normalizeOnCommit(editingValue)\n : editingValue;\n this._applyValue(cell.rowKey, cell.columnId, normalized);\n }\n }\n\n private _getPendingCell(\n rowKey: string,\n columnId: string,\n ): { value: any; errors: string[] } | undefined {\n const key = this._pendingCellKey(rowKey, columnId);\n return key ? this._pendingCells.get(key) : undefined;\n }\n\n private _pendingCellKey(\n rowKey: string,\n columnId: string,\n ): string | undefined {\n const keyedItem = this._parent._getKeyedItem(rowKey);\n const column = this._parent._columnMap.get(columnId);\n if (!keyedItem || !column) {\n return undefined;\n }\n return `${keyedItem.key}:${column.id}`;\n }\n\n /**\n * Deserialize a raw string to a typed value. Returns an error message\n * if the conversion fails\n */\n tryDeserialize(\n columnId: string,\n rawValue: string,\n ): { value: any; error?: string } {\n const column = this._parent._columnMap.get(columnId);\n if (!column) {\n return { value: rawValue };\n }\n const resolved = this.resolveCellTypeByColumnId(column.id);\n if (!resolved.deserialize) {\n return { value: rawValue };\n }\n try {\n return { value: resolved.deserialize(rawValue) };\n } catch {\n return { value: rawValue, error: 'Value is not compatible' };\n }\n }\n\n /**\n * Deserialize and apply multiple raw string values in bulk.\n * Handles conversion failures by storing them as pending cells.\n */\n applyBulkRawValues(\n rawChanges: { rowKey: string; columnId: string; rawValue: string }[],\n ) {\n const changes: { rowKey: string; columnId: string; value: any }[] = [];\n for (const { rowKey, columnId, rawValue } of rawChanges) {\n const { value, error } = this.tryDeserialize(columnId, rawValue);\n if (error) {\n const pendingKey = this._pendingCellKey(rowKey, columnId);\n if (pendingKey) {\n this._pendingCells.set(pendingKey, { value, errors: [error] });\n }\n } else {\n changes.push({ rowKey, columnId, value });\n }\n }\n this.applyBulkValues(changes);\n }\n\n /**\n * Apply multiple cell values in bulk. Validates per cell, accumulates\n * changes per row, and submits all modified items in a single update.\n * Every mutation path (clear, paste, cut) funnels through here, so\n * checking isColumnEditable here — not just at the call sites — keeps\n * read-only cells protected regardless of entry point.\n */\n applyBulkValues(changes: { rowKey: string; columnId: string; value: any }[]) {\n const rowItems = new Map<string, T>();\n\n for (const { rowKey, columnId, value } of changes) {\n const column = this._parent._columnMap.get(columnId);\n const keyedItem = this._parent._getKeyedItem(rowKey);\n if (\n !column?.setValue ||\n !keyedItem ||\n !this.isColumnEditable(rowKey, columnId)\n ) {\n continue;\n }\n\n const resolved = this.resolveCellTypeByColumnId(column.id);\n const result = runCellValidation(\n value,\n column.validation,\n resolved.validate,\n this._parent.collection?.translate,\n );\n const pendingKey = this._pendingCellKey(rowKey, columnId);\n\n if (result.valid) {\n if (pendingKey) {\n this._pendingCells.delete(pendingKey);\n }\n const currentItem = rowItems.get(rowKey) ?? keyedItem.item;\n rowItems.set(rowKey, column.setValue(currentItem, value));\n } else if (pendingKey) {\n this._pendingCells.set(pendingKey, {\n value,\n errors: result.errors ?? [],\n });\n }\n }\n\n this._parent.mutation.updateItems(Array.from(rowItems.values()));\n }\n\n private _applyValue(rowKey: string, columnId: string, value: any) {\n const column = this._parent._columnMap.get(columnId);\n const keyedItem = this._parent._getKeyedItem(rowKey);\n if (!column?.setValue || !keyedItem) {\n return;\n }\n\n const resolved = this.resolveCellTypeByColumnId(column.id);\n const result = runCellValidation(\n value,\n column.validation,\n resolved.validate,\n this._parent.collection?.translate,\n );\n const pendingKey = this._pendingCellKey(rowKey, columnId);\n\n if (result.valid) {\n if (pendingKey) {\n this._pendingCells.delete(pendingKey);\n }\n const updatedItem = column.setValue(keyedItem.item, value);\n this._parent.mutation.updateItems([updatedItem]);\n } else if (pendingKey) {\n this._pendingCells.set(pendingKey, {\n value,\n errors: result.errors ?? [],\n });\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -98,7 +98,7 @@ class EditableTableState {
98
98
  if (!source || !source.initTask.status.isSuccess) {
99
99
  return [];
100
100
  }
101
- return (0, _buildEditableFieldColumns.buildEditableFieldColumns)(source.fieldsSource);
101
+ return (0, _buildEditableFieldColumns.buildEditableFieldColumns)(source.fieldsSource, source.editableCellFor);
102
102
  }
103
103
 
104
104
  /**
@@ -178,6 +178,9 @@ class EditableTableState {
178
178
  isCellEditable(rowKey, columnId) {
179
179
  return this.cellValue.isCellEditable(rowKey, columnId);
180
180
  }
181
+ isColumnEditable(rowKey, columnId) {
182
+ return this.cellValue.isColumnEditable(rowKey, columnId);
183
+ }
181
184
  clearCells(cells) {
182
185
  this.cellValue.clearCells(cells);
183
186
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_mobx","require","_bexCore","_ToolbarCollectionState","_TableState","_CellInteractionState","_CellValueState","_ClipboardState","_MutationState","_buildEditableFieldColumns","EditableTableState","constructor","params","_params$extraCellType","_defineProperty2","default","ConditionalModalState","items","tableState","onAddItemActionComplete","origin","toolbar","toolbarBIReporter","onAddItemClick","columnId","forceDirection","multiple","collection","sort","id","clearResult","ToolbarCollectionState","container","componentType","TableState","cellValue","CellValueState","Map","extraCellTypes","map","ct","type","cellInteraction","CellInteractionState","editingValue","cell","commitHandler","clipboard","ClipboardState","mutation","MutationState","mutations","createOptimisticActions","makeObservable","addItemDisabled","observable","updateItemDisabled","removeItemDisabled","_providedColumns","ref","editableColumns","computed","sourceColumns","allColumns","_columnMap","init","action","confirmDeleteItems","permissions","keyedItems","visibleColumns","itemsToRenderCount","source","collectionFieldsSource","initTask","status","isSuccess","buildEditableFieldColumns","fieldsSource","c","_getKeyedItem","key","getKeyedItem","_toIndices","pos","row","findIndex","ki","rowKey","col","_toPosition","visibleIds","length","find","filter","undefined","columns","addItem","afterItemKey","duplicateItem","deleteItems","rowKeys","translate","t","deleteConfirmModal","open","theme","title","content","primaryButtonText","secondaryButtonText","primaryButtonOnClick","resolveCellTypeByColumnId","getCellDisplayValue","getCellValidation","isCellEditable","clearCells","cells","handleCellClick","shiftKey","isEditing","isCellEditing","commitEdit","get","res","editOnClick","val","focusCell","startEdit","column","resolved","toggleValue","showEditWhenFocused","value","selectionAnchor","selectRange","handleCellDoubleClick","exports"],"sources":["../../../../src/state/EditableTable/EditableTableState.ts"],"sourcesContent":["import { action, computed, makeObservable, observable } from 'mobx';\nimport {\n CollectionOptimisticActions,\n CollectionState,\n ConditionalModalState,\n FiltersMap,\n SortOrder,\n WixPatternsContainer,\n} from '@wix/bex-core';\nimport type { MessageModalLayoutProps } from '@wix/design-system';\nimport type { KeyedItem } from '@wix/bex-core';\nimport { ToolbarCollectionState } from '../ToolbarCollectionState';\nimport { TableState } from '../TableState';\nimport { ICollectionComponentState } from '../ICollectionComponentState';\nimport { CellInteractionState } from './CellInteractionState';\nimport { CellValueState } from './CellValueState';\nimport { ClipboardState } from './ClipboardState';\nimport { MutationState } from './MutationState';\nimport type { EditableTableMutationHandlers } from './MutationState';\nimport type { Cell, CellType, EditableColumn, ValidationResult } from './types';\nimport { buildEditableFieldColumns } from '../buildEditableFieldColumns';\n\nexport interface EditableTablePermissions {\n addItemDisabled?: boolean;\n updateItemDisabled?: boolean;\n removeItemDisabled?: boolean;\n}\n\nexport interface EditableTableStateParams<T, F extends FiltersMap> {\n readonly collection: CollectionState<T, F>;\n readonly container: WixPatternsContainer;\n readonly toolbar?: ToolbarCollectionState<T, F>;\n readonly permissions?: EditableTablePermissions;\n readonly mutations: EditableTableMutationHandlers<T>;\n readonly createOptimisticActions: (\n collection: CollectionState<T, F>,\n ) => CollectionOptimisticActions<T, F>;\n /**\n * Additional cell types to register alongside the built-in ones.\n * Augment `CellTypeConfigMap` to use these types on `EditableColumn.cellType`.\n */\n readonly extraCellTypes?: CellType[];\n}\n\nexport interface EditableTableStatePublicAPI<T, F extends FiltersMap> {\n /** Underlying CollectionState instance */\n readonly collection: CollectionState<T, F>;\n /** Underlying ToolbarCollectionState instance */\n readonly toolbar: ToolbarCollectionState<T, F>;\n /** Reset active filters & sorting and adds new items to the collection */\n onAddItemActionComplete(items: T[]): void;\n /** Sort by column */\n sort: (\n columnId: string,\n params?: { forceDirection?: SortOrder; multiple?: boolean },\n ) => void;\n}\n\nexport class EditableTableState<T, F extends FiltersMap>\n implements ICollectionComponentState, EditableTableStatePublicAPI<T, F>\n{\n readonly toolbar: ToolbarCollectionState<T, F>;\n readonly tableState: TableState<T, F>;\n\n readonly cellInteraction: CellInteractionState<T, F>;\n readonly cellValue: CellValueState<T, F>;\n readonly clipboard: ClipboardState<T, F>;\n readonly mutation: MutationState<T, F>;\n readonly deleteConfirmModal = new ConditionalModalState<\n Partial<MessageModalLayoutProps>\n >();\n\n addItemDisabled = false;\n updateItemDisabled = false;\n removeItemDisabled = false;\n\n _providedColumns: EditableColumn<T>[] = [];\n\n constructor(params: EditableTableStateParams<T, F>) {\n this.toolbar =\n params.toolbar ??\n new ToolbarCollectionState({\n collection: params.collection,\n container: params.container,\n componentType: 'EditableTable',\n });\n\n this.tableState = new TableState({\n collection: params.collection,\n container: params.container,\n toolbar: this.toolbar,\n });\n\n this.cellValue = new CellValueState<T, F>(\n this,\n new Map(params.extraCellTypes?.map((ct) => [ct.type, ct])),\n );\n\n this.cellInteraction = new CellInteractionState<T, F>(\n (editingValue, cell) => {\n this.cellValue.commitHandler(editingValue, cell);\n },\n this,\n );\n this.clipboard = new ClipboardState<T, F>(this);\n this.mutation = new MutationState<T, F>(\n this,\n params.mutations,\n params.createOptimisticActions,\n );\n makeObservable(this, {\n addItemDisabled: observable,\n updateItemDisabled: observable,\n removeItemDisabled: observable,\n _providedColumns: observable.ref,\n editableColumns: computed,\n sourceColumns: computed,\n allColumns: computed,\n _columnMap: computed,\n init: action,\n confirmDeleteItems: action,\n });\n\n if (params.permissions) {\n this.addItemDisabled = params.permissions.addItemDisabled ?? false;\n this.updateItemDisabled = params.permissions.updateItemDisabled ?? false;\n this.removeItemDisabled = params.permissions.removeItemDisabled ?? false;\n }\n }\n\n get collection() {\n return this.tableState.collection;\n }\n\n get keyedItems() {\n return this.tableState.keyedItems;\n }\n\n get visibleColumns() {\n return this.tableState.visibleColumns;\n }\n\n get itemsToRenderCount() {\n return this.tableState.itemsToRenderCount;\n }\n\n /** Editable columns built from the wired fields source, once it loads. */\n get sourceColumns(): EditableColumn<T>[] {\n const source = this.toolbar.collectionFieldsSource;\n if (!source || !source.initTask.status.isSuccess) {\n return [];\n }\n return buildEditableFieldColumns(\n source.fieldsSource,\n ) as EditableColumn<T>[];\n }\n\n /**\n * Consumer columns plus the columns built from the fields source, merged the\n * same way the toolbar merges its columns (ToolbarCollectionState.columns).\n * Consumer and source columns are expected to be disjoint by id.\n */\n get allColumns(): EditableColumn<T>[] {\n return [...this._providedColumns, ...this.sourceColumns];\n }\n\n get _columnMap(): Map<string, EditableColumn<T>> {\n return new Map(this.allColumns.map((c) => [c.id, c]));\n }\n\n _getKeyedItem(key: string): KeyedItem<T> | undefined | null {\n return this.collection.getKeyedItem(key);\n }\n\n _toIndices(pos: Cell): { row: number; col: number } | null {\n const row = this.keyedItems.findIndex((ki) => ki.key === pos.rowKey);\n const col = this.editableColumns.findIndex((c) => c.id === pos.columnId);\n return row === -1 || col === -1 ? null : { row, col };\n }\n\n _toPosition(row: number, col: number): Cell | null {\n const ki = this.keyedItems[row];\n const c = this.editableColumns[col];\n return ki && c ? { rowKey: ki.key, columnId: c.id } : null;\n }\n\n onAddItemActionComplete = (items: T[]) => {\n return this.tableState.onAddItemActionComplete(items);\n };\n\n onAddItemClick = (origin?: string) => {\n this.toolbar.toolbarBIReporter.onAddItemClick(origin);\n };\n\n get editableColumns(): EditableColumn<T>[] {\n const visibleIds = this.visibleColumns.map((c) => c.id);\n if (!visibleIds.length) {\n return this.allColumns;\n }\n return visibleIds\n .map((id) => this.allColumns.find((c) => c.id === id))\n .filter((c): c is EditableColumn<T> => c !== undefined);\n }\n\n init(columns: EditableColumn<T>[]) {\n this._providedColumns = columns;\n return this.mutation.init();\n }\n\n addItem(afterItemKey?: string): string {\n return this.mutation.addItem(afterItemKey);\n }\n\n duplicateItem(rowKey: string) {\n this.mutation.duplicateItem(rowKey);\n }\n\n deleteItems(rowKeys: string[]) {\n this.mutation.deleteItems(rowKeys);\n }\n\n confirmDeleteItems(rowKeys: string[]) {\n const { translate: t } = this.collection;\n this.deleteConfirmModal.open({\n theme: 'destructive',\n title: t('cairo.deleteModal.title'),\n content: t('cairo.deleteModal.body'),\n primaryButtonText: t('cairo.delete.button'),\n secondaryButtonText: t('cairo.cancel.button'),\n primaryButtonOnClick: () => {\n this.deleteItems(rowKeys);\n },\n });\n }\n\n resolveCellTypeByColumnId(columnId: string) {\n return this.cellValue.resolveCellTypeByColumnId(columnId);\n }\n\n getCellDisplayValue(rowKey: string, columnId: string): any {\n return this.cellValue.getCellDisplayValue(rowKey, columnId);\n }\n\n getCellValidation(rowKey: string, columnId: string): ValidationResult {\n return this.cellValue.getCellValidation(rowKey, columnId);\n }\n\n isCellEditable(rowKey: string, columnId: string): boolean {\n return this.cellValue.isCellEditable(rowKey, columnId);\n }\n\n clearCells(cells: Cell[]) {\n this.cellValue.clearCells(cells);\n }\n\n handleCellClick(rowKey: string, columnId: string, shiftKey: boolean) {\n if (this.cellInteraction.isEditing) {\n if (this.cellInteraction.isCellEditing(rowKey, columnId)) {\n // Click landed inside the active editor — let the editor handle it.\n return;\n }\n // Shift-click while editing: ignore — extending a range selection during\n // an active edit is not a meaningful action.\n if (shiftKey) {\n return;\n }\n // Plain click on a different cell: commit the edit and move focus.\n this.cellInteraction.commitEdit();\n\n // If the target cell wants edit-on-click, enter edit directly.\n const col = this._columnMap.get(columnId);\n const res = col ? this.resolveCellTypeByColumnId(col.id) : null;\n if (res?.editOnClick) {\n const val = this.getCellDisplayValue(rowKey, columnId);\n if (res.editOnClick(val) && this.isCellEditable(rowKey, columnId)) {\n this.cellInteraction.focusCell(rowKey, columnId);\n this.cellInteraction.startEdit(rowKey, columnId, 'click');\n return;\n }\n }\n\n this.cellInteraction.focusCell(rowKey, columnId);\n return;\n }\n\n const column = this._columnMap.get(columnId);\n const resolved = column ? this.resolveCellTypeByColumnId(column.id) : null;\n if (resolved?.toggleValue || resolved?.showEditWhenFocused) {\n // Toggle/showEditWhenFocused cells: click focuses the cell and shows the\n // EditComponent affordance. Keyboard navigation remains active.\n this.cellInteraction.focusCell(rowKey, columnId);\n return;\n }\n\n if (resolved?.editOnClick) {\n const value = this.getCellDisplayValue(rowKey, columnId);\n if (\n resolved.editOnClick(value) &&\n this.isCellEditable(rowKey, columnId)\n ) {\n this.cellInteraction.focusCell(rowKey, columnId);\n this.cellInteraction.startEdit(rowKey, columnId, 'click');\n return;\n }\n }\n\n if (shiftKey && this.cellInteraction.selectionAnchor) {\n this.cellInteraction.selectRange(this.cellInteraction.selectionAnchor, {\n rowKey,\n columnId,\n });\n } else {\n this.cellInteraction.focusCell(rowKey, columnId);\n }\n }\n\n handleCellDoubleClick(rowKey: string, columnId: string) {\n if (this.updateItemDisabled) {\n return;\n }\n const column = this._columnMap.get(columnId);\n const resolved = column ? this.resolveCellTypeByColumnId(column.id) : null;\n // Toggle-value cells (e.g. boolean) activate on single click, not double-click.\n // Entering edit mode on double-click would apply the editing box-shadow\n // without any EditComponent being shown, causing a visual border glitch.\n if (resolved?.toggleValue || resolved?.showEditWhenFocused) {\n return;\n }\n if (this.isCellEditable(rowKey, columnId)) {\n this.cellInteraction.startEdit(rowKey, columnId, 'doubleClick');\n }\n }\n\n sort = (\n columnId: string,\n {\n forceDirection,\n multiple,\n }: { forceDirection?: SortOrder; multiple?: boolean } = {},\n ) => {\n this.collection.sort(\n { id: columnId },\n { forceDirection, clearResult: true, multiple },\n );\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_mobx","require","_bexCore","_ToolbarCollectionState","_TableState","_CellInteractionState","_CellValueState","_ClipboardState","_MutationState","_buildEditableFieldColumns","EditableTableState","constructor","params","_params$extraCellType","_defineProperty2","default","ConditionalModalState","items","tableState","onAddItemActionComplete","origin","toolbar","toolbarBIReporter","onAddItemClick","columnId","forceDirection","multiple","collection","sort","id","clearResult","ToolbarCollectionState","container","componentType","TableState","cellValue","CellValueState","Map","extraCellTypes","map","ct","type","cellInteraction","CellInteractionState","editingValue","cell","commitHandler","clipboard","ClipboardState","mutation","MutationState","mutations","createOptimisticActions","makeObservable","addItemDisabled","observable","updateItemDisabled","removeItemDisabled","_providedColumns","ref","editableColumns","computed","sourceColumns","allColumns","_columnMap","init","action","confirmDeleteItems","permissions","keyedItems","visibleColumns","itemsToRenderCount","source","collectionFieldsSource","initTask","status","isSuccess","buildEditableFieldColumns","fieldsSource","editableCellFor","c","_getKeyedItem","key","getKeyedItem","_toIndices","pos","row","findIndex","ki","rowKey","col","_toPosition","visibleIds","length","find","filter","undefined","columns","addItem","afterItemKey","duplicateItem","deleteItems","rowKeys","translate","t","deleteConfirmModal","open","theme","title","content","primaryButtonText","secondaryButtonText","primaryButtonOnClick","resolveCellTypeByColumnId","getCellDisplayValue","getCellValidation","isCellEditable","isColumnEditable","clearCells","cells","handleCellClick","shiftKey","isEditing","isCellEditing","commitEdit","get","res","editOnClick","val","focusCell","startEdit","column","resolved","toggleValue","showEditWhenFocused","value","selectionAnchor","selectRange","handleCellDoubleClick","exports"],"sources":["../../../../src/state/EditableTable/EditableTableState.ts"],"sourcesContent":["import { action, computed, makeObservable, observable } from 'mobx';\nimport {\n CollectionOptimisticActions,\n CollectionState,\n ConditionalModalState,\n FiltersMap,\n SortOrder,\n WixPatternsContainer,\n} from '@wix/bex-core';\nimport type { MessageModalLayoutProps } from '@wix/design-system';\nimport type { KeyedItem } from '@wix/bex-core';\nimport { ToolbarCollectionState } from '../ToolbarCollectionState';\nimport { TableState } from '../TableState';\nimport { ICollectionComponentState } from '../ICollectionComponentState';\nimport { CellInteractionState } from './CellInteractionState';\nimport { CellValueState } from './CellValueState';\nimport { ClipboardState } from './ClipboardState';\nimport { MutationState } from './MutationState';\nimport type { EditableTableMutationHandlers } from './MutationState';\nimport type { Cell, CellType, EditableColumn, ValidationResult } from './types';\nimport { buildEditableFieldColumns } from '../buildEditableFieldColumns';\n\nexport interface EditableTablePermissions {\n addItemDisabled?: boolean;\n updateItemDisabled?: boolean;\n removeItemDisabled?: boolean;\n}\n\nexport interface EditableTableStateParams<T, F extends FiltersMap> {\n readonly collection: CollectionState<T, F>;\n readonly container: WixPatternsContainer;\n readonly toolbar?: ToolbarCollectionState<T, F>;\n readonly permissions?: EditableTablePermissions;\n readonly mutations: EditableTableMutationHandlers<T>;\n readonly createOptimisticActions: (\n collection: CollectionState<T, F>,\n ) => CollectionOptimisticActions<T, F>;\n /**\n * Additional cell types to register alongside the built-in ones.\n * Augment `CellTypeConfigMap` to use these types on `EditableColumn.cellType`.\n */\n readonly extraCellTypes?: CellType[];\n}\n\nexport interface EditableTableStatePublicAPI<T, F extends FiltersMap> {\n /** Underlying CollectionState instance */\n readonly collection: CollectionState<T, F>;\n /** Underlying ToolbarCollectionState instance */\n readonly toolbar: ToolbarCollectionState<T, F>;\n /** Reset active filters & sorting and adds new items to the collection */\n onAddItemActionComplete(items: T[]): void;\n /** Sort by column */\n sort: (\n columnId: string,\n params?: { forceDirection?: SortOrder; multiple?: boolean },\n ) => void;\n}\n\nexport class EditableTableState<T, F extends FiltersMap>\n implements ICollectionComponentState, EditableTableStatePublicAPI<T, F>\n{\n readonly toolbar: ToolbarCollectionState<T, F>;\n readonly tableState: TableState<T, F>;\n\n readonly cellInteraction: CellInteractionState<T, F>;\n readonly cellValue: CellValueState<T, F>;\n readonly clipboard: ClipboardState<T, F>;\n readonly mutation: MutationState<T, F>;\n readonly deleteConfirmModal = new ConditionalModalState<\n Partial<MessageModalLayoutProps>\n >();\n\n addItemDisabled = false;\n updateItemDisabled = false;\n removeItemDisabled = false;\n\n _providedColumns: EditableColumn<T>[] = [];\n\n constructor(params: EditableTableStateParams<T, F>) {\n this.toolbar =\n params.toolbar ??\n new ToolbarCollectionState({\n collection: params.collection,\n container: params.container,\n componentType: 'EditableTable',\n });\n\n this.tableState = new TableState({\n collection: params.collection,\n container: params.container,\n toolbar: this.toolbar,\n });\n\n this.cellValue = new CellValueState<T, F>(\n this,\n new Map(params.extraCellTypes?.map((ct) => [ct.type, ct])),\n );\n\n this.cellInteraction = new CellInteractionState<T, F>(\n (editingValue, cell) => {\n this.cellValue.commitHandler(editingValue, cell);\n },\n this,\n );\n this.clipboard = new ClipboardState<T, F>(this);\n this.mutation = new MutationState<T, F>(\n this,\n params.mutations,\n params.createOptimisticActions,\n );\n makeObservable(this, {\n addItemDisabled: observable,\n updateItemDisabled: observable,\n removeItemDisabled: observable,\n _providedColumns: observable.ref,\n editableColumns: computed,\n sourceColumns: computed,\n allColumns: computed,\n _columnMap: computed,\n init: action,\n confirmDeleteItems: action,\n });\n\n if (params.permissions) {\n this.addItemDisabled = params.permissions.addItemDisabled ?? false;\n this.updateItemDisabled = params.permissions.updateItemDisabled ?? false;\n this.removeItemDisabled = params.permissions.removeItemDisabled ?? false;\n }\n }\n\n get collection() {\n return this.tableState.collection;\n }\n\n get keyedItems() {\n return this.tableState.keyedItems;\n }\n\n get visibleColumns() {\n return this.tableState.visibleColumns;\n }\n\n get itemsToRenderCount() {\n return this.tableState.itemsToRenderCount;\n }\n\n /** Editable columns built from the wired fields source, once it loads. */\n get sourceColumns(): EditableColumn<T>[] {\n const source = this.toolbar.collectionFieldsSource;\n if (!source || !source.initTask.status.isSuccess) {\n return [];\n }\n return buildEditableFieldColumns(\n source.fieldsSource,\n source.editableCellFor,\n ) as EditableColumn<T>[];\n }\n\n /**\n * Consumer columns plus the columns built from the fields source, merged the\n * same way the toolbar merges its columns (ToolbarCollectionState.columns).\n * Consumer and source columns are expected to be disjoint by id.\n */\n get allColumns(): EditableColumn<T>[] {\n return [...this._providedColumns, ...this.sourceColumns];\n }\n\n get _columnMap(): Map<string, EditableColumn<T>> {\n return new Map(this.allColumns.map((c) => [c.id, c]));\n }\n\n _getKeyedItem(key: string): KeyedItem<T> | undefined | null {\n return this.collection.getKeyedItem(key);\n }\n\n _toIndices(pos: Cell): { row: number; col: number } | null {\n const row = this.keyedItems.findIndex((ki) => ki.key === pos.rowKey);\n const col = this.editableColumns.findIndex((c) => c.id === pos.columnId);\n return row === -1 || col === -1 ? null : { row, col };\n }\n\n _toPosition(row: number, col: number): Cell | null {\n const ki = this.keyedItems[row];\n const c = this.editableColumns[col];\n return ki && c ? { rowKey: ki.key, columnId: c.id } : null;\n }\n\n onAddItemActionComplete = (items: T[]) => {\n return this.tableState.onAddItemActionComplete(items);\n };\n\n onAddItemClick = (origin?: string) => {\n this.toolbar.toolbarBIReporter.onAddItemClick(origin);\n };\n\n get editableColumns(): EditableColumn<T>[] {\n const visibleIds = this.visibleColumns.map((c) => c.id);\n if (!visibleIds.length) {\n return this.allColumns;\n }\n return visibleIds\n .map((id) => this.allColumns.find((c) => c.id === id))\n .filter((c): c is EditableColumn<T> => c !== undefined);\n }\n\n init(columns: EditableColumn<T>[]) {\n this._providedColumns = columns;\n return this.mutation.init();\n }\n\n addItem(afterItemKey?: string): string {\n return this.mutation.addItem(afterItemKey);\n }\n\n duplicateItem(rowKey: string) {\n this.mutation.duplicateItem(rowKey);\n }\n\n deleteItems(rowKeys: string[]) {\n this.mutation.deleteItems(rowKeys);\n }\n\n confirmDeleteItems(rowKeys: string[]) {\n const { translate: t } = this.collection;\n this.deleteConfirmModal.open({\n theme: 'destructive',\n title: t('cairo.deleteModal.title'),\n content: t('cairo.deleteModal.body'),\n primaryButtonText: t('cairo.delete.button'),\n secondaryButtonText: t('cairo.cancel.button'),\n primaryButtonOnClick: () => {\n this.deleteItems(rowKeys);\n },\n });\n }\n\n resolveCellTypeByColumnId(columnId: string) {\n return this.cellValue.resolveCellTypeByColumnId(columnId);\n }\n\n getCellDisplayValue(rowKey: string, columnId: string): any {\n return this.cellValue.getCellDisplayValue(rowKey, columnId);\n }\n\n getCellValidation(rowKey: string, columnId: string): ValidationResult {\n return this.cellValue.getCellValidation(rowKey, columnId);\n }\n\n isCellEditable(rowKey: string, columnId: string): boolean {\n return this.cellValue.isCellEditable(rowKey, columnId);\n }\n\n isColumnEditable(rowKey: string, columnId: string): boolean {\n return this.cellValue.isColumnEditable(rowKey, columnId);\n }\n\n clearCells(cells: Cell[]) {\n this.cellValue.clearCells(cells);\n }\n\n handleCellClick(rowKey: string, columnId: string, shiftKey: boolean) {\n if (this.cellInteraction.isEditing) {\n if (this.cellInteraction.isCellEditing(rowKey, columnId)) {\n // Click landed inside the active editor — let the editor handle it.\n return;\n }\n // Shift-click while editing: ignore — extending a range selection during\n // an active edit is not a meaningful action.\n if (shiftKey) {\n return;\n }\n // Plain click on a different cell: commit the edit and move focus.\n this.cellInteraction.commitEdit();\n\n // If the target cell wants edit-on-click, enter edit directly.\n const col = this._columnMap.get(columnId);\n const res = col ? this.resolveCellTypeByColumnId(col.id) : null;\n if (res?.editOnClick) {\n const val = this.getCellDisplayValue(rowKey, columnId);\n if (res.editOnClick(val) && this.isCellEditable(rowKey, columnId)) {\n this.cellInteraction.focusCell(rowKey, columnId);\n this.cellInteraction.startEdit(rowKey, columnId, 'click');\n return;\n }\n }\n\n this.cellInteraction.focusCell(rowKey, columnId);\n return;\n }\n\n const column = this._columnMap.get(columnId);\n const resolved = column ? this.resolveCellTypeByColumnId(column.id) : null;\n if (resolved?.toggleValue || resolved?.showEditWhenFocused) {\n // Toggle/showEditWhenFocused cells: click focuses the cell and shows the\n // EditComponent affordance. Keyboard navigation remains active.\n this.cellInteraction.focusCell(rowKey, columnId);\n return;\n }\n\n if (resolved?.editOnClick) {\n const value = this.getCellDisplayValue(rowKey, columnId);\n if (\n resolved.editOnClick(value) &&\n this.isCellEditable(rowKey, columnId)\n ) {\n this.cellInteraction.focusCell(rowKey, columnId);\n this.cellInteraction.startEdit(rowKey, columnId, 'click');\n return;\n }\n }\n\n if (shiftKey && this.cellInteraction.selectionAnchor) {\n this.cellInteraction.selectRange(this.cellInteraction.selectionAnchor, {\n rowKey,\n columnId,\n });\n } else {\n this.cellInteraction.focusCell(rowKey, columnId);\n }\n }\n\n handleCellDoubleClick(rowKey: string, columnId: string) {\n if (this.updateItemDisabled) {\n return;\n }\n const column = this._columnMap.get(columnId);\n const resolved = column ? this.resolveCellTypeByColumnId(column.id) : null;\n // Toggle-value cells (e.g. boolean) activate on single click, not double-click.\n // Entering edit mode on double-click would apply the editing box-shadow\n // without any EditComponent being shown, causing a visual border glitch.\n if (resolved?.toggleValue || resolved?.showEditWhenFocused) {\n return;\n }\n if (this.isCellEditable(rowKey, columnId)) {\n this.cellInteraction.startEdit(rowKey, columnId, 'doubleClick');\n }\n }\n\n sort = (\n columnId: string,\n {\n forceDirection,\n multiple,\n }: { forceDirection?: SortOrder; multiple?: boolean } = {},\n ) => {\n this.collection.sort(\n { id: columnId },\n { forceDirection, clearResult: true, multiple },\n );\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -8,8 +8,7 @@ exports.FIELD_TYPE_TO_CELL_TYPE = void 0;
8
8
  * typeConfig the projection can't supply yet, so the projection downgrades
9
9
  * those to a read-only display (see NEEDS_TYPE_CONFIG in
10
10
  * buildEditableFieldColumns); the ideal mapping is kept here for when that
11
- * lands. ARRAY / OBJECT / UNKNOWN have no dedicated editable cell, so they
12
- * display as 'object'.
11
+ * lands. UNKNOWN has no cell of its own, so it displays as 'object'.
13
12
  */
14
13
  const FIELD_TYPE_TO_CELL_TYPE = exports.FIELD_TYPE_TO_CELL_TYPE = {
15
14
  SHORT_TEXT: 'text',
@@ -33,8 +32,11 @@ const FIELD_TYPE_TO_CELL_TYPE = exports.FIELD_TYPE_TO_CELL_TYPE = {
33
32
  ADDRESS: 'address',
34
33
  REFERENCE: 'reference',
35
34
  MULTI_REFERENCE: 'multiReference',
36
- ARRAY: 'object',
35
+ ARRAY: 'array',
37
36
  OBJECT: 'object',
37
+ // Reached only when a CUSTOM field's definition is missing or has no
38
+ // editableTable slot — the column builder resolves the definition first.
39
+ CUSTOM: 'object',
38
40
  UNKNOWN: 'object'
39
41
  };
40
42
  //# sourceMappingURL=fieldTypeToCellType.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["FIELD_TYPE_TO_CELL_TYPE","exports","SHORT_TEXT","LONG_TEXT","NUMBER","BOOLEAN","DATE","DATETIME","TIME","URL","EMAIL","COLOR","IMAGE","VIDEO","AUDIO","MEDIA_GALLERY","DOCUMENT","MULTI_DOCUMENT","RICH_TEXT","RICH_CONTENT","ADDRESS","REFERENCE","MULTI_REFERENCE","ARRAY","OBJECT","UNKNOWN"],"sources":["../../../../src/state/EditableTable/fieldTypeToCellType.ts"],"sourcesContent":["import type { PatternsFieldType } from '@wix/bex-core';\nimport type { CellTypeConfigMap } from './types';\n\n/**\n * Maps a source field's neutral type to the EditableTable cell type used to\n * render and edit it. Reference / multi-reference / address need extra\n * typeConfig the projection can't supply yet, so the projection downgrades\n * those to a read-only display (see NEEDS_TYPE_CONFIG in\n * buildEditableFieldColumns); the ideal mapping is kept here for when that\n * lands. ARRAY / OBJECT / UNKNOWN have no dedicated editable cell, so they\n * display as 'object'.\n */\nexport const FIELD_TYPE_TO_CELL_TYPE: Record<\n PatternsFieldType,\n keyof CellTypeConfigMap\n> = {\n SHORT_TEXT: 'text',\n LONG_TEXT: 'text',\n NUMBER: 'number',\n BOOLEAN: 'boolean',\n DATE: 'date',\n DATETIME: 'datetime',\n TIME: 'time',\n URL: 'url',\n EMAIL: 'email',\n COLOR: 'color',\n IMAGE: 'image',\n VIDEO: 'video',\n AUDIO: 'audio',\n MEDIA_GALLERY: 'mediaGallery',\n DOCUMENT: 'document',\n MULTI_DOCUMENT: 'multiDocument',\n RICH_TEXT: 'richText',\n RICH_CONTENT: 'richContent',\n ADDRESS: 'address',\n REFERENCE: 'reference',\n MULTI_REFERENCE: 'multiReference',\n ARRAY: 'object',\n OBJECT: 'object',\n UNKNOWN: 'object',\n};\n"],"mappings":";;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,uBAGZ,GAAAC,OAAA,CAAAD,uBAAA,GAAG;EACFE,UAAU,EAAE,MAAM;EAClBC,SAAS,EAAE,MAAM;EACjBC,MAAM,EAAE,QAAQ;EAChBC,OAAO,EAAE,SAAS;EAClBC,IAAI,EAAE,MAAM;EACZC,QAAQ,EAAE,UAAU;EACpBC,IAAI,EAAE,MAAM;EACZC,GAAG,EAAE,KAAK;EACVC,KAAK,EAAE,OAAO;EACdC,KAAK,EAAE,OAAO;EACdC,KAAK,EAAE,OAAO;EACdC,KAAK,EAAE,OAAO;EACdC,KAAK,EAAE,OAAO;EACdC,aAAa,EAAE,cAAc;EAC7BC,QAAQ,EAAE,UAAU;EACpBC,cAAc,EAAE,eAAe;EAC/BC,SAAS,EAAE,UAAU;EACrBC,YAAY,EAAE,aAAa;EAC3BC,OAAO,EAAE,SAAS;EAClBC,SAAS,EAAE,WAAW;EACtBC,eAAe,EAAE,gBAAgB;EACjCC,KAAK,EAAE,QAAQ;EACfC,MAAM,EAAE,QAAQ;EAChBC,OAAO,EAAE;AACX,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["FIELD_TYPE_TO_CELL_TYPE","exports","SHORT_TEXT","LONG_TEXT","NUMBER","BOOLEAN","DATE","DATETIME","TIME","URL","EMAIL","COLOR","IMAGE","VIDEO","AUDIO","MEDIA_GALLERY","DOCUMENT","MULTI_DOCUMENT","RICH_TEXT","RICH_CONTENT","ADDRESS","REFERENCE","MULTI_REFERENCE","ARRAY","OBJECT","CUSTOM","UNKNOWN"],"sources":["../../../../src/state/EditableTable/fieldTypeToCellType.ts"],"sourcesContent":["import type { PatternsFieldType } from '@wix/bex-core';\nimport type { CellTypeConfigMap } from './types';\n\n/**\n * Maps a source field's neutral type to the EditableTable cell type used to\n * render and edit it. Reference / multi-reference / address need extra\n * typeConfig the projection can't supply yet, so the projection downgrades\n * those to a read-only display (see NEEDS_TYPE_CONFIG in\n * buildEditableFieldColumns); the ideal mapping is kept here for when that\n * lands. UNKNOWN has no cell of its own, so it displays as 'object'.\n */\nexport const FIELD_TYPE_TO_CELL_TYPE: Record<\n PatternsFieldType,\n keyof CellTypeConfigMap\n> = {\n SHORT_TEXT: 'text',\n LONG_TEXT: 'text',\n NUMBER: 'number',\n BOOLEAN: 'boolean',\n DATE: 'date',\n DATETIME: 'datetime',\n TIME: 'time',\n URL: 'url',\n EMAIL: 'email',\n COLOR: 'color',\n IMAGE: 'image',\n VIDEO: 'video',\n AUDIO: 'audio',\n MEDIA_GALLERY: 'mediaGallery',\n DOCUMENT: 'document',\n MULTI_DOCUMENT: 'multiDocument',\n RICH_TEXT: 'richText',\n RICH_CONTENT: 'richContent',\n ADDRESS: 'address',\n REFERENCE: 'reference',\n MULTI_REFERENCE: 'multiReference',\n ARRAY: 'array',\n OBJECT: 'object',\n // Reached only when a CUSTOM field's definition is missing or has no\n // editableTable slot — the column builder resolves the definition first.\n CUSTOM: 'object',\n UNKNOWN: 'object',\n};\n"],"mappings":";;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,uBAGZ,GAAAC,OAAA,CAAAD,uBAAA,GAAG;EACFE,UAAU,EAAE,MAAM;EAClBC,SAAS,EAAE,MAAM;EACjBC,MAAM,EAAE,QAAQ;EAChBC,OAAO,EAAE,SAAS;EAClBC,IAAI,EAAE,MAAM;EACZC,QAAQ,EAAE,UAAU;EACpBC,IAAI,EAAE,MAAM;EACZC,GAAG,EAAE,KAAK;EACVC,KAAK,EAAE,OAAO;EACdC,KAAK,EAAE,OAAO;EACdC,KAAK,EAAE,OAAO;EACdC,KAAK,EAAE,OAAO;EACdC,KAAK,EAAE,OAAO;EACdC,aAAa,EAAE,cAAc;EAC7BC,QAAQ,EAAE,UAAU;EACpBC,cAAc,EAAE,eAAe;EAC/BC,SAAS,EAAE,UAAU;EACrBC,YAAY,EAAE,aAAa;EAC3BC,OAAO,EAAE,SAAS;EAClBC,SAAS,EAAE,WAAW;EACtBC,eAAe,EAAE,gBAAgB;EACjCC,KAAK,EAAE,OAAO;EACdC,MAAM,EAAE,QAAQ;EAChB;EACA;EACAC,MAAM,EAAE,QAAQ;EAChBC,OAAO,EAAE;AACX,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["../../../../src/state/EditableTable/types.ts"],"sourcesContent":["import type { ComponentType } from 'react';\nimport type { Translate } from '@wix/bex-core';\nimport type { RichTextStyleVariables } from '@wix/patterns-fields';\nimport type { TableColumn } from '../../model/tableColumn';\nimport type { ReferenceTypeConfig } from '../../components/EditableTable/cellTypes/reference/types';\nimport type { AddressCellTypeConfig } from '../../components/EditableTable/cellTypes/address';\nimport type {\n CellViewProps,\n CellEditProps,\n CellEditWrapperProps,\n} from '../../components/EditableTable/types';\n\nexport interface RichTextCellTypeConfig {\n textStyle?: RichTextStyleVariables;\n}\n\nexport interface Cell {\n rowKey: string;\n columnId: string;\n}\n\nexport interface CellBorder {\n top: boolean;\n bottom: boolean;\n left: boolean;\n right: boolean;\n}\n\nexport type ValidationRule =\n | { type: 'required'; message: string }\n | { type: 'min' | 'max'; value: number; message: string }\n | { type: 'minLength' | 'maxLength'; value: number; message: string }\n | { type: 'pattern'; value: RegExp; message: string }\n | { type: 'custom'; validate: (value: unknown) => boolean; message: string }\n | {\n type: 'specificValues';\n values: { id: string; value: string }[];\n message: string;\n };\n\nexport interface ValidationResult {\n valid: boolean;\n errors?: string[];\n}\n\nexport interface CellType {\n type: keyof CellTypeConfigMap;\n\n /** Render cell in view mode (read-only display) */\n ViewComponent: ComponentType<CellViewProps<any>>;\n\n /** Render cell in edit mode (inline editor). Optional — omit for view-only cells. */\n EditComponent?: ComponentType<CellEditProps<any>>;\n\n /** Serialize value to clipboard string */\n serialize?: (value: any) => string;\n\n /** Deserialize clipboard string to value */\n deserialize?: (raw: string) => any;\n\n /** Validate a cell value. Return null if valid, or error message string.\n * `translate` is optional so cell types whose validate doesn't need\n * localization (text/number/date/…) can keep their existing call sites.\n * Cell types that DO localize (array/object) must be called with a translator. */\n validate?: (\n value: any,\n rules?: ValidationRule[],\n translate?: Translate,\n ) => string | null;\n\n /** Can this cell type be edited? (default: true) */\n editable?: boolean;\n\n /** Can this cell type be cleared with Delete key? (default: true) */\n clearable?: boolean;\n\n /** Toggle value on single click (e.g., boolean checkbox). Skips focus→edit flow. */\n toggleValue?: (value: any) => any;\n\n /** Enter edit mode on single click (e.g., image cell with no value). */\n editOnClick?: (value: any) => boolean;\n\n /** Show the EditComponent when the cell is focused, without entering edit mode.\n * Keyboard navigation remains active. Similar to toggleValue but without toggling. */\n showEditWhenFocused?: boolean;\n\n /** Optional wrapper component the cell type defines to own behavior that must\n * outlive the inline editor. EditableCell mounts it around the cell content\n * and keeps it mounted across the edit↔view transition (e.g. a reference cell\n * navigating to an overlay and refreshing the table on return). The wrapper\n * hands anything the editor needs down via its own context. */\n EditWrapper?: ComponentType<CellEditWrapperProps>;\n\n /** Cell content can grow past row height when focused (e.g. multi-document\n * wraps chips into multiple rows). The framework releases the bottom anchor\n * and lays an opaque base under the selection tint so the overflow doesn't\n * bleed adjacent rows through.\n * Only applies to showEditWhenFocused cells — others release the bottom\n * anchor via :editing already. */\n growable?: boolean;\n\n /** Called on type-to-edit. Return object with cleared value and/or prevent flag.\n * CMS-web pattern: text clears to '', number clears only for digits, date blocks non-digits.\n * Return undefined to block the key. Return {} to enter edit mode without changing the value. */\n onTypeToEdit?: (params: {\n key: string;\n validation?: ValidationRule[];\n }) => { value?: any } | undefined;\n\n /** Optional hook to normalize the committed value (e.g. auto-prepend https://).\n * Called before commitEdit() from EditableCell (blur/Enter) and useKeyboardNavigation (Tab).\n * The value is written back to editingValue via runInAction before committing. */\n normalizeOnCommit?: (value: any) => any;\n\n /** When true, type-to-edit flushes the edit-mode render synchronously and\n * focuses the input within the same keydown event, then lets the browser's\n * default action deliver the keystroke to the now-focused input naturally\n * (no preventDefault, no programmatic value injection).\n * Mirrors cms-web's `focusOnTyping` pattern. Use for cells that wrap a\n * controlled input whose value can't be seeded via props (e.g. WSR TimeInput). */\n nativeTypeToEdit?: boolean;\n}\n\nexport interface CellTypeConfigMap {\n text: never;\n number: never;\n boolean: never;\n url: never;\n email: never;\n color: never;\n date: never;\n time: never;\n datetime: never;\n object: never;\n array: never;\n image: never;\n document: never;\n multiDocument: never;\n richContent: never;\n video: never;\n audio: never;\n richText: RichTextCellTypeConfig;\n mediaGallery: never;\n reference: ReferenceTypeConfig;\n multiReference: ReferenceTypeConfig;\n address: AddressCellTypeConfig;\n custom: Omit<CellType, 'type'>;\n}\n\ninterface EditableColumnBase<T> extends Omit<TableColumn<T>, 'render'> {\n id: string;\n /** Column type — maps to a CellType in the registry */\n cellType: keyof CellTypeConfigMap;\n\n /** Extract the cell value from the row data */\n getValue: (item: T) => any;\n\n /** Return updated item with new cell value (immutable) */\n setValue?: (item: T, value: any) => T;\n\n /** Column-level validation rules */\n validation?: ValidationRule[];\n\n /** Is this column editable? (default: true if setValue exists) */\n editable?: boolean | ((item: T) => boolean);\n\n /** True if this column represents the schema's primary field. Drives header-action disable rules (e.g. blocks Delete, blocks Make Primary). */\n isPrimary?: boolean;\n\n /** True if this column represents a system field. Drives header-action disable rules (e.g. blocks Edit, Delete, Duplicate). */\n isSystem?: boolean;\n}\n\nexport type EditableColumn<\n T,\n C extends keyof CellTypeConfigMap = keyof CellTypeConfigMap,\n> = C extends C\n ? EditableColumnBase<T> & {\n cellType: C;\n typeConfig?: CellTypeConfigMap[C] extends never\n ? never\n : CellTypeConfigMap[C];\n }\n : never;\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["../../../../src/state/EditableTable/types.ts"],"sourcesContent":["import type { ComponentType } from 'react';\nimport type { Translate, ValidationRule } from '@wix/bex-core';\nimport type { RichTextStyleVariables } from '@wix/patterns-fields';\nimport type { TableColumn } from '../../model/tableColumn';\nimport type { ReferenceTypeConfig } from '../../components/EditableTable/cellTypes/reference/types';\nimport type { AddressCellTypeConfig } from '../../components/EditableTable/cellTypes/address';\nimport type {\n CellViewProps,\n CellEditProps,\n CellEditWrapperProps,\n} from '../../components/EditableTable/types';\n\nexport interface RichTextCellTypeConfig {\n textStyle?: RichTextStyleVariables;\n}\n\nexport interface Cell {\n rowKey: string;\n columnId: string;\n}\n\nexport interface CellBorder {\n top: boolean;\n bottom: boolean;\n left: boolean;\n right: boolean;\n}\n\nexport type { ValidationRule } from '@wix/bex-core';\n\nexport interface ValidationResult {\n valid: boolean;\n errors?: string[];\n}\n\nexport interface CellType {\n type: keyof CellTypeConfigMap;\n\n /** Render cell in view mode (read-only display) */\n ViewComponent: ComponentType<CellViewProps<any>>;\n\n /** Render cell in edit mode (inline editor). Optional — omit for view-only cells. */\n EditComponent?: ComponentType<CellEditProps<any>>;\n\n /** Serialize value to clipboard string */\n serialize?: (value: any) => string;\n\n /** Deserialize clipboard string to value */\n deserialize?: (raw: string) => any;\n\n /** Validate a cell value. Return null if valid, or error message string.\n * `translate` is optional so cell types whose validate doesn't need\n * localization (text/number/date/…) can keep their existing call sites.\n * Cell types that DO localize (array/object) must be called with a translator. */\n validate?: (\n value: any,\n rules?: ValidationRule[],\n translate?: Translate,\n ) => string | null;\n\n /** Can this cell type be edited? (default: true) */\n editable?: boolean;\n\n /** Can this cell type be cleared with Delete key? (default: true) */\n clearable?: boolean;\n\n /** Toggle value on single click (e.g., boolean checkbox). Skips focus→edit flow. */\n toggleValue?: (value: any) => any;\n\n /** Enter edit mode on single click (e.g., image cell with no value). */\n editOnClick?: (value: any) => boolean;\n\n /** Show the EditComponent when the cell is focused, without entering edit mode.\n * Keyboard navigation remains active. Similar to toggleValue but without toggling. */\n showEditWhenFocused?: boolean;\n\n /** Optional wrapper component the cell type defines to own behavior that must\n * outlive the inline editor. EditableCell mounts it around the cell content\n * and keeps it mounted across the edit↔view transition (e.g. a reference cell\n * navigating to an overlay and refreshing the table on return). The wrapper\n * hands anything the editor needs down via its own context. */\n EditWrapper?: ComponentType<CellEditWrapperProps>;\n\n /** Cell content can grow past row height when focused (e.g. multi-document\n * wraps chips into multiple rows). The framework releases the bottom anchor\n * and lays an opaque base under the selection tint so the overflow doesn't\n * bleed adjacent rows through.\n * Only applies to showEditWhenFocused cells — others release the bottom\n * anchor via :editing already. */\n growable?: boolean;\n\n /** Called on type-to-edit. Return object with cleared value and/or prevent flag.\n * CMS-web pattern: text clears to '', number clears only for digits, date blocks non-digits.\n * Return undefined to block the key. Return {} to enter edit mode without changing the value. */\n onTypeToEdit?: (params: {\n key: string;\n validation?: ValidationRule[];\n }) => { value?: any } | undefined;\n\n /** Optional hook to normalize the committed value (e.g. auto-prepend https://).\n * Called before commitEdit() from EditableCell (blur/Enter) and useKeyboardNavigation (Tab).\n * The value is written back to editingValue via runInAction before committing. */\n normalizeOnCommit?: (value: any) => any;\n\n /** When true, type-to-edit flushes the edit-mode render synchronously and\n * focuses the input within the same keydown event, then lets the browser's\n * default action deliver the keystroke to the now-focused input naturally\n * (no preventDefault, no programmatic value injection).\n * Mirrors cms-web's `focusOnTyping` pattern. Use for cells that wrap a\n * controlled input whose value can't be seeded via props (e.g. WSR TimeInput). */\n nativeTypeToEdit?: boolean;\n}\n\nexport interface CellTypeConfigMap {\n text: never;\n number: never;\n boolean: never;\n url: never;\n email: never;\n color: never;\n date: never;\n time: never;\n datetime: never;\n object: never;\n array: never;\n image: never;\n document: never;\n multiDocument: never;\n richContent: never;\n video: never;\n audio: never;\n richText: RichTextCellTypeConfig;\n mediaGallery: never;\n reference: ReferenceTypeConfig;\n multiReference: ReferenceTypeConfig;\n address: AddressCellTypeConfig;\n /** An inline custom cell: the full cell contract minus the registry key.\n * Authorable directly on a column (`cellType: 'custom'` + `typeConfig`),\n * and also produced by the column builder when a schema field's type\n * definition (registered via the source's `fieldTypes`) has an\n * `editableTable` slot. */\n custom: Omit<CellType, 'type'>;\n}\n\ninterface EditableColumnBase<T> extends Omit<TableColumn<T>, 'render'> {\n id: string;\n /** Column type — maps to a CellType in the registry */\n cellType: keyof CellTypeConfigMap;\n\n /** Extract the cell value from the row data */\n getValue: (item: T) => any;\n\n /** Return updated item with new cell value (immutable) */\n setValue?: (item: T, value: any) => T;\n\n /** Column-level validation rules */\n validation?: ValidationRule[];\n\n /** Is this column editable? (default: true if setValue exists) */\n editable?: boolean | ((item: T) => boolean);\n\n /** True if this column represents the schema's primary field. Drives header-action disable rules (e.g. blocks Delete, blocks Make Primary). */\n isPrimary?: boolean;\n\n /** True if this column represents a system field. Drives header-action disable rules (e.g. blocks Edit, Delete, Duplicate). */\n isSystem?: boolean;\n}\n\nexport type EditableColumn<\n T,\n C extends keyof CellTypeConfigMap = keyof CellTypeConfigMap,\n> = C extends C\n ? EditableColumnBase<T> & {\n cellType: C;\n typeConfig?: CellTypeConfigMap[C] extends never\n ? never\n : CellTypeConfigMap[C];\n }\n : never;\n"],"mappings":"","ignoreList":[]}
@@ -6,9 +6,19 @@ exports.EntityPageState = void 0;
6
6
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
7
7
  var _bexCore = require("@wix/bex-core");
8
8
  var _mobx = require("mobx");
9
+ var _schemaFieldsContainer = require("../../model/schemaFieldsContainer");
9
10
  var _EntityPageStateBIReporter = require("./EntityPageStateBIReporter");
10
11
  var _events = require("@wix/bex-core/events");
11
12
  class EntityPageState {
13
+ /**
14
+ * The container the page's field renderers are built with — the one the schema
15
+ * carries, so a table on the same schema shares it. Initialized in `init()`
16
+ * below, next to the schema load the fields also wait on; the schema-entry
17
+ * EntityPage puts it in React context.
18
+ */
19
+ get fieldsContainer() {
20
+ return (0, _schemaFieldsContainer.fieldsContainerOf)(this.schemaSource);
21
+ }
12
22
  constructor(params) {
13
23
  (0, _defineProperty2.default)(this, "fetch", void 0);
14
24
  (0, _defineProperty2.default)(this, "onSave", void 0);
@@ -20,6 +30,18 @@ class EntityPageState {
20
30
  (0, _defineProperty2.default)(this, "_parentPageId", void 0);
21
31
  (0, _defineProperty2.default)(this, "_parentPath", void 0);
22
32
  (0, _defineProperty2.default)(this, "actionsBarConfig", void 0);
33
+ /**
34
+ * The page's side-panel host, the way a table's lives on its toolbar.
35
+ * Attached by the first feature that needs one, through
36
+ * `SidePanelsState.setOnPage` — so a page with no panels neither builds nor
37
+ * bundles the side-panel code. Everything on the page shares this host, which
38
+ * is what keeps one panel open at a time.
39
+ */
40
+ (0, _defineProperty2.default)(this, "panels", null);
41
+ /** The fields card's "Manage fields" state, set by the card that owns it —
42
+ * the panel is rendered by the host with no props and reads it from here,
43
+ * as a table's panel reads `toolbar.customColumnsState`. */
44
+ (0, _defineProperty2.default)(this, "customColumnsState", null);
23
45
  (0, _defineProperty2.default)(this, "schemaSource", void 0);
24
46
  (0, _defineProperty2.default)(this, "container", void 0);
25
47
  (0, _defineProperty2.default)(this, "reportBI", void 0);
@@ -60,6 +82,7 @@ class EntityPageState {
60
82
  setEntity: _mobx.action,
61
83
  _schema: _mobx.observable.ref,
62
84
  setSchema: _mobx.action,
85
+ customColumnsState: _mobx.observable.ref,
63
86
  isFormDirty: _mobx.computed,
64
87
  _withinRouter: _mobx.computed
65
88
  });
@@ -90,10 +113,18 @@ class EntityPageState {
90
113
  this.bi.reportOnBeforeUnload();
91
114
  }));
92
115
  initTask.runOnce(async () => {
93
- var _this$schemaSource, _this$bi$appLoaded, _this$bi;
94
- const [data, loadedSchema] = await Promise.all([this.fetch(), (_this$schemaSource = this.schemaSource) == null ? void 0 : _this$schemaSource.loadSchema(), container.initTask.status.promise]);
116
+ var _this$fieldsContainer, _this$schemaSource, _this$fieldsContainer2, _this$bi$appLoaded, _this$bi;
117
+ // The field renderers can't translate until this resolves, so the page
118
+ // waits on it alongside the fetch. Idempotent.
119
+ (_this$fieldsContainer = this.fieldsContainer) == null || _this$fieldsContainer.init();
120
+ const [data, loadedSchema] = await Promise.all([this.fetch(), (_this$schemaSource = this.schemaSource) == null ? void 0 : _this$schemaSource.loadSchema(), container.initTask.status.promise, (_this$fieldsContainer2 = this.fieldsContainer) == null ? void 0 : _this$fieldsContainer2.initTask.status.promise]);
95
121
  this.setEntity(data.entity ?? null);
96
- if (loadedSchema) {
122
+ // Don't overwrite a schema something already set. A fields card mirrors the
123
+ // schema its field mutations merge into, and `loadSchema` is memoized — so
124
+ // setting it here again would put the pre-mutation fields map back and drop
125
+ // a field the server already has. Nothing is lost by keeping the newer one:
126
+ // this only ever re-sets the very same object (e.g. on `retryFetch`).
127
+ if (loadedSchema && !this.schema) {
97
128
  this.setSchema(loadedSchema.schema);
98
129
  }
99
130
  (_this$bi$appLoaded = (_this$bi = this.bi).appLoaded) == null || _this$bi$appLoaded.call(_this$bi);
@@ -1 +1 @@
1
- {"version":3,"names":["_bexCore","require","_mobx","_EntityPageStateBIReporter","_events","EntityPageState","constructor","params","_defineProperty2","default","EventEmitter","fetch","onSave","saveSuccessToast","saveErrorToast","formPage","FormPageState","form","_parentPageId","parentPageId","transformEntityToCollectionItem","anEntity","_parentPath","parentPath","schemaSource","container","_routerState","routerState","_this$_routerState$cu","_entity","currentState","_chosenEntity","entity","reportBI","createBILogger","componentType","pageType","route","window","location","pathname","bi","EntityPageStateBIReporter","entityPageState","init","makeObservable","handleSubmit","action","observable","ref","setEntity","_schema","setSchema","isFormDirty","computed","_withinRouter","_checkPageParams","initTask","onBeforeUnload","onBeforeUnloadSubscription","event","isMobileDevice","formState","isSubmitSuccessful","_isSubmitSuccessful","preventDefault","reportOnBeforeUnload","runOnce","_this$schemaSource","_this$bi$appLoaded","_this$bi","data","loadedSchema","Promise","all","loadSchema","status","promise","schema","appLoaded","call","remove","retryFetch","newEntity","isFetching","flag","isDirty","_isFormDirty","val","onCancel","_this$actionsBarConfi","reportButtonClick","ctaName","additionalInfo","actionsBarConfig","cancelCta","biAdditionalInfo","navigateToParent","updatedEntity","entityStringKey","entityObject","navigate","state","navigateTo","pageId","_showErrorToast","err","e","_this$saveErrorToast","_this$container$showT","_this$container","errorToast","retry","message","showTryAgain","tryAgain","undefined","showToast","type","biName","translate","code","uiType","text","onClick","reportSaveTryAgain","removeToastOnClick","_showSuccessToast","_this$saveSuccessToas","_this$container$showT2","_this$container2","submitTask","isLoading","events","emit","isValid","widgetsFormData","validate","_this$actionsBarConfi2","saveCta","run","savedEntity","submitSuccessful","_this$actionsBarConfi3","onSaveResult","errorMonitor","captureException","setError","_this$actionsBarConfi4","transformedItem","Error","exports"],"sources":["../../../../src/state/EntityPage/EntityPageState.ts"],"sourcesContent":["import {\n FormPageState,\n ReportBI,\n WixPatternsContainer,\n ActionsBarConfig,\n isMobileDevice,\n SchemaSource,\n Schema,\n} from '@wix/bex-core';\nimport { action, computed, makeObservable, observable } from 'mobx';\nimport { FieldValues, UseFormReturn } from 'react-hook-form';\nimport { EntityPageStateBIReporter } from './EntityPageStateBIReporter';\nimport { EventEmitter, TypedEmitter } from '@wix/bex-core/events';\nimport { WixPatternsRouterState } from '../WixPatternsRouterState';\n\ntype OnSaveParams = {\n widgetsFormData: { [key: string]: any };\n};\n\ninterface EntityPageStateParamsBase<T, V extends FieldValues = FieldValues> {\n /**\n * A function that fetches the entity data.\n * @returns a promise that resolves to an object containing the entity.\n */\n fetch: () => Promise<{ entity: T | undefined }>;\n\n /**\n * A function to handle the save action.\n * @returns promise that resolves to an object that contains a 'updatedEntity' object.\n */\n onSave: (params: OnSaveParams) => Promise<{ updatedEntity: T }>;\n\n /**\n * An optional object with an optional message, or it can directly get a string message.\n */\n saveSuccessToast?: { message?: string } | string;\n\n /**\n * An optional function to display an error toast message when a save operation fails.\n * @returns An object with a `message` and an `action` object. Alternatively, it can return an object with an optional `message` and a `tryAgain` flag, or a string message.\n * The previous return types are still supported but are now deprecated.\n */\n saveErrorToast?: (\n err: unknown,\n params: { retry: () => void },\n ) =>\n | {\n message?: string;\n /**\n * @deprecated use `action` instead\n */\n tryAgain?: boolean;\n action?: { text: string; onClick: () => void };\n }\n | string;\n\n /**\n * An optional function to transform the updated entity data before it is passed to the collection page.\n * @param entity the updated entity.\n * @returns an object representing the entity in the collection page.\n */\n transformEntityToCollectionItem?: (entity: T) => any;\n\n form: UseFormReturn<V>;\n /**\n * An object representing the container, possibly for dependency injection or component management.\n */\n container: WixPatternsContainer;\n\n /**\n * A string representing the ID of the parent page.\n * Must be passed if not using Patterns Router\n */\n parentPageId?: string;\n\n /**\n * A string representing the path of the parent page.\n * Must be passed if using Patterns Router\n */\n parentPath?: string;\n\n /**\n * An object representing the router state\n */\n routerState?: WixPatternsRouterState | null;\n\n /**\n * An optional object to override the actions bar.\n */\n actionsBarConfig?: ActionsBarConfig;\n\n /**\n * An optional schema source describing how to load the schema and access\n * the entity's data. When present, the page can read fields from the source\n * instead of relying only on hand-wired fetch/onSave callbacks.\n */\n schemaSource?: SchemaSource<T>;\n}\n\nexport type EntityPageStateParams<\n T,\n V extends FieldValues = FieldValues,\n> = EntityPageStateParamsBase<T, V>;\n\nexport interface EntityPageStateInterface {}\n\nexport interface EntityPageWidgetState {\n validate: () => Promise<{ isValid: boolean; values?: any }>;\n isDirty: boolean;\n}\n\nexport class EntityPageState<T, V extends FieldValues = FieldValues>\n implements EntityPageStateInterface\n{\n readonly fetch: EntityPageStateParams<T>['fetch'];\n readonly onSave: EntityPageStateParams<T, V>['onSave'];\n readonly saveSuccessToast?: EntityPageStateParams<T>['saveSuccessToast'];\n readonly saveErrorToast?: EntityPageStateParams<T>['saveErrorToast'];\n readonly transformEntityToCollectionItem: (entity: T) => any;\n\n _entity: T | null = null;\n _schema: Schema | null = null;\n private readonly _parentPageId?: string;\n private readonly _parentPath?: string;\n\n actionsBarConfig?: EntityPageStateParams<T>['actionsBarConfig'];\n\n readonly schemaSource?: SchemaSource<T>;\n\n readonly container: WixPatternsContainer;\n readonly reportBI: ReportBI;\n readonly bi: EntityPageStateBIReporter<T, V>;\n\n _routerState: WixPatternsRouterState | null = null;\n\n readonly formPage: FormPageState<V>;\n\n readonly events = new EventEmitter() as TypedEmitter<{\n save: () => void;\n saveError: (err: unknown) => void;\n }>;\n\n constructor(params: EntityPageStateParams<T, V>) {\n this.fetch = params.fetch;\n this.onSave = params.onSave;\n this.saveSuccessToast = params.saveSuccessToast;\n this.saveErrorToast = params.saveErrorToast;\n this.formPage = new FormPageState<V>({ form: params.form });\n this._parentPageId = params.parentPageId;\n this.transformEntityToCollectionItem =\n params.transformEntityToCollectionItem || ((anEntity: T) => anEntity);\n this._parentPath = params.parentPath;\n this.schemaSource = params.schemaSource;\n\n this.container = params.container;\n\n this._routerState = params.routerState ?? null;\n\n if (this._routerState) {\n this._entity = this._routerState.currentState?._chosenEntity?.entity;\n }\n\n this.reportBI = this.container.createBILogger({\n componentType: 'Entity page',\n pageType: 'Entity',\n route: window.location.pathname,\n });\n\n this.bi = new EntityPageStateBIReporter({\n reportBI: this.reportBI,\n entityPageState: this,\n });\n this.bi.init();\n\n makeObservable(this, {\n handleSubmit: action,\n _entity: observable.ref,\n setEntity: action,\n _schema: observable.ref,\n setSchema: action,\n isFormDirty: computed,\n _withinRouter: computed,\n });\n }\n\n init() {\n this._checkPageParams();\n const {\n formPage: { initTask },\n container,\n } = this;\n const { onBeforeUnload } = container;\n\n const onBeforeUnloadSubscription = onBeforeUnload?.(\n action((event: Event) => {\n if (isMobileDevice()) {\n return;\n }\n\n const { form } = this;\n // Check both react-hook-form's state AND the explicitly set flag\n if (\n form.formState.isSubmitSuccessful ||\n this.formPage._isSubmitSuccessful ||\n !this.isFormDirty\n ) {\n return;\n }\n event.preventDefault();\n this.bi.reportOnBeforeUnload();\n }),\n );\n\n initTask.runOnce(async () => {\n const [data, loadedSchema] = await Promise.all([\n this.fetch(),\n this.schemaSource?.loadSchema(),\n container.initTask.status.promise,\n ]);\n\n this.setEntity(data.entity ?? null);\n if (loadedSchema) {\n this.setSchema(loadedSchema.schema);\n }\n this.bi.appLoaded?.();\n });\n\n return () => {\n onBeforeUnloadSubscription?.remove();\n };\n }\n\n retryFetch() {\n this.formPage.retryFetch();\n }\n\n setEntity(newEntity: T | null) {\n this._entity = newEntity;\n }\n\n get entity(): T | null {\n return this._entity;\n }\n\n setSchema(schema: Schema | null) {\n this._schema = schema;\n }\n\n get schema(): Schema | null {\n return this._schema;\n }\n\n get isFetching() {\n return this.formPage.isFetching;\n }\n\n get form() {\n return this.formPage.form;\n }\n\n set isSubmitSuccessful(flag: boolean) {\n this.formPage.isSubmitSuccessful = flag;\n }\n\n get isFormDirty() {\n return this.formPage.isDirty;\n }\n\n // backwards compatibility\n set _isFormDirty(val: boolean) {\n this.formPage._isFormDirty = val;\n }\n\n get _withinRouter() {\n return !!this._routerState;\n }\n\n onCancel() {\n this.bi.reportButtonClick({\n ctaName: 'Cancel',\n additionalInfo: this.actionsBarConfig?.cancelCta?.biAdditionalInfo,\n });\n this.navigateToParent();\n }\n\n navigateToParent(updatedEntity?: any) {\n const entityStringKey = this._entity ? '_updatedEntity' : '_createdEntity';\n const entityObject = { [entityStringKey]: updatedEntity };\n\n if (this._withinRouter) {\n this._routerState!.navigate(this._parentPath!, { state: entityObject });\n } else {\n this.container.navigateTo!({\n pageId: this._parentPageId!,\n });\n }\n }\n\n _showErrorToast(err: any, e?: React.BaseSyntheticEvent) {\n const errorToast = this.saveErrorToast?.(err, {\n retry: () => this.handleSubmit(e),\n });\n const message =\n typeof errorToast === 'string' ? errorToast : errorToast?.message;\n const showTryAgain =\n typeof errorToast === 'string' ? true : errorToast?.tryAgain !== false;\n const action =\n typeof errorToast === 'string' ? undefined : errorToast?.action;\n\n this.container.showToast?.({\n type: 'ERROR',\n biName: 'cairo-entity-page-save-error-toast',\n message:\n message ??\n this.container.translate(\n err?.code === 'ERR_NETWORK'\n ? 'cairo.entityPage.saveError-offline.toast.description'\n : 'cairo.entityPage.saveError-technical.toast.description',\n ),\n action:\n action || showTryAgain\n ? {\n uiType: 'LINK',\n text:\n action?.text ?? this.container.translate('cairo.toast.retry'),\n onClick: () => {\n if (action?.onClick) {\n action.onClick();\n } else {\n this.bi.reportSaveTryAgain();\n this.handleSubmit(e);\n }\n },\n removeToastOnClick: true,\n }\n : undefined,\n });\n }\n\n _showSuccessToast() {\n const message =\n typeof this.saveSuccessToast === 'string'\n ? this.saveSuccessToast\n : this.saveSuccessToast?.message;\n\n this.container.showToast?.({\n type: 'SUCCESS',\n biName: 'cairo-entity-page-save-success-toast',\n message:\n message ?? this.container.translate('cairo.entityPage.success.toast'),\n });\n }\n\n async handleSubmit(e?: React.BaseSyntheticEvent) {\n if (this.formPage.submitTask.status.isLoading) {\n return;\n }\n\n this.events.emit('save');\n\n const { isValid, data: widgetsFormData } = await this.formPage.validate();\n\n if (!isValid) {\n this.bi.reportButtonClick({\n ctaName: 'Save',\n isValid: false,\n additionalInfo: this.actionsBarConfig?.saveCta?.biAdditionalInfo,\n });\n return;\n }\n\n const {\n form,\n formPage: { submitTask },\n bi,\n } = this;\n\n submitTask.run(async () => {\n let savedEntity: T | undefined;\n let submitSuccessful = false;\n\n await form.handleSubmit(\n async () => {\n bi.reportButtonClick({\n ctaName: 'Save',\n isValid: true,\n additionalInfo: this.actionsBarConfig?.saveCta?.biAdditionalInfo,\n });\n try {\n if (!this.isFetching) {\n const onSaveResult = await this.onSave({\n widgetsFormData,\n });\n savedEntity = onSaveResult?.updatedEntity;\n }\n this._showSuccessToast();\n submitSuccessful = true; // Mark as successful locally\n // Explicitly set isSubmitSuccessful to prevent onBeforeUnload from triggering\n this.isSubmitSuccessful = true;\n } catch (err) {\n this._showErrorToast(err, e);\n this.container.errorMonitor.captureException(err);\n this.events.emit('saveError', err);\n form.setError('root.serverError', {}); // https://react-hook-form.com/docs/useform/seterror\n }\n },\n () => {\n bi.reportButtonClick({\n ctaName: 'Save',\n isValid: false,\n additionalInfo: this.actionsBarConfig?.saveCta?.biAdditionalInfo,\n });\n }, // can be used to report validation errors\n )(e);\n\n if (!submitSuccessful) {\n return;\n }\n const transformedItem =\n savedEntity && this.transformEntityToCollectionItem\n ? this.transformEntityToCollectionItem(savedEntity)\n : savedEntity;\n this.navigateToParent(transformedItem);\n });\n await this.formPage.submitTask.status.promise;\n }\n\n get initTask() {\n return this.formPage.initTask;\n }\n\n get submitTask() {\n return this.formPage.submitTask;\n }\n\n private _checkPageParams() {\n if (this._withinRouter) {\n if (this._parentPath === undefined) {\n throw new Error('parentPath was not defined in useEntityPage');\n }\n } else {\n if (this._parentPageId === undefined) {\n throw new Error('parentPageId was not defined in useEntityPage');\n }\n\n if (!this.container.navigateTo) {\n throw new Error('navigateTo was not defined in Patterns Provider');\n }\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_bexCore","require","_mobx","_schemaFieldsContainer","_EntityPageStateBIReporter","_events","EntityPageState","fieldsContainer","fieldsContainerOf","schemaSource","constructor","params","_defineProperty2","default","EventEmitter","fetch","onSave","saveSuccessToast","saveErrorToast","formPage","FormPageState","form","_parentPageId","parentPageId","transformEntityToCollectionItem","anEntity","_parentPath","parentPath","container","_routerState","routerState","_this$_routerState$cu","_entity","currentState","_chosenEntity","entity","reportBI","createBILogger","componentType","pageType","route","window","location","pathname","bi","EntityPageStateBIReporter","entityPageState","init","makeObservable","handleSubmit","action","observable","ref","setEntity","_schema","setSchema","customColumnsState","isFormDirty","computed","_withinRouter","_checkPageParams","initTask","onBeforeUnload","onBeforeUnloadSubscription","event","isMobileDevice","formState","isSubmitSuccessful","_isSubmitSuccessful","preventDefault","reportOnBeforeUnload","runOnce","_this$fieldsContainer","_this$schemaSource","_this$fieldsContainer2","_this$bi$appLoaded","_this$bi","data","loadedSchema","Promise","all","loadSchema","status","promise","schema","appLoaded","call","remove","retryFetch","newEntity","isFetching","flag","isDirty","_isFormDirty","val","onCancel","_this$actionsBarConfi","reportButtonClick","ctaName","additionalInfo","actionsBarConfig","cancelCta","biAdditionalInfo","navigateToParent","updatedEntity","entityStringKey","entityObject","navigate","state","navigateTo","pageId","_showErrorToast","err","e","_this$saveErrorToast","_this$container$showT","_this$container","errorToast","retry","message","showTryAgain","tryAgain","undefined","showToast","type","biName","translate","code","uiType","text","onClick","reportSaveTryAgain","removeToastOnClick","_showSuccessToast","_this$saveSuccessToas","_this$container$showT2","_this$container2","submitTask","isLoading","events","emit","isValid","widgetsFormData","validate","_this$actionsBarConfi2","saveCta","run","savedEntity","submitSuccessful","_this$actionsBarConfi3","onSaveResult","errorMonitor","captureException","setError","_this$actionsBarConfi4","transformedItem","Error","exports"],"sources":["../../../../src/state/EntityPage/EntityPageState.ts"],"sourcesContent":["import {\n FormPageState,\n ReportBI,\n WixPatternsContainer,\n ActionsBarConfig,\n isMobileDevice,\n SchemaSource,\n Schema,\n} from '@wix/bex-core';\nimport { action, computed, makeObservable, observable } from 'mobx';\nimport type { PatternsFieldsAppContainer } from '@wix/patterns-fields/providers';\nimport { fieldsContainerOf } from '../../model/schemaFieldsContainer';\nimport { FieldValues, UseFormReturn } from 'react-hook-form';\nimport { EntityPageStateBIReporter } from './EntityPageStateBIReporter';\nimport { EventEmitter, TypedEmitter } from '@wix/bex-core/events';\nimport { WixPatternsRouterState } from '../WixPatternsRouterState';\nimport type { SidePanelsState } from '../SidePanelsState';\nimport type { CustomColumnsEntityPageState } from '../CustomColumnsEntityPageState';\n\ntype OnSaveParams = {\n widgetsFormData: { [key: string]: any };\n};\n\ninterface EntityPageStateParamsBase<T, V extends FieldValues = FieldValues> {\n /**\n * A function that fetches the entity data.\n * @returns a promise that resolves to an object containing the entity.\n */\n fetch: () => Promise<{ entity: T | undefined }>;\n\n /**\n * A function to handle the save action.\n * @returns promise that resolves to an object that contains a 'updatedEntity' object.\n */\n onSave: (params: OnSaveParams) => Promise<{ updatedEntity: T }>;\n\n /**\n * An optional object with an optional message, or it can directly get a string message.\n */\n saveSuccessToast?: { message?: string } | string;\n\n /**\n * An optional function to display an error toast message when a save operation fails.\n * @returns An object with a `message` and an `action` object. Alternatively, it can return an object with an optional `message` and a `tryAgain` flag, or a string message.\n * The previous return types are still supported but are now deprecated.\n */\n saveErrorToast?: (\n err: unknown,\n params: { retry: () => void },\n ) =>\n | {\n message?: string;\n /**\n * @deprecated use `action` instead\n */\n tryAgain?: boolean;\n action?: { text: string; onClick: () => void };\n }\n | string;\n\n /**\n * An optional function to transform the updated entity data before it is passed to the collection page.\n * @param entity the updated entity.\n * @returns an object representing the entity in the collection page.\n */\n transformEntityToCollectionItem?: (entity: T) => any;\n\n form: UseFormReturn<V>;\n /**\n * An object representing the container, possibly for dependency injection or component management.\n */\n container: WixPatternsContainer;\n\n /**\n * A string representing the ID of the parent page.\n * Must be passed if not using Patterns Router\n */\n parentPageId?: string;\n\n /**\n * A string representing the path of the parent page.\n * Must be passed if using Patterns Router\n */\n parentPath?: string;\n\n /**\n * An object representing the router state\n */\n routerState?: WixPatternsRouterState | null;\n\n /**\n * An optional object to override the actions bar.\n */\n actionsBarConfig?: ActionsBarConfig;\n\n /**\n * An optional schema source describing how to load the schema and access\n * the entity's data. When present, the page can read fields from the source\n * instead of relying only on hand-wired fetch/onSave callbacks.\n */\n schemaSource?: SchemaSource<T>;\n}\n\nexport type EntityPageStateParams<\n T,\n V extends FieldValues = FieldValues,\n> = EntityPageStateParamsBase<T, V>;\n\nexport interface EntityPageStateInterface {}\n\nexport interface EntityPageWidgetState {\n validate: () => Promise<{ isValid: boolean; values?: any }>;\n isDirty: boolean;\n}\n\nexport class EntityPageState<T, V extends FieldValues = FieldValues>\n implements EntityPageStateInterface\n{\n readonly fetch: EntityPageStateParams<T>['fetch'];\n readonly onSave: EntityPageStateParams<T, V>['onSave'];\n readonly saveSuccessToast?: EntityPageStateParams<T>['saveSuccessToast'];\n readonly saveErrorToast?: EntityPageStateParams<T>['saveErrorToast'];\n readonly transformEntityToCollectionItem: (entity: T) => any;\n\n _entity: T | null = null;\n _schema: Schema | null = null;\n private readonly _parentPageId?: string;\n private readonly _parentPath?: string;\n\n actionsBarConfig?: EntityPageStateParams<T>['actionsBarConfig'];\n\n /**\n * The page's side-panel host, the way a table's lives on its toolbar.\n * Attached by the first feature that needs one, through\n * `SidePanelsState.setOnPage` — so a page with no panels neither builds nor\n * bundles the side-panel code. Everything on the page shares this host, which\n * is what keeps one panel open at a time.\n */\n panels: SidePanelsState | null = null;\n\n /** The fields card's \"Manage fields\" state, set by the card that owns it —\n * the panel is rendered by the host with no props and reads it from here,\n * as a table's panel reads `toolbar.customColumnsState`. */\n customColumnsState: CustomColumnsEntityPageState | null = null;\n\n readonly schemaSource?: SchemaSource<T>;\n\n /**\n * The container the page's field renderers are built with — the one the schema\n * carries, so a table on the same schema shares it. Initialized in `init()`\n * below, next to the schema load the fields also wait on; the schema-entry\n * EntityPage puts it in React context.\n */\n get fieldsContainer(): PatternsFieldsAppContainer | undefined {\n return fieldsContainerOf(this.schemaSource);\n }\n\n readonly container: WixPatternsContainer;\n readonly reportBI: ReportBI;\n readonly bi: EntityPageStateBIReporter<T, V>;\n\n _routerState: WixPatternsRouterState | null = null;\n\n readonly formPage: FormPageState<V>;\n\n readonly events = new EventEmitter() as TypedEmitter<{\n save: () => void;\n saveError: (err: unknown) => void;\n }>;\n\n constructor(params: EntityPageStateParams<T, V>) {\n this.fetch = params.fetch;\n this.onSave = params.onSave;\n this.saveSuccessToast = params.saveSuccessToast;\n this.saveErrorToast = params.saveErrorToast;\n this.formPage = new FormPageState<V>({ form: params.form });\n this._parentPageId = params.parentPageId;\n this.transformEntityToCollectionItem =\n params.transformEntityToCollectionItem || ((anEntity: T) => anEntity);\n this._parentPath = params.parentPath;\n this.schemaSource = params.schemaSource;\n\n this.container = params.container;\n\n this._routerState = params.routerState ?? null;\n\n if (this._routerState) {\n this._entity = this._routerState.currentState?._chosenEntity?.entity;\n }\n\n this.reportBI = this.container.createBILogger({\n componentType: 'Entity page',\n pageType: 'Entity',\n route: window.location.pathname,\n });\n\n this.bi = new EntityPageStateBIReporter({\n reportBI: this.reportBI,\n entityPageState: this,\n });\n this.bi.init();\n\n makeObservable(this, {\n handleSubmit: action,\n _entity: observable.ref,\n setEntity: action,\n _schema: observable.ref,\n setSchema: action,\n customColumnsState: observable.ref,\n isFormDirty: computed,\n _withinRouter: computed,\n });\n }\n\n init() {\n this._checkPageParams();\n const {\n formPage: { initTask },\n container,\n } = this;\n const { onBeforeUnload } = container;\n\n const onBeforeUnloadSubscription = onBeforeUnload?.(\n action((event: Event) => {\n if (isMobileDevice()) {\n return;\n }\n\n const { form } = this;\n // Check both react-hook-form's state AND the explicitly set flag\n if (\n form.formState.isSubmitSuccessful ||\n this.formPage._isSubmitSuccessful ||\n !this.isFormDirty\n ) {\n return;\n }\n event.preventDefault();\n this.bi.reportOnBeforeUnload();\n }),\n );\n\n initTask.runOnce(async () => {\n // The field renderers can't translate until this resolves, so the page\n // waits on it alongside the fetch. Idempotent.\n this.fieldsContainer?.init();\n\n const [data, loadedSchema] = await Promise.all([\n this.fetch(),\n this.schemaSource?.loadSchema(),\n container.initTask.status.promise,\n this.fieldsContainer?.initTask.status.promise,\n ]);\n\n this.setEntity(data.entity ?? null);\n // Don't overwrite a schema something already set. A fields card mirrors the\n // schema its field mutations merge into, and `loadSchema` is memoized — so\n // setting it here again would put the pre-mutation fields map back and drop\n // a field the server already has. Nothing is lost by keeping the newer one:\n // this only ever re-sets the very same object (e.g. on `retryFetch`).\n if (loadedSchema && !this.schema) {\n this.setSchema(loadedSchema.schema);\n }\n this.bi.appLoaded?.();\n });\n\n return () => {\n onBeforeUnloadSubscription?.remove();\n };\n }\n\n retryFetch() {\n this.formPage.retryFetch();\n }\n\n setEntity(newEntity: T | null) {\n this._entity = newEntity;\n }\n\n get entity(): T | null {\n return this._entity;\n }\n\n setSchema(schema: Schema | null) {\n this._schema = schema;\n }\n\n get schema(): Schema | null {\n return this._schema;\n }\n\n get isFetching() {\n return this.formPage.isFetching;\n }\n\n get form() {\n return this.formPage.form;\n }\n\n set isSubmitSuccessful(flag: boolean) {\n this.formPage.isSubmitSuccessful = flag;\n }\n\n get isFormDirty() {\n return this.formPage.isDirty;\n }\n\n // backwards compatibility\n set _isFormDirty(val: boolean) {\n this.formPage._isFormDirty = val;\n }\n\n get _withinRouter() {\n return !!this._routerState;\n }\n\n onCancel() {\n this.bi.reportButtonClick({\n ctaName: 'Cancel',\n additionalInfo: this.actionsBarConfig?.cancelCta?.biAdditionalInfo,\n });\n this.navigateToParent();\n }\n\n navigateToParent(updatedEntity?: any) {\n const entityStringKey = this._entity ? '_updatedEntity' : '_createdEntity';\n const entityObject = { [entityStringKey]: updatedEntity };\n\n if (this._withinRouter) {\n this._routerState!.navigate(this._parentPath!, { state: entityObject });\n } else {\n this.container.navigateTo!({\n pageId: this._parentPageId!,\n });\n }\n }\n\n _showErrorToast(err: any, e?: React.BaseSyntheticEvent) {\n const errorToast = this.saveErrorToast?.(err, {\n retry: () => this.handleSubmit(e),\n });\n const message =\n typeof errorToast === 'string' ? errorToast : errorToast?.message;\n const showTryAgain =\n typeof errorToast === 'string' ? true : errorToast?.tryAgain !== false;\n const action =\n typeof errorToast === 'string' ? undefined : errorToast?.action;\n\n this.container.showToast?.({\n type: 'ERROR',\n biName: 'cairo-entity-page-save-error-toast',\n message:\n message ??\n this.container.translate(\n err?.code === 'ERR_NETWORK'\n ? 'cairo.entityPage.saveError-offline.toast.description'\n : 'cairo.entityPage.saveError-technical.toast.description',\n ),\n action:\n action || showTryAgain\n ? {\n uiType: 'LINK',\n text:\n action?.text ?? this.container.translate('cairo.toast.retry'),\n onClick: () => {\n if (action?.onClick) {\n action.onClick();\n } else {\n this.bi.reportSaveTryAgain();\n this.handleSubmit(e);\n }\n },\n removeToastOnClick: true,\n }\n : undefined,\n });\n }\n\n _showSuccessToast() {\n const message =\n typeof this.saveSuccessToast === 'string'\n ? this.saveSuccessToast\n : this.saveSuccessToast?.message;\n\n this.container.showToast?.({\n type: 'SUCCESS',\n biName: 'cairo-entity-page-save-success-toast',\n message:\n message ?? this.container.translate('cairo.entityPage.success.toast'),\n });\n }\n\n async handleSubmit(e?: React.BaseSyntheticEvent) {\n if (this.formPage.submitTask.status.isLoading) {\n return;\n }\n\n this.events.emit('save');\n\n const { isValid, data: widgetsFormData } = await this.formPage.validate();\n\n if (!isValid) {\n this.bi.reportButtonClick({\n ctaName: 'Save',\n isValid: false,\n additionalInfo: this.actionsBarConfig?.saveCta?.biAdditionalInfo,\n });\n return;\n }\n\n const {\n form,\n formPage: { submitTask },\n bi,\n } = this;\n\n submitTask.run(async () => {\n let savedEntity: T | undefined;\n let submitSuccessful = false;\n\n await form.handleSubmit(\n async () => {\n bi.reportButtonClick({\n ctaName: 'Save',\n isValid: true,\n additionalInfo: this.actionsBarConfig?.saveCta?.biAdditionalInfo,\n });\n try {\n if (!this.isFetching) {\n const onSaveResult = await this.onSave({\n widgetsFormData,\n });\n savedEntity = onSaveResult?.updatedEntity;\n }\n this._showSuccessToast();\n submitSuccessful = true; // Mark as successful locally\n // Explicitly set isSubmitSuccessful to prevent onBeforeUnload from triggering\n this.isSubmitSuccessful = true;\n } catch (err) {\n this._showErrorToast(err, e);\n this.container.errorMonitor.captureException(err);\n this.events.emit('saveError', err);\n form.setError('root.serverError', {}); // https://react-hook-form.com/docs/useform/seterror\n }\n },\n () => {\n bi.reportButtonClick({\n ctaName: 'Save',\n isValid: false,\n additionalInfo: this.actionsBarConfig?.saveCta?.biAdditionalInfo,\n });\n }, // can be used to report validation errors\n )(e);\n\n if (!submitSuccessful) {\n return;\n }\n const transformedItem =\n savedEntity && this.transformEntityToCollectionItem\n ? this.transformEntityToCollectionItem(savedEntity)\n : savedEntity;\n this.navigateToParent(transformedItem);\n });\n await this.formPage.submitTask.status.promise;\n }\n\n get initTask() {\n return this.formPage.initTask;\n }\n\n get submitTask() {\n return this.formPage.submitTask;\n }\n\n private _checkPageParams() {\n if (this._withinRouter) {\n if (this._parentPath === undefined) {\n throw new Error('parentPath was not defined in useEntityPage');\n }\n } else {\n if (this._parentPageId === undefined) {\n throw new Error('parentPageId was not defined in useEntityPage');\n }\n\n if (!this.container.navigateTo) {\n throw new Error('navigateTo was not defined in Patterns Provider');\n }\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}