@firecms/core 3.0.0-beta.10 → 3.0.0-beta.12
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/dist/components/ArrayContainer.d.ts +22 -6
- package/dist/components/EntityCollectionTable/EntityCollectionRowActions.d.ts +2 -1
- package/dist/components/EntityCollectionTable/EntityCollectionTable.d.ts +2 -2
- package/dist/components/EntityCollectionTable/EntityCollectionTableProps.d.ts +17 -3
- 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 +4 -0
- package/dist/components/PropertyIdCopyTooltip.d.ts +1 -1
- package/dist/components/SelectableTable/SelectableTable.d.ts +12 -2
- package/dist/components/SelectableTable/filters/ReferenceFilterField.d.ts +1 -1
- package/dist/components/UnsavedChangesDialog.d.ts +8 -0
- package/dist/components/VirtualTable/VirtualTableProps.d.ts +13 -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/contexts/BreacrumbsContext.d.ts +8 -0
- package/dist/core/EntityEditView.d.ts +30 -22
- package/dist/core/EntityEditViewFormActions.d.ts +2 -0
- package/dist/core/FireCMS.d.ts +1 -1
- 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/index.d.ts +2 -1
- package/dist/form/EntityForm.d.ts +45 -0
- package/dist/form/EntityFormActions.d.ts +17 -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/index.d.ts +2 -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/MapFieldBinding.d.ts +1 -1
- package/dist/form/field_bindings/MarkdownEditorFieldBinding.d.ts +1 -1
- 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/SwitchFieldBinding.d.ts +1 -2
- package/dist/form/index.d.ts +16 -16
- 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/useAuthController.d.ts +1 -1
- package/dist/hooks/useBreadcrumbsController.d.ts +26 -0
- package/dist/hooks/useBuildNavigationController.d.ts +7 -4
- package/dist/hooks/useFireCMSContext.d.ts +1 -1
- package/dist/hooks/useModeController.d.ts +1 -2
- package/dist/hooks/useResolvedNavigationFrom.d.ts +3 -3
- package/dist/hooks/useValidateAuthenticator.d.ts +3 -3
- package/dist/index.es.js +17032 -12909
- package/dist/index.es.js.map +1 -1
- package/dist/index.umd.js +17019 -12898
- package/dist/index.umd.js.map +1 -1
- package/dist/internal/useBuildSideEntityController.d.ts +2 -2
- 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/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/auth.d.ts +7 -9
- package/dist/types/collections.d.ts +44 -23
- package/dist/types/datasource.d.ts +2 -6
- package/dist/types/dialogs_controller.d.ts +7 -3
- package/dist/types/entities.d.ts +1 -1
- package/dist/types/entity_actions.d.ts +14 -4
- package/dist/types/entity_callbacks.d.ts +16 -16
- package/dist/types/export_import.d.ts +4 -4
- package/dist/types/fields.d.ts +27 -4
- package/dist/types/firecms.d.ts +2 -2
- package/dist/types/firecms_context.d.ts +1 -1
- package/dist/types/navigation.d.ts +29 -12
- package/dist/types/permissions.d.ts +4 -4
- package/dist/types/plugins.d.ts +9 -8
- package/dist/types/properties.d.ts +18 -3
- package/dist/types/property_config.d.ts +0 -2
- package/dist/types/side_entity_controller.d.ts +6 -1
- package/dist/types/user.d.ts +1 -0
- package/dist/util/builders.d.ts +3 -3
- package/dist/util/entities.d.ts +1 -1
- 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 +3 -1
- package/dist/util/index.d.ts +1 -0
- package/dist/util/navigation_from_path.d.ts +6 -1
- package/dist/util/navigation_utils.d.ts +12 -1
- package/dist/util/objects.d.ts +1 -0
- package/dist/util/permissions.d.ts +4 -4
- package/dist/util/property_utils.d.ts +2 -2
- package/dist/util/resolutions.d.ts +12 -7
- package/package.json +129 -125
- package/src/app/Scaffold.tsx +4 -4
- package/src/components/ArrayContainer.tsx +115 -34
- package/src/components/CircularProgressCenter.tsx +1 -1
- package/src/components/ConfirmationDialog.tsx +2 -2
- package/src/components/DeleteEntityDialog.tsx +10 -19
- package/src/components/EntityCollectionTable/EntityCollectionRowActions.tsx +44 -20
- package/src/components/EntityCollectionTable/EntityCollectionTable.tsx +23 -17
- package/src/components/EntityCollectionTable/EntityCollectionTableProps.tsx +20 -3
- package/src/components/EntityCollectionTable/PropertyTableCell.tsx +6 -4
- package/src/components/EntityCollectionTable/fields/TableReferenceField.tsx +8 -9
- package/src/components/EntityCollectionTable/fields/TableStorageUpload.tsx +5 -11
- package/src/components/EntityCollectionTable/index.tsx +1 -1
- package/src/components/EntityCollectionTable/internal/CollectionTableToolbar.tsx +3 -3
- package/src/components/EntityCollectionTable/internal/EntityTableCell.tsx +5 -5
- package/src/components/EntityCollectionTable/internal/EntityTableCellActions.tsx +2 -2
- package/src/components/EntityCollectionTable/internal/popup_field/PopupFormField.tsx +77 -73
- package/src/components/EntityCollectionView/EntityCollectionView.tsx +90 -49
- package/src/components/EntityCollectionView/EntityCollectionViewActions.tsx +4 -2
- package/src/components/EntityCollectionView/useSelectionController.tsx +5 -4
- package/src/components/EntityPreview.tsx +39 -30
- package/src/components/EntityView.tsx +5 -5
- package/src/components/ErrorView.tsx +3 -3
- package/src/components/HomePage/DefaultHomePage.tsx +1 -0
- package/src/components/HomePage/FavouritesView.tsx +6 -11
- package/src/components/HomePage/NavigationCard.tsx +1 -1
- package/src/components/HomePage/NavigationCardBinding.tsx +4 -9
- package/src/components/HomePage/NavigationGroup.tsx +1 -1
- package/src/components/NotFoundPage.tsx +2 -2
- package/src/components/PropertyConfigBadge.tsx +1 -1
- package/src/components/PropertyIdCopyTooltip.tsx +3 -4
- package/src/components/ReferenceTable/ReferenceSelectionTable.tsx +13 -8
- package/src/components/SelectableTable/SelectableTable.tsx +20 -5
- 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 +7 -5
- package/src/components/UnsavedChangesDialog.tsx +42 -0
- package/src/components/VirtualTable/VirtualTable.tsx +19 -2
- package/src/components/VirtualTable/VirtualTableHeader.tsx +8 -8
- package/src/components/VirtualTable/VirtualTableHeaderRow.tsx +1 -1
- package/src/components/VirtualTable/VirtualTableProps.tsx +15 -0
- package/src/components/VirtualTable/VirtualTableRow.tsx +1 -1
- package/src/components/VirtualTable/fields/VirtualTableDateField.tsx +1 -1
- package/src/components/VirtualTable/fields/VirtualTableInput.tsx +1 -1
- package/src/components/VirtualTable/fields/VirtualTableSelect.tsx +2 -0
- package/src/components/common/default_entity_actions.tsx +26 -37
- package/src/components/common/index.ts +1 -1
- package/src/components/common/useColumnsIds.tsx +1 -1
- 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/contexts/BreacrumbsContext.tsx +38 -0
- package/src/contexts/DialogsProvider.tsx +3 -2
- package/src/contexts/ModeController.tsx +1 -3
- package/src/contexts/SnackbarProvider.tsx +2 -0
- package/src/core/DefaultAppBar.tsx +56 -25
- package/src/core/DefaultDrawer.tsx +11 -9
- package/src/core/DrawerNavigationItem.tsx +4 -4
- package/src/core/EntityEditView.tsx +282 -1006
- package/src/core/EntityEditViewFormActions.tsx +199 -0
- package/src/core/EntitySidePanel.tsx +85 -15
- package/src/core/FireCMS.tsx +12 -9
- package/src/core/FireCMSRouter.tsx +17 -0
- package/src/core/NavigationRoutes.tsx +23 -32
- package/src/core/SideDialogs.tsx +21 -12
- package/src/core/field_configs.tsx +4 -4
- package/src/core/index.tsx +4 -2
- package/src/form/EntityForm.tsx +774 -0
- package/src/form/EntityFormActions.tsx +169 -0
- package/src/form/PropertyFieldBinding.tsx +39 -30
- package/src/form/components/CustomIdField.tsx +2 -0
- package/src/form/components/FormEntry.tsx +22 -0
- package/src/form/components/FormLayout.tsx +16 -0
- package/src/form/components/LabelWithIcon.tsx +6 -3
- package/src/form/components/StorageItemPreview.tsx +3 -3
- package/src/form/components/StorageUploadProgress.tsx +1 -1
- package/src/form/components/index.tsx +2 -1
- package/src/form/field_bindings/ArrayCustomShapedFieldBinding.tsx +7 -6
- package/src/form/field_bindings/ArrayOfReferencesFieldBinding.tsx +20 -12
- package/src/form/field_bindings/BlockFieldBinding.tsx +45 -25
- package/src/form/field_bindings/DateTimeFieldBinding.tsx +2 -1
- package/src/form/field_bindings/KeyValueFieldBinding.tsx +10 -7
- package/src/form/field_bindings/MapFieldBinding.tsx +69 -52
- package/src/form/field_bindings/MarkdownEditorFieldBinding.tsx +9 -6
- package/src/form/field_bindings/MultiSelectFieldBinding.tsx +1 -1
- package/src/form/field_bindings/ReadOnlyFieldBinding.tsx +2 -2
- package/src/form/field_bindings/ReferenceFieldBinding.tsx +5 -5
- package/src/form/field_bindings/RepeatFieldBinding.tsx +30 -22
- package/src/form/field_bindings/SelectFieldBinding.tsx +6 -5
- package/src/form/field_bindings/StorageUploadFieldBinding.tsx +7 -5
- package/src/form/field_bindings/SwitchFieldBinding.tsx +26 -25
- package/src/form/field_bindings/TextFieldBinding.tsx +4 -3
- package/src/form/index.tsx +16 -32
- package/src/form/validation.ts +12 -6
- package/src/hooks/data/delete.ts +4 -4
- package/src/hooks/data/save.ts +8 -9
- package/src/hooks/data/useCollectionFetch.tsx +3 -3
- package/src/hooks/data/useEntityFetch.tsx +10 -6
- package/src/hooks/useAuthController.tsx +1 -1
- package/src/hooks/useBreadcrumbsController.tsx +31 -0
- package/src/hooks/useBuildModeController.tsx +15 -28
- package/src/hooks/useBuildNavigationController.tsx +74 -29
- package/src/hooks/useFireCMSContext.tsx +5 -5
- package/src/hooks/useLargeLayout.tsx +0 -35
- package/src/hooks/useModeController.tsx +1 -2
- package/src/hooks/useResolvedNavigationFrom.tsx +9 -11
- package/src/hooks/useValidateAuthenticator.tsx +3 -3
- package/src/internal/useBuildDataSource.ts +1 -1
- package/src/internal/useBuildSideDialogsController.tsx +3 -2
- package/src/internal/useBuildSideEntityController.tsx +124 -83
- package/src/internal/useUnsavedChangesDialog.tsx +127 -93
- package/src/preview/PropertyPreview.tsx +11 -11
- 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 +5 -6
- package/src/preview/components/UrlComponentPreview.tsx +20 -21
- package/src/preview/property_previews/ArrayOfMapsPreview.tsx +1 -1
- package/src/preview/property_previews/ArrayOfReferencesPreview.tsx +2 -2
- package/src/preview/property_previews/ArrayOfStorageComponentsPreview.tsx +2 -2
- package/src/preview/property_previews/ArrayOfStringsPreview.tsx +1 -1
- package/src/preview/property_previews/ArrayOneOfPreview.tsx +2 -2
- package/src/preview/property_previews/ArrayPropertyPreview.tsx +2 -2
- package/src/preview/property_previews/MapPropertyPreview.tsx +7 -6
- package/src/preview/property_previews/SkeletonPropertyComponent.tsx +12 -12
- 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 +235 -0
- package/src/routes/HomePageRoute.tsx +17 -0
- package/src/types/auth.tsx +8 -12
- package/src/types/collections.ts +52 -26
- package/src/types/datasource.ts +2 -6
- package/src/types/dialogs_controller.tsx +7 -3
- package/src/types/entities.ts +1 -1
- package/src/types/entity_actions.tsx +16 -4
- package/src/types/entity_callbacks.ts +18 -18
- package/src/types/export_import.ts +4 -4
- package/src/types/fields.tsx +33 -4
- package/src/types/firecms.tsx +2 -2
- package/src/types/firecms_context.tsx +1 -1
- package/src/types/navigation.ts +36 -16
- package/src/types/permissions.ts +5 -5
- package/src/types/plugins.tsx +9 -8
- package/src/types/properties.ts +21 -3
- package/src/types/property_config.tsx +0 -2
- package/src/types/side_dialogs_controller.tsx +2 -0
- package/src/types/side_entity_controller.tsx +6 -1
- package/src/types/user.ts +2 -0
- package/src/util/builders.ts +10 -8
- package/src/util/entities.ts +3 -1
- package/src/util/entity_actions.ts +28 -0
- package/src/util/entity_cache.ts +204 -0
- package/src/util/icon_list.ts +1 -0
- package/src/util/icon_synonyms.ts +0 -1
- package/src/util/icons.tsx +12 -8
- package/src/util/index.ts +1 -0
- package/src/util/join_collections.ts +3 -0
- package/src/util/navigation_from_path.ts +13 -6
- package/src/util/navigation_utils.ts +53 -1
- package/src/util/objects.ts +24 -1
- package/src/util/parent_references_from_path.ts +3 -3
- package/src/util/permissions.ts +8 -8
- package/src/util/property_utils.tsx +10 -3
- package/src/util/references.ts +8 -2
- package/src/util/resolutions.ts +34 -13
- package/src/util/useStorageUploadController.tsx +40 -22
- package/dist/form/components/FormikArrayContainer.d.ts +0 -19
- package/src/components/common/useDataSourceEntityCollectionTableController.tsx +0 -236
- package/src/form/components/FormikArrayContainer.tsx +0 -47
- /package/src/util/{common.tsx → common.ts} +0 -0
package/dist/types/firecms.d.ts
CHANGED
|
@@ -44,7 +44,7 @@ export type CMSViewsBuilder = (params: {
|
|
|
44
44
|
/**
|
|
45
45
|
* @group Models
|
|
46
46
|
*/
|
|
47
|
-
export type FireCMSProps<
|
|
47
|
+
export type FireCMSProps<USER extends User, EC extends EntityCollection> = {
|
|
48
48
|
/**
|
|
49
49
|
* Use this function to return the components you want to render under
|
|
50
50
|
* FireCMS
|
|
@@ -105,7 +105,7 @@ export type FireCMSProps<UserType extends User, EC extends EntityCollection> = {
|
|
|
105
105
|
/**
|
|
106
106
|
* Delegate for implementing your auth operations.
|
|
107
107
|
*/
|
|
108
|
-
authController: AuthController<
|
|
108
|
+
authController: AuthController<USER>;
|
|
109
109
|
/**
|
|
110
110
|
* Use this controller to access the configuration that is stored locally,
|
|
111
111
|
* and not defined in code
|
|
@@ -17,7 +17,7 @@ import { AnalyticsController } from "./analytics_controller";
|
|
|
17
17
|
* @group Hooks and utilities
|
|
18
18
|
* @see useFireCMSContext
|
|
19
19
|
*/
|
|
20
|
-
export type FireCMSContext<
|
|
20
|
+
export type FireCMSContext<USER extends User = User, AuthControllerType extends AuthController<USER> = AuthController<USER>> = {
|
|
21
21
|
/**
|
|
22
22
|
* Connector to your database, e.g. your Firestore database
|
|
23
23
|
*/
|
|
@@ -4,6 +4,7 @@ import { EntityReference } from "./entities";
|
|
|
4
4
|
/**
|
|
5
5
|
* Controller that includes the resolved navigation and utility methods and
|
|
6
6
|
* attributes.
|
|
7
|
+
* This controller holds the state of the navigation including the collections.
|
|
7
8
|
* @group Models
|
|
8
9
|
*/
|
|
9
10
|
export type NavigationController<EC extends EntityCollection = EntityCollection<any>> = {
|
|
@@ -57,11 +58,13 @@ export type NavigationController<EC extends EntityCollection = EntityCollection<
|
|
|
57
58
|
*/
|
|
58
59
|
getCollectionFromPaths: (pathSegments: string[]) => EC | undefined;
|
|
59
60
|
/**
|
|
60
|
-
* Default path under the navigation routes of the CMS will be created
|
|
61
|
+
* Default path under the navigation routes of the CMS will be created.
|
|
62
|
+
* Defaults to '/'. You may want to change this `basepath` to 'admin' for example.
|
|
61
63
|
*/
|
|
62
64
|
basePath: string;
|
|
63
65
|
/**
|
|
64
|
-
* Default path under the collection routes of the CMS will be created
|
|
66
|
+
* Default path under the collection routes of the CMS will be created.
|
|
67
|
+
* It defaults to '/c'
|
|
65
68
|
*/
|
|
66
69
|
baseCollectionPath: string;
|
|
67
70
|
/**
|
|
@@ -72,14 +75,6 @@ export type NavigationController<EC extends EntityCollection = EntityCollection<
|
|
|
72
75
|
* @param cmsPath
|
|
73
76
|
*/
|
|
74
77
|
urlPathToDataPath: (cmsPath: string) => string;
|
|
75
|
-
/**
|
|
76
|
-
* Convert a collection or entity path to a URL path
|
|
77
|
-
* @param path
|
|
78
|
-
*/
|
|
79
|
-
buildCMSUrlPath: (path: string) => string;
|
|
80
|
-
buildUrlEditCollectionPath: (props: {
|
|
81
|
-
path: string;
|
|
82
|
-
}) => string;
|
|
83
78
|
/**
|
|
84
79
|
* Base url path for the home screen
|
|
85
80
|
*/
|
|
@@ -97,10 +92,11 @@ export type NavigationController<EC extends EntityCollection = EntityCollection<
|
|
|
97
92
|
*/
|
|
98
93
|
buildUrlCollectionPath: (path: string) => string;
|
|
99
94
|
/**
|
|
100
|
-
* Turn a path with
|
|
95
|
+
* Turn a path with collection ids into a resolved path.
|
|
96
|
+
* The ids (typically used in urls) will be replaced with relative paths (typically used in database paths)
|
|
101
97
|
* @param pathWithAliases
|
|
102
98
|
*/
|
|
103
|
-
|
|
99
|
+
resolveIdsFrom: (pathWithAliases: string) => string;
|
|
104
100
|
/**
|
|
105
101
|
* Call this method to recalculate the navigation
|
|
106
102
|
*/
|
|
@@ -120,6 +116,27 @@ export type NavigationController<EC extends EntityCollection = EntityCollection<
|
|
|
120
116
|
* @param ids
|
|
121
117
|
*/
|
|
122
118
|
convertIdsToPaths: (ids: string[]) => string[];
|
|
119
|
+
/**
|
|
120
|
+
* A function to navigate to a specified route or URL.
|
|
121
|
+
*
|
|
122
|
+
* @param {string} to - The target route or URL to navigate to.
|
|
123
|
+
* @param {NavigateOptions} [options] - Optional configuration settings for navigation, such as replace behavior or state data.
|
|
124
|
+
*/
|
|
125
|
+
navigate: (to: string, options?: NavigateOptions) => void;
|
|
126
|
+
};
|
|
127
|
+
export interface NavigateOptions {
|
|
128
|
+
replace?: boolean;
|
|
129
|
+
state?: any;
|
|
130
|
+
preventScrollReset?: boolean;
|
|
131
|
+
relative?: "route" | "path";
|
|
132
|
+
flushSync?: boolean;
|
|
133
|
+
viewTransition?: boolean;
|
|
134
|
+
}
|
|
135
|
+
export type NavigationBlocker = {
|
|
136
|
+
updateBlockListener: (path: string, block: boolean, basePath?: string) => () => void;
|
|
137
|
+
isBlocked: (path: string) => boolean;
|
|
138
|
+
proceed?: () => void;
|
|
139
|
+
reset?: () => void;
|
|
123
140
|
};
|
|
124
141
|
/**
|
|
125
142
|
* Custom additional views created by the developer, added to the main
|
|
@@ -30,7 +30,7 @@ export interface Permissions {
|
|
|
30
30
|
* Props passed to a {@link PermissionsBuilder}
|
|
31
31
|
* @group Models
|
|
32
32
|
*/
|
|
33
|
-
export interface PermissionsBuilderProps<EC extends EntityCollection = EntityCollection,
|
|
33
|
+
export interface PermissionsBuilderProps<EC extends EntityCollection = EntityCollection, USER extends User = User, M extends object = InferCollectionType<EC>> {
|
|
34
34
|
/**
|
|
35
35
|
* Entity being edited, might be null in some cases, when the operation
|
|
36
36
|
* refers to the collection.
|
|
@@ -49,7 +49,7 @@ export interface PermissionsBuilderProps<EC extends EntityCollection = EntityCol
|
|
|
49
49
|
/**
|
|
50
50
|
* Logged in user
|
|
51
51
|
*/
|
|
52
|
-
user:
|
|
52
|
+
user: USER | null;
|
|
53
53
|
/**
|
|
54
54
|
* Collection these permissions apply to
|
|
55
55
|
*/
|
|
@@ -57,11 +57,11 @@ export interface PermissionsBuilderProps<EC extends EntityCollection = EntityCol
|
|
|
57
57
|
/**
|
|
58
58
|
* Auth controller
|
|
59
59
|
*/
|
|
60
|
-
authController: AuthController<
|
|
60
|
+
authController: AuthController<USER>;
|
|
61
61
|
}
|
|
62
62
|
/**
|
|
63
63
|
* Builder used to assign permissions to entities,
|
|
64
64
|
* based on the logged user or collection.
|
|
65
65
|
* @group Models
|
|
66
66
|
*/
|
|
67
|
-
export type PermissionsBuilder<EC extends EntityCollection = EntityCollection,
|
|
67
|
+
export type PermissionsBuilder<EC extends EntityCollection = EntityCollection, USER extends User = User, M extends object = InferCollectionType<EC>> = (({ pathSegments, user, collection, authController }: PermissionsBuilderProps<EC, USER, M>) => Permissions | undefined);
|
package/dist/types/plugins.d.ts
CHANGED
|
@@ -138,7 +138,7 @@ export type FireCMSPlugin<PROPS = any, FORM_PROPS = any, EC extends EntityCollec
|
|
|
138
138
|
*
|
|
139
139
|
* @group Models
|
|
140
140
|
*/
|
|
141
|
-
export interface PluginHomePageActionsProps<EP extends object = object, M extends Record<string, any> = any,
|
|
141
|
+
export interface PluginHomePageActionsProps<EP extends object = object, M extends Record<string, any> = any, USER extends User = User, EC extends EntityCollection<M> = EntityCollection<M>> {
|
|
142
142
|
/**
|
|
143
143
|
* Collection path of this entity. This is the full path, like
|
|
144
144
|
* `users/1234/addresses`
|
|
@@ -151,17 +151,18 @@ export interface PluginHomePageActionsProps<EP extends object = object, M extend
|
|
|
151
151
|
/**
|
|
152
152
|
* Context of the app status
|
|
153
153
|
*/
|
|
154
|
-
context: FireCMSContext<
|
|
154
|
+
context: FireCMSContext<USER>;
|
|
155
155
|
extraProps?: EP;
|
|
156
156
|
}
|
|
157
|
-
export interface PluginFormActionProps<
|
|
157
|
+
export interface PluginFormActionProps<USER extends User = User, EC extends EntityCollection = EntityCollection> {
|
|
158
158
|
entityId?: string;
|
|
159
159
|
path: string;
|
|
160
160
|
status: EntityStatus;
|
|
161
161
|
collection: EC;
|
|
162
162
|
formContext?: FormContext<any>;
|
|
163
|
-
context: FireCMSContext<
|
|
163
|
+
context: FireCMSContext<USER>;
|
|
164
164
|
currentEntityId?: string;
|
|
165
|
+
openEntityMode: "side_panel" | "full_screen";
|
|
165
166
|
}
|
|
166
167
|
export type PluginFieldBuilderParams<T extends CMSType = CMSType, M extends Record<string, any> = any, EC extends EntityCollection<M> = EntityCollection<M>> = {
|
|
167
168
|
fieldConfigId: string;
|
|
@@ -172,10 +173,10 @@ export type PluginFieldBuilderParams<T extends CMSType = CMSType, M extends Reco
|
|
|
172
173
|
path?: string;
|
|
173
174
|
collection?: EC;
|
|
174
175
|
};
|
|
175
|
-
export interface PluginGenericProps<
|
|
176
|
-
context: FireCMSContext<
|
|
176
|
+
export interface PluginGenericProps<USER extends User = User> {
|
|
177
|
+
context: FireCMSContext<USER>;
|
|
177
178
|
}
|
|
178
|
-
export interface PluginHomePageAdditionalCardsProps<
|
|
179
|
+
export interface PluginHomePageAdditionalCardsProps<USER extends User = User> {
|
|
179
180
|
group?: string;
|
|
180
|
-
context: FireCMSContext<
|
|
181
|
+
context: FireCMSContext<USER>;
|
|
181
182
|
}
|
|
@@ -103,6 +103,11 @@ export interface BaseProperty<T extends CMSType, CustomProps = any> {
|
|
|
103
103
|
* save the new config. The saved config will then become the source of truth.
|
|
104
104
|
*/
|
|
105
105
|
editable?: boolean;
|
|
106
|
+
/**
|
|
107
|
+
* A number between 0 and 100 that indicates the width of the field in the form view.
|
|
108
|
+
* It defaults to 100, but you can set it to 50 to have two fields in the same row.
|
|
109
|
+
*/
|
|
110
|
+
widthPercentage?: number;
|
|
106
111
|
}
|
|
107
112
|
/**
|
|
108
113
|
* @group Entity properties
|
|
@@ -211,11 +216,11 @@ export type PropertyBuilder<T extends CMSType = any, M extends Record<string, an
|
|
|
211
216
|
/**
|
|
212
217
|
* @group Entity properties
|
|
213
218
|
*/
|
|
214
|
-
export type PropertyOrBuilder<T extends CMSType = CMSType, M extends Record<string, any> =
|
|
219
|
+
export type PropertyOrBuilder<T extends CMSType = CMSType, M extends Record<string, any> = any> = Property<T> | PropertyBuilder<T, M>;
|
|
215
220
|
/**
|
|
216
221
|
* @group Entity properties
|
|
217
222
|
*/
|
|
218
|
-
export type PropertiesOrBuilders<M extends Record<string, any> =
|
|
223
|
+
export type PropertiesOrBuilders<M extends Record<string, any> = any> = {
|
|
219
224
|
[k in keyof M]: PropertyOrBuilder<M[k], M>;
|
|
220
225
|
};
|
|
221
226
|
/**
|
|
@@ -278,7 +283,7 @@ export interface StringProperty extends BaseProperty<string> {
|
|
|
278
283
|
enumValues?: EnumValues;
|
|
279
284
|
/**
|
|
280
285
|
* You can specify a `Storage` configuration. It is used to
|
|
281
|
-
* indicate that this string refers to a path in
|
|
286
|
+
* indicate that this string refers to a path in your storage provider.
|
|
282
287
|
*/
|
|
283
288
|
storage?: StorageConfig;
|
|
284
289
|
/**
|
|
@@ -361,6 +366,11 @@ export interface ArrayProperty<T extends ArrayT[] = any[], ArrayT extends CMSTyp
|
|
|
361
366
|
* Should the field be initially expanded. Defaults to `true`
|
|
362
367
|
*/
|
|
363
368
|
expanded?: boolean;
|
|
369
|
+
/**
|
|
370
|
+
* Display the child properties directly, without being wrapped in an
|
|
371
|
+
* extendable panel.
|
|
372
|
+
*/
|
|
373
|
+
minimalistView?: boolean;
|
|
364
374
|
}
|
|
365
375
|
/**
|
|
366
376
|
* @group Entity properties
|
|
@@ -400,6 +410,11 @@ export interface MapProperty<T extends Record<string, CMSType> = Record<string,
|
|
|
400
410
|
* view
|
|
401
411
|
*/
|
|
402
412
|
spreadChildren?: boolean;
|
|
413
|
+
/**
|
|
414
|
+
* Display the child properties directly, without being wrapped in an
|
|
415
|
+
* extendable panel. Note that this will also hide the title of this property.
|
|
416
|
+
*/
|
|
417
|
+
minimalistView?: boolean;
|
|
403
418
|
/**
|
|
404
419
|
* Should the field be initially expanded. Defaults to `true`
|
|
405
420
|
*/
|
|
@@ -19,8 +19,6 @@ export type PropertyConfig<T extends CMSType = any> = {
|
|
|
19
19
|
* Default config for the property.
|
|
20
20
|
* This property or builder will be used as the base values for the resulting property.
|
|
21
21
|
* You can also use a builder function to generate the base property.
|
|
22
|
-
* You can use a builder function to generate the property based on the values or the path.
|
|
23
|
-
* You can also define a custom Field as a React component to be used for this property.
|
|
24
22
|
*/
|
|
25
23
|
property: PropertyOrBuilder<T>;
|
|
26
24
|
/**
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { EntityCollection } from "./collections";
|
|
2
2
|
import { ResolvedEntityCollection } from "./resolved_entities";
|
|
3
3
|
import { Entity } from "./entities";
|
|
4
|
+
import { EntityFormProps } from "../form";
|
|
4
5
|
/**
|
|
5
6
|
* Props used to open a side dialog
|
|
6
7
|
* @group Hooks and utilities
|
|
@@ -22,7 +23,7 @@ export interface EntitySidePanelProps<M extends Record<string, any> = any> {
|
|
|
22
23
|
* Open the entity with a selected sub-collection view. If the panel for this
|
|
23
24
|
* entity was already open, it is replaced.
|
|
24
25
|
*/
|
|
25
|
-
|
|
26
|
+
selectedTab?: string;
|
|
26
27
|
/**
|
|
27
28
|
* Use this prop to override the width of the form view.
|
|
28
29
|
* e.g. "600px"
|
|
@@ -55,6 +56,10 @@ export interface EntitySidePanelProps<M extends Record<string, any> = any> {
|
|
|
55
56
|
* Should this panel close when saving
|
|
56
57
|
*/
|
|
57
58
|
closeOnSave?: boolean;
|
|
59
|
+
/**
|
|
60
|
+
* Override some form properties
|
|
61
|
+
*/
|
|
62
|
+
formProps?: Partial<EntityFormProps<M>>;
|
|
58
63
|
}
|
|
59
64
|
/**
|
|
60
65
|
* Controller to open the side dialog displaying entity forms
|
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
|
@@ -3,7 +3,7 @@ export declare function isReadOnly(property: Property<any> | ResolvedProperty<an
|
|
|
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,5 +1,6 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
|
|
2
|
+
import { IconColor } from "@firecms/ui";
|
|
3
|
+
export declare function getIcon(iconKey?: string, className?: string, color?: IconColor): React.ReactElement | undefined;
|
|
3
4
|
export type IconViewProps = {
|
|
4
5
|
path: string;
|
|
5
6
|
name: string;
|
|
@@ -9,6 +10,7 @@ export type IconViewProps = {
|
|
|
9
10
|
};
|
|
10
11
|
export declare const IconForView: React.NamedExoticComponent<{
|
|
11
12
|
collectionOrView?: IconViewProps;
|
|
13
|
+
color?: IconColor;
|
|
12
14
|
className?: string;
|
|
13
15
|
size?: "smallest" | "small" | "medium" | "large" | number;
|
|
14
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";
|
|
@@ -4,19 +4,24 @@ export interface NavigationViewEntityInternal<M extends Record<string, any>> {
|
|
|
4
4
|
type: "entity";
|
|
5
5
|
entityId: string;
|
|
6
6
|
path: string;
|
|
7
|
+
fullPath: string;
|
|
7
8
|
parentCollection: EntityCollection<M>;
|
|
8
9
|
}
|
|
9
10
|
export interface NavigationViewCollectionInternal<M extends Record<string, any>> {
|
|
10
11
|
type: "collection";
|
|
12
|
+
id: string;
|
|
11
13
|
path: string;
|
|
14
|
+
fullPath: string;
|
|
12
15
|
collection: EntityCollection<M>;
|
|
13
16
|
}
|
|
14
17
|
export interface NavigationViewEntityCustomInternal<M extends Record<string, any>> {
|
|
15
18
|
type: "custom_view";
|
|
16
19
|
path: string;
|
|
20
|
+
fullPath: string;
|
|
21
|
+
entityId: string;
|
|
17
22
|
view: EntityCustomView<M>;
|
|
18
23
|
}
|
|
19
|
-
export declare function
|
|
24
|
+
export declare function getNavigationEntriesFromPath(props: {
|
|
20
25
|
path: string;
|
|
21
26
|
collections: EntityCollection[] | undefined;
|
|
22
27
|
currentFullPath?: string;
|
|
@@ -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,14 @@ 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, 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
|
+
sideEntityController: SideEntityController;
|
|
29
|
+
onClose?: () => void;
|
|
30
|
+
navigation: NavigationController;
|
|
31
|
+
}): void;
|
package/dist/util/objects.d.ts
CHANGED
|
@@ -6,5 +6,6 @@ export declare function removeInPath(o: object, path: string): object | undefine
|
|
|
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,5 +1,5 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
-
import { EntityCollection, PropertiesOrBuilders, PropertyConfig, PropertyOrBuilder, ResolvedProperty } from "../types";
|
|
2
|
+
import { EntityCollection, PropertiesOrBuilders, PropertyConfig, PropertyOrBuilder, ResolvedProperties, ResolvedProperty } from "../types";
|
|
3
3
|
export declare function isReferenceProperty(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;
|
|
@@ -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,12 +1,12 @@
|
|
|
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, CMSType, CustomizationController, 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 }: {
|
|
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
11
|
}) => ResolvedEntityCollection<M>;
|
|
12
12
|
/**
|
|
@@ -23,7 +23,7 @@ export declare function resolveProperty<T extends CMSType = CMSType, M extends R
|
|
|
23
23
|
entityId?: string;
|
|
24
24
|
index?: number;
|
|
25
25
|
fromBuilder?: boolean;
|
|
26
|
-
|
|
26
|
+
propertyConfigs?: Record<string, PropertyConfig<any>>;
|
|
27
27
|
ignoreMissingFields?: boolean;
|
|
28
28
|
}): ResolvedProperty<T> | null;
|
|
29
29
|
export declare function getArrayResolvedProperties<M>({ propertyKey, propertyValue, property, ...props }: {
|
|
@@ -37,7 +37,7 @@ export declare function getArrayResolvedProperties<M>({ propertyKey, propertyVal
|
|
|
37
37
|
entityId?: string;
|
|
38
38
|
index?: number;
|
|
39
39
|
fromBuilder?: boolean;
|
|
40
|
-
|
|
40
|
+
propertyConfigs?: Record<string, PropertyConfig>;
|
|
41
41
|
}): ResolvedProperty[];
|
|
42
42
|
export declare function resolveArrayProperty<T extends any[], M>({ propertyKey, property, ignoreMissingFields, ...props }: {
|
|
43
43
|
propertyKey?: string;
|
|
@@ -48,7 +48,7 @@ export declare function resolveArrayProperty<T extends any[], M>({ propertyKey,
|
|
|
48
48
|
entityId?: string;
|
|
49
49
|
index?: number;
|
|
50
50
|
fromBuilder?: boolean;
|
|
51
|
-
|
|
51
|
+
propertyConfigs?: Record<string, PropertyConfig>;
|
|
52
52
|
ignoreMissingFields?: boolean;
|
|
53
53
|
}): ResolvedArrayProperty;
|
|
54
54
|
/**
|
|
@@ -65,7 +65,7 @@ export declare function resolveProperties<M extends Record<string, any>>({ prope
|
|
|
65
65
|
entityId?: string;
|
|
66
66
|
index?: number;
|
|
67
67
|
fromBuilder?: boolean;
|
|
68
|
-
|
|
68
|
+
propertyConfigs?: Record<string, PropertyConfig>;
|
|
69
69
|
ignoreMissingFields?: boolean;
|
|
70
70
|
}): ResolvedProperties<M>;
|
|
71
71
|
/**
|
|
@@ -76,3 +76,8 @@ export declare function resolveProperties<M extends Record<string, any>>({ prope
|
|
|
76
76
|
export declare function resolvePropertyEnum(property: StringProperty | NumberProperty, fromBuilder?: boolean): ResolvedStringProperty | ResolvedNumberProperty;
|
|
77
77
|
export declare function resolveEnumValues(input: EnumValues): EnumValueConfig[] | undefined;
|
|
78
78
|
export declare function resolveEntityView(entityView: string | EntityCustomView<any>, contextEntityViews?: EntityCustomView<any>[]): EntityCustomView<any> | undefined;
|
|
79
|
+
export declare function resolvedSelectedEntityView<M extends Record<string, any>>(customViews: (string | EntityCustomView<M>)[] | undefined, customizationController: CustomizationController, selectedTab?: string): {
|
|
80
|
+
resolvedEntityViews: EntityCustomView[];
|
|
81
|
+
selectedEntityView: EntityCustomView | undefined;
|
|
82
|
+
selectedSecondaryForm: EntityCustomView | undefined;
|
|
83
|
+
};
|