@rebasepro/admin 0.8.0 → 0.9.1-canary.09aaf62

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 (408) hide show
  1. package/README.md +26 -26
  2. package/dist/{CollectionEditorDialog-BO_aQ-Z4.js → CollectionEditorDialog-DbPpDDwb.js} +40 -18
  3. package/dist/CollectionEditorDialog-DbPpDDwb.js.map +1 -0
  4. package/dist/{PropertyEditView-DKzOpMjR.js → PropertyEditView-DfJbZ67t.js} +81 -73
  5. package/dist/PropertyEditView-DfJbZ67t.js.map +1 -0
  6. package/dist/{RouterCollectionsStudioView-BQTIExjA.js → RouterCollectionsStudioView-C6XQ7Il5.js} +5 -5
  7. package/dist/RouterCollectionsStudioView-C6XQ7Il5.js.map +1 -0
  8. package/dist/collection_editor/_cms_internals.d.ts +3 -3
  9. package/dist/collection_editor/api/generateCollectionApi.d.ts +8 -8
  10. package/dist/collection_editor/extensibility_types.d.ts +3 -3
  11. package/dist/collection_editor/index.d.ts +2 -2
  12. package/dist/collection_editor/pgColumnToProperty.d.ts +3 -3
  13. package/dist/collection_editor/serializable_types.d.ts +7 -7
  14. package/dist/collection_editor/serializable_utils.d.ts +8 -8
  15. package/dist/collection_editor/types/collection_editor_controller.d.ts +5 -5
  16. package/dist/collection_editor/types/collection_inference.d.ts +2 -2
  17. package/dist/collection_editor/types/config_controller.d.ts +7 -7
  18. package/dist/collection_editor/ui/AddKanbanColumnAction.d.ts +2 -2
  19. package/dist/collection_editor/ui/CollectionViewHeaderAction.d.ts +2 -2
  20. package/dist/collection_editor/ui/KanbanSetupAction.d.ts +2 -2
  21. package/dist/collection_editor/ui/PropertyAddColumnComponent.d.ts +2 -2
  22. package/dist/collection_editor/ui/collection_editor/AICollectionGeneratorPopover.d.ts +3 -3
  23. package/dist/collection_editor/ui/collection_editor/CollectionDetailsForm.d.ts +2 -2
  24. package/dist/collection_editor/ui/collection_editor/CollectionEditorDialog.d.ts +4 -4
  25. package/dist/collection_editor/ui/collection_editor/CollectionEditorWelcomeView.d.ts +2 -2
  26. package/dist/collection_editor/ui/collection_editor/CollectionJsonImportDialog.d.ts +2 -2
  27. package/dist/collection_editor/ui/collection_editor/CollectionPropertiesEditorForm.d.ts +4 -4
  28. package/dist/collection_editor/ui/collection_editor/CollectionStudioView.d.ts +2 -2
  29. package/dist/collection_editor/ui/collection_editor/CollectionsStudioView.d.ts +2 -2
  30. package/dist/collection_editor/ui/collection_editor/EntityActionsEditTab.d.ts +2 -2
  31. package/dist/collection_editor/ui/collection_editor/GeneralSettingsForm.d.ts +2 -2
  32. package/dist/collection_editor/ui/collection_editor/GetCodeDialog.d.ts +2 -2
  33. package/dist/collection_editor/ui/collection_editor/PropertyEditView.d.ts +5 -5
  34. package/dist/collection_editor/ui/collection_editor/SubcollectionsEditTab.d.ts +3 -3
  35. package/dist/collection_editor/ui/collection_editor/SwitchControl.d.ts +1 -1
  36. package/dist/collection_editor/ui/collection_editor/templates/blog_template.d.ts +2 -2
  37. package/dist/collection_editor/ui/collection_editor/templates/pages_template.d.ts +2 -2
  38. package/dist/collection_editor/ui/collection_editor/templates/products_template.d.ts +2 -2
  39. package/dist/collection_editor/ui/collection_editor/templates/users_template.d.ts +2 -2
  40. package/dist/collection_editor/useLocalCollectionsConfigController.d.ts +2 -2
  41. package/dist/collection_editor/useSafeSnackbarController.d.ts +1 -1
  42. package/dist/collection_editor/validateCollectionJson.d.ts +2 -2
  43. package/dist/collection_editor_ui.js +5 -5
  44. package/dist/collection_editor_ui.js.map +1 -1
  45. package/dist/components/CollectionPanel.d.ts +4 -4
  46. package/dist/components/{EntityCollectionTable/EntityCollectionRowActions.d.ts → CollectionTableBinding/CollectionRowActions.d.ts} +3 -3
  47. package/dist/components/CollectionTableBinding/CollectionTableBinding.d.ts +28 -0
  48. package/dist/components/{EntityCollectionTable/EntityCollectionTableProps.d.ts → CollectionTableBinding/CollectionTableBindingProps.d.ts} +2 -2
  49. package/dist/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableMultipleRelationField.d.ts +2 -2
  50. package/dist/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableReferenceField.d.ts +2 -2
  51. package/dist/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableRelationField.d.ts +2 -2
  52. package/dist/components/CollectionTableBinding/index.d.ts +6 -0
  53. package/dist/components/{EntityCollectionTable → CollectionTableBinding}/internal/EntityTableCell.d.ts +1 -1
  54. package/dist/components/{EntityCollectionTable → CollectionTableBinding}/internal/common.d.ts +2 -2
  55. package/dist/components/{EntityCollectionTable → CollectionTableBinding}/internal/popup_field/PopupFormField.d.ts +3 -3
  56. package/dist/components/{EntityCollectionTable → CollectionTableBinding}/table_bindings.d.ts +1 -1
  57. package/dist/components/{EntityCollectionView/EntityBoardCard.d.ts → CollectionViewBinding/BoardCardBinding.d.ts} +8 -8
  58. package/dist/components/{EntityCollectionView/EntityCollectionBoardView.d.ts → CollectionViewBinding/CollectionBoardViewBinding.d.ts} +4 -4
  59. package/dist/components/{EntityCollectionView/EntityCollectionCardView.d.ts → CollectionViewBinding/CollectionCardViewBinding.d.ts} +5 -5
  60. package/dist/components/{EntityCollectionView/EntityCollectionListView.d.ts → CollectionViewBinding/CollectionListViewBinding.d.ts} +4 -4
  61. package/dist/components/{EntityCollectionView/EntityCollectionViewActions.d.ts → CollectionViewBinding/CollectionViewActions.d.ts} +4 -4
  62. package/dist/components/{EntityCollectionView/EntityCollectionView.d.ts → CollectionViewBinding/CollectionViewBinding.d.ts} +4 -4
  63. package/dist/components/{EntityCollectionView/EntityCollectionViewStartActions.d.ts → CollectionViewBinding/CollectionViewStartActions.d.ts} +4 -4
  64. package/dist/components/CollectionViewBinding/EntityCardBinding.d.ts +21 -0
  65. package/dist/components/{EntityCollectionView → CollectionViewBinding}/SplitListView.d.ts +3 -3
  66. package/dist/components/{EntityCollectionView → CollectionViewBinding}/hooks/useCollectionInlineEditor.d.ts +3 -3
  67. package/dist/components/{EntityCollectionView → CollectionViewBinding}/hooks/useKanbanDragAndDrop.d.ts +2 -2
  68. package/dist/components/{EntityCollectionView → CollectionViewBinding}/useBoardDataController.d.ts +2 -2
  69. package/dist/components/{EntityCollectionView/useEntityPreviewSlots.d.ts → CollectionViewBinding/usePreviewSlots.d.ts} +5 -5
  70. package/dist/components/DeleteEntityDialog.d.ts +4 -4
  71. package/dist/components/{EntityDetailView.d.ts → DetailViewBinding.d.ts} +5 -5
  72. package/dist/components/EditFormActions.d.ts +3 -0
  73. package/dist/components/{EntityEditView.d.ts → EditViewBinding.d.ts} +9 -9
  74. package/dist/components/{EntityPreview.d.ts → EntityPreviewBinding.d.ts} +13 -13
  75. package/dist/components/EntityViewBinding.d.ts +13 -0
  76. package/dist/components/{EntityJsonPreview.d.ts → JsonPreviewBinding.d.ts} +1 -1
  77. package/dist/components/{RebaseCMS.d.ts → RebaseAdmin.d.ts} +2 -2
  78. package/dist/components/RebaseLayout.d.ts +5 -4
  79. package/dist/components/RebaseNavigation.d.ts +1 -1
  80. package/dist/components/RebaseShell.d.ts +1 -0
  81. package/dist/components/ReferenceTable/{EntitySelectionTable.d.ts → SelectionTableBinding.d.ts} +5 -5
  82. package/dist/components/SelectableTable/SelectableTable.d.ts +6 -6
  83. package/dist/components/SelectableTable/SelectableTableContext.d.ts +3 -3
  84. package/dist/components/SelectableTable/SelectionStore.d.ts +2 -2
  85. package/dist/components/SelectableTable/filters/BooleanFilterField.d.ts +6 -1
  86. package/dist/components/SelectableTable/filters/DateTimeFilterField.d.ts +7 -1
  87. package/dist/components/SelectableTable/filters/FilterFieldBinding.d.ts +40 -0
  88. package/dist/components/SelectableTable/filters/ReferenceFilterField.d.ts +7 -1
  89. package/dist/components/SelectableTable/filters/RelationFilterField.d.ts +7 -1
  90. package/dist/components/SelectableTable/filters/StringNumberFilterField.d.ts +7 -1
  91. package/dist/components/SideDialogs.d.ts +1 -1
  92. package/dist/components/SidePanelBinding.d.ts +11 -0
  93. package/dist/components/{SideEntityProvider.d.ts → SidePanelProvider.d.ts} +7 -7
  94. package/dist/components/history/EntityHistoryEntry.d.ts +2 -2
  95. package/dist/components/history/LastEditedByIndicator.d.ts +2 -2
  96. package/dist/components/index.d.ts +15 -14
  97. package/dist/contexts/SidePanelControllerContext.d.ts +3 -0
  98. package/dist/data_export/export/ExportCollectionAction.d.ts +3 -3
  99. package/dist/data_import/components/ImportSaveInProgress.d.ts +2 -2
  100. package/dist/editor.js +1 -1
  101. package/dist/editor.js.map +1 -1
  102. package/dist/form/EntityForm.d.ts +1 -1
  103. package/dist/form/PropertyFieldBinding.d.ts +1 -1
  104. package/dist/form/components/LocalChangesMenu.d.ts +1 -1
  105. package/dist/form/components/StorageUploadProgress.d.ts +1 -1
  106. package/dist/form/field_bindings/StorageUploadFieldBinding.d.ts +1 -1
  107. package/dist/form/form_utils.d.ts +2 -2
  108. package/dist/{history-B3cqBzEV.js → history-GSa4BgDt.js} +7 -7
  109. package/dist/history-GSa4BgDt.js.map +1 -0
  110. package/dist/hooks/index.d.ts +4 -4
  111. package/dist/hooks/navigation/contexts/CollectionRegistryContext.d.ts +2 -2
  112. package/dist/hooks/navigation/useBuildNavigationStateController.d.ts +5 -5
  113. package/dist/hooks/navigation/useNavigationResolution.d.ts +4 -4
  114. package/dist/hooks/navigation/useResolvedCollections.d.ts +7 -7
  115. package/dist/hooks/navigation/useTopLevelNavigation.d.ts +2 -2
  116. package/dist/hooks/navigation/utils.d.ts +5 -5
  117. package/dist/hooks/useBuildSidePanel.d.ts +6 -0
  118. package/dist/hooks/useCMSContext.d.ts +2 -2
  119. package/dist/hooks/{useEntityHistory.d.ts → useHistory.d.ts} +1 -1
  120. package/dist/hooks/useResolvedNavigationFrom.d.ts +3 -3
  121. package/dist/hooks/{useEntitySelectionDialog.d.ts → useSelectionDialog.d.ts} +2 -2
  122. package/dist/hooks/useSideDialogsController.d.ts +1 -1
  123. package/dist/hooks/useSidePanel.d.ts +11 -0
  124. package/dist/index.d.ts +2 -2
  125. package/dist/index.js +2 -2
  126. package/dist/{src-cxV1ODRG.js → src-B8WuGSPZ.js} +886 -692
  127. package/dist/src-B8WuGSPZ.js.map +1 -0
  128. package/dist/types/components/EntityFormActionsProps.d.ts +2 -2
  129. package/dist/types/components/EntityFormProps.d.ts +3 -3
  130. package/dist/types/components/formex.d.ts +1 -1
  131. package/dist/types/fields.d.ts +2 -2
  132. package/dist/util/dataControllerAdapter.d.ts +2 -5
  133. package/dist/util/navigation_utils.d.ts +6 -6
  134. package/dist/util/previews.d.ts +3 -3
  135. package/dist/util/property_utils.d.ts +2 -2
  136. package/dist/util/{entity_view_constants.d.ts → view_constants.d.ts} +1 -1
  137. package/package.json +12 -17
  138. package/src/collection_editor/ConfigControllerProvider.tsx +11 -11
  139. package/src/collection_editor/_cms_internals.ts +3 -3
  140. package/src/collection_editor/api/generateCollectionApi.ts +8 -8
  141. package/src/collection_editor/extensibility_types.ts +3 -3
  142. package/src/collection_editor/index.ts +3 -3
  143. package/src/collection_editor/pgColumnToProperty.ts +3 -3
  144. package/src/collection_editor/serializable_types.ts +8 -8
  145. package/src/collection_editor/serializable_utils.ts +17 -17
  146. package/src/collection_editor/types/collection_editor_controller.tsx +5 -5
  147. package/src/collection_editor/types/collection_inference.ts +2 -2
  148. package/src/collection_editor/types/config_controller.tsx +7 -7
  149. package/src/collection_editor/ui/AddKanbanColumnAction.tsx +3 -3
  150. package/src/collection_editor/ui/CollectionViewHeaderAction.tsx +3 -3
  151. package/src/collection_editor/ui/EditorCollectionAction.tsx +3 -3
  152. package/src/collection_editor/ui/EditorCollectionActionStart.tsx +3 -3
  153. package/src/collection_editor/ui/EditorEntityAction.tsx +3 -3
  154. package/src/collection_editor/ui/HomePageEditorCollectionAction.tsx +1 -1
  155. package/src/collection_editor/ui/KanbanSetupAction.tsx +3 -3
  156. package/src/collection_editor/ui/MissingReferenceWidget.tsx +1 -1
  157. package/src/collection_editor/ui/NewCollectionButton.tsx +1 -1
  158. package/src/collection_editor/ui/NewCollectionCard.tsx +1 -1
  159. package/src/collection_editor/ui/PropertyAddColumnComponent.tsx +3 -3
  160. package/src/collection_editor/ui/collection_editor/AICollectionGeneratorPopover.tsx +6 -6
  161. package/src/collection_editor/ui/collection_editor/CollectionDetailsForm.tsx +6 -6
  162. package/src/collection_editor/ui/collection_editor/CollectionEditorDialog.tsx +29 -29
  163. package/src/collection_editor/ui/collection_editor/CollectionEditorWelcomeView.tsx +5 -5
  164. package/src/collection_editor/ui/collection_editor/CollectionJsonImportDialog.tsx +2 -2
  165. package/src/collection_editor/ui/collection_editor/CollectionPropertiesEditorForm.tsx +10 -10
  166. package/src/collection_editor/ui/collection_editor/CollectionRLSTab.tsx +38 -7
  167. package/src/collection_editor/ui/collection_editor/CollectionRelationsTab.tsx +3 -3
  168. package/src/collection_editor/ui/collection_editor/CollectionStudioView.tsx +3 -3
  169. package/src/collection_editor/ui/collection_editor/CollectionsStudioView.tsx +3 -3
  170. package/src/collection_editor/ui/collection_editor/DisplaySettingsForm.tsx +4 -4
  171. package/src/collection_editor/ui/collection_editor/EntityActionsEditTab.tsx +5 -5
  172. package/src/collection_editor/ui/collection_editor/EntityActionsSelectDialog.tsx +1 -1
  173. package/src/collection_editor/ui/collection_editor/EntityCustomViewsSelectDialog.tsx +1 -1
  174. package/src/collection_editor/ui/collection_editor/EnumForm.tsx +2 -2
  175. package/src/collection_editor/ui/collection_editor/GeneralSettingsForm.tsx +7 -7
  176. package/src/collection_editor/ui/collection_editor/GetCodeDialog.tsx +5 -5
  177. package/src/collection_editor/ui/collection_editor/KanbanConfigSection.tsx +4 -4
  178. package/src/collection_editor/ui/collection_editor/PropertyEditView.tsx +9 -9
  179. package/src/collection_editor/ui/collection_editor/PropertyFieldPreview.tsx +46 -37
  180. package/src/collection_editor/ui/collection_editor/PropertyTree.tsx +2 -2
  181. package/src/collection_editor/ui/collection_editor/RouterCollectionStudioView.tsx +1 -1
  182. package/src/collection_editor/ui/collection_editor/SubcollectionsEditTab.tsx +7 -7
  183. package/src/collection_editor/ui/collection_editor/SwitchControl.tsx +1 -1
  184. package/src/collection_editor/ui/collection_editor/import/CollectionEditorImportDataPreview.tsx +4 -4
  185. package/src/collection_editor/ui/collection_editor/import/CollectionEditorImportMapping.tsx +4 -4
  186. package/src/collection_editor/ui/collection_editor/properties/BlockPropertyField.tsx +1 -1
  187. package/src/collection_editor/ui/collection_editor/properties/BooleanPropertyField.tsx +1 -1
  188. package/src/collection_editor/ui/collection_editor/properties/CommonPropertyFields.tsx +2 -2
  189. package/src/collection_editor/ui/collection_editor/properties/DateTimePropertyField.tsx +2 -2
  190. package/src/collection_editor/ui/collection_editor/properties/EnumPropertyField.tsx +2 -2
  191. package/src/collection_editor/ui/collection_editor/properties/MapPropertyField.tsx +2 -2
  192. package/src/collection_editor/ui/collection_editor/properties/MarkdownPropertyField.tsx +2 -2
  193. package/src/collection_editor/ui/collection_editor/properties/NumberPropertyField.tsx +2 -2
  194. package/src/collection_editor/ui/collection_editor/properties/ReferencePropertyField.tsx +2 -2
  195. package/src/collection_editor/ui/collection_editor/properties/RelationPropertyField.tsx +3 -3
  196. package/src/collection_editor/ui/collection_editor/properties/RepeatPropertyField.tsx +1 -1
  197. package/src/collection_editor/ui/collection_editor/properties/StoragePropertyField.tsx +2 -2
  198. package/src/collection_editor/ui/collection_editor/properties/StringPropertyField.tsx +2 -2
  199. package/src/collection_editor/ui/collection_editor/properties/UrlPropertyField.tsx +1 -1
  200. package/src/collection_editor/ui/collection_editor/properties/VectorPropertyField.tsx +1 -1
  201. package/src/collection_editor/ui/collection_editor/properties/advanced/AdvancedPropertyValidation.tsx +1 -1
  202. package/src/collection_editor/ui/collection_editor/properties/conditions/ConditionsEditor.tsx +1 -1
  203. package/src/collection_editor/ui/collection_editor/properties/conditions/EnumConditionsEditor.tsx +1 -1
  204. package/src/collection_editor/ui/collection_editor/properties/validation/ArrayPropertyValidation.tsx +2 -2
  205. package/src/collection_editor/ui/collection_editor/properties/validation/GeneralPropertyValidation.tsx +2 -2
  206. package/src/collection_editor/ui/collection_editor/properties/validation/NumberPropertyValidation.tsx +2 -2
  207. package/src/collection_editor/ui/collection_editor/properties/validation/StringPropertyValidation.tsx +2 -2
  208. package/src/collection_editor/ui/collection_editor/templates/blog_template.ts +2 -2
  209. package/src/collection_editor/ui/collection_editor/templates/pages_template.ts +2 -2
  210. package/src/collection_editor/ui/collection_editor/templates/products_template.ts +2 -2
  211. package/src/collection_editor/ui/collection_editor/templates/users_template.ts +2 -2
  212. package/src/collection_editor/useJsonCollectionsConfigController.tsx +13 -13
  213. package/src/collection_editor/useLocalCollectionsConfigController.tsx +4 -4
  214. package/src/collection_editor/useSafeSnackbarController.ts +1 -1
  215. package/src/collection_editor/validateCollectionJson.ts +3 -3
  216. package/src/components/AdminModeSyncer.tsx +1 -1
  217. package/src/components/ArrayContainer.tsx +1 -1
  218. package/src/components/ClearFilterSortButton.tsx +1 -1
  219. package/src/components/CollectionPanel.tsx +14 -17
  220. package/src/components/{EntityCollectionTable/EntityCollectionRowActions.tsx → CollectionTableBinding/CollectionRowActions.tsx} +8 -8
  221. package/src/components/{EntityCollectionTable/EntityCollectionTable.tsx → CollectionTableBinding/CollectionTableBinding.tsx} +13 -13
  222. package/src/components/{EntityCollectionTable/EntityCollectionTableProps.tsx → CollectionTableBinding/CollectionTableBindingProps.tsx} +2 -2
  223. package/src/components/{EntityCollectionTable → CollectionTableBinding}/PropertyTableCell.tsx +1 -1
  224. package/src/components/{EntityCollectionTable → CollectionTableBinding}/column_utils.tsx +1 -1
  225. package/src/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableMultipleRelationField.tsx +7 -7
  226. package/src/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableReferenceField.tsx +10 -10
  227. package/src/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableRelationField.tsx +7 -7
  228. package/src/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableStorageUpload.tsx +1 -1
  229. package/src/components/CollectionTableBinding/index.tsx +14 -0
  230. package/src/components/{EntityCollectionTable → CollectionTableBinding}/internal/CollectionTableToolbar.tsx +1 -1
  231. package/src/components/{EntityCollectionTable → CollectionTableBinding}/internal/EntityTableCell.tsx +2 -2
  232. package/src/components/{EntityCollectionTable → CollectionTableBinding}/internal/EntityTableCellActions.tsx +1 -1
  233. package/src/components/{EntityCollectionTable → CollectionTableBinding}/internal/common.tsx +2 -2
  234. package/src/components/{EntityCollectionTable → CollectionTableBinding}/internal/popup_field/PopupFormField.tsx +6 -6
  235. package/src/components/{EntityCollectionTable → CollectionTableBinding}/table_bindings.tsx +1 -1
  236. package/src/components/{EntityCollectionView/EntityBoardCard.tsx → CollectionViewBinding/BoardCardBinding.tsx} +17 -17
  237. package/src/components/{EntityCollectionView/EntityCollectionBoardView.tsx → CollectionViewBinding/CollectionBoardViewBinding.tsx} +17 -16
  238. package/src/components/{EntityCollectionView/EntityCollectionCardView.tsx → CollectionViewBinding/CollectionCardViewBinding.tsx} +9 -9
  239. package/src/components/{EntityCollectionView/EntityCollectionListView.tsx → CollectionViewBinding/CollectionListViewBinding.tsx} +15 -15
  240. package/src/components/{EntityCollectionView/EntityCollectionViewActions.tsx → CollectionViewBinding/CollectionViewActions.tsx} +7 -7
  241. package/src/components/{EntityCollectionView/EntityCollectionView.tsx → CollectionViewBinding/CollectionViewBinding.tsx} +107 -92
  242. package/src/components/{EntityCollectionView/EntityCollectionViewStartActions.tsx → CollectionViewBinding/CollectionViewStartActions.tsx} +6 -6
  243. package/src/components/{EntityCollectionView/EntityCard.tsx → CollectionViewBinding/EntityCardBinding.tsx} +12 -12
  244. package/src/components/{EntityCollectionView → CollectionViewBinding}/FiltersDialog.tsx +49 -72
  245. package/src/components/{EntityCollectionView → CollectionViewBinding}/SplitListView.tsx +10 -10
  246. package/src/components/{EntityCollectionView → CollectionViewBinding}/ViewModeToggle.tsx +1 -1
  247. package/src/components/{EntityCollectionView → CollectionViewBinding}/hooks/useCollectionInlineEditor.ts +6 -6
  248. package/src/components/{EntityCollectionView → CollectionViewBinding}/hooks/useKanbanDragAndDrop.ts +5 -5
  249. package/src/components/{EntityCollectionView → CollectionViewBinding}/useBoardDataController.tsx +25 -13
  250. package/src/components/{EntityCollectionView/useEntityPreviewSlots.ts → CollectionViewBinding/usePreviewSlots.ts} +9 -9
  251. package/src/components/DefaultAppBar.tsx +3 -3
  252. package/src/components/DefaultDrawer.tsx +3 -3
  253. package/src/components/DeleteEntityDialog.tsx +7 -7
  254. package/src/components/{EntityDetailView.tsx → DetailViewBinding.tsx} +28 -31
  255. package/src/components/DrawerNavigationGroup.tsx +2 -2
  256. package/src/components/{EntityEditViewFormActions.tsx → EditFormActions.tsx} +16 -16
  257. package/src/components/{EntityEditView.tsx → EditViewBinding.tsx} +34 -37
  258. package/src/components/{EntityPreview.tsx → EntityPreviewBinding.tsx} +30 -30
  259. package/src/components/{EntityView.tsx → EntityViewBinding.tsx} +7 -7
  260. package/src/components/HomePage/ContentHomePage.tsx +4 -4
  261. package/src/components/HomePage/FavouritesView.tsx +1 -1
  262. package/src/components/HomePage/NavigationCardBinding.tsx +4 -4
  263. package/src/components/HomePage/NavigationGroup.tsx +1 -1
  264. package/src/components/HomePage/RenameGroupDialog.tsx +1 -1
  265. package/src/components/{EntityJsonPreview.tsx → JsonPreviewBinding.tsx} +2 -2
  266. package/src/components/{RebaseCMS.tsx → RebaseAdmin.tsx} +6 -5
  267. package/src/components/RebaseAuthGate.tsx +2 -2
  268. package/src/components/RebaseLayout.tsx +7 -13
  269. package/src/components/RebaseNavigation.tsx +35 -11
  270. package/src/components/RebaseRouteDefs.tsx +2 -2
  271. package/src/components/RebaseShell.tsx +2 -1
  272. package/src/components/ReferenceTable/{EntitySelectionTable.tsx → SelectionTableBinding.tsx} +27 -24
  273. package/src/components/ReferenceWidget.tsx +4 -4
  274. package/src/components/RelationSelector.tsx +15 -13
  275. package/src/components/SearchIconsView.tsx +2 -2
  276. package/src/components/SelectableTable/SelectableTable.tsx +35 -88
  277. package/src/components/SelectableTable/SelectableTableContext.tsx +3 -3
  278. package/src/components/SelectableTable/SelectionStore.ts +4 -4
  279. package/src/components/SelectableTable/filters/BooleanFilterField.tsx +10 -2
  280. package/src/components/SelectableTable/filters/DateTimeFilterField.tsx +34 -13
  281. package/src/components/SelectableTable/filters/FilterFieldBinding.tsx +187 -0
  282. package/src/components/SelectableTable/filters/ReferenceFilterField.tsx +22 -8
  283. package/src/components/SelectableTable/filters/RelationFilterField.tsx +17 -3
  284. package/src/components/SelectableTable/filters/StringNumberFilterField.tsx +67 -13
  285. package/src/components/SideDialogs.tsx +4 -4
  286. package/src/components/{EntitySidePanel.tsx → SidePanelBinding.tsx} +20 -20
  287. package/src/components/{SideEntityProvider.tsx → SidePanelProvider.tsx} +17 -17
  288. package/src/components/UserSelector.tsx +1 -1
  289. package/src/components/admin/CreationResultDialog.tsx +6 -3
  290. package/src/components/app/Scaffold.tsx +6 -2
  291. package/src/components/common/default_entity_actions.tsx +132 -34
  292. package/src/components/field_configs.tsx +1 -1
  293. package/src/components/history/EntityHistoryEntry.tsx +3 -3
  294. package/src/components/history/EntityHistoryView.tsx +7 -7
  295. package/src/components/history/LastEditedByIndicator.tsx +4 -4
  296. package/src/components/index.ts +16 -15
  297. package/src/contexts/SidePanelControllerContext.tsx +5 -0
  298. package/src/data_export/export/BasicExportAction.tsx +1 -1
  299. package/src/data_export/export/ExportCollectionAction.tsx +5 -5
  300. package/src/data_import/components/DataNewPropertiesMapping.tsx +1 -1
  301. package/src/data_import/components/ImportFileUpload.tsx +1 -1
  302. package/src/data_import/components/ImportNewPropertyFieldPreview.tsx +1 -1
  303. package/src/data_import/components/ImportSaveInProgress.tsx +4 -4
  304. package/src/data_import/import/ImportCollectionAction.tsx +6 -6
  305. package/src/data_import/utils/data.ts +4 -4
  306. package/src/data_import/utils/get_properties_mapping.ts +1 -1
  307. package/src/editor/components/image-bubble.tsx +1 -1
  308. package/src/editor/components/table-bubble.tsx +1 -1
  309. package/src/editor/editor.tsx +1 -1
  310. package/src/editor/selectors/link-selector.tsx +1 -1
  311. package/src/editor/selectors/node-selector.tsx +1 -1
  312. package/src/form/EntityForm.tsx +6 -6
  313. package/src/form/EntityFormActions.tsx +4 -4
  314. package/src/form/EntityFormBinding.tsx +10 -10
  315. package/src/form/PropertyFieldBinding.tsx +7 -7
  316. package/src/form/components/ErrorFocus.tsx +1 -1
  317. package/src/form/components/LocalChangesMenu.tsx +3 -3
  318. package/src/form/components/StorageItemPreview.tsx +1 -1
  319. package/src/form/components/StorageUploadProgress.tsx +3 -3
  320. package/src/form/field_bindings/ArrayCustomShapedFieldBinding.tsx +1 -1
  321. package/src/form/field_bindings/ArrayOfReferencesFieldBinding.tsx +5 -5
  322. package/src/form/field_bindings/BlockFieldBinding.tsx +2 -2
  323. package/src/form/field_bindings/DateTimeFieldBinding.tsx +1 -1
  324. package/src/form/field_bindings/KeyValueFieldBinding.tsx +21 -21
  325. package/src/form/field_bindings/MapFieldBinding.tsx +1 -1
  326. package/src/form/field_bindings/MarkdownEditorFieldBinding.tsx +2 -2
  327. package/src/form/field_bindings/MultipleRelationFieldBinding.tsx +3 -3
  328. package/src/form/field_bindings/ReferenceFieldBinding.tsx +7 -7
  329. package/src/form/field_bindings/RelationFieldBinding.tsx +4 -4
  330. package/src/form/field_bindings/RepeatFieldBinding.tsx +1 -1
  331. package/src/form/field_bindings/StorageUploadFieldBinding.tsx +3 -3
  332. package/src/form/form_utils.ts +3 -3
  333. package/src/hooks/index.ts +4 -4
  334. package/src/hooks/navigation/contexts/CollectionRegistryContext.tsx +2 -2
  335. package/src/hooks/navigation/useBuildCollectionRegistryController.tsx +11 -11
  336. package/src/hooks/navigation/useBuildNavigationStateController.tsx +5 -5
  337. package/src/hooks/navigation/useNavigationResolution.ts +28 -13
  338. package/src/hooks/navigation/useResolvedCollections.ts +8 -8
  339. package/src/hooks/navigation/useTopLevelNavigation.ts +2 -2
  340. package/src/hooks/navigation/utils.ts +5 -5
  341. package/src/hooks/{useBuildSideEntityController.tsx → useBuildSidePanel.tsx} +29 -29
  342. package/src/hooks/useCMSContext.tsx +7 -7
  343. package/src/hooks/{useEntityHistory.ts → useHistory.ts} +2 -2
  344. package/src/hooks/useResolvedNavigationFrom.tsx +10 -5
  345. package/src/hooks/{useEntitySelectionDialog.tsx → useSelectionDialog.tsx} +7 -7
  346. package/src/hooks/useSideDialogsController.tsx +1 -1
  347. package/src/hooks/useSidePanel.tsx +13 -0
  348. package/src/index.ts +15 -15
  349. package/src/preview/PropertyPreview.tsx +2 -2
  350. package/src/preview/components/DatePreview.tsx +1 -1
  351. package/src/preview/components/EnumValuesChip.tsx +1 -1
  352. package/src/preview/components/ImagePreview.tsx +1 -1
  353. package/src/preview/components/ReferencePreview.tsx +11 -11
  354. package/src/preview/components/RelationPreview.tsx +13 -12
  355. package/src/preview/components/StorageThumbnail.tsx +1 -1
  356. package/src/preview/property_previews/ArrayOfStorageComponentsPreview.tsx +1 -1
  357. package/src/preview/property_previews/ArrayOneOfPreview.tsx +1 -1
  358. package/src/preview/property_previews/ArrayPropertyPreview.tsx +1 -1
  359. package/src/routes/RebaseRoute.tsx +12 -12
  360. package/src/types/components/EntityFormActionsProps.tsx +2 -2
  361. package/src/types/components/EntityFormProps.tsx +3 -3
  362. package/src/types/components/formex.tsx +1 -1
  363. package/src/types/fields.tsx +2 -2
  364. package/src/util/dataControllerAdapter.ts +9 -15
  365. package/src/util/navigation_utils.ts +7 -7
  366. package/src/util/previews.ts +7 -5
  367. package/src/util/property_utils.tsx +2 -2
  368. package/src/util/{entity_view_constants.ts → view_constants.ts} +1 -1
  369. package/dist/CollectionEditorDialog-BO_aQ-Z4.js.map +0 -1
  370. package/dist/PropertyEditView-DKzOpMjR.js.map +0 -1
  371. package/dist/RouterCollectionsStudioView-BQTIExjA.js.map +0 -1
  372. package/dist/components/EntityCollectionTable/EntityCollectionTable.d.ts +0 -28
  373. package/dist/components/EntityCollectionTable/index.d.ts +0 -6
  374. package/dist/components/EntityCollectionView/EntityCard.d.ts +0 -21
  375. package/dist/components/EntityEditViewFormActions.d.ts +0 -3
  376. package/dist/components/EntitySidePanel.d.ts +0 -11
  377. package/dist/components/EntityView.d.ts +0 -13
  378. package/dist/contexts/SideEntityControllerContext.d.ts +0 -3
  379. package/dist/history-B3cqBzEV.js.map +0 -1
  380. package/dist/hooks/useBuildSideEntityController.d.ts +0 -6
  381. package/dist/hooks/useSideEntityController.d.ts +0 -11
  382. package/dist/src-cxV1ODRG.js.map +0 -1
  383. package/src/components/EntityCollectionTable/index.tsx +0 -14
  384. package/src/contexts/SideEntityControllerContext.tsx +0 -5
  385. package/src/hooks/useSideEntityController.tsx +0 -13
  386. /package/dist/components/{EntityCollectionTable → CollectionTableBinding}/PropertyTableCell.d.ts +0 -0
  387. /package/dist/components/{EntityCollectionTable → CollectionTableBinding}/column_utils.d.ts +0 -0
  388. /package/dist/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableRelationSelectorField.d.ts +0 -0
  389. /package/dist/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableStorageUpload.d.ts +0 -0
  390. /package/dist/components/{EntityCollectionTable → CollectionTableBinding}/fields/VirtualTableSelect.d.ts +0 -0
  391. /package/dist/components/{EntityCollectionTable → CollectionTableBinding}/fields/VirtualTableUserSelect.d.ts +0 -0
  392. /package/dist/components/{EntityCollectionTable → CollectionTableBinding}/internal/CollectionTableToolbar.d.ts +0 -0
  393. /package/dist/components/{EntityCollectionTable → CollectionTableBinding}/internal/EntityTableCellActions.d.ts +0 -0
  394. /package/dist/components/{EntityCollectionTable → CollectionTableBinding}/internal/popup_field/useDraggable.d.ts +0 -0
  395. /package/dist/components/{EntityCollectionTable → CollectionTableBinding}/internal/popup_field/useWindowSize.d.ts +0 -0
  396. /package/dist/components/{EntityCollectionView → CollectionViewBinding}/FilterPresetsButton.d.ts +0 -0
  397. /package/dist/components/{EntityCollectionView → CollectionViewBinding}/FiltersDialog.d.ts +0 -0
  398. /package/dist/components/{EntityCollectionView → CollectionViewBinding}/ViewModeToggle.d.ts +0 -0
  399. /package/dist/components/{EntityCollectionView → CollectionViewBinding}/useSelectionController.d.ts +0 -0
  400. /package/dist/components/{EntityCollectionView → CollectionViewBinding}/utils.d.ts +0 -0
  401. /package/src/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableRelationSelectorField.tsx +0 -0
  402. /package/src/components/{EntityCollectionTable → CollectionTableBinding}/fields/VirtualTableSelect.tsx +0 -0
  403. /package/src/components/{EntityCollectionTable → CollectionTableBinding}/fields/VirtualTableUserSelect.tsx +0 -0
  404. /package/src/components/{EntityCollectionTable → CollectionTableBinding}/internal/popup_field/useDraggable.tsx +0 -0
  405. /package/src/components/{EntityCollectionTable → CollectionTableBinding}/internal/popup_field/useWindowSize.tsx +0 -0
  406. /package/src/components/{EntityCollectionView → CollectionViewBinding}/FilterPresetsButton.tsx +0 -0
  407. /package/src/components/{EntityCollectionView → CollectionViewBinding}/useSelectionController.tsx +0 -0
  408. /package/src/components/{EntityCollectionView → CollectionViewBinding}/utils.ts +0 -0
