@jenesei-software/jenesei-kit-react 1.3.10 → 1.3.11

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 (222) hide show
  1. package/build/{area-BC64nSGj.js → area-BWxBop5m.js} +2 -2
  2. package/build/area-BWxBop5m.js.map +1 -0
  3. package/build/{area-DRqAofd0.js → area-CD8KKIM0.js} +2 -2
  4. package/build/area-CD8KKIM0.js.map +1 -0
  5. package/build/{area-BYuHpaUX.js → area-CT83tDk-.js} +10 -8
  6. package/build/area-CT83tDk-.js.map +1 -0
  7. package/build/{area-C6QOr2Kd.cjs → area-CmCMHnRA.cjs} +2 -2
  8. package/build/area-CmCMHnRA.cjs.map +1 -0
  9. package/build/{area-oZm7ewxw.cjs → area-DRsIULcw.cjs} +2 -2
  10. package/build/{area-oZm7ewxw.cjs.map → area-DRsIULcw.cjs.map} +1 -1
  11. package/build/{area-D7906bXA.cjs → area-Dup_lUb9.cjs} +2 -2
  12. package/build/area-Dup_lUb9.cjs.map +1 -0
  13. package/build/area-outside.cjs.js +1 -1
  14. package/build/area-outside.es.js +1 -1
  15. package/build/area-preview.cjs.js +1 -1
  16. package/build/area-preview.es.js +1 -1
  17. package/build/{area-CkM4ZN2F.js → area-sDVSuS3G.js} +2 -2
  18. package/build/{area-CkM4ZN2F.js.map → area-sDVSuS3G.js.map} +1 -1
  19. package/build/area-scroll.cjs.js +1 -1
  20. package/build/area-scroll.d.ts +1 -1
  21. package/build/area-scroll.es.js +1 -1
  22. package/build/area-skeleton.cjs.js +1 -1
  23. package/build/area-skeleton.d.ts +1 -1
  24. package/build/area-skeleton.es.js +1 -1
  25. package/build/area-smooth.cjs.js +1 -1
  26. package/build/area-smooth.d.ts +1 -1
  27. package/build/area-smooth.es.js +1 -1
  28. package/build/area-t259bohc.cjs +2 -0
  29. package/build/area-t259bohc.cjs.map +1 -0
  30. package/build/area.hooks-Bk04M7mk.js.map +1 -1
  31. package/build/area.hooks-C_UKZzcb.cjs.map +1 -1
  32. package/build/build-info.txt +3 -3
  33. package/build/{component--Oo5_3xq.cjs → component-8NOxwZJO.cjs} +2 -2
  34. package/build/component-8NOxwZJO.cjs.map +1 -0
  35. package/build/{component-C67KboOB.cjs → component-BVnHSTJd.cjs} +2 -2
  36. package/build/{component-C67KboOB.cjs.map → component-BVnHSTJd.cjs.map} +1 -1
  37. package/build/{component-BYox4gmt.cjs → component-BhPckvLk.cjs} +2 -2
  38. package/build/component-BhPckvLk.cjs.map +1 -0
  39. package/build/component-CLqcB5mM.cjs.map +1 -1
  40. package/build/{component-DJYgewYg.js → component-CN6att4f.js} +2 -2
  41. package/build/{component-DJYgewYg.js.map → component-CN6att4f.js.map} +1 -1
  42. package/build/component-DHM9pbab.js.map +1 -1
  43. package/build/{component-B1bvPlyB.cjs → component-DnJo66DS.cjs} +2 -2
  44. package/build/{component-B1bvPlyB.cjs.map → component-DnJo66DS.cjs.map} +1 -1
  45. package/build/{component-BcHiCCC9.js → component-DpVp9dB1.js} +2 -2
  46. package/build/component-DpVp9dB1.js.map +1 -0
  47. package/build/{component-CvW0MIM8.js → component-G5QqAuDV.js} +3 -3
  48. package/build/component-G5QqAuDV.js.map +1 -0
  49. package/build/component-GKvpOWlO.cjs +28 -0
  50. package/build/component-GKvpOWlO.cjs.map +1 -0
  51. package/build/{component-DKMsOpqH.js → component-GtWqnaqk.js} +2 -2
  52. package/build/{component-DKMsOpqH.js.map → component-GtWqnaqk.js.map} +1 -1
  53. package/build/component-accordion.cjs.js +1 -1
  54. package/build/component-accordion.d.ts +1 -1
  55. package/build/component-accordion.es.js +1 -1
  56. package/build/component-button-group.cjs.js +1 -1
  57. package/build/component-button-group.es.js +1 -1
  58. package/build/component-button.cjs.js +1 -1
  59. package/build/component-button.es.js +1 -1
  60. package/build/{component-CY7lfJVv.cjs → component-cRmWWDr_.cjs} +2 -2
  61. package/build/component-cRmWWDr_.cjs.map +1 -0
  62. package/build/component-checkbox-group.cjs.js +1 -1
  63. package/build/component-checkbox-group.es.js +1 -1
  64. package/build/component-checkbox.cjs.js +1 -1
  65. package/build/component-checkbox.es.js +1 -1
  66. package/build/component-date-picker.cjs.js +1 -1
  67. package/build/component-date-picker.es.js +1 -1
  68. package/build/{component-WUYE2soZ.js → component-feWPgACX.js} +2 -2
  69. package/build/component-feWPgACX.js.map +1 -0
  70. package/build/component-image-button.cjs.js +1 -1
  71. package/build/component-image-button.es.js +1 -1
  72. package/build/component-image-select.cjs.js +1 -1
  73. package/build/component-image-select.es.js +1 -1
  74. package/build/component-image-slider.cjs.js +1 -1
  75. package/build/component-image-slider.d.ts +1 -1
  76. package/build/component-image-slider.es.js +1 -1
  77. package/build/component-image.cjs.js +1 -1
  78. package/build/component-image.es.js +1 -1
  79. package/build/component-map.cjs.js +1 -1
  80. package/build/component-map.es.js +1 -1
  81. package/build/{component-jPZYT5iL.js → component-mzzOCXSx.js} +12 -12
  82. package/build/component-mzzOCXSx.js.map +1 -0
  83. package/build/component-pagination.cjs.js +1 -1
  84. package/build/component-pagination.es.js +1 -1
  85. package/build/component-select.cjs.js +1 -1
  86. package/build/component-select.es.js +1 -1
  87. package/build/component-stack.cjs.js +1 -1
  88. package/build/component-stack.d.ts +5 -7
  89. package/build/component-stack.es.js +1 -1
  90. package/build/component-tooltip.cjs.js +1 -1
  91. package/build/component-tooltip.es.js +1 -1
  92. package/build/component-typography.cjs.js +1 -1
  93. package/build/component-typography.es.js +1 -1
  94. package/build/{component.components-f-tFdB6f.js → component.components-C-EEYFsd.js} +2 -2
  95. package/build/{component.components-f-tFdB6f.js.map → component.components-C-EEYFsd.js.map} +1 -1
  96. package/build/{component.components-CeKyOsDE.cjs → component.components-CC3IeZon.cjs} +2 -2
  97. package/build/{component.components-CeKyOsDE.cjs.map → component.components-CC3IeZon.cjs.map} +1 -1
  98. package/build/{component.constants-BrJrCmlA.js → component.constants-34RZJIiQ.js} +3 -3
  99. package/build/component.constants-34RZJIiQ.js.map +1 -0
  100. package/build/{component.constants-amkB3VHg.js → component.constants-BxnfHAYp.js} +6 -6
  101. package/build/component.constants-BxnfHAYp.js.map +1 -0
  102. package/build/{component.constants-DRPyaSU8.cjs → component.constants-CpRgeAIu.cjs} +2 -2
  103. package/build/component.constants-CpRgeAIu.cjs.map +1 -0
  104. package/build/{component.constants-B9xzGc3A.cjs → component.constants-D6AJ1xmO.cjs} +2 -2
  105. package/build/component.constants-D6AJ1xmO.cjs.map +1 -0
  106. package/build/{component.styles-iHE8mmya.cjs → component.styles-4ycgapiT.cjs} +2 -2
  107. package/build/component.styles-4ycgapiT.cjs.map +1 -0
  108. package/build/{component.styles-BTsmbWT6.cjs → component.styles-B-bndnRM.cjs} +2 -2
  109. package/build/component.styles-B-bndnRM.cjs.map +1 -0
  110. package/build/component.styles-B0L4jbOO.js.map +1 -1
  111. package/build/component.styles-BDKsgd6y.js.map +1 -1
  112. package/build/{component.styles-CPWNnqqm.js → component.styles-BEaqQuF_.js} +3 -3
  113. package/build/{component.styles-CPWNnqqm.js.map → component.styles-BEaqQuF_.js.map} +1 -1
  114. package/build/component.styles-BGYbrzvh.js.map +1 -1
  115. package/build/component.styles-BKnUDWqO.cjs.map +1 -1
  116. package/build/{component.styles-BpvpyZax.cjs → component.styles-Bb7_KygZ.cjs} +2 -2
  117. package/build/{component.styles-BpvpyZax.cjs.map → component.styles-Bb7_KygZ.cjs.map} +1 -1
  118. package/build/{component.styles-DjoG6jr2.js → component.styles-CJC0h3Ed.js} +2 -2
  119. package/build/component.styles-CJC0h3Ed.js.map +1 -0
  120. package/build/{component.styles-DOnQEUrI.js → component.styles-CZyAhUtW.js} +7 -7
  121. package/build/component.styles-CZyAhUtW.js.map +1 -0
  122. package/build/component.styles-DS0ofW1Y.js.map +1 -1
  123. package/build/{component.styles-nl99kkS3.js → component.styles-DTnknwt_.js} +2 -2
  124. package/build/{component.styles-nl99kkS3.js.map → component.styles-DTnknwt_.js.map} +1 -1
  125. package/build/{component.styles-DARNjy9P.js → component.styles-DWS6xT-y.js} +2 -2
  126. package/build/{component.styles-DARNjy9P.js.map → component.styles-DWS6xT-y.js.map} +1 -1
  127. package/build/{component.styles-DWGUgUoF.cjs → component.styles-DbWj2stq.cjs} +2 -2
  128. package/build/{component.styles-DWGUgUoF.cjs.map → component.styles-DbWj2stq.cjs.map} +1 -1
  129. package/build/component.styles-Dpg-__rn.cjs.map +1 -1
  130. package/build/{component.styles-mhkAuWyU.cjs → component.styles-PNgt36ZD.cjs} +2 -2
  131. package/build/{component.styles-mhkAuWyU.cjs.map → component.styles-PNgt36ZD.cjs.map} +1 -1
  132. package/build/{component.styles-Dpo373cZ.cjs → component.styles-Py-IeQ2q.cjs} +2 -2
  133. package/build/component.styles-Py-IeQ2q.cjs.map +1 -0
  134. package/build/component.styles-ZU_GyVub.cjs.map +1 -1
  135. package/build/component.styles-gZHy-64x.cjs.map +1 -1
  136. package/build/{component.styles--PEjCgcA.js → component.styles-mcm1LgEr.js} +3 -3
  137. package/build/{component.styles--PEjCgcA.js.map → component.styles-mcm1LgEr.js.map} +1 -1
  138. package/build/component.types-BBQ18Npa.js.map +1 -1
  139. package/build/{component.types-CSnoBg2y.js → component.types-BhmQrqBu.js} +5 -5
  140. package/build/component.types-BhmQrqBu.js.map +1 -0
  141. package/build/{component.types-CWp0NPUN.cjs → component.types-CfR3RBsV.cjs} +2 -2
  142. package/build/{component.types-CWp0NPUN.cjs.map → component.types-CfR3RBsV.cjs.map} +1 -1
  143. package/build/component.types-DraGq1j_.cjs.map +1 -1
  144. package/build/context-app.cjs.js +1 -1
  145. package/build/context-app.es.js +1 -1
  146. package/build/context-dialog.cjs.js +1 -1
  147. package/build/context-dialog.es.js +1 -1
  148. package/build/context-permission.d.ts +4 -4
  149. package/build/context-sonner.cjs.js +1 -1
  150. package/build/context-sonner.es.js +1 -1
  151. package/build/{context.constants-CvkvB0XC.js → context.constants-BCpaUfFz.js} +2 -2
  152. package/build/context.constants-BCpaUfFz.js.map +1 -0
  153. package/build/{context.constants-ByXsACU7.cjs → context.constants-BLQ_1jZI.cjs} +2 -2
  154. package/build/context.constants-BLQ_1jZI.cjs.map +1 -0
  155. package/build/{context.constants-DRimaVcG.js → context.constants-DOMoMUoD.js} +2 -2
  156. package/build/context.constants-DOMoMUoD.js.map +1 -0
  157. package/build/{context.constants-CTr1U0kI.cjs → context.constants-cm50ZUiS.cjs} +2 -2
  158. package/build/{context.constants-CTr1U0kI.cjs.map → context.constants-cm50ZUiS.cjs.map} +1 -1
  159. package/build/context.functions-80N-5MqM.cjs.map +1 -1
  160. package/build/context.functions-B8FDl7nJ.js.map +1 -1
  161. package/build/context.functions-BD15C8_y.js.map +1 -1
  162. package/build/context.functions-CQ9GerPb.js.map +1 -1
  163. package/build/context.functions-ar41xFVo.cjs.map +1 -1
  164. package/build/context.functions-ohI9H54j.cjs.map +1 -1
  165. package/build/context.hooks-7ydA7mGj.js.map +1 -1
  166. package/build/context.hooks-BIsapq-0.cjs.map +1 -1
  167. package/build/context.hooks-BmwyZ1p3.js.map +1 -1
  168. package/build/context.hooks-BzMTkJNv.js.map +1 -1
  169. package/build/{context.hooks-kga1DMrX.js → context.hooks-CI5aQmpr.js} +2 -2
  170. package/build/context.hooks-CI5aQmpr.js.map +1 -0
  171. package/build/{context.hooks-DOygH-Yj.cjs → context.hooks-Ci37RyLf.cjs} +2 -2
  172. package/build/context.hooks-Ci37RyLf.cjs.map +1 -0
  173. package/build/context.hooks-D13tbrva.cjs.map +1 -1
  174. package/build/context.hooks-u408Pxw8.cjs.map +1 -1
  175. package/build/index.cjs.js +1 -1
  176. package/build/index.d.ts +9 -11
  177. package/build/index.es.js +23 -23
  178. package/build/motion-CIQfrLky.js.map +1 -1
  179. package/build/motion-DgB7M2Hn.cjs.map +1 -1
  180. package/build/style-error.d.ts +6 -6
  181. package/build/style-fRZ6xrVp.cjs.map +1 -1
  182. package/build/style-plT9Ah7t.js.map +1 -1
  183. package/build/{use-DLVWi2kS.js → use-Bp4KNVye.js} +6 -6
  184. package/build/{use-DLVWi2kS.js.map → use-Bp4KNVye.js.map} +1 -1
  185. package/build/use-Bp8UVw4Y.js.map +1 -1
  186. package/build/use-C1l0O0Qo.cjs.map +1 -1
  187. package/build/{use-Dg449cuf.cjs → use-DQDxWjzu.cjs} +2 -2
  188. package/build/{use-Dg449cuf.cjs.map → use-DQDxWjzu.cjs.map} +1 -1
  189. package/build/use-DT0XgvJT.js.map +1 -1
  190. package/build/use-IhzeVumv.cjs.map +1 -1
  191. package/package.json +4 -3
  192. package/build/area-BC64nSGj.js.map +0 -1
  193. package/build/area-BYuHpaUX.js.map +0 -1
  194. package/build/area-C6QOr2Kd.cjs.map +0 -1
  195. package/build/area-C6XuN6wk.cjs +0 -2
  196. package/build/area-C6XuN6wk.cjs.map +0 -1
  197. package/build/area-D7906bXA.cjs.map +0 -1
  198. package/build/area-DRqAofd0.js.map +0 -1
  199. package/build/component--Oo5_3xq.cjs.map +0 -1
  200. package/build/component-BV_7tGiu.cjs +0 -28
  201. package/build/component-BV_7tGiu.cjs.map +0 -1
  202. package/build/component-BYox4gmt.cjs.map +0 -1
  203. package/build/component-BcHiCCC9.js.map +0 -1
  204. package/build/component-CY7lfJVv.cjs.map +0 -1
  205. package/build/component-CvW0MIM8.js.map +0 -1
  206. package/build/component-WUYE2soZ.js.map +0 -1
  207. package/build/component-jPZYT5iL.js.map +0 -1
  208. package/build/component.constants-B9xzGc3A.cjs.map +0 -1
  209. package/build/component.constants-BrJrCmlA.js.map +0 -1
  210. package/build/component.constants-DRPyaSU8.cjs.map +0 -1
  211. package/build/component.constants-amkB3VHg.js.map +0 -1
  212. package/build/component.styles-BTsmbWT6.cjs.map +0 -1
  213. package/build/component.styles-DOnQEUrI.js.map +0 -1
  214. package/build/component.styles-DjoG6jr2.js.map +0 -1
  215. package/build/component.styles-Dpo373cZ.cjs.map +0 -1
  216. package/build/component.styles-iHE8mmya.cjs.map +0 -1
  217. package/build/component.types-CSnoBg2y.js.map +0 -1
  218. package/build/context.constants-ByXsACU7.cjs.map +0 -1
  219. package/build/context.constants-CvkvB0XC.js.map +0 -1
  220. package/build/context.constants-DRimaVcG.js.map +0 -1
  221. package/build/context.hooks-DOygH-Yj.cjs.map +0 -1
  222. package/build/context.hooks-kga1DMrX.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component-G5QqAuDV.js","sources":["../src/components/image-button/component.tsx"],"sourcesContent":["import { FC, useCallback, useRef } from 'react';\n\nimport { ImageSupportedFormatsForInput } from '@local/consts';\nimport { useImageCrop } from '@local/hooks/use-image-crop';\n\nimport { ImageButtonProps } from '.';\nimport { Button } from '../button';\n\nexport const ImageButton: FC<ImageButtonProps> = (props) => {\n const refInput = useRef<HTMLInputElement | null>(null);\n\n const handleOpenFileDialog = useCallback(() => {\n refInput.current?.click();\n }, []);\n\n const { handleAddFiles } = useImageCrop({\n onSave: props.onSave,\n locale: props.locale,\n dialog: props.dialog,\n imageSettings: props.imageSettings,\n refInput: refInput,\n });\n\n return (\n <>\n <Button\n {...props.button}\n onClick={(e) => {\n props.button.onClick?.(e);\n handleOpenFileDialog();\n }}\n >\n {props.button.children || props.locale.buttonAdd}\n </Button>\n <input\n ref={refInput}\n type='file'\n accept={ImageSupportedFormatsForInput}\n multiple\n style={{ display: 'none' }}\n onChange={(e) => {\n if (e.target.files) handleAddFiles(e.target.files);\n }}\n />\n </>\n );\n};\n"],"names":["jsxs","Fragment","jsx"],"mappings":";;;;;AAQO,MAAM,cAAoC,CAAC,UAAU;AAC1D,QAAM,WAAW,OAAgC,IAAI;AAErD,QAAM,uBAAuB,YAAY,MAAM;;AAC7C,mBAAS,YAAT,mBAAkB;AAAA,EAAM,GACvB,EAAE;AAEL,QAAM,EAAE,eAAA,IAAmB,aAAa;AAAA,IACtC,QAAQ,MAAM;AAAA,IACd,QAAQ,MAAM;AAAA,IACd,QAAQ,MAAM;AAAA,IACd,eAAe,MAAM;AAAA,IACrB;AAAA,EAAA,CACD;AAED,SACEA,kCAAAA,KAAAC,4BAAA,EACE,UAAA;AAAA,IAAAC,kCAAAA;AAAAA,MAAC;AAAA,MAAA;AAAA,QACE,GAAG,MAAM;AAAA,QACV,SAAS,CAAC,MAAM;;AACd,4BAAM,QAAO,YAAb,4BAAuB;AACvB,+BAAA;AAAA,QAAqB;AAAA,QAGtB,UAAA,MAAM,OAAO,YAAY,MAAM,OAAO;AAAA,MAAA;AAAA,IAAA;AAAA,IAEzCA,kCAAAA;AAAAA,MAAC;AAAA,MAAA;AAAA,QACC,KAAK;AAAA,QACL,MAAK;AAAA,QACL,QAAQ;AAAA,QACR,UAAQ;AAAA,QACR,OAAO,EAAE,SAAS,OAAA;AAAA,QAClB,UAAU,CAAC,MAAM;AACf,cAAI,EAAE,OAAO,MAAO,gBAAe,EAAE,OAAO,KAAK;AAAA,QAAA;AAAA,MACnD;AAAA,IAAA;AAAA,EACF,GACF;AAEJ;"}
