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

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 (260) hide show
  1. package/build/{area-Dnq78ow6.js → area-BYuHpaUX.js} +2 -2
  2. package/build/{area-Dnq78ow6.js.map → area-BYuHpaUX.js.map} +1 -1
  3. package/build/{area-DnAf310m.cjs → area-C6XuN6wk.cjs} +2 -2
  4. package/build/{area-DnAf310m.cjs.map → area-C6XuN6wk.cjs.map} +1 -1
  5. package/build/{area-CFZW3T1g.js → area-CkM4ZN2F.js} +2 -2
  6. package/build/{area-CFZW3T1g.js.map → area-CkM4ZN2F.js.map} +1 -1
  7. package/build/{area-C3wR_pPr.cjs → area-oZm7ewxw.cjs} +2 -2
  8. package/build/{area-C3wR_pPr.cjs.map → area-oZm7ewxw.cjs.map} +1 -1
  9. package/build/area-preview.cjs.js +1 -1
  10. package/build/area-preview.es.js +1 -1
  11. package/build/area-skeleton.cjs.js +1 -1
  12. package/build/area-skeleton.es.js +1 -1
  13. package/build/build-info.txt +3 -3
  14. package/build/component--jGdo2yq.cjs +2 -0
  15. package/build/component--jGdo2yq.cjs.map +1 -0
  16. package/build/component-B1bvPlyB.cjs +90 -0
  17. package/build/component-B1bvPlyB.cjs.map +1 -0
  18. package/build/{component-DHq4T6Ku.cjs → component-BYox4gmt.cjs} +2 -2
  19. package/build/{component-DHq4T6Ku.cjs.map → component-BYox4gmt.cjs.map} +1 -1
  20. package/build/component-C67KboOB.cjs +245 -0
  21. package/build/component-C67KboOB.cjs.map +1 -0
  22. package/build/{component-BiNPQpCQ.cjs → component-CY7lfJVv.cjs} +2 -2
  23. package/build/{component-BiNPQpCQ.cjs.map → component-CY7lfJVv.cjs.map} +1 -1
  24. package/build/{component-DfxlJBGv.js → component-CvW0MIM8.js} +3 -3
  25. package/build/{component-DfxlJBGv.js.map → component-CvW0MIM8.js.map} +1 -1
  26. package/build/{component-C4ULY0c6.js → component-DJYgewYg.js} +20 -9
  27. package/build/component-DJYgewYg.js.map +1 -0
  28. package/build/component-DKMsOpqH.js +710 -0
  29. package/build/component-DKMsOpqH.js.map +1 -0
  30. package/build/{component-Bzw_uobM.js → component-DaXKDHnc.js} +48 -7
  31. package/build/component-DaXKDHnc.js.map +1 -0
  32. package/build/{component-CQ8fy2gK.js → component-WUYE2soZ.js} +2 -2
  33. package/build/{component-CQ8fy2gK.js.map → component-WUYE2soZ.js.map} +1 -1
  34. package/build/component-accordion.cjs.js +1 -1
  35. package/build/component-accordion.es.js +1 -1
  36. package/build/component-button-group.cjs.js +1 -1
  37. package/build/component-button-group.d.ts +18 -1
  38. package/build/component-button-group.es.js +1 -1
  39. package/build/component-button.cjs.js +1 -1
  40. package/build/component-button.d.ts +21 -2
  41. package/build/component-button.es.js +1 -1
  42. package/build/component-checkbox-group.cjs.js +1 -1
  43. package/build/component-checkbox-group.d.ts +20 -3
  44. package/build/component-checkbox-group.es.js +1 -1
  45. package/build/component-checkbox.cjs.js +1 -1
  46. package/build/component-checkbox.d.ts +21 -2
  47. package/build/component-checkbox.es.js +1 -1
  48. package/build/component-date-picker.cjs.js +1 -1
  49. package/build/component-date-picker.d.ts +35 -37
  50. package/build/component-date-picker.es.js +1 -1
  51. package/build/component-icon.cjs.js +1 -1
  52. package/build/component-icon.es.js +1 -1
  53. package/build/component-image-button.cjs.js +1 -1
  54. package/build/component-image-button.d.ts +18 -1
  55. package/build/component-image-button.es.js +1 -1
  56. package/build/component-image-select.cjs.js +1 -1
  57. package/build/component-image-select.d.ts +18 -1
  58. package/build/component-image-select.es.js +1 -1
  59. package/build/component-image-slider.cjs.js +1 -1
  60. package/build/component-image-slider.es.js +1 -1
  61. package/build/component-image.cjs.js +1 -1
  62. package/build/component-image.es.js +1 -1
  63. package/build/component-input-otp.cjs.js +1 -1
  64. package/build/component-input-otp.d.ts +51 -5
  65. package/build/component-input-otp.es.js +1 -1
  66. package/build/component-input.cjs.js +1 -1
  67. package/build/component-input.d.ts +62 -14
  68. package/build/component-input.es.js +2 -2
  69. package/build/component-map.cjs.js +1 -1
  70. package/build/component-map.es.js +1 -1
  71. package/build/component-pagination.cjs.js +1 -1
  72. package/build/component-pagination.d.ts +18 -1
  73. package/build/component-pagination.es.js +1 -1
  74. package/build/component-range.cjs.js +1 -1
  75. package/build/component-range.d.ts +50 -4
  76. package/build/component-range.es.js +1 -1
  77. package/build/component-select.cjs.js +1 -1
  78. package/build/component-select.d.ts +48 -7
  79. package/build/component-select.es.js +1 -1
  80. package/build/component-textarea.cjs.js +1 -1
  81. package/build/component-textarea.d.ts +50 -7
  82. package/build/component-textarea.es.js +1 -1
  83. package/build/component-toggle.cjs.js +1 -1
  84. package/build/component-toggle.d.ts +51 -2
  85. package/build/component-toggle.es.js +1 -1
  86. package/build/component-tooltip.cjs.js +1 -1
  87. package/build/component-tooltip.d.ts +14 -2
  88. package/build/component-tooltip.es.js +1 -1
  89. package/build/component-typography.cjs.js +1 -1
  90. package/build/component-typography.d.ts +27 -13
  91. package/build/component-typography.es.js +7 -6
  92. package/build/component-typography.es.js.map +1 -1
  93. package/build/{component.components-H_qAeBHw.cjs → component.components-CeKyOsDE.cjs} +2 -2
  94. package/build/{component.components-H_qAeBHw.cjs.map → component.components-CeKyOsDE.cjs.map} +1 -1
  95. package/build/{component.components-DX0DVix5.js → component.components-f-tFdB6f.js} +4 -4
  96. package/build/{component.components-DX0DVix5.js.map → component.components-f-tFdB6f.js.map} +1 -1
  97. package/build/{component.constants-veAUxKBd.cjs → component.constants-B9xzGc3A.cjs} +2 -2
  98. package/build/{component.constants-veAUxKBd.cjs.map → component.constants-B9xzGc3A.cjs.map} +1 -1
  99. package/build/{component.constants-DjYLZpyY.js → component.constants-BrJrCmlA.js} +2 -2
  100. package/build/{component.constants-DjYLZpyY.js.map → component.constants-BrJrCmlA.js.map} +1 -1
  101. package/build/{component.constants-DwRduxMm.cjs → component.constants-DRPyaSU8.cjs} +3 -3
  102. package/build/{component.constants-DwRduxMm.cjs.map → component.constants-DRPyaSU8.cjs.map} +1 -1
  103. package/build/{component.constants-C7DGbAC8.js → component.constants-amkB3VHg.js} +7 -7
  104. package/build/{component.constants-C7DGbAC8.js.map → component.constants-amkB3VHg.js.map} +1 -1
  105. package/build/component.functions-D9ffjEok.cjs +8 -0
  106. package/build/component.functions-D9ffjEok.cjs.map +1 -0
  107. package/build/component.functions-DNW6h8kk.js +12 -0
  108. package/build/component.functions-DNW6h8kk.js.map +1 -0
  109. package/build/{component.styles-5CVyEjEh.js → component.styles--PEjCgcA.js} +51 -23
  110. package/build/component.styles--PEjCgcA.js.map +1 -0
  111. package/build/{component.styles-C3hYZJGh.js → component.styles-B0FFHGeN.js} +26 -20
  112. package/build/component.styles-B0FFHGeN.js.map +1 -0
  113. package/build/{component.styles-C1p3V7H6.js → component.styles-BDKsgd6y.js} +32 -19
  114. package/build/component.styles-BDKsgd6y.js.map +1 -0
  115. package/build/{component.styles-Cje8zTpf.cjs → component.styles-BELwxHxh.cjs} +7 -7
  116. package/build/component.styles-BELwxHxh.cjs.map +1 -0
  117. package/build/{component.styles-DpgkACgI.js → component.styles-BGYbrzvh.js} +2 -2
  118. package/build/{component.styles-DpgkACgI.js.map → component.styles-BGYbrzvh.js.map} +1 -1
  119. package/build/{component.styles-DSle6iuF.cjs → component.styles-BKnUDWqO.cjs} +2 -2
  120. package/build/{component.styles-DSle6iuF.cjs.map → component.styles-BKnUDWqO.cjs.map} +1 -1
  121. package/build/{component.styles-DLU0S0KI.cjs → component.styles-BTsmbWT6.cjs} +2 -2
  122. package/build/{component.styles-DLU0S0KI.cjs.map → component.styles-BTsmbWT6.cjs.map} +1 -1
  123. package/build/{component.styles-DYS_AJ9F.js → component.styles-BbwS_Ekx.js} +9 -10
  124. package/build/{component.styles-DYS_AJ9F.js.map → component.styles-BbwS_Ekx.js.map} +1 -1
  125. package/build/component.styles-BeRVOt5T.cjs +137 -0
  126. package/build/{component.styles-Crx4pACx.cjs.map → component.styles-BeRVOt5T.cjs.map} +1 -1
  127. package/build/component.styles-BpvpyZax.cjs +73 -0
  128. package/build/component.styles-BpvpyZax.cjs.map +1 -0
  129. package/build/{component.styles-BirbSbuD.js → component.styles-CPWNnqqm.js} +3 -3
  130. package/build/{component.styles-BirbSbuD.js.map → component.styles-CPWNnqqm.js.map} +1 -1
  131. package/build/component.styles-CsB9986a.cjs +99 -0
  132. package/build/component.styles-CsB9986a.cjs.map +1 -0
  133. package/build/{component.styles-5Xz_H-fR.js → component.styles-DARNjy9P.js} +32 -11
  134. package/build/component.styles-DARNjy9P.js.map +1 -0
  135. package/build/{component.styles-CggIUAVx.js → component.styles-DOnQEUrI.js} +20 -9
  136. package/build/{component.styles-CggIUAVx.js.map → component.styles-DOnQEUrI.js.map} +1 -1
  137. package/build/{component.styles-Bm3Ec-Kd.js → component.styles-DS0ofW1Y.js} +3 -3
  138. package/build/{component.styles-Bm3Ec-Kd.js.map → component.styles-DS0ofW1Y.js.map} +1 -1
  139. package/build/component.styles-DWGUgUoF.cjs +21 -0
  140. package/build/component.styles-DWGUgUoF.cjs.map +1 -0
  141. package/build/{component.styles-DX_3POUD.js → component.styles-DjoG6jr2.js} +3 -3
  142. package/build/{component.styles-DX_3POUD.js.map → component.styles-DjoG6jr2.js.map} +1 -1
  143. package/build/{component.styles-Bfhg18CX.cjs → component.styles-Dpo373cZ.cjs} +2 -2
  144. package/build/{component.styles-Bfhg18CX.cjs.map → component.styles-Dpo373cZ.cjs.map} +1 -1
  145. package/build/{component.styles-v0YYECwW.js → component.styles-VrNFgg1_.js} +32 -12
  146. package/build/component.styles-VrNFgg1_.js.map +1 -0
  147. package/build/{component.styles-DhAMCZ71.cjs → component.styles-ZU_GyVub.cjs} +2 -2
  148. package/build/{component.styles-DhAMCZ71.cjs.map → component.styles-ZU_GyVub.cjs.map} +1 -1
  149. package/build/component.styles-gZHy-64x.cjs +13 -0
  150. package/build/component.styles-gZHy-64x.cjs.map +1 -0
  151. package/build/{component.styles--Ug3PJQ6.cjs → component.styles-iHE8mmya.cjs} +7 -7
  152. package/build/{component.styles--Ug3PJQ6.cjs.map → component.styles-iHE8mmya.cjs.map} +1 -1
  153. package/build/component.styles-mhkAuWyU.cjs +225 -0
  154. package/build/component.styles-mhkAuWyU.cjs.map +1 -0
  155. package/build/component.styles-nl99kkS3.js +94 -0
  156. package/build/component.styles-nl99kkS3.js.map +1 -0
  157. package/build/{component.types-BzBjcohg.js → component.types-CSnoBg2y.js} +94 -67
  158. package/build/component.types-CSnoBg2y.js.map +1 -0
  159. package/build/component.types-CWp0NPUN.cjs +171 -0
  160. package/build/component.types-CWp0NPUN.cjs.map +1 -0
  161. package/build/context-app.cjs.js +1 -1
  162. package/build/context-app.es.js +1 -1
  163. package/build/context-dialog.cjs.js +1 -1
  164. package/build/context-dialog.d.ts +11 -4
  165. package/build/context-dialog.es.js +1 -1
  166. package/build/context-sonner.cjs.js +1 -1
  167. package/build/context-sonner.d.ts +42 -7
  168. package/build/context-sonner.es.js +1 -1
  169. package/build/context.constants-ByXsACU7.cjs +32 -0
  170. package/build/context.constants-ByXsACU7.cjs.map +1 -0
  171. package/build/context.constants-CTr1U0kI.cjs +98 -0
  172. package/build/context.constants-CTr1U0kI.cjs.map +1 -0
  173. package/build/{context.constants-B9Yk6CGe.js → context.constants-CvkvB0XC.js} +8 -5
  174. package/build/context.constants-CvkvB0XC.js.map +1 -0
  175. package/build/{context.constants-Bz_5itIx.js → context.constants-DRimaVcG.js} +26 -9
  176. package/build/context.constants-DRimaVcG.js.map +1 -0
  177. package/build/{context.hooks-BDEwJHqB.cjs → context.hooks-DOygH-Yj.cjs} +3 -3
  178. package/build/{context.hooks-BDEwJHqB.cjs.map → context.hooks-DOygH-Yj.cjs.map} +1 -1
  179. package/build/{context.hooks-DTdppyho.js → context.hooks-kga1DMrX.js} +4 -4
  180. package/build/{context.hooks-DTdppyho.js.map → context.hooks-kga1DMrX.js.map} +1 -1
  181. package/build/floating-ui.react--v70Xky9.cjs +2 -0
  182. package/build/floating-ui.react--v70Xky9.cjs.map +1 -0
  183. package/build/{component-BoHvC24Q.js → floating-ui.react-Byi6bLb1.js} +17 -704
  184. package/build/floating-ui.react-Byi6bLb1.js.map +1 -0
  185. package/build/index.cjs.js +1 -1
  186. package/build/index.d.ts +83 -89
  187. package/build/index.es.js +55 -53
  188. package/build/index.es.js.map +1 -1
  189. package/build/style-D3Lbn1EL.cjs +32 -0
  190. package/build/style-D3Lbn1EL.cjs.map +1 -0
  191. package/build/{style-mc2ST5fY.cjs → style-Df37KnoJ.cjs} +47 -18
  192. package/build/style-Df37KnoJ.cjs.map +1 -0
  193. package/build/{style-BgcnmVAY.js → style-RL73t3JD.js} +63 -20
  194. package/build/style-RL73t3JD.js.map +1 -0
  195. package/build/style-add.cjs.js +1 -1
  196. package/build/style-add.d.ts +57 -5
  197. package/build/style-add.es.js +11 -10
  198. package/build/style-error.cjs.js +1 -1
  199. package/build/style-error.d.ts +42 -1
  200. package/build/style-error.es.js +1 -1
  201. package/build/style-fRZ6xrVp.cjs.map +1 -1
  202. package/build/style-plT9Ah7t.js.map +1 -1
  203. package/build/style-theme.cjs.js +1 -1
  204. package/build/style-theme.d.ts +2 -2
  205. package/build/style-theme.es.js +1 -1
  206. package/build/{style-BQ653xOS.js → style-uVTmdhsH.js} +14 -5
  207. package/build/style-uVTmdhsH.js.map +1 -0
  208. package/build/{theme.global-CFUz5Asg.js → theme.global-BgERDJ4e.js} +36 -1
  209. package/build/theme.global-BgERDJ4e.js.map +1 -0
  210. package/build/{theme.global-B9t2Fi10.cjs → theme.global-CcoD5bPP.cjs} +2 -2
  211. package/build/theme.global-CcoD5bPP.cjs.map +1 -0
  212. package/build/{use-DTZ8c8_g.js → use-DLVWi2kS.js} +6 -6
  213. package/build/{use-DTZ8c8_g.js.map → use-DLVWi2kS.js.map} +1 -1
  214. package/build/{use-D7IsSb34.cjs → use-Dg449cuf.cjs} +2 -2
  215. package/build/{use-D7IsSb34.cjs.map → use-Dg449cuf.cjs.map} +1 -1
  216. package/package.json +1 -1
  217. package/build/component-BoHvC24Q.js.map +0 -1
  218. package/build/component-Bzw_uobM.js.map +0 -1
  219. package/build/component-C4ULY0c6.js.map +0 -1
  220. package/build/component-CACoGUK9.cjs +0 -251
  221. package/build/component-CACoGUK9.cjs.map +0 -1
  222. package/build/component-Dn-VRY7-.cjs +0 -2
  223. package/build/component-Dn-VRY7-.cjs.map +0 -1
  224. package/build/component-u_42PteJ.cjs +0 -90
  225. package/build/component-u_42PteJ.cjs.map +0 -1
  226. package/build/component.styles-5CVyEjEh.js.map +0 -1
  227. package/build/component.styles-5Xz_H-fR.js.map +0 -1
  228. package/build/component.styles-8tkaznu_.cjs +0 -21
  229. package/build/component.styles-8tkaznu_.cjs.map +0 -1
  230. package/build/component.styles-BuzZQhqS.cjs +0 -73
  231. package/build/component.styles-BuzZQhqS.cjs.map +0 -1
  232. package/build/component.styles-C1p3V7H6.js.map +0 -1
  233. package/build/component.styles-C3hYZJGh.js.map +0 -1
  234. package/build/component.styles-CISd4naT.cjs +0 -13
  235. package/build/component.styles-CISd4naT.cjs.map +0 -1
  236. package/build/component.styles-Cje8zTpf.cjs.map +0 -1
  237. package/build/component.styles-CpFA5YrM.js +0 -71
  238. package/build/component.styles-CpFA5YrM.js.map +0 -1
  239. package/build/component.styles-Crx4pACx.cjs +0 -137
  240. package/build/component.styles-Db3HLiuV.cjs +0 -99
  241. package/build/component.styles-Db3HLiuV.cjs.map +0 -1
  242. package/build/component.styles-o7GmI4Ap.cjs +0 -225
  243. package/build/component.styles-o7GmI4Ap.cjs.map +0 -1
  244. package/build/component.styles-v0YYECwW.js.map +0 -1
  245. package/build/component.types-BzBjcohg.js.map +0 -1
  246. package/build/component.types-ydMLhabS.cjs +0 -174
  247. package/build/component.types-ydMLhabS.cjs.map +0 -1
  248. package/build/context.constants-B9Yk6CGe.js.map +0 -1
  249. package/build/context.constants-Bz_5itIx.js.map +0 -1
  250. package/build/context.constants-CTfUKury.cjs +0 -32
  251. package/build/context.constants-CTfUKury.cjs.map +0 -1
  252. package/build/context.constants-CV8ycctl.cjs +0 -100
  253. package/build/context.constants-CV8ycctl.cjs.map +0 -1
  254. package/build/style-B5u4pW5G.cjs +0 -32
  255. package/build/style-B5u4pW5G.cjs.map +0 -1
  256. package/build/style-BQ653xOS.js.map +0 -1
  257. package/build/style-BgcnmVAY.js.map +0 -1
  258. package/build/style-mc2ST5fY.cjs.map +0 -1
  259. package/build/theme.global-B9t2Fi10.cjs.map +0 -1
  260. package/build/theme.global-CFUz5Asg.js.map +0 -1
