@firecms/core 3.0.0-beta.2-pre.2 → 3.0.0-beta.2-pre.3

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.
Files changed (55) hide show
  1. package/dist/components/EntityCollectionTable/EntityCollectionTable.d.ts +0 -3
  2. package/dist/components/EntityCollectionTable/EntityCollectionTableProps.d.ts +1 -8
  3. package/dist/components/EntityCollectionTable/index.d.ts +2 -4
  4. package/dist/components/EntityCollectionTable/internal/popup_field/PopupFormField.d.ts +1 -1
  5. package/dist/components/{ReferenceSelectionInner.d.ts → ReferenceTable/ReferenceSelectionTable.d.ts} +2 -2
  6. package/dist/components/{EntityCollectionTable/SimpleTable.d.ts → SelectableTable/SelectableTable.d.ts} +3 -4
  7. package/dist/components/SelectableTable/SelectableTableContext.d.ts +4 -0
  8. package/dist/components/common/index.d.ts +5 -0
  9. package/dist/components/{EntityCollectionTable → common}/types.d.ts +7 -0
  10. package/dist/components/common/useTableSearchHelper.d.ts +12 -0
  11. package/dist/components/index.d.ts +5 -2
  12. package/dist/form/components/index.d.ts +0 -1
  13. package/dist/hooks/useSnackbarController.d.ts +1 -0
  14. package/dist/index.es.js +3705 -3683
  15. package/dist/index.es.js.map +1 -1
  16. package/dist/index.umd.js +5 -5
  17. package/dist/index.umd.js.map +1 -1
  18. package/package.json +3 -3
  19. package/src/components/ArrayContainer.tsx +10 -3
  20. package/src/components/EntityCollectionTable/EntityCollectionTable.tsx +16 -22
  21. package/src/components/EntityCollectionTable/EntityCollectionTableProps.tsx +1 -5
  22. package/src/components/EntityCollectionTable/PropertyTableCell.tsx +2 -2
  23. package/src/components/EntityCollectionTable/column_utils.tsx +1 -1
  24. package/src/components/EntityCollectionTable/index.tsx +1 -9
  25. package/src/components/EntityCollectionTable/internal/popup_field/PopupFormField.tsx +2 -1
  26. package/src/components/EntityCollectionView/EntityCollectionView.tsx +19 -40
  27. package/src/components/{ReferenceSelectionInner.tsx → ReferenceTable/ReferenceSelectionTable.tsx} +31 -15
  28. package/src/components/{EntityCollectionTable/SimpleTable.tsx → SelectableTable/SelectableTable.tsx} +8 -9
  29. package/src/components/SelectableTable/SelectableTableContext.tsx +6 -0
  30. package/src/components/common/index.ts +5 -0
  31. package/src/components/{EntityCollectionTable → common}/types.tsx +5 -0
  32. package/src/components/common/useTableSearchHelper.ts +47 -0
  33. package/src/components/index.tsx +6 -2
  34. package/src/core/EntitySidePanel.tsx +7 -5
  35. package/src/form/EntityForm.tsx +1 -1
  36. package/src/form/components/index.tsx +0 -1
  37. package/src/hooks/useFireCMSContext.tsx +51 -3
  38. package/src/hooks/useReferenceDialog.tsx +2 -2
  39. package/src/hooks/useSnackbarController.tsx +1 -2
  40. package/dist/form/components/SwitchControl.d.ts +0 -8
  41. package/src/form/components/SwitchControl.tsx +0 -39
  42. /package/dist/components/{EntityCollectionTable → SelectableTable}/filters/BooleanFilterField.d.ts +0 -0
  43. /package/dist/components/{EntityCollectionTable → SelectableTable}/filters/DateTimeFilterField.d.ts +0 -0
  44. /package/dist/components/{EntityCollectionTable → SelectableTable}/filters/ReferenceFilterField.d.ts +0 -0
  45. /package/dist/components/{EntityCollectionTable → SelectableTable}/filters/StringNumberFilterField.d.ts +0 -0
  46. /package/dist/components/{EntityCollectionView → common}/useColumnsIds.d.ts +0 -0
  47. /package/dist/components/{EntityCollectionTable → common}/useDataSourceEntityCollectionTableController.d.ts +0 -0
  48. /package/dist/components/{EntityCollectionTable → common}/useDebouncedData.d.ts +0 -0
  49. /package/src/components/{EntityCollectionTable → SelectableTable}/filters/BooleanFilterField.tsx +0 -0
  50. /package/src/components/{EntityCollectionTable → SelectableTable}/filters/DateTimeFilterField.tsx +0 -0
  51. /package/src/components/{EntityCollectionTable → SelectableTable}/filters/ReferenceFilterField.tsx +0 -0
  52. /package/src/components/{EntityCollectionTable → SelectableTable}/filters/StringNumberFilterField.tsx +0 -0
  53. /package/src/components/{EntityCollectionView → common}/useColumnsIds.tsx +0 -0
  54. /package/src/components/{EntityCollectionTable → common}/useDataSourceEntityCollectionTableController.tsx +0 -0
  55. /package/src/components/{EntityCollectionTable → common}/useDebouncedData.ts +0 -0
@@ -10,6 +10,7 @@ import { useUserConfigurationPersistence } from "./useUserConfigurationPersisten
10
10
  import { useDialogsController } from "./useDialogsController";
11
11
  import { useCustomizationController } from "./useCustomizationController";
12
12
  import { useAnalyticsController } from "./useAnalyticsController";
13
+ import React, { useEffect } from "react";
13
14
 