@@ -0,0 +1,28 @@
1
+ "use strict";const e=require("./jsx-runtime-BcGej2Kr.cjs"),r=require("framer-motion"),o=require("styled-components"),s=require("./style-fRZ6xrVp.cjs"),t=require("./component.styles-Dpg-__rn.cjs");require("react");const i=o.div`
2
+ display: flex;
3
+ ${s.addSX}
4
+
5
+ ${e=>e.$isHover&&o.css`
6
+ transition:
7
+ background-color ${e=>e.theme.transition.default},
8
+ outline 0s;
9
+ &:hover {
10
+ background-color: ${e=>e.theme.palette.black05};
11
+ }
12
+ `};
13
+ ${t.addRipple};
14
+ `,n=o(r.motion.div)`
15
+ display: flex;
16
+ ${s.addSX}
17
+
18
+ ${e=>e.$isHover&&o.css`
19
+ transition:
20
+ background-color ${e=>e.theme.transition.default},
21
+ outline 0s;
22
+ &:hover {
23
+ background-color: ${e=>e.theme.palette.black05};
24
+ }
25
+ `};
26
+ ${t.addRipple};
27
+ `;exports.Stack=r=>e.jsxRuntimeExports.jsx(i,{ref:r.ref,onClick:r.onClick,onDrop:r.onDrop,onDragOver:r.onDragOver,className:r.className,$sx:r.sx,$isHover:r.isHover,$isRipple:r.isRipple,children:r.children}),exports.StackMotion=r=>{const{style:o,className:s,isHover:t,isRipple:i,onClick:l,onDrop:a,onDragOver:c,ref:p,sx:d}=r;return e.jsxRuntimeExports.jsx(n,{ref:p,style:o,onClick:l,onDrop:a,onDragOver:c,className:s,$sx:d,$isHover:t,$isRipple:i,...r,children:r.children})},exports.StyledStack=i,exports.StyledStackMotion=n;
28
+ //# sourceMappingURL=component-GKvpOWlO.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component-GKvpOWlO.cjs","sources":["../src/components/stack/component.styles.tsx","../src/components/stack/component.tsx"],"sourcesContent":["import { motion } from 'framer-motion';\nimport styled, { css } from 'styled-components';\n\nimport { addSX } from '@local/styles/sx';\n\nimport { StyledStackProps } from '.';\nimport { addRipple } from '../ripple';\n\nexport const StyledStack = styled.div<StyledStackProps>`\n display: flex;\n ${addSX}\n\n ${(props) =>\n props.$isHover &&\n css`\n transition:\n background-color ${(props) => props.theme.transition.default},\n outline 0s;\n &:hover {\n background-color: ${(props) => props.theme.palette.black05};\n }\n `};\n ${addRipple};\n`;\n\nexport const StyledStackMotion = styled(motion.div)<StyledStackProps>`\n display: flex;\n ${addSX}\n\n ${(props) =>\n props.$isHover &&\n css`\n transition:\n background-color ${(props) => props.theme.transition.default},\n outline 0s;\n &:hover {\n background-color: ${(props) => props.theme.palette.black05};\n }\n `};\n ${addRipple};\n`;\n","import { FC } from 'react';\n\nimport { StackMotionProps, StackProps, StyledStack, StyledStackMotion } from '.';\n\nexport const Stack: FC<StackProps> = (props) => {\n return (\n <StyledStack\n ref={props.ref}\n onClick={props.onClick}\n onDrop={props.onDrop}\n onDragOver={props.onDragOver}\n className={props.className}\n $sx={props.sx}\n $isHover={props.isHover}\n $isRipple={props.isRipple}\n >\n {props.children}\n </StyledStack>\n );\n};\n\nexport const StackMotion: FC<StackMotionProps> = (props) => {\n const { style, className, isHover, isRipple, onClick, onDrop, onDragOver, ref, sx } = props;\n return (\n <StyledStackMotion\n ref={ref}\n style={style}\n onClick={onClick}\n onDrop={onDrop}\n onDragOver={onDragOver}\n className={className}\n $sx={sx}\n $isHover={isHover}\n $isRipple={isRipple}\n {...props}\n >\n {props.children}\n </StyledStackMotion>\n );\n};\n"],"names":["StyledStack","styled","div","addSX","props","$isHover","css","theme","transition","default","palette","black05","addRipple","StyledStackMotion","motion","jsx","ref","onClick","onDrop","onDragOver","className","$sx","sx","isHover","$isRipple","isRipple","children","style"],"mappings":"qNAQO,MAAMA,EAAcC,EAAOC,GAAA;;IAE9BC,EAAAA;;IAECC,GACDA,EAAMC,UACNC,EAAAA,GAAAA;;2BAEwBF,GAAUA,EAAMG,MAAMC,WAAWC;;;4BAGhCL,GAAUA,EAAMG,MAAMG,QAAQC;;;IAGvDC;EAGSC,EAAoBZ,EAAOa,EAAAA,OAAOZ,IAAG;;IAE9CC,EAAAA;;IAECC,GACDA,EAAMC,UACNC,EAAAA,GAAAA;;2BAEwBF,GAAUA,EAAMG,MAAMC,WAAWC;;;4BAGhCL,GAAUA,EAAMG,MAAMG,QAAQC;;;IAGvDC;gBCnCkCR,KAElCW,kBAAAA,IAACf,EAAA,CACCgB,IAAKZ,EAAMY,IACXC,QAASb,EAAMa,QACfC,OAAQd,EAAMc,OACdC,WAAYf,EAAMe,WAClBC,UAAWhB,EAAMgB,UACjBC,IAAKjB,EAAMkB,GACXjB,SAAUD,EAAMmB,QAChBC,UAAWpB,EAAMqB,SAEhBC,SAAAtB,EAAMsB,+BAKqCtB,IAChD,MAAQuB,MAAAA,EAAAA,UAAOP,EAAAG,QAAWA,EAAAE,SAASA,EAAAR,QAAUA,EAAAC,OAASA,EAAAC,WAAQA,EAAAH,IAAYA,EAAAM,GAAKA,GAAOlB,EACtF,SACEW,kBAAAA,IAACF,EAAA,CACCG,MACAW,MAAAA,EACAV,UACAC,SACAC,aACAC,YACAC,IAAKC,EACLjB,SAAUkB,EACVC,UAAWC,KACPrB,EAEHsB,SAAAtB,EAAMsB"}
@@ -9,7 +9,7 @@ import { AnimatePresence, motion } from "framer-motion";
9
9
  import ReactDOM__default from "react-dom";
10
10
  import { g as addOutline, c as addFont, i as addAlwaysOutline } from "./style-RL73t3JD.js";
11
11
  import { a as addSX } from "./style-plT9Ah7t.js";
