@e1011/es-kit 1.0.210 → 1.0.212

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 (123) hide show
  1. package/dist/hooks/esm/index.css +43 -43
  2. package/dist/hooks/esm/src/core/hooks/useClassNames.js.map +1 -1
  3. package/dist/hooks/esm/src/core/hooks/useOutsideClick.js +1 -1
  4. package/dist/hooks/esm/src/core/hooks/useOutsideClick.js.map +1 -1
  5. package/dist/hooks/esm/src/core/hooks/useResize.js.map +1 -1
  6. package/dist/hooks/esm/src/core/hooks/useThemePreference.js.map +1 -1
  7. package/dist/hooks/esm/src/core/hooks/useTranslations.js.map +1 -1
  8. package/dist/hooks/esm/src/core/ui/utils/clickOutside.js.map +1 -1
  9. package/dist/hooks/esm/src/core/utils/helpers/ui.js.map +1 -1
  10. package/dist/hooks/index.css +43 -43
  11. package/dist/hooks/src/core/hooks/useClassNames.js.map +1 -1
  12. package/dist/hooks/src/core/hooks/useOutsideClick.js +1 -1
  13. package/dist/hooks/src/core/hooks/useOutsideClick.js.map +1 -1
  14. package/dist/hooks/src/core/hooks/useResize.js.map +1 -1
  15. package/dist/hooks/src/core/hooks/useThemePreference.js.map +1 -1
  16. package/dist/hooks/src/core/hooks/useTranslations.js.map +1 -1
  17. package/dist/hooks/src/core/ui/utils/clickOutside.js.map +1 -1
  18. package/dist/hooks/src/core/utils/helpers/ui.js.map +1 -1
  19. package/dist/lib/cjs/src/core/hooks/useClassNames.js.map +1 -1
  20. package/dist/lib/cjs/src/core/hooks/useOutsideClick.js +1 -1
  21. package/dist/lib/cjs/src/core/hooks/useOutsideClick.js.map +1 -1
  22. package/dist/lib/cjs/src/core/hooks/useResize.js.map +1 -1
  23. package/dist/lib/cjs/src/core/hooks/useThemePreference.js.map +1 -1
  24. package/dist/lib/cjs/src/core/hooks/useTranslations.js.map +1 -1
  25. package/dist/lib/cjs/src/core/ui/components/container/Flex.js.map +1 -1
  26. package/dist/lib/cjs/src/core/ui/components/field/Field.js.map +1 -1
  27. package/dist/lib/cjs/src/core/ui/components/icon/IconWC.js.map +1 -1
  28. package/dist/lib/cjs/src/core/ui/components/icon/unifyIconUrl.js.map +1 -1
  29. package/dist/lib/cjs/src/core/ui/utils/clickOutside.js.map +1 -1
  30. package/dist/lib/cjs/src/core/ui/utils/style.js.map +1 -1
  31. package/dist/lib/cjs/src/core/utils/appState/store/store.vanillajs.js.map +1 -1
  32. package/dist/lib/cjs/src/core/utils/appState/store/useStore.react.js.map +1 -1
  33. package/dist/lib/cjs/src/core/utils/helpers/birthnumberCZSKvalidator.js.map +1 -1
  34. package/dist/lib/cjs/src/core/utils/helpers/cancelableDelayedFunction.js.map +1 -1
  35. package/dist/lib/cjs/src/core/utils/helpers/fileValidator.js.map +1 -1
  36. package/dist/lib/cjs/src/core/utils/helpers/objectOperations.js.map +1 -1
  37. package/dist/lib/cjs/src/core/utils/helpers/other.js.map +1 -1
  38. package/dist/lib/cjs/src/core/utils/helpers/ui.js.map +1 -1
  39. package/dist/lib/cjs/src/core/utils/webComponents/webComponent.utils.js.map +1 -1
  40. package/dist/lib/esm/src/core/hooks/useClassNames.js.map +1 -1
  41. package/dist/lib/esm/src/core/hooks/useOutsideClick.js +1 -1
  42. package/dist/lib/esm/src/core/hooks/useOutsideClick.js.map +1 -1
  43. package/dist/lib/esm/src/core/hooks/useResize.js.map +1 -1
  44. package/dist/lib/esm/src/core/hooks/useThemePreference.js.map +1 -1
  45. package/dist/lib/esm/src/core/hooks/useTranslations.js.map +1 -1
  46. package/dist/lib/esm/src/core/ui/components/container/Flex.js.map +1 -1
  47. package/dist/lib/esm/src/core/ui/components/field/Field.js.map +1 -1
  48. package/dist/lib/esm/src/core/ui/components/icon/IconWC.js.map +1 -1
  49. package/dist/lib/esm/src/core/ui/components/icon/unifyIconUrl.js.map +1 -1
  50. package/dist/lib/esm/src/core/ui/utils/clickOutside.js.map +1 -1
  51. package/dist/lib/esm/src/core/ui/utils/style.js.map +1 -1
  52. package/dist/lib/esm/src/core/utils/appState/store/store.vanillajs.js.map +1 -1
  53. package/dist/lib/esm/src/core/utils/appState/store/useStore.react.js.map +1 -1
  54. package/dist/lib/esm/src/core/utils/helpers/birthnumberCZSKvalidator.js.map +1 -1
  55. package/dist/lib/esm/src/core/utils/helpers/cancelableDelayedFunction.js.map +1 -1
  56. package/dist/lib/esm/src/core/utils/helpers/fileValidator.js.map +1 -1
  57. package/dist/lib/esm/src/core/utils/helpers/objectOperations.js.map +1 -1
  58. package/dist/lib/esm/src/core/utils/helpers/other.js.map +1 -1
  59. package/dist/lib/esm/src/core/utils/helpers/ui.js.map +1 -1
  60. package/dist/lib/esm/src/core/utils/webComponents/webComponent.utils.js.map +1 -1
  61. package/dist/lib/tsconfig.tsbuildinfo +1 -1
  62. package/dist/types/src/core/hooks/useClassNames.d.ts +2 -2
  63. package/dist/types/src/core/hooks/useClassNames.d.ts.map +1 -1
  64. package/dist/types/src/core/hooks/useOutsideClick.d.ts.map +1 -1
  65. package/dist/types/src/core/hooks/useThemePreference.d.ts.map +1 -1
  66. package/dist/types/src/core/hooks/useTranslations.d.ts.map +1 -1
  67. package/dist/types/src/core/ui/components/container/Flex.d.ts.map +1 -1
  68. package/dist/types/src/core/ui/components/icon/IconWC.d.ts.map +1 -1
  69. package/dist/types/src/core/ui/components/icon/unifyIconUrl.d.ts.map +1 -1
  70. package/dist/types/src/core/ui/utils/clickOutside.d.ts.map +1 -1
  71. package/dist/types/src/core/ui/utils/style.d.ts.map +1 -1
  72. package/dist/types/src/core/utils/appState/stateMachine/tiny-state-machine.base.d.ts +6 -6
  73. package/dist/types/src/core/utils/appState/stateMachine/tiny-state-machine.base.d.ts.map +1 -1
  74. package/dist/types/src/core/utils/appState/store/simpleComponent/SimpleComponent.d.ts.map +1 -1
  75. package/dist/types/src/core/utils/appState/store/simpleComponent/SimpleComponent2.d.ts.map +1 -1
  76. package/dist/types/src/core/utils/appState/store/useStore.react.d.ts.map +1 -1
  77. package/dist/types/src/core/utils/decorators/convert.d.ts.map +1 -1
  78. package/dist/types/src/core/utils/helpers/cancelableDelayedFunction.d.ts.map +1 -1
  79. package/dist/types/src/core/utils/helpers/objectOperations.d.ts.map +1 -1
  80. package/dist/types/src/core/utils/helpers/other.d.ts +2 -1
  81. package/dist/types/src/core/utils/helpers/other.d.ts.map +1 -1
  82. package/dist/types/src/core/utils/helpers/ui.d.ts +1 -1
  83. package/dist/types/src/core/utils/helpers/ui.d.ts.map +1 -1
  84. package/dist/types/src/core/utils/logger.spec.d.ts.map +1 -1
  85. package/dist/types/src/core/utils/webComponents/exampleCustomElement.d.ts.map +1 -1
  86. package/dist/types/src/core/utils/webComponents/webComponent.utils.d.ts.map +1 -1
  87. package/dist/ui/esm/src/core/hooks/useResize.js.map +1 -1
  88. package/dist/ui/esm/src/core/ui/components/container/Flex.js.map +1 -1
  89. package/dist/ui/esm/src/core/ui/components/field/Field.js.map +1 -1
  90. package/dist/ui/esm/src/core/ui/components/icon/IconWC.js.map +1 -1
  91. package/dist/ui/esm/src/core/ui/components/icon/unifyIconUrl.js.map +1 -1
  92. package/dist/ui/esm/src/core/ui/utils/style.js.map +1 -1
  93. package/dist/ui/esm/src/core/utils/helpers/ui.js.map +1 -1
  94. package/dist/ui/esm/src/core/utils/webComponents/webComponent.utils.js.map +1 -1
  95. package/dist/ui/src/core/hooks/useResize.js.map +1 -1
  96. package/dist/ui/src/core/ui/components/container/Flex.js.map +1 -1
  97. package/dist/ui/src/core/ui/components/field/Field.js.map +1 -1
  98. package/dist/ui/src/core/ui/components/icon/IconWC.js.map +1 -1
  99. package/dist/ui/src/core/ui/components/icon/unifyIconUrl.js.map +1 -1
  100. package/dist/ui/src/core/ui/utils/style.js.map +1 -1
  101. package/dist/ui/src/core/utils/helpers/ui.js.map +1 -1
  102. package/dist/ui/src/core/utils/webComponents/webComponent.utils.js.map +1 -1
  103. package/dist/utils/esm/index.css +43 -43
  104. package/dist/utils/esm/src/core/utils/appState/store/store.vanillajs.js.map +1 -1
  105. package/dist/utils/esm/src/core/utils/appState/store/useStore.react.js.map +1 -1
  106. package/dist/utils/esm/src/core/utils/helpers/birthnumberCZSKvalidator.js.map +1 -1
  107. package/dist/utils/esm/src/core/utils/helpers/cancelableDelayedFunction.js.map +1 -1
  108. package/dist/utils/esm/src/core/utils/helpers/fileValidator.js.map +1 -1
  109. package/dist/utils/esm/src/core/utils/helpers/objectOperations.js.map +1 -1
  110. package/dist/utils/esm/src/core/utils/helpers/other.js.map +1 -1
  111. package/dist/utils/esm/src/core/utils/helpers/ui.js.map +1 -1
  112. package/dist/utils/esm/src/core/utils/webComponents/webComponent.utils.js.map +1 -1
  113. package/dist/utils/index.css +43 -43
  114. package/dist/utils/src/core/utils/appState/store/store.vanillajs.js.map +1 -1
  115. package/dist/utils/src/core/utils/appState/store/useStore.react.js.map +1 -1
  116. package/dist/utils/src/core/utils/helpers/birthnumberCZSKvalidator.js.map +1 -1
  117. package/dist/utils/src/core/utils/helpers/cancelableDelayedFunction.js.map +1 -1
  118. package/dist/utils/src/core/utils/helpers/fileValidator.js.map +1 -1
  119. package/dist/utils/src/core/utils/helpers/objectOperations.js.map +1 -1
  120. package/dist/utils/src/core/utils/helpers/other.js.map +1 -1
  121. package/dist/utils/src/core/utils/helpers/ui.js.map +1 -1
  122. package/dist/utils/src/core/utils/webComponents/webComponent.utils.js.map +1 -1
  123. package/package.json +1 -1
@@ -1,3 +1,46 @@
1
+ .layoutBox-module_layout-box__faPND {
2
+ display: flex;
3
+ position: relative;
4
+ flex-direction: row;
5
+ flex: 0;
6
+ flex-grow: 0;
7
+ flex-shrink: 0;
8
+ flex-basis: auto;
9
+ flex-wrap: nowrap;
10
+ gap: 0;
11
+ text-align: left;
12
+ justify-content: flex-start;
13
+ align-items: flex-start;
14
+ align-self: auto;
15
+ margin: 0;
16
+ padding: 0;
17
+ width: auto;
18
+ height: auto;
19
+ max-width: none;
20
+ max-height: none;
21
+ min-width: 0;
22
+ min-height: 0;
23
+ border-radius: initial;
24
+ }
25
+ .divider-module_divider-line__6CesR {
26
+ position: relative;
27
+ display: block;
28
+ transition: opacity, width, height 250ms ease-in-out;
29
+ background-color: var(--color);
30
+ opacity: var(--opacity);
31
+ }
32
+ .divider-module_divider-line__6CesR.divider-module_vertical__qSVWD {
33
+ height: var(--length);
34
+ left: var(--left);
35
+ width: var(--width);
36
+ margin: var(--margin);
37
+ }
38
+ .divider-module_divider-line__6CesR.divider-module_horizontal__Gz-Oj {
39
+ width: var(--length);
40
+ left: var(--left);
41
+ height: var(--height);
42
+ margin: var(--margin);
43
+ }
1
44
  .icon-module_icon-base-parent__nOMvW {
2
45
  line-height: 1px !important;
3
46
  }
@@ -28,25 +71,6 @@
28
71
  width: var(--height);
29
72
  height: var(--width);
30
73
  }
31
- .divider-module_divider-line__6CesR {
32
- position: relative;
33
- display: block;
34
- transition: opacity, width, height 250ms ease-in-out;
35
- background-color: var(--color);
36
- opacity: var(--opacity);
37
- }
38
- .divider-module_divider-line__6CesR.divider-module_vertical__qSVWD {
39
- height: var(--length);
40
- left: var(--left);
41
- width: var(--width);
42
- margin: var(--margin);
43
- }
44
- .divider-module_divider-line__6CesR.divider-module_horizontal__Gz-Oj {
45
- width: var(--length);
46
- left: var(--left);
47
- height: var(--height);
48
- margin: var(--margin);
49
- }
50
74
  .CollapsibleContainer-module_collapsible-container__u0Jmm {
51
75
  transform-origin: 0% 0%;
52
76
  opacity: 0;
@@ -80,30 +104,6 @@
80
104
  max-width: var(--prop-value);
81
105
  opacity: 1;
82
106
  }