14
15
  /**
15
16
  * Hook to retrieve the {@link FireCMSContext}.
@@ -34,7 +35,7 @@ export const useFireCMSContext = <UserType extends User = User, AuthControllerTy
34
35
  const customizationController = useCustomizationController();
35
36
  const analyticsController = useAnalyticsController();
36
37
 
37
- return {
38
+ const fireCMSContextRef = React.useRef<FireCMSContext<UserType, AuthControllerType>>({
38
39
  authController,
39
40
  sideDialogsController,
40
41
  sideEntityController,
@@ -46,6 +47,53 @@ export const useFireCMSContext = <UserType extends User = User, AuthControllerTy
46
47
  dialogsController,
47
48
  customizationController,
48
49
  analyticsController
49
- };
50
+ });
50
51
 
51
- };
52
+ useEffect(() => {
53
+ fireCMSContextRef.current = {
54
+ authController,
55
+ sideDialogsController,
56
+ sideEntityController,
57
+ navigation,
58
+ dataSource,
59
+ storageSource,
60
+ snackbarController,
61
+ userConfigPersistence,
62
+ dialogsController,
63
+ customizationController,
64
+ analyticsController
65
+ };
66
+ }, [authController, dialogsController, navigation, sideDialogsController]);
67
+
68
+ return fireCMSContextRef.current;
69
+ }
70
+
71
+ // export const useFireCMSContext = <UserType extends User = User, AuthControllerType extends AuthController<UserType> = AuthController<UserType>>(): FireCMSContext<UserType, AuthControllerType> => {
72
+ //
73
+ // const authController = useAuthController<UserType, AuthControllerType>();
74
+ // const sideDialogsController = useSideDialogsController();
75
+ // const sideEntityController = useSideEntityController();
76
+ // const navigation = useNavigationController();
77
+ // const dataSource = useDataSource();
78
+ // const storageSource = useStorageSource();
79
+ // const snackbarController = useSnackbarController();
80
+ // const userConfigPersistence = useUserConfigurationPersistence();
81
+ // const dialogsController = useDialogsController();
82
+ // const customizationController = useCustomizationController();
83
+ // const analyticsController = useAnalyticsController();
84
+ //
85
+ // return {
86
+ // authController,
87
+ // sideDialogsController,
88
+ // sideEntityController,
89
+ // navigation,
90
+ // dataSource,
91
+ // storageSource,
92
+ // snackbarController,
93
+ // userConfigPersistence,
94
+ // dialogsController,
95
+ // customizationController,
96
+ // analyticsController
97
+ // };
98
+ //
99
+ // };
@@ -1,5 +1,5 @@
1
1
  import { useSideDialogsController } from "./useSideDialogsController";
2
- import { ReferenceSelectionInner, ReferenceSelectionInnerProps } from "../components";
2
+ import { ReferenceSelectionTable, ReferenceSelectionInnerProps } from "../components";
3
3
  import { useCallback } from "react";
4
4
  import { useNavigationController } from "./useNavigationController";
5
5
 
@@ -31,7 +31,7 @@ export function useReferenceDialog<M extends Record<string, any>>(referenceDialo
31
31
  sideDialogsController.open({
32
32
  key: `reference_${referenceDialogProps.path}`,
33
33
  component:
34
- <ReferenceSelectionInner
34
+ <ReferenceSelectionTable
35
35
  collection={usedCollection}
36
36
  {...referenceDialogProps as ReferenceSelectionInnerProps<M>}/>,
37
37
  width: "90vw",
@@ -1,5 +1,5 @@
1
+ import React, { useCallback, useMemo } from "react";
1
2
  import { useSnackbar } from "notistack";
2
- import { useCallback, useMemo } from "react";
3
3
 
4
4
  /**
5
5
  * Possible snackbar types
@@ -48,7 +48,6 @@ export const useSnackbarController = () => {
48
48
 
49
49
  const open = useCallback((props: {
50
50
  type: SnackbarMessageType;
51
- // title?: string;
52
51
  message: React.ReactNode;
53
52
  autoHideDuration?: number;
54
53
  }) => {
@@ -1,8 +0,0 @@
1
- import { FieldProps } from "formik";
2
- export declare function SwitchControl({ field, form, label, tooltip, disabled, size, allowIndeterminate }: FieldProps & {
3
- label: string;
4
- tooltip?: string;
5
- disabled?: boolean;
6
- size: "small" | "medium";
7
- allowIndeterminate?: boolean;
8
- }): import("react/jsx-runtime").JSX.Element;
@@ -1,39 +0,0 @@
1
- import React from "react";
2
-
3
- import { FieldProps } from "formik";
4
- import { BooleanSwitchWithLabel, Tooltip } from "@firecms/ui";
5
-
6
- export function SwitchControl({
7
- field,
8
- form,
9
- label,
10
- tooltip,
11
- disabled,
12
- size = "small",
13
- allowIndeterminate
14
- }: FieldProps & {
15
- label: string,
16
- tooltip?: string,
17
- disabled?: boolean,
18
- size: "small" | "medium",
19
- allowIndeterminate?: boolean
20
- }) {
21
-
22
- const formControlLabel = <BooleanSwitchWithLabel
23
- label={label}
24
- size={size}
25
- position={"start"}
26
- value={field.value}
27
- disabled={disabled}
28
- allowIndeterminate={allowIndeterminate}
29
- onValueChange={(checked:boolean | null) => form.setFieldValue(field.name, checked)}/>;
30
-
31
- if (tooltip)
32
- return (
33
- <Tooltip
34
- title={tooltip}>
35
- {formControlLabel}
36
- </Tooltip>
37
- );
38
- return formControlLabel;
39
- }