12
- import { b as Stack } from "./component-jPZYT5iL.js";
12
+ import { b as Stack } from "./component-mzzOCXSx.js";
13
13
  const shadowPulse = keyframes`
14
14
  0% {
15
15
  text-shadow: 0 0 0 rgba(0, 0, 0, 0);
@@ -707,4 +707,4 @@ export {
707
707
  TypographyTooltip as k,
708
708
  usePopover as u
709
709
  };
710
- //# sourceMappingURL=component-DKMsOpqH.js.map
710
+ //# sourceMappingURL=component-GtWqnaqk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"component-DKMsOpqH.js","sources":["../src/components/typography/component.styles.ts","../src/components/popover/component.tsx","../src/components/popover/component.styles.ts","../src/components/popover/component.constants.tsx","../src/components/tooltip/component.styles.ts","../src/components/tooltip/component.tsx","../src/components/tooltip/component.constants.ts","../src/components/typography/component.tsx"],"sourcesContent":["import { addOutline } from '@local/styles/add';\nimport { addSX as addSXStandard } from '@local/styles/sx';\nimport { JeneseiPalette } from '@local/theme/theme';\n\nimport styled, { css, keyframes } from 'styled-components';\n\nimport { addSXTypographyStyleProps, TypographyAllProps, TypographyCSSProps } from '.';\n\nconst shadowPulse = keyframes`\n 0% {\n text-shadow: 0 0 0 rgba(0, 0, 0, 0);\n }\n 50% {\n text-shadow: 4px 4px 10px rgba(0, 0, 0, 0.5);\n }\n 100% {\n text-shadow: 0 0 0 rgba(0, 0, 0, 0);\n }\n`;\n\nfunction toStyledCSS(value: TypographyAllProps) {\n return css`\n ${\n value.shadow &&\n value.shadow === 'shadowPulse' &&\n css`\n animation: ${shadowPulse} 2s infinite;\n `\n };\n ${\n value.letterSpacing &&\n css`\n letter-spacing: ${value.letterSpacing};\n `\n };\n ${\n value.flex &&\n css`\n flex: ${value.flex};\n `\n };\n ${\n value.cursor &&\n css`\n cursor: ${value.cursor};\n `\n };\n ${\n value.overflow &&\n css`\n overflow: ${value.overflow};\n `\n };\n ${\n value.line !== undefined\n ? value.line === 1\n ? css`\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n width: -webkit-fill-available;\n max-width: fit-content;\n `\n : css`\n word-break: break-word;\n white-space: normal;\n text-overflow: ellipsis;\n display: -webkit-box;\n overflow: hidden;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: ${value.line};\n width: fit-content;\n overflow-wrap: anywhere;\n `\n : css``\n };\n ${\n value.family &&\n css`\n font-family: ${value.family};\n `\n };\n ${\n value.weight &&\n css`\n font-weight: ${value.weight};\n `\n };\n ${\n value.height &&\n css`\n line-height: ${value.height}px;\n `\n };\n ${\n value.color &&\n css`\n color: ${JeneseiPalette[value.color]};\n `\n };\n ${\n value.align &&\n css`\n text-align: ${value.align};\n `\n };\n ${\n value.wrap &&\n css`\n text-wrap: ${value.wrap};\n `\n };\n ${\n value.decoration &&\n css`\n text-decoration: ${value.decoration};\n `\n };\n ${\n value.transform &&\n css`\n text-transform: ${value.transform};\n `\n };\n ${\n value.isHoverUnderlining &&\n css`\n &:hover {\n text-decoration: underline;\n }\n `\n };\n ${\n value.isNoUserSelect &&\n css`\n user-select: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n `\n };\n ${\n 'size' in value &&\n value.size &&\n css`\n font-size: ${value.size}px;\n `\n };\n ${\n 'variant' in value && value.variant\n ? value.variant === 'h1'\n ? css`\n font-size: ${(props) => props.theme.font.sizeHeading.h1 * props.theme.font.sizeDefault.default}px;\n line-height: ${(props) => props.theme.font.lineHeight};\n margin: 0;\n @media (max-width: ${(props) => props.theme.screens.tablet.width}px) {\n font-size: ${(props) => props.theme.font.sizeHeading.h1 * props.theme.font.sizeDefault.tablet}px;\n }\n\n @media (max-width: ${(props) => props.theme.screens.mobile.width}px) {\n font-size: ${(props) => props.theme.font.sizeHeading.h1 * props.theme.font.sizeDefault.mobile}px;\n }\n `\n : value.variant === 'h2'\n ? css`\n font-size: ${(props) => props.theme.font.sizeHeading.h2 * props.theme.font.sizeDefault.default}px;\n line-height: ${(props) => props.theme.font.lineHeight};\n margin: 0;\n @media (max-width: ${(props) => props.theme.screens.tablet.width}px) {\n font-size: ${(props) => props.theme.font.sizeHeading.h2 * props.theme.font.sizeDefault.tablet}px;\n }\n\n @media (max-width: ${(props) => props.theme.screens.mobile.width}px) {\n font-size: ${(props) => props.theme.font.sizeHeading.h2 * props.theme.font.sizeDefault.mobile}px;\n }\n `\n : value.variant === 'h3'\n ? css`\n font-size: ${(props) => props.theme.font.sizeHeading.h3 * props.theme.font.sizeDefault.default}px;\n line-height: ${(props) => props.theme.font.lineHeight};\n margin: 0;\n @media (max-width: ${(props) => props.theme.screens.tablet.width}px) {\n font-size: ${(props) => props.theme.font.sizeHeading.h3 * props.theme.font.sizeDefault.tablet}px;\n }\n\n @media (max-width: ${(props) => props.theme.screens.mobile.width}px) {\n font-size: ${(props) => props.theme.font.sizeHeading.h3 * props.theme.font.sizeDefault.mobile}px;\n }\n `\n : value.variant === 'h4'\n ? css`\n font-size: ${(props) => props.theme.font.sizeHeading.h4 * props.theme.font.sizeDefault.default}px;\n line-height: ${(props) => props.theme.font.lineHeight};\n margin: 0;\n @media (max-width: ${(props) => props.theme.screens.tablet.width}px) {\n font-size: ${(props) => props.theme.font.sizeHeading.h4 * props.theme.font.sizeDefault.tablet}px;\n }\n\n @media (max-width: ${(props) => props.theme.screens.mobile.width}px) {\n font-size: ${(props) => props.theme.font.sizeHeading.h4 * props.theme.font.sizeDefault.mobile}px;\n }\n `\n : value.variant === 'h5'\n ? css`\n font-size: ${(props) => props.theme.font.sizeHeading.h5 * props.theme.font.sizeDefault.default}px;\n line-height: ${(props) => props.theme.font.lineHeight};\n margin: 0;\n @media (max-width: ${(props) => props.theme.screens.tablet.width}px) {\n font-size: ${(props) => props.theme.font.sizeHeading.h5 * props.theme.font.sizeDefault.tablet}px;\n }\n\n @media (max-width: ${(props) => props.theme.screens.mobile.width}px) {\n font-size: ${(props) => props.theme.font.sizeHeading.h5 * props.theme.font.sizeDefault.mobile}px;\n }\n `\n : value.variant === 'h6'\n ? css`\n font-size: ${(props) => props.theme.font.sizeHeading.h6 * props.theme.font.sizeDefault.default}px;\n line-height: ${(props) => props.theme.font.lineHeight};\n margin: 0;\n @media (max-width: ${(props) => props.theme.screens.tablet.width}px) {\n font-size: ${(props) => props.theme.font.sizeHeading.h6 * props.theme.font.sizeDefault.tablet}px;\n }\n\n @media (max-width: ${(props) => props.theme.screens.mobile.width}px) {\n font-size: ${(props) => props.theme.font.sizeHeading.h6 * props.theme.font.sizeDefault.mobile}px;\n }\n `\n : value.variant === 'h7'\n ? css`\n font-size: ${(props) => props.theme.font.sizeHeading.h7 * props.theme.font.sizeDefault.default}px;\n line-height: ${(props) => props.theme.font.lineHeight};\n margin: 0;\n @media (max-width: ${(props) => props.theme.screens.tablet.width}px) {\n font-size: ${(props) =>\n props.theme.font.sizeHeading.h7 * props.theme.font.sizeDefault.tablet}px;\n }\n\n @media (max-width: ${(props) => props.theme.screens.mobile.width}px) {\n font-size: ${(props) =>\n props.theme.font.sizeHeading.h7 * props.theme.font.sizeDefault.mobile}px;\n }\n `\n : value.variant === 'h8'\n ? css`\n font-size: ${(props) =>\n props.theme.font.sizeHeading.h8 * props.theme.font.sizeDefault.default}px;\n line-height: ${(props) => props.theme.font.lineHeight};\n margin: 0;\n @media (max-width: ${(props) => props.theme.screens.tablet.width}px) {\n font-size: ${(props) =>\n props.theme.font.sizeHeading.h8 * props.theme.font.sizeDefault.tablet}px;\n }\n\n @media (max-width: ${(props) => props.theme.screens.mobile.width}px) {\n font-size: ${(props) =>\n props.theme.font.sizeHeading.h8 * props.theme.font.sizeDefault.mobile}px;\n }\n `\n : value.variant === 'h9'\n ? css`\n font-size: ${(props) =>\n props.theme.font.sizeHeading.h9 * props.theme.font.sizeDefault.default}px;\n line-height: ${(props) => props.theme.font.lineHeight};\n margin: 0;\n @media (max-width: ${(props) => props.theme.screens.tablet.width}px) {\n font-size: ${(props) =>\n props.theme.font.sizeHeading.h9 * props.theme.font.sizeDefault.tablet}px;\n }\n\n @media (max-width: ${(props) => props.theme.screens.mobile.width}px) {\n font-size: ${(props) =>\n props.theme.font.sizeHeading.h9 * props.theme.font.sizeDefault.mobile}px;\n }\n `\n : null\n : null\n };\n `;\n}\n\nexport const addSXTypography = css<addSXTypographyStyleProps>`\n ${(props) => {\n const rawSX = props.$sxTypography;\n if (!rawSX) return null;\n return toStyledCSS(rawSX.default);\n }}\n\n ${(props) => {\n const rawSX = props.$sxTypography;\n if (!rawSX) return null;\n\n return Object.entries(rawSX)\n .filter(([key]) => key !== 'default')\n .map(([deviceKey, value]) => {\n const screenWidth = props.theme.screens[deviceKey as keyof typeof props.theme.screens]?.width;\n if (!screenWidth) return null;\n return css`\n @media (max-width: ${screenWidth}px) {\n ${toStyledCSS(value)}\n }\n `;\n });\n }}\n`;\n\nconst TypographyCSS = css<TypographyCSSProps>`\n font-style: normal;\n position: relative;\n overflow: visible;\n text-overflow: ellipsis;\n overflow-wrap: anywhere;\n line-height: ${(props) => props.theme.font.lineHeight};\n ${addSXTypography};\n ${addSXStandard}\n`;\n\nexport const Title = styled.span<TypographyCSSProps>`\n ${TypographyCSS}\n ${addOutline}\n`;\n","import { KEY_SIZE_DATA } from '@local/theme';\n\nimport { autoUpdate, flip, offset, shift, useFloating } from '@floating-ui/react';\nimport { AnimatePresence } from 'framer-motion';\nimport { FC, Ref, useCallback, useEffect, useLayoutEffect, useMemo, useRef, useState } from 'react';\nimport ReactDOM from 'react-dom';\nimport { useTheme } from 'styled-components';\n\nimport { DEFAULT_POPOVER_CLOSE_DELAY, DEFAULT_POPOVER_OFFSET, PopoverProps, PopoverWrapper, UsePopoverProps } from '.';\n\nexport const Popover: FC<PopoverProps> = (props) => {\n const theme = useTheme();\n return ReactDOM.createPortal(\n <AnimatePresence>\n {props.isOpen && (\n <div\n tabIndex={-1}\n ref={props.ref as Ref<HTMLDivElement | null>}\n style={{\n position: 'absolute',\n top: 0,\n left: 0,\n ...props.floatingStyles,\n transform: props.floatingStyles.transform,\n zIndex: 9999,\n }}\n >\n <PopoverWrapper\n tabIndex={-1}\n $isShowAlwaysOutline={props.isShowAlwaysOutline}\n $genre={props.genre ?? 'black'}\n $font={{\n size: props.font?.size ?? KEY_SIZE_DATA[props.size ?? 'medium'].font,\n weight: props.font?.weight ?? 700,\n family: props.font?.family ?? theme.font.family,\n height: props.font?.height,\n }}\n className={props.className}\n initial={{ opacity: 0, scale: 0.95 }}\n animate={{ opacity: 1, scale: 1 }}\n exit={{ opacity: 0, scale: 0.95 }}\n transition={{ duration: 0.2 }}\n $sx={props.sx}\n $size={props.size}\n $sxTypography={props.sxTypography}\n $maxHeight={props.maxHeight}\n $maxWidth={props.maxWidth}\n >\n {props.children}\n </PopoverWrapper>\n </div>\n )}\n </AnimatePresence>,\n document.body,\n );\n};\n\nexport const usePopover = (props: UsePopoverProps) => {\n const { onFocus, onBlur, onBlurReference } = props;\n\n // Состояние открытия поповера\n const [isOpen, setIsOpen] = useState(false);\n // Минимальная ширина поповера (нужна, если хотим, чтобы ширина совпадала с референсом)\n const [minWidth, setMinWidth] = useState<number | undefined>(undefined);\n // Флаг, был ли поповер когда-либо открыт (чтобы onBlur не вызывался при первом рендере)\n const [wasEverOpen, setWasEverOpen] = useState(false);\n\n // Позиционирование через floating-ui\n const {\n refs,\n floatingStyles,\n update,\n placement: actualPlacement,\n } = useFloating({\n open: isOpen,\n placement: props.placement,\n middleware: [offset(props.offset ?? 8), flip(), shift()],\n whileElementsMounted: autoUpdate,\n });\n\n // Сохраняем обработчик клика вне поповера (чтобы можно было удалить при cleanup)\n const clickOutsideHandler = useRef<((e: MouseEvent) => void) | null>(null);\n // Таймаут для закрытия при hover-режиме\n const hoverCloseTimeout = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n // Отступ для hover-зоны (чтобы не закрывался мгновенно при небольших движениях мыши)\n const hoverOffset = useMemo(\n () => props.hoverOffset ?? props.offset ?? DEFAULT_POPOVER_OFFSET,\n [props.hoverOffset, props.offset],\n );\n // Задержка перед закрытием при hover\n const hoverCloseDelay = useMemo(() => props.hoverCloseDelay ?? DEFAULT_POPOVER_CLOSE_DELAY, [props.hoverCloseDelay]);\n\n /**\n * Навешиваем обработчики на reference-элемент в зависимости от режима:\n * - click / clickOpen → открытие/переключение по клику\n * - hover → открытие/закрытие при наведении\n */\n useEffect(() => {\n if (props.isDisabled) return;\n const refEl = refs.reference.current;\n if (!refEl) return;\n\n // Режим клика\n if ((props.mode === 'click' || props.mode === 'clickOpen') && refEl instanceof HTMLElement) {\n const handleClick = () => {\n if (props.mode === 'click') {\n setIsOpen((prev) => !prev);\n } else if (props.mode === 'clickOpen') {\n setIsOpen(true);\n }\n };\n\n refEl.addEventListener('click', handleClick);\n return () => {\n refEl.removeEventListener('click', handleClick);\n };\n\n // Режим ховера\n } else if (props.mode === 'hover' && refEl instanceof HTMLElement) {\n const handleMouseEnter = () => {\n setIsOpen(true);\n };\n const handleMouseLeave = () => {\n if (hoverCloseTimeout.current) clearTimeout(hoverCloseTimeout.current);\n hoverCloseTimeout.current = setTimeout(() => setIsOpen(false), hoverCloseDelay);\n };\n\n refEl.addEventListener('mouseenter', handleMouseEnter);\n refEl.addEventListener('mouseleave', handleMouseLeave);\n return () => {\n refEl.removeEventListener('mouseenter', handleMouseEnter);\n refEl.removeEventListener('mouseleave', handleMouseLeave);\n if (hoverCloseTimeout.current) clearTimeout(hoverCloseTimeout.current);\n };\n }\n }, [props.mode, refs.reference, hoverCloseDelay, props.isDisabled]);\n\n // Автоматическое обновление позиции, пока поповер открыт\n useEffect(() => {\n if (!isOpen || !refs.reference.current || !refs.floating.current || props.isDisabled) return;\n\n const cleanup = autoUpdate(refs.reference.current, refs.floating.current, update);\n\n return () => cleanup();\n }, [isOpen, refs.reference, refs.floating, update, props.isDisabled]);\n\n /**\n * Логика закрытия поповера при клике вне него\n */\n useEffect(() => {\n if (!isOpen || !refs.reference.current || !refs.floating.current || props.isDisabled) return;\n\n if (props.isClickOutside) {\n clickOutsideHandler.current = (e: MouseEvent) => {\n const refEl = refs.reference.current;\n const floatingEl = refs.floating.current;\n const otherRefs = props.refsExcludeClickOutside || [];\n\n // Проверяем, что клик не по поповеру, не по reference и не по исключенным ref'ам\n if (\n refEl instanceof HTMLElement &&\n floatingEl instanceof HTMLElement &&\n !refEl.contains(e.target as Node) &&\n !floatingEl.contains(e.target as Node) &&\n !otherRefs.some((ref) => {\n if (typeof ref === 'object' && ref !== null && 'current' in ref) {\n return (ref.current as HTMLElement | null)?.contains(e.target as Node);\n }\n return false;\n })\n ) {\n setIsOpen(false);\n }\n };\n\n document.addEventListener('mousedown', clickOutsideHandler.current);\n }\n\n return () => {\n if (clickOutsideHandler.current) {\n document.removeEventListener('mousedown', clickOutsideHandler.current);\n clickOutsideHandler.current = null;\n }\n if (hoverCloseTimeout.current) {\n clearTimeout(hoverCloseTimeout.current);\n }\n };\n }, [isOpen, refs.reference, refs.floating, props.isClickOutside, props.isDisabled, props.refsExcludeClickOutside]);\n\n /**\n * Поддержка режима \"плавающего hover\"\n * Закрывает поповер, если мышь ушла за пределы reference+floating с отступом\n */\n useEffect(() => {\n if (!isOpen || !props.isFloatingHover || !refs.reference.current || !refs.floating.current || props.isDisabled)\n return;\n\n const refEl = refs.reference.current;\n const floatingEl = refs.floating.current;\n\n const handleMouseMove = (e: MouseEvent) => {\n const mouseX = e.clientX;\n const mouseY = e.clientY;\n\n const refRect = refEl.getBoundingClientRect();\n const floatingRect = floatingEl.getBoundingClientRect();\n\n // Находим, внутри ли курсор reference или floating с учётом отступа\n const isInsideRef =\n mouseX >= refRect.left - hoverOffset &&\n mouseX <= refRect.right + hoverOffset &&\n mouseY >= refRect.top - hoverOffset &&\n mouseY <= refRect.bottom + hoverOffset;\n\n const isInsideFloating =\n mouseX >= floatingRect.left - hoverOffset &&\n mouseX <= floatingRect.right + hoverOffset &&\n mouseY >= floatingRect.top - hoverOffset &&\n mouseY <= floatingRect.bottom + hoverOffset;\n\n if (isInsideRef || isInsideFloating) {\n // Если вернулись внутрь — отменяем закрытие\n if (hoverCloseTimeout.current) {\n clearTimeout(hoverCloseTimeout.current);\n hoverCloseTimeout.current = null;\n }\n } else {\n // Если вышли — запускаем таймер на закрытие\n if (hoverCloseTimeout.current) clearTimeout(hoverCloseTimeout.current);\n hoverCloseTimeout.current = setTimeout(() => setIsOpen(false), hoverCloseDelay);\n }\n };\n\n document.addEventListener('mousemove', handleMouseMove);\n\n return () => {\n document.removeEventListener('mousemove', handleMouseMove);\n if (hoverCloseTimeout.current) {\n clearTimeout(hoverCloseTimeout.current);\n }\n };\n }, [isOpen, props.isFloatingHover, refs.reference, refs.floating, hoverOffset, hoverCloseDelay, props.isDisabled]);\n\n /**\n * Устанавливаем минимальную ширину поповера, равную reference (если включено isWidthAsContent)\n */\n useLayoutEffect(() => {\n if (!props.isWidthAsContent || !refs.reference.current) return;\n const rect = refs.reference.current.getBoundingClientRect();\n setMinWidth(rect.width);\n }, [props.isWidthAsContent, refs.reference]);\n\n // Методы управления открытием\n const open = useCallback(() => {\n if (props.isDisabled) return;\n setIsOpen(true);\n }, [props.isDisabled]);\n const close = useCallback(() => {\n if (props.isDisabled) return;\n setIsOpen(false);\n }, [props.isDisabled]);\n const toggle = useCallback(() => {\n if (props.isDisabled) return;\n setIsOpen((prev) => !prev);\n }, [props.isDisabled]);\n\n // Объединяем стили floating-ui с дополнительными ограничениями по ширине\n const combinedStyles = useMemo(() => {\n return {\n ...floatingStyles,\n minWidth: props.isWidthAsContent && minWidth ? `${minWidth}px` : undefined,\n maxWidth: props.isWidthAsContent && minWidth ? `${minWidth}px` : undefined,\n };\n }, [floatingStyles, props.isWidthAsContent, minWidth]);\n\n /**\n * Вызываем onFocus при открытии\n * и запоминаем, что поповер хоть раз был открыт\n */\n useEffect(() => {\n if (isOpen) {\n onFocus?.();\n setWasEverOpen(true);\n }\n }, [isOpen, onFocus]);\n\n /**\n * Вызываем onBlur при первом закрытии после открытия\n */\n useEffect(() => {\n if (!isOpen && wasEverOpen) {\n onBlur?.();\n }\n }, [isOpen, wasEverOpen, onBlur]);\n\n /**\n * Закрытие при потере фокуса (focusin вне поповера + reference)\n * (но не на исключённые элементы)\n */\n useEffect(() => {\n if (!isOpen || props.isDisabled) return;\n\n const handleFocusIn = (e: FocusEvent) => {\n const refEl = refs.reference.current;\n const floatingEl = refs.floating.current;\n const otherRefs = props.refsExcludeClickOutside || [];\n\n const isInside =\n (refEl instanceof HTMLElement && refEl.contains(e.target as Node)) ||\n (floatingEl instanceof HTMLElement && floatingEl.contains(e.target as Node)) ||\n otherRefs.some((ref) => {\n if (ref && 'current' in ref && ref.current && ref.current instanceof HTMLElement) {\n return ref.current.contains(e.target as Node);\n }\n return false;\n });\n\n if (!isInside) {\n setIsOpen(false);\n }\n };\n\n document.addEventListener('focusin', handleFocusIn);\n\n return () => {\n document.removeEventListener('focusin', handleFocusIn);\n };\n }, [isOpen, refs.reference, refs.floating, props.refsExcludeClickOutside, props.isDisabled]);\n\n /**\n * Вызываем onBlurReference, если фокус ушёл с reference-элемента\n * (но не на исключённые элементы)\n */\n useEffect(() => {\n if (!refs.reference.current || props.isDisabled || !onBlurReference) return;\n\n const refEl = refs.reference.current;\n const otherRefs = props.refsExcludeBlur || [];\n\n const handleBlur = (e: FocusEvent) => {\n if (\n refEl instanceof HTMLElement &&\n !refEl.contains(e.relatedTarget as Node) &&\n !otherRefs.some((ref) => {\n if (ref && 'current' in ref && ref.current && ref.current instanceof HTMLElement)\n return ref.current.contains(e.relatedTarget as Node);\n })\n ) {\n onBlurReference();\n }\n };\n\n if (refEl instanceof HTMLElement) refEl.addEventListener('blur', handleBlur, true);\n\n return () => {\n if (refEl instanceof HTMLElement) refEl.removeEventListener('blur', handleBlur, true);\n };\n }, [refs.reference, props.isDisabled, onBlurReference, props.refsExcludeBlur]);\n\n /**\n * Функция возвращает true или false в зависимости от состояния от FocusEvent который находится внутри или снаружи\n */\n const getIsInside = useCallback(\n (target: Node | null) => {\n if (!target) return false; // если relatedTarget null, значит фокус ушёл вне окна — закрываем\n\n const refEl = refs.reference.current;\n const floatingEl = refs.floating.current;\n const otherRefs = props.refsExcludeBlur || [];\n\n return (\n (refEl instanceof HTMLElement && refEl.contains(target)) ||\n (floatingEl instanceof HTMLElement && floatingEl.contains(target)) ||\n otherRefs.some((ref) => {\n if (ref && 'current' in ref && ref.current && ref.current instanceof HTMLElement) {\n return ref.current.contains(target);\n }\n return false;\n })\n );\n },\n [refs.reference, refs.floating, props.refsExcludeBlur],\n );\n // Возвращаем наружу API для использования поповера\n return {\n getIsInside,\n isOpen,\n setIsOpen,\n open,\n close,\n toggle,\n refReference: refs.setReference as Ref<HTMLElement | null>,\n refFloating: refs.setFloating as Ref<HTMLElement | null>,\n floatingStyles: combinedStyles,\n placement: actualPlacement,\n };\n};\n","import { addSXTypography } from '@local/components/typography';\nimport { addAlwaysOutline, addFont } from '@local/styles/add';\nimport { addSX } from '@local/styles/sx';\nimport { IThemeSizePropertyDefault, KEY_SIZE_DATA } from '@local/theme';\n\nimport { motion } from 'framer-motion';\nimport styled, { css } from 'styled-components';\n\nimport { StyledPopoverProps } from '.';\n\n/****************************************** Popover Genre *************************************************/\nconst addPopoverGenre = css<StyledPopoverProps>`\n ${(props) => css`\n background: ${props.theme.colors.button[props.$genre].background.rest};\n border-color: ${props.theme.colors.button[props.$genre].border.rest};\n color: ${props.theme.colors.button[props.$genre].color.rest};\n /* box-shadow: ${props.theme.effects.button}; */\n `};\n`;\n\n/****************************************** Popover Size *************************************************/\nexport const addPopoverSize = css<StyledPopoverProps>`\n ${(props) =>\n addPopoverSizeConstructor({\n ...KEY_SIZE_DATA[props.$size ?? 'medium'],\n })};\n`;\nexport const addPopoverSizeConstructor = (props: IThemeSizePropertyDefault) => css`\n display: flex;\n border-radius: ${props.radius}px;\n padding: ${props.padding}px;\n gap: ${props.padding - 2}px;\n`;\n\n/****************************************** Default *************************************************/\nexport const PopoverWrapper = styled(motion.div)<StyledPopoverProps>`\n max-width: ${(props) => props.$maxWidth || '100%'};\n max-height: ${(props) => props.$maxHeight || '100%'};\n overflow: auto;\n flex-direction: column;\n ${addFont};\n ${addPopoverSize};\n ${addAlwaysOutline};\n ${addSXTypography};\n ${addPopoverGenre};\n ${addSX};\n`;\n","export const DEFAULT_POPOVER_OFFSET = 8\nexport const DEFAULT_POPOVER_CLOSE_DELAY = 100\n","import styled, { css } from 'styled-components'\n\nimport { IThemeSizePropertyDefault, KEY_SIZE_DATA } from '@local/theme'\n\nimport { Popover, PopoverProps } from '../popover'\nimport { Stack } from '../stack'\n\nexport const TooltipContainer = styled(Stack)`\n display: flex;\n width: fit-content;\n height: fit-content;\n`\n\nexport const addTooltipBoxSize = css<PopoverProps>`\n ${props =>\n addTooltipBoxSizeConstructor({\n ...KEY_SIZE_DATA[props.size ?? 'medium']\n })};\n`\nexport const addTooltipBoxSizeConstructor = (props: IThemeSizePropertyDefault) => css`\n gap: 0px;\n padding: ${props.padding}px ${props.padding}px 0px ${props.padding}px;\n :after {\n content: '';\n display: block;\n height: ${props.padding}px;\n width: 100%;\n }\n`\n\n/****************************************** TooltipBox *************************************************/\nexport const TooltipBox = styled(Popover)`\n ${addTooltipBoxSize};\n`\n","import { FC, Ref, memo } from 'react'\n\nimport { Typography } from '@local/components/typography'\n\nimport {\n DEFAULT_TOOLTIP_OFFSET_FALLBACK,\n DEFAULT_TOOLTIP_PLACEMENT_FALLBACK,\n TooltipBox,\n TooltipContainer,\n TooltipProps\n} from '.'\nimport { usePopover } from '../popover'\n\nexport const Tooltip: FC<TooltipProps> = memo(props => {\n if (props.isDisabled) return <>{props.children}</>\n\n return <TooltipContent {...props} />\n})\n\nexport const TooltipContent: FC<TooltipProps> = props => {\n const { isOpen, refReference, refFloating, floatingStyles } = usePopover({\n placement: props.placement ?? DEFAULT_TOOLTIP_PLACEMENT_FALLBACK,\n offset: props.offset ?? DEFAULT_TOOLTIP_OFFSET_FALLBACK,\n mode: props.mode ?? 'hover',\n isClickOutside: props.isClickOutside ?? true,\n isFloatingHover: props.isFloatingHover ?? true,\n isWidthAsContent: props.isWidthAsContent ?? false,\n hoverCloseDelay: props.hoverCloseDelay ?? undefined,\n hoverOffset: props.hoverOffset ?? undefined\n })\n return (\n <>\n <TooltipContainer sx={props.sx} ref={refReference as Ref<HTMLDivElement | null>}>\n {props.children}\n </TooltipContainer>\n <TooltipBox\n size={props.size}\n isOpen={isOpen}\n genre={props.genre}\n floatingStyles={floatingStyles}\n ref={refFloating}\n maxHeight={props.maxHeight}\n maxWidth={props.maxWidth}\n >\n <Typography\n sx={\n props.sxTypography ?? {\n default: {\n size: 14\n }\n }\n }\n >\n {props.content}\n </Typography>\n </TooltipBox>\n </>\n )\n}\n\nTooltip.displayName = 'Tooltip'\n","import { Placement } from '@floating-ui/react'\n\nexport const DEFAULT_TOOLTIP_PLACEMENT_FALLBACK: Placement = 'bottom-start'\nexport const DEFAULT_TOOLTIP_OFFSET_FALLBACK: number = 8\n","import { useScreenWidth } from '@local/contexts/context-screen-width';\n\nimport { createLink, LinkProps } from '@tanstack/react-router';\nimport { memo, useEffect, useMemo, useRef, useState } from 'react';\n\nimport { Tooltip } from '../tooltip';\nimport { Title, TypographyCSSProps, TypographyProps, TypographyTooltipProps } from '.';\n\nconst TypographyWithRef = (props: TypographyProps) => {\n const { screenActual } = useScreenWidth();\n const cssProps: TypographyCSSProps & Pick<TypographyProps, 'onClick' | 'className' | 'style'> = useMemo(\n () => ({\n $sxTypography: props.sx,\n style: props.style,\n className: props.className,\n $sx: props.sxStandard,\n $isDisabledOutline: props.isDisabledOutline,\n $isOutlineBoxShadow: props.isOutlineBoxShadow,\n $isReadOnly: props.isReadOnly,\n onClick: props.onClick ? props.onClick : () => {},\n }),\n [\n props.sx,\n props.style,\n props.className,\n props.sxStandard,\n props.onClick,\n props.isDisabledOutline,\n props.isOutlineBoxShadow,\n props.isReadOnly,\n ],\n );\n\n const screenSX = useMemo(() => props.sx?.[screenActual] ?? props.sx?.default, [props.sx, screenActual]);\n\n if (screenSX && 'variant' in screenSX) {\n if (screenSX.variant === 'h7' || screenSX.variant === 'h8' || screenSX.variant === 'h9') {\n return (\n <Title\n // biome-ignore lint/suspicious/noExplicitAny: <explanation>\n ref={props.ref as any}\n as={props.isAnchor ? 'a' : props.isParagraph ? 'p' : props.isSpan ? 'span' : 'span'}\n href={props.href}\n {...cssProps}\n >\n {props.children}\n </Title>\n );\n } else {\n return (\n <Title\n // biome-ignore lint/suspicious/noExplicitAny: <explanation>\n ref={props.ref as any}\n as={props.isAnchor ? 'a' : props.isParagraph ? 'p' : props.isSpan ? 'span' : screenSX.variant}\n href={props.href}\n {...cssProps}\n >\n {props.children}\n </Title>\n );\n }\n }\n\n return (\n <Title\n // biome-ignore lint/suspicious/noExplicitAny: <explanation>\n ref={props.ref as any}\n as={props.isAnchor ? 'a' : props.isParagraph ? 'p' : props.isSpan ? 'span' : 'span'}\n href={props.href}\n {...cssProps}\n >\n {props.children}\n </Title>\n );\n};\n\nexport const Typography = (props: TypographyProps) => {\n return <TypographyWithRef {...props} />;\n};\n\nconst TypographySizeIsAnchor = (props: TypographyProps & LinkProps) => {\n return <TypographyWithRef isAnchor {...props} ref={props.ref} href={props.href} />;\n};\n\nexport const TypographyLink = createLink(TypographySizeIsAnchor);\n\nexport const TypographyTooltip = memo((props: TypographyTooltipProps) => {\n const [isOverflowing, setIsOverflowing] = useState(false);\n const contentRef = useRef<HTMLDivElement>(null);\n\n // biome-ignore lint/correctness/useExhaustiveDependencies: <explanation>\n useEffect(() => {\n const checkOverflow = () => {\n if (contentRef.current) {\n setIsOverflowing(contentRef.current.scrollWidth > contentRef.current.clientWidth);\n }\n };\n checkOverflow();\n window.addEventListener('resize', checkOverflow);\n return () => window.removeEventListener('resize', checkOverflow);\n }, [props.children]);\n\n return (\n <Tooltip isDisabled={!isOverflowing} content={props.children} {...props.tooltip}>\n <TypographyWithRef ref={contentRef} {...props.typography} style={{ position: 'relative' }}>\n {props.children}\n </TypographyWithRef>\n </Tooltip>\n );\n});\n\nTypographyTooltip.displayName = 'TypographyTooltip';\nTypographyWithRef.displayName = 'TypographyWithRef';\nTypographySizeIsAnchor.displayName = 'TypographySizeIsAnchor';\n"],"names":["addSXStandard","ReactDOM","jsx","Fragment","jsxs"],"mappings":";;;;;;;;;;;;AAQA,MAAM,cAAc;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYpB,SAAS,YAAY,OAA2B;AAC9C,SAAO;AAAA,MAEH,MAAM,UACN,MAAM,WAAW,iBACjB;AAAA,mBACa,WAAW;AAAA,KAE1B;AAAA,MAEE,MAAM,iBACN;AAAA,wBACkB,MAAM,aAAa;AAAA,KAEvC;AAAA,MAEE,MAAM,QACN;AAAA,cACQ,MAAM,IAAI;AAAA,KAEpB;AAAA,MAEE,MAAM,UACN;AAAA,gBACU,MAAM,MAAM;AAAA,KAExB;AAAA,MAEE,MAAM,YACN;AAAA,kBACY,MAAM,QAAQ;AAAA,KAE5B;AAAA,MAEE,MAAM,SAAS,SACX,MAAM,SAAS,IACb;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,cAOA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kCAOsB,MAAM,IAAI;AAAA;AAAA;AAAA,cAIlC,KACN;AAAA,MAEE,MAAM,UACN;AAAA,qBACe,MAAM,MAAM;AAAA,KAE7B;AAAA,MAEE,MAAM,UACN;AAAA,qBACe,MAAM,MAAM;AAAA,KAE7B;AAAA,MAEE,MAAM,UACN;AAAA,qBACe,MAAM,MAAM;AAAA,KAE7B;AAAA,MAEE,MAAM,SACN;AAAA,eACS,eAAe,MAAM,KAAK,CAAC;AAAA,KAEtC;AAAA,MAEE,MAAM,SACN;AAAA,oBACc,MAAM,KAAK;AAAA,KAE3B;AAAA,MAEE,MAAM,QACN;AAAA,mBACa,MAAM,IAAI;AAAA,KAEzB;AAAA,MAEE,MAAM,cACN;AAAA,yBACmB,MAAM,UAAU;AAAA,KAErC;AAAA,MAEE,MAAM,aACN;AAAA,wBACkB,MAAM,SAAS;AAAA,KAEnC;AAAA,MAEE,MAAM,sBACN;AAAA;AAAA;AAAA;AAAA,KAKF;AAAA,MAEE,MAAM,kBACN;AAAA;AAAA;AAAA;AAAA;AAAA,KAMF;AAAA,MAEE,UAAU,SACV,MAAM,QACN;AAAA,mBACa,MAAM,IAAI;AAAA,KAEzB;AAAA,MAEE,aAAa,SAAS,MAAM,UACxB,MAAM,YAAY,OAChB;AAAA,yBACa,CAAC,UAAU,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,OAAO;AAAA,2BAC/E,CAAC,UAAU,MAAM,MAAM,KAAK,UAAU;AAAA;AAAA,iCAEhC,CAAC,UAAU,MAAM,MAAM,QAAQ,OAAO,KAAK;AAAA,2BACjD,CAAC,UAAU,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,MAAM;AAAA;AAAA;AAAA,iCAG1E,CAAC,UAAU,MAAM,MAAM,QAAQ,OAAO,KAAK;AAAA,2BACjD,CAAC,UAAU,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,MAAM;AAAA;AAAA,cAG/F,MAAM,YAAY,OAChB;AAAA,2BACa,CAAC,UAAU,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,OAAO;AAAA,6BAC/E,CAAC,UAAU,MAAM,MAAM,KAAK,UAAU;AAAA;AAAA,mCAEhC,CAAC,UAAU,MAAM,MAAM,QAAQ,OAAO,KAAK;AAAA,6BACjD,CAAC,UAAU,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,MAAM;AAAA;AAAA;AAAA,mCAG1E,CAAC,UAAU,MAAM,MAAM,QAAQ,OAAO,KAAK;AAAA,6BACjD,CAAC,UAAU,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,MAAM;AAAA;AAAA,gBAG/F,MAAM,YAAY,OAChB;AAAA,6BACa,CAAC,UAAU,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,OAAO;AAAA,+BAC/E,CAAC,UAAU,MAAM,MAAM,KAAK,UAAU;AAAA;AAAA,qCAEhC,CAAC,UAAU,MAAM,MAAM,QAAQ,OAAO,KAAK;AAAA,+BACjD,CAAC,UAAU,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,MAAM;AAAA;AAAA;AAAA,qCAG1E,CAAC,UAAU,MAAM,MAAM,QAAQ,OAAO,KAAK;AAAA,+BACjD,CAAC,UAAU,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,MAAM;AAAA;AAAA,kBAG/F,MAAM,YAAY,OAChB;AAAA,+BACa,CAAC,UAAU,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,OAAO;AAAA,iCAC/E,CAAC,UAAU,MAAM,MAAM,KAAK,UAAU;AAAA;AAAA,uCAEhC,CAAC,UAAU,MAAM,MAAM,QAAQ,OAAO,KAAK;AAAA,iCACjD,CAAC,UAAU,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,MAAM;AAAA;AAAA;AAAA,uCAG1E,CAAC,UAAU,MAAM,MAAM,QAAQ,OAAO,KAAK;AAAA,iCACjD,CAAC,UAAU,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,MAAM;AAAA;AAAA,oBAG/F,MAAM,YAAY,OAChB;AAAA,iCACa,CAAC,UAAU,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,OAAO;AAAA,mCAC/E,CAAC,UAAU,MAAM,MAAM,KAAK,UAAU;AAAA;AAAA,yCAEhC,CAAC,UAAU,MAAM,MAAM,QAAQ,OAAO,KAAK;AAAA,mCACjD,CAAC,UAAU,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,MAAM;AAAA;AAAA;AAAA,yCAG1E,CAAC,UAAU,MAAM,MAAM,QAAQ,OAAO,KAAK;AAAA,mCACjD,CAAC,UAAU,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,MAAM;AAAA;AAAA,sBAG/F,MAAM,YAAY,OAChB;AAAA,mCACa,CAAC,UAAU,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,OAAO;AAAA,qCAC/E,CAAC,UAAU,MAAM,MAAM,KAAK,UAAU;AAAA;AAAA,2CAEhC,CAAC,UAAU,MAAM,MAAM,QAAQ,OAAO,KAAK;AAAA,qCACjD,CAAC,UAAU,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,MAAM;AAAA;AAAA;AAAA,2CAG1E,CAAC,UAAU,MAAM,MAAM,QAAQ,OAAO,KAAK;AAAA,qCACjD,CAAC,UAAU,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,MAAM;AAAA;AAAA,wBAG/F,MAAM,YAAY,OAChB;AAAA,qCACa,CAAC,UAAU,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,OAAO;AAAA,uCAC/E,CAAC,UAAU,MAAM,MAAM,KAAK,UAAU;AAAA;AAAA,6CAEhC,CAAC,UAAU,MAAM,MAAM,QAAQ,OAAO,KAAK;AAAA,uCACjD,CAAC,UACZ,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,MAAM;AAAA;AAAA;AAAA,6CAGpD,CAAC,UAAU,MAAM,MAAM,QAAQ,OAAO,KAAK;AAAA,uCACjD,CAAC,UACZ,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,MAAM;AAAA;AAAA,0BAGzE,MAAM,YAAY,OAChB;AAAA,uCACa,CAAC,UACZ,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,OAAO;AAAA,yCACzD,CAAC,UAAU,MAAM,MAAM,KAAK,UAAU;AAAA;AAAA,+CAEhC,CAAC,UAAU,MAAM,MAAM,QAAQ,OAAO,KAAK;AAAA,yCACjD,CAAC,UACZ,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,MAAM;AAAA;AAAA;AAAA,+CAGpD,CAAC,UAAU,MAAM,MAAM,QAAQ,OAAO,KAAK;AAAA,yCACjD,CAAC,UACZ,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,MAAM;AAAA;AAAA,4BAGzE,MAAM,YAAY,OAChB;AAAA,yCACa,CAAC,UACZ,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,OAAO;AAAA,2CACzD,CAAC,UAAU,MAAM,MAAM,KAAK,UAAU;AAAA;AAAA,iDAEhC,CAAC,UAAU,MAAM,MAAM,QAAQ,OAAO,KAAK;AAAA,2CACjD,CAAC,UACZ,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,MAAM;AAAA;AAAA;AAAA,iDAGpD,CAAC,UAAU,MAAM,MAAM,QAAQ,OAAO,KAAK;AAAA,2CACjD,CAAC,UACZ,MAAM,MAAM,KAAK,YAAY,KAAK,MAAM,MAAM,KAAK,YAAY,MAAM;AAAA;AAAA,8BAGzE,OAClB,IACN;AAAA;AAEJ;AAEO,MAAM,kBAAkB;AAAA,IAC3B,CAAC,UAAU;AACX,QAAM,QAAQ,MAAM;AACpB,MAAI,CAAC,MAAO,QAAO;AACnB,SAAO,YAAY,MAAM,OAAO;AAClC,CAAC;AAAA;AAAA,IAEC,CAAC,UAAU;AACX,QAAM,QAAQ,MAAM;AACpB,MAAI,CAAC,MAAO,QAAO;AAEnB,SAAO,OAAO,QAAQ,KAAK,EACxB,OAAO,CAAC,CAAC,GAAG,MAAM,QAAQ,SAAS,EACnC,IAAI,CAAC,CAAC,WAAW,KAAK,MAAM;;AAC3B,UAAM,eAAc,WAAM,MAAM,QAAQ,SAA6C,MAAjE,mBAAoE;AACxF,QAAI,CAAC,YAAa,QAAO;AACzB,WAAO;AAAA,+BACgB,WAAW;AAAA,cAC5B,YAAY,KAAK,CAAC;AAAA;AAAA;AAAA,EAAA,CAGzB;AACL,CAAC;AAAA;AAGH,MAAM,gBAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,iBAML,CAAC,UAAU,MAAM,MAAM,KAAK,UAAU;AAAA,IACnD,eAAe;AAAA,IACfA,KAAa;AAAA;AAGV,MAAM,QAAQ,OAAO;AAAA,IACxB,aAAa;AAAA,IACb,UAAU;AAAA;ACrTP,MAAM,UAA4B,CAAC,UAAU;;AAClD,QAAM,QAAQ,SAAA;AACd,SAAOC,kBAAS;AAAA,IACdC,kCAAAA,IAAC,iBAAA,EACE,UAAA,MAAM,UACLA,kCAAAA;AAAAA,MAAC;AAAA,MAAA;AAAA,QACC,UAAU;AAAA,QACV,KAAK,MAAM;AAAA,QACX,OAAO;AAAA,UACL,UAAU;AAAA,UACV,KAAK;AAAA,UACL,MAAM;AAAA,UACN,GAAG,MAAM;AAAA,UACT,WAAW,MAAM,eAAe;AAAA,UAChC,QAAQ;AAAA,QAAA;AAAA,QAGV,UAAAA,kCAAAA;AAAAA,UAAC;AAAA,UAAA;AAAA,YACC,UAAU;AAAA,YACV,sBAAsB,MAAM;AAAA,YAC5B,QAAQ,MAAM,SAAS;AAAA,YACvB,OAAO;AAAA,cACL,QAAM,WAAM,SAAN,mBAAY,SAAQ,cAAc,MAAM,QAAQ,QAAQ,EAAE;AAAA,cAChE,UAAQ,WAAM,SAAN,mBAAY,WAAU;AAAA,cAC9B,UAAQ,WAAM,SAAN,mBAAY,WAAU,MAAM,KAAK;AAAA,cACzC,SAAQ,WAAM,SAAN,mBAAY;AAAA,YAAA;AAAA,YAEtB,WAAW,MAAM;AAAA,YACjB,SAAS,EAAE,SAAS,GAAG,OAAO,KAAA;AAAA,YAC9B,SAAS,EAAE,SAAS,GAAG,OAAO,EAAA;AAAA,YAC9B,MAAM,EAAE,SAAS,GAAG,OAAO,KAAA;AAAA,YAC3B,YAAY,EAAE,UAAU,IAAA;AAAA,YACxB,KAAK,MAAM;AAAA,YACX,OAAO,MAAM;AAAA,YACb,eAAe,MAAM;AAAA,YACrB,YAAY,MAAM;AAAA,YAClB,WAAW,MAAM;AAAA,YAEhB,UAAA,MAAM;AAAA,UAAA;AAAA,QAAA;AAAA,MACT;AAAA,IAAA,GAGN;AAAA,IACA,SAAS;AAAA,EAAA;AAEb;AAEO,MAAM,aAAa,CAAC,UAA2B;AACpD,QAAM,EAAE,SAAS,QAAQ,gBAAA,IAAoB;AAG7C,QAAM,CAAC,QAAQ,SAAS,IAAI,SAAS,KAAK;AAE1C,QAAM,CAAC,UAAU,WAAW,IAAI,SAA6B,MAAS;AAEtE,QAAM,CAAC,aAAa,cAAc,IAAI,SAAS,KAAK;AAGpD,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA,WAAW;AAAA,EAAA,IACT,YAAY;AAAA,IACd,MAAM;AAAA,IACN,WAAW,MAAM;AAAA,IACjB,YAAY,CAAC,OAAO,MAAM,UAAU,CAAC,GAAG,QAAQ,OAAO;AAAA,IACvD,sBAAsB;AAAA,EAAA,CACvB;AAGD,QAAM,sBAAsB,OAAyC,IAAI;AAEzE,QAAM,oBAAoB,OAA6C,IAAI;AAG3E,QAAM,cAAc;AAAA,IAClB,MAAM,MAAM,eAAe,MAAM,UAAU;AAAA,IAC3C,CAAC,MAAM,aAAa,MAAM,MAAM;AAAA,EAAA;AAGlC,QAAM,kBAAkB,QAAQ,MAAM,MAAM,mBAAmB,6BAA6B,CAAC,MAAM,eAAe,CAAC;AAOnH,YAAU,MAAM;AACd,QAAI,MAAM,WAAY;AACtB,UAAM,QAAQ,KAAK,UAAU;AAC7B,QAAI,CAAC,MAAO;AAGZ,SAAK,MAAM,SAAS,WAAW,MAAM,SAAS,gBAAgB,iBAAiB,aAAa;AAC1F,YAAM,cAAc,MAAM;AACxB,YAAI,MAAM,SAAS,SAAS;AAC1B,oBAAU,CAAC,SAAS,CAAC,IAAI;AAAA,QAAA,WAChB,MAAM,SAAS,aAAa;AACrC,oBAAU,IAAI;AAAA,QAAA;AAAA,MAChB;AAGF,YAAM,iBAAiB,SAAS,WAAW;AAC3C,aAAO,MAAM;AACX,cAAM,oBAAoB,SAAS,WAAW;AAAA,MAAA;AAAA,IAChD,WAGS,MAAM,SAAS,WAAW,iBAAiB,aAAa;AACjE,YAAM,mBAAmB,MAAM;AAC7B,kBAAU,IAAI;AAAA,MAAA;AAEhB,YAAM,mBAAmB,MAAM;AAC7B,YAAI,kBAAkB,QAAS,cAAa,kBAAkB,OAAO;AACrE,0BAAkB,UAAU,WAAW,MAAM,UAAU,KAAK,GAAG,eAAe;AAAA,MAAA;AAGhF,YAAM,iBAAiB,cAAc,gBAAgB;AACrD,YAAM,iBAAiB,cAAc,gBAAgB;AACrD,aAAO,MAAM;AACX,cAAM,oBAAoB,cAAc,gBAAgB;AACxD,cAAM,oBAAoB,cAAc,gBAAgB;AACxD,YAAI,kBAAkB,QAAS,cAAa,kBAAkB,OAAO;AAAA,MAAA;AAAA,IACvE;AAAA,EACF,GACC,CAAC,MAAM,MAAM,KAAK,WAAW,iBAAiB,MAAM,UAAU,CAAC;AAGlE,YAAU,MAAM;AACd,QAAI,CAAC,UAAU,CAAC,KAAK,UAAU,WAAW,CAAC,KAAK,SAAS,WAAW,MAAM,WAAY;AAEtF,UAAM,UAAU,WAAW,KAAK,UAAU,SAAS,KAAK,SAAS,SAAS,MAAM;AAEhF,WAAO,MAAM,QAAA;AAAA,EAAQ,GACpB,CAAC,QAAQ,KAAK,WAAW,KAAK,UAAU,QAAQ,MAAM,UAAU,CAAC;AAKpE,YAAU,MAAM;AACd,QAAI,CAAC,UAAU,CAAC,KAAK,UAAU,WAAW,CAAC,KAAK,SAAS,WAAW,MAAM,WAAY;AAEtF,QAAI,MAAM,gBAAgB;AACxB,0BAAoB,UAAU,CAAC,MAAkB;AAC/C,cAAM,QAAQ,KAAK,UAAU;AAC7B,cAAM,aAAa,KAAK,SAAS;AACjC,cAAM,YAAY,MAAM,2BAA2B,CAAA;AAGnD,YACE,iBAAiB,eACjB,sBAAsB,eACtB,CAAC,MAAM,SAAS,EAAE,MAAc,KAChC,CAAC,WAAW,SAAS,EAAE,MAAc,KACrC,CAAC,UAAU,KAAK,CAAC,QAAQ;;AACvB,cAAI,OAAO,QAAQ,YAAY,QAAQ,QAAQ,aAAa,KAAK;AAC/D,oBAAQ,SAAI,YAAJ,mBAAoC,SAAS,EAAE;AAAA,UAAc;AAEvE,iBAAO;AAAA,QAAA,CACR,GACD;AACA,oBAAU,KAAK;AAAA,QAAA;AAAA,MACjB;AAGF,eAAS,iBAAiB,aAAa,oBAAoB,OAAO;AAAA,IAAA;AAGpE,WAAO,MAAM;AACX,UAAI,oBAAoB,SAAS;AAC/B,iBAAS,oBAAoB,aAAa,oBAAoB,OAAO;AACrE,4BAAoB,UAAU;AAAA,MAAA;AAEhC,UAAI,kBAAkB,SAAS;AAC7B,qBAAa,kBAAkB,OAAO;AAAA,MAAA;AAAA,IACxC;AAAA,EACF,GACC,CAAC,QAAQ,KAAK,WAAW,KAAK,UAAU,MAAM,gBAAgB,MAAM,YAAY,MAAM,uBAAuB,CAAC;AAMjH,YAAU,MAAM;AACd,QAAI,CAAC,UAAU,CAAC,MAAM,mBAAmB,CAAC,KAAK,UAAU,WAAW,CAAC,KAAK,SAAS,WAAW,MAAM;AAClG;AAEF,UAAM,QAAQ,KAAK,UAAU;AAC7B,UAAM,aAAa,KAAK,SAAS;AAEjC,UAAM,kBAAkB,CAAC,MAAkB;AACzC,YAAM,SAAS,EAAE;AACjB,YAAM,SAAS,EAAE;AAEjB,YAAM,UAAU,MAAM,sBAAA;AACtB,YAAM,eAAe,WAAW,sBAAA;AAGhC,YAAM,cACJ,UAAU,QAAQ,OAAO,eACzB,UAAU,QAAQ,QAAQ,eAC1B,UAAU,QAAQ,MAAM,eACxB,UAAU,QAAQ,SAAS;AAE7B,YAAM,mBACJ,UAAU,aAAa,OAAO,eAC9B,UAAU,aAAa,QAAQ,eAC/B,UAAU,aAAa,MAAM,eAC7B,UAAU,aAAa,SAAS;AAElC,UAAI,eAAe,kBAAkB;AAEnC,YAAI,kBAAkB,SAAS;AAC7B,uBAAa,kBAAkB,OAAO;AACtC,4BAAkB,UAAU;AAAA,QAAA;AAAA,MAC9B,OACK;AAEL,YAAI,kBAAkB,QAAS,cAAa,kBAAkB,OAAO;AACrE,0BAAkB,UAAU,WAAW,MAAM,UAAU,KAAK,GAAG,eAAe;AAAA,MAAA;AAAA,IAChF;AAGF,aAAS,iBAAiB,aAAa,eAAe;AAEtD,WAAO,MAAM;AACX,eAAS,oBAAoB,aAAa,eAAe;AACzD,UAAI,kBAAkB,SAAS;AAC7B,qBAAa,kBAAkB,OAAO;AAAA,MAAA;AAAA,IACxC;AAAA,EACF,GACC,CAAC,QAAQ,MAAM,iBAAiB,KAAK,WAAW,KAAK,UAAU,aAAa,iBAAiB,MAAM,UAAU,CAAC;AAKjH,kBAAgB,MAAM;AACpB,QAAI,CAAC,MAAM,oBAAoB,CAAC,KAAK,UAAU,QAAS;AACxD,UAAM,OAAO,KAAK,UAAU,QAAQ,sBAAA;AACpC,gBAAY,KAAK,KAAK;AAAA,EAAA,GACrB,CAAC,MAAM,kBAAkB,KAAK,SAAS,CAAC;AAG3C,QAAM,OAAO,YAAY,MAAM;AAC7B,QAAI,MAAM,WAAY;AACtB,cAAU,IAAI;AAAA,EAAA,GACb,CAAC,MAAM,UAAU,CAAC;AACrB,QAAM,QAAQ,YAAY,MAAM;AAC9B,QAAI,MAAM,WAAY;AACtB,cAAU,KAAK;AAAA,EAAA,GACd,CAAC,MAAM,UAAU,CAAC;AACrB,QAAM,SAAS,YAAY,MAAM;AAC/B,QAAI,MAAM,WAAY;AACtB,cAAU,CAAC,SAAS,CAAC,IAAI;AAAA,EAAA,GACxB,CAAC,MAAM,UAAU,CAAC;AAGrB,QAAM,iBAAiB,QAAQ,MAAM;AACnC,WAAO;AAAA,MACL,GAAG;AAAA,MACH,UAAU,MAAM,oBAAoB,WAAW,GAAG,QAAQ,OAAO;AAAA,MACjE,UAAU,MAAM,oBAAoB,WAAW,GAAG,QAAQ,OAAO;AAAA,IAAA;AAAA,EACnE,GACC,CAAC,gBAAgB,MAAM,kBAAkB,QAAQ,CAAC;AAMrD,YAAU,MAAM;AACd,QAAI,QAAQ;AACV;AACA,qBAAe,IAAI;AAAA,IAAA;AAAA,EACrB,GACC,CAAC,QAAQ,OAAO,CAAC;AAKpB,YAAU,MAAM;AACd,QAAI,CAAC,UAAU,aAAa;AAC1B;AAAA,IAAS;AAAA,EACX,GACC,CAAC,QAAQ,aAAa,MAAM,CAAC;AAMhC,YAAU,MAAM;AACd,QAAI,CAAC,UAAU,MAAM,WAAY;AAEjC,UAAM,gBAAgB,CAAC,MAAkB;AACvC,YAAM,QAAQ,KAAK,UAAU;AAC7B,YAAM,aAAa,KAAK,SAAS;AACjC,YAAM,YAAY,MAAM,2BAA2B,CAAA;AAEnD,YAAM,WACH,iBAAiB,eAAe,MAAM,SAAS,EAAE,MAAc,KAC/D,sBAAsB,eAAe,WAAW,SAAS,EAAE,MAAc,KAC1E,UAAU,KAAK,CAAC,QAAQ;AACtB,YAAI,OAAO,aAAa,OAAO,IAAI,WAAW,IAAI,mBAAmB,aAAa;AAChF,iBAAO,IAAI,QAAQ,SAAS,EAAE,MAAc;AAAA,QAAA;AAE9C,eAAO;AAAA,MAAA,CACR;AAEH,UAAI,CAAC,UAAU;AACb,kBAAU,KAAK;AAAA,MAAA;AAAA,IACjB;AAGF,aAAS,iBAAiB,WAAW,aAAa;AAElD,WAAO,MAAM;AACX,eAAS,oBAAoB,WAAW,aAAa;AAAA,IAAA;AAAA,EACvD,GACC,CAAC,QAAQ,KAAK,WAAW,KAAK,UAAU,MAAM,yBAAyB,MAAM,UAAU,CAAC;AAM3F,YAAU,MAAM;AACd,QAAI,CAAC,KAAK,UAAU,WAAW,MAAM,cAAc,CAAC,gBAAiB;AAErE,UAAM,QAAQ,KAAK,UAAU;AAC7B,UAAM,YAAY,MAAM,mBAAmB,CAAA;AAE3C,UAAM,aAAa,CAAC,MAAkB;AACpC,UACE,iBAAiB,eACjB,CAAC,MAAM,SAAS,EAAE,aAAqB,KACvC,CAAC,UAAU,KAAK,CAAC,QAAQ;AACvB,YAAI,OAAO,aAAa,OAAO,IAAI,WAAW,IAAI,mBAAmB;AACnE,iBAAO,IAAI,QAAQ,SAAS,EAAE,aAAqB;AAAA,MAAA,CACtD,GACD;AACA,wBAAA;AAAA,MAAgB;AAAA,IAClB;AAGF,QAAI,iBAAiB,YAAa,OAAM,iBAAiB,QAAQ,YAAY,IAAI;AAEjF,WAAO,MAAM;AACX,UAAI,iBAAiB,YAAa,OAAM,oBAAoB,QAAQ,YAAY,IAAI;AAAA,IAAA;AAAA,EACtF,GACC,CAAC,KAAK,WAAW,MAAM,YAAY,iBAAiB,MAAM,eAAe,CAAC;AAK7E,QAAM,cAAc;AAAA,IAClB,CAAC,WAAwB;AACvB,UAAI,CAAC,OAAQ,QAAO;AAEpB,YAAM,QAAQ,KAAK,UAAU;AAC7B,YAAM,aAAa,KAAK,SAAS;AACjC,YAAM,YAAY,MAAM,mBAAmB,CAAA;AAE3C,aACG,iBAAiB,eAAe,MAAM,SAAS,MAAM,KACrD,sBAAsB,eAAe,WAAW,SAAS,MAAM,KAChE,UAAU,KAAK,CAAC,QAAQ;AACtB,YAAI,OAAO,aAAa,OAAO,IAAI,WAAW,IAAI,mBAAmB,aAAa;AAChF,iBAAO,IAAI,QAAQ,SAAS,MAAM;AAAA,QAAA;AAEpC,eAAO;AAAA,MAAA,CACR;AAAA,IAAA;AAAA,IAGL,CAAC,KAAK,WAAW,KAAK,UAAU,MAAM,eAAe;AAAA,EAAA;AAGvD,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,cAAc,KAAK;AAAA,IACnB,aAAa,KAAK;AAAA,IAClB,gBAAgB;AAAA,IAChB,WAAW;AAAA,EAAA;AAEf;AClYA,MAAM,kBAAkB;AAAA,IACpB,CAAC,UAAU;AAAA,kBACG,MAAM,MAAM,OAAO,OAAO,MAAM,MAAM,EAAE,WAAW,IAAI;AAAA,oBACrD,MAAM,MAAM,OAAO,OAAO,MAAM,MAAM,EAAE,OAAO,IAAI;AAAA,aAC1D,MAAM,MAAM,OAAO,OAAO,MAAM,MAAM,EAAE,MAAM,IAAI;AAAA,qBAC1C,MAAM,MAAM,QAAQ,MAAM;AAAA,GAC5C;AAAA;AAII,MAAM,iBAAiB;AAAA,IAC1B,CAAC,UACD,0BAA0B;AAAA,EACxB,GAAG,cAAc,MAAM,SAAS,QAAQ;AAC1C,CAAC,CAAC;AAAA;AAEC,MAAM,4BAA4B,CAAC,UAAqC;AAAA;AAAA,mBAE5D,MAAM,MAAM;AAAA,aAClB,MAAM,OAAO;AAAA,SACjB,MAAM,UAAU,CAAC;AAAA;AAInB,MAAM,iBAAiB,OAAO,OAAO,GAAG;AAAA,eAChC,CAAC,UAAU,MAAM,aAAa,MAAM;AAAA,gBACnC,CAAC,UAAU,MAAM,cAAc,MAAM;AAAA;AAAA;AAAA,IAGjD,OAAO;AAAA,IACP,cAAc;AAAA,IACd,gBAAgB;AAAA,IAChB,eAAe;AAAA,IACf,eAAe;AAAA,IACf,KAAK;AAAA;AC7CF,MAAM,yBAAyB;AAC/B,MAAM,8BAA8B;ACMpC,MAAM,mBAAmB,OAAO,KAAK;AAAA;AAAA;AAAA;AAAA;AAMrC,MAAM,oBAAoB;AAAA,IAC7B,WACA,6BAA6B;AAAA,EAC3B,GAAG,cAAc,MAAM,QAAQ,QAAQ;AACzC,CAAC,CAAC;AAAA;AAEC,MAAM,+BAA+B,CAAC,UAAqC;AAAA;AAAA,aAErE,MAAM,OAAO,MAAM,MAAM,OAAO,UAAU,MAAM,OAAO;AAAA;AAAA;AAAA;AAAA,cAItD,MAAM,OAAO;AAAA;AAAA;AAAA;AAMpB,MAAM,aAAa,OAAO,OAAO;AAAA,IACpC,iBAAiB;AAAA;ACnBd,MAAM,UAA4B,KAAK,CAAA,UAAS;AACrD,MAAI,MAAM,WAAY,QAAOA,kCAAAA,IAAAC,kBAAAA,UAAA,EAAG,gBAAM,UAAS;AAE/C,SAAOD,sCAAC,gBAAA,EAAgB,GAAG,MAAA,CAAO;AACpC,CAAC;AAEM,MAAM,iBAAmC,CAAA,UAAS;AACvD,QAAM,EAAE,QAAQ,cAAc,aAAa,eAAA,IAAmB,WAAW;AAAA,IACvE,WAAW,MAAM,aAAa;AAAA,IAC9B,QAAQ,MAAM,UAAU;AAAA,IACxB,MAAM,MAAM,QAAQ;AAAA,IACpB,gBAAgB,MAAM,kBAAkB;AAAA,IACxC,iBAAiB,MAAM,mBAAmB;AAAA,IAC1C,kBAAkB,MAAM,oBAAoB;AAAA,IAC5C,iBAAiB,MAAM,mBAAmB;AAAA,IAC1C,aAAa,MAAM,eAAe;AAAA,EAAA,CACnC;AACD,SACEE,kCAAAA,KAAAD,4BAAA,EACE,UAAA;AAAA,IAAAD,kCAAAA,IAAC,oBAAiB,IAAI,MAAM,IAAI,KAAK,cAClC,gBAAM,SAAA,CACT;AAAA,IACAA,kCAAAA;AAAAA,MAAC;AAAA,MAAA;AAAA,QACC,MAAM,MAAM;AAAA,QACZ;AAAA,QACA,OAAO,MAAM;AAAA,QACb;AAAA,QACA,KAAK;AAAA,QACL,WAAW,MAAM;AAAA,QACjB,UAAU,MAAM;AAAA,QAEhB,UAAAA,kCAAAA;AAAAA,UAAC;AAAA,UAAA;AAAA,YACC,IACE,MAAM,gBAAgB;AAAA,cACpB,SAAS;AAAA,gBACP,MAAM;AAAA,cAAA;AAAA,YACR;AAAA,YAIH,UAAA,MAAM;AAAA,UAAA;AAAA,QAAA;AAAA,MACT;AAAA,IAAA;AAAA,EACF,GACF;AAEJ;AAEA,QAAQ,cAAc;AC1Df,MAAM,qCAAgD;AACtD,MAAM,kCAA0C;ACKvD,MAAM,oBAAoB,CAAC,UAA2B;AACpD,QAAM,EAAE,aAAA,IAAiB,eAAA;AACzB,QAAM,WAA0F;AAAA,IAC9F,OAAO;AAAA,MACL,eAAe,MAAM;AAAA,MACrB,OAAO,MAAM;AAAA,MACb,WAAW,MAAM;AAAA,MACjB,KAAK,MAAM;AAAA,MACX,oBAAoB,MAAM;AAAA,MAC1B,qBAAqB,MAAM;AAAA,MAC3B,aAAa,MAAM;AAAA,MACnB,SAAS,MAAM,UAAU,MAAM,UAAU,MAAM;AAAA,MAAA;AAAA,IAAC;AAAA,IAElD;AAAA,MACE,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,MACN,MAAM;AAAA,IAAA;AAAA,EACR;AAGF,QAAM,WAAW,QAAQ,MAAA;;AAAM,wBAAM,OAAN,mBAAW,oBAAiB,WAAM,OAAN,mBAAU;AAAA,KAAS,CAAC,MAAM,IAAI,YAAY,CAAC;AAEtG,MAAI,YAAY,aAAa,UAAU;AACrC,QAAI,SAAS,YAAY,QAAQ,SAAS,YAAY,QAAQ,SAAS,YAAY,MAAM;AACvF,aACEA,kCAAAA;AAAAA,QAAC;AAAA,QAAA;AAAA,UAEC,KAAK,MAAM;AAAA,UACX,IAAI,MAAM,WAAW,MAAM,MAAM,cAAc,MAAM,MAAM,SAAS,SAAS;AAAA,UAC7E,MAAM,MAAM;AAAA,UACX,GAAG;AAAA,UAEH,UAAA,MAAM;AAAA,QAAA;AAAA,MAAA;AAAA,IACT,OAEG;AACL,aACEA,kCAAAA;AAAAA,QAAC;AAAA,QAAA;AAAA,UAEC,KAAK,MAAM;AAAA,UACX,IAAI,MAAM,WAAW,MAAM,MAAM,cAAc,MAAM,MAAM,SAAS,SAAS,SAAS;AAAA,UACtF,MAAM,MAAM;AAAA,UACX,GAAG;AAAA,UAEH,UAAA,MAAM;AAAA,QAAA;AAAA,MAAA;AAAA,IACT;AAAA,EAEJ;AAGF,SACEA,kCAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MAEC,KAAK,MAAM;AAAA,MACX,IAAI,MAAM,WAAW,MAAM,MAAM,cAAc,MAAM,MAAM,SAAS,SAAS;AAAA,MAC7E,MAAM,MAAM;AAAA,MACX,GAAG;AAAA,MAEH,UAAA,MAAM;AAAA,IAAA;AAAA,EAAA;AAGb;AAEO,MAAM,aAAa,CAAC,UAA2B;AACpD,SAAOA,sCAAC,mBAAA,EAAmB,GAAG,MAAA,CAAO;AACvC;AAEA,MAAM,yBAAyB,CAAC,UAAuC;AACrE,SAAOA,kCAAAA,IAAC,mBAAA,EAAkB,UAAQ,MAAE,GAAG,OAAO,KAAK,MAAM,KAAK,MAAM,MAAM,KAAA,CAAM;AAClF;AAEO,MAAM,iBAAiB,WAAW,sBAAsB;AAExD,MAAM,oBAAoB,KAAK,CAAC,UAAkC;AACvE,QAAM,CAAC,eAAe,gBAAgB,IAAI,SAAS,KAAK;AACxD,QAAM,aAAa,OAAuB,IAAI;AAG9C,YAAU,MAAM;AACd,UAAM,gBAAgB,MAAM;AAC1B,UAAI,WAAW,SAAS;AACtB,yBAAiB,WAAW,QAAQ,cAAc,WAAW,QAAQ,WAAW;AAAA,MAAA;AAAA,IAClF;AAEF,kBAAA;AACA,WAAO,iBAAiB,UAAU,aAAa;AAC/C,WAAO,MAAM,OAAO,oBAAoB,UAAU,aAAa;AAAA,EAAA,GAC9D,CAAC,MAAM,QAAQ,CAAC;AAEnB,SACEA,kCAAAA,IAAC,SAAA,EAAQ,YAAY,CAAC,eAAe,SAAS,MAAM,UAAW,GAAG,MAAM,SACtE,UAAAA,kCAAAA,IAAC,qBAAkB,KAAK,YAAa,GAAG,MAAM,YAAY,OAAO,EAAE,UAAU,WAAA,GAC1E,UAAA,MAAM,SAAA,CACT,EAAA,CACF;AAEJ,CAAC;AAED,kBAAkB,cAAc;AAChC,kBAAkB,cAAc;AAChC,uBAAuB,cAAc;"}
1
+ {"version":3,"file":"component-GtWqnaqk.js","sources":["../src/components/typography/component.styles.ts","../src/components/popover/component.tsx","../src/components/popover/component.styles.ts","../src/components/popover/component.constants.tsx","../src/components/tooltip/component.styles.ts","../src/components/tooltip/component.tsx","../src/components/tooltip/component.constants.ts","../src/components/typography/component.tsx"],"sourcesContent":["import { addOutline } from '@local/styles/add';\nimport { addSX as addSXStandard } from '@local/styles/sx';\nimport { JeneseiPalette } from '@local/theme/theme';\n\nimport styled, { css, keyframes } from 'styled-components';\n\nimport { addSXTypographyStyleProps, TypographyAllProps, TypographyCSSProps } from '.';\n\nconst shadowPulse = keyframes`\n 0% {\n text-shadow: 0 0 0 rgba(0, 0, 0, 0);\n }\n 50% {\n text-shadow: 4px 4px 10px rgba(0, 0, 0, 0.5);\n }\n 100% {\n text-shadow: 0 0 0 rgba(0, 0, 0, 0);\n }\n`;\n\nfunction toStyledCSS(value: TypographyAllProps) {\n return css`\n ${\n value.shadow &&\n value.shadow === 'shadowPulse' &&\n css`\n animation: ${shadowPulse} 2s infinite;\n `\n };\n ${\n value.letterSpacing &&\n css`\n letter-spacing: ${value.letterSpacing};\n `\n };\n ${\n value.flex &&\n css`\n flex: ${value.flex};\n `\n };\n ${\n value.cursor &&\n css`\n cursor: ${value.cursor};\n `\n };\n ${\n value.overflow &&\n css`\n overflow: ${value.overflow};\n `\n };\n ${\n value.line !== undefined\n ? value.line === 1\n ? css`\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n width: -webkit-fill-available;\n max-width: fit-content;\n `\n : css`\n word-break: break-word;\n white-space: normal;\n text-overflow: ellipsis;\n display: -webkit-box;\n overflow: hidden;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: ${value.line};\n width: fit-content;\n overflow-wrap: anywhere;\n `\n : css``\n };\n ${\n value.family &&\n css`\n font-family: ${value.family};\n `\n };\n ${\n value.weight &&\n css`\n font-weight: ${value.weight};\n `\n };\n ${\n value.height &&\n css`\n line-height: ${value.height}px;\n `\n };\n ${\n value.color &&\n css`\n color: ${JeneseiPalette[value.color]};\n `\n };\n ${\n value.align &&\n css`\n text-align: ${value.align};\n `\n };\n ${\n value.wrap &&\n css`\n text-wrap: ${value.wrap};\n `\n };\n ${\n value.decoration &&\n css`\n text-decoration: ${value.decoration};\n `\n };\n ${\n value.transform &&\n css`\n text-transform: ${value.transform};\n `\n };\n ${\n value.isHoverUnderlining &&\n css`\n &:hover {\n text-decoration: underline;\n }\n `\n };\n ${\n value.isNoUserSelect &&\n css`\n user-select: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n `\n };\n ${\n 'size' in value &&\n value.size &&\n css`\n font-size: ${value.size}px;\n `\n };\n ${\n 'variant' in value && value.variant\n ? value.variant === 'h1'\n ? css`\n font-size: ${(props) => props.theme.font.sizeHeading.h1 * props.theme.font.sizeDefault.default}px;\n line-height: ${(props) => props.theme.font.lineHeight};\n margin: 0;\n @media (max-width: ${(props) => props.theme.screens.tablet.width}px) {\n font-size: ${(props) => props.theme.font.sizeHeading.h1 * props.theme.font.sizeDefault.tablet}px;\n }\n\n @media (max-width: ${(props) => props.theme.screens.mobile.width}px) {\n font-size: ${(props) => props.theme.font.sizeHeading.h1 * props.theme.font.sizeDefault.mobile}px;\n }\n `\n : value.variant === 'h2'\n ? css`\n font-size: ${(props) => props.theme.font.sizeHeading.h2 * props.theme.font.sizeDefault.default}px;\n line-height: ${(props) => props.theme.font.lineHeight};\n margin: 0;\n @media (max-width: ${(props) => props.theme.screens.tablet.width}px) {\n font-size: ${(props) => props.theme.font.sizeHeading.h2 * props.theme.font.sizeDefault.tablet}px;\n }\n\n @media (max-width: ${(props) => props.theme.screens.mobile.width}px) {\n font-size: ${(props) => props.theme.font.sizeHeading.h2 * props.theme.font.sizeDefault.mobile}px;\n }\n `\n : value.variant === 'h3'\n ? css`\n font-size: ${(props) => props.theme.font.sizeHeading.h3 * props.theme.font.sizeDefault.default}px;\n line-height: ${(props) => props.theme.font.lineHeight};\n margin: 0;\n @media (max-width: ${(props) => props.theme.screens.tablet.width}px) {\n font-size: ${(props) => props.theme.font.sizeHeading.h3 * props.theme.font.sizeDefault.tablet}px;\n }\n\n @media (max-width: ${(props) => props.theme.screens.mobile.width}px) {\n font-size: ${(props) => props.theme.font.sizeHeading.h3 * props.theme.font.sizeDefault.mobile}px;\n }\n `\n : value.variant === 'h4'\n ? css`\n font-size: ${(props) => props.theme.font.sizeHeading.h4 * props.theme.font.sizeDefault.default}px;\n line-height: ${(props) => props.theme.font.lineHeight};\n margin: 0;\n @media (max-width: ${(props) => props.theme.screens.tablet.width}px) {\n font-size: ${(props) => props.theme.font.sizeHeading.h4 * props.theme.font.sizeDefault.tablet}px;\n }\n\n @media (max-width: ${(props) => props.theme.screens.mobile.width}px) {\n font-size: ${(props) => props.theme.font.sizeHeading.h4 * props.theme.font.sizeDefault.mobile}px;\n }\n `\n : value.variant === 'h5'\n ? css`\n font-size: ${(props) => props.theme.font.sizeHeading.h5 * props.theme.font.sizeDefault.default}px;\n line-height: ${(props) => props.theme.font.lineHeight};\n margin: 0;\n @media (max-width: ${(props) => props.theme.screens.tablet.width}px) {\n font-size: ${(props) => props.theme.font.sizeHeading.h5 * props.theme.font.sizeDefault.tablet}px;\n }\n\n @media (max-width: ${(props) => props.theme.screens.mobile.width}px) {\n font-size: ${(props) => props.theme.font.sizeHeading.h5 * props.theme.font.sizeDefault.mobile}px;\n }\n `\n : value.variant === 'h6'\n ? css`\n font-size: ${(props) => props.theme.font.sizeHeading.h6 * props.theme.font.sizeDefault.default}px;\n line-height: ${(props) => props.theme.font.lineHeight};\n margin: 0;\n @media (max-width: ${(props) => props.theme.screens.tablet.width}px) {\n font-size: ${(props) => props.theme.font.sizeHeading.h6 * props.theme.font.sizeDefault.tablet}px;\n }\n\n @media (max-width: ${(props) => props.theme.screens.mobile.width}px) {\n font-size: ${(props) => props.theme.font.sizeHeading.h6 * props.theme.font.sizeDefault.mobile}px;\n }\n `\n : value.variant === 'h7'\n ? css`\n font-size: ${(props) => props.theme.font.sizeHeading.h7 * props.theme.font.sizeDefault.default}px;\n line-height: ${(props) => props.theme.font.lineHeight};\n margin: 0;\n @media (max-width: ${(props) => props.theme.screens.tablet.width}px) {\n font-size: ${(props) =>\n props.theme.font.sizeHeading.h7 * props.theme.font.sizeDefault.tablet}px;\n }\n\n @media (max-width: ${(props) => props.theme.screens.mobile.width}px) {\n font-size: ${(props) =>\n props.theme.font.sizeHeading.h7 * props.theme.font.sizeDefault.mobile}px;\n }\n `\n : value.variant === 'h8'\n ? css`\n font-size: ${(props) =>\n props.theme.font.sizeHeading.h8 * props.theme.font.sizeDefault.default}px;\n line-height: ${(props) => props.theme.font.lineHeight};\n margin: 0;\n @media (max-width: ${(props) => props.theme.screens.tablet.width}px) {\n font-size: ${(props) =>\n props.theme.font.sizeHeading.h8 * props.theme.font.sizeDefault.tablet}px;\n }\n\n @media (max-width: ${(props) => props.theme.screens.mobile.width}px) {\n font-size: ${(props) =>\n props.theme.font.sizeHeading.h8 * props.theme.font.sizeDefault.mobile}px;\n }\n `\n : value.variant === 'h9'\n ? css`\n font-size: ${(props) =>\n props.theme.font.sizeHeading.h9 * props.theme.font.sizeDefault.default}px;\n line-height: ${(props) => props.theme.font.lineHeight};\n margin: 0;\n @media (max-width: ${(props) => props.theme.screens.tablet.width}px) {\n font-size: ${(props) =>\n props.theme.font.sizeHeading.h9 * props.theme.font.sizeDefault.tablet}px;\n }\n\n @media (max-width: ${(props) => props.theme.screens.mobile.width}px) {\n font-size: ${(props) =>\n props.theme.font.sizeHeading.h9 * props.theme.font.sizeDefault.mobile}px;\n }\n `\n : null\n : null\n };\n `;\n}\n\nexport const addSXTypography = css<addSXTypographyStyleProps>`\n ${(props) => {\n const rawSX = props.$sxTypography;\n if (!rawSX) return null;\n return toStyledCSS(rawSX.default);\n }}\n\n ${(props) => {\n const rawSX = props.$sxTypography;\n if (!rawSX) return null;\n\n return Object.entries(rawSX)\n .filter(([key]) => key !== 'default')\n .map(([deviceKey, value]) => {\n const screenWidth = props.theme.screens[deviceKey as keyof typeof props.theme.screens]?.width;\n if (!screenWidth) return null;\n return css`\n @media (max-width: ${screenWidth}px) {\n ${toStyledCSS(value)}\n }\n `;\n });\n }}\n`;\n\nconst TypographyCSS = css<TypographyCSSProps>`\n font-style: normal;\n position: relative;\n overflow: visible;\n text-overflow: ellipsis;\n overflow-wrap: anywhere;\n line-height: ${(props) => props.theme.font.lineHeight};\n ${addSXTypography};\n ${addSXStandard}\n`;\n\nexport const Title = styled.span<TypographyCSSProps>`\n ${TypographyCSS}\n ${addOutline}\n`;\n","import { KEY_SIZE_DATA } from '@local/theme';\n\nimport { autoUpdate, flip, offset, shift, useFloating } from '@floating-ui/react';\nimport { AnimatePresence } from 'framer-motion';\nimport { FC, Ref, useCallback, useEffect, useLayoutEffect, useMemo, useRef, useState } from 'react';\nimport ReactDOM from 'react-dom';\nimport { useTheme } from 'styled-components';\n\nimport { DEFAULT_POPOVER_CLOSE_DELAY, DEFAULT_POPOVER_OFFSET, PopoverProps, PopoverWrapper, UsePopoverProps } from '.';\n\nexport const Popover: FC<PopoverProps> = (props) => {\n const theme = useTheme();\n return ReactDOM.createPortal(\n <AnimatePresence>\n {props.isOpen && (\n <div\n tabIndex={-1}\n ref={props.ref as Ref<HTMLDivElement | null>}\n style={{\n position: 'absolute',\n top: 0,\n left: 0,\n ...props.floatingStyles,\n transform: props.floatingStyles.transform,\n zIndex: 9999,\n }}\n >\n <PopoverWrapper\n tabIndex={-1}\n $isShowAlwaysOutline={props.isShowAlwaysOutline}\n $genre={props.genre ?? 'black'}\n $font={{\n size: props.font?.size ?? KEY_SIZE_DATA[props.size ?? 'medium'].font,\n weight: props.font?.weight ?? 700,\n family: props.font?.family ?? theme.font.family,\n height: props.font?.height,\n }}\n className={props.className}\n initial={{ opacity: 0, scale: 0.95 }}\n animate={{ opacity: 1, scale: 1 }}\n exit={{ opacity: 0, scale: 0.95 }}\n transition={{ duration: 0.2 }}\n $sx={props.sx}\n $size={props.size}\n $sxTypography={props.sxTypography}\n $maxHeight={props.maxHeight}\n $maxWidth={props.maxWidth}\n >\n {props.children}\n </PopoverWrapper>\n </div>\n )}\n </AnimatePresence>,\n document.body,\n );\n};\n\nexport const usePopover = (props: UsePopoverProps) => {\n const { onFocus, onBlur, onBlurReference } = props;\n\n // Состояние открытия поповера\n const [isOpen, setIsOpen] = useState(false);\n // Минимальная ширина поповера (нужна, если хотим, чтобы ширина совпадала с референсом)\n const [minWidth, setMinWidth] = useState<number | undefined>(undefined);\n // Флаг, был ли поповер когда-либо открыт (чтобы onBlur не вызывался при первом рендере)\n const [wasEverOpen, setWasEverOpen] = useState(false);\n\n // Позиционирование через floating-ui\n const {\n refs,\n floatingStyles,\n update,\n placement: actualPlacement,\n } = useFloating({\n open: isOpen,\n placement: props.placement,\n middleware: [offset(props.offset ?? 8), flip(), shift()],\n whileElementsMounted: autoUpdate,\n });\n\n // Сохраняем обработчик клика вне поповера (чтобы можно было удалить при cleanup)\n const clickOutsideHandler = useRef<((e: MouseEvent) => void) | null>(null);\n // Таймаут для закрытия при hover-режиме\n const hoverCloseTimeout = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n // Отступ для hover-зоны (чтобы не закрывался мгновенно при небольших движениях мыши)\n const hoverOffset = useMemo(\n () => props.hoverOffset ?? props.offset ?? DEFAULT_POPOVER_OFFSET,\n [props.hoverOffset, props.offset],\n );\n // Задержка перед закрытием при hover\n const hoverCloseDelay = useMemo(() => props.hoverCloseDelay ?? DEFAULT_POPOVER_CLOSE_DELAY, [props.hoverCloseDelay]);\n\n /**\n * Навешиваем обработчики на reference-элемент в зависимости от режима:\n * - click / clickOpen → открытие/переключение по клику\n * - hover → открытие/закрытие при наведении\n */\n useEffect(() => {\n if (props.isDisabled) return;\n const refEl = refs.reference.current;\n if (!refEl) return;\n\n // Режим клика\n if ((props.mode === 'click' || props.mode === 'clickOpen') && refEl instanceof HTMLElement) {\n const handleClick = () => {\n if (props.mode === 'click') {\n setIsOpen((prev) => !prev);\n } else if (props.mode === 'clickOpen') {\n setIsOpen(true);\n }\n };\n\n refEl.addEventListener('click', handleClick);\n return () => {\n refEl.removeEventListener('click', handleClick);\n };\n\n // Режим ховера\n } else if (props.mode === 'hover' && refEl instanceof HTMLElement) {\n const handleMouseEnter = () => {\n setIsOpen(true);\n };\n const handleMouseLeave = () => {\n if (hoverCloseTimeout.current) clearTimeout(hoverCloseTimeout.current);\n hoverCloseTimeout.current = setTimeout(() => setIsOpen(false), hoverCloseDelay);\n };\n\n refEl.addEventListener('mouseenter', handleMouseEnter);\n refEl.addEventListener('mouseleave', handleMouseLeave);\n return () => {\n refEl.removeEventListener('mouseenter', handleMouseEnter);\n refEl.removeEventListener('mouseleave', handleMouseLeave);\n if (hoverCloseTimeout.current) clearTimeout(hoverCloseTimeout.current);\n };\n }\n }, [props.mode, refs.reference, hoverCloseDelay, props.isDisabled]);\n\n // Автоматическое обновление позиции, пока поповер открыт\n useEffect(() => {\n if (!isOpen || !refs.reference.current || !refs.floating.current || props.isDisabled) return;\n\n const cleanup = autoUpdate(refs.reference.current, refs.floating.current, update);\n\n return () => cleanup();\n }, [isOpen, refs.reference, refs.floating, update, props.isDisabled]);\n\n /**\n * Логика закрытия поповера при клике вне него\n */\n useEffect(() => {\n if (!isOpen || !refs.reference.current || !refs.floating.current || props.isDisabled) return;\n\n if (props.isClickOutside) {\n clickOutsideHandler.current = (e: MouseEvent) => {\n const refEl = refs.reference.current;\n const floatingEl = refs.floating.current;\n const otherRefs = props.refsExcludeClickOutside || [];\n\n // Проверяем, что клик не по поповеру, не по reference и не по исключенным ref'ам\n if (\n refEl instanceof HTMLElement &&\n floatingEl instanceof HTMLElement &&\n !refEl.contains(e.target as Node) &&\n !floatingEl.contains(e.target as Node) &&\n !otherRefs.some((ref) => {\n if (typeof ref === 'object' && ref !== null && 'current' in ref) {\n return (ref.current as HTMLElement | null)?.contains(e.target as Node);\n }\n return false;\n })\n ) {\n setIsOpen(false);\n }\n };\n\n document.addEventListener('mousedown', clickOutsideHandler.current);\n }\n\n return () => {\n if (clickOutsideHandler.current) {\n document.removeEventListener('mousedown', clickOutsideHandler.current);\n clickOutsideHandler.current = null;\n }\n if (hoverCloseTimeout.current) {\n clearTimeout(hoverCloseTimeout.current);\n }\n };\n }, [isOpen, refs.reference, refs.floating, props.isClickOutside, props.isDisabled, props.refsExcludeClickOutside]);\n\n /**\n * Поддержка режима \"плавающего hover\"\n * Закрывает поповер, если мышь ушла за пределы reference+floating с отступом\n */\n useEffect(() => {\n if (!isOpen || !props.isFloatingHover || !refs.reference.current || !refs.floating.current || props.isDisabled)\n return;\n\n const refEl = refs.reference.current;\n const floatingEl = refs.floating.current;\n\n const handleMouseMove = (e: MouseEvent) => {\n const mouseX = e.clientX;\n const mouseY = e.clientY;\n\n const refRect = refEl.getBoundingClientRect();\n const floatingRect = floatingEl.getBoundingClientRect();\n\n // Находим, внутри ли курсор reference или floating с учётом отступа\n const isInsideRef =\n mouseX >= refRect.left - hoverOffset &&\n mouseX <= refRect.right + hoverOffset &&\n mouseY >= refRect.top - hoverOffset &&\n mouseY <= refRect.bottom + hoverOffset;\n\n const isInsideFloating =\n mouseX >= floatingRect.left - hoverOffset &&\n mouseX <= floatingRect.right + hoverOffset &&\n mouseY >= floatingRect.top - hoverOffset &&\n mouseY <= floatingRect.bottom + hoverOffset;\n\n if (isInsideRef || isInsideFloating) {\n // Если вернулись внутрь — отменяем закрытие\n if (hoverCloseTimeout.current) {\n clearTimeout(hoverCloseTimeout.current);\n hoverCloseTimeout.current = null;\n }\n } else {\n // Если вышли — запускаем таймер на закрытие\n if (hoverCloseTimeout.current) clearTimeout(hoverCloseTimeout.current);\n hoverCloseTimeout.current = setTimeout(() => setIsOpen(false), hoverCloseDelay);\n }\n };\n\n document.addEventListener('mousemove', handleMouseMove);\n\n return () => {\n document.removeEventListener('mousemove', handleMouseMove);\n if (hoverCloseTimeout.current) {\n clearTimeout(hoverCloseTimeout.current);\n }\n };\n }, [isOpen, props.isFloatingHover, refs.reference, refs.floating, hoverOffset, hoverCloseDelay, props.isDisabled]);\n\n /**\n * Устанавливаем минимальную ширину поповера, равную reference (если включено isWidthAsContent)\n */\n useLayoutEffect(() => {\n if (!props.isWidthAsContent || !refs.reference.current) return;\n const rect = refs.reference.current.getBoundingClientRect();\n setMinWidth(rect.width);\n }, [props.isWidthAsContent, refs.reference]);\n\n // Методы управления открытием\n const open = useCallback(() => {\n if (props.isDisabled) return;\n setIsOpen(true);\n }, [props.isDisabled]);\n const close = useCallback(() => {\n if (props.isDisabled) return;\n setIsOpen(false);\n }, [props.isDisabled]);\n const toggle = useCallback(() => {\n if (props.isDisabled) return;\n setIsOpen((prev) => !prev);\n }, [props.isDisabled]);\n\n // Объединяем стили floating-ui с дополнительными ограничениями по ширине\n const combinedStyles = useMemo(() => {\n return {\n ...floatingStyles,\n minWidth: props.isWidthAsContent && minWidth ? `${minWidth}px` : undefined,\n maxWidth: props.isWidthAsContent && minWidth ? `${minWidth}px` : undefined,\n };\n }, [floatingStyles, props.isWidthAsContent, minWidth]);\n\n /**\n * Вызываем onFocus при открытии\n * и запоминаем, что поповер хоть раз был открыт\n */\n useEffect(() => {\n if (isOpen) {\n onFocus?.();\n setWasEverOpen(true);\n }\n }, [isOpen, onFocus]);\n\n /**\n * Вызываем onBlur при первом закрытии после открытия\n */\n useEffect(() => {\n if (!isOpen && wasEverOpen) {\n onBlur?.();\n }\n }, [isOpen, wasEverOpen, onBlur]);\n\n /**\n * Закрытие при потере фокуса (focusin вне поповера + reference)\n * (но не на исключённые элементы)\n */\n useEffect(() => {\n if (!isOpen || props.isDisabled) return;\n\n const handleFocusIn = (e: FocusEvent) => {\n const refEl = refs.reference.current;\n const floatingEl = refs.floating.current;\n const otherRefs = props.refsExcludeClickOutside || [];\n\n const isInside =\n (refEl instanceof HTMLElement && refEl.contains(e.target as Node)) ||\n (floatingEl instanceof HTMLElement && floatingEl.contains(e.target as Node)) ||\n otherRefs.some((ref) => {\n if (ref && 'current' in ref && ref.current && ref.current instanceof HTMLElement) {\n return ref.current.contains(e.target as Node);\n }\n return false;\n });\n\n if (!isInside) {\n setIsOpen(false);\n }\n };\n\n document.addEventListener('focusin', handleFocusIn);\n\n return () => {\n document.removeEventListener('focusin', handleFocusIn);\n };\n }, [isOpen, refs.reference, refs.floating, props.refsExcludeClickOutside, props.isDisabled]);\n\n /**\n * Вызываем onBlurReference, если фокус ушёл с reference-элемента\n * (но не на исключённые элементы)\n */\n useEffect(() => {\n if (!refs.reference.current || props.isDisabled || !onBlurReference) return;\n\n const refEl = refs.reference.current;\n const otherRefs = props.refsExcludeBlur || [];\n\n const handleBlur = (e: FocusEvent) => {\n if (\n refEl instanceof HTMLElement &&\n !refEl.contains(e.relatedTarget as Node) &&\n !otherRefs.some((ref) => {\n if (ref && 'current' in ref && ref.current && ref.current instanceof HTMLElement)\n return ref.current.contains(e.relatedTarget as Node);\n })\n ) {\n onBlurReference();\n }\n };\n\n if (refEl instanceof HTMLElement) refEl.addEventListener('blur', handleBlur, true);\n\n return () => {\n if (refEl instanceof HTMLElement) refEl.removeEventListener('blur', handleBlur, true);\n };\n }, [refs.reference, props.isDisabled, onBlurReference, props.refsExcludeBlur]);\n\n /**\n * Функция возвращает true или false в зависимости от состояния от FocusEvent который находится внутри или снаружи\n */\n const getIsInside = useCallback(\n (target: Node | null) => {\n if (!target) return false; // если relatedTarget null, значит фокус ушёл вне окна — закрываем\n\n const refEl = refs.reference.current;\n const floatingEl = refs.floating.current;\n const otherRefs = props.refsExcludeBlur || [];\n\n return (\n (refEl instanceof HTMLElement && refEl.contains(target)) ||\n (floatingEl instanceof HTMLElement && floatingEl.contains(target)) ||\n otherRefs.some((ref) => {\n if (ref && 'current' in ref && ref.current && ref.current instanceof HTMLElement) {\n return ref.current.contains(target);\n }\n return false;\n })\n );\n },\n [refs.reference, refs.floating, props.refsExcludeBlur],\n );\n // Возвращаем наружу API для использования поповера\n return {\n getIsInside,\n isOpen,\n setIsOpen,\n open,\n close,\n toggle,\n refReference: refs.setReference as Ref<HTMLElement | null>,\n refFloating: refs.setFloating as Ref<HTMLElement | null>,\n floatingStyles: combinedStyles,\n placement: actualPlacement,\n };\n};\n","import { addSXTypography } from '@local/components/typography';\nimport { addAlwaysOutline, addFont } from '@local/styles/add';\nimport { addSX } from '@local/styles/sx';\nimport { IThemeSizePropertyDefault, KEY_SIZE_DATA } from '@local/theme';\n\nimport { motion } from 'framer-motion';\nimport styled, { css } from 'styled-components';\n\nimport { StyledPopoverProps } from '.';\n\n/****************************************** Popover Genre *************************************************/\nconst addPopoverGenre = css<StyledPopoverProps>`\n ${(props) => css`\n background: ${props.theme.colors.button[props.$genre].background.rest};\n border-color: ${props.theme.colors.button[props.$genre].border.rest};\n color: ${props.theme.colors.button[props.$genre].color.rest};\n /* box-shadow: ${props.theme.effects.button}; */\n `};\n`;\n\n/****************************************** Popover Size *************************************************/\nexport const addPopoverSize = css<StyledPopoverProps>`\n ${(props) =>\n addPopoverSizeConstructor({\n ...KEY_SIZE_DATA[props.$size ?? 'medium'],\n })};\n`;\nexport const addPopoverSizeConstructor = (props: IThemeSizePropertyDefault) => css`\n display: flex;\n border-radius: ${props.radius}px;\n padding: ${props.padding}px;\n gap: ${props.padding - 2}px;\n`;\n\n/****************************************** Default *************************************************/\nexport const PopoverWrapper = styled(motion.div)<StyledPopoverProps>`\n max-width: ${(props) => props.$maxWidth || '100%'};\n max-height: ${(props) => props.$maxHeight || '100%'};\n overflow: auto;\n flex-direction: column;\n ${addFont};\n ${addPopoverSize};\n ${addAlwaysOutline};\n ${addSXTypography};\n ${addPopoverGenre};\n ${addSX};\n`;\n","export const DEFAULT_POPOVER_OFFSET = 8;\nexport const DEFAULT_POPOVER_CLOSE_DELAY = 100;\n","import styled, { css } from 'styled-components';\n\nimport { IThemeSizePropertyDefault, KEY_SIZE_DATA } from '@local/theme';\n\nimport { Popover, PopoverProps } from '../popover';\nimport { Stack } from '../stack';\n\nexport const TooltipContainer = styled(Stack)`\n display: flex;\n width: fit-content;\n height: fit-content;\n`;\n\nexport const addTooltipBoxSize = css<PopoverProps>`\n ${(props) =>\n addTooltipBoxSizeConstructor({\n ...KEY_SIZE_DATA[props.size ?? 'medium'],\n })};\n`;\nexport const addTooltipBoxSizeConstructor = (props: IThemeSizePropertyDefault) => css`\n gap: 0px;\n padding: ${props.padding}px ${props.padding}px 0px ${props.padding}px;\n :after {\n content: '';\n display: block;\n height: ${props.padding}px;\n width: 100%;\n }\n`;\n\n/****************************************** TooltipBox *************************************************/\nexport const TooltipBox = styled(Popover)`\n ${addTooltipBoxSize};\n`;\n","import { FC, Ref, memo } from 'react';\n\nimport { Typography } from '@local/components/typography';\n\nimport {\n DEFAULT_TOOLTIP_OFFSET_FALLBACK,\n DEFAULT_TOOLTIP_PLACEMENT_FALLBACK,\n TooltipBox,\n TooltipContainer,\n TooltipProps,\n} from '.';\nimport { usePopover } from '../popover';\n\nexport const Tooltip: FC<TooltipProps> = memo((props) => {\n if (props.isDisabled) return <>{props.children}</>;\n\n return <TooltipContent {...props} />;\n});\n\nexport const TooltipContent: FC<TooltipProps> = (props) => {\n const { isOpen, refReference, refFloating, floatingStyles } = usePopover({\n placement: props.placement ?? DEFAULT_TOOLTIP_PLACEMENT_FALLBACK,\n offset: props.offset ?? DEFAULT_TOOLTIP_OFFSET_FALLBACK,\n mode: props.mode ?? 'hover',\n isClickOutside: props.isClickOutside ?? true,\n isFloatingHover: props.isFloatingHover ?? true,\n isWidthAsContent: props.isWidthAsContent ?? false,\n hoverCloseDelay: props.hoverCloseDelay ?? undefined,\n hoverOffset: props.hoverOffset ?? undefined,\n });\n return (\n <>\n <TooltipContainer sx={props.sx} ref={refReference as Ref<HTMLDivElement | null>}>\n {props.children}\n </TooltipContainer>\n <TooltipBox\n size={props.size}\n isOpen={isOpen}\n genre={props.genre}\n floatingStyles={floatingStyles}\n ref={refFloating}\n maxHeight={props.maxHeight}\n maxWidth={props.maxWidth}\n >\n <Typography\n sx={\n props.sxTypography ?? {\n default: {\n size: 14,\n },\n }\n }\n >\n {props.content}\n </Typography>\n </TooltipBox>\n </>\n );\n};\n\nTooltip.displayName = 'Tooltip';\n","import { Placement } from '@floating-ui/react';\n\nexport const DEFAULT_TOOLTIP_PLACEMENT_FALLBACK: Placement = 'bottom-start';\nexport const DEFAULT_TOOLTIP_OFFSET_FALLBACK: number = 8;\n","import { useScreenWidth } from '@local/contexts/context-screen-width';\n\nimport { createLink, LinkProps } from '@tanstack/react-router';\nimport { memo, useEffect, useMemo, useRef, useState } from 'react';\n\nimport { Tooltip } from '../tooltip';\nimport { Title, TypographyCSSProps, TypographyProps, TypographyTooltipProps } from '.';\n\nconst TypographyWithRef = (props: TypographyProps) => {\n const { screenActual } = useScreenWidth();\n const cssProps: TypographyCSSProps & Pick<TypographyProps, 'onClick' | 'className' | 'style'> = useMemo(\n () => ({\n $sxTypography: props.sx,\n style: props.style,\n className: props.className,\n $sx: props.sxStandard,\n $isDisabledOutline: props.isDisabledOutline,\n $isOutlineBoxShadow: props.isOutlineBoxShadow,\n $isReadOnly: props.isReadOnly,\n onClick: props.onClick ? props.onClick : () => {},\n }),\n [\n props.sx,\n props.style,\n props.className,\n props.sxStandard,\n props.onClick,\n props.isDisabledOutline,\n props.isOutlineBoxShadow,\n props.isReadOnly,\n ],\n );\n\n const screenSX = useMemo(() => props.sx?.[screenActual] ?? props.sx?.default, [props.sx, screenActual]);\n\n if (screenSX && 'variant' in screenSX) {\n if (screenSX.variant === 'h7' || screenSX.variant === 'h8' || screenSX.variant === 'h9') {\n return (\n <Title\n // biome-ignore lint/suspicious/noExplicitAny: <explanation>\n ref={props.ref as any}\n as={props.isAnchor ? 'a' : props.isParagraph ? 'p' : props.isSpan ? 'span' : 'span'}\n href={props.href}\n {...cssProps}\n >\n {props.children}\n </Title>\n );\n } else {\n return (\n <Title\n // biome-ignore lint/suspicious/noExplicitAny: <explanation>\n ref={props.ref as any}\n as={props.isAnchor ? 'a' : props.isParagraph ? 'p' : props.isSpan ? 'span' : screenSX.variant}\n href={props.href}\n {...cssProps}\n >\n {props.children}\n </Title>\n );\n }\n }\n\n return (\n <Title\n // biome-ignore lint/suspicious/noExplicitAny: <explanation>\n ref={props.ref as any}\n as={props.isAnchor ? 'a' : props.isParagraph ? 'p' : props.isSpan ? 'span' : 'span'}\n href={props.href}\n {...cssProps}\n >\n {props.children}\n </Title>\n );\n};\n\nexport const Typography = (props: TypographyProps) => {\n return <TypographyWithRef {...props} />;\n};\n\nconst TypographySizeIsAnchor = (props: TypographyProps & LinkProps) => {\n return <TypographyWithRef isAnchor {...props} ref={props.ref} href={props.href} />;\n};\n\nexport const TypographyLink = createLink(TypographySizeIsAnchor);\n\nexport const TypographyTooltip = memo((props: TypographyTooltipProps) => {\n const [isOverflowing, setIsOverflowing] = useState(false);\n const contentRef = useRef<HTMLDivElement>(null);\n\n // biome-ignore lint/correctness/useExhaustiveDependencies: <explanation>\n useEffect(() => {\n const checkOverflow = () => {\n if (contentRef.current) {\n setIsOverflowing(contentRef.current.scrollWidth > contentRef.current.clientWidth);\n }\n };\n checkOverflow();\n window.addEventListener('resize', checkOverflow);\n return () => window.removeEventListener('resize', checkOverflow);\n }, [props.children]);\n\n return (\n <Tooltip isDisabled={!isOverflowing} content={props.children} {...props.tooltip}>\n <TypographyWithRef ref={contentRef} {...props.typography} style={{ position: 'relative' }}>\n {props.children}\n </TypographyWithRef>\n </Tooltip>\n );\n});\n\nTypographyTooltip.displayName = 'TypographyTooltip';\nTypographyWithRef.displayName = 'TypographyWithRef';\nTypographySizeIsAnchor.displayName = 'TypographySizeIsAnchor';\n"],"names":["addSXStandard","ReactDOM","jsx","Fragment","jsxs"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./component.styles-Dpo373cZ.cjs");exports.Accordion=o.Accordion,exports.AccordionDetails=o.AccordionDetails,exports.AccordionStyledIcon=o.AccordionStyledIcon,exports.AccordionSummary=o.AccordionSummary,exports.AccordionSummaryContent=o.AccordionSummaryContent,exports.AccordionWrapper=o.AccordionWrapper;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./component.styles-Py-IeQ2q.cjs");exports.Accordion=o.Accordion,exports.AccordionDetails=o.AccordionDetails,exports.AccordionStyledIcon=o.AccordionStyledIcon,exports.AccordionSummary=o.AccordionSummary,exports.AccordionSummaryContent=o.AccordionSummaryContent,exports.AccordionWrapper=o.AccordionWrapper;
2
2
  //# sourceMappingURL=component-accordion.cjs.js.map
@@ -76,8 +76,8 @@ declare interface StackProps extends addSXProps, PropsWithChildren {
76
76
  isHover?: boolean;
77
77
  isRipple?: boolean;
78
78
  onClick?: () => void;
79
- onDrop?: (e: DragEvent_2<HTMLDivElement>) => void;
80
79
  onDragOver?: DragEventHandler<HTMLDivElement>;
80
+ onDrop?: (e: DragEvent_2<HTMLDivElement>) => void;
81
81
  ref?: Ref<HTMLDivElement | null>;
82
82
  }
83
83
 
@@ -1,4 +1,4 @@
1
- import { A, d, e, b, c, a } from "./component.styles-DjoG6jr2.js";
1
+ import { A, d, e, b, c, a } from "./component.styles-CJC0h3Ed.js";
2
2
  export {
3
3
  A as Accordion,
4
4
  d as AccordionDetails,
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./component-CY7lfJVv.cjs");exports.ButtonGroup=t.ButtonGroup,exports.ButtonGroupWrapper=t.ButtonGroupWrapper;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./component-cRmWWDr_.cjs");exports.ButtonGroup=t.ButtonGroup,exports.ButtonGroupWrapper=t.ButtonGroupWrapper;
2
2
  //# sourceMappingURL=component-button-group.cjs.js.map
@@ -1,4 +1,4 @@
1
- import { a, B } from "./component-WUYE2soZ.js";
1
+ import { a, B } from "./component-feWPgACX.js";
2
2
  export {
3
3
  a as ButtonGroup,
4
4
  B as ButtonGroupWrapper
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./component-B1bvPlyB.cjs");exports.Button=t.Button,exports.ButtonSize=t.ButtonSize,exports.ButtonSizeConstructor=t.ButtonSizeConstructor,exports.StyledButton=t.StyledButton,exports.StyledButtonIconsWrapper=t.StyledButtonIconsWrapper;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./component-DnJo66DS.cjs");exports.Button=t.Button,exports.ButtonSize=t.ButtonSize,exports.ButtonSizeConstructor=t.ButtonSizeConstructor,exports.StyledButton=t.StyledButton,exports.StyledButtonIconsWrapper=t.StyledButtonIconsWrapper;
2
2
  //# sourceMappingURL=component-button.cjs.js.map
@@ -1,4 +1,4 @@
1
- import { c, B, a, b, S } from "./component-DJYgewYg.js";
1
+ import { c, B, a, b, S } from "./component-CN6att4f.js";
2
2
  export {
3
3
  c as Button,
4
4
  B as ButtonSize,
@@ -1,4 +1,4 @@
1
- "use strict";const t=require("./jsx-runtime-BcGej2Kr.cjs"),e=require("./component-B1bvPlyB.cjs"),r=require("styled-components"),o=require("./style-fRZ6xrVp.cjs"),i=r.css`
1
+ "use strict";const t=require("./jsx-runtime-BcGej2Kr.cjs"),e=require("./component-DnJo66DS.cjs"),r=require("styled-components"),o=require("./style-fRZ6xrVp.cjs"),i=r.css`
2
2
  display: flex;
3
3
  flex-direction: row;
4
4
  flex-wrap: wrap;
@@ -49,4 +49,4 @@
49
49
  ${t=>"horizontal"===t.$position?i:s};
50
50
  ${o.addSX};
51
51
  `;exports.ButtonGroup=r=>{var o;return t.jsxRuntimeExports.jsx(n,{$sx:r.sx,$position:r.position,className:r.className,id:"jenesei-button-group",children:null==(o=r.value)?void 0:o.map((r,o)=>t.jsxRuntimeExports.jsx(e.Button,{id:"jenesei-button",...r},o))})},exports.ButtonGroupWrapper=n;
