@jenesei-software/jenesei-kit-react 1.3.8 → 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 (292) hide show
  1. package/README.md +0 -20
  2. package/build/{area-CH6c_n7-.js → area-BYuHpaUX.js} +2 -2
  3. package/build/{area-CH6c_n7-.js.map → area-BYuHpaUX.js.map} +1 -1
  4. package/build/{area-AbheP_ot.cjs → area-C6XuN6wk.cjs} +2 -2
  5. package/build/{area-AbheP_ot.cjs.map → area-C6XuN6wk.cjs.map} +1 -1
  6. package/build/{area-CFZW3T1g.js → area-CkM4ZN2F.js} +2 -2
  7. package/build/{area-CFZW3T1g.js.map → area-CkM4ZN2F.js.map} +1 -1
  8. package/build/{area-C3wR_pPr.cjs → area-oZm7ewxw.cjs} +2 -2
  9. package/build/{area-C3wR_pPr.cjs.map → area-oZm7ewxw.cjs.map} +1 -1
  10. package/build/area-preview.cjs.js +1 -1
  11. package/build/area-preview.es.js +1 -1
  12. package/build/area-skeleton.cjs.js +1 -1
  13. package/build/area-skeleton.es.js +1 -1
  14. package/build/build-info.txt +3 -3
  15. package/build/component--jGdo2yq.cjs +2 -0
  16. package/build/component--jGdo2yq.cjs.map +1 -0
  17. package/build/component-B1bvPlyB.cjs +90 -0
  18. package/build/component-B1bvPlyB.cjs.map +1 -0
  19. package/build/{component-DfqhPd0e.cjs → component-BYox4gmt.cjs} +2 -2
  20. package/build/{component-DfqhPd0e.cjs.map → component-BYox4gmt.cjs.map} +1 -1
  21. package/build/component-C67KboOB.cjs +245 -0
  22. package/build/component-C67KboOB.cjs.map +1 -0
  23. package/build/{component-D7A-4DNQ.cjs → component-CLqcB5mM.cjs} +2 -2
  24. package/build/component-CLqcB5mM.cjs.map +1 -0
  25. package/build/{component-BuxekWox.cjs → component-CY7lfJVv.cjs} +2 -2
  26. package/build/{component-BuxekWox.cjs.map → component-CY7lfJVv.cjs.map} +1 -1
  27. package/build/{component-BFhXrZ3a.js → component-CvW0MIM8.js} +3 -3
  28. package/build/{component-BFhXrZ3a.js.map → component-CvW0MIM8.js.map} +1 -1
  29. package/build/{component-vpCWcIhC.js → component-DHM9pbab.js} +3 -3
  30. package/build/component-DHM9pbab.js.map +1 -0
  31. package/build/{component-CmotrA_9.js → component-DJYgewYg.js} +32 -11
  32. package/build/component-DJYgewYg.js.map +1 -0
  33. package/build/component-DKMsOpqH.js +710 -0
  34. package/build/component-DKMsOpqH.js.map +1 -0
  35. package/build/{component-D8qbXvM4.js → component-DaXKDHnc.js} +48 -7
  36. package/build/component-DaXKDHnc.js.map +1 -0
  37. package/build/{component-BvLPfi2B.js → component-WUYE2soZ.js} +2 -2
  38. package/build/{component-BvLPfi2B.js.map → component-WUYE2soZ.js.map} +1 -1
  39. package/build/component-accordion.cjs.js +1 -1
  40. package/build/component-accordion.d.ts +1 -1
  41. package/build/component-accordion.es.js +1 -1
  42. package/build/component-button-group.cjs.js +1 -1
  43. package/build/component-button-group.d.ts +40 -7
  44. package/build/component-button-group.es.js +1 -1
  45. package/build/component-button.cjs.js +1 -1
  46. package/build/component-button.d.ts +43 -8
  47. package/build/component-button.es.js +1 -1
  48. package/build/component-checkbox-group.cjs.js +1 -1
  49. package/build/component-checkbox-group.d.ts +39 -9
  50. package/build/component-checkbox-group.es.js +1 -1
  51. package/build/component-checkbox.cjs.js +1 -1
  52. package/build/component-checkbox.d.ts +41 -9
  53. package/build/component-checkbox.es.js +1 -1
  54. package/build/component-date-picker.cjs.js +1 -1
  55. package/build/component-date-picker.d.ts +57 -43
  56. package/build/component-date-picker.es.js +1 -1
  57. package/build/component-icon.cjs.js +1 -1
  58. package/build/component-icon.d.ts +16 -3
  59. package/build/component-icon.es.js +3 -2
  60. package/build/component-image-button.cjs.js +1 -1
  61. package/build/component-image-button.d.ts +40 -7
  62. package/build/component-image-button.es.js +1 -1
  63. package/build/component-image-select.cjs.js +1 -1
  64. package/build/component-image-select.d.ts +40 -7
  65. package/build/component-image-select.es.js +1 -1
  66. package/build/component-image-slider.cjs.js +1 -1
  67. package/build/component-image-slider.d.ts +1 -1
  68. package/build/component-image-slider.es.js +1 -1
  69. package/build/component-image.cjs.js +1 -1
  70. package/build/component-image.es.js +1 -1
  71. package/build/component-input-otp.cjs.js +1 -1
  72. package/build/component-input-otp.d.ts +52 -6
  73. package/build/component-input-otp.es.js +1 -1
  74. package/build/component-input.cjs.js +1 -1
  75. package/build/component-input.d.ts +63 -15
  76. package/build/component-input.es.js +2 -2
  77. package/build/component-map.cjs.js +1 -1
  78. package/build/component-map.d.ts +11 -12
  79. package/build/component-map.es.js +2 -2
  80. package/build/component-pagination.cjs.js +1 -1
  81. package/build/component-pagination.d.ts +40 -7
  82. package/build/component-pagination.es.js +1 -1
  83. package/build/component-range.cjs.js +1 -1
  84. package/build/component-range.d.ts +51 -5
  85. package/build/component-range.es.js +1 -1
  86. package/build/component-ripple.cjs.js +1 -1
  87. package/build/component-ripple.es.js +1 -1
  88. package/build/component-select.cjs.js +1 -1
  89. package/build/component-select.d.ts +51 -10
  90. package/build/component-select.es.js +1 -1
  91. package/build/component-separator.d.ts +1 -1
  92. package/build/component-textarea.cjs.js +1 -1
  93. package/build/component-textarea.d.ts +51 -8
  94. package/build/component-textarea.es.js +1 -1
  95. package/build/component-toggle.cjs.js +1 -1
  96. package/build/component-toggle.d.ts +52 -3
  97. package/build/component-toggle.es.js +1 -1
  98. package/build/component-tooltip.cjs.js +1 -1
  99. package/build/component-tooltip.d.ts +18 -6
  100. package/build/component-tooltip.es.js +1 -1
  101. package/build/component-typography.cjs.js +1 -1
  102. package/build/component-typography.d.ts +31 -17
  103. package/build/component-typography.es.js +7 -6
  104. package/build/component-typography.es.js.map +1 -1
  105. package/build/{component.components-BWWKHxKD.cjs → component.components-CeKyOsDE.cjs} +3 -3
  106. package/build/component.components-CeKyOsDE.cjs.map +1 -0
  107. package/build/{component.components-BPIVZi-R.js → component.components-f-tFdB6f.js} +26 -18
  108. package/build/component.components-f-tFdB6f.js.map +1 -0
  109. package/build/{component.constants-DyKCJRH3.cjs → component.constants-B9xzGc3A.cjs} +2 -2
  110. package/build/{component.constants-DyKCJRH3.cjs.map → component.constants-B9xzGc3A.cjs.map} +1 -1
  111. package/build/{component.constants-CmQuESzl.js → component.constants-BrJrCmlA.js} +2 -2
  112. package/build/{component.constants-CmQuESzl.js.map → component.constants-BrJrCmlA.js.map} +1 -1
  113. package/build/{component.constants-D8QVKsqc.cjs → component.constants-DRPyaSU8.cjs} +3 -3
  114. package/build/{component.constants-D8QVKsqc.cjs.map → component.constants-DRPyaSU8.cjs.map} +1 -1
  115. package/build/{component.constants-Dtw4932G.js → component.constants-amkB3VHg.js} +7 -7
  116. package/build/{component.constants-Dtw4932G.js.map → component.constants-amkB3VHg.js.map} +1 -1
  117. package/build/component.functions-D9ffjEok.cjs +8 -0
  118. package/build/component.functions-D9ffjEok.cjs.map +1 -0
  119. package/build/component.functions-DNW6h8kk.js +12 -0
  120. package/build/component.functions-DNW6h8kk.js.map +1 -0
  121. package/build/{component.styles-CQbSHrL_.js → component.styles--PEjCgcA.js} +51 -23
  122. package/build/component.styles--PEjCgcA.js.map +1 -0
  123. package/build/{component.styles-DoUBnv1C.js → component.styles-B0FFHGeN.js} +26 -20
  124. package/build/component.styles-B0FFHGeN.js.map +1 -0
  125. package/build/{component.styles-ClU_KFe9.js → component.styles-BDKsgd6y.js} +32 -19
  126. package/build/component.styles-BDKsgd6y.js.map +1 -0
  127. package/build/{component.styles-BMJamWba.cjs → component.styles-BELwxHxh.cjs} +7 -7
  128. package/build/component.styles-BELwxHxh.cjs.map +1 -0
  129. package/build/{component.styles-usmYNSi8.js → component.styles-BGYbrzvh.js} +2 -2
  130. package/build/{component.styles-usmYNSi8.js.map → component.styles-BGYbrzvh.js.map} +1 -1
  131. package/build/component.styles-BKnUDWqO.cjs +22 -0
  132. package/build/component.styles-BKnUDWqO.cjs.map +1 -0
  133. package/build/{component.styles-DLU0S0KI.cjs → component.styles-BTsmbWT6.cjs} +2 -2
  134. package/build/{component.styles-DLU0S0KI.cjs.map → component.styles-BTsmbWT6.cjs.map} +1 -1
  135. package/build/{component.styles-CMXsg9Uj.js → component.styles-BbwS_Ekx.js} +9 -10
  136. package/build/{component.styles-CMXsg9Uj.js.map → component.styles-BbwS_Ekx.js.map} +1 -1
  137. package/build/component.styles-BeRVOt5T.cjs +137 -0
  138. package/build/{component.styles-DETkOSnM.cjs.map → component.styles-BeRVOt5T.cjs.map} +1 -1
  139. package/build/component.styles-BpvpyZax.cjs +73 -0
  140. package/build/component.styles-BpvpyZax.cjs.map +1 -0
  141. package/build/{component.styles-BirbSbuD.js → component.styles-CPWNnqqm.js} +3 -3
  142. package/build/{component.styles-BirbSbuD.js.map → component.styles-CPWNnqqm.js.map} +1 -1
  143. package/build/component.styles-CsB9986a.cjs +99 -0
  144. package/build/component.styles-CsB9986a.cjs.map +1 -0
  145. package/build/{component.styles-CKArb78Q.js → component.styles-DARNjy9P.js} +33 -12
  146. package/build/component.styles-DARNjy9P.js.map +1 -0
  147. package/build/{component.styles-BfzC8j7O.js → component.styles-DOnQEUrI.js} +20 -9
  148. package/build/{component.styles-BfzC8j7O.js.map → component.styles-DOnQEUrI.js.map} +1 -1
  149. package/build/{component.styles-DYAuT7U2.js → component.styles-DS0ofW1Y.js} +41 -14
  150. package/build/component.styles-DS0ofW1Y.js.map +1 -0
  151. package/build/component.styles-DWGUgUoF.cjs +21 -0
  152. package/build/component.styles-DWGUgUoF.cjs.map +1 -0
  153. package/build/{component.styles-DkL2qYQQ.js → component.styles-DjoG6jr2.js} +3 -3
  154. package/build/{component.styles-DkL2qYQQ.js.map → component.styles-DjoG6jr2.js.map} +1 -1
  155. package/build/{component.styles-R92hjRRA.cjs → component.styles-Dpo373cZ.cjs} +2 -2
  156. package/build/{component.styles-R92hjRRA.cjs.map → component.styles-Dpo373cZ.cjs.map} +1 -1
  157. package/build/{component.styles-BHBTNQ8p.js → component.styles-VrNFgg1_.js} +32 -12
  158. package/build/component.styles-VrNFgg1_.js.map +1 -0
  159. package/build/{component.styles-b_DLfQqU.cjs → component.styles-ZU_GyVub.cjs} +2 -2
  160. package/build/{component.styles-b_DLfQqU.cjs.map → component.styles-ZU_GyVub.cjs.map} +1 -1
  161. package/build/component.styles-gZHy-64x.cjs +13 -0
  162. package/build/component.styles-gZHy-64x.cjs.map +1 -0
  163. package/build/{component.styles-CKLd9UoP.cjs → component.styles-iHE8mmya.cjs} +7 -7
  164. package/build/{component.styles-CKLd9UoP.cjs.map → component.styles-iHE8mmya.cjs.map} +1 -1
  165. package/build/component.styles-mhkAuWyU.cjs +225 -0
  166. package/build/component.styles-mhkAuWyU.cjs.map +1 -0
  167. package/build/component.styles-nl99kkS3.js +94 -0
  168. package/build/component.styles-nl99kkS3.js.map +1 -0
  169. package/build/{component.types-D05KdxnZ.js → component.types-BBQ18Npa.js} +14 -3
  170. package/build/component.types-BBQ18Npa.js.map +1 -0
  171. package/build/{component.types-D2nk9HlK.js → component.types-CSnoBg2y.js} +95 -68
  172. package/build/component.types-CSnoBg2y.js.map +1 -0
  173. package/build/component.types-CWp0NPUN.cjs +171 -0
  174. package/build/component.types-CWp0NPUN.cjs.map +1 -0
  175. package/build/{component.types-gy5Q9qHX.cjs → component.types-DraGq1j_.cjs} +2 -2
  176. package/build/component.types-DraGq1j_.cjs.map +1 -0
  177. package/build/consts.cjs.js +1 -1
  178. package/build/consts.cjs.js.map +1 -1
  179. package/build/consts.d.ts +1 -1
  180. package/build/consts.es.js +1 -1
  181. package/build/consts.es.js.map +1 -1
  182. package/build/context-app.cjs.js +1 -1
  183. package/build/context-app.d.ts +1 -1
  184. package/build/context-app.es.js +1 -1
  185. package/build/context-dialog.cjs.js +1 -1
  186. package/build/context-dialog.d.ts +12 -5
  187. package/build/context-dialog.es.js +1 -1
  188. package/build/context-sonner.cjs.js +1 -1
  189. package/build/context-sonner.d.ts +47 -11
  190. package/build/context-sonner.es.js +1 -1
  191. package/build/context.constants-ByXsACU7.cjs +32 -0
  192. package/build/context.constants-ByXsACU7.cjs.map +1 -0
  193. package/build/context.constants-CTr1U0kI.cjs +98 -0
  194. package/build/context.constants-CTr1U0kI.cjs.map +1 -0
  195. package/build/{context.constants-B9Yk6CGe.js → context.constants-CvkvB0XC.js} +8 -5
  196. package/build/context.constants-CvkvB0XC.js.map +1 -0
  197. package/build/{context.constants-4kkNHBzR.js → context.constants-DRimaVcG.js} +26 -9
  198. package/build/context.constants-DRimaVcG.js.map +1 -0
  199. package/build/{context.hooks-DGmZRxkb.cjs → context.hooks-DOygH-Yj.cjs} +3 -3
  200. package/build/{context.hooks-DGmZRxkb.cjs.map → context.hooks-DOygH-Yj.cjs.map} +1 -1
  201. package/build/{context.hooks-Cfr2Mp8e.js → context.hooks-kga1DMrX.js} +4 -4
  202. package/build/{context.hooks-Cfr2Mp8e.js.map → context.hooks-kga1DMrX.js.map} +1 -1
  203. package/build/floating-ui.react--v70Xky9.cjs +2 -0
  204. package/build/floating-ui.react--v70Xky9.cjs.map +1 -0
  205. package/build/{component-Bwu-fBEh.js → floating-ui.react-Byi6bLb1.js} +17 -704
  206. package/build/floating-ui.react-Byi6bLb1.js.map +1 -0
  207. package/build/index.cjs.js +1 -1
  208. package/build/index.d.ts +120 -110
  209. package/build/index.es.js +67 -64
  210. package/build/index.es.js.map +1 -1
  211. package/build/style-D3Lbn1EL.cjs +32 -0
  212. package/build/style-D3Lbn1EL.cjs.map +1 -0
  213. package/build/{style-mc2ST5fY.cjs → style-Df37KnoJ.cjs} +47 -18
  214. package/build/style-Df37KnoJ.cjs.map +1 -0
  215. package/build/{style-BgcnmVAY.js → style-RL73t3JD.js} +63 -20
  216. package/build/style-RL73t3JD.js.map +1 -0
  217. package/build/style-add.cjs.js +1 -1
  218. package/build/style-add.d.ts +57 -5
  219. package/build/style-add.es.js +11 -10
  220. package/build/style-error.cjs.js +1 -1
  221. package/build/style-error.d.ts +42 -1
  222. package/build/style-error.es.js +1 -1
  223. package/build/style-fRZ6xrVp.cjs.map +1 -1
  224. package/build/style-plT9Ah7t.js.map +1 -1
  225. package/build/style-theme.cjs.js +1 -1
  226. package/build/style-theme.d.ts +7 -6
  227. package/build/style-theme.es.js +1 -1
  228. package/build/{style-CQOBaUTO.js → style-uVTmdhsH.js} +14 -5
  229. package/build/style-uVTmdhsH.js.map +1 -0
  230. package/build/{theme.global-DuEXPcSK.js → theme.global-BgERDJ4e.js} +105 -1
  231. package/build/theme.global-BgERDJ4e.js.map +1 -0
  232. package/build/theme.global-CcoD5bPP.cjs +173 -0
  233. package/build/theme.global-CcoD5bPP.cjs.map +1 -0
  234. package/build/{use-BsyZ6-h6.js → use-DLVWi2kS.js} +6 -6
  235. package/build/{use-BsyZ6-h6.js.map → use-DLVWi2kS.js.map} +1 -1
  236. package/build/{use-D0mgQexh.cjs → use-Dg449cuf.cjs} +2 -2
  237. package/build/{use-D0mgQexh.cjs.map → use-Dg449cuf.cjs.map} +1 -1
  238. package/package.json +2 -1
  239. package/build/component-Bwu-fBEh.js.map +0 -1
  240. package/build/component-CMkU2lIg.cjs +0 -90
  241. package/build/component-CMkU2lIg.cjs.map +0 -1
  242. package/build/component-CeWNemV1.cjs +0 -251
  243. package/build/component-CeWNemV1.cjs.map +0 -1
  244. package/build/component-CmotrA_9.js.map +0 -1
  245. package/build/component-D7A-4DNQ.cjs.map +0 -1
  246. package/build/component-D8qbXvM4.js.map +0 -1
  247. package/build/component-DUUxsxY6.cjs +0 -2
  248. package/build/component-DUUxsxY6.cjs.map +0 -1
  249. package/build/component-vpCWcIhC.js.map +0 -1
  250. package/build/component.components-BPIVZi-R.js.map +0 -1
  251. package/build/component.components-BWWKHxKD.cjs.map +0 -1
  252. package/build/component.styles-B294m7QY.cjs +0 -99
  253. package/build/component.styles-B294m7QY.cjs.map +0 -1
  254. package/build/component.styles-B5kjhqh4.cjs +0 -225
  255. package/build/component.styles-B5kjhqh4.cjs.map +0 -1
  256. package/build/component.styles-BHBTNQ8p.js.map +0 -1
  257. package/build/component.styles-BMJamWba.cjs.map +0 -1
  258. package/build/component.styles-C-mr1A0b.cjs +0 -73
  259. package/build/component.styles-C-mr1A0b.cjs.map +0 -1
  260. package/build/component.styles-CKArb78Q.js.map +0 -1
  261. package/build/component.styles-CQbSHrL_.js.map +0 -1
  262. package/build/component.styles-CS_lQRm0.cjs +0 -21
  263. package/build/component.styles-CS_lQRm0.cjs.map +0 -1
  264. package/build/component.styles-CbkvPvEl.cjs +0 -22
  265. package/build/component.styles-CbkvPvEl.cjs.map +0 -1
  266. package/build/component.styles-ClU_KFe9.js.map +0 -1
  267. package/build/component.styles-DETkOSnM.cjs +0 -137
  268. package/build/component.styles-DYAuT7U2.js.map +0 -1
  269. package/build/component.styles-DoUBnv1C.js.map +0 -1
  270. package/build/component.styles-DyTB01CW.js +0 -71
  271. package/build/component.styles-DyTB01CW.js.map +0 -1
  272. package/build/component.styles-l0Dr5zHf.cjs +0 -13
  273. package/build/component.styles-l0Dr5zHf.cjs.map +0 -1
  274. package/build/component.types-D05KdxnZ.js.map +0 -1
  275. package/build/component.types-D2nk9HlK.js.map +0 -1
  276. package/build/component.types-DoUkmzRs.cjs +0 -174
  277. package/build/component.types-DoUkmzRs.cjs.map +0 -1
  278. package/build/component.types-gy5Q9qHX.cjs.map +0 -1
  279. package/build/context.constants-4kkNHBzR.js.map +0 -1
  280. package/build/context.constants-B9Yk6CGe.js.map +0 -1
  281. package/build/context.constants-CTfUKury.cjs +0 -32
  282. package/build/context.constants-CTfUKury.cjs.map +0 -1
  283. package/build/context.constants-DKCD80Pp.cjs +0 -100
  284. package/build/context.constants-DKCD80Pp.cjs.map +0 -1
  285. package/build/style-BVejuajH.cjs +0 -32
  286. package/build/style-BVejuajH.cjs.map +0 -1
  287. package/build/style-BgcnmVAY.js.map +0 -1
  288. package/build/style-CQOBaUTO.js.map +0 -1
  289. package/build/style-mc2ST5fY.cjs.map +0 -1
  290. package/build/theme.global-B9wIU_rF.cjs +0 -173
  291. package/build/theme.global-B9wIU_rF.cjs.map +0 -1
  292. package/build/theme.global-DuEXPcSK.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"component.styles-CbkvPvEl.cjs","sources":["../src/components/icon/component.styles.ts","../src/components/icon/component.tsx"],"sourcesContent":["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","import { JeneseiPalette } from '@local/theme/theme';\n\nimport { useMemo } from 'react';\n\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 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 '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 contentLoadings = props.type === 'loading' ? (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={contentLoadings ? { __html: contentLoadings } : undefined}\n >\n {contentPaths}\n </StyledSVG>\n );\n};\n"],"names":["StyledSVG","styled","svg","props","$color","theme","palette","css","$size","KEY_SIZE_DATA","heightIcon","$turn","$order","addColorTransition","addSX","icon","useMemo","type","IconIdJSON","name","IconRealEbailJSON","IconLogoJSON","IconCheckboxJSON","IconLoadingJSON","primaryColor","JeneseiPalette","secondColor","console","warn","contentPaths","paths","map","path","index","jsx","id","d","clipRule","fillRule","fill","fillType","contentLoadings","width","height","viewBox","xmlns","size","turn","order","$sx","sx","className","onClick","tabIndex","dangerouslySetInnerHTML","__html","children"],"mappings":"upqPAQaA,EAAYC,EAAOC,GAAA;WACrBC,GAAUA,EAAMC,OAASD,EAAME,MAAMC,QAAQH,EAAMC,QAAU;;IAEpED,GAASI,EAAAA,GAAAA;cACiB,SAAhBJ,EAAMK,MAAmB,GAAGC,EAAAA,cAAcN,EAAMK,OAAOE,eAAiB;kBACpD,SAAhBP,EAAMK,MAAmB,GAAGC,EAAAA,cAAcN,EAAMK,OAAOE,eAAiB;;aAE7D,SAAhBP,EAAMK,MAAmB,GAAGC,EAAAA,cAAcN,EAAMK,OAAOE,eAAiB;iBACpD,SAAhBP,EAAMK,MAAmB,GAAGC,EAAAA,cAAcN,EAAMK,OAAOE,eAAiB;;wBAEjEP,EAAMQ,OAAS;;IAEnCR,QACiB,IAAjBA,EAAMS,QACNL,EAAAA,GAAAA;eACWJ,EAAMS;;IAEjBC;;MAEEA;;IAEFC;eCT8CX,IAChD,MAAMY,EAAOC,EAAAA,QAAQ,KACnB,IAAID,EAAO,KAEX,OAAQZ,EAAMc,MACZ,IAAK,KACHF,EAAOG,EAAWf,EAAMgB,MACxB,MACF,IAAK,YACHJ,EAAOK,EAAkBjB,EAAMgB,MAC/B,MACF,IAAK,OACHJ,EAAOM,EAAalB,EAAMgB,MAC1B,MACF,IAAK,WACHJ,EAAOO,EAAiBnB,EAAMgB,MAC9B,MACF,IAAK,UACHJ,EAAOQ,EAAgBpB,EAAMgB,MAGjC,OAAOJ,GACN,CAACZ,EAAMgB,KAAMhB,EAAMc,OAEhBO,EAAerB,EAAMqB,aAAeC,EAAAA,eAAetB,EAAMqB,cAAgB,eACzEE,EAAcvB,EAAMuB,YAAcD,EAAAA,eAAetB,EAAMuB,aAAe,eAE5E,IAAKX,EAEH,OADAY,QAAQC,KAAK,QAAQzB,EAAMgB,kCACpB,KAGT,MAMMU,EACW,MAAd1B,EAAMc,MAA+B,aAAfd,EAAMc,MAAsC,cAAfd,EAAMc,MAAuC,SAAfd,EAAMc,MACxE,iBAATF,KACP,UAAWA,GAWP,MAVCA,EAAKe,OAAS,IAAIC,IAAI,CAACC,EAAMC,KAC5BC,SAAAA,kBAAAA,IAAC,OAAA,CAECC,GAAI,OAAQH,EAAQA,EAAKG,QAAgB,EACzCC,EAAGJ,EAAKI,EACRC,SAAS,UACTC,SAAS,UACTC,KAAM,SAAUP,GAjBJQ,EAiBwBR,EAAKO,KAhBhC,iBAAbC,EAAoChB,EACvB,gBAAbgB,EAAmCd,EAChC,gBAc4D,gBALtD,GAAGvB,EAAMc,QAAQd,EAAMgB,aAAac,KAZ9B,IAACO,IAsBhBC,EAAiC,YAAftC,EAAMc,KAAsBF,EAAkB,KAEtE,SACEmB,kBAAAA,IAAClC,EAAA,CACC0C,MAAM,KACNC,OAAO,KACPC,QAAQ,YACRC,MAAM,6BACNrC,MAAOL,EAAM2C,KACbnC,MAAOR,EAAM4C,KACbnC,OAAQT,EAAM6C,MACd5C,OAAQD,EAAMqB,mBAAgB,EAC9ByB,IAAK9C,EAAM+C,GACXC,UAAWhD,EAAMgD,UACjBC,QAASjD,EAAMiD,QACfC,SAAUlD,EAAMkD,SAChBC,wBAAyBb,EAAkB,CAAEc,OAAQd,QAAoB,EAExEe,SAAA3B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"component.styles-ClU_KFe9.js","sources":["../src/components/input-otp/component.tsx","../src/components/input-otp/component.styles.ts"],"sourcesContent":["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 />\n ))}\n </InputOTPWrapper>\n {props?.error ? <ErrorMessage {...props.error} size={props?.error.size ?? props.size} /> : null}\n </>\n )\n}\n","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"],"names":["_a","_b","jsxs","Fragment","jsx"],"mappings":"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"}
