@m4l/components 0.2.26 → 0.2.28

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 (117) hide show
  1. package/components/AccountPopover/{index.e31fc908.js → index.7b7f3962.js} +1 -1
  2. package/components/AppBar/{index.4945897e.js → index.cb2f1763.js} +2 -2
  3. package/components/CommonActions/components/ActionCancel/{index.33a748be.js → index.e03455db.js} +2 -2
  4. package/components/CommonActions/components/ActionFormCancel/{index.9a965204.js → index.9120552e.js} +4 -4
  5. package/components/CommonActions/components/ActionFormIntro/{index.7add0125.js → index.48e7d28a.js} +2 -2
  6. package/components/CommonActions/components/ActionIntro/{index.ac7cd0ee.js → index.5ba2ef5f.js} +2 -2
  7. package/components/DataGrid/formatters/ColumnBooleanFormatter/{index.f731d23f.js → index.ce8c7b9c.js} +1 -1
  8. package/components/DataGrid/formatters/ColumnConcatenatedValueFormatter/{index.ad82747c.js → index.3a1ae54f.js} +1 -1
  9. package/components/DataGrid/formatters/ColumnInteractiveCheckFormatter/{index.64854fdd.js → index.de32e830.js} +1 -1
  10. package/components/DataGrid/{index.1c695ed3.js → index.690184a8.js} +3 -3
  11. package/components/DataGrid/subcomponents/Actions/{index.4a402633.js → index.339ccf42.js} +10 -10
  12. package/components/DragResizeWindow/{index.f84451f8.js → index.be2fc1e0.js} +1 -1
  13. package/components/DynamicFilter/{index.22ba3195.js → index.ad2460cf.js} +12 -10
  14. package/components/FieldLabel/{index.1da2a28d.js → index.61d55577.js} +1 -1
  15. package/components/GridLayout/subcomponents/Responsive/{index.0fd1b7f8.js → index.d2ec9ddb.js} +1 -0
  16. package/components/HamburgerMenu/{index.1663edef.js → index.9f99b7c1.js} +2 -2
  17. package/components/Icon/{index.8c744412.js → index.1976cb37.js} +8 -48
  18. package/components/Icon/types.d.ts +0 -5
  19. package/components/Image/classes/index.d.ts +7 -0
  20. package/components/Image/{utils/classes → classes}/types.d.ts +0 -5
  21. package/components/Image/index.fd6f2c5f.js +203 -0
  22. package/components/Image/tests/utils.d.ts +1 -1
  23. package/components/Image/types.d.ts +3 -43
  24. package/components/LanguagePopover/{index.80896e49.js → index.f90fd1dc.js} +2 -3
  25. package/components/LoadingError/{index.9c64680a.js → index.2aa5daba.js} +2 -2
  26. package/components/MFLoader/{index.7cd7c372.js → index.1e56a845.js} +1 -1
  27. package/components/ModalDialog/{index.ce0f4d16.js → index.86de725b.js} +2 -2
  28. package/components/NoItemSelected/{index.ffba558b.js → index.16ff4e09.js} +1 -1
  29. package/components/ObjectLogs/{index.dd6a5009.js → index.d200ba38.js} +5 -5
  30. package/components/PDFViewer/{index.093ddd35.js → index.3bffbae3.js} +1 -1
  31. package/components/Page/{index.1b20a73e.js → index.026d463c.js} +1 -1
  32. package/components/PaperForm/{index.42e78a24.js → index.fe630839.js} +1 -1
  33. package/components/Period/{index.6e8d92dc.js → index.b6fa6ce6.js} +2 -2
  34. package/components/PrintingSystem/{index.c2d21657.js → index.02517f9c.js} +12 -12
  35. package/components/PrintingSystem/subcomponents/BodyNode/{index.c7b59f3f.js → index.0abc77a8.js} +1 -1
  36. package/components/PrintingSystem/subcomponents/ChartNode/{index.263f02f0.js → index.293e44cd.js} +1 -1
  37. package/components/PrintingSystem/subcomponents/DividerNode/{index.f00c44f3.js → index.3a2363d4.js} +1 -1
  38. package/components/PrintingSystem/subcomponents/FooterNode/{index.fb323704.js → index.fc1466e0.js} +1 -1
  39. package/components/PrintingSystem/subcomponents/GridNode/{index.1ed935be.js → index.ca2cc635.js} +1 -1
  40. package/components/PrintingSystem/subcomponents/HeaderNode/{index.5173c74a.js → index.5ae4e58e.js} +1 -1
  41. package/components/PrintingSystem/subcomponents/PaperNode/{index.fad64696.js → index.251d9664.js} +1 -1
  42. package/components/PrintingSystem/subcomponents/PropertyValueNode/{index.3a3e5fd0.js → index.45054100.js} +1 -1
  43. package/components/PrintingSystem/subcomponents/SectionNode/{index.2890fc12.js → index.cfd21ea3.js} +1 -1
  44. package/components/PrintingSystem/subcomponents/TextBoxNode/{index.148708e6.js → index.0f22f144.js} +1 -1
  45. package/components/PropertyValue/{index.4ea5af0f.js → index.041a0585.js} +1 -1
  46. package/components/SideBar/classes/index.d.ts +1 -0
  47. package/components/SideBar/classes/types.d.ts +1 -0
  48. package/components/SideBar/{index.141dac10.js → index.3ea827ea.js} +13 -29
  49. package/components/SideBar/subcomponents/ContentGroups/index.d.ts +1 -1
  50. package/components/ToastContainer/{index.98c4873e.js → index.ee15bfce.js} +2 -2
  51. package/components/areas/components/AreasAdmin/{index.debe3e3d.js → index.01ea7058.js} +13 -13
  52. package/components/areas/components/AreasViewer/{index.82a22acb.js → index.71038f0e.js} +75 -189
  53. package/components/areas/components/AreasViewer/subcomponents/Area/subcomponents/Window/subcomponents/Header/subcomponents/WindowHeaderSkeleton/index.d.ts +2 -0
  54. package/components/areas/components/AreasViewer/subcomponents/Area/subcomponents/Window/subcomponents/Header/subcomponents/WindowHeaderSkeleton/types.d.ts +3 -0
  55. package/components/areas/contexts/AreasContext/helper.d.ts +2 -2
  56. package/components/areas/contexts/AreasContext/{index.0dc69929.js → index.cc89c1a7.js} +5 -5
  57. package/components/areas/hooks/useAreas/{index.ca15a4b6.js → index.32c7a909.js} +1 -1
  58. package/components/commercial/TopBar/{index.32a332c4.js → index.6493e8ab.js} +3 -3
  59. package/components/formatters/BooleanFormatter/{index.0703a256.js → index.477c6419.js} +2 -2
  60. package/components/formatters/{index.94be7098.js → index.ac0a547b.js} +1 -1
  61. package/components/hook-form/RHFAutocomplete/classes/types.d.ts +1 -0
  62. package/components/hook-form/RHFAutocomplete/{index.993794f8.js → index.24e4387c.js} +22 -15
  63. package/components/hook-form/RHFAutocomplete/types.d.ts +2 -1
  64. package/components/hook-form/RHFAutocompleteAsync/{index.924c6473.js → index.0cc78417.js} +1 -1
  65. package/components/hook-form/RHFCheckbox/classes/types.d.ts +2 -0
  66. package/components/hook-form/RHFCheckbox/{index.f1fd5789.js → index.22648b5a.js} +20 -3
  67. package/components/hook-form/RHFCheckbox/types.d.ts +2 -0
  68. package/components/hook-form/RHFColorPicker/classes/types.d.ts +2 -0
  69. package/components/hook-form/RHFColorPicker/{index.60b50052.js → index.d02de5ee.js} +24 -6
  70. package/components/hook-form/RHFColorPicker/types.d.ts +2 -0
  71. package/components/hook-form/RHFDateTime/classes/types.d.ts +1 -0
  72. package/components/hook-form/RHFDateTime/{index.2396ea4a.js → index.f02f1122.js} +19 -12
  73. package/components/hook-form/RHFDateTime/types.d.ts +2 -1
  74. package/components/hook-form/RHFPeriod/classes/index.d.ts +2 -1
  75. package/components/hook-form/RHFPeriod/classes/types.d.ts +2 -0
  76. package/components/hook-form/RHFPeriod/index.5ca467ac.js +112 -0
  77. package/components/hook-form/RHFPeriod/types.d.ts +4 -0
  78. package/components/hook-form/RHFTextField/classes/types.d.ts +1 -0
  79. package/components/hook-form/RHFTextField/{index.fb0d1cac.js → index.81c4b52b.js} +21 -15
  80. package/components/hook-form/RHFTextField/types.d.ts +2 -1
  81. package/components/hook-form/RHFUpload/{index.e5f734b8.js → index.f6c5027f.js} +2 -2
  82. package/components/modal/{WindowBase.dd1d2d7b.js → WindowBase.f38260ec.js} +3 -3
  83. package/components/modal/{WindowConfirm.4501497a.js → WindowConfirm.67ee36e9.js} +6 -6
  84. package/components/mui_extended/Accordion/{index.4393eca9.js → index.a55875a5.js} +2 -2
  85. package/components/mui_extended/Button/{index.93389adb.js → index.c6befaeb.js} +3 -7
  86. package/components/mui_extended/{CheckBox.840a443f.js → CheckBox.d676424c.js} +1 -1
  87. package/components/mui_extended/IconButton/classes/types.d.ts +0 -1
  88. package/components/mui_extended/IconButton/{index.383f5496.js → index.63a9d74c.js} +2 -5
  89. package/components/mui_extended/IconButton/types.d.ts +1 -1
  90. package/components/mui_extended/ImageButton/ImageButton.d.ts +1 -1
  91. package/components/mui_extended/MenuActions/{index.e6e3aac8.js → index.bca14ad9.js} +2 -2
  92. package/components/mui_extended/Pager/{index.5791276c.js → index.a024f67b.js} +1 -1
  93. package/components/mui_extended/ToggleButton/{index.4ac1f974.js → index.3f8bcf51.js} +1 -1
  94. package/components/mui_extended/ToggleIconButton/{index.8ca0114f.js → index.04375093.js} +1 -1
  95. package/contexts/ModalContext/{index.dde4e35a.js → index.e748f329.js} +1 -1
  96. package/hooks/index.d.ts +1 -0
  97. package/hooks/useFormAddEdit/{index.7fdad61d.js → index.649004a5.js} +2 -2
  98. package/hooks/useFormFocus/index.d.ts +7 -0
  99. package/hooks/useFormFocus/types.d.ts +8 -0
  100. package/hooks/useModal/{index.2f1d6a07.js → index.66a0c82e.js} +1 -1
  101. package/index.js +78 -77
  102. package/{node_modules.585eab0e.js → node_modules.4d80a09c.js} +1 -1
  103. package/package.json +1 -1
  104. package/{vendor.173d0b89.js → vendor.aa97e825.js} +79 -60
  105. package/components/Image/index.39b3b9d9.js +0 -387
  106. package/components/Image/subcomponents/BasicIntersectComponent/index.d.ts +0 -3
  107. package/components/Image/subcomponents/LazyLoadComponent/index.d.ts +0 -7
  108. package/components/Image/subcomponents/Skeleton/index.d.ts +0 -2
  109. package/components/Image/subcomponents/Skeleton/types.d.ts +0 -6
  110. package/components/Image/utils/classes/index.d.ts +0 -12
  111. package/components/Image/utils/isIntersectionObserverAvailable.d.ts +0 -1
  112. package/components/areas/components/AreasViewer/subcomponents/Area/subcomponents/Window/subcomponents/Header/skeleton.d.ts +0 -1
  113. package/components/areas/components/AreasViewer/subcomponents/Area/subcomponents/Window/subcomponents/Header/subcomponents/WindowPopUpsList/index.d.ts +0 -2
  114. package/components/areas/components/AreasViewer/subcomponents/Area/subcomponents/Window/subcomponents/Header/subcomponents/WindowPopUpsList/types.d.ts +0 -2
  115. package/components/hook-form/RHFPeriod/index.011965ef.js +0 -90
  116. package/components/CommonActions/components/Actions/{index.389f9b28.js → index.16946bfd.js} +11 -11
  117. /package/components/Image/{utils/classes → classes}/constant.d.ts +0 -0
