@firecms/core 3.1.0-canary.1df3b2c → 3.1.0-canary.501d471
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/EntityCollectionTable/internal/popup_field/useDraggable.d.ts +2 -2
- package/dist/components/EntityCollectionView/CollectionDataErrorBanner.d.ts +4 -0
- package/dist/components/EntityCollectionView/ViewModeToggle.d.ts +5 -10
- package/dist/components/ErrorBoundary.d.ts +4 -2
- package/dist/components/HomePage/DefaultHomePage.d.ts +0 -1
- package/dist/components/LanguageToggle.d.ts +1 -0
- package/dist/components/UnsavedChangesDialog.d.ts +1 -0
- package/dist/components/VirtualTable/VirtualTableHeader.d.ts +2 -1
- package/dist/components/VirtualTable/VirtualTableHeaderRow.d.ts +1 -1
- package/dist/components/VirtualTable/VirtualTableProps.d.ts +6 -1
- package/dist/components/VirtualTable/types.d.ts +1 -0
- package/dist/components/index.d.ts +1 -0
- package/dist/core/DrawerNavigationGroup.d.ts +2 -2
- package/dist/editor/components/SlashCommandMenu.d.ts +6 -0
- package/dist/editor/components/editor-bubble-item.d.ts +8 -0
- package/dist/editor/components/editor-bubble.d.ts +8 -0
- package/dist/editor/components/image-bubble.d.ts +5 -0
- package/dist/editor/components/index.d.ts +16 -0
- package/dist/editor/components/table-bubble.d.ts +5 -0
- package/dist/editor/editor.d.ts +30 -0
- package/dist/editor/extensions/HighlightDecorationExtension.d.ts +24 -0
- package/dist/editor/extensions/Image/index.d.ts +6 -0
- package/dist/editor/extensions/Image.d.ts +6 -0
- package/dist/editor/extensions/TextLoadingDecorationExtension.d.ts +16 -0
- package/dist/editor/extensions/clipboard.d.ts +7 -0
- package/dist/editor/extensions/custom-keymap.d.ts +1 -0
- package/dist/editor/extensions/drag-and-drop.d.ts +9 -0
- package/dist/editor/hooks/useProseMirror.d.ts +13 -0
- package/dist/editor/hooks/useProseMirrorContext.d.ts +9 -0
- package/dist/editor/index.d.ts +2 -0
- package/dist/editor/markdown.d.ts +5 -0
- package/dist/editor/nodeViews/ImageComponent.d.ts +3 -0
- package/dist/editor/nodeViews/ReactNodeView.d.ts +29 -0
- package/dist/editor/nodeViews/TaskItemComponent.d.ts +3 -0
- package/dist/editor/nodeViews/index.d.ts +6 -0
- package/dist/editor/plugins/index.d.ts +2 -0
- package/dist/editor/plugins/inputrules.d.ts +6 -0
- package/dist/editor/plugins/placeholderPlugin.d.ts +3 -0
- package/dist/editor/plugins/slashCommandPlugin.d.ts +12 -0
- package/dist/editor/schema.d.ts +2 -0
- package/dist/editor/selectors/ai-selector.d.ts +0 -0
- package/dist/editor/selectors/color-selector.d.ts +10 -0
- package/dist/editor/selectors/link-selector.d.ts +8 -0
- package/dist/editor/selectors/node-selector.d.ts +15 -0
- package/dist/editor/selectors/text-buttons.d.ts +1 -0
- package/dist/editor/types.d.ts +5 -0
- package/dist/editor/useProseMirror.d.ts +16 -0
- package/dist/editor/utils/prosemirror-utils.d.ts +6 -0
- package/dist/editor/utils/remove_classes.d.ts +1 -0
- package/dist/editor/utils/useDebouncedCallback.d.ts +1 -0
- package/dist/form/components/ErrorFocus.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/hooks/index.d.ts +1 -0
- package/dist/hooks/useBuildNavigationController.d.ts +0 -1
- package/dist/hooks/useCollapsedGroups.d.ts +3 -3
- package/dist/hooks/useTranslation.d.ts +17 -0
- package/dist/i18n/FireCMSi18nProvider.d.ts +33 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.es.js +29682 -18363
- package/dist/index.es.js.map +1 -1
- package/dist/index.umd.js +29681 -18382
- package/dist/index.umd.js.map +1 -1
- package/dist/internal/useRestoreScroll.d.ts +1 -1
- package/dist/locales/de.d.ts +2 -0
- package/dist/locales/en.d.ts +10 -0
- package/dist/locales/es.d.ts +10 -0
- package/dist/locales/fr.d.ts +2 -0
- package/dist/locales/hi.d.ts +2 -0
- package/dist/locales/it.d.ts +2 -0
- package/dist/locales/pt.d.ts +7 -0
- package/dist/types/analytics.d.ts +1 -1
- package/dist/types/collections.d.ts +46 -0
- package/dist/types/customization_controller.d.ts +2 -1
- package/dist/types/firecms.d.ts +2 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/types/navigation.d.ts +2 -2
- package/dist/types/plugins.d.ts +23 -0
- package/dist/types/properties.d.ts +9 -8
- package/dist/types/storage.d.ts +1 -0
- package/dist/types/translations.d.ts +669 -0
- package/dist/util/entities.d.ts +1 -1
- package/dist/util/index.d.ts +1 -0
- package/dist/util/lazy_eager.d.ts +7 -0
- package/dist/util/objects.d.ts +1 -0
- package/dist/util/resolutions.d.ts +2 -2
- package/dist/util/useStorageUploadController.d.ts +10 -1
- package/package.json +49 -13
- package/src/app/Scaffold.tsx +7 -5
- package/src/components/AIIcon.tsx +3 -1
- package/src/components/ArrayContainer.tsx +6 -4
- package/src/components/ClearFilterSortButton.tsx +6 -3
- package/src/components/ConfirmationDialog.tsx +4 -2
- package/src/components/DeleteEntityDialog.tsx +10 -7
- package/src/components/EntityCollectionTable/EntityCollectionRowActions.tsx +9 -3
- package/src/components/EntityCollectionTable/fields/TableReferenceField.tsx +6 -3
- package/src/components/EntityCollectionTable/internal/CollectionTableToolbar.tsx +3 -1
- package/src/components/EntityCollectionTable/internal/EntityTableCellActions.tsx +1 -1
- package/src/components/EntityCollectionTable/internal/popup_field/PopupFormField.tsx +3 -2
- package/src/components/EntityCollectionTable/internal/popup_field/useDraggable.tsx +11 -11
- package/src/components/EntityCollectionView/BoardSortableList.tsx +3 -1
- package/src/components/EntityCollectionView/CollectionDataErrorBanner.tsx +43 -0
- package/src/components/EntityCollectionView/EntityBoardCard.tsx +1 -1
- package/src/components/EntityCollectionView/EntityCard.tsx +4 -0
- package/src/components/EntityCollectionView/EntityCollectionBoardView.tsx +39 -46
- package/src/components/EntityCollectionView/EntityCollectionCardView.tsx +17 -25
- package/src/components/EntityCollectionView/EntityCollectionView.tsx +71 -31
- package/src/components/EntityCollectionView/EntityCollectionViewActions.tsx +4 -3
- package/src/components/EntityCollectionView/EntityCollectionViewStartActions.tsx +4 -2
- package/src/components/EntityCollectionView/FiltersDialog.tsx +8 -5
- package/src/components/EntityCollectionView/ViewModeToggle.tsx +37 -37
- package/src/components/EntityJsonPreview.tsx +2 -1
- package/src/components/EntityView.tsx +3 -2
- package/src/components/ErrorBoundary.tsx +27 -15
- package/src/components/HomePage/DefaultHomePage.tsx +19 -13
- package/src/components/HomePage/HomePageDnD.tsx +3 -1
- package/src/components/HomePage/NavigationGroup.tsx +3 -1
- package/src/components/HomePage/RenameGroupDialog.tsx +15 -13
- package/src/components/LanguageToggle.tsx +66 -0
- package/src/components/NotFoundPage.tsx +5 -3
- package/src/components/ReferenceTable/ReferenceSelectionTable.tsx +9 -7
- package/src/components/ReferenceWidget.tsx +3 -2
- package/src/components/SearchIconsView.tsx +3 -1
- package/src/components/SelectableTable/filters/DateTimeFilterField.tsx +11 -0
- package/src/components/SelectableTable/filters/ReferenceFilterField.tsx +15 -2
- package/src/components/SelectableTable/filters/StringNumberFilterField.tsx +11 -0
- package/src/components/UnsavedChangesDialog.tsx +6 -4
- package/src/components/VirtualTable/VirtualTable.performance.test.tsx +1 -0
- package/src/components/VirtualTable/VirtualTable.tsx +121 -116
- package/src/components/VirtualTable/VirtualTableHeader.tsx +59 -56
- package/src/components/VirtualTable/VirtualTableHeaderRow.tsx +9 -4
- package/src/components/VirtualTable/VirtualTableProps.tsx +7 -1
- package/src/components/VirtualTable/fields/VirtualTableSelect.tsx +3 -3
- package/src/components/VirtualTable/types.tsx +1 -0
- package/src/components/common/default_entity_actions.tsx +4 -0
- package/src/components/common/useDataSourceTableController.tsx +12 -4
- package/src/components/index.tsx +1 -0
- package/src/core/DefaultAppBar.tsx +15 -11
- package/src/core/DefaultDrawer.tsx +8 -2
- package/src/core/DrawerNavigationGroup.tsx +5 -3
- package/src/core/EntityEditView.tsx +54 -8
- package/src/core/EntityEditViewFormActions.tsx +24 -17
- package/src/core/EntitySidePanel.tsx +34 -30
- package/src/core/FireCMS.tsx +33 -6
- package/src/core/field_configs.tsx +18 -11
- package/src/editor/components/SlashCommandMenu.tsx +516 -0
- package/src/editor/components/editor-bubble-item.tsx +32 -0
- package/src/editor/components/editor-bubble.tsx +118 -0
- package/src/editor/components/image-bubble.tsx +156 -0
- package/src/editor/components/index.ts +14 -0
- package/src/editor/components/table-bubble.tsx +165 -0
- package/src/editor/editor.tsx +455 -0
- package/src/editor/extensions/HighlightDecorationExtension.ts +114 -0
- package/src/editor/extensions/Image/index.ts +133 -0
- package/src/editor/extensions/Image.ts +159 -0
- package/src/editor/extensions/TextLoadingDecorationExtension.tsx +107 -0
- package/src/editor/extensions/clipboard.ts +72 -0
- package/src/editor/extensions/custom-keymap.ts +24 -0
- package/src/editor/extensions/drag-and-drop.tsx +480 -0
- package/src/editor/hooks/useProseMirror.ts +124 -0
- package/src/editor/hooks/useProseMirrorContext.ts +15 -0
- package/src/editor/index.ts +2 -0
- package/src/editor/markdown.ts +172 -0
- package/src/editor/nodeViews/ImageComponent.tsx +20 -0
- package/src/editor/nodeViews/ReactNodeView.tsx +89 -0
- package/src/editor/nodeViews/TaskItemComponent.tsx +29 -0
- package/src/editor/nodeViews/index.ts +35 -0
- package/src/editor/plugins/index.ts +58 -0
- package/src/editor/plugins/inputrules.ts +82 -0
- package/src/editor/plugins/placeholderPlugin.ts +55 -0
- package/src/editor/plugins/slashCommandPlugin.ts +61 -0
- package/src/editor/schema.ts +240 -0
- package/src/editor/selectors/ai-selector.tsx +111 -0
- package/src/editor/selectors/color-selector.tsx +200 -0
- package/src/editor/selectors/link-selector.tsx +118 -0
- package/src/editor/selectors/node-selector.tsx +157 -0
- package/src/editor/selectors/text-buttons.tsx +86 -0
- package/src/editor/types.ts +6 -0
- package/src/editor/useProseMirror.ts +126 -0
- package/src/editor/utils/prosemirror-utils.ts +108 -0
- package/src/editor/utils/remove_classes.ts +17 -0
- package/src/editor/utils/useDebouncedCallback.ts +25 -0
- package/src/form/EntityForm.tsx +149 -67
- package/src/form/EntityFormActions.tsx +19 -12
- package/src/form/PropertyFieldBinding.tsx +10 -8
- package/src/form/components/ErrorFocus.tsx +3 -3
- package/src/form/components/LocalChangesMenu.tsx +13 -13
- package/src/form/components/StorageItemPreview.tsx +3 -2
- package/src/form/components/StorageUploadProgress.tsx +18 -3
- package/src/form/field_bindings/ArrayCustomShapedFieldBinding.tsx +18 -5
- package/src/form/field_bindings/ArrayOfReferencesFieldBinding.tsx +22 -9
- package/src/form/field_bindings/BlockFieldBinding.tsx +26 -9
- package/src/form/field_bindings/DateTimeFieldBinding.tsx +1 -1
- package/src/form/field_bindings/KeyValueFieldBinding.tsx +46 -24
- package/src/form/field_bindings/MapFieldBinding.tsx +27 -11
- package/src/form/field_bindings/MarkdownEditorFieldBinding.tsx +74 -37
- package/src/form/field_bindings/MultiSelectFieldBinding.tsx +15 -1
- package/src/form/field_bindings/ReferenceAsStringFieldBinding.tsx +25 -11
- package/src/form/field_bindings/ReferenceFieldBinding.tsx +25 -11
- package/src/form/field_bindings/RepeatFieldBinding.tsx +21 -6
- package/src/form/field_bindings/SelectFieldBinding.tsx +7 -5
- package/src/form/field_bindings/StorageUploadFieldBinding.tsx +110 -92
- package/src/form/field_bindings/SwitchFieldBinding.tsx +31 -14
- package/src/form/field_bindings/TextFieldBinding.tsx +10 -7
- package/src/form/field_bindings/UserSelectFieldBinding.tsx +7 -5
- package/src/hooks/index.tsx +1 -0
- package/src/hooks/useBuildNavigationController.tsx +49 -22
- package/src/hooks/useCollapsedGroups.ts +7 -6
- package/src/hooks/useTranslation.ts +31 -0
- package/src/hooks/useValidateAuthenticator.tsx +1 -1
- package/src/i18n/FireCMSi18nProvider.tsx +160 -0
- package/src/index.ts +5 -0
- package/src/internal/useBuildDataSource.ts +1 -2
- package/src/internal/useBuildSideEntityController.tsx +22 -20
- package/src/locales/de.ts +718 -0
- package/src/locales/en.ts +730 -0
- package/src/locales/es.ts +730 -0
- package/src/locales/fr.ts +718 -0
- package/src/locales/hi.ts +718 -0
- package/src/locales/it.ts +718 -0
- package/src/locales/pt.ts +727 -0
- package/src/preview/PropertyPreview.tsx +4 -2
- package/src/preview/components/ReferencePreview.tsx +2 -1
- package/src/preview/components/UrlComponentPreview.tsx +4 -2
- package/src/preview/components/UserPreview.tsx +3 -1
- package/src/preview/property_previews/MapPropertyPreview.tsx +49 -27
- package/src/routes/FireCMSRoute.tsx +63 -54
- package/src/types/analytics.ts +10 -0
- package/src/types/collections.ts +49 -0
- package/src/types/customization_controller.tsx +2 -1
- package/src/types/firecms.tsx +2 -1
- package/src/types/index.ts +1 -0
- package/src/types/navigation.ts +2 -2
- package/src/types/plugins.tsx +26 -0
- package/src/types/properties.ts +12 -10
- package/src/types/storage.ts +2 -1
- package/src/types/translations.ts +752 -0
- package/src/util/entities.ts +1 -1
- package/src/util/index.ts +1 -0
- package/src/util/join_collections.ts +10 -8
- package/src/util/lazy_eager.tsx +33 -0
- package/src/util/objects.ts +15 -0
- package/src/util/previews.ts +2 -2
- package/src/util/property_utils.tsx +1 -1
- package/src/util/resolutions.ts +5 -3
- package/src/util/useStorageUploadController.tsx +23 -29
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { FireCMSTranslations } from "../types/translations";
|
|
2
|
+
/**
|
|
3
|
+
* English baseline translations for @firecms/core.
|
|
4
|
+
*
|
|
5
|
+
* This is the single source of truth for all default UI strings.
|
|
6
|
+
* Override any key via the `translations` prop on FireCMS entry-point components.
|
|
7
|
+
*
|
|
8
|
+
* @group Core
|
|
9
|
+
*/
|
|
10
|
+
export declare const en: FireCMSTranslations;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { FireCMSTranslations } from "../types/translations";
|
|
2
|
+
/**
|
|
3
|
+
* Spanish baseline translations for @firecms/core.
|
|
4
|
+
*
|
|
5
|
+
* This is the single source of truth for all default UI strings in Spanish.
|
|
6
|
+
* Override any key via the `translations` prop on FireCMS entry-point components.
|
|
7
|
+
*
|
|
8
|
+
* @group Core
|
|
9
|
+
*/
|
|
10
|
+
export declare const es: FireCMSTranslations;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export type CMSAnalyticsEvent = "entity_click" | "entity_click_from_reference" | "reference_selection_clear" | "reference_selection_toggle" | "reference_selected_single" | "reference_selection_new_entity" | "edit_entity_clicked" | "entity_edited" | "new_entity_click" | "new_entity_saved" | "copy_entity_click" | "entity_copied" | "single_delete_dialog_open" | "multiple_delete_dialog_open" | "single_entity_deleted" | "multiple_entities_deleted" | "drawer_navigate_to_home" | "drawer_navigate_to_collection" | "drawer_navigate_to_view" | "home_navigate_to_collection" | "home_favorite_navigate_to_collection" | "home_navigate_to_view" | "home_navigate_to_admin_view" | "home_favorite_navigate_to_view" | "home_move_card" | "home_move_group" | "home_drop_new_group" | "collection_inline_editing" | "unmapped_event";
|
|
1
|
+
export type CMSAnalyticsEvent = "entity_click" | "entity_click_from_reference" | "reference_selection_clear" | "reference_selection_toggle" | "reference_selected_single" | "reference_selection_new_entity" | "edit_entity_clicked" | "entity_edited" | "new_entity_click" | "new_entity_saved" | "copy_entity_click" | "entity_copied" | "single_delete_dialog_open" | "multiple_delete_dialog_open" | "single_entity_deleted" | "multiple_entities_deleted" | "drawer_navigate_to_home" | "drawer_navigate_to_collection" | "drawer_navigate_to_view" | "home_navigate_to_collection" | "home_favorite_navigate_to_collection" | "home_navigate_to_view" | "home_navigate_to_admin_view" | "home_favorite_navigate_to_view" | "home_move_card" | "home_move_group" | "home_drop_new_group" | "collection_inline_editing" | "view_mode_changed" | "kanban_card_moved" | "kanban_column_reorder" | "kanban_property_changed" | "kanban_new_entity_in_column" | "kanban_backfill_order" | "card_view_entity_click" | "unmapped_event";
|
|
@@ -142,6 +142,30 @@ export interface EntityCollection<M extends Record<string, any> = any, USER exte
|
|
|
142
142
|
* the side dialog of an entity.
|
|
143
143
|
*/
|
|
144
144
|
subcollections?: EntityCollection<any, any>[];
|
|
145
|
+
/**
|
|
146
|
+
* You can group subcollections and custom views into dropdown menus
|
|
147
|
+
* in the entity view tabs. Views listed in a group will be removed
|
|
148
|
+
* from the top-level tabs and shown under a single dropdown instead.
|
|
149
|
+
*
|
|
150
|
+
* @example
|
|
151
|
+
* ```tsx
|
|
152
|
+
* const productsCollection = buildCollection({
|
|
153
|
+
* id: "products",
|
|
154
|
+
* path: "products",
|
|
155
|
+
* name: "Products",
|
|
156
|
+
* properties: { ... },
|
|
157
|
+
* subcollections: [localesCollection, reviewsCollection],
|
|
158
|
+
* entityViews: [sampleView],
|
|
159
|
+
* viewGroups: [
|
|
160
|
+
* {
|
|
161
|
+
* name: "Related data",
|
|
162
|
+
* views: ["locales", "reviews", "sample_view"]
|
|
163
|
+
* }
|
|
164
|
+
* ]
|
|
165
|
+
* });
|
|
166
|
+
* ```
|
|
167
|
+
*/
|
|
168
|
+
viewGroups?: ViewGroup[];
|
|
145
169
|
/**
|
|
146
170
|
* This interface defines all the callbacks that can be used when an entity
|
|
147
171
|
* is being created, updated or deleted.
|
|
@@ -326,6 +350,14 @@ export interface EntityCollection<M extends Record<string, any> = any, USER exte
|
|
|
326
350
|
* Defaults to "table".
|
|
327
351
|
*/
|
|
328
352
|
defaultViewMode?: ViewMode;
|
|
353
|
+
/**
|
|
354
|
+
* Which view modes are available for this collection.
|
|
355
|
+
* Possible values: "table", "cards", "kanban".
|
|
356
|
+
* Defaults to all three: ["table", "cards", "kanban"].
|
|
357
|
+
* Note: "kanban" will only be available if the collection has at least
|
|
358
|
+
* one string property with enumValues defined, regardless of this setting.
|
|
359
|
+
*/
|
|
360
|
+
enabledViews?: ViewMode[];
|
|
329
361
|
/**
|
|
330
362
|
* Configuration for Kanban board view mode.
|
|
331
363
|
* When set, the Kanban view mode becomes available.
|
|
@@ -353,6 +385,20 @@ export interface KanbanConfig<M extends Record<string, any> = any> {
|
|
|
353
385
|
*/
|
|
354
386
|
columnProperty: Extract<keyof M, string>;
|
|
355
387
|
}
|
|
388
|
+
/**
|
|
389
|
+
* You can group subcollections and custom views into dropdown menus in the entity view tabs.
|
|
390
|
+
* @group Collections
|
|
391
|
+
*/
|
|
392
|
+
export interface ViewGroup {
|
|
393
|
+
/**
|
|
394
|
+
* Name of the group
|
|
395
|
+
*/
|
|
396
|
+
name: string;
|
|
397
|
+
/**
|
|
398
|
+
* Array of subcollection paths/ids or custom view keys
|
|
399
|
+
*/
|
|
400
|
+
views: string[];
|
|
401
|
+
}
|
|
356
402
|
/**
|
|
357
403
|
* View mode for displaying a collection.
|
|
358
404
|
* @group Collections
|
package/dist/types/firecms.d.ts
CHANGED
package/dist/types/index.d.ts
CHANGED
|
@@ -212,11 +212,11 @@ export interface NavigationEntry {
|
|
|
212
212
|
collection?: EntityCollection;
|
|
213
213
|
view?: CMSView;
|
|
214
214
|
description?: string;
|
|
215
|
-
group: string;
|
|
215
|
+
group: string | null;
|
|
216
216
|
}
|
|
217
217
|
export type NavigationResult = {
|
|
218
218
|
allowDragAndDrop: boolean;
|
|
219
219
|
navigationEntries: NavigationEntry[];
|
|
220
|
-
groups: string[];
|
|
220
|
+
groups: (string | null)[];
|
|
221
221
|
onNavigationEntriesUpdate: (entries: NavigationGroupMapping[]) => void;
|
|
222
222
|
};
|
package/dist/types/plugins.d.ts
CHANGED
|
@@ -23,6 +23,13 @@ export type FireCMSPlugin<PROPS = any, FORM_PROPS = any, EC extends EntityCollec
|
|
|
23
23
|
* until the plugin is fully loaded.
|
|
24
24
|
*/
|
|
25
25
|
loading?: boolean;
|
|
26
|
+
/**
|
|
27
|
+
* Override any FireCMS UI string, or provide translations for additional
|
|
28
|
+
* locales, specific for this plugin.
|
|
29
|
+
* Keys can be existing `FireCMSTranslations` keys, or new keys if using
|
|
30
|
+
* module augmentation.
|
|
31
|
+
*/
|
|
32
|
+
i18n?: Record<string, Record<string, string>>;
|
|
26
33
|
/**
|
|
27
34
|
* You can use this prop to add higher order components to the CMS.
|
|
28
35
|
* The components will be added to the root of the CMS, so any component
|
|
@@ -91,6 +98,18 @@ export type FireCMSPlugin<PROPS = any, FORM_PROPS = any, EC extends EntityCollec
|
|
|
91
98
|
onNavigationEntriesUpdate?: (entries: NavigationGroupMapping[]) => void;
|
|
92
99
|
};
|
|
93
100
|
collectionView?: {
|
|
101
|
+
/**
|
|
102
|
+
* Custom component to render when a collection loading error occurs.
|
|
103
|
+
* If provided, this replaces the default error view in all collection view modes
|
|
104
|
+
* (table, card, kanban).
|
|
105
|
+
* Return `null` from the component to fall back to the default error view.
|
|
106
|
+
*/
|
|
107
|
+
CollectionError?: React.ComponentType<{
|
|
108
|
+
path: string;
|
|
109
|
+
collection: EC;
|
|
110
|
+
parentCollectionIds?: string[];
|
|
111
|
+
error: Error;
|
|
112
|
+
}>;
|
|
94
113
|
/**
|
|
95
114
|
* Use this component to add custom actions to the entity collections
|
|
96
115
|
* toolbar.
|
|
@@ -194,6 +213,10 @@ export type FireCMSPlugin<PROPS = any, FORM_PROPS = any, EC extends EntityCollec
|
|
|
194
213
|
* Add custom actions to the top of the form
|
|
195
214
|
*/
|
|
196
215
|
ActionsTop?: React.ComponentType<PluginFormActionProps<any, EC>>;
|
|
216
|
+
/**
|
|
217
|
+
* Add custom content above the entity title in the form view
|
|
218
|
+
*/
|
|
219
|
+
BeforeTitle?: React.ComponentType<PluginFormActionProps<any, EC>>;
|
|
197
220
|
fieldBuilder?: <T extends CMSType = CMSType>(props: PluginFieldBuilderParams<T, any, EC>) => React.ComponentType<FieldProps<T>> | null;
|
|
198
221
|
fieldBuilderEnabled?: <T extends CMSType = CMSType>(props: PluginFieldBuilderParams<T>) => boolean;
|
|
199
222
|
};
|
|
@@ -125,6 +125,15 @@ export interface BaseProperty<T extends CMSType, CustomProps = any> {
|
|
|
125
125
|
* @see https://jsonlogic.com/ for JSON Logic syntax
|
|
126
126
|
*/
|
|
127
127
|
conditions?: PropertyConditions;
|
|
128
|
+
/**
|
|
129
|
+
* Set this property to true to provide the UX to explicitly set the value to `null`.
|
|
130
|
+
* Defaults to `false`.
|
|
131
|
+
*/
|
|
132
|
+
nullable?: boolean;
|
|
133
|
+
/**
|
|
134
|
+
* @deprecated Use `nullable` instead.
|
|
135
|
+
*/
|
|
136
|
+
clearable?: boolean;
|
|
128
137
|
}
|
|
129
138
|
/**
|
|
130
139
|
* @group Entity properties
|
|
@@ -473,10 +482,6 @@ export interface NumberProperty extends BaseProperty<number> {
|
|
|
473
482
|
* Rules for validating this property
|
|
474
483
|
*/
|
|
475
484
|
validation?: NumberPropertyValidationSchema;
|
|
476
|
-
/**
|
|
477
|
-
* Add an icon to clear the value and set it to `null`. Defaults to `false`
|
|
478
|
-
*/
|
|
479
|
-
clearable?: boolean;
|
|
480
485
|
}
|
|
481
486
|
/**
|
|
482
487
|
* @group Entity properties
|
|
@@ -569,10 +574,6 @@ export interface StringProperty extends BaseProperty<string> {
|
|
|
569
574
|
* Rules for validating this property
|
|
570
575
|
*/
|
|
571
576
|
validation?: StringPropertyValidationSchema;
|
|
572
|
-
/**
|
|
573
|
-
* Add an icon to clear the value and set it to `null`. Defaults to `false`
|
|
574
|
-
*/
|
|
575
|
-
clearable?: boolean;
|
|
576
577
|
/**
|
|
577
578
|
* You can use this property (a string) to behave as a reference to another
|
|
578
579
|
* collection. The stored value is the ID of the entity in the
|