@firecms/core 3.0.0-3.0.0-beta.4.pre.1.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 +174 -0
- package/dist/components/ArrayContainer.d.ts +40 -0
- package/dist/components/CircularProgressCenter.d.ts +11 -0
- package/dist/components/DeleteConfirmationDialog.d.ts +9 -0
- package/dist/components/DeleteEntityDialog.d.ts +12 -0
- package/dist/components/EntityCollectionTable/EntityCollectionRowActions.d.ts +31 -0
- package/dist/components/EntityCollectionTable/EntityCollectionTable.d.ts +27 -0
- package/dist/components/EntityCollectionTable/EntityCollectionTableProps.d.ts +99 -0
- package/dist/components/EntityCollectionTable/PropertyTableCell.d.ts +18 -0
- package/dist/components/EntityCollectionTable/column_utils.d.ts +16 -0
- package/dist/components/EntityCollectionTable/fields/TableReferenceField.d.ts +19 -0
- package/dist/components/EntityCollectionTable/fields/TableStorageUpload.d.ts +33 -0
- package/dist/components/EntityCollectionTable/index.d.ts +6 -0
- package/dist/components/EntityCollectionTable/internal/CollectionTableToolbar.d.ts +18 -0
- package/dist/components/EntityCollectionTable/internal/EntityTableCell.d.ts +26 -0
- package/dist/components/EntityCollectionTable/internal/EntityTableCellActions.d.ts +9 -0
- package/dist/components/EntityCollectionTable/internal/common.d.ts +4 -0
- package/dist/components/EntityCollectionTable/internal/default_entity_actions.d.ts +6 -0
- package/dist/components/EntityCollectionTable/internal/popup_field/ElementResizeListener.d.ts +5 -0
- package/dist/components/EntityCollectionTable/internal/popup_field/PopupFormField.d.ts +23 -0
- package/dist/components/EntityCollectionTable/internal/popup_field/useDraggable.d.ts +13 -0
- package/dist/components/EntityCollectionTable/internal/popup_field/useWindowSize.d.ts +6 -0
- package/dist/components/EntityCollectionView/EntityCollectionView.d.ts +36 -0
- package/dist/components/EntityCollectionView/EntityCollectionViewActions.d.ts +14 -0
- package/dist/components/EntityCollectionView/useSelectionController.d.ts +2 -0
- package/dist/components/EntityPreview.d.ts +29 -0
- package/dist/components/EntityView.d.ts +11 -0
- package/dist/components/ErrorBoundary.d.ts +11 -0
- package/dist/components/ErrorTooltip.d.ts +2 -0
- package/dist/components/ErrorView.d.ts +19 -0
- package/dist/components/FieldCaption.d.ts +4 -0
- package/dist/components/FireCMSAppBar.d.ts +26 -0
- package/dist/components/FireCMSLogo.d.ts +7 -0
- package/dist/components/HomePage/DefaultHomePage.d.ts +21 -0
- package/dist/components/HomePage/FavouritesView.d.ts +3 -0
- package/dist/components/HomePage/NavigationCard.d.ts +8 -0
- package/dist/components/HomePage/NavigationCardBinding.d.ts +17 -0
- package/dist/components/HomePage/NavigationGroup.d.ts +4 -0
- package/dist/components/HomePage/SmallNavigationCard.d.ts +6 -0
- package/dist/components/HomePage/index.d.ts +5 -0
- package/dist/components/NotFoundPage.d.ts +1 -0
- package/dist/components/PropertyConfigBadge.d.ts +4 -0
- package/dist/components/PropertyIdCopyTooltipContent.d.ts +3 -0
- package/dist/components/ReferenceTable/ReferenceSelectionTable.d.ts +58 -0
- package/dist/components/ReferenceWidget.d.ts +28 -0
- package/dist/components/SearchIconsView.d.ts +5 -0
- package/dist/components/SelectableTable/SelectableTable.d.ts +75 -0
- package/dist/components/SelectableTable/SelectableTableContext.d.ts +4 -0
- package/dist/components/SelectableTable/filters/BooleanFilterField.d.ts +9 -0
- package/dist/components/SelectableTable/filters/DateTimeFilterField.d.ts +11 -0
- package/dist/components/SelectableTable/filters/ReferenceFilterField.d.ts +14 -0
- package/dist/components/SelectableTable/filters/StringNumberFilterField.d.ts +13 -0
- package/dist/components/VirtualTable/VirtualTable.d.ts +11 -0
- package/dist/components/VirtualTable/VirtualTableCell.d.ts +14 -0
- package/dist/components/VirtualTable/VirtualTableHeader.d.ts +27 -0
- package/dist/components/VirtualTable/VirtualTableHeaderRow.d.ts +2 -0
- package/dist/components/VirtualTable/VirtualTableProps.d.ts +214 -0
- package/dist/components/VirtualTable/VirtualTableRow.d.ts +3 -0
- package/dist/components/VirtualTable/common.d.ts +2 -0
- package/dist/components/VirtualTable/fields/VirtualTableDateField.d.ts +11 -0
- package/dist/components/VirtualTable/fields/VirtualTableInput.d.ts +8 -0
- package/dist/components/VirtualTable/fields/VirtualTableNumberInput.d.ts +8 -0
- package/dist/components/VirtualTable/fields/VirtualTableSelect.d.ts +15 -0
- package/dist/components/VirtualTable/fields/VirtualTableSwitch.d.ts +7 -0
- package/dist/components/VirtualTable/index.d.ts +2 -0
- package/dist/components/VirtualTable/types.d.ts +34 -0
- package/dist/components/common/index.d.ts +5 -0
- package/dist/components/common/types.d.ts +60 -0
- package/dist/components/common/useColumnsIds.d.ts +4 -0
- package/dist/components/common/useDataSourceEntityCollectionTableController.d.ts +32 -0
- package/dist/components/common/useDebouncedData.d.ts +9 -0
- package/dist/components/common/useTableSearchHelper.d.ts +12 -0
- package/dist/components/index.d.ts +25 -0
- package/dist/contexts/AnalyticsContext.d.ts +3 -0
- package/dist/contexts/AuthControllerContext.d.ts +3 -0
- package/dist/contexts/CustomizationControllerContext.d.ts +3 -0
- package/dist/contexts/DataSourceContext.d.ts +3 -0
- package/dist/contexts/DialogsProvider.d.ts +4 -0
- package/dist/contexts/ModeController.d.ts +4 -0
- package/dist/contexts/NavigationContext.d.ts +3 -0
- package/dist/contexts/SideDialogsControllerContext.d.ts +3 -0
- package/dist/contexts/SideEntityControllerContext.d.ts +3 -0
- package/dist/contexts/SnackbarProvider.d.ts +2 -0
- package/dist/contexts/StorageSourceContext.d.ts +3 -0
- package/dist/contexts/UserConfigurationPersistenceContext.d.ts +3 -0
- package/dist/contexts/index.d.ts +3 -0
- package/dist/core/Drawer.d.ts +23 -0
- package/dist/core/EntityEditView.d.ts +22 -0
- package/dist/core/EntitySidePanel.d.ts +10 -0
- package/dist/core/FireCMS.d.ts +14 -0
- package/dist/core/NavigationRoutes.d.ts +21 -0
- package/dist/core/Scaffold.d.ts +55 -0
- package/dist/core/SideDialogs.d.ts +23 -0
- package/dist/core/SideEntityView.d.ts +7 -0
- package/dist/core/field_configs.d.ts +7 -0
- package/dist/core/index.d.ts +8 -0
- package/dist/form/EntityForm.d.ts +77 -0
- package/dist/form/PropertyFieldBinding.d.ts +30 -0
- package/dist/form/components/CustomIdField.d.ts +10 -0
- package/dist/form/components/ErrorFocus.d.ts +4 -0
- package/dist/form/components/FieldHelperText.d.ts +12 -0
- package/dist/form/components/FormikArrayContainer.d.ts +18 -0
- package/dist/form/components/LabelWithIcon.d.ts +14 -0
- package/dist/form/components/StorageItemPreview.d.ts +14 -0
- package/dist/form/components/StorageUploadProgress.d.ts +10 -0
- package/dist/form/components/index.d.ts +3 -0
- package/dist/form/field_bindings/ArrayCustomShapedFieldBinding.d.ts +9 -0
- package/dist/form/field_bindings/ArrayOfReferencesFieldBinding.d.ts +11 -0
- package/dist/form/field_bindings/BlockFieldBinding.d.ts +10 -0
- package/dist/form/field_bindings/DateTimeFieldBinding.d.ts +11 -0
- package/dist/form/field_bindings/KeyValueFieldBinding.d.ts +7 -0
- package/dist/form/field_bindings/MapFieldBinding.d.ts +9 -0
- package/dist/form/field_bindings/MarkdownFieldBinding.d.ts +9 -0
- package/dist/form/field_bindings/MultiSelectBinding.d.ts +9 -0
- package/dist/form/field_bindings/ReadOnlyFieldBinding.d.ts +10 -0
- package/dist/form/field_bindings/ReferenceFieldBinding.d.ts +9 -0
- package/dist/form/field_bindings/RepeatFieldBinding.d.ts +10 -0
- package/dist/form/field_bindings/SelectFieldBinding.d.ts +12 -0
- package/dist/form/field_bindings/StorageUploadFieldBinding.d.ts +29 -0
- package/dist/form/field_bindings/SwitchFieldBinding.d.ts +12 -0
- package/dist/form/field_bindings/TextFieldBinding.d.ts +12 -0
- package/dist/form/index.d.ts +21 -0
- package/dist/form/useClearRestoreValue.d.ts +13 -0
- package/dist/form/validation.d.ts +25 -0
- package/dist/hooks/data/delete.d.ts +37 -0
- package/dist/hooks/data/save.d.ts +42 -0
- package/dist/hooks/data/useCollectionFetch.d.ts +50 -0
- package/dist/hooks/data/useDataOrder.d.ts +12 -0
- package/dist/hooks/data/useDataSource.d.ts +6 -0
- package/dist/hooks/data/useEntityFetch.d.ts +28 -0
- package/dist/hooks/index.d.ts +22 -0
- package/dist/hooks/useAnalyticsController.d.ts +5 -0
- package/dist/hooks/useAuthController.d.ts +11 -0
- package/dist/hooks/useBrowserTitleAndIcon.d.ts +6 -0
- package/dist/hooks/useBuildLocalConfigurationPersistence.d.ts +2 -0
- package/dist/hooks/useBuildModeController.d.ts +6 -0
- package/dist/hooks/useBuildNavigationController.d.ts +24 -0
- package/dist/hooks/useClipboard.d.ts +57 -0
- package/dist/hooks/useCustomizationController.d.ts +11 -0
- package/dist/hooks/useDialogsController.d.ts +11 -0
- package/dist/hooks/useFireCMSContext.d.ts +11 -0
- package/dist/hooks/useLargeLayout.d.ts +1 -0
- package/dist/hooks/useModeController.d.ts +20 -0
- package/dist/hooks/useNavigationController.d.ts +9 -0
- package/dist/hooks/useProjectLog.d.ts +8 -0
- package/dist/hooks/useReferenceDialog.d.ts +18 -0
- package/dist/hooks/useResolvedNavigationFrom.d.ts +72 -0
- package/dist/hooks/useSideDialogsController.d.ts +18 -0
- package/dist/hooks/useSideEntityController.d.ts +12 -0
- package/dist/hooks/useSnackbarController.d.ts +42 -0
- package/dist/hooks/useStorageSource.d.ts +6 -0
- package/dist/hooks/useUserConfigurationPersistence.d.ts +8 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.es.js +16602 -0
- package/dist/index.es.js.map +1 -0
- package/dist/index.umd.js +589 -0
- package/dist/index.umd.js.map +1 -0
- package/dist/internal/common.d.ts +3 -0
- package/dist/internal/useBuildCustomizationController.d.ts +2 -0
- package/dist/internal/useBuildDataSource.d.ts +26 -0
- package/dist/internal/useBuildSideDialogsController.d.ts +2 -0
- package/dist/internal/useBuildSideEntityController.d.ts +4 -0
- package/dist/internal/useLocaleConfig.d.ts +1 -0
- package/dist/internal/useRestoreScroll.d.ts +6 -0
- package/dist/internal/useUnsavedChangesDialog.d.ts +14 -0
- package/dist/preview/PropertyPreview.d.ts +7 -0
- package/dist/preview/PropertyPreviewProps.d.ts +43 -0
- package/dist/preview/components/ArrayEnumPreview.d.ts +11 -0
- package/dist/preview/components/AsyncPreviewComponent.d.ts +11 -0
- package/dist/preview/components/BooleanPreview.d.ts +11 -0
- package/dist/preview/components/DatePreview.d.ts +7 -0
- package/dist/preview/components/EmptyValue.d.ts +4 -0
- package/dist/preview/components/EnumValuesChip.d.ts +13 -0
- package/dist/preview/components/ImagePreview.d.ts +12 -0
- package/dist/preview/components/ReferencePreview.d.ts +16 -0
- package/dist/preview/components/StorageThumbnail.d.ts +13 -0
- package/dist/preview/components/UrlComponentPreview.d.ts +12 -0
- package/dist/preview/index.d.ts +23 -0
- package/dist/preview/property_previews/ArrayOfMapsPreview.d.ts +5 -0
- package/dist/preview/property_previews/ArrayOfReferencesPreview.d.ts +5 -0
- package/dist/preview/property_previews/ArrayOfStorageComponentsPreview.d.ts +5 -0
- package/dist/preview/property_previews/ArrayOfStringsPreview.d.ts +5 -0
- package/dist/preview/property_previews/ArrayOneOfPreview.d.ts +5 -0
- package/dist/preview/property_previews/ArrayPropertyEnumPreview.d.ts +5 -0
- package/dist/preview/property_previews/ArrayPropertyPreview.d.ts +5 -0
- package/dist/preview/property_previews/MapPropertyPreview.d.ts +8 -0
- package/dist/preview/property_previews/NumberPropertyPreview.d.ts +6 -0
- package/dist/preview/property_previews/SkeletonPropertyComponent.d.ts +14 -0
- package/dist/preview/property_previews/StringPropertyPreview.d.ts +6 -0
- package/dist/preview/util.d.ts +7 -0
- package/dist/types/analytics.d.ts +1 -0
- package/dist/types/analytics_controller.d.ts +7 -0
- package/dist/types/appcheck.d.ts +26 -0
- package/dist/types/auth.d.ts +47 -0
- package/dist/types/collections.d.ts +467 -0
- package/dist/types/customization_controller.d.ts +47 -0
- package/dist/types/datasource.d.ts +262 -0
- package/dist/types/dialogs_controller.d.ts +32 -0
- package/dist/types/entities.d.ts +58 -0
- package/dist/types/entity_actions.d.ts +35 -0
- package/dist/types/entity_callbacks.d.ts +185 -0
- package/dist/types/entity_link_builder.d.ts +7 -0
- package/dist/types/entity_overrides.d.ts +6 -0
- package/dist/types/export_import.d.ts +21 -0
- package/dist/types/fields.d.ts +180 -0
- package/dist/types/firecms.d.ts +132 -0
- package/dist/types/firecms_context.d.ts +70 -0
- package/dist/types/index.d.ts +29 -0
- package/dist/types/local_config_persistence.d.ts +21 -0
- package/dist/types/locales.d.ts +4 -0
- package/dist/types/modify_collections.d.ts +5 -0
- package/dist/types/navigation.d.ts +179 -0
- package/dist/types/permissions.d.ts +67 -0
- package/dist/types/plugins.d.ts +171 -0
- package/dist/types/properties.d.ts +681 -0
- package/dist/types/property_config.d.ts +42 -0
- package/dist/types/resolved_entities.d.ts +98 -0
- package/dist/types/side_dialogs_controller.d.ts +57 -0
- package/dist/types/side_entity_controller.d.ts +83 -0
- package/dist/types/storage.d.ts +82 -0
- package/dist/types/user.d.ts +36 -0
- package/dist/util/arrays.d.ts +1 -0
- package/dist/util/builders.d.ts +64 -0
- package/dist/util/collections.d.ts +11 -0
- package/dist/util/common.d.ts +2 -0
- package/dist/util/dates.d.ts +1 -0
- package/dist/util/entities.d.ts +28 -0
- package/dist/util/enums.d.ts +7 -0
- package/dist/util/flatten_object.d.ts +3 -0
- package/dist/util/hash.d.ts +1 -0
- package/dist/util/icon_list.d.ts +1 -0
- package/dist/util/icon_synonyms.d.ts +1950 -0
- package/dist/util/icons.d.ts +13 -0
- package/dist/util/index.d.ts +23 -0
- package/dist/util/join_collections.d.ts +9 -0
- package/dist/util/make_properties_editable.d.ts +3 -0
- package/dist/util/navigation_from_path.d.ts +24 -0
- package/dist/util/navigation_utils.d.ts +20 -0
- package/dist/util/objects.d.ts +10 -0
- package/dist/util/os.d.ts +2 -0
- package/dist/util/parent_references_from_path.d.ts +6 -0
- package/dist/util/paths.d.ts +14 -0
- package/dist/util/permissions.d.ts +5 -0
- package/dist/util/plurals.d.ts +18 -0
- package/dist/util/property_utils.d.ts +23 -0
- package/dist/util/references.d.ts +4 -0
- package/dist/util/regexp.d.ts +7 -0
- package/dist/util/resolutions.d.ts +64 -0
- package/dist/util/storage.d.ts +3 -0
- package/dist/util/strings.d.ts +6 -0
- package/dist/util/useDebouncedCallback.d.ts +1 -0
- package/dist/util/useStorageUploadController.d.ts +36 -0
- package/dist/util/useTraceUpdate.d.ts +1 -0
- package/package.json +122 -0
- package/src/components/ArrayContainer.tsx +334 -0
- package/src/components/CircularProgressCenter.tsx +26 -0
- package/src/components/DeleteConfirmationDialog.tsx +47 -0
- package/src/components/DeleteEntityDialog.tsx +213 -0
- package/src/components/EntityCollectionTable/EntityCollectionRowActions.tsx +170 -0
- package/src/components/EntityCollectionTable/EntityCollectionTable.tsx +325 -0
- package/src/components/EntityCollectionTable/EntityCollectionTableProps.tsx +145 -0
- package/src/components/EntityCollectionTable/PropertyTableCell.tsx +461 -0
- package/src/components/EntityCollectionTable/column_utils.tsx +74 -0
- package/src/components/EntityCollectionTable/fields/TableReferenceField.tsx +155 -0
- package/src/components/EntityCollectionTable/fields/TableStorageUpload.tsx +313 -0
- package/src/components/EntityCollectionTable/index.tsx +12 -0
- package/src/components/EntityCollectionTable/internal/CollectionTableToolbar.tsx +116 -0
- package/src/components/EntityCollectionTable/internal/EntityTableCell.tsx +257 -0
- package/src/components/EntityCollectionTable/internal/EntityTableCellActions.tsx +70 -0
- package/src/components/EntityCollectionTable/internal/common.tsx +70 -0
- package/src/components/EntityCollectionTable/internal/default_entity_actions.tsx +126 -0
- package/src/components/EntityCollectionTable/internal/popup_field/ElementResizeListener.tsx +59 -0
- package/src/components/EntityCollectionTable/internal/popup_field/PopupFormField.tsx +408 -0
- package/src/components/EntityCollectionTable/internal/popup_field/useDraggable.tsx +97 -0
- package/src/components/EntityCollectionTable/internal/popup_field/useWindowSize.tsx +20 -0
- package/src/components/EntityCollectionView/EntityCollectionView.tsx +804 -0
- package/src/components/EntityCollectionView/EntityCollectionViewActions.tsx +132 -0
- package/src/components/EntityCollectionView/useSelectionController.tsx +30 -0
- package/src/components/EntityPreview.tsx +218 -0
- package/src/components/EntityView.tsx +84 -0
- package/src/components/ErrorBoundary.tsx +40 -0
- package/src/components/ErrorTooltip.tsx +11 -0
- package/src/components/ErrorView.tsx +52 -0
- package/src/components/FieldCaption.tsx +13 -0
- package/src/components/FireCMSAppBar.tsx +165 -0
- package/src/components/FireCMSLogo.tsx +73 -0
- package/src/components/HomePage/DefaultHomePage.tsx +214 -0
- package/src/components/HomePage/FavouritesView.tsx +64 -0
- package/src/components/HomePage/NavigationCard.tsx +69 -0
- package/src/components/HomePage/NavigationCardBinding.tsx +116 -0
- package/src/components/HomePage/NavigationGroup.tsx +39 -0
- package/src/components/HomePage/SmallNavigationCard.tsx +45 -0
- package/src/components/HomePage/index.tsx +5 -0
- package/src/components/NotFoundPage.tsx +25 -0
- package/src/components/PropertyConfigBadge.tsx +17 -0
- package/src/components/PropertyIdCopyTooltipContent.tsx +28 -0
- package/src/components/ReferenceTable/ReferenceSelectionTable.tsx +379 -0
- package/src/components/ReferenceWidget.tsx +145 -0
- package/src/components/SearchIconsView.tsx +75 -0
- package/src/components/SelectableTable/SelectableTable.tsx +329 -0
- package/src/components/SelectableTable/SelectableTableContext.tsx +6 -0
- package/src/components/SelectableTable/filters/BooleanFilterField.tsx +49 -0
- package/src/components/SelectableTable/filters/DateTimeFilterField.tsx +109 -0
- package/src/components/SelectableTable/filters/ReferenceFilterField.tsx +179 -0
- package/src/components/SelectableTable/filters/StringNumberFilterField.tsx +158 -0
- package/src/components/VirtualTable/VirtualTable.tsx +405 -0
- package/src/components/VirtualTable/VirtualTableCell.tsx +50 -0
- package/src/components/VirtualTable/VirtualTableHeader.tsx +266 -0
- package/src/components/VirtualTable/VirtualTableHeaderRow.tsx +131 -0
- package/src/components/VirtualTable/VirtualTableProps.tsx +269 -0
- package/src/components/VirtualTable/VirtualTableRow.tsx +53 -0
- package/src/components/VirtualTable/common.tsx +18 -0
- package/src/components/VirtualTable/fields/VirtualTableDateField.tsx +37 -0
- package/src/components/VirtualTable/fields/VirtualTableInput.tsx +91 -0
- package/src/components/VirtualTable/fields/VirtualTableNumberInput.tsx +82 -0
- package/src/components/VirtualTable/fields/VirtualTableSelect.tsx +130 -0
- package/src/components/VirtualTable/fields/VirtualTableSwitch.tsx +32 -0
- package/src/components/VirtualTable/index.tsx +2 -0
- package/src/components/VirtualTable/types.tsx +44 -0
- package/src/components/common/index.ts +5 -0
- package/src/components/common/types.tsx +63 -0
- package/src/components/common/useColumnsIds.tsx +100 -0
- package/src/components/common/useDataSourceEntityCollectionTableController.tsx +225 -0
- package/src/components/common/useDebouncedData.ts +49 -0
- package/src/components/common/useTableSearchHelper.ts +47 -0
- package/src/components/index.tsx +36 -0
- package/src/contexts/AnalyticsContext.tsx +4 -0
- package/src/contexts/AuthControllerContext.tsx +4 -0
- package/src/contexts/CustomizationControllerContext.tsx +4 -0
- package/src/contexts/DataSourceContext.tsx +4 -0
- package/src/contexts/DialogsProvider.tsx +52 -0
- package/src/contexts/ModeController.tsx +13 -0
- package/src/contexts/NavigationContext.tsx +4 -0
- package/src/contexts/SideDialogsControllerContext.tsx +4 -0
- package/src/contexts/SideEntityControllerContext.tsx +4 -0
- package/src/contexts/SnackbarProvider.tsx +12 -0
- package/src/contexts/StorageSourceContext.tsx +4 -0
- package/src/contexts/UserConfigurationPersistenceContext.tsx +4 -0
- package/src/contexts/index.ts +3 -0
- package/src/core/Drawer.tsx +191 -0
- package/src/core/EntityEditView.tsx +561 -0
- package/src/core/EntitySidePanel.tsx +91 -0
- package/src/core/FireCMS.tsx +198 -0
- package/src/core/NavigationRoutes.tsx +127 -0
- package/src/core/Scaffold.tsx +281 -0
- package/src/core/SideDialogs.tsx +156 -0
- package/src/core/SideEntityView.tsx +38 -0
- package/src/core/field_configs.tsx +400 -0
- package/src/core/index.tsx +12 -0
- package/src/form/EntityForm.tsx +728 -0
- package/src/form/PropertyFieldBinding.tsx +306 -0
- package/src/form/components/CustomIdField.tsx +139 -0
- package/src/form/components/ErrorFocus.tsx +51 -0
- package/src/form/components/FieldHelperText.tsx +58 -0
- package/src/form/components/FormikArrayContainer.tsx +44 -0
- package/src/form/components/LabelWithIcon.tsx +33 -0
- package/src/form/components/StorageItemPreview.tsx +68 -0
- package/src/form/components/StorageUploadProgress.tsx +105 -0
- package/src/form/components/index.tsx +3 -0
- package/src/form/field_bindings/ArrayCustomShapedFieldBinding.tsx +86 -0
- package/src/form/field_bindings/ArrayOfReferencesFieldBinding.tsx +149 -0
- package/src/form/field_bindings/BlockFieldBinding.tsx +245 -0
- package/src/form/field_bindings/DateTimeFieldBinding.tsx +67 -0
- package/src/form/field_bindings/KeyValueFieldBinding.tsx +558 -0
- package/src/form/field_bindings/MapFieldBinding.tsx +138 -0
- package/src/form/field_bindings/MarkdownFieldBinding.tsx +695 -0
- package/src/form/field_bindings/MultiSelectBinding.tsx +114 -0
- package/src/form/field_bindings/ReadOnlyFieldBinding.tsx +69 -0
- package/src/form/field_bindings/ReferenceFieldBinding.tsx +123 -0
- package/src/form/field_bindings/RepeatFieldBinding.tsx +105 -0
- package/src/form/field_bindings/SelectFieldBinding.tsx +99 -0
- package/src/form/field_bindings/StorageUploadFieldBinding.tsx +447 -0
- package/src/form/field_bindings/SwitchFieldBinding.tsx +60 -0
- package/src/form/field_bindings/TextFieldBinding.tsx +109 -0
- package/src/form/index.tsx +43 -0
- package/src/form/useClearRestoreValue.tsx +35 -0
- package/src/form/validation.ts +412 -0
- package/src/hooks/data/delete.ts +101 -0
- package/src/hooks/data/save.ts +170 -0
- package/src/hooks/data/useCollectionFetch.tsx +162 -0
- package/src/hooks/data/useDataOrder.ts +26 -0
- package/src/hooks/data/useDataSource.tsx +14 -0
- package/src/hooks/data/useEntityFetch.tsx +129 -0
- package/src/hooks/index.tsx +27 -0
- package/src/hooks/useAnalyticsController.tsx +8 -0
- package/src/hooks/useAuthController.tsx +14 -0
- package/src/hooks/useBrowserTitleAndIcon.tsx +25 -0
- package/src/hooks/useBuildLocalConfigurationPersistence.tsx +67 -0
- package/src/hooks/useBuildModeController.tsx +60 -0
- package/src/hooks/useBuildNavigationController.tsx +433 -0
- package/src/hooks/useClipboard.tsx +158 -0
- package/src/hooks/useCustomizationController.tsx +14 -0
- package/src/hooks/useDialogsController.tsx +14 -0
- package/src/hooks/useFireCMSContext.tsx +99 -0
- package/src/hooks/useLargeLayout.tsx +100 -0
- package/src/hooks/useModeController.tsx +24 -0
- package/src/hooks/useNavigationController.tsx +12 -0
- package/src/hooks/useProjectLog.tsx +39 -0
- package/src/hooks/useReferenceDialog.tsx +56 -0
- package/src/hooks/useResolvedNavigationFrom.tsx +160 -0
- package/src/hooks/useSideDialogsController.tsx +21 -0
- package/src/hooks/useSideEntityController.tsx +15 -0
- package/src/hooks/useSnackbarController.tsx +75 -0
- package/src/hooks/useStorageSource.tsx +14 -0
- package/src/hooks/useUserConfigurationPersistence.tsx +11 -0
- package/src/index.ts +8 -0
- package/src/internal/common.tsx +5 -0
- package/src/internal/useBuildCustomizationController.tsx +5 -0
- package/src/internal/useBuildDataSource.ts +363 -0
- package/src/internal/useBuildSideDialogsController.tsx +125 -0
- package/src/internal/useBuildSideEntityController.tsx +172 -0
- package/src/internal/useLocaleConfig.tsx +18 -0
- package/src/internal/useRestoreScroll.tsx +48 -0
- package/src/internal/useUnsavedChangesDialog.tsx +106 -0
- package/src/preview/PropertyPreview.tsx +225 -0
- package/src/preview/PropertyPreviewProps.tsx +59 -0
- package/src/preview/components/ArrayEnumPreview.tsx +39 -0
- package/src/preview/components/AsyncPreviewComponent.tsx +47 -0
- package/src/preview/components/BooleanPreview.tsx +24 -0
- package/src/preview/components/DatePreview.tsx +26 -0
- package/src/preview/components/EmptyValue.tsx +10 -0
- package/src/preview/components/EnumValuesChip.tsx +38 -0
- package/src/preview/components/ImagePreview.tsx +106 -0
- package/src/preview/components/ReferencePreview.tsx +166 -0
- package/src/preview/components/StorageThumbnail.tsx +84 -0
- package/src/preview/components/UrlComponentPreview.tsx +79 -0
- package/src/preview/index.ts +27 -0
- package/src/preview/property_previews/ArrayOfMapsPreview.tsx +82 -0
- package/src/preview/property_previews/ArrayOfReferencesPreview.tsx +52 -0
- package/src/preview/property_previews/ArrayOfStorageComponentsPreview.tsx +54 -0
- package/src/preview/property_previews/ArrayOfStringsPreview.tsx +55 -0
- package/src/preview/property_previews/ArrayOneOfPreview.tsx +67 -0
- package/src/preview/property_previews/ArrayPropertyEnumPreview.tsx +28 -0
- package/src/preview/property_previews/ArrayPropertyPreview.tsx +68 -0
- package/src/preview/property_previews/MapPropertyPreview.tsx +146 -0
- package/src/preview/property_previews/NumberPropertyPreview.tsx +27 -0
- package/src/preview/property_previews/SkeletonPropertyComponent.tsx +283 -0
- package/src/preview/property_previews/StringPropertyPreview.tsx +60 -0
- package/src/preview/util.ts +31 -0
- package/src/types/analytics.ts +35 -0
- package/src/types/analytics_controller.tsx +10 -0
- package/src/types/appcheck.ts +29 -0
- package/src/types/auth.tsx +59 -0
- package/src/types/collections.ts +548 -0
- package/src/types/customization_controller.tsx +58 -0
- package/src/types/datasource.ts +389 -0
- package/src/types/dialogs_controller.tsx +33 -0
- package/src/types/entities.ts +80 -0
- package/src/types/entity_actions.tsx +43 -0
- package/src/types/entity_callbacks.ts +229 -0
- package/src/types/entity_link_builder.ts +8 -0
- package/src/types/entity_overrides.tsx +7 -0
- package/src/types/export_import.ts +26 -0
- package/src/types/fields.tsx +220 -0
- package/src/types/firecms.tsx +153 -0
- package/src/types/firecms_context.tsx +83 -0
- package/src/types/index.ts +29 -0
- package/src/types/local_config_persistence.tsx +23 -0
- package/src/types/locales.ts +81 -0
- package/src/types/modify_collections.tsx +6 -0
- package/src/types/navigation.ts +215 -0
- package/src/types/permissions.ts +81 -0
- package/src/types/plugins.tsx +207 -0
- package/src/types/properties.ts +851 -0
- package/src/types/property_config.tsx +72 -0
- package/src/types/resolved_entities.ts +148 -0
- package/src/types/side_dialogs_controller.tsx +68 -0
- package/src/types/side_entity_controller.tsx +97 -0
- package/src/types/storage.ts +96 -0
- package/src/types/user.ts +37 -0
- package/src/util/arrays.ts +3 -0
- package/src/util/builders.ts +139 -0
- package/src/util/collections.ts +72 -0
- package/src/util/common.tsx +2 -0
- package/src/util/dates.ts +1 -0
- package/src/util/entities.ts +196 -0
- package/src/util/enums.ts +56 -0
- package/src/util/flatten_object.ts +45 -0
- package/src/util/hash.ts +11 -0
- package/src/util/icon_list.ts +17 -0
- package/src/util/icon_synonyms.ts +1950 -0
- package/src/util/icons.tsx +56 -0
- package/src/util/index.ts +23 -0
- package/src/util/join_collections.ts +172 -0
- package/src/util/make_properties_editable.ts +29 -0
- package/src/util/navigation_from_path.ts +107 -0
- package/src/util/navigation_utils.ts +111 -0
- package/src/util/objects.ts +168 -0
- package/src/util/os.ts +13 -0
- package/src/util/parent_references_from_path.ts +56 -0
- package/src/util/paths.ts +27 -0
- package/src/util/permissions.ts +83 -0
- package/src/util/plurals.ts +190 -0
- package/src/util/property_utils.tsx +130 -0
- package/src/util/references.ts +51 -0
- package/src/util/regexp.ts +32 -0
- package/src/util/resolutions.ts +399 -0
- package/src/util/storage.ts +92 -0
- package/src/util/strings.ts +63 -0
- package/src/util/useDebouncedCallback.ts +25 -0
- package/src/util/useStorageUploadController.tsx +243 -0
- package/src/util/useTraceUpdate.tsx +23 -0
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { DataSource, Entity, EntityCallbacks, EntityCollection, FireCMSContext, SaveEntityProps, User } from "../../types";
|
|
2
|
+
/**
|
|
3
|
+
* @group Hooks and utilities
|
|
4
|
+
*/
|
|
5
|
+
export type SaveEntityWithCallbacksProps<M extends Record<string, any>> = SaveEntityProps<M> & {
|
|
6
|
+
callbacks?: EntityCallbacks<M>;
|
|
7
|
+
onSaveSuccess?: (updatedEntity: Entity<M>) => void;
|
|
8
|
+
onSaveFailure?: (e: Error) => void;
|
|
9
|
+
onPreSaveHookError?: (e: Error) => void;
|
|
10
|
+
onSaveSuccessHookError?: (e: Error) => void;
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* This function is in charge of saving an entity to the datasource.
|
|
14
|
+
* It will run all the save callbacks specified in the collection.
|
|
15
|
+
* It is also possible to attach callbacks on save success or error, and callback
|
|
16
|
+
* errors.
|
|
17
|
+
*
|
|
18
|
+
* If you just want to save the data without running the `onSaveSuccess`,
|
|
19
|
+
* `onSaveFailure` and `onPreSave` callbacks, you can use the `saveEntity` method
|
|
20
|
+
* in the datasource ({@link useDataSource}).
|
|
21
|
+
*
|
|
22
|
+
* @param collection
|
|
23
|
+
* @param path
|
|
24
|
+
* @param entityId
|
|
25
|
+
* @param callbacks
|
|
26
|
+
* @param values
|
|
27
|
+
* @param previousValues
|
|
28
|
+
* @param status
|
|
29
|
+
* @param dataSource
|
|
30
|
+
* @param context
|
|
31
|
+
* @param onSaveSuccess
|
|
32
|
+
* @param onSaveFailure
|
|
33
|
+
* @param onPreSaveHookError
|
|
34
|
+
* @param onSaveSuccessHookError
|
|
35
|
+
* @see useDataSource
|
|
36
|
+
* @group Hooks and utilities
|
|
37
|
+
*/
|
|
38
|
+
export declare function saveEntityWithCallbacks<M extends Record<string, any>, UserType extends User>({ collection, path, entityId, values, previousValues, status, dataSource, context, onSaveSuccess, onSaveFailure, onPreSaveHookError, onSaveSuccessHookError }: SaveEntityWithCallbacksProps<M> & {
|
|
39
|
+
collection: EntityCollection<M>;
|
|
40
|
+
dataSource: DataSource;
|
|
41
|
+
context: FireCMSContext<UserType>;
|
|
42
|
+
}): Promise<void>;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { Entity, EntityCollection, FilterValues, User } from "../../types";
|
|
2
|
+
/**
|
|
3
|
+
* @group Hooks and utilities
|
|
4
|
+
*/
|
|
5
|
+
export interface CollectionFetchProps<M extends Record<string, any>> {
|
|
6
|
+
/**
|
|
7
|
+
* Absolute collection path
|
|
8
|
+
*/
|
|
9
|
+
path: string;
|
|
10
|
+
/**
|
|
11
|
+
* collection of the entity displayed by this collection
|
|
12
|
+
*/
|
|
13
|
+
collection: EntityCollection<M>;
|
|
14
|
+
/**
|
|
15
|
+
* Number of entities to fetch
|
|
16
|
+
*/
|
|
17
|
+
itemCount?: number;
|
|
18
|
+
/**
|
|
19
|
+
* Filter the fetched data by the property
|
|
20
|
+
*/
|
|
21
|
+
filterValues?: FilterValues<Extract<keyof M, string>>;
|
|
22
|
+
/**
|
|
23
|
+
* Sort the results by
|
|
24
|
+
*/
|
|
25
|
+
sortBy?: [Extract<keyof M, string>, "asc" | "desc"];
|
|
26
|
+
/**
|
|
27
|
+
* Search string
|
|
28
|
+
*/
|
|
29
|
+
searchString?: string;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* @group Hooks and utilities
|
|
33
|
+
*/
|
|
34
|
+
export interface CollectionFetchResult<M extends Record<string, any>> {
|
|
35
|
+
data: Entity<M>[];
|
|
36
|
+
dataLoading: boolean;
|
|
37
|
+
noMoreToLoad: boolean;
|
|
38
|
+
dataLoadingError?: Error;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* This hook is used to fetch collections using a given collection
|
|
42
|
+
* @param path
|
|
43
|
+
* @param collection
|
|
44
|
+
* @param filterValues
|
|
45
|
+
* @param sortBy
|
|
46
|
+
* @param itemCount
|
|
47
|
+
* @param searchString
|
|
48
|
+
* @group Hooks and utilities
|
|
49
|
+
*/
|
|
50
|
+
export declare function useCollectionFetch<M extends Record<string, any>, UserType extends User>({ path: inputPath, collection, filterValues, sortBy, itemCount, searchString }: CollectionFetchProps<M>): CollectionFetchResult<M>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Entity } from "../../types";
|
|
2
|
+
export interface DataOrderProps<M extends Record<string, any>> {
|
|
3
|
+
data: Entity<M>[];
|
|
4
|
+
entitiesDisplayedFirst?: Entity<M>[];
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* This hook is used to have some entities at the beginning of data.
|
|
8
|
+
* @param path
|
|
9
|
+
* @param entitiesDisplayedFirst
|
|
10
|
+
* @group Hooks and utilities
|
|
11
|
+
*/
|
|
12
|
+
export declare function useDataOrder<M extends Record<string, any>>({ data, entitiesDisplayedFirst }: DataOrderProps<M>): Entity<M>[];
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Entity, EntityCollection, User } from "../../types";
|
|
2
|
+
/**
|
|
3
|
+
* @group Hooks and utilities
|
|
4
|
+
*/
|
|
5
|
+
export interface EntityFetchProps<M extends Record<string, any>> {
|
|
6
|
+
path: string;
|
|
7
|
+
entityId?: string;
|
|
8
|
+
collection: EntityCollection<M>;
|
|
9
|
+
useCache?: boolean;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* @group Hooks and utilities
|
|
13
|
+
*/
|
|
14
|
+
export interface EntityFetchResult<M extends Record<string, any>> {
|
|
15
|
+
entity?: Entity<M>;
|
|
16
|
+
dataLoading: boolean;
|
|
17
|
+
dataLoadingError?: Error;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* This hook is used to fetch an entity.
|
|
21
|
+
* It gives real time updates if the datasource supports it.
|
|
22
|
+
* @param path
|
|
23
|
+
* @param collection
|
|
24
|
+
* @param entityId
|
|
25
|
+
* @param useCache
|
|
26
|
+
* @group Hooks and utilities
|
|
27
|
+
*/
|
|
28
|
+
export declare function useEntityFetch<M extends Record<string, any>, UserType extends User>({ path: inputPath, entityId, collection, useCache }: EntityFetchProps<M>): EntityFetchResult<M>;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export * from "./data/useDataSource";
|
|
2
|
+
export * from "./data/useCollectionFetch";
|
|
3
|
+
export * from "./data/useEntityFetch";
|
|
4
|
+
export * from "./data/save";
|
|
5
|
+
export * from "./data/delete";
|
|
6
|
+
export * from "./useNavigationController";
|
|
7
|
+
export * from "./useResolvedNavigationFrom";
|
|
8
|
+
export * from "./useStorageSource";
|
|
9
|
+
export * from "./useAuthController";
|
|
10
|
+
export * from "./useSideDialogsController";
|
|
11
|
+
export * from "./useSideEntityController";
|
|
12
|
+
export * from "./useFireCMSContext";
|
|
13
|
+
export * from "./useSnackbarController";
|
|
14
|
+
export * from "./useModeController";
|
|
15
|
+
export * from "./useClipboard";
|
|
16
|
+
export * from "./useLargeLayout";
|
|
17
|
+
export * from "./useReferenceDialog";
|
|
18
|
+
export * from "./useBrowserTitleAndIcon";
|
|
19
|
+
export * from "./useCustomizationController";
|
|
20
|
+
export * from "./useBuildNavigationController";
|
|
21
|
+
export * from "./useBuildLocalConfigurationPersistence";
|
|
22
|
+
export * from "./useBuildModeController";
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { AuthController, User } from "../types";
|
|
2
|
+
/**
|
|
3
|
+
* Hook to retrieve the AuthContext.
|
|
4
|
+
*
|
|
5
|
+
* Consider that in order to use this hook you need to have a parent
|
|
6
|
+
* `FireCMS`
|
|
7
|
+
*
|
|
8
|
+
* @see AuthController
|
|
9
|
+
* @group Hooks and utilities
|
|
10
|
+
*/
|
|
11
|
+
export declare const useAuthController: <UserType extends User = User, AuthControllerType extends AuthController<UserType> = AuthController<UserType>>() => AuthControllerType;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { AuthController, CMSView, CMSViewsBuilder, DataSourceDelegate, EntityCollection, EntityCollectionsBuilder, NavigationController, PermissionsBuilder, User, UserConfigurationPersistence } from "../types";
|
|
2
|
+
type BuildNavigationContextProps<EC extends EntityCollection, UserType extends User> = {
|
|
3
|
+
basePath?: string;
|
|
4
|
+
baseCollectionPath?: string;
|
|
5
|
+
authController: AuthController<UserType>;
|
|
6
|
+
collections?: EC[] | EntityCollectionsBuilder<EC>;
|
|
7
|
+
collectionPermissions?: PermissionsBuilder;
|
|
8
|
+
views?: CMSView[] | CMSViewsBuilder;
|
|
9
|
+
adminViews?: CMSView[] | CMSViewsBuilder;
|
|
10
|
+
viewsOrder?: string[];
|
|
11
|
+
userConfigPersistence?: UserConfigurationPersistence;
|
|
12
|
+
dataSourceDelegate: DataSourceDelegate;
|
|
13
|
+
/**
|
|
14
|
+
* Use this method to inject collections to the CMS.
|
|
15
|
+
* You receive the current collections as a parameter, and you can return
|
|
16
|
+
* a new list of collections.
|
|
17
|
+
* @see {@link joinCollectionLists}
|
|
18
|
+
* @param collections
|
|
19
|
+
*/
|
|
20
|
+
injectCollections?: (collections: EntityCollection[]) => EntityCollection[];
|
|
21
|
+
};
|
|
22
|
+
export declare function useBuildNavigationController<EC extends EntityCollection, UserType extends User>(props: BuildNavigationContextProps<EC, UserType>): NavigationController;
|
|
23
|
+
export declare function getSidePanelKey(path: string, entityId?: string): string;
|
|
24
|
+
export {};
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { MutableRefObject } from "react";
|
|
2
|
+
export interface UseClipboardProps {
|
|
3
|
+
/**
|
|
4
|
+
* It's callback function that is called after the `copy` command
|
|
5
|
+
* is executed.
|
|
6
|
+
*
|
|
7
|
+
* @param text: The selected clipboard text.
|
|
8
|
+
*/
|
|
9
|
+
onSuccess?: (text: string) => void;
|
|
10
|
+
/**
|
|
11
|
+
* Triggers when the hook encounters an error.
|
|
12
|
+
* If passed hook won't throw an error.
|
|
13
|
+
*
|
|
14
|
+
* @param error: cause of the error
|
|
15
|
+
*/
|
|
16
|
+
onError?: (error: string) => void;
|
|
17
|
+
/**
|
|
18
|
+
* Disables the new clipboard API `navigator.clipboard` even if
|
|
19
|
+
* it is supported.
|
|
20
|
+
*/
|
|
21
|
+
disableClipboardAPI?: boolean;
|
|
22
|
+
/**
|
|
23
|
+
* revert back the isCopied flag to false again if a value is set.
|
|
24
|
+
*/
|
|
25
|
+
copiedDuration?: number;
|
|
26
|
+
}
|
|
27
|
+
export interface useClipboardReturnType {
|
|
28
|
+
/**
|
|
29
|
+
* Use ref to pull the text content from.
|
|
30
|
+
*/
|
|
31
|
+
ref: MutableRefObject<any>;
|
|
32
|
+
/**
|
|
33
|
+
* Use it to perform the copy operation
|
|
34
|
+
*/
|
|
35
|
+
copy: (text?: string) => void;
|
|
36
|
+
/**
|
|
37
|
+
* Use it to perform the cut operation
|
|
38
|
+
*/
|
|
39
|
+
cut: () => void;
|
|
40
|
+
/**
|
|
41
|
+
* Indicates wheater the content was successfully copied or not.
|
|
42
|
+
*/
|
|
43
|
+
isCoppied: boolean;
|
|
44
|
+
/**
|
|
45
|
+
* Current selected clipboard content.
|
|
46
|
+
*/
|
|
47
|
+
clipboard: string;
|
|
48
|
+
/**
|
|
49
|
+
* Clears the user clipboard.
|
|
50
|
+
*/
|
|
51
|
+
clearClipboard: () => void;
|
|
52
|
+
/**
|
|
53
|
+
* Check to see if the browser supports the new `navigator.clipboard` API.
|
|
54
|
+
*/
|
|
55
|
+
isSupported: () => boolean;
|
|
56
|
+
}
|
|
57
|
+
export declare const useClipboard: (options?: UseClipboardProps) => useClipboardReturnType;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { CustomizationController } from "../types/customization_controller";
|
|
2
|
+
/**
|
|
3
|
+
* Use this hook to retrieve the customization controller.
|
|
4
|
+
* This hook includes all the customization options that can be used
|
|
5
|
+
* to customize the CMS.
|
|
6
|
+
*
|
|
7
|
+
* You will likely not need to use this hook directly.
|
|
8
|
+
*
|
|
9
|
+
* @group Hooks and utilities
|
|
10
|
+
*/
|
|
11
|
+
export declare const useCustomizationController: () => CustomizationController;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { DialogsController } from "../types/dialogs_controller";
|
|
2
|
+
/**
|
|
3
|
+
* Use this hook to open a dialog imperatively.
|
|
4
|
+
* Alternatively, you can use dialogs declaratively using the `Dialog` component.
|
|
5
|
+
*
|
|
6
|
+
* Consider that in order to use this hook you need to have a parent
|
|
7
|
+
* `FireCMS`
|
|
8
|
+
*
|
|
9
|
+
* @group Hooks and utilities
|
|
10
|
+
*/
|
|
11
|
+
export declare const useDialogsController: () => DialogsController;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { AuthController, FireCMSContext, User } from "../types";
|
|
2
|
+
/**
|
|
3
|
+
* Hook to retrieve the {@link FireCMSContext}.
|
|
4
|
+
*
|
|
5
|
+
* Consider that in order to use this hook you need to have a parent
|
|
6
|
+
* `FireCMS` component.
|
|
7
|
+
*
|
|
8
|
+
* @see FireCMSContext
|
|
9
|
+
* @group Hooks and utilities
|
|
10
|
+
*/
|
|
11
|
+
export declare const useFireCMSContext: <UserType extends User = User, AuthControllerType extends AuthController<UserType> = AuthController<UserType>>() => FireCMSContext<UserType, AuthControllerType>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const useLargeLayout: () => boolean;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Use this controller to change color mode
|
|
3
|
+
* @group Hooks and utilities
|
|
4
|
+
*/
|
|
5
|
+
export interface ModeController {
|
|
6
|
+
mode: "light" | "dark";
|
|
7
|
+
setMode: (mode: "light" | "dark") => void;
|
|
8
|
+
toggleMode: () => void;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Hook to retrieve the current mode ("light" | "dark"), and `setMode`
|
|
12
|
+
* or `toggle` functions to change it.
|
|
13
|
+
*
|
|
14
|
+
* Consider that in order to use this hook you need to have a parent
|
|
15
|
+
* `FireCMS`
|
|
16
|
+
*
|
|
17
|
+
* @see ModeController
|
|
18
|
+
* @group Hooks and utilities
|
|
19
|
+
*/
|
|
20
|
+
export declare const useModeController: () => ModeController;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { NavigationController } from "../types";
|
|
2
|
+
/**
|
|
3
|
+
* Use this hook to get the navigation of the app.
|
|
4
|
+
* This controller provides the resolved collections for the CMS as well
|
|
5
|
+
* as utility methods.
|
|
6
|
+
*
|
|
7
|
+
* @group Hooks and utilities
|
|
8
|
+
*/
|
|
9
|
+
export declare const useNavigationController: () => NavigationController;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AuthController } from "../types";
|
|
2
|
+
export declare const DEFAULT_SERVER_DEV = "https://api-kdoe6pj3qq-ey.a.run.app";
|
|
3
|
+
export declare const DEFAULT_SERVER = "https://api-drplyi3b6q-ey.a.run.app";
|
|
4
|
+
export type AccessResponse = {
|
|
5
|
+
blocked?: boolean;
|
|
6
|
+
message?: string;
|
|
7
|
+
};
|
|
8
|
+
export declare function useProjectLog(authController: AuthController): AccessResponse | null;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ReferenceSelectionInnerProps } from "../components";
|
|
2
|
+
/**
|
|
3
|
+
* This hook is used to open a side dialog that allows the selection
|
|
4
|
+
* of entities under a given path.
|
|
5
|
+
* You can use it in custom views for selecting entities.
|
|
6
|
+
* You need to specify the path of the target collection at least.
|
|
7
|
+
* If your collection is not defined in your top collection configuration
|
|
8
|
+
* (in your `FireCMS` component), you need to specify explicitly.
|
|
9
|
+
* This is the same hook used internally when a reference property is defined.
|
|
10
|
+
* @group Hooks and utilities
|
|
11
|
+
*/
|
|
12
|
+
export declare function useReferenceDialog<M extends Record<string, any>>(referenceDialogProps: Omit<ReferenceSelectionInnerProps<M>, "path"> & {
|
|
13
|
+
path?: string | false;
|
|
14
|
+
onClose?: () => void;
|
|
15
|
+
}): {
|
|
16
|
+
open: () => void;
|
|
17
|
+
close: () => void;
|
|
18
|
+
};
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { Entity, EntityCollection, EntityCustomView, FireCMSContext, User } from "../types";
|
|
2
|
+
/**
|
|
3
|
+
* @see resolveNavigationFrom
|
|
4
|
+
* @group Hooks and utilities
|
|
5
|
+
*/
|
|
6
|
+
export type ResolvedNavigationEntry<M extends Record<string, any>> = ResolvedNavigationEntity<M> | ResolvedNavigationCollection<M> | ResolvedNavigationEntityCustom<M>;
|
|
7
|
+
/**
|
|
8
|
+
* @see resolveNavigationFrom
|
|
9
|
+
* @group Hooks and utilities
|
|
10
|
+
*/
|
|
11
|
+
export interface ResolvedNavigationEntity<M extends Record<string, any>> {
|
|
12
|
+
type: "entity";
|
|
13
|
+
entity: Entity<M>;
|
|
14
|
+
entityId: string;
|
|
15
|
+
path: string;
|
|
16
|
+
parentCollection: EntityCollection<M>;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* @see resolveNavigationFrom
|
|
20
|
+
* @group Hooks and utilities
|
|
21
|
+
*/
|
|
22
|
+
export interface ResolvedNavigationCollection<M extends Record<string, any>> {
|
|
23
|
+
type: "collection";
|
|
24
|
+
path: string;
|
|
25
|
+
collection: EntityCollection<M>;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* @see resolveNavigationFrom
|
|
29
|
+
* @group Hooks and utilities
|
|
30
|
+
*/
|
|
31
|
+
interface ResolvedNavigationEntityCustom<M extends Record<string, any>> {
|
|
32
|
+
type: "custom_view";
|
|
33
|
+
path: string;
|
|
34
|
+
view: EntityCustomView<M>;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Use this function to retrieve an array of navigation entries (resolved
|
|
38
|
+
* collection, entity or entity custom_view) for the given path. You need to pass the app context
|
|
39
|
+
* that you receive in different callbacks, such as the save hooks.
|
|
40
|
+
*
|
|
41
|
+
* It will take into account the `navigation` provided at the `FireCMS` level.
|
|
42
|
+
*
|
|
43
|
+
* @param path
|
|
44
|
+
* @param context
|
|
45
|
+
* @group Hooks and utilities
|
|
46
|
+
*/
|
|
47
|
+
export declare function resolveNavigationFrom<M extends Record<string, any>, UserType extends User>({ path, context }: {
|
|
48
|
+
path: string;
|
|
49
|
+
context: FireCMSContext<UserType>;
|
|
50
|
+
}): Promise<ResolvedNavigationEntry<M>[]>;
|
|
51
|
+
/**
|
|
52
|
+
* @group Hooks and utilities
|
|
53
|
+
*/
|
|
54
|
+
export interface NavigationFromProps {
|
|
55
|
+
path: string;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* @group Hooks and utilities
|
|
59
|
+
*/
|
|
60
|
+
export interface NavigationFrom<M extends Record<string, any>> {
|
|
61
|
+
data?: ResolvedNavigationEntry<M>[];
|
|
62
|
+
dataLoading: boolean;
|
|
63
|
+
dataLoadingError?: Error;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Use this hook to retrieve an array of navigation entries (resolved
|
|
67
|
+
* collection or entity) for the given path. You can use this hook
|
|
68
|
+
* in any React component that lives under `FireCMS`
|
|
69
|
+
* @group Hooks and utilities
|
|
70
|
+
*/
|
|
71
|
+
export declare function useResolvedNavigationFrom<M extends Record<string, any>, UserType extends User>({ path }: NavigationFromProps): NavigationFrom<M>;
|
|
72
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { SideDialogsController } from "../types";
|
|
2
|
+
/**
|
|
3
|
+
* Hook to retrieve the side dialogs' controller.
|
|
4
|
+
*
|
|
5
|
+
* This hook allows you to open and close side dialogs. This is the mechanism
|
|
6
|
+
* used when open a side entity dialog, or when selecting a reference.
|
|
7
|
+
*
|
|
8
|
+
* If you want to open a side entity dialog, you can use the {@link useSideEntityController}
|
|
9
|
+
* hook.
|
|
10
|
+
*
|
|
11
|
+
* If you want to select a reference, you can use the {@link useReferenceDialog}
|
|
12
|
+
*
|
|
13
|
+
* Consider that in order to use this hook you need to have a parent
|
|
14
|
+
* `FireCMS`
|
|
15
|
+
*
|
|
16
|
+
* @group Hooks and utilities
|
|
17
|
+
*/
|
|
18
|
+
export declare const useSideDialogsController: () => SideDialogsController;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { SideEntityController } from "../types";
|
|
2
|
+
/**
|
|
3
|
+
* Use this hook to retrieve an entity controller that allows you to open
|
|
4
|
+
* a side dialog to edit an entity.
|
|
5
|
+
*
|
|
6
|
+
* Consider that in order to use this hook you need to have a parent
|
|
7
|
+
* `FireCMS`
|
|
8
|
+
*
|
|
9
|
+
* @see SideEntityController
|
|
10
|
+
* @group Hooks and utilities
|
|
11
|
+
*/
|
|
12
|
+
export declare const useSideEntityController: () => SideEntityController;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
/**
|
|
3
|
+
* Possible snackbar types
|
|
4
|
+
* @group Hooks and utilities
|
|
5
|
+
*/
|
|
6
|
+
export type SnackbarMessageType = "success" | "info" | "warning" | "error";
|
|
7
|
+
/**
|
|
8
|
+
* Controller to display snackbars
|
|
9
|
+
* @group Hooks and utilities
|
|
10
|
+
*/
|
|
11
|
+
export interface SnackbarController {
|
|
12
|
+
/**
|
|
13
|
+
* Close the currently open snackbar
|
|
14
|
+
*/
|
|
15
|
+
close: () => void;
|
|
16
|
+
/**
|
|
17
|
+
* Display a new snackbar. You need to specify the type and message.
|
|
18
|
+
* You can optionally specify a title
|
|
19
|
+
*/
|
|
20
|
+
open: (props: {
|
|
21
|
+
type: SnackbarMessageType;
|
|
22
|
+
message: React.ReactNode;
|
|
23
|
+
autoHideDuration?: number;
|
|
24
|
+
}) => void;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Hook to retrieve the SnackbarContext.
|
|
28
|
+
*
|
|
29
|
+
* Consider that in order to use this hook you need to have a parent
|
|
30
|
+
* `FireCMS`
|
|
31
|
+
*
|
|
32
|
+
* @see SnackbarController
|
|
33
|
+
* @group Hooks and utilities
|
|
34
|
+
*/
|
|
35
|
+
export declare const useSnackbarController: () => {
|
|
36
|
+
open: (props: {
|
|
37
|
+
type: SnackbarMessageType;
|
|
38
|
+
message: React.ReactNode;
|
|
39
|
+
autoHideDuration?: number;
|
|
40
|
+
}) => void;
|
|
41
|
+
close: () => void;
|
|
42
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { UserConfigurationPersistence } from "../types";
|
|
2
|
+
/**
|
|
3
|
+
* Use this controller to access the configuration that is stored externally,
|
|
4
|
+
* and not defined in code
|
|
5
|
+
*
|
|
6
|
+
* @group Hooks and utilities
|
|
7
|
+
*/
|
|
8
|
+
export declare const useUserConfigurationPersistence: () => UserConfigurationPersistence | undefined;
|