@rebasepro/studio 0.0.1-canary.09e5ec5
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 +114 -0
- package/README.md +159 -0
- package/dist/ApiExplorer-gMJt5JrS.js +1053 -0
- package/dist/ApiExplorer-gMJt5JrS.js.map +1 -0
- package/dist/AuthSimulationSelector-BF4rkRGp.js +118 -0
- package/dist/AuthSimulationSelector-BF4rkRGp.js.map +1 -0
- package/dist/BranchesView-DcHZtvXo.js +292 -0
- package/dist/BranchesView-DcHZtvXo.js.map +1 -0
- package/dist/CronJobsView-CijCToeK.js +456 -0
- package/dist/CronJobsView-CijCToeK.js.map +1 -0
- package/dist/JSEditor-D8nVp3Lp.js +1308 -0
- package/dist/JSEditor-D8nVp3Lp.js.map +1 -0
- package/dist/MonacoEditor-CMYEjiRf.js +161 -0
- package/dist/MonacoEditor-CMYEjiRf.js.map +1 -0
- package/dist/RLSEditor-DBH09u9v.js +1831 -0
- package/dist/RLSEditor-DBH09u9v.js.map +1 -0
- package/dist/SQLEditor-CkVx9vgr.js +1792 -0
- package/dist/SQLEditor-CkVx9vgr.js.map +1 -0
- package/dist/SchemaVisualizer-BgD5Zb77.js +1069 -0
- package/dist/SchemaVisualizer-BgD5Zb77.js.map +1 -0
- package/dist/StorageView-CTqGFhY9.js +907 -0
- package/dist/StorageView-CTqGFhY9.js.map +1 -0
- package/dist/common/src/collections/CollectionRegistry.d.ts +56 -0
- package/dist/common/src/collections/index.d.ts +1 -0
- package/dist/common/src/data/buildRebaseData.d.ts +14 -0
- package/dist/common/src/index.d.ts +3 -0
- package/dist/common/src/util/builders.d.ts +57 -0
- package/dist/common/src/util/callbacks.d.ts +6 -0
- package/dist/common/src/util/collections.d.ts +11 -0
- package/dist/common/src/util/common.d.ts +2 -0
- package/dist/common/src/util/conditions.d.ts +26 -0
- package/dist/common/src/util/entities.d.ts +58 -0
- package/dist/common/src/util/enums.d.ts +3 -0
- package/dist/common/src/util/index.d.ts +16 -0
- package/dist/common/src/util/navigation_from_path.d.ts +34 -0
- package/dist/common/src/util/navigation_utils.d.ts +20 -0
- package/dist/common/src/util/parent_references_from_path.d.ts +6 -0
- package/dist/common/src/util/paths.d.ts +14 -0
- package/dist/common/src/util/permissions.d.ts +5 -0
- package/dist/common/src/util/references.d.ts +2 -0
- package/dist/common/src/util/relations.d.ts +22 -0
- package/dist/common/src/util/resolutions.d.ts +72 -0
- package/dist/common/src/util/storage.d.ts +24 -0
- package/dist/core/src/components/AIIcon.d.ts +16 -0
- package/dist/core/src/components/ConfirmationDialog.d.ts +9 -0
- package/dist/core/src/components/Debug/UIReferenceView.d.ts +1 -0
- package/dist/core/src/components/Debug/UIStyleGuide.d.ts +1 -0
- package/dist/core/src/components/ErrorTooltip.d.ts +2 -0
- package/dist/core/src/components/ErrorView.d.ts +21 -0
- package/dist/core/src/components/LanguageToggle.d.ts +1 -0
- package/dist/core/src/components/LoginView/LoginView.d.ts +68 -0
- package/dist/core/src/components/LoginView/index.d.ts +2 -0
- package/dist/core/src/components/NotFoundPage.d.ts +1 -0
- package/dist/core/src/components/RebaseAuth.d.ts +10 -0
- package/dist/core/src/components/RebaseLogo.d.ts +7 -0
- package/dist/core/src/components/UnsavedChangesDialog.d.ts +9 -0
- package/dist/core/src/components/UserDisplay.d.ts +7 -0
- package/dist/core/src/components/UserSelectPopover.d.ts +62 -0
- package/dist/core/src/components/UserSettingsView.d.ts +1 -0
- package/dist/core/src/components/common/index.d.ts +6 -0
- package/dist/core/src/components/common/table_height.d.ts +5 -0
- package/dist/core/src/components/common/types.d.ts +63 -0
- package/dist/core/src/components/common/useColumnsIds.d.ts +9 -0
- package/dist/core/src/components/common/useDataTableController.d.ts +45 -0
- package/dist/core/src/components/common/useDebouncedData.d.ts +9 -0
- package/dist/core/src/components/common/useScrollRestoration.d.ts +14 -0
- package/dist/core/src/components/index.d.ts +16 -0
- package/dist/core/src/contexts/AdminModeController.d.ts +4 -0
- package/dist/core/src/contexts/AnalyticsContext.d.ts +3 -0
- package/dist/core/src/contexts/AuthControllerContext.d.ts +3 -0
- package/dist/core/src/contexts/CustomizationControllerContext.d.ts +3 -0
- package/dist/core/src/contexts/DataDriverContext.d.ts +3 -0
- package/dist/core/src/contexts/DatabaseAdminContext.d.ts +3 -0
- package/dist/core/src/contexts/DialogsProvider.d.ts +4 -0
- package/dist/core/src/contexts/EffectiveRoleController.d.ts +4 -0
- package/dist/core/src/contexts/InternalUserManagementContext.d.ts +3 -0
- package/dist/core/src/contexts/ModeController.d.ts +4 -0
- package/dist/core/src/contexts/RebaseClientInstanceContext.d.ts +6 -0
- package/dist/core/src/contexts/RebaseDataContext.d.ts +3 -0
- package/dist/core/src/contexts/SnackbarProvider.d.ts +2 -0
- package/dist/core/src/contexts/StorageSourceContext.d.ts +3 -0
- package/dist/core/src/contexts/UserConfigurationPersistenceContext.d.ts +3 -0
- package/dist/core/src/contexts/index.d.ts +13 -0
- package/dist/core/src/core/PluginLifecycleManager.d.ts +17 -0
- package/dist/core/src/core/PluginProviderStack.d.ts +21 -0
- package/dist/core/src/core/Rebase.d.ts +14 -0
- package/dist/core/src/core/RebaseProps.d.ts +136 -0
- package/dist/core/src/core/RebaseRouter.d.ts +4 -0
- package/dist/core/src/core/RebaseRoutes.d.ts +17 -0
- package/dist/core/src/core/index.d.ts +4 -0
- package/dist/core/src/hooks/ApiConfigContext.d.ts +24 -0
- package/dist/core/src/hooks/data/delete.d.ts +31 -0
- package/dist/core/src/hooks/data/save.d.ts +34 -0
- package/dist/core/src/hooks/data/useCollectionFetch.d.ts +51 -0
- package/dist/core/src/hooks/data/useData.d.ts +13 -0
- package/dist/core/src/hooks/data/useDataOrder.d.ts +12 -0
- package/dist/core/src/hooks/data/useEntityFetch.d.ts +38 -0
- package/dist/core/src/hooks/data/useRelationSelector.d.ts +52 -0
- package/dist/core/src/hooks/data/useUserSelector.d.ts +31 -0
- package/dist/core/src/hooks/index.d.ts +37 -0
- package/dist/core/src/hooks/useAdminModeController.d.ts +19 -0
- package/dist/core/src/hooks/useAnalyticsController.d.ts +5 -0
- package/dist/core/src/hooks/useAuthController.d.ts +11 -0
- package/dist/core/src/hooks/useAuthSubscription.d.ts +2 -0
- package/dist/core/src/hooks/useBackendStorageSource.d.ts +30 -0
- package/dist/core/src/hooks/useBridgeRegistration.d.ts +18 -0
- package/dist/core/src/hooks/useBrowserTitleAndIcon.d.ts +6 -0
- package/dist/core/src/hooks/useBuildAdminModeController.d.ts +6 -0
- package/dist/core/src/hooks/useBuildEffectiveRoleController.d.ts +8 -0
- package/dist/core/src/hooks/useBuildLocalConfigurationPersistence.d.ts +2 -0
- package/dist/core/src/hooks/useBuildModeController.d.ts +6 -0
- package/dist/core/src/hooks/useClipboard.d.ts +57 -0
- package/dist/core/src/hooks/useCollapsedGroups.d.ts +12 -0
- package/dist/core/src/hooks/useCustomizationController.d.ts +11 -0
- package/dist/core/src/hooks/useDialogsController.d.ts +11 -0
- package/dist/core/src/hooks/useEffectiveRoleController.d.ts +7 -0
- package/dist/core/src/hooks/useInternalUserManagementController.d.ts +12 -0
- package/dist/core/src/hooks/useLargeLayout.d.ts +1 -0
- package/dist/core/src/hooks/useModeController.d.ts +19 -0
- package/dist/core/src/hooks/usePermissions.d.ts +12 -0
- package/dist/core/src/hooks/useRebaseClient.d.ts +5 -0
- package/dist/core/src/hooks/useRebaseContext.d.ts +11 -0
- package/dist/core/src/hooks/useRebaseRegistry.d.ts +34 -0
- package/dist/core/src/hooks/useSlot.d.ts +18 -0
- package/dist/core/src/hooks/useSnackbarController.d.ts +20 -0
- package/dist/core/src/hooks/useStorageSource.d.ts +7 -0
- package/dist/core/src/hooks/useStudioBridge.d.ts +91 -0
- package/dist/core/src/hooks/useTranslation.d.ts +17 -0
- package/dist/core/src/hooks/useUnsavedChangesDialog.d.ts +12 -0
- package/dist/core/src/hooks/useUserConfigurationPersistence.d.ts +8 -0
- package/dist/core/src/hooks/useValidateAuthenticator.d.ts +21 -0
- package/dist/core/src/i18n/RebaseI18nProvider.d.ts +33 -0
- package/dist/core/src/index.d.ts +15 -0
- package/dist/core/src/internal/common.d.ts +3 -0
- package/dist/core/src/internal/useRestoreScroll.d.ts +6 -0
- package/dist/core/src/locales/de.d.ts +2 -0
- package/dist/core/src/locales/en.d.ts +10 -0
- package/dist/core/src/locales/es.d.ts +10 -0
- package/dist/core/src/locales/fr.d.ts +2 -0
- package/dist/core/src/locales/hi.d.ts +2 -0
- package/dist/core/src/locales/it.d.ts +2 -0
- package/dist/core/src/locales/pt.d.ts +7 -0
- package/dist/core/src/util/constants.d.ts +1 -0
- package/dist/core/src/util/createFormexStub.d.ts +2 -0
- package/dist/core/src/util/entity_cache.d.ts +27 -0
- package/dist/core/src/util/enums.d.ts +5 -0
- package/dist/core/src/util/icon_list.d.ts +5 -0
- package/dist/core/src/util/icon_synonyms.d.ts +1 -0
- package/dist/core/src/util/icons.d.ts +20 -0
- package/dist/core/src/util/index.d.ts +10 -0
- package/dist/core/src/util/previews.d.ts +4 -0
- package/dist/core/src/util/useStorageUploadController.d.ts +38 -0
- package/dist/core/src/util/useTraceUpdate.d.ts +2 -0
- package/dist/formex/src/Field.d.ts +52 -0
- package/dist/formex/src/Formex.d.ts +7 -0
- package/dist/formex/src/index.d.ts +5 -0
- package/dist/formex/src/types.d.ts +40 -0
- package/dist/formex/src/useCreateFormex.d.ts +14 -0
- package/dist/formex/src/utils.d.ts +16 -0
- package/dist/index.es.js +726 -0
- package/dist/index.es.js.map +1 -0
- package/dist/index.umd.js +9647 -0
- package/dist/index.umd.js.map +1 -0
- package/dist/studio/src/components/ApiExplorer/ApiExplorer.d.ts +9 -0
- package/dist/studio/src/components/ApiExplorer/EndpointDetail.d.ts +9 -0
- package/dist/studio/src/components/ApiExplorer/TryItPanel.d.ts +15 -0
- package/dist/studio/src/components/ApiExplorer/parseSpec.d.ts +16 -0
- package/dist/studio/src/components/ApiExplorer/types.d.ts +90 -0
- package/dist/studio/src/components/AuthSimulationSelector.d.ts +11 -0
- package/dist/studio/src/components/Branches/BranchesView.d.ts +1 -0
- package/dist/studio/src/components/CronJobs/CronJobsView.d.ts +1 -0
- package/dist/studio/src/components/JSEditor/JSEditor.d.ts +1 -0
- package/dist/studio/src/components/JSEditor/JSEditorSidebar.d.ts +21 -0
- package/dist/studio/src/components/JSEditor/JSMonacoEditor.d.ts +18 -0
- package/dist/studio/src/components/RLSEditor/PolicyEditor.d.ts +9 -0
- package/dist/studio/src/components/RLSEditor/RLSEditor.d.ts +19 -0
- package/dist/studio/src/components/RLSEditor/index.d.ts +1 -0
- package/dist/studio/src/components/RebaseStudio.d.ts +2 -0
- package/dist/studio/src/components/SQLEditor/ExplainVisualizer.d.ts +24 -0
- package/dist/studio/src/components/SQLEditor/MonacoEditor.d.ts +17 -0
- package/dist/studio/src/components/SQLEditor/SQLEditor.d.ts +11 -0
- package/dist/studio/src/components/SQLEditor/SQLEditorSidebar.d.ts +21 -0
- package/dist/studio/src/components/SQLEditor/SchemaBrowser.d.ts +8 -0
- package/dist/studio/src/components/SchemaVisualizer/RelationEdge.d.ts +3 -0
- package/dist/studio/src/components/SchemaVisualizer/SchemaVisualizer.d.ts +2 -0
- package/dist/studio/src/components/SchemaVisualizer/TableNode.d.ts +3 -0
- package/dist/studio/src/components/SchemaVisualizer/index.d.ts +5 -0
- package/dist/studio/src/components/SchemaVisualizer/schema-visualizer.utils.d.ts +42 -0
- package/dist/studio/src/components/SchemaVisualizer/useSchemaGraph.d.ts +37 -0
- package/dist/studio/src/components/StorageView/StorageView.d.ts +1 -0
- package/dist/studio/src/components/StudioHomePage.d.ts +9 -0
- package/dist/studio/src/index.d.ts +4 -0
- package/dist/studio/src/utils/entities.d.ts +0 -0
- package/dist/studio/src/utils/pgColumnToProperty.d.ts +6 -0
- package/dist/studio/src/utils/sql_utils.d.ts +52 -0
- package/dist/types/src/controllers/analytics_controller.d.ts +7 -0
- package/dist/types/src/controllers/auth.d.ts +119 -0
- package/dist/types/src/controllers/client.d.ts +170 -0
- package/dist/types/src/controllers/collection_registry.d.ts +45 -0
- package/dist/types/src/controllers/customization_controller.d.ts +60 -0
- package/dist/types/src/controllers/data.d.ts +168 -0
- package/dist/types/src/controllers/data_driver.d.ts +160 -0
- package/dist/types/src/controllers/database_admin.d.ts +11 -0
- package/dist/types/src/controllers/dialogs_controller.d.ts +36 -0
- package/dist/types/src/controllers/effective_role.d.ts +4 -0
- package/dist/types/src/controllers/email.d.ts +34 -0
- package/dist/types/src/controllers/index.d.ts +18 -0
- package/dist/types/src/controllers/local_config_persistence.d.ts +20 -0
- package/dist/types/src/controllers/navigation.d.ts +213 -0
- package/dist/types/src/controllers/registry.d.ts +54 -0
- package/dist/types/src/controllers/side_dialogs_controller.d.ts +67 -0
- package/dist/types/src/controllers/side_entity_controller.d.ts +90 -0
- package/dist/types/src/controllers/snackbar.d.ts +24 -0
- package/dist/types/src/controllers/storage.d.ts +171 -0
- package/dist/types/src/index.d.ts +4 -0
- package/dist/types/src/rebase_context.d.ts +105 -0
- package/dist/types/src/types/backend.d.ts +536 -0
- package/dist/types/src/types/builders.d.ts +15 -0
- package/dist/types/src/types/chips.d.ts +5 -0
- package/dist/types/src/types/collections.d.ts +856 -0
- package/dist/types/src/types/cron.d.ts +102 -0
- package/dist/types/src/types/data_source.d.ts +64 -0
- package/dist/types/src/types/entities.d.ts +145 -0
- package/dist/types/src/types/entity_actions.d.ts +98 -0
- package/dist/types/src/types/entity_callbacks.d.ts +173 -0
- package/dist/types/src/types/entity_link_builder.d.ts +7 -0
- package/dist/types/src/types/entity_overrides.d.ts +10 -0
- package/dist/types/src/types/entity_views.d.ts +61 -0
- package/dist/types/src/types/export_import.d.ts +21 -0
- package/dist/types/src/types/index.d.ts +23 -0
- package/dist/types/src/types/locales.d.ts +4 -0
- package/dist/types/src/types/modify_collections.d.ts +5 -0
- package/dist/types/src/types/plugins.d.ts +279 -0
- package/dist/types/src/types/properties.d.ts +1176 -0
- package/dist/types/src/types/property_config.d.ts +70 -0
- package/dist/types/src/types/relations.d.ts +336 -0
- package/dist/types/src/types/slots.d.ts +252 -0
- package/dist/types/src/types/translations.d.ts +870 -0
- package/dist/types/src/types/user_management_delegate.d.ts +121 -0
- package/dist/types/src/types/websockets.d.ts +78 -0
- package/dist/types/src/users/index.d.ts +2 -0
- package/dist/types/src/users/roles.d.ts +22 -0
- package/dist/types/src/users/user.d.ts +46 -0
- package/dist/ui/src/components/Alert.d.ts +12 -0
- package/dist/ui/src/components/Autocomplete.d.ts +21 -0
- package/dist/ui/src/components/Avatar.d.ts +11 -0
- package/dist/ui/src/components/Badge.d.ts +8 -0
- package/dist/ui/src/components/BooleanSwitch.d.ts +14 -0
- package/dist/ui/src/components/BooleanSwitchWithLabel.d.ts +17 -0
- package/dist/ui/src/components/Button.d.ts +14 -0
- package/dist/ui/src/components/Card.d.ts +9 -0
- package/dist/ui/src/components/CenteredView.d.ts +9 -0
- package/dist/ui/src/components/Checkbox.d.ts +13 -0
- package/dist/ui/src/components/Chip.d.ts +26 -0
- package/dist/ui/src/components/CircularProgress.d.ts +5 -0
- package/dist/ui/src/components/CircularProgressCenter.d.ts +11 -0
- package/dist/ui/src/components/Collapse.d.ts +9 -0
- package/dist/ui/src/components/ColorPicker.d.ts +30 -0
- package/dist/ui/src/components/Container.d.ts +8 -0
- package/dist/ui/src/components/DateTimeField.d.ts +24 -0
- package/dist/ui/src/components/DebouncedTextField.d.ts +2 -0
- package/dist/ui/src/components/Dialog.d.ts +39 -0
- package/dist/ui/src/components/DialogActions.d.ts +7 -0
- package/dist/ui/src/components/DialogContent.d.ts +7 -0
- package/dist/ui/src/components/DialogTitle.d.ts +10 -0
- package/dist/ui/src/components/ErrorBoundary.d.ts +11 -0
- package/dist/ui/src/components/ExpandablePanel.d.ts +12 -0
- package/dist/ui/src/components/FileUpload.d.ts +23 -0
- package/dist/ui/src/components/IconButton.d.ts +12 -0
- package/dist/ui/src/components/InfoLabel.d.ts +5 -0
- package/dist/ui/src/components/InputLabel.d.ts +11 -0
- package/dist/ui/src/components/Label.d.ts +7 -0
- package/dist/ui/src/components/LoadingButton.d.ts +7 -0
- package/dist/ui/src/components/Markdown.d.ts +10 -0
- package/dist/ui/src/components/Menu.d.ts +23 -0
- package/dist/ui/src/components/Menubar.d.ts +80 -0
- package/dist/ui/src/components/MultiSelect.d.ts +48 -0
- package/dist/ui/src/components/Paper.d.ts +6 -0
- package/dist/ui/src/components/Popover.d.ts +24 -0
- package/dist/ui/src/components/RadioGroup.d.ts +28 -0
- package/dist/ui/src/components/ResizablePanels.d.ts +18 -0
- package/dist/ui/src/components/SearchBar.d.ts +22 -0
- package/dist/ui/src/components/Select.d.ts +43 -0
- package/dist/ui/src/components/Separator.d.ts +5 -0
- package/dist/ui/src/components/Sheet.d.ts +22 -0
- package/dist/ui/src/components/Skeleton.d.ts +6 -0
- package/dist/ui/src/components/Slider.d.ts +21 -0
- package/dist/ui/src/components/Table.d.ts +34 -0
- package/dist/ui/src/components/Tabs.d.ts +19 -0
- package/dist/ui/src/components/TextField.d.ts +58 -0
- package/dist/ui/src/components/TextareaAutosize.d.ts +43 -0
- package/dist/ui/src/components/ToggleButtonGroup.d.ts +30 -0
- package/dist/ui/src/components/Tooltip.d.ts +19 -0
- package/dist/ui/src/components/Typography.d.ts +36 -0
- package/dist/ui/src/components/VirtualTable/VirtualTable.d.ts +11 -0
- package/dist/ui/src/components/VirtualTable/VirtualTableCell.d.ts +21 -0
- package/dist/ui/src/components/VirtualTable/VirtualTableHeader.d.ts +29 -0
- package/dist/ui/src/components/VirtualTable/VirtualTableHeaderRow.d.ts +2 -0
- package/dist/ui/src/components/VirtualTable/VirtualTableProps.d.ts +243 -0
- package/dist/ui/src/components/VirtualTable/VirtualTableRow.d.ts +3 -0
- package/dist/ui/src/components/VirtualTable/index.d.ts +3 -0
- package/dist/ui/src/components/VirtualTable/types.d.ts +38 -0
- package/dist/ui/src/components/common/SelectInputLabel.d.ts +5 -0
- package/dist/ui/src/components/index.d.ts +53 -0
- package/dist/ui/src/hooks/PortalContainerContext.d.ts +31 -0
- package/dist/ui/src/hooks/index.d.ts +6 -0
- package/dist/ui/src/hooks/useDebounceCallback.d.ts +1 -0
- package/dist/ui/src/hooks/useDebounceValue.d.ts +1 -0
- package/dist/ui/src/hooks/useDebouncedCallback.d.ts +1 -0
- package/dist/ui/src/hooks/useInjectStyles.d.ts +7 -0
- package/dist/ui/src/hooks/useOutsideAlerter.d.ts +5 -0
- package/dist/ui/src/icons/GitHubIcon.d.ts +2 -0
- package/dist/ui/src/icons/HandleIcon.d.ts +1 -0
- package/dist/ui/src/icons/Icon.d.ts +20 -0
- package/dist/ui/src/icons/cool_icon_keys.d.ts +1 -0
- package/dist/ui/src/icons/icon_keys.d.ts +1 -0
- package/dist/ui/src/icons/index.d.ts +6 -0
- package/dist/ui/src/index.d.ts +5 -0
- package/dist/ui/src/styles.d.ts +12 -0
- package/dist/ui/src/util/chip_colors.d.ts +4 -0
- package/dist/ui/src/util/cls.d.ts +2 -0
- package/dist/ui/src/util/debounce.d.ts +10 -0
- package/dist/ui/src/util/hash.d.ts +1 -0
- package/dist/ui/src/util/index.d.ts +4 -0
- package/dist/ui/src/util/key_to_icon_component.d.ts +1 -0
- package/package.json +84 -0
- package/src/components/ApiExplorer/ApiExplorer.tsx +290 -0
- package/src/components/ApiExplorer/EndpointDetail.tsx +271 -0
- package/src/components/ApiExplorer/TryItPanel.tsx +510 -0
- package/src/components/ApiExplorer/parseSpec.ts +104 -0
- package/src/components/ApiExplorer/types.ts +84 -0
- package/src/components/AuthSimulationSelector.tsx +77 -0
- package/src/components/Branches/BranchesView.tsx +370 -0
- package/src/components/CronJobs/CronJobsView.tsx +346 -0
- package/src/components/JSEditor/JSEditor.tsx +1033 -0
- package/src/components/JSEditor/JSEditorSidebar.tsx +340 -0
- package/src/components/JSEditor/JSMonacoEditor.tsx +390 -0
- package/src/components/RLSEditor/PolicyEditor.tsx +444 -0
- package/src/components/RLSEditor/RLSEditor.tsx +692 -0
- package/src/components/RLSEditor/index.ts +1 -0
- package/src/components/RebaseStudio.tsx +121 -0
- package/src/components/SQLEditor/ExplainVisualizer.tsx +128 -0
- package/src/components/SQLEditor/MonacoEditor.tsx +203 -0
- package/src/components/SQLEditor/SQLEditor.tsx +1419 -0
- package/src/components/SQLEditor/SQLEditorSidebar.tsx +174 -0
- package/src/components/SQLEditor/SchemaBrowser.tsx +158 -0
- package/src/components/SchemaVisualizer/RelationEdge.tsx +102 -0
- package/src/components/SchemaVisualizer/SchemaVisualizer.tsx +665 -0
- package/src/components/SchemaVisualizer/TableNode.tsx +257 -0
- package/src/components/SchemaVisualizer/index.ts +5 -0
- package/src/components/SchemaVisualizer/schema-visualizer.utils.ts +140 -0
- package/src/components/SchemaVisualizer/useSchemaGraph.ts +397 -0
- package/src/components/StorageView/StorageView.tsx +1035 -0
- package/src/components/StudioHomePage.tsx +357 -0
- package/src/index.ts +31 -0
- package/src/utils/entities.ts +2 -0
- package/src/utils/pgColumnToProperty.test.ts +401 -0
- package/src/utils/pgColumnToProperty.ts +275 -0
- package/src/utils/sql_utils.test.ts +265 -0
- package/src/utils/sql_utils.ts +291 -0
- package/src/vite-env.d.ts +1 -0
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { ArrayProperty, AuthController, EntityCollection, EnumValueConfig, EnumValues, NumberProperty, Properties, Property, Relation, RelationProperty, StringProperty } from "@rebasepro/types";
|
|
2
|
+
type PropertyConfig = {
|
|
3
|
+
property: unknown;
|
|
4
|
+
[key: string]: unknown;
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* Resolve property builders, enums and arrays.
|
|
8
|
+
*/
|
|
9
|
+
export type ResolvePropertyProps<M extends Record<string, unknown> = Record<string, unknown>> = {
|
|
10
|
+
property: Property;
|
|
11
|
+
propertyKey?: string;
|
|
12
|
+
values?: Partial<M>;
|
|
13
|
+
previousValues?: Partial<M>;
|
|
14
|
+
path?: string;
|
|
15
|
+
entityId?: string | number;
|
|
16
|
+
index?: number;
|
|
17
|
+
propertyConfigs?: Record<string, PropertyConfig>;
|
|
18
|
+
ignoreMissingFields?: boolean;
|
|
19
|
+
authController: AuthController;
|
|
20
|
+
};
|
|
21
|
+
export declare function resolveProperty<M extends Record<string, unknown> = Record<string, unknown>>(props: ResolvePropertyProps<M>): Property | null;
|
|
22
|
+
export declare function resolveRelationProperty(property: RelationProperty, relations: Relation[], propertyKey?: string): RelationProperty;
|
|
23
|
+
/**
|
|
24
|
+
* Resolve enum aliases for a string or number property
|
|
25
|
+
* @param property
|
|
26
|
+
*/
|
|
27
|
+
export declare function resolvePropertyEnum(property: StringProperty | NumberProperty): StringProperty | NumberProperty;
|
|
28
|
+
/**
|
|
29
|
+
* Resolve enums and arrays for properties
|
|
30
|
+
* @param properties
|
|
31
|
+
* @param value
|
|
32
|
+
*/
|
|
33
|
+
export declare function resolveProperties<M extends Record<string, unknown>>({ propertyKey, properties, ignoreMissingFields, ...props }: {
|
|
34
|
+
propertyKey?: string;
|
|
35
|
+
properties: Properties;
|
|
36
|
+
values?: Partial<M>;
|
|
37
|
+
previousValues?: Partial<M>;
|
|
38
|
+
path?: string;
|
|
39
|
+
entityId?: string | number;
|
|
40
|
+
index?: number;
|
|
41
|
+
propertyConfigs?: Record<string, PropertyConfig>;
|
|
42
|
+
ignoreMissingFields?: boolean;
|
|
43
|
+
authController: AuthController;
|
|
44
|
+
}): Properties;
|
|
45
|
+
export declare function resolveArrayProperties<M>({ propertyKey, property, ignoreMissingFields, ...props }: {
|
|
46
|
+
propertyKey?: string;
|
|
47
|
+
property: ArrayProperty;
|
|
48
|
+
values?: Partial<M>;
|
|
49
|
+
previousValues?: Partial<M>;
|
|
50
|
+
path?: string;
|
|
51
|
+
entityId?: string | number;
|
|
52
|
+
index?: number;
|
|
53
|
+
propertyConfigs?: Record<string, PropertyConfig>;
|
|
54
|
+
ignoreMissingFields?: boolean;
|
|
55
|
+
authController: AuthController;
|
|
56
|
+
}): Property[];
|
|
57
|
+
export declare function getArrayResolvedProperties({ propertyKey, propertyValue, property, ...props }: {
|
|
58
|
+
propertyValue: unknown;
|
|
59
|
+
propertyKey?: string;
|
|
60
|
+
property: ArrayProperty;
|
|
61
|
+
ignoreMissingFields: boolean;
|
|
62
|
+
values?: object;
|
|
63
|
+
previousValues?: object;
|
|
64
|
+
path?: string;
|
|
65
|
+
entityId?: string | number;
|
|
66
|
+
index?: number;
|
|
67
|
+
propertyConfigs?: Record<string, PropertyConfig>;
|
|
68
|
+
authController: AuthController;
|
|
69
|
+
}): Property[];
|
|
70
|
+
export declare function resolveEnumValues(input: EnumValues): EnumValueConfig[] | undefined;
|
|
71
|
+
export declare function getSubcollections<M extends Record<string, unknown> = Record<string, unknown>>(collection: EntityCollection<M>): EntityCollection<Record<string, unknown>>[];
|
|
72
|
+
export {};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { ArrayProperty, EntityValues, StorageConfig, StringProperty, UploadedFileContext } from "@rebasepro/types";
|
|
2
|
+
interface ResolveFilenameStringParams<M extends Record<string, unknown>> {
|
|
3
|
+
input: string | ((context: UploadedFileContext) => (Promise<string> | string));
|
|
4
|
+
storage: StorageConfig;
|
|
5
|
+
values: EntityValues<M>;
|
|
6
|
+
entityId?: string | number;
|
|
7
|
+
path?: string;
|
|
8
|
+
property: StringProperty | ArrayProperty;
|
|
9
|
+
file: File;
|
|
10
|
+
propertyKey: string;
|
|
11
|
+
}
|
|
12
|
+
export declare function resolveStorageFilenameString<M extends Record<string, unknown>>({ input, storage, values, entityId, path, property, file, propertyKey }: ResolveFilenameStringParams<M>): Promise<string>;
|
|
13
|
+
interface ResolveStoragePathStringParams<M extends Record<string, unknown>> {
|
|
14
|
+
input: string | ((context: UploadedFileContext) => string);
|
|
15
|
+
storage: StorageConfig;
|
|
16
|
+
values: EntityValues<M>;
|
|
17
|
+
entityId?: string | number;
|
|
18
|
+
path?: string;
|
|
19
|
+
property: StringProperty | ArrayProperty;
|
|
20
|
+
file: File;
|
|
21
|
+
propertyKey: string;
|
|
22
|
+
}
|
|
23
|
+
export declare function resolveStoragePathString<M extends Record<string, unknown>>({ input, storage, values, entityId, path, property, file, propertyKey }: ResolveStoragePathStringParams<M>): string;
|
|
24
|
+
export {};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export interface AIIconProps {
|
|
2
|
+
size?: "smallest" | "small" | "medium" | "large";
|
|
3
|
+
className?: string;
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* AI-styled AutoAwesome icon with gradient coloring.
|
|
7
|
+
* Used consistently across AI features for visual identification.
|
|
8
|
+
*/
|
|
9
|
+
export declare function AIIcon({ size, className }: AIIconProps): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
/**
|
|
11
|
+
* Small animated dot indicator for AI-modified elements.
|
|
12
|
+
* Shows a pulsing gradient dot.
|
|
13
|
+
*/
|
|
14
|
+
export declare function AIModifiedIndicator({ className }: {
|
|
15
|
+
className?: string;
|
|
16
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
export declare function ConfirmationDialog({ open, onAccept, onCancel, title, loading, body }: {
|
|
3
|
+
open: boolean;
|
|
4
|
+
onAccept: () => void;
|
|
5
|
+
onCancel: () => void;
|
|
6
|
+
loading?: boolean;
|
|
7
|
+
title: React.ReactNode;
|
|
8
|
+
body?: React.ReactNode;
|
|
9
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function UIReferenceView(): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const UIStyleGuide: () => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
/**
|
|
3
|
+
* @group Components
|
|
4
|
+
*/
|
|
5
|
+
export interface ErrorViewProps {
|
|
6
|
+
title?: string;
|
|
7
|
+
error: Error | React.ReactElement | string;
|
|
8
|
+
tooltip?: string;
|
|
9
|
+
onRetry?: () => void;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Generic error view. Displayed for example when an unexpected value comes
|
|
13
|
+
* from the driver in a collection view.
|
|
14
|
+
* @param title
|
|
15
|
+
* @param error
|
|
16
|
+
* @param tooltip
|
|
17
|
+
* @param onRetry
|
|
18
|
+
|
|
19
|
+
* @group Components
|
|
20
|
+
*/
|
|
21
|
+
export declare function ErrorView({ title, error, tooltip, onRetry }: ErrorViewProps): React.ReactElement;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function LanguageToggle(): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { ReactNode } from "react";
|
|
2
|
+
import { AuthControllerExtended } from "@rebasepro/types";
|
|
3
|
+
/**
|
|
4
|
+
* Props for the generic LoginView.
|
|
5
|
+
* Consumes {@link AuthControllerExtended} — works with any backend
|
|
6
|
+
* (Rebase custom backend, Firebase, Supabase, etc.)
|
|
7
|
+
*/
|
|
8
|
+
export interface LoginViewProps {
|
|
9
|
+
/**
|
|
10
|
+
* Auth controller — must implement AuthControllerExtended.
|
|
11
|
+
*/
|
|
12
|
+
authController: AuthControllerExtended;
|
|
13
|
+
/**
|
|
14
|
+
* Path to the logo displayed in the login screen
|
|
15
|
+
*/
|
|
16
|
+
logo?: string;
|
|
17
|
+
/**
|
|
18
|
+
* Enable the skip login button
|
|
19
|
+
*/
|
|
20
|
+
allowSkipLogin?: boolean;
|
|
21
|
+
/**
|
|
22
|
+
* Disable the login buttons
|
|
23
|
+
*/
|
|
24
|
+
disabled?: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* Prevent users from creating new accounts.
|
|
27
|
+
* If not set, checks `authController.capabilities.registration`.
|
|
28
|
+
*/
|
|
29
|
+
disableSignupScreen?: boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Display this component when no user is found
|
|
32
|
+
*/
|
|
33
|
+
noUserComponent?: ReactNode;
|
|
34
|
+
/**
|
|
35
|
+
* Display this component below the sign-in buttons
|
|
36
|
+
*/
|
|
37
|
+
additionalComponent?: ReactNode;
|
|
38
|
+
/**
|
|
39
|
+
* Error message when user is not allowed access
|
|
40
|
+
*/
|
|
41
|
+
notAllowedError?: string | Error;
|
|
42
|
+
/**
|
|
43
|
+
* Override: enable Google login button.
|
|
44
|
+
* If not set, checks `authController.capabilities.googleLogin`.
|
|
45
|
+
*/
|
|
46
|
+
googleEnabled?: boolean;
|
|
47
|
+
/**
|
|
48
|
+
* Google client ID for Google OAuth.
|
|
49
|
+
* Required when Google login is enabled via ID token flow.
|
|
50
|
+
*/
|
|
51
|
+
googleClientId?: string;
|
|
52
|
+
/**
|
|
53
|
+
* When true, shows bootstrap/setup UI (first-user creation).
|
|
54
|
+
* If not set, derived from `authController` if it exposes `needsSetup`.
|
|
55
|
+
*/
|
|
56
|
+
needsSetup?: boolean;
|
|
57
|
+
/**
|
|
58
|
+
* Whether registration is enabled.
|
|
59
|
+
* If not set, derived from `authController.capabilities.registration`.
|
|
60
|
+
*/
|
|
61
|
+
registrationEnabled?: boolean;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Generic login view component that works with any AuthControllerExtended.
|
|
65
|
+
* Feature-detects capabilities to show/hide login methods.
|
|
66
|
+
* @group Core
|
|
67
|
+
*/
|
|
68
|
+
export declare function LoginView({ logo, authController, noUserComponent, disableSignupScreen, disabled, notAllowedError, googleEnabled, googleClientId, needsSetup, registrationEnabled }: LoginViewProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function NotFoundPage(): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { RebaseAuthConfig } from "@rebasepro/types";
|
|
2
|
+
/**
|
|
3
|
+
* Declarative component to configure authentication in Rebase.
|
|
4
|
+
* Renders nothing — purely registers config into the RebaseRegistry.
|
|
5
|
+
*
|
|
6
|
+
* This is a framework-level component that lives in core since
|
|
7
|
+
* authentication is cross-cutting (CMS, Studio, any app area).
|
|
8
|
+
* @group Core
|
|
9
|
+
*/
|
|
10
|
+
export declare function RebaseAuth({ loginView }: RebaseAuthConfig): null;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
export interface UnsavedChangesDialogProps {
|
|
3
|
+
open: boolean;
|
|
4
|
+
body?: React.ReactNode;
|
|
5
|
+
title?: string;
|
|
6
|
+
handleOk: () => void;
|
|
7
|
+
handleCancel: () => void;
|
|
8
|
+
}
|
|
9
|
+
export declare function UnsavedChangesDialog({ open, handleOk, handleCancel, body, title }: UnsavedChangesDialogProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Represents a selectable user item with optional role information.
|
|
3
|
+
*/
|
|
4
|
+
export interface SelectableUser {
|
|
5
|
+
uid: string;
|
|
6
|
+
displayName?: string | null;
|
|
7
|
+
email?: string | null;
|
|
8
|
+
photoURL?: string | null;
|
|
9
|
+
roles?: string[];
|
|
10
|
+
}
|
|
11
|
+
export interface UserSelectPopoverProps {
|
|
12
|
+
/**
|
|
13
|
+
* The currently selected user, or `null` for "self"/default.
|
|
14
|
+
*/
|
|
15
|
+
selectedUser: SelectableUser | null;
|
|
16
|
+
/**
|
|
17
|
+
* Called when the user selection changes.
|
|
18
|
+
* `null` means "reset to self/default".
|
|
19
|
+
*/
|
|
20
|
+
onUserSelected: (user: SelectableUser | null) => void;
|
|
21
|
+
/**
|
|
22
|
+
* Full list of users to display.
|
|
23
|
+
* The component handles client-side search/filter internally.
|
|
24
|
+
*/
|
|
25
|
+
users: SelectableUser[];
|
|
26
|
+
/**
|
|
27
|
+
* Whether users are currently loading.
|
|
28
|
+
*/
|
|
29
|
+
loading?: boolean;
|
|
30
|
+
/**
|
|
31
|
+
* The current user (displayed as the "self" option at the top).
|
|
32
|
+
*/
|
|
33
|
+
currentUser?: SelectableUser | null;
|
|
34
|
+
/**
|
|
35
|
+
* Label to display when no user is selected.
|
|
36
|
+
* @default "Current user"
|
|
37
|
+
*/
|
|
38
|
+
defaultLabel?: string;
|
|
39
|
+
/**
|
|
40
|
+
* Maximum number of users to render at a time (for performance).
|
|
41
|
+
* Users can still be found via search.
|
|
42
|
+
* @default 100
|
|
43
|
+
*/
|
|
44
|
+
renderLimit?: number;
|
|
45
|
+
/**
|
|
46
|
+
* Additional class name for the trigger button.
|
|
47
|
+
*/
|
|
48
|
+
className?: string;
|
|
49
|
+
/**
|
|
50
|
+
* Size variant.
|
|
51
|
+
* @default "small"
|
|
52
|
+
*/
|
|
53
|
+
size?: "small" | "medium";
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* A reusable user picker popover with search support.
|
|
57
|
+
* Designed to handle very large user lists (100k+) by filtering
|
|
58
|
+
* client-side and limiting the rendered set.
|
|
59
|
+
*
|
|
60
|
+
* @group Components
|
|
61
|
+
*/
|
|
62
|
+
export declare function UserSelectPopover({ selectedUser, onUserSelected, users, loading, currentUser, defaultLabel, renderLimit, className, size }: UserSelectPopoverProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function UserSettingsView(): import("react/jsx-runtime").JSX.Element | null;
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import type { Property } from "@rebasepro/types";
|
|
2
|
+
import { CollectionSize, SelectedCellProps } from "@rebasepro/types";
|
|
3
|
+
export type EntityCollectionTableController<M extends Record<string, any>> = {
|
|
4
|
+
/**
|
|
5
|
+
* This cell is displayed as selected
|
|
6
|
+
*/
|
|
7
|
+
selectedCell?: SelectedCellProps<any>;
|
|
8
|
+
/**
|
|
9
|
+
* Store used to sync selection state across cells efficiently.
|
|
10
|
+
*/
|
|
11
|
+
selectionStore?: any;
|
|
12
|
+
/**
|
|
13
|
+
* Select a table cell
|
|
14
|
+
* @param cell
|
|
15
|
+
*/
|
|
16
|
+
select: (cell?: SelectedCellProps<M>) => void;
|
|
17
|
+
/**
|
|
18
|
+
* The cell that is displayed as a popup view.
|
|
19
|
+
* @param cell
|
|
20
|
+
*/
|
|
21
|
+
setPopupCell?: (cell?: SelectedCellProps<M>) => void;
|
|
22
|
+
/**
|
|
23
|
+
* Callback used when the value of a cell has changed.
|
|
24
|
+
* @param params
|
|
25
|
+
*/
|
|
26
|
+
onValueChange?: (params: OnCellValueChangeParams<any, M>) => void;
|
|
27
|
+
/**
|
|
28
|
+
* Size of the elements in the collection
|
|
29
|
+
*/
|
|
30
|
+
size: CollectionSize;
|
|
31
|
+
};
|
|
32
|
+
/**
|
|
33
|
+
* Props passed in a callback when the content of a cell in a table has been edited
|
|
34
|
+
* @group Collection components
|
|
35
|
+
*/
|
|
36
|
+
export interface OnCellValueChangeParams<T = any, D = any> {
|
|
37
|
+
value: T;
|
|
38
|
+
propertyKey: string;
|
|
39
|
+
data?: D;
|
|
40
|
+
onValueUpdated: () => void;
|
|
41
|
+
setError: (e: Error | undefined) => void;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* @group Collection components
|
|
45
|
+
*/
|
|
46
|
+
export type UniqueFieldValidator = (props: {
|
|
47
|
+
name: string;
|
|
48
|
+
value: any;
|
|
49
|
+
property: Property;
|
|
50
|
+
entityId?: string | number;
|
|
51
|
+
}) => Promise<boolean>;
|
|
52
|
+
/**
|
|
53
|
+
* Callback when a cell has changed in a table
|
|
54
|
+
* @group Collection components
|
|
55
|
+
*/
|
|
56
|
+
export type OnCellValueChange<T, M extends Record<string, any>> = (params: OnCellValueChangeParams<T, M>) => Promise<void> | void;
|
|
57
|
+
/**
|
|
58
|
+
* @group Collection components
|
|
59
|
+
*/
|
|
60
|
+
export type OnColumnResizeParams = {
|
|
61
|
+
width: number;
|
|
62
|
+
key: string;
|
|
63
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { EntityCollection, Property } from "@rebasepro/types";
|
|
2
|
+
export type PropertyColumnConfig = {
|
|
3
|
+
key: string;
|
|
4
|
+
disabled: boolean;
|
|
5
|
+
};
|
|
6
|
+
export declare function getSubcollectionColumnId(collection: EntityCollection<any>): string;
|
|
7
|
+
export declare function useColumnIds<M extends Record<string, any>>(collection: EntityCollection<M>, includeSubcollections: boolean): PropertyColumnConfig[];
|
|
8
|
+
export declare function getColumnKeysForProperty(property: Property, key: string, disabled?: boolean): PropertyColumnConfig[];
|
|
9
|
+
export declare function getFormFieldKeys(collection: EntityCollection): string[];
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { EntityCollection } from "@rebasepro/types";
|
|
2
|
+
import { Entity, EntityTableController, FilterValues, User } from "@rebasepro/types";
|
|
3
|
+
import { ScrollRestorationController } from "./useScrollRestoration";
|
|
4
|
+
export declare const DEFAULT_PAGE_SIZE = 50;
|
|
5
|
+
export type DataTableControllerProps<M extends Record<string, any> = any> = {
|
|
6
|
+
/**
|
|
7
|
+
* Full path where the data of this table is located
|
|
8
|
+
*/
|
|
9
|
+
path: string;
|
|
10
|
+
/**
|
|
11
|
+
* The collection that is represented by this config.
|
|
12
|
+
*/
|
|
13
|
+
collection: EntityCollection<M>;
|
|
14
|
+
/**
|
|
15
|
+
* List of entities that will be displayed on top, no matter the ordering.
|
|
16
|
+
* This is used for reference fields selection
|
|
17
|
+
*/
|
|
18
|
+
entitiesDisplayedFirst?: Entity<M>[];
|
|
19
|
+
lastDeleteTimestamp?: number;
|
|
20
|
+
/**
|
|
21
|
+
* Force filter to be applied to the table.
|
|
22
|
+
*/
|
|
23
|
+
forceFilter?: FilterValues<string>;
|
|
24
|
+
scrollRestoration?: ScrollRestorationController;
|
|
25
|
+
/**
|
|
26
|
+
* When set to true the filters and sort will be updated in the URL
|
|
27
|
+
*/
|
|
28
|
+
updateUrl?: boolean;
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* Use this hook to build a controller for the {@link EntityCollectionTable}.
|
|
32
|
+
* This controller is bound to data in a path in your specified driver.
|
|
33
|
+
*
|
|
34
|
+
* Note that you can build your own hook returning a {@link EntityTableController}
|
|
35
|
+
* if you would like to display different data.
|
|
36
|
+
*
|
|
37
|
+
* @param path
|
|
38
|
+
* @param collection
|
|
39
|
+
* @param scrollRestoration
|
|
40
|
+
* @param entitiesDisplayedFirst
|
|
41
|
+
* @param lastDeleteTimestamp
|
|
42
|
+
* @param forceFilterFromProps
|
|
43
|
+
* @param updateUrl
|
|
44
|
+
*/
|
|
45
|
+
export declare function useDataTableController<M extends Record<string, any> = any, USER extends User = User>({ path, collection, scrollRestoration, entitiesDisplayedFirst, lastDeleteTimestamp: _lastDeleteTimestamp, forceFilter: forceFilterFromProps, updateUrl }: DataTableControllerProps<M>): EntityTableController<M>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Hack to prevent data updates for incomplete callbacks from Firestore
|
|
3
|
+
* triggers.
|
|
4
|
+
* If any deps change, the update is immediate
|
|
5
|
+
* @param data
|
|
6
|
+
* @param deps
|
|
7
|
+
* @param timeoutMs
|
|
8
|
+
*/
|
|
9
|
+
export declare function useDebouncedData<T>(data: T[], deps: any, timeoutMs?: number): T[];
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Entity, FilterValues } from "@rebasepro/types";
|
|
2
|
+
export type ScrollRestorationController = {
|
|
3
|
+
getCollectionScroll: (path: string, filters?: FilterValues<any>) => {
|
|
4
|
+
scrollOffset: number;
|
|
5
|
+
data: Entity<any>[];
|
|
6
|
+
} | undefined;
|
|
7
|
+
updateCollectionScroll: (props: {
|
|
8
|
+
path: string;
|
|
9
|
+
scrollOffset: number;
|
|
10
|
+
filters?: FilterValues<any>;
|
|
11
|
+
data: Entity<any>[];
|
|
12
|
+
}) => void;
|
|
13
|
+
};
|
|
14
|
+
export declare function useScrollRestoration(): ScrollRestorationController;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export type { ErrorViewProps } from "./ErrorView";
|
|
2
|
+
export { ErrorView } from "./ErrorView";
|
|
3
|
+
export * from "./common";
|
|
4
|
+
export * from "./NotFoundPage";
|
|
5
|
+
export * from "./ConfirmationDialog";
|
|
6
|
+
export * from "./ErrorTooltip";
|
|
7
|
+
export * from "./RebaseLogo";
|
|
8
|
+
export * from "./AIIcon";
|
|
9
|
+
export * from "./Debug/UIStyleGuide";
|
|
10
|
+
export * from "./Debug/UIReferenceView";
|
|
11
|
+
export * from "./UserSettingsView";
|
|
12
|
+
export * from "./LanguageToggle";
|
|
13
|
+
export * from "./UserSelectPopover";
|
|
14
|
+
export * from "./UserDisplay";
|
|
15
|
+
export * from "./LoginView";
|
|
16
|
+
export * from "./RebaseAuth";
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { EffectiveRoleController } from "@rebasepro/types";
|
|
2
|
+
import React from "react";
|
|
3
|
+
export declare const EffectiveRoleControllerContext: React.Context<EffectiveRoleController>;
|
|
4
|
+
export declare const EffectiveRoleControllerProvider: React.Provider<EffectiveRoleController>;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
/**
|
|
3
|
+
* Context that exposes the full RebaseClient instance (from `@rebasepro/client`).
|
|
4
|
+
* Used by the JS Editor to give developer scripts access to `client.data`, `client.auth`, etc.
|
|
5
|
+
*/
|
|
6
|
+
export declare const RebaseClientInstanceContext: React.Context<any>;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export * from "./SnackbarProvider";
|
|
2
|
+
export * from "./ModeController";
|
|
3
|
+
export * from "./AdminModeController";
|
|
4
|
+
export * from "./EffectiveRoleController";
|
|
5
|
+
export * from "./AuthControllerContext";
|
|
6
|
+
export * from "./DataDriverContext";
|
|
7
|
+
export * from "./AnalyticsContext";
|
|
8
|
+
export * from "./StorageSourceContext";
|
|
9
|
+
export * from "./UserConfigurationPersistenceContext";
|
|
10
|
+
export * from "./DialogsProvider";
|
|
11
|
+
export * from "./InternalUserManagementContext";
|
|
12
|
+
export * from "./RebaseClientInstanceContext";
|
|
13
|
+
export * from "./CustomizationControllerContext";
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { RebasePlugin, RebaseContext } from "@rebasepro/types";
|
|
2
|
+
/**
|
|
3
|
+
* Render-less component that manages plugin lifecycle hooks.
|
|
4
|
+
*
|
|
5
|
+
* - Calls `lifecycle.onMount(context)` when plugins mount.
|
|
6
|
+
* - Calls `lifecycle.onUnmount()` when plugins unmount.
|
|
7
|
+
* - Subscribes to auth state changes and calls `lifecycle.onAuthStateChange`.
|
|
8
|
+
*
|
|
9
|
+
* Mount this component inside the Rebase tree, below PluginProviderStack,
|
|
10
|
+
* so that the RebaseContext is fully available.
|
|
11
|
+
*
|
|
12
|
+
* @internal
|
|
13
|
+
*/
|
|
14
|
+
export declare function PluginLifecycleManager({ plugins, context }: {
|
|
15
|
+
plugins: RebasePlugin[];
|
|
16
|
+
context: RebaseContext;
|
|
17
|
+
}): null;
|