@@ -1,4 +1,4 @@
1
- import type { EntityCollection } from "@rebasepro/types";
1
+ import type { CollectionConfig } from "@rebasepro/types";
2
2
  import { Entity, FilterValues } from "@rebasepro/types";
3
3
  /**
4
4
  * Data state for a single board column
@@ -40,7 +40,7 @@ export interface UseBoardDataControllerProps<M extends Record<string, unknown> =
40
40
  /** Full path to the collection */
41
41
  fullPath: string;
42
42
  /** The entity collection configuration */
43
- collection: EntityCollection<M>;
43
+ collection: CollectionConfig<M>;
44
44
  /** Property key used for column assignment */
45
45
  columnProperty: string;
46
46
  /** Array of column values (enum values from columnProperty) */
@@ -1,10 +1,10 @@
1
- import type { EntityCollection, Property, RelationProperty } from "@rebasepro/types";
1
+ import type { CollectionConfig, Property, RelationProperty } from "@rebasepro/types";
2
2
  import type { Entity, PropertyConfig } from "@rebasepro/types";
3
3
  import type { AuthController } from "@rebasepro/types";
4
4
  import { ChipColorScheme } from "@rebasepro/ui";
5
5
  /**
6
6
  * A resolved "slot" containing the property definition, key, and the
7
- * concrete value extracted from an entity.
7
+ * concrete value extracted from a entity.
8
8
  */