52
- //# sourceMappingURL=component-CY7lfJVv.cjs.map
52
+ //# sourceMappingURL=component-cRmWWDr_.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component-cRmWWDr_.cjs","sources":["../src/components/button-group/component.styles.ts","../src/components/button-group/component.tsx"],"sourcesContent":["import { css, styled } from 'styled-components';\n\nimport { addSX } from '@local/styles/sx';\n\nimport { StyledButtonGroupProps } from '.';\n\n/****************************************** Position *************************************************/\nconst ButtonGroupWrapperPositionHorizontal = css`\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n align-content: flex-start;\n justify-content: space-between;\n & #jenesei-button {\n &:not(:only-child) {\n flex-grow: 1;\n &:first-child {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0;\n }\n &:last-child {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0;\n }\n &:not(:first-child):not(:last-child) {\n border-radius: 0;\n }\n }\n }\n`;\n\nconst ButtonGroupWrapperPositionVertical = css`\n display: flex;\n flex-direction: column;\n flex-wrap: wrap;\n\n & #jenesei-button {\n &:not(:only-child) {\n &:first-child {\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n }\n &:last-child {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n }\n &:not(:first-child):not(:last-child) {\n border-radius: 0;\n }\n }\n }\n`;\n\nexport const ButtonGroupWrapper = styled.div<StyledButtonGroupProps>`\n & #jenesei-button {\n &:focus-visible {\n z-index: 1;\n }\n }\n ${(props) =>\n props.$position === 'horizontal' ? ButtonGroupWrapperPositionHorizontal : ButtonGroupWrapperPositionVertical};\n ${addSX};\n`;\n","import { FC } from 'react';\n\nimport { Button } from '@local/components/button';\n\nimport { ButtonGroupProps, ButtonGroupWrapper } from '.';\n\nexport const ButtonGroup: FC<ButtonGroupProps> = (props) => {\n return (\n <ButtonGroupWrapper $sx={props.sx} $position={props.position} className={props.className} id='jenesei-button-group'>\n {props.value?.map((button, id) => (\n <Button id='jenesei-button' key={id} {...button} />\n ))}\n </ButtonGroupWrapper>\n );\n};\n"],"names":["ButtonGroupWrapperPositionHorizontal","css","ButtonGroupWrapperPositionVertical","ButtonGroupWrapper","styled","div","props","$position","addSX","jsx","$sx","sx","position","className","id","children","_a","value","map","button","Button"],"mappings":"kKAOMA,EAAuCC,EAAAA,GAAAA;;;;;;;;;;;;;;;;;;;;;;EAwBvCC,EAAqCD,EAAAA,GAAAA;;;;;;;;;;;;;;;;;;;;EAsB9BE,EAAqBC,EAAAA,OAAOC,GAAA;;;;;;IAMpCC,GACmB,eAApBA,EAAMC,UAA6BP,EAAuCE;IAC1EM;sBCvD8CF,UAChD,SACEG,kBAAAA,IAACN,EAAA,CAAmBO,IAAKJ,EAAMK,GAAIJ,UAAWD,EAAMM,SAAUC,UAAWP,EAAMO,UAAWC,GAAG,uBAC1FC,SAAA,OAAAC,EAAAV,EAAMW,YAAN,EAAAD,EAAaE,IAAI,CAACC,EAAQL,IACzBL,EAAAA,kBAAAA,IAACW,EAAAA,OAAA,CAAON,GAAG,oBAA8BK,GAARL"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./component.styles-DWGUgUoF.cjs");exports.CheckboxChildren=e.CheckboxChildren,exports.CheckboxGroup=e.CheckboxGroup,exports.CheckboxGroupItem=e.CheckboxGroupItem,exports.CheckboxGroupLabel=e.CheckboxGroupLabel,exports.CheckboxGroupSize=e.CheckboxGroupSize,exports.CheckboxGroupSizeConstructor=e.CheckboxGroupSizeConstructor,exports.CheckboxGroupWrapper=e.CheckboxGroupWrapper;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./component.styles-DbWj2stq.cjs");exports.CheckboxChildren=e.CheckboxChildren,exports.CheckboxGroup=e.CheckboxGroup,exports.CheckboxGroupItem=e.CheckboxGroupItem,exports.CheckboxGroupLabel=e.CheckboxGroupLabel,exports.CheckboxGroupSize=e.CheckboxGroupSize,exports.CheckboxGroupSizeConstructor=e.CheckboxGroupSizeConstructor,exports.CheckboxGroupWrapper=e.CheckboxGroupWrapper;
2
2
  //# sourceMappingURL=component-checkbox-group.cjs.js.map
