@rebasepro/admin 0.7.0 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +20 -20
- package/dist/{CollectionEditorDialog-iGgS4rLX.js → CollectionEditorDialog-B-7uW3iJ.js} +15 -15
- package/dist/CollectionEditorDialog-B-7uW3iJ.js.map +1 -0
- package/dist/{PropertyEditView-C9yhLyja.js → PropertyEditView-7KMTcrqi.js} +140 -106
- package/dist/PropertyEditView-7KMTcrqi.js.map +1 -0
- package/dist/{RouterCollectionsStudioView-Dqx27GD8.js → RouterCollectionsStudioView-epqIbZrJ.js} +4 -4
- package/dist/{RouterCollectionsStudioView-Dqx27GD8.js.map → RouterCollectionsStudioView-epqIbZrJ.js.map} +1 -1
- package/dist/collection_editor/_cms_internals.d.ts +4 -4
- package/dist/collection_editor/api/generateCollectionApi.d.ts +7 -6
- package/dist/collection_editor/extensibility_types.d.ts +3 -3
- package/dist/collection_editor/index.d.ts +2 -2
- package/dist/collection_editor/pgColumnToProperty.d.ts +3 -3
- package/dist/collection_editor/serializable_types.d.ts +12 -16
- package/dist/collection_editor/serializable_utils.d.ts +8 -8
- package/dist/collection_editor/types/collection_editor_controller.d.ts +5 -5
- package/dist/collection_editor/types/collection_inference.d.ts +2 -2
- package/dist/collection_editor/types/config_controller.d.ts +7 -7
- package/dist/collection_editor/ui/AddKanbanColumnAction.d.ts +2 -2
- package/dist/collection_editor/ui/CollectionViewHeaderAction.d.ts +2 -2
- package/dist/collection_editor/ui/KanbanSetupAction.d.ts +2 -2
- package/dist/collection_editor/ui/PropertyAddColumnComponent.d.ts +2 -2
- package/dist/collection_editor/ui/collection_editor/AICollectionGeneratorPopover.d.ts +3 -3
- package/dist/collection_editor/ui/collection_editor/CollectionDetailsForm.d.ts +2 -2
- package/dist/collection_editor/ui/collection_editor/CollectionEditorDialog.d.ts +4 -5
- package/dist/collection_editor/ui/collection_editor/CollectionEditorWelcomeView.d.ts +2 -2
- package/dist/collection_editor/ui/collection_editor/CollectionJsonImportDialog.d.ts +2 -2
- package/dist/collection_editor/ui/collection_editor/CollectionPropertiesEditorForm.d.ts +4 -4
- package/dist/collection_editor/ui/collection_editor/CollectionStudioView.d.ts +2 -2
- package/dist/collection_editor/ui/collection_editor/CollectionsStudioView.d.ts +2 -2
- package/dist/collection_editor/ui/collection_editor/EntityActionsEditTab.d.ts +2 -2
- package/dist/collection_editor/ui/collection_editor/GeneralSettingsForm.d.ts +2 -2
- package/dist/collection_editor/ui/collection_editor/GetCodeDialog.d.ts +2 -2
- package/dist/collection_editor/ui/collection_editor/PropertyEditView.d.ts +4 -4
- package/dist/collection_editor/ui/collection_editor/SubcollectionsEditTab.d.ts +3 -3
- package/dist/collection_editor/ui/collection_editor/templates/blog_template.d.ts +2 -2
- package/dist/collection_editor/ui/collection_editor/templates/pages_template.d.ts +2 -2
- package/dist/collection_editor/ui/collection_editor/templates/products_template.d.ts +2 -2
- package/dist/collection_editor/ui/collection_editor/templates/users_template.d.ts +2 -2
- package/dist/collection_editor/useLocalCollectionsConfigController.d.ts +2 -2
- package/dist/collection_editor/validateCollectionJson.d.ts +2 -2
- package/dist/collection_editor_ui.js +4 -4
- package/dist/components/CollectionPanel.d.ts +4 -4
- package/dist/components/{EntityCollectionTable/EntityCollectionRowActions.d.ts → CollectionTableBinding/CollectionRowActions.d.ts} +3 -3
- package/dist/components/CollectionTableBinding/CollectionTableBinding.d.ts +28 -0
- package/dist/components/{EntityCollectionTable/EntityCollectionTableProps.d.ts → CollectionTableBinding/CollectionTableBindingProps.d.ts} +1 -1
- package/dist/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableMultipleRelationField.d.ts +2 -2
- package/dist/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableReferenceField.d.ts +2 -2
- package/dist/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableRelationField.d.ts +2 -2
- package/dist/components/CollectionTableBinding/index.d.ts +6 -0
- package/dist/components/{EntityCollectionTable → CollectionTableBinding}/internal/common.d.ts +2 -2
- package/dist/components/{EntityCollectionTable → CollectionTableBinding}/internal/popup_field/PopupFormField.d.ts +2 -2
- package/dist/components/{EntityCollectionView/EntityBoardCard.d.ts → CollectionViewBinding/BoardCardBinding.d.ts} +8 -8
- package/dist/components/{EntityCollectionView/EntityCollectionBoardView.d.ts → CollectionViewBinding/CollectionBoardViewBinding.d.ts} +4 -4
- package/dist/components/{EntityCollectionView/EntityCollectionCardView.d.ts → CollectionViewBinding/CollectionCardViewBinding.d.ts} +5 -5
- package/dist/components/{EntityCollectionView/EntityCollectionListView.d.ts → CollectionViewBinding/CollectionListViewBinding.d.ts} +4 -4
- package/dist/components/{EntityCollectionView/EntityCollectionViewActions.d.ts → CollectionViewBinding/CollectionViewActions.d.ts} +4 -4
- package/dist/components/{EntityCollectionView/EntityCollectionView.d.ts → CollectionViewBinding/CollectionViewBinding.d.ts} +4 -4
- package/dist/components/{EntityCollectionView/EntityCollectionViewStartActions.d.ts → CollectionViewBinding/CollectionViewStartActions.d.ts} +4 -4
- package/dist/components/CollectionViewBinding/EntityCardBinding.d.ts +21 -0
- package/dist/components/{EntityCollectionView → CollectionViewBinding}/SplitListView.d.ts +3 -3
- package/dist/components/{EntityCollectionView → CollectionViewBinding}/hooks/useCollectionInlineEditor.d.ts +2 -2
- package/dist/components/{EntityCollectionView → CollectionViewBinding}/hooks/useKanbanDragAndDrop.d.ts +2 -2
- package/dist/components/{EntityCollectionView → CollectionViewBinding}/useBoardDataController.d.ts +2 -2
- package/dist/components/{EntityCollectionView/useEntityPreviewSlots.d.ts → CollectionViewBinding/usePreviewSlots.d.ts} +5 -5
- package/dist/components/DeleteEntityDialog.d.ts +4 -4
- package/dist/components/{EntityDetailView.d.ts → DetailViewBinding.d.ts} +5 -5
- package/dist/components/EditFormActions.d.ts +3 -0
- package/dist/components/{EntityEditView.d.ts → EditViewBinding.d.ts} +9 -9
- package/dist/components/{EntityPreview.d.ts → EntityPreviewBinding.d.ts} +13 -13
- package/dist/components/EntityViewBinding.d.ts +13 -0
- package/dist/components/{EntityJsonPreview.d.ts → JsonPreviewBinding.d.ts} +1 -1
- package/dist/components/RebaseCMS.d.ts +1 -1
- package/dist/components/RebaseNavigation.d.ts +1 -1
- package/dist/components/ReferenceTable/{EntitySelectionTable.d.ts → SelectionTableBinding.d.ts} +5 -5
- package/dist/components/SelectableTable/SelectableTable.d.ts +5 -5
- package/dist/components/SelectableTable/SelectableTableContext.d.ts +3 -3
- package/dist/components/SelectableTable/SelectionStore.d.ts +13 -22
- package/dist/components/SelectableTable/filters/BooleanFilterField.d.ts +6 -1
- package/dist/components/SelectableTable/filters/DateTimeFilterField.d.ts +7 -1
- package/dist/components/SelectableTable/filters/FilterFieldBinding.d.ts +40 -0
- package/dist/components/SelectableTable/filters/ReferenceFilterField.d.ts +7 -1
- package/dist/components/SelectableTable/filters/RelationFilterField.d.ts +7 -1
- package/dist/components/SelectableTable/filters/StringNumberFilterField.d.ts +7 -1
- package/dist/components/SideDialogs.d.ts +1 -1
- package/dist/components/SidePanelBinding.d.ts +11 -0
- package/dist/components/{SideEntityProvider.d.ts → SidePanelProvider.d.ts} +7 -7
- package/dist/components/field_configs.d.ts +1 -1
- package/dist/components/history/EntityHistoryEntry.d.ts +2 -2
- package/dist/components/history/LastEditedByIndicator.d.ts +2 -2
- package/dist/components/index.d.ts +14 -13
- package/dist/contexts/SidePanelControllerContext.d.ts +3 -0
- package/dist/data_export/export/ExportCollectionAction.d.ts +3 -3
- package/dist/data_import/components/ImportSaveInProgress.d.ts +2 -2
- package/dist/editor/editor.d.ts +0 -6
- package/dist/editor.js +1 -3
- package/dist/editor.js.map +1 -1
- package/dist/form/EntityForm.d.ts +1 -1
- package/dist/form/PropertyFieldBinding.d.ts +1 -1
- package/dist/form/components/StorageUploadProgress.d.ts +6 -1
- package/dist/form/form_utils.d.ts +2 -2
- package/dist/form/index.d.ts +0 -1
- package/dist/{history-ChHgyyvM.js → history-7X5bON_n.js} +4 -4
- package/dist/history-7X5bON_n.js.map +1 -0
- package/dist/hooks/index.d.ts +4 -4
- package/dist/hooks/navigation/contexts/CollectionRegistryContext.d.ts +2 -2
- package/dist/hooks/navigation/useBuildNavigationStateController.d.ts +5 -5
- package/dist/hooks/navigation/useNavigationResolution.d.ts +4 -4
- package/dist/hooks/navigation/useResolvedCollections.d.ts +7 -7
- package/dist/hooks/navigation/useTopLevelNavigation.d.ts +2 -2
- package/dist/hooks/navigation/utils.d.ts +5 -5
- package/dist/hooks/useBuildSidePanel.d.ts +6 -0
- package/dist/hooks/useCMSContext.d.ts +2 -2
- package/dist/hooks/{useEntityHistory.d.ts → useHistory.d.ts} +1 -1
- package/dist/hooks/useResolvedNavigationFrom.d.ts +3 -3
- package/dist/hooks/{useEntitySelectionDialog.d.ts → useSelectionDialog.d.ts} +2 -2
- package/dist/hooks/useSideDialogsController.d.ts +1 -1
- package/dist/hooks/useSidePanel.d.ts +11 -0
- package/dist/index.d.ts +3 -3
- package/dist/index.js +2 -2
- package/dist/preview/components/StorageThumbnail.d.ts +3 -1
- package/dist/{src-DOX2nOyh.js → src-sUZfe29F.js} +904 -1096
- package/dist/src-sUZfe29F.js.map +1 -0
- package/dist/types/components/EntityFormActionsProps.d.ts +2 -2
- package/dist/types/components/EntityFormProps.d.ts +3 -3
- package/dist/types/components/PropertyPreviewProps.d.ts +2 -1
- package/dist/types/fields.d.ts +6 -8
- package/dist/util/dataControllerAdapter.d.ts +2 -5
- package/dist/util/navigation_utils.d.ts +6 -6
- package/dist/util/previews.d.ts +3 -3
- package/dist/util/property_utils.d.ts +2 -2
- package/dist/util/{entity_view_constants.d.ts → view_constants.d.ts} +1 -1
- package/package.json +18 -18
- package/src/collection_editor/ConfigControllerProvider.tsx +10 -10
- package/src/collection_editor/_cms_internals.ts +4 -4
- package/src/collection_editor/api/generateCollectionApi.ts +7 -6
- package/src/collection_editor/extensibility_types.ts +3 -3
- package/src/collection_editor/index.ts +3 -3
- package/src/collection_editor/pgColumnToProperty.ts +4 -4
- package/src/collection_editor/serializable_types.ts +22 -35
- package/src/collection_editor/serializable_utils.ts +40 -52
- package/src/collection_editor/types/collection_editor_controller.tsx +5 -5
- package/src/collection_editor/types/collection_inference.ts +2 -2
- package/src/collection_editor/types/config_controller.tsx +7 -7
- package/src/collection_editor/ui/AddKanbanColumnAction.tsx +2 -2
- package/src/collection_editor/ui/CollectionViewHeaderAction.tsx +2 -2
- package/src/collection_editor/ui/EditorCollectionAction.tsx +2 -2
- package/src/collection_editor/ui/EditorCollectionActionStart.tsx +2 -2
- package/src/collection_editor/ui/EditorEntityAction.tsx +2 -2
- package/src/collection_editor/ui/KanbanSetupAction.tsx +2 -2
- package/src/collection_editor/ui/PropertyAddColumnComponent.tsx +2 -2
- package/src/collection_editor/ui/collection_editor/AICollectionGeneratorPopover.tsx +5 -5
- package/src/collection_editor/ui/collection_editor/CollectionDetailsForm.tsx +3 -3
- package/src/collection_editor/ui/collection_editor/CollectionEditorDialog.tsx +63 -46
- package/src/collection_editor/ui/collection_editor/CollectionEditorWelcomeView.tsx +3 -3
- package/src/collection_editor/ui/collection_editor/CollectionJsonImportDialog.tsx +2 -2
- package/src/collection_editor/ui/collection_editor/CollectionPropertiesEditorForm.tsx +8 -8
- package/src/collection_editor/ui/collection_editor/CollectionRLSTab.tsx +2 -2
- package/src/collection_editor/ui/collection_editor/CollectionRelationsTab.tsx +2 -2
- package/src/collection_editor/ui/collection_editor/CollectionStudioView.tsx +2 -2
- package/src/collection_editor/ui/collection_editor/CollectionsStudioView.tsx +2 -2
- package/src/collection_editor/ui/collection_editor/DisplaySettingsForm.tsx +2 -2
- package/src/collection_editor/ui/collection_editor/EntityActionsEditTab.tsx +3 -3
- package/src/collection_editor/ui/collection_editor/GeneralSettingsForm.tsx +5 -5
- package/src/collection_editor/ui/collection_editor/GetCodeDialog.tsx +4 -4
- package/src/collection_editor/ui/collection_editor/KanbanConfigSection.tsx +2 -2
- package/src/collection_editor/ui/collection_editor/PropertyEditView.tsx +7 -16
- package/src/collection_editor/ui/collection_editor/PropertyFieldPreview.tsx +45 -36
- package/src/collection_editor/ui/collection_editor/PropertyTree.tsx +1 -1
- package/src/collection_editor/ui/collection_editor/SubcollectionsEditTab.tsx +5 -5
- package/src/collection_editor/ui/collection_editor/import/CollectionEditorImportDataPreview.tsx +3 -3
- package/src/collection_editor/ui/collection_editor/import/CollectionEditorImportMapping.tsx +2 -2
- package/src/collection_editor/ui/collection_editor/properties/RelationPropertyField.tsx +2 -2
- package/src/collection_editor/ui/collection_editor/properties/StoragePropertyField.tsx +35 -1
- package/src/collection_editor/ui/collection_editor/templates/blog_template.ts +3 -3
- package/src/collection_editor/ui/collection_editor/templates/pages_template.ts +2 -2
- package/src/collection_editor/ui/collection_editor/templates/products_template.ts +2 -2
- package/src/collection_editor/ui/collection_editor/templates/users_template.ts +2 -2
- package/src/collection_editor/ui/collection_editor/utils/supported_fields.tsx +0 -1
- package/src/collection_editor/ui/collection_editor/utils/update_property_for_widget.ts +7 -29
- package/src/collection_editor/useJsonCollectionsConfigController.tsx +14 -14
- package/src/collection_editor/useLocalCollectionsConfigController.tsx +4 -4
- package/src/collection_editor/validateCollectionJson.ts +3 -3
- package/src/components/CollectionPanel.tsx +14 -17
- package/src/components/{EntityCollectionTable/EntityCollectionRowActions.tsx → CollectionTableBinding/CollectionRowActions.tsx} +6 -6
- package/src/components/{EntityCollectionTable/EntityCollectionTable.tsx → CollectionTableBinding/CollectionTableBinding.tsx} +19 -17
- package/src/components/{EntityCollectionTable/EntityCollectionTableProps.tsx → CollectionTableBinding/CollectionTableBindingProps.tsx} +1 -1
- package/src/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableMultipleRelationField.tsx +7 -6
- package/src/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableReferenceField.tsx +10 -10
- package/src/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableRelationField.tsx +7 -6
- package/src/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableStorageUpload.tsx +23 -20
- package/src/components/CollectionTableBinding/index.tsx +14 -0
- package/src/components/{EntityCollectionTable → CollectionTableBinding}/internal/common.tsx +2 -2
- package/src/components/{EntityCollectionTable → CollectionTableBinding}/internal/popup_field/PopupFormField.tsx +2 -2
- package/src/components/{EntityCollectionTable → CollectionTableBinding}/table_bindings.tsx +24 -44
- package/src/components/{EntityCollectionView/EntityBoardCard.tsx → CollectionViewBinding/BoardCardBinding.tsx} +15 -15
- package/src/components/{EntityCollectionView/EntityCollectionBoardView.tsx → CollectionViewBinding/CollectionBoardViewBinding.tsx} +15 -14
- package/src/components/{EntityCollectionView/EntityCollectionCardView.tsx → CollectionViewBinding/CollectionCardViewBinding.tsx} +8 -8
- package/src/components/{EntityCollectionView/EntityCollectionListView.tsx → CollectionViewBinding/CollectionListViewBinding.tsx} +24 -13
- package/src/components/{EntityCollectionView/EntityCollectionViewActions.tsx → CollectionViewBinding/CollectionViewActions.tsx} +5 -5
- package/src/components/{EntityCollectionView/EntityCollectionView.tsx → CollectionViewBinding/CollectionViewBinding.tsx} +112 -114
- package/src/components/{EntityCollectionView/EntityCollectionViewStartActions.tsx → CollectionViewBinding/CollectionViewStartActions.tsx} +5 -5
- package/src/components/{EntityCollectionView/EntityCard.tsx → CollectionViewBinding/EntityCardBinding.tsx} +9 -9
- package/src/components/{EntityCollectionView → CollectionViewBinding}/FiltersDialog.tsx +31 -72
- package/src/components/{EntityCollectionView → CollectionViewBinding}/SplitListView.tsx +9 -9
- package/src/components/{EntityCollectionView → CollectionViewBinding}/hooks/useCollectionInlineEditor.ts +6 -6
- package/src/components/{EntityCollectionView → CollectionViewBinding}/hooks/useKanbanDragAndDrop.ts +4 -4
- package/src/components/{EntityCollectionView → CollectionViewBinding}/useBoardDataController.tsx +28 -50
- package/src/components/{EntityCollectionView/useEntityPreviewSlots.ts → CollectionViewBinding/usePreviewSlots.ts} +11 -11
- package/src/components/DefaultDrawer.tsx +1 -1
- package/src/components/DeleteEntityDialog.tsx +6 -6
- package/src/components/{EntityDetailView.tsx → DetailViewBinding.tsx} +28 -31
- package/src/components/{EntityEditViewFormActions.tsx → EditFormActions.tsx} +15 -15
- package/src/components/{EntityEditView.tsx → EditViewBinding.tsx} +31 -34
- package/src/components/{EntityPreview.tsx → EntityPreviewBinding.tsx} +27 -27
- package/src/components/{EntityView.tsx → EntityViewBinding.tsx} +5 -5
- package/src/components/HomePage/ContentHomePage.tsx +1 -1
- package/src/components/HomePage/NavigationCardBinding.tsx +1 -1
- package/src/components/{EntityJsonPreview.tsx → JsonPreviewBinding.tsx} +1 -1
- package/src/components/RebaseCMS.tsx +4 -4
- package/src/components/RebaseNavigation.tsx +20 -10
- package/src/components/ReferenceTable/{EntitySelectionTable.tsx → SelectionTableBinding.tsx} +22 -19
- package/src/components/ReferenceWidget.tsx +4 -4
- package/src/components/RelationSelector.tsx +16 -14
- package/src/components/SelectableTable/SelectableTable.tsx +44 -89
- package/src/components/SelectableTable/SelectableTableContext.tsx +3 -3
- package/src/components/SelectableTable/SelectionStore.ts +22 -52
- package/src/components/SelectableTable/filters/BooleanFilterField.tsx +9 -1
- package/src/components/SelectableTable/filters/DateTimeFilterField.tsx +33 -12
- package/src/components/SelectableTable/filters/FilterFieldBinding.tsx +187 -0
- package/src/components/SelectableTable/filters/ReferenceFilterField.tsx +21 -7
- package/src/components/SelectableTable/filters/RelationFilterField.tsx +17 -3
- package/src/components/SelectableTable/filters/StringNumberFilterField.tsx +66 -12
- package/src/components/SideDialogs.tsx +3 -3
- package/src/components/{EntitySidePanel.tsx → SidePanelBinding.tsx} +19 -19
- package/src/components/{SideEntityProvider.tsx → SidePanelProvider.tsx} +16 -16
- package/src/components/common/default_entity_actions.tsx +24 -13
- package/src/components/field_configs.tsx +0 -14
- package/src/components/history/EntityHistoryEntry.tsx +2 -2
- package/src/components/history/EntityHistoryView.tsx +3 -3
- package/src/components/history/LastEditedByIndicator.tsx +2 -2
- package/src/components/index.ts +15 -14
- package/src/contexts/SidePanelControllerContext.tsx +5 -0
- package/src/data_export/export/ExportCollectionAction.tsx +4 -4
- package/src/data_import/components/ImportSaveInProgress.tsx +3 -3
- package/src/data_import/import/ImportCollectionAction.tsx +4 -4
- package/src/data_import/utils/data.ts +2 -2
- package/src/editor/editor.tsx +4 -7
- package/src/form/EntityForm.tsx +2 -2
- package/src/form/EntityFormActions.tsx +4 -4
- package/src/form/EntityFormBinding.tsx +7 -7
- package/src/form/PropertyFieldBinding.tsx +4 -4
- package/src/form/components/StorageUploadProgress.tsx +9 -2
- package/src/form/field_bindings/ArrayOfReferencesFieldBinding.tsx +4 -4
- package/src/form/field_bindings/KeyValueFieldBinding.tsx +19 -19
- package/src/form/field_bindings/MarkdownEditorFieldBinding.tsx +12 -1
- package/src/form/field_bindings/MultipleRelationFieldBinding.tsx +6 -6
- package/src/form/field_bindings/ReferenceFieldBinding.tsx +5 -5
- package/src/form/field_bindings/RelationFieldBinding.tsx +8 -10
- package/src/form/field_bindings/StorageUploadFieldBinding.tsx +19 -15
- package/src/form/form_utils.ts +2 -2
- package/src/form/index.tsx +0 -1
- package/src/hooks/index.ts +4 -4
- package/src/hooks/navigation/contexts/CollectionRegistryContext.tsx +2 -2
- package/src/hooks/navigation/useBuildCollectionRegistryController.tsx +11 -11
- package/src/hooks/navigation/useBuildNavigationStateController.tsx +5 -5
- package/src/hooks/navigation/useNavigationResolution.ts +10 -10
- package/src/hooks/navigation/useResolvedCollections.ts +8 -8
- package/src/hooks/navigation/useTopLevelNavigation.ts +2 -2
- package/src/hooks/navigation/utils.ts +5 -5
- package/src/hooks/{useBuildSideEntityController.tsx → useBuildSidePanel.tsx} +28 -28
- package/src/hooks/useCMSContext.tsx +6 -6
- package/src/hooks/{useEntityHistory.ts → useHistory.ts} +1 -1
- package/src/hooks/useResolvedNavigationFrom.tsx +8 -5
- package/src/hooks/{useEntitySelectionDialog.tsx → useSelectionDialog.tsx} +7 -7
- package/src/hooks/useSideDialogsController.tsx +1 -1
- package/src/hooks/useSidePanel.tsx +13 -0
- package/src/index.ts +13 -13
- package/src/preview/PropertyPreview.tsx +1 -16
- package/src/preview/components/ReferencePreview.tsx +10 -10
- package/src/preview/components/RelationPreview.tsx +13 -12
- package/src/preview/components/StorageThumbnail.tsx +24 -7
- package/src/routes/RebaseRoute.tsx +10 -10
- package/src/types/components/EntityFormActionsProps.tsx +2 -2
- package/src/types/components/EntityFormProps.tsx +3 -3
- package/src/types/components/PropertyPreviewProps.tsx +1 -1
- package/src/types/fields.tsx +4 -9
- package/src/util/dataControllerAdapter.ts +9 -15
- package/src/util/navigation_utils.ts +7 -7
- package/src/util/previews.ts +23 -3
- package/src/util/propertyConfigMapper.ts +3 -3
- package/src/util/property_utils.tsx +2 -3
- package/src/util/{entity_view_constants.ts → view_constants.ts} +1 -1
- package/dist/CollectionEditorDialog-iGgS4rLX.js.map +0 -1
- package/dist/PropertyEditView-C9yhLyja.js.map +0 -1
- package/dist/components/EntityCollectionTable/EntityCollectionTable.d.ts +0 -28
- package/dist/components/EntityCollectionTable/fields/VirtualTableDateField.d.ts +0 -12
- package/dist/components/EntityCollectionTable/fields/VirtualTableInput.d.ts +0 -10
- package/dist/components/EntityCollectionTable/fields/VirtualTableNumberInput.d.ts +0 -9
- package/dist/components/EntityCollectionTable/fields/VirtualTableSwitch.d.ts +0 -8
- package/dist/components/EntityCollectionTable/index.d.ts +0 -6
- package/dist/components/EntityCollectionView/EntityCard.d.ts +0 -21
- package/dist/components/EntityEditViewFormActions.d.ts +0 -3
- package/dist/components/EntitySidePanel.d.ts +0 -11
- package/dist/components/EntityView.d.ts +0 -13
- package/dist/contexts/SideEntityControllerContext.d.ts +0 -3
- package/dist/form/field_bindings/ReferenceAsStringFieldBinding.d.ts +0 -11
- package/dist/history-ChHgyyvM.js.map +0 -1
- package/dist/hooks/useBuildSideEntityController.d.ts +0 -6
- package/dist/hooks/useSideEntityController.d.ts +0 -11
- package/dist/src-DOX2nOyh.js.map +0 -1
- package/src/components/EntityCollectionTable/fields/VirtualTableDateField.tsx +0 -39
- package/src/components/EntityCollectionTable/fields/VirtualTableInput.tsx +0 -90
- package/src/components/EntityCollectionTable/fields/VirtualTableNumberInput.tsx +0 -83
- package/src/components/EntityCollectionTable/fields/VirtualTableSwitch.tsx +0 -32
- package/src/components/EntityCollectionTable/index.tsx +0 -14
- package/src/contexts/SideEntityControllerContext.tsx +0 -5
- package/src/form/field_bindings/ReferenceAsStringFieldBinding.tsx +0 -141
- package/src/hooks/useSideEntityController.tsx +0 -13
- /package/dist/components/{EntityCollectionTable → CollectionTableBinding}/PropertyTableCell.d.ts +0 -0
- /package/dist/components/{EntityCollectionTable → CollectionTableBinding}/column_utils.d.ts +0 -0
- /package/dist/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableRelationSelectorField.d.ts +0 -0
- /package/dist/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableStorageUpload.d.ts +0 -0
- /package/dist/components/{EntityCollectionTable → CollectionTableBinding}/fields/VirtualTableSelect.d.ts +0 -0
- /package/dist/components/{EntityCollectionTable → CollectionTableBinding}/fields/VirtualTableUserSelect.d.ts +0 -0
- /package/dist/components/{EntityCollectionTable → CollectionTableBinding}/internal/CollectionTableToolbar.d.ts +0 -0
- /package/dist/components/{EntityCollectionTable → CollectionTableBinding}/internal/EntityTableCell.d.ts +0 -0
- /package/dist/components/{EntityCollectionTable → CollectionTableBinding}/internal/EntityTableCellActions.d.ts +0 -0
- /package/dist/components/{EntityCollectionTable → CollectionTableBinding}/internal/popup_field/useDraggable.d.ts +0 -0
- /package/dist/components/{EntityCollectionTable → CollectionTableBinding}/internal/popup_field/useWindowSize.d.ts +0 -0
- /package/dist/components/{EntityCollectionTable → CollectionTableBinding}/table_bindings.d.ts +0 -0
- /package/dist/components/{EntityCollectionView → CollectionViewBinding}/FilterPresetsButton.d.ts +0 -0
- /package/dist/components/{EntityCollectionView → CollectionViewBinding}/FiltersDialog.d.ts +0 -0
- /package/dist/components/{EntityCollectionView → CollectionViewBinding}/ViewModeToggle.d.ts +0 -0
- /package/dist/components/{EntityCollectionView → CollectionViewBinding}/useSelectionController.d.ts +0 -0
- /package/dist/components/{EntityCollectionView → CollectionViewBinding}/utils.d.ts +0 -0
- /package/src/components/{EntityCollectionTable → CollectionTableBinding}/PropertyTableCell.tsx +0 -0
- /package/src/components/{EntityCollectionTable → CollectionTableBinding}/column_utils.tsx +0 -0
- /package/src/components/{EntityCollectionTable → CollectionTableBinding}/fields/TableRelationSelectorField.tsx +0 -0
- /package/src/components/{EntityCollectionTable → CollectionTableBinding}/fields/VirtualTableSelect.tsx +0 -0
- /package/src/components/{EntityCollectionTable → CollectionTableBinding}/fields/VirtualTableUserSelect.tsx +0 -0
- /package/src/components/{EntityCollectionTable → CollectionTableBinding}/internal/CollectionTableToolbar.tsx +0 -0
- /package/src/components/{EntityCollectionTable → CollectionTableBinding}/internal/EntityTableCell.tsx +0 -0
- /package/src/components/{EntityCollectionTable → CollectionTableBinding}/internal/EntityTableCellActions.tsx +0 -0
- /package/src/components/{EntityCollectionTable → CollectionTableBinding}/internal/popup_field/useDraggable.tsx +0 -0
- /package/src/components/{EntityCollectionTable → CollectionTableBinding}/internal/popup_field/useWindowSize.tsx +0 -0
- /package/src/components/{EntityCollectionView → CollectionViewBinding}/FilterPresetsButton.tsx +0 -0
- /package/src/components/{EntityCollectionView → CollectionViewBinding}/ViewModeToggle.tsx +0 -0
- /package/src/components/{EntityCollectionView → CollectionViewBinding}/useSelectionController.tsx +0 -0
- /package/src/components/{EntityCollectionView → CollectionViewBinding}/utils.ts +0 -0
|
@@ -2,51 +2,51 @@
|
|
|
2
2
|
* Conversion utilities between the full Rebase types and their
|
|
3
3
|
* JSON-serializable counterparts.
|
|
4
4
|
*
|
|
5
|
-
* - `
|
|
6
|
-
* - `
|
|
5
|
+
* - `toSerializableCollectionConfig` / `toSerializableProperty` — strip non-serializable fields
|
|
6
|
+
* - `fromSerializableCollectionConfig` / `fromSerializableProperty` — reconstruct original types
|
|
7
7
|
*
|
|
8
8
|
* @module
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
import type {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
NumberProperty,
|
|
12
|
+
ArrayProperty,
|
|
13
|
+
BaseUIConfig,
|
|
14
|
+
BinaryProperty,
|
|
16
15
|
BooleanProperty,
|
|
17
16
|
DateProperty,
|
|
17
|
+
CollectionConfig,
|
|
18
18
|
GeopointProperty,
|
|
19
|
-
ReferenceProperty,
|
|
20
|
-
RelationProperty,
|
|
21
|
-
ArrayProperty,
|
|
22
19
|
MapProperty,
|
|
23
|
-
|
|
24
|
-
BinaryProperty,
|
|
20
|
+
NumberProperty,
|
|
25
21
|
Properties,
|
|
22
|
+
Property,
|
|
23
|
+
ReferenceProperty,
|
|
24
|
+
RelationProperty,
|
|
26
25
|
StorageConfig,
|
|
27
|
-
|
|
26
|
+
StringProperty,
|
|
27
|
+
VectorProperty,
|
|
28
28
|
} from "@rebasepro/types";
|
|
29
29
|
|
|
30
30
|
import type {
|
|
31
|
-
|
|
32
|
-
SerializableProperty,
|
|
33
|
-
SerializableProperties,
|
|
34
|
-
SerializableStorageConfig,
|
|
35
|
-
SerializableBaseUIConfig,
|
|
31
|
+
SerializableArrayProperty,
|
|
36
32
|
SerializableBaseProperty,
|
|
37
|
-
|
|
38
|
-
|
|
33
|
+
SerializableBaseUIConfig,
|
|
34
|
+
SerializableBinaryProperty,
|
|
39
35
|
SerializableBooleanProperty,
|
|
36
|
+
SerializableCollectionConfig,
|
|
40
37
|
SerializableDateProperty,
|
|
38
|
+
SerializableDateValidation,
|
|
41
39
|
SerializableGeopointProperty,
|
|
40
|
+
SerializableMapProperty,
|
|
41
|
+
SerializableNumberProperty,
|
|
42
|
+
SerializableProperties,
|
|
43
|
+
SerializableProperty,
|
|
42
44
|
SerializableReferenceProperty,
|
|
43
45
|
SerializableRelationProperty,
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
SerializableVectorProperty,
|
|
47
|
-
SerializableBinaryProperty,
|
|
46
|
+
SerializableStorageConfig,
|
|
47
|
+
SerializableStringProperty,
|
|
48
48
|
SerializableStringValidation,
|
|
49
|
-
|
|
49
|
+
SerializableVectorProperty,
|
|
50
50
|
} from "./serializable_types";
|
|
51
51
|
|
|
52
52
|
// ═══════════════════════════════════════════════════════════════════════
|
|
@@ -90,6 +90,7 @@ function toSerializableStorageConfig(storage: StorageConfig | undefined): Serial
|
|
|
90
90
|
if (storage.includeBucketUrl !== undefined) result.includeBucketUrl = storage.includeBucketUrl;
|
|
91
91
|
if (storage.storeUrl !== undefined) result.storeUrl = storage.storeUrl;
|
|
92
92
|
if (storage.maxSize !== undefined) result.maxSize = storage.maxSize;
|
|
93
|
+
if (storage.storageSource !== undefined) result.storageSource = storage.storageSource;
|
|
93
94
|
// processFile, postProcess, previewUrl are intentionally dropped (functions)
|
|
94
95
|
|
|
95
96
|
return result;
|
|
@@ -106,7 +107,7 @@ function serializeMatches(matches: string | RegExp | undefined): string | undefi
|
|
|
106
107
|
|
|
107
108
|
/**
|
|
108
109
|
* Resolve a relation target to a string slug.
|
|
109
|
-
* Functions are called to extract the target;
|
|
110
|
+
* Functions are called to extract the target; CollectionConfig objects
|
|
110
111
|
* use their slug.
|
|
111
112
|
*/
|
|
112
113
|
function resolveRelationTarget(target: RelationProperty["target"]): string | undefined {
|
|
@@ -117,7 +118,7 @@ function resolveRelationTarget(target: RelationProperty["target"]): string | und
|
|
|
117
118
|
const resolved = target();
|
|
118
119
|
if (typeof resolved === "string") return resolved;
|
|
119
120
|
if (resolved && typeof resolved === "object" && "slug" in resolved) {
|
|
120
|
-
return (resolved as
|
|
121
|
+
return (resolved as CollectionConfig).slug;
|
|
121
122
|
}
|
|
122
123
|
} catch {
|
|
123
124
|
// If the lazy resolver throws (e.g., circular dependency not yet ready), return undefined
|
|
@@ -167,12 +168,8 @@ export function toSerializableProperty(property: Property): SerializableProperty
|
|
|
167
168
|
if (sp.columnType) result.columnType = sp.columnType;
|
|
168
169
|
if (sp.isId !== undefined) result.isId = sp.isId;
|
|
169
170
|
if (sp.enum) result.enum = sp.enum;
|
|
170
|
-
if (sp.multiline) result.multiline = sp.multiline;
|
|
171
|
-
if (sp.markdown) result.markdown = sp.markdown;
|
|
172
171
|
if (sp.userSelect) result.userSelect = sp.userSelect;
|
|
173
|
-
if (sp.url) result.url = sp.url;
|
|
174
172
|
if (sp.email) result.email = sp.email;
|
|
175
|
-
if (sp.previewAsTag) result.previewAsTag = sp.previewAsTag;
|
|
176
173
|
|
|
177
174
|
// Convert validation.matches from RegExp to string
|
|
178
175
|
if (sp.validation) {
|
|
@@ -187,11 +184,6 @@ export function toSerializableProperty(property: Property): SerializableProperty
|
|
|
187
184
|
const storage = toSerializableStorageConfig(sp.storage);
|
|
188
185
|
if (storage) result.storage = storage;
|
|
189
186
|
|
|
190
|
-
// Reference sub-property
|
|
191
|
-
if (sp.reference) {
|
|
192
|
-
result.reference = toSerializableProperty(sp.reference) as SerializableReferenceProperty;
|
|
193
|
-
}
|
|
194
|
-
|
|
195
187
|
return result;
|
|
196
188
|
}
|
|
197
189
|
|
|
@@ -228,7 +220,6 @@ export function toSerializableProperty(property: Property): SerializableProperty
|
|
|
228
220
|
if (dp.mode) result.mode = dp.mode;
|
|
229
221
|
if (dp.timezone) result.timezone = dp.timezone;
|
|
230
222
|
if (dp.autoValue) result.autoValue = dp.autoValue;
|
|
231
|
-
if (dp.clearable) result.clearable = dp.clearable;
|
|
232
223
|
|
|
233
224
|
// Convert Date validation min/max to ISO strings
|
|
234
225
|
if (dp.validation) {
|
|
@@ -398,15 +389,15 @@ export function toSerializableProperties(properties: Properties): SerializablePr
|
|
|
398
389
|
// ═══════════════════════════════════════════════════════════════════════
|
|
399
390
|
|
|
400
391
|
/**
|
|
401
|
-
* Convert an `
|
|
392
|
+
* Convert an `CollectionConfig` to its JSON-serializable form.
|
|
402
393
|
*
|
|
403
394
|
* Strips all non-serializable fields (functions, React nodes, class instances)
|
|
404
395
|
* while preserving the structural schema that the collection editor works with.
|
|
405
396
|
*
|
|
406
397
|
* The result is safe for `JSON.stringify()` and database storage.
|
|
407
398
|
*/
|
|
408
|
-
export function
|
|
409
|
-
const result:
|
|
399
|
+
export function toSerializableCollectionConfig(collection: CollectionConfig): SerializableCollectionConfig {
|
|
400
|
+
const result: SerializableCollectionConfig = {
|
|
410
401
|
slug: collection.slug,
|
|
411
402
|
name: collection.name,
|
|
412
403
|
properties: toSerializableProperties(collection.properties),
|
|
@@ -416,7 +407,8 @@ export function toSerializableCollection(collection: EntityCollection): Serializ
|
|
|
416
407
|
if (collection.singularName) result.singularName = collection.singularName;
|
|
417
408
|
if (collection.description) result.description = collection.description;
|
|
418
409
|
if (collection.group) result.group = collection.group;
|
|
419
|
-
if (collection.
|
|
410
|
+
if (collection.engine) result.engine = collection.engine;
|
|
411
|
+
if (collection.dataSource) result.dataSource = collection.dataSource;
|
|
420
412
|
if (collection.databaseId) result.databaseId = collection.databaseId;
|
|
421
413
|
if (collection.titleProperty) result.titleProperty = collection.titleProperty as string;
|
|
422
414
|
if (collection.ownerId) result.ownerId = collection.ownerId;
|
|
@@ -444,13 +436,13 @@ export function toSerializableCollection(collection: EntityCollection): Serializ
|
|
|
444
436
|
if (collection.localChangesBackup !== undefined) result.localChangesBackup = collection.localChangesBackup;
|
|
445
437
|
|
|
446
438
|
// Kanban
|
|
447
|
-
if (collection.kanban) result.kanban = collection.kanban as
|
|
439
|
+
if (collection.kanban) result.kanban = collection.kanban as SerializableCollectionConfig["kanban"];
|
|
448
440
|
|
|
449
441
|
// Filters and sorting
|
|
450
|
-
if (collection.fixedFilter) result.fixedFilter = collection.fixedFilter as
|
|
451
|
-
if (collection.defaultFilter) result.defaultFilter = collection.defaultFilter as
|
|
452
|
-
if (collection.filterPresets) result.filterPresets = collection.filterPresets as
|
|
453
|
-
if (collection.sort) result.sort = collection.sort as
|
|
442
|
+
if (collection.fixedFilter) result.fixedFilter = collection.fixedFilter as SerializableCollectionConfig["fixedFilter"];
|
|
443
|
+
if (collection.defaultFilter) result.defaultFilter = collection.defaultFilter as SerializableCollectionConfig["defaultFilter"];
|
|
444
|
+
if (collection.filterPresets) result.filterPresets = collection.filterPresets as SerializableCollectionConfig["filterPresets"];
|
|
445
|
+
if (collection.sort) result.sort = collection.sort as SerializableCollectionConfig["sort"];
|
|
454
446
|
|
|
455
447
|
// Numeric / boolean flags
|
|
456
448
|
if (collection.pagination !== undefined) result.pagination = collection.pagination;
|
|
@@ -543,10 +535,6 @@ export function fromSerializableProperty(serialized: SerializableProperty): Prop
|
|
|
543
535
|
case "string": {
|
|
544
536
|
const sp = serialized as SerializableStringProperty;
|
|
545
537
|
const result = { ...sp } as unknown as StringProperty;
|
|
546
|
-
// Convert reference sub-property
|
|
547
|
-
if (sp.reference) {
|
|
548
|
-
result.reference = fromSerializableProperty(sp.reference) as ReferenceProperty;
|
|
549
|
-
}
|
|
550
538
|
return result;
|
|
551
539
|
}
|
|
552
540
|
|
|
@@ -572,17 +560,17 @@ export function fromSerializableProperties(serialized: SerializableProperties):
|
|
|
572
560
|
// ═══════════════════════════════════════════════════════════════════════
|
|
573
561
|
|
|
574
562
|
/**
|
|
575
|
-
* Convert a `
|
|
563
|
+
* Convert a `SerializableCollectionConfig` back to an `CollectionConfig`.
|
|
576
564
|
*
|
|
577
565
|
* The result will NOT contain any of the non-serializable fields
|
|
578
566
|
* (callbacks, entityActions, etc.) — those must be re-attached by the
|
|
579
567
|
* consumer if needed.
|
|
580
568
|
*/
|
|
581
|
-
export function
|
|
569
|
+
export function fromSerializableCollectionConfig(serialized: SerializableCollectionConfig): CollectionConfig {
|
|
582
570
|
const { properties, ...rest } = serialized;
|
|
583
571
|
|
|
584
572
|
return {
|
|
585
573
|
...rest,
|
|
586
574
|
properties: fromSerializableProperties(properties),
|
|
587
|
-
} as
|
|
575
|
+
} as CollectionConfig;
|
|
588
576
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CollectionsConfigController } from "./config_controller";
|
|
2
|
-
import { Entity,
|
|
2
|
+
import { Entity, CollectionConfig, Property } from "@rebasepro/types";
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Controller to open the collection editor dialog.
|
|
@@ -11,7 +11,7 @@ export interface CollectionEditorController {
|
|
|
11
11
|
id?: string,
|
|
12
12
|
path?: string,
|
|
13
13
|
parentCollectionSlugs: string[], parentEntityIds: string[],
|
|
14
|
-
parentCollection?:
|
|
14
|
+
parentCollection?: CollectionConfig,
|
|
15
15
|
existingEntities?: Entity<any>[],
|
|
16
16
|
/**
|
|
17
17
|
* Initial view to open: "general", "display", or "properties"
|
|
@@ -34,9 +34,9 @@ export interface CollectionEditorController {
|
|
|
34
34
|
* A collection to duplicate from. If provided, the new collection will be
|
|
35
35
|
* pre-populated with the same properties (but with empty name, path, and id).
|
|
36
36
|
*/
|
|
37
|
-
copyFrom?:
|
|
37
|
+
copyFrom?: CollectionConfig,
|
|
38
38
|
parentCollectionSlugs: string[], parentEntityIds: string[],
|
|
39
|
-
parentCollection?:
|
|
39
|
+
parentCollection?: CollectionConfig,
|
|
40
40
|
redirect: boolean,
|
|
41
41
|
sourceClick?: string
|
|
42
42
|
}) => void;
|
|
@@ -47,7 +47,7 @@ export interface CollectionEditorController {
|
|
|
47
47
|
currentPropertiesOrder?: string[],
|
|
48
48
|
editedCollectionId: string,
|
|
49
49
|
parentCollectionSlugs: string[], parentEntityIds: string[],
|
|
50
|
-
collection:
|
|
50
|
+
collection: CollectionConfig,
|
|
51
51
|
existingEntities: Entity<any>[]
|
|
52
52
|
}) => void;
|
|
53
53
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CollectionConfig, FilterValues } from "@rebasepro/types";
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* This function is used to infer the configuration of a collection given its path.
|
|
@@ -14,4 +14,4 @@ export type CollectionInference = (
|
|
|
14
14
|
databaseId?: string,
|
|
15
15
|
initialFilter?: FilterValues<string>,
|
|
16
16
|
initialSort?: [string, "asc" | "desc"]
|
|
17
|
-
) => Promise<Partial<
|
|
17
|
+
) => Promise<Partial<CollectionConfig> | null>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CollectionConfig, NavigationGroupMapping, Property } from "@rebasepro/types";
|
|
2
2
|
|
|
3
3
|
export interface CollectionsSetupInfo {
|
|
4
4
|
status: "ongoing" | "complete" | "error";
|
|
@@ -13,7 +13,7 @@ export interface CollectionsConfigController {
|
|
|
13
13
|
|
|
14
14
|
loading: boolean;
|
|
15
15
|
|
|
16
|
-
collections?:
|
|
16
|
+
collections?: CollectionConfig[];
|
|
17
17
|
|
|
18
18
|
/**
|
|
19
19
|
* If true, the configuration cannot be modified.
|
|
@@ -32,7 +32,7 @@ export interface CollectionsConfigController {
|
|
|
32
32
|
*/
|
|
33
33
|
collectionsSetup?: CollectionsSetupInfo;
|
|
34
34
|
|
|
35
|
-
getCollection: (id: string) =>
|
|
35
|
+
getCollection: (id: string) => CollectionConfig;
|
|
36
36
|
|
|
37
37
|
saveCollection: <M extends { [Key: string]: any }>(params: SaveCollectionParams<M>) => Promise<void>;
|
|
38
38
|
updateCollection: <M extends { [Key: string]: any }>(params: UpdateCollectionParams<M>) => Promise<void>;
|
|
@@ -59,14 +59,14 @@ export interface CollectionsConfigController {
|
|
|
59
59
|
|
|
60
60
|
export type UpdateCollectionParams<M extends Record<string, unknown> = Record<string, unknown>> = {
|
|
61
61
|
id: string,
|
|
62
|
-
collectionData: Partial<
|
|
62
|
+
collectionData: Partial<CollectionConfig<M>>,
|
|
63
63
|
previousId?: string,
|
|
64
64
|
parentCollectionSlugs?: string[], parentEntityIds?: string[]
|
|
65
65
|
}
|
|
66
66
|
|
|
67
67
|
export type SaveCollectionParams<M extends Record<string, unknown> = Record<string, unknown>> = {
|
|
68
68
|
id: string,
|
|
69
|
-
collectionData:
|
|
69
|
+
collectionData: CollectionConfig<M>,
|
|
70
70
|
previousId?: string,
|
|
71
71
|
parentCollectionSlugs?: string[], parentEntityIds?: string[]
|
|
72
72
|
}
|
|
@@ -96,14 +96,14 @@ export type DeleteCollectionParams = {
|
|
|
96
96
|
export type UpdatePropertiesOrderParams = {
|
|
97
97
|
fullPath: string;
|
|
98
98
|
parentCollectionSlugs: string[], parentEntityIds: string[];
|
|
99
|
-
collection:
|
|
99
|
+
collection: CollectionConfig;
|
|
100
100
|
newPropertiesOrder: string[];
|
|
101
101
|
}
|
|
102
102
|
|
|
103
103
|
export type UpdateKanbanColumnsOrderParams = {
|
|
104
104
|
fullPath: string;
|
|
105
105
|
parentCollectionSlugs: string[], parentEntityIds: string[];
|
|
106
|
-
collection:
|
|
106
|
+
collection: CollectionConfig;
|
|
107
107
|
kanbanColumnProperty: string;
|
|
108
108
|
newColumnsOrder: string[];
|
|
109
109
|
}
|
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
useTranslation
|
|
7
7
|
} from "@rebasepro/core";
|
|
8
8
|
import { getPropertyInPath } from "../_cms_internals";
|
|
9
|
-
import {
|
|
9
|
+
import { CollectionConfig, EnumValueConfig, StringProperty } from "@rebasepro/types";
|
|
10
10
|
import { resolveEnumValues } from "@rebasepro/common";
|
|
11
11
|
import {
|
|
12
12
|
Button,
|
|
@@ -34,7 +34,7 @@ export function AddKanbanColumnAction({
|
|
|
34
34
|
parentCollectionSlugs, parentEntityIds,
|
|
35
35
|
columnProperty
|
|
36
36
|
}: {
|
|
37
|
-
collection:
|
|
37
|
+
collection: CollectionConfig;
|
|
38
38
|
fullPath: string;
|
|
39
39
|
parentCollectionSlugs: string[], parentEntityIds: string[];
|
|
40
40
|
columnProperty: string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useTranslation } from "@rebasepro/core";
|
|
2
|
-
import {
|
|
2
|
+
import { CollectionConfig, EntityTableController, Property } from "@rebasepro/types";
|
|
3
3
|
import { IconButton, SettingsIcon, Tooltip } from "@rebasepro/ui";
|
|
4
4
|
import React from "react";
|
|
5
5
|
import { useCollectionEditorController } from "../useCollectionEditorController";
|
|
@@ -18,7 +18,7 @@ export function CollectionViewHeaderAction({
|
|
|
18
18
|
onHover: boolean,
|
|
19
19
|
path: string,
|
|
20
20
|
parentCollectionSlugs: string[], parentEntityIds: string[],
|
|
21
|
-
collection:
|
|
21
|
+
collection: CollectionConfig;
|
|
22
22
|
tableController: EntityTableController;
|
|
23
23
|
}) {
|
|
24
24
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { useCollectionRegistryController } from "../_cms_internals";
|
|
2
2
|
import { useAuthController, useTranslation } from "@rebasepro/core";
|
|
3
|
-
import {
|
|
3
|
+
import { CollectionConfig, CollectionActionsProps } from "@rebasepro/types";
|
|
4
4
|
import { IconButton, SettingsIcon, Tooltip } from "@rebasepro/ui";
|
|
5
5
|
|
|
6
6
|
import { useCollectionEditorController } from "../useCollectionEditorController";
|
|
@@ -38,7 +38,7 @@ export function EditorCollectionAction({
|
|
|
38
38
|
path,
|
|
39
39
|
parentCollectionSlugs,
|
|
40
40
|
parentEntityIds,
|
|
41
|
-
parentCollection: parentCollection as
|
|
41
|
+
parentCollection: parentCollection as CollectionConfig,
|
|
42
42
|
existingEntities: tableController?.data ?? []
|
|
43
43
|
})
|
|
44
44
|
: undefined}>
|
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
useSnackbarController,
|
|
6
6
|
useTranslation
|
|
7
7
|
} from "@rebasepro/core";
|
|
8
|
-
import {
|
|
8
|
+
import { CollectionConfig, CollectionActionsProps } from "@rebasepro/types";
|
|
9
9
|
import { Button, SaveIcon, Tooltip, UndoIcon } from "@rebasepro/ui";
|
|
10
10
|
|
|
11
11
|
import { useCollectionEditorController } from "../useCollectionEditorController";
|
|
@@ -42,7 +42,7 @@ export function EditorCollectionActionStart({
|
|
|
42
42
|
id: collection.slug,
|
|
43
43
|
parentCollectionSlugs,
|
|
44
44
|
parentEntityIds,
|
|
45
|
-
collectionData: mergeDeep(collection as
|
|
45
|
+
collectionData: mergeDeep(collection as CollectionConfig,
|
|
46
46
|
{
|
|
47
47
|
defaultFilter: tableController.filterValues ?? null,
|
|
48
48
|
sort: tableController.sortBy ?? null
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { useCollectionRegistryController } from "../_cms_internals";
|
|
2
2
|
import { useAuthController, useTranslation } from "@rebasepro/core";
|
|
3
|
-
import {
|
|
3
|
+
import { CollectionConfig, PluginFormActionProps } from "@rebasepro/types";
|
|
4
4
|
import { IconButton, SettingsIcon, Tooltip } from "@rebasepro/ui";
|
|
5
5
|
|
|
6
6
|
import { useCollectionEditorController } from "../useCollectionEditorController";
|
|
@@ -35,7 +35,7 @@ export function EditorEntityAction({
|
|
|
35
35
|
path,
|
|
36
36
|
parentCollectionSlugs,
|
|
37
37
|
parentEntityIds,
|
|
38
|
-
parentCollection: parentCollection as
|
|
38
|
+
parentCollection: parentCollection as CollectionConfig
|
|
39
39
|
})
|
|
40
40
|
: undefined}>
|
|
41
41
|
<SettingsIcon/>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { useTranslation } from "@rebasepro/core";
|
|
3
|
-
import {
|
|
3
|
+
import { CollectionConfig } from "@rebasepro/types";
|
|
4
4
|
import { Button } from "@rebasepro/ui";
|
|
5
5
|
import { useCollectionEditorController } from "../useCollectionEditorController";
|
|
6
6
|
|
|
@@ -14,7 +14,7 @@ export function KanbanSetupAction({
|
|
|
14
14
|
parentCollectionSlugs,
|
|
15
15
|
parentEntityIds
|
|
16
16
|
}: {
|
|
17
|
-
collection:
|
|
17
|
+
collection: CollectionConfig;
|
|
18
18
|
fullPath: string;
|
|
19
19
|
parentCollectionSlugs: string[], parentEntityIds: string[];
|
|
20
20
|
}) {
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
useTranslation
|
|
4
4
|
} from "@rebasepro/core";
|
|
5
5
|
import { getDefaultPropertiesOrder } from "../_cms_internals";
|
|
6
|
-
import {
|
|
6
|
+
import { CollectionConfig, EntityTableController } from "@rebasepro/types";
|
|
7
7
|
import { PlusIcon, Tooltip } from "@rebasepro/ui";
|
|
8
8
|
import { useCollectionEditorController } from "../useCollectionEditorController";
|
|
9
9
|
|
|
@@ -15,7 +15,7 @@ export function PropertyAddColumnComponent({
|
|
|
15
15
|
}: {
|
|
16
16
|
path: string,
|
|
17
17
|
parentCollectionSlugs: string[], parentEntityIds: string[],
|
|
18
|
-
collection:
|
|
18
|
+
collection: CollectionConfig;
|
|
19
19
|
tableController: EntityTableController;
|
|
20
20
|
}) {
|
|
21
21
|
|
|
@@ -3,7 +3,7 @@ import { AIIcon } from "@rebasepro/core";
|
|
|
3
3
|
import { useCollectionRegistryController } from "../../_cms_internals";
|
|
4
4
|
import React, { useState } from "react";
|
|
5
5
|
import { useSafeSnackbarController } from "../../useSafeSnackbarController";
|
|
6
|
-
import {
|
|
6
|
+
import { CollectionConfig } from "@rebasepro/types";
|
|
7
7
|
import {
|
|
8
8
|
Button,
|
|
9
9
|
CircularProgress,
|
|
@@ -25,13 +25,13 @@ export interface AICollectionGeneratorPopoverProps {
|
|
|
25
25
|
/**
|
|
26
26
|
* Current collection being edited (if modifying an existing collection)
|
|
27
27
|
*/
|
|
28
|
-
existingCollection?:
|
|
28
|
+
existingCollection?: CollectionConfig<any>;
|
|
29
29
|
|
|
30
30
|
/**
|
|
31
31
|
* Callback when a collection is generated or modified.
|
|
32
32
|
* Includes the collection and optionally the operations that were applied.
|
|
33
33
|
*/
|
|
34
|
-
onGenerated: (collection:
|
|
34
|
+
onGenerated: (collection: CollectionConfig, operations?: CollectionOperation[]) => void;
|
|
35
35
|
|
|
36
36
|
/**
|
|
37
37
|
* Callback function for generating/modifying collections.
|
|
@@ -95,7 +95,7 @@ export function AICollectionGeneratorPopover({
|
|
|
95
95
|
name: c.name,
|
|
96
96
|
properties: c.properties,
|
|
97
97
|
propertiesOrder: c.propertiesOrder
|
|
98
|
-
}));
|
|
98
|
+
} as Partial<CollectionConfig>));
|
|
99
99
|
|
|
100
100
|
const result = await generateCollection({
|
|
101
101
|
prompt: prompt.trim(),
|
|
@@ -106,7 +106,7 @@ export function AICollectionGeneratorPopover({
|
|
|
106
106
|
name: existingCollection.name,
|
|
107
107
|
properties: existingCollection.properties,
|
|
108
108
|
propertiesOrder: existingCollection.propertiesOrder
|
|
109
|
-
}
|
|
109
|
+
} as Partial<CollectionConfig>
|
|
110
110
|
})
|
|
111
111
|
});
|
|
112
112
|
|
|
@@ -4,7 +4,7 @@ import { FieldCaption } from "../../_cms_internals";
|
|
|
4
4
|
import React, { useMemo, useState } from "react";
|
|
5
5
|
import { useAuthController, useCustomizationController } from "@rebasepro/core";
|
|
6
6
|
import { getFieldConfig, PropertyConfigBadge, SearchIconsView } from "../../_cms_internals";
|
|
7
|
-
import {
|
|
7
|
+
import { CollectionConfig, Property } from "@rebasepro/types";
|
|
8
8
|
import {
|
|
9
9
|
BooleanSwitchWithLabel,
|
|
10
10
|
Button,
|
|
@@ -42,7 +42,7 @@ export function CollectionDetailsForm({
|
|
|
42
42
|
isNewCollection: boolean,
|
|
43
43
|
existingPaths?: string[];
|
|
44
44
|
existingIds?: string[];
|
|
45
|
-
parentCollection?:
|
|
45
|
+
parentCollection?: CollectionConfig;
|
|
46
46
|
parentCollectionSlugs?: string[], parentEntityIds?: string[];
|
|
47
47
|
expandKanban?: boolean;
|
|
48
48
|
}) {
|
|
@@ -57,7 +57,7 @@ export function CollectionDetailsForm({
|
|
|
57
57
|
setFieldTouched,
|
|
58
58
|
isSubmitting,
|
|
59
59
|
submitCount
|
|
60
|
-
} = useFormex<
|
|
60
|
+
} = useFormex<CollectionConfig>();
|
|
61
61
|
|
|
62
62
|
const collectionEditor = useCollectionEditorController();
|
|
63
63
|
|