@firecms/core 3.0.1 → 3.1.0-canary.02232f4
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 +1 -1
- package/dist/components/AIIcon.d.ts +16 -0
- package/dist/components/EntityCollectionTable/EntityCollectionRowActions.d.ts +7 -1
- package/dist/components/EntityCollectionTable/EntityCollectionTable.d.ts +1 -1
- package/dist/components/EntityCollectionTable/EntityCollectionTableProps.d.ts +14 -0
- package/dist/components/EntityCollectionTable/PropertyTableCell.d.ts +6 -0
- package/dist/components/EntityCollectionTable/internal/CollectionTableToolbar.d.ts +5 -4
- package/dist/components/EntityCollectionTable/internal/EntityTableCell.d.ts +6 -0
- package/dist/components/EntityCollectionTable/internal/popup_field/useDraggable.d.ts +2 -2
- package/dist/components/EntityCollectionView/Board.d.ts +2 -0
- package/dist/components/EntityCollectionView/BoardColumn.d.ts +42 -0
- package/dist/components/EntityCollectionView/BoardColumnTitle.d.ts +9 -0
- package/dist/components/EntityCollectionView/BoardSortableList.d.ts +14 -0
- package/dist/components/EntityCollectionView/CollectionDataErrorBanner.d.ts +4 -0
- package/dist/components/EntityCollectionView/EntityBoardCard.d.ts +26 -0
- package/dist/components/EntityCollectionView/EntityCard.d.ts +19 -0
- package/dist/components/EntityCollectionView/EntityCollectionBoardView.d.ts +20 -0
- package/dist/components/EntityCollectionView/EntityCollectionCardView.d.ts +31 -0
- package/dist/components/EntityCollectionView/EntityCollectionViewActions.d.ts +2 -2
- package/dist/components/EntityCollectionView/EntityCollectionViewStartActions.d.ts +7 -3
- package/dist/components/EntityCollectionView/FiltersDialog.d.ts +14 -0
- package/dist/components/EntityCollectionView/ViewModeToggle.d.ts +44 -0
- package/dist/components/EntityCollectionView/board_types.d.ts +105 -0
- package/dist/components/EntityCollectionView/useBoardDataController.d.ts +60 -0
- 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/SelectableTable/SelectableTable.d.ts +5 -1
- package/dist/components/SelectableTable/filters/DateTimeFilterField.d.ts +2 -1
- package/dist/components/UnsavedChangesDialog.d.ts +1 -0
- package/dist/components/VirtualTable/VirtualTableCell.d.ts +6 -0
- package/dist/components/VirtualTable/VirtualTableHeader.d.ts +4 -1
- package/dist/components/VirtualTable/VirtualTableHeaderRow.d.ts +1 -1
- package/dist/components/VirtualTable/VirtualTableProps.d.ts +17 -1
- package/dist/components/VirtualTable/fields/VirtualTableDateField.d.ts +1 -0
- package/dist/components/VirtualTable/types.d.ts +3 -0
- package/dist/components/index.d.ts +4 -0
- package/dist/contexts/index.d.ts +10 -0
- package/dist/core/DrawerNavigationGroup.d.ts +45 -0
- package/dist/core/index.d.ts +1 -0
- 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/form/validation.d.ts +3 -2
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/useBreadcrumbsController.d.ts +16 -0
- package/dist/hooks/useBuildNavigationController.d.ts +0 -1
- package/dist/hooks/useCollapsedGroups.d.ts +6 -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 +30146 -15178
- package/dist/index.es.js.map +1 -1
- package/dist/index.umd.js +30032 -15085
- 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/preview/PropertyPreviewProps.d.ts +5 -0
- package/dist/preview/components/DatePreview.d.ts +13 -3
- package/dist/preview/components/ImagePreview.d.ts +5 -1
- package/dist/preview/components/StorageThumbnail.d.ts +2 -1
- package/dist/preview/components/UrlComponentPreview.d.ts +2 -1
- package/dist/preview/property_previews/ArrayOfStorageComponentsPreview.d.ts +1 -1
- package/dist/preview/property_previews/ArrayOfStringsPreview.d.ts +1 -1
- package/dist/preview/property_previews/SkeletonPropertyComponent.d.ts +1 -1
- package/dist/types/analytics.d.ts +1 -1
- package/dist/types/collections.d.ts +88 -2
- package/dist/types/customization_controller.d.ts +2 -1
- package/dist/types/datasource.d.ts +0 -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 +69 -1
- package/dist/types/properties.d.ts +268 -12
- package/dist/types/storage.d.ts +1 -0
- package/dist/types/translations.d.ts +669 -0
- package/dist/util/__tests__/conditions.test.d.ts +1 -0
- package/dist/util/__tests__/objects.test.d.ts +1 -0
- package/dist/util/conditions.d.ts +26 -0
- package/dist/util/entities.d.ts +2 -3
- package/dist/util/index.d.ts +3 -1
- package/dist/util/lazy_eager.d.ts +7 -0
- package/dist/util/objects.d.ts +1 -0
- package/dist/util/property_utils.d.ts +2 -1
- package/dist/util/resolutions.d.ts +3 -3
- package/dist/util/useStorageUploadController.d.ts +10 -1
- package/package.json +51 -12
- package/src/app/Scaffold.tsx +20 -19
- package/src/components/AIIcon.tsx +41 -0
- package/src/components/ArrayContainer.tsx +7 -8
- package/src/components/ClearFilterSortButton.tsx +25 -19
- package/src/components/ConfirmationDialog.tsx +4 -4
- package/src/components/DeleteEntityDialog.tsx +12 -11
- package/src/components/EntityCollectionTable/EntityCollectionRowActions.tsx +82 -43
- package/src/components/EntityCollectionTable/EntityCollectionTable.tsx +130 -79
- package/src/components/EntityCollectionTable/EntityCollectionTableProps.tsx +121 -104
- package/src/components/EntityCollectionTable/PropertyTableCell.tsx +132 -103
- package/src/components/EntityCollectionTable/fields/TableReferenceField.tsx +6 -3
- package/src/components/EntityCollectionTable/internal/CollectionTableToolbar.tsx +24 -44
- package/src/components/EntityCollectionTable/internal/EntityTableCell.tsx +90 -49
- 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/Board.tsx +324 -0
- package/src/components/EntityCollectionView/BoardColumn.tsx +158 -0
- package/src/components/EntityCollectionView/BoardColumnTitle.tsx +45 -0
- package/src/components/EntityCollectionView/BoardSortableList.tsx +174 -0
- package/src/components/EntityCollectionView/CollectionDataErrorBanner.tsx +43 -0
- package/src/components/EntityCollectionView/EntityBoardCard.tsx +212 -0
- package/src/components/EntityCollectionView/EntityCard.tsx +235 -0
- package/src/components/EntityCollectionView/EntityCollectionBoardView.tsx +706 -0
- package/src/components/EntityCollectionView/EntityCollectionCardView.tsx +236 -0
- package/src/components/EntityCollectionView/EntityCollectionView.tsx +531 -209
- package/src/components/EntityCollectionView/EntityCollectionViewActions.tsx +35 -22
- package/src/components/EntityCollectionView/EntityCollectionViewStartActions.tsx +86 -15
- package/src/components/EntityCollectionView/FiltersDialog.tsx +252 -0
- package/src/components/EntityCollectionView/ViewModeToggle.tsx +202 -0
- package/src/components/EntityCollectionView/board_types.ts +113 -0
- package/src/components/EntityCollectionView/useBoardDataController.tsx +490 -0
- package/src/components/EntityJsonPreview.tsx +2 -1
- package/src/components/EntityView.tsx +3 -2
- package/src/components/ErrorBoundary.tsx +27 -15
- package/src/components/ErrorTooltip.tsx +2 -1
- package/src/components/HomePage/DefaultHomePage.tsx +65 -22
- package/src/components/HomePage/HomePageDnD.tsx +59 -42
- package/src/components/HomePage/NavigationCard.tsx +20 -18
- package/src/components/HomePage/NavigationGroup.tsx +20 -17
- package/src/components/HomePage/RenameGroupDialog.tsx +15 -15
- package/src/components/HomePage/SmallNavigationCard.tsx +10 -9
- package/src/components/LanguageToggle.tsx +66 -0
- package/src/components/NotFoundPage.tsx +5 -3
- package/src/components/ReferenceTable/ReferenceSelectionTable.tsx +12 -17
- package/src/components/ReferenceWidget.tsx +5 -6
- package/src/components/SearchIconsView.tsx +3 -1
- package/src/components/SelectableTable/SelectableTable.tsx +75 -67
- package/src/components/SelectableTable/filters/BooleanFilterField.tsx +7 -6
- package/src/components/SelectableTable/filters/DateTimeFilterField.tsx +50 -40
- package/src/components/SelectableTable/filters/ReferenceFilterField.tsx +53 -40
- package/src/components/SelectableTable/filters/StringNumberFilterField.tsx +60 -58
- package/src/components/UnsavedChangesDialog.tsx +6 -6
- package/src/components/UserDisplay.tsx +4 -4
- package/src/components/VirtualTable/VirtualTable.performance.test.tsx +1 -0
- package/src/components/VirtualTable/VirtualTable.tsx +275 -119
- package/src/components/VirtualTable/VirtualTableCell.tsx +18 -2
- package/src/components/VirtualTable/VirtualTableHeader.tsx +76 -64
- package/src/components/VirtualTable/VirtualTableHeaderRow.tsx +163 -42
- package/src/components/VirtualTable/VirtualTableProps.tsx +21 -2
- package/src/components/VirtualTable/VirtualTableRow.tsx +1 -1
- package/src/components/VirtualTable/fields/VirtualTableDateField.tsx +3 -0
- package/src/components/VirtualTable/fields/VirtualTableSelect.tsx +19 -6
- package/src/components/VirtualTable/types.tsx +3 -0
- package/src/components/common/default_entity_actions.tsx +4 -0
- package/src/components/common/useColumnsIds.tsx +95 -3
- package/src/components/common/useDataSourceTableController.tsx +12 -4
- package/src/components/index.tsx +5 -0
- package/src/contexts/BreacrumbsContext.tsx +15 -8
- package/src/contexts/index.ts +10 -0
- package/src/core/DefaultAppBar.tsx +49 -32
- package/src/core/DefaultDrawer.tsx +49 -57
- package/src/core/DrawerNavigationGroup.tsx +120 -0
- package/src/core/DrawerNavigationItem.tsx +4 -3
- package/src/core/EntityEditView.tsx +94 -50
- package/src/core/EntityEditViewFormActions.tsx +24 -17
- package/src/core/EntitySidePanel.tsx +34 -30
- package/src/core/FireCMS.tsx +33 -6
- package/src/core/SideDialogs.tsx +4 -2
- package/src/core/field_configs.tsx +18 -11
- package/src/core/index.tsx +1 -0
- 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 +68 -51
- package/src/form/components/ErrorFocus.tsx +3 -3
- package/src/form/components/LocalChangesMenu.tsx +13 -13
- package/src/form/components/StorageItemPreview.tsx +5 -3
- 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 -10
- package/src/form/field_bindings/BlockFieldBinding.tsx +26 -9
- package/src/form/field_bindings/DateTimeFieldBinding.tsx +18 -17
- package/src/form/field_bindings/KeyValueFieldBinding.tsx +46 -25
- package/src/form/field_bindings/MapFieldBinding.tsx +88 -70
- package/src/form/field_bindings/MarkdownEditorFieldBinding.tsx +93 -52
- 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 +77 -38
- package/src/form/field_bindings/UserSelectFieldBinding.tsx +7 -5
- package/src/form/validation.ts +245 -160
- package/src/hooks/index.tsx +1 -0
- package/src/hooks/useBreadcrumbsController.tsx +18 -0
- package/src/hooks/useBuildNavigationController.tsx +91 -41
- package/src/hooks/useCollapsedGroups.ts +18 -9
- 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 +68 -34
- package/src/internal/useBuildSideDialogsController.tsx +11 -8
- package/src/internal/useBuildSideEntityController.tsx +24 -24
- package/src/internal/useRestoreScroll.tsx +26 -14
- 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 +43 -33
- package/src/preview/PropertyPreviewProps.tsx +6 -0
- package/src/preview/components/DatePreview.tsx +72 -4
- package/src/preview/components/EmptyValue.tsx +1 -1
- package/src/preview/components/ImagePreview.tsx +37 -21
- package/src/preview/components/ReferencePreview.tsx +2 -1
- package/src/preview/components/StorageThumbnail.tsx +16 -12
- package/src/preview/components/UrlComponentPreview.tsx +32 -27
- package/src/preview/components/UserPreview.tsx +3 -1
- package/src/preview/property_previews/ArrayOfStorageComponentsPreview.tsx +9 -7
- package/src/preview/property_previews/ArrayOfStringsPreview.tsx +11 -9
- package/src/preview/property_previews/ArrayPropertyPreview.tsx +26 -24
- package/src/preview/property_previews/MapPropertyPreview.tsx +49 -27
- package/src/preview/property_previews/SkeletonPropertyComponent.tsx +61 -56
- package/src/routes/CustomCMSRoute.tsx +1 -0
- package/src/routes/FireCMSRoute.tsx +87 -65
- package/src/types/analytics.ts +10 -0
- package/src/types/collections.ts +97 -3
- package/src/types/customization_controller.tsx +2 -1
- package/src/types/datasource.ts +54 -56
- 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 +77 -1
- package/src/types/properties.ts +359 -37
- package/src/types/storage.ts +2 -1
- package/src/types/translations.ts +752 -0
- package/src/util/__tests__/conditions.test.ts +506 -0
- package/src/util/__tests__/objects.test.ts +196 -0
- package/src/util/callbacks.ts +6 -3
- package/src/util/collections.ts +51 -6
- package/src/util/conditions.ts +339 -0
- package/src/util/entities.ts +29 -30
- package/src/util/entity_cache.ts +2 -1
- package/src/util/index.ts +3 -1
- package/src/util/join_collections.ts +10 -8
- package/src/util/lazy_eager.tsx +33 -0
- package/src/util/objects.ts +46 -13
- package/src/util/{references.ts → previews.ts} +16 -2
- package/src/util/property_utils.tsx +37 -11
- package/src/util/resolutions.ts +62 -58
- package/src/util/useStorageUploadController.tsx +23 -29
- /package/dist/util/{references.d.ts → previews.d.ts} +0 -0
|
@@ -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;
|
|
@@ -42,4 +42,9 @@ export interface PropertyPreviewProps<T extends CMSType = any, CustomProps = any
|
|
|
42
42
|
* This applies only to videos.
|
|
43
43
|
*/
|
|
44
44
|
interactive?: boolean;
|
|
45
|
+
/**
|
|
46
|
+
* If true, image previews will fill their container completely.
|
|
47
|
+
* Only applies to image type properties.
|
|
48
|
+
*/
|
|
49
|
+
fill?: boolean;
|
|
45
50
|
}
|
|
@@ -1,7 +1,17 @@
|
|
|
1
1
|
import React from "react";
|
|
2
|
+
export interface DatePreviewProps {
|
|
3
|
+
date: Date;
|
|
4
|
+
/**
|
|
5
|
+
* Display mode: "date" for date-only, "date_time" for date and time
|
|
6
|
+
*/
|
|
7
|
+
mode?: "date" | "date_time";
|
|
8
|
+
/**
|
|
9
|
+
* IANA timezone identifier (e.g., "America/New_York")
|
|
10
|
+
* When specified, the date will be displayed in this timezone
|
|
11
|
+
*/
|
|
12
|
+
timezone?: string;
|
|
13
|
+
}
|
|
2
14
|
/**
|
|
3
15
|
* @group Preview components
|
|
4
16
|
*/
|
|
5
|
-
export declare function DatePreview({ date }:
|
|
6
|
-
date: Date;
|
|
7
|
-
}): React.ReactElement;
|
|
17
|
+
export declare function DatePreview({ date, mode, timezone }: DatePreviewProps): React.ReactElement;
|
|
@@ -5,8 +5,12 @@ import { PreviewSize } from "../PropertyPreviewProps";
|
|
|
5
5
|
export interface ImagePreviewProps {
|
|
6
6
|
size: PreviewSize;
|
|
7
7
|
url: string;
|
|
8
|
+
/**
|
|
9
|
+
* If true, image fills its container completely with object-fit cover
|
|
10
|
+
*/
|
|
11
|
+
fill?: boolean;
|
|
8
12
|
}
|
|
9
13
|
/**
|
|
10
14
|
* @group Preview components
|
|
11
15
|
*/
|
|
12
|
-
export declare function ImagePreview({ size, url }: ImagePreviewProps): import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
export declare function ImagePreview({ size, url, fill }: ImagePreviewProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -5,10 +5,11 @@ type StorageThumbnailProps = {
|
|
|
5
5
|
storeUrl: boolean;
|
|
6
6
|
size: PreviewSize;
|
|
7
7
|
interactive?: boolean;
|
|
8
|
+
fill?: boolean;
|
|
8
9
|
};
|
|
9
10
|
/**
|
|
10
11
|
* @group Preview components
|
|
11
12
|
*/
|
|
12
13
|
export declare const StorageThumbnail: React.FunctionComponent<StorageThumbnailProps>;
|
|
13
|
-
export declare function StorageThumbnailInternal({ storeUrl, interactive, storagePathOrDownloadUrl, size }: StorageThumbnailProps): import("react/jsx-runtime").JSX.Element | null;
|
|
14
|
+
export declare function StorageThumbnailInternal({ storeUrl, interactive, storagePathOrDownloadUrl, size, fill }: StorageThumbnailProps): import("react/jsx-runtime").JSX.Element | null;
|
|
14
15
|
export {};
|
|
@@ -4,10 +4,11 @@ import { PreviewSize } from "../PropertyPreviewProps";
|
|
|
4
4
|
/**
|
|
5
5
|
* @group Preview components
|
|
6
6
|
*/
|
|
7
|
-
export declare function UrlComponentPreview({ url, previewType, size, hint, interactive }: {
|
|
7
|
+
export declare function UrlComponentPreview({ url, previewType, size, hint, interactive, fill }: {
|
|
8
8
|
url: string;
|
|
9
9
|
previewType?: PreviewType;
|
|
10
10
|
size: PreviewSize;
|
|
11
11
|
hint?: string;
|
|
12
12
|
interactive?: boolean;
|
|
13
|
+
fill?: boolean;
|
|
13
14
|
}): React.ReactElement;
|
|
@@ -2,4 +2,4 @@ import { PropertyPreviewProps } from "../PropertyPreviewProps";
|
|
|
2
2
|
/**
|
|
3
3
|
* @group Preview components
|
|
4
4
|
*/
|
|
5
|
-
export declare function ArrayOfStorageComponentsPreview({ propertyKey, value, property: inputProperty, size }: PropertyPreviewProps<any[]>): import("react/jsx-runtime").JSX.Element;
|
|
5
|
+
export declare function ArrayOfStorageComponentsPreview({ propertyKey, value, property: inputProperty, size }: PropertyPreviewProps<any[]>): import("react/jsx-runtime").JSX.Element | null;
|
|
@@ -2,4 +2,4 @@ import { PropertyPreviewProps } from "../../preview";
|
|
|
2
2
|
/**
|
|
3
3
|
* @group Preview components
|
|
4
4
|
*/
|
|
5
|
-
export declare function ArrayOfStringsPreview({ propertyKey, value, property: inputProperty, size }: PropertyPreviewProps<string[]>): import("react/jsx-runtime").JSX.Element;
|
|
5
|
+
export declare function ArrayOfStringsPreview({ propertyKey, value, property: inputProperty, size }: PropertyPreviewProps<string[]>): import("react/jsx-runtime").JSX.Element | null;
|
|
@@ -8,7 +8,7 @@ export interface SkeletonPropertyComponentProps {
|
|
|
8
8
|
* @group Preview components
|
|
9
9
|
*/
|
|
10
10
|
export declare function SkeletonPropertyComponent({ property, size }: SkeletonPropertyComponentProps): any;
|
|
11
|
-
export declare function renderSkeletonImageThumbnail(size: PreviewSize): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export declare function renderSkeletonImageThumbnail(size: PreviewSize, fill?: boolean): import("react/jsx-runtime").JSX.Element;
|
|
12
12
|
export declare function renderSkeletonText(index?: number, width?: number): import("react/jsx-runtime").JSX.Element;
|
|
13
13
|
export declare function renderSkeletonCaptionText(index?: number): import("react/jsx-runtime").JSX.Element;
|
|
14
14
|
export declare function renderSkeletonIcon(): import("react/jsx-runtime").JSX.Element;
|
|
@@ -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.
|
|
@@ -318,7 +342,68 @@ export interface EntityCollection<M extends Record<string, any> = any, USER exte
|
|
|
318
342
|
* Defaults to `manual_apply`.
|
|
319
343
|
*/
|
|
320
344
|
localChangesBackup?: "manual_apply" | "auto_apply" | false;
|
|
345
|
+
/**
|
|
346
|
+
* Default view mode for displaying this collection.
|
|
347
|
+
* - "table": Display entities in a spreadsheet-like table (default)
|
|
348
|
+
* - "cards": Display entities as a grid of cards with thumbnails
|
|
349
|
+
* - "kanban": Display entities in a Kanban board grouped by a property
|
|
350
|
+
* Defaults to "table".
|
|
351
|
+
*/
|
|
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[];
|
|
361
|
+
/**
|
|
362
|
+
* Configuration for Kanban board view mode.
|
|
363
|
+
* When set, the Kanban view mode becomes available.
|
|
364
|
+
*/
|
|
365
|
+
kanban?: KanbanConfig<M>;
|
|
366
|
+
/**
|
|
367
|
+
* Property key to use for ordering items.
|
|
368
|
+
* Must reference a number property. When items are reordered,
|
|
369
|
+
* this property will be updated to reflect the new order using
|
|
370
|
+
* fractional indexing. Used by Kanban view for ordering within columns
|
|
371
|
+
* and can be used for general ordering purposes.
|
|
372
|
+
*/
|
|
373
|
+
orderProperty?: Extract<keyof M, string>;
|
|
321
374
|
}
|
|
375
|
+
/**
|
|
376
|
+
* Configuration for Kanban board view mode.
|
|
377
|
+
* @group Collections
|
|
378
|
+
*/
|
|
379
|
+
export interface KanbanConfig<M extends Record<string, any> = any> {
|
|
380
|
+
/**
|
|
381
|
+
* Property key to use for Kanban board columns.
|
|
382
|
+
* Must reference a string property with enumValues defined.
|
|
383
|
+
* Entities will be grouped into columns based on this property's value.
|
|
384
|
+
* The column order is determined by the order of enumValues in the property.
|
|
385
|
+
*/
|
|
386
|
+
columnProperty: Extract<keyof M, string>;
|
|
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
|
+
}
|
|
402
|
+
/**
|
|
403
|
+
* View mode for displaying a collection.
|
|
404
|
+
* @group Collections
|
|
405
|
+
*/
|
|
406
|
+
export type ViewMode = "table" | "cards" | "kanban";
|
|
322
407
|
/**
|
|
323
408
|
* Parameter passed to the `Actions` prop in the collection configuration.
|
|
324
409
|
* The component will receive this prop when it is rendered in the collection
|
|
@@ -359,9 +444,10 @@ export interface CollectionActionsProps<M extends Record<string, any> = any, USE
|
|
|
359
444
|
*/
|
|
360
445
|
context: FireCMSContext<USER>;
|
|
361
446
|
/**
|
|
362
|
-
* Count of the entities in this collection
|
|
447
|
+
* Count of the entities in this collection.
|
|
448
|
+
* undefined means the count is still loading.
|
|
363
449
|
*/
|
|
364
|
-
collectionEntitiesCount
|
|
450
|
+
collectionEntitiesCount?: number;
|
|
365
451
|
}
|
|
366
452
|
/**
|
|
367
453
|
* Use this controller to retrieve the selected entities or modify them in
|
|
@@ -267,7 +267,6 @@ export interface DataSourceDelegate {
|
|
|
267
267
|
currentTime?: () => any;
|
|
268
268
|
delegateToCMSModel: (data: any) => any;
|
|
269
269
|
cmsToDelegateModel: (data: any) => any;
|
|
270
|
-
setDateToMidnight: (input?: any) => any;
|
|
271
270
|
initTextSearch?: (props: {
|
|
272
271
|
context: FireCMSContext;
|
|
273
272
|
path: string;
|
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
|
@@ -6,7 +6,7 @@ import { FieldProps, FormContext } from "./fields";
|
|
|
6
6
|
import { CMSType, Property } from "./properties";
|
|
7
7
|
import { EntityStatus } from "./entities";
|
|
8
8
|
import { ResolvedProperty } from "./resolved_entities";
|
|
9
|
-
import { NavigationGroupMapping } from "./navigation";
|
|
9
|
+
import { NavigationGroupMapping, CMSView } from "./navigation";
|
|
10
10
|
import { InternalUserManagement } from "./internal_user_management";
|
|
11
11
|
/**
|
|
12
12
|
* Interface used to define plugins for FireCMS.
|
|
@@ -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
|
|
@@ -39,6 +46,11 @@ export type FireCMSPlugin<PROPS = any, FORM_PROPS = any, EC extends EntityCollec
|
|
|
39
46
|
props?: PROPS;
|
|
40
47
|
};
|
|
41
48
|
userManagement?: InternalUserManagement;
|
|
49
|
+
/**
|
|
50
|
+
* Views to be automatically added to the navigation.
|
|
51
|
+
* These views will be merged with the views provided to useBuildNavigationController.
|
|
52
|
+
*/
|
|
53
|
+
views?: CMSView[];
|
|
42
54
|
homePage?: {
|
|
43
55
|
/**
|
|
44
56
|
* Additional actions to be rendered in the home page, close to the search bar.
|
|
@@ -86,6 +98,18 @@ export type FireCMSPlugin<PROPS = any, FORM_PROPS = any, EC extends EntityCollec
|
|
|
86
98
|
onNavigationEntriesUpdate?: (entries: NavigationGroupMapping[]) => void;
|
|
87
99
|
};
|
|
88
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
|
+
}>;
|
|
89
113
|
/**
|
|
90
114
|
* Use this component to add custom actions to the entity collections
|
|
91
115
|
* toolbar.
|
|
@@ -135,6 +159,46 @@ export type FireCMSPlugin<PROPS = any, FORM_PROPS = any, EC extends EntityCollec
|
|
|
135
159
|
collection: EC;
|
|
136
160
|
tableController: EntityTableController;
|
|
137
161
|
}>;
|
|
162
|
+
/**
|
|
163
|
+
* Callback called when columns are reordered via drag and drop.
|
|
164
|
+
* Used by plugins to persist the new column order.
|
|
165
|
+
*/
|
|
166
|
+
onColumnsReorder?: (props: {
|
|
167
|
+
fullPath: string;
|
|
168
|
+
parentCollectionIds: string[];
|
|
169
|
+
collection: EC;
|
|
170
|
+
newPropertiesOrder: string[];
|
|
171
|
+
}) => void;
|
|
172
|
+
/**
|
|
173
|
+
* Callback called when Kanban board columns are reordered via drag and drop.
|
|
174
|
+
* Used by plugins to persist the new Kanban column order.
|
|
175
|
+
*/
|
|
176
|
+
onKanbanColumnsReorder?: (props: {
|
|
177
|
+
fullPath: string;
|
|
178
|
+
parentCollectionIds: string[];
|
|
179
|
+
collection: EC;
|
|
180
|
+
kanbanColumnProperty: string;
|
|
181
|
+
newColumnsOrder: string[];
|
|
182
|
+
}) => void;
|
|
183
|
+
/**
|
|
184
|
+
* Component to render when Kanban view is missing configuration.
|
|
185
|
+
* Used to provide a CTA to open the collection editor to configure Kanban.
|
|
186
|
+
*/
|
|
187
|
+
KanbanSetupComponent?: React.ComponentType<{
|
|
188
|
+
collection: EC;
|
|
189
|
+
fullPath: string;
|
|
190
|
+
parentCollectionIds: string[];
|
|
191
|
+
}>;
|
|
192
|
+
/**
|
|
193
|
+
* Component to render an "Add Column" button at the end of the Kanban board.
|
|
194
|
+
* Used to allow adding new enum values to the column property.
|
|
195
|
+
*/
|
|
196
|
+
AddKanbanColumnComponent?: React.ComponentType<{
|
|
197
|
+
collection: EC;
|
|
198
|
+
fullPath: string;
|
|
199
|
+
parentCollectionIds: string[];
|
|
200
|
+
columnProperty: string;
|
|
201
|
+
}>;
|
|
138
202
|
};
|
|
139
203
|
form?: {
|
|
140
204
|
provider?: {
|
|
@@ -149,6 +213,10 @@ export type FireCMSPlugin<PROPS = any, FORM_PROPS = any, EC extends EntityCollec
|
|
|
149
213
|
* Add custom actions to the top of the form
|
|
150
214
|
*/
|
|
151
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>>;
|
|
152
220
|
fieldBuilder?: <T extends CMSType = CMSType>(props: PluginFieldBuilderParams<T, any, EC>) => React.ComponentType<FieldProps<T>> | null;
|
|
153
221
|
fieldBuilderEnabled?: <T extends CMSType = CMSType>(props: PluginFieldBuilderParams<T>) => boolean;
|
|
154
222
|
};
|