@@ -1,7 +1,7 @@
1
1
  import { useState } from "react";
2
2
  import { useFormContext, useWatch, Controller } from "react-hook-form";
3
3
  import { useModuleSkeleton, useEnvironment, useModuleDictionary } from "@m4l/core";
4
- import { S as SketchPicker } from "../../../node_modules.585eab0e.js";
4
+ import { S as SketchPicker } from "../../../node_modules.4d80a09c.js";
5
5
  import "lodash-es/debounce";
6
6
  import "lodash-es/each";
7
7
  import { jsxs, jsx, Fragment } from "react/jsx-runtime";
@@ -10,10 +10,11 @@ import { generateUtilityClasses, generateUtilityClass, styled, Skeleton } from "
10
10
  import { unstable_composeClasses } from "@mui/base";
11
11
  import { useTheme } from "@mui/material/styles";
12
12
  import { useResponsiveDesktop } from "@m4l/graphics";
13
- import { F as FieldLabel } from "../../FieldLabel/index.1da2a28d.js";
13
+ import { u as useFormFocus } from "../../../vendor.aa97e825.js";
14
+ import { F as FieldLabel } from "../../FieldLabel/index.61d55577.js";
14
15
  import { P as Popover } from "../../mui_extended/Popover/index.d85de73b.js";
