@firecms/core 3.0.0-canary.29 → 3.0.0-canary.292
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/README.md +3 -3
- package/dist/app/AppBar.d.ts +12 -0
- package/dist/app/Drawer.d.ts +16 -0
- package/dist/app/Scaffold.d.ts +34 -0
- package/dist/app/index.d.ts +4 -0
- package/dist/app/useApp.d.ts +16 -0
- package/dist/components/ArrayContainer.d.ts +31 -12
- package/dist/components/CircularProgressCenter.d.ts +1 -1
- package/dist/components/ClearFilterSortButton.d.ts +5 -0
- package/dist/components/{DeleteConfirmationDialog.d.ts → ConfirmationDialog.d.ts} +1 -1
- package/dist/components/EntityCollectionTable/EntityCollectionRowActions.d.ts +14 -13
- package/dist/components/EntityCollectionTable/EntityCollectionTable.d.ts +2 -2
- package/dist/components/EntityCollectionTable/EntityCollectionTableProps.d.ts +22 -6
- package/dist/components/EntityCollectionTable/PropertyTableCell.d.ts +1 -0
- package/dist/components/EntityCollectionTable/column_utils.d.ts +1 -2
- package/dist/components/EntityCollectionTable/fields/TableReferenceField.d.ts +3 -1
- package/dist/components/EntityCollectionTable/index.d.ts +1 -1
- package/dist/components/EntityCollectionTable/internal/CollectionTableToolbar.d.ts +1 -4
- package/dist/components/EntityCollectionTable/internal/EntityTableCell.d.ts +2 -2
- package/dist/components/EntityCollectionTable/internal/popup_field/PopupFormField.d.ts +7 -4
- package/dist/components/EntityCollectionView/EntityCollectionView.d.ts +20 -2
- package/dist/components/EntityCollectionView/EntityCollectionViewStartActions.d.ts +11 -0
- package/dist/components/EntityCollectionView/utils.d.ts +3 -0
- package/dist/components/EntityJsonPreview.d.ts +3 -0
- package/dist/components/EntityPreview.d.ts +10 -7
- package/dist/components/ErrorView.d.ts +1 -1
- package/dist/components/HomePage/DefaultHomePage.d.ts +2 -15
- package/dist/components/HomePage/HomePageDnD.d.ts +77 -0
- package/dist/components/HomePage/NavigationCard.d.ts +3 -1
- package/dist/components/HomePage/NavigationCardBinding.d.ts +4 -3
- package/dist/components/HomePage/NavigationGroup.d.ts +8 -1
- package/dist/components/HomePage/RenameGroupDialog.d.ts +9 -0
- package/dist/components/PropertyCollectionView.d.ts +23 -0
- package/dist/components/PropertyConfigBadge.d.ts +2 -1
- package/dist/components/PropertyIdCopyTooltip.d.ts +8 -0
- package/dist/components/ReferenceWidget.d.ts +3 -1
- package/dist/components/SelectableTable/SelectableTable.d.ts +14 -4
- package/dist/components/SelectableTable/filters/ReferenceFilterField.d.ts +2 -1
- package/dist/components/UnsavedChangesDialog.d.ts +8 -0
- package/dist/components/UserDisplay.d.ts +7 -0
- package/dist/components/VirtualTable/VirtualTableProps.d.ts +24 -12
- package/dist/components/VirtualTable/fields/VirtualTableUserSelect.d.ts +12 -0
- package/dist/components/VirtualTable/types.d.ts +3 -3
- package/dist/components/{EntityCollectionTable/internal → common}/default_entity_actions.d.ts +1 -3
- package/dist/components/common/index.d.ts +2 -1
- package/dist/components/common/table_height.d.ts +5 -0
- package/dist/components/common/types.d.ts +4 -6
- package/dist/components/common/useColumnsIds.d.ts +3 -1
- package/dist/components/common/{useDataSourceEntityCollectionTableController.d.ts → useDataSourceTableController.d.ts} +13 -2
- package/dist/components/common/useDebouncedCallback.d.ts +1 -0
- package/dist/components/common/useScrollRestoration.d.ts +14 -0
- package/dist/components/index.d.ts +5 -2
- package/dist/contexts/BreacrumbsContext.d.ts +8 -0
- package/dist/contexts/InternalUserManagementContext.d.ts +3 -0
- package/dist/core/DefaultAppBar.d.ts +29 -0
- package/dist/core/DefaultDrawer.d.ts +19 -0
- package/dist/core/DrawerNavigationItem.d.ts +10 -0
- package/dist/core/EntityEditView.d.ts +49 -11
- package/dist/core/EntityEditViewFormActions.d.ts +2 -0
- package/dist/core/FireCMS.d.ts +2 -3
- package/dist/core/FireCMSRouter.d.ts +4 -0
- package/dist/core/NavigationRoutes.d.ts +2 -3
- package/dist/core/SideDialogs.d.ts +4 -2
- package/dist/core/field_configs.d.ts +1 -1
- package/dist/core/index.d.ts +4 -4
- package/dist/form/EntityForm.d.ts +40 -64
- package/dist/form/EntityFormActions.d.ts +21 -0
- package/dist/form/PropertyFieldBinding.d.ts +1 -1
- package/dist/form/components/ErrorFocus.d.ts +1 -1
- package/dist/form/components/FieldHelperText.d.ts +3 -3
- package/dist/form/components/FormEntry.d.ts +6 -0
- package/dist/form/components/FormLayout.d.ts +5 -0
- package/dist/form/components/LabelWithIcon.d.ts +1 -1
- package/dist/form/components/LabelWithIconAndTooltip.d.ts +15 -0
- package/dist/form/components/LocalChangesMenu.d.ts +11 -0
- package/dist/form/components/StorageItemPreview.d.ts +4 -4
- package/dist/form/components/index.d.ts +3 -1
- package/dist/form/field_bindings/ArrayCustomShapedFieldBinding.d.ts +1 -1
- package/dist/form/field_bindings/ArrayOfReferencesFieldBinding.d.ts +1 -1
- package/dist/form/field_bindings/BlockFieldBinding.d.ts +1 -1
- package/dist/form/field_bindings/KeyValueFieldBinding.d.ts +1 -1
- package/dist/form/field_bindings/MapFieldBinding.d.ts +1 -1
- package/dist/form/field_bindings/MarkdownEditorFieldBinding.d.ts +11 -0
- package/dist/form/field_bindings/{MultiSelectBinding.d.ts → MultiSelectFieldBinding.d.ts} +1 -1
- package/dist/form/field_bindings/ReadOnlyFieldBinding.d.ts +1 -1
- package/dist/form/field_bindings/ReferenceAsStringFieldBinding.d.ts +9 -0
- package/dist/form/field_bindings/ReferenceFieldBinding.d.ts +2 -2
- package/dist/form/field_bindings/RepeatFieldBinding.d.ts +1 -1
- package/dist/form/field_bindings/SelectFieldBinding.d.ts +1 -1
- package/dist/form/field_bindings/StorageUploadFieldBinding.d.ts +5 -13
- package/dist/form/field_bindings/SwitchFieldBinding.d.ts +1 -2
- package/dist/form/field_bindings/TextFieldBinding.d.ts +1 -1
- package/dist/form/field_bindings/UserSelectFieldBinding.d.ts +12 -0
- package/dist/form/index.d.ts +18 -18
- package/dist/form/useClearRestoreValue.d.ts +2 -2
- package/dist/hooks/data/delete.d.ts +4 -4
- package/dist/hooks/data/save.d.ts +4 -5
- package/dist/hooks/data/useCollectionFetch.d.ts +1 -1
- package/dist/hooks/data/useEntityFetch.d.ts +4 -3
- package/dist/hooks/index.d.ts +3 -0
- package/dist/hooks/useAuthController.d.ts +1 -1
- package/dist/hooks/useBreadcrumbsController.d.ts +26 -0
- package/dist/hooks/useBuildNavigationController.d.ts +57 -13
- package/dist/hooks/useCollapsedGroups.d.ts +9 -0
- package/dist/hooks/useFireCMSContext.d.ts +1 -1
- package/dist/hooks/useInternalUserManagementController.d.ts +12 -0
- package/dist/hooks/useModeController.d.ts +1 -2
- package/dist/hooks/useProjectLog.d.ts +8 -2
- package/dist/hooks/useResolvedNavigationFrom.d.ts +3 -3
- package/dist/hooks/useValidateAuthenticator.d.ts +4 -8
- package/dist/index.d.ts +1 -0
- package/dist/index.es.js +24546 -13965
- package/dist/index.es.js.map +1 -1
- package/dist/index.umd.js +27256 -588
- package/dist/index.umd.js.map +1 -1
- package/dist/internal/useBuildDataSource.d.ts +3 -17
- package/dist/internal/useBuildSideEntityController.d.ts +3 -3
- package/dist/internal/useUnsavedChangesDialog.d.ts +7 -9
- package/dist/preview/PropertyPreviewProps.d.ts +6 -1
- package/dist/preview/components/EnumValuesChip.d.ts +1 -1
- package/dist/preview/components/ReferencePreview.d.ts +4 -3
- package/dist/preview/components/StorageThumbnail.d.ts +2 -1
- package/dist/preview/components/UrlComponentPreview.d.ts +2 -1
- package/dist/preview/components/UserPreview.d.ts +8 -0
- package/dist/preview/index.d.ts +1 -0
- package/dist/preview/util.d.ts +3 -3
- package/dist/routes/CustomCMSRoute.d.ts +4 -0
- package/dist/routes/FireCMSRoute.d.ts +1 -0
- package/dist/routes/HomePageRoute.d.ts +3 -0
- package/dist/types/analytics.d.ts +1 -1
- package/dist/types/auth.d.ts +8 -10
- package/dist/types/collections.d.ts +123 -25
- package/dist/types/customization_controller.d.ts +8 -0
- package/dist/types/datasource.d.ts +52 -36
- package/dist/types/dialogs_controller.d.ts +7 -3
- package/dist/types/entities.d.ts +12 -3
- package/dist/types/entity_actions.d.ts +72 -8
- package/dist/types/entity_callbacks.d.ts +16 -16
- package/dist/types/entity_overrides.d.ts +2 -2
- package/dist/types/export_import.d.ts +4 -4
- package/dist/types/fields.d.ts +79 -39
- package/dist/types/firecms.d.ts +31 -3
- package/dist/types/firecms_context.d.ts +17 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/internal_user_management.d.ts +20 -0
- package/dist/types/navigation.d.ts +62 -19
- package/dist/types/permissions.d.ts +4 -4
- package/dist/types/plugins.d.ts +58 -13
- package/dist/types/properties.d.ts +122 -31
- package/dist/types/property_config.d.ts +1 -3
- package/dist/types/roles.d.ts +3 -0
- package/dist/types/side_dialogs_controller.d.ts +10 -0
- package/dist/types/side_entity_controller.d.ts +14 -1
- package/dist/types/storage.d.ts +75 -0
- package/dist/types/user.d.ts +2 -1
- package/dist/util/builders.d.ts +3 -3
- package/dist/util/callbacks.d.ts +2 -0
- package/dist/util/collections.d.ts +1 -0
- package/dist/util/createFormexStub.d.ts +2 -0
- package/dist/util/entities.d.ts +3 -3
- package/dist/util/entity_actions.d.ts +2 -0
- package/dist/util/entity_cache.d.ts +28 -0
- package/dist/util/icon_list.d.ts +5 -1
- package/dist/util/icon_synonyms.d.ts +1 -98
- package/dist/util/icons.d.ts +7 -4
- package/dist/util/index.d.ts +3 -0
- package/dist/util/make_properties_editable.d.ts +1 -2
- package/dist/util/navigation_from_path.d.ts +10 -1
- package/dist/util/navigation_utils.d.ts +15 -3
- package/dist/util/objects.d.ts +3 -1
- package/dist/util/permissions.d.ts +4 -4
- package/dist/util/plurals.d.ts +0 -2
- package/dist/util/property_utils.d.ts +4 -4
- package/dist/util/references.d.ts +2 -2
- package/dist/util/resolutions.d.ts +42 -17
- package/dist/util/storage.d.ts +23 -2
- package/dist/util/useStorageUploadController.d.ts +4 -3
- package/package.json +70 -53
- package/src/app/AppBar.tsx +18 -0
- package/src/app/Drawer.tsx +24 -0
- package/src/app/Scaffold.tsx +253 -0
- package/src/app/index.ts +4 -0
- package/src/app/useApp.tsx +32 -0
- package/src/components/ArrayContainer.tsx +447 -229
- package/src/components/CircularProgressCenter.tsx +2 -2
- package/src/components/ClearFilterSortButton.tsx +41 -0
- package/src/components/{DeleteConfirmationDialog.tsx → ConfirmationDialog.tsx} +12 -11
- package/src/components/DeleteEntityDialog.tsx +13 -20
- package/src/components/EntityCollectionTable/EntityCollectionRowActions.tsx +87 -62
- package/src/components/EntityCollectionTable/EntityCollectionTable.tsx +38 -31
- package/src/components/EntityCollectionTable/EntityCollectionTableProps.tsx +30 -9
- package/src/components/EntityCollectionTable/PropertyTableCell.tsx +84 -42
- package/src/components/EntityCollectionTable/column_utils.tsx +3 -3
- package/src/components/EntityCollectionTable/fields/TableReferenceField.tsx +30 -16
- package/src/components/EntityCollectionTable/fields/TableStorageUpload.tsx +19 -17
- package/src/components/EntityCollectionTable/index.tsx +1 -1
- package/src/components/EntityCollectionTable/internal/CollectionTableToolbar.tsx +34 -39
- package/src/components/EntityCollectionTable/internal/EntityTableCell.tsx +49 -36
- package/src/components/EntityCollectionTable/internal/EntityTableCellActions.tsx +20 -8
- package/src/components/EntityCollectionTable/internal/popup_field/PopupFormField.tsx +135 -105
- package/src/components/EntityCollectionTable/internal/popup_field/useDraggable.tsx +9 -9
- package/src/components/EntityCollectionView/EntityCollectionView.tsx +241 -119
- package/src/components/EntityCollectionView/EntityCollectionViewActions.tsx +7 -4
- package/src/components/EntityCollectionView/EntityCollectionViewStartActions.tsx +68 -0
- package/src/components/EntityCollectionView/useSelectionController.tsx +20 -7
- package/src/components/EntityCollectionView/utils.ts +19 -0
- package/src/components/EntityJsonPreview.tsx +66 -0
- package/src/components/EntityPreview.tsx +83 -62
- package/src/components/EntityView.tsx +34 -42
- package/src/components/ErrorView.tsx +4 -4
- package/src/components/FireCMSLogo.tsx +7 -51
- package/src/components/HomePage/DefaultHomePage.tsx +516 -158
- package/src/components/HomePage/FavouritesView.tsx +9 -14
- package/src/components/HomePage/HomePageDnD.tsx +702 -0
- package/src/components/HomePage/NavigationCard.tsx +48 -39
- package/src/components/HomePage/NavigationCardBinding.tsx +17 -16
- package/src/components/HomePage/NavigationGroup.tsx +144 -30
- package/src/components/HomePage/RenameGroupDialog.tsx +123 -0
- package/src/components/HomePage/SmallNavigationCard.tsx +5 -6
- package/src/components/NotFoundPage.tsx +2 -2
- package/src/components/PropertyCollectionView.tsx +329 -0
- package/src/components/PropertyConfigBadge.tsx +10 -4
- package/src/components/PropertyIdCopyTooltip.tsx +47 -0
- package/src/components/ReferenceTable/ReferenceSelectionTable.tsx +23 -13
- package/src/components/ReferenceWidget.tsx +21 -11
- package/src/components/SearchIconsView.tsx +10 -7
- package/src/components/SelectableTable/SelectableTable.tsx +157 -157
- package/src/components/SelectableTable/filters/BooleanFilterField.tsx +2 -3
- package/src/components/SelectableTable/filters/DateTimeFilterField.tsx +27 -9
- package/src/components/SelectableTable/filters/ReferenceFilterField.tsx +36 -12
- package/src/components/SelectableTable/filters/StringNumberFilterField.tsx +92 -24
- package/src/components/UnsavedChangesDialog.tsx +46 -0
- package/src/components/UserDisplay.tsx +55 -0
- package/src/components/VirtualTable/VirtualTable.tsx +105 -51
- package/src/components/VirtualTable/VirtualTableCell.tsx +1 -9
- package/src/components/VirtualTable/VirtualTableHeader.tsx +10 -10
- package/src/components/VirtualTable/VirtualTableHeaderRow.tsx +2 -2
- package/src/components/VirtualTable/VirtualTableProps.tsx +28 -14
- package/src/components/VirtualTable/VirtualTableRow.tsx +5 -6
- package/src/components/VirtualTable/fields/VirtualTableDateField.tsx +5 -5
- package/src/components/VirtualTable/fields/VirtualTableInput.tsx +2 -2
- package/src/components/VirtualTable/fields/VirtualTableNumberInput.tsx +2 -1
- package/src/components/VirtualTable/fields/VirtualTableSelect.tsx +16 -28
- package/src/components/VirtualTable/fields/VirtualTableUserSelect.tsx +99 -0
- package/src/components/VirtualTable/types.tsx +2 -3
- package/src/components/{EntityCollectionTable/internal → common}/default_entity_actions.tsx +64 -44
- package/src/components/common/index.ts +2 -1
- package/src/components/{VirtualTable/common.tsx → common/table_height.tsx} +5 -2
- package/src/components/common/types.tsx +4 -6
- package/src/components/common/useColumnsIds.tsx +16 -2
- package/src/components/common/useDataSourceTableController.tsx +420 -0
- package/src/components/common/useDebouncedCallback.tsx +20 -0
- package/src/components/common/useScrollRestoration.tsx +68 -0
- package/src/components/common/useTableSearchHelper.ts +53 -12
- package/src/components/index.tsx +6 -2
- package/src/contexts/BreacrumbsContext.tsx +38 -0
- package/src/contexts/DialogsProvider.tsx +5 -4
- package/src/contexts/InternalUserManagementContext.tsx +4 -0
- package/src/contexts/ModeController.tsx +1 -3
- package/src/contexts/SnackbarProvider.tsx +2 -0
- package/src/core/DefaultAppBar.tsx +219 -0
- package/src/core/DefaultDrawer.tsx +185 -0
- package/src/core/DrawerNavigationItem.tsx +66 -0
- package/src/core/EntityEditView.tsx +447 -469
- package/src/core/EntityEditViewFormActions.tsx +344 -0
- package/src/core/EntitySidePanel.tsx +96 -23
- package/src/core/FireCMS.tsx +85 -60
- package/src/core/FireCMSRouter.tsx +17 -0
- package/src/core/NavigationRoutes.tsx +28 -38
- package/src/core/SideDialogs.tsx +22 -12
- package/src/core/field_configs.tsx +41 -14
- package/src/core/index.tsx +6 -5
- package/src/form/EntityForm.tsx +740 -523
- package/src/form/EntityFormActions.tsx +226 -0
- package/src/form/PropertyFieldBinding.tsx +88 -41
- package/src/form/components/CustomIdField.tsx +9 -3
- package/src/form/components/ErrorFocus.tsx +22 -29
- package/src/form/components/FieldHelperText.tsx +4 -4
- package/src/form/components/FormEntry.tsx +22 -0
- package/src/form/components/FormLayout.tsx +16 -0
- package/src/form/components/LabelWithIcon.tsx +30 -19
- package/src/form/components/LabelWithIconAndTooltip.tsx +28 -0
- package/src/form/components/LocalChangesMenu.tsx +144 -0
- package/src/form/components/StorageItemPreview.tsx +23 -13
- package/src/form/components/StorageUploadProgress.tsx +5 -6
- package/src/form/components/index.tsx +3 -1
- package/src/form/field_bindings/ArrayCustomShapedFieldBinding.tsx +34 -19
- package/src/form/field_bindings/ArrayOfReferencesFieldBinding.tsx +50 -36
- package/src/form/field_bindings/BlockFieldBinding.tsx +56 -33
- package/src/form/field_bindings/DateTimeFieldBinding.tsx +18 -14
- package/src/form/field_bindings/KeyValueFieldBinding.tsx +61 -52
- package/src/form/field_bindings/MapFieldBinding.tsx +73 -55
- package/src/form/field_bindings/MarkdownEditorFieldBinding.tsx +159 -0
- package/src/form/field_bindings/{MultiSelectBinding.tsx → MultiSelectFieldBinding.tsx} +26 -21
- package/src/form/field_bindings/ReadOnlyFieldBinding.tsx +11 -16
- package/src/form/field_bindings/ReferenceAsStringFieldBinding.tsx +135 -0
- package/src/form/field_bindings/ReferenceFieldBinding.tsx +42 -31
- package/src/form/field_bindings/RepeatFieldBinding.tsx +62 -35
- package/src/form/field_bindings/SelectFieldBinding.tsx +24 -15
- package/src/form/field_bindings/StorageUploadFieldBinding.tsx +257 -199
- package/src/form/field_bindings/SwitchFieldBinding.tsx +29 -24
- package/src/form/field_bindings/TextFieldBinding.tsx +28 -24
- package/src/form/field_bindings/UserSelectFieldBinding.tsx +94 -0
- package/src/form/index.tsx +21 -37
- package/src/form/useClearRestoreValue.tsx +2 -2
- package/src/form/validation.ts +13 -23
- package/src/hooks/data/delete.ts +6 -5
- package/src/hooks/data/save.ts +26 -33
- package/src/hooks/data/useCollectionFetch.tsx +3 -3
- package/src/hooks/data/useDataSource.tsx +11 -3
- package/src/hooks/data/useEntityFetch.tsx +10 -6
- package/src/hooks/index.tsx +4 -0
- package/src/hooks/useAuthController.tsx +1 -1
- package/src/hooks/useBreadcrumbsController.tsx +31 -0
- package/src/hooks/useBrowserTitleAndIcon.tsx +1 -1
- package/src/hooks/useBuildLocalConfigurationPersistence.tsx +8 -10
- package/src/hooks/useBuildModeController.tsx +22 -29
- package/src/hooks/useBuildNavigationController.tsx +515 -121
- package/src/hooks/useCollapsedGroups.ts +64 -0
- package/src/hooks/useFireCMSContext.tsx +9 -35
- package/src/hooks/useInternalUserManagementController.tsx +16 -0
- package/src/hooks/useLargeLayout.tsx +0 -35
- package/src/hooks/useModeController.tsx +1 -2
- package/src/hooks/useProjectLog.tsx +32 -10
- package/src/hooks/useResolvedNavigationFrom.tsx +10 -12
- package/src/hooks/useValidateAuthenticator.tsx +17 -37
- package/src/index.ts +1 -0
- package/src/internal/useBuildDataSource.ts +79 -85
- package/src/internal/useBuildSideDialogsController.tsx +4 -2
- package/src/internal/useBuildSideEntityController.tsx +204 -77
- package/src/internal/useUnsavedChangesDialog.tsx +127 -91
- package/src/preview/PropertyPreview.tsx +42 -25
- package/src/preview/PropertyPreviewProps.tsx +7 -1
- package/src/preview/components/BooleanPreview.tsx +2 -2
- package/src/preview/components/EmptyValue.tsx +1 -1
- package/src/preview/components/EnumValuesChip.tsx +2 -2
- package/src/preview/components/ImagePreview.tsx +26 -37
- package/src/preview/components/ReferencePreview.tsx +30 -38
- package/src/preview/components/StorageThumbnail.tsx +5 -1
- package/src/preview/components/UrlComponentPreview.tsx +60 -28
- package/src/preview/components/UserPreview.tsx +27 -0
- package/src/preview/index.ts +1 -0
- package/src/preview/property_previews/ArrayOfMapsPreview.tsx +6 -6
- package/src/preview/property_previews/ArrayOfReferencesPreview.tsx +7 -5
- package/src/preview/property_previews/ArrayOfStorageComponentsPreview.tsx +5 -4
- package/src/preview/property_previews/ArrayOfStringsPreview.tsx +4 -4
- package/src/preview/property_previews/ArrayOneOfPreview.tsx +7 -6
- package/src/preview/property_previews/ArrayPropertyPreview.tsx +8 -7
- package/src/preview/property_previews/MapPropertyPreview.tsx +14 -13
- package/src/preview/property_previews/NumberPropertyPreview.tsx +2 -2
- package/src/preview/property_previews/SkeletonPropertyComponent.tsx +13 -13
- package/src/preview/property_previews/StringPropertyPreview.tsx +3 -3
- package/src/preview/util.ts +10 -10
- package/src/routes/CustomCMSRoute.tsx +21 -0
- package/src/routes/FireCMSRoute.tsx +246 -0
- package/src/routes/HomePageRoute.tsx +17 -0
- package/src/types/analytics.ts +3 -0
- package/src/types/auth.tsx +9 -13
- package/src/types/collections.ts +146 -30
- package/src/types/customization_controller.tsx +9 -1
- package/src/types/datasource.ts +61 -43
- package/src/types/dialogs_controller.tsx +7 -3
- package/src/types/entities.ts +19 -3
- package/src/types/entity_actions.tsx +86 -10
- package/src/types/entity_callbacks.ts +18 -18
- package/src/types/entity_overrides.tsx +2 -2
- package/src/types/export_import.ts +4 -4
- package/src/types/fields.tsx +91 -42
- package/src/types/firecms.tsx +34 -4
- package/src/types/firecms_context.tsx +18 -1
- package/src/types/index.ts +1 -1
- package/src/types/internal_user_management.ts +24 -0
- package/src/types/navigation.ts +77 -24
- package/src/types/permissions.ts +5 -5
- package/src/types/plugins.tsx +69 -15
- package/src/types/properties.ts +141 -33
- package/src/types/property_config.tsx +2 -2
- package/src/types/roles.ts +3 -0
- package/src/types/side_dialogs_controller.tsx +15 -0
- package/src/types/side_entity_controller.tsx +16 -1
- package/src/types/storage.ts +83 -1
- package/src/types/user.ts +3 -1
- package/src/util/builders.ts +10 -8
- package/src/util/callbacks.ts +119 -0
- package/src/util/collections.ts +8 -0
- package/src/util/createFormexStub.tsx +66 -0
- package/src/util/entities.ts +11 -8
- package/src/util/entity_actions.ts +28 -0
- package/src/util/entity_cache.ts +223 -0
- package/src/util/enums.ts +1 -1
- package/src/util/icon_list.ts +16 -10
- package/src/util/icon_synonyms.ts +3 -100
- package/src/util/icons.tsx +36 -11
- package/src/util/index.ts +3 -0
- package/src/util/join_collections.ts +11 -4
- package/src/util/make_properties_editable.ts +5 -19
- package/src/util/navigation_from_path.ts +33 -12
- package/src/util/navigation_utils.ts +141 -25
- package/src/util/objects.ts +128 -33
- package/src/util/parent_references_from_path.ts +3 -3
- package/src/util/permissions.ts +9 -8
- package/src/util/plurals.ts +0 -2
- package/src/util/property_utils.tsx +17 -6
- package/src/util/references.ts +19 -8
- package/src/util/resolutions.ts +122 -48
- package/src/util/storage.ts +79 -21
- package/src/util/strings.ts +2 -2
- package/src/util/useStorageUploadController.tsx +162 -62
- package/dist/components/EntityCollectionTable/internal/popup_field/ElementResizeListener.d.ts +0 -5
- package/dist/components/FireCMSAppBar.d.ts +0 -26
- package/dist/components/PropertyIdCopyTooltipContent.d.ts +0 -3
- package/dist/components/VirtualTable/common.d.ts +0 -2
- package/dist/core/Drawer.d.ts +0 -23
- package/dist/core/Scaffold.d.ts +0 -55
- package/dist/core/SideEntityView.d.ts +0 -7
- package/dist/form/components/FormikArrayContainer.d.ts +0 -18
- package/dist/form/field_bindings/MarkdownFieldBinding.d.ts +0 -9
- package/dist/internal/useBuildCustomizationController.d.ts +0 -2
- package/dist/internal/useLocaleConfig.d.ts +0 -1
- package/dist/types/appcheck.d.ts +0 -26
- package/src/components/EntityCollectionTable/internal/popup_field/ElementResizeListener.tsx +0 -59
- package/src/components/FireCMSAppBar.tsx +0 -165
- package/src/components/PropertyIdCopyTooltipContent.tsx +0 -28
- package/src/components/common/useDataSourceEntityCollectionTableController.tsx +0 -225
- package/src/core/Drawer.tsx +0 -191
- package/src/core/Scaffold.tsx +0 -281
- package/src/core/SideEntityView.tsx +0 -38
- package/src/form/components/FormikArrayContainer.tsx +0 -44
- package/src/form/field_bindings/MarkdownFieldBinding.tsx +0 -695
- package/src/internal/useBuildCustomizationController.tsx +0 -5
- package/src/internal/useLocaleConfig.tsx +0 -18
- package/src/types/appcheck.ts +0 -29
- /package/src/util/{common.tsx → common.ts} +0 -0
package/README.md
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
</p>
|
|
10
10
|
|
|
11
11
|
<h1 align="center">FireCMS</h1>
|
|
12
|
-
<h3 align="center">Awesome Firebase/
|
|
12
|
+
<h3 align="center">Awesome Firebase/MongoDB-based headless CMS</h3>
|
|
13
13
|
<p align="center"><a href="https://demo.firecms.co">Live demo</a></p>
|
|
14
14
|
|
|
15
15
|
<br />
|
|
@@ -49,7 +49,7 @@ FireCMS is based on this great technologies:
|
|
|
49
49
|
The easiest way to get going is to check our quickstart guide! You will just
|
|
50
50
|
need to follow some quick steps:
|
|
51
51
|
|
|
52
|
-
https://firecms.co/docs
|
|
52
|
+
https://firecms.co/docs
|
|
53
53
|
|
|
54
54
|
### Demo
|
|
55
55
|
|
|
@@ -89,7 +89,7 @@ navigating through **subcollections** and accessing custom views (such as custom
|
|
|
89
89
|
forms or blog previews). This functionality can also be accessed
|
|
90
90
|
programmatically using the `useSideEntityController` hook.
|
|
91
91
|
|
|
92
|
-
FireCMS includes **over
|
|
92
|
+
FireCMS includes **over 20 built-in fields** with numerous customization and
|
|
93
93
|
validation options. The components have been carefully designed for an
|
|
94
94
|
outstanding user experience, including advanced features like **references** to
|
|
95
95
|
other collections, **markdown**, and **array reordering**.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { DefaultAppBarProps } from "../core/DefaultAppBar";
|
|
2
|
+
/**
|
|
3
|
+
* This component renders the main app bar of FireCMS.
|
|
4
|
+
*/
|
|
5
|
+
export declare function AppBar({ children, ...props }: {
|
|
6
|
+
children?: React.ReactNode;
|
|
7
|
+
className?: string;
|
|
8
|
+
style?: React.CSSProperties;
|
|
9
|
+
} & DefaultAppBarProps): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
export declare namespace AppBar {
|
|
11
|
+
var componentType: string;
|
|
12
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This component is in charge of rendering the drawer.
|
|
3
|
+
* If you add this component under your {@link Scaffold}, it will be rendered
|
|
4
|
+
* as a drawer, and the open and close functionality will be handled automatically.
|
|
5
|
+
* If you want to customise the drawer, you can create your own component and pass it as a child.
|
|
6
|
+
* For custom drawers, you can use the {@link useApp} to open and close the drawer.
|
|
7
|
+
*
|
|
8
|
+
*/
|
|
9
|
+
export declare function Drawer({ children, className, style }: {
|
|
10
|
+
children?: React.ReactNode;
|
|
11
|
+
className?: string;
|
|
12
|
+
style?: React.CSSProperties;
|
|
13
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
export declare namespace Drawer {
|
|
15
|
+
var componentType: string;
|
|
16
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
export declare const DRAWER_WIDTH = 280;
|
|
3
|
+
/**
|
|
4
|
+
* @group Core
|
|
5
|
+
*/
|
|
6
|
+
export interface ScaffoldProps {
|
|
7
|
+
/**
|
|
8
|
+
* Open the drawer on hover
|
|
9
|
+
*/
|
|
10
|
+
autoOpenDrawer?: boolean;
|
|
11
|
+
/**
|
|
12
|
+
* Logo to be displayed in the top bar and drawer.
|
|
13
|
+
* Note that this has no effect if you are using a custom AppBar or Drawer.
|
|
14
|
+
*/
|
|
15
|
+
logo?: string;
|
|
16
|
+
/**
|
|
17
|
+
* If true, the main content will be padded in large layouts. Defaults to true.
|
|
18
|
+
*/
|
|
19
|
+
padding?: boolean;
|
|
20
|
+
className?: string;
|
|
21
|
+
style?: React.CSSProperties;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* This view acts as a scaffold for FireCMS.
|
|
25
|
+
*
|
|
26
|
+
* It is in charge of displaying the navigation drawer, top bar and main
|
|
27
|
+
* collection views.
|
|
28
|
+
* This component needs a parent {@link FireCMS}
|
|
29
|
+
*
|
|
30
|
+
* @param props
|
|
31
|
+
|
|
32
|
+
* @group Core
|
|
33
|
+
*/
|
|
34
|
+
export declare const Scaffold: React.NamedExoticComponent<React.PropsWithChildren<ScaffoldProps>>;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
/**
|
|
3
|
+
* This context represents the state of the app in terms of layout.
|
|
4
|
+
* @group Core
|
|
5
|
+
*/
|
|
6
|
+
export type AppState = {
|
|
7
|
+
hasDrawer: boolean;
|
|
8
|
+
drawerHovered: boolean;
|
|
9
|
+
drawerOpen: boolean;
|
|
10
|
+
openDrawer: () => void;
|
|
11
|
+
closeDrawer: () => void;
|
|
12
|
+
autoOpenDrawer?: boolean;
|
|
13
|
+
logo?: string;
|
|
14
|
+
};
|
|
15
|
+
export declare const AppContext: React.Context<AppState>;
|
|
16
|
+
export declare function useApp(): AppState;
|
|
@@ -1,40 +1,59 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
export type ArrayEntryParams = {
|
|
3
|
+
index: number;
|
|
4
|
+
internalId: number;
|
|
5
|
+
isDragging: boolean;
|
|
6
|
+
storedProps?: object;
|
|
7
|
+
storeProps: (props: object) => void;
|
|
8
|
+
};
|
|
9
|
+
export type ArrayEntryBuilder = (params: ArrayEntryParams) => React.ReactNode;
|
|
10
|
+
export interface ArrayContainerProps<T> {
|
|
4
11
|
droppableId: string;
|
|
5
12
|
value: T[];
|
|
6
13
|
addLabel: string;
|
|
7
|
-
buildEntry:
|
|
14
|
+
buildEntry: ArrayEntryBuilder;
|
|
8
15
|
disabled?: boolean;
|
|
9
16
|
size?: "small" | "medium";
|
|
10
17
|
onInternalIdAdded?: (id: number) => void;
|
|
11
18
|
includeAddButton?: boolean;
|
|
19
|
+
canAddElements?: boolean;
|
|
20
|
+
sortable?: boolean;
|
|
12
21
|
newDefaultEntry: T;
|
|
13
22
|
onValueChange: (value: T[]) => void;
|
|
23
|
+
className?: string;
|
|
24
|
+
min?: number;
|
|
25
|
+
max?: number;
|
|
14
26
|
}
|
|
15
|
-
/**
|
|
16
|
-
* @group Form custom fields
|
|
17
|
-
*/
|
|
18
|
-
export declare function ArrayContainer<T>({ droppableId, addLabel, value, disabled, buildEntry, size, onInternalIdAdded, includeAddButton, newDefaultEntry, onValueChange }: ArrayContainerProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
19
27
|
type ArrayContainerItemProps = {
|
|
20
|
-
|
|
28
|
+
nodeRef: (node: HTMLElement | null) => void;
|
|
29
|
+
style: React.CSSProperties;
|
|
30
|
+
dragHandleProps: any;
|
|
21
31
|
index: number;
|
|
22
32
|
internalId: number;
|
|
23
33
|
size?: "small" | "medium";
|
|
24
34
|
disabled: boolean;
|
|
25
|
-
buildEntry:
|
|
35
|
+
buildEntry: ArrayEntryBuilder;
|
|
26
36
|
remove: (index: number) => void;
|
|
27
37
|
copy: (index: number) => void;
|
|
38
|
+
addInIndex?: (index: number) => void;
|
|
39
|
+
canAddElements?: boolean;
|
|
40
|
+
sortable: boolean;
|
|
28
41
|
isDragging: boolean;
|
|
42
|
+
storedProps?: object;
|
|
43
|
+
updateItemCustomProps: (internalId: number, props: object) => void;
|
|
29
44
|
};
|
|
30
|
-
export declare function ArrayContainerItem({
|
|
31
|
-
export declare function ArrayItemOptions({ direction, disabled, remove, index,
|
|
45
|
+
export declare function ArrayContainerItem({ nodeRef, style, dragHandleProps, index, internalId, size, disabled, buildEntry, remove, copy, addInIndex, canAddElements, sortable, isDragging, storedProps, updateItemCustomProps }: ArrayContainerItemProps): import("react/jsx-runtime").JSX.Element;
|
|
46
|
+
export declare function ArrayItemOptions({ dragHandleProps, direction, disabled, remove, index, copy, canAddElements, sortable, addInIndex, }: {
|
|
47
|
+
dragHandleProps: any;
|
|
32
48
|
direction?: "row" | "column";
|
|
33
49
|
disabled: boolean;
|
|
34
50
|
remove: (index: number) => void;
|
|
35
51
|
index: number;
|
|
36
|
-
provided: any;
|
|
37
52
|
copy: (index: number) => void;
|
|
53
|
+
sortable: boolean;
|
|
54
|
+
canAddElements?: boolean;
|
|
55
|
+
addInIndex?: (index: number) => void;
|
|
38
56
|
}): import("react/jsx-runtime").JSX.Element;
|
|
57
|
+
export declare function ArrayContainer<T>({ droppableId, addLabel, value, disabled, buildEntry, size, onInternalIdAdded, includeAddButton: deprecatedIncludeAddButton, canAddElements: canAddElementsProp, sortable, newDefaultEntry, onValueChange, className, min, max }: ArrayContainerProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
39
58
|
export declare function getRandomId(): number;
|
|
40
59
|
export {};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
export declare function
|
|
2
|
+
export declare function ConfirmationDialog({ open, onAccept, onCancel, title, loading, body }: {
|
|
3
3
|
open: boolean;
|
|
4
4
|
onAccept: () => void;
|
|
5
5
|
onCancel: () => void;
|
|
@@ -9,23 +9,24 @@ import { CollectionSize, Entity, EntityAction, EntityCollection, SelectionContro
|
|
|
9
9
|
* @param size
|
|
10
10
|
* @param toggleEntitySelection
|
|
11
11
|
* @param hideId
|
|
12
|
-
* @constructor
|
|
13
12
|
*
|
|
14
13
|
* @group Collection components
|
|
15
14
|
*/
|
|
16
|
-
export declare const EntityCollectionRowActions: ({ entity, collection, fullPath, width, frozen, isSelected, selectionEnabled, size, highlightEntity, onCollectionChange, unhighlightEntity, actions, hideId, selectionController, }: {
|
|
15
|
+
export declare const EntityCollectionRowActions: ({ entity, collection, fullPath, fullIdPath, width, frozen, isSelected, selectionEnabled, size, highlightEntity, onCollectionChange, unhighlightEntity, actions, hideId, selectionController, openEntityMode }: {
|
|
17
16
|
entity: Entity<any>;
|
|
18
|
-
collection?: EntityCollection<any
|
|
19
|
-
fullPath?: string
|
|
17
|
+
collection?: EntityCollection<any>;
|
|
18
|
+
fullPath?: string;
|
|
19
|
+
fullIdPath?: string;
|
|
20
20
|
width: number;
|
|
21
|
-
frozen?: boolean
|
|
21
|
+
frozen?: boolean;
|
|
22
22
|
size: CollectionSize;
|
|
23
|
-
isSelected?: boolean
|
|
24
|
-
selectionEnabled?: boolean
|
|
25
|
-
actions?: EntityAction[]
|
|
26
|
-
hideId?: boolean
|
|
27
|
-
onCollectionChange?: (
|
|
28
|
-
selectionController?: SelectionController
|
|
29
|
-
highlightEntity?: (
|
|
30
|
-
unhighlightEntity?: (
|
|
23
|
+
isSelected?: boolean;
|
|
24
|
+
selectionEnabled?: boolean;
|
|
25
|
+
actions?: EntityAction[];
|
|
26
|
+
hideId?: boolean;
|
|
27
|
+
onCollectionChange?: () => void;
|
|
28
|
+
selectionController?: SelectionController;
|
|
29
|
+
highlightEntity?: (entity: Entity<any>) => void;
|
|
30
|
+
unhighlightEntity?: (entity: Entity<any>) => void;
|
|
31
|
+
openEntityMode: "side_panel" | "full_screen";
|
|
31
32
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -17,11 +17,11 @@ import { EntityCollectionTableProps } from "./EntityCollectionTableProps";
|
|
|
17
17
|
*
|
|
18
18
|
* The data displayed in the table is managed by a {@link EntityTableController}.
|
|
19
19
|
* You can build the default, bound to a path in the datasource, by using the hook
|
|
20
|
-
* {@link
|
|
20
|
+
* {@link useDataSourceTableController}
|
|
21
21
|
*
|
|
22
22
|
* @see EntityCollectionTableProps
|
|
23
23
|
* @see EntityCollectionView
|
|
24
24
|
* @see VirtualTable
|
|
25
25
|
* @group Components
|
|
26
26
|
*/
|
|
27
|
-
export declare const EntityCollectionTable: <M extends Record<string, any
|
|
27
|
+
export declare const EntityCollectionTable: <M extends Record<string, any> = any, USER extends User = any>({ className, style, forceFilter, actionsStart, actions, title, tableRowActionsBuilder, uniqueFieldValidator, getPropertyFor, onValueChange, selectionController, highlightedEntities, onEntityClick, onColumnResize, initialScroll, onScroll, onSizeChanged, textSearchEnabled, hoverRow, inlineEditing, additionalFields, displayedColumnIds, defaultSize, properties, tableController, filterable, sortable, endAdornment, AddColumnComponent, AdditionalHeaderWidget, additionalIDHeaderWidget, emptyComponent, getIdColumnWidth, onTextSearchClick, textSearchLoading, enablePopupIcon, openEntityMode }: EntityCollectionTableProps<M>) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -4,7 +4,9 @@ import { OnCellValueChange, OnColumnResizeParams, UniqueFieldValidator } from ".
|
|
|
4
4
|
/**
|
|
5
5
|
* @group Collection components
|
|
6
6
|
*/
|
|
7
|
-
export type EntityCollectionTableProps<M extends Record<string, any>,
|
|
7
|
+
export type EntityCollectionTableProps<M extends Record<string, any>, USER extends User = User> = {
|
|
8
|
+
className?: string;
|
|
9
|
+
style?: React.CSSProperties;
|
|
8
10
|
/**
|
|
9
11
|
* Display these entities as selected
|
|
10
12
|
*/
|
|
@@ -46,6 +48,19 @@ export type EntityCollectionTableProps<M extends Record<string, any>, UserType e
|
|
|
46
48
|
* Callback when a column is resized
|
|
47
49
|
*/
|
|
48
50
|
onColumnResize?(params: OnColumnResizeParams): void;
|
|
51
|
+
/**
|
|
52
|
+
* Initial scroll position
|
|
53
|
+
*/
|
|
54
|
+
initialScroll?: number;
|
|
55
|
+
/**
|
|
56
|
+
* Callback when the table is scrolled
|
|
57
|
+
* @param props
|
|
58
|
+
*/
|
|
59
|
+
onScroll?: (props: {
|
|
60
|
+
scrollDirection: "forward" | "backward";
|
|
61
|
+
scrollOffset: number;
|
|
62
|
+
scrollUpdateWasRequested: boolean;
|
|
63
|
+
}) => void;
|
|
49
64
|
/**
|
|
50
65
|
* Callback when the selected size of the table is changed
|
|
51
66
|
*/
|
|
@@ -61,15 +76,15 @@ export type EntityCollectionTableProps<M extends Record<string, any>, UserType e
|
|
|
61
76
|
actions?: React.ReactNode;
|
|
62
77
|
/**
|
|
63
78
|
* Controller holding the logic for the table
|
|
64
|
-
* {@link
|
|
79
|
+
* {@link useDataSourceTableController}
|
|
65
80
|
* {@link EntityTableController}
|
|
66
81
|
*/
|
|
67
82
|
tableController: EntityTableController<M>;
|
|
68
|
-
displayedColumnIds
|
|
83
|
+
displayedColumnIds?: PropertyColumnConfig[];
|
|
69
84
|
forceFilter?: FilterValues<Extract<keyof M, string>>;
|
|
70
85
|
textSearchEnabled?: boolean;
|
|
71
86
|
inlineEditing?: boolean;
|
|
72
|
-
additionalFields?: AdditionalFieldDelegate<M,
|
|
87
|
+
additionalFields?: AdditionalFieldDelegate<M, USER>[];
|
|
73
88
|
defaultSize?: CollectionSize;
|
|
74
89
|
properties: ResolvedProperties<M>;
|
|
75
90
|
getPropertyFor?: (props: GetPropertyForProps<M>) => ResolvedProperties<M>[string];
|
|
@@ -87,13 +102,14 @@ export type EntityCollectionTableProps<M extends Record<string, any>, UserType e
|
|
|
87
102
|
getIdColumnWidth?: () => number;
|
|
88
103
|
onTextSearchClick?: () => void;
|
|
89
104
|
textSearchLoading?: boolean;
|
|
105
|
+
enablePopupIcon: boolean;
|
|
106
|
+
openEntityMode?: "side_panel" | "full_screen";
|
|
90
107
|
};
|
|
91
108
|
export type GetPropertyForProps<M extends Record<string, any>> = {
|
|
92
109
|
propertyKey: string;
|
|
93
|
-
propertyValue: any;
|
|
94
110
|
entity: Entity<M>;
|
|
95
111
|
};
|
|
96
112
|
export type PropertyColumnConfig = {
|
|
97
113
|
key: string;
|
|
98
|
-
disabled
|
|
114
|
+
disabled?: boolean;
|
|
99
115
|
};
|
|
@@ -6,11 +6,10 @@ export interface PropertiesToColumnsParams<M extends Record<string, any>> {
|
|
|
6
6
|
properties: ResolvedProperties<M>;
|
|
7
7
|
sortable?: boolean;
|
|
8
8
|
forceFilter?: FilterValues<keyof M extends string ? keyof M : never>;
|
|
9
|
-
disabledFilter?: boolean;
|
|
10
9
|
AdditionalHeaderWidget?: React.ComponentType<{
|
|
11
10
|
property: ResolvedProperty;
|
|
12
11
|
propertyKey: string;
|
|
13
12
|
onHover: boolean;
|
|
14
13
|
}>;
|
|
15
14
|
}
|
|
16
|
-
export declare function propertiesToColumns<M extends Record<string, any>>({ properties, sortable, forceFilter,
|
|
15
|
+
export declare function propertiesToColumns<M extends Record<string, any>>({ properties, sortable, forceFilter, AdditionalHeaderWidget }: PropertiesToColumnsParams<M>): VirtualTableColumn[];
|
|
@@ -11,9 +11,11 @@ type TableReferenceFieldProps = {
|
|
|
11
11
|
title?: string;
|
|
12
12
|
path: string;
|
|
13
13
|
forceFilter?: FilterValues<string>;
|
|
14
|
+
includeId?: boolean;
|
|
15
|
+
includeEntityLink?: boolean;
|
|
14
16
|
};
|
|
15
17
|
export declare function TableReferenceField(props: TableReferenceFieldProps): import("react/jsx-runtime").JSX.Element;
|
|
16
|
-
export declare const
|
|
18
|
+
export declare const TableReferenceFieldInternal: React.NamedExoticComponent<TableReferenceFieldProps & {
|
|
17
19
|
collection: EntityCollection;
|
|
18
20
|
}>;
|
|
19
21
|
export {};
|
|
@@ -2,5 +2,5 @@ export { EntityCollectionTable } from "./EntityCollectionTable";
|
|
|
2
2
|
export type { EntityCollectionTableProps, } from "./EntityCollectionTableProps";
|
|
3
3
|
export * from "./PropertyTableCell";
|
|
4
4
|
export * from "./EntityCollectionRowActions";
|
|
5
|
-
export * from "../common/
|
|
5
|
+
export * from "../common/useDataSourceTableController";
|
|
6
6
|
export * from "./column_utils";
|
|
@@ -2,17 +2,14 @@ import React from "react";
|
|
|
2
2
|
import { CollectionSize } from "../../../types";
|
|
3
3
|
interface CollectionTableToolbarProps {
|
|
4
4
|
size: CollectionSize;
|
|
5
|
-
filterIsSet: boolean;
|
|
6
5
|
loading: boolean;
|
|
7
|
-
forceFilter?: boolean;
|
|
8
6
|
actionsStart?: React.ReactNode;
|
|
9
7
|
actions?: React.ReactNode;
|
|
10
8
|
title?: React.ReactNode;
|
|
11
9
|
onTextSearchClick?: () => void;
|
|
12
10
|
onTextSearch?: (searchString?: string) => void;
|
|
13
11
|
onSizeChanged: (size: CollectionSize) => void;
|
|
14
|
-
clearFilter?: () => void;
|
|
15
12
|
textSearchLoading?: boolean;
|
|
16
13
|
}
|
|
17
|
-
export declare function CollectionTableToolbar(
|
|
14
|
+
export declare function CollectionTableToolbar({ actions, actionsStart, loading, onSizeChanged, onTextSearch, onTextSearchClick, size, textSearchLoading, title }: CollectionTableToolbarProps): import("react/jsx-runtime").JSX.Element;
|
|
18
15
|
export {};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import {
|
|
2
|
+
import { TableSize } from "../../common/table_height";
|
|
3
3
|
interface EntityTableCellProps {
|
|
4
4
|
children: React.ReactNode;
|
|
5
5
|
actions?: React.ReactNode;
|
|
@@ -12,7 +12,7 @@ interface EntityTableCellProps {
|
|
|
12
12
|
error?: Error;
|
|
13
13
|
allowScroll?: boolean;
|
|
14
14
|
align: "right" | "left" | "center";
|
|
15
|
-
size:
|
|
15
|
+
size: TableSize;
|
|
16
16
|
disabledTooltip?: string;
|
|
17
17
|
width: number;
|
|
18
18
|
showExpandIcon?: boolean;
|
|
@@ -2,12 +2,12 @@ import { Entity, EntityCollection } from "../../../../types";
|
|
|
2
2
|
import { CustomFieldValidator } from "../../../../form/validation";
|
|
3
3
|
import { OnCellValueChangeParams } from "../../../common";
|
|
4
4
|
interface PopupFormFieldProps<M extends Record<string, any>> {
|
|
5
|
-
entity?: Entity<M>;
|
|
6
5
|
customFieldValidator?: CustomFieldValidator;
|
|
7
6
|
path: string;
|
|
7
|
+
entityId: string;
|
|
8
8
|
tableKey: string;
|
|
9
9
|
propertyKey?: Extract<keyof M, string>;
|
|
10
|
-
collection?: EntityCollection<
|
|
10
|
+
collection?: EntityCollection<any>;
|
|
11
11
|
cellRect?: DOMRect;
|
|
12
12
|
open: boolean;
|
|
13
13
|
onClose: () => void;
|
|
@@ -16,8 +16,11 @@ interface PopupFormFieldProps<M extends Record<string, any>> {
|
|
|
16
16
|
* Callback when the value of a cell has been edited
|
|
17
17
|
* @param params
|
|
18
18
|
*/
|
|
19
|
-
onCellValueChange?: (params: OnCellValueChangeParams<any,
|
|
19
|
+
onCellValueChange?: (params: OnCellValueChangeParams<any, any>) => Promise<void> | void;
|
|
20
20
|
}
|
|
21
21
|
export declare function PopupFormField<M extends Record<string, any>>(props: PopupFormFieldProps<M>): import("react/jsx-runtime").JSX.Element | null;
|
|
22
|
-
export declare function
|
|
22
|
+
export declare function PopupFormFieldLoading<M extends Record<string, any>>({ tableKey, entityId, customFieldValidator, propertyKey, collection: inputCollection, path, cellRect, open, onClose, onCellValueChange, container }: PopupFormFieldProps<M>): import("react/jsx-runtime").JSX.Element | null;
|
|
23
|
+
export declare function PopupFormFieldInternal<M extends Record<string, any>>({ tableKey, entityId, customFieldValidator, propertyKey, collection: inputCollection, path, cellRect, open, onClose, onCellValueChange, container, entity }: PopupFormFieldProps<M> & {
|
|
24
|
+
entity?: Entity<M>;
|
|
25
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
23
26
|
export {};
|
|
@@ -4,10 +4,28 @@ import { EntityCollection } from "../../types";
|
|
|
4
4
|
* @group Components
|
|
5
5
|
*/
|
|
6
6
|
export type EntityCollectionViewProps<M extends Record<string, any>> = {
|
|
7
|
-
|
|
7
|
+
/**
|
|
8
|
+
* Complete path where this collection is located.
|
|
9
|
+
* It defaults to the collection path if not provided.
|
|
10
|
+
*/
|
|
11
|
+
fullPath?: string;
|
|
12
|
+
/**
|
|
13
|
+
* Full path using navigation ids.
|
|
14
|
+
*/
|
|
15
|
+
fullIdPath?: string;
|
|
16
|
+
/**
|
|
17
|
+
* If this is a subcollection, specify the parent collection ids.
|
|
18
|
+
*/
|
|
8
19
|
parentCollectionIds?: string[];
|
|
20
|
+
/**
|
|
21
|
+
* Whether this is a subcollection or not.
|
|
22
|
+
*/
|
|
9
23
|
isSubCollection?: boolean;
|
|
10
24
|
className?: string;
|
|
25
|
+
/**
|
|
26
|
+
* If true, this view will store its filter and sorting status in the url params
|
|
27
|
+
*/
|
|
28
|
+
updateUrl?: boolean;
|
|
11
29
|
} & EntityCollection<M>;
|
|
12
30
|
/**
|
|
13
31
|
* This component is in charge of binding a datasource path with an {@link EntityCollection}
|
|
@@ -30,7 +48,7 @@ export type EntityCollectionViewProps<M extends Record<string, any>> = {
|
|
|
30
48
|
*
|
|
31
49
|
* @param fullPath
|
|
32
50
|
* @param collection
|
|
33
|
-
|
|
51
|
+
|
|
34
52
|
* @group Components
|
|
35
53
|
*/
|
|
36
54
|
export declare const EntityCollectionView: React.FunctionComponent<EntityCollectionViewProps<any>>;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { EntityCollection, EntityTableController, SelectionController } from "../../types";
|
|
2
|
+
export type EntityCollectionViewStartActionsProps<M extends Record<string, any>> = {
|
|
3
|
+
collection: EntityCollection<M>;
|
|
4
|
+
path: string;
|
|
5
|
+
relativePath: string;
|
|
6
|
+
parentCollectionIds: string[];
|
|
7
|
+
selectionController: SelectionController<M>;
|
|
8
|
+
tableController: EntityTableController<M>;
|
|
9
|
+
collectionEntitiesCount: number;
|
|
10
|
+
};
|
|
11
|
+
export declare function EntityCollectionViewStartActions<M extends Record<string, any>>({ collection, relativePath, parentCollectionIds, path, selectionController, tableController, collectionEntitiesCount }: EntityCollectionViewStartActionsProps<M>): import("react/jsx-runtime").JSX.Element;
|
|
@@ -2,28 +2,31 @@ import * as React from "react";
|
|
|
2
2
|
import { Entity, EntityCollection } from "../types";
|
|
3
3
|
import { PreviewSize } from "../preview";
|
|
4
4
|
export type EntityPreviewProps = {
|
|
5
|
-
size
|
|
5
|
+
size?: PreviewSize;
|
|
6
6
|
actions?: React.ReactNode;
|
|
7
7
|
collection?: EntityCollection;
|
|
8
8
|
hover?: boolean;
|
|
9
|
-
|
|
10
|
-
disabled
|
|
9
|
+
previewKeys?: string[];
|
|
10
|
+
disabled?: boolean;
|
|
11
11
|
entity: Entity<any>;
|
|
12
|
-
|
|
12
|
+
includeId?: boolean;
|
|
13
|
+
includeTitle?: boolean;
|
|
14
|
+
includeEntityLink?: boolean;
|
|
15
|
+
includeImage?: boolean;
|
|
13
16
|
onClick?: (e: React.SyntheticEvent) => void;
|
|
14
17
|
};
|
|
15
18
|
/**
|
|
16
19
|
* This view is used to display a preview of an entity.
|
|
17
20
|
* It is used by default in reference fields and whenever a reference is displayed.
|
|
18
21
|
*/
|
|
19
|
-
export declare function EntityPreview({ actions, disabled, hover, collection: collectionProp,
|
|
22
|
+
export declare function EntityPreview({ actions, disabled, hover, collection: collectionProp, previewKeys, onClick, size, includeId, includeTitle, includeEntityLink, includeImage, entity, }: EntityPreviewProps): import("react/jsx-runtime").JSX.Element;
|
|
20
23
|
export type EntityPreviewContainerProps = {
|
|
21
24
|
children: React.ReactNode;
|
|
22
25
|
hover?: boolean;
|
|
23
26
|
fullwidth?: boolean;
|
|
24
|
-
size
|
|
27
|
+
size?: PreviewSize;
|
|
25
28
|
className?: string;
|
|
26
29
|
style?: React.CSSProperties;
|
|
27
30
|
onClick?: (e: React.SyntheticEvent) => void;
|
|
28
31
|
};
|
|
29
|
-
export declare const EntityPreviewContainer: React.
|
|
32
|
+
export declare const EntityPreviewContainer: React.ForwardRefExoticComponent<EntityPreviewContainerProps & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -1,21 +1,8 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
* for each collection defined in the navigation.
|
|
5
|
-
* @constructor
|
|
6
|
-
* @group Components
|
|
7
|
-
*/
|
|
2
|
+
export declare const DEFAULT_GROUP_NAME = "Views";
|
|
3
|
+
export declare const ADMIN_GROUP_NAME = "Admin";
|
|
8
4
|
export declare function DefaultHomePage({ additionalActions, additionalChildrenStart, additionalChildrenEnd }: {
|
|
9
|
-
/**
|
|
10
|
-
* Additional actions to be rendered in the home page, close to the search bar.
|
|
11
|
-
*/
|
|
12
5
|
additionalActions?: React.ReactNode;
|
|
13
|
-
/**
|
|
14
|
-
* Additional children to be rendered in the beginning of the home page.
|
|
15
|
-
*/
|
|
16
6
|
additionalChildrenStart?: React.ReactNode;
|
|
17
|
-
/**
|
|
18
|
-
* Additional children to be rendered at the end of the home page.
|
|
19
|
-
*/
|
|
20
7
|
additionalChildrenEnd?: React.ReactNode;
|
|
21
8
|
}): import("react/jsx-runtime").JSX.Element;
|