@@ -1,4 +1,4 @@
1
- import { f, C, d, e, a, b, c } from "./component.styles-nl99kkS3.js";
1
+ import { f, C, d, e, a, b, c } from "./component.styles-DTnknwt_.js";
2
2
  export {
3
3
  f as CheckboxChildren,
4
4
  C as CheckboxGroup,
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./component.styles-BpvpyZax.cjs");exports.Checkbox=e.Checkbox,exports.CheckboxGenre=e.CheckboxGenre,exports.CheckboxSize=e.CheckboxSize,exports.CheckboxSizeConstructor=e.CheckboxSizeConstructor,exports.CheckboxWrapper=e.CheckboxWrapper,exports.StyledIcon=e.StyledIcon;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./component.styles-Bb7_KygZ.cjs");exports.Checkbox=e.Checkbox,exports.CheckboxGenre=e.CheckboxGenre,exports.CheckboxSize=e.CheckboxSize,exports.CheckboxSizeConstructor=e.CheckboxSizeConstructor,exports.CheckboxWrapper=e.CheckboxWrapper,exports.StyledIcon=e.StyledIcon;
2
2
  //# sourceMappingURL=component-checkbox.cjs.js.map
@@ -1,4 +1,4 @@
1
- import { C, c, a, b, d, S } from "./component.styles-DARNjy9P.js";
1
+ import { C, c, a, b, d, S } from "./component.styles-DWS6xT-y.js";
2
2
  export {
3
3
  C as Checkbox,
4
4
  c as CheckboxGenre,
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./component.types-CWp0NPUN.cjs");exports.DateDropdownDay=t.DateDropdownDay,exports.DateDropdownDayOfWeek=t.DateDropdownDayOfWeek,exports.DateDropdownDays=t.DateDropdownDays,exports.DateDropdownList=t.DateDropdownList,exports.DateDropdownListParent=t.DateDropdownListParent,exports.DateInput=t.DateInput,exports.DateInputButton=t.DateInputButton,exports.DateInputWrapper=t.DateInputWrapper,exports.DatePicker=t.DatePicker,exports.DatePickerVariant=t.DatePickerVariant,exports.DateWrapper=t.DateWrapper,exports.addDateDropdownDaySize=t.addDateDropdownDaySize,exports.addDateInputButtonSize=t.addDateInputButtonSize,exports.addDateInputWrapperSize=t.addDateInputWrapperSize;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./component.types-CfR3RBsV.cjs");exports.DateDropdownDay=t.DateDropdownDay,exports.DateDropdownDayOfWeek=t.DateDropdownDayOfWeek,exports.DateDropdownDays=t.DateDropdownDays,exports.DateDropdownList=t.DateDropdownList,exports.DateDropdownListParent=t.DateDropdownListParent,exports.DateInput=t.DateInput,exports.DateInputButton=t.DateInputButton,exports.DateInputWrapper=t.DateInputWrapper,exports.DatePicker=t.DatePicker,exports.DatePickerVariant=t.DatePickerVariant,exports.DateWrapper=t.DateWrapper,exports.addDateDropdownDaySize=t.addDateDropdownDaySize,exports.addDateInputButtonSize=t.addDateInputButtonSize,exports.addDateInputWrapperSize=t.addDateInputWrapperSize;
2
2
  //# sourceMappingURL=component-date-picker.cjs.js.map