15
- import { I as Icon } from "../../Icon/index.8c744412.js";
16
- import { B as Button } from "../../mui_extended/Button/index.93389adb.js";
16
+ import { I as Icon } from "../../Icon/index.1976cb37.js";
17
+ import { B as Button } from "../../mui_extended/Button/index.c6befaeb.js";
17
18
  const componentName = "M4LRHFColorPicker";
18
19
  const colorPickerClasses = generateUtilityClasses(componentName, [
19
20
  "root",
@@ -23,14 +24,16 @@ const colorPickerClasses = generateUtilityClasses(componentName, [
23
24
  "containerPicker",
24
25
  "skeleton",
25
26
  "sizeSmall",
26
- "sizeMedium"
27
+ "sizeMedium",
28
+ "isFocus",
29
+ "isTabSelected"
27
30
  ]);
28
31
  function getRHFColorPickerUtilityClass(slot) {
29
32
  return generateUtilityClass(componentName, slot);
30
33
  }
31
34
  const useUtilityClasses = (owmerState) => {
32
35
  const slots = {
33
- root: ["root", owmerState.size === "small" && "sizeSmall", owmerState.size === "medium" && "sizeMedium"],
36
+ root: ["root", owmerState.isFocus && "isFocus", owmerState.isTabSelected && "isTabSelected", owmerState.size === "small" && "sizeSmall", owmerState.size === "medium" && "sizeMedium"],
34
37
  popoverRoot: ["popoverRoot"],
35
38
  containerFieldColor: ["containerFieldColor"],
36
39
  fieldColor: ["boxColor"],
@@ -82,6 +85,13 @@ const RHFColorPicker = (props) => {
82
85
  host_static_assets,
83
86
  environment_assets
84
87
  } = useEnvironment();
88
+ const {
89
+ isFocus,
90
+ isTabSelected,
91
+ handlerFocus,
92
+ handlerOnKeyUp,
93
+ handlerOnBlur
94
+ } = useFormFocus();
85
95
  const theme = useTheme();
86
96
  const currentColor = useWatch({
87
97
  name,
@@ -105,11 +115,19 @@ const RHFColorPicker = (props) => {
105
115
  }
106
116
  };
107
117
  const ownerState = {
118
+ isFocus: !isSkeleton ? isFocus : false,
119
+ isTabSelected: !isSkeleton ? isTabSelected : false,
108
120
  size: isDesktop ? size : "medium"
109
121
  };
110
122
  const classes = useUtilityClasses(ownerState);
123
+ console.log("isFocus", isFocus);
124
+ console.log("isTabSelected", isTabSelected);
111
125
  return /* @__PURE__ */ jsx(RHFColorPickerRoot, {
112
126
  className: classes.root,
127
+ tabIndex: 0,
128
+ onFocus: handlerFocus,
129
+ onBlur: handlerOnBlur,
130
+ onKeyUp: handlerOnKeyUp,
113
131
  children: !isSkeleton ? /* @__PURE__ */ jsx(Controller, {
114
132
  name,
115
133
  control,
@@ -14,4 +14,6 @@ export interface RHFColorPickerProps extends Omit<FieldLabelProps, 'label'> {
14
14
  size?: 'small' | 'medium';
15
15
  }
16
16
  export interface OwnerState extends Pick<RHFColorPickerProps, 'size'> {
17
+ isFocus: boolean;
18
+ isTabSelected: boolean;
17
19
  }
@@ -5,6 +5,7 @@ export interface RHFDateTimeClassesType {
5
5
  small: string;
6
6
  medium: string;
7
7
  isFocus: string;
8
+ isTabSelected: string;
8
9
  isDisabled: string;
9
10
  variantInfo: string;
10
11
  variantSuccess: string;
@@ -9,8 +9,9 @@ import { unstable_composeClasses } from "@mui/base";
9
9
  import clsx from "clsx";
10
10
  import { H as HelperText } from "../../HelperText/index.7d2afdb3.js";
11
11
  import { T as TEST_PROP_ID } from "../../../test/constants_no_mock.86c553a9.js";
12
- import { F as FieldLabel } from "../../FieldLabel/index.1da2a28d.js";
13
- import { I as Icon } from "../../Icon/index.8c744412.js";
12
+ import { u as useFormFocus } from "../../../vendor.aa97e825.js";
13
+ import { F as FieldLabel } from "../../FieldLabel/index.61d55577.js";
14
+ import { I as Icon } from "../../Icon/index.1976cb37.js";
14
15
  const SkeletonRHFDateTime = (props) => {
15
16
  const {
16
17
  skeletonWidth,
@@ -42,6 +43,7 @@ generateUtilityClasses(componentName, [
42
43
  "small",
43
44
  "medium",
44
45
  "isFocus",
46
+ "isTabSelected",
45
47
  "isDisabled",
46
48
  "variantInfo",
47
49
  "variantSuccess",
@@ -53,7 +55,7 @@ function getRHFCheckboxUtilityClass(slot) {
53
55
  }
54
56
  const useUtilityClasses = (ownerState) => {
55
57
  const slots = {
56
- root: ["root", ownerState.size === "small" && "small", ownerState.size === "medium" && "medium", ownerState.isFocus && "isFocus", ownerState.disabled && "isDisabled", ownerState.variant === "info" && "variantInfo", ownerState.variant === "success" && "variantSuccess", ownerState.variant === "warning" && "variantWarning", ownerState.variant === "error" && "variantError"],
58
+ root: ["root", ownerState.size === "small" && "small", ownerState.size === "medium" && "medium", ownerState.isFocus && "isFocus", ownerState.isTabSelected && "isTabSelected", ownerState.disabled && "isDisabled", ownerState.variant === "info" && "variantInfo", ownerState.variant === "success" && "variantSuccess", ownerState.variant === "warning" && "variantWarning", ownerState.variant === "error" && "variantError"],
57
59
  skeleton: ["skeleton"]
58
60
  };
59
61
  const composedClasses = unstable_composeClasses(slots, getRHFCheckboxUtilityClass, {});
@@ -91,8 +93,14 @@ function RHFDateTime(props) {
91
93
  src: `${host_static_assets}/${environment_assets}/frontend/components/rhfdate/ended_at.svg`
92
94
  });
93
95
  };
94
- const [isFocus, setIsFocus] = useState(false);
95
96
  const [currentVariant, setCurrentVariant] = useState(void 0);
97
+ const {
98
+ isFocus,
99
+ isTabSelected,
100
+ handlerFocus,
101
+ handlerOnKeyUp,
102
+ handlerOnBlur
103
+ } = useFormFocus();
96
104
  const {
97
105
  control,
98
106
  formState: {
@@ -114,15 +122,10 @@ function RHFDateTime(props) {
114
122
  datetimeFormat
115
123
  }
116
124
  } = useFormatter();
117
- const handlerFocus = () => {
118
- setIsFocus(true);
119
- };
120
- const handlerBlur = () => {
121
- setIsFocus(false);
122
- };
123
125
  const isDesktop = useResponsiveDesktop();
124
126
  const ownerState = {
125
- isFocus,
127
+ isFocus: !isSkeleton ? isFocus : false,
128
+ isTabSelected: !isSkeleton ? isTabSelected : false,
126
129
  disabled,
127
130
  size: isDesktop ? size : "medium",
128
131
  variant: currentVariant
@@ -130,6 +133,10 @@ function RHFDateTime(props) {
130
133
  const classes = useUtilityClasses(ownerState);
131
134
  return /* @__PURE__ */ jsx(RHFDateTimeRoot, {
132
135
  className: clsx(classes.root, className),
136
+ tabIndex: 0,
137
+ onFocus: handlerFocus,
138
+ onBlur: handlerOnBlur,
139
+ onKeyUp: handlerOnKeyUp,
133
140
  ...process.env.NODE_ENV !== "production" ? {
134
141
  [TEST_PROP_ID]: getNameRHFDateTimeDataTestId("root")
135
142
  } : {},
@@ -171,7 +178,7 @@ function RHFDateTime(props) {
171
178
  slotProps: {
172
179
  textField: {
173
180
  onFocus: handlerFocus,
174
- onBlur: handlerBlur
181
+ onBlur: handlerOnBlur
175
182
  },
176
183
  field: {
177
184
  format: datetimeFormat
@@ -13,7 +13,8 @@ export interface RHFDateTimeProps extends Omit<FieldLabelProps, 'label'> {
13
13
  declare type SizeType = 'small' | 'medium';
14
14
  export declare type RHFDateTimeVariants = 'info' | 'success' | 'warning' | undefined;
15
15
  export interface OwnerState extends Pick<RHFDateTimeProps, 'size' | 'disabled'> {
16
- isFocus?: boolean;
16
+ isFocus: boolean;
17
+ isTabSelected: boolean;
17
18
  variant?: RHFDateTimeVariants | 'error';
18
19
  }
19
20
  export {};
@@ -1,6 +1,7 @@
1
1
  import { RHFPeriodClassesType } from './types';
2
+ import { OwnerState } from '../types';
2
3
  export declare const RHFPeriodClasses: RHFPeriodClassesType;
3
4
  export declare function getRHFPeriodUtilityClass(slot: string): string;
4
- export declare const RHFPeriodUtilityClasses: () => {
5
+ export declare const RHFPeriodUtilityClasses: (ownerState: OwnerState) => {
5
6
  root: string;
6
7
  };
@@ -1,6 +1,8 @@
1
1
  import { RHFPeriodUtilityClasses } from ".";
2
2
  export interface RHFPeriodClassesType {
3
3
  root: string;
4
+ isFocus: string;
5
+ isTabSelected: string;
4
6
  }
5
7
  export declare type RHFPeriodClassesKey = keyof RHFPeriodClassesType;
6
8
  export declare type Classes = ReturnType<typeof RHFPeriodUtilityClasses>;
@@ -0,0 +1,112 @@
1
+ import { styled, generateUtilityClasses, generateUtilityClass } from "@mui/material";
2
+ import { useFormContext, Controller } from "react-hook-form";
3
+ import { H as HelperText } from "../../HelperText/index.7d2afdb3.js";
4
+ import { unstable_composeClasses } from "@mui/base";
5
+ import { useModuleSkeleton } from "@m4l/core";
6
+ import { jsx, jsxs, Fragment } from "react/jsx-runtime";
7
+ import { u as useFormFocus } from "../../../vendor.aa97e825.js";
8
+ import { F as FieldLabel } from "../../FieldLabel/index.61d55577.js";
9
+ import { P as Period } from "../../Period/index.b6fa6ce6.js";
10
+ const RHFPeriodRoot = styled("div")(({
11
+ theme
12
+ }) => ({
13
+ width: "100%",
14
+ display: "flex",
15
+ flexDirection: "column",
16
+ justifyContent: "center",
17
+ alignItems: "flex-start",
18
+ gap: theme.spacing(1),
19
+ ...theme.components?.M4LRHFPeriod?.styleOverrides
20
+ }));
21
+ const componentName = "M4LRHFPeriod";
22
+ generateUtilityClasses(componentName, [
23
+ "root",
24
+ "isFocus",
25
+ "isTabSelected"
26
+ ]);
27
+ function getRHFPeriodUtilityClass(slot) {
28
+ return generateUtilityClass(componentName, slot);
29
+ }
30
+ const RHFPeriodUtilityClasses = (ownerState) => {
31
+ const slots = {
32
+ root: ["root", ownerState.isFocus && "isFocus", ownerState.isTabSelected && "isTabSelected"]
33
+ };
34
+ const composedClasses = unstable_composeClasses(slots, getRHFPeriodUtilityClass, {});
35
+ return {
36
+ ...composedClasses
37
+ };
38
+ };
39
+ const RHFPeriod = (props) => {
40
+ const {
41
+ name,
42
+ readOnly,
43
+ skeletonWidth,
44
+ skeletonHeight,
45
+ state,
46
+ label,
47
+ mandatory,
48
+ mandatoryMessage,
49
+ helperMessage,
50
+ size
51
+ } = props;
52
+ const {
53
+ control
54
+ } = useFormContext();
55
+ const isSkeleton = useModuleSkeleton();
56
+ const {
57
+ isFocus,
58
+ isTabSelected,
59
+ handlerFocus,
60
+ handlerOnKeyUp,
61
+ handlerOnBlur
62
+ } = useFormFocus();
63
+ const ownerState = {
64
+ isFocus: !isSkeleton ? isFocus : false,
65
+ isTabSelected: !isSkeleton ? isTabSelected : false
66
+ };
67
+ const classes = RHFPeriodUtilityClasses(ownerState);
68
+ return /* @__PURE__ */ jsx(RHFPeriodRoot, {
69
+ className: classes.root,
70
+ tabIndex: 0,
71
+ onFocus: handlerFocus,
72
+ onBlur: handlerOnBlur,
73
+ onKeyUp: handlerOnKeyUp,
74
+ children: /* @__PURE__ */ jsx(Controller, {
75
+ name,
76
+ control,
77
+ render: ({
78
+ field: {
79
+ onChange,
80
+ value
81
+ },
82
+ fieldState: {
83
+ error
84
+ }
85
+ }) => {
86
+ console.log("value RHFPeriod", value);
87
+ return /* @__PURE__ */ jsxs(Fragment, {
88
+ children: [label && /* @__PURE__ */ jsx(FieldLabel, {
89
+ label,
90
+ mandatory,
91
+ mandatoryMessage,
92
+ helperMessage
93
+ }), /* @__PURE__ */ jsx(Period, {
94
+ value,
95
+ onChange,
96
+ state: !!error === true ? "error" : state,
97
+ readOnly,
98
+ skeletonWidth,
99
+ skeletonHeight,
100
+ size
101
+ }), error && /* @__PURE__ */ jsx(HelperText, {
102
+ variant: "error",
103
+ message: error.message || ""
104
+ })]
105
+ });
106
+ }
107
+ })
108
+ });
109
+ };
110
+ export {
111
+ RHFPeriod as R
112
+ };
@@ -6,3 +6,7 @@ export interface RHFPeriodProps extends Pick<PeriodProps, 'readOnly' | 'skeleton
6
6
  state?: PeriodState;
7
7
  label?: string;
8
8
  }
9
+ export interface OwnerState {
10
+ isFocus: boolean;
11
+ isTabSelected: boolean;
12
+ }
@@ -11,6 +11,7 @@ export interface RHFTextFieldClassesType {
11
11
  sizeSmall: string;
12
12
  sizeMedium: string;
13
13
  isFocus: string;
14
+ isTabSelected: string;
14
15
  isDisabled: string;
15
16
  }
16
17
  export declare type RHFTextFieldClassesKey = keyof RHFTextFieldClassesType;
@@ -1,7 +1,7 @@
1
1
  import { useModuleSkeleton, useEnvironment } from "@m4l/core";
2
2
  import { styled, Skeleton, generateUtilityClasses, TextField, InputAdornment, generateUtilityClass } from "@mui/material";
3
3
  import { forwardRef, useState, useEffect } from "react";
4
- import { I as IconButton } from "../../mui_extended/IconButton/index.383f5496.js";
4
+ import { I as IconButton } from "../../mui_extended/IconButton/index.63a9d74c.js";
5
5
  import { useFormContext, Controller } from "react-hook-form";
6
6
  import { T as TEST_PROP_ID } from "../../../test/constants_no_mock.86c553a9.js";
7
7
  import { jsxs, jsx, Fragment } from "react/jsx-runtime";
@@ -9,7 +9,8 @@ import { unstable_composeClasses } from "@mui/base";
9
9
  import { g as getComponentUtilityClass } from "../../../utils/index.de903261.js";
10
10
  import { H as HelperText } from "../../HelperText/index.7d2afdb3.js";
11
11
  import { useResponsiveDesktop } from "@m4l/graphics";
12
- import { F as FieldLabel } from "../../FieldLabel/index.1da2a28d.js";
12
+ import { u as useFormFocus } from "../../../vendor.aa97e825.js";
13
+ import { F as FieldLabel } from "../../FieldLabel/index.61d55577.js";
13
14
  const SkeletonTextFieldRoot = styled("div")(() => ({
14
15
  display: "flex",
15
16
  flexDirection: "column",
@@ -104,7 +105,8 @@ generateUtilityClasses(
104
105
  "variantError",
105
106
  "sizeSmall",
106
107
  "sizeMedium",
107
- "isFocus"
108
+ "isFocus",
109
+ "isTabSelected"
108
110
  ]
109
111
  );
110
112
  const getRHFTextFieldClassesByState = (ownerState) => {
@@ -114,7 +116,8 @@ const getRHFTextFieldClassesByState = (ownerState) => {
114
116
  ownerState.type === "password" ? "variantPassword" : "variantText",
115
117
  ownerState.size === "small" && "sizeSmall",
116
118
  ownerState.size === "medium" && "sizeMedium",
117
- ownerState.focus && "isFocus",
119
+ ownerState.isFocus && "isFocus",
120
+ ownerState.isTabSelected && "isTabSelected",
118
121
  ownerState.disabled && "isDisabled",
119
122
  ownerState.variant === "info" && "variantInfo",
120
123
  ownerState.variant === "success" && "variantSuccess",
@@ -154,9 +157,16 @@ const RHFTextField = forwardRef((props, ref) => {
154
157
  errors
155
158
  }
156
159
  } = useFormContext();
157
- const [isFocus, setIsFocus] = useState(false);
158
160
  const [currentVariant, setCurrentVariant] = useState(null);
161
+ const {
162
+ isFocus,
163
+ isTabSelected,
164
+ handlerFocus,
165
+ handlerOnKeyUp,
166
+ handlerOnBlur
167
+ } = useFormFocus();
159
168
  const isDesktop = useResponsiveDesktop();
169
+ const isSkeleton = useModuleSkeleton();
160
170
  useEffect(() => {
161
171
  if (errors[nameRHF]) {
162
172
  setCurrentVariant("error");
@@ -166,23 +176,21 @@ const RHFTextField = forwardRef((props, ref) => {
166
176
  setCurrentVariant(null);
167
177
  }
168
178
  }, [errors[nameRHF], variant, control]);
169
- const handleFocus = () => {
170
- setIsFocus(true);
171
- };
172
- const handleBlur = () => {
173
- setIsFocus(false);
174
- };
175
179
  const ownerState = {
176
180
  type: type === "password" ? "password" : "text",
177
181
  size: !isDesktop ? "medium" : size,
178
- focus: isFocus,
182
+ isFocus: !isSkeleton ? isFocus : false,
183
+ isTabSelected: !isSkeleton ? isTabSelected : false,
179
184
  variant: currentVariant,
180
185
  disabled
181
186
  };
182
187
  const classes = getRHFTextFieldClassesByState(ownerState);
183
- const isSkeleton = useModuleSkeleton();
184
188
  return /* @__PURE__ */ jsx(RHFTextFieldRoot, {
185
189
  className: classes.root,
190
+ tabIndex: 0,
191
+ onFocus: handlerFocus,
192
+ onBlur: handlerOnBlur,
193
+ onKeyUp: handlerOnKeyUp,
186
194
  role: "textbox",
187
195
  ...process.env.NODE_ENV !== "production" ? {
188
196
  [TEST_PROP_ID]: `${RHFTEXTFIELD_ROOT_TEST_ID}_${nameRHF}`
@@ -226,8 +234,6 @@ const RHFTextField = forwardRef((props, ref) => {
226
234
  },
227
235
  autoComplete,
228
236
  onChange: onInternalChange,
229
- onFocus: handleFocus,
230
- onBlur: handleBlur,
231
237
  value: type === "number" ? isNaN(value) ? 0 : value : value || "",
232
238
  name,
233
239
  inputProps: {
@@ -14,6 +14,7 @@ export interface RHFTextFieldProps extends Omit<TextFieldProps, 'size' | 'inputP
14
14
  }
15
15
  export interface RHFTextFieldState extends Pick<RHFTextFieldProps, 'size' | 'disabled'> {
16
16
  type: 'password' | 'text';
17
- focus: boolean;
17
+ isFocus: boolean;
18
+ isTabSelected: boolean;
18
19
  variant: RHFTextFieldVariants | 'error' | null;
19
20
  }
@@ -2,14 +2,14 @@ import { useCallback } from "react";
2
2
  import { useFormContext, Controller } from "react-hook-form";
3
3
  import require$$0 from "lodash/isString";
4
4
  import { useDropzone } from "react-dropzone";
5
- import { I as Image } from "../../Image/index.39b3b9d9.js";
5
+ import { I as Image } from "../../Image/index.fd6f2c5f.js";
6
6
  import { useEnvironment, useModuleDictionary, useModuleSkeleton } from "@m4l/core";
7
7
  import { styled, Skeleton, generateUtilityClasses, generateUtilityClass } from "@mui/material";
8
8
  import { T as TEST_PROP_ID } from "../../../test/constants_no_mock.86c553a9.js";
9
9
  import { jsxs, jsx, Fragment } from "react/jsx-runtime";
10
10
  import { unstable_composeClasses } from "@mui/base";
11
11
  import { T as Typography } from "../../mui_extended/Typography/index.379dd374.js";
12
- import { B as Button } from "../../mui_extended/Button/index.93389adb.js";
12
+ import { B as Button } from "../../mui_extended/Button/index.c6befaeb.js";
13
13
  import { H as HelperText } from "../../HelperText/index.7d2afdb3.js";
14
14
  const UploadImageRoot = styled("div")(({
15
15
  theme
@@ -2,9 +2,9 @@ import { m as modalUtilityClasses } from "./index.61389369.js";
2
2
  import { useEnvironment } from "@m4l/core";
3
3
  import clsx from "clsx";
4
4
  import { jsxs, jsx } from "react/jsx-runtime";
5
- import { I as IconButton } from "../mui_extended/IconButton/index.383f5496.js";
6
- import { I as Icon } from "../Icon/index.8c744412.js";
7
- import { u as useModal } from "../../hooks/useModal/index.2f1d6a07.js";
5
+ import { I as IconButton } from "../mui_extended/IconButton/index.63a9d74c.js";
6
+ import { I as Icon } from "../Icon/index.1976cb37.js";
7
+ import { u as useModal } from "../../hooks/useModal/index.66a0c82e.js";
8
8
  const Header = (props) => {
9
9
  const {
10
10
  title,
@@ -1,13 +1,13 @@
1
- import { A as Actions } from "../CommonActions/components/Actions/index.389f9b28.js";
1
+ import { A as Actions } from "../CommonActions/components/Actions/index.16946bfd.js";
2
2
  import { Typography } from "@mui/material";
3
3
  import { useModuleDictionary, useEnvironment } from "@m4l/core";
4
- import { u as useModal } from "../../hooks/useModal/index.2f1d6a07.js";
4
+ import { u as useModal } from "../../hooks/useModal/index.66a0c82e.js";
5
5
  import { jsx, jsxs } from "react/jsx-runtime";
6
- import { I as Image } from "../Image/index.39b3b9d9.js";
6
+ import { I as Image } from "../Image/index.fd6f2c5f.js";
7
7
  import { m as modalUtilityClasses } from "./index.61389369.js";
8
- import { W as WindowBase } from "./WindowBase.dd1d2d7b.js";
9
- import { A as ActionCancel } from "../CommonActions/components/ActionCancel/index.33a748be.js";
10
- import { A as ActionIntro } from "../CommonActions/components/ActionIntro/index.ac7cd0ee.js";
8
+ import { W as WindowBase } from "./WindowBase.f38260ec.js";
9
+ import { A as ActionCancel } from "../CommonActions/components/ActionCancel/index.e03455db.js";
10
+ import { A as ActionIntro } from "../CommonActions/components/ActionIntro/index.5ba2ef5f.js";
11
11
  const dictionary = {
12
12
  MESSAGE: "common_actions.confirm_quit_msg"
13
13
  };
@@ -1,12 +1,12 @@
1
1
  import { generateUtilityClasses, generateUtilityClass, styled, Accordion as Accordion$1, AccordionSummary, AccordionDetails } from "@mui/material";
2
- import { I as IconButton } from "../IconButton/index.383f5496.js";
2
+ import { I as IconButton } from "../IconButton/index.63a9d74c.js";
3
3
  import { useEnvironment } from "@m4l/core";
4
4
  import { unstable_composeClasses } from "@mui/base";
5
5
  import clsx from "clsx";
6
6
  import { T as TEST_PROP_ID } from "../../../test/constants_no_mock.86c553a9.js";
7
7
  import { g as getNameDataTestId } from "../../../test/getNameDataTestId.14875ec7.js";
8
8
  import { jsx, jsxs } from "react/jsx-runtime";
9
- import { I as Icon } from "../../Icon/index.8c744412.js";
9
+ import { I as Icon } from "../../Icon/index.1976cb37.js";
10
10
  import { T as Typography } from "../Typography/index.379dd374.js";
11
11
  const componentName = "M4LAccordion";
12
12
  generateUtilityClasses(componentName, [
@@ -5,7 +5,7 @@ import { unstable_composeClasses } from "@mui/base";
5
5
  import clsx from "clsx";
6
6
  import { jsx } from "react/jsx-runtime";
7
7
  import { useMemo } from "react";
8
- import { I as Image } from "../../Image/index.39b3b9d9.js";
8
+ import { I as Image } from "../../Image/index.fd6f2c5f.js";
9
9
  import { T as TEST_PROP_ID } from "../../../test/constants_no_mock.86c553a9.js";
10
10
  import { LoadingButton as LoadingButton$1 } from "@mui/lab";
11
11
  import { T as Typography } from "../Typography/index.379dd374.js";
@@ -113,8 +113,6 @@ function ImageButton({
113
113
  src,
114
114
  width,
115
115
  height,
116
- useIntersectionObserver,
117
- skeletonVariant = "circle",
118
116
  tooltip,
119
117
  sx = {
120
118
  width,
@@ -129,12 +127,10 @@ function ImageButton({
129
127
  sx,
130
128
  ...other,
131
129
  children: /* @__PURE__ */ jsx(Image, {
132
- src,
133
- useIntersectionObserver,
134
- skeletonVariant
130
+ src
135
131
  })
136
132
  });
137
- }, [src, width, height, useIntersectionObserver, skeletonVariant, sx]);
133
+ }, [src, width, height, sx]);
138
134
  return /* @__PURE__ */ jsx(WrapperImageButton, {
139
135
  className: classes.root,
140
136
  ...process.env.NODE_ENV !== "production" ? {
@@ -5,7 +5,7 @@ import { unstable_composeClasses } from "@mui/base";
5
5
  import { useModuleSkeleton } from "@m4l/core";
6
6
  import { jsx, Fragment, jsxs } from "react/jsx-runtime";
7
7
  import { forwardRef } from "react";
8
- import { F as FieldLabel } from "../FieldLabel/index.1da2a28d.js";
8
+ import { F as FieldLabel } from "../FieldLabel/index.61d55577.js";
9
9
  const COMPONENT_CLASS_NAME = "M4LCheckBox";
10
10
  generateUtilityClasses(COMPONENT_CLASS_NAME, [
11
11
  "root",
@@ -1,7 +1,6 @@
1
1
  export interface IconButtonClassesType {
2
2
  root: string;
3
3
  skeleton: string;
4
- sizeExtraSmall: string;
5
4
  sizemSall: string;
6
5
  sizeMedium: string;
7
6
  variantPrimary: string;
@@ -1,7 +1,7 @@
1
1
  import { useMemo, useState } from "react";
2
2
  import { useModuleDictionary, useModuleSkeleton } from "@m4l/core";
3
3
  import { Skeleton, styled, generateUtilityClasses, generateUtilityClass, Tooltip, IconButton as IconButton$1 } from "@mui/material";
4
- import { I as Icon } from "../../Icon/index.8c744412.js";
4
+ import { I as Icon } from "../../Icon/index.1976cb37.js";
5
5
  import { jsx, Fragment } from "react/jsx-runtime";
6
6
  import { unstable_composeClasses } from "@mui/base";
7
7
  import clsx from "clsx";
@@ -12,8 +12,6 @@ const SkeletonIconButton = (props) => {
12
12
  } = props;
13
13
  return /* @__PURE__ */ jsx(Skeleton, {
14
14
  variant: "rectangular",
15
- width: "100%",
16
- height: "100%",
17
15
  className: classes.skeleton,
18
16
  "data-testid": "SkeletonIconButton"
19
17
  });
@@ -27,7 +25,6 @@ const componentName = "M4LIconButton";
27
25
  const iconButtonClasses = generateUtilityClasses(componentName, [
28
26
  "root",
29
27
  "skeleton",
30
- "sizeExtraSmall",
31
28
  "sizemSall",
32
29
  "sizeMedium",
33
30
  "variantPrimary",
@@ -43,7 +40,7 @@ function getIconButtonUtilityClass(slot) {
43
40
  }
44
41
  const useUtilityClasses = (ownerState) => {
45
42
  const slots = {
46
- root: ["root", ownerState.size === "extraSmall" && "sizeExtraSmall", ownerState.size === "small" && "sizeSmall", ownerState.size === "medium" && "sizeMedium", ownerState.variant === "primary" && ownerState.isSkeleton !== true && "variantPrimary", ownerState.variant === "secondary" && ownerState.isSkeleton !== true && "variantSecondary", ownerState.variant === "line" && ownerState.isSkeleton !== true && "variantLine", ownerState.isFocus && !ownerState.isDisabled && "isFocus", ownerState.isDisabled && "isDisabled"],
43
+ root: ["root", ownerState.size === "small" && "sizeSmall", ownerState.size === "medium" && "sizeMedium", ownerState.variant === "primary" && ownerState.isSkeleton !== true && "variantPrimary", ownerState.variant === "secondary" && ownerState.isSkeleton !== true && "variantSecondary", ownerState.variant === "line" && ownerState.isSkeleton !== true && "variantLine", ownerState.isFocus && !ownerState.isDisabled && "isFocus", ownerState.isDisabled && "isDisabled"],
47
44
  skeleton: ["skeleton"]
48
45
  };
49
46
  const composedClasses = unstable_composeClasses(slots, getIconButtonUtilityClass, {});
@@ -1,7 +1,7 @@
1
1
  import { IconProps } from '../../Icon/types';
2
2
  import { IconButtonProps as MUIIconButtonProps } from '@mui/material';
3
3
  export declare type IconButtonVariants = 'primary' | 'secondary' | 'line';
4
- export declare type IconButtonSize = 'extraSmall' | 'small' | 'medium';
4
+ export declare type IconButtonSize = 'small' | 'medium';
5
5
  export interface IconButtonProps extends Omit<IconProps, 'size'>, Omit<MUIIconButtonProps, 'size'> {
6
6
  tooltip?: string;
7
7
  dictionaryTooltipId?: string;
@@ -1,2 +1,2 @@
1
1
  import { ImageButtonProps } from './types';
2
- export declare function ImageButton({ src, width, height, useIntersectionObserver, skeletonVariant, tooltip, sx, ...other }: ImageButtonProps): import("react/jsx-runtime").JSX.Element;
2
+ export declare function ImageButton({ src, width, height, tooltip, sx, ...other }: ImageButtonProps): import("react/jsx-runtime").JSX.Element;
@@ -2,12 +2,12 @@ import React__default, { useState, useEffect, useMemo } from "react";
2
2
  import { useEnvironment, useModuleDictionary } from "@m4l/core";
3
3
  import { styled, IconButton, generateUtilityClasses, generateUtilityClass, useTheme, MenuItem } from "@mui/material";
4
4
  import { P as Popover } from "../Popover/index.d85de73b.js";
5
- import { I as Icon } from "../../Icon/index.8c744412.js";
5
+ import { I as Icon } from "../../Icon/index.1976cb37.js";
6
6
  import clsx from "clsx";
7
7
  import { unstable_composeClasses } from "@mui/base";
8
8
  import { jsxs, Fragment, jsx } from "react/jsx-runtime";
9
9
  import { B as Badge } from "../Badge/index.09f5aee5.js";
10
- import { I as IconButton$1 } from "../IconButton/index.383f5496.js";
10
+ import { I as IconButton$1 } from "../IconButton/index.63a9d74c.js";
11
11
  styled(IconButton)(() => ({}));
12
12
  const LabelMemuItem = styled("div")(({
13
13
  theme
@@ -1,7 +1,7 @@
1
1
  import { useMemo } from "react";
2
2
  import { styled, generateUtilityClasses, generateUtilityClass, useTheme, Select, InputBase, MenuItem } from "@mui/material";
3
3
  import { unstable_composeClasses } from "@mui/base";
4
- import { I as IconButton } from "../IconButton/index.383f5496.js";
4
+ import { I as IconButton } from "../IconButton/index.63a9d74c.js";
5
5
  import { useEnvironment } from "@m4l/core";
6
6
  import { jsxs, jsx, Fragment } from "react/jsx-runtime";
7
7
  import { useResponsiveDesktop } from "@m4l/graphics";
@@ -1,5 +1,5 @@
1
1
  import clsx from "clsx";
2
- import { B as Button, b as buttonClasses } from "../Button/index.93389adb.js";
2
+ import { B as Button, b as buttonClasses } from "../Button/index.c6befaeb.js";
3
3
  import { w as withToggle } from "../../../hocs/withToggle/index.e44eb0da.js";
4
4
  import { jsx } from "react/jsx-runtime";
5
5
  const ToggleAbleButton = ({