83
- .layoutBox-module_layout-box__faPND {
84
- display: flex;
85
- position: relative;
86
- flex-direction: row;
87
- flex: 0;
88
- flex-grow: 0;
89
- flex-shrink: 0;
90
- flex-basis: auto;
91
- flex-wrap: nowrap;
92
- gap: 0;
93
- text-align: left;
94
- justify-content: flex-start;
95
- align-items: flex-start;
96
- align-self: auto;
97
- margin: 0;
98
- padding: 0;
99
- width: auto;
100
- height: auto;
101
- max-width: none;
102
- max-height: none;
103
- min-width: 0;
104
- min-height: 0;
105
- border-radius: initial;
106
- }
107
107
  .flowLayout-module_flowLayout__VHpnY {
108
108
  overflow: auto;
109
109
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useClassNames.js","sources":["../../../../../../src/core/hooks/useClassNames.ts"],"sourcesContent":["import { useMemo } from 'react'\n\nimport { classNames, TClassName } from '../utils/helpers/ui'\n\nexport const useClassNames = (\n classes: TClassName[],\n deps: unknown[],\n// eslint-disable-next-line react-hooks/exhaustive-deps\n) => useMemo(() => classNames(...classes), [classes, deps])\n"],"names":["useClassNames","classes","deps","useMemo","classNames"],"mappings":"kKAIaA,MAAAA,EAAgBA,CAC3BC,EACAC,IAEGC,GAAQ,IAAMC,KAAcH,IAAU,CAACA,EAASC"}
1
+ {"version":3,"file":"useClassNames.js","sources":["../../../../../../src/core/hooks/useClassNames.ts"],"sourcesContent":["import { useMemo } from 'react'\n\nimport { classNames, TClassName } from '../utils/helpers/ui'\n\nexport const useClassNames = (\n classes: TClassName[],\n deps: unknown[],\n// eslint-disable-next-line react-hooks/exhaustive-deps\n): ReturnType<typeof classNames> => useMemo(() => classNames(...classes), [classes, deps])\n"],"names":["useClassNames","classes","deps","useMemo","classNames"],"mappings":"kKAIaA,MAAAA,EAAgBA,CAC3BC,EACAC,IAEkCC,GAAQ,IAAMC,KAAcH,IAAU,CAACA,EAASC"}
@@ -1,2 +1,2 @@
1
- import{useCallback as t,useEffect as e}from"react";import{EventName as n}from"../constants/ui.constants.js";import{handleClickOutside as i}from"../ui/utils/clickOutside.js";function o(o,r){let c=arguments.length>2&&void 0!==arguments[2]?arguments[2]:i(o,r);const s=t((()=>document.removeEventListener(n.Click,c)),[]);return e((()=>(s(),document.addEventListener(n.Click,c),s)),[o,c,s]),s}function r(t,e){let o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:i(t,e);return document.addEventListener(n.Click,o),()=>document.removeEventListener(n.Click,o)}export{r as outsideClickHandler,o as useOutsideClick};
1
+ import{useCallback as t,useEffect as e}from"react";import{EventName as n}from"../constants/ui.constants.js";import{handleClickOutside as i}from"../ui/utils/clickOutside.js";function o(o,r){let c=arguments.length>2&&void 0!==arguments[2]?arguments[2]:i(o,r);const s=t((()=>document.removeEventListener(n.Click,c)),[c]);return e((()=>(s(),document.addEventListener(n.Click,c),s)),[o,c,s]),s}function r(t,e){let o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:i(t,e);return document.addEventListener(n.Click,o),()=>document.removeEventListener(n.Click,o)}export{r as outsideClickHandler,o as useOutsideClick};
2
2
  //# sourceMappingURL=useOutsideClick.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useOutsideClick.js","sources":["../../../../../../src/core/hooks/useOutsideClick.ts"],"sourcesContent":["import { useEffect, useCallback } from 'react'\n\nimport { EventName } from '../constants/ui.constants'\nimport { handleClickOutside as defaultHandleClickOutside } from '../ui/utils/clickOutside'\n\ntype Element = HTMLElement | null | (() => HTMLElement)\ntype CallbackFunction = (target: HTMLElement | null) => void\n\nexport function useOutsideClick(\n element: Element,\n callback?: CallbackFunction,\n handleClickOutside = defaultHandleClickOutside(element, callback),\n): () => void {\n const unsubscriber = useCallback(() => document.removeEventListener(EventName.Click, handleClickOutside), [])\n\n useEffect(() => {\n unsubscriber()\n document.addEventListener(EventName.Click, handleClickOutside)\n\n return unsubscriber\n }, [element, handleClickOutside, unsubscriber])\n\n return unsubscriber\n}\n\nexport function outsideClickHandler(\n element: Element,\n callback?: CallbackFunction,\n handleClickOutside = defaultHandleClickOutside(element, callback),\n): () => void {\n const unsubscriber = () => document.removeEventListener(EventName.Click, handleClickOutside)\n\n document.addEventListener(EventName.Click, handleClickOutside)\n\n return unsubscriber\n}\n"],"names":["useOutsideClick","element","callback","handleClickOutside","arguments","length","undefined","defaultHandleClickOutside","unsubscriber","useCallback","document","removeEventListener","EventName","Click","useEffect","addEventListener","outsideClickHandler"],"mappings":"6KAQO,SAASA,EACdC,EACAC,GAEY,IADZC,EAAkBC,UAAAC,eAAAC,IAAAF,UAAA,GAAAA,UAAGG,GAAAA,EAA0BN,EAASC,GAExD,MAAMM,EAAeC,GAAY,IAAMC,SAASC,oBAAoBC,EAAUC,MAAOV,IAAqB,IAS1G,OAPAW,GAAU,KACRN,IACAE,SAASK,iBAAiBH,EAAUC,MAAOV,GAEpCK,IACN,CAACP,EAASE,EAAoBK,IAE1BA,CACT,CAEO,SAASQ,EACdf,EACAC,GAEY,IADZC,EAAkBC,UAAAC,eAAAC,IAAAF,UAAA,GAAAA,UAAGG,GAAAA,EAA0BN,EAASC,GAMxD,OAFAQ,SAASK,iBAAiBH,EAAUC,MAAOV,GAFtBK,IAAME,SAASC,oBAAoBC,EAAUC,MAAOV,EAK3E"}
1
+ {"version":3,"file":"useOutsideClick.js","sources":["../../../../../../src/core/hooks/useOutsideClick.ts"],"sourcesContent":["import { useEffect, useCallback } from 'react'\n\nimport { EventName } from '../constants/ui.constants'\nimport { handleClickOutside as defaultHandleClickOutside } from '../ui/utils/clickOutside'\n\ntype Element = HTMLElement | null | (() => HTMLElement)\ntype CallbackFunction = (target: HTMLElement | null) => void\n\nexport function useOutsideClick(\n element: Element,\n callback?: CallbackFunction,\n handleClickOutside = defaultHandleClickOutside(element, callback),\n): () => void {\n const unsubscriber = useCallback(\n () => document.removeEventListener(EventName.Click, handleClickOutside), [handleClickOutside],\n )\n\n useEffect(() => {\n unsubscriber()\n document.addEventListener(EventName.Click, handleClickOutside)\n\n return unsubscriber\n }, [element, handleClickOutside, unsubscriber])\n\n return unsubscriber\n}\n\nexport function outsideClickHandler(\n element: Element,\n callback?: CallbackFunction,\n handleClickOutside = defaultHandleClickOutside(element, callback),\n): () => void {\n const unsubscriber = (): void => document.removeEventListener(EventName.Click, handleClickOutside)\n\n document.addEventListener(EventName.Click, handleClickOutside)\n\n return unsubscriber\n}\n"],"names":["useOutsideClick","element","callback","handleClickOutside","arguments","length","undefined","defaultHandleClickOutside","unsubscriber","useCallback","document","removeEventListener","EventName","Click","useEffect","addEventListener","outsideClickHandler"],"mappings":"6KAQO,SAASA,EACdC,EACAC,GAEY,IADZC,EAAkBC,UAAAC,eAAAC,IAAAF,UAAA,GAAAA,UAAGG,GAAAA,EAA0BN,EAASC,GAExD,MAAMM,EAAeC,GACnB,IAAMC,SAASC,oBAAoBC,EAAUC,MAAOV,IAAqB,CAACA,IAU5E,OAPAW,GAAU,KACRN,IACAE,SAASK,iBAAiBH,EAAUC,MAAOV,GAEpCK,IACN,CAACP,EAASE,EAAoBK,IAE1BA,CACT,CAEO,SAASQ,EACdf,EACAC,GAEY,IADZC,EAAkBC,UAAAC,eAAAC,IAAAF,UAAA,GAAAA,UAAGG,GAAAA,EAA0BN,EAASC,GAMxD,OAFAQ,SAASK,iBAAiBH,EAAUC,MAAOV,GAFtBK,IAAYE,SAASC,oBAAoBC,EAAUC,MAAOV,EAKjF"}
@@ -1 +1 @@
1
- {"version":3,"file":"useResize.js","sources":["../../../../../../src/core/hooks/useResize.ts"],"sourcesContent":["import { MutableRefObject, useLayoutEffect, useMemo, useState, useRef } from 'react'\nimport debounce from 'lodash-es/debounce'\n\nexport type WrapperSize = {width: undefined | number; height: undefined | number}\n\n\ntype Unobserver = () => (null | void)\n\nexport type UseResizeCallBack = (wrapperSize: WrapperSize) => void\n\n// eslint-disable-next-line default-param-last\nexport const useResize = (debounceDelay = 250, callBack?: UseResizeCallBack): [\n MutableRefObject<HTMLElement | null | undefined>, WrapperSize, Unobserver | undefined] => {\n const [containerSize, setContainerSize]\n = useState<WrapperSize>({ width: undefined, height: undefined })\n\n const lastResizeWidthRef = useRef<WrapperSize>({ width: 0, height: 0 })\n const containerRef: MutableRefObject<HTMLElement | undefined | null> = useRef<HTMLElement | undefined | null>()\n const unobserverRef = useRef<Unobserver>()\n\n const debouncedResizeWrapper = useMemo(() => debounce((entries) => {\n const newResizeWidth = entries[0].contentRect.width\n const newResizeHeight = entries[0].contentRect.height\n\n if (lastResizeWidthRef.current?.width === newResizeWidth\n && lastResizeWidthRef.current?.height === newResizeHeight) {\n return\n }\n lastResizeWidthRef.current = { width: newResizeWidth, height: newResizeHeight }\n\n // eslint-disable-next-line semi-style\n ;(callBack || setContainerSize)({\n width: containerRef?.current?.clientWidth,\n height: containerRef?.current?.clientHeight,\n })\n }, debounceDelay), [callBack, debounceDelay])\n\n useLayoutEffect(() => {\n let resizeObserver: ResizeObserver\n let containerElement: HTMLElement\n\n if (containerRef?.current) {\n containerElement = containerRef?.current\n resizeObserver = new ResizeObserver(debouncedResizeWrapper)\n resizeObserver.observe(containerElement as Element)\n\n // eslint-disable-next-line semi-style\n ;(callBack || setContainerSize)({\n width: containerRef?.current?.clientWidth,\n height: containerRef?.current?.clientHeight,\n })\n }\n\n const unobserver = () => {\n resizeObserver?.unobserve?.(containerElement as Element)\n }\n\n // setUnobserver(unobserver)\n unobserverRef.current = unobserver\n\n return unobserver\n }, [debouncedResizeWrapper, containerRef, callBack])\n\n return [containerRef, containerSize, unobserverRef.current]\n}\n"],"names":["useResize","debounceDelay","arguments","length","undefined","callBack","containerSize","setContainerSize","useState","width","height","lastResizeWidthRef","useRef","containerRef","unobserverRef","debouncedResizeWrapper","useMemo","debounce","entries","_lastResizeWidthRef$c","_lastResizeWidthRef$c2","_containerRef$current","_containerRef$current2","newResizeWidth","contentRect","newResizeHeight","current","clientWidth","clientHeight","useLayoutEffect","resizeObserver","containerElement","_containerRef$current3","_containerRef$current4","ResizeObserver","observe","unobserver","_resizeObserver","_resizeObserver$unobs","unobserve","call"],"mappings":"wNAWaA,MAAAA,EAAY,WACmE,IADlEC,EAAaC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,IAAKG,EAA4BH,UAAAC,OAAAD,EAAAA,kBAAAE,EAEzE,MAAOE,EAAeC,GAClBC,EAAsB,CAAEC,WAAOL,EAAWM,YAAQN,IAEhDO,EAAqBC,EAAoB,CAAEH,MAAO,EAAGC,OAAQ,IAC7DG,EAAiED,IACjEE,EAAgBF,IAEhBG,EAAyBC,GAAQ,IAAMC,GAAUC,IAAY,IAAAC,EAAAC,EAAAC,EAAAC,EACjE,MAAMC,EAAiBL,EAAQ,GAAGM,YAAYf,MACxCgB,EAAkBP,EAAQ,GAAGM,YAAYd,QAEjBS,QAA1BA,EAAAR,EAAmBe,eAAnBP,IAA0BA,OAA1BA,EAAAA,EAA4BV,SAAUc,IACX,QAA1BH,EAAAT,EAAmBe,eAAO,IAAAN,OAAA,EAA1BA,EAA4BV,UAAWe,IAG5Cd,EAAmBe,QAAU,CAAEjB,MAAOc,EAAgBb,OAAQe,IAG5DpB,GAAYE,GAAkB,CAC9BE,MAAOI,SAAqBQ,QAATA,EAAZR,EAAca,eAAdL,IAAqBA,OAArBA,EAAAA,EAAuBM,YAC9BjB,OAAQG,SAAqB,QAATS,EAAZT,EAAca,eAAO,IAAAJ,OAAA,EAArBA,EAAuBM,eAC/B,GACD3B,IAAgB,CAACI,EAAUJ,IA4B9B,OA1BA4B,GAAgB,KACd,IAAIC,EACAC,EAEuB,IAAAC,EAAAC,EAAvBpB,SAAAA,EAAca,UAChBK,EAAmBlB,aAAAA,EAAAA,EAAca,QACjCI,EAAiB,IAAII,eAAenB,GACpCe,EAAeK,QAAQJ,IAGrB1B,GAAYE,GAAkB,CAC9BE,MAAOI,SAAqBmB,QAATA,EAAZnB,EAAca,eAAdM,IAAqBA,OAArBA,EAAAA,EAAuBL,YAC9BjB,OAAQG,SAAqB,QAAToB,EAAZpB,EAAca,eAAO,IAAAO,OAAA,EAArBA,EAAuBL,gBAInC,MAAMQ,EAAaA,KAAM,IAAAC,EAAAC,EACT,QAAdD,EAAAP,SAAcQ,IAAAD,GAAWC,QAAXA,EAAdD,EAAgBE,qBAASD,GAAzBA,EAAAE,KAAAH,EAA4BN,EAA4B,EAM1D,OAFAjB,EAAcY,QAAUU,EAEjBA,CAAU,GAChB,CAACrB,EAAwBF,EAAcR,IAEnC,CAACQ,EAAcP,EAAeQ,EAAcY,QACrD"}
1
+ {"version":3,"file":"useResize.js","sources":["../../../../../../src/core/hooks/useResize.ts"],"sourcesContent":["import { MutableRefObject, useLayoutEffect, useMemo, useState, useRef } from 'react'\nimport debounce from 'lodash-es/debounce'\n\nexport type WrapperSize = {width: undefined | number; height: undefined | number}\n\n\ntype Unobserver = () => (null | void)\n\nexport type UseResizeCallBack = (wrapperSize: WrapperSize) => void\n\n// eslint-disable-next-line default-param-last\nexport const useResize = (debounceDelay = 250, callBack?: UseResizeCallBack): [\n MutableRefObject<HTMLElement | null | undefined>, WrapperSize, Unobserver | undefined] => {\n const [containerSize, setContainerSize]\n = useState<WrapperSize>({ width: undefined, height: undefined })\n\n const lastResizeWidthRef = useRef<WrapperSize>({ width: 0, height: 0 })\n const containerRef: MutableRefObject<HTMLElement | undefined | null> = useRef<HTMLElement | undefined | null>()\n const unobserverRef = useRef<Unobserver>()\n\n const debouncedResizeWrapper = useMemo(() => debounce((entries) => {\n const newResizeWidth = entries[0].contentRect.width\n const newResizeHeight = entries[0].contentRect.height\n\n if (lastResizeWidthRef.current?.width === newResizeWidth\n && lastResizeWidthRef.current?.height === newResizeHeight) {\n return\n }\n lastResizeWidthRef.current = { width: newResizeWidth, height: newResizeHeight }\n\n // eslint-disable-next-line semi-style\n ;(callBack || setContainerSize)({\n width: containerRef?.current?.clientWidth,\n height: containerRef?.current?.clientHeight,\n })\n }, debounceDelay), [callBack, debounceDelay])\n\n useLayoutEffect(() => {\n let resizeObserver: ResizeObserver\n let containerElement: HTMLElement\n\n if (containerRef?.current) {\n containerElement = containerRef?.current\n resizeObserver = new ResizeObserver(debouncedResizeWrapper)\n resizeObserver.observe(containerElement as Element)\n\n // eslint-disable-next-line semi-style\n ;(callBack || setContainerSize)({\n width: containerRef?.current?.clientWidth,\n height: containerRef?.current?.clientHeight,\n })\n }\n\n const unobserver = (): void => {\n resizeObserver?.unobserve?.(containerElement as Element)\n }\n\n // setUnobserver(unobserver)\n unobserverRef.current = unobserver\n\n return unobserver\n }, [debouncedResizeWrapper, containerRef, callBack])\n\n return [containerRef, containerSize, unobserverRef.current]\n}\n"],"names":["useResize","debounceDelay","arguments","length","undefined","callBack","containerSize","setContainerSize","useState","width","height","lastResizeWidthRef","useRef","containerRef","unobserverRef","debouncedResizeWrapper","useMemo","debounce","entries","_lastResizeWidthRef$c","_lastResizeWidthRef$c2","_containerRef$current","_containerRef$current2","newResizeWidth","contentRect","newResizeHeight","current","clientWidth","clientHeight","useLayoutEffect","resizeObserver","containerElement","_containerRef$current3","_containerRef$current4","ResizeObserver","observe","unobserver","_resizeObserver","_resizeObserver$unobs","unobserve","call"],"mappings":"wNAWaA,MAAAA,EAAY,WACmE,IADlEC,EAAaC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,IAAKG,EAA4BH,UAAAC,OAAAD,EAAAA,kBAAAE,EAEzE,MAAOE,EAAeC,GAClBC,EAAsB,CAAEC,WAAOL,EAAWM,YAAQN,IAEhDO,EAAqBC,EAAoB,CAAEH,MAAO,EAAGC,OAAQ,IAC7DG,EAAiED,IACjEE,EAAgBF,IAEhBG,EAAyBC,GAAQ,IAAMC,GAAUC,IAAY,IAAAC,EAAAC,EAAAC,EAAAC,EACjE,MAAMC,EAAiBL,EAAQ,GAAGM,YAAYf,MACxCgB,EAAkBP,EAAQ,GAAGM,YAAYd,QAEjBS,QAA1BA,EAAAR,EAAmBe,eAAnBP,IAA0BA,OAA1BA,EAAAA,EAA4BV,SAAUc,IACX,QAA1BH,EAAAT,EAAmBe,eAAO,IAAAN,OAAA,EAA1BA,EAA4BV,UAAWe,IAG5Cd,EAAmBe,QAAU,CAAEjB,MAAOc,EAAgBb,OAAQe,IAG5DpB,GAAYE,GAAkB,CAC9BE,MAAOI,SAAqBQ,QAATA,EAAZR,EAAca,eAAdL,IAAqBA,OAArBA,EAAAA,EAAuBM,YAC9BjB,OAAQG,SAAqB,QAATS,EAAZT,EAAca,eAAO,IAAAJ,OAAA,EAArBA,EAAuBM,eAC/B,GACD3B,IAAgB,CAACI,EAAUJ,IA4B9B,OA1BA4B,GAAgB,KACd,IAAIC,EACAC,EAEuB,IAAAC,EAAAC,EAAvBpB,SAAAA,EAAca,UAChBK,EAAmBlB,aAAAA,EAAAA,EAAca,QACjCI,EAAiB,IAAII,eAAenB,GACpCe,EAAeK,QAAQJ,IAGrB1B,GAAYE,GAAkB,CAC9BE,MAAOI,SAAqBmB,QAATA,EAAZnB,EAAca,eAAdM,IAAqBA,OAArBA,EAAAA,EAAuBL,YAC9BjB,OAAQG,SAAqB,QAAToB,EAAZpB,EAAca,eAAO,IAAAO,OAAA,EAArBA,EAAuBL,gBAInC,MAAMQ,EAAaA,KAAY,IAAAC,EAAAC,EACf,QAAdD,EAAAP,SAAcQ,IAAAD,GAAWC,QAAXA,EAAdD,EAAgBE,qBAASD,GAAzBA,EAAAE,KAAAH,EAA4BN,EAA4B,EAM1D,OAFAjB,EAAcY,QAAUU,EAEjBA,CAAU,GAChB,CAACrB,EAAwBF,EAAcR,IAEnC,CAACQ,EAAcP,EAAeQ,EAAcY,QACrD"}
@@ -1 +1 @@
1
- {"version":3,"file":"useThemePreference.js","sources":["../../../../../../src/core/hooks/useThemePreference.ts"],"sourcesContent":["import { useEffect } from 'react'\n\n\nconst windowMatchMediaChangeEventType = 'change'\n\nexport const observeThemePreference = (\n getHtmlElement: () => HTMLElement = () => document.body,\n switchCallback: (isDark: boolean) => void = (isDark: boolean) => isDark,\n) => {\n const switchColorThemeHandler = (isDark: boolean) => {\n const htmlElement = getHtmlElement()\n\n switchColorTheme?.(isDark, htmlElement)\n switchCallback?.(isDark)\n }\n\n const changeDarkColorThemeHandler = (event: MediaQueryListEvent) => {\n switchColorThemeHandler(event.matches)\n }\n\n const changeLightColorThemeHandler = (event: MediaQueryListEvent) => {\n switchColorThemeHandler(!event.matches)\n }\n\n const isDark = window.matchMedia('(prefers-color-scheme: dark)')\n\n try {\n window.matchMedia('(prefers-color-scheme: dark)').removeEventListener(\n windowMatchMediaChangeEventType, changeDarkColorThemeHandler,\n )\n window.matchMedia('(prefers-color-scheme: light)').removeEventListener(\n windowMatchMediaChangeEventType, changeLightColorThemeHandler,\n )\n } catch (error) {\n console.error(`Error::observeThemePreference::removeEventListener: ${error}`)\n }\n\n switchColorThemeHandler(isDark?.matches)\n window.matchMedia('(prefers-color-scheme: dark)').addEventListener(\n windowMatchMediaChangeEventType, changeDarkColorThemeHandler,\n )\n window.matchMedia('(prefers-color-scheme: light)').addEventListener(\n windowMatchMediaChangeEventType, changeLightColorThemeHandler,\n )\n\n return () => {\n window.matchMedia('(prefers-color-scheme: dark)').removeEventListener(\n windowMatchMediaChangeEventType, changeDarkColorThemeHandler,\n )\n window.matchMedia('(prefers-color-scheme: light)').removeEventListener(\n windowMatchMediaChangeEventType, changeLightColorThemeHandler,\n )\n }\n}\n\nexport const useThemePreference = (\n getHtmlElement: () => HTMLElement = () => document.body,\n switchCallback: (isDark: boolean) => void = (isDark: boolean) => isDark,\n) => {\n useEffect(() => observeThemePreference(getHtmlElement, switchCallback), [getHtmlElement, switchCallback])\n}\n\n\nexport const baseThemes: {\n dark: string\n light: string\n} = {\n dark: 'theme-dark',\n light: 'theme-light',\n}\n\nexport const switchColorTheme = (isDark: boolean, htmlElement?: HTMLElement, findShadows = true) => {\n const oldClass = isDark ? baseThemes.light : baseThemes.dark\n const newClass = isDark ? baseThemes.dark : baseThemes.light\n\n if (htmlElement) {\n htmlElement.classList.remove(oldClass)\n htmlElement.classList.remove(newClass)\n htmlElement.classList.add(newClass)\n }\n\n if (typeof document !== 'undefined') {\n document.querySelectorAll(`.${oldClass}`).forEach((element) => {\n element.classList.add(`.${newClass}`)\n element.classList.remove(`.${oldClass}`)\n })\n\n if (findShadows) {\n document.querySelectorAll('.shadow-div').forEach((element) => {\n element.shadowRoot?.querySelector(`.${oldClass}`)?.classList.add(newClass)\n element.shadowRoot?.querySelector(`.${oldClass}`)?.classList.remove(oldClass)\n })\n\n document.querySelectorAll('esmf-wrapper').forEach((element) => {\n element.shadowRoot?.querySelector(`.${oldClass}`)?.classList.add(newClass)\n element.shadowRoot?.querySelector(`.${oldClass}`)?.classList.remove(oldClass)\n\n const firstChild: HTMLElement = element.shadowRoot?.childNodes[0] as HTMLElement\n\n if (firstChild) {\n firstChild.classList.add(newClass)\n firstChild.classList.remove(oldClass)\n }\n })\n }\n }\n}\n\nexport const updateColorTheme = (isDark?: boolean, htmlElement?: HTMLElement) => {\n let resolvedIsDark: boolean = isDark || false\n\n if (typeof document !== 'undefined' && isDark === undefined) {\n resolvedIsDark = document.body.classList.contains(baseThemes.dark)\n }\n switchColorTheme(resolvedIsDark, htmlElement || document.body)\n}\n"],"names":["windowMatchMediaChangeEventType","observeThemePreference","getHtmlElement","arguments","length","undefined","document","body","switchCallback","isDark","switchColorThemeHandler","htmlElement","switchColorTheme","changeDarkColorThemeHandler","event","matches","changeLightColorThemeHandler","window","matchMedia","removeEventListener","error","addEventListener","useThemePreference","useEffect","baseThemes","dark","light","findShadows","oldClass","newClass","classList","remove","add","querySelectorAll","concat","forEach","element","_element$shadowRoot","_element$shadowRoot2","shadowRoot","querySelector","_element$shadowRoot3","_element$shadowRoot4","_element$shadowRoot5","firstChild","childNodes","updateColorTheme","resolvedIsDark","contains"],"mappings":"kCAGA,MAAMA,EAAkC,SAE3BC,EAAyB,WAGjC,IAFHC,EAAiCC,UAAAC,OAAAD,QAAAE,IAAAF,UAAAE,GAAAF,UAAA,GAAG,IAAMG,SAASC,KACnDC,EAAyCL,UAAAC,OAAAD,QAAAE,IAAAF,UAAAE,GAAAF,UAAIM,GAAAA,GAAoBA,EAEjE,MAAMC,EAA2BD,IAC/B,MAAME,EAAcT,IAEpBU,SAAAA,EAAmBH,EAAQE,GAC3BH,SAAAA,EAAiBC,EAAO,EAGpBI,EAA+BC,IACnCJ,EAAwBI,EAAMC,QAAQ,EAGlCC,EAAgCF,IACpCJ,GAAyBI,EAAMC,QAAQ,EAGnCN,EAASQ,OAAOC,WAAW,gCAEjC,IACED,OAAOC,WAAW,gCAAgCC,oBAChDnB,EAAiCa,GAEnCI,OAAOC,WAAW,iCAAiCC,oBACjDnB,EAAiCgB,EAErC,CAAE,MAAOI,GAET,CAUA,OARAV,EAAwBD,eAAAA,EAAQM,SAChCE,OAAOC,WAAW,gCAAgCG,iBAChDrB,EAAiCa,GAEnCI,OAAOC,WAAW,iCAAiCG,iBACjDrB,EAAiCgB,GAG5B,KACLC,OAAOC,WAAW,gCAAgCC,oBAChDnB,EAAiCa,GAEnCI,OAAOC,WAAW,iCAAiCC,oBACjDnB,EAAiCgB,EAClC,CAEL,EAEaM,EAAqB,WAG7B,IAFHpB,EAAiCC,UAAAC,OAAAD,QAAAE,IAAAF,UAAAE,GAAAF,UAAA,GAAG,IAAMG,SAASC,KACnDC,EAAyCL,UAAAC,OAAAD,QAAAE,IAAAF,UAAAE,GAAAF,UAAIM,GAAAA,GAAoBA,EAEjEc,GAAU,IAAMtB,EAAuBC,EAAgBM,IAAiB,CAACN,EAAgBM,GAC3F,EAGagB,EAGT,CACFC,KAAM,aACNC,MAAO,eAGId,EAAmB,SAACH,EAAiBE,GAAkD,IAAvBgB,IAAWxB,UAAAC,OAAA,QAAAC,IAAAF,UAAA,KAAAA,UAAA,GACtF,MAAMyB,EAAWnB,EAASe,EAAWE,MAAQF,EAAWC,KAClDI,EAAWpB,EAASe,EAAWC,KAAOD,EAAWE,MAEnDf,IACFA,EAAYmB,UAAUC,OAAOH,GAC7BjB,EAAYmB,UAAUC,OAAOF,GAC7BlB,EAAYmB,UAAUE,IAAIH,IAGJ,oBAAbvB,WACTA,SAAS2B,iBAAgBC,IAAAA,OAAKN,IAAYO,SAASC,IACjDA,EAAQN,UAAUE,QAAGE,OAAKL,IAC1BO,EAAQN,UAAUC,WAAMG,OAAKN,GAAW,IAGtCD,IACFrB,SAAS2B,iBAAiB,eAAeE,SAASC,IAAY,IAAAC,EAAAC,EAC1C,QAAlBD,EAAAD,EAAQG,kBAAU,IAAAF,GAA+B,QAA/BA,EAAlBA,EAAoBG,cAAa,IAAAN,OAAKN,WAAW,IAAAS,GAAjDA,EAAmDP,UAAUE,IAAIH,GAC/C,QAAlBS,EAAAF,EAAQG,kBAAU,IAAAD,GAA+B,QAA/BA,EAAlBA,EAAoBE,cAAa,IAAAN,OAAKN,WAAW,IAAAU,GAAjDA,EAAmDR,UAAUC,OAAOH,EAAS,IAG/EtB,SAAS2B,iBAAiB,gBAAgBE,SAASC,IAAY,IAAAK,EAAAC,EAAAC,EAC3C,QAAlBF,EAAAL,EAAQG,kBAAU,IAAAE,GAA+B,QAA/BA,EAAlBA,EAAoBD,cAAa,IAAAN,OAAKN,WAAW,IAAAa,GAAjDA,EAAmDX,UAAUE,IAAIH,GAC/C,QAAlBa,EAAAN,EAAQG,kBAAU,IAAAG,GAA+B,QAA/BA,EAAlBA,EAAoBF,cAAa,IAAAN,OAAKN,WAAW,IAAAc,GAAjDA,EAAmDZ,UAAUC,OAAOH,GAEpE,MAAMgB,EAA4CD,QAArBA,EAAGP,EAAQG,sBAAUI,SAAlBA,EAAoBE,WAAW,GAE3DD,IACFA,EAAWd,UAAUE,IAAIH,GACzBe,EAAWd,UAAUC,OAAOH,GAC9B,KAIR,EAEakB,EAAmBA,CAACrC,EAAkBE,KACjD,IAAIoC,EAA0BtC,IAAU,EAEhB,oBAAbH,eAAuCD,IAAXI,IACrCsC,EAAiBzC,SAASC,KAAKuB,UAAUkB,SAASxB,EAAWC,OAE/Db,EAAiBmC,EAAgBpC,GAAeL,SAASC,KAAK"}
1
+ {"version":3,"file":"useThemePreference.js","sources":["../../../../../../src/core/hooks/useThemePreference.ts"],"sourcesContent":["import { useEffect } from 'react'\n\n\nconst windowMatchMediaChangeEventType = 'change'\n\nexport const observeThemePreference = (\n getHtmlElement: () => HTMLElement = (): HTMLElement => document.body,\n switchCallback: (isDark: boolean) => void = (isDark: boolean): boolean => isDark,\n): () => void => {\n const switchColorThemeHandler = (isDark: boolean): void => {\n const htmlElement = getHtmlElement()\n\n switchColorTheme?.(isDark, htmlElement)\n switchCallback?.(isDark)\n }\n\n const changeDarkColorThemeHandler = (event: MediaQueryListEvent): void => {\n switchColorThemeHandler(event.matches)\n }\n\n const changeLightColorThemeHandler = (event: MediaQueryListEvent): void => {\n switchColorThemeHandler(!event.matches)\n }\n\n const isDark = window.matchMedia('(prefers-color-scheme: dark)')\n\n try {\n window.matchMedia('(prefers-color-scheme: dark)').removeEventListener(\n windowMatchMediaChangeEventType, changeDarkColorThemeHandler,\n )\n window.matchMedia('(prefers-color-scheme: light)').removeEventListener(\n windowMatchMediaChangeEventType, changeLightColorThemeHandler,\n )\n } catch (error) {\n console.error(`Error::observeThemePreference::removeEventListener: ${error}`)\n }\n\n switchColorThemeHandler(isDark?.matches)\n window.matchMedia('(prefers-color-scheme: dark)').addEventListener(\n windowMatchMediaChangeEventType, changeDarkColorThemeHandler,\n )\n window.matchMedia('(prefers-color-scheme: light)').addEventListener(\n windowMatchMediaChangeEventType, changeLightColorThemeHandler,\n )\n\n return () => {\n window.matchMedia('(prefers-color-scheme: dark)').removeEventListener(\n windowMatchMediaChangeEventType, changeDarkColorThemeHandler,\n )\n window.matchMedia('(prefers-color-scheme: light)').removeEventListener(\n windowMatchMediaChangeEventType, changeLightColorThemeHandler,\n )\n }\n}\n\nexport const useThemePreference = (\n getHtmlElement: () => HTMLElement = (): HTMLElement => document.body,\n switchCallback: (isDark: boolean) => void = (isDark: boolean): boolean => isDark,\n): void => {\n useEffect(() => observeThemePreference(getHtmlElement, switchCallback), [getHtmlElement, switchCallback])\n}\n\n\nexport const baseThemes: {\n dark: string\n light: string\n} = {\n dark: 'theme-dark',\n light: 'theme-light',\n}\n\nexport const switchColorTheme = (isDark: boolean, htmlElement?: HTMLElement, findShadows = true): void => {\n const oldClass = isDark ? baseThemes.light : baseThemes.dark\n const newClass = isDark ? baseThemes.dark : baseThemes.light\n\n if (htmlElement) {\n htmlElement.classList.remove(oldClass)\n htmlElement.classList.remove(newClass)\n htmlElement.classList.add(newClass)\n }\n\n if (typeof document !== 'undefined') {\n document.querySelectorAll(`.${oldClass}`).forEach((element) => {\n element.classList.add(`.${newClass}`)\n element.classList.remove(`.${oldClass}`)\n })\n\n if (findShadows) {\n document.querySelectorAll('.shadow-div').forEach((element) => {\n element.shadowRoot?.querySelector(`.${oldClass}`)?.classList.add(newClass)\n element.shadowRoot?.querySelector(`.${oldClass}`)?.classList.remove(oldClass)\n })\n\n document.querySelectorAll('esmf-wrapper').forEach((element) => {\n element.shadowRoot?.querySelector(`.${oldClass}`)?.classList.add(newClass)\n element.shadowRoot?.querySelector(`.${oldClass}`)?.classList.remove(oldClass)\n\n const firstChild: HTMLElement = element.shadowRoot?.childNodes[0] as HTMLElement\n\n if (firstChild) {\n firstChild.classList.add(newClass)\n firstChild.classList.remove(oldClass)\n }\n })\n }\n }\n}\n\nexport const updateColorTheme = (isDark?: boolean, htmlElement?: HTMLElement): void => {\n let resolvedIsDark: boolean = isDark || false\n\n if (typeof document !== 'undefined' && isDark === undefined) {\n resolvedIsDark = document.body.classList.contains(baseThemes.dark)\n }\n switchColorTheme(resolvedIsDark, htmlElement || document.body)\n}\n"],"names":["windowMatchMediaChangeEventType","observeThemePreference","getHtmlElement","arguments","length","undefined","document","body","switchCallback","isDark","switchColorThemeHandler","htmlElement","switchColorTheme","changeDarkColorThemeHandler","event","matches","changeLightColorThemeHandler","window","matchMedia","removeEventListener","error","addEventListener","useThemePreference","useEffect","baseThemes","dark","light","findShadows","oldClass","newClass","classList","remove","add","querySelectorAll","concat","forEach","element","_element$shadowRoot","_element$shadowRoot2","shadowRoot","querySelector","_element$shadowRoot3","_element$shadowRoot4","_element$shadowRoot5","firstChild","childNodes","updateColorTheme","resolvedIsDark","contains"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useTranslations.js","sources":["../../../../../../src/core/hooks/useTranslations.ts"],"sourcesContent":["import { TFunction } from 'i18next'\nimport { useTranslation } from 'react-i18next'\n\ntype tValuFunction = (key: string | undefined, params?: Record<string, any>) => string\nconst cache: Map<TFunction, tValuFunction> = new Map()\n\nlet resolvedUseTranslation = useTranslation\n\nexport const setUseTranslation = (useTrans: any) => {\n resolvedUseTranslation = useTrans\n}\n\nexport const createSafeT = (t: TFunction): tValuFunction => {\n if (cache.has(t)) {\n return cache.get(t) as tValuFunction\n }\n const value: tValuFunction = ((key: string | undefined, params?: Record<string, any>): string => {\n if (!key) {\n return ''\n }\n const limits = key.split(' ')\n\n if (limits.length === 2) {\n return t(limits[0], { ...params, limit: limits[1] })\n }\n return t(key, params)\n })\n\n cache.set(t, value)\n return value\n}\n\ntype safeTF = { t: (key: string | undefined, params?: Record<string, any>) => string }\n\n// TODO memoize\nexport const useTranslations = (namespaces: string[]): safeTF => {\n const { t } = resolvedUseTranslation(namespaces)\n\n return { t: createSafeT(t) as tValuFunction }\n}\n"],"names":["cache","Map","resolvedUseTranslation","useTranslation","setUseTranslation","useTrans","createSafeT","t","has","get","value","key","params","limits","split","length","limit","set","useTranslations","namespaces"],"mappings":"6HAIA,MAAMA,EAAuC,IAAIC,IAEjD,IAAIC,EAAyBC,EAEhBC,MAAAA,EAAqBC,IAChCH,EAAyBG,CAAQ,EAGtBC,EAAeC,IAC1B,GAAIP,EAAMQ,IAAID,GACZ,OAAOP,EAAMS,IAAIF,GAEnB,MAAMG,EAAwBA,CAACC,EAAyBC,KACtD,IAAKD,EACH,MAAO,GAET,MAAME,EAASF,EAAIG,MAAM,KAEzB,OAAsB,IAAlBD,EAAOE,OACFR,EAAEM,EAAO,GAAI,IAAKD,EAAQI,MAAOH,EAAO,KAE1CN,EAAEI,EAAKC,EAAO,EAIvB,OADAZ,EAAMiB,IAAIV,EAAGG,GACNA,CAAK,EAMDQ,EAAmBC,IAC9B,MAAMZ,EAAEA,GAAML,EAAuBiB,GAErC,MAAO,CAAEZ,EAAGD,EAAYC,GAAqB"}
1
+ {"version":3,"file":"useTranslations.js","sources":["../../../../../../src/core/hooks/useTranslations.ts"],"sourcesContent":["import { TFunction } from 'i18next'\nimport { useTranslation } from 'react-i18next'\n\ntype tValuFunction = (key: string | undefined, params?: Record<string, any>) => string\nconst cache: Map<TFunction, tValuFunction> = new Map()\n\nlet resolvedUseTranslation = useTranslation\n\nexport const setUseTranslation = (useTrans: any): void => {\n resolvedUseTranslation = useTrans\n}\n\nexport const createSafeT = (t: TFunction): tValuFunction => {\n if (cache.has(t)) {\n return cache.get(t) as tValuFunction\n }\n const value: tValuFunction = ((key: string | undefined, params?: Record<string, any>): string => {\n if (!key) {\n return ''\n }\n const limits = key.split(' ')\n\n if (limits.length === 2) {\n return t(limits[0], { ...params, limit: limits[1] })\n }\n return t(key, params)\n })\n\n cache.set(t, value)\n return value\n}\n\ntype safeTF = { t: (key: string | undefined, params?: Record<string, any>) => string }\n\n// TODO memoize\nexport const useTranslations = (namespaces: string[]): safeTF => {\n const { t } = resolvedUseTranslation(namespaces)\n\n return { t: createSafeT(t) as tValuFunction }\n}\n"],"names":["cache","Map","resolvedUseTranslation","useTranslation","setUseTranslation","useTrans","createSafeT","t","has","get","value","key","params","limits","split","length","limit","set","useTranslations","namespaces"],"mappings":"6HAIA,MAAMA,EAAuC,IAAIC,IAEjD,IAAIC,EAAyBC,EAEhBC,MAAAA,EAAqBC,IAChCH,EAAyBG,CAAQ,EAGtBC,EAAeC,IAC1B,GAAIP,EAAMQ,IAAID,GACZ,OAAOP,EAAMS,IAAIF,GAEnB,MAAMG,EAAwBA,CAACC,EAAyBC,KACtD,IAAKD,EACH,MAAO,GAET,MAAME,EAASF,EAAIG,MAAM,KAEzB,OAAsB,IAAlBD,EAAOE,OACFR,EAAEM,EAAO,GAAI,IAAKD,EAAQI,MAAOH,EAAO,KAE1CN,EAAEI,EAAKC,EAAO,EAIvB,OADAZ,EAAMiB,IAAIV,EAAGG,GACNA,CAAK,EAMDQ,EAAmBC,IAC9B,MAAMZ,EAAEA,GAAML,EAAuBiB,GAErC,MAAO,CAAEZ,EAAGD,EAAYC,GAAqB"}
@@ -1 +1 @@
1
- {"version":3,"file":"clickOutside.js","sources":["../../../../../../../src/core/ui/utils/clickOutside.ts"],"sourcesContent":["type Element = HTMLElement | null | (() => HTMLElement)\ntype CallbackFunction = (target: HTMLElement | null) => void\n\nexport const handleClickOutside = (\n element: Element,\n callback?: CallbackFunction,\n) => (event: MouseEvent) => {\n const target = event.target as HTMLElement | null\n const resolvedElement:HTMLElement | null = typeof element === 'function' ? element() : element\n\n if (resolvedElement && !resolvedElement.contains(target)) {\n callback?.(target)\n }\n}\n"],"names":["handleClickOutside","element","callback","event","target","resolvedElement","contains"],"mappings":"AAGO,MAAMA,EAAqBA,CAChCC,EACAC,IACIC,IACJ,MAAMC,EAASD,EAAMC,OACfC,EAAwD,mBAAZJ,EAAyBA,IAAYA,EAEnFI,IAAoBA,EAAgBC,SAASF,KAC/CF,SAAAA,EAAWE,GACb"}
1
+ {"version":3,"file":"clickOutside.js","sources":["../../../../../../../src/core/ui/utils/clickOutside.ts"],"sourcesContent":["type Element = HTMLElement | null | (() => HTMLElement)\ntype CallbackFunction = (target: HTMLElement | null) => void\n\nexport const handleClickOutside = (\n element: Element,\n callback?: CallbackFunction,\n) => (event: MouseEvent): void => {\n const target = event.target as HTMLElement | null\n const resolvedElement:HTMLElement | null = typeof element === 'function' ? element() : element\n\n if (resolvedElement && !resolvedElement.contains(target)) {\n callback?.(target)\n }\n}\n"],"names":["handleClickOutside","element","callback","event","target","resolvedElement","contains"],"mappings":"AAGO,MAAMA,EAAqBA,CAChCC,EACAC,IACIC,IACJ,MAAMC,EAASD,EAAMC,OACfC,EAAwD,mBAAZJ,EAAyBA,IAAYA,EAEnFI,IAAoBA,EAAgBC,SAASF,KAC/CF,SAAAA,EAAWE,GACb"}
@@ -1 +1 @@
1
- {"version":3,"file":"ui.js","sources":["../../../../../../../src/core/utils/helpers/ui.ts"],"sourcesContent":["export const noop = () => undefined\n\n\nexport const mapSerReplacer = (key: string, value: unknown) => {\n if (value instanceof Map) {\n return {\n dataType: 'Map',\n value: Array.from(value.entries()), // or with spread: value: [...value]\n }\n }\n return value\n}\n\nexport type TClassName = string | boolean | null | undefined\nexport const classNames = (...classes: TClassName[]) => classes\n .filter((className: TClassName) => (typeof className === 'string' && className !== undefined && className !== null))\n .filter(Boolean).join(' ')\n\n\nexport type PropsCategoriesType = {\n dataProps: Record<string, unknown>\n restProps: Record<string, unknown>\n};\n\nexport const parseProps = (props: Record<string, unknown>):PropsCategoriesType => {\n const dataProps: Record<string, unknown> = {}\n const restProps: Record<string, unknown> = {}\n\n Object.entries(props).forEach(([key, value]) => {\n if (key.substr(0, 5) === 'data-' || key.substr(0, 4) === 'data') {\n dataProps[key] = value\n } else {\n restProps[key] = value\n }\n })\n return { dataProps, restProps }\n}\n"],"names":["classNames","_len","arguments","length","classes","Array","_key","filter","className","Boolean","join","parseProps","props","dataProps","restProps","Object","entries","forEach","_ref","key","value","substr"],"mappings":"iFAcaA,MAAAA,EAAa,WAAA,IAAA,IAAAC,EAAAC,UAAAC,OAAIC,EAAOC,IAAAA,MAAAJ,GAAAK,EAAA,EAAAA,EAAAL,EAAAK,IAAPF,EAAOE,GAAAJ,UAAAI,GAAA,OAAmBF,EACrDG,QAAQC,GAAgD,iBAAdA,GAAP,MAAiCA,IACpED,OAAOE,SAASC,KAAK,IAAI,EAQfC,EAAcC,IACzB,MAAMC,EAAqC,CAAA,EACrCC,EAAqC,CAAA,EAS3C,OAPAC,OAAOC,QAAQJ,GAAOK,SAAQC,IAAkB,IAAhBC,EAAKC,GAAMF,EAChB,UAArBC,EAAIE,OAAO,EAAG,IAAuC,SAArBF,EAAIE,OAAO,EAAG,GAChDR,EAAUM,GAAOC,EAEjBN,EAAUK,GAAOC,CACnB,IAEK,CAAEP,YAAWC,YAAW"}
1
+ {"version":3,"file":"ui.js","sources":["../../../../../../../src/core/utils/helpers/ui.ts"],"sourcesContent":["export const noop = (): void => undefined\n\n\nexport const mapSerReplacer\n= (key: string, value: unknown): unknown | { dataType: string; value: Array<unknown>} => {\n if (value instanceof Map) {\n return {\n dataType: 'Map',\n value: Array.from(value.entries()), // or with spread: value: [...value]\n }\n }\n return value\n}\n\nexport type TClassName = string | boolean | null | undefined\nexport const classNames = (...classes: TClassName[]): string => classes\n .filter((className: TClassName) => (typeof className === 'string' && className !== undefined && className !== null))\n .filter(Boolean).join(' ')\n\n\nexport type PropsCategoriesType = {\n dataProps: Record<string, unknown>\n restProps: Record<string, unknown>\n};\n\nexport const parseProps = (props: Record<string, unknown>):PropsCategoriesType => {\n const dataProps: Record<string, unknown> = {}\n const restProps: Record<string, unknown> = {}\n\n Object.entries(props).forEach(([key, value]) => {\n if (key.substr(0, 5) === 'data-' || key.substr(0, 4) === 'data') {\n dataProps[key] = value\n } else {\n restProps[key] = value\n }\n })\n return { dataProps, restProps }\n}\n"],"names":["classNames","_len","arguments","length","classes","Array","_key","filter","className","Boolean","join","parseProps","props","dataProps","restProps","Object","entries","forEach","_ref","key","value","substr"],"mappings":"iFAeaA,MAAAA,EAAa,WAAA,IAAA,IAAAC,EAAAC,UAAAC,OAAIC,EAAOC,IAAAA,MAAAJ,GAAAK,EAAA,EAAAA,EAAAL,EAAAK,IAAPF,EAAOE,GAAAJ,UAAAI,GAAA,OAA2BF,EAC7DG,QAAQC,GAAgD,iBAAdA,GAAP,MAAiCA,IACpED,OAAOE,SAASC,KAAK,IAAI,EAQfC,EAAcC,IACzB,MAAMC,EAAqC,CAAA,EACrCC,EAAqC,CAAA,EAS3C,OAPAC,OAAOC,QAAQJ,GAAOK,SAAQC,IAAkB,IAAhBC,EAAKC,GAAMF,EAChB,UAArBC,EAAIE,OAAO,EAAG,IAAuC,SAArBF,EAAIE,OAAO,EAAG,GAChDR,EAAUM,GAAOC,EAEjBN,EAAUK,GAAOC,CACnB,IAEK,CAAEP,YAAWC,YAAW"}
@@ -1,3 +1,46 @@
1
+ .layoutBox-module_layout-box__faPND {
2
+ display: flex;
3
+ position: relative;
4
+ flex-direction: row;
5
+ flex: 0;
6
+ flex-grow: 0;
7
+ flex-shrink: 0;
8
+ flex-basis: auto;
9
+ flex-wrap: nowrap;
10
+ gap: 0;
11
+ text-align: left;
12
+ justify-content: flex-start;
13
+ align-items: flex-start;
14
+ align-self: auto;
15
+ margin: 0;
16
+ padding: 0;
17
+ width: auto;
18
+ height: auto;
19
+ max-width: none;
20
+ max-height: none;
21
+ min-width: 0;
22
+ min-height: 0;
23
+ border-radius: initial;
24
+ }
25
+ .divider-module_divider-line__6CesR {
26
+ position: relative;
27
+ display: block;
28
+ transition: opacity, width, height 250ms ease-in-out;
29
+ background-color: var(--color);
30
+ opacity: var(--opacity);
31
+ }
32
+ .divider-module_divider-line__6CesR.divider-module_vertical__qSVWD {
33
+ height: var(--length);
34
+ left: var(--left);
35
+ width: var(--width);
36
+ margin: var(--margin);
37
+ }
38
+ .divider-module_divider-line__6CesR.divider-module_horizontal__Gz-Oj {
39
+ width: var(--length);
40
+ left: var(--left);
41
+ height: var(--height);
42
+ margin: var(--margin);
43
+ }
1
44
  .icon-module_icon-base-parent__nOMvW {
2
45
  line-height: 1px !important;
3
46
  }
@@ -28,25 +71,6 @@
28
71
  width: var(--height);
29
72
  height: var(--width);
30
73
  }
31
- .divider-module_divider-line__6CesR {
32
- position: relative;
33
- display: block;
34
- transition: opacity, width, height 250ms ease-in-out;
35
- background-color: var(--color);
36
- opacity: var(--opacity);
37
- }
38
- .divider-module_divider-line__6CesR.divider-module_vertical__qSVWD {
39
- height: var(--length);
40
- left: var(--left);
41
- width: var(--width);
42
- margin: var(--margin);
43
- }
44
- .divider-module_divider-line__6CesR.divider-module_horizontal__Gz-Oj {
45
- width: var(--length);
46
- left: var(--left);
47
- height: var(--height);
48
- margin: var(--margin);
49
- }
50
74
  .CollapsibleContainer-module_collapsible-container__u0Jmm {
51
75
  transform-origin: 0% 0%;
52
76
  opacity: 0;
@@ -80,30 +104,6 @@
80
104
  max-width: var(--prop-value);
81
105
  opacity: 1;
82
106
  }
83
- .layoutBox-module_layout-box__faPND {
84
- display: flex;
85
- position: relative;
86
- flex-direction: row;
87
- flex: 0;
88
- flex-grow: 0;
89
- flex-shrink: 0;
90
- flex-basis: auto;
91
- flex-wrap: nowrap;
92
- gap: 0;
93
- text-align: left;
94
- justify-content: flex-start;
95
- align-items: flex-start;
96
- align-self: auto;
97
- margin: 0;
98
- padding: 0;
99
- width: auto;
100
- height: auto;
101
- max-width: none;
102
- max-height: none;
103
- min-width: 0;
104
- min-height: 0;
105
- border-radius: initial;
106
- }
107
107
  .flowLayout-module_flowLayout__VHpnY {
108
108
  overflow: auto;
109
109
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useClassNames.js","sources":["../../../../../src/core/hooks/useClassNames.ts"],"sourcesContent":["import { useMemo } from 'react'\n\nimport { classNames, TClassName } from '../utils/helpers/ui'\n\nexport const useClassNames = (\n classes: TClassName[],\n deps: unknown[],\n// eslint-disable-next-line react-hooks/exhaustive-deps\n) => useMemo(() => classNames(...classes), [classes, deps])\n"],"names":["useClassNames","classes","deps","useMemo","classNames"],"mappings":"+KAI6BA,CAC3BC,EACAC,IAEGC,EAAOA,SAAC,IAAMC,EAAAA,cAAcH,IAAU,CAACA,EAASC"}
1
+ {"version":3,"file":"useClassNames.js","sources":["../../../../../src/core/hooks/useClassNames.ts"],"sourcesContent":["import { useMemo } from 'react'\n\nimport { classNames, TClassName } from '../utils/helpers/ui'\n\nexport const useClassNames = (\n classes: TClassName[],\n deps: unknown[],\n// eslint-disable-next-line react-hooks/exhaustive-deps\n): ReturnType<typeof classNames> => useMemo(() => classNames(...classes), [classes, deps])\n"],"names":["useClassNames","classes","deps","useMemo","classNames"],"mappings":"+KAI6BA,CAC3BC,EACAC,IAEkCC,EAAOA,SAAC,IAAMC,EAAAA,cAAcH,IAAU,CAACA,EAASC"}
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("react"),t=require("../constants/ui.constants.js"),n=require("../ui/utils/clickOutside.js");exports.outsideClickHandler=function(e,i){let s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:n.handleClickOutside(e,i);return document.addEventListener(t.EventName.Click,s),()=>document.removeEventListener(t.EventName.Click,s)},exports.useOutsideClick=function(i,s){let c=arguments.length>2&&void 0!==arguments[2]?arguments[2]:n.handleClickOutside(i,s);const u=e.useCallback((()=>document.removeEventListener(t.EventName.Click,c)),[]);return e.useEffect((()=>(u(),document.addEventListener(t.EventName.Click,c),u)),[i,c,u]),u};
1
+ "use strict";var e=require("react"),t=require("../constants/ui.constants.js"),n=require("../ui/utils/clickOutside.js");exports.outsideClickHandler=function(e,i){let s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:n.handleClickOutside(e,i);return document.addEventListener(t.EventName.Click,s),()=>document.removeEventListener(t.EventName.Click,s)},exports.useOutsideClick=function(i,s){let c=arguments.length>2&&void 0!==arguments[2]?arguments[2]:n.handleClickOutside(i,s);const u=e.useCallback((()=>document.removeEventListener(t.EventName.Click,c)),[c]);return e.useEffect((()=>(u(),document.addEventListener(t.EventName.Click,c),u)),[i,c,u]),u};
2
2
  //# sourceMappingURL=useOutsideClick.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useOutsideClick.js","sources":["../../../../../src/core/hooks/useOutsideClick.ts"],"sourcesContent":["import { useEffect, useCallback } from 'react'\n\nimport { EventName } from '../constants/ui.constants'\nimport { handleClickOutside as defaultHandleClickOutside } from '../ui/utils/clickOutside'\n\ntype Element = HTMLElement | null | (() => HTMLElement)\ntype CallbackFunction = (target: HTMLElement | null) => void\n\nexport function useOutsideClick(\n element: Element,\n callback?: CallbackFunction,\n handleClickOutside = defaultHandleClickOutside(element, callback),\n): () => void {\n const unsubscriber = useCallback(() => document.removeEventListener(EventName.Click, handleClickOutside), [])\n\n useEffect(() => {\n unsubscriber()\n document.addEventListener(EventName.Click, handleClickOutside)\n\n return unsubscriber\n }, [element, handleClickOutside, unsubscriber])\n\n return unsubscriber\n}\n\nexport function outsideClickHandler(\n element: Element,\n callback?: CallbackFunction,\n handleClickOutside = defaultHandleClickOutside(element, callback),\n): () => void {\n const unsubscriber = () => document.removeEventListener(EventName.Click, handleClickOutside)\n\n document.addEventListener(EventName.Click, handleClickOutside)\n\n return unsubscriber\n}\n"],"names":["element","callback","handleClickOutside","arguments","length","undefined","defaultHandleClickOutside","document","addEventListener","EventName","Click","unsubscriber","removeEventListener","useCallback","useEffect"],"mappings":"mJAyBO,SACLA,EACAC,GAEY,IADZC,EAAkBC,UAAAC,eAAAC,IAAAF,UAAA,GAAAA,UAAGG,GAAAA,EAAyBJ,mBAACF,EAASC,GAMxD,OAFAM,SAASC,iBAAiBC,EAAAA,UAAUC,MAAOR,GAFtBS,IAAMJ,SAASK,oBAAoBH,EAAAA,UAAUC,MAAOR,EAK3E,0BA3BO,SACLF,EACAC,GAEY,IADZC,EAAkBC,UAAAC,eAAAC,IAAAF,UAAA,GAAAA,UAAGG,GAAAA,EAAyBJ,mBAACF,EAASC,GAExD,MAAMU,EAAeE,eAAY,IAAMN,SAASK,oBAAoBH,EAASA,UAACC,MAAOR,IAAqB,IAS1G,OAPAY,EAAAA,WAAU,KACRH,IACAJ,SAASC,iBAAiBC,EAAAA,UAAUC,MAAOR,GAEpCS,IACN,CAACX,EAASE,EAAoBS,IAE1BA,CACT"}
1
+ {"version":3,"file":"useOutsideClick.js","sources":["../../../../../src/core/hooks/useOutsideClick.ts"],"sourcesContent":["import { useEffect, useCallback } from 'react'\n\nimport { EventName } from '../constants/ui.constants'\nimport { handleClickOutside as defaultHandleClickOutside } from '../ui/utils/clickOutside'\n\ntype Element = HTMLElement | null | (() => HTMLElement)\ntype CallbackFunction = (target: HTMLElement | null) => void\n\nexport function useOutsideClick(\n element: Element,\n callback?: CallbackFunction,\n handleClickOutside = defaultHandleClickOutside(element, callback),\n): () => void {\n const unsubscriber = useCallback(\n () => document.removeEventListener(EventName.Click, handleClickOutside), [handleClickOutside],\n )\n\n useEffect(() => {\n unsubscriber()\n document.addEventListener(EventName.Click, handleClickOutside)\n\n return unsubscriber\n }, [element, handleClickOutside, unsubscriber])\n\n return unsubscriber\n}\n\nexport function outsideClickHandler(\n element: Element,\n callback?: CallbackFunction,\n handleClickOutside = defaultHandleClickOutside(element, callback),\n): () => void {\n const unsubscriber = (): void => document.removeEventListener(EventName.Click, handleClickOutside)\n\n document.addEventListener(EventName.Click, handleClickOutside)\n\n return unsubscriber\n}\n"],"names":["element","callback","handleClickOutside","arguments","length","undefined","defaultHandleClickOutside","document","addEventListener","EventName","Click","unsubscriber","removeEventListener","useCallback","useEffect"],"mappings":"mJA2BO,SACLA,EACAC,GAEY,IADZC,EAAkBC,UAAAC,eAAAC,IAAAF,UAAA,GAAAA,UAAGG,GAAAA,EAAyBJ,mBAACF,EAASC,GAMxD,OAFAM,SAASC,iBAAiBC,EAAAA,UAAUC,MAAOR,GAFtBS,IAAYJ,SAASK,oBAAoBH,EAAAA,UAAUC,MAAOR,EAKjF,0BA7BO,SACLF,EACAC,GAEY,IADZC,EAAkBC,UAAAC,eAAAC,IAAAF,UAAA,GAAAA,UAAGG,GAAAA,EAAyBJ,mBAACF,EAASC,GAExD,MAAMU,EAAeE,EAAAA,aACnB,IAAMN,SAASK,oBAAoBH,YAAUC,MAAOR,IAAqB,CAACA,IAU5E,OAPAY,EAAAA,WAAU,KACRH,IACAJ,SAASC,iBAAiBC,EAAAA,UAAUC,MAAOR,GAEpCS,IACN,CAACX,EAASE,EAAoBS,IAE1BA,CACT"}
@@ -1 +1 @@
1
- {"version":3,"file":"useResize.js","sources":["../../../../../src/core/hooks/useResize.ts"],"sourcesContent":["import { MutableRefObject, useLayoutEffect, useMemo, useState, useRef } from 'react'\nimport debounce from 'lodash-es/debounce'\n\nexport type WrapperSize = {width: undefined | number; height: undefined | number}\n\n\ntype Unobserver = () => (null | void)\n\nexport type UseResizeCallBack = (wrapperSize: WrapperSize) => void\n\n// eslint-disable-next-line default-param-last\nexport const useResize = (debounceDelay = 250, callBack?: UseResizeCallBack): [\n MutableRefObject<HTMLElement | null | undefined>, WrapperSize, Unobserver | undefined] => {\n const [containerSize, setContainerSize]\n = useState<WrapperSize>({ width: undefined, height: undefined })\n\n const lastResizeWidthRef = useRef<WrapperSize>({ width: 0, height: 0 })\n const containerRef: MutableRefObject<HTMLElement | undefined | null> = useRef<HTMLElement | undefined | null>()\n const unobserverRef = useRef<Unobserver>()\n\n const debouncedResizeWrapper = useMemo(() => debounce((entries) => {\n const newResizeWidth = entries[0].contentRect.width\n const newResizeHeight = entries[0].contentRect.height\n\n if (lastResizeWidthRef.current?.width === newResizeWidth\n && lastResizeWidthRef.current?.height === newResizeHeight) {\n return\n }\n lastResizeWidthRef.current = { width: newResizeWidth, height: newResizeHeight }\n\n // eslint-disable-next-line semi-style\n ;(callBack || setContainerSize)({\n width: containerRef?.current?.clientWidth,\n height: containerRef?.current?.clientHeight,\n })\n }, debounceDelay), [callBack, debounceDelay])\n\n useLayoutEffect(() => {\n let resizeObserver: ResizeObserver\n let containerElement: HTMLElement\n\n if (containerRef?.current) {\n containerElement = containerRef?.current\n resizeObserver = new ResizeObserver(debouncedResizeWrapper)\n resizeObserver.observe(containerElement as Element)\n\n // eslint-disable-next-line semi-style\n ;(callBack || setContainerSize)({\n width: containerRef?.current?.clientWidth,\n height: containerRef?.current?.clientHeight,\n })\n }\n\n const unobserver = () => {\n resizeObserver?.unobserve?.(containerElement as Element)\n }\n\n // setUnobserver(unobserver)\n unobserverRef.current = unobserver\n\n return unobserver\n }, [debouncedResizeWrapper, containerRef, callBack])\n\n return [containerRef, containerSize, unobserverRef.current]\n}\n"],"names":["debounceDelay","arguments","length","undefined","callBack","containerSize","setContainerSize","useState","width","height","lastResizeWidthRef","useRef","containerRef","unobserverRef","debouncedResizeWrapper","useMemo","debounce","entries","_lastResizeWidthRef$c","_lastResizeWidthRef$c2","_containerRef$current","_containerRef$current2","newResizeWidth","contentRect","newResizeHeight","current","clientWidth","clientHeight","useLayoutEffect","resizeObserver","containerElement","_containerRef$current3","_containerRef$current4","ResizeObserver","observe","unobserver","_resizeObserver","_resizeObserver$unobs","unobserve","call"],"mappings":"gMAWyB,WACmE,IADlEA,EAAaC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,IAAKG,EAA4BH,UAAAC,OAAAD,EAAAA,kBAAAE,EAEzE,MAAOE,EAAeC,GAClBC,WAAsB,CAAEC,WAAOL,EAAWM,YAAQN,IAEhDO,EAAqBC,EAAAA,OAAoB,CAAEH,MAAO,EAAGC,OAAQ,IAC7DG,EAAiED,EAAAA,SACjEE,EAAgBF,EAAAA,SAEhBG,EAAyBC,EAAAA,SAAQ,IAAMC,EAAAA,SAAUC,IAAY,IAAAC,EAAAC,EAAAC,EAAAC,EACjE,MAAMC,EAAiBL,EAAQ,GAAGM,YAAYf,MACxCgB,EAAkBP,EAAQ,GAAGM,YAAYd,QAEjBS,QAA1BA,EAAAR,EAAmBe,eAAnBP,IAA0BA,OAA1BA,EAAAA,EAA4BV,SAAUc,IACX,QAA1BH,EAAAT,EAAmBe,eAAO,IAAAN,OAAA,EAA1BA,EAA4BV,UAAWe,IAG5Cd,EAAmBe,QAAU,CAAEjB,MAAOc,EAAgBb,OAAQe,IAG5DpB,GAAYE,GAAkB,CAC9BE,MAAOI,SAAqBQ,QAATA,EAAZR,EAAca,eAAdL,IAAqBA,OAArBA,EAAAA,EAAuBM,YAC9BjB,OAAQG,SAAqB,QAATS,EAAZT,EAAca,eAAO,IAAAJ,OAAA,EAArBA,EAAuBM,eAC/B,GACD3B,IAAgB,CAACI,EAAUJ,IA4B9B,OA1BA4B,EAAAA,iBAAgB,KACd,IAAIC,EACAC,EAEuB,IAAAC,EAAAC,EAAvBpB,SAAAA,EAAca,UAChBK,EAAmBlB,aAAAA,EAAAA,EAAca,QACjCI,EAAiB,IAAII,eAAenB,GACpCe,EAAeK,QAAQJ,IAGrB1B,GAAYE,GAAkB,CAC9BE,MAAOI,SAAqBmB,QAATA,EAAZnB,EAAca,eAAdM,IAAqBA,OAArBA,EAAAA,EAAuBL,YAC9BjB,OAAQG,SAAqB,QAAToB,EAAZpB,EAAca,eAAO,IAAAO,OAAA,EAArBA,EAAuBL,gBAInC,MAAMQ,EAAaA,KAAM,IAAAC,EAAAC,EACT,QAAdD,EAAAP,SAAcQ,IAAAD,GAAWC,QAAXA,EAAdD,EAAgBE,qBAASD,GAAzBA,EAAAE,KAAAH,EAA4BN,EAA4B,EAM1D,OAFAjB,EAAcY,QAAUU,EAEjBA,CAAU,GAChB,CAACrB,EAAwBF,EAAcR,IAEnC,CAACQ,EAAcP,EAAeQ,EAAcY,QACrD"}
1
+ {"version":3,"file":"useResize.js","sources":["../../../../../src/core/hooks/useResize.ts"],"sourcesContent":["import { MutableRefObject, useLayoutEffect, useMemo, useState, useRef } from 'react'\nimport debounce from 'lodash-es/debounce'\n\nexport type WrapperSize = {width: undefined | number; height: undefined | number}\n\n\ntype Unobserver = () => (null | void)\n\nexport type UseResizeCallBack = (wrapperSize: WrapperSize) => void\n\n// eslint-disable-next-line default-param-last\nexport const useResize = (debounceDelay = 250, callBack?: UseResizeCallBack): [\n MutableRefObject<HTMLElement | null | undefined>, WrapperSize, Unobserver | undefined] => {\n const [containerSize, setContainerSize]\n = useState<WrapperSize>({ width: undefined, height: undefined })\n\n const lastResizeWidthRef = useRef<WrapperSize>({ width: 0, height: 0 })\n const containerRef: MutableRefObject<HTMLElement | undefined | null> = useRef<HTMLElement | undefined | null>()\n const unobserverRef = useRef<Unobserver>()\n\n const debouncedResizeWrapper = useMemo(() => debounce((entries) => {\n const newResizeWidth = entries[0].contentRect.width\n const newResizeHeight = entries[0].contentRect.height\n\n if (lastResizeWidthRef.current?.width === newResizeWidth\n && lastResizeWidthRef.current?.height === newResizeHeight) {\n return\n }\n lastResizeWidthRef.current = { width: newResizeWidth, height: newResizeHeight }\n\n // eslint-disable-next-line semi-style\n ;(callBack || setContainerSize)({\n width: containerRef?.current?.clientWidth,\n height: containerRef?.current?.clientHeight,\n })\n }, debounceDelay), [callBack, debounceDelay])\n\n useLayoutEffect(() => {\n let resizeObserver: ResizeObserver\n let containerElement: HTMLElement\n\n if (containerRef?.current) {\n containerElement = containerRef?.current\n resizeObserver = new ResizeObserver(debouncedResizeWrapper)\n resizeObserver.observe(containerElement as Element)\n\n // eslint-disable-next-line semi-style\n ;(callBack || setContainerSize)({\n width: containerRef?.current?.clientWidth,\n height: containerRef?.current?.clientHeight,\n })\n }\n\n const unobserver = (): void => {\n resizeObserver?.unobserve?.(containerElement as Element)\n }\n\n // setUnobserver(unobserver)\n unobserverRef.current = unobserver\n\n return unobserver\n }, [debouncedResizeWrapper, containerRef, callBack])\n\n return [containerRef, containerSize, unobserverRef.current]\n}\n"],"names":["debounceDelay","arguments","length","undefined","callBack","containerSize","setContainerSize","useState","width","height","lastResizeWidthRef","useRef","containerRef","unobserverRef","debouncedResizeWrapper","useMemo","debounce","entries","_lastResizeWidthRef$c","_lastResizeWidthRef$c2","_containerRef$current","_containerRef$current2","newResizeWidth","contentRect","newResizeHeight","current","clientWidth","clientHeight","useLayoutEffect","resizeObserver","containerElement","_containerRef$current3","_containerRef$current4","ResizeObserver","observe","unobserver","_resizeObserver","_resizeObserver$unobs","unobserve","call"],"mappings":"gMAWyB,WACmE,IADlEA,EAAaC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,IAAKG,EAA4BH,UAAAC,OAAAD,EAAAA,kBAAAE,EAEzE,MAAOE,EAAeC,GAClBC,WAAsB,CAAEC,WAAOL,EAAWM,YAAQN,IAEhDO,EAAqBC,EAAAA,OAAoB,CAAEH,MAAO,EAAGC,OAAQ,IAC7DG,EAAiED,EAAAA,SACjEE,EAAgBF,EAAAA,SAEhBG,EAAyBC,EAAAA,SAAQ,IAAMC,EAAAA,SAAUC,IAAY,IAAAC,EAAAC,EAAAC,EAAAC,EACjE,MAAMC,EAAiBL,EAAQ,GAAGM,YAAYf,MACxCgB,EAAkBP,EAAQ,GAAGM,YAAYd,QAEjBS,QAA1BA,EAAAR,EAAmBe,eAAnBP,IAA0BA,OAA1BA,EAAAA,EAA4BV,SAAUc,IACX,QAA1BH,EAAAT,EAAmBe,eAAO,IAAAN,OAAA,EAA1BA,EAA4BV,UAAWe,IAG5Cd,EAAmBe,QAAU,CAAEjB,MAAOc,EAAgBb,OAAQe,IAG5DpB,GAAYE,GAAkB,CAC9BE,MAAOI,SAAqBQ,QAATA,EAAZR,EAAca,eAAdL,IAAqBA,OAArBA,EAAAA,EAAuBM,YAC9BjB,OAAQG,SAAqB,QAATS,EAAZT,EAAca,eAAO,IAAAJ,OAAA,EAArBA,EAAuBM,eAC/B,GACD3B,IAAgB,CAACI,EAAUJ,IA4B9B,OA1BA4B,EAAAA,iBAAgB,KACd,IAAIC,EACAC,EAEuB,IAAAC,EAAAC,EAAvBpB,SAAAA,EAAca,UAChBK,EAAmBlB,aAAAA,EAAAA,EAAca,QACjCI,EAAiB,IAAII,eAAenB,GACpCe,EAAeK,QAAQJ,IAGrB1B,GAAYE,GAAkB,CAC9BE,MAAOI,SAAqBmB,QAATA,EAAZnB,EAAca,eAAdM,IAAqBA,OAArBA,EAAAA,EAAuBL,YAC9BjB,OAAQG,SAAqB,QAAToB,EAAZpB,EAAca,eAAO,IAAAO,OAAA,EAArBA,EAAuBL,gBAInC,MAAMQ,EAAaA,KAAY,IAAAC,EAAAC,EACf,QAAdD,EAAAP,SAAcQ,IAAAD,GAAWC,QAAXA,EAAdD,EAAgBE,qBAASD,GAAzBA,EAAAE,KAAAH,EAA4BN,EAA4B,EAM1D,OAFAjB,EAAcY,QAAUU,EAEjBA,CAAU,GAChB,CAACrB,EAAwBF,EAAcR,IAEnC,CAACQ,EAAcP,EAAeQ,EAAcY,QACrD"}
@@ -1 +1 @@
1
- {"version":3,"file":"useThemePreference.js","sources":["../../../../../src/core/hooks/useThemePreference.ts"],"sourcesContent":["import { useEffect } from 'react'\n\n\nconst windowMatchMediaChangeEventType = 'change'\n\nexport const observeThemePreference = (\n getHtmlElement: () => HTMLElement = () => document.body,\n switchCallback: (isDark: boolean) => void = (isDark: boolean) => isDark,\n) => {\n const switchColorThemeHandler = (isDark: boolean) => {\n const htmlElement = getHtmlElement()\n\n switchColorTheme?.(isDark, htmlElement)\n switchCallback?.(isDark)\n }\n\n const changeDarkColorThemeHandler = (event: MediaQueryListEvent) => {\n switchColorThemeHandler(event.matches)\n }\n\n const changeLightColorThemeHandler = (event: MediaQueryListEvent) => {\n switchColorThemeHandler(!event.matches)\n }\n\n const isDark = window.matchMedia('(prefers-color-scheme: dark)')\n\n try {\n window.matchMedia('(prefers-color-scheme: dark)').removeEventListener(\n windowMatchMediaChangeEventType, changeDarkColorThemeHandler,\n )\n window.matchMedia('(prefers-color-scheme: light)').removeEventListener(\n windowMatchMediaChangeEventType, changeLightColorThemeHandler,\n )\n } catch (error) {\n console.error(`Error::observeThemePreference::removeEventListener: ${error}`)\n }\n\n switchColorThemeHandler(isDark?.matches)\n window.matchMedia('(prefers-color-scheme: dark)').addEventListener(\n windowMatchMediaChangeEventType, changeDarkColorThemeHandler,\n )\n window.matchMedia('(prefers-color-scheme: light)').addEventListener(\n windowMatchMediaChangeEventType, changeLightColorThemeHandler,\n )\n\n return () => {\n window.matchMedia('(prefers-color-scheme: dark)').removeEventListener(\n windowMatchMediaChangeEventType, changeDarkColorThemeHandler,\n )\n window.matchMedia('(prefers-color-scheme: light)').removeEventListener(\n windowMatchMediaChangeEventType, changeLightColorThemeHandler,\n )\n }\n}\n\nexport const useThemePreference = (\n getHtmlElement: () => HTMLElement = () => document.body,\n switchCallback: (isDark: boolean) => void = (isDark: boolean) => isDark,\n) => {\n useEffect(() => observeThemePreference(getHtmlElement, switchCallback), [getHtmlElement, switchCallback])\n}\n\n\nexport const baseThemes: {\n dark: string\n light: string\n} = {\n dark: 'theme-dark',\n light: 'theme-light',\n}\n\nexport const switchColorTheme = (isDark: boolean, htmlElement?: HTMLElement, findShadows = true) => {\n const oldClass = isDark ? baseThemes.light : baseThemes.dark\n const newClass = isDark ? baseThemes.dark : baseThemes.light\n\n if (htmlElement) {\n htmlElement.classList.remove(oldClass)\n htmlElement.classList.remove(newClass)\n htmlElement.classList.add(newClass)\n }\n\n if (typeof document !== 'undefined') {\n document.querySelectorAll(`.${oldClass}`).forEach((element) => {\n element.classList.add(`.${newClass}`)\n element.classList.remove(`.${oldClass}`)\n })\n\n if (findShadows) {\n document.querySelectorAll('.shadow-div').forEach((element) => {\n element.shadowRoot?.querySelector(`.${oldClass}`)?.classList.add(newClass)\n element.shadowRoot?.querySelector(`.${oldClass}`)?.classList.remove(oldClass)\n })\n\n document.querySelectorAll('esmf-wrapper').forEach((element) => {\n element.shadowRoot?.querySelector(`.${oldClass}`)?.classList.add(newClass)\n element.shadowRoot?.querySelector(`.${oldClass}`)?.classList.remove(oldClass)\n\n const firstChild: HTMLElement = element.shadowRoot?.childNodes[0] as HTMLElement\n\n if (firstChild) {\n firstChild.classList.add(newClass)\n firstChild.classList.remove(oldClass)\n }\n })\n }\n }\n}\n\nexport const updateColorTheme = (isDark?: boolean, htmlElement?: HTMLElement) => {\n let resolvedIsDark: boolean = isDark || false\n\n if (typeof document !== 'undefined' && isDark === undefined) {\n resolvedIsDark = document.body.classList.contains(baseThemes.dark)\n }\n switchColorTheme(resolvedIsDark, htmlElement || document.body)\n}\n"],"names":["windowMatchMediaChangeEventType","observeThemePreference","getHtmlElement","arguments","length","undefined","document","body","switchCallback","isDark","switchColorThemeHandler","htmlElement","switchColorTheme","changeDarkColorThemeHandler","event","matches","changeLightColorThemeHandler","window","matchMedia","removeEventListener","error","addEventListener","baseThemes","dark","light","findShadows","oldClass","newClass","classList","remove","add","querySelectorAll","concat","forEach","element","_element$shadowRoot","_element$shadowRoot2","shadowRoot","querySelector","_element$shadowRoot3","_element$shadowRoot4","_element$shadowRoot5","firstChild","childNodes","updateColorTheme","resolvedIsDark","contains","useEffect"],"mappings":"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"}
1
+ {"version":3,"file":"useThemePreference.js","sources":["../../../../../src/core/hooks/useThemePreference.ts"],"sourcesContent":["import { useEffect } from 'react'\n\n\nconst windowMatchMediaChangeEventType = 'change'\n\nexport const observeThemePreference = (\n getHtmlElement: () => HTMLElement = (): HTMLElement => document.body,\n switchCallback: (isDark: boolean) => void = (isDark: boolean): boolean => isDark,\n): () => void => {\n const switchColorThemeHandler = (isDark: boolean): void => {\n const htmlElement = getHtmlElement()\n\n switchColorTheme?.(isDark, htmlElement)\n switchCallback?.(isDark)\n }\n\n const changeDarkColorThemeHandler = (event: MediaQueryListEvent): void => {\n switchColorThemeHandler(event.matches)\n }\n\n const changeLightColorThemeHandler = (event: MediaQueryListEvent): void => {\n switchColorThemeHandler(!event.matches)\n }\n\n const isDark = window.matchMedia('(prefers-color-scheme: dark)')\n\n try {\n window.matchMedia('(prefers-color-scheme: dark)').removeEventListener(\n windowMatchMediaChangeEventType, changeDarkColorThemeHandler,\n )\n window.matchMedia('(prefers-color-scheme: light)').removeEventListener(\n windowMatchMediaChangeEventType, changeLightColorThemeHandler,\n )\n } catch (error) {\n console.error(`Error::observeThemePreference::removeEventListener: ${error}`)\n }\n\n switchColorThemeHandler(isDark?.matches)\n window.matchMedia('(prefers-color-scheme: dark)').addEventListener(\n windowMatchMediaChangeEventType, changeDarkColorThemeHandler,\n )\n window.matchMedia('(prefers-color-scheme: light)').addEventListener(\n windowMatchMediaChangeEventType, changeLightColorThemeHandler,\n )\n\n return () => {\n window.matchMedia('(prefers-color-scheme: dark)').removeEventListener(\n windowMatchMediaChangeEventType, changeDarkColorThemeHandler,\n )\n window.matchMedia('(prefers-color-scheme: light)').removeEventListener(\n windowMatchMediaChangeEventType, changeLightColorThemeHandler,\n )\n }\n}\n\nexport const useThemePreference = (\n getHtmlElement: () => HTMLElement = (): HTMLElement => document.body,\n switchCallback: (isDark: boolean) => void = (isDark: boolean): boolean => isDark,\n): void => {\n useEffect(() => observeThemePreference(getHtmlElement, switchCallback), [getHtmlElement, switchCallback])\n}\n\n\nexport const baseThemes: {\n dark: string\n light: string\n} = {\n dark: 'theme-dark',\n light: 'theme-light',\n}\n\nexport const switchColorTheme = (isDark: boolean, htmlElement?: HTMLElement, findShadows = true): void => {\n const oldClass = isDark ? baseThemes.light : baseThemes.dark\n const newClass = isDark ? baseThemes.dark : baseThemes.light\n\n if (htmlElement) {\n htmlElement.classList.remove(oldClass)\n htmlElement.classList.remove(newClass)\n htmlElement.classList.add(newClass)\n }\n\n if (typeof document !== 'undefined') {\n document.querySelectorAll(`.${oldClass}`).forEach((element) => {\n element.classList.add(`.${newClass}`)\n element.classList.remove(`.${oldClass}`)\n })\n\n if (findShadows) {\n document.querySelectorAll('.shadow-div').forEach((element) => {\n element.shadowRoot?.querySelector(`.${oldClass}`)?.classList.add(newClass)\n element.shadowRoot?.querySelector(`.${oldClass}`)?.classList.remove(oldClass)\n })\n\n document.querySelectorAll('esmf-wrapper').forEach((element) => {\n element.shadowRoot?.querySelector(`.${oldClass}`)?.classList.add(newClass)\n element.shadowRoot?.querySelector(`.${oldClass}`)?.classList.remove(oldClass)\n\n const firstChild: HTMLElement = element.shadowRoot?.childNodes[0] as HTMLElement\n\n if (firstChild) {\n firstChild.classList.add(newClass)\n firstChild.classList.remove(oldClass)\n }\n })\n }\n }\n}\n\nexport const updateColorTheme = (isDark?: boolean, htmlElement?: HTMLElement): void => {\n let resolvedIsDark: boolean = isDark || false\n\n if (typeof document !== 'undefined' && isDark === undefined) {\n resolvedIsDark = document.body.classList.contains(baseThemes.dark)\n }\n switchColorTheme(resolvedIsDark, htmlElement || document.body)\n}\n"],"names":["windowMatchMediaChangeEventType","observeThemePreference","getHtmlElement","arguments","length","undefined","document","body","switchCallback","isDark","switchColorThemeHandler","htmlElement","switchColorTheme","changeDarkColorThemeHandler","event","matches","changeLightColorThemeHandler","window","matchMedia","removeEventListener","error","addEventListener","baseThemes","dark","light","findShadows","oldClass","newClass","classList","remove","add","querySelectorAll","concat","forEach","element","_element$shadowRoot","_element$shadowRoot2","shadowRoot","querySelector","_element$shadowRoot3","_element$shadowRoot4","_element$shadowRoot5","firstChild","childNodes","updateColorTheme","resolvedIsDark","contains","useEffect"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useTranslations.js","sources":["../../../../../src/core/hooks/useTranslations.ts"],"sourcesContent":["import { TFunction } from 'i18next'\nimport { useTranslation } from 'react-i18next'\n\ntype tValuFunction = (key: string | undefined, params?: Record<string, any>) => string\nconst cache: Map<TFunction, tValuFunction> = new Map()\n\nlet resolvedUseTranslation = useTranslation\n\nexport const setUseTranslation = (useTrans: any) => {\n resolvedUseTranslation = useTrans\n}\n\nexport const createSafeT = (t: TFunction): tValuFunction => {\n if (cache.has(t)) {\n return cache.get(t) as tValuFunction\n }\n const value: tValuFunction = ((key: string | undefined, params?: Record<string, any>): string => {\n if (!key) {\n return ''\n }\n const limits = key.split(' ')\n\n if (limits.length === 2) {\n return t(limits[0], { ...params, limit: limits[1] })\n }\n return t(key, params)\n })\n\n cache.set(t, value)\n return value\n}\n\ntype safeTF = { t: (key: string | undefined, params?: Record<string, any>) => string }\n\n// TODO memoize\nexport const useTranslations = (namespaces: string[]): safeTF => {\n const { t } = resolvedUseTranslation(namespaces)\n\n return { t: createSafeT(t) as tValuFunction }\n}\n"],"names":["cache","Map","resolvedUseTranslation","useTranslation","setUseTranslation","createSafeT","t","has","get","value","key","params","limits","split","length","limit","set","useTrans","namespaces"],"mappings":"6HAIA,MAAMA,EAAuC,IAAIC,IAEjD,IAAIC,EAAyBC,EAAAA,eAEhBC,MAIAC,EAAeC,IAC1B,GAAIN,EAAMO,IAAID,GACZ,OAAON,EAAMQ,IAAIF,GAEnB,MAAMG,EAAwBA,CAACC,EAAyBC,KACtD,IAAKD,EACH,MAAO,GAET,MAAME,EAASF,EAAIG,MAAM,KAEzB,OAAsB,IAAlBD,EAAOE,OACFR,EAAEM,EAAO,GAAI,IAAKD,EAAQI,MAAOH,EAAO,KAE1CN,EAAEI,EAAKC,EAAO,EAIvB,OADAX,EAAMgB,IAAIV,EAAGG,GACNA,CAAK,kDArBoBQ,IAChCf,EAAyBe,CAAQ,0BA0BHC,IAC9B,MAAMZ,EAAEA,GAAMJ,EAAuBgB,GAErC,MAAO,CAAEZ,EAAGD,EAAYC,GAAqB"}
1
+ {"version":3,"file":"useTranslations.js","sources":["../../../../../src/core/hooks/useTranslations.ts"],"sourcesContent":["import { TFunction } from 'i18next'\nimport { useTranslation } from 'react-i18next'\n\ntype tValuFunction = (key: string | undefined, params?: Record<string, any>) => string\nconst cache: Map<TFunction, tValuFunction> = new Map()\n\nlet resolvedUseTranslation = useTranslation\n\nexport const setUseTranslation = (useTrans: any): void => {\n resolvedUseTranslation = useTrans\n}\n\nexport const createSafeT = (t: TFunction): tValuFunction => {\n if (cache.has(t)) {\n return cache.get(t) as tValuFunction\n }\n const value: tValuFunction = ((key: string | undefined, params?: Record<string, any>): string => {\n if (!key) {\n return ''\n }\n const limits = key.split(' ')\n\n if (limits.length === 2) {\n return t(limits[0], { ...params, limit: limits[1] })\n }\n return t(key, params)\n })\n\n cache.set(t, value)\n return value\n}\n\ntype safeTF = { t: (key: string | undefined, params?: Record<string, any>) => string }\n\n// TODO memoize\nexport const useTranslations = (namespaces: string[]): safeTF => {\n const { t } = resolvedUseTranslation(namespaces)\n\n return { t: createSafeT(t) as tValuFunction }\n}\n"],"names":["cache","Map","resolvedUseTranslation","useTranslation","setUseTranslation","createSafeT","t","has","get","value","key","params","limits","split","length","limit","set","useTrans","namespaces"],"mappings":"6HAIA,MAAMA,EAAuC,IAAIC,IAEjD,IAAIC,EAAyBC,EAAAA,eAEhBC,MAIAC,EAAeC,IAC1B,GAAIN,EAAMO,IAAID,GACZ,OAAON,EAAMQ,IAAIF,GAEnB,MAAMG,EAAwBA,CAACC,EAAyBC,KACtD,IAAKD,EACH,MAAO,GAET,MAAME,EAASF,EAAIG,MAAM,KAEzB,OAAsB,IAAlBD,EAAOE,OACFR,EAAEM,EAAO,GAAI,IAAKD,EAAQI,MAAOH,EAAO,KAE1CN,EAAEI,EAAKC,EAAO,EAIvB,OADAX,EAAMgB,IAAIV,EAAGG,GACNA,CAAK,kDArBoBQ,IAChCf,EAAyBe,CAAQ,0BA0BHC,IAC9B,MAAMZ,EAAEA,GAAMJ,EAAuBgB,GAErC,MAAO,CAAEZ,EAAGD,EAAYC,GAAqB"}
@@ -1 +1 @@
1
- {"version":3,"file":"clickOutside.js","sources":["../../../../../../src/core/ui/utils/clickOutside.ts"],"sourcesContent":["type Element = HTMLElement | null | (() => HTMLElement)\ntype CallbackFunction = (target: HTMLElement | null) => void\n\nexport const handleClickOutside = (\n element: Element,\n callback?: CallbackFunction,\n) => (event: MouseEvent) => {\n const target = event.target as HTMLElement | null\n const resolvedElement:HTMLElement | null = typeof element === 'function' ? element() : element\n\n if (resolvedElement && !resolvedElement.contains(target)) {\n callback?.(target)\n }\n}\n"],"names":["handleClickOutside","element","callback","event","target","resolvedElement","contains"],"mappings":"wCAGkCA,CAChCC,EACAC,IACIC,IACJ,MAAMC,EAASD,EAAMC,OACfC,EAAwD,mBAAZJ,EAAyBA,IAAYA,EAEnFI,IAAoBA,EAAgBC,SAASF,KAC/CF,SAAAA,EAAWE,GACb"}
1
+ {"version":3,"file":"clickOutside.js","sources":["../../../../../../src/core/ui/utils/clickOutside.ts"],"sourcesContent":["type Element = HTMLElement | null | (() => HTMLElement)\ntype CallbackFunction = (target: HTMLElement | null) => void\n\nexport const handleClickOutside = (\n element: Element,\n callback?: CallbackFunction,\n) => (event: MouseEvent): void => {\n const target = event.target as HTMLElement | null\n const resolvedElement:HTMLElement | null = typeof element === 'function' ? element() : element\n\n if (resolvedElement && !resolvedElement.contains(target)) {\n callback?.(target)\n }\n}\n"],"names":["handleClickOutside","element","callback","event","target","resolvedElement","contains"],"mappings":"wCAGkCA,CAChCC,EACAC,IACIC,IACJ,MAAMC,EAASD,EAAMC,OACfC,EAAwD,mBAAZJ,EAAyBA,IAAYA,EAEnFI,IAAoBA,EAAgBC,SAASF,KAC/CF,SAAAA,EAAWE,GACb"}
@@ -1 +1 @@
1
- {"version":3,"file":"ui.js","sources":["../../../../../../src/core/utils/helpers/ui.ts"],"sourcesContent":["export const noop = () => undefined\n\n\nexport const mapSerReplacer = (key: string, value: unknown) => {\n if (value instanceof Map) {\n return {\n dataType: 'Map',\n value: Array.from(value.entries()), // or with spread: value: [...value]\n }\n }\n return value\n}\n\nexport type TClassName = string | boolean | null | undefined\nexport const classNames = (...classes: TClassName[]) => classes\n .filter((className: TClassName) => (typeof className === 'string' && className !== undefined && className !== null))\n .filter(Boolean).join(' ')\n\n\nexport type PropsCategoriesType = {\n dataProps: Record<string, unknown>\n restProps: Record<string, unknown>\n};\n\nexport const parseProps = (props: Record<string, unknown>):PropsCategoriesType => {\n const dataProps: Record<string, unknown> = {}\n const restProps: Record<string, unknown> = {}\n\n Object.entries(props).forEach(([key, value]) => {\n if (key.substr(0, 5) === 'data-' || key.substr(0, 4) === 'data') {\n dataProps[key] = value\n } else {\n restProps[key] = value\n }\n })\n return { dataProps, restProps }\n}\n"],"names":["_len","arguments","length","classes","Array","_key","filter","className","Boolean","join","props","dataProps","restProps","Object","entries","forEach","_ref","key","value","substr"],"mappings":"oHAc0B,WAAA,IAAA,IAAAA,EAAAC,UAAAC,OAAIC,EAAOC,IAAAA,MAAAJ,GAAAK,EAAA,EAAAA,EAAAL,EAAAK,IAAPF,EAAOE,GAAAJ,UAAAI,GAAA,OAAmBF,EACrDG,QAAQC,GAAgD,iBAAdA,GAAP,MAAiCA,IACpED,OAAOE,SAASC,KAAK,IAAI,qBAQDC,IACzB,MAAMC,EAAqC,CAAA,EACrCC,EAAqC,CAAA,EAS3C,OAPAC,OAAOC,QAAQJ,GAAOK,SAAQC,IAAkB,IAAhBC,EAAKC,GAAMF,EAChB,UAArBC,EAAIE,OAAO,EAAG,IAAuC,SAArBF,EAAIE,OAAO,EAAG,GAChDR,EAAUM,GAAOC,EAEjBN,EAAUK,GAAOC,CACnB,IAEK,CAAEP,YAAWC,YAAW"}
1
+ {"version":3,"file":"ui.js","sources":["../../../../../../src/core/utils/helpers/ui.ts"],"sourcesContent":["export const noop = (): void => undefined\n\n\nexport const mapSerReplacer\n= (key: string, value: unknown): unknown | { dataType: string; value: Array<unknown>} => {\n if (value instanceof Map) {\n return {\n dataType: 'Map',\n value: Array.from(value.entries()), // or with spread: value: [...value]\n }\n }\n return value\n}\n\nexport type TClassName = string | boolean | null | undefined\nexport const classNames = (...classes: TClassName[]): string => classes\n .filter((className: TClassName) => (typeof className === 'string' && className !== undefined && className !== null))\n .filter(Boolean).join(' ')\n\n\nexport type PropsCategoriesType = {\n dataProps: Record<string, unknown>\n restProps: Record<string, unknown>\n};\n\nexport const parseProps = (props: Record<string, unknown>):PropsCategoriesType => {\n const dataProps: Record<string, unknown> = {}\n const restProps: Record<string, unknown> = {}\n\n Object.entries(props).forEach(([key, value]) => {\n if (key.substr(0, 5) === 'data-' || key.substr(0, 4) === 'data') {\n dataProps[key] = value\n } else {\n restProps[key] = value\n }\n })\n return { dataProps, restProps }\n}\n"],"names":["_len","arguments","length","classes","Array","_key","filter","className","Boolean","join","props","dataProps","restProps","Object","entries","forEach","_ref","key","value","substr"],"mappings":"oHAe0B,WAAA,IAAA,IAAAA,EAAAC,UAAAC,OAAIC,EAAOC,IAAAA,MAAAJ,GAAAK,EAAA,EAAAA,EAAAL,EAAAK,IAAPF,EAAOE,GAAAJ,UAAAI,GAAA,OAA2BF,EAC7DG,QAAQC,GAAgD,iBAAdA,GAAP,MAAiCA,IACpED,OAAOE,SAASC,KAAK,IAAI,qBAQDC,IACzB,MAAMC,EAAqC,CAAA,EACrCC,EAAqC,CAAA,EAS3C,OAPAC,OAAOC,QAAQJ,GAAOK,SAAQC,IAAkB,IAAhBC,EAAKC,GAAMF,EAChB,UAArBC,EAAIE,OAAO,EAAG,IAAuC,SAArBF,EAAIE,OAAO,EAAG,GAChDR,EAAUM,GAAOC,EAEjBN,EAAUK,GAAOC,CACnB,IAEK,CAAEP,YAAWC,YAAW"}
@@ -1 +1 @@
1
- {"version":3,"file":"useClassNames.js","sources":["../../../../../../src/core/hooks/useClassNames.ts"],"sourcesContent":["import { useMemo } from 'react'\n\nimport { classNames, TClassName } from '../utils/helpers/ui'\n\nexport const useClassNames = (\n classes: TClassName[],\n deps: unknown[],\n// eslint-disable-next-line react-hooks/exhaustive-deps\n) => useMemo(() => classNames(...classes), [classes, deps])\n"],"names":["useClassNames","classes","deps","useMemo","classNames"],"mappings":"+KAI6BA,CAC3BC,EACAC,IAEGC,EAAOA,SAAC,IAAMC,EAAAA,cAAcH,IAAU,CAACA,EAASC"}
1
+ {"version":3,"file":"useClassNames.js","sources":["../../../../../../src/core/hooks/useClassNames.ts"],"sourcesContent":["import { useMemo } from 'react'\n\nimport { classNames, TClassName } from '../utils/helpers/ui'\n\nexport const useClassNames = (\n classes: TClassName[],\n deps: unknown[],\n// eslint-disable-next-line react-hooks/exhaustive-deps\n): ReturnType<typeof classNames> => useMemo(() => classNames(...classes), [classes, deps])\n"],"names":["useClassNames","classes","deps","useMemo","classNames"],"mappings":"+KAI6BA,CAC3BC,EACAC,IAEkCC,EAAOA,SAAC,IAAMC,EAAAA,cAAcH,IAAU,CAACA,EAASC"}
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("react"),t=require("../constants/ui.constants.js"),n=require("../ui/utils/clickOutside.js");exports.outsideClickHandler=function(e,i){let s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:n.handleClickOutside(e,i);return document.addEventListener(t.EventName.Click,s),()=>document.removeEventListener(t.EventName.Click,s)},exports.useOutsideClick=function(i,s){let c=arguments.length>2&&void 0!==arguments[2]?arguments[2]:n.handleClickOutside(i,s);const u=e.useCallback((()=>document.removeEventListener(t.EventName.Click,c)),[]);return e.useEffect((()=>(u(),document.addEventListener(t.EventName.Click,c),u)),[i,c,u]),u};
1
+ "use strict";var e=require("react"),t=require("../constants/ui.constants.js"),n=require("../ui/utils/clickOutside.js");exports.outsideClickHandler=function(e,i){let s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:n.handleClickOutside(e,i);return document.addEventListener(t.EventName.Click,s),()=>document.removeEventListener(t.EventName.Click,s)},exports.useOutsideClick=function(i,s){let c=arguments.length>2&&void 0!==arguments[2]?arguments[2]:n.handleClickOutside(i,s);const u=e.useCallback((()=>document.removeEventListener(t.EventName.Click,c)),[c]);return e.useEffect((()=>(u(),document.addEventListener(t.EventName.Click,c),u)),[i,c,u]),u};
2
2
  //# sourceMappingURL=useOutsideClick.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useOutsideClick.js","sources":["../../../../../../src/core/hooks/useOutsideClick.ts"],"sourcesContent":["import { useEffect, useCallback } from 'react'\n\nimport { EventName } from '../constants/ui.constants'\nimport { handleClickOutside as defaultHandleClickOutside } from '../ui/utils/clickOutside'\n\ntype Element = HTMLElement | null | (() => HTMLElement)\ntype CallbackFunction = (target: HTMLElement | null) => void\n\nexport function useOutsideClick(\n element: Element,\n callback?: CallbackFunction,\n handleClickOutside = defaultHandleClickOutside(element, callback),\n): () => void {\n const unsubscriber = useCallback(() => document.removeEventListener(EventName.Click, handleClickOutside), [])\n\n useEffect(() => {\n unsubscriber()\n document.addEventListener(EventName.Click, handleClickOutside)\n\n return unsubscriber\n }, [element, handleClickOutside, unsubscriber])\n\n return unsubscriber\n}\n\nexport function outsideClickHandler(\n element: Element,\n callback?: CallbackFunction,\n handleClickOutside = defaultHandleClickOutside(element, callback),\n): () => void {\n const unsubscriber = () => document.removeEventListener(EventName.Click, handleClickOutside)\n\n document.addEventListener(EventName.Click, handleClickOutside)\n\n return unsubscriber\n}\n"],"names":["element","callback","handleClickOutside","arguments","length","undefined","defaultHandleClickOutside","document","addEventListener","EventName","Click","unsubscriber","removeEventListener","useCallback","useEffect"],"mappings":"mJAyBO,SACLA,EACAC,GAEY,IADZC,EAAkBC,UAAAC,eAAAC,IAAAF,UAAA,GAAAA,UAAGG,GAAAA,EAAyBJ,mBAACF,EAASC,GAMxD,OAFAM,SAASC,iBAAiBC,EAAAA,UAAUC,MAAOR,GAFtBS,IAAMJ,SAASK,oBAAoBH,EAAAA,UAAUC,MAAOR,EAK3E,0BA3BO,SACLF,EACAC,GAEY,IADZC,EAAkBC,UAAAC,eAAAC,IAAAF,UAAA,GAAAA,UAAGG,GAAAA,EAAyBJ,mBAACF,EAASC,GAExD,MAAMU,EAAeE,eAAY,IAAMN,SAASK,oBAAoBH,EAASA,UAACC,MAAOR,IAAqB,IAS1G,OAPAY,EAAAA,WAAU,KACRH,IACAJ,SAASC,iBAAiBC,EAAAA,UAAUC,MAAOR,GAEpCS,IACN,CAACX,EAASE,EAAoBS,IAE1BA,CACT"}
1
+ {"version":3,"file":"useOutsideClick.js","sources":["../../../../../../src/core/hooks/useOutsideClick.ts"],"sourcesContent":["import { useEffect, useCallback } from 'react'\n\nimport { EventName } from '../constants/ui.constants'\nimport { handleClickOutside as defaultHandleClickOutside } from '../ui/utils/clickOutside'\n\ntype Element = HTMLElement | null | (() => HTMLElement)\ntype CallbackFunction = (target: HTMLElement | null) => void\n\nexport function useOutsideClick(\n element: Element,\n callback?: CallbackFunction,\n handleClickOutside = defaultHandleClickOutside(element, callback),\n): () => void {\n const unsubscriber = useCallback(\n () => document.removeEventListener(EventName.Click, handleClickOutside), [handleClickOutside],\n )\n\n useEffect(() => {\n unsubscriber()\n document.addEventListener(EventName.Click, handleClickOutside)\n\n return unsubscriber\n }, [element, handleClickOutside, unsubscriber])\n\n return unsubscriber\n}\n\nexport function outsideClickHandler(\n element: Element,\n callback?: CallbackFunction,\n handleClickOutside = defaultHandleClickOutside(element, callback),\n): () => void {\n const unsubscriber = (): void => document.removeEventListener(EventName.Click, handleClickOutside)\n\n document.addEventListener(EventName.Click, handleClickOutside)\n\n return unsubscriber\n}\n"],"names":["element","callback","handleClickOutside","arguments","length","undefined","defaultHandleClickOutside","document","addEventListener","EventName","Click","unsubscriber","removeEventListener","useCallback","useEffect"],"mappings":"mJA2BO,SACLA,EACAC,GAEY,IADZC,EAAkBC,UAAAC,eAAAC,IAAAF,UAAA,GAAAA,UAAGG,GAAAA,EAAyBJ,mBAACF,EAASC,GAMxD,OAFAM,SAASC,iBAAiBC,EAAAA,UAAUC,MAAOR,GAFtBS,IAAYJ,SAASK,oBAAoBH,EAAAA,UAAUC,MAAOR,EAKjF,0BA7BO,SACLF,EACAC,GAEY,IADZC,EAAkBC,UAAAC,eAAAC,IAAAF,UAAA,GAAAA,UAAGG,GAAAA,EAAyBJ,mBAACF,EAASC,GAExD,MAAMU,EAAeE,EAAAA,aACnB,IAAMN,SAASK,oBAAoBH,YAAUC,MAAOR,IAAqB,CAACA,IAU5E,OAPAY,EAAAA,WAAU,KACRH,IACAJ,SAASC,iBAAiBC,EAAAA,UAAUC,MAAOR,GAEpCS,IACN,CAACX,EAASE,EAAoBS,IAE1BA,CACT"}
@@ -1 +1 @@
1
- {"version":3,"file":"useResize.js","sources":["../../../../../../src/core/hooks/useResize.ts"],"sourcesContent":["import { MutableRefObject, useLayoutEffect, useMemo, useState, useRef } from 'react'\nimport debounce from 'lodash-es/debounce'\n\nexport type WrapperSize = {width: undefined | number; height: undefined | number}\n\n\ntype Unobserver = () => (null | void)\n\nexport type UseResizeCallBack = (wrapperSize: WrapperSize) => void\n\n// eslint-disable-next-line default-param-last\nexport const useResize = (debounceDelay = 250, callBack?: UseResizeCallBack): [\n MutableRefObject<HTMLElement | null | undefined>, WrapperSize, Unobserver | undefined] => {\n const [containerSize, setContainerSize]\n = useState<WrapperSize>({ width: undefined, height: undefined })\n\n const lastResizeWidthRef = useRef<WrapperSize>({ width: 0, height: 0 })\n const containerRef: MutableRefObject<HTMLElement | undefined | null> = useRef<HTMLElement | undefined | null>()\n const unobserverRef = useRef<Unobserver>()\n\n const debouncedResizeWrapper = useMemo(() => debounce((entries) => {\n const newResizeWidth = entries[0].contentRect.width\n const newResizeHeight = entries[0].contentRect.height\n\n if (lastResizeWidthRef.current?.width === newResizeWidth\n && lastResizeWidthRef.current?.height === newResizeHeight) {\n return\n }\n lastResizeWidthRef.current = { width: newResizeWidth, height: newResizeHeight }\n\n // eslint-disable-next-line semi-style\n ;(callBack || setContainerSize)({\n width: containerRef?.current?.clientWidth,\n height: containerRef?.current?.clientHeight,\n })\n }, debounceDelay), [callBack, debounceDelay])\n\n useLayoutEffect(() => {\n let resizeObserver: ResizeObserver\n let containerElement: HTMLElement\n\n if (containerRef?.current) {\n containerElement = containerRef?.current\n resizeObserver = new ResizeObserver(debouncedResizeWrapper)\n resizeObserver.observe(containerElement as Element)\n\n // eslint-disable-next-line semi-style\n ;(callBack || setContainerSize)({\n width: containerRef?.current?.clientWidth,\n height: containerRef?.current?.clientHeight,\n })\n }\n\n const unobserver = () => {\n resizeObserver?.unobserve?.(containerElement as Element)\n }\n\n // setUnobserver(unobserver)\n unobserverRef.current = unobserver\n\n return unobserver\n }, [debouncedResizeWrapper, containerRef, callBack])\n\n return [containerRef, containerSize, unobserverRef.current]\n}\n"],"names":["debounceDelay","arguments","length","undefined","callBack","containerSize","setContainerSize","useState","width","height","lastResizeWidthRef","useRef","containerRef","unobserverRef","debouncedResizeWrapper","useMemo","debounce","entries","_lastResizeWidthRef$c","_lastResizeWidthRef$c2","_containerRef$current","_containerRef$current2","newResizeWidth","contentRect","newResizeHeight","current","clientWidth","clientHeight","useLayoutEffect","resizeObserver","containerElement","_containerRef$current3","_containerRef$current4","ResizeObserver","observe","unobserver","_resizeObserver","_resizeObserver$unobs","unobserve","call"],"mappings":"gMAWyB,WACmE,IADlEA,EAAaC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,IAAKG,EAA4BH,UAAAC,OAAAD,EAAAA,kBAAAE,EAEzE,MAAOE,EAAeC,GAClBC,WAAsB,CAAEC,WAAOL,EAAWM,YAAQN,IAEhDO,EAAqBC,EAAAA,OAAoB,CAAEH,MAAO,EAAGC,OAAQ,IAC7DG,EAAiED,EAAAA,SACjEE,EAAgBF,EAAAA,SAEhBG,EAAyBC,EAAAA,SAAQ,IAAMC,EAAAA,SAAUC,IAAY,IAAAC,EAAAC,EAAAC,EAAAC,EACjE,MAAMC,EAAiBL,EAAQ,GAAGM,YAAYf,MACxCgB,EAAkBP,EAAQ,GAAGM,YAAYd,QAEjBS,QAA1BA,EAAAR,EAAmBe,eAAnBP,IAA0BA,OAA1BA,EAAAA,EAA4BV,SAAUc,IACX,QAA1BH,EAAAT,EAAmBe,eAAO,IAAAN,OAAA,EAA1BA,EAA4BV,UAAWe,IAG5Cd,EAAmBe,QAAU,CAAEjB,MAAOc,EAAgBb,OAAQe,IAG5DpB,GAAYE,GAAkB,CAC9BE,MAAOI,SAAqBQ,QAATA,EAAZR,EAAca,eAAdL,IAAqBA,OAArBA,EAAAA,EAAuBM,YAC9BjB,OAAQG,SAAqB,QAATS,EAAZT,EAAca,eAAO,IAAAJ,OAAA,EAArBA,EAAuBM,eAC/B,GACD3B,IAAgB,CAACI,EAAUJ,IA4B9B,OA1BA4B,EAAAA,iBAAgB,KACd,IAAIC,EACAC,EAEuB,IAAAC,EAAAC,EAAvBpB,SAAAA,EAAca,UAChBK,EAAmBlB,aAAAA,EAAAA,EAAca,QACjCI,EAAiB,IAAII,eAAenB,GACpCe,EAAeK,QAAQJ,IAGrB1B,GAAYE,GAAkB,CAC9BE,MAAOI,SAAqBmB,QAATA,EAAZnB,EAAca,eAAdM,IAAqBA,OAArBA,EAAAA,EAAuBL,YAC9BjB,OAAQG,SAAqB,QAAToB,EAAZpB,EAAca,eAAO,IAAAO,OAAA,EAArBA,EAAuBL,gBAInC,MAAMQ,EAAaA,KAAM,IAAAC,EAAAC,EACT,QAAdD,EAAAP,SAAcQ,IAAAD,GAAWC,QAAXA,EAAdD,EAAgBE,qBAASD,GAAzBA,EAAAE,KAAAH,EAA4BN,EAA4B,EAM1D,OAFAjB,EAAcY,QAAUU,EAEjBA,CAAU,GAChB,CAACrB,EAAwBF,EAAcR,IAEnC,CAACQ,EAAcP,EAAeQ,EAAcY,QACrD"}
1
+ {"version":3,"file":"useResize.js","sources":["../../../../../../src/core/hooks/useResize.ts"],"sourcesContent":["import { MutableRefObject, useLayoutEffect, useMemo, useState, useRef } from 'react'\nimport debounce from 'lodash-es/debounce'\n\nexport type WrapperSize = {width: undefined | number; height: undefined | number}\n\n\ntype Unobserver = () => (null | void)\n\nexport type UseResizeCallBack = (wrapperSize: WrapperSize) => void\n\n// eslint-disable-next-line default-param-last\nexport const useResize = (debounceDelay = 250, callBack?: UseResizeCallBack): [\n MutableRefObject<HTMLElement | null | undefined>, WrapperSize, Unobserver | undefined] => {\n const [containerSize, setContainerSize]\n = useState<WrapperSize>({ width: undefined, height: undefined })\n\n const lastResizeWidthRef = useRef<WrapperSize>({ width: 0, height: 0 })\n const containerRef: MutableRefObject<HTMLElement | undefined | null> = useRef<HTMLElement | undefined | null>()\n const unobserverRef = useRef<Unobserver>()\n\n const debouncedResizeWrapper = useMemo(() => debounce((entries) => {\n const newResizeWidth = entries[0].contentRect.width\n const newResizeHeight = entries[0].contentRect.height\n\n if (lastResizeWidthRef.current?.width === newResizeWidth\n && lastResizeWidthRef.current?.height === newResizeHeight) {\n return\n }\n lastResizeWidthRef.current = { width: newResizeWidth, height: newResizeHeight }\n\n // eslint-disable-next-line semi-style\n ;(callBack || setContainerSize)({\n width: containerRef?.current?.clientWidth,\n height: containerRef?.current?.clientHeight,\n })\n }, debounceDelay), [callBack, debounceDelay])\n\n useLayoutEffect(() => {\n let resizeObserver: ResizeObserver\n let containerElement: HTMLElement\n\n if (containerRef?.current) {\n containerElement = containerRef?.current\n resizeObserver = new ResizeObserver(debouncedResizeWrapper)\n resizeObserver.observe(containerElement as Element)\n\n // eslint-disable-next-line semi-style\n ;(callBack || setContainerSize)({\n width: containerRef?.current?.clientWidth,\n height: containerRef?.current?.clientHeight,\n })\n }\n\n const unobserver = (): void => {\n resizeObserver?.unobserve?.(containerElement as Element)\n }\n\n // setUnobserver(unobserver)\n unobserverRef.current = unobserver\n\n return unobserver\n }, [debouncedResizeWrapper, containerRef, callBack])\n\n return [containerRef, containerSize, unobserverRef.current]\n}\n"],"names":["debounceDelay","arguments","length","undefined","callBack","containerSize","setContainerSize","useState","width","height","lastResizeWidthRef","useRef","containerRef","unobserverRef","debouncedResizeWrapper","useMemo","debounce","entries","_lastResizeWidthRef$c","_lastResizeWidthRef$c2","_containerRef$current","_containerRef$current2","newResizeWidth","contentRect","newResizeHeight","current","clientWidth","clientHeight","useLayoutEffect","resizeObserver","containerElement","_containerRef$current3","_containerRef$current4","ResizeObserver","observe","unobserver","_resizeObserver","_resizeObserver$unobs","unobserve","call"],"mappings":"gMAWyB,WACmE,IADlEA,EAAaC,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,IAAKG,EAA4BH,UAAAC,OAAAD,EAAAA,kBAAAE,EAEzE,MAAOE,EAAeC,GAClBC,WAAsB,CAAEC,WAAOL,EAAWM,YAAQN,IAEhDO,EAAqBC,EAAAA,OAAoB,CAAEH,MAAO,EAAGC,OAAQ,IAC7DG,EAAiED,EAAAA,SACjEE,EAAgBF,EAAAA,SAEhBG,EAAyBC,EAAAA,SAAQ,IAAMC,EAAAA,SAAUC,IAAY,IAAAC,EAAAC,EAAAC,EAAAC,EACjE,MAAMC,EAAiBL,EAAQ,GAAGM,YAAYf,MACxCgB,EAAkBP,EAAQ,GAAGM,YAAYd,QAEjBS,QAA1BA,EAAAR,EAAmBe,eAAnBP,IAA0BA,OAA1BA,EAAAA,EAA4BV,SAAUc,IACX,QAA1BH,EAAAT,EAAmBe,eAAO,IAAAN,OAAA,EAA1BA,EAA4BV,UAAWe,IAG5Cd,EAAmBe,QAAU,CAAEjB,MAAOc,EAAgBb,OAAQe,IAG5DpB,GAAYE,GAAkB,CAC9BE,MAAOI,SAAqBQ,QAATA,EAAZR,EAAca,eAAdL,IAAqBA,OAArBA,EAAAA,EAAuBM,YAC9BjB,OAAQG,SAAqB,QAATS,EAAZT,EAAca,eAAO,IAAAJ,OAAA,EAArBA,EAAuBM,eAC/B,GACD3B,IAAgB,CAACI,EAAUJ,IA4B9B,OA1BA4B,EAAAA,iBAAgB,KACd,IAAIC,EACAC,EAEuB,IAAAC,EAAAC,EAAvBpB,SAAAA,EAAca,UAChBK,EAAmBlB,aAAAA,EAAAA,EAAca,QACjCI,EAAiB,IAAII,eAAenB,GACpCe,EAAeK,QAAQJ,IAGrB1B,GAAYE,GAAkB,CAC9BE,MAAOI,SAAqBmB,QAATA,EAAZnB,EAAca,eAAdM,IAAqBA,OAArBA,EAAAA,EAAuBL,YAC9BjB,OAAQG,SAAqB,QAAToB,EAAZpB,EAAca,eAAO,IAAAO,OAAA,EAArBA,EAAuBL,gBAInC,MAAMQ,EAAaA,KAAY,IAAAC,EAAAC,EACf,QAAdD,EAAAP,SAAcQ,IAAAD,GAAWC,QAAXA,EAAdD,EAAgBE,qBAASD,GAAzBA,EAAAE,KAAAH,EAA4BN,EAA4B,EAM1D,OAFAjB,EAAcY,QAAUU,EAEjBA,CAAU,GAChB,CAACrB,EAAwBF,EAAcR,IAEnC,CAACQ,EAAcP,EAAeQ,EAAcY,QACrD"}
@@ -1 +1 @@
1
- {"version":3,"file":"useThemePreference.js","sources":["../../../../../../src/core/hooks/useThemePreference.ts"],"sourcesContent":["import { useEffect } from 'react'\n\n\nconst windowMatchMediaChangeEventType = 'change'\n\nexport const observeThemePreference = (\n getHtmlElement: () => HTMLElement = () => document.body,\n switchCallback: (isDark: boolean) => void = (isDark: boolean) => isDark,\n) => {\n const switchColorThemeHandler = (isDark: boolean) => {\n const htmlElement = getHtmlElement()\n\n switchColorTheme?.(isDark, htmlElement)\n switchCallback?.(isDark)\n }\n\n const changeDarkColorThemeHandler = (event: MediaQueryListEvent) => {\n switchColorThemeHandler(event.matches)\n }\n\n const changeLightColorThemeHandler = (event: MediaQueryListEvent) => {\n switchColorThemeHandler(!event.matches)\n }\n\n const isDark = window.matchMedia('(prefers-color-scheme: dark)')\n\n try {\n window.matchMedia('(prefers-color-scheme: dark)').removeEventListener(\n windowMatchMediaChangeEventType, changeDarkColorThemeHandler,\n )\n window.matchMedia('(prefers-color-scheme: light)').removeEventListener(\n windowMatchMediaChangeEventType, changeLightColorThemeHandler,\n )\n } catch (error) {\n console.error(`Error::observeThemePreference::removeEventListener: ${error}`)\n }\n\n switchColorThemeHandler(isDark?.matches)\n window.matchMedia('(prefers-color-scheme: dark)').addEventListener(\n windowMatchMediaChangeEventType, changeDarkColorThemeHandler,\n )\n window.matchMedia('(prefers-color-scheme: light)').addEventListener(\n windowMatchMediaChangeEventType, changeLightColorThemeHandler,\n )\n\n return () => {\n window.matchMedia('(prefers-color-scheme: dark)').removeEventListener(\n windowMatchMediaChangeEventType, changeDarkColorThemeHandler,\n )\n window.matchMedia('(prefers-color-scheme: light)').removeEventListener(\n windowMatchMediaChangeEventType, changeLightColorThemeHandler,\n )\n }\n}\n\nexport const useThemePreference = (\n getHtmlElement: () => HTMLElement = () => document.body,\n switchCallback: (isDark: boolean) => void = (isDark: boolean) => isDark,\n) => {\n useEffect(() => observeThemePreference(getHtmlElement, switchCallback), [getHtmlElement, switchCallback])\n}\n\n\nexport const baseThemes: {\n dark: string\n light: string\n} = {\n dark: 'theme-dark',\n light: 'theme-light',\n}\n\nexport const switchColorTheme = (isDark: boolean, htmlElement?: HTMLElement, findShadows = true) => {\n const oldClass = isDark ? baseThemes.light : baseThemes.dark\n const newClass = isDark ? baseThemes.dark : baseThemes.light\n\n if (htmlElement) {\n htmlElement.classList.remove(oldClass)\n htmlElement.classList.remove(newClass)\n htmlElement.classList.add(newClass)\n }\n\n if (typeof document !== 'undefined') {\n document.querySelectorAll(`.${oldClass}`).forEach((element) => {\n element.classList.add(`.${newClass}`)\n element.classList.remove(`.${oldClass}`)\n })\n\n if (findShadows) {\n document.querySelectorAll('.shadow-div').forEach((element) => {\n element.shadowRoot?.querySelector(`.${oldClass}`)?.classList.add(newClass)\n element.shadowRoot?.querySelector(`.${oldClass}`)?.classList.remove(oldClass)\n })\n\n document.querySelectorAll('esmf-wrapper').forEach((element) => {\n element.shadowRoot?.querySelector(`.${oldClass}`)?.classList.add(newClass)\n element.shadowRoot?.querySelector(`.${oldClass}`)?.classList.remove(oldClass)\n\n const firstChild: HTMLElement = element.shadowRoot?.childNodes[0] as HTMLElement\n\n if (firstChild) {\n firstChild.classList.add(newClass)\n firstChild.classList.remove(oldClass)\n }\n })\n }\n }\n}\n\nexport const updateColorTheme = (isDark?: boolean, htmlElement?: HTMLElement) => {\n let resolvedIsDark: boolean = isDark || false\n\n if (typeof document !== 'undefined' && isDark === undefined) {\n resolvedIsDark = document.body.classList.contains(baseThemes.dark)\n }\n switchColorTheme(resolvedIsDark, htmlElement || document.body)\n}\n"],"names":["windowMatchMediaChangeEventType","observeThemePreference","getHtmlElement","arguments","length","undefined","document","body","switchCallback","isDark","switchColorThemeHandler","htmlElement","switchColorTheme","changeDarkColorThemeHandler","event","matches","changeLightColorThemeHandler","window","matchMedia","removeEventListener","error","addEventListener","baseThemes","dark","light","findShadows","oldClass","newClass","classList","remove","add","querySelectorAll","concat","forEach","element","_element$shadowRoot","_element$shadowRoot2","shadowRoot","querySelector","_element$shadowRoot3","_element$shadowRoot4","_element$shadowRoot5","firstChild","childNodes","updateColorTheme","resolvedIsDark","contains","useEffect"],"mappings":"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"}
1
+ {"version":3,"file":"useThemePreference.js","sources":["../../../../../../src/core/hooks/useThemePreference.ts"],"sourcesContent":["import { useEffect } from 'react'\n\n\nconst windowMatchMediaChangeEventType = 'change'\n\nexport const observeThemePreference = (\n getHtmlElement: () => HTMLElement = (): HTMLElement => document.body,\n switchCallback: (isDark: boolean) => void = (isDark: boolean): boolean => isDark,\n): () => void => {\n const switchColorThemeHandler = (isDark: boolean): void => {\n const htmlElement = getHtmlElement()\n\n switchColorTheme?.(isDark, htmlElement)\n switchCallback?.(isDark)\n }\n\n const changeDarkColorThemeHandler = (event: MediaQueryListEvent): void => {\n switchColorThemeHandler(event.matches)\n }\n\n const changeLightColorThemeHandler = (event: MediaQueryListEvent): void => {\n switchColorThemeHandler(!event.matches)\n }\n\n const isDark = window.matchMedia('(prefers-color-scheme: dark)')\n\n try {\n window.matchMedia('(prefers-color-scheme: dark)').removeEventListener(\n windowMatchMediaChangeEventType, changeDarkColorThemeHandler,\n )\n window.matchMedia('(prefers-color-scheme: light)').removeEventListener(\n windowMatchMediaChangeEventType, changeLightColorThemeHandler,\n )\n } catch (error) {\n console.error(`Error::observeThemePreference::removeEventListener: ${error}`)\n }\n\n switchColorThemeHandler(isDark?.matches)\n window.matchMedia('(prefers-color-scheme: dark)').addEventListener(\n windowMatchMediaChangeEventType, changeDarkColorThemeHandler,\n )\n window.matchMedia('(prefers-color-scheme: light)').addEventListener(\n windowMatchMediaChangeEventType, changeLightColorThemeHandler,\n )\n\n return () => {\n window.matchMedia('(prefers-color-scheme: dark)').removeEventListener(\n windowMatchMediaChangeEventType, changeDarkColorThemeHandler,\n )\n window.matchMedia('(prefers-color-scheme: light)').removeEventListener(\n windowMatchMediaChangeEventType, changeLightColorThemeHandler,\n )\n }\n}\n\nexport const useThemePreference = (\n getHtmlElement: () => HTMLElement = (): HTMLElement => document.body,\n switchCallback: (isDark: boolean) => void = (isDark: boolean): boolean => isDark,\n): void => {\n useEffect(() => observeThemePreference(getHtmlElement, switchCallback), [getHtmlElement, switchCallback])\n}\n\n\nexport const baseThemes: {\n dark: string\n light: string\n} = {\n dark: 'theme-dark',\n light: 'theme-light',\n}\n\nexport const switchColorTheme = (isDark: boolean, htmlElement?: HTMLElement, findShadows = true): void => {\n const oldClass = isDark ? baseThemes.light : baseThemes.dark\n const newClass = isDark ? baseThemes.dark : baseThemes.light\n\n if (htmlElement) {\n htmlElement.classList.remove(oldClass)\n htmlElement.classList.remove(newClass)\n htmlElement.classList.add(newClass)\n }\n\n if (typeof document !== 'undefined') {\n document.querySelectorAll(`.${oldClass}`).forEach((element) => {\n element.classList.add(`.${newClass}`)\n element.classList.remove(`.${oldClass}`)\n })\n\n if (findShadows) {\n document.querySelectorAll('.shadow-div').forEach((element) => {\n element.shadowRoot?.querySelector(`.${oldClass}`)?.classList.add(newClass)\n element.shadowRoot?.querySelector(`.${oldClass}`)?.classList.remove(oldClass)\n })\n\n document.querySelectorAll('esmf-wrapper').forEach((element) => {\n element.shadowRoot?.querySelector(`.${oldClass}`)?.classList.add(newClass)\n element.shadowRoot?.querySelector(`.${oldClass}`)?.classList.remove(oldClass)\n\n const firstChild: HTMLElement = element.shadowRoot?.childNodes[0] as HTMLElement\n\n if (firstChild) {\n firstChild.classList.add(newClass)\n firstChild.classList.remove(oldClass)\n }\n })\n }\n }\n}\n\nexport const updateColorTheme = (isDark?: boolean, htmlElement?: HTMLElement): void => {\n let resolvedIsDark: boolean = isDark || false\n\n if (typeof document !== 'undefined' && isDark === undefined) {\n resolvedIsDark = document.body.classList.contains(baseThemes.dark)\n }\n switchColorTheme(resolvedIsDark, htmlElement || document.body)\n}\n"],"names":["windowMatchMediaChangeEventType","observeThemePreference","getHtmlElement","arguments","length","undefined","document","body","switchCallback","isDark","switchColorThemeHandler","htmlElement","switchColorTheme","changeDarkColorThemeHandler","event","matches","changeLightColorThemeHandler","window","matchMedia","removeEventListener","error","addEventListener","baseThemes","dark","light","findShadows","oldClass","newClass","classList","remove","add","querySelectorAll","concat","forEach","element","_element$shadowRoot","_element$shadowRoot2","shadowRoot","querySelector","_element$shadowRoot3","_element$shadowRoot4","_element$shadowRoot5","firstChild","childNodes","updateColorTheme","resolvedIsDark","contains","useEffect"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useTranslations.js","sources":["../../../../../../src/core/hooks/useTranslations.ts"],"sourcesContent":["import { TFunction } from 'i18next'\nimport { useTranslation } from 'react-i18next'\n\ntype tValuFunction = (key: string | undefined, params?: Record<string, any>) => string\nconst cache: Map<TFunction, tValuFunction> = new Map()\n\nlet resolvedUseTranslation = useTranslation\n\nexport const setUseTranslation = (useTrans: any) => {\n resolvedUseTranslation = useTrans\n}\n\nexport const createSafeT = (t: TFunction): tValuFunction => {\n if (cache.has(t)) {\n return cache.get(t) as tValuFunction\n }\n const value: tValuFunction = ((key: string | undefined, params?: Record<string, any>): string => {\n if (!key) {\n return ''\n }\n const limits = key.split(' ')\n\n if (limits.length === 2) {\n return t(limits[0], { ...params, limit: limits[1] })\n }\n return t(key, params)\n })\n\n cache.set(t, value)\n return value\n}\n\ntype safeTF = { t: (key: string | undefined, params?: Record<string, any>) => string }\n\n// TODO memoize\nexport const useTranslations = (namespaces: string[]): safeTF => {\n const { t } = resolvedUseTranslation(namespaces)\n\n return { t: createSafeT(t) as tValuFunction }\n}\n"],"names":["cache","Map","resolvedUseTranslation","useTranslation","setUseTranslation","createSafeT","t","has","get","value","key","params","limits","split","length","limit","set","useTrans","namespaces"],"mappings":"6HAIA,MAAMA,EAAuC,IAAIC,IAEjD,IAAIC,EAAyBC,EAAAA,eAEhBC,MAIAC,EAAeC,IAC1B,GAAIN,EAAMO,IAAID,GACZ,OAAON,EAAMQ,IAAIF,GAEnB,MAAMG,EAAwBA,CAACC,EAAyBC,KACtD,IAAKD,EACH,MAAO,GAET,MAAME,EAASF,EAAIG,MAAM,KAEzB,OAAsB,IAAlBD,EAAOE,OACFR,EAAEM,EAAO,GAAI,IAAKD,EAAQI,MAAOH,EAAO,KAE1CN,EAAEI,EAAKC,EAAO,EAIvB,OADAX,EAAMgB,IAAIV,EAAGG,GACNA,CAAK,kDArBoBQ,IAChCf,EAAyBe,CAAQ,0BA0BHC,IAC9B,MAAMZ,EAAEA,GAAMJ,EAAuBgB,GAErC,MAAO,CAAEZ,EAAGD,EAAYC,GAAqB"}
1
+ {"version":3,"file":"useTranslations.js","sources":["../../../../../../src/core/hooks/useTranslations.ts"],"sourcesContent":["import { TFunction } from 'i18next'\nimport { useTranslation } from 'react-i18next'\n\ntype tValuFunction = (key: string | undefined, params?: Record<string, any>) => string\nconst cache: Map<TFunction, tValuFunction> = new Map()\n\nlet resolvedUseTranslation = useTranslation\n\nexport const setUseTranslation = (useTrans: any): void => {\n resolvedUseTranslation = useTrans\n}\n\nexport const createSafeT = (t: TFunction): tValuFunction => {\n if (cache.has(t)) {\n return cache.get(t) as tValuFunction\n }\n const value: tValuFunction = ((key: string | undefined, params?: Record<string, any>): string => {\n if (!key) {\n return ''\n }\n const limits = key.split(' ')\n\n if (limits.length === 2) {\n return t(limits[0], { ...params, limit: limits[1] })\n }\n return t(key, params)\n })\n\n cache.set(t, value)\n return value\n}\n\ntype safeTF = { t: (key: string | undefined, params?: Record<string, any>) => string }\n\n// TODO memoize\nexport const useTranslations = (namespaces: string[]): safeTF => {\n const { t } = resolvedUseTranslation(namespaces)\n\n return { t: createSafeT(t) as tValuFunction }\n}\n"],"names":["cache","Map","resolvedUseTranslation","useTranslation","setUseTranslation","createSafeT","t","has","get","value","key","params","limits","split","length","limit","set","useTrans","namespaces"],"mappings":"6HAIA,MAAMA,EAAuC,IAAIC,IAEjD,IAAIC,EAAyBC,EAAAA,eAEhBC,MAIAC,EAAeC,IAC1B,GAAIN,EAAMO,IAAID,GACZ,OAAON,EAAMQ,IAAIF,GAEnB,MAAMG,EAAwBA,CAACC,EAAyBC,KACtD,IAAKD,EACH,MAAO,GAET,MAAME,EAASF,EAAIG,MAAM,KAEzB,OAAsB,IAAlBD,EAAOE,OACFR,EAAEM,EAAO,GAAI,IAAKD,EAAQI,MAAOH,EAAO,KAE1CN,EAAEI,EAAKC,EAAO,EAIvB,OADAX,EAAMgB,IAAIV,EAAGG,GACNA,CAAK,kDArBoBQ,IAChCf,EAAyBe,CAAQ,0BA0BHC,IAC9B,MAAMZ,EAAEA,GAAMJ,EAAuBgB,GAErC,MAAO,CAAEZ,EAAGD,EAAYC,GAAqB"}