@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
@@ -1 +1 @@
1
- {"version":3,"file":"component.styles-Bm3Ec-Kd.js","sources":["../src/components/icon/component.tsx","../src/components/icon/component.styles.ts"],"sourcesContent":["import { JeneseiPalette } from '@local/theme/theme';\n\nimport { useMemo } from 'react';\n\nimport IconBustMarketJSON from './component-bustmarket.json';\nimport IconCheckboxJSON from './component-checkbox.json';\nimport IconIdJSON from './component-id.json';\nimport IconLoadingJSON from './component-loading.json';\nimport IconLogoJSON from './component-logo.json';\nimport IconRealEbailJSON from './component-realebail.json';\nimport {\n IconItemProps,\n IconTypeMap,\n StyledSVG,\n TIconBustMarketNameString,\n TIconCheckboxNameString,\n TIconIdNameString,\n TIconLoadingNameString,\n TIconLogoNameString,\n TIconRealEbailNameString,\n} from '.';\n\nexport const Icon = <T extends keyof IconTypeMap>(props: IconItemProps<T>) => {\n const icon = useMemo(() => {\n let icon = null;\n\n switch (props.type) {\n case 'id':\n icon = IconIdJSON[props.name as TIconIdNameString];\n break;\n case 'bustmarket':\n icon = IconBustMarketJSON[props.name as TIconBustMarketNameString];\n break;\n case 'realebail':\n icon = IconRealEbailJSON[props.name as TIconRealEbailNameString];\n break;\n case 'logo':\n icon = IconLogoJSON[props.name as TIconLogoNameString];\n break;\n case 'checkbox':\n icon = IconCheckboxJSON[props.name as TIconCheckboxNameString];\n break;\n case 'loading':\n icon = IconLoadingJSON[props.name as TIconLoadingNameString];\n break;\n }\n return icon;\n }, [props.name, props.type]);\n\n const primaryColor = props.primaryColor ? JeneseiPalette[props.primaryColor] : 'currentColor';\n const secondColor = props.secondColor ? JeneseiPalette[props.secondColor] : 'currentColor';\n\n if (!icon) {\n console.warn(`Icon ${props.name} not found in the library.`);\n return null;\n }\n\n const getFillColor = (fillType?: string): string | undefined => {\n if (fillType === 'primaryColor') return primaryColor;\n if (fillType === 'secondColor') return secondColor;\n return 'currentColor';\n };\n\n const contentPaths =\n (props.type == 'id' || props.type === 'checkbox' || props.type === 'realebail' || props.type === 'logo') &&\n typeof icon === 'object' &&\n 'paths' in icon\n ? (icon.paths ?? []).map((path, index) => (\n <path\n key={`${props.type}-${props.name}-path-${index}`}\n id={'id' in path ? (path.id as string) : undefined}\n d={path.d}\n clipRule='evenodd'\n fillRule='evenodd'\n fill={'fill' in path ? getFillColor(path.fill as string) : 'currentColor'}\n />\n ))\n : null;\n\n const isFull = props.type === 'loading' || props.type === 'bustmarket' ? (icon as string) : null;\n\n return (\n <StyledSVG\n width='24'\n height='24'\n viewBox='0 0 24 24'\n xmlns='http://www.w3.org/2000/svg'\n $size={props.size}\n $turn={props.turn}\n $order={props.order}\n $color={props.primaryColor || undefined}\n $sx={props.sx}\n className={props.className}\n onClick={props.onClick}\n tabIndex={props.tabIndex}\n dangerouslySetInnerHTML={isFull ? { __html: isFull } : undefined}\n >\n {contentPaths}\n </StyledSVG>\n );\n};\n","import styled, { css } from 'styled-components'\n\nimport { addColorTransition } from '@local/styles/add'\nimport { addSX } from '@local/styles/sx'\nimport { KEY_SIZE_DATA } from '@local/theme'\n\nimport { StyledIconIdItemProps } from '.'\n\nexport const StyledSVG = styled.svg<StyledIconIdItemProps>`\n color: ${props => (props.$color ? props.theme.palette[props.$color] : 'inherit')};\n\n ${props => css`\n height: ${props.$size !== '100%' ? `${KEY_SIZE_DATA[props.$size].heightIcon}px` : '100%'};\n min-height: ${props.$size !== '100%' ? `${KEY_SIZE_DATA[props.$size].heightIcon}px` : '100%'};\n\n width: ${props.$size !== '100%' ? `${KEY_SIZE_DATA[props.$size].heightIcon}px` : '100%'};\n min-width: ${props.$size !== '100%' ? `${KEY_SIZE_DATA[props.$size].heightIcon}px` : '100%'};\n\n transform: rotate(${props.$turn || 0}deg);\n `}\n ${props =>\n props.$order !== undefined &&\n css`\n order: ${props.$order};\n `};\n ${addColorTransition};\n & path {\n ${addColorTransition};\n }\n ${addSX};\n`\n"],"names":["icon","jsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
1
+ {"version":3,"file":"component.styles-DS0ofW1Y.js","sources":["../src/components/icon/component.tsx","../src/components/icon/component.styles.ts"],"sourcesContent":["import { JeneseiPalette } from '@local/theme/theme';\n\nimport { useMemo } from 'react';\n\nimport IconBustMarketJSON from './component-bustmarket.json';\nimport IconCheckboxJSON from './component-checkbox.json';\nimport IconIdJSON from './component-id.json';\nimport IconLoadingJSON from './component-loading.json';\nimport IconLogoJSON from './component-logo.json';\nimport IconRealEbailJSON from './component-realebail.json';\nimport {\n IconItemProps,\n IconTypeMap,\n StyledSVG,\n TIconBustMarketNameString,\n TIconCheckboxNameString,\n TIconIdNameString,\n TIconLoadingNameString,\n TIconLogoNameString,\n TIconRealEbailNameString,\n} from '.';\n\nexport const Icon = <T extends keyof IconTypeMap>(props: IconItemProps<T>) => {\n const icon = useMemo(() => {\n let icon = null;\n\n switch (props.type) {\n case 'id':\n icon = IconIdJSON[props.name as TIconIdNameString];\n break;\n case 'bustmarket':\n icon = IconBustMarketJSON[props.name as TIconBustMarketNameString];\n break;\n case 'realebail':\n icon = IconRealEbailJSON[props.name as TIconRealEbailNameString];\n break;\n case 'logo':\n icon = IconLogoJSON[props.name as TIconLogoNameString];\n break;\n case 'checkbox':\n icon = IconCheckboxJSON[props.name as TIconCheckboxNameString];\n break;\n case 'loading':\n icon = IconLoadingJSON[props.name as TIconLoadingNameString];\n break;\n }\n return icon;\n }, [props.name, props.type]);\n\n const primaryColor = props.primaryColor ? JeneseiPalette[props.primaryColor] : 'currentColor';\n const secondColor = props.secondColor ? JeneseiPalette[props.secondColor] : 'currentColor';\n\n if (!icon) {\n console.warn(`Icon ${props.name} not found in the library.`);\n return null;\n }\n\n const getFillColor = (fillType?: string): string | undefined => {\n if (fillType === 'primaryColor') return primaryColor;\n if (fillType === 'secondColor') return secondColor;\n return 'currentColor';\n };\n\n const contentPaths =\n (props.type == 'id' || props.type === 'checkbox' || props.type === 'realebail' || props.type === 'logo') &&\n typeof icon === 'object' &&\n 'paths' in icon\n ? (icon.paths ?? []).map((path, index) => (\n <path\n key={`${props.type}-${props.name}-path-${index}`}\n id={'id' in path ? (path.id as string) : undefined}\n d={path.d}\n clipRule='evenodd'\n fillRule='evenodd'\n fill={'fill' in path ? getFillColor(path.fill as string) : 'currentColor'}\n />\n ))\n : null;\n\n const isFull = props.type === 'loading' || props.type === 'bustmarket' ? (icon as string) : null;\n\n return (\n <StyledSVG\n width='24'\n height='24'\n viewBox='0 0 24 24'\n xmlns='http://www.w3.org/2000/svg'\n $size={props.size}\n $turn={props.turn}\n $order={props.order}\n $color={props.primaryColor || undefined}\n $sx={props.sx}\n className={props.className}\n onClick={props.onClick}\n tabIndex={props.tabIndex}\n dangerouslySetInnerHTML={isFull ? { __html: isFull } : undefined}\n >\n {contentPaths}\n </StyledSVG>\n );\n};\n","import styled, { css } from 'styled-components'\n\nimport { addColorTransition } from '@local/styles/add'\nimport { addSX } from '@local/styles/sx'\nimport { KEY_SIZE_DATA } from '@local/theme'\n\nimport { StyledIconIdItemProps } from '.'\n\nexport const StyledSVG = styled.svg<StyledIconIdItemProps>`\n color: ${props => (props.$color ? props.theme.palette[props.$color] : 'inherit')};\n\n ${props => css`\n height: ${props.$size !== '100%' ? `${KEY_SIZE_DATA[props.$size].heightIcon}px` : '100%'};\n min-height: ${props.$size !== '100%' ? `${KEY_SIZE_DATA[props.$size].heightIcon}px` : '100%'};\n\n width: ${props.$size !== '100%' ? `${KEY_SIZE_DATA[props.$size].heightIcon}px` : '100%'};\n min-width: ${props.$size !== '100%' ? `${KEY_SIZE_DATA[props.$size].heightIcon}px` : '100%'};\n\n transform: rotate(${props.$turn || 0}deg);\n `}\n ${props =>\n props.$order !== undefined &&\n css`\n order: ${props.$order};\n `};\n ${addColorTransition};\n & path {\n ${addColorTransition};\n }\n ${addSX};\n`\n"],"names":["icon","jsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
@@ -0,0 +1,21 @@
1
+ "use strict";const e=require("./jsx-runtime-BcGej2Kr.cjs"),i=require("./component.styles-BpvpyZax.cjs"),l=require("./theme.global-CcoD5bPP.cjs"),o=require("react"),s=require("styled-components"),n=require("./style-Df37KnoJ.cjs"),t=require("./style-fRZ6xrVp.cjs"),r=s.css`
2
+ ${e=>d(l.KEY_SIZE_DATA[e.$size])};
3
+ `,d=e=>s.css`
4
+ gap: ${e.padding-2}px;
5
+ `,c=s.div`
6
+ display: flex;
7
+ flex-direction: column;
8
+ align-items: stretch;
9
+ ${r};
10
+ ${n.addFont};
11
+ ${t.addSX};
12
+ `,u=s.div`
13
+ display: flex;
14
+ flex-direction: row;
15
+ align-items: center;
16
+ `,a=s.div`
17
+ user-select: none;
18
+ `,x=s.div`
19
+ user-select: none;
20
+ `;exports.CheckboxChildren=x,exports.CheckboxGroup=n=>{var t,r,d,h;const p=o.useCallback(e=>{const i=n.value.some(i=>i[n.valueField]===e[n.valueField])?n.value.filter(i=>i[n.valueField]!==e[n.valueField]):n.multiple?[...n.value,e]:[e];n.onChange&&n.onChange(i)},[n]),v=s.useTheme();return e.jsxRuntimeExports.jsx(c,{className:n.className,$sx:n.sx,$size:n.size,$font:{size:(null==(t=n.font)?void 0:t.size)??l.KEY_SIZE_DATA[n.size].font,weight:(null==(r=n.font)?void 0:r.weight)??700,family:(null==(d=n.font)?void 0:d.family)??v.font.family,height:null==(h=n.font)?void 0:h.height},children:n.options.map((o,s)=>{var t,r,d,c;const h=n.value.some(e=>e[n.valueField]===o[n.valueField]);return e.jsxRuntimeExports.jsxs(u,{onClick:()=>!n.isClickOnlyIcon&&p(o),children:[e.jsxRuntimeExports.jsx(i.Checkbox,{genre:n.checkboxGenre,isHiddenBorder:n.checkboxIsHiddenBorder,view:n.checkBoxView,sx:n.checkboxSX,size:n.size,checked:h,font:{size:(null==(t=n.font)?void 0:t.size)??l.KEY_SIZE_DATA[n.size].font,weight:(null==(r=n.font)?void 0:r.weight)??700,family:(null==(d=n.font)?void 0:d.family)??v.font.family,height:null==(c=n.font)?void 0:c.height},children:n.labelField&&void 0!==(null==o?void 0:o[n.labelField])&&e.jsxRuntimeExports.jsx(a,{dangerouslySetInnerHTML:(m=o[n.labelField],{__html:m})})}),n.childrenField&&void 0!==(null==o?void 0:o[n.childrenField])&&e.jsxRuntimeExports.jsx(x,{children:o[n.childrenField]})]},s);var m})})},exports.CheckboxGroupItem=u,exports.CheckboxGroupLabel=a,exports.CheckboxGroupSize=r,exports.CheckboxGroupSizeConstructor=d,exports.CheckboxGroupWrapper=c;
21
+ //# sourceMappingURL=component.styles-DWGUgUoF.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component.styles-DWGUgUoF.cjs","sources":["../src/components/checkbox-group/component.styles.ts","../src/components/checkbox-group/component.tsx"],"sourcesContent":["import { addFont } from '@local/styles/add';\nimport { addSX } from '@local/styles/sx';\nimport { IThemeSizePropertyDefault, KEY_SIZE_DATA } from '@local/theme';\n\nimport styled, { css } from 'styled-components';\n\nimport { CheckboxGroupWrapperProps } from '.';\n\n/****************************************** Size *************************************************/\nexport const CheckboxGroupSize = css<CheckboxGroupWrapperProps>`\n ${(props) => CheckboxGroupSizeConstructor(KEY_SIZE_DATA[props.$size])};\n`;\nexport const CheckboxGroupSizeConstructor = (props: IThemeSizePropertyDefault) => css`\n gap: ${props.padding - 2}px;\n`;\n\n/****************************************** Default *************************************************/\nexport const CheckboxGroupWrapper = styled.div<CheckboxGroupWrapperProps>`\n display: flex;\n flex-direction: column;\n align-items: stretch;\n ${CheckboxGroupSize};\n ${addFont};\n ${addSX};\n`;\n\nexport const CheckboxGroupItem = styled.div`\n display: flex;\n flex-direction: row;\n align-items: center;\n`;\n\nexport const CheckboxGroupLabel = styled.div`\n user-select: none;\n`;\n\nexport const CheckboxChildren = styled.div`\n user-select: none;\n`;\n","import { Checkbox } from '@local/components/checkbox';\nimport { KEY_SIZE_DATA } from '@local/theme';\n\nimport { ReactNode, useCallback } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport {\n CheckboxChildren,\n CheckboxGroupItem,\n CheckboxGroupLabel,\n CheckboxGroupProps,\n CheckboxGroupWrapper,\n ICheckboxValue,\n} from '.';\n\nexport const CheckboxGroup = <T extends ICheckboxValue>(props: CheckboxGroupProps<T>) => {\n const createMarkup = (html: string) => ({ __html: html });\n\n const handleCheckboxChange = useCallback(\n (item: T) => {\n const isSelected = props.value.some((selectedItem) => selectedItem[props.valueField] === item[props.valueField]);\n\n const updatedSelectedItems = isSelected\n ? props.value.filter((selectedItem) => selectedItem[props.valueField] !== item[props.valueField])\n : props.multiple\n ? [...props.value, item]\n : [item];\n if (props.onChange) props.onChange(updatedSelectedItems);\n },\n [props],\n );\n\n const theme = useTheme();\n return (\n <CheckboxGroupWrapper\n className={props.className}\n $sx={props.sx}\n $size={props.size}\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 >\n {props.options.map((e, index) => {\n const isChecked = props.value.some((selectedItem) => selectedItem[props.valueField] === e[props.valueField]);\n return (\n <CheckboxGroupItem key={index} onClick={() => !props.isClickOnlyIcon && handleCheckboxChange(e)}>\n <Checkbox\n genre={props.checkboxGenre}\n isHiddenBorder={props.checkboxIsHiddenBorder}\n view={props.checkBoxView}\n sx={props.checkboxSX}\n size={props.size}\n checked={isChecked}\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 >\n {props.labelField && e?.[props.labelField] !== undefined && (\n <CheckboxGroupLabel dangerouslySetInnerHTML={createMarkup(e[props.labelField] as string)} />\n )}\n </Checkbox>\n {props.childrenField && e?.[props.childrenField] !== undefined && (\n <CheckboxChildren>{e[props.childrenField] as ReactNode}</CheckboxChildren>\n )}\n </CheckboxGroupItem>\n );\n })}\n </CheckboxGroupWrapper>\n );\n};\n"],"names":["CheckboxGroupSize","css","props","CheckboxGroupSizeConstructor","KEY_SIZE_DATA","$size","padding","CheckboxGroupWrapper","styled","div","addFont","addSX","CheckboxGroupItem","CheckboxGroupLabel","CheckboxChildren","handleCheckboxChange","useCallback","item","updatedSelectedItems","value","some","selectedItem","valueField","filter","multiple","onChange","theme","useTheme","jsx","className","$sx","sx","size","$font","_a","font","weight","_b","family","_c","height","_d","children","options","map","e","index","isChecked","jsxs","onClick","isClickOnlyIcon","Checkbox","genre","checkboxGenre","isHiddenBorder","checkboxIsHiddenBorder","view","checkBoxView","checkboxSX","checked","labelField","dangerouslySetInnerHTML","html","__html","childrenField"],"mappings":"uQASaA,EAAoBC,EAAAA,GAAAA;IAC5BC,GAAUC,EAA6BC,EAAAA,cAAcF,EAAMG;EAEnDF,EAAgCD,GAAqCD,EAAAA,GAAAA;SACzEC,EAAMI,QAAU;EAIZC,EAAuBC,EAAOC,GAAA;;;;IAIvCT;IACAU;IACAC;EAGSC,EAAoBJ,EAAOC,GAAA;;;;EAM3BI,EAAqBL,EAAOC,GAAA;;EAI5BK,EAAmBN,EAAOC,GAAA;;mDCrBiBP,gBACtD,MAEMa,EAAuBC,EAAAA,YAC1BC,IACC,MAEMC,EAFahB,EAAMiB,MAAMC,KAAMC,GAAiBA,EAAanB,EAAMoB,cAAgBL,EAAKf,EAAMoB,aAGhGpB,EAAMiB,MAAMI,OAAQF,GAAiBA,EAAanB,EAAMoB,cAAgBL,EAAKf,EAAMoB,aACnFpB,EAAMsB,SACJ,IAAItB,EAAMiB,MAAOF,GACjB,CAACA,GACHf,EAAMuB,UAAUvB,EAAMuB,SAASP,IAErC,CAAChB,IAGGwB,EAAQC,EAAAA,WACd,SACEC,kBAAAA,IAACrB,EAAA,CACCsB,UAAW3B,EAAM2B,UACjBC,IAAK5B,EAAM6B,GACX1B,MAAOH,EAAM8B,KACbC,MAAO,CACLD,MAAM,OAAAE,IAAMC,WAAN,EAAAD,EAAYF,OAAQ5B,EAAAA,cAAcF,EAAM8B,MAAMG,KACpDC,QAAQ,OAAAC,EAAAnC,EAAMiC,WAAN,EAAAE,EAAYD,SAAU,IAC9BE,QAAQ,OAAAC,EAAArC,EAAMiC,WAAN,EAAAI,EAAYD,SAAUZ,EAAMS,KAAKG,OACzCE,OAAQ,OAAAC,EAAAvC,EAAMiC,WAAN,EAAAM,EAAYD,QAGrBE,SAAAxC,EAAMyC,QAAQC,IAAI,CAACC,EAAGC,iBACrB,MAAMC,EAAY7C,EAAMiB,MAAMC,KAAMC,GAAiBA,EAAanB,EAAMoB,cAAgBuB,EAAE3C,EAAMoB,aAChG,OACE0B,yBAACpC,GAA8BqC,QAAS,KAAO/C,EAAMgD,iBAAmBnC,EAAqB8B,GAC3FH,SAAA,GAAAd,kBAAAA,IAACuB,EAAAA,SAAA,CACCC,MAAOlD,EAAMmD,cACbC,eAAgBpD,EAAMqD,uBACtBC,KAAMtD,EAAMuD,aACZ1B,GAAI7B,EAAMwD,WACV1B,KAAM9B,EAAM8B,KACZ2B,QAASZ,EACTZ,KAAM,CACJH,MAAM,OAAAE,EAAAhC,EAAMiC,WAAN,EAAAD,EAAYF,OAAQ5B,EAAAA,cAAcF,EAAM8B,MAAMG,KACpDC,QAAQ,OAAAC,EAAAnC,EAAMiC,WAAN,EAAAE,EAAYD,SAAU,IAC9BE,QAAQ,OAAAC,EAAArC,EAAMiC,aAANI,EAAYD,SAAUZ,EAAMS,KAAKG,OACzCE,OAAQ,OAAAC,EAAAvC,EAAMiC,aAANM,EAAYD,QAGrBE,SAAAxC,EAAM0D,iBAAwC,WAA1Bf,WAAI3C,EAAM0D,cAC7BhC,EAAAA,kBAAAA,IAACf,EAAA,CAAmBgD,yBAhDZC,EAgDkDjB,EAAE3C,EAAM0D,YAhD1D,CAAoBG,OAAQD,QAmDvC5D,EAAM8D,oBAA8C,KAA7B,MAAAnB,OAAA,EAAAA,EAAI3C,EAAM8D,iBAChCpC,wBAACd,EAAA,CAAkB4B,SAAAG,EAAE3C,EAAM8D,mBApBPlB,GAhCX,IAACgB"}
@@ -2,8 +2,8 @@ import { j as jsxRuntimeExports } from "./jsx-runtime-BrDlu8eK.js";
2
2
  import { useCallback } from "react";
3
3
  import { b as Stack } from "./component-jPZYT5iL.js";
4
4
  import styled, { css } from "styled-components";
5
- import { I as Icon } from "./component.styles-Bm3Ec-Kd.js";
6
- import { b as addTransition } from "./style-BgcnmVAY.js";
5
+ import { I as Icon } from "./component.styles-DS0ofW1Y.js";
6
+ import { b as addTransition } from "./style-RL73t3JD.js";
7
7
  const Accordion = (props) => {
8
8
  const onClickSummary = useCallback(() => {
9
9
  if (props.onClickSummary) props.onClickSummary();
@@ -78,4 +78,4 @@ export {
78
78
  AccordionDetails as d,
79
79
  AccordionStyledIcon as e
80
80
  };
81
- //# sourceMappingURL=component.styles-DX_3POUD.js.map
81
+ //# sourceMappingURL=component.styles-DjoG6jr2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"component.styles-DX_3POUD.js","sources":["../src/components/accordion/component.tsx","../src/components/accordion/component.styles.ts"],"sourcesContent":["import React, { FC, useCallback } from 'react'\n\nimport { Stack } from '@local/components/stack'\n\nimport {\n AccordionDetails,\n AccordionProps,\n AccordionStyledIcon,\n AccordionSummary,\n AccordionSummaryContent,\n AccordionWrapper\n} from '.'\n\nexport const Accordion: FC<AccordionProps> = props => {\n const onClickSummary = useCallback(() => {\n if (props.onClickSummary) props.onClickSummary()\n }, [props])\n\n const onClickIcon = useCallback(\n (event: React.MouseEvent<SVGSVGElement>) => {\n if (props.onClickIcon) {\n event.stopPropagation()\n\n props.onClickIcon()\n }\n },\n [props]\n )\n\n return (\n <Stack {...props.wrapperProps}>\n <AccordionWrapper>\n <AccordionSummary onClick={onClickSummary}>\n <AccordionSummaryContent $isAccordionIcon={props.isAccordionIcon}>\n {props.accordionSummary}\n </AccordionSummaryContent>\n {props.isAccordionIcon && (\n <AccordionStyledIcon\n $expanded={props.expanded}\n onClick={onClickIcon}\n name=\"Arrow1\"\n primaryColor=\"black100\"\n type=\"id\"\n size=\"large\"\n />\n )}\n </AccordionSummary>\n <AccordionDetails $expanded={props.expanded}>{props.accordionDetails}</AccordionDetails>\n </AccordionWrapper>\n </Stack>\n )\n}\n","import styled, { css } from 'styled-components'\n\nimport { Icon } from '@local/components/icon'\nimport { addTransition } from '@local/styles/add'\n\nimport { AccordionDetailsProps, AccordionStyledIconProps, AccordionSummaryContentProps } from '.'\n\nexport const AccordionWrapper = styled.div`\n display: flex;\n flex-direction: column;\n width: 100%;\n`\nexport const AccordionSummary = styled.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n user-select: none;\n`\nexport const AccordionSummaryContent = styled.div<AccordionSummaryContentProps>`\n width: 100%;\n\n ${props =>\n props.$isAccordionIcon &&\n css`\n width: calc(100% - 26px);\n `}\n`\nexport const AccordionDetails = styled.div<AccordionDetailsProps>`\n max-height: ${props => (props.$expanded ? '9999px' : '0')};\n height: ${props => (props.$expanded ? '100%' : '0')};\n opacity: ${props => (props.$expanded ? 1 : 0)};\n overflow: hidden;\n ${addTransition};\n`\nexport const AccordionStyledIcon = styled(Icon)<AccordionStyledIconProps>`\n padding: 4px;\n box-sizing: content-box;\n cursor: pointer;\n ${props =>\n props.$expanded\n ? css`\n transform: rotate(180deg);\n `\n : css`\n transform: rotate(0deg);\n `}\n`\n"],"names":["jsxs","jsx"],"mappings":";;;;;;AAaO,MAAM,YAAgC,CAAA,UAAS;AACpD,QAAM,iBAAiB,YAAY,MAAM;AACvC,QAAI,MAAM,eAAgB,OAAM,eAAA;AAAA,EAAe,GAC9C,CAAC,KAAK,CAAC;AAEV,QAAM,cAAc;AAAA,IAClB,CAAC,UAA2C;AAC1C,UAAI,MAAM,aAAa;AACrB,cAAM,gBAAA;AAEN,cAAM,YAAA;AAAA,MAAY;AAAA,IACpB;AAAA,IAEF,CAAC,KAAK;AAAA,EAAA;AAGR,+CACG,OAAA,EAAO,GAAG,MAAM,cACf,iDAAC,kBAAA,EACC,UAAA;AAAA,IAAAA,kCAAAA,KAAC,kBAAA,EAAiB,SAAS,gBACzB,UAAA;AAAA,MAAAC,sCAAC,yBAAA,EAAwB,kBAAkB,MAAM,iBAC9C,gBAAM,kBACT;AAAA,MACC,MAAM,mBACLA,kCAAAA;AAAAA,QAAC;AAAA,QAAA;AAAA,UACC,WAAW,MAAM;AAAA,UACjB,SAAS;AAAA,UACT,MAAK;AAAA,UACL,cAAa;AAAA,UACb,MAAK;AAAA,UACL,MAAK;AAAA,QAAA;AAAA,MAAA;AAAA,IACP,GAEJ;AAAA,0CACC,kBAAA,EAAiB,WAAW,MAAM,UAAW,gBAAM,iBAAA,CAAiB;AAAA,EAAA,EAAA,CACvE,EAAA,CACF;AAEJ;AC5CO,MAAM,mBAAmB,OAAO;AAAA;AAAA;AAAA;AAAA;AAKhC,MAAM,mBAAmB,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAMhC,MAAM,0BAA0B,OAAO;AAAA;AAAA;AAAA,IAG1C,CAAA,UACA,MAAM,oBACN;AAAA;AAAA,KAEC;AAAA;AAEE,MAAM,mBAAmB,OAAO;AAAA,gBACvB,CAAA,UAAU,MAAM,YAAY,WAAW,GAAI;AAAA,YAC/C,CAAA,UAAU,MAAM,YAAY,SAAS,GAAI;AAAA,aACxC,CAAA,UAAU,MAAM,YAAY,IAAI,CAAE;AAAA;AAAA,IAE3C,aAAa;AAAA;AAEV,MAAM,sBAAsB,OAAO,IAAI;AAAA;AAAA;AAAA;AAAA,IAI1C,CAAA,UACA,MAAM,YACF;AAAA;AAAA,YAGA;AAAA;AAAA,SAEC;AAAA;"}
1
+ {"version":3,"file":"component.styles-DjoG6jr2.js","sources":["../src/components/accordion/component.tsx","../src/components/accordion/component.styles.ts"],"sourcesContent":["import React, { FC, useCallback } from 'react'\n\nimport { Stack } from '@local/components/stack'\n\nimport {\n AccordionDetails,\n AccordionProps,\n AccordionStyledIcon,\n AccordionSummary,\n AccordionSummaryContent,\n AccordionWrapper\n} from '.'\n\nexport const Accordion: FC<AccordionProps> = props => {\n const onClickSummary = useCallback(() => {\n if (props.onClickSummary) props.onClickSummary()\n }, [props])\n\n const onClickIcon = useCallback(\n (event: React.MouseEvent<SVGSVGElement>) => {\n if (props.onClickIcon) {\n event.stopPropagation()\n\n props.onClickIcon()\n }\n },\n [props]\n )\n\n return (\n <Stack {...props.wrapperProps}>\n <AccordionWrapper>\n <AccordionSummary onClick={onClickSummary}>\n <AccordionSummaryContent $isAccordionIcon={props.isAccordionIcon}>\n {props.accordionSummary}\n </AccordionSummaryContent>\n {props.isAccordionIcon && (\n <AccordionStyledIcon\n $expanded={props.expanded}\n onClick={onClickIcon}\n name=\"Arrow1\"\n primaryColor=\"black100\"\n type=\"id\"\n size=\"large\"\n />\n )}\n </AccordionSummary>\n <AccordionDetails $expanded={props.expanded}>{props.accordionDetails}</AccordionDetails>\n </AccordionWrapper>\n </Stack>\n )\n}\n","import styled, { css } from 'styled-components'\n\nimport { Icon } from '@local/components/icon'\nimport { addTransition } from '@local/styles/add'\n\nimport { AccordionDetailsProps, AccordionStyledIconProps, AccordionSummaryContentProps } from '.'\n\nexport const AccordionWrapper = styled.div`\n display: flex;\n flex-direction: column;\n width: 100%;\n`\nexport const AccordionSummary = styled.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n user-select: none;\n`\nexport const AccordionSummaryContent = styled.div<AccordionSummaryContentProps>`\n width: 100%;\n\n ${props =>\n props.$isAccordionIcon &&\n css`\n width: calc(100% - 26px);\n `}\n`\nexport const AccordionDetails = styled.div<AccordionDetailsProps>`\n max-height: ${props => (props.$expanded ? '9999px' : '0')};\n height: ${props => (props.$expanded ? '100%' : '0')};\n opacity: ${props => (props.$expanded ? 1 : 0)};\n overflow: hidden;\n ${addTransition};\n`\nexport const AccordionStyledIcon = styled(Icon)<AccordionStyledIconProps>`\n padding: 4px;\n box-sizing: content-box;\n cursor: pointer;\n ${props =>\n props.$expanded\n ? css`\n transform: rotate(180deg);\n `\n : css`\n transform: rotate(0deg);\n `}\n`\n"],"names":["jsxs","jsx"],"mappings":";;;;;;AAaO,MAAM,YAAgC,CAAA,UAAS;AACpD,QAAM,iBAAiB,YAAY,MAAM;AACvC,QAAI,MAAM,eAAgB,OAAM,eAAA;AAAA,EAAe,GAC9C,CAAC,KAAK,CAAC;AAEV,QAAM,cAAc;AAAA,IAClB,CAAC,UAA2C;AAC1C,UAAI,MAAM,aAAa;AACrB,cAAM,gBAAA;AAEN,cAAM,YAAA;AAAA,MAAY;AAAA,IACpB;AAAA,IAEF,CAAC,KAAK;AAAA,EAAA;AAGR,+CACG,OAAA,EAAO,GAAG,MAAM,cACf,iDAAC,kBAAA,EACC,UAAA;AAAA,IAAAA,kCAAAA,KAAC,kBAAA,EAAiB,SAAS,gBACzB,UAAA;AAAA,MAAAC,sCAAC,yBAAA,EAAwB,kBAAkB,MAAM,iBAC9C,gBAAM,kBACT;AAAA,MACC,MAAM,mBACLA,kCAAAA;AAAAA,QAAC;AAAA,QAAA;AAAA,UACC,WAAW,MAAM;AAAA,UACjB,SAAS;AAAA,UACT,MAAK;AAAA,UACL,cAAa;AAAA,UACb,MAAK;AAAA,UACL,MAAK;AAAA,QAAA;AAAA,MAAA;AAAA,IACP,GAEJ;AAAA,0CACC,kBAAA,EAAiB,WAAW,MAAM,UAAW,gBAAM,iBAAA,CAAiB;AAAA,EAAA,EAAA,CACvE,EAAA,CACF;AAEJ;AC5CO,MAAM,mBAAmB,OAAO;AAAA;AAAA;AAAA;AAAA;AAKhC,MAAM,mBAAmB,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAMhC,MAAM,0BAA0B,OAAO;AAAA;AAAA;AAAA,IAG1C,CAAA,UACA,MAAM,oBACN;AAAA;AAAA,KAEC;AAAA;AAEE,MAAM,mBAAmB,OAAO;AAAA,gBACvB,CAAA,UAAU,MAAM,YAAY,WAAW,GAAI;AAAA,YAC/C,CAAA,UAAU,MAAM,YAAY,SAAS,GAAI;AAAA,aACxC,CAAA,UAAU,MAAM,YAAY,IAAI,CAAE;AAAA;AAAA,IAE3C,aAAa;AAAA;AAEV,MAAM,sBAAsB,OAAO,IAAI;AAAA;AAAA;AAAA;AAAA,IAI1C,CAAA,UACA,MAAM,YACF;AAAA;AAAA,YAGA;AAAA;AAAA,SAEC;AAAA;"}
@@ -1,4 +1,4 @@
1
- "use strict";const e=require("./jsx-runtime-BcGej2Kr.cjs"),o=require("react"),n=require("./component-BV_7tGiu.cjs"),r=require("styled-components"),c=require("./component.styles-DSle6iuF.cjs"),i=require("./style-mc2ST5fY.cjs"),s=r.div`
1
+ "use strict";const e=require("./jsx-runtime-BcGej2Kr.cjs"),o=require("react"),n=require("./component-BV_7tGiu.cjs"),r=require("styled-components"),c=require("./component.styles-BKnUDWqO.cjs"),i=require("./style-Df37KnoJ.cjs"),s=r.div`
2
2
  display: flex;
3
3
  flex-direction: column;
4
4
  width: 100%;
@@ -29,4 +29,4 @@
29
29
  transform: rotate(0deg);
30
30
  `}
31
31
  `;exports.Accordion=r=>{const c=o.useCallback(()=>{r.onClickSummary&&r.onClickSummary()},[r]),i=o.useCallback(e=>{r.onClickIcon&&(e.stopPropagation(),r.onClickIcon())},[r]);return e.jsxRuntimeExports.jsx(n.Stack,{...r.wrapperProps,children:e.jsxRuntimeExports.jsxs(s,{children:[e.jsxRuntimeExports.jsxs(t,{onClick:c,children:[e.jsxRuntimeExports.jsx(d,{$isAccordionIcon:r.isAccordionIcon,children:r.accordionSummary}),r.isAccordionIcon&&e.jsxRuntimeExports.jsx(x,{$expanded:r.expanded,onClick:i,name:"Arrow1",primaryColor:"black100",type:"id",size:"large"})]}),e.jsxRuntimeExports.jsx(a,{$expanded:r.expanded,children:r.accordionDetails})]})})},exports.AccordionDetails=a,exports.AccordionStyledIcon=x,exports.AccordionSummary=t,exports.AccordionSummaryContent=d,exports.AccordionWrapper=s;
32
- //# sourceMappingURL=component.styles-Bfhg18CX.cjs.map
32
+ //# sourceMappingURL=component.styles-Dpo373cZ.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"component.styles-Bfhg18CX.cjs","sources":["../src/components/accordion/component.styles.ts","../src/components/accordion/component.tsx"],"sourcesContent":["import styled, { css } from 'styled-components'\n\nimport { Icon } from '@local/components/icon'\nimport { addTransition } from '@local/styles/add'\n\nimport { AccordionDetailsProps, AccordionStyledIconProps, AccordionSummaryContentProps } from '.'\n\nexport const AccordionWrapper = styled.div`\n display: flex;\n flex-direction: column;\n width: 100%;\n`\nexport const AccordionSummary = styled.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n user-select: none;\n`\nexport const AccordionSummaryContent = styled.div<AccordionSummaryContentProps>`\n width: 100%;\n\n ${props =>\n props.$isAccordionIcon &&\n css`\n width: calc(100% - 26px);\n `}\n`\nexport const AccordionDetails = styled.div<AccordionDetailsProps>`\n max-height: ${props => (props.$expanded ? '9999px' : '0')};\n height: ${props => (props.$expanded ? '100%' : '0')};\n opacity: ${props => (props.$expanded ? 1 : 0)};\n overflow: hidden;\n ${addTransition};\n`\nexport const AccordionStyledIcon = styled(Icon)<AccordionStyledIconProps>`\n padding: 4px;\n box-sizing: content-box;\n cursor: pointer;\n ${props =>\n props.$expanded\n ? css`\n transform: rotate(180deg);\n `\n : css`\n transform: rotate(0deg);\n `}\n`\n","import React, { FC, useCallback } from 'react'\n\nimport { Stack } from '@local/components/stack'\n\nimport {\n AccordionDetails,\n AccordionProps,\n AccordionStyledIcon,\n AccordionSummary,\n AccordionSummaryContent,\n AccordionWrapper\n} from '.'\n\nexport const Accordion: FC<AccordionProps> = props => {\n const onClickSummary = useCallback(() => {\n if (props.onClickSummary) props.onClickSummary()\n }, [props])\n\n const onClickIcon = useCallback(\n (event: React.MouseEvent<SVGSVGElement>) => {\n if (props.onClickIcon) {\n event.stopPropagation()\n\n props.onClickIcon()\n }\n },\n [props]\n )\n\n return (\n <Stack {...props.wrapperProps}>\n <AccordionWrapper>\n <AccordionSummary onClick={onClickSummary}>\n <AccordionSummaryContent $isAccordionIcon={props.isAccordionIcon}>\n {props.accordionSummary}\n </AccordionSummaryContent>\n {props.isAccordionIcon && (\n <AccordionStyledIcon\n $expanded={props.expanded}\n onClick={onClickIcon}\n name=\"Arrow1\"\n primaryColor=\"black100\"\n type=\"id\"\n size=\"large\"\n />\n )}\n </AccordionSummary>\n <AccordionDetails $expanded={props.expanded}>{props.accordionDetails}</AccordionDetails>\n </AccordionWrapper>\n </Stack>\n )\n}\n"],"names":["AccordionWrapper","styled","div","AccordionSummary","AccordionSummaryContent","props","$isAccordionIcon","css","AccordionDetails","$expanded","addTransition","AccordionStyledIcon","Icon","onClickSummary","useCallback","onClickIcon","event","stopPropagation","Stack","wrapperProps","children","jsxs","onClick","jsx","isAccordionIcon","accordionSummary","expanded","name","primaryColor","type","size","accordionDetails"],"mappings":"kOAOaA,EAAmBC,EAAOC,GAAA;;;;EAK1BC,EAAmBF,EAAOC,GAAA;;;;;EAM1BE,EAA0BH,EAAOC,GAAA;;;IAG1CG,GACAA,EAAMC,kBACNC,EAAAA,GAAAA;;;EAISC,EAAmBP,EAAOC,GAAA;gBACvBG,GAAUA,EAAMI,UAAY,SAAW;YAC3CJ,GAAUA,EAAMI,UAAY,OAAS;aACpCJ,GAAUA,EAAMI,UAAY,EAAI;;IAEzCC;EAESC,EAAsBV,EAAOW,OAAI;;;;IAI1CP,GACAA,EAAMI,UACFF,EAAAA,GAAAA;;UAGAA,EAAAA,GAAAA;;;oBC9BqCF,IAC3C,MAAMQ,EAAiBC,EAAAA,YAAY,KAC7BT,EAAMQ,gBAAgBR,EAAMQ,kBAC/B,CAACR,IAEEU,EAAcD,EAAAA,YACjBE,IACKX,EAAMU,cACRC,EAAMC,kBAENZ,EAAMU,gBAGV,CAACV,IAGH,+BACGa,QAAA,IAAUb,EAAMc,aACfC,kCAACpB,EAAA,CACCoB,SAAA,GAAAC,kBAAAA,KAAClB,EAAA,CAAiBmB,QAAST,EACzBO,SAAA,CAAAG,wBAACnB,EAAA,CAAwBE,iBAAkBD,EAAMmB,gBAC9CJ,WAAMK,mBAERpB,EAAMmB,iBACLD,EAAAA,kBAAAA,IAACZ,EAAA,CACCF,UAAWJ,EAAMqB,SACjBJ,QAASP,EACTY,KAAK,SACLC,aAAa,WACbC,KAAK,KACLC,KAAK,qCAIVtB,EAAA,CAAiBC,UAAWJ,EAAMqB,SAAWN,WAAMW"}
1
+ {"version":3,"file":"component.styles-Dpo373cZ.cjs","sources":["../src/components/accordion/component.styles.ts","../src/components/accordion/component.tsx"],"sourcesContent":["import styled, { css } from 'styled-components'\n\nimport { Icon } from '@local/components/icon'\nimport { addTransition } from '@local/styles/add'\n\nimport { AccordionDetailsProps, AccordionStyledIconProps, AccordionSummaryContentProps } from '.'\n\nexport const AccordionWrapper = styled.div`\n display: flex;\n flex-direction: column;\n width: 100%;\n`\nexport const AccordionSummary = styled.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n user-select: none;\n`\nexport const AccordionSummaryContent = styled.div<AccordionSummaryContentProps>`\n width: 100%;\n\n ${props =>\n props.$isAccordionIcon &&\n css`\n width: calc(100% - 26px);\n `}\n`\nexport const AccordionDetails = styled.div<AccordionDetailsProps>`\n max-height: ${props => (props.$expanded ? '9999px' : '0')};\n height: ${props => (props.$expanded ? '100%' : '0')};\n opacity: ${props => (props.$expanded ? 1 : 0)};\n overflow: hidden;\n ${addTransition};\n`\nexport const AccordionStyledIcon = styled(Icon)<AccordionStyledIconProps>`\n padding: 4px;\n box-sizing: content-box;\n cursor: pointer;\n ${props =>\n props.$expanded\n ? css`\n transform: rotate(180deg);\n `\n : css`\n transform: rotate(0deg);\n `}\n`\n","import React, { FC, useCallback } from 'react'\n\nimport { Stack } from '@local/components/stack'\n\nimport {\n AccordionDetails,\n AccordionProps,\n AccordionStyledIcon,\n AccordionSummary,\n AccordionSummaryContent,\n AccordionWrapper\n} from '.'\n\nexport const Accordion: FC<AccordionProps> = props => {\n const onClickSummary = useCallback(() => {\n if (props.onClickSummary) props.onClickSummary()\n }, [props])\n\n const onClickIcon = useCallback(\n (event: React.MouseEvent<SVGSVGElement>) => {\n if (props.onClickIcon) {\n event.stopPropagation()\n\n props.onClickIcon()\n }\n },\n [props]\n )\n\n return (\n <Stack {...props.wrapperProps}>\n <AccordionWrapper>\n <AccordionSummary onClick={onClickSummary}>\n <AccordionSummaryContent $isAccordionIcon={props.isAccordionIcon}>\n {props.accordionSummary}\n </AccordionSummaryContent>\n {props.isAccordionIcon && (\n <AccordionStyledIcon\n $expanded={props.expanded}\n onClick={onClickIcon}\n name=\"Arrow1\"\n primaryColor=\"black100\"\n type=\"id\"\n size=\"large\"\n />\n )}\n </AccordionSummary>\n <AccordionDetails $expanded={props.expanded}>{props.accordionDetails}</AccordionDetails>\n </AccordionWrapper>\n </Stack>\n )\n}\n"],"names":["AccordionWrapper","styled","div","AccordionSummary","AccordionSummaryContent","props","$isAccordionIcon","css","AccordionDetails","$expanded","addTransition","AccordionStyledIcon","Icon","onClickSummary","useCallback","onClickIcon","event","stopPropagation","Stack","wrapperProps","children","jsxs","onClick","jsx","isAccordionIcon","accordionSummary","expanded","name","primaryColor","type","size","accordionDetails"],"mappings":"kOAOaA,EAAmBC,EAAOC,GAAA;;;;EAK1BC,EAAmBF,EAAOC,GAAA;;;;;EAM1BE,EAA0BH,EAAOC,GAAA;;;IAG1CG,GACAA,EAAMC,kBACNC,EAAAA,GAAAA;;;EAISC,EAAmBP,EAAOC,GAAA;gBACvBG,GAAUA,EAAMI,UAAY,SAAW;YAC3CJ,GAAUA,EAAMI,UAAY,OAAS;aACpCJ,GAAUA,EAAMI,UAAY,EAAI;;IAEzCC;EAESC,EAAsBV,EAAOW,OAAI;;;;IAI1CP,GACAA,EAAMI,UACFF,EAAAA,GAAAA;;UAGAA,EAAAA,GAAAA;;;oBC9BqCF,IAC3C,MAAMQ,EAAiBC,EAAAA,YAAY,KAC7BT,EAAMQ,gBAAgBR,EAAMQ,kBAC/B,CAACR,IAEEU,EAAcD,EAAAA,YACjBE,IACKX,EAAMU,cACRC,EAAMC,kBAENZ,EAAMU,gBAGV,CAACV,IAGH,+BACGa,QAAA,IAAUb,EAAMc,aACfC,kCAACpB,EAAA,CACCoB,SAAA,GAAAC,kBAAAA,KAAClB,EAAA,CAAiBmB,QAAST,EACzBO,SAAA,CAAAG,wBAACnB,EAAA,CAAwBE,iBAAkBD,EAAMmB,gBAC9CJ,WAAMK,mBAERpB,EAAMmB,iBACLD,EAAAA,kBAAAA,IAACZ,EAAA,CACCF,UAAWJ,EAAMqB,SACjBJ,QAASP,EACTY,KAAK,SACLC,aAAa,WACbC,KAAK,KACLC,KAAK,qCAIVtB,EAAA,CAAiBC,UAAWJ,EAAMqB,SAAWN,WAAMW"}
@@ -1,12 +1,13 @@
1
1
  import { j as jsxRuntimeExports } from "./jsx-runtime-BrDlu8eK.js";
2
- import { b as ErrorMessage, a as addError } from "./style-BQ653xOS.js";
3
- import { m as useMergeRefs, g as getFontSizeStyles } from "./component-BoHvC24Q.js";
2
+ import { b as ErrorMessage, a as addError } from "./style-uVTmdhsH.js";
3
+ import { u as useMergeRefs } from "./floating-ui.react-Byi6bLb1.js";
4
4
  import { useRef, useMemo, useCallback, useEffect } from "react";
5
5
  import styled, { useTheme, css } from "styled-components";
6
- import { c as addTransitionWithoutSize, k as addDisabled, g as addOutlineChildren, i as addRemoveOutline } from "./style-BgcnmVAY.js";
6
+ import { d as addTransitionWithoutSize, l as addDisabled, h as addOutlineChildren, c as addFont, j as addRemoveOutline } from "./style-RL73t3JD.js";
7
7
  import { a as addSX } from "./style-plT9Ah7t.js";
8
- import { K as KEY_SIZE_DATA } from "./theme.global-CFUz5Asg.js";
8
+ import { K as KEY_SIZE_DATA } from "./theme.global-BgERDJ4e.js";
9
9
  const TextArea = (props) => {
10
+ var _a, _b, _c, _d, _e;
10
11
  const theme = useTheme();
11
12
  const refLocal = useRef(null);
12
13
  const ref = useMergeRefs([refLocal, props.ref]);
@@ -29,12 +30,12 @@ const TextArea = (props) => {
29
30
  }, [props.isAutoHeight, maxHeight]);
30
31
  const handleOnChange = useCallback(
31
32
  (value) => {
32
- var _a, _b;
33
+ var _a2, _b2;
33
34
  if (props.isNoSpaces) {
34
35
  const valueWithoutSpaces = value.replace(/\s+/g, "");
35
- (_a = props.onChange) == null ? void 0 : _a.call(props, valueWithoutSpaces);
36
+ (_a2 = props.onChange) == null ? void 0 : _a2.call(props, valueWithoutSpaces);
36
37
  } else {
37
- (_b = props.onChange) == null ? void 0 : _b.call(props, value);
38
+ (_b2 = props.onChange) == null ? void 0 : _b2.call(props, value);
38
39
  }
39
40
  },
40
41
  [props]
@@ -50,6 +51,8 @@ const TextArea = (props) => {
50
51
  {
51
52
  $isInputEffect: props.isInputEffect,
52
53
  $isDisabled: props.isDisabled,
54
+ $isDisabledOutline: props.isDisabled ?? props.isDisabledOutline,
55
+ $isOutlineBoxShadow: props.isOutlineBoxShadow,
53
56
  $sx: props.sx,
54
57
  $genre: props.genre,
55
58
  $size: props.size,
@@ -62,6 +65,12 @@ const TextArea = (props) => {
62
65
  {
63
66
  tabIndex: 0,
64
67
  ref,
68
+ $font: {
69
+ size: ((_a = props.font) == null ? void 0 : _a.size) ?? 16,
70
+ weight: ((_b = props.font) == null ? void 0 : _b.weight) ?? (props.isBold ? 500 : 400),
71
+ family: ((_c = props.font) == null ? void 0 : _c.family) ?? theme.font.family,
72
+ height: ((_d = props.font) == null ? void 0 : _d.height) ?? `${lineHeight}px`
73
+ },
65
74
  $lineHeight: lineHeight,
66
75
  $isResize: props.isResize,
67
76
  $error: props.error,
@@ -95,7 +104,18 @@ const TextArea = (props) => {
95
104
  )
96
105
  }
97
106
  ),
98
- (props == null ? void 0 : props.error) ? /* @__PURE__ */ jsxRuntimeExports.jsx(ErrorMessage, { ...props.error, size: (props == null ? void 0 : props.error.size) ?? props.size }) : null
107
+ (props == null ? void 0 : props.error) ? /* @__PURE__ */ jsxRuntimeExports.jsx(
108
+ ErrorMessage,
109
+ {
110
+ ...props.error,
111
+ size: (props == null ? void 0 : props.error.size) ?? props.size,
112
+ font: {
113
+ size: 12,
114
+ weight: 400,
115
+ family: ((_e = props.font) == null ? void 0 : _e.family) ?? theme.font.family
116
+ }
117
+ }
118
+ ) : null
99
119
  ] });
100
120
  };
101
121
  const addTextAreaWrapperGenre = css`
@@ -153,12 +173,12 @@ const TextAreaWrapper = styled.div`
153
173
  const addTextAreaPlaceholder = css`
154
174
  &::placeholder,
155
175
  &::-webkit-input-placeholder {
156
- ${(props) => getFontSizeStyles(16, props.$isBold ? 500 : 400, props.theme.font.family, props.theme.font.lineHeight)};
176
+ ${addFont};
157
177
  color: ${(props) => props.theme.colors.input[props.$genre].color.placeholder};
158
178
  opacity: 1;
159
179
  }
160
180
  &:-ms-input-placeholder {
161
- ${(props) => getFontSizeStyles(16, props.$isBold ? 500 : 400, props.theme.font.family, props.theme.font.lineHeight)};
181
+ ${addFont};
162
182
  color: ${(props) => props.theme.colors.input[props.$genre].color.placeholder};
163
183
  opacity: 1;
164
184
  }
@@ -193,8 +213,8 @@ const addTextArea = css`
193
213
  text-overflow: ellipsis;
194
214
  height: auto;
195
215
  background-color: transparent;
196
- ${(props) => getFontSizeStyles(16, props.$isBold ? 500 : 400, props.theme.font.family, `${props.$lineHeight}px`)};
197
216
 
217
+ ${addFont};
198
218
  ${addTextAreaGenre};
199
219
  ${addTextAreaIsResize};
200
220
  ${addTextAreaPlaceholder};
@@ -210,4 +230,4 @@ export {
210
230
  TextAreaWrapper as a,
211
231
  addTextArea as b
212
232
  };
213
- //# sourceMappingURL=component.styles-v0YYECwW.js.map
233
+ //# sourceMappingURL=component.styles-VrNFgg1_.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component.styles-VrNFgg1_.js","sources":["../src/components/textarea/component.tsx","../src/components/textarea/component.styles.ts"],"sourcesContent":["import { ErrorMessage } from '@local/styles/error';\n\nimport { useMergeRefs } from '@floating-ui/react';\nimport { useCallback, useEffect, useMemo, useRef } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport { StyledTextArea, TextAreaProps, TextAreaWrapper } from '.';\n\nexport const TextArea = (props: TextAreaProps) => {\n const theme = useTheme();\n\n const refLocal = useRef<HTMLTextAreaElement>(null);\n const ref = useMergeRefs([refLocal, props.ref]);\n\n const lineHeight = useMemo(\n () => theme.font.sizeDefault.default * theme.font.lineHeight,\n [theme.font.lineHeight, theme.font.sizeDefault.default],\n );\n const maxHeight = useMemo(() => (props.maxRows ? props.maxRows * lineHeight : 0), [lineHeight, props.maxRows]);\n const minHeight = useMemo(\n () => (props.minRows ? props.minRows * lineHeight : lineHeight),\n [lineHeight, props.minRows],\n );\n\n const resizeTextarea = useCallback(() => {\n const el = refLocal.current;\n if (el && props.isAutoHeight) {\n el.style.height = 'auto';\n const newHeight = Math.min(el.scrollHeight, maxHeight);\n el.style.height = `${newHeight}px`;\n }\n }, [props.isAutoHeight, maxHeight]);\n\n const handleOnChange = useCallback(\n (value: string) => {\n if (props.isNoSpaces) {\n const valueWithoutSpaces = value.replace(/\\s+/g, '');\n props.onChange?.(valueWithoutSpaces);\n } else {\n props.onChange?.(value);\n }\n },\n [props],\n );\n\n // biome-ignore lint/correctness/useExhaustiveDependencies: <explanation>\n useEffect(() => {\n if (props.isAutoHeight) {\n requestAnimationFrame(resizeTextarea);\n }\n }, [props.value, resizeTextarea, props.isAutoHeight]);\n return (\n <>\n <TextAreaWrapper\n $isInputEffect={props.isInputEffect}\n $isDisabled={props.isDisabled}\n $isDisabledOutline={props.isDisabled ?? props.isDisabledOutline}\n $isOutlineBoxShadow={props.isOutlineBoxShadow}\n $sx={props.sx}\n $genre={props.genre}\n $size={props.size}\n $lineHeight={lineHeight}\n $isReadOnly={props.isReadOnly}\n className={props.className}\n tabIndex={-1}\n >\n <StyledTextArea\n tabIndex={0}\n ref={ref}\n $font={{\n size: props.font?.size ?? 16,\n weight: props.font?.weight ?? (props.isBold ? 500 : 400),\n family: props.font?.family ?? theme.font.family,\n height: props.font?.height ?? `${lineHeight}px`,\n }}\n $lineHeight={lineHeight}\n $isResize={props.isResize}\n $error={props.error}\n $isInputEffect={props.isInputEffect}\n $isLoading={props.isLoading}\n $genre={props.genre}\n $size={props.size}\n $isBold={props.isBold}\n $isDisabled={props.isDisabled}\n maxLength={props.maxLength}\n minLength={props.minLength}\n disabled={props.isDisabled}\n readOnly={props.isReadOnly}\n required={props.isRequired}\n defaultValue={props.defaultValue === null ? '' : props.defaultValue}\n value={props.value === null ? '' : props.value}\n rows={props.minRows}\n placeholder={props.placeholder}\n onChange={(event) => handleOnChange(event.target.value)}\n onBlur={props.onBlur}\n onFocus={props.onFocus}\n onKeyDown={props.onKeyDown}\n name={props.name}\n autoComplete={props.autoComplete}\n id={props.id}\n style={{\n minHeight: `${minHeight}px`,\n maxHeight: props.isResize ? 'none' : props.isAutoHeight ? `${maxHeight}px` : `${minHeight}px`,\n }}\n />\n </TextAreaWrapper>\n {props?.error ? (\n <ErrorMessage\n {...props.error}\n size={props?.error.size ?? props.size}\n font={{\n size: 12,\n weight: 400,\n family: props.font?.family ?? theme.font.family,\n }}\n />\n ) : null}\n </>\n );\n};\n","import {\n addDisabled,\n addFont,\n addOutlineChildren,\n addRemoveOutline,\n addTransitionWithoutSize,\n} from '@local/styles/add';\nimport { addError } from '@local/styles/error';\nimport { addSX } from '@local/styles/sx';\nimport { KEY_SIZE_DATA } from '@local/theme';\n\nimport styled, { css } from 'styled-components';\n\nimport { StyledTextAreaProps, TextAreaWrapperProps } from '.';\n\n/****************************************** Wrapper *************************************************/\nconst addTextAreaWrapperGenre = css<TextAreaWrapperProps>`\n ${(props) => css`\n background: ${props.theme.colors.input[props.$genre].background.rest};\n border-color: ${props.theme.colors.input[props.$genre].border.rest};\n color: ${props.theme.colors.input[props.$genre].color.rest};\n\n &:active {\n background: ${props.theme.colors.input[props.$genre].background.rest};\n border-color: ${props.theme.colors.input[props.$genre].border.rest};\n color: ${props.theme.colors.input[props.$genre].color.rest};\n }\n &:hover {\n background: ${props.theme.colors.input[props.$genre].background.hover};\n border-color: ${props.theme.colors.input[props.$genre].border.hover};\n color: ${props.theme.colors.input[props.$genre].color.hover};\n }\n &:focus-visible {\n border-color: ${props.theme.colors.input[props.$genre].border.rest};\n background: ${props.theme.colors.input[props.$genre].background.rest};\n color: ${props.theme.colors.input[props.$genre].color.rest};\n }\n `};\n`;\n\nconst addTextAreaWrapperIsInputEffect = css<Pick<TextAreaWrapperProps, '$isInputEffect'>>`\n ${(props) =>\n props.$isInputEffect &&\n css`\n box-shadow: ${props.theme.effects.input};\n `}\n`;\nconst addTextAreaWrapperSize = css<TextAreaWrapperProps>`\n ${(props) => css`\n padding: ${KEY_SIZE_DATA[props.$size].padding - 4}px ${KEY_SIZE_DATA[props.$size].padding}px ${KEY_SIZE_DATA[props.$size].padding - 4}px ${KEY_SIZE_DATA[props.$size].padding}px;\n border-radius: ${KEY_SIZE_DATA[props.$size].radius}px;\n min-height: ${KEY_SIZE_DATA[props.$size].height}px;\n `};\n`;\n\nexport const TextAreaWrapper = styled.div<TextAreaWrapperProps>`\n border: 1px solid;\n position: relative;\n display: flex;\n align-items: flex-start;\n justify-content: flex-start;\n flex-direction: column;\n overflow: hidden;\n width: 100%;\n ${addTransitionWithoutSize};\n ${addTextAreaWrapperSize};\n ${addTextAreaWrapperGenre};\n ${addTextAreaWrapperIsInputEffect};\n ${addDisabled};\n ${addOutlineChildren};\n ${addSX};\n`;\n\n/****************************************** TextArea *************************************************/\nconst addTextAreaPlaceholder = css<StyledTextAreaProps>`\n &::placeholder,\n &::-webkit-input-placeholder {\n ${addFont};\n color: ${(props) => props.theme.colors.input[props.$genre].color.placeholder};\n opacity: 1;\n }\n &:-ms-input-placeholder {\n ${addFont};\n color: ${(props) => props.theme.colors.input[props.$genre].color.placeholder};\n opacity: 1;\n }\n`;\nconst addTextAreaGenre = css<StyledTextAreaProps>`\n ${(props) => css`\n color: ${props.theme.colors.input[props.$genre].color.rest};\n border-color: transparent;\n &:active {\n color: ${props.theme.colors.input[props.$genre].color.rest};\n }\n &:hover {\n color: ${props.theme.colors.input[props.$genre].color.hover};\n }\n &:focus-visible {\n color: ${props.theme.colors.input[props.$genre].color.rest};\n }\n `};\n`;\nconst addTextAreaIsResize = css<Pick<StyledTextAreaProps, '$isResize'>>`\n ${(props) =>\n !props.$isResize &&\n css`\n resize: none;\n `}\n`;\nexport const addTextArea = css<StyledTextAreaProps>`\n overflow-x: hidden;\n width: -webkit-fill-available;\n padding: 0 !important;\n border: none !important;\n margin: 0 !important;\n white-space: normal;\n text-overflow: ellipsis;\n height: auto;\n background-color: transparent;\n\n ${addFont};\n ${addTextAreaGenre};\n ${addTextAreaIsResize};\n ${addTextAreaPlaceholder};\n ${addRemoveOutline};\n ${addError};\n`;\n\nexport const StyledTextArea = styled.textarea<StyledTextAreaProps>`\n ${addTextArea};\n`;\n"],"names":["_a","_b","jsxs","Fragment","jsx"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- "use strict";const e=require("./jsx-runtime-BcGej2Kr.cjs"),r=require("react"),n=require("styled-components"),t=require("./style-B5u4pW5G.cjs"),o=require("./style-fRZ6xrVp.cjs"),a=n.div`
1
+ "use strict";const e=require("./jsx-runtime-BcGej2Kr.cjs"),r=require("react"),n=require("styled-components"),t=require("./style-D3Lbn1EL.cjs"),o=require("./style-fRZ6xrVp.cjs"),a=n.div`
2
2
  position: relative;
3
3
  display: flex;
4
4
  width: 100%;
@@ -44,4 +44,4 @@
44
44
  }
45
45
  }
46
46
  `;exports.Range=t=>{const{onChange:o}=t,u=r.useCallback((e,r)=>{const n=[...t.values];n[e]=Math.min(t.max,Math.max(t.min,r)),o(n.sort((e,r)=>e-r))},[o,t.max,t.min,t.values]),l=r.useCallback(e=>(e-t.min)/(t.max-t.min)*100,[t.max,t.min]),p=r.useMemo(()=>t.values.map(e=>l(e)),[l,t.values]),d=n.useTheme(),g=d.colors.range[t.genre].track.background.rest,m=d.colors.range[t.genre].track.gradient.rest,c=d.colors.range[t.genre].thumb.border.rest,x=d.colors.range[t.genre].thumb.background.rest,$=r.useMemo(()=>p.map((e,r)=>{const n=0===r,t=r===p.length-1;return n?`${g} 0%, ${g} ${e}%, ${m} ${e}%`:t?`${m} ${e}%, ${g} ${e}%, ${g} 100%`:`${m} ${e}%`}).join(", "),[m,g,p]),h=r.useMemo(()=>`linear-gradient(to right, ${$})`,[$]);return e.jsxRuntimeExports.jsxs(a,{$size:t.size,$sx:t.sx,$error:t.error,onBlur:t.onBlur,children:[t.values.map((r,n)=>e.jsxRuntimeExports.jsx(i,{type:"range",$size:t.size,$genre:t.genre,min:t.min,max:t.max,step:t.step,value:r,onChange:e=>u(n,parseFloat(e.target.value)),style:{zIndex:100+n},$colorBackground:x,$colorBorder:c},n)),e.jsxRuntimeExports.jsx(s,{$size:t.size,$genre:t.genre,style:{background:h}})]})},exports.RangeThumb=i,exports.RangeTrack=s,exports.RangeWrapper=a;
47
- //# sourceMappingURL=component.styles-DhAMCZ71.cjs.map
47
+ //# sourceMappingURL=component.styles-ZU_GyVub.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"component.styles-DhAMCZ71.cjs","sources":["../src/components/range/component.styles.ts","../src/components/range/component.tsx"],"sourcesContent":["import styled from 'styled-components'\n\nimport { addError } from '@local/styles/error'\nimport { addSX } from '@local/styles/sx'\n\nimport { RangeComponentProps, RangeThumbProps, RangeWrapperProps } from '.'\n\nexport const RangeWrapper = styled.div<RangeWrapperProps>`\n position: relative;\n display: flex;\n width: 100%;\n box-sizing: border-box;\n align-items: center;\n height: 20px;\n ${addError};\n ${addSX};\n`\n\nexport const RangeTrack = styled.div<RangeComponentProps>`\n position: absolute;\n height: 3px;\n width: 100%;\n padding: 0px 10px;\n border-radius: 2px;\n`\nexport const RangeThumb = styled.input<RangeThumbProps>`\n position: absolute;\n width: 100%;\n outline: none !important;\n pointer-events: none;\n appearance: none;\n -webkit-appearance: none;\n background: transparent;\n left: 0;\n margin: 0;\n &::-webkit-slider-thumb {\n pointer-events: all;\n width: 16px;\n height: 16px;\n margin: 0;\n padding: 0;\n border-radius: 50%;\n background: ${props => props.$colorBackground};\n border: 3px ${props => props.$colorBorder} solid;\n cursor: pointer;\n -webkit-appearance: none;\n margin-top: 0px;\n transition:\n transform ${props => props.theme.transition.default},\n color ${props => props.theme.transition.default},\n background-color ${props => props.theme.transition.default};\n &:hover {\n transform: scale(1.2);\n }\n }\n`\n","import { useCallback, useMemo } from 'react'\nimport { useTheme } from 'styled-components'\n\nimport { RangeProps, RangeThumb, RangeTrack, RangeWrapper } from '.'\n\nexport const Range = (props: RangeProps) => {\n const { onChange } = props\n const handleChange = useCallback(\n (index: number, newValue: number) => {\n const newValues = [...props.values]\n newValues[index] = Math.min(props.max, Math.max(props.min, newValue))\n onChange(newValues.sort((a, b) => a - b))\n },\n [onChange, props.max, props.min, props.values]\n )\n const getThumbPositionPercent = useCallback(\n (val: number) => ((val - props.min) / (props.max - props.min)) * 100,\n [props.max, props.min]\n )\n const positions = useMemo(\n () => props.values.map(val => getThumbPositionPercent(val)),\n [getThumbPositionPercent, props.values]\n )\n const theme = useTheme()\n\n const colorTrackBackground = theme.colors.range[props.genre].track.background.rest\n const colorTrackGradient = theme.colors.range[props.genre].track.gradient.rest\n const colorThumbBorder = theme.colors.range[props.genre].thumb.border.rest\n const colorThumbBackground = theme.colors.range[props.genre].thumb.background.rest\n\n const trackGradient = useMemo(\n () =>\n positions\n .map((position, idx) => {\n const isFirst = idx === 0\n const isLast = idx === positions.length - 1\n\n if (isFirst)\n return `${colorTrackBackground} 0%, ${colorTrackBackground} ${position}%, ${colorTrackGradient} ${position}%`\n if (isLast)\n return `${colorTrackGradient} ${position}%, ${colorTrackBackground} ${position}%, ${colorTrackBackground} 100%`\n return `${colorTrackGradient} ${position}%`\n })\n .join(', '),\n [colorTrackGradient, colorTrackBackground, positions]\n )\n const gradient = useMemo(() => `linear-gradient(to right, ${trackGradient})`, [trackGradient])\n\n return (\n <RangeWrapper $size={props.size} $sx={props.sx} $error={props.error} onBlur={props.onBlur}>\n {props.values.map((val, idx) => (\n <RangeThumb\n key={idx}\n type=\"range\"\n $size={props.size}\n $genre={props.genre}\n min={props.min}\n max={props.max}\n step={props.step}\n value={val}\n onChange={e => handleChange(idx, parseFloat(e.target.value))}\n style={{ zIndex: 100 + idx }}\n $colorBackground={colorThumbBackground}\n $colorBorder={colorThumbBorder}\n />\n ))}\n <RangeTrack\n $size={props.size}\n $genre={props.genre}\n style={{\n background: gradient\n }}\n />\n </RangeWrapper>\n )\n}\n"],"names":["RangeWrapper","styled","div","addError","addSX","RangeTrack","RangeThumb","input","props","$colorBackground","$colorBorder","theme","transition","default","onChange","handleChange","useCallback","index","newValue","newValues","values","Math","min","max","sort","a","b","getThumbPositionPercent","val","positions","useMemo","map","useTheme","colorTrackBackground","colors","range","genre","track","background","rest","colorTrackGradient","gradient","colorThumbBorder","thumb","border","colorThumbBackground","trackGradient","position","idx","isFirst","isLast","length","join","jsxs","$size","size","$sx","sx","$error","error","onBlur","children","jsx","type","$genre","step","value","parseFloat","e","target","style","zIndex"],"mappings":"iLAOaA,EAAeC,EAAOC,GAAA;;;;;;;IAO/BC;IACAC;EAGSC,EAAaJ,EAAOC,GAAA;;;;;;EAOpBI,EAAaL,EAAOM,KAAA;;;;;;;;;;;;;;;;;kBAiBfC,GAASA,EAAMC;kBACfD,GAASA,EAAME;;;;;kBAKfF,GAASA,EAAMG,MAAMC,WAAWC;cACpCL,GAASA,EAAMG,MAAMC,WAAWC;yBACrBL,GAASA,EAAMG,MAAMC,WAAWC;;;;;gBC7CnCL,IACpB,MAAMM,SAAEA,GAAaN,EACfO,EAAeC,EAAAA,YACnB,CAACC,EAAeC,KACd,MAAMC,EAAY,IAAIX,EAAMY,QAC5BD,EAAUF,GAASI,KAAKC,IAAId,EAAMe,IAAKF,KAAKE,IAAIf,EAAMc,IAAKJ,IAC3DJ,EAASK,EAAUK,KAAK,CAACC,EAAGC,IAAMD,EAAIC,KAExC,CAACZ,EAAUN,EAAMe,IAAKf,EAAMc,IAAKd,EAAMY,SAEnCO,EAA0BX,EAAAA,YAC7BY,IAAkBA,EAAMpB,EAAMc,MAAQd,EAAMe,IAAMf,EAAMc,KAAQ,IACjE,CAACd,EAAMe,IAAKf,EAAMc,MAEdO,EAAYC,EAAAA,QAChB,IAAMtB,EAAMY,OAAOW,IAAIH,GAAOD,EAAwBC,IACtD,CAACD,EAAyBnB,EAAMY,SAE5BT,EAAQqB,EAAAA,WAERC,EAAuBtB,EAAMuB,OAAOC,MAAM3B,EAAM4B,OAAOC,MAAMC,WAAWC,KACxEC,EAAqB7B,EAAMuB,OAAOC,MAAM3B,EAAM4B,OAAOC,MAAMI,SAASF,KACpEG,EAAmB/B,EAAMuB,OAAOC,MAAM3B,EAAM4B,OAAOO,MAAMC,OAAOL,KAChEM,EAAuBlC,EAAMuB,OAAOC,MAAM3B,EAAM4B,OAAOO,MAAML,WAAWC,KAExEO,EAAgBhB,EAAAA,QACpB,IACED,EACGE,IAAI,CAACgB,EAAUC,KACd,MAAMC,EAAkB,IAARD,EACVE,EAASF,IAAQnB,EAAUsB,OAAS,EAE1C,OAAIF,EACK,GAAGhB,SAA4BA,KAAwBc,OAAcP,KAAsBO,KAChGG,EACK,GAAGV,KAAsBO,OAAcd,KAAwBc,OAAcd,SAC/E,GAAGO,KAAsBO,OAEjCK,KAAK,MACV,CAACZ,EAAoBP,EAAsBJ,IAEvCY,EAAWX,EAAAA,QAAQ,IAAM,6BAA6BgB,KAAkB,CAACA,IAE/E,SACEO,kBAAAA,KAACrD,EAAA,CAAasD,MAAO9C,EAAM+C,KAAMC,IAAKhD,EAAMiD,GAAIC,OAAQlD,EAAMmD,MAAOC,OAAQpD,EAAMoD,OAChFC,SAAA,CAAArD,EAAMY,OAAOW,IAAI,CAACH,EAAKoB,MACtBc,kBAAAA,IAACxD,EAAA,CAECyD,KAAK,QACLT,MAAO9C,EAAM+C,KACbS,OAAQxD,EAAM4B,MACdd,IAAKd,EAAMc,IACXC,IAAKf,EAAMe,IACX0C,KAAMzD,EAAMyD,KACZC,MAAOtC,EACPd,YAAeC,EAAaiC,EAAKmB,WAAWC,EAAEC,OAAOH,QACrDI,MAAO,CAAEC,OAAQ,IAAMvB,GACvBvC,iBAAkBoC,EAClBnC,aAAcgC,GAXTM,MAcTc,kBAAAA,IAACzD,EAAA,CACCiD,MAAO9C,EAAM+C,KACbS,OAAQxD,EAAM4B,MACdkC,MAAO,CACLhC,WAAYG"}
1
+ {"version":3,"file":"component.styles-ZU_GyVub.cjs","sources":["../src/components/range/component.styles.ts","../src/components/range/component.tsx"],"sourcesContent":["import styled from 'styled-components'\n\nimport { addError } from '@local/styles/error'\nimport { addSX } from '@local/styles/sx'\n\nimport { RangeComponentProps, RangeThumbProps, RangeWrapperProps } from '.'\n\nexport const RangeWrapper = styled.div<RangeWrapperProps>`\n position: relative;\n display: flex;\n width: 100%;\n box-sizing: border-box;\n align-items: center;\n height: 20px;\n ${addError};\n ${addSX};\n`\n\nexport const RangeTrack = styled.div<RangeComponentProps>`\n position: absolute;\n height: 3px;\n width: 100%;\n padding: 0px 10px;\n border-radius: 2px;\n`\nexport const RangeThumb = styled.input<RangeThumbProps>`\n position: absolute;\n width: 100%;\n outline: none !important;\n pointer-events: none;\n appearance: none;\n -webkit-appearance: none;\n background: transparent;\n left: 0;\n margin: 0;\n &::-webkit-slider-thumb {\n pointer-events: all;\n width: 16px;\n height: 16px;\n margin: 0;\n padding: 0;\n border-radius: 50%;\n background: ${props => props.$colorBackground};\n border: 3px ${props => props.$colorBorder} solid;\n cursor: pointer;\n -webkit-appearance: none;\n margin-top: 0px;\n transition:\n transform ${props => props.theme.transition.default},\n color ${props => props.theme.transition.default},\n background-color ${props => props.theme.transition.default};\n &:hover {\n transform: scale(1.2);\n }\n }\n`\n","import { useCallback, useMemo } from 'react'\nimport { useTheme } from 'styled-components'\n\nimport { RangeProps, RangeThumb, RangeTrack, RangeWrapper } from '.'\n\nexport const Range = (props: RangeProps) => {\n const { onChange } = props\n const handleChange = useCallback(\n (index: number, newValue: number) => {\n const newValues = [...props.values]\n newValues[index] = Math.min(props.max, Math.max(props.min, newValue))\n onChange(newValues.sort((a, b) => a - b))\n },\n [onChange, props.max, props.min, props.values]\n )\n const getThumbPositionPercent = useCallback(\n (val: number) => ((val - props.min) / (props.max - props.min)) * 100,\n [props.max, props.min]\n )\n const positions = useMemo(\n () => props.values.map(val => getThumbPositionPercent(val)),\n [getThumbPositionPercent, props.values]\n )\n const theme = useTheme()\n\n const colorTrackBackground = theme.colors.range[props.genre].track.background.rest\n const colorTrackGradient = theme.colors.range[props.genre].track.gradient.rest\n const colorThumbBorder = theme.colors.range[props.genre].thumb.border.rest\n const colorThumbBackground = theme.colors.range[props.genre].thumb.background.rest\n\n const trackGradient = useMemo(\n () =>\n positions\n .map((position, idx) => {\n const isFirst = idx === 0\n const isLast = idx === positions.length - 1\n\n if (isFirst)\n return `${colorTrackBackground} 0%, ${colorTrackBackground} ${position}%, ${colorTrackGradient} ${position}%`\n if (isLast)\n return `${colorTrackGradient} ${position}%, ${colorTrackBackground} ${position}%, ${colorTrackBackground} 100%`\n return `${colorTrackGradient} ${position}%`\n })\n .join(', '),\n [colorTrackGradient, colorTrackBackground, positions]\n )\n const gradient = useMemo(() => `linear-gradient(to right, ${trackGradient})`, [trackGradient])\n\n return (\n <RangeWrapper $size={props.size} $sx={props.sx} $error={props.error} onBlur={props.onBlur}>\n {props.values.map((val, idx) => (\n <RangeThumb\n key={idx}\n type=\"range\"\n $size={props.size}\n $genre={props.genre}\n min={props.min}\n max={props.max}\n step={props.step}\n value={val}\n onChange={e => handleChange(idx, parseFloat(e.target.value))}\n style={{ zIndex: 100 + idx }}\n $colorBackground={colorThumbBackground}\n $colorBorder={colorThumbBorder}\n />\n ))}\n <RangeTrack\n $size={props.size}\n $genre={props.genre}\n style={{\n background: gradient\n }}\n />\n </RangeWrapper>\n )\n}\n"],"names":["RangeWrapper","styled","div","addError","addSX","RangeTrack","RangeThumb","input","props","$colorBackground","$colorBorder","theme","transition","default","onChange","handleChange","useCallback","index","newValue","newValues","values","Math","min","max","sort","a","b","getThumbPositionPercent","val","positions","useMemo","map","useTheme","colorTrackBackground","colors","range","genre","track","background","rest","colorTrackGradient","gradient","colorThumbBorder","thumb","border","colorThumbBackground","trackGradient","position","idx","isFirst","isLast","length","join","jsxs","$size","size","$sx","sx","$error","error","onBlur","children","jsx","type","$genre","step","value","parseFloat","e","target","style","zIndex"],"mappings":"iLAOaA,EAAeC,EAAOC,GAAA;;;;;;;IAO/BC;IACAC;EAGSC,EAAaJ,EAAOC,GAAA;;;;;;EAOpBI,EAAaL,EAAOM,KAAA;;;;;;;;;;;;;;;;;kBAiBfC,GAASA,EAAMC;kBACfD,GAASA,EAAME;;;;;kBAKfF,GAASA,EAAMG,MAAMC,WAAWC;cACpCL,GAASA,EAAMG,MAAMC,WAAWC;yBACrBL,GAASA,EAAMG,MAAMC,WAAWC;;;;;gBC7CnCL,IACpB,MAAMM,SAAEA,GAAaN,EACfO,EAAeC,EAAAA,YACnB,CAACC,EAAeC,KACd,MAAMC,EAAY,IAAIX,EAAMY,QAC5BD,EAAUF,GAASI,KAAKC,IAAId,EAAMe,IAAKF,KAAKE,IAAIf,EAAMc,IAAKJ,IAC3DJ,EAASK,EAAUK,KAAK,CAACC,EAAGC,IAAMD,EAAIC,KAExC,CAACZ,EAAUN,EAAMe,IAAKf,EAAMc,IAAKd,EAAMY,SAEnCO,EAA0BX,EAAAA,YAC7BY,IAAkBA,EAAMpB,EAAMc,MAAQd,EAAMe,IAAMf,EAAMc,KAAQ,IACjE,CAACd,EAAMe,IAAKf,EAAMc,MAEdO,EAAYC,EAAAA,QAChB,IAAMtB,EAAMY,OAAOW,IAAIH,GAAOD,EAAwBC,IACtD,CAACD,EAAyBnB,EAAMY,SAE5BT,EAAQqB,EAAAA,WAERC,EAAuBtB,EAAMuB,OAAOC,MAAM3B,EAAM4B,OAAOC,MAAMC,WAAWC,KACxEC,EAAqB7B,EAAMuB,OAAOC,MAAM3B,EAAM4B,OAAOC,MAAMI,SAASF,KACpEG,EAAmB/B,EAAMuB,OAAOC,MAAM3B,EAAM4B,OAAOO,MAAMC,OAAOL,KAChEM,EAAuBlC,EAAMuB,OAAOC,MAAM3B,EAAM4B,OAAOO,MAAML,WAAWC,KAExEO,EAAgBhB,EAAAA,QACpB,IACED,EACGE,IAAI,CAACgB,EAAUC,KACd,MAAMC,EAAkB,IAARD,EACVE,EAASF,IAAQnB,EAAUsB,OAAS,EAE1C,OAAIF,EACK,GAAGhB,SAA4BA,KAAwBc,OAAcP,KAAsBO,KAChGG,EACK,GAAGV,KAAsBO,OAAcd,KAAwBc,OAAcd,SAC/E,GAAGO,KAAsBO,OAEjCK,KAAK,MACV,CAACZ,EAAoBP,EAAsBJ,IAEvCY,EAAWX,EAAAA,QAAQ,IAAM,6BAA6BgB,KAAkB,CAACA,IAE/E,SACEO,kBAAAA,KAACrD,EAAA,CAAasD,MAAO9C,EAAM+C,KAAMC,IAAKhD,EAAMiD,GAAIC,OAAQlD,EAAMmD,MAAOC,OAAQpD,EAAMoD,OAChFC,SAAA,CAAArD,EAAMY,OAAOW,IAAI,CAACH,EAAKoB,MACtBc,kBAAAA,IAACxD,EAAA,CAECyD,KAAK,QACLT,MAAO9C,EAAM+C,KACbS,OAAQxD,EAAM4B,MACdd,IAAKd,EAAMc,IACXC,IAAKf,EAAMe,IACX0C,KAAMzD,EAAMyD,KACZC,MAAOtC,EACPd,YAAeC,EAAaiC,EAAKmB,WAAWC,EAAEC,OAAOH,QACrDI,MAAO,CAAEC,OAAQ,IAAMvB,GACvBvC,iBAAkBoC,EAClBnC,aAAcgC,GAXTM,MAcTc,kBAAAA,IAACzD,EAAA,CACCiD,MAAO9C,EAAM+C,KACbS,OAAQxD,EAAM4B,MACdkC,MAAO,CACLhC,WAAYG"}
@@ -0,0 +1,13 @@
1
+ "use strict";const e=require("./jsx-runtime-BcGej2Kr.cjs"),t=require("./style-D3Lbn1EL.cjs"),n=require("react"),r=require("./component--jGdo2yq.cjs");require("./component.styles-BeRVOt5T.cjs");const s=require("styled-components"),l=require("./style-fRZ6xrVp.cjs"),o=require("./theme.global-CcoD5bPP.cjs"),u=s.css`
2
+ ${e=>i({...o.KEY_SIZE_DATA[e.$size],...e})};
3
+ `,i=e=>s.css`
4
+ gap: ${e.padding-2}px;
5
+ width: 100%;
6
+ `,c=s.div`
7
+ display: flex;
8
+ justify-content: space-between;
9
+ align-items: flex-start;
10
+ ${u};
11
+ ${l.addSX};
12
+ `;exports.InputOTP=s=>{var l;const[o,u]=n.useState(new Array(s.length).fill("")),i=n.useRef([]),a=n.useRef(null),g=n.useCallback((e,t)=>{t.preventDefault();const n=t.clipboardData.getData("Text").replace(/\D/g,"").split("");n.length&&u(t=>{var r,l;const o=[...t];let u=e;for(let e=0;e<n.length&&u<o.length;e++)o[u]=n[e],u++;const c=o.join("");return null==(r=s.onChange)||r.call(s,c),o.every(e=>""!==e)&&(null==(l=s.onComplete)||l.call(s,c)),setTimeout(()=>{var e,t;const n=o.findIndex(e=>""===e);-1!==n?null==(e=i.current[n])||e.focus():u<o.length&&(null==(t=i.current[u])||t.focus())},0),o})},[s]),p=n.useCallback((e,t)=>{/^\d*$/.test(t)&&u(n=>{var r;const l=[...n];return l[e]=t.slice(-1),s.onChange&&s.onChange(l.join("")),l.every(e=>""!==e)&&(null==(r=s.onComplete)||r.call(s,l.join(""))),t&&e<n.length-1&&setTimeout(()=>{var t;null==(t=i.current[e+1])||t.focus()},0),l})},[s]),m=n.useCallback(e=>{setTimeout(()=>e.target.setSelectionRange(0,e.target.value.length),0)},[]);return e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx(c,{$error:s.error,$size:s.size,id:s.id,ref:a,onBlur:e=>{setTimeout(()=>{var t;a.current&&!a.current.contains(document.activeElement)&&(null==(t=s.onBlur)||t.call(s,e))},0)},onFocus:e=>{setTimeout(()=>{var t,n;(null==(t=a.current)?void 0:t.contains(document.activeElement))&&(null==(n=s.onFocus)||n.call(s,e))},0)},$sx:s.sx,children:o.map((t,n)=>e.jsxRuntimeExports.jsx(r.Input,{isWidthAsHeight:!0,tabIndex:n+1,ref:e=>{i.current[n]=e},variety:"standard",type:"text",inputMode:"numeric",maxLength:1,value:t,onFocus:m,onPaste:e=>g(n,e),onChange:e=>p(n,e),onKeyDown:e=>((e,t)=>{const n=i.current[e];if(n){if("ArrowRight"===t.key){const t=e<o.length-1?e+1:0,n=i.current[t];n&&(n.focus(),setTimeout(()=>n.setSelectionRange(0,n.value.length),0))}if("ArrowLeft"===t.key){const t=e>0?e-1:o.length-1,n=i.current[t];n&&(n.focus(),setTimeout(()=>n.setSelectionRange(0,n.value.length),0))}"Backspace"===t.key&&(n.value?setTimeout(()=>n.setSelectionRange(0,n.value.length),0):e>0&&setTimeout(()=>{const t=i.current[e-1];t&&(t.focus(),t.setSelectionRange(0,t.value.length))},0))}})(n,e),genre:s.genre,size:s.size,font:s.font},n))}),(null==s?void 0:s.error)?e.jsxRuntimeExports.jsx(t.ErrorMessage,{...s.error,size:(null==s?void 0:s.error.size)??s.size,font:{size:12,weight:400,family:null==(l=s.font)?void 0:l.family}}):null]})},exports.InputOTPSize=u,exports.InputOTPSizeConstructor=i,exports.InputOTPWrapper=c;
13
+ //# sourceMappingURL=component.styles-gZHy-64x.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component.styles-gZHy-64x.cjs","sources":["../src/components/input-otp/component.styles.ts","../src/components/input-otp/component.tsx"],"sourcesContent":["import styled, { css } from 'styled-components'\n\nimport { addSX } from '@local/styles/sx'\nimport { IThemeSizePropertyDefault, KEY_SIZE_DATA } from '@local/theme'\n\nimport { InputOTPWrapperProps } from '.'\n\n/****************************************** Size *************************************************/\nexport const InputOTPSize = css<InputOTPWrapperProps>`\n ${props => InputOTPSizeConstructor({ ...KEY_SIZE_DATA[props.$size], ...props })};\n`\nexport const InputOTPSizeConstructor = (props: IThemeSizePropertyDefault & InputOTPWrapperProps) => css`\n gap: ${props.padding - 2}px;\n width: 100%;\n`\n\nexport const InputOTPWrapper = styled.div<InputOTPWrapperProps>`\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n ${InputOTPSize};\n ${addSX};\n`\n","import { ErrorMessage } from '@local/styles/error';\n\nimport { ClipboardEvent, FocusEvent, KeyboardEvent, useCallback, useRef, useState } from 'react';\n\nimport { Input } from '../input';\nimport { InputOTPProps, InputOTPWrapper } from '.';\n\nexport const InputOTP = (props: InputOTPProps) => {\n const [otp, setOtp] = useState<string[]>(new Array(props.length).fill(''));\n const inputsRef = useRef<(HTMLInputElement | null)[]>([]);\n const wrapperRef = useRef<HTMLDivElement | null>(null);\n\n const handlePaste = useCallback(\n (index: number, e: ClipboardEvent<HTMLInputElement>) => {\n e.preventDefault();\n\n const pasteData = e.clipboardData.getData('Text');\n const digits = pasteData.replace(/\\D/g, '').split('');\n\n if (!digits.length) return;\n\n setOtp((prevOtp) => {\n const newOtp = [...prevOtp];\n let currentIndex = index;\n\n for (let i = 0; i < digits.length && currentIndex < newOtp.length; i++) {\n newOtp[currentIndex] = digits[i];\n currentIndex++;\n }\n\n const joined = newOtp.join('');\n\n props.onChange?.(joined);\n\n if (newOtp.every((char) => char !== '')) {\n props.onComplete?.(joined);\n }\n\n setTimeout(() => {\n const firstEmpty = newOtp.findIndex((char) => char === '');\n if (firstEmpty !== -1) {\n inputsRef.current[firstEmpty]?.focus();\n } else if (currentIndex < newOtp.length) {\n inputsRef.current[currentIndex]?.focus();\n }\n }, 0);\n\n return newOtp;\n });\n },\n [props],\n );\n\n const handleChange = useCallback(\n (index: number, value: string) => {\n if (!/^\\d*$/.test(value)) return;\n\n setOtp((prevOtp) => {\n const newOtp = [...prevOtp];\n newOtp[index] = value.slice(-1);\n\n if (props.onChange) {\n props.onChange(newOtp.join(''));\n }\n\n if (newOtp.every((char) => char !== '')) {\n props.onComplete?.(newOtp.join(''));\n }\n\n if (value && index < prevOtp.length - 1) {\n setTimeout(() => {\n inputsRef.current[index + 1]?.focus();\n }, 0);\n }\n\n return newOtp;\n });\n },\n [props],\n );\n\n const handleKeyDown = (index: number, e: KeyboardEvent<HTMLInputElement>) => {\n const input = inputsRef.current[index];\n\n if (!input) return;\n\n if (e.key === 'ArrowRight') {\n const nextIndex = index < otp.length - 1 ? index + 1 : 0;\n const nextInput = inputsRef.current[nextIndex];\n\n if (nextInput) {\n nextInput.focus();\n setTimeout(() => nextInput.setSelectionRange(0, nextInput.value.length), 0);\n }\n }\n\n if (e.key === 'ArrowLeft') {\n const prevIndex = index > 0 ? index - 1 : otp.length - 1;\n const prevInput = inputsRef.current[prevIndex];\n\n if (prevInput) {\n prevInput.focus();\n setTimeout(() => prevInput.setSelectionRange(0, prevInput.value.length), 0);\n }\n }\n\n if (e.key === 'Backspace') {\n if (input.value) {\n setTimeout(() => input.setSelectionRange(0, input.value.length), 0);\n } else if (index > 0) {\n setTimeout(() => {\n const prevInput = inputsRef.current[index - 1];\n if (prevInput) {\n prevInput.focus();\n prevInput.setSelectionRange(0, prevInput.value.length);\n }\n }, 0);\n }\n }\n };\n\n const handleFocusInput = useCallback((e: FocusEvent<HTMLInputElement>) => {\n setTimeout(() => e.target.setSelectionRange(0, e.target.value.length), 0);\n }, []);\n return (\n <>\n <InputOTPWrapper\n $error={props.error}\n $size={props.size}\n id={props.id}\n ref={wrapperRef}\n onBlur={(e) => {\n setTimeout(() => {\n if (wrapperRef.current && !wrapperRef.current.contains(document.activeElement)) {\n props.onBlur?.(e);\n }\n }, 0);\n }}\n onFocus={(e) => {\n setTimeout(() => {\n if (wrapperRef.current?.contains(document.activeElement)) {\n props.onFocus?.(e);\n }\n }, 0);\n }}\n $sx={props.sx}\n >\n {otp.map((digit, index) => (\n <Input\n isWidthAsHeight\n key={index}\n tabIndex={index + 1}\n ref={(el) => {\n inputsRef.current[index] = el;\n }}\n variety='standard'\n type='text'\n inputMode='numeric'\n maxLength={1}\n value={digit}\n onFocus={handleFocusInput}\n onPaste={(e) => handlePaste(index, e)}\n onChange={(value) => handleChange(index, value)}\n onKeyDown={(e) => handleKeyDown(index, e)}\n genre={props.genre}\n size={props.size}\n font={props.font}\n />\n ))}\n </InputOTPWrapper>\n {props?.error ? (\n <ErrorMessage\n {...props.error}\n size={props?.error.size ?? props.size}\n font={{\n size: 12,\n weight: 400,\n family: props.font?.family,\n }}\n />\n ) : null}\n </>\n );\n};\n"],"names":["InputOTPSize","css","props","InputOTPSizeConstructor","KEY_SIZE_DATA","$size","padding","InputOTPWrapper","styled","div","addSX","otp","setOtp","useState","Array","length","fill","inputsRef","useRef","wrapperRef","handlePaste","useCallback","index","e","preventDefault","digits","clipboardData","getData","replace","split","prevOtp","newOtp","currentIndex","i","joined","join","_a","onChange","call","every","char","_b","onComplete","setTimeout","firstEmpty","findIndex","current","focus","handleChange","value","test","slice","handleFocusInput","target","setSelectionRange","jsxs","Fragment","children","jsx","$error","error","size","id","ref","onBlur","contains","document","activeElement","onFocus","$sx","sx","map","digit","Input","isWidthAsHeight","tabIndex","el","variety","type","inputMode","maxLength","onPaste","onKeyDown","input","key","nextIndex","nextInput","prevIndex","prevInput","handleKeyDown","genre","font","ErrorMessage","weight","family"],"mappings":"iTAQaA,EAAeC,EAAAA,GAAAA;IACxBC,GAASC,EAAwB,IAAKC,EAAAA,cAAcF,EAAMG,UAAWH;EAE5DC,EAA2BD,GAA4DD,EAAAA,GAAAA;SAC3FC,EAAMI,QAAU;;EAIZC,EAAkBC,EAAOC,GAAA;;;;IAIlCT;IACAU;mBCdqBR,UACvB,MAAOS,EAAKC,GAAUC,WAAmB,IAAIC,MAAMZ,EAAMa,QAAQC,KAAK,KAChEC,EAAYC,EAAAA,OAAoC,IAChDC,EAAaD,EAAAA,OAA8B,MAE3CE,EAAcC,EAAAA,YAClB,CAACC,EAAeC,KACdA,EAAEC,iBAEF,MACMC,EADYF,EAAEG,cAAcC,QAAQ,QACjBC,QAAQ,MAAO,IAAIC,MAAM,IAE7CJ,EAAOV,QAEZH,EAAQkB,YACN,MAAMC,EAAS,IAAID,GACnB,IAAIE,EAAeV,EAEnB,IAAA,IAASW,EAAI,EAAGA,EAAIR,EAAOV,QAAUiB,EAAeD,EAAOhB,OAAQkB,IACjEF,EAAOC,GAAgBP,EAAOQ,GAC9BD,IAGF,MAAME,EAASH,EAAOI,KAAK,IAiB3B,OAfA,OAAAC,EAAAlC,EAAMmC,WAAND,EAAAE,KAAApC,EAAiBgC,GAEbH,EAAOQ,MAAOC,GAAkB,KAATA,KACzB,OAAAC,EAAAvC,EAAMwC,aAAND,EAAAH,KAAApC,EAAmBgC,IAGrBS,WAAW,aACT,MAAMC,EAAab,EAAOc,UAAWL,GAAkB,KAATA,IAC3B,IAAfI,EACF,OAAAR,EAAAnB,EAAU6B,QAAQF,KAAlBR,EAA+BW,QACtBf,EAAeD,EAAOhB,SAC/B,OAAA0B,EAAAxB,EAAU6B,QAAQd,KAAlBS,EAAiCM,UAElC,GAEIhB,KAGX,CAAC7B,IAGG8C,EAAe3B,EAAAA,YACnB,CAACC,EAAe2B,KACT,QAAQC,KAAKD,IAElBrC,EAAQkB,UACN,MAAMC,EAAS,IAAID,GAiBnB,OAhBAC,EAAOT,GAAS2B,EAAME,OAAM,GAExBjD,EAAMmC,UACRnC,EAAMmC,SAASN,EAAOI,KAAK,KAGzBJ,EAAOQ,MAAOC,GAAkB,KAATA,KACzB,OAAAJ,EAAAlC,EAAMwC,aAANN,EAAAE,KAAApC,EAAmB6B,EAAOI,KAAK,MAG7Bc,GAAS3B,EAAQQ,EAAQf,OAAS,GACpC4B,WAAW,WACT,OAAAP,EAAAnB,EAAU6B,QAAQxB,EAAQ,KAA1Bc,EAA8BW,SAC7B,GAGEhB,KAGX,CAAC7B,IA2CGkD,EAAmB/B,cAAaE,IACpCoB,WAAW,IAAMpB,EAAE8B,OAAOC,kBAAkB,EAAG/B,EAAE8B,OAAOJ,MAAMlC,QAAS,IACtE,IACH,SACEwC,kBAAAA,KAAAC,6BAAA,CACEC,SAAA,GAAAC,kBAAAA,IAACnD,EAAA,CACCoD,OAAQzD,EAAM0D,MACdvD,MAAOH,EAAM2D,KACbC,GAAI5D,EAAM4D,GACVC,IAAK5C,EACL6C,OAASzC,IACPoB,WAAW,WACLxB,EAAW2B,UAAY3B,EAAW2B,QAAQmB,SAASC,SAASC,iBAC9D,OAAA/B,EAAAlC,EAAM8D,SAAN5B,EAAAE,KAAApC,EAAeqB,KAEhB,IAEL6C,QAAU7C,IACRoB,WAAW,cACL,OAAAP,EAAAjB,EAAW2B,gBAAXV,EAAoB6B,SAASC,SAASC,kBACxC,OAAA1B,EAAAvC,EAAMkE,UAAN3B,EAAAH,KAAApC,EAAgBqB,KAEjB,IAEL8C,IAAKnE,EAAMoE,GAEVb,SAAA9C,EAAI4D,IAAI,CAACC,EAAOlD,MACfoC,kBAAAA,IAACe,EAAAA,MAAA,CACCC,iBAAe,EAEfC,SAAUrD,EAAQ,EAClByC,IAAMa,IACJ3D,EAAU6B,QAAQxB,GAASsD,GAE7BC,QAAQ,WACRC,KAAK,OACLC,UAAU,UACVC,UAAW,EACX/B,MAAOuB,EACPJ,QAAShB,EACT6B,QAAU1D,GAAMH,EAAYE,EAAOC,GACnCc,SAAWY,GAAUD,EAAa1B,EAAO2B,GACzCiC,UAAY3D,GAlFA,EAACD,EAAeC,KACpC,MAAM4D,EAAQlE,EAAU6B,QAAQxB,GAEhC,GAAK6D,EAAL,CAEA,GAAc,eAAV5D,EAAE6D,IAAsB,CAC1B,MAAMC,EAAY/D,EAAQX,EAAII,OAAS,EAAIO,EAAQ,EAAI,EACjDgE,EAAYrE,EAAU6B,QAAQuC,GAEhCC,IACFA,EAAUvC,QACVJ,WAAW,IAAM2C,EAAUhC,kBAAkB,EAAGgC,EAAUrC,MAAMlC,QAAS,GAC3E,CAGF,GAAc,cAAVQ,EAAE6D,IAAqB,CACzB,MAAMG,EAAYjE,EAAQ,EAAIA,EAAQ,EAAIX,EAAII,OAAS,EACjDyE,EAAYvE,EAAU6B,QAAQyC,GAEhCC,IACFA,EAAUzC,QACVJ,WAAW,IAAM6C,EAAUlC,kBAAkB,EAAGkC,EAAUvC,MAAMlC,QAAS,GAC3E,CAGY,cAAVQ,EAAE6D,MACAD,EAAMlC,MACRN,WAAW,IAAMwC,EAAM7B,kBAAkB,EAAG6B,EAAMlC,MAAMlC,QAAS,GACxDO,EAAQ,GACjBqB,WAAW,KACT,MAAM6C,EAAYvE,EAAU6B,QAAQxB,EAAQ,GACxCkE,IACFA,EAAUzC,QACVyC,EAAUlC,kBAAkB,EAAGkC,EAAUvC,MAAMlC,UAEhD,GAhCK,GA+Ec0E,CAAcnE,EAAOC,GACvCmE,MAAOxF,EAAMwF,MACb7B,KAAM3D,EAAM2D,KACZ8B,KAAMzF,EAAMyF,MAhBPrE,OAoBV,MAAApB,OAAA,EAAAA,EAAO0D,OACNF,EAAAA,kBAAAA,IAACkC,EAAAA,aAAA,IACK1F,EAAM0D,MACVC,MAAM,MAAA3D,OAAA,EAAAA,EAAO0D,MAAMC,OAAQ3D,EAAM2D,KACjC8B,KAAM,CACJ9B,KAAM,GACNgC,OAAQ,IACRC,OAAQ,OAAA1D,EAAAlC,EAAMyF,WAAN,EAAAvD,EAAY0D,UAGtB"}
@@ -1,4 +1,4 @@
1
- "use strict";const e=require("./jsx-runtime-BcGej2Kr.cjs"),t=require("./consts.cjs.js"),s=require("./use-D7IsSb34.cjs"),i=require("./component-u_42PteJ.cjs"),r=require("./component.styles-DLU0S0KI.cjs"),o=require("./component-BV_7tGiu.cjs"),n=require("styled-components"),a=require("./component-CACoGUK9.cjs"),l=require("./context.constants-CTfUKury.cjs"),d=require("./theme.global-B9t2Fi10.cjs"),u=require("react"),c=require("./style-B5u4pW5G.cjs"),g=require("framer-motion"),p=require("./style-fRZ6xrVp.cjs"),m=n.css`
1
+ "use strict";const e=require("./jsx-runtime-BcGej2Kr.cjs"),t=require("./consts.cjs.js"),s=require("./use-Dg449cuf.cjs"),i=require("./component-B1bvPlyB.cjs"),r=require("./component.styles-BTsmbWT6.cjs"),o=require("./component-BV_7tGiu.cjs"),n=require("styled-components"),a=require("./component-C67KboOB.cjs"),l=require("./context.constants-ByXsACU7.cjs"),d=require("./theme.global-CcoD5bPP.cjs"),u=require("react"),c=require("./style-D3Lbn1EL.cjs"),g=require("framer-motion"),p=require("./style-fRZ6xrVp.cjs"),m=n.css`
2
2
  ${e=>n.css`
3
3
  background: ${e.theme.colors.imageSelect[e.$genre].background.rest};
4
4
  color: ${e.theme.colors.imageSelect[e.$genre].color.rest};
@@ -16,15 +16,15 @@
16
16
  `,h=e=>n.css`
17
17
  padding: ${e.padding}px;
18
18
  border-radius: ${e.radius}px;
19
- `,j=n.css`
20
- ${e=>f(d.KEY_SIZE_DATA[e.$size])};
21
- `,f=e=>n.css`
19
+ `,f=n.css`
20
+ ${e=>j(d.KEY_SIZE_DATA[e.$size])};
21
+ `,j=e=>n.css`
22
22
  gap: ${e.padding-2}px;
23
23
  `,S=n.div`
24
24
  display: flex;
25
25
  flex-direction: column;
26
26
  width: 100%;
27
- ${j};
27
+ ${f};
28
28
  ${c.addError};
29
29
  ${p.addSX};
30
30
  `,b=n(g.motion.div)`
@@ -35,5 +35,5 @@
35
35
  width: 100%;
36
36
  ${m}
37
37
  ${x}
38
- `;exports.ImageSelect=p=>{const{onChange:m}=p,x=u.useMemo(()=>d.KEY_SIZE_DATA[p.size],[p.size]),[h,j]=u.useState(p.images||[]),[f,v]=u.useState(!1),$=u.useRef(null),y=n.useTheme(),E=u.useCallback(e=>{e&&j(t=>{const s=e.map((e,s)=>({...e,index:t.length+s})),i=[...t,...s];return null==m||m(i),i})},[m]),z=()=>{var e;null==(e=$.current)||e.click()},{handleAddFiles:R}=s.useImageCrop({onSave:E,locale:p.locale,dialog:{button:{genre:p.propsButton.default.genre,size:p.propsButton.default.size},buttonDelete:{genre:p.propsButton.delete.genre,size:p.propsButton.delete.size}},imageSettings:{maxSize:p.imageSettings.maxSize,maxCount:p.imageSettings.maxCount-h.length,aspect:p.imageSettings.aspect},refInput:$}),{handleAdd:k}=(t=>{const s=u.useMemo(()=>d.KEY_SIZE_DATA[t.size],[t.size]),n=u.useMemo(()=>`${s.radius}px`,[s.radius]),{add:c}=l.useDialog({br:n,propsDialog:{borderRadius:n,padding:"0",background:"whiteStandard"}});return{handleAdd:u.useCallback(s=>{c({content:(n,l)=>e.jsxRuntimeExports.jsxs(o.Stack,{sx:{default:{position:"relative",overflow:"hidden",aspectRatio:2*t.imageSettings.aspect+" / 2",width:"auto",maxWidth:"70dvw",height:"85dvh",borderRadius:null==n?void 0:n.br},tablet:{maxWidth:"95dvw"}},children:[e.jsxRuntimeExports.jsx(r.Image,{sxStack:e=>({default:{width:"100%",height:"100%",alignItems:"center",justifyContent:"center",backgroundColor:e.palette.black10,position:"absolute",pointerEvents:"none"}}),isShowBeforeImage:!0,sxImage:{default:{objectFit:"contain"}},alt:null==s?void 0:s.imageSrc,src:null==s?void 0:s.imageSrc,componentFallback:e.jsxRuntimeExports.jsx(a.Typography,{sx:{default:{variant:"h6"}},children:t.locale.imageFallback})}),e.jsxRuntimeExports.jsx(i.Button,{sx:{default:{position:"absolute",bottom:15,right:15}},genre:"realebail-white",size:"small",icons:[{type:"id",name:"Arrow4"}],isWidthAsHeight:!0,isHiddenBorder:!0,isRadius:!0,onClick:()=>null==l?void 0:l()})]})})},[c,t.imageSettings.aspect,t.locale.imageFallback])}})({size:p.size,locale:p.locale,imageSettings:p.imageSettings,genre:p.genre});return u.useEffect(()=>{j(p.images||[])},[p.images]),e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsxs(S,{$genre:p.genre,$size:p.size,id:p.id,$sx:p.sx,$error:p.error,children:[e.jsxRuntimeExports.jsxs(b,{onDrop:e=>{(e=>{var t;e.preventDefault(),(null==(t=e.dataTransfer.files)?void 0:t.length)&&R(e.dataTransfer.files)})(e),v(!1)},onDragOver:e=>e.preventDefault(),onDragEnter:()=>v(!0),onDragLeave:()=>v(!1),animate:{borderColor:f?y.colors.imageSelect[p.genre].border.hover:y.colors.imageSelect[p.genre].border.rest},transition:{duration:.3},$genre:p.genre,$size:p.size,children:[e.jsxRuntimeExports.jsxs(g.motion.div,{transition:{layout:{duration:.3,ease:"easeInOut",type:"spring"}},layout:!0,style:{display:"flex",flexWrap:"wrap",gap:x.padding-2+"px"},children:[h.map(t=>t.url&&e.jsxRuntimeExports.jsxs(g.motion.div,{style:{position:"relative",width:`${p.imageSettings.width}px`,height:`${p.imageSettings.height}px`,userSelect:"none",overflow:"hidden",borderRadius:`${x.radius}px`,flexGrow:1},layout:!0,transition:{layout:{duration:.3,ease:"easeInOut",type:"spring"}},children:[e.jsxRuntimeExports.jsx(r.Image,{sxStack:e=>({default:{width:"100%",height:"100%",alignItems:"center",justifyContent:"center",backgroundColor:e.palette.black10,position:"absolute",pointerEvents:"none"}}),isShowBeforeImage:p.isContain,sxImage:{default:{objectFit:p.isContain?"contain":"cover"}},alt:t.name||"image",src:t.url,componentFallback:e.jsxRuntimeExports.jsx(a.Typography,{sx:{default:{variant:"h6"}},children:p.locale.imageFallback})}),e.jsxRuntimeExports.jsx(i.Button,{sx:{default:{position:"absolute",top:5,right:5}},genre:p.genre,size:"small",icons:[{type:"id",name:"Close"}],isWidthAsHeight:!0,isHiddenBorder:!0,isRadius:!0,onClick:()=>{return e=t.id,void j(t=>{const s=t.filter(t=>t.id!==e);return null==m||m(s),s});var e}}),e.jsxRuntimeExports.jsx(i.Button,{sx:{default:{position:"absolute",bottom:5,right:5}},genre:p.genre,size:"small",icons:[{type:"id",name:"Activity"}],isWidthAsHeight:!0,isHiddenBorder:!0,isRadius:!0,onClick:()=>t.url&&k({id:t.id,imageSrc:t.url})})]},t.id)),0===h.length?e.jsxRuntimeExports.jsx("div",{onClick:z,style:{position:"relative",width:`${p.imageSettings.width}px`,height:`${p.imageSettings.height}px`,userSelect:"none",overflow:"hidden",borderRadius:`${x.radius}px`,flexGrow:1,display:"flex",alignItems:"center",justifyContent:"center",textAlign:"center",cursor:"pointer"},children:e.jsxRuntimeExports.jsx(a.Typography,{style:{color:y.colors.imageSelect[p.genre].color.rest},sx:{default:{}},children:p.locale.dragAndDrop})},"empty"):null]}),e.jsxRuntimeExports.jsx("input",{ref:$,type:"file",accept:t.ImageSupportedFormatsForInput,multiple:!0,style:{display:"none"},onChange:e=>{e.target.files&&R(e.target.files)}})]}),e.jsxRuntimeExports.jsxs(o.Stack,{sx:{default:{flexGrow:1,gap:x.padding-2+"px"}},children:[e.jsxRuntimeExports.jsx(i.Button,{type:"button",genre:p.genre,size:p.size,sx:{default:{flexGrow:3}},isRadius:!0,onClick:z,children:p.locale.buttonAdd}),e.jsxRuntimeExports.jsx(i.Button,{isRadius:!0,type:"button",sx:{default:{flexGrow:1}},onClick:()=>{j(p.defaultImages||[]),null==m||m(p.defaultImages||[])},genre:p.genre,size:p.size,children:p.locale.buttonReset})]})]}),(null==p?void 0:p.error)?e.jsxRuntimeExports.jsx(c.ErrorMessage,{...p.error,size:(null==p?void 0:p.error.size)??p.size}):null]})},exports.ImageSelectListSize=x,exports.ImageSelectListSizeConstructor=h,exports.ImageSelectListWrapper=b,exports.ImageSelectSize=j,exports.ImageSelectSizeConstructor=f,exports.ImageSelectWrapper=S;
39
- //# sourceMappingURL=component.styles--Ug3PJQ6.cjs.map
38
+ `;exports.ImageSelect=p=>{const{onChange:m}=p,x=u.useMemo(()=>d.KEY_SIZE_DATA[p.size],[p.size]),[h,f]=u.useState(p.images||[]),[j,v]=u.useState(!1),y=u.useRef(null),$=n.useTheme(),E=u.useCallback(e=>{e&&f(t=>{const s=e.map((e,s)=>({...e,index:t.length+s})),i=[...t,...s];return null==m||m(i),i})},[m]),z=()=>{var e;null==(e=y.current)||e.click()},{handleAddFiles:R}=s.useImageCrop({onSave:E,locale:p.locale,dialog:{button:{genre:p.propsButton.default.genre,size:p.propsButton.default.size},buttonDelete:{genre:p.propsButton.delete.genre,size:p.propsButton.delete.size}},imageSettings:{maxSize:p.imageSettings.maxSize,maxCount:p.imageSettings.maxCount-h.length,aspect:p.imageSettings.aspect},refInput:y}),{handleAdd:k}=(t=>{const s=u.useMemo(()=>d.KEY_SIZE_DATA[t.size],[t.size]),n=u.useMemo(()=>`${s.radius}px`,[s.radius]),{add:c}=l.useDialog({br:n,propsDialog:{borderRadius:n,padding:"0",background:"whiteStandard"}});return{handleAdd:u.useCallback(s=>{c({content:(n,l)=>e.jsxRuntimeExports.jsxs(o.Stack,{sx:{default:{position:"relative",overflow:"hidden",aspectRatio:2*t.imageSettings.aspect+" / 2",width:"auto",maxWidth:"70dvw",height:"85dvh",borderRadius:null==n?void 0:n.br},tablet:{maxWidth:"95dvw"}},children:[e.jsxRuntimeExports.jsx(r.Image,{sxStack:e=>({default:{width:"100%",height:"100%",alignItems:"center",justifyContent:"center",backgroundColor:e.palette.black10,position:"absolute",pointerEvents:"none"}}),isShowBeforeImage:!0,sxImage:{default:{objectFit:"contain"}},alt:null==s?void 0:s.imageSrc,src:null==s?void 0:s.imageSrc,componentFallback:e.jsxRuntimeExports.jsx(a.Typography,{sx:{default:{variant:"h6"}},children:t.locale.imageFallback})}),e.jsxRuntimeExports.jsx(i.Button,{sx:{default:{position:"absolute",bottom:15,right:15}},genre:"realebail-white",size:"small",icons:[{type:"id",name:"Arrow4"}],isWidthAsHeight:!0,isHiddenBorder:!0,isRadius:!0,onClick:()=>null==l?void 0:l()})]})})},[c,t.imageSettings.aspect,t.locale.imageFallback])}})({size:p.size,locale:p.locale,imageSettings:p.imageSettings,genre:p.genre});return u.useEffect(()=>{f(p.images||[])},[p.images]),e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsxs(S,{$genre:p.genre,$size:p.size,id:p.id,$sx:p.sx,$error:p.error,children:[e.jsxRuntimeExports.jsxs(b,{onDrop:e=>{(e=>{var t;e.preventDefault(),(null==(t=e.dataTransfer.files)?void 0:t.length)&&R(e.dataTransfer.files)})(e),v(!1)},onDragOver:e=>e.preventDefault(),onDragEnter:()=>v(!0),onDragLeave:()=>v(!1),animate:{borderColor:j?$.colors.imageSelect[p.genre].border.hover:$.colors.imageSelect[p.genre].border.rest},transition:{duration:.3},$genre:p.genre,$size:p.size,children:[e.jsxRuntimeExports.jsxs(g.motion.div,{transition:{layout:{duration:.3,ease:"easeInOut",type:"spring"}},layout:!0,style:{display:"flex",flexWrap:"wrap",gap:x.padding-2+"px"},children:[h.map(t=>t.url&&e.jsxRuntimeExports.jsxs(g.motion.div,{style:{position:"relative",width:`${p.imageSettings.width}px`,height:`${p.imageSettings.height}px`,userSelect:"none",overflow:"hidden",borderRadius:`${x.radius}px`,flexGrow:1},layout:!0,transition:{layout:{duration:.3,ease:"easeInOut",type:"spring"}},children:[e.jsxRuntimeExports.jsx(r.Image,{sxStack:e=>({default:{width:"100%",height:"100%",alignItems:"center",justifyContent:"center",backgroundColor:e.palette.black10,position:"absolute",pointerEvents:"none"}}),isShowBeforeImage:p.isContain,sxImage:{default:{objectFit:p.isContain?"contain":"cover"}},alt:t.name||"image",src:t.url,componentFallback:e.jsxRuntimeExports.jsx(a.Typography,{sx:{default:{variant:"h6"}},children:p.locale.imageFallback})}),e.jsxRuntimeExports.jsx(i.Button,{sx:{default:{position:"absolute",top:5,right:5}},genre:p.genre,size:"small",icons:[{type:"id",name:"Close"}],isWidthAsHeight:!0,isHiddenBorder:!0,isRadius:!0,onClick:()=>{return e=t.id,void f(t=>{const s=t.filter(t=>t.id!==e);return null==m||m(s),s});var e}}),e.jsxRuntimeExports.jsx(i.Button,{sx:{default:{position:"absolute",bottom:5,right:5}},genre:p.genre,size:"small",icons:[{type:"id",name:"Activity"}],isWidthAsHeight:!0,isHiddenBorder:!0,isRadius:!0,onClick:()=>t.url&&k({id:t.id,imageSrc:t.url})})]},t.id)),0===h.length?e.jsxRuntimeExports.jsx("div",{onClick:z,style:{position:"relative",width:`${p.imageSettings.width}px`,height:`${p.imageSettings.height}px`,userSelect:"none",overflow:"hidden",borderRadius:`${x.radius}px`,flexGrow:1,display:"flex",alignItems:"center",justifyContent:"center",textAlign:"center",cursor:"pointer"},children:e.jsxRuntimeExports.jsx(a.Typography,{style:{color:$.colors.imageSelect[p.genre].color.rest},sx:{default:{}},children:p.locale.dragAndDrop})},"empty"):null]}),e.jsxRuntimeExports.jsx("input",{ref:y,type:"file",accept:t.ImageSupportedFormatsForInput,multiple:!0,style:{display:"none"},onChange:e=>{e.target.files&&R(e.target.files)}})]}),e.jsxRuntimeExports.jsxs(o.Stack,{sx:{default:{flexGrow:1,gap:x.padding-2+"px"}},children:[e.jsxRuntimeExports.jsx(i.Button,{type:"button",genre:p.genre,size:p.size,sx:{default:{flexGrow:3}},isRadius:!0,onClick:z,children:p.locale.buttonAdd}),e.jsxRuntimeExports.jsx(i.Button,{isRadius:!0,type:"button",sx:{default:{flexGrow:1}},onClick:()=>{f(p.defaultImages||[]),null==m||m(p.defaultImages||[])},genre:p.genre,size:p.size,children:p.locale.buttonReset})]})]}),(null==p?void 0:p.error)?e.jsxRuntimeExports.jsx(c.ErrorMessage,{...p.error,size:(null==p?void 0:p.error.size)??p.size,font:{size:12,weight:400,family:$.font.family}}):null]})},exports.ImageSelectListSize=x,exports.ImageSelectListSizeConstructor=h,exports.ImageSelectListWrapper=b,exports.ImageSelectSize=f,exports.ImageSelectSizeConstructor=j,exports.ImageSelectWrapper=S;
39
+ //# sourceMappingURL=component.styles-iHE8mmya.cjs.map