@@ -1,4 +1,4 @@
1
- import { f, g, d, c, b, h, l, j, D, m, a, e, k, i } from "./component.types-CSnoBg2y.js";
1
+ import { f, g, d, c, b, h, l, j, D, m, a, e, k, i } from "./component.types-BhmQrqBu.js";
2
2
  export {
3
3
  f as DateDropdownDay,
4
4
  g as DateDropdownDayOfWeek,
@@ -1,5 +1,5 @@
1
1
  import { j as jsxRuntimeExports } from "./jsx-runtime-BrDlu8eK.js";
2
- import { c as Button } from "./component-DJYgewYg.js";
2
+ import { c as Button } from "./component-CN6att4f.js";
3
3
  import { css, styled } from "styled-components";
4
4
  import { a as addSX } from "./style-plT9Ah7t.js";
5
5
  const ButtonGroupWrapperPositionHorizontal = css`
@@ -63,4 +63,4 @@ export {
63
63
  ButtonGroupWrapper as B,
64
64
  ButtonGroup as a
65
65
  };
66
- //# sourceMappingURL=component-WUYE2soZ.js.map
66
+ //# sourceMappingURL=component-feWPgACX.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component-feWPgACX.js","sources":["../src/components/button-group/component.styles.ts","../src/components/button-group/component.tsx"],"sourcesContent":["import { css, styled } from 'styled-components';\n\nimport { addSX } from '@local/styles/sx';\n\nimport { StyledButtonGroupProps } from '.';\n\n/****************************************** Position *************************************************/\nconst ButtonGroupWrapperPositionHorizontal = css`\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n align-content: flex-start;\n justify-content: space-between;\n & #jenesei-button {\n &:not(:only-child) {\n flex-grow: 1;\n &:first-child {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0;\n }\n &:last-child {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0;\n }\n &:not(:first-child):not(:last-child) {\n border-radius: 0;\n }\n }\n }\n`;\n\nconst ButtonGroupWrapperPositionVertical = css`\n display: flex;\n flex-direction: column;\n flex-wrap: wrap;\n\n & #jenesei-button {\n &:not(:only-child) {\n &:first-child {\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n }\n &:last-child {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n }\n &:not(:first-child):not(:last-child) {\n border-radius: 0;\n }\n }\n }\n`;\n\nexport const ButtonGroupWrapper = styled.div<StyledButtonGroupProps>`\n & #jenesei-button {\n &:focus-visible {\n z-index: 1;\n }\n }\n ${(props) =>\n props.$position === 'horizontal' ? ButtonGroupWrapperPositionHorizontal : ButtonGroupWrapperPositionVertical};\n ${addSX};\n`;\n","import { FC } from 'react';\n\nimport { Button } from '@local/components/button';\n\nimport { ButtonGroupProps, ButtonGroupWrapper } from '.';\n\nexport const ButtonGroup: FC<ButtonGroupProps> = (props) => {\n return (\n <ButtonGroupWrapper $sx={props.sx} $position={props.position} className={props.className} id='jenesei-button-group'>\n {props.value?.map((button, id) => (\n <Button id='jenesei-button' key={id} {...button} />\n ))}\n </ButtonGroupWrapper>\n );\n};\n"],"names":["jsx"],"mappings":";;;;AAOA,MAAM,uCAAuC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAwB7C,MAAM,qCAAqC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAsBpC,MAAM,qBAAqB,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAMrC,CAAC,UACD,MAAM,cAAc,eAAe,uCAAuC,kCAAkC;AAAA,IAC5G,KAAK;AAAA;ACvDF,MAAM,cAAoC,CAAC,UAAU;;AAC1D,SACEA,kCAAAA,IAAC,oBAAA,EAAmB,KAAK,MAAM,IAAI,WAAW,MAAM,UAAU,WAAW,MAAM,WAAW,IAAG,wBAC1F,WAAA,WAAM,UAAN,mBAAa,IAAI,CAAC,QAAQ,OACzBA,kCAAAA,IAAC,QAAA,EAAO,IAAG,kBAA2B,GAAG,OAAA,GAAR,EAAgB,GAClD,CACH;AAEJ;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./component-BYox4gmt.cjs");exports.ImageButton=e.ImageButton;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./component-BhPckvLk.cjs");exports.ImageButton=e.ImageButton;
2
2
  //# sourceMappingURL=component-image-button.cjs.js.map
@@ -1,4 +1,4 @@
1
- import { I } from "./component-CvW0MIM8.js";
1
+ import { I } from "./component-G5QqAuDV.js";
2
2
  export {
3
3
  I as ImageButton
4
4
  };
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./component.styles-iHE8mmya.cjs");exports.ImageSelect=e.ImageSelect,exports.ImageSelectListSize=e.ImageSelectListSize,exports.ImageSelectListSizeConstructor=e.ImageSelectListSizeConstructor,exports.ImageSelectListWrapper=e.ImageSelectListWrapper,exports.ImageSelectSize=e.ImageSelectSize,exports.ImageSelectSizeConstructor=e.ImageSelectSizeConstructor,exports.ImageSelectWrapper=e.ImageSelectWrapper;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./component.styles-4ycgapiT.cjs");exports.ImageSelect=e.ImageSelect,exports.ImageSelectListSize=e.ImageSelectListSize,exports.ImageSelectListSizeConstructor=e.ImageSelectListSizeConstructor,exports.ImageSelectListWrapper=e.ImageSelectListWrapper,exports.ImageSelectSize=e.ImageSelectSize,exports.ImageSelectSizeConstructor=e.ImageSelectSizeConstructor,exports.ImageSelectWrapper=e.ImageSelectWrapper;
2
2
  //# sourceMappingURL=component-image-select.cjs.js.map
