@rebasepro/admin 0.0.1-canary.eae7889 → 0.0.1-canary.eb08332

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 (716) hide show
  1. package/LICENSE +21 -6
  2. package/README.md +139 -0
  3. package/dist/CollectionEditorDialog-DKGlYDPc.js +3630 -0
  4. package/dist/CollectionEditorDialog-DKGlYDPc.js.map +1 -0
  5. package/dist/PropertyEditView-h0N-AMCY.js +3808 -0
  6. package/dist/PropertyEditView-h0N-AMCY.js.map +1 -0
  7. package/dist/RouterCollectionsStudioView-DdEStpFk.js +192 -0
  8. package/dist/RouterCollectionsStudioView-DdEStpFk.js.map +1 -0
  9. package/dist/collection_editor/ConfigControllerProvider.d.ts +2 -11
  10. package/dist/collection_editor/_cms_internals.d.ts +4 -4
  11. package/dist/collection_editor/api/generateCollectionApi.d.ts +10 -9
  12. package/dist/collection_editor/extensibility_types.d.ts +135 -0
  13. package/dist/collection_editor/index.d.ts +6 -1
  14. package/dist/collection_editor/pgColumnToProperty.d.ts +3 -3
  15. package/dist/collection_editor/serializable_types.d.ts +370 -0
  16. package/dist/collection_editor/serializable_utils.d.ts +50 -0
  17. package/dist/collection_editor/types/collection_editor_controller.d.ts +11 -10
  18. package/dist/collection_editor/types/collection_inference.d.ts +2 -2
  19. package/dist/collection_editor/types/config_controller.d.ts +21 -14
  20. package/dist/collection_editor/ui/AddKanbanColumnAction.d.ts +7 -5
  21. package/dist/collection_editor/ui/CollectionViewHeaderAction.d.ts +7 -5
  22. package/dist/collection_editor/ui/EditorCollectionAction.d.ts +1 -1
  23. package/dist/collection_editor/ui/EditorCollectionActionStart.d.ts +1 -1
  24. package/dist/collection_editor/ui/EditorEntityAction.d.ts +1 -1
  25. package/dist/collection_editor/ui/HomePageEditorCollectionAction.d.ts +1 -1
  26. package/dist/collection_editor/ui/KanbanSetupAction.d.ts +7 -5
  27. package/dist/collection_editor/ui/MissingReferenceWidget.d.ts +1 -1
  28. package/dist/collection_editor/ui/NewCollectionButton.d.ts +1 -1
  29. package/dist/collection_editor/ui/NewCollectionCard.d.ts +1 -1
  30. package/dist/collection_editor/ui/PropertyAddColumnComponent.d.ts +6 -5
  31. package/dist/collection_editor/ui/collection_editor/AICollectionGeneratorPopover.d.ts +4 -4
  32. package/dist/collection_editor/ui/collection_editor/AIModifiedPathsContext.d.ts +1 -1
  33. package/dist/collection_editor/ui/collection_editor/CollectionDetailsForm.d.ts +7 -7
  34. package/dist/collection_editor/ui/collection_editor/CollectionEditorDialog.d.ts +10 -11
  35. package/dist/collection_editor/ui/collection_editor/CollectionEditorWelcomeView.d.ts +4 -4
  36. package/dist/collection_editor/ui/collection_editor/CollectionJsonImportDialog.d.ts +4 -3
  37. package/dist/collection_editor/ui/collection_editor/CollectionPropertiesEditorForm.d.ts +17 -7
  38. package/dist/collection_editor/ui/collection_editor/CollectionRLSTab.d.ts +2 -1
  39. package/dist/collection_editor/ui/collection_editor/CollectionRelationsTab.d.ts +2 -1
  40. package/dist/collection_editor/ui/collection_editor/CollectionStudioView.d.ts +14 -1
  41. package/dist/collection_editor/ui/collection_editor/CollectionYupValidation.d.ts +1 -9
  42. package/dist/collection_editor/ui/collection_editor/CollectionsStudioView.d.ts +25 -2
  43. package/dist/collection_editor/ui/collection_editor/DisplaySettingsForm.d.ts +4 -2
  44. package/dist/collection_editor/ui/collection_editor/EntityActionsEditTab.d.ts +4 -3
  45. package/dist/collection_editor/ui/collection_editor/EntityActionsSelectDialog.d.ts +2 -1
  46. package/dist/collection_editor/ui/collection_editor/EntityCustomViewsSelectDialog.d.ts +2 -1
  47. package/dist/collection_editor/ui/collection_editor/EnumForm.d.ts +2 -1
  48. package/dist/collection_editor/ui/collection_editor/GeneralSettingsForm.d.ts +8 -4
  49. package/dist/collection_editor/ui/collection_editor/GetCodeDialog.d.ts +4 -3
  50. package/dist/collection_editor/ui/collection_editor/KanbanConfigSection.d.ts +2 -1
  51. package/dist/collection_editor/ui/collection_editor/LayoutModeSwitch.d.ts +3 -3
  52. package/dist/collection_editor/ui/collection_editor/PropertyEditView.d.ts +17 -5
  53. package/dist/collection_editor/ui/collection_editor/PropertyFieldPreview.d.ts +2 -2
  54. package/dist/collection_editor/ui/collection_editor/PropertyTree.d.ts +2 -2
  55. package/dist/collection_editor/ui/collection_editor/RouterCollectionStudioView.d.ts +15 -0
  56. package/dist/collection_editor/ui/collection_editor/RouterCollectionsStudioView.d.ts +14 -0
  57. package/dist/collection_editor/ui/collection_editor/SubcollectionsEditTab.d.ts +8 -6
  58. package/dist/collection_editor/ui/collection_editor/SwitchControl.d.ts +3 -2
  59. package/dist/collection_editor/ui/collection_editor/ViewModeSwitch.d.ts +1 -1
  60. package/dist/collection_editor/ui/collection_editor/import/CollectionEditorImportDataPreview.d.ts +1 -1
  61. package/dist/collection_editor/ui/collection_editor/import/CollectionEditorImportMapping.d.ts +3 -2
  62. package/dist/collection_editor/ui/collection_editor/properties/BlockPropertyField.d.ts +2 -1
  63. package/dist/collection_editor/ui/collection_editor/properties/BooleanPropertyField.d.ts +2 -1
  64. package/dist/collection_editor/ui/collection_editor/properties/DateTimePropertyField.d.ts +2 -1
  65. package/dist/collection_editor/ui/collection_editor/properties/EnumPropertyField.d.ts +2 -1
  66. package/dist/collection_editor/ui/collection_editor/properties/KeyValuePropertyField.d.ts +2 -1
  67. package/dist/collection_editor/ui/collection_editor/properties/MapPropertyField.d.ts +2 -1
  68. package/dist/collection_editor/ui/collection_editor/properties/MarkdownPropertyField.d.ts +2 -1
  69. package/dist/collection_editor/ui/collection_editor/properties/NumberPropertyField.d.ts +2 -1
  70. package/dist/collection_editor/ui/collection_editor/properties/ReferencePropertyField.d.ts +3 -2
  71. package/dist/collection_editor/ui/collection_editor/properties/RelationPropertyField.d.ts +3 -8
  72. package/dist/collection_editor/ui/collection_editor/properties/RepeatPropertyField.d.ts +2 -1
  73. package/dist/collection_editor/ui/collection_editor/properties/StoragePropertyField.d.ts +2 -1
  74. package/dist/collection_editor/ui/collection_editor/properties/StringPropertyField.d.ts +2 -1
  75. package/dist/collection_editor/ui/collection_editor/properties/UrlPropertyField.d.ts +2 -1
  76. package/dist/collection_editor/ui/collection_editor/properties/VectorPropertyField.d.ts +4 -0
  77. package/dist/collection_editor/ui/collection_editor/properties/advanced/AdvancedPropertyValidation.d.ts +2 -1
  78. package/dist/collection_editor/ui/collection_editor/properties/conditions/ConditionsEditor.d.ts +2 -1
  79. package/dist/collection_editor/ui/collection_editor/properties/conditions/ConditionsPanel.d.ts +1 -1
  80. package/dist/collection_editor/ui/collection_editor/properties/conditions/EnumConditionsEditor.d.ts +2 -1
  81. package/dist/collection_editor/ui/collection_editor/properties/validation/ArrayPropertyValidation.d.ts +2 -1
  82. package/dist/collection_editor/ui/collection_editor/properties/validation/GeneralPropertyValidation.d.ts +2 -1
  83. package/dist/collection_editor/ui/collection_editor/properties/validation/NumberPropertyValidation.d.ts +2 -1
  84. package/dist/collection_editor/ui/collection_editor/properties/validation/StringPropertyValidation.d.ts +2 -1
  85. package/dist/collection_editor/ui/collection_editor/properties/validation/ValidationPanel.d.ts +1 -1
  86. package/dist/collection_editor/ui/collection_editor/templates/blog_template.d.ts +2 -2
  87. package/dist/collection_editor/ui/collection_editor/templates/pages_template.d.ts +2 -2
  88. package/dist/collection_editor/ui/collection_editor/templates/products_template.d.ts +2 -2
  89. package/dist/collection_editor/ui/collection_editor/templates/users_template.d.ts +2 -2
  90. package/dist/collection_editor/useJsonCollectionsConfigController.d.ts +37 -0
  91. package/dist/collection_editor/useLocalCollectionsConfigController.d.ts +2 -2
  92. package/dist/collection_editor/useSafeSnackbarController.d.ts +2 -0
  93. package/dist/collection_editor/validateCollectionJson.d.ts +2 -2
  94. package/dist/collection_editor_ui.d.ts +4 -0
  95. package/dist/collection_editor_ui.js +33 -11
  96. package/dist/collection_editor_ui.js.map +1 -1
  97. package/dist/components/ArrayContainer.d.ts +5 -5
  98. package/dist/components/ClearFilterSortButton.d.ts +1 -1
  99. package/dist/components/CollectionEditorDialogs.d.ts +2 -1
  100. package/dist/components/CollectionPanel.d.ts +58 -0
  101. package/dist/components/{EntityCollectionTable/EntityCollectionRowActions.d.ts → CollectionTableBinding/CollectionRowActions.d.ts} +5 -5
  102. package/dist/components/CollectionTableBinding/CollectionTableBinding.d.ts +28 -0
  103. package/dist/components/{EntityCollectionTable/EntityCollectionTableProps.d.ts → CollectionTableBinding/CollectionTableBindingProps.d.ts} +4 -4
  104. package/dist/components/{EntityCollectionTable → CollectionTableBinding}/column_utils.d.ts +2 -2
  105. package/dist/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableMultipleRelationField.d.ts +6 -6
  106. package/dist/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableReferenceField.d.ts +6 -6
  107. package/dist/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableRelationField.d.ts +6 -6
  108. package/dist/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableRelationSelectorField.d.ts +3 -2
  109. package/dist/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableStorageUpload.d.ts +4 -4
  110. package/dist/components/{EntityCollectionTable → CollectionTableBinding}/fields/VirtualTableSelect.d.ts +1 -1
  111. package/dist/components/{EntityCollectionTable → CollectionTableBinding}/fields/VirtualTableUserSelect.d.ts +1 -1
  112. package/dist/components/CollectionTableBinding/index.d.ts +6 -0
  113. package/dist/components/{EntityCollectionTable → CollectionTableBinding}/internal/CollectionTableToolbar.d.ts +5 -1
  114. package/dist/components/{EntityCollectionTable → CollectionTableBinding}/internal/EntityTableCell.d.ts +3 -3
  115. package/dist/components/{EntityCollectionTable → CollectionTableBinding}/internal/EntityTableCellActions.d.ts +1 -1
  116. package/dist/components/{EntityCollectionTable → CollectionTableBinding}/internal/common.d.ts +2 -2
  117. package/dist/components/{EntityCollectionTable → CollectionTableBinding}/internal/popup_field/PopupFormField.d.ts +7 -6
  118. package/dist/components/{EntityCollectionTable → CollectionTableBinding}/table_bindings.d.ts +4 -3
  119. package/dist/components/CollectionViewBinding/BoardCardBinding.d.ts +31 -0
  120. package/dist/components/CollectionViewBinding/CollectionBoardViewBinding.d.ts +22 -0
  121. package/dist/components/{EntityCollectionView/EntityCollectionCardView.d.ts → CollectionViewBinding/CollectionCardViewBinding.d.ts} +5 -5
  122. package/dist/components/CollectionViewBinding/CollectionListViewBinding.d.ts +50 -0
  123. package/dist/components/CollectionViewBinding/CollectionViewActions.d.ts +20 -0
  124. package/dist/components/CollectionViewBinding/CollectionViewBinding.d.ts +41 -0
  125. package/dist/components/CollectionViewBinding/CollectionViewStartActions.d.ts +21 -0
  126. package/dist/components/CollectionViewBinding/EntityCardBinding.d.ts +21 -0
  127. package/dist/components/CollectionViewBinding/FilterPresetsButton.d.ts +22 -0
  128. package/dist/components/{EntityCollectionView → CollectionViewBinding}/FiltersDialog.d.ts +3 -2
  129. package/dist/components/{EntityCollectionView → CollectionViewBinding}/SplitListView.d.ts +6 -5
  130. package/dist/components/{EntityCollectionView → CollectionViewBinding}/ViewModeToggle.d.ts +2 -1
  131. package/dist/components/{EntityCollectionView → CollectionViewBinding}/hooks/useCollectionInlineEditor.d.ts +3 -3
  132. package/dist/components/{EntityCollectionView → CollectionViewBinding}/hooks/useKanbanDragAndDrop.d.ts +7 -6
  133. package/dist/components/{EntityCollectionView → CollectionViewBinding}/useBoardDataController.d.ts +2 -2
  134. package/dist/components/{EntityCollectionView/useEntityPreviewSlots.d.ts → CollectionViewBinding/usePreviewSlots.d.ts} +5 -5
  135. package/dist/components/DefaultAppBar.d.ts +18 -1
  136. package/dist/components/DefaultDrawer.d.ts +53 -5
  137. package/dist/components/DeleteEntityDialog.d.ts +6 -5
  138. package/dist/components/DetailViewBinding.d.ts +28 -0
  139. package/dist/components/DrawerNavigationGroup.d.ts +1 -1
  140. package/dist/components/DrawerNavigationItem.d.ts +1 -1
  141. package/dist/components/EditFormActions.d.ts +3 -0
  142. package/dist/components/EditViewBinding.d.ts +58 -0
  143. package/dist/components/{EntityPreview.d.ts → EntityPreviewBinding.d.ts} +14 -14
  144. package/dist/components/EntityViewBinding.d.ts +13 -0
  145. package/dist/components/FieldCaption.d.ts +1 -1
  146. package/dist/components/HomePage/ContentHomePage.d.ts +1 -1
  147. package/dist/components/HomePage/FavouritesView.d.ts +1 -1
  148. package/dist/components/HomePage/HomePageDnD.d.ts +7 -7
  149. package/dist/components/HomePage/NavigationCard.d.ts +1 -1
  150. package/dist/components/HomePage/NavigationCardBinding.d.ts +2 -1
  151. package/dist/components/HomePage/NavigationGroup.d.ts +2 -2
  152. package/dist/components/HomePage/RenameGroupDialog.d.ts +2 -1
  153. package/dist/components/HomePage/SmallNavigationCard.d.ts +1 -1
  154. package/dist/components/JsonPreviewBinding.d.ts +4 -0
  155. package/dist/components/PropertyCollectionView.d.ts +3 -2
  156. package/dist/components/PropertyIdCopyTooltip.d.ts +3 -3
  157. package/dist/components/{RebaseCMS.d.ts → RebaseAdmin.d.ts} +2 -2
  158. package/dist/components/RebaseAuthGate.d.ts +1 -1
  159. package/dist/components/RebaseLayout.d.ts +6 -5
  160. package/dist/components/RebaseNavigation.d.ts +2 -2
  161. package/dist/components/RebaseRouteDefs.d.ts +2 -2
  162. package/dist/components/RebaseShell.d.ts +2 -1
  163. package/dist/components/ReferenceTable/{EntitySelectionTable.d.ts → SelectionTableBinding.d.ts} +6 -6
  164. package/dist/components/ReferenceWidget.d.ts +3 -2
  165. package/dist/components/RelationSelector.d.ts +1 -1
  166. package/dist/components/SearchIconsView.d.ts +2 -1
  167. package/dist/components/SelectableTable/SelectableTable.d.ts +11 -11
  168. package/dist/components/SelectableTable/SelectableTableContext.d.ts +3 -3
  169. package/dist/components/SelectableTable/SelectionStore.d.ts +16 -22
  170. package/dist/components/SelectableTable/filters/BooleanFilterField.d.ts +9 -3
  171. package/dist/components/SelectableTable/filters/DateTimeFilterField.d.ts +10 -3
  172. package/dist/components/SelectableTable/filters/FilterFieldBinding.d.ts +40 -0
  173. package/dist/components/SelectableTable/filters/ReferenceFilterField.d.ts +10 -3
  174. package/dist/components/SelectableTable/filters/RelationFilterField.d.ts +8 -1
  175. package/dist/components/SelectableTable/filters/StringNumberFilterField.d.ts +10 -3
  176. package/dist/components/SideDialogs.d.ts +2 -2
  177. package/dist/components/SidePanelBinding.d.ts +11 -0
  178. package/dist/components/{SideEntityProvider.d.ts → SidePanelProvider.d.ts} +8 -8
  179. package/dist/components/admin/CreationResultDialog.d.ts +6 -0
  180. package/dist/components/admin/index.d.ts +1 -3
  181. package/dist/components/app/AppBar.d.ts +1 -1
  182. package/dist/components/app/Drawer.d.ts +9 -2
  183. package/dist/components/common/default_entity_actions.d.ts +8 -1
  184. package/dist/components/field_configs.d.ts +1 -1
  185. package/dist/components/history/EntityHistoryEntry.d.ts +3 -3
  186. package/dist/components/history/EntityHistoryView.d.ts +1 -1
  187. package/dist/components/history/LastEditedByFormAction.d.ts +2 -1
  188. package/dist/components/history/LastEditedByIndicator.d.ts +4 -3
  189. package/dist/components/history/UserChip.d.ts +1 -1
  190. package/dist/components/index.d.ts +16 -13
  191. package/dist/contexts/SidePanelControllerContext.d.ts +3 -0
  192. package/dist/data_export/export/BasicExportAction.d.ts +2 -1
  193. package/dist/data_export/export/ExportCollectionAction.d.ts +4 -4
  194. package/dist/data_export/export/export.d.ts +3 -3
  195. package/dist/data_import/components/DataNewPropertiesMapping.d.ts +1 -1
  196. package/dist/data_import/components/ImportFileUpload.d.ts +1 -1
  197. package/dist/data_import/components/ImportNewPropertyFieldPreview.d.ts +2 -1
  198. package/dist/data_import/components/ImportSaveInProgress.d.ts +3 -3
  199. package/dist/data_import/import/ImportCollectionAction.d.ts +4 -3
  200. package/dist/data_import/utils/data.d.ts +1 -1
  201. package/dist/data_import/utils/file_headers.d.ts +6 -1
  202. package/dist/data_import/utils/file_to_json.d.ts +1 -11
  203. package/dist/data_import/utils/transforms.d.ts +11 -0
  204. package/dist/editor/components/SlashCommandMenu.d.ts +2 -1
  205. package/dist/editor/components/editor-bubble.d.ts +5 -1
  206. package/dist/editor/components/image-bubble.d.ts +5 -1
  207. package/dist/editor/components/index.d.ts +3 -3
  208. package/dist/editor/components/table-bubble.d.ts +5 -1
  209. package/dist/editor/editor.d.ts +4 -4
  210. package/dist/editor/nodeViews/ReactNodeView.d.ts +4 -1
  211. package/dist/editor/selectors/color-selector.d.ts +1 -1
  212. package/dist/editor/selectors/link-selector.d.ts +1 -1
  213. package/dist/editor/selectors/node-selector.d.ts +1 -1
  214. package/dist/editor/selectors/text-buttons.d.ts +1 -1
  215. package/dist/editor/useProseMirror.d.ts +2 -2
  216. package/dist/editor/utils/remove_classes.d.ts +1 -1
  217. package/dist/editor.js +2625 -3569
  218. package/dist/editor.js.map +1 -1
  219. package/dist/form/EntityForm.d.ts +11 -9
  220. package/dist/form/EntityFormActions.d.ts +2 -1
  221. package/dist/form/EntityFormBinding.d.ts +27 -0
  222. package/dist/form/PropertyFieldBinding.d.ts +1 -1
  223. package/dist/form/components/FieldHelperText.d.ts +1 -1
  224. package/dist/form/components/FormEntry.d.ts +1 -1
  225. package/dist/form/components/FormLayout.d.ts +1 -1
  226. package/dist/form/components/LabelWithIconAndTooltip.d.ts +1 -1
  227. package/dist/form/components/LocalChangesMenu.d.ts +3 -2
  228. package/dist/form/components/StorageItemPreview.d.ts +2 -1
  229. package/dist/form/components/StorageUploadProgress.d.ts +10 -4
  230. package/dist/form/field_bindings/ArrayCustomShapedFieldBinding.d.ts +2 -1
  231. package/dist/form/field_bindings/ArrayOfReferencesFieldBinding.d.ts +2 -1
  232. package/dist/form/field_bindings/BlockFieldBinding.d.ts +2 -1
  233. package/dist/form/field_bindings/DateTimeFieldBinding.d.ts +2 -1
  234. package/dist/form/field_bindings/KeyValueFieldBinding.d.ts +2 -1
  235. package/dist/form/field_bindings/MapFieldBinding.d.ts +2 -1
  236. package/dist/form/field_bindings/MarkdownEditorFieldBinding.d.ts +4 -3
  237. package/dist/form/field_bindings/MultiSelectFieldBinding.d.ts +2 -1
  238. package/dist/form/field_bindings/MultipleRelationFieldBinding.d.ts +2 -1
  239. package/dist/form/field_bindings/ReadOnlyFieldBinding.d.ts +2 -1
  240. package/dist/form/field_bindings/ReferenceFieldBinding.d.ts +2 -1
  241. package/dist/form/field_bindings/RelationFieldBinding.d.ts +2 -1
  242. package/dist/form/field_bindings/RepeatFieldBinding.d.ts +2 -1
  243. package/dist/form/field_bindings/SelectFieldBinding.d.ts +2 -1
  244. package/dist/form/field_bindings/StorageUploadFieldBinding.d.ts +5 -4
  245. package/dist/form/field_bindings/SwitchFieldBinding.d.ts +2 -1
  246. package/dist/form/field_bindings/TextFieldBinding.d.ts +2 -1
  247. package/dist/form/field_bindings/UserSelectFieldBinding.d.ts +2 -1
  248. package/dist/form/field_bindings/VectorFieldBinding.d.ts +12 -0
  249. package/dist/form/form_utils.d.ts +8 -0
  250. package/dist/form/index.d.ts +6 -2
  251. package/dist/form/validation.d.ts +3 -3
  252. package/dist/history-C0FdqGNz.js +311 -0
  253. package/dist/history-C0FdqGNz.js.map +1 -0
  254. package/dist/hooks/index.d.ts +4 -4
  255. package/dist/hooks/navigation/contexts/CollectionRegistryContext.d.ts +2 -2
  256. package/dist/hooks/navigation/useAsyncResolver.d.ts +26 -0
  257. package/dist/hooks/navigation/useBuildCollectionRegistryController.d.ts +2 -0
  258. package/dist/hooks/navigation/useBuildNavigationStateController.d.ts +6 -8
  259. package/dist/hooks/navigation/useNavigationResolution.d.ts +6 -7
  260. package/dist/hooks/navigation/useResolvedCollections.d.ts +11 -7
  261. package/dist/hooks/navigation/useResolvedViews.d.ts +2 -5
  262. package/dist/hooks/navigation/useTopLevelNavigation.d.ts +3 -3
  263. package/dist/hooks/navigation/utils.d.ts +5 -5
  264. package/dist/hooks/useBreadcrumbsController.d.ts +2 -32
  265. package/dist/hooks/useBuildSidePanel.d.ts +6 -0
  266. package/dist/hooks/useCMSContext.d.ts +2 -2
  267. package/dist/hooks/{useEntityHistory.d.ts → useHistory.d.ts} +2 -2
  268. package/dist/hooks/useResolvedNavigationFrom.d.ts +3 -3
  269. package/dist/hooks/{useEntitySelectionDialog.d.ts → useSelectionDialog.d.ts} +2 -2
  270. package/dist/hooks/useSideDialogsController.d.ts +1 -1
  271. package/dist/hooks/useSidePanel.d.ts +11 -0
  272. package/dist/index.d.ts +6 -3
  273. package/dist/index.js +2 -799
  274. package/dist/markdown-CklalUUk.js +526 -0
  275. package/dist/markdown-CklalUUk.js.map +1 -0
  276. package/dist/preview/components/ArrayEnumPreview.d.ts +2 -1
  277. package/dist/preview/components/EmptyValue.d.ts +2 -1
  278. package/dist/preview/components/EnumValuesChip.d.ts +1 -1
  279. package/dist/preview/components/ImagePreview.d.ts +2 -1
  280. package/dist/preview/components/ReferencePreview.d.ts +2 -1
  281. package/dist/preview/components/RelationPreview.d.ts +2 -1
  282. package/dist/preview/components/StorageThumbnail.d.ts +3 -1
  283. package/dist/preview/components/UrlComponentPreview.d.ts +1 -0
  284. package/dist/preview/components/UserPreview.d.ts +6 -3
  285. package/dist/preview/property_previews/ArrayOfMapsPreview.d.ts +2 -1
  286. package/dist/preview/property_previews/ArrayOfReferencesPreview.d.ts +1 -1
  287. package/dist/preview/property_previews/ArrayOfRelationsPreview.d.ts +1 -1
  288. package/dist/preview/property_previews/ArrayOfStorageComponentsPreview.d.ts +2 -1
  289. package/dist/preview/property_previews/ArrayOfStringsPreview.d.ts +2 -1
  290. package/dist/preview/property_previews/ArrayOneOfPreview.d.ts +2 -1
  291. package/dist/preview/property_previews/ArrayPropertyEnumPreview.d.ts +1 -1
  292. package/dist/preview/property_previews/ArrayPropertyPreview.d.ts +2 -1
  293. package/dist/preview/property_previews/MapPropertyPreview.d.ts +3 -2
  294. package/dist/preview/property_previews/SkeletonPropertyComponent.d.ts +5 -4
  295. package/dist/rolldown-runtime-D7D4PA-g.js +13 -0
  296. package/dist/routes/CustomViewRoute.d.ts +2 -1
  297. package/dist/routes/RebaseRoute.d.ts +1 -1
  298. package/dist/src-DLAFyeZI.js +24222 -0
  299. package/dist/src-DLAFyeZI.js.map +1 -0
  300. package/dist/types/components/EntityFormActionsProps.d.ts +4 -4
  301. package/dist/types/components/EntityFormProps.d.ts +65 -5
  302. package/dist/types/components/PropertyPreviewProps.d.ts +6 -1
  303. package/dist/types/components/formex.d.ts +1 -40
  304. package/dist/types/fields.d.ts +23 -12
  305. package/dist/util/dataControllerAdapter.d.ts +27 -0
  306. package/dist/util/navigation_utils.d.ts +16 -6
  307. package/dist/util/previews.d.ts +8 -3
  308. package/dist/util/propertyConfigMapper.d.ts +17 -0
  309. package/dist/util/property_utils.d.ts +3 -3
  310. package/dist/util/resolutions.d.ts +1 -2
  311. package/dist/util/view_constants.d.ts +6 -0
  312. package/package.json +56 -55
  313. package/src/collection_editor/ConfigControllerProvider.tsx +37 -53
  314. package/src/collection_editor/_cms_internals.ts +4 -4
  315. package/src/collection_editor/api/generateCollectionApi.ts +10 -9
  316. package/src/collection_editor/extensibility_types.ts +168 -0
  317. package/src/collection_editor/index.ts +47 -3
  318. package/src/collection_editor/pgColumnToProperty.ts +23 -6
  319. package/src/collection_editor/serializable_types.ts +474 -0
  320. package/src/collection_editor/serializable_utils.ts +576 -0
  321. package/src/collection_editor/types/collection_editor_controller.tsx +8 -11
  322. package/src/collection_editor/types/collection_inference.ts +2 -2
  323. package/src/collection_editor/types/config_controller.tsx +14 -14
  324. package/src/collection_editor/ui/AddKanbanColumnAction.tsx +21 -9
  325. package/src/collection_editor/ui/CollectionViewHeaderAction.tsx +8 -8
  326. package/src/collection_editor/ui/EditorCollectionAction.tsx +9 -14
  327. package/src/collection_editor/ui/EditorCollectionActionStart.tsx +13 -18
  328. package/src/collection_editor/ui/EditorEntityAction.tsx +9 -14
  329. package/src/collection_editor/ui/HomePageEditorCollectionAction.tsx +13 -19
  330. package/src/collection_editor/ui/KanbanSetupAction.tsx +8 -6
  331. package/src/collection_editor/ui/MissingReferenceWidget.tsx +5 -3
  332. package/src/collection_editor/ui/NewCollectionButton.tsx +4 -4
  333. package/src/collection_editor/ui/NewCollectionCard.tsx +8 -13
  334. package/src/collection_editor/ui/PropertyAddColumnComponent.tsx +11 -16
  335. package/src/collection_editor/ui/collection_editor/AICollectionGeneratorPopover.tsx +20 -12
  336. package/src/collection_editor/ui/collection_editor/CollectionDetailsForm.tsx +29 -59
  337. package/src/collection_editor/ui/collection_editor/CollectionEditorDialog.tsx +213 -135
  338. package/src/collection_editor/ui/collection_editor/CollectionEditorWelcomeView.tsx +21 -7
  339. package/src/collection_editor/ui/collection_editor/CollectionJsonImportDialog.tsx +29 -23
  340. package/src/collection_editor/ui/collection_editor/CollectionPropertiesEditorForm.tsx +142 -112
  341. package/src/collection_editor/ui/collection_editor/CollectionRLSTab.tsx +49 -12
  342. package/src/collection_editor/ui/collection_editor/CollectionRelationsTab.tsx +29 -10
  343. package/src/collection_editor/ui/collection_editor/CollectionStudioView.tsx +26 -23
  344. package/src/collection_editor/ui/collection_editor/CollectionsStudioView.tsx +104 -37
  345. package/src/collection_editor/ui/collection_editor/DisplaySettingsForm.tsx +26 -14
  346. package/src/collection_editor/ui/collection_editor/EntityActionsEditTab.tsx +21 -8
  347. package/src/collection_editor/ui/collection_editor/EntityActionsSelectDialog.tsx +1 -1
  348. package/src/collection_editor/ui/collection_editor/EntityCustomViewsSelectDialog.tsx +1 -1
  349. package/src/collection_editor/ui/collection_editor/EnumForm.tsx +20 -5
  350. package/src/collection_editor/ui/collection_editor/GeneralSettingsForm.tsx +45 -12
  351. package/src/collection_editor/ui/collection_editor/GetCodeDialog.tsx +10 -12
  352. package/src/collection_editor/ui/collection_editor/KanbanConfigSection.tsx +5 -6
  353. package/src/collection_editor/ui/collection_editor/LayoutModeSwitch.tsx +17 -5
  354. package/src/collection_editor/ui/collection_editor/PropertyEditView.tsx +190 -27
  355. package/src/collection_editor/ui/collection_editor/PropertyFieldPreview.tsx +58 -49
  356. package/src/collection_editor/ui/collection_editor/PropertyTree.tsx +17 -4
  357. package/src/collection_editor/ui/collection_editor/RouterCollectionStudioView.tsx +44 -0
  358. package/src/collection_editor/ui/collection_editor/RouterCollectionsStudioView.tsx +41 -0
  359. package/src/collection_editor/ui/collection_editor/SubcollectionsEditTab.tsx +27 -13
  360. package/src/collection_editor/ui/collection_editor/SwitchControl.tsx +1 -1
  361. package/src/collection_editor/ui/collection_editor/ViewModeSwitch.tsx +9 -2
  362. package/src/collection_editor/ui/collection_editor/import/CollectionEditorImportDataPreview.tsx +4 -4
  363. package/src/collection_editor/ui/collection_editor/import/CollectionEditorImportMapping.tsx +4 -4
  364. package/src/collection_editor/ui/collection_editor/properties/BlockPropertyField.tsx +5 -6
  365. package/src/collection_editor/ui/collection_editor/properties/BooleanPropertyField.tsx +1 -1
  366. package/src/collection_editor/ui/collection_editor/properties/CommonPropertyFields.tsx +5 -5
  367. package/src/collection_editor/ui/collection_editor/properties/DateTimePropertyField.tsx +10 -10
  368. package/src/collection_editor/ui/collection_editor/properties/EnumPropertyField.tsx +10 -9
  369. package/src/collection_editor/ui/collection_editor/properties/MapPropertyField.tsx +7 -8
  370. package/src/collection_editor/ui/collection_editor/properties/MarkdownPropertyField.tsx +17 -10
  371. package/src/collection_editor/ui/collection_editor/properties/NumberPropertyField.tsx +7 -7
  372. package/src/collection_editor/ui/collection_editor/properties/ReferencePropertyField.tsx +19 -53
  373. package/src/collection_editor/ui/collection_editor/properties/RelationPropertyField.tsx +43 -60
  374. package/src/collection_editor/ui/collection_editor/properties/RepeatPropertyField.tsx +3 -3
  375. package/src/collection_editor/ui/collection_editor/properties/StoragePropertyField.tsx +56 -13
  376. package/src/collection_editor/ui/collection_editor/properties/StringPropertyField.tsx +7 -7
  377. package/src/collection_editor/ui/collection_editor/properties/UrlPropertyField.tsx +4 -3
  378. package/src/collection_editor/ui/collection_editor/properties/VectorPropertyField.tsx +34 -0
  379. package/src/collection_editor/ui/collection_editor/properties/advanced/AdvancedPropertyValidation.tsx +5 -6
  380. package/src/collection_editor/ui/collection_editor/properties/conditions/ConditionsEditor.tsx +18 -9
  381. package/src/collection_editor/ui/collection_editor/properties/conditions/ConditionsPanel.tsx +1 -2
  382. package/src/collection_editor/ui/collection_editor/properties/conditions/EnumConditionsEditor.tsx +17 -5
  383. package/src/collection_editor/ui/collection_editor/properties/conditions/property_paths.ts +1 -1
  384. package/src/collection_editor/ui/collection_editor/properties/validation/ArrayPropertyValidation.tsx +4 -4
  385. package/src/collection_editor/ui/collection_editor/properties/validation/GeneralPropertyValidation.tsx +3 -3
  386. package/src/collection_editor/ui/collection_editor/properties/validation/NumberPropertyValidation.tsx +6 -9
  387. package/src/collection_editor/ui/collection_editor/properties/validation/StringPropertyValidation.tsx +6 -6
  388. package/src/collection_editor/ui/collection_editor/properties/validation/ValidationPanel.tsx +1 -2
  389. package/src/collection_editor/ui/collection_editor/templates/blog_template.ts +3 -3
  390. package/src/collection_editor/ui/collection_editor/templates/pages_template.ts +3 -3
  391. package/src/collection_editor/ui/collection_editor/templates/products_template.ts +4 -4
  392. package/src/collection_editor/ui/collection_editor/templates/users_template.ts +2 -2
  393. package/src/collection_editor/ui/collection_editor/utils/supported_fields.tsx +0 -1
  394. package/src/collection_editor/ui/collection_editor/utils/update_property_for_widget.ts +7 -29
  395. package/src/collection_editor/useJsonCollectionsConfigController.tsx +286 -0
  396. package/src/collection_editor/useLocalCollectionsConfigController.tsx +11 -8
  397. package/src/collection_editor/useSafeSnackbarController.ts +9 -0
  398. package/src/collection_editor/validateCollectionJson.ts +111 -24
  399. package/src/collection_editor_ui.ts +6 -0
  400. package/src/components/AdminModeSyncer.tsx +2 -2
  401. package/src/components/ArrayContainer.tsx +28 -24
  402. package/src/components/ClearFilterSortButton.tsx +2 -3
  403. package/src/components/CollectionEditorDialogs.tsx +1 -1
  404. package/src/components/CollectionPanel.tsx +178 -0
  405. package/src/components/{EntityCollectionTable/EntityCollectionRowActions.tsx → CollectionTableBinding/CollectionRowActions.tsx} +26 -16
  406. package/src/components/{EntityCollectionTable/EntityCollectionTable.tsx → CollectionTableBinding/CollectionTableBinding.tsx} +34 -31
  407. package/src/components/{EntityCollectionTable/EntityCollectionTableProps.tsx → CollectionTableBinding/CollectionTableBindingProps.tsx} +4 -4
  408. package/src/components/{EntityCollectionTable → CollectionTableBinding}/PropertyTableCell.tsx +14 -12
  409. package/src/components/{EntityCollectionTable → CollectionTableBinding}/column_utils.tsx +4 -4
  410. package/src/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableMultipleRelationField.tsx +13 -13
  411. package/src/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableReferenceField.tsx +39 -19
  412. package/src/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableRelationField.tsx +14 -14
  413. package/src/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableRelationSelectorField.tsx +3 -3
  414. package/src/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableStorageUpload.tsx +29 -27
  415. package/src/components/{EntityCollectionTable → CollectionTableBinding}/fields/VirtualTableSelect.tsx +0 -1
  416. package/src/components/CollectionTableBinding/index.tsx +14 -0
  417. package/src/components/{EntityCollectionTable → CollectionTableBinding}/internal/CollectionTableToolbar.tsx +22 -28
  418. package/src/components/{EntityCollectionTable → CollectionTableBinding}/internal/EntityTableCell.tsx +8 -9
  419. package/src/components/{EntityCollectionTable → CollectionTableBinding}/internal/EntityTableCellActions.tsx +2 -3
  420. package/src/components/{EntityCollectionTable → CollectionTableBinding}/internal/common.tsx +7 -7
  421. package/src/components/{EntityCollectionTable → CollectionTableBinding}/internal/popup_field/PopupFormField.tsx +12 -13
  422. package/src/components/{EntityCollectionTable → CollectionTableBinding}/internal/popup_field/useDraggable.tsx +5 -2
  423. package/src/components/{EntityCollectionTable → CollectionTableBinding}/table_bindings.tsx +101 -104
  424. package/src/components/{EntityCollectionView/EntityBoardCard.tsx → CollectionViewBinding/BoardCardBinding.tsx} +39 -40
  425. package/src/components/{EntityCollectionView/EntityCollectionBoardView.tsx → CollectionViewBinding/CollectionBoardViewBinding.tsx} +88 -52
  426. package/src/components/CollectionViewBinding/CollectionCardViewBinding.tsx +157 -0
  427. package/src/components/{EntityCollectionView/EntityCollectionListView.tsx → CollectionViewBinding/CollectionListViewBinding.tsx} +234 -151
  428. package/src/components/{EntityCollectionView/EntityCollectionViewActions.tsx → CollectionViewBinding/CollectionViewActions.tsx} +36 -26
  429. package/src/components/{EntityCollectionView/EntityCollectionView.tsx → CollectionViewBinding/CollectionViewBinding.tsx} +392 -213
  430. package/src/components/{EntityCollectionView/EntityCollectionViewStartActions.tsx → CollectionViewBinding/CollectionViewStartActions.tsx} +42 -23
  431. package/src/components/{EntityCollectionView/EntityCard.tsx → CollectionViewBinding/EntityCardBinding.tsx} +14 -14
  432. package/src/components/CollectionViewBinding/FilterPresetsButton.tsx +294 -0
  433. package/src/components/{EntityCollectionView → CollectionViewBinding}/FiltersDialog.tsx +37 -79
  434. package/src/components/{EntityCollectionView → CollectionViewBinding}/SplitListView.tsx +97 -30
  435. package/src/components/{EntityCollectionView → CollectionViewBinding}/ViewModeToggle.tsx +20 -8
  436. package/src/components/{EntityCollectionView → CollectionViewBinding}/hooks/useCollectionInlineEditor.ts +9 -8
  437. package/src/components/{EntityCollectionView → CollectionViewBinding}/hooks/useKanbanDragAndDrop.ts +17 -16
  438. package/src/components/{EntityCollectionView → CollectionViewBinding}/useBoardDataController.tsx +118 -70
  439. package/src/components/{EntityCollectionView/useEntityPreviewSlots.ts → CollectionViewBinding/usePreviewSlots.ts} +136 -48
  440. package/src/components/DefaultAppBar.tsx +73 -41
  441. package/src/components/DefaultDrawer.tsx +317 -85
  442. package/src/components/DeleteEntityDialog.tsx +7 -7
  443. package/src/components/DetailViewBinding.tsx +670 -0
  444. package/src/components/DrawerNavigationGroup.tsx +11 -11
  445. package/src/components/DrawerNavigationItem.tsx +6 -6
  446. package/src/components/{EntityEditViewFormActions.tsx → EditFormActions.tsx} +78 -59
  447. package/src/components/EditViewBinding.tsx +761 -0
  448. package/src/components/{EntityPreview.tsx → EntityPreviewBinding.tsx} +53 -39
  449. package/src/components/{EntityView.tsx → EntityViewBinding.tsx} +8 -9
  450. package/src/components/HomePage/ContentHomePage.tsx +35 -17
  451. package/src/components/HomePage/FavouritesView.tsx +2 -3
  452. package/src/components/HomePage/HomePageDnD.tsx +3 -2
  453. package/src/components/HomePage/NavigationCard.tsx +9 -16
  454. package/src/components/HomePage/NavigationCardBinding.tsx +6 -7
  455. package/src/components/HomePage/NavigationGroup.tsx +4 -5
  456. package/src/components/HomePage/RenameGroupDialog.tsx +1 -1
  457. package/src/components/HomePage/SmallNavigationCard.tsx +0 -5
  458. package/src/components/{EntityJsonPreview.tsx → JsonPreviewBinding.tsx} +2 -2
  459. package/src/components/PropertyCollectionView.tsx +2 -1
  460. package/src/components/PropertyIdCopyTooltip.tsx +2 -3
  461. package/src/components/{RebaseCMS.tsx → RebaseAdmin.tsx} +8 -6
  462. package/src/components/RebaseAuthGate.tsx +5 -3
  463. package/src/components/RebaseLayout.tsx +10 -9
  464. package/src/components/RebaseNavigation.tsx +107 -31
  465. package/src/components/RebaseRouteDefs.tsx +10 -13
  466. package/src/components/RebaseShell.tsx +18 -14
  467. package/src/components/ReferenceTable/{EntitySelectionTable.tsx → SelectionTableBinding.tsx} +40 -33
  468. package/src/components/ReferenceWidget.tsx +7 -7
  469. package/src/components/RelationSelector.tsx +82 -24
  470. package/src/components/SearchIconsView.tsx +13 -12
  471. package/src/components/SelectableTable/SelectableTable.tsx +68 -115
  472. package/src/components/SelectableTable/SelectableTableContext.tsx +4 -3
  473. package/src/components/SelectableTable/SelectionStore.ts +20 -44
  474. package/src/components/SelectableTable/filters/BooleanFilterField.tsx +13 -5
  475. package/src/components/SelectableTable/filters/DateTimeFilterField.tsx +37 -16
  476. package/src/components/SelectableTable/filters/FilterFieldBinding.tsx +187 -0
  477. package/src/components/SelectableTable/filters/ReferenceFilterField.tsx +27 -13
  478. package/src/components/SelectableTable/filters/RelationFilterField.tsx +17 -3
  479. package/src/components/SelectableTable/filters/StringNumberFilterField.tsx +95 -35
  480. package/src/components/SideDialogs.tsx +58 -40
  481. package/src/components/SidePanelBinding.tsx +261 -0
  482. package/src/components/{SideEntityProvider.tsx → SidePanelProvider.tsx} +17 -16
  483. package/src/components/UserSelector.tsx +123 -9
  484. package/src/components/admin/CreationResultDialog.tsx +138 -0
  485. package/src/components/admin/index.ts +1 -3
  486. package/src/components/app/Drawer.tsx +9 -1
  487. package/src/components/app/Scaffold.tsx +16 -9
  488. package/src/components/common/default_entity_actions.tsx +270 -29
  489. package/src/components/field_configs.tsx +68 -46
  490. package/src/components/history/EntityHistoryEntry.tsx +4 -5
  491. package/src/components/history/EntityHistoryView.tsx +18 -8
  492. package/src/components/history/LastEditedByIndicator.tsx +4 -4
  493. package/src/components/index.ts +20 -17
  494. package/src/contexts/BreacrumbsContext.tsx +15 -6
  495. package/src/contexts/SidePanelControllerContext.tsx +5 -0
  496. package/src/data_export/export/BasicExportAction.tsx +42 -43
  497. package/src/data_export/export/ExportCollectionAction.tsx +55 -54
  498. package/src/data_export/export/export.ts +17 -17
  499. package/src/data_import/components/DataNewPropertiesMapping.tsx +17 -4
  500. package/src/data_import/components/ImportFileUpload.tsx +2 -3
  501. package/src/data_import/components/ImportNewPropertyFieldPreview.tsx +2 -3
  502. package/src/data_import/components/ImportSaveInProgress.tsx +4 -4
  503. package/src/data_import/import/ImportCollectionAction.tsx +26 -13
  504. package/src/data_import/utils/data.ts +26 -8
  505. package/src/data_import/utils/file_headers.ts +13 -89
  506. package/src/data_import/utils/file_to_json.ts +43 -68
  507. package/src/data_import/utils/get_properties_mapping.ts +1 -1
  508. package/src/data_import/utils/transforms.ts +47 -0
  509. package/src/editor/components/SlashCommandMenu.tsx +17 -2
  510. package/src/editor/components/editor-bubble-item.tsx +1 -1
  511. package/src/editor/components/editor-bubble.tsx +32 -9
  512. package/src/editor/components/image-bubble.tsx +28 -12
  513. package/src/editor/components/index.ts +3 -3
  514. package/src/editor/components/table-bubble.tsx +80 -18
  515. package/src/editor/editor.tsx +34 -15
  516. package/src/editor/extensions/HighlightDecorationExtension.ts +3 -2
  517. package/src/editor/extensions/Image/index.ts +3 -3
  518. package/src/editor/extensions/Image.ts +3 -3
  519. package/src/editor/extensions/clipboard.ts +2 -2
  520. package/src/editor/markdown-it-plugins.d.ts +24 -0
  521. package/src/editor/markdown.ts +2 -3
  522. package/src/editor/nodeViews/ReactNodeView.tsx +1 -1
  523. package/src/editor/nodeViews/TaskItemComponent.tsx +9 -8
  524. package/src/editor/schema.ts +135 -59
  525. package/src/editor/selectors/ai-selector.tsx +0 -1
  526. package/src/editor/selectors/color-selector.tsx +1 -2
  527. package/src/editor/selectors/link-selector.tsx +9 -7
  528. package/src/editor/selectors/node-selector.tsx +17 -3
  529. package/src/editor/selectors/text-buttons.tsx +1 -2
  530. package/src/editor/useProseMirror.ts +2 -2
  531. package/src/editor/utils/prosemirror-utils.ts +1 -1
  532. package/src/editor/utils/remove_classes.ts +6 -5
  533. package/src/form/EntityForm.tsx +222 -442
  534. package/src/form/EntityFormActions.tsx +49 -55
  535. package/src/form/EntityFormBinding.tsx +323 -0
  536. package/src/form/PropertyFieldBinding.tsx +81 -84
  537. package/src/form/components/ErrorFocus.tsx +1 -1
  538. package/src/form/components/FieldHelperText.tsx +6 -7
  539. package/src/form/components/FormLayout.tsx +1 -1
  540. package/src/form/components/LocalChangesMenu.tsx +20 -5
  541. package/src/form/components/StorageItemPreview.tsx +2 -3
  542. package/src/form/components/StorageUploadProgress.tsx +14 -7
  543. package/src/form/field_bindings/ArrayCustomShapedFieldBinding.tsx +5 -5
  544. package/src/form/field_bindings/ArrayOfReferencesFieldBinding.tsx +12 -13
  545. package/src/form/field_bindings/BlockFieldBinding.tsx +59 -58
  546. package/src/form/field_bindings/DateTimeFieldBinding.tsx +2 -2
  547. package/src/form/field_bindings/KeyValueFieldBinding.tsx +319 -303
  548. package/src/form/field_bindings/MapFieldBinding.tsx +14 -56
  549. package/src/form/field_bindings/MarkdownEditorFieldBinding.tsx +28 -10
  550. package/src/form/field_bindings/MultiSelectFieldBinding.tsx +3 -4
  551. package/src/form/field_bindings/MultipleRelationFieldBinding.tsx +11 -12
  552. package/src/form/field_bindings/ReadOnlyFieldBinding.tsx +9 -2
  553. package/src/form/field_bindings/ReferenceFieldBinding.tsx +17 -15
  554. package/src/form/field_bindings/RelationFieldBinding.tsx +157 -156
  555. package/src/form/field_bindings/RepeatFieldBinding.tsx +8 -8
  556. package/src/form/field_bindings/SelectFieldBinding.tsx +3 -4
  557. package/src/form/field_bindings/StorageUploadFieldBinding.tsx +107 -103
  558. package/src/form/field_bindings/SwitchFieldBinding.tsx +17 -17
  559. package/src/form/field_bindings/TextFieldBinding.tsx +90 -78
  560. package/src/form/field_bindings/UserSelectFieldBinding.tsx +18 -18
  561. package/src/form/field_bindings/VectorFieldBinding.tsx +202 -0
  562. package/src/form/form_utils.ts +163 -0
  563. package/src/form/index.tsx +15 -6
  564. package/src/form/useClearRestoreValue.tsx +1 -1
  565. package/src/form/validation.ts +104 -50
  566. package/src/hooks/index.ts +4 -4
  567. package/src/hooks/navigation/contexts/CollectionRegistryContext.tsx +5 -4
  568. package/src/hooks/navigation/contexts/NavigationStateContext.tsx +2 -2
  569. package/src/hooks/navigation/contexts/UrlContext.tsx +1 -2
  570. package/src/hooks/navigation/useAsyncResolver.ts +100 -0
  571. package/src/hooks/navigation/useBuildCollectionRegistryController.tsx +40 -21
  572. package/src/hooks/navigation/useBuildNavigationStateController.tsx +21 -22
  573. package/src/hooks/navigation/useNavigationResolution.ts +193 -21
  574. package/src/hooks/navigation/useResolvedCollections.ts +45 -77
  575. package/src/hooks/navigation/useResolvedViews.tsx +44 -123
  576. package/src/hooks/navigation/useTopLevelNavigation.ts +22 -18
  577. package/src/hooks/navigation/utils.ts +12 -9
  578. package/src/hooks/useBreadcrumbsController.tsx +2 -34
  579. package/src/hooks/{useBuildSideEntityController.tsx → useBuildSidePanel.tsx} +63 -24
  580. package/src/hooks/useCMSContext.tsx +7 -7
  581. package/src/hooks/{useEntityHistory.ts → useHistory.ts} +9 -4
  582. package/src/hooks/useResolvedNavigationFrom.tsx +8 -5
  583. package/src/hooks/{useEntitySelectionDialog.tsx → useSelectionDialog.tsx} +7 -7
  584. package/src/hooks/useSideDialogsController.tsx +1 -1
  585. package/src/hooks/useSidePanel.tsx +13 -0
  586. package/src/index.ts +34 -20
  587. package/src/preview/PropertyPreview.tsx +34 -41
  588. package/src/preview/components/DatePreview.tsx +1 -1
  589. package/src/preview/components/EnumValuesChip.tsx +1 -1
  590. package/src/preview/components/ImagePreview.tsx +4 -3
  591. package/src/preview/components/ReferencePreview.tsx +69 -18
  592. package/src/preview/components/RelationPreview.tsx +107 -18
  593. package/src/preview/components/StorageThumbnail.tsx +28 -8
  594. package/src/preview/components/UrlComponentPreview.tsx +12 -4
  595. package/src/preview/components/UserPreview.tsx +6 -15
  596. package/src/preview/property_previews/ArrayOfMapsPreview.tsx +5 -5
  597. package/src/preview/property_previews/ArrayOfReferencesPreview.tsx +5 -5
  598. package/src/preview/property_previews/ArrayOfRelationsPreview.tsx +4 -4
  599. package/src/preview/property_previews/ArrayOfStorageComponentsPreview.tsx +4 -4
  600. package/src/preview/property_previews/ArrayOfStringsPreview.tsx +3 -2
  601. package/src/preview/property_previews/ArrayOneOfPreview.tsx +7 -9
  602. package/src/preview/property_previews/ArrayPropertyEnumPreview.tsx +1 -1
  603. package/src/preview/property_previews/ArrayPropertyPreview.tsx +4 -4
  604. package/src/preview/property_previews/MapPropertyPreview.tsx +4 -3
  605. package/src/preview/property_previews/NumberPropertyPreview.tsx +5 -3
  606. package/src/preview/property_previews/SkeletonPropertyComponent.tsx +24 -25
  607. package/src/preview/property_previews/StringPropertyPreview.tsx +13 -11
  608. package/src/routes/CustomViewRoute.tsx +14 -6
  609. package/src/routes/RebaseRoute.tsx +112 -36
  610. package/src/types/components/EntityFormActionsProps.tsx +4 -4
  611. package/src/types/components/EntityFormProps.tsx +75 -5
  612. package/src/types/components/PropertyPreviewProps.tsx +6 -1
  613. package/src/types/components/formex.tsx +1 -45
  614. package/src/types/fields.tsx +26 -15
  615. package/src/util/dataControllerAdapter.ts +87 -0
  616. package/src/util/navigation_utils.ts +43 -13
  617. package/src/util/previews.ts +149 -13
  618. package/src/util/propertyConfigMapper.ts +134 -0
  619. package/src/util/property_utils.tsx +24 -9
  620. package/src/util/resolutions.ts +4 -8
  621. package/src/util/view_constants.ts +6 -0
  622. package/dist/CollectionEditorDialog-B2M9lCyL.js +0 -4720
  623. package/dist/CollectionEditorDialog-B2M9lCyL.js.map +0 -1
  624. package/dist/CollectionsStudioView-WG6soyfs.js +0 -218
  625. package/dist/CollectionsStudioView-WG6soyfs.js.map +0 -1
  626. package/dist/ContentHomePage-CDF_a6Lp.js +0 -1786
  627. package/dist/ContentHomePage-CDF_a6Lp.js.map +0 -1
  628. package/dist/ExportCollectionAction-Dc0VOWMN.js +0 -439
  629. package/dist/ExportCollectionAction-Dc0VOWMN.js.map +0 -1
  630. package/dist/ImportCollectionAction-DpCagAOy.js +0 -686
  631. package/dist/ImportCollectionAction-DpCagAOy.js.map +0 -1
  632. package/dist/PropertyEditView-DS67DxoT.js +0 -8138
  633. package/dist/PropertyEditView-DS67DxoT.js.map +0 -1
  634. package/dist/RoleChip-QtUFXeTp.js +0 -67
  635. package/dist/RoleChip-QtUFXeTp.js.map +0 -1
  636. package/dist/RolesView-CIuYBimF.js +0 -424
  637. package/dist/RolesView-CIuYBimF.js.map +0 -1
  638. package/dist/UsersView-B5zelXnH.js +0 -493
  639. package/dist/UsersView-B5zelXnH.js.map +0 -1
  640. package/dist/collection_editor/types/config_permissions.d.ts +0 -19
  641. package/dist/components/EntityCollectionTable/EntityCollectionTable.d.ts +0 -27
  642. package/dist/components/EntityCollectionTable/fields/VirtualTableDateField.d.ts +0 -12
  643. package/dist/components/EntityCollectionTable/fields/VirtualTableInput.d.ts +0 -9
  644. package/dist/components/EntityCollectionTable/fields/VirtualTableNumberInput.d.ts +0 -8
  645. package/dist/components/EntityCollectionTable/fields/VirtualTableSwitch.d.ts +0 -7
  646. package/dist/components/EntityCollectionTable/index.d.ts +0 -6
  647. package/dist/components/EntityCollectionView/Board.d.ts +0 -2
  648. package/dist/components/EntityCollectionView/BoardColumn.d.ts +0 -42
  649. package/dist/components/EntityCollectionView/BoardColumnTitle.d.ts +0 -9
  650. package/dist/components/EntityCollectionView/BoardSortableList.d.ts +0 -14
  651. package/dist/components/EntityCollectionView/EntityBoardCard.d.ts +0 -31
  652. package/dist/components/EntityCollectionView/EntityCard.d.ts +0 -20
  653. package/dist/components/EntityCollectionView/EntityCollectionBoardView.d.ts +0 -21
  654. package/dist/components/EntityCollectionView/EntityCollectionListView.d.ts +0 -34
  655. package/dist/components/EntityCollectionView/EntityCollectionView.d.ts +0 -64
  656. package/dist/components/EntityCollectionView/EntityCollectionViewActions.d.ts +0 -18
  657. package/dist/components/EntityCollectionView/EntityCollectionViewStartActions.d.ts +0 -18
  658. package/dist/components/EntityCollectionView/board_types.d.ts +0 -105
  659. package/dist/components/EntityEditView.d.ts +0 -49
  660. package/dist/components/EntityEditViewFormActions.d.ts +0 -2
  661. package/dist/components/EntityJsonPreview.d.ts +0 -3
  662. package/dist/components/EntitySidePanel.d.ts +0 -10
  663. package/dist/components/EntityView.d.ts +0 -12
  664. package/dist/components/admin/RoleChip.d.ts +0 -4
  665. package/dist/components/admin/RolesView.d.ts +0 -4
  666. package/dist/components/admin/UsersView.d.ts +0 -4
  667. package/dist/contexts/SideEntityControllerContext.d.ts +0 -3
  668. package/dist/form/field_bindings/ReferenceAsStringFieldBinding.d.ts +0 -10
  669. package/dist/hooks/navigation/useNavigationRegistry.d.ts +0 -11
  670. package/dist/hooks/navigation/useNavigationURLs.d.ts +0 -11
  671. package/dist/hooks/useBuildSideEntityController.d.ts +0 -6
  672. package/dist/hooks/useSideEntityController.d.ts +0 -11
  673. package/dist/index-CBhrgpR7.js +0 -12
  674. package/dist/index-CBhrgpR7.js.map +0 -1
  675. package/dist/index-CHxgwt6E.js +0 -456
  676. package/dist/index-CHxgwt6E.js.map +0 -1
  677. package/dist/index-Dey5WJpO.js +0 -8
  678. package/dist/index-Dey5WJpO.js.map +0 -1
  679. package/dist/index.js.map +0 -1
  680. package/dist/markdown-z2Ir7Cgo.js +0 -618
  681. package/dist/markdown-z2Ir7Cgo.js.map +0 -1
  682. package/dist/useEntityHistory-Dcj4zhGj.js +0 -121
  683. package/dist/useEntityHistory-Dcj4zhGj.js.map +0 -1
  684. package/dist/util-BQ82ySL3.js +0 -27720
  685. package/dist/util-BQ82ySL3.js.map +0 -1
  686. package/src/collection_editor/types/config_permissions.ts +0 -20
  687. package/src/components/EntityCollectionTable/fields/VirtualTableDateField.tsx +0 -39
  688. package/src/components/EntityCollectionTable/fields/VirtualTableInput.tsx +0 -90
  689. package/src/components/EntityCollectionTable/fields/VirtualTableNumberInput.tsx +0 -80
  690. package/src/components/EntityCollectionTable/fields/VirtualTableSwitch.tsx +0 -32
  691. package/src/components/EntityCollectionTable/index.tsx +0 -14
  692. package/src/components/EntityCollectionView/Board.tsx +0 -474
  693. package/src/components/EntityCollectionView/BoardColumn.tsx +0 -158
  694. package/src/components/EntityCollectionView/BoardColumnTitle.tsx +0 -45
  695. package/src/components/EntityCollectionView/BoardSortableList.tsx +0 -177
  696. package/src/components/EntityCollectionView/EntityCollectionCardView.tsx +0 -267
  697. package/src/components/EntityCollectionView/board_types.ts +0 -113
  698. package/src/components/EntityEditView.tsx +0 -632
  699. package/src/components/EntitySidePanel.tsx +0 -160
  700. package/src/components/admin/RoleChip.tsx +0 -23
  701. package/src/components/admin/RolesView.tsx +0 -419
  702. package/src/components/admin/UsersView.tsx +0 -782
  703. package/src/contexts/SideEntityControllerContext.tsx +0 -5
  704. package/src/form/field_bindings/ReferenceAsStringFieldBinding.tsx +0 -141
  705. package/src/hooks/navigation/useNavigationRegistry.ts +0 -153
  706. package/src/hooks/navigation/useNavigationURLs.ts +0 -56
  707. package/src/hooks/useSideEntityController.tsx +0 -13
  708. /package/dist/components/{EntityCollectionTable → CollectionTableBinding}/PropertyTableCell.d.ts +0 -0
  709. /package/dist/components/{EntityCollectionTable → CollectionTableBinding}/internal/popup_field/useDraggable.d.ts +0 -0
  710. /package/dist/components/{EntityCollectionTable → CollectionTableBinding}/internal/popup_field/useWindowSize.d.ts +0 -0
  711. /package/dist/components/{EntityCollectionView → CollectionViewBinding}/useSelectionController.d.ts +0 -0
  712. /package/dist/components/{EntityCollectionView → CollectionViewBinding}/utils.d.ts +0 -0
  713. /package/src/components/{EntityCollectionTable → CollectionTableBinding}/fields/VirtualTableUserSelect.tsx +0 -0
  714. /package/src/components/{EntityCollectionTable → CollectionTableBinding}/internal/popup_field/useWindowSize.tsx +0 -0
  715. /package/src/components/{EntityCollectionView → CollectionViewBinding}/useSelectionController.tsx +0 -0
  716. /package/src/components/{EntityCollectionView → CollectionViewBinding}/utils.ts +0 -0
