@m4l/components 0.1.42 → 0.1.44

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 (251) hide show
  1. package/@types/types.d.ts +117 -0
  2. package/components/CmpDisenoTest/index.d.ts +4 -0
  3. package/components/CmpDisenoTest/types.d.ts +20 -0
  4. package/components/CommonActions/components/ActionCancel/{index.9230c57b.js → index.a81752ef.js} +1 -1
  5. package/components/CommonActions/components/ActionFormCancel/{index.ab514bd9.js → index.82569769.js} +25 -9
  6. package/components/CommonActions/components/ActionIntro/{index.a0a341c7.js → index.d567aebb.js} +1 -1
  7. package/components/CommonActions/components/Actions/{index.d3e1f36e.js → index.c8754d33.js} +19 -8
  8. package/components/DataGrid/formatters/columnConcatenatedValueFormatter/index.d.ts +3 -0
  9. package/components/DataGrid/formatters/columnConcatenatedValueFormatter/types.d.ts +6 -0
  10. package/components/DataGrid/formatters/index.d.ts +1 -0
  11. package/components/DataGrid/{index.67260455.js → index.fd736623.js} +42 -15
  12. package/components/DynamicFilter/contexts/BaseContext/types.d.ts +3 -0
  13. package/components/DynamicFilter/{index.071aa795.js → index.4c43cc99.js} +208 -110
  14. package/components/DynamicFilter/index.d.ts +4 -1
  15. package/components/DynamicFilter/styles.d.ts +4 -6
  16. package/components/DynamicFilter/subcomponents/PopupEditFilter/styles.d.ts +7 -0
  17. package/components/DynamicFilter/types.d.ts +4 -0
  18. package/components/DynamicFilter/utils/Clases/index.d.ts +20 -0
  19. package/components/DynamicFilter/utils/Clases/types.d.ts +17 -0
  20. package/components/ErrorLabel/index.73f9362c.js +65 -0
  21. package/components/ErrorLabel/index.d.ts +8 -1
  22. package/components/ErrorLabel/styles.d.ts +1 -1
  23. package/components/ErrorLabel/types.d.ts +2 -1
  24. package/components/ErrorLabel/utils/Clases/index.d.ts +6 -0
  25. package/components/ErrorLabel/utils/Clases/types.d.ts +3 -0
  26. package/components/Icon/Icon.d.ts +8 -0
  27. package/components/Icon/classes/constants.d.ts +1 -0
  28. package/components/Icon/classes/index.d.ts +9 -0
  29. package/components/Icon/classes/types.d.ts +17 -0
  30. package/components/Icon/index.d.ts +2 -3
  31. package/components/Icon/{index.8d754623.js → index.f6e8d810.js} +58 -11
  32. package/components/Icon/styles.d.ts +1 -1
  33. package/components/Icon/types.d.ts +5 -0
  34. package/components/Image/Image.d.ts +9 -0
  35. package/components/Image/{index.93d5f37f.js → index.aa24e982.js} +107 -43
  36. package/components/Image/index.d.ts +2 -4
  37. package/components/Image/styles.d.ts +2 -2
  38. package/components/Image/subcomponents/LazyLoadComponent/index.d.ts +5 -0
  39. package/components/Image/subcomponents/LazyLoadComponent/styles.d.ts +2 -0
  40. package/components/Image/types.d.ts +17 -1
  41. package/components/Image/utils/classes/constant.d.ts +1 -0
  42. package/components/Image/utils/classes/index.d.ts +12 -0
  43. package/components/Image/utils/classes/types.d.ts +9 -0
  44. package/components/LanguagePopover/LanguagePopover.d.ts +8 -0
  45. package/components/LanguagePopover/classes/constants.d.ts +1 -0
  46. package/components/LanguagePopover/classes/index.d.ts +9 -0
  47. package/components/LanguagePopover/classes/types.d.ts +7 -0
  48. package/components/LanguagePopover/{index.cbc4b282.js → index.26b694ef.js} +57 -16
  49. package/components/LanguagePopover/index.d.ts +2 -2
  50. package/components/LanguagePopover/styles.d.ts +1 -0
  51. package/components/LanguagePopover/types.d.ts +9 -0
  52. package/components/ModalDialog/{index.a684827f.js → index.d605b574.js} +5 -5
  53. package/components/NoItemSelected/{index.46d2f632.js → index.9636ec8a.js} +1 -1
  54. package/components/NoItemSelected/styles.d.ts +1 -1
  55. package/components/ObjectLogs/{index.4a859658.js → index.91d29e9e.js} +22 -11
  56. package/components/PaperForm/{index.c5948756.js → index.0114aa9b.js} +1 -1
  57. package/components/Period/{index.abe445bd.js → index.c439d1ed.js} +20 -9
  58. package/components/Resizeable/{index.c96c0f09.js → index.8a442a8b.js} +1 -1
  59. package/components/areas/components/Area/types.d.ts +24 -12
  60. package/components/areas/components/AreasAdmin/{index.6794b22f.js → index.7a526b73.js} +24 -15
  61. package/components/areas/components/AreasContainer/{index.a2f8899b.js → index.ca690110.js} +9 -10
  62. package/components/areas/components/GridLayout/{index.b9c1e846.js → index.4fb84fff.js} +28 -18
  63. package/components/areas/components/Window/{index.252fbf4e.js → index.76143c30.js} +105 -85
  64. package/components/areas/components/Window/styles.d.ts +5 -2
  65. package/components/areas/components/Window/subcomponents/InnerForHooks/index.d.ts +4 -0
  66. package/components/areas/components/Window/subcomponents/InnerForHooks/styles.d.ts +2 -0
  67. package/components/areas/components/Window/subcomponents/{Component → InnerForHooks/subcomponents/Component}/index.d.ts +4 -3
  68. package/components/areas/components/Window/subcomponents/{MicroFrontend → InnerForHooks/subcomponents/MicroFrontend}/index.d.ts +1 -1
  69. package/components/areas/components/Window/subcomponents/{MicroFrontend → InnerForHooks/subcomponents/MicroFrontend}/subcomponents/MFLoader/index.d.ts +1 -1
  70. package/components/areas/components/Window/subcomponents/InnerForHooks/subcomponents/MicroFrontend/types.d.ts +8 -0
  71. package/components/areas/components/WindowPopUp/index.33bc0a5a.js +117 -0
  72. package/components/areas/components/WindowPopUp/index.d.ts +2 -1
  73. package/components/areas/components/{index.7d6cd649.js → index.4b828081.js} +18 -13
  74. package/components/areas/components/index.d.ts +2 -1
  75. package/components/areas/contexts/AreaContext/helper.d.ts +12 -0
  76. package/components/areas/contexts/AreaContext/index.d.ts +2 -2
  77. package/components/areas/contexts/AreaContext/index.ec85aee7.js +392 -0
  78. package/components/areas/contexts/AreaContext/store.d.ts +49 -0
  79. package/components/areas/contexts/AreaContext/types.d.ts +8 -16
  80. package/components/areas/contexts/AreasContext/index.d.ts +10 -2
  81. package/components/areas/contexts/AreasContext/index.e65fd347.js +204 -0
  82. package/components/areas/contexts/AreasContext/store.d.ts +38 -0
  83. package/components/areas/contexts/AreasContext/types.d.ts +1 -13
  84. package/components/areas/contexts/DynamicMFParmsContext/index.c19cb8cc.js +43 -0
  85. package/components/areas/contexts/DynamicMFParmsContext/index.d.ts +13 -4
  86. package/components/areas/contexts/DynamicMFParmsContext/store.d.ts +20 -0
  87. package/components/areas/contexts/DynamicMFParmsContext/types.d.ts +4 -16
  88. package/components/areas/contexts/WindowContext/helper.d.ts +1 -0
  89. package/components/areas/contexts/WindowContext/index.d.ts +13 -0
  90. package/components/areas/contexts/WindowContext/store.d.ts +31 -0
  91. package/components/areas/contexts/WindowContext/types.d.ts +5 -0
  92. package/components/areas/contexts/WindowToolsMFContext/index.d.ts +6 -0
  93. package/components/areas/contexts/WindowToolsMFContext/types.d.ts +21 -0
  94. package/components/areas/contexts/index.137257b8.js +203 -0
  95. package/components/areas/contexts/index.d.ts +4 -1
  96. package/components/areas/hooks/index.b8c93059.js +27 -0
  97. package/components/areas/hooks/index.d.ts +2 -0
  98. package/components/areas/hooks/useArea/index.89306f6a.js +20 -0
  99. package/components/areas/hooks/useArea/index.d.ts +2 -0
  100. package/components/areas/hooks/useAreas/index.d.ts +11 -1
  101. package/components/areas/hooks/useDynamicMFParameters/index.041a666b.js +14 -0
  102. package/components/areas/hooks/useDynamicMFParameters/index.d.ts +11 -1
  103. package/components/areas/hooks/useWindow/index.d.ts +11 -0
  104. package/components/areas/hooks/useWindowToolsMF/index.d.ts +1 -0
  105. package/components/areas/index.a2586fb3.js +21 -0
  106. package/components/areas/index.d.ts +1 -0
  107. package/components/formatters/BooleanFormatter/{index.3a9b16c8.js → index.b3fb8a75.js} +1 -1
  108. package/components/formatters/ConcatenatedFormatter/index.d.ts +8 -0
  109. package/components/formatters/ConcatenatedFormatter/types.d.ts +11 -0
  110. package/components/formatters/PeriodFormatter/index.d.ts +8 -0
  111. package/components/formatters/PeriodFormatter/types.d.ts +13 -0
  112. package/components/formatters/dictionary.d.ts +9 -0
  113. package/components/formatters/index.0368bab3.js +127 -0
  114. package/components/formatters/index.d.ts +2 -0
  115. package/components/hook-form/RHFAutocomplete/{index.de93fe01.js → index.74add0d0.js} +1 -1
  116. package/components/hook-form/RHFAutocompleteAsync/{index.ca696cce.js → index.0aa3c224.js} +1 -1
  117. package/components/hook-form/RHFCheckbox/RHFCheckbox.d.ts +8 -0
  118. package/components/hook-form/RHFCheckbox/classes/index.d.ts +7 -0
  119. package/components/hook-form/RHFCheckbox/classes/types.d.ts +5 -0
  120. package/components/hook-form/RHFCheckbox/index.ebfe1e3c.js +110 -0
  121. package/components/hook-form/RHFCheckbox/styles.d.ts +14 -0
  122. package/components/hook-form/RHFCheckbox/subcomponents/Skeleton/index.d.ts +2 -1
  123. package/components/hook-form/RHFCheckbox/subcomponents/Skeleton/types.d.ts +3 -0
  124. package/components/hook-form/RHFPeriod/{index.3772295b.js → index.3c5e5fb7.js} +2 -2
  125. package/components/hook-form/RHFTextField/RHFTextField.d.ts +8 -0
  126. package/components/hook-form/RHFTextField/classes/constants.d.ts +1 -0
  127. package/components/hook-form/RHFTextField/classes/index.d.ts +7 -0
  128. package/components/hook-form/RHFTextField/classes/types.d.ts +10 -0
  129. package/components/hook-form/RHFTextField/index.57f138f7.js +219 -0
  130. package/components/hook-form/RHFTextField/index.d.ts +2 -3
  131. package/components/hook-form/RHFTextField/styles.d.ts +3 -0
  132. package/components/hook-form/RHFTextField/subcomponents/Skeleton/types.d.ts +6 -1
  133. package/components/hook-form/RHFTextField/types.d.ts +0 -1
  134. package/components/hook-form/RHFTextFieldPassword/RHFTextFieldPassword.d.ts +9 -0
  135. package/components/hook-form/RHFTextFieldPassword/classes/index.d.ts +6 -0
  136. package/components/hook-form/RHFTextFieldPassword/classes/types.d.ts +4 -0
  137. package/components/hook-form/RHFTextFieldPassword/index.d.ts +2 -3
  138. package/components/hook-form/RHFTextFieldPassword/styles.d.ts +2 -0
  139. package/components/hook-form/RHFUpload/{index.d5cc7c13.js → index.7fdff30f.js} +1 -1
  140. package/components/hook-form/index.d.ts +3 -3
  141. package/components/index.d.ts +3 -2
  142. package/components/modal/{WindowBase.04439b8e.js → WindowBase.ff74f597.js} +3 -4
  143. package/components/modal/{WindowConfirm.0b8a6818.js → WindowConfirm.f2cc1072.js} +22 -11
  144. package/components/modal/index.f62c55c7.js +29 -0
  145. package/components/mui_extended/Accordion/{index.a541c71c.js → index.1d513477.js} +2 -2
  146. package/components/mui_extended/Button/Button.d.ts +8 -0
  147. package/components/mui_extended/Button/classes/constants.d.ts +1 -0
  148. package/components/mui_extended/Button/classes/index.d.ts +7 -0
  149. package/components/mui_extended/Button/classes/types.d.ts +5 -0
  150. package/components/mui_extended/Button/index.8406ed5b.js +150 -0
  151. package/components/mui_extended/Button/index.d.ts +2 -3
  152. package/components/mui_extended/Button/styles.d.ts +13 -0
  153. package/components/mui_extended/IconButton/IconButton.d.ts +9 -0
  154. package/components/mui_extended/IconButton/classes/constants.d.ts +1 -0
  155. package/components/mui_extended/IconButton/classes/index.d.ts +7 -0
  156. package/components/mui_extended/IconButton/classes/types.d.ts +5 -0
  157. package/components/mui_extended/IconButton/index.1318a283.js +100 -0
  158. package/components/mui_extended/IconButton/index.d.ts +2 -4
  159. package/components/mui_extended/IconButton/styles.d.ts +2 -0
  160. package/components/mui_extended/IconButton/subcomponents/SkeletonIconButton/index.d.ts +2 -1
  161. package/components/mui_extended/IconButton/subcomponents/SkeletonIconButton/types.d.ts +3 -0
  162. package/components/mui_extended/ImageButton/ImageButton.d.ts +6 -0
  163. package/components/mui_extended/ImageButton/styles.d.ts +2 -0
  164. package/components/mui_extended/ImageButton/types.d.ts +0 -2
  165. package/components/mui_extended/ImageButton/utils/Clases/constants.d.ts +1 -0
  166. package/components/mui_extended/ImageButton/utils/Clases/index.d.ts +6 -0
  167. package/components/mui_extended/ImageButton/utils/Clases/types.d.ts +3 -0
  168. package/components/mui_extended/MenuActions/{index.ee17bddd.js → index.1261168c.js} +2 -2
  169. package/components/mui_extended/Pager/{index.74d3f5fc.js → index.80ccec47.js} +1 -1
  170. package/components/mui_extended/Popover/Popover.d.ts +9 -0
  171. package/components/mui_extended/Popover/classes/index.d.ts +8 -0
  172. package/components/mui_extended/Popover/classes/types.d.ts +17 -0
  173. package/components/mui_extended/Popover/{index.53c77d23.js → index.58c49cc0.js} +55 -13
  174. package/components/mui_extended/Popover/styles.d.ts +1 -0
  175. package/components/mui_extended/Popover/subcomponts/ArrowIcon/index.d.ts +3 -0
  176. package/components/mui_extended/Popover/types.d.ts +1 -1
  177. package/components/mui_extended/Typography/index.be3a279a.js +63 -0
  178. package/components/mui_extended/Typography/index.d.ts +3 -0
  179. package/components/mui_extended/Typography/styles.d.ts +2 -0
  180. package/components/mui_extended/Typography/utils/Clases/index.d.ts +6 -0
  181. package/components/mui_extended/Typography/utils/Clases/types.d.ts +3 -0
  182. package/components/mui_extended/index.3106c913.js +19 -0
  183. package/components/mui_extended/index.d.ts +5 -4
  184. package/contexts/ModalContext/{index.b90eec94.js → index.4442afd9.js} +1 -1
  185. package/contexts/RHFormContext/{index.d88e6e27.js → index.828b60ad.js} +1 -1
  186. package/contexts/index.d.ts +1 -1
  187. package/hooks/index.d.ts +0 -1
  188. package/hooks/useFormAddEdit/{index.d4845f1a.js → index.15de3ba8.js} +5 -0
  189. package/hooks/useModal/{index.d14edee3.js → index.2f5abe84.js} +1 -1
  190. package/index.js +165 -109
  191. package/package.json +12 -8
  192. package/{react-draggable.84d6b038.js → react-draggable.0eef011c.js} +1 -1
  193. package/{react-resizable.1d00271d.js → react-resizable.bb58c8fc.js} +103 -67
  194. package/utils/{index.899eb67b.js → index.e882b264.js} +26 -18
  195. package/vite-env.d.ts +2 -1
  196. package/components/DynamicFilter/components/PopupEditFilter/styles.d.ts +0 -6
  197. package/components/ErrorLabel/index.c8615f16.js +0 -20
  198. package/components/areas/components/Window/contexts/WindowContext/index.d.ts +0 -5
  199. package/components/areas/components/Window/contexts/WindowContext/types.d.ts +0 -13
  200. package/components/areas/components/Window/hooks/useWindow/index.d.ts +0 -1
  201. package/components/areas/components/WindowPopUp/index.214cf099.js +0 -120
  202. package/components/areas/components/WindowPopUp/styles.d.ts +0 -2
  203. package/components/areas/contexts/AreaContext/index.4894cf23.js +0 -286
  204. package/components/areas/contexts/AreasContext/index.cd8e4bee.js +0 -158
  205. package/components/areas/contexts/DynamicMFParmsContext/index.668bc2e2.js +0 -17
  206. package/components/areas/contexts/index.f9196fb2.js +0 -1
  207. package/components/areas/hooks/useArea/index.9b85ce24.js +0 -19
  208. package/components/areas/hooks/useDynamicMFParameters/index.e6a44ae3.js +0 -11
  209. package/components/areas/index.d1bf612c.js +0 -16
  210. package/components/formatters/dicctionary.d.ts +0 -3
  211. package/components/formatters/index.0b5f95d0.js +0 -21
  212. package/components/hook-form/RHFCheckbox/index.6dcec9e2.js +0 -68
  213. package/components/hook-form/RHFCheckbox/index.d.ts +0 -4
  214. package/components/hook-form/RHFTextField/index.b17d68f4.js +0 -146
  215. package/components/modal/index.8387e90e.js +0 -18
  216. package/components/mui_extended/Button/index.86a155a2.js +0 -101
  217. package/components/mui_extended/IconButton/index.82f16572.js +0 -63
  218. package/components/mui_extended/ImageButton/index.d.ts +0 -3
  219. package/components/mui_extended/Popover/index.d.ts +0 -4
  220. package/components/mui_extended/Typography/index.e5494696.js +0 -35
  221. package/components/mui_extended/index.85dfadf1.js +0 -16
  222. /package/components/DynamicFilter/{components → subcomponents}/ApplyedFilters/components/ApplyedFilter/index.d.ts +0 -0
  223. /package/components/DynamicFilter/{components → subcomponents}/ApplyedFilters/components/ApplyedFilter/styles.d.ts +0 -0
  224. /package/components/DynamicFilter/{components → subcomponents}/ApplyedFilters/index.d.ts +0 -0
  225. /package/components/DynamicFilter/{components → subcomponents}/ApplyedFilters/styles.d.ts +0 -0
  226. /package/components/DynamicFilter/{components → subcomponents}/ClearFilters/index.d.ts +0 -0
  227. /package/components/DynamicFilter/{components → subcomponents}/ClearFilters/styles.d.ts +0 -0
  228. /package/components/DynamicFilter/{components → subcomponents}/FilterButton/index.d.ts +0 -0
  229. /package/components/DynamicFilter/{components → subcomponents}/FilterButton/styles.d.ts +0 -0
  230. /package/components/DynamicFilter/{components → subcomponents}/InputFilter/index.d.ts +0 -0
  231. /package/components/DynamicFilter/{components → subcomponents}/InputFilter/styles.d.ts +0 -0
  232. /package/components/DynamicFilter/{components → subcomponents}/PopupEditFilter/index.d.ts +0 -0
  233. /package/components/DynamicFilter/{components → subcomponents}/fieldstypes/BooleanFilter/index.d.ts +0 -0
  234. /package/components/DynamicFilter/{components → subcomponents}/fieldstypes/BooleanFilter/styles.d.ts +0 -0
  235. /package/components/DynamicFilter/{components → subcomponents}/fieldstypes/DateTimeFilter/index.d.ts +0 -0
  236. /package/components/DynamicFilter/{components → subcomponents}/fieldstypes/DateTimeFilter/styles.d.ts +0 -0
  237. /package/components/DynamicFilter/{components → subcomponents}/fieldstypes/NumberFilter/index.d.ts +0 -0
  238. /package/components/DynamicFilter/{components → subcomponents}/fieldstypes/NumberFilter/styles.d.ts +0 -0
  239. /package/components/DynamicFilter/{components → subcomponents}/fieldstypes/StringFilter/index.d.ts +0 -0
  240. /package/components/DynamicFilter/{components → subcomponents}/fieldstypes/StringFilter/styles.d.ts +0 -0
  241. /package/components/DynamicFilter/{components → subcomponents}/fieldstypes/factory.d.ts +0 -0
  242. /package/components/DynamicFilter/{components → subcomponents}/fieldstypes/validations.d.ts +0 -0
  243. /package/components/areas/components/Window/subcomponents/{Header → InnerForHooks/subcomponents/Header}/index.d.ts +0 -0
  244. /package/components/areas/components/Window/subcomponents/{Header → InnerForHooks/subcomponents/Header}/skeleton.d.ts +0 -0
  245. /package/components/areas/components/Window/subcomponents/{Header → InnerForHooks/subcomponents/Header}/styles.d.ts +0 -0
  246. /package/components/areas/components/Window/subcomponents/{MicroFrontend → InnerForHooks/subcomponents/MicroFrontend}/subcomponents/MFLoader/subcomponents/LoadingMF/index.d.ts +0 -0
  247. /package/components/areas/components/Window/subcomponents/{MicroFrontend → InnerForHooks/subcomponents/MicroFrontend}/subcomponents/MFLoader/subcomponents/LoadingMF/styles.d.ts +0 -0
  248. /package/components/areas/components/Window/subcomponents/{MicroFrontend → InnerForHooks/subcomponents/MicroFrontend}/subcomponents/MFLoader/subcomponents/LoadingMF/subcomponents/NotFound/index.d.ts +0 -0
  249. /package/components/areas/components/Window/subcomponents/{MicroFrontend → InnerForHooks/subcomponents/MicroFrontend}/subcomponents/MFLoader/subcomponents/LoadingMF/subcomponents/NotFound/styles.d.ts +0 -0
  250. /package/components/areas/components/Window/subcomponents/{MicroFrontend → InnerForHooks/subcomponents/MicroFrontend}/subcomponents/MFLoader/subcomponents/LoadingMF/subcomponents/NotFound/types.d.ts +0 -0
  251. /package/components/areas/components/Window/subcomponents/{MicroFrontend → InnerForHooks/subcomponents/MicroFrontend}/subcomponents/MFLoader/subcomponents/LoadingMF/types.d.ts +0 -0