@@ -1,4 +1,4 @@
1
- import { I, a, b, f, c, d, e } from "./component.styles-DOnQEUrI.js";
1
+ import { I, a, b, f, c, d, e } from "./component.styles-CZyAhUtW.js";
2
2
  export {
3
3
  I as ImageSelect,
4
4
  a as ImageSelectListSize,
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./component.constants-DRPyaSU8.cjs");exports.IMAGES=e.IMAGES,exports.ImageSlider=e.ImageSlider,exports.SliderDot=e.SliderDot,exports.SliderImage=e.SliderImage;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./component.constants-CpRgeAIu.cjs");exports.IMAGES=e.IMAGES,exports.ImageSlider=e.ImageSlider,exports.SliderDot=e.SliderDot,exports.SliderImage=e.SliderImage;
2
2
  //# sourceMappingURL=component-image-slider.cjs.js.map
@@ -82,8 +82,8 @@ declare interface StackProps extends addSXProps, PropsWithChildren {
82
82
  isHover?: boolean;
83
83
  isRipple?: boolean;
84
84
  onClick?: () => void;
85
- onDrop?: (e: DragEvent_2<HTMLDivElement>) => void;
86
85
  onDragOver?: DragEventHandler<HTMLDivElement>;
86
+ onDrop?: (e: DragEvent_2<HTMLDivElement>) => void;
87
87
  ref?: Ref<HTMLDivElement | null>;
88
88
  }