@@ -1,43 +1,75 @@
1
-
2
- import { useUnsavedChangesDialog, UnsavedChangesDialog } from "@rebasepro/core";
3
- import { useNavigationStateController, useCollectionRegistryController, useUrlController } from "../../_cms_internals";
4
1
  import * as React from "react";
5
2
  import { useEffect, useRef, useState } from "react";
6
- import { ConfirmationDialog, ErrorView, useAuthController, useCustomizationController, useSnackbarController } from "@rebasepro/core";
7
- import { CircularProgressCenter } from "@rebasepro/ui";
8
- import { ArrowLeftIcon, CheckIcon } from "lucide-react";
9
- import { Entity, EntityCollection, MapProperty, Properties, Property, PropertyConfig, User, getDataSourceCapabilities } from "@rebasepro/types";
10
- import type { PostgresCollection } from "@rebasepro/types";
11
- import { getSubcollections, isPropertyBuilder, removeInitialAndTrailingSlashes, getTableName } from "@rebasepro/common";
12
- import { Button, cls, coolIconKeys, defaultBorderMixin, Dialog, DialogActions, DialogContent, DialogTitle, IconButton, LoadingButton, Tab, Tabs, Typography } from "@rebasepro/ui";
3
+ import {
4
+ ConfirmationDialog,
5
+ ErrorView,
6
+ UnsavedChangesDialog,
7
+ useAuthController,
8
+ useCustomizationController,
9
+ useUnsavedChangesDialog
10
+ } from "@rebasepro/app";
11
+ import {
12
+ getInferenceType,
13
+ ImportSaveInProgress,
14
+ useCollectionRegistryController,
15
+ useImportConfig,
16
+ useNavigationStateController,
17
+ useUrlController
18
+ } from "../../_cms_internals";
19
+ import { useSafeSnackbarController } from "../../useSafeSnackbarController";
20
+ import {
21
+ ArrowLeftIcon,
22
+ Button,
23
+ CheckIcon,
24
+ CircularProgressCenter,
25
+ cls,
26
+ coolIconKeys,
27
+ defaultBorderMixin,
28
+ Dialog,
29
+ DialogTitle,
30
+ IconButton,
31
+ LoadingButton,
32
+ Tab,
33
+ Tabs
34
+ } from "@rebasepro/ui";
35
+ import {
36
+ EngineProperties,
37
+ Entity,
38
+ CollectionConfig,
39
+ getDataSourceCapabilities,
40
+ MapProperty,
41
+ Properties,
42
+ Property,
43
+ PropertyConfig,
44
+ TableMetadata,
45
+ User
46
+ } from "@rebasepro/types";
47
+ import { getSubcollections, getTableName, isPropertyBuilder, removeInitialAndTrailingSlashes } from "@rebasepro/common";
13
48
  import { CollectionEditorSchema } from "./CollectionYupValidation";