@@ -0,0 +1,245 @@
1
+ "use strict";const e=require("./jsx-runtime-BcGej2Kr.cjs"),t=require("./context.hooks-BIsapq-0.cjs"),i=require("@tanstack/react-router"),n=require("react"),s=require("styled-components"),r=require("./theme.global-CcoD5bPP.cjs"),o=require("./floating-ui.react--v70Xky9.cjs"),a=require("framer-motion"),l=require("react-dom"),c=require("./style-Df37KnoJ.cjs"),f=require("./style-fRZ6xrVp.cjs"),h=require("./component-BV_7tGiu.cjs"),d=s.keyframes`
2
+ 0% {
3
+ text-shadow: 0 0 0 rgba(0, 0, 0, 0);
4
+ }
5
+ 50% {
6
+ text-shadow: 4px 4px 10px rgba(0, 0, 0, 0.5);
7
+ }
8
+ 100% {
9
+ text-shadow: 0 0 0 rgba(0, 0, 0, 0);
10
+ }
11
+ `;function m(e){return s.css`
12
+ ${e.shadow&&"shadowPulse"===e.shadow&&s.css`
13
+ animation: ${d} 2s infinite;
14
+ `};
15
+ ${e.letterSpacing&&s.css`
16
+ letter-spacing: ${e.letterSpacing};
17
+ `};
18
+ ${e.flex&&s.css`
19
+ flex: ${e.flex};
20
+ `};
21
+ ${e.cursor&&s.css`
22
+ cursor: ${e.cursor};
23
+ `};
24
+ ${e.overflow&&s.css`
25
+ overflow: ${e.overflow};
26
+ `};
27
+ ${void 0!==e.line?1===e.line?s.css`
28
+ text-overflow: ellipsis;
29
+ overflow: hidden;
30
+ white-space: nowrap;
31
+ width: -webkit-fill-available;
32
+ max-width: fit-content;
33
+ `:s.css`
34
+ word-break: break-word;
35
+ white-space: normal;
36
+ text-overflow: ellipsis;
37
+ display: -webkit-box;
38
+ overflow: hidden;
39
+ -webkit-box-orient: vertical;
40
+ -webkit-line-clamp: ${e.line};
41
+ width: fit-content;
42
+ overflow-wrap: anywhere;
43
+ `:s.css``};
44
+ ${e.family&&s.css`
45
+ font-family: ${e.family};
46
+ `};
47
+ ${e.weight&&s.css`
48
+ font-weight: ${e.weight};
49
+ `};
50
+ ${e.height&&s.css`
51
+ line-height: ${e.height}px;
52
+ `};
53
+ ${e.color&&s.css`
54
+ color: ${r.JeneseiPalette[e.color]};
55
+ `};
56
+ ${e.align&&s.css`
57
+ text-align: ${e.align};
58
+ `};
59
+ ${e.wrap&&s.css`
60
+ text-wrap: ${e.wrap};
61
+ `};
62
+ ${e.decoration&&s.css`
63
+ text-decoration: ${e.decoration};
64
+ `};
65
+ ${e.transform&&s.css`
66
+ text-transform: ${e.transform};
67
+ `};
68
+ ${e.isHoverUnderlining&&s.css`
69
+ &:hover {
70
+ text-decoration: underline;
71
+ }
72
+ `};
73
+ ${e.isNoUserSelect&&s.css`
74
+ user-select: none;
75
+ -webkit-user-select: none;
76
+ -moz-user-select: none;
77
+ -ms-user-select: none;
78
+ `};
79
+ ${"size"in e&&e.size&&s.css`
80
+ font-size: ${e.size}px;
81
+ `};
82
+ ${"variant"in e&&e.variant?"h1"===e.variant?s.css`
83
+ font-size: ${e=>e.theme.font.sizeHeading.h1*e.theme.font.sizeDefault.default}px;
84
+ line-height: ${e=>e.theme.font.lineHeight};
85
+ margin: 0;
86
+ @media (max-width: ${e=>e.theme.screens.tablet.width}px) {
87
+ font-size: ${e=>e.theme.font.sizeHeading.h1*e.theme.font.sizeDefault.tablet}px;
88
+ }
89
+
90
+ @media (max-width: ${e=>e.theme.screens.mobile.width}px) {
91
+ font-size: ${e=>e.theme.font.sizeHeading.h1*e.theme.font.sizeDefault.mobile}px;
92
+ }
93
+ `:"h2"===e.variant?s.css`
94
+ font-size: ${e=>e.theme.font.sizeHeading.h2*e.theme.font.sizeDefault.default}px;
95
+ line-height: ${e=>e.theme.font.lineHeight};
96
+ margin: 0;
97
+ @media (max-width: ${e=>e.theme.screens.tablet.width}px) {
98
+ font-size: ${e=>e.theme.font.sizeHeading.h2*e.theme.font.sizeDefault.tablet}px;
99
+ }
100
+
101
+ @media (max-width: ${e=>e.theme.screens.mobile.width}px) {
102
+ font-size: ${e=>e.theme.font.sizeHeading.h2*e.theme.font.sizeDefault.mobile}px;
103
+ }
104
+ `:"h3"===e.variant?s.css`
105
+ font-size: ${e=>e.theme.font.sizeHeading.h3*e.theme.font.sizeDefault.default}px;
106
+ line-height: ${e=>e.theme.font.lineHeight};
107
+ margin: 0;
108
+ @media (max-width: ${e=>e.theme.screens.tablet.width}px) {
109
+ font-size: ${e=>e.theme.font.sizeHeading.h3*e.theme.font.sizeDefault.tablet}px;
110
+ }
111
+
112
+ @media (max-width: ${e=>e.theme.screens.mobile.width}px) {
113
+ font-size: ${e=>e.theme.font.sizeHeading.h3*e.theme.font.sizeDefault.mobile}px;
114
+ }
115
+ `:"h4"===e.variant?s.css`
116
+ font-size: ${e=>e.theme.font.sizeHeading.h4*e.theme.font.sizeDefault.default}px;
117
+ line-height: ${e=>e.theme.font.lineHeight};
118
+ margin: 0;
119
+ @media (max-width: ${e=>e.theme.screens.tablet.width}px) {
120
+ font-size: ${e=>e.theme.font.sizeHeading.h4*e.theme.font.sizeDefault.tablet}px;
121
+ }
122
+
123
+ @media (max-width: ${e=>e.theme.screens.mobile.width}px) {
124
+ font-size: ${e=>e.theme.font.sizeHeading.h4*e.theme.font.sizeDefault.mobile}px;
125
+ }
126
+ `:"h5"===e.variant?s.css`
127
+ font-size: ${e=>e.theme.font.sizeHeading.h5*e.theme.font.sizeDefault.default}px;
128
+ line-height: ${e=>e.theme.font.lineHeight};
129
+ margin: 0;
130
+ @media (max-width: ${e=>e.theme.screens.tablet.width}px) {
131
+ font-size: ${e=>e.theme.font.sizeHeading.h5*e.theme.font.sizeDefault.tablet}px;
132
+ }
133
+
134
+ @media (max-width: ${e=>e.theme.screens.mobile.width}px) {
135
+ font-size: ${e=>e.theme.font.sizeHeading.h5*e.theme.font.sizeDefault.mobile}px;
136
+ }
137
+ `:"h6"===e.variant?s.css`
138
+ font-size: ${e=>e.theme.font.sizeHeading.h6*e.theme.font.sizeDefault.default}px;
139
+ line-height: ${e=>e.theme.font.lineHeight};
140
+ margin: 0;
141
+ @media (max-width: ${e=>e.theme.screens.tablet.width}px) {
142
+ font-size: ${e=>e.theme.font.sizeHeading.h6*e.theme.font.sizeDefault.tablet}px;
143
+ }
144
+
145
+ @media (max-width: ${e=>e.theme.screens.mobile.width}px) {
146
+ font-size: ${e=>e.theme.font.sizeHeading.h6*e.theme.font.sizeDefault.mobile}px;
147
+ }
148
+ `:"h7"===e.variant?s.css`
149
+ font-size: ${e=>e.theme.font.sizeHeading.h7*e.theme.font.sizeDefault.default}px;
150
+ line-height: ${e=>e.theme.font.lineHeight};
151
+ margin: 0;
152
+ @media (max-width: ${e=>e.theme.screens.tablet.width}px) {
153
+ font-size: ${e=>e.theme.font.sizeHeading.h7*e.theme.font.sizeDefault.tablet}px;
154
+ }
155
+
156
+ @media (max-width: ${e=>e.theme.screens.mobile.width}px) {
157
+ font-size: ${e=>e.theme.font.sizeHeading.h7*e.theme.font.sizeDefault.mobile}px;
158
+ }
159
+ `:"h8"===e.variant?s.css`
160
+ font-size: ${e=>e.theme.font.sizeHeading.h8*e.theme.font.sizeDefault.default}px;
161
+ line-height: ${e=>e.theme.font.lineHeight};
162
+ margin: 0;
163
+ @media (max-width: ${e=>e.theme.screens.tablet.width}px) {
164
+ font-size: ${e=>e.theme.font.sizeHeading.h8*e.theme.font.sizeDefault.tablet}px;
165
+ }
166
+
167
+ @media (max-width: ${e=>e.theme.screens.mobile.width}px) {
168
+ font-size: ${e=>e.theme.font.sizeHeading.h8*e.theme.font.sizeDefault.mobile}px;
169
+ }
170
+ `:"h9"===e.variant?s.css`
171
+ font-size: ${e=>e.theme.font.sizeHeading.h9*e.theme.font.sizeDefault.default}px;
172
+ line-height: ${e=>e.theme.font.lineHeight};
173
+ margin: 0;
174
+ @media (max-width: ${e=>e.theme.screens.tablet.width}px) {
175
+ font-size: ${e=>e.theme.font.sizeHeading.h9*e.theme.font.sizeDefault.tablet}px;
176
+ }
177
+
178
+ @media (max-width: ${e=>e.theme.screens.mobile.width}px) {
179
+ font-size: ${e=>e.theme.font.sizeHeading.h9*e.theme.font.sizeDefault.mobile}px;
180
+ }
181
+ `:null:null};
182
+ `}const u=s.css`
183
+ ${e=>{const t=e.$sxTypography;return t?m(t.default):null}}
184
+
185
+ ${e=>{const t=e.$sxTypography;return t?Object.entries(t).filter(([e])=>"default"!==e).map(([t,i])=>{var n;const r=null==(n=e.theme.screens[t])?void 0:n.width;return r?s.css`
186
+ @media (max-width: ${r}px) {
187
+ ${m(i)}
188
+ }
189
+ `:null}):null}}
190
+ `,x=s.css`
191
+ font-style: normal;
192
+ position: relative;
193
+ overflow: visible;
194
+ text-overflow: ellipsis;
195
+ overflow-wrap: anywhere;
196
+ line-height: ${e=>e.theme.font.lineHeight};
197
+ ${u};
198
+ ${f.addSX}
199
+ `,p=s.span`
200
+ ${x}
201
+ ${c.addOutline}
202
+ `,g=t=>{var i,n,o,c;const f=s.useTheme();return l.createPortal(e.jsxRuntimeExports.jsx(a.AnimatePresence,{children:t.isOpen&&e.jsxRuntimeExports.jsx("div",{tabIndex:-1,ref:t.ref,style:{position:"absolute",top:0,left:0,...t.floatingStyles,transform:t.floatingStyles.transform,zIndex:9999},children:e.jsxRuntimeExports.jsx(v,{tabIndex:-1,$isShowAlwaysOutline:t.isShowAlwaysOutline,$genre:t.genre??"black",$font:{size:(null==(i=t.font)?void 0:i.size)??r.KEY_SIZE_DATA[t.size??"medium"].font,weight:(null==(n=t.font)?void 0:n.weight)??700,family:(null==(o=t.font)?void 0:o.family)??f.font.family,height:null==(c=t.font)?void 0:c.height},className:t.className,initial:{opacity:0,scale:.95},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.95},transition:{duration:.2},$sx:t.sx,$size:t.size,$sxTypography:t.sxTypography,$maxHeight:t.maxHeight,$maxWidth:t.maxWidth,children:t.children})})}),document.body)},$=e=>{const{onFocus:t,onBlur:i,onBlurReference:s}=e,[r,a]=n.useState(!1),[l,c]=n.useState(void 0),[f,h]=n.useState(!1),{refs:d,floatingStyles:m,update:u,placement:x}=o.useFloating({open:r,placement:e.placement,middleware:[o.offset(e.offset??8),o.flip(),o.shift()],whileElementsMounted:o.autoUpdate}),p=n.useRef(null),g=n.useRef(null),$=n.useMemo(()=>e.hoverOffset??e.offset??E,[e.hoverOffset,e.offset]),w=n.useMemo(()=>e.hoverCloseDelay??y,[e.hoverCloseDelay]);n.useEffect(()=>{if(e.isDisabled)return;const t=d.reference.current;if(t){if(("click"===e.mode||"clickOpen"===e.mode)&&t instanceof HTMLElement){const i=()=>{"click"===e.mode?a(e=>!e):"clickOpen"===e.mode&&a(!0)};return t.addEventListener("click",i),()=>{t.removeEventListener("click",i)}}if("hover"===e.mode&&t instanceof HTMLElement){const e=()=>{a(!0)},i=()=>{g.current&&clearTimeout(g.current),g.current=setTimeout(()=>a(!1),w)};return t.addEventListener("mouseenter",e),t.addEventListener("mouseleave",i),()=>{t.removeEventListener("mouseenter",e),t.removeEventListener("mouseleave",i),g.current&&clearTimeout(g.current)}}}},[e.mode,d.reference,w,e.isDisabled]),n.useEffect(()=>{if(!r||!d.reference.current||!d.floating.current||e.isDisabled)return;const t=o.autoUpdate(d.reference.current,d.floating.current,u);return()=>t()},[r,d.reference,d.floating,u,e.isDisabled]),n.useEffect(()=>{if(r&&d.reference.current&&d.floating.current&&!e.isDisabled)return e.isClickOutside&&(p.current=t=>{const i=d.reference.current,n=d.floating.current,s=e.refsExcludeClickOutside||[];i instanceof HTMLElement&&n instanceof HTMLElement&&!i.contains(t.target)&&!n.contains(t.target)&&!s.some(e=>{var i;return"object"==typeof e&&null!==e&&"current"in e&&(null==(i=e.current)?void 0:i.contains(t.target))})&&a(!1)},document.addEventListener("mousedown",p.current)),()=>{p.current&&(document.removeEventListener("mousedown",p.current),p.current=null),g.current&&clearTimeout(g.current)}},[r,d.reference,d.floating,e.isClickOutside,e.isDisabled,e.refsExcludeClickOutside]),n.useEffect(()=>{if(!r||!e.isFloatingHover||!d.reference.current||!d.floating.current||e.isDisabled)return;const t=d.reference.current,i=d.floating.current,n=e=>{const n=e.clientX,s=e.clientY,r=t.getBoundingClientRect(),o=i.getBoundingClientRect(),l=n>=r.left-$&&n<=r.right+$&&s>=r.top-$&&s<=r.bottom+$,c=n>=o.left-$&&n<=o.right+$&&s>=o.top-$&&s<=o.bottom+$;l||c?g.current&&(clearTimeout(g.current),g.current=null):(g.current&&clearTimeout(g.current),g.current=setTimeout(()=>a(!1),w))};return document.addEventListener("mousemove",n),()=>{document.removeEventListener("mousemove",n),g.current&&clearTimeout(g.current)}},[r,e.isFloatingHover,d.reference,d.floating,$,w,e.isDisabled]),n.useLayoutEffect(()=>{if(!e.isWidthAsContent||!d.reference.current)return;const t=d.reference.current.getBoundingClientRect();c(t.width)},[e.isWidthAsContent,d.reference]);const z=n.useCallback(()=>{e.isDisabled||a(!0)},[e.isDisabled]),b=n.useCallback(()=>{e.isDisabled||a(!1)},[e.isDisabled]),v=n.useCallback(()=>{e.isDisabled||a(e=>!e)},[e.isDisabled]),H=n.useMemo(()=>({...m,minWidth:e.isWidthAsContent&&l?`${l}px`:void 0,maxWidth:e.isWidthAsContent&&l?`${l}px`:void 0}),[m,e.isWidthAsContent,l]);n.useEffect(()=>{r&&(null==t||t(),h(!0))},[r,t]),n.useEffect(()=>{!r&&f&&(null==i||i())},[r,f,i]),n.useEffect(()=>{if(!r||e.isDisabled)return;const t=t=>{const i=d.reference.current,n=d.floating.current,s=e.refsExcludeClickOutside||[];i instanceof HTMLElement&&i.contains(t.target)||n instanceof HTMLElement&&n.contains(t.target)||s.some(e=>!!(e&&"current"in e&&e.current&&e.current instanceof HTMLElement)&&e.current.contains(t.target))||a(!1)};return document.addEventListener("focusin",t),()=>{document.removeEventListener("focusin",t)}},[r,d.reference,d.floating,e.refsExcludeClickOutside,e.isDisabled]),n.useEffect(()=>{if(!d.reference.current||e.isDisabled||!s)return;const t=d.reference.current,i=e.refsExcludeBlur||[],n=e=>{t instanceof HTMLElement&&!t.contains(e.relatedTarget)&&!i.some(t=>{if(t&&"current"in t&&t.current&&t.current instanceof HTMLElement)return t.current.contains(e.relatedTarget)})&&s()};return t instanceof HTMLElement&&t.addEventListener("blur",n,!0),()=>{t instanceof HTMLElement&&t.removeEventListener("blur",n,!0)}},[d.reference,e.isDisabled,s,e.refsExcludeBlur]);return{getIsInside:n.useCallback(t=>{if(!t)return!1;const i=d.reference.current,n=d.floating.current,s=e.refsExcludeBlur||[];return i instanceof HTMLElement&&i.contains(t)||n instanceof HTMLElement&&n.contains(t)||s.some(e=>!!(e&&"current"in e&&e.current&&e.current instanceof HTMLElement)&&e.current.contains(t))},[d.reference,d.floating,e.refsExcludeBlur]),isOpen:r,setIsOpen:a,open:z,close:b,toggle:v,refReference:d.setReference,refFloating:d.setFloating,floatingStyles:H,placement:x}},w=s.css`
203
+ ${e=>s.css`
204
+ background: ${e.theme.colors.button[e.$genre].background.rest};
205
+ border-color: ${e.theme.colors.button[e.$genre].border.rest};
206
+ color: ${e.theme.colors.button[e.$genre].color.rest};
207
+ /* box-shadow: ${e.theme.effects.button}; */
208
+ `};
209
+ `,z=s.css`
210
+ ${e=>b({...r.KEY_SIZE_DATA[e.$size??"medium"]})};
211
+ `,b=e=>s.css`
212
+ display: flex;
213
+ border-radius: ${e.radius}px;
214
+ padding: ${e.padding}px;
215
+ gap: ${e.padding-2}px;
216
+ `,v=s(a.motion.div)`
217
+ max-width: ${e=>e.$maxWidth||"100%"};
218
+ max-height: ${e=>e.$maxHeight||"100%"};
219
+ overflow: auto;
220
+ flex-direction: column;
221
+ ${c.addFont};
222
+ ${z};
223
+ ${c.addAlwaysOutline};
224
+ ${u};
225
+ ${w};
226
+ ${f.addSX};
227
+ `,E=8,y=100,H=s(h.Stack)`
228
+ display: flex;
229
+ width: fit-content;
230
+ height: fit-content;
231
+ `,D=s.css`
232
+ ${e=>T({...r.KEY_SIZE_DATA[e.size??"medium"]})};
233
+ `,T=e=>s.css`
234
+ gap: 0px;
235
+ padding: ${e.padding}px ${e.padding}px 0px ${e.padding}px;
236
+ :after {
237
+ content: '';
238
+ display: block;
239
+ height: ${e.padding}px;
240
+ width: 100%;
241
+ }
242
+ `,j=s(g)`
243
+ ${D};
244
+ `,L=n.memo(t=>t.isDisabled?e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:t.children}):e.jsxRuntimeExports.jsx(k,{...t})),k=t=>{const{isOpen:i,refReference:n,refFloating:s,floatingStyles:r}=$({placement:t.placement??O,offset:t.offset??C,mode:t.mode??"hover",isClickOutside:t.isClickOutside??!0,isFloatingHover:t.isFloatingHover??!0,isWidthAsContent:t.isWidthAsContent??!1,hoverCloseDelay:t.hoverCloseDelay??void 0,hoverOffset:t.hoverOffset??void 0});return e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx(H,{sx:t.sx,ref:n,children:t.children}),e.jsxRuntimeExports.jsx(j,{size:t.size,isOpen:i,genre:t.genre,floatingStyles:r,ref:s,maxHeight:t.maxHeight,maxWidth:t.maxWidth,children:e.jsxRuntimeExports.jsx(R,{sx:t.sxTypography??{default:{size:14}},children:t.content})})]})};L.displayName="Tooltip";const O="bottom-start",C=8,S=i=>{const{screenActual:s}=t.useScreenWidth(),r=n.useMemo(()=>({$sxTypography:i.sx,style:i.style,className:i.className,$sx:i.sxStandard,$isDisabledOutline:i.isDisabledOutline,$isOutlineBoxShadow:i.isOutlineBoxShadow,$isReadOnly:i.isReadOnly,onClick:i.onClick?i.onClick:()=>{}}),[i.sx,i.style,i.className,i.sxStandard,i.onClick,i.isDisabledOutline,i.isOutlineBoxShadow,i.isReadOnly]),o=n.useMemo(()=>{var e,t;return(null==(e=i.sx)?void 0:e[s])??(null==(t=i.sx)?void 0:t.default)},[i.sx,s]);return o&&"variant"in o?"h7"===o.variant||"h8"===o.variant||"h9"===o.variant?e.jsxRuntimeExports.jsx(p,{ref:i.ref,as:i.isAnchor?"a":i.isParagraph?"p":(i.isSpan,"span"),href:i.href,...r,children:i.children}):e.jsxRuntimeExports.jsx(p,{ref:i.ref,as:i.isAnchor?"a":i.isParagraph?"p":i.isSpan?"span":o.variant,href:i.href,...r,children:i.children}):e.jsxRuntimeExports.jsx(p,{ref:i.ref,as:i.isAnchor?"a":i.isParagraph?"p":(i.isSpan,"span"),href:i.href,...r,children:i.children})},R=t=>e.jsxRuntimeExports.jsx(S,{...t}),A=t=>e.jsxRuntimeExports.jsx(S,{isAnchor:!0,...t,ref:t.ref,href:t.href}),M=i.createLink(A),F=n.memo(t=>{const[i,s]=n.useState(!1),r=n.useRef(null);return n.useEffect(()=>{const e=()=>{r.current&&s(r.current.scrollWidth>r.current.clientWidth)};return e(),window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[t.children]),e.jsxRuntimeExports.jsx(L,{isDisabled:!i,content:t.children,...t.tooltip,children:e.jsxRuntimeExports.jsx(S,{ref:r,...t.typography,style:{position:"relative"},children:t.children})})});F.displayName="TypographyTooltip",S.displayName="TypographyWithRef",A.displayName="TypographySizeIsAnchor",exports.DEFAULT_TOOLTIP_OFFSET_FALLBACK=C,exports.DEFAULT_TOOLTIP_PLACEMENT_FALLBACK=O,exports.Popover=g,exports.Title=p,exports.Tooltip=L,exports.TooltipBox=j,exports.TooltipContainer=H,exports.TooltipContent=k,exports.Typography=R,exports.TypographyLink=M,exports.TypographyTooltip=F,exports.addSXTypography=u,exports.addTooltipBoxSize=D,exports.addTooltipBoxSizeConstructor=T,exports.usePopover=$;
245
+ //# sourceMappingURL=component-C67KboOB.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component-C67KboOB.cjs","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":["shadowPulse","keyframes","toStyledCSS","value","css","shadow","letterSpacing","flex","cursor","overflow","line","family","weight","height","color","JeneseiPalette","align","wrap","decoration","transform","isHoverUnderlining","isNoUserSelect","size","variant","props","theme","font","sizeHeading","h1","sizeDefault","default","lineHeight","screens","tablet","width","mobile","h2","h3","h4","h5","h6","h7","h8","h9","addSXTypography","rawSX","$sxTypography","Object","entries","filter","key","map","deviceKey","screenWidth","_a","TypographyCSS","addSXStandard","Title","styled","span","addOutline","Popover","useTheme","ReactDOM","createPortal","jsx","AnimatePresence","children","isOpen","tabIndex","ref","style","position","top","left","floatingStyles","zIndex","PopoverWrapper","$isShowAlwaysOutline","isShowAlwaysOutline","$genre","genre","$font","KEY_SIZE_DATA","_b","_c","_d","className","initial","opacity","scale","animate","exit","transition","duration","$sx","sx","$size","sxTypography","$maxHeight","maxHeight","$maxWidth","maxWidth","document","body","usePopover","onFocus","onBlur","onBlurReference","setIsOpen","useState","minWidth","setMinWidth","wasEverOpen","setWasEverOpen","refs","update","placement","actualPlacement","useFloating","open","middleware","offset","flip","shift","whileElementsMounted","autoUpdate","clickOutsideHandler","useRef","hoverCloseTimeout","hoverOffset","useMemo","DEFAULT_POPOVER_OFFSET","hoverCloseDelay","DEFAULT_POPOVER_CLOSE_DELAY","useEffect","isDisabled","refEl","reference","current","mode","HTMLElement","handleClick","prev","addEventListener","removeEventListener","handleMouseEnter","handleMouseLeave","clearTimeout","setTimeout","floating","cleanup","isClickOutside","e","floatingEl","otherRefs","refsExcludeClickOutside","contains","target","some","isFloatingHover","handleMouseMove","mouseX","clientX","mouseY","clientY","refRect","getBoundingClientRect","floatingRect","isInsideRef","right","bottom","isInsideFloating","useLayoutEffect","isWidthAsContent","rect","useCallback","close","toggle","combinedStyles","handleFocusIn","refsExcludeBlur","handleBlur","relatedTarget","getIsInside","refReference","setReference","refFloating","setFloating","addPopoverGenre","colors","button","background","rest","border","effects","addPopoverSize","addPopoverSizeConstructor","radius","padding","motion","div","addFont","addAlwaysOutline","addSX","TooltipContainer","Stack","addTooltipBoxSize","addTooltipBoxSizeConstructor","TooltipBox","Tooltip","memo","Fragment","TooltipContent","DEFAULT_TOOLTIP_PLACEMENT_FALLBACK","DEFAULT_TOOLTIP_OFFSET_FALLBACK","jsxs","Typography","content","displayName","TypographyWithRef","screenActual","useScreenWidth","cssProps","sxStandard","$isDisabledOutline","isDisabledOutline","$isOutlineBoxShadow","isOutlineBoxShadow","$isReadOnly","isReadOnly","onClick","screenSX","as","isAnchor","isParagraph","isSpan","href","TypographySizeIsAnchor","TypographyLink","createLink","TypographyTooltip","isOverflowing","setIsOverflowing","contentRef","checkOverflow","scrollWidth","clientWidth","window","tooltip","typography"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- "use strict";const t=require("./jsx-runtime-BcGej2Kr.cjs"),e=require("./component-u_42PteJ.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-B1bvPlyB.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-BiNPQpCQ.cjs.map
52
+ //# sourceMappingURL=component-CY7lfJVv.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"component-BiNPQpCQ.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) => <Button id=\"jenesei-button\" key={id} {...button} />)}\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;;;;;;IAMrCC,GACoB,eAApBA,EAAMC,UAA6BP,EAAuCE;IAC1EM;sBCvD6CF,UAC/C,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,IAAOL,EAAAA,kBAAAA,IAACW,EAAAA,OAAA,CAAON,GAAG,oBAA8BK,GAARL"}
1
+ {"version":3,"file":"component-CY7lfJVv.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) => <Button id=\"jenesei-button\" key={id} {...button} />)}\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;;;;;;IAMrCC,GACoB,eAApBA,EAAMC,UAA6BP,EAAuCE;IAC1EM;sBCvD6CF,UAC/C,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,IAAOL,EAAAA,kBAAAA,IAACW,EAAAA,OAAA,CAAON,GAAG,oBAA8BK,GAARL"}
@@ -1,8 +1,8 @@
1
1
  import { j as jsxRuntimeExports } from "./jsx-runtime-BrDlu8eK.js";
2
2
  import { useRef, useCallback } from "react";
3
3
  import { ImageSupportedFormatsForInput } from "./consts.es.js";
4
- import { u as useImageCrop } from "./use-DTZ8c8_g.js";
5
- import { c as Button } from "./component-C4ULY0c6.js";
4
+ import { u as useImageCrop } from "./use-DLVWi2kS.js";
5
+ import { c as Button } from "./component-DJYgewYg.js";
6
6
  const ImageButton = (props) => {
7
7
  const refInput = useRef(null);
8
8
  const handleOpenFileDialog = useCallback(() => {
@@ -47,4 +47,4 @@ const ImageButton = (props) => {
47
47
  export {
48
48
  ImageButton as I
49
49
  };
50
- //# sourceMappingURL=component-DfxlJBGv.js.map
50
+ //# sourceMappingURL=component-CvW0MIM8.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"component-DfxlJBGv.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,CAAA,UAAS;AACxD,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,CAAA,MAAK;;AACZ,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,CAAA,MAAK;AACb,cAAI,EAAE,OAAO,MAAO,gBAAe,EAAE,OAAO,KAAK;AAAA,QAAA;AAAA,MACnD;AAAA,IAAA;AAAA,EACF,GACF;AAEJ;"}
1
+ {"version":3,"file":"component-CvW0MIM8.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,CAAA,UAAS;AACxD,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,CAAA,MAAK;;AACZ,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,CAAA,MAAK;AACb,cAAI,EAAE,OAAO,MAAO,gBAAe,EAAE,OAAO,KAAK;AAAA,QAAA;AAAA,MACnD;AAAA,IAAA;AAAA,EACF,GACF;AAEJ;"}
@@ -1,14 +1,15 @@
1
1
  import { j as jsxRuntimeExports } from "./jsx-runtime-BrDlu8eK.js";
2
- import { I as Icon } from "./component.styles-Bm3Ec-Kd.js";
2
+ import { I as Icon } from "./component.styles-DS0ofW1Y.js";
3
3
  import { d as addRippleDefault } from "./component.styles-B0L4jbOO.js";
4
4
  import { R as Ripple } from "./component-DHM9pbab.js";
5
- import { g as getFontSizeStyles, h as addSXTypography, m as useMergeRefs } from "./component-BoHvC24Q.js";
5
+ import { K as KEY_SIZE_DATA } from "./theme.global-BgERDJ4e.js";
6
+ import { u as useMergeRefs } from "./floating-ui.react-Byi6bLb1.js";
6
7
  import { useMemo, useRef } from "react";
7
8
  import styled, { css, useTheme } from "styled-components";
8
- import { motion } from "framer-motion";
9
- import { b as addTransition, f as addOutline } from "./style-BgcnmVAY.js";
9
+ import { g as addSXTypography } from "./component-DKMsOpqH.js";
10
+ import { b as addTransition, c as addFont, g as addOutline } from "./style-RL73t3JD.js";
10
11
  import { a as addSX } from "./style-plT9Ah7t.js";
11
- import { K as KEY_SIZE_DATA } from "./theme.global-CFUz5Asg.js";
12
+ import { motion } from "framer-motion";
12
13
  const ButtonGenre = css`
13
14
  ${(props) => css`
14
15
  background: ${props.theme.colors.button[props.$genre].background.rest};
@@ -72,7 +73,6 @@ const ButtonSizeConstructor = (props) => css`
72
73
  padding: 2px ${props.padding}px;
73
74
  border-radius: ${props.radius}px;
74
75
  gap: ${props.padding - 2}px;
75
- ${(params) => getFontSizeStyles(props.font, 700, params.theme.font.family)};
76
76
  ${() => props.isFullSize && css`
77
77
  height: 100%;
78
78
  width: 100%;
@@ -109,16 +109,18 @@ const StyledButton = styled(motion.button)`
109
109
  ${ButtonFlex};
110
110
  ${addRippleDefault};
111
111
  ${addTransition};
112
+ ${addFont};
112
113
  ${addOutline};
113
114
  ${addSXTypography};
114
115
  ${addSX};
115
116
  `;
116
117
  const Button = (props) => {
118
+ var _a, _b, _c, _d;
117
119
  const theme = useTheme();
118
120
  const iconComponents = useMemo(
119
121
  () => {
120
- var _a, _b;
121
- return (_b = (_a = props.icons ?? []) == null ? void 0 : _a.filter((icon) => !icon.isHidden)) == null ? void 0 : _b.map(
122
+ var _a2, _b2;
123
+ return (_b2 = (_a2 = props.icons ?? []) == null ? void 0 : _a2.filter((icon) => !icon.isHidden)) == null ? void 0 : _b2.map(
122
124
  (icon, index) => (icon == null ? void 0 : icon.type) === "id" ? /* @__PURE__ */ jsxRuntimeExports.jsx(
123
125
  Icon,
124
126
  {
@@ -194,6 +196,12 @@ const Button = (props) => {
194
196
  return /* @__PURE__ */ jsxRuntimeExports.jsxs(
195
197
  StyledButton,
196
198
  {
199
+ $font: {
200
+ size: ((_a = props.font) == null ? void 0 : _a.size) ?? KEY_SIZE_DATA[props.size].font,
201
+ weight: ((_b = props.font) == null ? void 0 : _b.weight) ?? 700,
202
+ family: ((_c = props.font) == null ? void 0 : _c.family) ?? theme.font.family,
203
+ height: (_d = props.font) == null ? void 0 : _d.height
204
+ },
197
205
  $isNotHoverEffect: props.isNotHoverEffect,
198
206
  whileTap: props.isWhileTapEffect ? { scale: 0.9, transition: { duration: 0.01 } } : {},
199
207
  id: props.id,
@@ -202,6 +210,9 @@ const Button = (props) => {
202
210
  $genre: props.genre,
203
211
  $size: props.size,
204
212
  $isDisabled: props.isDisabled,
213
+ $isDisabledOutline: props.isDisabled ?? props.isDisabledOutline,
214
+ $isOutlineBoxShadow: props.isOutlineBoxShadow,
215
+ $isReadOnly: props.isReadOnly,
205
216
  $isMinWidthAsContent: props.isMinWidthAsContent,
206
217
  $isWidthAsHeight: props.isWidthAsHeight,
207
218
  $isRadius: props.isRadius,
@@ -247,4 +258,4 @@ export {
247
258
  StyledButton as b,
248
259
  Button as c
249
260
  };
250
- //# sourceMappingURL=component-C4ULY0c6.js.map
261
+ //# sourceMappingURL=component-DJYgewYg.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component-DJYgewYg.js","sources":["../src/components/button/component.styles.ts","../src/components/button/component.tsx"],"sourcesContent":["import { addRippleDefault } from '@local/components/ripple';\nimport { addSXTypography } from '@local/components/typography';\nimport { addFont, addOutline, addTransition } 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 { StyledDollarButtonIconsWrapperProps, StyledDollarButtonProps } from '.';\n\n/****************************************** Genre *************************************************/\nconst ButtonGenre = css<StyledDollarButtonProps>`\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 &:hover {\n ${\n (!props.$isHidden || props.$isNotHoverEffect) &&\n css`\n background: ${props.theme.colors.button[props.$genre].background.hover};\n border-color: ${props.theme.colors.button[props.$genre].border.hover};\n color: ${props.theme.colors.button[props.$genre].color.hover};\n `\n }\n }\n `};\n`;\n\n/****************************************** Disabled *************************************************/\nconst ButtonDisabled = css<StyledDollarButtonProps>`\n ${(props) =>\n props.$isHidden\n ? css`\n opacity: 0.5;\n background: ${props.theme.colors.button[props.$genre].background.rest} !important;\n color: ${props.theme.colors.button[props.$genre].color.rest} !important;\n `\n : css`\n opacity: 1;\n `}\n`;\n/****************************************** is HiddenBorder *************************************************/\nconst ButtonIsHiddenBorder = css<StyledDollarButtonProps>`\n ${(props) =>\n props.$isHiddenBorder &&\n css`\n border: 0px transparent !important;\n `}\n`;\n/****************************************** is Radius *************************************************/\nconst ButtonIsRadius = css<StyledDollarButtonProps>`\n ${(props) =>\n props.$isRadius &&\n css`\n border-radius: 100px;\n `}\n`;\n/****************************************** is PlaystationEffect *************************************************/\nconst ButtonIsPlaystationEffect = css<StyledDollarButtonProps>`\n ${(props) =>\n props.$isPlaystationEffect &&\n css`\n box-shadow: ${props.theme.effects.button};\n `}\n`;\n/****************************************** Icons Wrapper *************************************************/\nexport const StyledButtonIconsWrapper = styled.div<StyledDollarButtonIconsWrapperProps>`\n ${(props) =>\n props.$isIconGroup\n ? css`\n display: flex;\n gap: ${KEY_SIZE_DATA[props.$size].padding - 2}px;\n align-items: center;\n order: ${props.$iconGroupOrder || 'initial'};\n `\n : css`\n display: contents;\n `}\n`;\n\n/****************************************** Size *************************************************/\nexport const ButtonSize = css<StyledDollarButtonProps>`\n ${(props) =>\n ButtonSizeConstructor({\n ...KEY_SIZE_DATA[props.$size],\n isFullSize: props.$isFullSize,\n isWidthAsHeight: props.$isWidthAsHeight,\n isMinWidthAsContent: props.$isMinWidthAsContent,\n })};\n`;\nexport const ButtonSizeConstructor = (\n props: IThemeSizePropertyDefault & {\n isFullSize?: boolean;\n isWidthAsHeight?: boolean;\n isMinWidthAsContent?: boolean;\n },\n) => css`\n height: fit-content;\n min-height: ${props.height}px;\n max-height: fit-content;\n padding: 2px ${props.padding}px;\n border-radius: ${props.radius}px;\n gap: ${props.padding - 2}px;\n ${() =>\n props.isFullSize &&\n css`\n height: 100%;\n width: 100%;\n border-radius: 0px;\n `};\n ${\n props.isWidthAsHeight &&\n css`\n width: ${props.height}px;\n min-width: ${props.height}px;\n padding: 0px;\n `\n };\n ${\n props.isMinWidthAsContent &&\n css`\n min-width: max-content;\n `\n };\n`;\n/****************************************** Border *************************************************/\nconst ButtonBorder = css`\n border: 1px solid transparent;\n`;\n\n/****************************************** Flex *************************************************/\nconst ButtonFlex = css<StyledDollarButtonProps>`\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n/****************************************** Styled *************************************************/\nexport const StyledButton = styled(motion.button)<StyledDollarButtonProps>`\n cursor: pointer;\n user-select: none;\n\n ${ButtonBorder};\n ${ButtonSize};\n ${ButtonGenre};\n ${ButtonDisabled};\n ${ButtonIsHiddenBorder};\n ${ButtonIsRadius};\n ${ButtonIsPlaystationEffect};\n ${ButtonFlex};\n ${addRippleDefault};\n ${addTransition};\n ${addFont};\n ${addOutline};\n ${addSXTypography};\n ${addSX};\n`;\n","import {\n Icon,\n TIconBustMarketNameString,\n TIconCheckboxNameString,\n TIconIdNameString,\n TIconLoadingNameString,\n TIconLogoNameString,\n TIconRealEbailNameString,\n} from '@local/components/icon';\nimport { Ripple } from '@local/components/ripple';\nimport { KEY_SIZE_DATA } from '@local/theme';\n\nimport { useMergeRefs } from '@floating-ui/react';\nimport { FC, Ref, useMemo, useRef } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport { ButtonProps, StyledButton, StyledButtonIconsWrapper } from '.';\n\nexport const Button: FC<ButtonProps> = (props) => {\n const theme = useTheme();\n\n const iconComponents = useMemo(\n () =>\n (props.icons ?? [])\n ?.filter((icon) => !icon.isHidden)\n ?.map((icon, index) =>\n icon?.type === 'id' ? (\n <Icon\n key={`${icon.type}-${icon.name}-${index}`}\n name={icon?.name as TIconIdNameString}\n type='id'\n size={icon?.size ?? props.size}\n turn={icon.turn}\n order={icon.order}\n />\n ) : icon?.type === 'logo' ? (\n <Icon\n key={`${icon.type}-${icon.name}-${index}`}\n name={icon?.name as TIconLogoNameString}\n type='logo'\n size={icon?.size ?? props.size}\n turn={icon.turn}\n order={icon.order}\n />\n ) : icon?.type === 'bustmarket' ? (\n <Icon\n key={`${icon.type}-${icon.name}-${index}`}\n name={icon?.name as TIconBustMarketNameString}\n type='bustmarket'\n size={icon?.size ?? props.size}\n turn={icon.turn}\n order={icon.order}\n />\n ) : icon?.type === 'checkbox' ? (\n <Icon\n key={`${icon.type}-${icon.name}-${index}`}\n name={icon?.name as TIconCheckboxNameString}\n type='checkbox'\n size={icon?.size ?? props.size}\n turn={icon.turn}\n order={icon.order}\n />\n ) : icon?.type === 'loading' ? (\n <Icon\n key={`${icon.type}-${icon.name}-${index}`}\n name={icon?.name as TIconLoadingNameString}\n type='loading'\n size={icon?.size ?? props.size}\n turn={icon.turn}\n order={icon.order}\n />\n ) : icon?.type === 'realebail' ? (\n <Icon\n key={`${icon.type}-${icon.name}-${index}`}\n name={icon?.name as TIconRealEbailNameString}\n type='realebail'\n size={icon?.size ?? props.size}\n turn={icon.turn}\n order={icon.order}\n />\n ) : null,\n ),\n [props.icons, props.size],\n );\n\n const handleClick: ButtonProps['onClick'] = (event) => {\n if (!props.isDisabled && props.onClick) {\n props.onClick(event);\n }\n };\n const refDefault = useRef<HTMLButtonElement>(null);\n\n const ref = useMergeRefs([refDefault, props.ref]);\n\n return (\n <StyledButton\n $font={{\n size: props.font?.size ?? KEY_SIZE_DATA[props.size].font,\n weight: props.font?.weight ?? 700,\n family: props.font?.family ?? theme.font.family,\n height: props.font?.height,\n }}\n $isNotHoverEffect={props.isNotHoverEffect}\n whileTap={props.isWhileTapEffect ? { scale: 0.9, transition: { duration: 0.01 } } : {}}\n id={props.id}\n tabIndex={props.tabIndex ?? 0}\n $isFullSize={props.isFullSize}\n $genre={props.genre}\n $size={props.size}\n $isDisabled={props.isDisabled}\n $isDisabledOutline={props.isDisabled ?? props.isDisabledOutline}\n $isOutlineBoxShadow={props.isOutlineBoxShadow}\n $isReadOnly={props.isReadOnly}\n $isMinWidthAsContent={props.isMinWidthAsContent}\n $isWidthAsHeight={props.isWidthAsHeight}\n $isRadius={props.isRadius}\n $isHidden={props.isHidden}\n $isPlaystationEffect={props.isPlaystationEffect}\n $sxTypography={props.sxTypography}\n $isHiddenBorder={props.isHiddenBorder || props.isPlaystationEffect}\n disabled={props.isDisabled}\n type={props.type ?? 'button'}\n className={props.className}\n onClick={handleClick}\n onFocus={props.onFocus}\n onMouseDown={props.onMouseDown}\n ref={ref as Ref<HTMLButtonElement>}\n $sx={props.sx}\n >\n <Ripple\n color={theme.colors.checkbox[props.genre].color.rest}\n isDisabled={props.isDisabled ?? props.isDisabledRipple}\n isHidden={props.isHidden}\n />\n\n {!props.isOnlyIcon && <div style={{ order: 0, display: 'contents' }}>{props.children && props.children}</div>}\n <StyledButtonIconsWrapper\n $size={props.size}\n $isIconGroup={props.isIconGroup}\n $iconGroupOrder={'iconGroupOrder' in props ? props.iconGroupOrder : undefined}\n >\n {iconComponents}\n </StyledButtonIconsWrapper>\n </StyledButton>\n );\n};\n"],"names":["_b","_a","jsx","jsxs"],"mappings":"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"}