9
9
  export interface PreviewSlot {
10
10
  property: Property;
@@ -84,7 +84,7 @@ export interface CollectionSlotKeys {
84
84
  * Resolve which property key fills each slot for a given collection.
85
85
  * Pure function — call inside `useMemo`.
86
86
  */
87
- export declare function resolveCollectionSlotKeys(collection: EntityCollection<Record<string, unknown>>, authController: AuthController, propertyConfigs: Record<string, PropertyConfig>): CollectionSlotKeys;
87
+ export declare function resolveCollectionSlotKeys(collection: CollectionConfig<Record<string, unknown>>, authController: AuthController, propertyConfigs: Record<string, PropertyConfig>): CollectionSlotKeys;
88
88
  /**
89
89
  * Resolves which property key fills each preview slot for a collection.
90
90
  * Memoized — only recomputes when the collection definition changes.
@@ -92,10 +92,10 @@ export declare function resolveCollectionSlotKeys(collection: EntityCollection<R
92
92
  * Use this in the parent list/grid component, then pass the result to
93
93
  * `resolveEntitySlots` for each entity row.
94
94
  */
95
- export declare function useCollectionSlotKeys(collection: EntityCollection<Record<string, unknown>>, authController: AuthController, propertyConfigs: Record<string, PropertyConfig>): CollectionSlotKeys;
95
+ export declare function useCollectionSlotKeys(collection: CollectionConfig<Record<string, unknown>>, authController: AuthController, propertyConfigs: Record<string, PropertyConfig>): CollectionSlotKeys;
96
96
  /**
97
97
  * Resolve concrete slot values for a single entity.
98
98
  * This is a pure function (no hooks) so it can be called inside
99
99
  * `React.memo` render functions or loops without violating hook rules.
100
100
  */
101
- export declare function resolveEntitySlots(entity: Entity<Record<string, unknown>>, collection: EntityCollection<Record<string, unknown>>, slotKeys: CollectionSlotKeys): EntityPreviewSlots;
101
+ export declare function resolveEntitySlots(entity: Entity<Record<string, unknown>>, collection: CollectionConfig<Record<string, unknown>>, slotKeys: CollectionSlotKeys): EntityPreviewSlots;
@@ -1,13 +1,13 @@
1
- import type { EntityCollection } from "@rebasepro/types";
2
- import { Entity, EntityCallbacks } from "@rebasepro/types";
1
+ import type { CollectionConfig } from "@rebasepro/types";
2
+ import { Entity, CollectionCallbacks } from "@rebasepro/types";
3
3
  import React from "react";
4
4
  export interface DeleteEntityDialogProps<M extends Record<string, unknown>> {
5
5
  entityOrEntitiesToDelete?: Entity<M> | Entity<M>[];
6
6
  path: string;
7
- collection: EntityCollection<M>;
7
+ collection: CollectionConfig<M>;
8
8
  open: boolean;
9
9
  onClose: () => void;
10
- callbacks?: EntityCallbacks<M>;
10
+ callbacks?: CollectionCallbacks<M>;
11
11
  onEntityDelete?(path: string, entity: Entity<M>): void;
12
12
  onMultipleEntitiesDelete?(path: string, entities: Entity<M>[]): void;
13
13
  }
@@ -1,4 +1,4 @@
1
- import type { EntityCollection } from "@rebasepro/types";
1
+ import type { CollectionConfig } from "@rebasepro/types";
2
2
  import React from "react";
3
3
  import { EntityStatus } from "@rebasepro/types";
4
4
  export type BarActionsParams = {
@@ -11,11 +11,11 @@ export type OnTabChangeParams<M extends Record<string, unknown>> = {
11
11
  path: string;
12
12
  entityId?: string | number;
13
13
  selectedTab?: string;
14
- collection: EntityCollection<M>;
14
+ collection: CollectionConfig<M>;
15
15
  };
16
- export interface EntityDetailViewProps<M extends Record<string, unknown> = Record<string, unknown>> {
16
+ export interface DetailViewBindingProps<M extends Record<string, unknown> = Record<string, unknown>> {
17
17
  path: string;
18
- collection: EntityCollection<M>;
18
+ collection: CollectionConfig<M>;
19
19
  entityId: string | number;
20
20
  selectedTab?: string;
21
21
  parentCollectionSlugs: string[];
@@ -25,4 +25,4 @@ export interface EntityDetailViewProps<M extends Record<string, unknown> = Recor
25
25
  layout?: "side_panel" | "full_screen" | "split" | "dialog";
26
26
  barActions?: (params: BarActionsParams) => React.ReactNode;
27
27
  }
28
- export declare function EntityDetailView<M extends Record<string, unknown>>({ entityId, ...props }: EntityDetailViewProps<M>): React.JSX.Element;
28
+ export declare function DetailViewBinding<M extends Record<string, unknown>>({ entityId, ...props }: DetailViewBindingProps<M>): React.JSX.Element;
@@ -0,0 +1,3 @@
1
+ import React from "react";
2
+ import type { EntityFormActionsProps } from "../types/components/EntityFormActionsProps";
3
+ export declare function EditFormActions({ collection, path, entity, layout, savingError, formex, disabled, status, pluginActions, openEntityMode, showDefaultActions, navigateBack, formContext }: EntityFormActionsProps): React.JSX.Element;
@@ -1,9 +1,9 @@
1
- import type { EntityCollection } from "@rebasepro/types";
1
+ import type { CollectionConfig } from "@rebasepro/types";
2
2
  import React from "react";
3
3
  import { Entity, EntityStatus } from "@rebasepro/types";
4
4
  import type { EntityFormBindingProps } from "../form";
5
5
  import type { OnUpdateParams } from "../types/components/EntityFormProps";
6
- import { MAIN_TAB_VALUE, JSON_TAB_VALUE, HISTORY_TAB_VALUE } from "../util/entity_view_constants";
6
+ import { MAIN_TAB_VALUE, JSON_TAB_VALUE, HISTORY_TAB_VALUE } from "../util/view_constants";
7
7
  export { MAIN_TAB_VALUE, JSON_TAB_VALUE, HISTORY_TAB_VALUE };
8
8
  export type BarActionsParams = {
9
9
  values: object;
@@ -15,14 +15,14 @@ export type OnTabChangeParams<M extends Record<string, unknown>> = {
15
15
  path: string;
16
16
  entityId?: string | number;
17
17
  selectedTab?: string;
18
- collection: EntityCollection<M>;
18
+ collection: CollectionConfig<M>;
19
19
  };
20
- export interface EntityEditViewProps<M extends Record<string, unknown> = Record<string, unknown>> {
20
+ export interface EditViewBindingProps<M extends Record<string, unknown> = Record<string, unknown>> {
21
21
  /**
22
22
  * The CMS path of the entity, e.g. "users" or "products".
23
23
  */
24
24
  path: string;
25
- collection: EntityCollection<M>;
25
+ collection: CollectionConfig<M>;
26
26
  entityId?: string | number;
27
27
  databaseId?: string;
28
28
  copy?: boolean;
@@ -39,16 +39,16 @@ export interface EntityEditViewProps<M extends Record<string, unknown> = Record<
39
39
  /**
40
40
  * Pre-populate the form with these values when creating a new entity.
41
41
  * Only applied when the form is in "new" mode (no entityId).
42
- * Sourced from EntitySidePanelProps (side panel) or location.state (full screen).
42
+ * Sourced from SidePanelBindingProps (side panel) or location.state (full screen).
43
43
  */
44
44
  defaultValues?: Partial<M>;
45
45
  }
46
46
  /**
47
47
  * This is the default view that is used as the content of a side panel when
48
- * an entity is opened.
48
+ * a record is opened.
49
49
  */
50
- export declare function EntityEditView<M extends Record<string, unknown>>({ entityId, ...props }: EntityEditViewProps<M>): React.JSX.Element;
51
- export declare function EntityEditViewInner<M extends Record<string, unknown>>({ path, entityId, selectedTab: selectedTabProp, collection, parentCollectionSlugs, parentEntityIds, onValuesModified, onSaved, onTabChange, navigateBack, entity, initialDirtyValues, dataLoading, layout, barActions, status, setStatus, formProps, canEdit }: EntityEditViewProps<M> & {
50
+ export declare function EditViewBinding<M extends Record<string, unknown>>({ entityId, ...props }: EditViewBindingProps<M>): React.JSX.Element;
51
+ export declare function EditViewBindingInner<M extends Record<string, unknown>>({ path, entityId, selectedTab: selectedTabProp, collection, parentCollectionSlugs, parentEntityIds, onValuesModified, onSaved, onTabChange, navigateBack, entity, initialDirtyValues, dataLoading, layout, barActions, status, setStatus, formProps, canEdit }: EditViewBindingProps<M> & {
52
52
  entity?: Entity<M>;
53
53
  initialDirtyValues?: Partial<M>;
54
54
  dataLoading: boolean;
@@ -1,11 +1,11 @@
1
- import type { EntityCollection } from "@rebasepro/types";
1
+ import type { CollectionConfig } from "@rebasepro/types";
2
2
  import * as React from "react";
3
3
  import { Entity } from "@rebasepro/types";
4
4
  import type { PreviewSize } from "../types/components/PropertyPreviewProps";
5
- export type EntityPreviewProps = {
5
+ export type EntityPreviewBindingProps = {
6
6
  size?: PreviewSize;
7
7
  actions?: React.ReactNode;
8
- collection?: EntityCollection;
8
+ collection?: CollectionConfig;
9
9
  hover?: boolean;
10
10
  previewKeys?: string[];
11
11
  disabled?: boolean;
@@ -15,35 +15,35 @@ export type EntityPreviewProps = {
15
15
  includeEntityLink?: boolean;
16
16
  includeImage?: boolean;
17
17
  onClick?: (e: React.SyntheticEvent) => void;
18
- onSideEntityClick?: (entity: Entity) => void;
18
+ onSidePanelClick?: (entity: Entity) => void;
19
19
  };
20
- export type EntityPreviewDataProps = {
20
+ export type EntityPreviewBindingDataProps = {
21
21
  size?: "smallest" | "small" | "medium" | "large";
22
22
  actions?: React.ReactNode;
23
- collection?: EntityCollection;
23
+ collection?: CollectionConfig;
24
24
  previewKeys?: string[];
25
25
  entity: Entity<any>;
26
- onSideEntityClick?: (entity: Entity) => void;
26
+ onSidePanelClick?: (entity: Entity) => void;
27
27
  includeId?: boolean;
28
28
  includeTitle?: boolean;
29
29
  includeEntityLink?: boolean;
30
30
  includeImage?: boolean;
31
31
  };
32
32
  /**
33
- * This component contains the main logic and content for displaying an entity preview,
34
- * without any container wrapper. Used internally by EntityPreview.
33
+ * This component contains the main logic and content for displaying a entity preview,
34
+ * without any container wrapper. Used internally by EntityPreviewBinding.
35
35
  */
36
- export declare function EntityPreviewData({ actions, collection: collectionProp, previewKeys, size, includeId, onSideEntityClick, includeTitle, includeEntityLink, includeImage, entity }: EntityPreviewDataProps): React.JSX.Element;
37
- export declare function EntityPreviewWithId({ entityId, path, ...props }: Omit<EntityPreviewProps, "entity"> & {
36
+ export declare function EntityPreviewBindingData({ actions, collection: collectionProp, previewKeys, size, includeId, onSidePanelClick, includeTitle, includeEntityLink, includeImage, entity }: EntityPreviewBindingDataProps): React.JSX.Element;
37
+ export declare function EntityPreviewBindingWithId({ entityId, path, ...props }: Omit<EntityPreviewBindingProps, "entity"> & {
38
38
  entityId: string | number;
39
39
  path: string;
40
40
  databaseId?: string;
41
41
  }): React.JSX.Element;
42
42
  /**
43
- * This view is used to display a preview of an entity.
43
+ * This view is used to display a preview of a entity.
44
44
  * It is used by default in reference fields and whenever a reference is displayed.
45
45
  */
46
- export declare function EntityPreview({ actions, disabled, hover, collection, previewKeys, onClick, size, includeId, includeTitle, includeEntityLink, includeImage, onSideEntityClick, entity }: EntityPreviewProps): React.JSX.Element;
46
+ export declare function EntityPreviewBinding({ actions, disabled, hover, collection, previewKeys, onClick, size, includeId, includeTitle, includeEntityLink, includeImage, onSidePanelClick, entity }: EntityPreviewBindingProps): React.JSX.Element;
47
47
  export type EntityPreviewContainerProps = {
48
48
  children: React.ReactNode;
49
49
  hover?: boolean;
@@ -0,0 +1,13 @@
1
+ import type { CollectionConfig } from "@rebasepro/types";
2
+ import React from "react";
3
+ import { Entity } from "@rebasepro/types";
4
+ /**
5
+ * @group Components
6
+ */
7
+ export interface EntityViewBindingProps<M extends Record<string, unknown>> {
8
+ entity: Entity<M>;
9
+ collection: CollectionConfig<M>;
10
+ path: string;
11
+ className?: string;
12
+ }
13
+ export declare function EntityViewBinding<M extends Record<string, unknown>>({ entity, collection, path, className }: EntityViewBindingProps<M>): React.JSX.Element;
@@ -1,4 +1,4 @@
1
1
  import React from "react";
2
- export declare function EntityJsonPreview({ values }: {
2
+ export declare function JsonPreviewBinding({ values }: {
3
3
  values: object;
4
4
  }): React.JSX.Element;
@@ -1,4 +1,4 @@
1
- import type { RebaseCMSConfig } from "@rebasepro/types";
1
+ import type { RebaseAdminConfig } from "@rebasepro/types";
2
2
  /**
3
3
  * Declarative component to configure the CMS in Rebase.
4
4
  * Renders nothing — purely registers config into the RebaseRegistry.
@@ -7,4 +7,4 @@ import type { RebaseCMSConfig } from "@rebasepro/types";
7
7
  * is auto-wired as a native feature (slots, provider, Studio view) without
8
8
  * needing any external plugin.
9
9
  */
10
- export declare function RebaseCMS({ collections, views, homePage, entityViews, entityActions, collectionEditor, navigationGroupMappings }: RebaseCMSConfig): null;
10
+ export declare function RebaseAdmin({ collections, views, homePage, entityViews, entityActions, collectionEditor, navigationGroupMappings, basePath }: RebaseAdminConfig): null;
@@ -3,7 +3,7 @@ import type { AppView } from "@rebasepro/types";
3
3
  export interface RebaseLayoutProps {
4
4
  /** Title shown in the drawer. */
5
5
  title?: string;
6
- /** Custom AppBar to override the default. */
6
+ /** Top bar. Only rendered if provided — pass `<AppBar/>` for the default one. */
7
7
  appBar?: React.ReactNode;
8
8
  /** Custom Drawer to override the default. */
9
9
  drawer?: React.ReactNode;
@@ -13,17 +13,18 @@ export interface RebaseLayoutProps {
13
13
  devViews?: AppView[];
14
14
  }
15
15
  /**
16
- * Layout layer — provides the Scaffold, AppBar, Drawer, and SideDialogs.
16
+ * Layout layer — provides the Scaffold, Drawer, and SideDialogs.
17
17
  *
18
18
  * Wraps the route outlet with the standard Rebase admin layout.
19
- * Override individual pieces (appBar, drawer) via props.
19
+ * Override the drawer via props; pass `appBar` to add a top bar (there is
20
+ * none by default — the drawer owns navigation and user actions).
20
21
  *
21
22
  * **Independently usable**: Use this when you want the Rebase layout
22
23
  * without its default route definitions.
23
24
  *
24
25
  * @example
25
26
  * ```tsx
26
- * <RebaseLayout title="My Admin">
27
+ * <RebaseLayout title="My Admin" appBar={<AppBar/>}>
27
28
  * <Route path="/" element={<MyHomePage />} />
28
29
  * <Route path="/custom" element={<CustomView />} />
29
30
  * </RebaseLayout>
@@ -16,7 +16,7 @@ export interface RebaseNavigationProps {
16
16
  * ```tsx
17
17
  * <RebaseNavigation>
18
18
  * <MyCustomLayout>
19
- * <EntityCollectionView ... />
19
+ * <CollectionViewBinding ... />
20
20
  * </MyCustomLayout>
21
21
  * </RebaseNavigation>
22
22
  * ```
@@ -1,6 +1,7 @@
1
1
  import React from "react";
2
2
  export interface RebaseShellProps {
3
3
  title?: string;
4
+ /** Top bar. Only rendered if provided — pass `<AppBar/>` for the default one. */
4
5
  appBar?: React.ReactNode;
5
6
  drawer?: React.ReactNode;
6
7
  autoOpenDrawer?: boolean;
@@ -1,10 +1,10 @@
1
- import type { EntityCollection } from "@rebasepro/types";
1
+ import type { CollectionConfig } from "@rebasepro/types";
2
2
  import React from "react";
3
3
  import { Entity, FilterValues } from "@rebasepro/types";
4
4
  /**
5
5
  * @group Components
6
6
  */
7
- export interface EntitySelectionProps<M extends Record<string, unknown>> {
7
+ export interface SelectionProps<M extends Record<string, unknown>> {
8
8
  /**
9
9
  * Allow multiple selection of values
10
10
  */
@@ -12,7 +12,7 @@ export interface EntitySelectionProps<M extends Record<string, unknown>> {
12
12
  /**
13
13
  * Entity collection config
14
14
  */
15
- collection?: EntityCollection<M>;
15
+ collection?: CollectionConfig<M>;
16
16
  /**
17
17
  * Absolute path of the collection.
18
18
  * May be not set if this hook is being used in a component and the path is
@@ -53,7 +53,7 @@ export interface EntitySelectionProps<M extends Record<string, unknown>> {
53
53
  }
54
54
  /**
55
55
  * This component allows to select entities from a given collection.
56
- * You probably want to open this dialog as a side view using {@link useEntitySelectionTable}
56
+ * You probably want to open this dialog as a side view using {@link useSelectionTableBinding}
57
57
  * @group Components
58
58
  */
59
- export declare function EntitySelectionTable<M extends Record<string, unknown>>(props: EntitySelectionProps<M>): React.JSX.Element;
59
+ export declare function SelectionTableBinding<M extends Record<string, unknown>>(props: SelectionProps<M>): React.JSX.Element;
@@ -1,7 +1,7 @@
1
1
  import React from "react";
2
2
  import { CollectionSize, Entity, EntityTableController, FilterValues } from "@rebasepro/types";
3
3
  import { CellRendererParams, VirtualTableColumn } from "@rebasepro/ui";
4
- import { OnCellValueChange, OnColumnResizeParams } from "@rebasepro/core";
4
+ import { OnCellValueChange, OnColumnResizeParams } from "@rebasepro/app";
5
5
  export type SelectableTableProps<M extends Record<string, unknown>> = {
6
6
  /**
7
7
  * Callback when a cell value changes.
@@ -72,23 +72,23 @@ export type SelectableTableProps<M extends Record<string, unknown>> = {
72
72
  * This component is in charge of rendering a collection table with a high
73
73
  * degree of customization.
74
74
  *
75
- * This component is used internally by {@link EntityCollectionView} and
75
+ * This component is used internally by {@link CollectionViewBinding} and
76
76
  * {@link useReferenceDialog}
77
77
  *
78
78
  * Please note that you only need to use this component if you are building
79
79
  * a custom view. If you just need to create a default view you can do it
80
80
  * exclusively with config options.
81
81
  *
82
- * If you want to bind a {@link EntityCollection} to a table with the default
82
+ * If you want to bind a {@link CollectionConfig} to a table with the default
83
83
  * options you see in collections in the top level navigation, you can
84
- * check {@link EntityCollectionView}.
84
+ * check {@link CollectionViewBinding}.
85
85
  *
86
86
  * The data displayed in the table is managed by a {@link EntityTableController}.
87
87
  * You can build the default, bound to a path in the driver, by using the hook
88
88
  * {@link useDataTableController}
89
89
  *
90
- * @see EntityCollectionTableProps
91
- * @see EntityCollectionView
90
+ * @see CollectionTableBindingProps
91
+ * @see CollectionViewBinding
92
92
  * @see VirtualTable
93
93
  * @group Components
94
94
  */
@@ -1,4 +1,4 @@
1
1
  import React from "react";
2
- import { EntityCollectionTableController } from "@rebasepro/core";
3
- export declare const SelectableTableContext: React.Context<EntityCollectionTableController<Record<string, unknown>>>;
4
- export declare const useSelectableTableController: <M extends Record<string, unknown> = Record<string, unknown>>() => EntityCollectionTableController<M>;
2
+ import { DataCollectionTableController } from "@rebasepro/app";
3
+ export declare const SelectableTableContext: React.Context<DataCollectionTableController<Record<string, unknown>>>;
4
+ export declare const useSelectableTableController: <M extends Record<string, unknown> = Record<string, unknown>>() => DataCollectionTableController<M>;
@@ -9,12 +9,12 @@ export interface AdminSelectedCell extends SelectedCell {
9
9
  height: number;
10
10
  }
11
11
  export declare function createSelectionStore(): {
12
- getSnapshot: () => AdminSelectedCell | undefined;
12
+ getEntity: () => AdminSelectedCell | undefined;
13
13
  subscribe: (listener: () => void) => () => void;
14
14
  select: (cell: AdminSelectedCell | undefined) => void;
15
15
  };
16
16
  export type SelectionStore = VirtualTableSelectionStore<AdminSelectedCell>;
17
17
  export declare function useCellSelected(store: {
18
- getSnapshot: () => SelectedCellProps | undefined;
18
+ getEntity: () => SelectedCellProps | undefined;
19
19
  subscribe: (listener: () => void) => () => void;
20
20
  }, propertyKey: string, entityPath: string, entityId: string | number): boolean;
@@ -5,6 +5,11 @@ interface BooleanFieldProps {
5
5
  value?: [op: VirtualTableWhereFilterOp, fieldValue: unknown];
6
6
  setValue: (value?: [op: VirtualTableWhereFilterOp, newValue: unknown]) => void;
7
7
  title?: string;
8
+ /**
9
+ * Restrict the offered operators. This field only ever emits `["==", …]`,
10
+ * so it renders nothing when `==` is not allowed.
11
+ */
12
+ operators?: readonly VirtualTableWhereFilterOp[];
8
13
  }
9
- export declare function BooleanFilterField({ name, title, value, setValue }: BooleanFieldProps): React.JSX.Element;
14
+ export declare function BooleanFilterField({ name, title, value, setValue, operators }: BooleanFieldProps): React.JSX.Element | null;
10
15
  export {};
@@ -8,6 +8,12 @@ interface DateTimeFilterFieldProps {
8
8
  isArray?: boolean;
9
9
  title?: string;
10
10
  timezone?: string;
11
+ /**
12
+ * Restrict the offered operators (already resolved against engine
13
+ * capabilities and property config). When omitted, all operators this
14
+ * field can render are offered.
15
+ */
16
+ operators?: readonly VirtualTableWhereFilterOp[];
11
17
  }
12
- export declare function DateTimeFilterField({ name, isArray, mode, value, setValue, title, timezone }: DateTimeFilterFieldProps): React.JSX.Element;
18
+ export declare function DateTimeFilterField({ name, isArray, mode, value, setValue, title, timezone, operators }: DateTimeFilterFieldProps): React.JSX.Element | null;
13
19
  export {};
@@ -0,0 +1,40 @@
1
+ import React from "react";
2
+ import { Property, WhereFilterOp } from "@rebasepro/types";
3
+ export interface FilterFieldBindingInput {
4
+ /** Key of the property being filtered (the column id). */
5
+ propertyKey: string;
6
+ /** The raw property — array properties are unwrapped internally. */
7
+ property: Property;
8
+ /**
9
+ * Engine backing the collection (`collection.engine`). Drives which
10
+ * operators the engine can execute. Usually omitted — it is read from
11
+ * the surrounding {@link CollectionScopeProvider}; pass it explicitly
12
+ * only when rendering outside any collection scope.
13
+ */
14
+ engine?: string;
15
+ value?: [WhereFilterOp, unknown];
16
+ setValue: (value?: [WhereFilterOp, unknown]) => void;
17
+ /** Coordination flags for fields that open their own dialogs. */
18
+ hidden?: boolean;
19
+ setHidden?: (hidden: boolean) => void;
20
+ }
21
+ /**
22
+ * The single entry point for rendering a collection filter field.
23
+ * Used by both the table header filters ({@link SelectableTable}) and the
24
+ * Filters dialog.
25
+ *
26
+ * Resolution order:
27
+ * 1. `property.ui.Filter` — per-property replacement (rendered even when the
28
+ * resolved operator list is empty; the component owns filterability).
29
+ * 2. `components["Collection.FilterField"]` — collection-level or app-level
30
+ * override (wrap mode supported via `OriginalComponent`).
31
+ * 3. Built-in field dispatched by property type.
32
+ *
33
+ * The operators handed to the field are the intersection of the engine's
34
+ * capabilities, the property-type defaults, and `property.ui.filterOperators`
35
+ * (see `resolveFilterOperators`). When that intersection is empty and no
36
+ * per-property `Filter` is set, nothing is rendered.
37
+ *
38
+ * @group Components
39
+ */
40
+ export declare function FilterFieldBinding({ propertyKey, property, engine, value, setValue, hidden, setHidden }: FilterFieldBindingInput): React.ReactNode;
@@ -11,6 +11,12 @@ interface ReferenceFilterFieldProps {
11
11
  previewProperties?: string[];
12
12
  hidden: boolean;
13
13
  setHidden: (hidden: boolean) => void;
14
+ /**
15
+ * Restrict the offered operators (already resolved against engine
16
+ * capabilities and property config). When omitted, all operators this
17
+ * field can render are offered.
18
+ */
19
+ operators?: readonly VirtualTableWhereFilterOp[];
14
20
  }
15
- export declare function ReferenceFilterField({ value, setValue, isArray, path, includeId, previewProperties, setHidden }: ReferenceFilterFieldProps): React.JSX.Element;
21
+ export declare function ReferenceFilterField({ value, setValue, isArray, path, includeId, previewProperties, setHidden, operators }: ReferenceFilterFieldProps): React.JSX.Element | null;
16
22
  export {};
@@ -8,6 +8,12 @@ interface RelationFilterFieldProps {
8
8
  relation: Relation;
9
9
  hidden: boolean;
10
10
  setHidden: (value: boolean) => void;
11
+ /**
12
+ * Restrict the offered operators (already resolved against engine
13
+ * capabilities and property config). When omitted, all operators this
14
+ * field can render are offered.
15
+ */
16
+ operators?: readonly VirtualTableWhereFilterOp[];
11
17
  }
12
- export declare function RelationFilterField({ value, setValue, relation, name: _name, hidden: _hidden, setHidden: _setHidden }: RelationFilterFieldProps): React.JSX.Element;
18
+ export declare function RelationFilterField({ value, setValue, relation, name: _name, hidden: _hidden, setHidden: _setHidden, operators }: RelationFilterFieldProps): React.JSX.Element | null;
13
19
  export {};
@@ -9,6 +9,12 @@ interface StringNumberFilterFieldProps {
9
9
  isArray?: boolean;
10
10
  enumValues?: EnumValueConfig[];
11
11
  title?: string;
12
+ /**
13
+ * Restrict the offered operators (already resolved against engine
14
+ * capabilities and property config). When omitted, all operators this
15
+ * field can render are offered.
16
+ */
17
+ operators?: readonly VirtualTableWhereFilterOp[];
12
18
  }
13
- export declare function StringNumberFilterField({ name, value, setValue, type, isArray, enumValues, title }: StringNumberFilterFieldProps): React.JSX.Element;
19
+ export declare function StringNumberFilterField({ name, value, setValue, type, isArray, enumValues, title, operators }: StringNumberFilterFieldProps): React.JSX.Element | null;
14
20
  export {};
@@ -16,7 +16,7 @@ export type SideDialogController = {
16
16
  export declare const useSideDialogContext: () => SideDialogController;
17
17
  /**
18
18
  * This is the component in charge of rendering the side dialogs used
19
- * for editing entities. Use the {@link useSideEntityController} to open
19
+ * for editing entities. Use the {@link useSidePanel} to open
20
20
  * and control the dialogs.
21
21
  * This component needs a parent {@link Rebase}
22
22
  * {@link useSideDialogsController}
@@ -0,0 +1,11 @@
1
+ import type { SidePanelBindingProps } from "@rebasepro/types";
2
+ import React from "react";
3
+ /**
4
+ * This is the component in charge of rendering the side dialog used
5
+ * for editing entities. Use the {@link useSidePanel} to open
6
+ * and control the dialogs.
7
+ * This component needs a parent {@link Rebase}
8
+ * {@link useSidePanel}
9
+ * @group Components
10
+ */
11
+ export declare function SidePanelBinding(props: SidePanelBindingProps): React.JSX.Element;
@@ -1,12 +1,12 @@
1
1
  import React from "react";
2
2
  /**
3
- * Provider that builds the SideEntityController and makes it available
4
- * via the SideEntityControllerContext from @rebasepro/core.
3
+ * Provider that builds the SidePanelController and makes it available
4
+ * via the SidePanelControllerContext from @rebasepro/app.
5
5
  *
6
- * After the CMS extraction refactor, `useBuildSideEntityController` lives
6
+ * After the CMS extraction refactor, `useBuildSidePanel` lives
7
7
  * in the CMS package while the context it feeds into lives in core.
8
8
  * This provider bridges the two: place it inside the `<Rebase>` tree and
9
- * above any component that calls `useSideEntityController()`.
9
+ * above any component that calls `useSidePanel()`.
10
10
  *
11
11
  * Also auto-registers the side entity controller and breadcrumbs into the
12
12
  * self-assembling Studio bridge (when a StudioBridgeRegistryProvider is
@@ -16,17 +16,17 @@ import React from "react";
16
16
  * ```tsx
17
17
  * <Rebase ...>
18
18
  * {({ loading }) => (
19
- * <SideEntityProvider>
19
+ * <SidePanelProvider>
20
20
  * <RebaseRoutes>
21
21
  * ...
22
22
  * </RebaseRoutes>
23
- * </SideEntityProvider>
23
+ * </SidePanelProvider>
24
24
  * )}
25
25
  * </Rebase>
26
26
  * ```
27
27
  *
28
28
  * @group Components
29
29
  */
30
- export declare function SideEntityProvider({ children }: {
30
+ export declare function SidePanelProvider({ children }: {
31
31
  children: React.ReactNode;
32
32
  }): React.JSX.Element;
@@ -1,11 +1,11 @@
1
- import type { EntityCollection } from "@rebasepro/types";
1
+ import type { CollectionConfig } from "@rebasepro/types";
2
2
  import * as React from "react";
3
3
  import { PreviewSize } from "../../types/components/PropertyPreviewProps";
4
4
  import { HistoryEntryData } from "../../hooks";
5
5
  export type EntityHistoryEntryProps = {
6
6
  size: PreviewSize;
7
7
  actions?: React.ReactNode;
8
- collection?: EntityCollection;
8
+ collection?: CollectionConfig;
9
9
  hover?: boolean;
10
10
  entry: HistoryEntryData;
11
11
  onClick?: (e: React.SyntheticEvent) => void;
@@ -1,4 +1,4 @@
1
- import type { EntityCollection } from "@rebasepro/types";
1
+ import type { CollectionConfig } from "@rebasepro/types";
2
2
  import React from "react";
3
3
  /**
4
4
  * Fetches the latest history entry from the backend API and displays
@@ -7,5 +7,5 @@ import React from "react";
7
7
  export declare function LastEditedByIndicator({ path, entityId, collection }: {
8
8
  path: string;
9
9
  entityId: string;
10
- collection: EntityCollection;
10
+ collection: CollectionConfig;
11
11
  }): React.JSX.Element | null;