@@ -0,0 +1,65 @@
1
+ import { styled, generateUtilityClasses, generateUtilityClass } from "@mui/material";
2
+ import "react";
3
+ import "@m4l/core";
4
+ import "../Icon/index.f6e8d810.js";
5
+ import "@mui/material/styles";
6
+ import { jsx } from "react/jsx-runtime";
7
+ import "../mui_extended/IconButton/index.1318a283.js";
8
+ import "../mui_extended/Accordion/index.1d513477.js";
9
+ import "../mui_extended/Avatar/index.fe06afd7.js";
10
+ import "react-router-dom";
11
+ import "@mui/material/Button";
12
+ import "../mui_extended/Button/index.8406ed5b.js";
13
+ import "../Image/index.aa24e982.js";
14
+ import "@mui/lab";
15
+ import "../mui_extended/Popover/index.58c49cc0.js";
16
+ import "../mui_extended/MenuActions/index.1261168c.js";
17
+ import "../mui_extended/Pager/index.80ccec47.js";
18
+ import "../mui_extended/Tab/index.e0653a0a.js";
19
+ import { t as typographyClasses, T as Typography } from "../mui_extended/Typography/index.be3a279a.js";
20
+ import { unstable_composeClasses } from "@mui/base";
21
+ const ErrorLabelRoot = styled("div")(({
22
+ theme
23
+ }) => ({
24
+ margin: "8px 14px 0 14px",
25
+ [`& .${typographyClasses.root} .MuiTypography-root`]: {
26
+ color: theme.palette.error.main
27
+ },
28
+ ...theme.components?.M4LErrorLabel?.styleOverrides
29
+ }));
30
+ const errorLabelClasses = generateUtilityClasses("M4LErrorLabel", [
31
+ "root"
32
+ ]);
33
+ function getErrorLabelUtilityClass(slot) {
34
+ return generateUtilityClass("M4LErrorLabel", slot);
35
+ }
36
+ const useUtilityClasses = () => {
37
+ const slots = {
38
+ root: ["root"]
39
+ };
40
+ const composedClasses = unstable_composeClasses(slots, getErrorLabelUtilityClass, {});
41
+ return {
42
+ ...composedClasses
43
+ };
44
+ };
45
+ const ErrorLabel = (props) => {
46
+ const {
47
+ message,
48
+ skeletonWidth,
49
+ skeletongHeight
50
+ } = props;
51
+ const classes = useUtilityClasses();
52
+ return /* @__PURE__ */ jsx(ErrorLabelRoot, {
53
+ className: classes.root,
54
+ children: /* @__PURE__ */ jsx(Typography, {
55
+ variant: "caption",
56
+ skeletonWidth,
57
+ skeletongHeight,
58
+ children: message
59
+ })
60
+ });
61
+ };
62
+ export {
63
+ ErrorLabel as E,
64
+ errorLabelClasses as e
65
+ };
@@ -1,4 +1,11 @@
1
1
  /// <reference types="react" />