@@ -1,137 +0,0 @@
1
- "use strict";const e=require("./component-CeWNemV1.cjs"),t=require("./style-mc2ST5fY.cjs"),r=require("./style-BVejuajH.cjs"),n=require("./style-fRZ6xrVp.cjs"),a=require("./theme.global-B9wIU_rF.cjs"),o=require("framer-motion"),i=require("react"),u=require("styled-components");function l(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var a=0;for(n=Object.getOwnPropertySymbols(e);a<n.length;a++)t.indexOf(n[a])<0&&Object.prototype.propertyIsEnumerable.call(e,n[a])&&(r[n[a]]=e[n[a]])}return r}var s,c;function d(){}function f(e){return!!(e||"").match(/\d/)}function v(e){return null==e}function g(e){return v(e)||function(e){return"number"==typeof e&&isNaN(e)}(e)||"number"==typeof e&&!isFinite(e)}function p(e){return e.replace(/[-[\]/{}()*+?.\\^$|]/g,"\\$&")}function h(e,t){void 0===t&&(t=!0);var r="-"===e[0],n=r&&t,a=(e=e.replace("-","")).split(".");return{beforeDecimal:a[0],afterDecimal:a[1]||"",hasNegation:r,addNegation:n}}function m(e,t,r){for(var n="",a=r?"0":"",o=0;o<=t-1;o++)n+=e[o]||a;return n}function $(e,t){return Array(t+1).join(e)}function S(e){var t=e+"",r="-"===t[0]?"-":"";r&&(t=t.substring(1));var n=t.split(/[eE]/g),a=n[0],o=n[1];if(!(o=Number(o)))return r+a;var i=1+o,u=(a=a.replace(".","")).length;return i<0?a="0."+$("0",Math.abs(i))+a:i>=u?a+=$("0",i-u):a=(a.substring(0,i)||"0")+"."+a.substring(i),r+a}function b(e,t,r){if(-1!==["","-"].indexOf(e))return e;var n=(-1!==e.indexOf(".")||r)&&t,a=h(e),o=a.beforeDecimal,i=a.afterDecimal,u=a.hasNegation,l=parseFloat("0."+(i||"0")),s=(i.length<=t?"0."+i:l.toFixed(t)).split("."),c=o;return o&&Number(s[0])&&(c=o.split("").reverse().reduce(function(e,t,r){return e.length>r?(Number(e[0])+Number(t)).toString()+e.substring(1,e.length):t+e},s[0])),""+(u?"-":"")+c+(n?".":"")+m(s[1]||"",t,r)}function x(e,t){if(e.value=e.value,null!==e){if(e.createTextRange){var r=e.createTextRange();return r.move("character",t),r.select(),!0}return e.selectionStart||0===e.selectionStart?(e.focus(),e.setSelectionRange(t,t),!0):(e.focus(),!1)}}(c=s||(s={})).event="event",c.props="prop";var y,w,V,N=(y=function(e,t){for(var r=0,n=0,a=e.length,o=t.length;e[r]===t[r]&&r<a;)r++;for(;e[a-1-n]===t[o-1-n]&&o-n>r&&a-n>r;)n++;return{from:{start:r,end:a-n},to:{start:r,end:o-n}}},V=void 0,function(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];return w&&e.length===w.length&&e.every(function(e,t){return e===w[t]})?V:(w=e,V=y.apply(void 0,e))});function I(e){return Math.max(e.selectionStart,e.selectionEnd)}function D(e){return{from:{start:0,end:0},to:{start:0,end:e.length},lastValue:""}}function E(e,t){return void 0===e&&(e=" "),"string"==typeof e?e:e[t]||" "}function C(e){var t=e.currentValue,r=e.formattedValue,n=e.currentValueIndex,a=e.formattedValueIndex;return t[n]===r[a]}function O(e,t,r,n){var a,o,i,u=e.length;if(a=t,o=0,i=u,t=Math.min(Math.max(a,o),i),"left"===n){for(;t>=0&&!r[t];)t--;-1===t&&(t=r.indexOf(!0))}else{for(;t<=u&&!r[t];)t++;t>u&&(t=r.lastIndexOf(!0))}return-1===t&&(t=u),t}function j(e){for(var t=Array.from({length:e.length+1}).map(function(){return!0}),r=0,n=t.length;r<n;r++)t[r]=Boolean(f(e[r])||f(e[r-1]));return t}function A(e,t,r,n,a,o){void 0===o&&(o=d);var u=function(e){var t=i.useRef(e);t.current=e;var r=i.useRef(function(){for(var e=[],r=arguments.length;r--;)e[r]=arguments[r];return t.current.apply(t,e)});return r.current}(function(e,t){var r,o;return g(e)?(o="",r=""):"number"==typeof e||t?(o="number"==typeof e?S(e):e,r=n(o)):(o=a(e,void 0),r=n(o)),{formattedValue:r,numAsString:o}}),l=i.useState(function(){return u(v(e)?t:e,r)}),s=l[0],c=l[1],f=e,p=r;v(e)&&(f=s.numAsString,p=!0);var h=u(f,p);return i.useMemo(function(){c(h)},[h.formattedValue]),[s,function(e,t){e.formattedValue!==s.formattedValue&&c({formattedValue:e.formattedValue,numAsString:e.value}),o(e,t)}]}function k(e){return e.replace(/[^0-9]/g,"")}function T(e){return e}function B(e){var t=e.type;void 0===t&&(t="text");var r=e.displayType;void 0===r&&(r="input");var n=e.customInput,a=e.renderText,o=e.getInputRef,u=e.format;void 0===u&&(u=T);var c=e.removeFormatting;void 0===c&&(c=k);var v=e.defaultValue,g=e.valueIsNumericString,p=e.onValueChange,h=e.isAllowed,m=e.onChange;void 0===m&&(m=d);var $=e.onKeyDown;void 0===$&&($=d);var S=e.onMouseUp;void 0===S&&(S=d);var b=e.onFocus;void 0===b&&(b=d);var y=e.onBlur;void 0===y&&(y=d);var w=e.value,V=e.getCaretBoundary;void 0===V&&(V=j);var D=e.isValidInputCharacter;void 0===D&&(D=f);var E=e.isCharacterSame,B=l(e,["type","displayType","customInput","renderText","getInputRef","format","removeFormatting","defaultValue","valueIsNumericString","onValueChange","isAllowed","onChange","onKeyDown","onMouseUp","onFocus","onBlur","value","getCaretBoundary","isValidInputCharacter","isCharacterSame"]),F=A(w,v,Boolean(g),u,c,p),M=F[0],R=M.formattedValue,K=M.numAsString,z=F[1],P=i.useRef(),W=i.useRef({formattedValue:R,numAsString:K}),q=function(e,t){W.current={formattedValue:e.formattedValue,numAsString:e.value},z(e,t)},L=i.useState(!1),H=L[0],_=L[1],Z=i.useRef(null),G=i.useRef({setCaretTimeout:null,focusTimeout:null});i.useEffect(function(){return _(!0),function(){clearTimeout(G.current.setCaretTimeout),clearTimeout(G.current.focusTimeout)}},[]);var U=u,Y=function(e,t){var r=parseFloat(t);return{formattedValue:e,value:t,floatValue:isNaN(r)?void 0:r}},J=function(e,t,r){0===e.selectionStart&&e.selectionEnd===e.value.length||(x(e,t),G.current.setCaretTimeout=setTimeout(function(){e.value===r&&e.selectionStart!==t&&x(e,t)},0))},X=function(e,t,r){return O(e,t,V(e),r)},Q=function(e,t,r){var n=V(t),a=function(e,t,r,n,a,o,i){void 0===i&&(i=C);var u=a.findIndex(function(e){return e}),l=e.slice(0,u);t||r.startsWith(l)||(t=l,r=l+r,n+=l.length);for(var s=r.length,c=e.length,d={},f=new Array(s),v=0;v<s;v++){f[v]=-1;for(var g=0,p=c;g<p;g++)if(i({currentValue:r,lastValue:t,formattedValue:e,currentValueIndex:v,formattedValueIndex:g})&&!0!==d[g]){f[v]=g,d[g]=!0;break}}for(var h=n;h<s&&(-1===f[h]||!o(r[h]));)h++;var m=h===s||-1===f[h]?c:f[h];for(h=n-1;h>0&&-1===f[h];)h--;var $=-1===h||-1===f[h]?0:f[h]+1;return $>m?m:n-$<m-n?$:m}(t,R,e,r,n,D,E);return a=O(t,a,n)};i.useEffect(function(){var e=W.current,t=e.formattedValue,r=e.numAsString;R===t&&K===r||q(Y(R,K),{event:void 0,source:s.props})},[R,K]);var ee=Z.current?I(Z.current):void 0;("undefined"!=typeof window?i.useLayoutEffect:i.useEffect)(function(){var e=Z.current;if(R!==W.current.formattedValue&&e){var t=Q(W.current.formattedValue,R,ee);e.value=R,J(e,t,R)}},[R]);var te=function(e,t,r){var n=t.target,a=P.current?function(e,t){var r=Math.min(e.selectionStart,t);return{from:{start:r,end:e.selectionEnd},to:{start:r,end:t}}}(P.current,n.selectionEnd):N(R,e),o=Object.assign(Object.assign({},a),{lastValue:R}),i=c(e,o),u=U(i);if(i=c(u,void 0),h&&!h(Y(u,i))){var l=t.target,s=I(l),d=Q(e,R,s);return l.value=R,J(l,d,R),!1}return function(e){var t=e.formattedValue;void 0===t&&(t="");var r,n=e.input,a=e.source,o=e.event,i=e.numAsString;if(n){var u=e.inputValue||n.value,l=I(n);n.value=t,void 0!==(r=Q(u,t,l))&&J(n,r,t)}t!==R&&q(Y(t,i),{event:o,source:a})}({formattedValue:u,numAsString:i,inputValue:e,event:t,source:r,input:t.target}),!0},re=function(e,t){void 0===t&&(t=0);var r=e.selectionStart,n=e.selectionEnd;P.current={selectionStart:r,selectionEnd:n+t}},ne=!H||"undefined"==typeof navigator||navigator.platform&&/iPhone|iPod/.test(navigator.platform)?void 0:"numeric",ae=Object.assign({inputMode:ne},B,{type:t,value:R,onChange:function(e){var t=e.target.value;te(t,e,s.event)&&m(e),P.current=void 0},onKeyDown:function(e){var t,r=e.target,n=e.key,a=r.selectionStart,o=r.selectionEnd,i=r.value;void 0===i&&(i=""),"ArrowLeft"===n||"Backspace"===n?t=Math.max(a-1,0):"ArrowRight"===n?t=Math.min(a+1,i.length):"Delete"===n&&(t=a);var u=0;"Delete"===n&&a===o&&(u=1);var l="ArrowLeft"===n||"ArrowRight"===n;if(void 0===t||a!==o&&!l)return $(e),void re(r,u);var s=t;l?(s=X(i,t,"ArrowLeft"===n?"left":"right"))!==t&&e.preventDefault():"Delete"!==n||D(i[t])?"Backspace"!==n||D(i[t])||(s=X(i,t,"left")):s=X(i,t,"right");s!==t&&J(r,s,i),$(e),re(r,u)},onMouseUp:function(e){var t=e.target,r=function(){var e=t.selectionStart,r=t.selectionEnd,n=t.value;if(void 0===n&&(n=""),e===r){var a=X(n,e);a!==e&&J(t,a,n)}};r(),requestAnimationFrame(function(){r()}),S(e),re(t)},onFocus:function(e){e.persist&&e.persist();var t=e.target,r=e.currentTarget;Z.current=t,G.current.focusTimeout=setTimeout(function(){var n=t.selectionStart,a=t.selectionEnd,o=t.value;void 0===o&&(o="");var i=X(o,n);i===n||0===n&&a===o.length||J(t,i,o),b(Object.assign(Object.assign({},e),{currentTarget:r}))},0)},onBlur:function(e){Z.current=null,clearTimeout(G.current.focusTimeout),clearTimeout(G.current.setCaretTimeout),y(e)}});if("text"===r)return a?i.createElement(i.Fragment,null,a(R,B)||null):i.createElement("span",Object.assign({},B,{ref:o}),R);if(n){var oe=n;return i.createElement(oe,Object.assign({},ae,{ref:o}))}return i.createElement("input",Object.assign({},ae,{ref:o}))}function F(e,t){var r=t.decimalScale,n=t.fixedDecimalScale,a=t.prefix;void 0===a&&(a="");var o=t.suffix;void 0===o&&(o="");var i=t.allowNegative,u=t.thousandsGroupStyle;if(void 0===u&&(u="thousand"),""===e||"-"===e)return e;var l=M(t),s=l.thousandSeparator,c=l.decimalSeparator,d=0!==r&&-1!==e.indexOf(".")||r&&n,f=h(e,i),v=f.beforeDecimal,g=f.afterDecimal,p=f.addNegation;return void 0!==r&&(g=m(g,r,!!n)),s&&(v=function(e,t,r){var n=function(e){switch(e){case"lakh":return/(\d+?)(?=(\d\d)+(\d)(?!\d))(\.\d+)?/g;case"wan":return/(\d)(?=(\d{4})+(?!\d))/g;default:return/(\d)(?=(\d{3})+(?!\d))/g}}(r),a=e.search(/[1-9]/);return a=-1===a?e.length:a,e.substring(0,a)+e.substring(a,e.length).replace(n,"$1"+t)}(v,s,u)),a&&(v=a+v),o&&(g+=o),p&&(v="-"+v),e=v+(d&&c||"")+g}function M(e){var t=e.decimalSeparator;void 0===t&&(t=".");var r=e.thousandSeparator,n=e.allowedDecimalSeparators;return!0===r&&(r=","),n||(n=[t,"."]),{decimalSeparator:t,thousandSeparator:r,allowedDecimalSeparators:n}}function R(e,t,r){var n;void 0===t&&(t=D(e));var a=r.allowNegative,o=r.prefix;void 0===o&&(o="");var i=r.suffix;void 0===i&&(i="");var u=r.decimalScale,l=t.from,s=t.to,c=s.start,d=s.end,v=M(r),g=v.allowedDecimalSeparators,m=v.decimalSeparator,$=e[d]===m;if(f(e)&&(e===o||e===i)&&""===t.lastValue)return e;if(d-c===1&&-1!==g.indexOf(e[c])){var S=0===u?"":m;e=e.substring(0,c)+S+e.substring(c+1,e.length)}var b=function(e,t,r){var n=!1,a=!1;o.startsWith("-")?n=!1:e.startsWith("--")?(n=!1,a=!0):i.startsWith("-")&&e.length===i.length?n=!1:"-"===e[0]&&(n=!0);var u=n?1:0;return a&&(u=2),u&&(e=e.substring(u),t-=u,r-=u),{value:e,start:t,end:r,hasNegation:n}},x=b(e,c,d),y=x.hasNegation;e=(n=x).value,c=n.start,d=n.end;var w=b(t.lastValue,l.start,l.end),V=w.start,N=w.end,I=w.value,E=e.substring(c,d);!(e.length&&I.length&&(V>I.length-i.length||N<o.length))||E&&i.startsWith(E)||(e=I);var C=0;e.startsWith(o)?C+=o.length:c<o.length&&(C=c),d-=C;var O=(e=e.substring(C)).length,j=e.length-i.length;e.endsWith(i)?O=j:(d>j||d>e.length-i.length)&&(O=d),e=e.substring(0,O),e=function(e,t){void 0===e&&(e="");var r=new RegExp("(-)"),n=new RegExp("(-)(.)*(-)"),a=r.test(e),o=n.test(e);return e=e.replace(/-/g,""),a&&!o&&t&&(e="-"+e),e}(y?"-"+e:e,a),e=(e.match(function(e){return new RegExp("(^-)|[0-9]|"+p(e),"g")}(m))||[]).join("");var A=e.indexOf(m),k=h(e=e.replace(new RegExp(p(m),"g"),function(e,t){return t===A?".":""}),a),T=k.beforeDecimal,B=k.afterDecimal,F=k.addNegation;return s.end-s.start<l.end-l.start&&""===T&&$&&!parseFloat(B)&&(e=F?"-":""),e}function K(e){e=function(e){var t=M(e),r=t.thousandSeparator,n=t.decimalSeparator,a=e.prefix;void 0===a&&(a="");var o=e.allowNegative;if(void 0===o&&(o=!0),r===n)throw new Error("\n Decimal separator can't be same as thousand separator.\n thousandSeparator: "+r+' (thousandSeparator = {true} is same as thousandSeparator = ",")\n decimalSeparator: '+n+" (default value for decimalSeparator is .)\n ");return a.startsWith("-")&&o&&(console.error("\n Prefix can't start with '-' when allowNegative is true.\n prefix: "+a+"\n allowNegative: "+o+"\n "),o=!1),Object.assign(Object.assign({},e),{allowNegative:o})}(e),e.decimalSeparator,e.allowedDecimalSeparators,e.thousandsGroupStyle;var t=e.suffix,r=e.allowNegative,n=e.allowLeadingZeros,a=e.onKeyDown;void 0===a&&(a=d);var o=e.onBlur;void 0===o&&(o=d);var i=e.thousandSeparator,u=e.decimalScale,c=e.fixedDecimalScale,p=e.prefix;void 0===p&&(p="");var h=e.defaultValue,m=e.value,$=e.valueIsNumericString,y=e.onValueChange,w=l(e,["decimalSeparator","allowedDecimalSeparators","thousandsGroupStyle","suffix","allowNegative","allowLeadingZeros","onKeyDown","onBlur","thousandSeparator","decimalScale","fixedDecimalScale","prefix","defaultValue","value","valueIsNumericString","onValueChange"]),V=M(e),I=V.decimalSeparator,D=V.allowedDecimalSeparators,E=function(t){return F(t,e)},C=function(t,r){return R(t,r,e)},O=v(m)?h:m,j=null!=$?$:function(e,t,r){return""===e||!(null==t?void 0:t.match(/\d/))&&!(null==r?void 0:r.match(/\d/))&&"string"==typeof e&&!isNaN(Number(e))}(O,p,t);v(m)?v(h)||(j=j||"number"==typeof h):j=j||"number"==typeof m;var k=function(e){return g(e)?e:("number"==typeof e&&(e=S(e)),j&&"number"==typeof u?b(e,u,Boolean(c)):e)},T=A(k(m),k(h),Boolean(j),E,C,y),B=T[0],K=B.numAsString,z=B.formattedValue,P=T[1];return Object.assign(Object.assign({},w),{value:z,valueIsNumericString:!1,isValidInputCharacter:function(e){return e===I||f(e)},isCharacterSame:function(e){var t=e.currentValue,r=e.lastValue,n=e.formattedValue,a=e.currentValueIndex,o=e.formattedValueIndex,i=t[a],l=n[o],s=N(r,t).to,d=function(e){return C(e).indexOf(".")+p.length};return!(0===m&&c&&u&&t[s.start]===I&&d(t)<a&&d(n)>o)&&(!!(a>=s.start&&a<s.end&&D&&D.includes(i)&&l===I)||i===l)},onValueChange:P,format:E,removeFormatting:C,getCaretBoundary:function(t){return function(e,t){var r=t.prefix;void 0===r&&(r="");var n=t.suffix;void 0===n&&(n="");var a=Array.from({length:e.length+1}).map(function(){return!0}),o="-"===e[0];a.fill(!1,0,r.length+(o?1:0));var i=e.length;return a.fill(!1,i-n.length+1,i+1),a}(t,e)},onKeyDown:function(e){var t=e.target,n=e.key,o=t.selectionStart,l=t.selectionEnd,s=t.value;if(void 0===s&&(s=""),("Backspace"===n||"Delete"===n)&&l<p.length)e.preventDefault();else if(o===l){"Backspace"===n&&"-"===s[0]&&o===p.length+1&&r&&x(t,1),u&&c&&("Backspace"===n&&s[o-1]===I?(x(t,o-1),e.preventDefault()):"Delete"===n&&s[o]===I&&e.preventDefault()),(null==D?void 0:D.includes(n))&&s[o]===I&&x(t,o+1);var d=!0===i?",":i;"Backspace"===n&&s[o-1]===d&&x(t,o-1),"Delete"===n&&s[o]===d&&x(t,o+1),a(e)}else a(e)},onBlur:function(t){var r=K;if(r.match(/\d/g)||(r=""),n||(r=function(e){if(!e)return e;var t="-"===e[0];t&&(e=e.substring(1,e.length));var r=e.split("."),n=r[0].replace(/^0+/,"")||"0",a=r[1]||"";return(t?"-":"")+n+(a?"."+a:"")}(r)),c&&u&&(r=b(r,u,c)),r!==K){var a=F(r,e);P({formattedValue:a,value:r,floatValue:parseFloat(r)},{event:t,source:s.event})}o(t)}})}function z(e){e.mask,e.allowEmptyFormatting;var t=e.format,r=e.inputMode;void 0===r&&(r="numeric");var n=e.onKeyDown;void 0===n&&(n=d);var a=e.patternChar;void 0===a&&(a="#");var o=e.value,i=e.defaultValue,u=e.valueIsNumericString,s=l(e,["mask","allowEmptyFormatting","format","inputMode","onKeyDown","patternChar","value","defaultValue","valueIsNumericString"]);!function(e){var t=e.mask;if(t&&("string"===t?t:t.toString()).match(/\d/g))throw new Error("Mask "+t+" should not contain numeric character;")}(e);var c,g,p=function(t){return function(e,t){var r=t.format,n=t.mask,a=t.patternChar;void 0===a&&(a="#");var o=Array.from({length:e.length+1}).map(function(){return!0}),i=0,u=-1,l={};r.split("").forEach(function(t,r){var o=void 0;t===a&&(i++,o=E(n,i-1),-1===u&&e[r]===o&&(u=r)),l[r]=o});for(var s=function(t){return r[t]===a&&e[t]!==l[t]},c=0,d=o.length;c<d;c++)o[c]=c===u||s(c)||s(c-1);return o[r.indexOf(a)]=!0,o}(t,e)},h=v(o)?i:o,m=null!=u?u:(g=t,""===(c=h)||!((null==g?void 0:g.match(/\d/))||"string"!=typeof c||!c.match(/^\d+$/)&&""!==c)),$=Object.assign(Object.assign({},e),{valueIsNumericString:m});return Object.assign(Object.assign({},s),{value:o,defaultValue:i,valueIsNumericString:m,inputMode:r,format:function(e){return function(e,t){var r=t.format,n=t.allowEmptyFormatting,a=t.mask,o=t.patternChar;if(void 0===o&&(o="#"),""===e&&!n)return"";for(var i=0,u=r.split(""),l=0,s=r.length;l<s;l++)r[l]===o&&(u[l]=e[i]||E(a,i),i+=1);return u.join("")}(e,$)},removeFormatting:function(e,t){return function(e,t,r){void 0===t&&(t=D(e));var n=r.format,a=r.patternChar;void 0===a&&(a="#");var o=t.from,i=t.to,u=t.lastValue;void 0===u&&(u="");var l=function(e){return n[e]===a},s=function(e,t){for(var r="",n=0;n<e.length;n++)l(t+n)&&f(e[n])&&(r+=e[n]);return r},c=function(e){return e.replace(/[^0-9]/g,"")};if(!n.match(/\d/))return c(e);if((""===u||o.end-o.start===u.length)&&e.length===n.length){for(var d="",v=0;v<e.length;v++)if(l(v))f(e[v])&&(d+=e[v]);else if(e[v]!==n[v])return c(e);return d}var g=u.substring(0,o.start),p=e.substring(i.start,i.end),h=u.substring(o.end);return""+s(g,0)+c(p)+s(h,o.end)}(e,t,$)},getCaretBoundary:p,onKeyDown:function(e){var r=e.key,o=e.target,i=o.selectionStart,u=o.selectionEnd,l=o.value;if(i===u){var s=i;if("Backspace"===r||"Delete"===r){var c="right";if("Backspace"===r){for(;s>0&&t[s-1]!==a;)s--;c="left"}else{for(var d=t.length;s<d&&t[s]!==a;)s++;c="right"}s=O(l,s,p(l),c)}else t[s]!==a&&"ArrowLeft"!==r&&"ArrowRight"!==r&&(s=O(l,s+1,p(l),"right"));s!==i&&x(o,s),n(e)}else n(e)}})}const P=u.div`
2
- position: relative;
3
- display: flex;
4
- justify-content: flex-start;
5
- flex-direction: column;
6
- ${e=>e.$isWidthAsHeight?u.css`
7
- width: ${a.KEY_SIZE_DATA[e.$size].height}px;
8
- min-width: ${a.KEY_SIZE_DATA[e.$size].height}px;
9
- & input {
10
- text-align: center;
11
- }
12
- `:null};
13
- ${n.addSX};
14
- `,W=u.css`
15
- &::placeholder,
16
- &::-webkit-input-placeholder {
17
- ${t=>e.getFontSizeStyles(16,t.$isBold?500:400,t.theme.font.family,t.theme.font.lineHeight)};
18
- color: ${e=>e.theme.colors.input[e.$genre].color.placeholder};
19
- opacity: 1;
20
- }
21
- &:-ms-input-placeholder {
22
- ${t=>e.getFontSizeStyles(16,t.$isBold?500:400,t.theme.font.family,t.theme.font.lineHeight)};
23
- color: ${e=>e.theme.colors.input[e.$genre].color.placeholder};
24
- opacity: 1;
25
- }
26
- `,q=u.css`
27
- &::placeholder,
28
- &::-webkit-input-placeholder {
29
- ${t=>e.getFontSizeStyles(16,t.$isBold?500:400,"Roboto Mono",t.theme.font.lineHeight)};
30
- color: ${e=>e.theme.colors.input[e.$genre].color.placeholder};
31
- opacity: 1;
32
- ${t.addNiceNumber};
33
- background: transparent;
34
- }
35
- &:-ms-input-placeholder {
36
- ${t=>e.getFontSizeStyles(16,t.$isBold?500:400,"Roboto Mono",t.theme.font.lineHeight)};
37
- color: ${e=>e.theme.colors.input[e.$genre].color.placeholder};
38
- opacity: 1;
39
- ${t.addNiceNumber};
40
- background: transparent;
41
- }
42
- `,L=u.css`
43
- ${e=>u.css`
44
- background: ${e.theme.colors.input[e.$genre].background.rest};
45
- border-color: ${e.theme.colors.input[e.$genre].border.rest};
46
- color: ${e.theme.colors.input[e.$genre].color.rest};
47
- &:active {
48
- background: ${e.theme.colors.input[e.$genre].background.rest};
49
- border-color: ${e.theme.colors.input[e.$genre].border.rest};
50
- color: ${e.theme.colors.input[e.$genre].color.rest};
51
- }
52
- ${!e.$isNotShowHoverStyle&&u.css`
53
- &:hover {
54
- background: ${e.theme.colors.input[e.$genre].background.hover};
55
- border-color: ${e.theme.colors.input[e.$genre].border.hover};
56
- color: ${e.theme.colors.input[e.$genre].color.hover};
57
- }
58
- `}
59
- &:focus-visible {
60
- background: ${e.theme.colors.input[e.$genre].background.rest};
61
- border-color: ${e.theme.colors.input[e.$genre].border.rest};
62
- color: ${e.theme.colors.input[e.$genre].color.rest};
63
- }
64
- `};
65
- `,H=u.css`
66
- ${e=>_(a.KEY_SIZE_DATA[e.$size])};
67
- `,_=e=>u.css`
68
- padding: 0px ${e.padding}px;
69
- height: ${e.height}px;
70
- min-height: ${e.height}px;
71
- max-height: ${e.height}px;
72
- border-radius: ${e.radius}px;
73
- `,Z=u.css`
74
- ${e=>e.$isInputEffect&&u.css`
75
- box-shadow: ${e.theme.effects.input};
76
- `}
77
- `,G=u.css`
78
- resize: none;
79
- overflow: hidden;
80
- width: 100%;
81
- border: 1px solid;
82
-
83
- white-space: nowrap;
84
- text-overflow: ellipsis;
85
- overflow: hidden;
86
- ${t=>e.getFontSizeStyles(16,t.$isBold?500:400,t.theme.font.family,t.theme.font.lineHeight)};
87
-
88
- ${H};
89
- ${L};
90
- ${W};
91
- ${t.addDisabled};
92
- ${Z};
93
- ${t.addOutline};
94
- ${t.addTransition};
95
- ${r.addError};
96
-
97
- ${e=>e.$isNiceNumber&&u.css`
98
- ${t.addNiceNumber};
99
- `};
100
- ${e=>e.$isCenter&&u.css`
101
- text-align: center;
102
- justify-content: center;
103
- `};
104
-
105
- ${e=>e.$prefixChildren&&u.css`
106
- padding-left: ${`calc(${e.$prefixChildren.width} + ${e.$prefixChildren.right} + ${e.$prefixChildren.left})`};
107
- `};
108
-
109
- ${e=>e.$postfixChildren&&u.css`
110
- padding-right: ${`calc(${e.$postfixChildren.width} + ${e.$postfixChildren.right} + ${e.$postfixChildren.left})`};
111
- `};
112
- `,U=u.input`
113
- ${G};
114
- `,Y=u(o.motion.input)`
115
- ${G};
116
- `,J=u(function(e){var t=z(e);return i.createElement(B,Object.assign({},t))})`
117
- ${G};
118
- `,X=u(function(e){var t=K(e);return i.createElement(B,Object.assign({},t))})`
119
- ${G};
120
- `,Q=u.div`
121
- position: absolute;
122
- display: flex;
123
- left: ${e=>e.$left};
124
- width: ${e=>e.$width};
125
- height: 100%;
126
- ${t.addDisabled};
127
- ${t.addTransition};
128
- `,ee=u.div`
129
- position: absolute;
130
- display: flex;
131
- right: ${e=>e.$right};
132
- width: ${e=>e.$width};
133
- height: 100%;
134
- ${t.addDisabled};
135
- ${t.addTransition};
136
- `;exports.InputPostfixChildren=ee,exports.InputPrefixChildren=Q,exports.InputSize=H,exports.InputSizeConstructor=_,exports.StyledInput=U,exports.StyledInputCSS=G,exports.StyledInputNumeric=X,exports.StyledInputPattern=J,exports.StyledInputWrapper=P,exports.StyledMotionInput=Y,exports.addInputIsInputEffect=Z,exports.addInputPlaceholder=W,exports.addInputPlaceholderNiceNumber=q;
137
- //# sourceMappingURL=component.styles-DETkOSnM.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"component.styles-DYAuT7U2.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 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 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 '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 contentLoadings = props.type === 'loading' ? (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={contentLoadings ? { __html: contentLoadings } : 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 +0,0 @@
1
- {"version":3,"file":"component.styles-DoUBnv1C.js","sources":["../src/components/toggle/component.tsx","../src/components/toggle/component.styles.ts"],"sourcesContent":["import { KEY_SIZE_DATA_TOGGLE } from '@local/theme';\n\nimport { useMemo } from 'react';\n\nimport { ToggleCenter, ToggleProps, ToggleWrapper } from '.'\n\nexport const Toggle = (props: ToggleProps) => {\n const toggleVariants = useMemo(() => ({\n tap: {\n width: KEY_SIZE_DATA_TOGGLE[props.size].thumb + 4,\n translateX: props.value ? KEY_SIZE_DATA_TOGGLE[props.size].width - KEY_SIZE_DATA_TOGGLE[props.size].thumb - KEY_SIZE_DATA_TOGGLE[props.size].padding * 3 - 4 : 0,\n transition: {\n duration: 0.05,\n },\n },\n checked: {\n translateX: KEY_SIZE_DATA_TOGGLE[props.size].width - KEY_SIZE_DATA_TOGGLE[props.size].thumb - KEY_SIZE_DATA_TOGGLE[props.size].padding * 3,\n transition: { ease: \"circInOut\", duration: 0.05 },\n },\n unchecked: {\n translateX: 0,\n transition: { ease: \"circInOut\", duration: 0.05 },\n },\n }), [props.size, props.value]);\n\n return (\n <ToggleWrapper\n $genre={props.genre}\n $isDisabled={props.isDisabled}\n $value={props.value}\n $size={props.size}\n $error={props.error}\n tabIndex={0}\n onClick={() => props.onChange?.(!props.value)}\n whileTap=\"tap\"\n animate={props.value ? \"checked\" : \"unchecked\"}\n onKeyDown={(e) => {\n if (e.key === 'Enter') props.onChange?.(!props.value)\n }}\n\n >\n <ToggleCenter\n variants={toggleVariants}\n $genre={props.genre}\n $isDisabled={props.isDisabled}\n $value={props.value}\n $size={props.size}\n $error={props.error}\n />\n </ToggleWrapper>\n )\n}\n","import { addDisabled, addOutline, addTransition } from '@local/styles/add';\nimport { addError } from '@local/styles/error';\nimport { KEY_SIZE_DATA_TOGGLE } from '@local/theme';\n\nimport { motion } from 'framer-motion';\nimport styled, { css } from 'styled-components';\n\nimport { StyledToggleProps } from '.';\n\n/****************************************** Add *************************************************/\nconst addToggleWrapperSize = css<StyledToggleProps>`\n ${(props) => css`\n height: ${KEY_SIZE_DATA_TOGGLE[props.$size].height}px;\n width: ${KEY_SIZE_DATA_TOGGLE[props.$size].width}px;\n padding: ${KEY_SIZE_DATA_TOGGLE[props.$size].padding}px;\n border-radius: 100px;\n `};\n`;\n\nconst addToggleCenterSize = css<StyledToggleProps>`\n ${(props) => css`\n height: ${KEY_SIZE_DATA_TOGGLE[props.$size].thumb}px;\n width: ${KEY_SIZE_DATA_TOGGLE[props.$size].thumb}px;\n border-radius: 100px;\n `}\n`;\n/****************************************** Standard *************************************************/\nexport const ToggleWrapper = styled(motion.div)<StyledToggleProps>`\n cursor: pointer;\n border: 1px solid transparent;\n\n display: flex;\n align-items: center;\n\n ${addToggleWrapperSize};\n ${addTransition};\n ${addOutline};\n ${addDisabled};\n\n ${(props) =>\n props.$value\n ? css`\n background: ${props.theme.colors.toggle[props.$genre].active.rest.track};\n border-color: ${props.theme.colors.toggle[props.$genre].active.rest.border};\n justify-content: flex-start;\n &:hover {\n background: ${props.theme.colors.toggle[props.$genre].active.hover.track};\n border-color: ${props.theme.colors.toggle[props.$genre].active.hover.border};\n }\n `\n : css`\n background: ${props.theme.colors.toggle[props.$genre].unActive.rest.track};\n border-color: ${props.theme.colors.toggle[props.$genre].unActive.rest.border};\n justify-content: flex-start;\n &:hover {\n background: ${props.theme.colors.toggle[props.$genre].unActive.hover.track};\n border-color: ${props.theme.colors.toggle[props.$genre].unActive.hover.border};\n }\n `};\n\n ${addError};\n`;\n\nexport const ToggleCenter = styled(motion.div)<StyledToggleProps>`\n ${addToggleCenterSize};\n ${addTransition};\n\n ${(props) =>\n props.$value\n ? css`\n background: ${props.theme.colors.toggle[props.$genre].active.rest.thumb};\n box-shadow: ${props.theme.colors.toggle[props.$genre].active.rest.thumbBoxShadow};\n &:hover {\n background: ${props.theme.colors.toggle[props.$genre].active.hover.thumb};\n box-shadow: ${props.theme.colors.toggle[props.$genre].active.hover.thumbBoxShadow};\n }\n `\n : css`\n background: ${props.theme.colors.toggle[props.$genre].unActive.rest.thumb};\n box-shadow: ${props.theme.colors.toggle[props.$genre].unActive.rest.thumbBoxShadow};\n &:hover {\n background: ${props.theme.colors.toggle[props.$genre].unActive.hover.thumb};\n box-shadow: ${props.theme.colors.toggle[props.$genre].unActive.hover.thumbBoxShadow};\n }\n `}\n`;\n"],"names":["jsx"],"mappings":"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"}
@@ -1,71 +0,0 @@
1
- import { j as jsxRuntimeExports } from "./jsx-runtime-BrDlu8eK.js";
2
- import { useCallback } from "react";
3
- import { C as Checkbox } from "./component.styles-CKArb78Q.js";
4
- import styled, { css } from "styled-components";
5
- import { g as getFontSizeStyles } from "./component-Bwu-fBEh.js";
6
- import { a as addSX } from "./style-plT9Ah7t.js";
7
- import { K as KEY_SIZE_DATA } from "./theme.global-DuEXPcSK.js";
8
- const CheckboxGroup = (props) => {
9
- const createMarkup = (html) => ({ __html: html });
10
- const handleCheckboxChange = useCallback(
11
- (item) => {
12
- const isSelected = props.value.some((selectedItem) => selectedItem[props.valueField] === item[props.valueField]);
13
- const updatedSelectedItems = isSelected ? props.value.filter((selectedItem) => selectedItem[props.valueField] !== item[props.valueField]) : props.multiple ? [...props.value, item] : [item];
14
- if (props.onChange) props.onChange(updatedSelectedItems);
15
- },
16
- [props]
17
- );
18
- return /* @__PURE__ */ jsxRuntimeExports.jsx(CheckboxGroupWrapper, { className: props.className, $sx: props.sx, $size: props.size, children: props.options.map((e, index) => {
19
- const isChecked = props.value.some((selectedItem) => selectedItem[props.valueField] === e[props.valueField]);
20
- return /* @__PURE__ */ jsxRuntimeExports.jsxs(CheckboxGroupItem, { onClick: () => !props.isClickOnlyIcon && handleCheckboxChange(e), children: [
21
- /* @__PURE__ */ jsxRuntimeExports.jsx(
22
- Checkbox,
23
- {
24
- genre: props.checkboxGenre,
25
- isHiddenBorder: props.checkboxIsHiddenBorder,
26
- view: props.checkBoxView,
27
- sx: props.checkboxSX,
28
- size: props.size,
29
- checked: isChecked,
30
- children: props.labelField && (e == null ? void 0 : e[props.labelField]) !== void 0 && /* @__PURE__ */ jsxRuntimeExports.jsx(CheckboxGroupLabel, { dangerouslySetInnerHTML: createMarkup(e[props.labelField]) })
31
- }
32
- ),
33
- props.childrenField && (e == null ? void 0 : e[props.childrenField]) !== void 0 && /* @__PURE__ */ jsxRuntimeExports.jsx(CheckboxChildren, { children: e[props.childrenField] })
34
- ] }, index);
35
- }) });
36
- };
37
- const CheckboxGroupSize = css`
38
- ${(props) => CheckboxGroupSizeConstructor(KEY_SIZE_DATA[props.$size])};
39
- `;
40
- const CheckboxGroupSizeConstructor = (props) => css`
41
- gap: ${props.padding - 2}px;
42
- ${(params) => getFontSizeStyles(props.font, 700, params.theme.font.family)};
43
- `;
44
- const CheckboxGroupWrapper = styled.div`
45
- display: flex;
46
- flex-direction: column;
47
- align-items: stretch;
48
- ${CheckboxGroupSize};
49
- ${addSX};
50
- `;
51
- const CheckboxGroupItem = styled.div`
52
- display: flex;
53
- flex-direction: row;
54
- align-items: center;
55
- `;
56
- const CheckboxGroupLabel = styled.div`
57
- user-select: none;
58
- `;
59
- const CheckboxChildren = styled.div`
60
- user-select: none;
61
- `;
62
- export {
63
- CheckboxGroup as C,
64
- CheckboxGroupSize as a,
65
- CheckboxGroupSizeConstructor as b,
66
- CheckboxGroupWrapper as c,
67
- CheckboxGroupItem as d,
68
- CheckboxGroupLabel as e,
69
- CheckboxChildren as f
70
- };
71
- //# sourceMappingURL=component.styles-DyTB01CW.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"component.styles-DyTB01CW.js","sources":["../src/components/checkbox-group/component.tsx","../src/components/checkbox-group/component.styles.ts"],"sourcesContent":["import { ReactNode, useCallback } from 'react'\n\nimport { Checkbox } from '@local/components/checkbox'\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 return (\n <CheckboxGroupWrapper className={props.className} $sx={props.sx} $size={props.size}>\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 >\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","import styled, { css } from 'styled-components'\n\nimport { getFontSizeStyles } from '@local/components/typography'\nimport { addSX } from '@local/styles/sx'\nimport { IThemeSizePropertyDefault, KEY_SIZE_DATA } from '@local/theme'\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 ${params => getFontSizeStyles(props.font, 700, params.theme.font.family)};\n`\n\n/****************************************** Default *************************************************/\nexport const CheckboxGroupWrapper = styled.div<CheckboxGroupWrapperProps>`\n display: flex;\n flex-direction: column;\n align-items: stretch;\n ${CheckboxGroupSize};\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"],"names":["jsxs","jsx"],"mappings":";;;;;;;AAaO,MAAM,gBAAgB,CAA2B,UAAiC;AACvF,QAAM,eAAe,CAAC,UAAkB,EAAE,QAAQ,KAAA;AAElD,QAAM,uBAAuB;AAAA,IAC3B,CAAC,SAAY;AACX,YAAM,aAAa,MAAM,MAAM,KAAK,CAAA,iBAAgB,aAAa,MAAM,UAAU,MAAM,KAAK,MAAM,UAAU,CAAC;AAE7G,YAAM,uBAAuB,aACzB,MAAM,MAAM,OAAO,kBAAgB,aAAa,MAAM,UAAU,MAAM,KAAK,MAAM,UAAU,CAAC,IAC5F,MAAM,WACJ,CAAC,GAAG,MAAM,OAAO,IAAI,IACrB,CAAC,IAAI;AACX,UAAI,MAAM,SAAU,OAAM,SAAS,oBAAoB;AAAA,IAAA;AAAA,IAEzD,CAAC,KAAK;AAAA,EAAA;AAER,+CACG,sBAAA,EAAqB,WAAW,MAAM,WAAW,KAAK,MAAM,IAAI,OAAO,MAAM,MAC3E,UAAA,MAAM,QAAQ,IAAI,CAAC,GAAG,UAAU;AAC/B,UAAM,YAAY,MAAM,MAAM,KAAK,CAAA,iBAAgB,aAAa,MAAM,UAAU,MAAM,EAAE,MAAM,UAAU,CAAC;AACzG,WACEA,uCAAC,qBAA8B,SAAS,MAAM,CAAC,MAAM,mBAAmB,qBAAqB,CAAC,GAC5F,UAAA;AAAA,MAAAC,kCAAAA;AAAAA,QAAC;AAAA,QAAA;AAAA,UACC,OAAO,MAAM;AAAA,UACb,gBAAgB,MAAM;AAAA,UACtB,MAAM,MAAM;AAAA,UACZ,IAAI,MAAM;AAAA,UACV,MAAM,MAAM;AAAA,UACZ,SAAS;AAAA,UAER,UAAA,MAAM,eAAc,uBAAI,MAAM,iBAAgB,UAC7CA,kCAAAA,IAAC,oBAAA,EAAmB,yBAAyB,aAAa,EAAE,MAAM,UAAU,CAAW,EAAA,CAAG;AAAA,QAAA;AAAA,MAAA;AAAA,MAG7F,MAAM,kBAAiB,uBAAI,MAAM,oBAAmB,UACnDA,sCAAC,kBAAA,EAAkB,UAAA,EAAE,MAAM,aAAa,EAAA,CAAe;AAAA,IAAA,EAAA,GAdnC,KAgBxB;AAAA,EAAA,CAEH,GACH;AAEJ;AC9CO,MAAM,oBAAoB;AAAA,IAC7B,WAAS,6BAA6B,cAAc,MAAM,KAAK,CAAC,CAAC;AAAA;AAE9D,MAAM,+BAA+B,CAAC,UAAqC;AAAA,SACzE,MAAM,UAAU,CAAC;AAAA,IACtB,CAAA,WAAU,kBAAkB,MAAM,MAAM,KAAK,OAAO,MAAM,KAAK,MAAM,CAAC;AAAA;AAInE,MAAM,uBAAuB,OAAO;AAAA;AAAA;AAAA;AAAA,IAIvC,iBAAiB;AAAA,IACjB,KAAK;AAAA;AAGF,MAAM,oBAAoB,OAAO;AAAA;AAAA;AAAA;AAAA;AAMjC,MAAM,qBAAqB,OAAO;AAAA;AAAA;AAIlC,MAAM,mBAAmB,OAAO;AAAA;AAAA;"}
@@ -1,13 +0,0 @@
1
- "use strict";const e=require("./jsx-runtime-BcGej2Kr.cjs"),t=require("./style-BVejuajH.cjs"),n=require("react"),r=require("./component-DUUxsxY6.cjs");require("./component.styles-DETkOSnM.cjs");const s=require("styled-components"),l=require("./style-fRZ6xrVp.cjs"),o=require("./theme.global-B9wIU_rF.cjs"),u=s.css`
2
- ${e=>c({...o.KEY_SIZE_DATA[e.$size],...e})};
3
- `,c=e=>s.css`
4
- gap: ${e.padding-2}px;
5
- width: 100%;
6
- `,i=s.div`
7
- display: flex;
8
- justify-content: space-between;
9
- align-items: flex-start;
10
- ${u};
11
- ${l.addSX};
12
- `;exports.InputOTP=s=>{const[l,o]=n.useState(new Array(s.length).fill("")),u=n.useRef([]),c=n.useRef(null),a=n.useCallback((e,t)=>{t.preventDefault();const n=t.clipboardData.getData("Text").replace(/\D/g,"").split("");n.length&&o(t=>{var r,l;const o=[...t];let c=e;for(let e=0;e<n.length&&c<o.length;e++)o[c]=n[e],c++;const i=o.join("");return null==(r=s.onChange)||r.call(s,i),o.every(e=>""!==e)&&(null==(l=s.onComplete)||l.call(s,i)),setTimeout(()=>{var e,t;const n=o.findIndex(e=>""===e);-1!==n?null==(e=u.current[n])||e.focus():c<o.length&&(null==(t=u.current[c])||t.focus())},0),o})},[s]),g=n.useCallback((e,t)=>{/^\d*$/.test(t)&&o(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=u.current[e+1])||t.focus()},0),l})},[s]),p=n.useCallback(e=>{setTimeout(()=>e.target.setSelectionRange(0,e.target.value.length),0)},[]);return e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx(i,{$error:s.error,$size:s.size,id:s.id,ref:c,onBlur:e=>{setTimeout(()=>{var t;c.current&&!c.current.contains(document.activeElement)&&(null==(t=s.onBlur)||t.call(s,e))},0)},onFocus:e=>{setTimeout(()=>{var t,n;(null==(t=c.current)?void 0:t.contains(document.activeElement))&&(null==(n=s.onFocus)||n.call(s,e))},0)},$sx:s.sx,children:l.map((t,n)=>e.jsxRuntimeExports.jsx(r.Input,{isWidthAsHeight:!0,tabIndex:n+1,ref:e=>{u.current[n]=e},variety:"standard",type:"text",inputMode:"numeric",maxLength:1,value:t,onFocus:p,onPaste:e=>a(n,e),onChange:e=>g(n,e),onKeyDown:e=>((e,t)=>{const n=u.current[e];if(n){if("ArrowRight"===t.key){const t=e<l.length-1?e+1:0,n=u.current[t];n&&(n.focus(),setTimeout(()=>n.setSelectionRange(0,n.value.length),0))}if("ArrowLeft"===t.key){const t=e>0?e-1:l.length-1,n=u.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=u.current[e-1];t&&(t.focus(),t.setSelectionRange(0,t.value.length))},0))}})(n,e),genre:s.genre,size:s.size},n))}),(null==s?void 0:s.error)?e.jsxRuntimeExports.jsx(t.ErrorMessage,{...s.error,size:(null==s?void 0:s.error.size)??s.size}):null]})},exports.InputOTPSize=u,exports.InputOTPSizeConstructor=c,exports.InputOTPWrapper=i;
13
- //# sourceMappingURL=component.styles-l0Dr5zHf.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"component.styles-l0Dr5zHf.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 />\n ))}\n </InputOTPWrapper>\n {props?.error ? <ErrorMessage {...props.error} size={props?.error.size ?? props.size} /> : 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","ErrorMessage"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"component.types-D05KdxnZ.js","sources":["../src/components/icon/component.types.tsx"],"sourcesContent":["import React from 'react'\n\nimport { addSXProps, addSXStyleProps } from '@local/styles/sx'\nimport { IThemePaletteKeys, IThemeSize } from '@local/theme'\nimport { AddDollarSign } from '@local/types'\n\nexport type IconItemProps<T extends keyof IconTypeMap> = {\n type: T\n name: IconTypeMap[T]\n className?: string\n onClick?: (event: React.MouseEvent<SVGSVGElement>) => void\n size: IThemeSize | '100%'\n primaryColor?: IThemePaletteKeys\n secondColor?: IThemePaletteKeys\n turn?: number\n order?: number\n tabIndex?: number\n} & addSXProps\n\nexport type StyledIconIdItemProps = AddDollarSign<\n Pick<IconItemProps<'id'>, 'size' | 'turn' | 'order'> & { color?: IThemePaletteKeys }\n> &\n addSXStyleProps\n\nexport enum ENUM_ICON_ID {\n Close,\n Biometry,\n QR,\n Search,\n Folder,\n Wallet,\n Graph,\n Bookmark,\n Category,\n Home,\n Notification,\n Chat,\n Heart,\n Paper,\n Plus,\n Minus,\n PaperPlus,\n PaperNegative,\n PaperFail,\n PaperDownload,\n PaperUpload,\n Send,\n PasswordMini,\n Swap,\n Work,\n Arrow1,\n Arrow2,\n Arrow3,\n Arrow4,\n ArrowMini1,\n ArrowMini2,\n Scan,\n Activity,\n Calendar,\n Message,\n PlusMini,\n ChartMini,\n Game,\n Bag1,\n Bag2,\n TicketStar,\n MoreCircle,\n MoreSquare,\n Discount,\n Buy,\n Web,\n InfoMini,\n DangerMini,\n DangerTriangle,\n CloseMini,\n TickMini,\n Video,\n Discovery,\n Location,\n Document,\n Setting,\n TimeSquare,\n TimeCircle,\n VolumeUp,\n VolumeDown,\n VolumeOff,\n Star,\n Select,\n Ticket,\n Camera,\n Profile,\n AddUser,\n TwoUser,\n ThreeUser,\n Login,\n Logout,\n Download,\n Upload,\n Voice,\n Voice2,\n Delete,\n Edit,\n EditSquare,\n PlayMini,\n ShieldDone,\n ShieldFail,\n Show,\n Hide,\n Filter,\n Filter2,\n Image,\n Image2,\n Call,\n Calling,\n CallMissed,\n CallSilent,\n Lock,\n Unlock,\n Resources,\n Language\n}\nexport enum ENUM_ICON_CHECKBOX {\n Radio,\n Square,\n Arrow,\n Heart\n}\nexport enum ENUM_ICON_LOADING {\n Line,\n Circle,\n Blocks,\n Balls\n}\nexport enum ENUM_ICON_REALEBAIL {\n Map,\n HomeLikes,\n HomeManagement,\n UserSettings,\n User\n}\nexport enum ENUM_ICON_LOGO {\n Jenesei\n}\nexport type TIconIdNameString = keyof typeof ENUM_ICON_ID\nexport type TIconCheckboxNameString = keyof typeof ENUM_ICON_CHECKBOX\nexport type TIconLoadingNameString = keyof typeof ENUM_ICON_LOADING\nexport type TIconRealEbailNameString = keyof typeof ENUM_ICON_REALEBAIL\nexport type TIconLogoNameString = keyof typeof ENUM_ICON_LOGO\n\nexport type IconTypeMap = {\n id: TIconIdNameString\n checkbox: TIconCheckboxNameString\n loading: TIconLoadingNameString\n realebail: TIconRealEbailNameString\n logo: TIconLogoNameString\n}\n"],"names":["ENUM_ICON_ID","ENUM_ICON_CHECKBOX","ENUM_ICON_LOADING","ENUM_ICON_REALEBAIL","ENUM_ICON_LOGO"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"component.types-D2nk9HlK.js","sources":["../src/components/date-picker/component.tsx","../src/components/date-picker/component.styles.ts","../src/components/date-picker/component.types.ts"],"sourcesContent":["import { Button } from '@local/components/button';\nimport { Ripple } from '@local/components/ripple';\nimport { SelectMonth, SelectYear } from '@local/components/select';\nimport { Stack } from '@local/components/stack';\nimport { ErrorMessage } from '@local/styles/error';\nimport { KEY_SIZE_DATA } from '@local/theme';\n\nimport moment, { Moment } from 'moment';\nimport { Fragment, KeyboardEvent, RefObject, useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport { Popover, usePopover } from '../popover';\nimport { Typography } from '../typography';\nimport {\n DateDayProps,\n DateDropdownDay,\n DateDropdownDayOfWeek,\n DateDropdownDays,\n DateDropdownList,\n DateInput,\n DateInputButton,\n DateInputWrapper,\n DatePickerMode,\n DatePickerProps,\n DatePickerVariant,\n DateWrapper,\n WeekItem,\n} from '.';\n\nfunction countSevens(number: number) {\n const divisor = 7;\n const count = Math.floor(number / divisor);\n const remainder = number % divisor;\n\n return remainder > 0 ? count + 1 : count;\n}\n\nexport const DatePicker = (props: DatePickerProps) => {\n const { onChange } = props;\n const theme = useTheme();\n\n const [valueMoment, setValueMoment] = useState<null | Moment>(null);\n const [dateDefaultMoment, setDateDefaultMoment] = useState<Moment>(moment(props.dateDefault).utc());\n\n const [input, setInput] = useState<Record<DatePickerVariant, number | null>>({\n [DatePickerVariant.DD]: null,\n [DatePickerVariant.MM]: null,\n [DatePickerVariant.YYYY]: null,\n });\n\n const isHasInput = useMemo(() => {\n return (\n input[DatePickerVariant.DD] !== null ||\n input[DatePickerVariant.MM] !== null ||\n input[DatePickerVariant.YYYY] !== null\n );\n }, [input]);\n const onClearInput = useCallback(() => {\n setInput({\n [DatePickerVariant.DD]: null,\n [DatePickerVariant.MM]: null,\n [DatePickerVariant.YYYY]: null,\n });\n }, []);\n const [activeSegment, setActiveSegment] = useState<DatePickerVariant | null>(null);\n const [isError, setIsError] = useState(false);\n\n const mode: DatePickerMode = useMemo(() => {\n if (!props.mode || props.mode.length === 0) {\n return [DatePickerVariant.DD, DatePickerVariant.MM, DatePickerVariant.YYYY]; // дефолт\n }\n\n const hasDuplicates = new Set(props.mode).size !== props.mode.length;\n\n if (hasDuplicates) {\n return [DatePickerVariant.DD, DatePickerVariant.MM, DatePickerVariant.YYYY]; // дефолт при дублировании\n }\n\n return props.mode;\n }, [props.mode]);\n\n const getNextSegment = useCallback(\n (currentSegment: DatePickerVariant): DatePickerVariant | null => {\n const currentIndex = mode.indexOf(currentSegment);\n return currentIndex < mode.length - 1 ? mode[currentIndex + 1] : mode[0];\n },\n [mode],\n );\n\n const getPrevSegment = useCallback(\n (currentSegment: DatePickerVariant): DatePickerVariant | null => {\n const currentIndex = mode.indexOf(currentSegment);\n return currentIndex > 0 ? mode[currentIndex - 1] : mode[mode.length - 1];\n },\n [mode],\n );\n\n const dataDate = useMemo(() => {\n const result = {\n MM: {\n nextSegment: getNextSegment(DatePickerVariant.MM),\n preSegment: getPrevSegment(DatePickerVariant.MM),\n onNext: () => setActiveSegment(getNextSegment(DatePickerVariant.MM)),\n onPrev: () => setActiveSegment(getPrevSegment(DatePickerVariant.MM)),\n isLast: mode[mode.length - 1] === DatePickerVariant.MM,\n isFirst: mode[0] === DatePickerVariant.MM,\n type: DatePickerVariant.MM,\n value: input.MM,\n setValue: (value: number | null) => setInput((prevValue) => ({ ...prevValue, [DatePickerVariant.MM]: value })),\n setActive: () => setActiveSegment(DatePickerVariant.MM),\n placeholder: props.locale.inputs.month,\n },\n DD: {\n nextSegment: getNextSegment(DatePickerVariant.DD),\n preSegment: getPrevSegment(DatePickerVariant.DD),\n isLast: mode[mode.length - 1] === DatePickerVariant.DD,\n isFirst: mode[0] === DatePickerVariant.DD,\n onNext: () => setActiveSegment(getNextSegment(DatePickerVariant.DD)),\n onPrev: () => setActiveSegment(getPrevSegment(DatePickerVariant.DD)),\n type: DatePickerVariant.DD,\n value: input.DD,\n setValue: (value: number | null) => setInput((prevValue) => ({ ...prevValue, [DatePickerVariant.DD]: value })),\n setActive: () => setActiveSegment(DatePickerVariant.DD),\n placeholder: props.locale.inputs.day,\n },\n YYYY: {\n nextSegment: getNextSegment(DatePickerVariant.YYYY),\n preSegment: getPrevSegment(DatePickerVariant.YYYY),\n isLast: mode[mode.length - 1] === DatePickerVariant.YYYY,\n isFirst: mode[0] === DatePickerVariant.YYYY,\n onNext: () => setActiveSegment(getNextSegment(DatePickerVariant.YYYY)),\n onPrev: () => setActiveSegment(getPrevSegment(DatePickerVariant.YYYY)),\n type: DatePickerVariant.YYYY,\n value: input.YYYY,\n setValue: (value: number | null) =>\n setInput((prevValue) => ({ ...prevValue, [DatePickerVariant.YYYY]: value })),\n setActive: () => setActiveSegment(DatePickerVariant.YYYY),\n placeholder: props.locale.inputs.year,\n },\n };\n const resultSort = mode\n .map((e) => {\n if (e === DatePickerVariant.DD) return result.DD;\n if (e === DatePickerVariant.MM) return result.MM;\n if (e === DatePickerVariant.YYYY) return result.YYYY;\n return null;\n })\n .filter((e) => e !== null);\n return { sort: resultSort, default: result };\n }, [\n props.locale.inputs.day,\n props.locale.inputs.month,\n props.locale.inputs.year,\n getNextSegment,\n getPrevSegment,\n mode,\n input.DD,\n input.MM,\n input.YYYY,\n ]);\n const daysInWeek = useMemo(() => {\n const weekOrder: WeekItem['value'][] = ['mo', 'tu', 'we', 'th', 'fr', 'sa', 'su'];\n\n return weekOrder.map((key, index) => {\n const found = props.locale.weeks.find((w) => w.value === key);\n return {\n index,\n label: found?.localeShort ?? key.toUpperCase(),\n };\n });\n }, [props.locale.weeks]);\n const daysInMonth: DateDayProps[] = useMemo(() => {\n const today = moment.utc();\n const startOfMonth = (valueMoment ?? dateDefaultMoment).clone().startOf('month');\n const endOfMonth = (valueMoment ?? dateDefaultMoment).clone().endOf('month');\n const days = [];\n\n const dateMin = props.dateMin ? moment.utc(props.dateMin) : null;\n const dateMax = props.dateMax ? moment.utc(props.dateMax) : null;\n\n const daysToAddBefore = startOfMonth.isoWeekday() - 1;\n if (daysToAddBefore > 0) {\n for (let i = daysToAddBefore; i > 0; i--) {\n const day = startOfMonth.clone().subtract(i, 'days');\n days.push({\n value: day.valueOf(),\n labelString: day.format('dd'),\n labelNumber: day.date(),\n dayOfWeek: day.isoWeekday(),\n isWeekend: day.isoWeekday() === 6 || day.isoWeekday() === 7,\n weekOfMonth: Math.ceil((days.length + 1) / 7),\n isToday: day.isSame(today, 'day'),\n isCurrentMonth: false,\n isDisabled: day.isBefore(dateMin, 'day') || day.isAfter(dateMax, 'day'),\n });\n }\n }\n\n const currentDate = startOfMonth.clone();\n while (currentDate <= endOfMonth) {\n days.push({\n value: currentDate.valueOf(),\n labelString: currentDate.format('dd'),\n labelNumber: currentDate.date(),\n dayOfWeek: currentDate.isoWeekday(),\n isWeekend: currentDate.isoWeekday() === 6 || currentDate.isoWeekday() === 7,\n weekOfMonth: Math.ceil((days.length + 1) / 7),\n isToday: currentDate.isSame(today, 'day'),\n isCurrentMonth: true,\n isDisabled: currentDate.isBefore(dateMin, 'day') || currentDate.isAfter(dateMax, 'day'),\n });\n currentDate.add(1, 'day');\n }\n\n const daysToAddAfter = 7 - endOfMonth.isoWeekday();\n if (daysToAddAfter > 0) {\n for (let i = 1; i <= daysToAddAfter; i++) {\n const day = endOfMonth.clone().add(i, 'days').startOf('day');\n days.push({\n value: day.valueOf(),\n labelString: day.format('dd'),\n labelNumber: day.date(),\n dayOfWeek: day.isoWeekday(),\n isWeekend: day.isoWeekday() === 6 || day.isoWeekday() === 7,\n weekOfMonth: Math.ceil((days.length + 1) / 7),\n isToday: day.isSame(today, 'day'),\n isCurrentMonth: false,\n isDisabled: day.isBefore(dateMin, 'day') || day.isAfter(dateMax, 'day'),\n });\n }\n }\n\n days.sort((a, b) => a.value - b.value);\n return days;\n }, [valueMoment, dateDefaultMoment, props.dateMax, props.dateMin]);\n\n const rows = useMemo(() => countSevens(daysInMonth.length) + 1, [daysInMonth]);\n const height = useMemo(\n () => 40 + rows * 28 + (rows - 1) * 6 + KEY_SIZE_DATA[props.size].padding * 2,\n [props.size, rows],\n );\n\n const sizeRadius = useMemo(() => KEY_SIZE_DATA[props.size].radius, [props.size]);\n const sizePadding = useMemo(() => KEY_SIZE_DATA[props.size].padding, [props.size]);\n\n const isHasValue = useMemo(() => {\n return valueMoment !== null;\n }, [valueMoment]);\n const isBlockNextMonth = useMemo(() => {\n const nextMonth = (valueMoment ?? dateDefaultMoment).clone().add(1, 'month').startOf('month');\n const isBeforeEndDate = props.dateMax ? nextMonth.isAfter(moment.utc(props.dateMax), 'month') : false;\n return isBeforeEndDate;\n }, [valueMoment, props.dateMax, dateDefaultMoment]);\n const isBlockPrevMonth = useMemo(() => {\n const prevMonth = (valueMoment ?? dateDefaultMoment).clone().subtract(1, 'month').startOf('month');\n const isAfterStartDate = props.dateMin ? prevMonth.isBefore(moment.utc(props.dateMin), 'month') : false;\n return isAfterStartDate;\n }, [valueMoment, props.dateMin, dateDefaultMoment]);\n\n const [isInputFocused, setIsInputFocused] = useState(false);\n\n const refPrevValue = useRef('');\n const refSelectMonth = useRef<HTMLElement>(null);\n const refSelectYear = useRef<HTMLElement>(null);\n const refHiddenInput = useRef<HTMLInputElement>(null);\n\n const onFocusPopover = useCallback(() => {\n props.onFocus?.();\n }, [props.onFocus]);\n const onBlurPopover = useCallback(() => {\n props.onBlur?.();\n }, [props.onBlur]);\n const onBlurReference = useCallback(() => {\n setActiveSegment(null);\n }, []);\n const { isOpen, refReference, refFloating, floatingStyles, close, toggle } = usePopover({\n placement: 'bottom-start',\n offset: sizePadding,\n mode: 'independence',\n isClickOutside: true,\n refsExcludeClickOutside: [refSelectMonth, refSelectYear],\n isDisabled: props?.isDisabled || props?.isReadOnly,\n onFocus: onFocusPopover,\n onBlur: onBlurPopover,\n onBlurReference: onBlurReference,\n });\n\n const isShowPlaceholder = useMemo(() => {\n return !!(!isInputFocused && !isHasValue && props.labelPlaceholder && !isOpen && !isHasInput && !activeSegment);\n }, [isInputFocused, isHasValue, isOpen, props.labelPlaceholder, isHasInput, activeSegment]);\n\n const onChangeDate = useCallback(\n (timestamp: number) => {\n const momentNewDate = moment(timestamp).utc();\n if (valueMoment?.isSame(momentNewDate, 'day')) return;\n setValueMoment(momentNewDate);\n onChange(momentNewDate.valueOf());\n\n setInput({\n [DatePickerVariant.DD]: momentNewDate.clone().date(),\n [DatePickerVariant.MM]: momentNewDate.clone().month() + 1,\n [DatePickerVariant.YYYY]: momentNewDate.clone().year(),\n });\n },\n [valueMoment, onChange],\n );\n const handleKeyDown = useCallback(\n (e: KeyboardEvent<HTMLInputElement>) => {\n const key = e.key;\n\n const allowedKeys = ['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown', 'Backspace', 'Delete', 'Tab', 'Enter'];\n\n const isDigit = /^\\d$/.test(key);\n const isAllowed = isDigit || allowedKeys.includes(key) || e.ctrlKey || e.metaKey;\n\n if (!isAllowed) {\n e.preventDefault();\n return;\n }\n\n if (activeSegment && dataDate.default[activeSegment]) {\n if (isDigit) {\n const digit = key;\n\n handleDigitKey(digit, activeSegment, input, dataDate);\n e.preventDefault();\n e.stopPropagation();\n }\n if (key === 'Tab') {\n if (!dataDate.default[activeSegment].isLast) {\n e.preventDefault();\n dataDate.default[activeSegment].onNext();\n } else {\n refHiddenInput?.current?.blur();\n }\n }\n if (key === 'Enter') {\n e.preventDefault();\n e.stopPropagation();\n }\n if (key === 'Backspace' || key === 'Delete') {\n if (activeSegment === DatePickerVariant.DD) {\n if (input.DD !== null) {\n const current = input.DD.toString();\n if (current.length === 1) {\n dataDate.default[activeSegment].setValue(null);\n } else {\n const newValue = current.slice(0, -1);\n dataDate.default[activeSegment].setValue(Number(newValue));\n }\n } else {\n dataDate.default[activeSegment].onPrev();\n }\n } else if (activeSegment === DatePickerVariant.MM) {\n if (input.MM !== null) {\n const current = input.MM.toString();\n if (current.length === 1) {\n dataDate.default[activeSegment].setValue(null);\n } else {\n const newValue = current.slice(0, -1);\n dataDate.default[activeSegment].setValue(Number(newValue));\n }\n } else {\n dataDate.default[activeSegment].onPrev();\n }\n } else if (activeSegment === DatePickerVariant.YYYY) {\n if (input.YYYY !== null) {\n const current = input.YYYY.toString();\n if (current.length === 1) {\n dataDate.default[activeSegment].setValue(null);\n } else {\n const newValue = current.slice(0, -1);\n dataDate.default[activeSegment].setValue(Number(newValue));\n }\n } else {\n dataDate.default[activeSegment].onPrev();\n }\n }\n\n e.preventDefault();\n e.stopPropagation();\n }\n if (key === 'ArrowLeft' || key === 'ArrowDown') {\n e.preventDefault();\n dataDate.default[activeSegment].onPrev();\n }\n if (key === 'ArrowRight' || key === 'ArrowUp') {\n e.preventDefault();\n dataDate.default[activeSegment].onNext();\n }\n }\n },\n [activeSegment, input, dataDate.default, dataDate],\n );\n const onNextMonth = useCallback(() => {\n const newDate = (valueMoment ?? dateDefaultMoment).clone().add(1, 'month');\n onChangeDate(newDate.valueOf());\n }, [valueMoment, onChangeDate, dateDefaultMoment]);\n\n const onPrevMonth = useCallback(() => {\n const newDate = (valueMoment ?? dateDefaultMoment).clone().subtract(1, 'month');\n onChangeDate(newDate.valueOf());\n }, [valueMoment, onChangeDate, dateDefaultMoment]);\n\n useEffect(() => {\n setDateDefaultMoment(moment(props.dateDefault).utc());\n }, [props.dateDefault]);\n\n useEffect(() => {\n setValueMoment(props.value || props.defaultValue ? moment(props.value ?? props.defaultValue).utc() : null);\n }, [props.value, props.defaultValue]);\n\n const getValidateInput = useCallback(\n (\n input: Record<DatePickerVariant, number | null>,\n onSuccess?: (value: number) => void,\n onFailure?: () => void,\n onNan?: (isHasInput: boolean) => void,\n ) => {\n const day = input.DD ?? NaN;\n const month = input.MM ?? NaN;\n const year = input.YYYY ?? NaN;\n const isHasInput = input[DatePickerVariant.DD] !== null ||\n input[DatePickerVariant.MM] !== null ||\n input[DatePickerVariant.YYYY] !== null\n if (!Number.isNaN(day) && !Number.isNaN(month) && !Number.isNaN(year)) {\n const m = moment.utc(`${day}.${month}.${year}`, 'D.M.YYYY', true).startOf('day');\n if (m.isValid()) {\n onSuccess?.(m.valueOf());\n } else {\n onFailure?.();\n }\n } else {\n onNan?.(isHasInput);\n }\n },\n [],\n );\n\n useEffect(() => {\n getValidateInput(\n input,\n (value) => {\n onChangeDate(value);\n setIsError(false);\n },\n () => {\n onChange(null);\n setIsError(true);\n },\n (isHasInput) => {\n if (!isHasInput) {\n setIsError(false);\n }\n }\n );\n }, [getValidateInput, onChangeDate, onChange, input]);\n\n useEffect(() => {\n if (!isOpen && !isInputFocused && isHasInput && !activeSegment)\n getValidateInput(\n input,\n () => { },\n () => {\n onChange(null);\n onClearInput();\n setIsError(false);\n },\n () => {\n onChange(null);\n onClearInput();\n setIsError(false);\n },\n );\n }, [getValidateInput, onClearInput, input, isOpen, isInputFocused, onChange, isHasInput, activeSegment]);\n\n useEffect(() => {\n if (activeSegment) {\n refHiddenInput?.current?.focus();\n }\n }, [activeSegment]);\n return (\n <>\n <DateWrapper\n $size={props.size}\n $genre={props.genre}\n $sx={props.sx}\n $isDisabled={props?.isDisabled}\n $isMinWidth={props?.isMinWidth}\n $radius={sizeRadius}\n $parentListHeight={height}\n tabIndex={-1}\n >\n <DateInputWrapper\n ref={refReference as RefObject<HTMLDivElement | null>}\n $genre={props.genre}\n $size={props.size}\n $isShowPlaceholder={isShowPlaceholder}\n $isDisabled={props?.isDisabled}\n $isReadOnly={props?.isReadOnly}\n tabIndex={-1}\n $error={\n isError\n ? {\n isError: true,\n size: props?.error?.size ?? props.size,\n ...props.notValidDate,\n }\n : props.error\n }\n $isOpen={isOpen || !!activeSegment}\n onClick={() => {\n if (!activeSegment) setActiveSegment(DatePickerVariant.DD);\n }}\n >\n <input\n name={props.name}\n id={props.id}\n ref={refHiddenInput}\n type='tel'\n inputMode='numeric'\n tabIndex={0}\n disabled={props?.isDisabled || props?.isReadOnly}\n style={{\n position: 'absolute',\n top: 0,\n left: 0,\n width: '100%',\n height: '100%',\n opacity: 0,\n border: 'none',\n background: 'transparent'\n }}\n onKeyDown={handleKeyDown}\n onChange={(e) => {\n const value = e.target.value;\n const prevValue = refPrevValue.current;\n\n const newChar = value.length > prevValue.length ? value.slice(-1) : null;\n\n refPrevValue.current = value;\n\n if (newChar && /^\\d$/.test(newChar)) {\n handleKeyDown({\n key: newChar,\n preventDefault: () => { },\n stopPropagation: () => { },\n } as unknown as KeyboardEvent<HTMLInputElement>);\n }\n\n if (value.length < prevValue.length) {\n handleKeyDown({\n key: 'Backspace',\n preventDefault: () => { },\n stopPropagation: () => { },\n } as unknown as KeyboardEvent<HTMLInputElement>);\n }\n\n // if (newChar === '\\n') {\n // close();\n // }\n }}\n onFocus={() => {\n setIsInputFocused(true);\n if (!activeSegment) setActiveSegment(DatePickerVariant.DD);\n }}\n onBlur={() => {\n setIsInputFocused(false);\n\n if (!isOpen) {\n props.onBlur?.();\n }\n }}\n />\n {isShowPlaceholder ? (\n <Typography\n sx={{ default: { size: 16, line: 1, isNoUserSelect: true } }}\n sxStandard={(theme) => ({\n default: {\n color: theme.colors.input[props.genre].color.placeholder,\n },\n })}\n >\n {props.labelPlaceholder}\n </Typography>\n ) : (\n dataDate.sort.map((date, index) => (\n <Fragment key={date.type}>\n <DateInput\n $isHaveValue={!!date.value}\n $isActive={activeSegment === date.type}\n $genre={props.genre}\n $size={props.size}\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n if (props?.isDisabled || props?.isReadOnly) return;\n date.setActive();\n }}\n >\n {date.value != null\n ? String(date.value).padStart(date.type === DatePickerVariant.YYYY ? 1 : 2, '0')\n : date.placeholder || ''}\n </DateInput>\n {index !== dataDate.sort.length - 1 && (\n <span style={{ width: '4px', pointerEvents: 'none', textAlign: 'center' }}>.</span>\n )}\n </Fragment>\n ))\n )}\n <DateInputButton\n genre={props.genre}\n size='small'\n isWidthAsHeight\n isFullSize\n isRadius\n isOnlyIcon\n icons={[{ name: 'Calendar', type: 'id' }]}\n isDisabled={props?.isDisabled || props?.isReadOnly}\n onFocus={(e) => {\n e.preventDefault();\n e.stopPropagation();\n setActiveSegment(null);\n }}\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n toggle();\n }}\n />\n </DateInputWrapper>\n </DateWrapper>\n <Popover\n sx={(theme) => ({\n default: {\n background: theme.colors.input[props.genre].background.rest,\n border: `solid 1px ${theme.colors.input[props.genre].border.rest}`,\n },\n })}\n size={props.size}\n genre={props.genre}\n isOpen={isOpen}\n isShowAlwaysOutline\n floatingStyles={floatingStyles}\n ref={refFloating}\n >\n <DateDropdownList $isInputEffect={props.isInputEffect} $genre={props.genre} $size={props.size}>\n <Stack\n sx={{\n default: {\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n }}\n >\n <Button\n type='button'\n isRadius\n icons={[\n {\n name: 'Arrow2',\n type: 'id',\n turn: 90,\n },\n ]}\n isWidthAsHeight\n genre={props.genre}\n size={'small'}\n onClick={() => !isBlockPrevMonth && onPrevMonth()}\n isHidden={isBlockPrevMonth}\n />\n <Stack sx={{ default: { gap: '8px' } }}>\n <SelectMonth\n monthsLocale={props.locale.months}\n genre={props.genre}\n size={'small'}\n value={(valueMoment ?? dateDefaultMoment).clone().startOf('month').utc().valueOf()}\n isOnClickOptionClose\n isStayValueAfterSelect\n isOnlyColorInSelectListOption\n isCenter\n isShortLabel\n refFloating={refSelectMonth}\n onChange={(timestamp: number | null) => {\n if (timestamp) onChangeDate(timestamp);\n }}\n dateMin={props.dateMin}\n dateMax={props.dateMax}\n sx={{ default: { width: '60px' } }}\n />\n <SelectYear\n genre={props.genre}\n size={'small'}\n refFloating={refSelectYear}\n value={(valueMoment ?? dateDefaultMoment).clone().startOf('year').utc().valueOf()}\n onChange={(timestamp: number | null) => {\n if (timestamp) onChangeDate(timestamp);\n }}\n isOnClickOptionClose\n isStayValueAfterSelect\n isOnlyColorInSelectListOption\n isCenter\n dateMin={props.dateMin}\n dateMax={props.dateMax}\n sx={{ default: { width: '60px' } }}\n />\n </Stack>\n <Button\n type='button'\n onClick={() => !isBlockNextMonth && onNextMonth()}\n isWidthAsHeight\n isRadius\n icons={[\n {\n name: 'Arrow2',\n type: 'id',\n turn: -90,\n },\n ]}\n genre={props.genre}\n size={'small'}\n isHidden={isBlockNextMonth}\n />\n </Stack>\n <DateDropdownDays $rows={rows}>\n {daysInWeek.map((e, index) => (\n <DateDropdownDayOfWeek\n tabIndex={-1}\n type='button'\n $isToday={false}\n $isWeekend={false}\n $genre={props.genre}\n $size={props.size}\n $row={daysInMonth[0]?.weekOfMonth - 1}\n $column={index + 1}\n key={`${e.label}-${index}`}\n >\n {e.label}\n </DateDropdownDayOfWeek>\n ))}\n {daysInMonth.map((day) => (\n <DateDropdownDay\n type='button'\n $isDisabled={day.isDisabled}\n $genre={props.genre}\n $size={props.size}\n $row={day?.weekOfMonth + 1}\n $column={day.dayOfWeek}\n key={day.value}\n onClick={() => {\n if (!day.isDisabled) {\n onChangeDate(day.value);\n if (props.isOnClickClose) {\n close();\n }\n }\n }}\n tabIndex={day.isDisabled ? -1 : 0}\n $isToday={day.isToday}\n $isWeekend={day.isWeekend}\n $isChoice={day.value === valueMoment?.valueOf()}\n $isCurrentMonth={day.isCurrentMonth}\n >\n {!day.isDisabled && <Ripple color={theme.colors.date[props.genre].color.rest} />}\n {day.labelNumber}\n </DateDropdownDay>\n ))}\n </DateDropdownDays>\n </DateDropdownList>\n </Popover>\n {isError || props?.error ? (\n <ErrorMessage\n {...(isError\n ? {\n isError: true,\n size: props?.error?.size ?? props.size,\n ...props.notValidDate,\n }\n : props.error)}\n size={props?.error?.size ?? props.size}\n />\n ) : null}\n </>\n );\n};\nfunction handleDigitKey(\n key: string,\n activeSegment: DatePickerVariant,\n input: Record<DatePickerVariant, number | null>,\n dataDate: { default: Record<DatePickerVariant, { setValue: (value: number) => void; onNext: () => void }> },\n) {\n const digit = key; // '0'..'9'\n const seg = activeSegment;\n const current = input[seg]?.toString() ?? ''; // Преобразуем number в string для работы\n\n // Вспомогательная проверка\n const isZero = (s: string) => s === '0';\n const toNum = (s: string) => Number(s);\n\n if (seg === DatePickerVariant.DD) {\n // Дни: максимум 31, ноль недопустим как самостоятельное значение\n if (current.length >= 2) {\n // уже два символа — начинаем ввод заново\n const parsed = toNum(digit);\n if (parsed === 0 || parsed > 31) return;\n dataDate.default[seg].setValue(parsed);\n return;\n }\n\n // special-case: если было '0' и пользователь ввёл не '0' — НЕ подставляем '0' перед цифрой,\n // сохраняем single-digit и считаем ввод завершённым (переходим).\n if (current.length === 1 && isZero(current)) {\n const parsed = toNum(digit);\n if (parsed === 0 || parsed > 31) return;\n dataDate.default[seg].setValue(parsed); // сохраняем число, а не строку\n dataDate.default[seg].onNext();\n return;\n }\n\n // обычный путь: добавляем цифру и решаем — перезаписать или дополнить\n const potential = current + digit;\n const potentialParsed = toNum(potential);\n\n // ИСПРАВЛЕНИЕ: если потенциальное значение больше 31, используем только новую цифру и переходим дальше\n if (potentialParsed > 31) {\n const parsed = toNum(digit);\n if (parsed === 0 || parsed > 31) return;\n dataDate.default[seg].setValue(parsed);\n dataDate.default[seg].onNext(); // Переходим к следующему сегменту\n return;\n }\n\n // Если потенциальное значение равно 0, используем только новую цифру\n const nextValue = potentialParsed === 0 ? digit : potential;\n const parsed = toNum(nextValue);\n if (parsed === 0 || parsed > 31) return;\n dataDate.default[seg].setValue(parsed);\n if (nextValue.length === 2) dataDate.default[seg].onNext();\n\n } else if (seg === DatePickerVariant.MM) {\n // Месяцы: максимум 12, ноль недопустим как самостоятельное значение\n if (current.length >= 2) {\n const parsed = toNum(digit);\n if (parsed === 0 || parsed > 12) return;\n dataDate.default[seg].setValue(parsed);\n return;\n }\n\n if (current.length === 1 && isZero(current)) {\n const parsed = toNum(digit);\n if (parsed === 0 || parsed > 12) return;\n dataDate.default[seg].setValue(parsed); // сохраняем число, а не строку\n dataDate.default[seg].onNext();\n return;\n }\n\n const potential = current + digit;\n const potentialParsed = toNum(potential);\n const nextValue = potentialParsed === 0 || potentialParsed > 12 ? digit : potential;\n\n const parsed = toNum(nextValue);\n if (parsed === 0 || parsed > 12) return;\n dataDate.default[seg].setValue(parsed);\n if (nextValue.length === 2 || (nextValue.length === 1 && parsed > 1)) {\n dataDate.default[seg].onNext();\n }\n\n } else if (seg === DatePickerVariant.YYYY) {\n // Год: накапливаем до 4 цифр. Если уже 4 — начинаем заново (как раньше)\n if (current.length >= 4) {\n if (digit === '0') return;\n dataDate.default[seg].setValue(toNum(digit));\n return;\n }\n\n const nextValue = (current + digit).slice(-4);\n dataDate.default[seg].setValue(toNum(nextValue));\n }\n}","import { addInputIsInputEffect } from '@local/components/input';\nimport { getFontSizeStyles } from '@local/components/typography';\nimport {\n addDisabled,\n addNiceNumber,\n addOutline,\n addOutlineChildren,\n addRemoveOutline,\n addRemoveScrollbar,\n addTransition,\n} from '@local/styles/add';\nimport { addError } from '@local/styles/error';\nimport { addSX } from '@local/styles/sx';\nimport { KEY_SIZE_DATA } from '@local/theme/theme';\n\nimport { motion } from 'framer-motion';\nimport styled, { css } from 'styled-components';\n\nimport { Button, ButtonProps } from '../button';\nimport { DateDropdownDayProps, DateDropdownListProps, DateInputProps, DateStyledListProps, DateWrapperProps } from '.';\n\nexport const DateWrapper = styled.div<DateWrapperProps>`\n width: 100%;\n position: relative;\n height: fit-content;\n ${(props) =>\n props.$isMinWidth &&\n css`\n width: min-content;\n `}\n ${addSX};\n ${addNiceNumber};\n`;\n\nexport const DateDropdownListParent = styled(motion.div)<DateStyledListProps>`\n ${addRemoveScrollbar};\n`;\n\nexport const DateDropdownList = styled.div<DateDropdownListProps>`\n position: relative;\n display: flex;\n flex-direction: column;\n width: 100%;\n padding-top: 6px;\n transform: translateZ(0);\n justify-content: flex-start;\n gap: 10px;\n ${addInputIsInputEffect};\n`;\n\nexport const DateDropdownDays = styled.div<{ $rows: number }>`\n display: grid;\n column-gap: normal;\n row-gap: normal;\n gap: 6px;\n grid-template-columns: repeat(7, 28px);\n grid-template-rows: repeat(${(props) => props.$rows}, 28px);\n justify-content: space-between;\n`;\n\nexport const addDateDropdownDaySize = css<DateDropdownDayProps>`\n ${(props) =>\n props.$size &&\n css`\n border-radius: ${KEY_SIZE_DATA[props.$size].radius}px;\n ${(params) => getFontSizeStyles(12, 700, params.theme.font.family)};\n `};\n position: relative;\n overflow: hidden;\n isolation: isolate;\n user-select: none;\n background: ${(props) => props.theme.colors.date[props.$genre].background.rest};\n border-color: ${(props) => props.theme.colors.date[props.$genre].border.rest};\n color: ${(props) => props.theme.colors.date[props.$genre].color.rest};\n border: 1px solid transparent;\n grid-row: ${(props) => props.$row};\n grid-column: ${(props) => props.$column};\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100%;\n height: 100%;\n cursor: pointer;\n &:hover {\n ${(props) =>\n !props.$isDisabled &&\n css`\n background: ${props.theme.colors.date[props.$genre].background.hover};\n border-color: ${props.theme.colors.date[props.$genre].border.hover};\n color: ${props.theme.colors.date[props.$genre].color.hover};\n `}\n }\n ${addTransition};\n\n ${(props) =>\n props.$isWeekend &&\n css`\n background: ${props.theme.colors.date[props.$genre].background.weekend};\n border-color: ${props.theme.colors.date[props.$genre].border.weekend};\n color: ${props.theme.colors.date[props.$genre].color.weekend};\n `}\n ${(props) =>\n props.$isToday &&\n css`\n background: ${props.theme.colors.date[props.$genre].background.today};\n border-color: ${props.theme.colors.date[props.$genre].border.today};\n color: ${props.theme.colors.date[props.$genre].color.today};\n `}\n ${(props) =>\n props.$isChoice &&\n css`\n background: ${props.theme.colors.date[props.$genre].background.choice};\n border-color: ${props.theme.colors.date[props.$genre].border.choice};\n color: ${props.theme.colors.date[props.$genre].color.choice};\n `}\n ${(props) =>\n props.$isDisabled &&\n css`\n background: ${props.theme.colors.date[props.$genre].background.weekend};\n border-color: ${props.theme.colors.date[props.$genre].border.weekend};\n color: ${props.theme.colors.date[props.$genre].color.weekend};\n opacity: 0.5;\n `}\n ${(props) =>\n !props.$isCurrentMonth &&\n css`\n opacity: 0.5;\n `}\n ${(params) => getFontSizeStyles(12, 700, params.theme.font.family)};\n\n ${addOutline};\n`;\n\nexport const DateDropdownDay = styled.button<DateDropdownDayProps>`\n ${addDateDropdownDaySize}\n`;\nexport const DateDropdownDayOfWeek = styled.button<DateDropdownDayProps>`\n ${addDateDropdownDaySize}\n opacity: 1;\n background-color: transparent;\n`;\n\n/****************************************** Genre *************************************************/\nconst addDateInputGenre = css<DateInputProps>`\n background-color: ${(props) => (props.$isActive ? props.theme.palette.black10 : 'transparent')};\n\n ${(props) => getFontSizeStyles(16, props.$isBold ? 500 : 400, props.theme.font.family, props.theme.font.lineHeight)};\n ${(props) =>\n props.$isHaveValue\n ? css`\n color: ${props.theme.colors.input[props.$genre].color.rest};\n &:focus-visible {\n color: ${props.theme.colors.input[props.$genre].color.rest};\n }\n `\n : css`\n color: ${props.theme.colors.input[props.$genre].color.placeholder};\n `};\n`;\nconst addDateInputSize = css<DateInputProps>`\n border-radius: 4px;\n padding: 2px;\n min-width: 10px;\n`;\nexport const DateInput = styled.div<DateInputProps>`\n text-align: center;\n resize: none;\n overflow: hidden;\n border: 0px solid;\n background: transparent;\n margin: 0px !important;\n white-space: nowrap;\n ${addDateInputSize};\n ${addDateInputGenre};\n ${addRemoveOutline};\n`;\n\n/****************************************** Genre *************************************************/\nconst addDateInputWrapperGenre = css<DateInputProps>`\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 outline: 2px solid transparent;\n outline-offset: 1px;\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 /* ${addOutlineChildren}; */\n ${\n props.$isOpen &&\n 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 outline: 2px solid ${(props) => props.theme.states.focus};\n `\n }\n `};\n`;\n\n/****************************************** Size *************************************************/\nexport const addDateInputWrapperSize = css<DateInputProps>`\n ${(props) => css`\n padding: ${props.$isShowPlaceholder ? `0px ${KEY_SIZE_DATA[props.$size].padding}px` : `0px ${KEY_SIZE_DATA[props.$size].padding}px 0px ${KEY_SIZE_DATA[props.$size].padding - 2}px`};\n height: ${KEY_SIZE_DATA[props.$size].height}px;\n min-height: ${KEY_SIZE_DATA[props.$size].height}px;\n max-height: ${KEY_SIZE_DATA[props.$size].height}px;\n border-radius: ${KEY_SIZE_DATA[props.$size].radius}px;\n `}\n`;\n\nexport const DateInputWrapper = styled.div<DateInputProps>`\n resize: none;\n overflow: hidden;\n width: 100%;\n border: 1px solid transparent;\n\n white-space: nowrap;\n\n display: flex;\n align-items: center;\n gap: 0px;\n\n ${addDisabled};\n ${addDateInputWrapperSize};\n ${addDateInputWrapperGenre};\n ${addTransition};\n ${addError};\n`;\n\nexport const addDateInputButtonSize = css<ButtonProps>`\n ${(props) => css`\n right:${KEY_SIZE_DATA[props.size].padding}px;\n `}\n`;\nexport const DateInputButton = styled(Button)`\n position: absolute;\n height: max-content !important;\n ${addDateInputButtonSize};\n`;\n","import { InputStandardProps, StyledInputProps, StyledInputWrapperProps } from '@local/components/input';\nimport { addErrorProps, ErrorMessageProps } from '@local/styles/error';\nimport { addSXProps } from '@local/styles/sx';\nimport { IThemeGenreDate, IThemeSize } from '@local/theme';\nimport { AddDollarSign } from '@local/types';\n\nimport { SelectMonthProps } from '../select';\n\nexport type DatePickerMode = DatePickerVariant[];\nexport enum DatePickerVariant {\n DD = 'DD',\n MM = 'MM',\n YYYY = 'YYYY',\n}\n\nexport type CommonDatePickerProps = addErrorProps &\n addSXProps & {\n genre: TDateGenre;\n\n id?: string;\n\n isDisabled?: boolean;\n isBold?: boolean;\n isMinWidth?: boolean;\n isReadOnly?: boolean;\n\n isInputEffect?: InputStandardProps['isInputEffect'];\n\n isOnClickClose?: boolean;\n\n labelPlaceholder?: string;\n\n locale: {\n months: SelectMonthProps['monthsLocale'];\n weeks: WeekItem[];\n inputs: InputItem;\n };\n\n notValidDate?: Omit<ErrorMessageProps, 'size' | 'isError'>;\n\n mode?: DatePickerMode;\n\n name?: string;\n\n onBlur?: () => void;\n\n onChange: (timestamp: number | null) => void;\n\n onFocus?: () => void;\n\n size: IThemeSize;\n\n dateMax?: number;\n\n dateMin?: number;\n\n dateDefault: number;\n };\n\ntype ControlledValue = {\n value: number | null | undefined;\n\n defaultValue?: never;\n};\n\ntype UncontrolledValue = {\n defaultValue: number | null | undefined;\n\n value?: never;\n};\nexport type DatePickerProps = CommonDatePickerProps & (ControlledValue | UncontrolledValue);\n\nexport type TDateGenre = keyof IThemeGenreDate;\n\nexport interface DateDayProps {\n dayOfWeek: number;\n\n isCurrentMonth: boolean;\n\n isDisabled: boolean;\n\n isToday: boolean;\n\n isWeekend: boolean;\n\n labelNumber: number;\n\n labelString: string;\n\n value: number;\n\n weekOfMonth: number;\n}\n\nexport type DateWrapperProps = AddDollarSign<\n Pick<InputStandardProps, 'genre' | 'isDisabled'> & {\n parentListHeight: number;\n radius: number;\n isMinWidth?: boolean;\n }\n> &\n StyledInputWrapperProps;\n\nexport type DateInputProps = AddDollarSign<\n Pick<DatePickerProps, 'error' | 'genre' | 'size' | 'isBold' | 'isReadOnly' | 'isDisabled'> & {\n isOpen?: boolean;\n isActive?: boolean;\n isHaveValue?: boolean;\n isShowPlaceholder?: boolean;\n }\n>;\n\nexport type DateStyledOptionProps = AddDollarSign<{\n isSelectedItem?: boolean;\n isCheckboxProps?: boolean;\n}> &\n StyledInputProps;\n\nexport type DateStyledListProps = AddDollarSign<Pick<InputStandardProps, 'genre' | 'size'>>;\n\nexport type DateDropdownListProps = AddDollarSign<\n Pick<DatePickerProps, 'isInputEffect'> & Pick<DatePickerProps, 'genre' | 'size'>\n>;\n\nexport type DateDropdownDayProps = AddDollarSign<\n Pick<DatePickerProps, 'genre' | 'size'> &\n Pick<DateDayProps, 'isToday' | 'isWeekend'> & {\n row: number;\n column: number;\n isChoice?: boolean;\n isCurrentMonth?: boolean;\n isDisabled?: boolean;\n }\n>;\n\nexport type MonthItem = {\n localeLong: string;\n\n localeShort: string;\n\n value:\n | 'january'\n | 'february'\n | 'march'\n | 'april'\n | 'may'\n | 'june'\n | 'july'\n | 'august'\n | 'september'\n | 'october'\n | 'november'\n | 'december';\n};\nexport type WeekItem = {\n localeLong: string;\n\n localeShort: string;\n\n value: 'mo' | 'tu' | 'we' | 'th' | 'fr' | 'sa' | 'su';\n};\nexport type InputItem = {\n day: string;\n\n month: string;\n\n year: string;\n};\n"],"names":["_a","input","isHasInput","jsxs","Fragment","jsx","theme","parsed","props","DatePickerVariant"],"mappings":"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"}