14
49
  import { GeneralSettingsForm } from "./GeneralSettingsForm";
15
50
  import { DisplaySettingsForm } from "./DisplaySettingsForm";
16
51
  import { CollectionPropertiesEditorForm } from "./CollectionPropertiesEditorForm";
17
- import { CollectionRelationsTab } from "./CollectionRelationsTab";
18
52
  import { CollectionsConfigController } from "../../types/config_controller";
19
53
  import { CollectionEditorWelcomeView } from "./CollectionEditorWelcomeView";
20
54
  import { CollectionInference } from "../../types/collection_inference";
21
- import { getInferenceType, ImportSaveInProgress, useImportConfig } from "../../_cms_internals";
22
- import { buildEntityPropertiesFromData } from "@rebasepro/schema-inference";
55
+ import { buildEntityPropertiesFromData } from "@rebasepro/inference";
23
56
  import { CollectionEditorImportMapping } from "./import/CollectionEditorImportMapping";
24
57
  import { CollectionEditorImportDataPreview } from "./import/CollectionEditorImportDataPreview";
25
58
  import { cleanPropertiesFromImport } from "./import/clean_import_data";
26
- import { Formex, FormexController, useCreateFormex } from "@rebasepro/formex";
59
+ import { Formex, FormexController, useCreateFormex } from "@rebasepro/forms";
27
60
  import { getFullIdPath } from "./util";