2
2
  import { ErrorLabelProps } from './types';
3
+ import { ErrorLabelClassesType } from './utils/Clases/types';
4
+ /**
5
+ * Provee de un texto que posee los estilos gráficos de error.
6
+ * @param props
7
+ * @returns
8
+ */
9
+ export { errorLabelClasses } from './utils/Clases/index';
10
+ export declare type ErrorLabelClassesKey = ErrorLabelClassesType;
3
11
  export declare const ErrorLabel: (props: ErrorLabelProps) => JSX.Element;
4
- export default ErrorLabel;
@@ -1,2 +1,2 @@
1
1
  /// <reference types="react" />
2
- export declare const Wrapper: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLParagraphElement>, HTMLParagraphElement>, {}>;
2
+ export declare const ErrorLabelRoot: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
@@ -1,3 +1,4 @@
1
- export interface ErrorLabelProps {
1
+ import { TypographyProps } from '../mui_extended/Typography/types';
2
+ export interface ErrorLabelProps extends Pick<TypographyProps, 'skeletonWidth' | 'skeletongHeight'> {
2
3
  message: string;
3
4
  }
@@ -0,0 +1,6 @@
1
+ import { ErrorLabelClassesType } from './types';
2
+ export declare const errorLabelClasses: ErrorLabelClassesType;
3
+ export declare function getErrorLabelUtilityClass(slot: string): string;
4
+ export declare const useUtilityClasses: () => {
5
+ root: string;
6
+ };
@@ -0,0 +1,3 @@
1
+ export interface ErrorLabelClassesType {
2
+ root: string;
3
+ }
@@ -0,0 +1,8 @@
1
+ /// <reference types="react" />
2
+ import { IconProps } from './types';
3
+ /**
4
+ * Provee de un medio por el cual se carga un icono svg en la plataforma web, aporta su versión provisional de carga en red.
5
+ * @param props
6
+ * @returns
7
+ */
8
+ export declare function Icon(props: IconProps): JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const componentName = "M4LIcon";
@@ -0,0 +1,9 @@
1
+ import { IconClassesType } from './types';
2
+ import { OwnerState } from '../types';
3
+ export declare const IconClasses: IconClassesType;
4
+ export declare function getIconClassesUtilityClass(slot: string): string;
5
+ export declare const useUtilityClasses: (ownerState: OwnerState) => {
6
+ root: string;
7
+ icon: string;
8
+ placeHolder: string;
9
+ };
@@ -0,0 +1,17 @@
1
+ export interface IconClassesType {
2
+ root: string;
3
+ icon: string;
4
+ placeHolder: string;
5
+ sizeExtraSmall: string;
6
+ sizeSmall: string;
7
+ sizeNormal: string;
8
+ sizeLarge: string;
9
+ colorInfo: string;
10
+ colorWarning: string;
11
+ colorError: string;
12
+ colorActive: string;
13
+ colorSelected: string;
14
+ colorDisabled: string;
15
+ rotationAngle: string;
16
+ }
17
+ export declare type IconClassesKey = keyof IconClassesType;
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
- import { IconProps } from './types';
3
- export declare function Icon(props: IconProps): JSX.Element;
1
+ export * from './Icon';
2
+ export * from './types';
@@ -1,9 +1,10 @@
1
1
  import { m } from "framer-motion";
2
2
  import { forwardRef, useState, useMemo, useEffect } from "react";
3
- import { IconButton, Box, styled } from "@mui/material";
3
+ import { IconButton, Box, styled, generateUtilityClasses, generateUtilityClass } from "@mui/material";
4
4
  import { jsx } from "react/jsx-runtime";
5
5
  import { useTheme } from "@mui/material/styles";
6
- import { g as getPaletteColor } from "../../utils/index.899eb67b.js";
6
+ import { g as getPaletteColor } from "../../utils/index.e882b264.js";
7
+ import { unstable_composeClasses } from "@mui/base";
7
8
  const varSmall = {
8
9
  hover: {
9
10
  scale: 1.1
@@ -59,6 +60,14 @@ const IconButtonAnimate = forwardRef(({
59
60
  })
60
61
  }));
61
62
  IconButtonAnimate.displayName = "IconButtonAnimate";
63
+ const IconRoot = styled("div")(({
64
+ theme
65
+ }) => ({
66
+ display: "flex",
67
+ justifyContent: "center",
68
+ alignItems: "center",
69
+ ...theme.components?.M4LIcon?.styleOverrides
70
+ }));
62
71
  const DivIcon = styled("div", {
63
72
  shouldForwardProp: (props) => props !== "src" && props !== "size" && props !== "bgColor" && props !== "rotationAngle" && props !== "angleTransition"
64
73
  })(({
@@ -83,20 +92,47 @@ const DivIcon = styled("div", {
83
92
  transition: `transform ${angleTransition}s ease-in-out`
84
93
  }
85
94
  }));
86
- const WrapperPlaceHolder = styled("div")(() => ({
87
- display: "flex",
88
- justifyContent: "center",
89
- alignItems: "center"
90
- }));
95
+ const componentName = "M4LIcon";
96
+ generateUtilityClasses(componentName, [
97
+ "root",
98
+ "icon",
99
+ "placeHolder",
100
+ "sizeExtraSmall",
101
+ "sizeSmall",
102
+ "sizeNormal",
103
+ "sizeLarge",
104
+ "colorInfo",
105
+ "colorWarning",
106
+ "colorError",
107
+ "colorActive",
108
+ "colorSelected",
109
+ "colorDisabled",
110
+ "rotationAngle"
111
+ ]);
112
+ function getIconClassesUtilityClass(slot) {
113
+ return generateUtilityClass(componentName, slot);
114
+ }
115
+ const useUtilityClasses = (ownerState) => {
116
+ const slots = {
117
+ root: ["root"],
118
+ icon: ["icon", ownerState.size === "extra-small" && "sizeExtraSmall", ownerState.size === "small" && "sizeSmall", ownerState.size === "normal" && "sizeNormal", ownerState.size === "large" && "sizeLarge", ownerState.bgColor === "info" && "colorInfo", ownerState.bgColor === "warning" && "colorWarning", ownerState.bgColor === "error" && "colorError", ownerState.bgColor === "active" && "colorActive", ownerState.bgColor === "selected" && "colorSelected", ownerState.bgColor === "disabled" && "colorDisabled", ownerState.rotationAngle ? "rotationAngle" : ""],
119
+ placeHolder: ["placeHolder"]
120
+ };
121
+ const composedClasses = unstable_composeClasses(slots, getIconClassesUtilityClass, {});
122
+ return {
123
+ ...composedClasses
124
+ };
125
+ };
91
126
  function Icon(props) {
92
127
  const {
93
128
  src,
94
129
  size = "small",
95
130
  bgColor = "action.active",
96
131
  rotationAngle,
97
- angleTransition
132
+ angleTransition,
133
+ testingProps
98
134
  } = props;
99
- const [resource, setResource] = useState(void 0);
135
+ const [resource, setResource] = useState(testingProps?.resource || void 0);
100
136
  const theme = useTheme();
101
137
  const finalSize = useMemo(() => {
102
138
  switch (size) {
@@ -130,16 +166,27 @@ function Icon(props) {
130
166
  mounted = false;
131
167
  };
132
168
  }, [src]);
169
+ const ownerState = {
170
+ size,
171
+ bgColor,
172
+ rotationAngle
173
+ };
174
+ const classes = useUtilityClasses(ownerState);
133
175
  const placeHolder = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI2LjMuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkNhcGFfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiCgkgdmlld0JveD0iMCAwIDcwIDcwIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA3MCA3MDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLnN0MHtmaWxsOiM2MzczODE7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik00NSw4LjdjMS40LTEuNSwzLjQtMi4zLDUuNC0yLjNzMy45LDAuOCw1LjQsMi4zczIuNCwzLjUsMi41LDUuN2MwLDIuMi0wLjksNC4yLTIuNCw1LjdzLTMuNSwyLjMtNS41LDIuMgoJCWMtMi4xLDAuMS00LTAuNy01LjUtMi4yYy0xLjQtMS41LTIuMy0zLjUtMi40LTUuN0M0Mi42LDEyLjIsNDMuNSwxMC4yLDQ1LDguN3oiLz4KCTxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik02OC40LDYyLjFjLTAuMywwLjUtMC43LDAuOC0xLjIsMS4xcy0xLDAuNC0xLjYsMC40SDQuM2MtMC42LDAtMS4xLTAuMS0xLjYtMC40cy0wLjktMC42LTEuMi0xLjEKCQljLTAuMi0wLjUtMC40LTEtMC40LTEuNXMwLjEtMS4xLDAuNC0xLjVsMjMtMzYuNGMwLjMtMC41LDAuNy0wLjgsMS4yLTEuMXMxLTAuNCwxLjYtMC40czEuMSwwLjEsMS42LDAuNHMwLjksMC42LDEuMiwxLjEKCQlsMTEuNSwxOC4yYzAuMiwwLjMsMC41LDAuNSwwLjgsMC43czAuNiwwLjMsMSwwLjNjMC4zLDAsMC43LTAuMSwxLTAuM3MwLjYtMC40LDAuOC0wLjdsMy4xLTQuOWMwLjMtMC41LDAuNy0wLjgsMS4yLTEuMQoJCXMxLTAuNCwxLjYtMC40czEuMSwwLjEsMS42LDAuNGMwLjUsMC4zLDAuOSwwLjYsMS4yLDEuMWwxNC42LDIzLjFjMC4zLDAuNSwwLjMsMSwwLjMsMS41UzY4LjcsNjEuNyw2OC40LDYyLjF6Ii8+CjwvZz4KPC9zdmc+Cg==";
134
- return /* @__PURE__ */ jsx(WrapperPlaceHolder, {
135
- className: "m4l_icon",
176
+ return /* @__PURE__ */ jsx(IconRoot, {
177
+ className: classes.root,
178
+ "data-testid": "IconRoot",
136
179
  children: resource ? /* @__PURE__ */ jsx(DivIcon, {
180
+ className: classes.icon,
181
+ "data-testid": "DivIcon",
137
182
  src: resource,
138
183
  size: finalSize,
139
184
  bgColor: getPaletteColor(theme.palette, bgColor),
140
185
  rotationAngle,
141
186
  angleTransition
142
187
  }) : /* @__PURE__ */ jsx("img", {
188
+ className: classes.placeHolder,
189
+ "data-testid": "img",
143
190
  src: placeHolder,
144
191
  alt: "icon_svg",
145
192
  width: finalSize,
@@ -1,4 +1,4 @@
1
1
  /// <reference types="react" />
2
2
  import { IconProps } from './types';
3
+ export declare const IconRoot: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
3
4
  export declare const DivIcon: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & IconProps, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
4
- export declare const WrapperPlaceHolder: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
@@ -1,11 +1,16 @@
1
1
  export declare type SizeIcon = 'extra-small' | 'small' | 'normal' | 'large' | string;
2
+ export interface TestingProps {
3
+ resource: any;
4
+ }
2
5
  export interface IconProps {
3
6
  src: string;
4
7
  bgColor?: string | 'info' | 'warning' | 'error' | 'active' | 'selected' | 'disabled';
5
8
  size?: SizeIcon;
6
9
  rotationAngle?: number;
7
10
  angleTransition?: number;
11
+ testingProps?: TestingProps;
8
12
  }
9
13
  export declare type WrapperPlaceHolderProps = {
10
14
  size: string;
11
15
  };
16
+ export declare type OwnerState = Pick<IconProps, 'bgColor' | 'size' | 'rotationAngle'>;
@@ -0,0 +1,9 @@
1
+ /// <reference types="react" />
2
+ import { ImageProps } from './types';
3
+ /**
4
+ * Provee de un medio por el cual se carga una imagen tipo mapa de bits, en la plataforma web, aporta su versión provisional de carga en red
5
+ * @param props
6
+ * @returns
7
+ */
8
+ export declare function Image(props: ImageProps): JSX.Element;
9
+ export default Image;
@@ -1,9 +1,10 @@
1
- import { useModuleSkeleton } from "@m4l/core";
1
+ import { useBase, useModuleSkeleton, BaseProvider } from "@m4l/core";
2
2
  import { forwardRef, useState, useRef, useImperativeHandle, useEffect, useMemo } from "react";
3
- import { jsx, Fragment, jsxs } from "react/jsx-runtime";
4
- import { styled, Skeleton as Skeleton$1 } from "@mui/material";
3
+ import { jsx, jsxs } from "react/jsx-runtime";
4
+ import { styled, Skeleton as Skeleton$1, generateUtilityClasses, generateUtilityClass } from "@mui/material";
5
+ import { unstable_composeClasses } from "@mui/base";
5
6
  function isIntersectionObserverAvailable() {
6
- return typeof window !== "undefined" && "IntersectionObserver" in window && "isIntersecting" in window.IntersectionObserverEntry.prototype;
7
+ return typeof window !== "undefined" && "IntersectionObserver" in window && "IntersectionObserverEntry" in window;
7
8
  }
8
9
  const checkIntersections = (entries) => {
9
10
  entries.forEach((entry) => {
@@ -51,61 +52,78 @@ const BasicIntersectComponent = forwardRef((props, ref) => {
51
52
  styleProp.minHeight = height;
52
53
  }
53
54
  return /* @__PURE__ */ jsx("span", {
54
- id: "IntersectComponent",
55
55
  ref: intersectComponentRef,
56
- style: styleProp
56
+ style: styleProp,
57
+ "data-testid": "spanObserved"
57
58
  });
58
59
  });
59
60
  BasicIntersectComponent.displayName = "IntersectComponent";
61
+ const WrapperLazyLoadComponent = styled("div")(() => ({}));
60
62
  function LazyLoadComponent(props) {
61
63
  const {
62
64
  children,
63
65
  useIntersectionObserver,
66
+ testingProps,
64
67
  ...other
65
68
  } = props;
66
- const [isVisible, setIsVisible] = useState(!(useIntersectionObserver && isIntersectionObserverAvailable()));
69
+ const [isVisible, setIsVisible] = useState(testingProps?.isVisible || !(useIntersectionObserver && isIntersectionObserverAvailable()));
70
+ const {
71
+ classes
72
+ } = useBase();
67
73
  if (isVisible) {
68
- return /* @__PURE__ */ jsx(Fragment, {
74
+ return /* @__PURE__ */ jsx(WrapperLazyLoadComponent, {
75
+ className: classes.lazyLoad,
76
+ "data-testid": "WrapperLazyLoadComponent",
69
77
  children
70
78
  });
71
79
  }
72
- return /* @__PURE__ */ jsx(BasicIntersectComponent, {
73
- useIntersectionObserver,
74
- setIsVisible,
75
- ...other
80
+ return /* @__PURE__ */ jsx(WrapperLazyLoadComponent, {
81
+ className: classes.lazyLoad,
82
+ "data-testid": "WrapperLazyLoadComponent",
83
+ children: /* @__PURE__ */ jsx(BasicIntersectComponent, {
84
+ useIntersectionObserver,
85
+ setIsVisible,
86
+ ...other
87
+ })
76
88
  });
77
89
  }
78
- const WrapperImage = styled("div", {
79
- shouldForwardProp: (props) => props !== "width" && props !== "height"
90
+ const ImageRoot = styled("div", {
91
+ shouldForwardProp: (props) => props !== "width" && props !== "height" && props !== "imageClasses"
80
92
  })(({
93
+ theme,
81
94
  height,
82
- width
95
+ width,
96
+ imageClasses: imageClasses2
83
97
  }) => ({
84
98
  position: "relative",
85
99
  width,
86
100
  height,
87
101
  minHeight: height,
88
102
  minWidth: width,
89
- "& > img ": {
90
- opacity: 0,
91
- position: "absolute",
92
- inset: "0",
93
- width: "100%",
94
- height: "100%"
95
- },
96
- "&.loaded > img": {
97
- opacity: 1,
98
- transition: "opacity .5s"
99
- },
100
- "& .skeleton": {
101
- opacity: 1,
102
- width,
103
- height
103
+ [`&.${imageClasses2.root}`]: {
104
+ [`.${imageClasses2.img}`]: {
105
+ opacity: 0,
106
+ position: "absolute",
107
+ inset: "0",
108
+ width: "100%",
109
+ height: "100%"
110
+ },
111
+ [`.${imageClasses2.loaded} .${imageClasses2.img}`]: {
112
+ opacity: 1,
113
+ transition: "opacity .5s"
114
+ },
115
+ [`.${imageClasses2.skeletonImage}, .${imageClasses2.skeletonCircle}`]: {
116
+ opacity: 1,
117
+ width,
118
+ height
119
+ },
120
+ [`.${imageClasses2.loaded} .${imageClasses2.skeletonImage},
121
+ .${imageClasses2.loaded} .${imageClasses2.skeletonCircle}`]: {
122
+ opacity: 0,
123
+ transition: "opacity .3s"
124
+ }
104
125
  },
105
- "&.loaded .skeleton": {
106
- opacity: 0,
107
- transition: "opacity .3s"
108
- }
126
+ ...theme.components?.M4LImage?.styleOverrides
109
127
  }));
110
128
  const WrapperSkeletonImage = styled("div")(() => ({
111
129
  mask: `url("data:image/svg+xml,%3Csvg version='1.1' id='Capa_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 70 70' style='enable-background:new 0 0 70 70%3B' xml:space='preserve'%3E%3Cg%3E%3Cpath d='M45 8.7c1.4-1.5 3.4-2.3 5.4-2.3s3.9 0.8 5.4 2.3s2.4 3.5 2.5 5.7c0 2.2-0.9 4.2-2.4 5.7s-3.5 2.3-5.5 2.2c-2.1 0.1-4-0.7-5.5-2.2c-1.4-1.5-2.3-3.5-2.4-5.7C42.6 12.2 43.5 10.2 45 8.7z'/%3E%3Cpath d='M68.4 62.1c-0.3 0.5-0.7 0.8-1.2 1.1s-1 0.4-1.6 0.4H4.3c-0.6 0-1.1-0.1-1.6-0.4s-0.9-0.6-1.2-1.1c-0.2-0.5-0.4-1-0.4-1.5s0.1-1.1 0.4-1.5l23-36.4c0.3-0.5 0.7-0.8 1.2-1.1c0.5-0.3 1-0.4 1.6-0.4c0.6 0 1.1 0.1 1.6 0.4c0.5 0.3 0.9 0.6 1.2 1.1l11.5 18.2c0.2 0.3 0.5 0.5 0.8 0.7c0.3 0.2 0.6 0.3 1 0.3c0.3 0 0.7-0.1 1-0.3c0.3-0.2 0.6-0.4 0.8-0.7l3.1-4.9c0.3-0.5 0.7-0.8 1.2-1.1c0.5-0.3 1-0.4 1.6-0.4c0.6 0 1.1 0.1 1.6 0.4c0.5 0.3 0.9 0.6 1.2 1.1l14.6 23.1c0.3 0.5 0.3 1 0.3 1.5S68.7 61.7 68.4 62.1z'/%3E%3C/g%3E%3C/svg%3E") no-repeat center / contain`,
@@ -120,8 +138,12 @@ const Skeleton = (props) => {
120
138
  const {
121
139
  skeletonVariant
122
140
  } = props;
141
+ const {
142
+ classes
143
+ } = useBase();
123
144
  return skeletonVariant === "image" ? /* @__PURE__ */ jsx(WrapperSkeletonImage, {
124
- className: "skeleton",
145
+ className: classes.skeletonImage,
146
+ "data-testid": "skeletonImage",
125
147
  children: /* @__PURE__ */ jsx(Skeleton$1, {
126
148
  variant: "rectangular",
127
149
  width: "100%",
@@ -131,9 +153,36 @@ const Skeleton = (props) => {
131
153
  variant: "circular",
132
154
  width: "100%",
133
155
  height: "100%",
134
- className: "skeleton"
156
+ className: classes.skeletonCircle,
157
+ "data-testid": "skeletonCircle"
135
158
  });
136
159
  };
160
+ const componentName = "M4LImage";
161
+ const imageClasses = generateUtilityClasses(componentName, [
162
+ "root",
163
+ "lazyLoad",
164
+ "img",
165
+ "skeletonImage",
166
+ "skeletonCircle",
167
+ "loaded"
168
+ ]);
169
+ function getImagenClassesUtilityClass(slot) {
170
+ return generateUtilityClass(componentName, slot);
171
+ }
172
+ const useUtilityClasses = (ownerState) => {
173
+ const slots = {
174
+ root: ["root", ownerState.isImageLoaded == true && "loaded"],
175
+ lazyLoad: ["lazyLoad"],
176
+ img: ["img"],
177
+ intersectComponent: ["intersectComponent"],
178
+ skeletonImage: ["skeletonImage"],
179
+ skeletonCircle: ["skeletonCircle"]
180
+ };
181
+ const composedClasses = unstable_composeClasses(slots, getImagenClassesUtilityClass, {});
182
+ return {
183
+ ...composedClasses
184
+ };
185
+ };
137
186
  function Image(props) {
138
187
  const {
139
188
  src,
@@ -142,10 +191,11 @@ function Image(props) {
142
191
  threshold = 100,
143
192
  width,
144
193
  height,
145
- skeletonVariant = "image"
194
+ skeletonVariant = "image",
195
+ testingProps
146
196
  } = props;
147
197
  const isSKeleton = useModuleSkeleton();
148
- const [statusLoad, setStatusLoad] = useState("initial");
198
+ const [statusLoad, setStatusLoad] = useState(testingProps?.statusLoad || "initial");
149
199
  useEffect(() => {
150
200
  let timer;
151
201
  if (statusLoad === "loaded" && !isSKeleton) {
@@ -162,28 +212,42 @@ function Image(props) {
162
212
  const onLoad = () => {
163
213
  setStatusLoad("loaded");
164
214
  };
215
+ const isImageLoaded = !isSKeleton && statusLoad !== "initial";
216
+ const ownerState = {
217
+ isImageLoaded
218
+ };
219
+ const classes = useUtilityClasses(ownerState);
165
220
  const lazyLoadComponent = useMemo(() => {
166
- const isImageLoaded = !isSKeleton && statusLoad !== "initial";
167
- return /* @__PURE__ */ jsx(WrapperImage, {
221
+ return /* @__PURE__ */ jsx(ImageRoot, {
168
222
  width,
169
223
  height,
170
- className: "m4l_image " + (isImageLoaded ? "loaded" : ""),
224
+ className: classes.root,
225
+ imageClasses,
226
+ "data-testid": "ImageRoot",
171
227
  children: /* @__PURE__ */ jsxs(LazyLoadComponent, {
172
228
  width,
173
229
  height,
174
230
  useIntersectionObserver,
175
231
  threshold,
232
+ testingProps,
176
233
  children: [statusLoad !== "removed" ? /* @__PURE__ */ jsx(Skeleton, {
177
234
  skeletonVariant
178
235
  }) : null, /* @__PURE__ */ jsx("img", {
179
236
  alt,
180
237
  src,
181
- onLoad
238
+ onLoad,
239
+ className: classes.img,
240
+ "data-testid": "img"
182
241
  })]
183
242
  })
184
243
  });
185
244
  }, [statusLoad, isSKeleton, src]);
186
- return lazyLoadComponent;
245
+ return /* @__PURE__ */ jsx(BaseProvider, {
246
+ value: {
247
+ classes
248
+ },
249
+ children: lazyLoadComponent
250
+ });
187
251
  }
188
252
  export {
189
253
  Image as I
@@ -1,4 +1,2 @@
1
- /// <reference types="react" />
2
- import { ImageProps } from './types';
3
- export declare function Image(props: ImageProps): JSX.Element;
4
- export default Image;
1
+ export * from './Image';
2
+ export * from './types';
@@ -1,3 +1,3 @@
1
1
  /// <reference types="react" />
2
- import { BaseImageProps } from './types';
3
- export declare const WrapperImage: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & BaseImageProps, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
2
+ import { WrapperImageProps } from './types';
3
+ export declare const ImageRoot: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & WrapperImageProps, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
@@ -1,3 +1,8 @@
1
1
  /// <reference types="react" />
2
2
  import { LazyLoadComponentProps } from '../../types';
3
+ /**
4
+ * Sub-componente encargado de validar y condicionar la funcionalidad del intersection observer.
5
+ * @param props
6
+ * @returns
7
+ */
3
8
  export declare function LazyLoadComponent(props: LazyLoadComponentProps): JSX.Element;
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export declare const WrapperLazyLoadComponent: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
@@ -1,4 +1,5 @@
1
1
  import { ReactNode } from 'react';
2
+ import { ImageClassesType } from './utils/classes/types';
2
3
  export declare type Effect = 'blur' | 'black-and-white' | 'opacity';
3
4
  export declare type ScrollPosition = {
4
5
  x: number;
@@ -7,10 +8,17 @@ export declare type ScrollPosition = {
7
8
  export declare type IntersectComponentRef = HTMLSpanElement & {
8
9
  setIsVisible?: (visible: boolean) => void;
9
10
  };
11
+ export interface TestingProps {
12
+ statusLoad?: any;
13
+ isVisible?: boolean;
14
+ }
10
15
  export interface BaseImageProps {
11
16
  width: string;
12
17
  height?: string;
13
18
  }
19
+ export interface WrapperImageProps extends BaseImageProps {
20
+ imageClasses: ImageClassesType;
21
+ }
14
22
  export interface IntersectComponentProps extends BaseImageProps {
15
23
  setIsVisible: (visible: boolean) => void;
16
24
  threshold: number;
@@ -21,7 +29,7 @@ export interface IntersectComponentScrollProps extends IntersectComponentProps {
21
29
  delayMethod?: 'debounce' | 'throttle';
22
30
  delayTime?: number;
23
31
  }
24
- export interface LazyLoadComponentProps extends Omit<IntersectComponentProps, 'setIsVisible'> {
32
+ export interface LazyLoadComponentProps extends Pick<ImageProps, 'testingProps'>, Omit<IntersectComponentProps, 'setIsVisible'> {
25
33
  children: ReactNode;
26
34
  }
27
35
  export declare type SkeletonVariant = 'image' | 'circle';
@@ -31,4 +39,12 @@ export interface ImageProps extends Omit<IntersectComponentProps, 'setIsVisible'
31
39
  threshold?: number;
32
40
  useIntersectionObserver?: boolean;
33
41
  skeletonVariant?: SkeletonVariant;
42
+ testingProps?: TestingProps;
43
+ }
44
+ export declare type StatusLoad = 'initial' | 'loaded' | 'removed';
45
+ export interface OwnerState {
46
+ isImageLoaded: boolean;
47
+ }
48
+ export interface BaseProviderIamgeType {
49
+ classes: any;
34
50
  }
@@ -0,0 +1 @@
1
+ export declare const componentName = "M4LImage";
@@ -0,0 +1,12 @@
1
+ import { ImageClassesType } from './types';
2
+ import { OwnerState } from '../../types';
3
+ export declare const imageClasses: ImageClassesType;
4
+ export declare function getImagenClassesUtilityClass(slot: string): string;
5
+ export declare const useUtilityClasses: (ownerState: OwnerState) => {
6
+ img: string;
7
+ root: string;
8
+ lazyLoad: string;
9
+ intersectComponent: string;
10
+ skeletonImage: string;
11
+ skeletonCircle: string;
12
+ };
@@ -0,0 +1,9 @@
1
+ export interface ImageClassesType {
2
+ root: string;
3
+ lazyLoad: string;
4
+ img: string;
5
+ skeletonImage: string;
6
+ skeletonCircle: string;
7
+ loaded: string;
8
+ }
9
+ export declare type ImageClassesKey = keyof ImageClassesType;
@@ -0,0 +1,8 @@
1
+ /// <reference types="react" />
2
+ import { LanguagePopoverProps } from './types';
3
+ /**
4
+ * Provee un componente que le permite al usuario cambiar la configuración del idioma en la plataforma.
5
+ * @param props
6
+ * @returns
7
+ */
8
+ export declare function LanguagePopover(props: LanguagePopoverProps): JSX.Element;