@firecms/core 3.0.0-canary.113 → 3.0.0-canary.115
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 +2 -1
- package/dist/components/EntityCollectionTable/fields/TableReferenceField.d.ts +1 -1
- package/dist/components/EntityPreview.d.ts +1 -1
- package/dist/form/components/FormikArrayContainer.d.ts +2 -1
- package/dist/index.es.js +114 -74
- package/dist/index.es.js.map +1 -1
- package/dist/index.umd.js +113 -73
- package/dist/index.umd.js.map +1 -1
- package/dist/preview/components/ReferencePreview.d.ts +1 -1
- package/dist/types/side_dialogs_controller.d.ts +10 -0
- package/dist/util/icons.d.ts +1 -0
- package/package.json +5 -5
- package/src/components/ArrayContainer.tsx +7 -4
- package/src/components/EntityCollectionTable/fields/TableReferenceField.tsx +13 -8
- package/src/components/EntityPreview.tsx +20 -22
- package/src/components/HomePage/DefaultHomePage.tsx +7 -9
- package/src/components/ReferenceTable/ReferenceSelectionTable.tsx +6 -2
- package/src/components/VirtualTable/fields/VirtualTableDateField.tsx +3 -3
- package/src/components/VirtualTable/fields/VirtualTableInput.tsx +2 -1
- package/src/components/VirtualTable/fields/VirtualTableNumberInput.tsx +2 -1
- package/src/core/EntityEditView.tsx +18 -16
- package/src/form/components/FormikArrayContainer.tsx +4 -1
- package/src/form/field_bindings/ArrayOfReferencesFieldBinding.tsx +4 -4
- package/src/form/field_bindings/BlockFieldBinding.tsx +2 -1
- package/src/form/field_bindings/ReferenceFieldBinding.tsx +5 -4
- package/src/hooks/useBuildNavigationController.tsx +0 -3
- package/src/internal/useBuildSideDialogsController.tsx +1 -0
- package/src/internal/useBuildSideEntityController.tsx +13 -2
- package/src/preview/components/ReferencePreview.tsx +2 -13
- package/src/types/side_dialogs_controller.tsx +13 -0
- package/src/util/icons.tsx +8 -2
|
@@ -21,7 +21,7 @@ export type ReferencePreviewProps = {
|
|
|
21
21
|
/**
|
|
22
22
|
* @group Preview components
|
|
23
23
|
*/
|
|
24
|
-
export const ReferencePreview =
|
|
24
|
+
export const ReferencePreview = function ReferencePreview(props: ReferencePreviewProps) {
|
|
25
25
|
const reference = props.reference;
|
|
26
26
|
if (!(typeof reference === "object" && "isEntityReference" in reference && reference.isEntityReference())) {
|
|
27
27
|
console.warn("Reference preview received value of type", typeof reference);
|
|
@@ -33,18 +33,7 @@ export const ReferencePreview = React.memo<ReferencePreviewProps>(function Refer
|
|
|
33
33
|
</EntityPreviewContainer>;
|
|
34
34
|
}
|
|
35
35
|
return <ReferencePreviewInternal {...props} />;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
function areEqual(prevProps: ReferencePreviewProps, nextProps: ReferencePreviewProps) {
|
|
39
|
-
return prevProps.disabled === nextProps.disabled &&
|
|
40
|
-
prevProps.size === nextProps.size &&
|
|
41
|
-
prevProps.hover === nextProps.hover &&
|
|
42
|
-
prevProps.reference?.id === nextProps.reference?.id &&
|
|
43
|
-
prevProps.reference?.path === nextProps.reference?.path &&
|
|
44
|
-
prevProps.includeEntityLink === nextProps.includeEntityLink &&
|
|
45
|
-
prevProps.onClick === nextProps.onClick
|
|
46
|
-
;
|
|
47
|
-
}
|
|
36
|
+
};
|
|
48
37
|
|
|
49
38
|
function ReferencePreviewInternal({
|
|
50
39
|
disabled,
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
|
|
1
3
|
/**
|
|
2
4
|
* Controller to open the side dialog
|
|
3
5
|
* @group Hooks and utilities
|
|
@@ -14,6 +16,12 @@ export interface SideDialogsController {
|
|
|
14
16
|
*/
|
|
15
17
|
sidePanels: SideDialogPanelProps[];
|
|
16
18
|
|
|
19
|
+
/**
|
|
20
|
+
* Override the current side panels
|
|
21
|
+
* @param panels
|
|
22
|
+
*/
|
|
23
|
+
setSidePanels: (panels: SideDialogPanelProps[]) => void;
|
|
24
|
+
|
|
17
25
|
/**
|
|
18
26
|
* Open one or multiple side panels
|
|
19
27
|
* @param props
|
|
@@ -65,4 +73,9 @@ export interface SideDialogPanelProps {
|
|
|
65
73
|
* Callback when the panel is closed
|
|
66
74
|
*/
|
|
67
75
|
onClose?: () => void;
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Use this prop to store additional data in the panel
|
|
79
|
+
*/
|
|
80
|
+
additional?: any;
|
|
68
81
|
}
|
package/src/util/icons.tsx
CHANGED
|
@@ -22,7 +22,13 @@ export type IconViewProps = {
|
|
|
22
22
|
}
|
|
23
23
|
|
|
24
24
|
export const IconForView = React.memo(
|
|
25
|
-
function IconForView({
|
|
25
|
+
function IconForView({
|
|
26
|
+
collectionOrView,
|
|
27
|
+
className,
|
|
28
|
+
size = "medium"
|
|
29
|
+
}: {
|
|
30
|
+
collectionOrView?: IconViewProps, className?: string, size?: "smallest" | "small" | "medium" | "large" | number,
|
|
31
|
+
}): React.ReactElement {
|
|
26
32
|
if (!collectionOrView) return <></>;
|
|
27
33
|
const icon = getIcon(collectionOrView.icon, className);
|
|
28
34
|
if (collectionOrView?.icon && icon)
|
|
@@ -45,7 +51,7 @@ export const IconForView = React.memo(
|
|
|
45
51
|
if (!key)
|
|
46
52
|
key = coolIconKeys[hashString(collectionOrView.path) % iconsCount];
|
|
47
53
|
|
|
48
|
-
return <Icon iconKey={key} size={
|
|
54
|
+
return <Icon iconKey={key} size={size} className={className}/>;
|
|
49
55
|
}, (prevProps, nextProps) => {
|
|
50
56
|
return equal(prevProps.collectionOrView?.icon, nextProps.collectionOrView?.icon);
|
|
51
57
|
});
|