@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
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { Active, CollisionDetection, DropAnimation, UniqueIdentifier } from "@dnd-kit/core";
|
|
3
|
+
import { NavigationEntry } from "../../types";
|
|
4
|
+
export declare function SortableNavigationCard({ entry, onClick }: {
|
|
5
|
+
entry: NavigationEntry;
|
|
6
|
+
onClick?: () => void;
|
|
7
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export declare function NavigationGroupDroppable({ id, itemIds, children, isPotentialCardDropTarget }: {
|
|
9
|
+
id: UniqueIdentifier;
|
|
10
|
+
itemIds: UniqueIdentifier[];
|
|
11
|
+
children: React.ReactNode;
|
|
12
|
+
isPotentialCardDropTarget?: boolean;
|
|
13
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
export declare function SortableNavigationGroup({ groupName, children, disabled }: {
|
|
15
|
+
groupName: string;
|
|
16
|
+
children: React.ReactNode;
|
|
17
|
+
disabled?: boolean;
|
|
18
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
19
|
+
export declare function useHomePageDnd({ items, setItems, disabled, onCardMovedBetweenGroups, onGroupMoved, onNewGroupDrop, onPersist }: {
|
|
20
|
+
items: {
|
|
21
|
+
name: string;
|
|
22
|
+
entries: NavigationEntry[];
|
|
23
|
+
}[];
|
|
24
|
+
setItems: (newItemsOrUpdater: {
|
|
25
|
+
name: string;
|
|
26
|
+
entries: NavigationEntry[];
|
|
27
|
+
}[] | ((currentItems: {
|
|
28
|
+
name: string;
|
|
29
|
+
entries: NavigationEntry[];
|
|
30
|
+
}[]) => {
|
|
31
|
+
name: string;
|
|
32
|
+
entries: NavigationEntry[];
|
|
33
|
+
}[])) => void;
|
|
34
|
+
disabled: boolean;
|
|
35
|
+
onCardMovedBetweenGroups?: (card: NavigationEntry) => void;
|
|
36
|
+
onGroupMoved?: (groupName: string, oldIndex: number, newIndex: number) => void;
|
|
37
|
+
onNewGroupDrop?: () => void;
|
|
38
|
+
onPersist?: (latest: {
|
|
39
|
+
name: string;
|
|
40
|
+
entries: NavigationEntry[];
|
|
41
|
+
}[]) => void;
|
|
42
|
+
}): {
|
|
43
|
+
sensors: import("@dnd-kit/core").SensorDescriptor<import("@dnd-kit/core").SensorOptions>[];
|
|
44
|
+
collisionDetection: CollisionDetection;
|
|
45
|
+
onDragStart: ({ active }: {
|
|
46
|
+
active: Active;
|
|
47
|
+
}) => void;
|
|
48
|
+
onDragOver: ({ active, over }: {
|
|
49
|
+
active: Active;
|
|
50
|
+
over: any;
|
|
51
|
+
}) => void;
|
|
52
|
+
onDragEnd: ({ active, over }: {
|
|
53
|
+
active: Active;
|
|
54
|
+
over: any;
|
|
55
|
+
}) => void;
|
|
56
|
+
onDragCancel: () => void;
|
|
57
|
+
dropAnimation: DropAnimation;
|
|
58
|
+
activeItemForOverlay: NavigationEntry | null;
|
|
59
|
+
activeGroupData: {
|
|
60
|
+
name: string;
|
|
61
|
+
entries: NavigationEntry[];
|
|
62
|
+
} | null;
|
|
63
|
+
draggingGroupId: UniqueIdentifier | null;
|
|
64
|
+
containers: string[];
|
|
65
|
+
dndKitActiveNode: Active | null;
|
|
66
|
+
isDraggingCardOnly: boolean;
|
|
67
|
+
dialogOpenForGroup: string | null;
|
|
68
|
+
setDialogOpenForGroup: React.Dispatch<React.SetStateAction<string | null>>;
|
|
69
|
+
handleRenameGroup: (oldName: string, newName: string) => void;
|
|
70
|
+
handleDialogClose: () => void;
|
|
71
|
+
isHoveringNewGroupDropZone: boolean;
|
|
72
|
+
setIsHoveringNewGroupDropZone: React.Dispatch<React.SetStateAction<boolean>>;
|
|
73
|
+
};
|
|
74
|
+
export declare function NewGroupDropZone({ disabled, setIsHovering }: {
|
|
75
|
+
disabled: boolean;
|
|
76
|
+
setIsHovering: (v: boolean) => void;
|
|
77
|
+
}): import("react/jsx-runtime").JSX.Element | null;
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
+
import React from "react";
|
|
1
2
|
export type NavigationCardProps = {
|
|
2
3
|
name: string;
|
|
3
4
|
description?: string;
|
|
4
5
|
actions: React.ReactNode;
|
|
5
6
|
icon: React.ReactNode;
|
|
6
7
|
onClick?: () => void;
|
|
8
|
+
shrink?: boolean;
|
|
7
9
|
};
|
|
8
|
-
export declare
|
|
10
|
+
export declare const NavigationCard: React.NamedExoticComponent<NavigationCardProps>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { NavigationEntry } from "../../types";
|
|
2
2
|
/**
|
|
3
3
|
* This is the component used in the home page to render a card for each
|
|
4
4
|
* collection or view.
|
|
@@ -10,8 +10,9 @@ import { TopNavigationEntry } from "../../types";
|
|
|
10
10
|
* @param name
|
|
11
11
|
* @param description
|
|
12
12
|
* @param onClick
|
|
13
|
-
|
|
13
|
+
|
|
14
14
|
*/
|
|
15
|
-
export declare function NavigationCardBinding({ path, collection, view, url, name, description, onClick, type }:
|
|
15
|
+
export declare function NavigationCardBinding({ path, collection, view, url, name, description, onClick, type, shrink }: NavigationEntry & {
|
|
16
16
|
onClick?: () => void;
|
|
17
|
+
shrink?: boolean;
|
|
17
18
|
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,4 +1,11 @@
|
|
|
1
1
|
import { PropsWithChildren } from "react";
|
|
2
|
-
export declare function NavigationGroup({ children, group }: PropsWithChildren<{
|
|
2
|
+
export declare function NavigationGroup({ children, group, minimised, isPreview, isPotentialCardDropTarget, onEditGroup, dndDisabled, collapsed, onToggleCollapsed }: PropsWithChildren<{
|
|
3
3
|
group: string | undefined;
|
|
4
|
+
minimised?: boolean;
|
|
5
|
+
isPreview?: boolean;
|
|
6
|
+
isPotentialCardDropTarget?: boolean;
|
|
7
|
+
onEditGroup?: (groupName: string) => void;
|
|
8
|
+
dndDisabled?: boolean;
|
|
9
|
+
collapsed?: boolean;
|
|
10
|
+
onToggleCollapsed?: () => void;
|
|
4
11
|
}>): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
interface RenameGroupDialogProps {
|
|
2
|
+
open: boolean;
|
|
3
|
+
initialName: string;
|
|
4
|
+
existingGroupNames: string[];
|
|
5
|
+
onClose: () => void;
|
|
6
|
+
onRename: (newName: string) => void;
|
|
7
|
+
}
|
|
8
|
+
export declare function RenameGroupDialog({ open, initialName, existingGroupNames, onClose, onRename }: RenameGroupDialogProps): import("react/jsx-runtime").JSX.Element | null;
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { PreviewSize } from "../preview";
|
|
2
|
+
import { ResolvedProperties, ResolvedProperty } from "../types";
|
|
3
|
+
/**
|
|
4
|
+
* Build a readable label for a path and resolve the property
|
|
5
|
+
* Supports map and array (including arrays of maps)
|
|
6
|
+
*/
|
|
7
|
+
export declare function buildPropertyLabelAndGetProperty(properties: ResolvedProperties, key: string): {
|
|
8
|
+
label: string;
|
|
9
|
+
property: ResolvedProperty | undefined;
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* Improved simple layout for nested changes:
|
|
13
|
+
* - Map or Array-of-Map -> section header + indented rows
|
|
14
|
+
* - Leaf or Array-of-Primitives -> single row with label and value
|
|
15
|
+
*/
|
|
16
|
+
export declare const PropertyCollectionView: ({ data, properties, baseKey, suppressHeader, size }: {
|
|
17
|
+
data: any;
|
|
18
|
+
properties: ResolvedProperties;
|
|
19
|
+
baseKey?: string;
|
|
20
|
+
suppressHeader?: boolean;
|
|
21
|
+
size?: PreviewSize;
|
|
22
|
+
}) => import("react/jsx-runtime").JSX.Element | null;
|
|
23
|
+
export declare function buildDataFromPaths(values: object, paths: string[]): object;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { PropertyConfig } from "../types";
|
|
2
|
-
export declare function PropertyConfigBadge({ propertyConfig }: {
|
|
2
|
+
export declare function PropertyConfigBadge({ propertyConfig, disabled }: {
|
|
3
3
|
propertyConfig: PropertyConfig | undefined;
|
|
4
|
+
disabled?: boolean;
|
|
4
5
|
}): React.ReactNode;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare function PropertyIdCopyTooltip({ propertyKey, className, children, }: {
|
|
2
|
+
propertyKey: string;
|
|
3
|
+
className?: string;
|
|
4
|
+
children: React.ReactNode;
|
|
5
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export declare function PropertyIdCopyTooltipContent({ propertyKey }: {
|
|
7
|
+
propertyKey: string;
|
|
8
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -21,8 +21,10 @@ export type ReferenceWidgetProps<M extends Record<string, any>> = {
|
|
|
21
21
|
forceFilter?: FilterValues<string>;
|
|
22
22
|
size: PreviewSize;
|
|
23
23
|
className?: string;
|
|
24
|
+
includeId?: boolean;
|
|
25
|
+
includeEntityLink?: boolean;
|
|
24
26
|
};
|
|
25
27
|
/**
|
|
26
28
|
* This field allows selecting reference/s.
|
|
27
29
|
*/
|
|
28
|
-
export declare function ReferenceWidget<M extends Record<string, any>>({ name, multiselect, path, disabled, value, onReferenceSelected, onMultipleReferenceSelected, previewProperties, forceFilter, size, className }: ReferenceWidgetProps<M>): import("react/jsx-runtime").JSX.Element;
|
|
30
|
+
export declare function ReferenceWidget<M extends Record<string, any>>({ name, multiselect, path, disabled, value, onReferenceSelected, onMultipleReferenceSelected, previewProperties, forceFilter, size, className, includeId, includeEntityLink }: ReferenceWidgetProps<M>): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { CollectionSize, Entity, EntityTableController, FilterValues } from "../../types";
|
|
3
3
|
import { CellRendererParams, VirtualTableColumn } from "../VirtualTable";
|
|
4
|
-
import { OnCellValueChange, OnColumnResizeParams } from "../common
|
|
4
|
+
import { OnCellValueChange, OnColumnResizeParams } from "../common";
|
|
5
5
|
export type SelectableTableProps<M extends Record<string, any>> = {
|
|
6
6
|
/**
|
|
7
7
|
* Callback when a cell value changes.
|
|
@@ -34,7 +34,7 @@ export type SelectableTableProps<M extends Record<string, any>> = {
|
|
|
34
34
|
hoverRow?: boolean;
|
|
35
35
|
/**
|
|
36
36
|
* Controller holding the logic for the table
|
|
37
|
-
* {@link
|
|
37
|
+
* {@link useDataSourceTableController}
|
|
38
38
|
* {@link EntityTableController}
|
|
39
39
|
*/
|
|
40
40
|
tableController: EntityTableController<M>;
|
|
@@ -44,6 +44,16 @@ export type SelectableTableProps<M extends Record<string, any>> = {
|
|
|
44
44
|
forceFilter?: FilterValues<keyof M extends string ? keyof M : never>;
|
|
45
45
|
highlightedRow?: (data: Entity<M>) => boolean;
|
|
46
46
|
size?: CollectionSize;
|
|
47
|
+
initialScroll?: number;
|
|
48
|
+
/**
|
|
49
|
+
* Callback when the table is scrolled
|
|
50
|
+
* @param props
|
|
51
|
+
*/
|
|
52
|
+
onScroll?: (props: {
|
|
53
|
+
scrollDirection: "forward" | "backward";
|
|
54
|
+
scrollOffset: number;
|
|
55
|
+
scrollUpdateWasRequested: boolean;
|
|
56
|
+
}) => void;
|
|
47
57
|
emptyComponent?: React.ReactNode;
|
|
48
58
|
endAdornment?: React.ReactNode;
|
|
49
59
|
AddColumnComponent?: React.ComponentType;
|
|
@@ -65,11 +75,11 @@ export type SelectableTableProps<M extends Record<string, any>> = {
|
|
|
65
75
|
*
|
|
66
76
|
* The data displayed in the table is managed by a {@link EntityTableController}.
|
|
67
77
|
* You can build the default, bound to a path in the datasource, by using the hook
|
|
68
|
-
* {@link
|
|
78
|
+
* {@link useDataSourceTableController}
|
|
69
79
|
*
|
|
70
80
|
* @see EntityCollectionTableProps
|
|
71
81
|
* @see EntityCollectionView
|
|
72
82
|
* @see VirtualTable
|
|
73
83
|
* @group Components
|
|
74
84
|
*/
|
|
75
|
-
export declare const SelectableTable:
|
|
85
|
+
export declare const SelectableTable: <M extends Record<string, any>>({ onValueChange, cellRenderer, onEntityClick, onColumnResize, hoverRow, size, inlineEditing, tableController: { data, dataLoading, noMoreToLoad, dataLoadingError, filterValues, setFilterValues, sortBy, setSortBy, itemCount, setItemCount, pageSize, paginationEnabled, checkFilterCombination, setPopupCell }, filterable, onScroll, initialScroll, emptyComponent, columns, forceFilter, highlightedRow, endAdornment, AddColumnComponent }: SelectableTableProps<M>) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -6,9 +6,10 @@ interface ReferenceFilterFieldProps {
|
|
|
6
6
|
isArray?: boolean;
|
|
7
7
|
path?: string;
|
|
8
8
|
title?: string;
|
|
9
|
+
includeId?: boolean;
|
|
9
10
|
previewProperties?: string[];
|
|
10
11
|
hidden: boolean;
|
|
11
12
|
setHidden: (hidden: boolean) => void;
|
|
12
13
|
}
|
|
13
|
-
export declare function ReferenceFilterField({
|
|
14
|
+
export declare function ReferenceFilterField({ value, setValue, isArray, path, includeId, previewProperties, setHidden }: ReferenceFilterFieldProps): import("react/jsx-runtime").JSX.Element;
|
|
14
15
|
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export interface UnsavedChangesDialogProps {
|
|
2
|
+
open: boolean;
|
|
3
|
+
body?: React.ReactNode;
|
|
4
|
+
title?: string;
|
|
5
|
+
handleOk: () => void;
|
|
6
|
+
handleCancel: () => void;
|
|
7
|
+
}
|
|
8
|
+
export declare function UnsavedChangesDialog({ open, handleOk, handleCancel, body, title }: UnsavedChangesDialogProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -25,10 +25,6 @@ export interface VirtualTableProps<T extends Record<string, any>> {
|
|
|
25
25
|
* The renderer receives props `{ cellData, columns, column, columnIndex, rowData, rowIndex, container, isScrolling }`
|
|
26
26
|
*/
|
|
27
27
|
cellRenderer: React.ComponentType<CellRendererParams<T>>;
|
|
28
|
-
/**
|
|
29
|
-
* If enabled, content is loaded in batch
|
|
30
|
-
*/
|
|
31
|
-
paginationEnabled?: boolean;
|
|
32
28
|
/**
|
|
33
29
|
* Set this callback if you want to support some combinations
|
|
34
30
|
* of filter combinations only.
|
|
@@ -40,6 +36,10 @@ export interface VirtualTableProps<T extends Record<string, any>> {
|
|
|
40
36
|
* A callback function when scrolling the table to near the end
|
|
41
37
|
*/
|
|
42
38
|
onEndReached?: () => void;
|
|
39
|
+
/**
|
|
40
|
+
* Offset in pixels where the onEndReached callback is triggered
|
|
41
|
+
*/
|
|
42
|
+
endOffset?: number;
|
|
43
43
|
/**
|
|
44
44
|
* When the pagination should be reset. E.g. the filters or sorting
|
|
45
45
|
* has been reset.
|
|
@@ -56,7 +56,7 @@ export interface VirtualTableProps<T extends Record<string, any>> {
|
|
|
56
56
|
/**
|
|
57
57
|
* Size of the table
|
|
58
58
|
*/
|
|
59
|
-
|
|
59
|
+
rowHeight?: number;
|
|
60
60
|
/**
|
|
61
61
|
* In case this table should have some filters set by default
|
|
62
62
|
*/
|
|
@@ -66,6 +66,15 @@ export interface VirtualTableProps<T extends Record<string, any>> {
|
|
|
66
66
|
* @param filter
|
|
67
67
|
*/
|
|
68
68
|
onFilterUpdate?: (filter?: VirtualTableFilterValues<any> | undefined) => void;
|
|
69
|
+
/**
|
|
70
|
+
* Callback when the table is scrolled
|
|
71
|
+
* @param props
|
|
72
|
+
*/
|
|
73
|
+
onScroll?: (props: {
|
|
74
|
+
scrollDirection: "forward" | "backward";
|
|
75
|
+
scrollOffset: number;
|
|
76
|
+
scrollUpdateWasRequested: boolean;
|
|
77
|
+
}) => void;
|
|
69
78
|
/**
|
|
70
79
|
* Default sort applied to this collection
|
|
71
80
|
*/
|
|
@@ -106,6 +115,10 @@ export interface VirtualTableProps<T extends Record<string, any>> {
|
|
|
106
115
|
* Class name applied to the table
|
|
107
116
|
*/
|
|
108
117
|
className?: string;
|
|
118
|
+
/**
|
|
119
|
+
* Style applied to the table
|
|
120
|
+
*/
|
|
121
|
+
style?: React.CSSProperties;
|
|
109
122
|
/**
|
|
110
123
|
* Component rendered at the end of the table, after scroll
|
|
111
124
|
*/
|
|
@@ -115,8 +128,12 @@ export interface VirtualTableProps<T extends Record<string, any>> {
|
|
|
115
128
|
* @param column
|
|
116
129
|
*/
|
|
117
130
|
AddColumnComponent?: React.ComponentType;
|
|
131
|
+
/**
|
|
132
|
+
* Initial scroll position
|
|
133
|
+
*/
|
|
134
|
+
initialScroll?: number;
|
|
118
135
|
}
|
|
119
|
-
export type CellRendererParams<T
|
|
136
|
+
export type CellRendererParams<T = any> = {
|
|
120
137
|
column: VirtualTableColumn;
|
|
121
138
|
columns: VirtualTableColumn[];
|
|
122
139
|
columnIndex: number;
|
|
@@ -129,7 +146,7 @@ export type CellRendererParams<T extends any = any> = {
|
|
|
129
146
|
* @see Table
|
|
130
147
|
* @group Components
|
|
131
148
|
*/
|
|
132
|
-
export interface VirtualTableColumn<CustomProps
|
|
149
|
+
export interface VirtualTableColumn<CustomProps = any> {
|
|
133
150
|
/**
|
|
134
151
|
* Data key for the cell value, could be "a.b.c"
|
|
135
152
|
*/
|
|
@@ -190,11 +207,6 @@ export type OnVirtualTableColumnResizeParams = {
|
|
|
190
207
|
key: string;
|
|
191
208
|
column: VirtualTableColumn;
|
|
192
209
|
};
|
|
193
|
-
/**
|
|
194
|
-
* @see Table
|
|
195
|
-
* @group Components
|
|
196
|
-
*/
|
|
197
|
-
export type VirtualTableSize = "xs" | "s" | "m" | "l" | "xl";
|
|
198
210
|
/**
|
|
199
211
|
* @see Table
|
|
200
212
|
* @group Components
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
export declare function VirtualTableUserSelect(props: {
|
|
3
|
+
name: string;
|
|
4
|
+
error: Error | undefined;
|
|
5
|
+
multiple: boolean;
|
|
6
|
+
disabled: boolean;
|
|
7
|
+
small: boolean;
|
|
8
|
+
internalValue: string | string[] | undefined;
|
|
9
|
+
updateValue: (newValue: (string | string[] | null)) => void;
|
|
10
|
+
focused: boolean;
|
|
11
|
+
onBlur?: React.FocusEventHandler<HTMLInputElement | HTMLTextAreaElement>;
|
|
12
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { CellRendererParams, OnRowClickParams, OnVirtualTableColumnResizeParams, VirtualTableColumn, VirtualTableFilterValues,
|
|
2
|
+
import { CellRendererParams, OnRowClickParams, OnVirtualTableColumnResizeParams, VirtualTableColumn, VirtualTableFilterValues, VirtualTableWhereFilterOp } from "./VirtualTableProps";
|
|
3
3
|
import { FilterFormFieldProps } from "./VirtualTableHeader";
|
|
4
4
|
export type VirtualTableRowProps<T> = {
|
|
5
5
|
style: any;
|
|
6
|
-
|
|
6
|
+
rowHeight: number;
|
|
7
7
|
rowData: T;
|
|
8
8
|
rowIndex: number;
|
|
9
9
|
onRowClick?: (props: OnRowClickParams<any>) => void;
|
|
@@ -14,7 +14,7 @@ export type VirtualTableRowProps<T> = {
|
|
|
14
14
|
};
|
|
15
15
|
export type VirtualTableContextProps<T extends any> = {
|
|
16
16
|
data?: T[];
|
|
17
|
-
|
|
17
|
+
rowHeight?: number;
|
|
18
18
|
columns: VirtualTableColumn[];
|
|
19
19
|
cellRenderer: React.ComponentType<CellRendererParams<T>>;
|
|
20
20
|
currentSort: "asc" | "desc" | undefined;
|
package/dist/components/{EntityCollectionTable/internal → common}/default_entity_actions.d.ts
RENAMED
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
import { EntityAction } from "
|
|
1
|
+
import { EntityAction } from "../../types";
|
|
2
2
|
export declare const editEntityAction: EntityAction;
|
|
3
3
|
export declare const copyEntityAction: EntityAction;
|
|
4
|
-
export declare const archiveEntityAction: EntityAction;
|
|
5
|
-
export declare const openWebsiteAction: EntityAction;
|
|
6
4
|
export declare const deleteEntityAction: EntityAction;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export * from "./types";
|
|
2
2
|
export * from "./useDebouncedData";
|
|
3
3
|
export * from "./useColumnsIds";
|
|
4
|
-
export * from "./
|
|
4
|
+
export * from "./useDataSourceTableController";
|
|
5
5
|
export * from "./useTableSearchHelper";
|
|
6
|
+
export * from "./default_entity_actions";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CollectionSize,
|
|
1
|
+
import { CollectionSize, ResolvedProperty, SelectedCellProps } from "../../types";
|
|
2
2
|
export type EntityCollectionTableController<M extends Record<string, any>> = {
|
|
3
3
|
/**
|
|
4
4
|
* This cell is displayed as selected
|
|
@@ -28,14 +28,12 @@ export type EntityCollectionTableController<M extends Record<string, any>> = {
|
|
|
28
28
|
* Props passed in a callback when the content of a cell in a table has been edited
|
|
29
29
|
* @group Collection components
|
|
30
30
|
*/
|
|
31
|
-
export interface OnCellValueChangeParams<T = any,
|
|
31
|
+
export interface OnCellValueChangeParams<T = any, D = any> {
|
|
32
32
|
value: T;
|
|
33
33
|
propertyKey: string;
|
|
34
|
-
|
|
34
|
+
data?: D;
|
|
35
35
|
onValueUpdated: () => void;
|
|
36
|
-
setError: (e: Error) => void;
|
|
37
|
-
fullPath: string;
|
|
38
|
-
context: FireCMSContext;
|
|
36
|
+
setError: (e: Error | undefined) => void;
|
|
39
37
|
}
|
|
40
38
|
/**
|
|
41
39
|
* @group Collection components
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import { ResolvedEntityCollection, ResolvedProperty } from "../../types";
|
|
1
|
+
import { EntityCollection, ResolvedEntityCollection, ResolvedProperty } from "../../types";
|
|
2
2
|
import { PropertyColumnConfig } from "../EntityCollectionTable/EntityCollectionTableProps";
|
|
3
|
+
export declare const COLLECTION_GROUP_PARENT_ID = "collectionGroupParent";
|
|
3
4
|
export declare function useColumnIds<M extends Record<string, any>>(collection: ResolvedEntityCollection<M>, includeSubcollections: boolean): PropertyColumnConfig[];
|
|
4
5
|
export declare function getColumnKeysForProperty(property: ResolvedProperty, key: string, disabled?: boolean): PropertyColumnConfig[];
|
|
6
|
+
export declare function getFormFieldKeys(collection: EntityCollection): string[];
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Entity, EntityCollection, EntityTableController, FilterValues, User } from "../../types";
|
|
2
|
-
|
|
2
|
+
import { ScrollRestorationController } from "./useScrollRestoration";
|
|
3
|
+
export type DataSourceTableControllerProps<M extends Record<string, any> = any> = {
|
|
3
4
|
/**
|
|
4
5
|
* Full path where the data of this table is located
|
|
5
6
|
*/
|
|
@@ -14,7 +15,15 @@ export type DataSourceEntityCollectionTableControllerProps<M extends Record<stri
|
|
|
14
15
|
*/
|
|
15
16
|
entitiesDisplayedFirst?: Entity<M>[];
|
|
16
17
|
lastDeleteTimestamp?: number;
|
|
18
|
+
/**
|
|
19
|
+
* Force filter to be applied to the table.
|
|
20
|
+
*/
|
|
17
21
|
forceFilter?: FilterValues<string>;
|
|
22
|
+
scrollRestoration?: ScrollRestorationController;
|
|
23
|
+
/**
|
|
24
|
+
* When set to true the filters and sort will be updated in the URL
|
|
25
|
+
*/
|
|
26
|
+
updateUrl?: boolean;
|
|
18
27
|
};
|
|
19
28
|
/**
|
|
20
29
|
* Use this hook to build a controller for the {@link EntityCollectionTable}.
|
|
@@ -25,8 +34,10 @@ export type DataSourceEntityCollectionTableControllerProps<M extends Record<stri
|
|
|
25
34
|
*
|
|
26
35
|
* @param fullPath
|
|
27
36
|
* @param collection
|
|
37
|
+
* @param scrollRestoration
|
|
28
38
|
* @param entitiesDisplayedFirst
|
|
29
39
|
* @param lastDeleteTimestamp
|
|
30
40
|
* @param forceFilterFromProps
|
|
41
|
+
* @param updateUrl
|
|
31
42
|
*/
|
|
32
|
-
export declare function
|
|
43
|
+
export declare function useDataSourceTableController<M extends Record<string, any> = any, USER extends User = User>({ fullPath, collection, scrollRestoration, entitiesDisplayedFirst, lastDeleteTimestamp, forceFilter: forceFilterFromProps, updateUrl }: DataSourceTableControllerProps<M>): EntityTableController<M>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function useDebounceCallback<T extends (...args: any[]) => any>(callback?: T, delay?: number): T;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Entity, FilterValues } from "../../types";
|
|
2
|
+
export type ScrollRestorationController = {
|
|
3
|
+
getCollectionScroll: (fullPath: string, filters?: FilterValues<any>) => {
|
|
4
|
+
scrollOffset: number;
|
|
5
|
+
data: Entity<any>[];
|
|
6
|
+
} | undefined;
|
|
7
|
+
updateCollectionScroll: (props: {
|
|
8
|
+
fullPath: string;
|
|
9
|
+
scrollOffset: number;
|
|
10
|
+
filters?: FilterValues<any>;
|
|
11
|
+
data: Entity<any>[];
|
|
12
|
+
}) => void;
|
|
13
|
+
};
|
|
14
|
+
export declare function useScrollRestoration(): ScrollRestorationController;
|
|
@@ -8,18 +8,21 @@ export { CircularProgressCenter } from "./CircularProgressCenter";
|
|
|
8
8
|
export * from "./common";
|
|
9
9
|
export * from "./HomePage";
|
|
10
10
|
export * from "./SelectableTable/SelectableTable";
|
|
11
|
+
export * from "./SelectableTable/SelectableTableContext";
|
|
11
12
|
export * from "./EntityCollectionView/EntityCollectionView";
|
|
12
13
|
export * from "./EntityCollectionView/EntityCollectionViewActions";
|
|
13
14
|
export * from "./EntityCollectionView/useSelectionController";
|
|
14
15
|
export * from "./PropertyConfigBadge";
|
|
16
|
+
export * from "./PropertyIdCopyTooltip";
|
|
15
17
|
export * from "./EntityCollectionTable";
|
|
16
18
|
export * from "./NotFoundPage";
|
|
17
19
|
export * from "./VirtualTable";
|
|
18
20
|
export * from "./ErrorBoundary";
|
|
19
|
-
export * from "./
|
|
21
|
+
export * from "./ConfirmationDialog";
|
|
20
22
|
export * from "./FireCMSLogo";
|
|
21
|
-
export * from "
|
|
23
|
+
export * from "../core/DefaultAppBar";
|
|
22
24
|
export * from "./ArrayContainer";
|
|
23
25
|
export * from "./ReferenceWidget";
|
|
24
26
|
export * from "./SearchIconsView";
|
|
25
27
|
export * from "./FieldCaption";
|
|
28
|
+
export * from "./EntityPreview";
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { BreadcrumbsController } from "../hooks/useBreadcrumbsController";
|
|
3
|
+
export declare const BreadcrumbContext: React.Context<BreadcrumbsController>;
|
|
4
|
+
interface BreadcrumbsProviderProps {
|
|
5
|
+
children: React.ReactNode;
|
|
6
|
+
}
|
|
7
|
+
export declare const BreadcrumbsProvider: React.FC<BreadcrumbsProviderProps>;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { User } from "../types";
|
|
3
|
+
export type DefaultAppBarProps<ADDITIONAL_PROPS = object> = {
|
|
4
|
+
/**
|
|
5
|
+
* The content of the app bar, usually a title or logo. This includes a link to the home page.
|
|
6
|
+
*/
|
|
7
|
+
title?: React.ReactNode;
|
|
8
|
+
/**
|
|
9
|
+
* A component that gets rendered on the upper side to the end of the main toolbar
|
|
10
|
+
*/
|
|
11
|
+
endAdornment?: React.ReactNode;
|
|
12
|
+
/**
|
|
13
|
+
* A component that gets rendered on the upper side to the start of the main toolbar
|
|
14
|
+
*/
|
|
15
|
+
startAdornment?: React.ReactNode;
|
|
16
|
+
dropDownActions?: React.ReactNode;
|
|
17
|
+
includeModeToggle?: boolean;
|
|
18
|
+
className?: string;
|
|
19
|
+
style?: React.CSSProperties;
|
|
20
|
+
logo?: string;
|
|
21
|
+
user?: User;
|
|
22
|
+
} & ADDITIONAL_PROPS;
|
|
23
|
+
/**
|
|
24
|
+
* This component renders the main app bar of FireCMS.
|
|
25
|
+
* You will likely not need to use this component directly.
|
|
26
|
+
*
|
|
27
|
+
|
|
28
|
+
*/
|
|
29
|
+
export declare const DefaultAppBar: ({ title, endAdornment, startAdornment, dropDownActions, includeModeToggle, className, style, user: userProp, logo: logoProp, }: DefaultAppBarProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
/**
|
|
3
|
+
* Default drawer used in the CMS
|
|
4
|
+
* @group Core
|
|
5
|
+
*/
|
|
6
|
+
export declare function DefaultDrawer({ className, style, }: {
|
|
7
|
+
className?: string;
|
|
8
|
+
style?: React.CSSProperties;
|
|
9
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
/**
|
|
11
|
+
* This is the logo displayed in the drawer
|
|
12
|
+
* It expands when the drawer is open.
|
|
13
|
+
*
|
|
14
|
+
* @param logo
|
|
15
|
+
|
|
16
|
+
*/
|
|
17
|
+
export declare function DrawerLogo({ logo }: {
|
|
18
|
+
logo?: string;
|
|
19
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
export declare function DrawerNavigationItem({ name, icon, drawerOpen, adminMenuOpen, tooltipsOpen, url, onClick }: {
|
|
3
|
+
icon: React.ReactElement;
|
|
4
|
+
name: string;
|
|
5
|
+
tooltipsOpen: boolean;
|
|
6
|
+
drawerOpen: boolean;
|
|
7
|
+
adminMenuOpen?: boolean;
|
|
8
|
+
url: string;
|
|
9
|
+
onClick?: () => void;
|
|
10
|
+
}): import("react/jsx-runtime").JSX.Element;
|