28
61
  import { AICollectionGeneratorPopover } from "./AICollectionGeneratorPopover";
29
62
  import { AIModifiedPathsProvider, useAIModifiedPaths } from "./AIModifiedPathsContext";
30
- import { CollectionOperation, CollectionGenerationCallback } from "../../api/generateCollectionApi";
63
+ import { CollectionGenerationCallback, CollectionOperation } from "../../api/generateCollectionApi";
31
64
  import { CollectionRLSTab } from "./CollectionRLSTab";
32
65
  import { buildCollectionFromTableMetadata } from "../../pgColumnToProperty";
33
- import { TableMetadata } from "@rebasepro/types";
34
66
  import { mergeDeep, randomString, removeUndefined } from "@rebasepro/utils";
67
+ import type { CollectionEditorExtensionProps, CollectionEditorTab } from "../../extensibility_types";
35
68
 
36
- export interface CollectionEditorDialogProps {
69
+ export interface CollectionEditorDialogProps extends CollectionEditorExtensionProps {
37
70
  open: boolean;
38
71
  isNewCollection: boolean;
39
72
  initialValues?: {
40
- group?: string,
41
73
  slug?: string,
42
74
  name?: string,
43
75
  }
@@ -45,13 +77,12 @@ export interface CollectionEditorDialogProps {
45
77
  * A collection to duplicate from. If provided, the new collection will be
46
78
  * pre-populated with the same properties (but with empty name, path, and id).
47
79
  */
48
- copyFrom?: EntityCollection;
80
+ copyFrom?: CollectionConfig;
49
81
  editedCollectionId?: string;
50
82
  path?: string; // full path of this particular collection, like `products/123/locales`
51
- parentCollectionIds?: string[]; // path ids of the parent collection, like [`products`]
52
- handleClose: (collection?: EntityCollection) => void;
83
+ parentCollectionSlugs?: string[], parentEntityIds?: string[]; // path ids of the parent collection, like [`products`]
84
+ handleClose: (collection?: CollectionConfig) => void;
53
85
  configController: CollectionsConfigController;
54
- reservedGroups?: string[];
55
86
  collectionInference?: CollectionInference;
56
87
  extraView?: {
57
88
  View: React.ComponentType<{
@@ -61,7 +92,7 @@ export interface CollectionEditorDialogProps {
61
92
  };
62
93
  getUser?: (uid: string) => User | null;
63
94
  getData?: (path: string, parentPaths: string[]) => Promise<object[]>;
64
- parentCollection?: EntityCollection;
95
+ parentCollection?: CollectionConfig;
65
96
  existingEntities?: Entity<any>[];
66
97
  /**
67
98
  * Initial view to open when editing: "general", "display", or "properties".
@@ -127,6 +158,7 @@ export function CollectionEditorDialog(props: CollectionEditorDialogProps) {
127
158
  fullHeight={true}
128
159
  scrollable={false}
129
160
  maxWidth={"7xl"}
161
+ className="bg-surface-50 dark:bg-surface-800"
130
162
  onOpenChange={(open) => !open ? handleCancel() : undefined}
131
163
  >
132
164
  <DialogTitle hidden>Collection editor</DialogTitle>
@@ -150,46 +182,59 @@ type EditorView = "welcome"
150
182
  | "properties"
151
183
  | "loading"
152
184
  | "extra_view"
153
- | "relations"
154
185
  | "rls";
155
186
 
156
187
  export function CollectionEditor(props: CollectionEditorDialogProps & {
157
188
  handleCancel: () => void,
158
189
  setFormDirty: (dirty: boolean) => void
159
190
  }) {
160
- const { propertyConfigs } = useCustomizationController();
191
+ const { standalone } = props;
192
+
193
+ const customizationController = useCustomizationController();
161
194
  const navigationState = useNavigationStateController();
162
195
  const collectionRegistry = useCollectionRegistryController();
163
196
  const authController = useAuthController();
164
197
 
165
- const {
166
- topLevelNavigation
167
- } = navigationState;
168
- const {
169
- collections
170
- } = collectionRegistry;
198
+ // In standalone mode, use safe defaults instead of context values
199
+ const propertyConfigs = standalone
200
+ ? (customizationController?.propertyConfigs ?? {})
201
+ : customizationController.propertyConfigs;
202
+ const topLevelNavigation = standalone
203
+ ? (navigationState?.topLevelNavigation ?? [])
204
+ : navigationState.topLevelNavigation;
205
+ const collections = standalone
206
+ ? (collectionRegistry?.collections ?? [])
207
+ : collectionRegistry.collections;
171
208
 
172
209
  const initialValuesProp = props.initialValues;
173
210
  const copyFromProp = props.copyFrom;
174
211
  // Skip templates when duplicating (copyFrom is provided)
175
- const includeTemplates = !copyFromProp && !initialValuesProp?.slug && (props.parentCollectionIds ?? []).length === 0;
212
+ const includeTemplates = !copyFromProp && !initialValuesProp?.slug && (props.parentCollectionSlugs ?? []).length === 0;
176
213
  const collectionsInThisLevel = (props.parentCollection ? getSubcollections(props.parentCollection) : collections) ?? [];
177
214
  const existingPaths = collectionsInThisLevel.map(col => getTableName(col)?.trim().toLowerCase()).filter(Boolean);
178
215
  const existingIds = collectionsInThisLevel.map(col => col.slug?.trim().toLowerCase()).filter(Boolean) as string[];
179
- const [collection, setCollection] = React.useState<EntityCollection<any> | undefined>();
216
+ const [collection, setCollection] = React.useState<CollectionConfig<any> | undefined>();
180
217
  const [initialLoadingCompleted, setInitialLoadingCompleted] = React.useState(false);
181
218
 
182
219
  useEffect(() => {
183
220
  try {
184
- if (collectionRegistry.initialised) {
221
+ const initialised = (standalone
222
+ ? true
223
+ : (collectionRegistry?.initialised ?? true)) && !props.configController?.loading;
224
+ const getRawCollection = standalone
225
+ ? (() => undefined)
226
+ : collectionRegistry.getRawCollection;
227
+ if (initialised) {
185
228
  if (props.editedCollectionId) {
186
229
  // We must use getRawCollection so the editor schema fields
187
230
  // aren't polluted with dynamically injected runtime `relations`.
188
231
  // The path lookup relies on generating a fake child path to resolve through the registry
189
- const collectionPath = [...(props.parentCollectionIds ?? []), props.editedCollectionId]
232
+ const collectionPath = [...(props.parentCollectionSlugs ?? []), props.editedCollectionId]
190
233
  .reduce((acc, segment, i) => i === 0 ? segment : `${acc}/fake_id/${segment}`, "");
191
234
 
192
- setCollection(collectionRegistry.getRawCollection(collectionPath) as EntityCollection<any>);
235
+ const registryCol = getRawCollection ? getRawCollection(collectionPath) : undefined;
236
+ const configCol = props.configController?.collections?.find(c => c.slug === props.editedCollectionId);
237
+ setCollection((registryCol ?? configCol) as CollectionConfig<any>);
193
238
  } else {
194
239
  setCollection(undefined);
195
240
  }
@@ -198,46 +243,51 @@ export function CollectionEditor(props: CollectionEditorDialogProps & {
198
243
  } catch (e) {
199
244
  console.error(e);
200
245
  }
201
- }, [props.editedCollectionId, props.parentCollectionIds, collectionRegistry.initialised, collectionRegistry.getRawCollection]);
246
+ }, [props.editedCollectionId, props.parentCollectionSlugs, props.parentEntityIds, standalone, collectionRegistry.initialised, collectionRegistry.getRawCollection, props.configController.collections, props.configController.loading, collections]);
202
247
 
203
- const groups = topLevelNavigation?.groups ?? [];
204
248
 
205
- const initialCollection = collection
206
- ? {
207
- ...collection,
208
- slug: collection.slug ?? randomString(16)
209
- }
210
- : undefined;
249
+ const initialIcon = React.useMemo(() => coolIconKeys[Math.floor(Math.random() * coolIconKeys.length)], []);
250
+ const fallbackSlug = React.useMemo(() => randomString(16), []);
251
+
252
+ const initialCollection = React.useMemo(() => {
253
+ return collection
254
+ ? {
255
+ ...collection,
256
+ slug: collection.slug ?? fallbackSlug
257
+ }
258
+ : undefined;
259
+ }, [collection, fallbackSlug]);
211
260
 
212
261
  // Build initial values - handle copyFrom for duplication
213
- const initialValues: EntityCollection<any> = initialCollection
214
- ? applyPropertyConfigs(initialCollection, propertyConfigs)
215
- : copyFromProp
216
- ? (() => {
217
- // When duplicating, copy all properties but clear identifiers
218
- const { subcollections: _sub, ...rest } = copyFromProp as unknown as Record<string, unknown>;
219
- return {
220
- ...rest,
221
- name: "",
262
+ const initialValues = React.useMemo((): CollectionConfig<any> => {
263
+ return (initialCollection
264
+ ? applyPropertyConfigs(initialCollection, propertyConfigs)
265
+ : copyFromProp
266
+ ? (() => {
267
+ // When duplicating, copy all properties but clear identifiers
268
+ const { subcollections: _sub, ...rest } = copyFromProp as unknown as Record<string, unknown>;
269
+ return {
270
+ ...rest,
271
+ name: "",
272
+ ownerId: authController.user?.uid ?? ""
273
+ } as CollectionConfig<any>;
274
+ })()
275
+ : {
276
+ slug: initialValuesProp?.slug ?? fallbackSlug,
277
+ table: initialValuesProp?.slug ?? "",
278
+ name: initialValuesProp?.name ?? "",
279
+ properties: {} as EngineProperties,
280
+ propertiesOrder: [],
281
+ icon: initialIcon,
222
282
  ownerId: authController.user?.uid ?? ""
223
- } as EntityCollection<any>;
224
- })()
225
- : {
226
- slug: initialValuesProp?.slug ?? randomString(16),
227
- table: initialValuesProp?.slug ?? "",
228
- name: initialValuesProp?.name ?? "",
229
- group: initialValuesProp?.group ?? "",
230
- properties: {} as Properties,
231
- propertiesOrder: [],
232
- icon: coolIconKeys[Math.floor(Math.random() * coolIconKeys.length)],
233
- ownerId: authController.user?.uid ?? ""
234
- };
283
+ }) as CollectionConfig<any>;
284
+ }, [initialCollection, propertyConfigs, copyFromProp, initialValuesProp, fallbackSlug, initialIcon, authController.user?.uid]);
235
285
 
236
286
  if (!initialLoadingCompleted) {
237
287
  return <CircularProgressCenter/>;
238
288
  }
239
289
 
240
- if (!props.isNewCollection && (!collectionRegistry.initialised || !initialLoadingCompleted)) {
290
+ if (!props.isNewCollection && (!(standalone ? true : (collectionRegistry?.initialised ?? true)) || !initialLoadingCompleted)) {
241
291
  return <CircularProgressCenter/>;
242
292
  }
243
293
 
@@ -249,7 +299,6 @@ export function CollectionEditor(props: CollectionEditorDialogProps & {
249
299
  includeTemplates={includeTemplates}
250
300
  collection={collection}
251
301
  setCollection={setCollection}
252
- groups={groups}
253
302
  propertyConfigs={propertyConfigs}/>
254
303
 
255
304
  }
@@ -258,11 +307,10 @@ function CollectionEditorInternal<M extends Record<string, unknown>>({
258
307
  isNewCollection,
259
308
  configController,
260
309
  editedCollectionId,
261
- parentCollectionIds,
310
+ parentCollectionSlugs, parentEntityIds,
262
311
  path,
263
312
  collectionInference,
264
313
  handleClose,
265
- reservedGroups,
266
314
  extraView,
267
315
  handleCancel,
268
316
  setFormDirty,
@@ -276,7 +324,6 @@ function CollectionEditorInternal<M extends Record<string, unknown>>({
276
324
  setCollection,
277
325
  initialValues,
278
326
  propertyConfigs,
279
- groups,
280
327
  existingEntities,
281
328
  initialView: initialViewProp,
282
329
  expandKanban,
@@ -284,25 +331,53 @@ function CollectionEditorInternal<M extends Record<string, unknown>>({
284
331
  onAnalyticsEvent,
285
332
  fullScreen,
286
333
  unmappedTables,
287
- onFetchTableMetadata
334
+ onFetchTableMetadata,
335
+ propertyTypePresets,
336
+ hiddenPropertyTypes,
337
+ renderExtraPropertyFields,
338
+ renderExtraCollectionFields,
339
+ visibleTabs,
340
+ standalone
288
341
  }: CollectionEditorDialogProps & {
289
342
  handleCancel: () => void,
290
343
  setFormDirty: (dirty: boolean) => void,
291
- initialValues: EntityCollection<M>,
344
+ initialValues: CollectionConfig<M>,
292
345
  existingPaths: string[],
293
346
  existingIds: string[],
294
347
  includeTemplates: boolean,
295
- collection: EntityCollection<M> | undefined,
296
- setCollection: (collection: EntityCollection<M>) => void,
348
+ collection: CollectionConfig<M> | undefined,
349
+ setCollection: (collection: CollectionConfig<M>) => void,
297
350
  propertyConfigs: Record<string, PropertyConfig>,
298
- groups: string[],
299
351
  }
300
352
  ) {
301
353
 
302
- const importConfig = useImportConfig();
303
- const urlController = useUrlController();
304
- const collectionRegistry = useCollectionRegistryController();
305
- const snackbarController = useSnackbarController();
354
+ const importConfigRaw = useImportConfig();
355
+ const urlControllerRaw = useUrlController();
356
+ const collectionRegistryRaw = useCollectionRegistryController();
357
+ const snackbarControllerRaw = useSafeSnackbarController();
358
+
359
+ // In standalone mode, use safe defaults
360
+ const importConfig = standalone ? undefined : importConfigRaw;
361
+ const urlController = standalone
362
+ ? {
363
+ basePath: "/",
364
+ baseCollectionPath: "/c",
365
+ urlPathToDataPath: () => "",
366
+ homeUrl: "/",
367
+ isUrlCollectionPath: () => false,
368
+ buildUrlCollectionPath: () => "",
369
+ buildAppUrlPath: () => "",
370
+ resolveDatabasePathsFrom: (p: string) => p,
371
+ navigate: () => { }
372
+ }
373
+ : urlControllerRaw;
374
+ const collectionRegistryInternal = standalone
375
+ ? { convertIdsToPaths: (ids: string[]) => ids }
376
+ : collectionRegistryRaw;
377
+ const snackbarController = snackbarControllerRaw ?? {
378
+ open: () => { },
379
+ close: () => { }
380
+ };
306
381
 
307
382
  // Use this ref to store which properties have errors
308
383
  const propertyErrorsRef = useRef<Record<string, any>>({});
@@ -312,16 +387,22 @@ function CollectionEditorInternal<M extends Record<string, unknown>>({
312
387
  : (initialViewProp ?? "properties");
313
388
  const [currentView, setCurrentView] = useState<EditorView>(initialView); // this view can edit either the details view or the properties one
314
389
 
390
+ useEffect(() => {
391
+ if (visibleTabs && !visibleTabs.includes(currentView as CollectionEditorTab)) {
392
+ setCurrentView(visibleTabs[0] || "general");
393
+ }
394
+ }, [visibleTabs, currentView]);
395
+
315
396
  const [error, setError] = React.useState<Error | undefined>();
316
397
 
317
- const saveCollection = (updatedCollection: EntityCollection<M>): Promise<boolean> => {
398
+ const saveCollection = (updatedCollection: CollectionConfig<M>): Promise<boolean> => {
318
399
  const id = updatedCollection.slug;
319
400
 
320
401
  return configController.saveCollection({
321
402
  id,
322
403
  collectionData: updatedCollection,
323
404
  previousId: editedCollectionId,
324
- parentCollectionIds
405
+ parentCollectionSlugs
325
406
  })
326
407
  .then(() => {
327
408
  setError(undefined);
@@ -340,7 +421,7 @@ function CollectionEditorInternal<M extends Record<string, unknown>>({
340
421
 
341
422
  const setNextMode = () => {
342
423
  if (currentView === "general") {
343
- if (importConfig.inUse) {
424
+ if (importConfig?.inUse) {
344
425
  setCurrentView("import_data_saving");
345
426
  } else if (extraView) {
346
427
  setCurrentView("extra_view");
@@ -361,7 +442,7 @@ function CollectionEditorInternal<M extends Record<string, unknown>>({
361
442
 
362
443
  };
363
444
 
364
- const doCollectionInference = collectionInference ? (collection: EntityCollection<any>) => {
445
+ const doCollectionInference = collectionInference ? (collection: CollectionConfig<any>) => {
365
446
  if (!collectionInference) return undefined;
366
447
  return collectionInference?.(
367
448
  collection.slug,
@@ -370,7 +451,7 @@ function CollectionEditorInternal<M extends Record<string, unknown>>({
370
451
  );
371
452
  } : undefined;
372
453
 
373
- const inferCollectionFromData = async (newCollection: EntityCollection<M>) => {
454
+ const inferCollectionFromData = async (newCollection: CollectionConfig<M>) => {
374
455
 
375
456
  try {
376
457
  if (!doCollectionInference) {
@@ -391,7 +472,7 @@ function CollectionEditorInternal<M extends Record<string, unknown>>({
391
472
  };
392
473
 
393
474
  if (Object.keys(inferredCollection.properties ?? {}).length > 0) {
394
- values.properties = inferredCollection.properties as Properties;
475
+ values.properties = inferredCollection.properties as EngineProperties;
395
476
  values.propertiesOrder = inferredCollection.propertiesOrder as Extract<keyof M, string>[];
396
477
  }
397
478
 
@@ -416,7 +497,7 @@ function CollectionEditorInternal<M extends Record<string, unknown>>({
416
497
  }
417
498
  };
418
499
 
419
- const onSubmit = async (newCollectionState: EntityCollection<M>, formexController: FormexController<EntityCollection<M>>) => {
500
+ const onSubmit = async (newCollectionState: CollectionConfig<M>, formexController: FormexController<CollectionConfig<M>>) => {
420
501
  console.debug("Submitting collection", newCollectionState);
421
502
  try {
422
503
 
@@ -425,7 +506,7 @@ function CollectionEditorInternal<M extends Record<string, unknown>>({
425
506
  if (success) {
426
507
  aiModifiedPaths?.clearAllPaths();
427
508
  formexController.resetForm({ values: newCollectionState });
428
- handleClose(newCollectionState as unknown as EntityCollection);
509
+ handleClose(newCollectionState as CollectionConfig);
429
510
  }
430
511
  return;
431
512
  }
@@ -434,7 +515,7 @@ function CollectionEditorInternal<M extends Record<string, unknown>>({
434
515
  setNextMode();
435
516
  formexController.resetForm({ values: newCollectionState });
436
517
  } else if (currentView === "general") {
437
- if (extraView || importConfig.inUse) {
518
+ if (extraView || importConfig?.inUse) {
438
519
  formexController.resetForm({ values: newCollectionState });
439
520
  setNextMode();
440
521
  } else if (isNewCollection) {
@@ -463,7 +544,7 @@ function CollectionEditorInternal<M extends Record<string, unknown>>({
463
544
  if (success) {
464
545
  formexController.resetForm({ values: initialValues });
465
546
  setNextMode();
466
- handleClose(newCollectionState as unknown as EntityCollection);
547
+ handleClose(newCollectionState as CollectionConfig);
467
548
  }
468
549
  } else {
469
550
  setNextMode();
@@ -479,10 +560,10 @@ function CollectionEditorInternal<M extends Record<string, unknown>>({
479
560
  }
480
561
  };
481
562
 
482
- const validation = (col: EntityCollection<M>) => {
563
+ const validation = (col: CollectionConfig<M>) => {
483
564
 
484
565
  let errors: Record<string, string> = {};
485
- const schema = (currentView === "properties" || currentView === "relations" || currentView === "general") && CollectionEditorSchema;
566
+ const schema = (currentView === "properties" || currentView === "general") && CollectionEditorSchema;
486
567
  if (schema) {
487
568
  const result = schema.safeParse(col);
488
569
  if (!result.success) {
@@ -514,7 +595,7 @@ function CollectionEditorInternal<M extends Record<string, unknown>>({
514
595
  return errors;
515
596
  };
516
597
 
517
- const formController = useCreateFormex<EntityCollection<M>>({
598
+ const formController = useCreateFormex<CollectionConfig<M>>({
518
599
  initialValues,
519
600
  onSubmit,
520
601
  validation,
@@ -532,7 +613,7 @@ function CollectionEditorInternal<M extends Record<string, unknown>>({
532
613
  const usedPath = getTableName(values);
533
614
  const pathError = validatePath(usedPath, isNewCollection, existingPaths, values.slug);
534
615
 
535
- const parentPaths = !pathError && parentCollectionIds ? collectionRegistry.convertIdsToPaths(parentCollectionIds) : undefined;
616
+ const parentPaths = !pathError && parentCollectionSlugs ? collectionRegistryInternal.convertIdsToPaths(parentCollectionSlugs) : undefined;
536
617
 
537
618
  const updatedFullPath = parentPaths && parentPaths.length > 0
538
619
  ? [...parentPaths, usedPath].join("/fake_id/")
@@ -553,18 +634,18 @@ function CollectionEditorInternal<M extends Record<string, unknown>>({
553
634
  }, [dirty]);
554
635
 
555
636
  function onImportDataSet(data: object[], propertiesOrder?: string[]) {
556
- importConfig.setInUse(true);
637
+ importConfig?.setInUse(true);
557
638
  buildEntityPropertiesFromData(data, getInferenceType)
558
- .then((properties: Record<string, unknown>) => {
559
- const res = cleanPropertiesFromImport(properties as unknown as Properties);
639
+ .then((properties: unknown) => {
640
+ const res = cleanPropertiesFromImport(properties as Properties);
560
641
 
561
- importConfig.setIdColumn(res.idColumn);
562
- importConfig.setImportData(data);
563
- importConfig.setHeadersMapping(res.headersMapping);
642
+ importConfig?.setIdColumn(res.idColumn);
643
+ importConfig?.setImportData(data);
644
+ importConfig?.setHeadersMapping(res.headersMapping);
564
645
  const filteredHeadingsOrder = ((propertiesOrder ?? [])
565
646
  .filter((key) => res.headersMapping[key]) as string[]) ?? Object.keys(res.properties);
566
- importConfig.setHeadingsOrder(filteredHeadingsOrder);
567
- importConfig.setOriginProperties(res.properties);
647
+ importConfig?.setHeadingsOrder(filteredHeadingsOrder);
648
+ importConfig?.setOriginProperties(res.properties);
568
649
 
569
650
  const mappedHeadings = (propertiesOrder ?? []).map((key) => res.headersMapping[key]).filter(Boolean) as string[] ?? Object.keys(res.properties);
570
651
  setFieldValue("properties", res.properties);
@@ -576,7 +657,7 @@ function CollectionEditorInternal<M extends Record<string, unknown>>({
576
657
 
577
658
  const onImportMappingComplete = () => {
578
659
  const updatedProperties = { ...values.properties };
579
- if (importConfig.idColumn)
660
+ if (importConfig?.idColumn)
580
661
  delete updatedProperties[importConfig.idColumn];
581
662
  setFieldValue("properties", updatedProperties);
582
663
  // setFieldValue("propertiesOrder", Object.values(importConfig.headersMapping));
@@ -608,36 +689,33 @@ function CollectionEditorInternal<M extends Record<string, unknown>>({
608
689
 
609
690
  const aiModifiedPaths = useAIModifiedPaths();
610
691
 
611
- const handleAIGenerated = (generatedCollection: EntityCollection, operations?: CollectionOperation[]) => {
612
- formController.setValues(generatedCollection as EntityCollection<M>);
692
+ const handleAIGenerated = (generatedCollection: CollectionConfig, operations?: CollectionOperation[]) => {
693
+ formController.setValues(generatedCollection as CollectionConfig<M>);
613
694
  if (operations && aiModifiedPaths) {
614
695
  aiModifiedPaths.addModifiedPaths(operations);
615
696
  }
616
697
  };
617
698
 
618
- return <div className="h-full w-full flex flex-col bg-white dark:bg-surface-800">
699
+ return <div className="h-full w-full flex flex-col bg-surface-50 dark:bg-surface-800">
619
700
  <Formex value={formController}>
620
701
 
621
702
  <>
622
- {!isNewCollection && <div className={cls("px-4 py-2 w-full flex shrink-0 items-center justify-between gap-4 bg-white dark:bg-surface-800 border-b", defaultBorderMixin)}>
703
+ {!isNewCollection && <div className={cls("px-4 py-2 w-full flex shrink-0 items-center justify-between gap-4 bg-surface-50 dark:bg-surface-900 border-b", defaultBorderMixin)}>
623
704
  <div className="flex flex-1 items-center justify-end gap-4 min-w-0">
624
705
  <Tabs value={currentView}
625
706
  className="bg-transparent !w-fit max-w-full"
626
707
  onValueChange={(v) => setCurrentView(v as EditorView)}>
627
- <Tab value={"general"}>
708
+ {(!visibleTabs || visibleTabs.includes("general")) && <Tab value={"general"}>
628
709
  General
629
- </Tab>
630
- <Tab value={"display"}>
710
+ </Tab>}
711
+ {(!visibleTabs || visibleTabs.includes("display")) && <Tab value={"display"}>
631
712
  Display
632
- </Tab>
633
- <Tab value={"properties"}>
713
+ </Tab>}
714
+ {(!visibleTabs || visibleTabs.includes("properties")) && <Tab value={"properties"}>
634
715
  Properties
635
- </Tab>
636
- {getDataSourceCapabilities(values.driver).supportsRLS && <Tab value={"rls"}>
637
- RLS
638
716
  </Tab>}
639
- {getDataSourceCapabilities(values.driver).supportsRelations && <Tab value={"relations"}>
640
- Relations
717
+ {(!visibleTabs || visibleTabs.includes("rls")) && getDataSourceCapabilities(values.engine).supportsRLS && <Tab value={"rls"}>
718
+ RLS
641
719
  </Tab>}
642
720
  </Tabs>
643
721
  </div>
@@ -671,7 +749,7 @@ function CollectionEditorInternal<M extends Record<string, unknown>>({
671
749
  onSubmit={formController.handleSubmit}
672
750
  className="flex-grow flex flex-col min-h-0 relative">
673
751
 
674
- <div className="flex-grow flex flex-col min-h-0 overflow-y-auto no-scrollbar relative w-full h-full">
752
+ <div className="flex-grow flex flex-col min-h-0 relative w-full h-full bg-surface-50 dark:bg-surface-800">
675
753
 
676
754
  {currentView === "loading" &&
677
755
  <CircularProgressCenter/>}
@@ -698,7 +776,7 @@ function CollectionEditorInternal<M extends Record<string, unknown>>({
698
776
  formController.setValues({
699
777
  ...formController.values,
700
778
  ...collectionData
701
- } as EntityCollection<M>);
779
+ } as CollectionConfig<M>);
702
780
  onWelcomeScreenContinue();
703
781
  } catch (e: unknown) {
704
782
  console.error("Error importing table:", e);
@@ -734,21 +812,19 @@ function CollectionEditorInternal<M extends Record<string, unknown>>({
734
812
 
735
813
  {currentView === "general" &&
736
814
  <GeneralSettingsForm
815
+ isNewCollection={isNewCollection}
737
816
  existingPaths={existingPaths}
738
817
  existingIds={existingIds}
739
818
  parentCollection={parentCollection}
740
- isNewCollection={isNewCollection}/>
819
+ renderExtraCollectionFields={renderExtraCollectionFields}
820
+ standalone={standalone}/>
741
821
  }
742
822
 
743
823
  {currentView === "display" &&
744
- <DisplaySettingsForm expandKanban={expandKanban}/>
745
- }
746
-
747
- {currentView === "relations" && getDataSourceCapabilities(values.driver).supportsRelations &&
748
- <CollectionRelationsTab/>
824
+ <DisplaySettingsForm expandKanban={expandKanban} standalone={standalone}/>
749
825
  }
750
826
 
751
- {currentView === "rls" && getDataSourceCapabilities(values.driver).supportsRLS &&
827
+ {currentView === "rls" && getDataSourceCapabilities(values.engine).supportsRLS &&
752
828
  <CollectionRLSTab/>
753
829
  }
754
830
 
@@ -756,7 +832,6 @@ function CollectionEditorInternal<M extends Record<string, unknown>>({
756
832
  <CollectionPropertiesEditorForm
757
833
  showErrors={submitCount > 0}
758
834
  isNewCollection={isNewCollection}
759
- reservedGroups={reservedGroups}
760
835
  onPropertyError={(propertyKey, namespace, error) => {
761
836
  const current = removeUndefined({
762
837
  ...propertyErrorsRef.current,
@@ -769,25 +844,28 @@ function CollectionEditorInternal<M extends Record<string, unknown>>({
769
844
  getData={getDataWithPath}
770
845
  doCollectionInference={doCollectionInference}
771
846
  propertyConfigs={propertyConfigs}
772
-
847
+ propertyTypePresets={propertyTypePresets}
848
+ hiddenPropertyTypes={hiddenPropertyTypes}
849
+ renderExtraPropertyFields={renderExtraPropertyFields}
773
850
  extraIcon={extraView?.icon &&
774
851
  <IconButton
775
852
  color={"primary"}
776
853
  onClick={() => setCurrentView("extra_view")}>
777
854
  {extraView.icon}
778
- </IconButton>}/>
855
+ </IconButton>}
856
+ standalone={standalone}/>
779
857
  }
780
858
 
781
859
  </div>
782
860
  {(!fullScreen || isNewCollection || !!error) && (
783
- <div className="shrink-0 w-full p-4 sm:px-6 sm:py-4 border-t border-surface-200 dark:border-surface-800 flex items-center justify-between gap-4 bg-white dark:bg-surface-800">
861
+ <div className="shrink-0 w-full p-4 sm:px-6 sm:py-4 border-t border-surface-200 dark:border-surface-900 flex items-center justify-between gap-4 bg-surface-50 dark:bg-surface-900">
784
862
  {error && <ErrorView error={error}/>}
785
863
 
786
864
  {isNewCollection && includeTemplates && currentView === "import_data_mapping" &&
787
865
  <Button variant={"text"}
788
866
  type="button"
789
867
  onClick={() => {
790
- importConfig.setInUse(false);
868
+ importConfig?.setInUse(false);
791
869
  return setCurrentView("welcome");
792
870
  }}>
793
871
  Back
@@ -858,7 +936,7 @@ function CollectionEditorInternal<M extends Record<string, unknown>>({
858
936
  color="primary"
859
937
  type="submit"
860
938
  loading={isSubmitting}
861
- disabled={isSubmitting || (currentView === "general" && !validValues)}
939
+ disabled={isSubmitting || (currentView === "general" && !validValues) || configController?.readOnly}
862
940
  startIcon={currentView === "properties"
863
941
  ? <CheckIcon/>
864
942
  : undefined}
@@ -897,7 +975,7 @@ function CollectionEditorInternal<M extends Record<string, unknown>>({
897
975
 
898
976
  }
899
977
 
900
- function applyPropertyConfigs<M extends Record<string, unknown> = Record<string, unknown>>(collection: EntityCollection<M>, propertyConfigs: Record<string, PropertyConfig>): EntityCollection<M> {
978
+ function applyPropertyConfigs<M extends Record<string, unknown> = Record<string, unknown>>(collection: CollectionConfig<M>, propertyConfigs: Record<string, PropertyConfig>): CollectionConfig<M> {
901
979
  const {
902
980
  properties,
903
981
  ...rest
@@ -913,8 +991,8 @@ function applyPropertyConfigs<M extends Record<string, unknown> = Record<string,
913
991
 
914
992
  return {
915
993
  ...rest,
916
- properties: propertiesResult
917
- };
994
+ properties: propertiesResult as EngineProperties
995
+ } as CollectionConfig<M>;
918
996
  }
919
997
 
920
998
  function applyPropertiesConfig(property: Property, propertyConfigs: Record<string, PropertyConfig>) {
@@ -922,7 +1000,7 @@ function applyPropertiesConfig(property: Property, propertyConfigs: Record<strin
922
1000
  if (propertyConfigs && internalProperty && typeof internalProperty === "object" && internalProperty.propertyConfig) {
923
1001
  const propertyConfig = propertyConfigs[internalProperty.propertyConfig];
924
1002
  if (propertyConfig && isPropertyBuilder(propertyConfig.property as Property)) {
925
- internalProperty = propertyConfig.property as unknown as Property;
1003
+ internalProperty = propertyConfig.property as Property;
926
1004
  } else {
927
1005
 
928
1006
  if (propertyConfig) {