89
89
 
@@ -1,4 +1,4 @@
1
- import { b, I, a, S } from "./component.constants-amkB3VHg.js";
1
+ import { b, I, a, S } from "./component.constants-BxnfHAYp.js";
2
2
  export {
3
3
  b as IMAGES,
4
4
  I as ImageSlider,
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./component.styles-BTsmbWT6.cjs");exports.Image=e.Image,exports.ImageIMG=e.ImageIMG;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./component.styles-B-bndnRM.cjs");exports.Image=e.Image,exports.ImageIMG=e.ImageIMG;
2
2
  //# sourceMappingURL=component-image.cjs.js.map
@@ -1,4 +1,4 @@
1
- import { I, a } from "./component.styles-CPWNnqqm.js";
1
+ import { I, a } from "./component.styles-BEaqQuF_.js";
2
2
  export {
3
3
  I as Image,
4
4
  a as ImageIMG
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./component.components-CeKyOsDE.cjs");exports.CustomZoomControl=t.CustomZoomControl,exports.DEFAULT_MAP_CENTER=t.DEFAULT_MAP_CENTER,exports.DEFAULT_MAP_MAX_ZOOM=t.DEFAULT_MAP_MAX_ZOOM,exports.DEFAULT_MAP_MIN_ZOOM=t.DEFAULT_MAP_MIN_ZOOM,exports.DEFAULT_MAP_THEME=t.DEFAULT_MAP_THEME,exports.DEFAULT_MAP_ZOOM=t.DEFAULT_MAP_ZOOM,exports.MapCluster=t.MapCluster,exports.MapDot=t.MapDot,exports.MapWrapper=t.MapWrapper,exports.MarkerCluster=t.MarkerCluster,exports.UpdateMapSettings=t.UpdateMapSettings,exports.createClusterIcon=t.createClusterIcon,exports.customDefaultIcon=t.customDefaultIcon,exports.customTextIcon=t.customTextIcon;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./component.components-CC3IeZon.cjs");exports.CustomZoomControl=t.CustomZoomControl,exports.DEFAULT_MAP_CENTER=t.DEFAULT_MAP_CENTER,exports.DEFAULT_MAP_MAX_ZOOM=t.DEFAULT_MAP_MAX_ZOOM,exports.DEFAULT_MAP_MIN_ZOOM=t.DEFAULT_MAP_MIN_ZOOM,exports.DEFAULT_MAP_THEME=t.DEFAULT_MAP_THEME,exports.DEFAULT_MAP_ZOOM=t.DEFAULT_MAP_ZOOM,exports.MapCluster=t.MapCluster,exports.MapDot=t.MapDot,exports.MapWrapper=t.MapWrapper,exports.MarkerCluster=t.MarkerCluster,exports.UpdateMapSettings=t.UpdateMapSettings,exports.createClusterIcon=t.createClusterIcon,exports.customDefaultIcon=t.customDefaultIcon,exports.customTextIcon=t.customTextIcon;
2
2
  //# sourceMappingURL=component-map.cjs.js.map
@@ -1,4 +1,4 @@
1
- import { C, c, D, a, d, b, M, e, g, f, U, h, j, i } from "./component.components-f-tFdB6f.js";
1
+ import { C, c, D, a, d, b, M, e, g, f, U, h, j, i } from "./component.components-C-EEYFsd.js";
2
2
  export {
3
3
  C as CustomZoomControl,
4
4
  c as DEFAULT_MAP_CENTER,
@@ -49,20 +49,20 @@ const Stack = (props) => {
49
49
  );
50
50
  };
51
51
  const StackMotion = (props) => {
52
+ const { style, className, isHover, isRipple, onClick, onDrop, onDragOver, ref, sx } = props;
52
53
  return /* @__PURE__ */ jsxRuntimeExports.jsx(
53
54
  StyledStackMotion,
54
55
  {
55
- ref: props.ref,
56
- layout: props.layout,
57
- initial: props.initial,
58
- animate: props.animate,
59
- exit: props.exit,
60
- transition: props.transition,
61
- onClick: props.onClick,
62
- className: props.className,
63
- $sx: props.sx,
64
- $isHover: props.isHover,
65
- $isRipple: props.isRipple,
56
+ ref,
57
+ style,
58
+ onClick,
59
+ onDrop,
60
+ onDragOver,
61
+ className,
62
+ $sx: sx,
63
+ $isHover: isHover,
64
+ $isRipple: isRipple,
65
+ ...props,
66
66
  children: props.children
67
67
  }
68
68
  );
@@ -73,4 +73,4 @@ export {
73
73
  Stack as b,
74
74
  StackMotion as c
75
75
  };
76
- //# sourceMappingURL=component-jPZYT5iL.js.map
76
+ //# sourceMappingURL=component-mzzOCXSx.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component-mzzOCXSx.js","sources":["../src/components/stack/component.styles.tsx","../src/components/stack/component.tsx"],"sourcesContent":["import { motion } from 'framer-motion';\nimport styled, { css } from 'styled-components';\n\nimport { addSX } from '@local/styles/sx';\n\nimport { StyledStackProps } from '.';\nimport { addRipple } from '../ripple';\n\nexport const StyledStack = styled.div<StyledStackProps>`\n display: flex;\n ${addSX}\n\n ${(props) =>\n props.$isHover &&\n css`\n transition:\n background-color ${(props) => props.theme.transition.default},\n outline 0s;\n &:hover {\n background-color: ${(props) => props.theme.palette.black05};\n }\n `};\n ${addRipple};\n`;\n\nexport const StyledStackMotion = styled(motion.div)<StyledStackProps>`\n display: flex;\n ${addSX}\n\n ${(props) =>\n props.$isHover &&\n css`\n transition:\n background-color ${(props) => props.theme.transition.default},\n outline 0s;\n &:hover {\n background-color: ${(props) => props.theme.palette.black05};\n }\n `};\n ${addRipple};\n`;\n","import { FC } from 'react';\n\nimport { StackMotionProps, StackProps, StyledStack, StyledStackMotion } from '.';\n\nexport const Stack: FC<StackProps> = (props) => {\n return (\n <StyledStack\n ref={props.ref}\n onClick={props.onClick}\n onDrop={props.onDrop}\n onDragOver={props.onDragOver}\n className={props.className}\n $sx={props.sx}\n $isHover={props.isHover}\n $isRipple={props.isRipple}\n >\n {props.children}\n </StyledStack>\n );\n};\n\nexport const StackMotion: FC<StackMotionProps> = (props) => {\n const { style, className, isHover, isRipple, onClick, onDrop, onDragOver, ref, sx } = props;\n return (\n <StyledStackMotion\n ref={ref}\n style={style}\n onClick={onClick}\n onDrop={onDrop}\n onDragOver={onDragOver}\n className={className}\n $sx={sx}\n $isHover={isHover}\n $isRipple={isRipple}\n {...props}\n >\n {props.children}\n </StyledStackMotion>\n );\n};\n"],"names":["props","jsx"],"mappings":";;;;;;AAQO,MAAM,cAAc,OAAO;AAAA;AAAA,IAE9B,KAAK;AAAA;AAAA,IAEL,CAAC,UACD,MAAM,YACN;AAAA;AAAA,2BAEuB,CAACA,WAAUA,OAAM,MAAM,WAAW,OAAO;AAAA;AAAA;AAAA,4BAGxC,CAACA,WAAUA,OAAM,MAAM,QAAQ,OAAO;AAAA;AAAA,KAE7D;AAAA,IACD,SAAS;AAAA;AAGN,MAAM,oBAAoB,OAAO,OAAO,GAAG;AAAA;AAAA,IAE9C,KAAK;AAAA;AAAA,IAEL,CAAC,UACD,MAAM,YACN;AAAA;AAAA,2BAEuB,CAACA,WAAUA,OAAM,MAAM,WAAW,OAAO;AAAA;AAAA;AAAA,4BAGxC,CAACA,WAAUA,OAAM,MAAM,QAAQ,OAAO;AAAA;AAAA,KAE7D;AAAA,IACD,SAAS;AAAA;ACnCN,MAAM,QAAwB,CAAC,UAAU;AAC9C,SACEC,kCAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAK,MAAM;AAAA,MACX,SAAS,MAAM;AAAA,MACf,QAAQ,MAAM;AAAA,MACd,YAAY,MAAM;AAAA,MAClB,WAAW,MAAM;AAAA,MACjB,KAAK,MAAM;AAAA,MACX,UAAU,MAAM;AAAA,MAChB,WAAW,MAAM;AAAA,MAEhB,UAAA,MAAM;AAAA,IAAA;AAAA,EAAA;AAGb;AAEO,MAAM,cAAoC,CAAC,UAAU;AAC1D,QAAM,EAAE,OAAO,WAAW,SAAS,UAAU,SAAS,QAAQ,YAAY,KAAK,GAAA,IAAO;AACtF,SACEA,kCAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,KAAK;AAAA,MACL,UAAU;AAAA,MACV,WAAW;AAAA,MACV,GAAG;AAAA,MAEH,UAAA,MAAM;AAAA,IAAA;AAAA,EAAA;AAGb;"}