@firecms/core 3.0.0-canary.99 → 3.0.0-rc.2
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 +2 -2
- package/dist/app/Drawer.d.ts +0 -1
- package/dist/app/Scaffold.d.ts +4 -0
- package/dist/components/ArrayContainer.d.ts +31 -12
- package/dist/components/{DeleteConfirmationDialog.d.ts → ConfirmationDialog.d.ts} +1 -1
- package/dist/components/EntityCollectionTable/EntityCollectionRowActions.d.ts +3 -1
- package/dist/components/EntityCollectionTable/EntityCollectionTable.d.ts +2 -2
- package/dist/components/EntityCollectionTable/EntityCollectionTableProps.d.ts +17 -3
- package/dist/components/EntityCollectionTable/fields/TableReferenceField.d.ts +1 -1
- package/dist/components/EntityCollectionTable/index.d.ts +1 -1
- package/dist/components/EntityCollectionTable/internal/popup_field/PopupFormField.d.ts +6 -3
- package/dist/components/EntityCollectionView/EntityCollectionView.d.ts +8 -0
- package/dist/components/EntityCollectionView/utils.d.ts +3 -0
- package/dist/components/EntityJsonPreview.d.ts +3 -0
- package/dist/components/EntityPreview.d.ts +8 -6
- package/dist/components/HomePage/DefaultHomePage.d.ts +2 -15
- package/dist/components/HomePage/HomePageDnD.d.ts +76 -0
- package/dist/components/HomePage/NavigationCard.d.ts +3 -1
- package/dist/components/HomePage/NavigationCardBinding.d.ts +3 -2
- package/dist/components/HomePage/NavigationGroup.d.ts +8 -1
- package/dist/components/HomePage/RenameGroupDialog.d.ts +9 -0
- package/dist/components/PropertyConfigBadge.d.ts +2 -1
- package/dist/components/PropertyIdCopyTooltip.d.ts +8 -0
- package/dist/components/SelectableTable/SelectableTable.d.ts +13 -3
- package/dist/components/SelectableTable/filters/ReferenceFilterField.d.ts +1 -1
- package/dist/components/UnsavedChangesDialog.d.ts +8 -0
- package/dist/components/UserDisplay.d.ts +7 -0
- package/dist/components/VirtualTable/VirtualTableProps.d.ts +11 -2
- package/dist/components/VirtualTable/fields/VirtualTableUserSelect.d.ts +12 -0
- package/dist/components/common/default_entity_actions.d.ts +0 -2
- package/dist/components/common/index.d.ts +1 -1
- package/dist/components/common/useColumnsIds.d.ts +1 -0
- package/dist/components/common/{useDataSourceEntityCollectionTableController.d.ts → useDataSourceTableController.d.ts} +10 -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 +3 -1
- package/dist/contexts/BreacrumbsContext.d.ts +8 -0
- package/dist/contexts/InternalUserManagementContext.d.ts +3 -0
- package/dist/core/DefaultAppBar.d.ts +8 -2
- package/dist/core/DrawerNavigationItem.d.ts +2 -1
- package/dist/core/EntityEditView.d.ts +40 -22
- 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 +0 -1
- package/dist/core/SideDialogs.d.ts +4 -2
- package/dist/core/field_configs.d.ts +1 -1
- package/dist/core/index.d.ts +2 -1
- package/dist/form/EntityForm.d.ts +50 -0
- package/dist/form/EntityFormActions.d.ts +21 -0
- package/dist/form/PropertyFieldBinding.d.ts +1 -1
- 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/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 +4 -10
- 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 +17 -16
- package/dist/form/useClearRestoreValue.d.ts +2 -2
- package/dist/hooks/data/delete.d.ts +4 -4
- package/dist/hooks/data/save.d.ts +3 -3
- package/dist/hooks/data/useCollectionFetch.d.ts +1 -1
- package/dist/hooks/data/useEntityFetch.d.ts +4 -3
- package/dist/hooks/index.d.ts +2 -0
- package/dist/hooks/useAuthController.d.ts +1 -1
- package/dist/hooks/useBreadcrumbsController.d.ts +26 -0
- package/dist/hooks/useBuildNavigationController.d.ts +57 -12
- 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 +7 -1
- package/dist/hooks/useResolvedNavigationFrom.d.ts +3 -3
- package/dist/hooks/useValidateAuthenticator.d.ts +3 -3
- package/dist/index.es.js +20480 -14434
- package/dist/index.es.js.map +1 -1
- package/dist/index.umd.js +20250 -14209
- package/dist/index.umd.js.map +1 -1
- package/dist/internal/useBuildDataSource.d.ts +3 -2
- package/dist/internal/useBuildSideEntityController.d.ts +3 -3
- package/dist/internal/useUnsavedChangesDialog.d.ts +7 -9
- package/dist/preview/PropertyPreviewProps.d.ts +1 -1
- package/dist/preview/components/EnumValuesChip.d.ts +1 -1
- package/dist/preview/components/ReferencePreview.d.ts +2 -2
- 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 +7 -9
- package/dist/types/collections.d.ts +88 -25
- package/dist/types/customization_controller.d.ts +8 -0
- package/dist/types/datasource.d.ts +19 -17
- package/dist/types/dialogs_controller.d.ts +7 -3
- package/dist/types/entities.d.ts +7 -2
- package/dist/types/entity_actions.d.ts +58 -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 +43 -17
- package/dist/types/firecms.d.ts +31 -3
- package/dist/types/firecms_context.d.ts +17 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/types/internal_user_management.d.ts +20 -0
- package/dist/types/navigation.d.ts +60 -17
- package/dist/types/permissions.d.ts +4 -4
- package/dist/types/plugins.d.ts +44 -9
- package/dist/types/properties.d.ts +74 -22
- 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/createFormexStub.d.ts +2 -0
- package/dist/util/entities.d.ts +2 -2
- package/dist/util/entity_actions.d.ts +2 -0
- package/dist/util/entity_cache.d.ts +23 -0
- package/dist/util/icon_synonyms.d.ts +0 -1
- package/dist/util/icons.d.ts +5 -2
- package/dist/util/index.d.ts +3 -0
- package/dist/util/navigation_from_path.d.ts +10 -1
- package/dist/util/navigation_utils.d.ts +13 -1
- package/dist/util/objects.d.ts +2 -1
- package/dist/util/permissions.d.ts +4 -4
- package/dist/util/property_utils.d.ts +4 -4
- package/dist/util/references.d.ts +2 -2
- package/dist/util/resolutions.d.ts +30 -6
- package/dist/util/storage.d.ts +1 -1
- package/dist/util/useStorageUploadController.d.ts +2 -2
- package/package.json +133 -125
- package/src/app/Drawer.tsx +0 -1
- package/src/app/Scaffold.tsx +33 -29
- package/src/components/ArrayContainer.tsx +447 -229
- package/src/components/CircularProgressCenter.tsx +1 -1
- package/src/components/ClearFilterSortButton.tsx +1 -1
- package/src/components/{DeleteConfirmationDialog.tsx → ConfirmationDialog.tsx} +12 -11
- package/src/components/DeleteEntityDialog.tsx +13 -20
- package/src/components/EntityCollectionTable/EntityCollectionRowActions.tsx +59 -25
- package/src/components/EntityCollectionTable/EntityCollectionTable.tsx +23 -17
- package/src/components/EntityCollectionTable/EntityCollectionTableProps.tsx +20 -3
- package/src/components/EntityCollectionTable/PropertyTableCell.tsx +47 -9
- package/src/components/EntityCollectionTable/fields/TableReferenceField.tsx +21 -16
- package/src/components/EntityCollectionTable/fields/TableStorageUpload.tsx +6 -12
- package/src/components/EntityCollectionTable/index.tsx +1 -1
- package/src/components/EntityCollectionTable/internal/CollectionTableToolbar.tsx +6 -6
- package/src/components/EntityCollectionTable/internal/EntityTableCell.tsx +35 -26
- package/src/components/EntityCollectionTable/internal/EntityTableCellActions.tsx +20 -8
- package/src/components/EntityCollectionTable/internal/popup_field/PopupFormField.tsx +132 -101
- package/src/components/EntityCollectionTable/internal/popup_field/useDraggable.tsx +9 -9
- package/src/components/EntityCollectionView/EntityCollectionView.tsx +178 -85
- package/src/components/EntityCollectionView/EntityCollectionViewActions.tsx +7 -4
- package/src/components/EntityCollectionView/useSelectionController.tsx +5 -4
- package/src/components/EntityCollectionView/utils.ts +19 -0
- package/src/components/EntityJsonPreview.tsx +66 -0
- package/src/components/EntityPreview.tsx +75 -57
- package/src/components/EntityView.tsx +8 -5
- package/src/components/ErrorView.tsx +3 -3
- package/src/components/FireCMSLogo.tsx +7 -51
- package/src/components/HomePage/DefaultHomePage.tsx +506 -161
- package/src/components/HomePage/FavouritesView.tsx +9 -14
- package/src/components/HomePage/HomePageDnD.tsx +600 -0
- package/src/components/HomePage/NavigationCard.tsx +47 -38
- package/src/components/HomePage/NavigationCardBinding.tsx +16 -15
- package/src/components/HomePage/NavigationGroup.tsx +144 -30
- package/src/components/HomePage/RenameGroupDialog.tsx +123 -0
- package/src/components/HomePage/SmallNavigationCard.tsx +1 -2
- package/src/components/NotFoundPage.tsx +2 -2
- package/src/components/PropertyConfigBadge.tsx +10 -4
- package/src/components/PropertyIdCopyTooltip.tsx +47 -0
- package/src/components/ReferenceTable/ReferenceSelectionTable.tsx +22 -13
- package/src/components/SearchIconsView.tsx +2 -2
- package/src/components/SelectableTable/SelectableTable.tsx +154 -142
- package/src/components/SelectableTable/filters/DateTimeFilterField.tsx +4 -2
- package/src/components/SelectableTable/filters/ReferenceFilterField.tsx +10 -8
- package/src/components/SelectableTable/filters/StringNumberFilterField.tsx +60 -11
- package/src/components/UnsavedChangesDialog.tsx +46 -0
- package/src/components/UserDisplay.tsx +55 -0
- package/src/components/VirtualTable/VirtualTable.tsx +65 -44
- package/src/components/VirtualTable/VirtualTableCell.tsx +0 -8
- package/src/components/VirtualTable/VirtualTableHeader.tsx +8 -8
- package/src/components/VirtualTable/VirtualTableHeaderRow.tsx +1 -1
- package/src/components/VirtualTable/VirtualTableProps.tsx +12 -2
- package/src/components/VirtualTable/VirtualTableRow.tsx +1 -1
- package/src/components/VirtualTable/fields/VirtualTableDateField.tsx +4 -4
- 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/common/default_entity_actions.tsx +62 -42
- package/src/components/common/index.ts +1 -1
- package/src/components/common/useColumnsIds.tsx +2 -9
- 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 +1 -0
- package/src/components/index.tsx +4 -1
- package/src/contexts/BreacrumbsContext.tsx +38 -0
- package/src/contexts/DialogsProvider.tsx +3 -2
- 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 +124 -85
- package/src/core/DefaultDrawer.tsx +30 -22
- package/src/core/DrawerNavigationItem.tsx +32 -28
- package/src/core/EntityEditView.tsx +388 -995
- package/src/core/EntityEditViewFormActions.tsx +329 -0
- package/src/core/EntitySidePanel.tsx +88 -20
- package/src/core/FireCMS.tsx +58 -28
- package/src/core/FireCMSRouter.tsx +17 -0
- package/src/core/NavigationRoutes.tsx +23 -32
- package/src/core/SideDialogs.tsx +22 -12
- package/src/core/field_configs.tsx +39 -11
- package/src/core/index.tsx +4 -2
- package/src/form/EntityForm.tsx +814 -0
- package/src/form/EntityFormActions.tsx +211 -0
- package/src/form/PropertyFieldBinding.tsx +59 -41
- package/src/form/components/CustomIdField.tsx +9 -3
- package/src/form/components/FieldHelperText.tsx +1 -1
- 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/StorageItemPreview.tsx +5 -4
- package/src/form/components/StorageUploadProgress.tsx +2 -3
- package/src/form/components/index.tsx +3 -1
- package/src/form/field_bindings/ArrayCustomShapedFieldBinding.tsx +30 -18
- package/src/form/field_bindings/ArrayOfReferencesFieldBinding.tsx +47 -36
- package/src/form/field_bindings/BlockFieldBinding.tsx +55 -33
- package/src/form/field_bindings/DateTimeFieldBinding.tsx +18 -14
- package/src/form/field_bindings/KeyValueFieldBinding.tsx +19 -15
- package/src/form/field_bindings/MapFieldBinding.tsx +72 -62
- 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 +10 -8
- package/src/form/field_bindings/ReferenceAsStringFieldBinding.tsx +135 -0
- package/src/form/field_bindings/ReferenceFieldBinding.tsx +28 -19
- package/src/form/field_bindings/RepeatFieldBinding.tsx +56 -32
- package/src/form/field_bindings/SelectFieldBinding.tsx +22 -13
- package/src/form/field_bindings/StorageUploadFieldBinding.tsx +247 -168
- 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 +17 -37
- package/src/form/useClearRestoreValue.tsx +2 -2
- package/src/form/validation.ts +12 -6
- package/src/hooks/data/delete.ts +6 -5
- package/src/hooks/data/save.ts +26 -35
- package/src/hooks/data/useCollectionFetch.tsx +3 -3
- package/src/hooks/data/useDataSource.tsx +10 -2
- package/src/hooks/data/useEntityFetch.tsx +10 -6
- package/src/hooks/index.tsx +3 -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/useBuildModeController.tsx +15 -28
- package/src/hooks/useBuildNavigationController.tsx +386 -124
- 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 +16 -5
- package/src/hooks/useResolvedNavigationFrom.tsx +9 -11
- package/src/hooks/useValidateAuthenticator.tsx +3 -3
- package/src/internal/useBuildDataSource.ts +67 -80
- package/src/internal/useBuildSideDialogsController.tsx +4 -2
- package/src/internal/useBuildSideEntityController.tsx +149 -86
- package/src/internal/useUnsavedChangesDialog.tsx +127 -91
- package/src/preview/PropertyPreview.tsx +36 -12
- package/src/preview/PropertyPreviewProps.tsx +1 -1
- package/src/preview/components/BooleanPreview.tsx +1 -1
- package/src/preview/components/EmptyValue.tsx +1 -1
- package/src/preview/components/EnumValuesChip.tsx +1 -1
- package/src/preview/components/ImagePreview.tsx +10 -9
- package/src/preview/components/ReferencePreview.tsx +10 -18
- package/src/preview/components/UrlComponentPreview.tsx +20 -21
- package/src/preview/components/UserPreview.tsx +27 -0
- package/src/preview/index.ts +1 -0
- package/src/preview/property_previews/ArrayOfMapsPreview.tsx +6 -5
- package/src/preview/property_previews/ArrayOfReferencesPreview.tsx +5 -4
- package/src/preview/property_previews/ArrayOfStorageComponentsPreview.tsx +5 -3
- package/src/preview/property_previews/ArrayOfStringsPreview.tsx +4 -3
- package/src/preview/property_previews/ArrayOneOfPreview.tsx +6 -4
- package/src/preview/property_previews/ArrayPropertyPreview.tsx +6 -4
- package/src/preview/property_previews/MapPropertyPreview.tsx +7 -6
- package/src/preview/property_previews/SkeletonPropertyComponent.tsx +13 -13
- package/src/preview/property_previews/StringPropertyPreview.tsx +2 -2
- 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 +8 -12
- package/src/types/collections.ts +103 -28
- package/src/types/customization_controller.tsx +9 -0
- package/src/types/datasource.ts +21 -20
- package/src/types/dialogs_controller.tsx +7 -3
- package/src/types/entities.ts +10 -2
- package/src/types/entity_actions.tsx +71 -8
- 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 +52 -19
- package/src/types/firecms.tsx +34 -4
- package/src/types/firecms_context.tsx +18 -1
- package/src/types/index.ts +1 -0
- package/src/types/internal_user_management.ts +24 -0
- package/src/types/navigation.ts +76 -22
- package/src/types/permissions.ts +5 -5
- package/src/types/plugins.tsx +53 -9
- package/src/types/properties.ts +84 -22
- 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 +82 -0
- package/src/types/user.ts +3 -1
- package/src/util/builders.ts +10 -8
- package/src/util/callbacks.ts +119 -0
- package/src/util/createFormexStub.tsx +62 -0
- package/src/util/entities.ts +6 -4
- package/src/util/entity_actions.ts +28 -0
- package/src/util/entity_cache.ts +204 -0
- package/src/util/icon_list.ts +1 -1
- package/src/util/icon_synonyms.ts +0 -1
- package/src/util/icons.tsx +36 -11
- package/src/util/index.ts +3 -0
- package/src/util/join_collections.ts +9 -2
- package/src/util/make_properties_editable.ts +13 -5
- package/src/util/navigation_from_path.ts +33 -12
- package/src/util/navigation_utils.ts +135 -19
- package/src/util/objects.ts +74 -14
- package/src/util/parent_references_from_path.ts +3 -3
- package/src/util/permissions.ts +8 -8
- package/src/util/property_utils.tsx +17 -6
- package/src/util/references.ts +19 -8
- package/src/util/resolutions.ts +93 -24
- package/src/util/storage.ts +6 -2
- package/src/util/useStorageUploadController.tsx +74 -29
- package/dist/components/EntityCollectionTable/internal/popup_field/ElementResizeListener.d.ts +0 -5
- package/dist/components/PropertyIdCopyTooltipContent.d.ts +0 -3
- package/dist/form/PropertiesForm.d.ts +0 -8
- package/dist/form/components/FormikArrayContainer.d.ts +0 -18
- package/dist/form/field_bindings/MarkdownFieldBinding.d.ts +0 -9
- package/src/components/EntityCollectionTable/internal/popup_field/ElementResizeListener.tsx +0 -59
- package/src/components/PropertyIdCopyTooltipContent.tsx +0 -27
- package/src/components/common/useDataSourceEntityCollectionTableController.tsx +0 -236
- package/src/form/PropertiesForm.tsx +0 -81
- package/src/form/components/FormikArrayContainer.tsx +0 -44
- package/src/form/field_bindings/MarkdownFieldBinding.tsx +0 -695
- /package/src/util/{common.tsx → common.ts} +0 -0
package/dist/types/user.d.ts
CHANGED
package/dist/util/builders.d.ts
CHANGED
|
@@ -5,14 +5,14 @@ import { AdditionalFieldDelegate, ArrayProperty, BooleanProperty, CMSType, DateP
|
|
|
5
5
|
* @param collection
|
|
6
6
|
* @group Builder
|
|
7
7
|
*/
|
|
8
|
-
export declare function buildCollection<M extends Record<string, any> = any,
|
|
8
|
+
export declare function buildCollection<M extends Record<string, any> = any, USER extends User = User>(collection: EntityCollection<M, USER>): EntityCollection<M, USER>;
|
|
9
9
|
/**
|
|
10
10
|
* Identity function we use to defeat the type system of Typescript and preserve
|
|
11
11
|
* the property keys.
|
|
12
12
|
* @param property
|
|
13
13
|
* @group Builder
|
|
14
14
|
*/
|
|
15
|
-
export declare function buildProperty<T extends CMSType = CMSType, P extends PropertyOrBuilder<T> = PropertyOrBuilder<T>, M extends Record<string, any> =
|
|
15
|
+
export declare function buildProperty<T extends CMSType = CMSType, P extends PropertyOrBuilder<T> = PropertyOrBuilder<T>, M extends Record<string, any> = any>(property: P): P extends StringProperty ? StringProperty : P extends NumberProperty ? NumberProperty : P extends BooleanProperty ? BooleanProperty : P extends DateProperty ? DateProperty : P extends GeopointProperty ? GeopointProperty : P extends ReferenceProperty ? ReferenceProperty : P extends ArrayProperty ? ArrayProperty : P extends MapProperty ? MapProperty : P extends PropertyBuilder<T, M> ? PropertyBuilder<T, M> : never;
|
|
16
16
|
/**
|
|
17
17
|
* Identity function we use to defeat the type system of Typescript and preserve
|
|
18
18
|
* the properties keys.
|
|
@@ -54,7 +54,7 @@ export declare function buildEntityCallbacks<M extends Record<string, any> = any
|
|
|
54
54
|
* @param additionalFieldDelegate
|
|
55
55
|
* @group Builder
|
|
56
56
|
*/
|
|
57
|
-
export declare function buildAdditionalFieldDelegate<M extends Record<string, any>,
|
|
57
|
+
export declare function buildAdditionalFieldDelegate<M extends Record<string, any>, USER extends User = User>(additionalFieldDelegate: AdditionalFieldDelegate<M, USER>): AdditionalFieldDelegate<M, USER>;
|
|
58
58
|
/**
|
|
59
59
|
* Identity function we use to defeat the type system of Typescript and build
|
|
60
60
|
* additional field delegates views with all its properties
|
package/dist/util/entities.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { CMSType, DataType, Entity, EntityReference, EntityStatus, EntityValues, PropertiesOrBuilders, Property, PropertyBuilder, PropertyOrBuilder, ResolvedProperties, ResolvedProperty } from "../types";
|
|
2
|
-
export declare function isReadOnly(property: Property | ResolvedProperty): boolean;
|
|
2
|
+
export declare function isReadOnly(property: Property<any> | ResolvedProperty<any>): boolean;
|
|
3
3
|
export declare function isHidden(property: Property | ResolvedProperty): boolean;
|
|
4
4
|
export declare function isPropertyBuilder<T extends CMSType, M extends Record<string, any>>(propertyOrBuilder?: PropertyOrBuilder<T, M> | Property<T> | ResolvedProperty<T>): propertyOrBuilder is PropertyBuilder<T, M>;
|
|
5
5
|
export declare function getDefaultValuesFor<M extends Record<string, any>>(properties: PropertiesOrBuilders<M> | ResolvedProperties<M>): Partial<EntityValues<M>>;
|
|
6
|
-
export declare function getDefaultValueFor(property
|
|
6
|
+
export declare function getDefaultValueFor(property?: PropertyOrBuilder): {} | null | undefined;
|
|
7
7
|
export declare function getDefaultValueForDataType(dataType: DataType): {} | null;
|
|
8
8
|
/**
|
|
9
9
|
* Update the automatic values in an entity before save
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Saves data to the in-memory cache and persists it individually in `localStorage`.
|
|
3
|
+
* @param path - The unique path/key for the data.
|
|
4
|
+
* @param data - The data to cache and persist.
|
|
5
|
+
*/
|
|
6
|
+
export declare function saveEntityToCache(path: string, data: object): void;
|
|
7
|
+
/**
|
|
8
|
+
* Retrieves an entity from the in-memory cache or `localStorage`.
|
|
9
|
+
* If the entity is not in the cache but exists in `localStorage`, it loads it into the cache.
|
|
10
|
+
* @param path - The unique path/key for the entity.
|
|
11
|
+
* @returns The cached entity or `undefined` if not found.
|
|
12
|
+
*/
|
|
13
|
+
export declare function getEntityFromCache(path: string): object | undefined;
|
|
14
|
+
export declare function hasEntityInCache(path: string): boolean;
|
|
15
|
+
/**
|
|
16
|
+
* Removes an entity from both the in-memory cache and `localStorage`.
|
|
17
|
+
* @param path - The unique path/key for the entity to remove.
|
|
18
|
+
*/
|
|
19
|
+
export declare function removeEntityFromCache(path: string): void;
|
|
20
|
+
/**
|
|
21
|
+
* Clears the entire in-memory cache and removes all related entities from `localStorage`.
|
|
22
|
+
*/
|
|
23
|
+
export declare function clearEntityCache(): void;
|
package/dist/util/icons.d.ts
CHANGED
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
|
|
2
|
+
import { IconColor } from "@firecms/ui";
|
|
3
|
+
export declare function getIcon(iconKey?: string | React.ReactNode, className?: string, color?: IconColor, size?: "smallest" | "small" | "medium" | "large" | number): React.ReactElement | undefined;
|
|
3
4
|
export type IconViewProps = {
|
|
4
5
|
path: string;
|
|
5
6
|
name: string;
|
|
6
7
|
singularName?: string;
|
|
7
8
|
group?: string;
|
|
8
|
-
icon?: string;
|
|
9
|
+
icon?: string | React.ReactNode;
|
|
9
10
|
};
|
|
10
11
|
export declare const IconForView: React.NamedExoticComponent<{
|
|
11
12
|
collectionOrView?: IconViewProps;
|
|
13
|
+
color?: IconColor;
|
|
12
14
|
className?: string;
|
|
15
|
+
size?: "smallest" | "small" | "medium" | "large" | number;
|
|
13
16
|
}>;
|
package/dist/util/index.d.ts
CHANGED
|
@@ -7,6 +7,7 @@ export * from "./objects";
|
|
|
7
7
|
export * from "./paths";
|
|
8
8
|
export * from "./regexp";
|
|
9
9
|
export * from "./navigation_utils";
|
|
10
|
+
export * from "./entity_actions";
|
|
10
11
|
export * from "./useDebouncedCallback";
|
|
11
12
|
export * from "./property_utils";
|
|
12
13
|
export * from "./resolutions";
|
|
@@ -21,3 +22,5 @@ export * from "./make_properties_editable";
|
|
|
21
22
|
export * from "./join_collections";
|
|
22
23
|
export * from "./builders";
|
|
23
24
|
export * from "./useTraceUpdate";
|
|
25
|
+
export * from "./storage";
|
|
26
|
+
export * from "./callbacks";
|
|
@@ -4,21 +4,30 @@ export interface NavigationViewEntityInternal<M extends Record<string, any>> {
|
|
|
4
4
|
type: "entity";
|
|
5
5
|
entityId: string;
|
|
6
6
|
path: string;
|
|
7
|
+
fullIdPath: string;
|
|
8
|
+
fullPath: string;
|
|
7
9
|
parentCollection: EntityCollection<M>;
|
|
8
10
|
}
|
|
9
11
|
export interface NavigationViewCollectionInternal<M extends Record<string, any>> {
|
|
10
12
|
type: "collection";
|
|
13
|
+
id: string;
|
|
11
14
|
path: string;
|
|
15
|
+
fullIdPath: string;
|
|
16
|
+
fullPath: string;
|
|
12
17
|
collection: EntityCollection<M>;
|
|
13
18
|
}
|
|
14
19
|
export interface NavigationViewEntityCustomInternal<M extends Record<string, any>> {
|
|
15
20
|
type: "custom_view";
|
|
16
21
|
path: string;
|
|
22
|
+
fullIdPath: string;
|
|
23
|
+
fullPath: string;
|
|
24
|
+
entityId: string;
|
|
17
25
|
view: EntityCustomView<M>;
|
|
18
26
|
}
|
|
19
|
-
export declare function
|
|
27
|
+
export declare function getNavigationEntriesFromPath(props: {
|
|
20
28
|
path: string;
|
|
21
29
|
collections: EntityCollection[] | undefined;
|
|
22
30
|
currentFullPath?: string;
|
|
31
|
+
currentFullIdPath?: string;
|
|
23
32
|
contextEntityViews?: EntityCustomView<any>[];
|
|
24
33
|
}): NavigationViewInternal[];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { EntityCollection } from "../types";
|
|
1
|
+
import { EntityCollection, NavigationController, SideEntityController } from "../types";
|
|
2
2
|
export declare function removeInitialAndTrailingSlashes(s: string): string;
|
|
3
3
|
export declare function removeInitialSlash(s: string): string;
|
|
4
4
|
export declare function removeTrailingSlash(s: string): string;
|
|
@@ -18,3 +18,15 @@ export declare function getCollectionByPathOrId(pathOrId: string, collections: E
|
|
|
18
18
|
* @param subpaths
|
|
19
19
|
*/
|
|
20
20
|
export declare function getCollectionPathsCombinations(subpaths: string[]): string[];
|
|
21
|
+
export declare function navigateToEntity({ openEntityMode, collection, entityId, copy, path, fullIdPath, selectedTab, sideEntityController, onClose, navigation }: {
|
|
22
|
+
openEntityMode: "side_panel" | "full_screen";
|
|
23
|
+
collection?: EntityCollection;
|
|
24
|
+
entityId?: string;
|
|
25
|
+
selectedTab?: string;
|
|
26
|
+
copy?: boolean;
|
|
27
|
+
path: string;
|
|
28
|
+
fullIdPath?: string;
|
|
29
|
+
sideEntityController: SideEntityController;
|
|
30
|
+
onClose?: () => void;
|
|
31
|
+
navigation: NavigationController;
|
|
32
|
+
}): void;
|
package/dist/util/objects.d.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
export declare const pick: <T>(obj: T, ...args: any[]) => T;
|
|
2
2
|
export declare function isObject(item: any): any;
|
|
3
|
-
export declare function mergeDeep<T extends Record<any, any>, U extends Record<any, any>>(target: T, source: U): T & U;
|
|
3
|
+
export declare function mergeDeep<T extends Record<any, any>, U extends Record<any, any>>(target: T, source: U, ignoreUndefined?: boolean): T & U;
|
|
4
4
|
export declare function getValueInPath(o: object | undefined, path: string): any;
|
|
5
5
|
export declare function removeInPath(o: object, path: string): object | undefined;
|
|
6
6
|
export declare function removeFunctions(o: object | undefined): any;
|
|
7
7
|
export declare function getHashValue<T>(v: T): any;
|
|
8
8
|
export declare function removeUndefined(value: any, removeEmptyStrings?: boolean): any;
|
|
9
|
+
export declare function removeNulls(value: any): any;
|
|
9
10
|
export declare function isEmptyObject(obj: object): boolean;
|
|
10
11
|
export declare function removePropsIfExisting(source: any, comparison: any): any;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AuthController, Entity, EntityCollection, Permissions, User } from "../types";
|
|
2
|
-
export declare function resolvePermissions<M extends Record<string, any>,
|
|
3
|
-
export declare function canEditEntity<M extends Record<string, any>,
|
|
4
|
-
export declare function canCreateEntity<M extends Record<string, any>,
|
|
5
|
-
export declare function canDeleteEntity<M extends Record<string, any>,
|
|
2
|
+
export declare function resolvePermissions<M extends Record<string, any>, USER extends User>(collection: EntityCollection<M>, authController: AuthController<USER>, path: string, entity: Entity<M> | null): Permissions | undefined;
|
|
3
|
+
export declare function canEditEntity<M extends Record<string, any>, USER extends User>(collection: EntityCollection<M>, authController: AuthController<USER>, path: string, entity: Entity<M> | null): boolean;
|
|
4
|
+
export declare function canCreateEntity<M extends Record<string, any>, USER extends User>(collection: EntityCollection<M>, authController: AuthController<USER>, path: string, entity: Entity<M> | null): boolean;
|
|
5
|
+
export declare function canDeleteEntity<M extends Record<string, any>, USER extends User>(collection: EntityCollection<M>, authController: AuthController<USER>, path: string, entity: Entity<M> | null): boolean;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { EntityCollection, PropertiesOrBuilders, PropertyConfig, PropertyOrBuilder, ResolvedProperty } from "../types";
|
|
3
|
-
export declare function isReferenceProperty(propertyOrBuilder: PropertyOrBuilder, fields: Record<string, PropertyConfig>): boolean | null;
|
|
2
|
+
import { AuthController, EntityCollection, PropertiesOrBuilders, PropertyConfig, PropertyOrBuilder, ResolvedProperties, ResolvedProperty } from "../types";
|
|
3
|
+
export declare function isReferenceProperty(authController: AuthController, propertyOrBuilder: PropertyOrBuilder, fields: Record<string, PropertyConfig>): boolean | null;
|
|
4
4
|
export declare function getIdIcon(size: "small" | "medium" | "large"): React.ReactNode;
|
|
5
5
|
export declare function getIconForWidget(widget: PropertyConfig | undefined, size: "small" | "medium" | "large"): import("react/jsx-runtime").JSX.Element;
|
|
6
|
-
export declare function getIconForProperty(property: PropertyOrBuilder | ResolvedProperty
|
|
6
|
+
export declare function getIconForProperty(property: PropertyOrBuilder<any> | ResolvedProperty<any>, size?: "small" | "medium" | "large", fields?: Record<string, PropertyConfig>): React.ReactNode;
|
|
7
7
|
export declare function getColorForProperty(property: PropertyOrBuilder, fields: Record<string, PropertyConfig>): string;
|
|
8
8
|
/**
|
|
9
9
|
* Get a property in a property tree from a path like
|
|
@@ -11,7 +11,7 @@ export declare function getColorForProperty(property: PropertyOrBuilder, fields:
|
|
|
11
11
|
* @param properties
|
|
12
12
|
* @param path
|
|
13
13
|
*/
|
|
14
|
-
export declare function getPropertyInPath<M extends Record<string, any>>(properties: PropertiesOrBuilders<M
|
|
14
|
+
export declare function getPropertyInPath<M extends Record<string, any>>(properties: PropertiesOrBuilders<M> | ResolvedProperties, path: string): PropertyOrBuilder<any, M> | undefined;
|
|
15
15
|
export declare function getResolvedPropertyInPath(properties: Record<string, ResolvedProperty>, path: string): ResolvedProperty | undefined;
|
|
16
16
|
export declare function getBracketNotation(path: string): string;
|
|
17
17
|
/**
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { EntityCollection, PropertyConfig, ResolvedEntityCollection } from "../types";
|
|
2
|
-
export declare function getEntityPreviewKeys(targetCollection: EntityCollection<any>, fields: Record<string, PropertyConfig>, previewProperties?: string[], limit?: number): string[];
|
|
1
|
+
import { AuthController, EntityCollection, PropertyConfig, ResolvedEntityCollection } from "../types";
|
|
2
|
+
export declare function getEntityPreviewKeys(authController: AuthController, targetCollection: EntityCollection<any>, fields: Record<string, PropertyConfig>, previewProperties?: string[], limit?: number): string[];
|
|
3
3
|
export declare function getEntityTitlePropertyKey<M extends Record<string, any>>(collection: EntityCollection<M>, propertyConfigs: Record<string, PropertyConfig<any>>): string | undefined;
|
|
4
4
|
export declare function getEntityImagePreviewPropertyKey<M extends object>(collection: ResolvedEntityCollection<M>): string | undefined;
|
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import { ArrayProperty, CMSType, EntityCollection, EntityCustomView, EntityValues, EnumValueConfig, EnumValues, NumberProperty, PropertiesOrBuilders, PropertyConfig, PropertyOrBuilder, ResolvedArrayProperty, ResolvedEntityCollection, ResolvedNumberProperty, ResolvedProperties, ResolvedProperty, ResolvedStringProperty, StringProperty, UserConfigurationPersistence } from "../types";
|
|
2
|
-
export declare const resolveCollection: <M extends Record<string, any>>({ collection, path, entityId, values, previousValues, userConfigPersistence,
|
|
1
|
+
import { ArrayProperty, AuthController, CMSType, CustomizationController, EntityAction, EntityCollection, EntityCustomView, EntityValues, EnumValueConfig, EnumValues, NumberProperty, PropertiesOrBuilders, PropertyConfig, PropertyOrBuilder, ResolvedArrayProperty, ResolvedEntityCollection, ResolvedNumberProperty, ResolvedProperties, ResolvedProperty, ResolvedStringProperty, StringProperty, UserConfigurationPersistence } from "../types";
|
|
2
|
+
export declare const resolveCollection: <M extends Record<string, any>>({ collection, path, entityId, values, previousValues, userConfigPersistence, propertyConfigs, ignoreMissingFields, authController }: {
|
|
3
3
|
collection: EntityCollection<M> | ResolvedEntityCollection<M>;
|
|
4
4
|
path: string;
|
|
5
5
|
entityId?: string;
|
|
6
6
|
values?: Partial<EntityValues<M>>;
|
|
7
7
|
previousValues?: Partial<EntityValues<M>>;
|
|
8
8
|
userConfigPersistence?: UserConfigurationPersistence;
|
|
9
|
-
|
|
9
|
+
propertyConfigs?: Record<string, PropertyConfig>;
|
|
10
10
|
ignoreMissingFields?: boolean;
|
|
11
|
+
authController: AuthController;
|
|
11
12
|
}) => ResolvedEntityCollection<M>;
|
|
12
13
|
/**
|
|
13
14
|
* Resolve property builders, enums and arrays.
|
|
@@ -23,9 +24,24 @@ export declare function resolveProperty<T extends CMSType = CMSType, M extends R
|
|
|
23
24
|
entityId?: string;
|
|
24
25
|
index?: number;
|
|
25
26
|
fromBuilder?: boolean;
|
|
26
|
-
|
|
27
|
+
propertyConfigs?: Record<string, PropertyConfig<any>>;
|
|
27
28
|
ignoreMissingFields?: boolean;
|
|
29
|
+
authController: AuthController;
|
|
28
30
|
}): ResolvedProperty<T> | null;
|
|
31
|
+
export declare function getArrayResolvedProperties<M>({ propertyKey, propertyValue, property, ...props }: {
|
|
32
|
+
propertyValue: any;
|
|
33
|
+
propertyKey?: string;
|
|
34
|
+
property: ArrayProperty<any> | ResolvedArrayProperty<any>;
|
|
35
|
+
ignoreMissingFields: boolean;
|
|
36
|
+
values?: Partial<M>;
|
|
37
|
+
previousValues?: Partial<M>;
|
|
38
|
+
path?: string;
|
|
39
|
+
entityId?: string;
|
|
40
|
+
index?: number;
|
|
41
|
+
fromBuilder?: boolean;
|
|
42
|
+
propertyConfigs?: Record<string, PropertyConfig>;
|
|
43
|
+
authController: AuthController;
|
|
44
|
+
}): ResolvedProperty[];
|
|
29
45
|
export declare function resolveArrayProperty<T extends any[], M>({ propertyKey, property, ignoreMissingFields, ...props }: {
|
|
30
46
|
propertyKey?: string;
|
|
31
47
|
property: ArrayProperty<T> | ResolvedArrayProperty<T>;
|
|
@@ -35,8 +51,9 @@ export declare function resolveArrayProperty<T extends any[], M>({ propertyKey,
|
|
|
35
51
|
entityId?: string;
|
|
36
52
|
index?: number;
|
|
37
53
|
fromBuilder?: boolean;
|
|
38
|
-
|
|
54
|
+
propertyConfigs?: Record<string, PropertyConfig>;
|
|
39
55
|
ignoreMissingFields?: boolean;
|
|
56
|
+
authController: AuthController;
|
|
40
57
|
}): ResolvedArrayProperty;
|
|
41
58
|
/**
|
|
42
59
|
* Resolve enums and arrays for properties
|
|
@@ -52,8 +69,9 @@ export declare function resolveProperties<M extends Record<string, any>>({ prope
|
|
|
52
69
|
entityId?: string;
|
|
53
70
|
index?: number;
|
|
54
71
|
fromBuilder?: boolean;
|
|
55
|
-
|
|
72
|
+
propertyConfigs?: Record<string, PropertyConfig>;
|
|
56
73
|
ignoreMissingFields?: boolean;
|
|
74
|
+
authController: AuthController;
|
|
57
75
|
}): ResolvedProperties<M>;
|
|
58
76
|
/**
|
|
59
77
|
* Resolve enum aliases for a string or number property
|
|
@@ -63,3 +81,9 @@ export declare function resolveProperties<M extends Record<string, any>>({ prope
|
|
|
63
81
|
export declare function resolvePropertyEnum(property: StringProperty | NumberProperty, fromBuilder?: boolean): ResolvedStringProperty | ResolvedNumberProperty;
|
|
64
82
|
export declare function resolveEnumValues(input: EnumValues): EnumValueConfig[] | undefined;
|
|
65
83
|
export declare function resolveEntityView(entityView: string | EntityCustomView<any>, contextEntityViews?: EntityCustomView<any>[]): EntityCustomView<any> | undefined;
|
|
84
|
+
export declare function resolveEntityAction<M extends Record<string, any>>(entityAction: string | EntityAction<M>, contextEntityActions?: EntityAction<M>[]): EntityAction<M> | undefined;
|
|
85
|
+
export declare function resolvedSelectedEntityView<M extends Record<string, any>>(customViews: (string | EntityCustomView<M>)[] | undefined, customizationController: CustomizationController, selectedTab?: string, canEdit?: boolean): {
|
|
86
|
+
resolvedEntityViews: EntityCustomView<M>[];
|
|
87
|
+
selectedEntityView: EntityCustomView<M> | undefined;
|
|
88
|
+
selectedSecondaryForm: EntityCustomView<M> | undefined;
|
|
89
|
+
};
|
package/dist/util/storage.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ interface ResolveFilenameStringParams<M extends object> {
|
|
|
9
9
|
file: File;
|
|
10
10
|
propertyKey: string;
|
|
11
11
|
}
|
|
12
|
-
export declare function
|
|
12
|
+
export declare function resolveStorageFilenameString<M extends object>({ input, storage, values, entityId, path, property, file, propertyKey }: ResolveFilenameStringParams<M>): Promise<string>;
|
|
13
13
|
interface ResolveStoragePathStringParams<M extends object> {
|
|
14
14
|
input: string | ((context: UploadedFileContext) => string);
|
|
15
15
|
storage: StorageConfig;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { EntityValues, ResolvedArrayProperty, ResolvedStringProperty, StorageConfig, StorageSource } from "../types";
|
|
1
|
+
import { ArrayProperty, EntityValues, ResolvedArrayProperty, ResolvedStringProperty, StorageConfig, StorageSource, StringProperty } from "../types";
|
|
2
2
|
import { PreviewSize } from "../preview";
|
|
3
3
|
/**
|
|
4
4
|
* Internal representation of an item in the storage
|
|
@@ -20,7 +20,7 @@ export declare function useStorageUploadController<M extends object>({ entityId,
|
|
|
20
20
|
value: string | string[] | null;
|
|
21
21
|
path?: string;
|
|
22
22
|
propertyKey: string;
|
|
23
|
-
property: ResolvedStringProperty | ResolvedArrayProperty<string[]>;
|
|
23
|
+
property: StringProperty | ArrayProperty<string[]> | ResolvedStringProperty | ResolvedArrayProperty<string[]>;
|
|
24
24
|
storageSource: StorageSource;
|
|
25
25
|
disabled: boolean;
|
|
26
26
|
onChange: (value: string | string[] | null) => void;
|
package/package.json
CHANGED
|
@@ -1,131 +1,139 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
2
|
+
"name": "@firecms/core",
|
|
3
|
+
"type": "module",
|
|
4
|
+
"version": "3.0.0-rc.2",
|
|
5
|
+
"description": "Awesome Firebase/Firestore-based headless open-source CMS",
|
|
6
|
+
"funding": {
|
|
7
|
+
"url": "https://github.com/sponsors/firecmsco"
|
|
8
|
+
},
|
|
9
|
+
"author": "FireCMS",
|
|
10
|
+
"license": "MIT",
|
|
11
|
+
"repository": {
|
|
12
|
+
"type": "git",
|
|
13
|
+
"url": "https://github.com/firecmsco/firecms.git",
|
|
14
|
+
"directory": "packages/firecms_core"
|
|
15
|
+
},
|
|
16
|
+
"main": "./dist/index.umd.js",
|
|
17
|
+
"module": "./dist/index.es.js",
|
|
18
|
+
"types": "./dist/index.d.ts",
|
|
19
|
+
"source": "src/index.ts",
|
|
20
|
+
"engines": {
|
|
21
|
+
"node": ">=14"
|
|
22
|
+
},
|
|
23
|
+
"keywords": [
|
|
24
|
+
"firebase",
|
|
25
|
+
"cms",
|
|
26
|
+
"admin",
|
|
27
|
+
"admin panel",
|
|
28
|
+
"firebase panel",
|
|
29
|
+
"firestore",
|
|
30
|
+
"headless",
|
|
31
|
+
"headless cms",
|
|
32
|
+
"content manager"
|
|
33
|
+
],
|
|
34
|
+
"scripts": {
|
|
35
|
+
"watch": "vite build --watch",
|
|
36
|
+
"build": "vite build && tsc --emitDeclarationOnly -p tsconfig.prod.json",
|
|
37
|
+
"prepublishOnly": "run-s build",
|
|
38
|
+
"createTag": "PACKAGE_VERSION=$(cat package.json | grep version | head -1 | awk -F: '{ print $2 }' | sed 's/[\",]//g' | tr -d '[[:space:]]') && git tag v$PACKAGE_VERSION && git push --tags",
|
|
39
|
+
"test:lint": "eslint \"src/**\" --quiet",
|
|
40
|
+
"test": "jest",
|
|
41
|
+
"clean": "rm -rf dist && find ./src -name '*.js' -type f | xargs rm -f",
|
|
42
|
+
"generateIcons": "ts-node --esm src/icons/generateIcons.ts"
|
|
43
|
+
},
|
|
44
|
+
"exports": {
|
|
45
|
+
".": {
|
|
46
|
+
"types": "./dist/index.d.ts",
|
|
47
|
+
"import": "./dist/index.es.js",
|
|
48
|
+
"require": "./dist/index.umd.js"
|
|
8
49
|
},
|
|
9
|
-
"
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
"
|
|
13
|
-
"
|
|
14
|
-
"
|
|
15
|
-
"
|
|
16
|
-
"
|
|
17
|
-
|
|
50
|
+
"./package.json": "./package.json"
|
|
51
|
+
},
|
|
52
|
+
"dependencies": {
|
|
53
|
+
"@dnd-kit/core": "^6.3.1",
|
|
54
|
+
"@dnd-kit/modifiers": "^9.0.0",
|
|
55
|
+
"@dnd-kit/sortable": "^10.0.0",
|
|
56
|
+
"@firecms/editor": "^3.0.0-rc.2",
|
|
57
|
+
"@firecms/formex": "^3.0.0-rc.2",
|
|
58
|
+
"@firecms/ui": "^3.0.0-rc.2",
|
|
59
|
+
"@radix-ui/react-portal": "^1.1.9",
|
|
60
|
+
"clsx": "^2.1.1",
|
|
61
|
+
"date-fns": "^3.6.0",
|
|
62
|
+
"fuse.js": "^7.1.0",
|
|
63
|
+
"history": "^5.3.0",
|
|
64
|
+
"markdown-it": "^14.1.0",
|
|
65
|
+
"notistack": "^3.0.2",
|
|
66
|
+
"object-hash": "^3.0.0",
|
|
67
|
+
"prism-react-renderer": "^2.4.1",
|
|
68
|
+
"react-dropzone": "^14.3.8",
|
|
69
|
+
"react-fast-compare": "^3.2.2",
|
|
70
|
+
"react-image-file-resizer": "^0.4.8",
|
|
71
|
+
"react-transition-group": "^4.4.5",
|
|
72
|
+
"react-use-measure": "^2.1.7",
|
|
73
|
+
"react-window": "^1.8.11",
|
|
74
|
+
"vite-plugin-static-copy": "3.1.2",
|
|
75
|
+
"yup": "^0.32.11"
|
|
76
|
+
},
|
|
77
|
+
"peerDependencies": {
|
|
78
|
+
"react": ">=18.0.0",
|
|
79
|
+
"react-dom": ">=18.0.0",
|
|
80
|
+
"react-router": "^6.28.0",
|
|
81
|
+
"react-router-dom": "^6.28.0"
|
|
82
|
+
},
|
|
83
|
+
"devDependencies": {
|
|
84
|
+
"@jest/globals": "^30.1.2",
|
|
85
|
+
"@testing-library/react": "^16.3.0",
|
|
86
|
+
"@testing-library/user-event": "^14.6.1",
|
|
87
|
+
"@types/jest": "^29.5.14",
|
|
88
|
+
"@types/node": "^20.19.17",
|
|
89
|
+
"@types/object-hash": "^3.0.6",
|
|
90
|
+
"@types/react": "^18.3.24",
|
|
91
|
+
"@types/react-dom": "^18.3.7",
|
|
92
|
+
"@types/react-measure": "^2.0.12",
|
|
93
|
+
"@vitejs/plugin-react": "^4.7.0",
|
|
94
|
+
"babel-plugin-react-compiler": "^19.0.0-beta-af1b7da-20250417",
|
|
95
|
+
"cross-env": "^7.0.3",
|
|
96
|
+
"eslint-plugin-react-compiler": "^19.0.0-beta-af1b7da-20250417",
|
|
97
|
+
"jest": "^29.7.0",
|
|
98
|
+
"npm-run-all": "^4.1.5",
|
|
99
|
+
"react-router": "^6.30.1",
|
|
100
|
+
"react-router-dom": "^6.30.1",
|
|
101
|
+
"ts-jest": "^29.4.3",
|
|
102
|
+
"ts-node": "^10.9.2",
|
|
103
|
+
"tsd": "^0.31.2",
|
|
104
|
+
"typescript": "^5.9.2",
|
|
105
|
+
"vite": "^7.1.6"
|
|
106
|
+
},
|
|
107
|
+
"files": [
|
|
108
|
+
"dist",
|
|
109
|
+
"src"
|
|
110
|
+
],
|
|
111
|
+
"gitHead": "6295de2d801a3d2cddaa958fd66cb041dd2c240e",
|
|
112
|
+
"publishConfig": {
|
|
113
|
+
"access": "public"
|
|
114
|
+
},
|
|
115
|
+
"eslintConfig": {
|
|
116
|
+
"extends": [
|
|
117
|
+
"react-app",
|
|
118
|
+
"react-app/jest"
|
|
119
|
+
]
|
|
120
|
+
},
|
|
121
|
+
"jest": {
|
|
122
|
+
"transform": {
|
|
123
|
+
"^.+\\.tsx?$": "ts-jest"
|
|
18
124
|
},
|
|
19
|
-
"
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
"headless cms",
|
|
28
|
-
"content manager"
|
|
125
|
+
"testRegex": "(/__tests__/.*|(\\.|/)(test|spec))\\.tsx?$",
|
|
126
|
+
"moduleFileExtensions": [
|
|
127
|
+
"ts",
|
|
128
|
+
"tsx",
|
|
129
|
+
"js",
|
|
130
|
+
"jsx",
|
|
131
|
+
"json",
|
|
132
|
+
"node"
|
|
29
133
|
],
|
|
30
|
-
"
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
"prepublishOnly": "run-s build",
|
|
34
|
-
"createTag": "PACKAGE_VERSION=$(cat package.json | grep version | head -1 | awk -F: '{ print $2 }' | sed 's/[\",]//g' | tr -d '[[:space:]]') && git tag v$PACKAGE_VERSION && git push --tags",
|
|
35
|
-
"test:lint": "eslint \"src/**\" --quiet",
|
|
36
|
-
"test": "jest",
|
|
37
|
-
"clean": "rm -rf dist && find ./src -name '*.js' -type f | xargs rm -f",
|
|
38
|
-
"generateIcons": "ts-node --esm src/icons/generateIcons.ts"
|
|
39
|
-
},
|
|
40
|
-
"exports": {
|
|
41
|
-
".": {
|
|
42
|
-
"import": "./dist/index.es.js",
|
|
43
|
-
"require": "./dist/index.umd.js",
|
|
44
|
-
"types": "./dist/index.d.ts"
|
|
45
|
-
},
|
|
46
|
-
"./package.json": "./package.json"
|
|
47
|
-
},
|
|
48
|
-
"dependencies": {
|
|
49
|
-
"@firecms/formex": "^3.0.0-canary.99",
|
|
50
|
-
"@firecms/ui": "^3.0.0-canary.99",
|
|
51
|
-
"@hello-pangea/dnd": "^16.6.0",
|
|
52
|
-
"@radix-ui/react-portal": "^1.1.1",
|
|
53
|
-
"clsx": "^2.1.1",
|
|
54
|
-
"date-fns": "^3.6.0",
|
|
55
|
-
"fuse.js": "^7.0.0",
|
|
56
|
-
"history": "^5.3.0",
|
|
57
|
-
"markdown-it": "^14.1.0",
|
|
58
|
-
"notistack": "^3.0.1",
|
|
59
|
-
"object-hash": "^3.0.0",
|
|
60
|
-
"react-dropzone": "^14.2.3",
|
|
61
|
-
"react-fast-compare": "^3.2.2",
|
|
62
|
-
"react-image-file-resizer": "^0.4.8",
|
|
63
|
-
"react-markdown-editor-lite": "^1.3.4",
|
|
64
|
-
"react-transition-group": "^4.4.5",
|
|
65
|
-
"react-use-measure": "^2.1.1",
|
|
66
|
-
"react-window": "^1.8.10",
|
|
67
|
-
"yup": "^0.32.11"
|
|
68
|
-
},
|
|
69
|
-
"peerDependencies": {
|
|
70
|
-
"firebase": "^10.5.2",
|
|
71
|
-
"react": ">=18 || >=19.0.0-0 <20",
|
|
72
|
-
"react-dom": ">=18 || >=19.0.0-0 <20",
|
|
73
|
-
"react-router": "^6.25.1",
|
|
74
|
-
"react-router-dom": "^6.25.1"
|
|
75
|
-
},
|
|
76
|
-
"devDependencies": {
|
|
77
|
-
"@jest/globals": "^29.7.0",
|
|
78
|
-
"@testing-library/react": "^15.0.7",
|
|
79
|
-
"@testing-library/user-event": "^14.5.2",
|
|
80
|
-
"@types/jest": "^29.5.12",
|
|
81
|
-
"@types/node": "^20.14.12",
|
|
82
|
-
"@types/object-hash": "^3.0.6",
|
|
83
|
-
"@types/react": "^18.3.3",
|
|
84
|
-
"@types/react-dom": "^18.3.0",
|
|
85
|
-
"@types/react-measure": "^2.0.12",
|
|
86
|
-
"@vitejs/plugin-react": "^4.3.1",
|
|
87
|
-
"cross-env": "^7.0.3",
|
|
88
|
-
"firebase": "^10.12.4",
|
|
89
|
-
"jest": "^29.7.0",
|
|
90
|
-
"npm-run-all": "^4.1.5",
|
|
91
|
-
"react-router": "^6.25.1",
|
|
92
|
-
"react-router-dom": "^6.25.1",
|
|
93
|
-
"ts-jest": "^29.2.3",
|
|
94
|
-
"ts-node": "^10.9.2",
|
|
95
|
-
"tsd": "^0.31.1",
|
|
96
|
-
"typescript": "^5.5.4",
|
|
97
|
-
"vite": "^5.3.4"
|
|
98
|
-
},
|
|
99
|
-
"files": [
|
|
100
|
-
"dist",
|
|
101
|
-
"src"
|
|
102
|
-
],
|
|
103
|
-
"gitHead": "57720a20bac7f08765325b988d340b1fa8942852",
|
|
104
|
-
"publishConfig": {
|
|
105
|
-
"access": "public"
|
|
106
|
-
},
|
|
107
|
-
"eslintConfig": {
|
|
108
|
-
"extends": [
|
|
109
|
-
"react-app",
|
|
110
|
-
"react-app/jest"
|
|
111
|
-
]
|
|
112
|
-
},
|
|
113
|
-
"jest": {
|
|
114
|
-
"transform": {
|
|
115
|
-
"^.+\\.tsx?$": "ts-jest"
|
|
116
|
-
},
|
|
117
|
-
"testRegex": "(/__tests__/.*|(\\.|/)(test|spec))\\.tsx?$",
|
|
118
|
-
"moduleFileExtensions": [
|
|
119
|
-
"ts",
|
|
120
|
-
"tsx",
|
|
121
|
-
"js",
|
|
122
|
-
"jsx",
|
|
123
|
-
"json",
|
|
124
|
-
"node"
|
|
125
|
-
],
|
|
126
|
-
"testEnvironment": "node",
|
|
127
|
-
"moduleNameMapper": {
|
|
128
|
-
"\\.(css|less)$": "<rootDir>/test/__mocks__/styleMock.js"
|
|
129
|
-
}
|
|
134
|
+
"testEnvironment": "node",
|
|
135
|
+
"moduleNameMapper": {
|
|
136
|
+
"\\.(css|less)$": "<rootDir>/test/__mocks__/styleMock.js"
|
|
130
137
|
}
|
|
138
|
+
}
|
|
131
139
|
}
|
package/src/app/Drawer.tsx
CHANGED
|
@@ -7,7 +7,6 @@ import { DefaultDrawer } from "../core";
|
|
|
7
7
|
* If you want to customise the drawer, you can create your own component and pass it as a child.
|
|
8
8
|
* For custom drawers, you can use the {@link useApp} to open and close the drawer.
|
|
9
9
|
*
|
|
10
|
-
|
|
11
10
|
*/
|
|
12
11
|
export function Drawer({
|
|
13
12
|
children,
|