@jenesei-software/jenesei-kit-react 1.3.14 → 1.3.16

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 (224) hide show
  1. package/build/{area-sDVSuS3G.js → area-BDMDiVi1.js} +4 -3
  2. package/build/area-BDMDiVi1.js.map +1 -0
  3. package/build/area-Bopd6mWj.cjs +2 -0
  4. package/build/area-Bopd6mWj.cjs.map +1 -0
  5. package/build/{area-DEwj0-O3.js → area-Cvp3eBBo.js} +4 -4
  6. package/build/area-Cvp3eBBo.js.map +1 -0
  7. package/build/{area-DRsIULcw.cjs → area-DqLK4RX5.cjs} +12 -10
  8. package/build/area-DqLK4RX5.cjs.map +1 -0
  9. package/build/area-preview.cjs.js +1 -1
  10. package/build/area-preview.es.js +1 -1
  11. package/build/area-skeleton.cjs.js +1 -1
  12. package/build/area-skeleton.es.js +1 -1
  13. package/build/build-info.txt +3 -3
  14. package/build/{component-DkEqMT7w.cjs → component-5o60aes-.cjs} +2 -2
  15. package/build/{component-DkEqMT7w.cjs.map → component-5o60aes-.cjs.map} +1 -1
  16. package/build/{component-CLqcB5mM.cjs → component-6hRanOkU.cjs} +2 -2
  17. package/build/{component-CLqcB5mM.cjs.map → component-6hRanOkU.cjs.map} +1 -1
  18. package/build/{component-CPzlyKwR.js → component-B80It4vM.js} +3 -3
  19. package/build/{component-CPzlyKwR.js.map → component-B80It4vM.js.map} +1 -1
  20. package/build/component-BfppCwz9.cjs +88 -0
  21. package/build/component-BfppCwz9.cjs.map +1 -0
  22. package/build/{component--jGdo2yq.cjs → component-Bj7sLW9s.cjs} +2 -2
  23. package/build/{component--jGdo2yq.cjs.map → component-Bj7sLW9s.cjs.map} +1 -1
  24. package/build/{component-BkYIZFlr.cjs → component-BxetIWe6.cjs} +6 -6
  25. package/build/{component-BkYIZFlr.cjs.map → component-BxetIWe6.cjs.map} +1 -1
  26. package/build/{component-DaXKDHnc.js → component-CKBpm4U4.js} +3 -3
  27. package/build/{component-DaXKDHnc.js.map → component-CKBpm4U4.js.map} +1 -1
  28. package/build/{component-CFKFLOAw.js → component-ClnOIQaN.js} +2 -2
  29. package/build/{component-CFKFLOAw.js.map → component-ClnOIQaN.js.map} +1 -1
  30. package/build/component-accordion.cjs.js +1 -1
  31. package/build/component-accordion.d.ts +5 -19
  32. package/build/component-accordion.es.js +1 -1
  33. package/build/{component-B9dFCQcm.cjs → component-b4tMFkpE.cjs} +2 -2
  34. package/build/{component-B9dFCQcm.cjs.map → component-b4tMFkpE.cjs.map} +1 -1
  35. package/build/component-button-group.cjs.js +1 -1
  36. package/build/component-button-group.d.ts +23 -186
  37. package/build/component-button-group.es.js +1 -1
  38. package/build/component-button.cjs.js +1 -1
  39. package/build/component-button.d.ts +26 -206
  40. package/build/component-button.es.js +4 -6
  41. package/build/component-checkbox-group.cjs.js +1 -1
  42. package/build/component-checkbox-group.d.ts +26 -170
  43. package/build/component-checkbox-group.es.js +1 -1
  44. package/build/component-checkbox.cjs.js +1 -1
  45. package/build/component-checkbox.d.ts +26 -193
  46. package/build/component-checkbox.es.js +2 -3
  47. package/build/component-date-picker.cjs.js +1 -1
  48. package/build/component-date-picker.d.ts +23 -186
  49. package/build/component-date-picker.es.js +1 -1
  50. package/build/{component-BFOHa1GY.js → component-eqTj4VVc.js} +2 -2
  51. package/build/{component-BFOHa1GY.js.map → component-eqTj4VVc.js.map} +1 -1
  52. package/build/component-icon.cjs.js +1 -1
  53. package/build/component-icon.d.ts +45 -166
  54. package/build/component-icon.es.js +5 -9
  55. package/build/component-icon.es.js.map +1 -1
  56. package/build/component-image-button.cjs.js +1 -1
  57. package/build/component-image-button.d.ts +23 -186
  58. package/build/component-image-button.es.js +1 -1
  59. package/build/component-image-select.cjs.js +1 -1
  60. package/build/component-image-select.d.ts +23 -186
  61. package/build/component-image-select.es.js +1 -1
  62. package/build/component-image-slider.cjs.js +1 -1
  63. package/build/component-image-slider.es.js +1 -1
  64. package/build/component-image.cjs.js +1 -1
  65. package/build/component-image.es.js +1 -1
  66. package/build/component-input-otp.cjs.js +1 -1
  67. package/build/component-input-otp.es.js +1 -1
  68. package/build/component-input.cjs.js +1 -1
  69. package/build/component-input.d.ts +1 -1
  70. package/build/component-input.es.js +2 -2
  71. package/build/{component-CeuA5Ry0.js → component-jPLOz52P.js} +51 -126
  72. package/build/component-jPLOz52P.js.map +1 -0
  73. package/build/component-map.cjs.js +1 -1
  74. package/build/component-map.es.js +1 -1
  75. package/build/component-pagination.cjs.js +1 -1
  76. package/build/component-pagination.d.ts +23 -186
  77. package/build/component-pagination.es.js +1 -1
  78. package/build/component-range.cjs.js +1 -1
  79. package/build/component-range.es.js +1 -1
  80. package/build/component-ripple.cjs.js +1 -1
  81. package/build/component-select.cjs.js +1 -1
  82. package/build/component-select.d.ts +2 -17
  83. package/build/component-select.es.js +1 -1
  84. package/build/component-textarea.cjs.js +1 -1
  85. package/build/component-textarea.es.js +1 -1
  86. package/build/component-toggle.cjs.js +1 -1
  87. package/build/component-toggle.es.js +1 -1
  88. package/build/component-tooltip.cjs.js +1 -1
  89. package/build/component-tooltip.es.js +1 -1
  90. package/build/component-typography.cjs.js +1 -1
  91. package/build/component-typography.es.js +1 -1
  92. package/build/{component.components-JtwTIPAB.cjs → component.components-BZX00SGG.cjs} +2 -2
  93. package/build/{component.components-JtwTIPAB.cjs.map → component.components-BZX00SGG.cjs.map} +1 -1
  94. package/build/{component.components-B2-Gqe0K.js → component.components-C9TkSqTp.js} +5 -5
  95. package/build/{component.components-B2-Gqe0K.js.map → component.components-C9TkSqTp.js.map} +1 -1
  96. package/build/{component.constants-DxcsPL8D.cjs → component.constants-B-ZMDpFv.cjs} +2 -2
  97. package/build/{component.constants-DxcsPL8D.cjs.map → component.constants-B-ZMDpFv.cjs.map} +1 -1
  98. package/build/{component.constants-CpnBclql.js → component.constants-C8li5_tq.js} +2 -2
  99. package/build/{component.constants-CpnBclql.js.map → component.constants-C8li5_tq.js.map} +1 -1
  100. package/build/{component.constants-DJzogH6s.js → component.constants-CnMky3Ym.js} +8 -8
  101. package/build/component.constants-CnMky3Ym.js.map +1 -0
  102. package/build/component.constants-Dg6JcWmd.cjs +22 -0
  103. package/build/component.constants-Dg6JcWmd.cjs.map +1 -0
  104. package/build/{component.styles-Dz33wmri.js → component.styles-0apMzB81.js} +9 -31
  105. package/build/component.styles-0apMzB81.js.map +1 -0
  106. package/build/{component.styles-BDKsgd6y.js → component.styles-AEJ_tw7Y.js} +5 -5
  107. package/build/{component.styles-BDKsgd6y.js.map → component.styles-AEJ_tw7Y.js.map} +1 -1
  108. package/build/{component.styles-BELwxHxh.cjs → component.styles-BO8xaSCQ.cjs} +2 -2
  109. package/build/{component.styles-BELwxHxh.cjs.map → component.styles-BO8xaSCQ.cjs.map} +1 -1
  110. package/build/component.styles-BVQQkX5c.cjs +57 -0
  111. package/build/component.styles-BVQQkX5c.cjs.map +1 -0
  112. package/build/component.styles-BYG4iVCR.cjs +10 -0
  113. package/build/{component.styles-CAN6t4un.cjs.map → component.styles-BYG4iVCR.cjs.map} +1 -1
  114. package/build/{component.styles-dFnW-DgR.cjs → component.styles-BZ9QLlOU.cjs} +2 -2
  115. package/build/{component.styles-dFnW-DgR.cjs.map → component.styles-BZ9QLlOU.cjs.map} +1 -1
  116. package/build/component.styles-BviHtzJH.cjs +22 -0
  117. package/build/component.styles-BviHtzJH.cjs.map +1 -0
  118. package/build/{component.styles-BYVYSgCZ.js → component.styles-C4Bz4OTl.js} +2 -2
  119. package/build/{component.styles-BYVYSgCZ.js.map → component.styles-C4Bz4OTl.js.map} +1 -1
  120. package/build/{component.styles-ZU_GyVub.cjs → component.styles-C8ONgWei.cjs} +2 -2
  121. package/build/{component.styles-ZU_GyVub.cjs.map → component.styles-C8ONgWei.cjs.map} +1 -1
  122. package/build/{component.styles-CJC0h3Ed.js → component.styles-CHqowxsZ.js} +5 -5
  123. package/build/component.styles-CHqowxsZ.js.map +1 -0
  124. package/build/component.styles-CXyyc0xg.cjs +32 -0
  125. package/build/{component.styles-Py-IeQ2q.cjs.map → component.styles-CXyyc0xg.cjs.map} +1 -1
  126. package/build/component.styles-CtZeOnGH.js +120 -0
  127. package/build/component.styles-CtZeOnGH.js.map +1 -0
  128. package/build/{component.styles-an3dM3la.js → component.styles-CwTYpBx_.js} +7 -7
  129. package/build/{component.styles-an3dM3la.js.map → component.styles-CwTYpBx_.js.map} +1 -1
  130. package/build/{component.styles-CEDSDKXy.cjs → component.styles-CxlbZwr4.cjs} +2 -2
  131. package/build/{component.styles-CEDSDKXy.cjs.map → component.styles-CxlbZwr4.cjs.map} +1 -1
  132. package/build/{component.styles-COwP0J6t.cjs → component.styles-CyCy2ymw.cjs} +2 -2
  133. package/build/{component.styles-COwP0J6t.cjs.map → component.styles-CyCy2ymw.cjs.map} +1 -1
  134. package/build/{component.styles-B0FFHGeN.js → component.styles-DWDGLfbF.js} +3 -3
  135. package/build/{component.styles-B0FFHGeN.js.map → component.styles-DWDGLfbF.js.map} +1 -1
  136. package/build/{component.styles-BbwS_Ekx.js → component.styles-DqJURuJl.js} +3 -3
  137. package/build/{component.styles-BbwS_Ekx.js.map → component.styles-DqJURuJl.js.map} +1 -1
  138. package/build/{component.styles-CsB9986a.cjs → component.styles-FMHm5NHm.cjs} +2 -2
  139. package/build/{component.styles-CsB9986a.cjs.map → component.styles-FMHm5NHm.cjs.map} +1 -1
  140. package/build/{component.styles-BeRVOt5T.cjs → component.styles-Hx-MJSWX.cjs} +2 -2
  141. package/build/{component.styles-BeRVOt5T.cjs.map → component.styles-Hx-MJSWX.cjs.map} +1 -1
  142. package/build/{component.styles-BGYbrzvh.js → component.styles-KBaixm0o.js} +2 -2
  143. package/build/{component.styles-BGYbrzvh.js.map → component.styles-KBaixm0o.js.map} +1 -1
  144. package/build/{component.styles-Czdj4SAF.js → component.styles-SZTM0cRW.js} +7 -7
  145. package/build/{component.styles-Czdj4SAF.js.map → component.styles-SZTM0cRW.js.map} +1 -1
  146. package/build/{component.styles-gZHy-64x.cjs → component.styles-_keFf_Qj.cjs} +2 -2
  147. package/build/{component.styles-gZHy-64x.cjs.map → component.styles-_keFf_Qj.cjs.map} +1 -1
  148. package/build/{component.styles-VrNFgg1_.js → component.styles-cMafDDpP.js} +3 -3
  149. package/build/{component.styles-VrNFgg1_.js.map → component.styles-cMafDDpP.js.map} +1 -1
  150. package/build/{component.styles-CxPmtiIy.js → component.styles-euSUJAiA.js} +3 -3
  151. package/build/{component.styles-CxPmtiIy.js.map → component.styles-euSUJAiA.js.map} +1 -1
  152. package/build/{component.types-B2YOqKzt.js → component.types-BTJPUAzF.js} +9 -8
  153. package/build/component.types-BTJPUAzF.js.map +1 -0
  154. package/build/{component.types-DaiIANRt.cjs → component.types-lbEwteRa.cjs} +6 -6
  155. package/build/component.types-lbEwteRa.cjs.map +1 -0
  156. package/build/context-app.cjs.js +1 -1
  157. package/build/context-app.es.js +1 -1
  158. package/build/context-sonner.cjs.js +1 -1
  159. package/build/context-sonner.d.ts +71 -100
  160. package/build/context-sonner.es.js +1 -1
  161. package/build/{context.constants-C4xdihsb.js → context.constants-Cio0nsYA.js} +7 -6
  162. package/build/context.constants-Cio0nsYA.js.map +1 -0
  163. package/build/{context.constants-D0P7bVk9.cjs → context.constants-y9s5VGN2.cjs} +4 -3
  164. package/build/context.constants-y9s5VGN2.cjs.map +1 -0
  165. package/build/{context.hooks-Cmgo0uqV.js → context.hooks-BIIK-2HN.js} +3 -3
  166. package/build/{context.hooks-Cmgo0uqV.js.map → context.hooks-BIIK-2HN.js.map} +1 -1
  167. package/build/{context.hooks-XBiTuVyt.cjs → context.hooks-DNnrgKb0.cjs} +3 -3
  168. package/build/{context.hooks-XBiTuVyt.cjs.map → context.hooks-DNnrgKb0.cjs.map} +1 -1
  169. package/build/{floating-ui.react--v70Xky9.cjs → floating-ui.react-DZzvtpim.cjs} +2 -2
  170. package/build/{floating-ui.react--v70Xky9.cjs.map → floating-ui.react-DZzvtpim.cjs.map} +1 -1
  171. package/build/index.cjs.js +1 -1
  172. package/build/index.d.ts +93 -252
  173. package/build/index.es.js +142 -143
  174. package/build/index.es.js.map +1 -1
  175. package/build/{style-uVTmdhsH.js → style-BzxSHZDV.js} +2 -2
  176. package/build/{style-uVTmdhsH.js.map → style-BzxSHZDV.js.map} +1 -1
  177. package/build/{style-D3Lbn1EL.cjs → style-D8DUzG0C.cjs} +2 -2
  178. package/build/{style-D3Lbn1EL.cjs.map → style-D8DUzG0C.cjs.map} +1 -1
  179. package/build/style-error.cjs.js +1 -1
  180. package/build/style-error.es.js +1 -1
  181. package/build/style-theme.cjs.js +1 -1
  182. package/build/style-theme.d.ts +29 -0
  183. package/build/style-theme.es.js +8 -2
  184. package/build/{theme.global-BgERDJ4e.js → theme.global-BzunMIsv.js} +132 -2
  185. package/build/theme.global-BzunMIsv.js.map +1 -0
  186. package/build/theme.global-D67h5YeA.cjs +173 -0
  187. package/build/theme.global-D67h5YeA.cjs.map +1 -0
  188. package/build/{use-DWNgOa9w.cjs → use-BLwltPMc.cjs} +2 -2
  189. package/build/{use-DWNgOa9w.cjs.map → use-BLwltPMc.cjs.map} +1 -1
  190. package/build/{use-CuHzkWqv.js → use-CnGHh8iL.js} +5 -5
  191. package/build/{use-CuHzkWqv.js.map → use-CnGHh8iL.js.map} +1 -1
  192. package/package.json +1 -1
  193. package/build/area-CZkDIeGx.cjs +0 -2
  194. package/build/area-CZkDIeGx.cjs.map +0 -1
  195. package/build/area-DEwj0-O3.js.map +0 -1
  196. package/build/area-DRsIULcw.cjs.map +0 -1
  197. package/build/area-sDVSuS3G.js.map +0 -1
  198. package/build/component-BLWcOf3A.cjs +0 -90
  199. package/build/component-BLWcOf3A.cjs.map +0 -1
  200. package/build/component-CeuA5Ry0.js.map +0 -1
  201. package/build/component.constants-DJzogH6s.js.map +0 -1
  202. package/build/component.constants-DoZ61vWX.cjs +0 -22
  203. package/build/component.constants-DoZ61vWX.cjs.map +0 -1
  204. package/build/component.styles-BKnUDWqO.cjs +0 -22
  205. package/build/component.styles-BKnUDWqO.cjs.map +0 -1
  206. package/build/component.styles-CAN6t4un.cjs +0 -10
  207. package/build/component.styles-CJC0h3Ed.js.map +0 -1
  208. package/build/component.styles-DS0ofW1Y.js +0 -2193
  209. package/build/component.styles-DS0ofW1Y.js.map +0 -1
  210. package/build/component.styles-DhXp_cmE.cjs +0 -73
  211. package/build/component.styles-DhXp_cmE.cjs.map +0 -1
  212. package/build/component.styles-Dz33wmri.js.map +0 -1
  213. package/build/component.styles-Py-IeQ2q.cjs +0 -32
  214. package/build/component.types-B2YOqKzt.js.map +0 -1
  215. package/build/component.types-BBQ18Npa.js +0 -143
  216. package/build/component.types-BBQ18Npa.js.map +0 -1
  217. package/build/component.types-DaiIANRt.cjs.map +0 -1
  218. package/build/component.types-DraGq1j_.cjs +0 -2
  219. package/build/component.types-DraGq1j_.cjs.map +0 -1
  220. package/build/context.constants-C4xdihsb.js.map +0 -1
  221. package/build/context.constants-D0P7bVk9.cjs.map +0 -1
  222. package/build/theme.global-BgERDJ4e.js.map +0 -1
  223. package/build/theme.global-CcoD5bPP.cjs +0 -173
  224. package/build/theme.global-CcoD5bPP.cjs.map +0 -1
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "author": "Cyril Strone",
3
3
  "name": "@jenesei-software/jenesei-kit-react",
4
- "version": "1.3.14",
4
+ "version": "1.3.16",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "git+https://github.com/jenesei-software/jenesei-kit-react.git"
@@ -1,2 +0,0 @@
1
- "use strict";const e=require("./jsx-runtime-BcGej2Kr.cjs"),i=require("./component.styles-BKnUDWqO.cjs"),t=require("./component-GKvpOWlO.cjs"),n=require("framer-motion"),o=require("react");exports.Preview=l=>{const[s,r]=o.useState(l.defaultVisible??!0),u=o.useMemo(()=>"visible"in l?l.visible:null,[l]),a=o.useMemo(()=>"time"in l?l.time:null,[l]),d=o.useMemo(()=>"minTime"in l?l.minTime:null,[l]);return o.useEffect(()=>{if(null!==a){const e=setTimeout(()=>{r(!0)},a);return()=>{clearTimeout(e)}}},[a]),o.useEffect(()=>{if(null!==u)if(u){if(d){const e=setTimeout(()=>{r(u)},d);return()=>clearTimeout(e)}r(u)}else r(u)},[u,d]),e.jsxRuntimeExports.jsxs(n.AnimatePresence,{children:[s?null:e.jsxRuntimeExports.jsxs(t.StackMotion,{sx:e=>({...null==l?void 0:l.sxLoader,default:{backgroundColor:e.palette.whiteStandard,width:"100%",height:"100%",position:"absolute",top:0,left:0,display:"flex",alignItems:"center",justifyContent:"center",zIndex:1,...(null==l?void 0:l.sxLoader)?"function"==typeof(null==l?void 0:l.sxLoader)?null==l?void 0:l.sxLoader(e).default:null==l?void 0:l.sxLoader.default:{}}}),transition:{duration:.3},exit:{opacity:0},animate:{opacity:1},children:[e.jsxRuntimeExports.jsx(t.Stack,{sx:{default:{position:"absolute",width:"8vmin",height:"8vmin"}},children:e.jsxRuntimeExports.jsx(i.Icon,{size:"100%",type:"loading",primaryColor:"blueFocus",name:"Line"})}),l.content&&e.jsxRuntimeExports.jsx(t.Stack,{sx:{default:{position:"relative",marginTop:"18vmin"}},children:l.content})]},"loader"),s?e.jsxRuntimeExports.jsx(t.StackMotion,{sx:e=>({...null==l?void 0:l.sxChildren,default:{display:"contents",zIndex:0,...(null==l?void 0:l.sxChildren)?"function"==typeof(null==l?void 0:l.sxChildren)?null==l?void 0:l.sxChildren(e).default:null==l?void 0:l.sxChildren.default:{}}}),transition:{duration:.3},initial:{opacity:0},exit:{opacity:0},animate:{opacity:1},children:l.children},"children"):null]})};
2
- //# sourceMappingURL=area-CZkDIeGx.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"area-CZkDIeGx.cjs","sources":["../src/areas/preview/area.tsx"],"sourcesContent":["import { Icon } from '@local/components/icon';\nimport { Stack, StackMotion } from '@local/components/stack';\n\nimport { AnimatePresence } from 'framer-motion';\nimport { FC, useEffect, useMemo, useState } from 'react';\n\nimport { PreviewProps } from '.';\n\nexport const Preview: FC<PreviewProps> = (props) => {\n const [visible, setVisible] = useState(props.defaultVisible ?? true);\n\n const propsVisible = useMemo(() => ('visible' in props ? props.visible : null), [props]);\n const propsTime = useMemo(() => ('time' in props ? props.time : null), [props]);\n const propsMinTime = useMemo(() => ('minTime' in props ? props.minTime : null), [props]);\n\n useEffect(() => {\n if (propsTime !== null) {\n const timer = setTimeout(() => {\n setVisible(true);\n }, propsTime);\n\n return () => {\n clearTimeout(timer);\n };\n }\n }, [propsTime]);\n\n useEffect(() => {\n if (propsVisible !== null) {\n if (propsVisible) {\n if (propsMinTime) {\n const timer = setTimeout(() => {\n setVisible(propsVisible);\n }, propsMinTime);\n return () => clearTimeout(timer);\n } else {\n setVisible(propsVisible);\n }\n } else {\n setVisible(propsVisible);\n }\n }\n }, [propsVisible, propsMinTime]);\n\n return (\n <AnimatePresence>\n {!visible ? (\n <StackMotion\n key='loader'\n sx={(theme) => ({\n ...props?.sxLoader,\n default: {\n backgroundColor: theme.palette.whiteStandard,\n width: '100%',\n height: '100%',\n position: 'absolute',\n top: 0,\n left: 0,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n zIndex: 1,\n ...(props?.sxLoader\n ? typeof props?.sxLoader === 'function'\n ? props?.sxLoader(theme).default\n : props?.sxLoader.default\n : {}),\n },\n })}\n transition={{ duration: 0.3 }}\n exit={{ opacity: 0 }}\n animate={{ opacity: 1 }}\n >\n <Stack\n sx={{\n default: {\n position: 'absolute',\n width: '8vmin',\n height: '8vmin',\n },\n }}\n >\n <Icon size='100%' type='loading' primaryColor='blueFocus' name='Line' />\n </Stack>\n {props.content && (\n <Stack\n sx={{\n default: {\n position: 'relative',\n marginTop: '18vmin',\n },\n }}\n >\n {props.content}\n </Stack>\n )}\n </StackMotion>\n ) : null}\n {visible ? (\n <StackMotion\n key='children'\n sx={(theme) => ({\n ...props?.sxChildren,\n default: {\n display: 'contents',\n zIndex: 0,\n ...(props?.sxChildren\n ? typeof props?.sxChildren === 'function'\n ? props?.sxChildren(theme).default\n : props?.sxChildren.default\n : {}),\n },\n })}\n transition={{ duration: 0.3 }}\n initial={{ opacity: 0 }}\n exit={{ opacity: 0 }}\n animate={{ opacity: 1 }}\n >\n {props.children}\n </StackMotion>\n ) : null}\n </AnimatePresence>\n );\n};\n"],"names":["props","visible","setVisible","useState","defaultVisible","propsVisible","useMemo","propsTime","time","propsMinTime","minTime","useEffect","timer","setTimeout","clearTimeout","AnimatePresence","children","jsxs","StackMotion","sx","theme","sxLoader","default","backgroundColor","palette","whiteStandard","width","height","position","top","left","display","alignItems","justifyContent","zIndex","transition","duration","exit","opacity","animate","jsx","Stack","Icon","size","type","primaryColor","name","content","marginTop","sxChildren","initial"],"mappings":"4MAQ0CA,IACxC,MAAOC,EAASC,GAAcC,EAAAA,SAASH,EAAMI,iBAAkB,GAEzDC,EAAeC,UAAQ,IAAO,YAAaN,EAAQA,EAAMC,QAAU,KAAO,CAACD,IAC3EO,EAAYD,UAAQ,IAAO,SAAUN,EAAQA,EAAMQ,KAAO,KAAO,CAACR,IAClES,EAAeH,UAAQ,IAAO,YAAaN,EAAQA,EAAMU,QAAU,KAAO,CAACV,IA+BjF,OA7BAW,EAAAA,UAAU,KACR,GAAkB,OAAdJ,EAAoB,CACtB,MAAMK,EAAQC,WAAW,KACvBX,GAAW,IACVK,GAEH,MAAO,KACLO,aAAaF,GACf,GAED,CAACL,IAEJI,EAAAA,UAAU,KACR,GAAqB,OAAjBN,EACF,GAAIA,EAAc,CAChB,GAAII,EAAc,CAChB,MAAMG,EAAQC,WAAW,KACvBX,EAAWG,IACVI,GACH,MAAO,IAAMK,aAAaF,EAAK,CAE/BV,EAAWG,EACb,MAEAH,EAAWG,IAGd,CAACA,EAAcI,6BAGfM,kBAAA,CACEC,SAAA,CAACf,EAmDE,KAlDFgB,EAAAA,kBAAAA,KAACC,EAAAA,YAAA,CAECC,GAAKC,IAAA,IACA,MAAApB,OAAA,EAAAA,EAAOqB,SACVC,QAAS,CACPC,gBAAiBH,EAAMI,QAAQC,cAC/BC,MAAO,OACPC,OAAQ,OACRC,SAAU,WACVC,IAAK,EACLC,KAAM,EACNC,QAAS,OACTC,WAAY,SACZC,eAAgB,SAChBC,OAAQ,MACJ,MAAAlC,OAAA,EAAAA,EAAOqB,UACoB,yBAApBrB,WAAOqB,UACZ,MAAArB,OAAA,EAAAA,EAAOqB,SAASD,GAAOE,QACvB,MAAAtB,OAAA,EAAAA,EAAOqB,SAASC,QAClB,CAAA,KAGRa,WAAY,CAAEC,SAAU,IACxBC,KAAM,CAAEC,QAAS,GACjBC,QAAS,CAAED,QAAS,GAEpBtB,SAAA,GAAAwB,kBAAAA,IAACC,EAAAA,MAAA,CACCtB,GAAI,CACFG,QAAS,CACPM,SAAU,WACVF,MAAO,QACPC,OAAQ,UAIZX,SAAAwB,EAAAA,kBAAAA,IAACE,QAAKC,KAAK,OAAOC,KAAK,UAAUC,aAAa,YAAYC,KAAK,WAEhE9C,EAAM+C,SACLP,EAAAA,kBAAAA,IAACC,EAAAA,MAAA,CACCtB,GAAI,CACFG,QAAS,CACPM,SAAU,WACVoB,UAAW,WAIdhC,SAAAhB,EAAM+C,YA7CP,UAkDP9C,IACCuC,kBAAAA,IAACtB,EAAAA,YAAA,CAECC,GAAKC,IAAA,IACA,MAAApB,OAAA,EAAAA,EAAOiD,WACV3B,QAAS,CACPS,QAAS,WACTG,OAAQ,MACJ,MAAAlC,OAAA,EAAAA,EAAOiD,YACsB,yBAAtBjD,WAAOiD,YACZ,MAAAjD,OAAA,EAAAA,EAAOiD,WAAW7B,GAAOE,QACzB,MAAAtB,OAAA,EAAAA,EAAOiD,WAAW3B,QACpB,CAAA,KAGRa,WAAY,CAAEC,SAAU,IACxBc,QAAS,CAAEZ,QAAS,GACpBD,KAAM,CAAEC,QAAS,GACjBC,QAAS,CAAED,QAAS,GAEnBtB,SAAAhB,EAAMgB,UAlBH,YAoBJ"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"area-DEwj0-O3.js","sources":["../src/areas/preview/area.tsx"],"sourcesContent":["import { Icon } from '@local/components/icon';\nimport { Stack, StackMotion } from '@local/components/stack';\n\nimport { AnimatePresence } from 'framer-motion';\nimport { FC, useEffect, useMemo, useState } from 'react';\n\nimport { PreviewProps } from '.';\n\nexport const Preview: FC<PreviewProps> = (props) => {\n const [visible, setVisible] = useState(props.defaultVisible ?? true);\n\n const propsVisible = useMemo(() => ('visible' in props ? props.visible : null), [props]);\n const propsTime = useMemo(() => ('time' in props ? props.time : null), [props]);\n const propsMinTime = useMemo(() => ('minTime' in props ? props.minTime : null), [props]);\n\n useEffect(() => {\n if (propsTime !== null) {\n const timer = setTimeout(() => {\n setVisible(true);\n }, propsTime);\n\n return () => {\n clearTimeout(timer);\n };\n }\n }, [propsTime]);\n\n useEffect(() => {\n if (propsVisible !== null) {\n if (propsVisible) {\n if (propsMinTime) {\n const timer = setTimeout(() => {\n setVisible(propsVisible);\n }, propsMinTime);\n return () => clearTimeout(timer);\n } else {\n setVisible(propsVisible);\n }\n } else {\n setVisible(propsVisible);\n }\n }\n }, [propsVisible, propsMinTime]);\n\n return (\n <AnimatePresence>\n {!visible ? (\n <StackMotion\n key='loader'\n sx={(theme) => ({\n ...props?.sxLoader,\n default: {\n backgroundColor: theme.palette.whiteStandard,\n width: '100%',\n height: '100%',\n position: 'absolute',\n top: 0,\n left: 0,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n zIndex: 1,\n ...(props?.sxLoader\n ? typeof props?.sxLoader === 'function'\n ? props?.sxLoader(theme).default\n : props?.sxLoader.default\n : {}),\n },\n })}\n transition={{ duration: 0.3 }}\n exit={{ opacity: 0 }}\n animate={{ opacity: 1 }}\n >\n <Stack\n sx={{\n default: {\n position: 'absolute',\n width: '8vmin',\n height: '8vmin',\n },\n }}\n >\n <Icon size='100%' type='loading' primaryColor='blueFocus' name='Line' />\n </Stack>\n {props.content && (\n <Stack\n sx={{\n default: {\n position: 'relative',\n marginTop: '18vmin',\n },\n }}\n >\n {props.content}\n </Stack>\n )}\n </StackMotion>\n ) : null}\n {visible ? (\n <StackMotion\n key='children'\n sx={(theme) => ({\n ...props?.sxChildren,\n default: {\n display: 'contents',\n zIndex: 0,\n ...(props?.sxChildren\n ? typeof props?.sxChildren === 'function'\n ? props?.sxChildren(theme).default\n : props?.sxChildren.default\n : {}),\n },\n })}\n transition={{ duration: 0.3 }}\n initial={{ opacity: 0 }}\n exit={{ opacity: 0 }}\n animate={{ opacity: 1 }}\n >\n {props.children}\n </StackMotion>\n ) : null}\n </AnimatePresence>\n );\n};\n"],"names":["jsxs","jsx"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"area-DRsIULcw.cjs","sources":["../src/areas/skeleton/area.styles.tsx","../src/areas/skeleton/area.tsx"],"sourcesContent":["import { Stack } from '@local/components/stack';\nimport { addTransition } from '@local/styles/add';\n\nimport styled, { css, keyframes } from 'styled-components';\n\nimport { StyledSkeletonProps } from '.';\n\n// const shimmer = keyframes`\n// 0% {\n// background-position: -468px 0;\n// }\n// 100% {\n// background-position: 468px 0;\n// }\n// `;\n\nconst shimmer = keyframes`\n 0% {\n background-position: 100%;\n }\n 100% {\n background-position: -100%;\n }\n`;\n\nexport const StyledSkeleton = styled(Stack)<StyledSkeletonProps>`\n background: transparent;\n\n ${(props) => css`\n ${\n !props.$visible &&\n css`\n ${\n props.$type === 'secondary'\n ? css`\n background: linear-gradient(\n 90deg,\n #f6f7f8 25%,\n #edeef1 50%,\n #f6f7f8 75%\n );\n `\n : css`\n background: linear-gradient(\n 90deg,\n #edeef1 25%,\n #f6f7f8 50%,\n #edeef1 75%\n ); \n `\n };\n background-size: 200% 100%;\n animation: ${shimmer} 1.5s infinite linear;\n\n `\n };\n `}\n & > * {\n opacity: ${(props) => (!props.$visible ? 0 : 1)};\n ${addTransition};\n }\n`;\n","import { FC, useEffect, useState } from 'react';\n\nimport { SkeletonProps, StyledSkeleton } from '.';\n\nexport const Skeleton: FC<SkeletonProps> = (props) => {\n const [visible, setVisible] = useState(props.defaultVisible ?? false);\n\n useEffect(() => {\n if ('time' in props) {\n const timer = setTimeout(() => {\n setVisible(true);\n }, props.time);\n\n return () => {\n clearTimeout(timer);\n };\n }\n }, [props]);\n\n useEffect(() => {\n if ('visible' in props) {\n setVisible(!props.visible);\n }\n }, [props]);\n\n return (\n <StyledSkeleton {...props} $visible={visible} $type={props.type}>\n {props.children}\n </StyledSkeleton>\n );\n};\n"],"names":["shimmer","keyframes","StyledSkeleton","styled","Stack","props","css","$visible","$type","addTransition","visible","setVisible","useState","defaultVisible","useEffect","timer","setTimeout","time","clearTimeout","jsx","type","children"],"mappings":"qLAgBMA,EAAUC,EAAAA,SAAAA;;;;;;;EASHC,EAAiBC,EAAOC,QAAK;;;IAGrCC,GAAUC,EAAAA,GAAAA;OAERD,EAAME,UACPD,EAAAA,GAAAA;QAEkB,cAAhBD,EAAMG,MACFF,EAAAA,GAAAA;;;;;;;YAQAA,EAAAA,GAAAA;;;;;;;;;mBAUON;;;;;eAMHK,GAAYA,EAAME,SAAe,EAAJ;MACvCE;;mBCvDsCJ,IAC1C,MAAOK,EAASC,GAAcC,EAAAA,SAASP,EAAMQ,iBAAkB,GAoB/D,OAlBAC,EAAAA,UAAU,KACR,GAAI,SAAUT,EAAO,CACnB,MAAMU,EAAQC,WAAW,KACvBL,GAAW,IACVN,EAAMY,MAET,MAAO,KACLC,aAAaH,GACf,GAED,CAACV,IAEJS,EAAAA,UAAU,KACJ,YAAaT,GACfM,GAAYN,EAAMK,UAEnB,CAACL,IAGFc,EAAAA,kBAAAA,IAACjB,EAAA,IAAmBG,EAAOE,SAAUG,EAASF,MAAOH,EAAMe,KACxDC,SAAAhB,EAAMgB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"area-sDVSuS3G.js","sources":["../src/areas/skeleton/area.styles.tsx","../src/areas/skeleton/area.tsx"],"sourcesContent":["import { Stack } from '@local/components/stack';\nimport { addTransition } from '@local/styles/add';\n\nimport styled, { css, keyframes } from 'styled-components';\n\nimport { StyledSkeletonProps } from '.';\n\n// const shimmer = keyframes`\n// 0% {\n// background-position: -468px 0;\n// }\n// 100% {\n// background-position: 468px 0;\n// }\n// `;\n\nconst shimmer = keyframes`\n 0% {\n background-position: 100%;\n }\n 100% {\n background-position: -100%;\n }\n`;\n\nexport const StyledSkeleton = styled(Stack)<StyledSkeletonProps>`\n background: transparent;\n\n ${(props) => css`\n ${\n !props.$visible &&\n css`\n ${\n props.$type === 'secondary'\n ? css`\n background: linear-gradient(\n 90deg,\n #f6f7f8 25%,\n #edeef1 50%,\n #f6f7f8 75%\n );\n `\n : css`\n background: linear-gradient(\n 90deg,\n #edeef1 25%,\n #f6f7f8 50%,\n #edeef1 75%\n ); \n `\n };\n background-size: 200% 100%;\n animation: ${shimmer} 1.5s infinite linear;\n\n `\n };\n `}\n & > * {\n opacity: ${(props) => (!props.$visible ? 0 : 1)};\n ${addTransition};\n }\n`;\n","import { FC, useEffect, useState } from 'react';\n\nimport { SkeletonProps, StyledSkeleton } from '.';\n\nexport const Skeleton: FC<SkeletonProps> = (props) => {\n const [visible, setVisible] = useState(props.defaultVisible ?? false);\n\n useEffect(() => {\n if ('time' in props) {\n const timer = setTimeout(() => {\n setVisible(true);\n }, props.time);\n\n return () => {\n clearTimeout(timer);\n };\n }\n }, [props]);\n\n useEffect(() => {\n if ('visible' in props) {\n setVisible(!props.visible);\n }\n }, [props]);\n\n return (\n <StyledSkeleton {...props} $visible={visible} $type={props.type}>\n {props.children}\n </StyledSkeleton>\n );\n};\n"],"names":["jsx"],"mappings":";;;;;AAgBA,MAAM,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAST,MAAM,iBAAiB,OAAO,KAAK;AAAA;AAAA;AAAA,IAGtC,CAAC,UAAU;AAAA,MAET,CAAC,MAAM,YACP;AAAA,QAEE,MAAM,UAAU,cACZ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,cAQA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,WAQN;AAAA;AAAA,mBAEa,OAAO;AAAA;AAAA,KAGtB;AAAA,GACD;AAAA;AAAA,eAEY,CAAC,UAAW,CAAC,MAAM,WAAW,IAAI,CAAE;AAAA,MAC7C,aAAa;AAAA;AAAA;ACvDZ,MAAM,WAA8B,CAAC,UAAU;AACpD,QAAM,CAAC,SAAS,UAAU,IAAI,SAAS,MAAM,kBAAkB,KAAK;AAEpE,YAAU,MAAM;AACd,QAAI,UAAU,OAAO;AACnB,YAAM,QAAQ,WAAW,MAAM;AAC7B,mBAAW,IAAI;AAAA,MAAA,GACd,MAAM,IAAI;AAEb,aAAO,MAAM;AACX,qBAAa,KAAK;AAAA,MAAA;AAAA,IACpB;AAAA,EACF,GACC,CAAC,KAAK,CAAC;AAEV,YAAU,MAAM;AACd,QAAI,aAAa,OAAO;AACtB,iBAAW,CAAC,MAAM,OAAO;AAAA,IAAA;AAAA,EAC3B,GACC,CAAC,KAAK,CAAC;AAEV,SACEA,kCAAAA,IAAC,gBAAA,EAAgB,GAAG,OAAO,UAAU,SAAS,OAAO,MAAM,MACxD,UAAA,MAAM,SAAA,CACT;AAEJ;"}
@@ -1,90 +0,0 @@
1
- "use strict";const e=require("./jsx-runtime-BcGej2Kr.cjs"),i=require("./component.styles-BKnUDWqO.cjs"),s=require("./component.styles-Dpg-__rn.cjs"),t=require("./component-CLqcB5mM.cjs"),o=require("./theme.global-CcoD5bPP.cjs"),n=require("./floating-ui.react--v70Xky9.cjs"),r=require("react"),d=require("styled-components"),l=require("./component-BkYIZFlr.cjs"),u=require("./style-Df37KnoJ.cjs"),c=require("./style-fRZ6xrVp.cjs"),a=require("framer-motion"),$=d.css`
2
- ${e=>d.css`
3
- background: ${e.theme.colors.button[e.$genre].background.rest};
4
- border-color: ${e.theme.colors.button[e.$genre].border.rest};
5
- color: ${e.theme.colors.button[e.$genre].color.rest};
6
- &:hover {
7
- ${(!e.$isHidden||e.$isNotHoverEffect)&&d.css`
8
- background: ${e.theme.colors.button[e.$genre].background.hover};
9
- border-color: ${e.theme.colors.button[e.$genre].border.hover};
10
- color: ${e.theme.colors.button[e.$genre].color.hover};
11
- `}
12
- }
13
- `};
14
- `,p=d.css`
15
- ${e=>e.$isHidden?d.css`
16
- opacity: 0.5;
17
- background: ${e.theme.colors.button[e.$genre].background.rest} !important;
18
- color: ${e.theme.colors.button[e.$genre].color.rest} !important;
19
- `:d.css`
20
- opacity: 1;
21
- `}
22
- `,h=d.css`
23
- ${e=>e.$isHiddenBorder&&d.css`
24
- border: 0px transparent !important;
25
- `}
26
- `,m=d.css`
27
- ${e=>e.$isRadius&&d.css`
28
- border-radius: 100px;
29
- `}
30
- `,x=d.css`
31
- ${e=>e.$isPlaystationEffect&&d.css`
32
- box-shadow: ${e.theme.effects.button};
33
- `}
34
- `,g=d.div`
35
- ${e=>e.$isIconGroup?d.css`
36
- display: flex;
37
- gap: ${o.KEY_SIZE_DATA[e.$size].padding-2}px;
38
- align-items: center;
39
- order: ${e.$iconGroupOrder||"initial"};
40
- `:d.css`
41
- display: contents;
42
- `}
43
- `,y=d.css`
44
- ${e=>b({...o.KEY_SIZE_DATA[e.$size],isFullSize:e.$isFullSize,isWidthAsHeight:e.$isWidthAsHeight,isMinWidthAsContent:e.$isMinWidthAsContent})};
45
- `,b=e=>d.css`
46
- height: fit-content;
47
- min-height: ${e.height}px;
48
- max-height: fit-content;
49
- padding: 2px ${e.padding}px;
50
- border-radius: ${e.radius}px;
51
- gap: ${e.padding-2}px;
52
- ${()=>e.isFullSize&&d.css`
53
- height: 100%;
54
- width: 100%;
55
- border-radius: 0px;
56
- `};
57
- ${e.isWidthAsHeight&&d.css`
58
- width: ${e.height}px;
59
- min-width: ${e.height}px;
60
- padding: 0px;
61
- `};
62
- ${e.isMinWidthAsContent&&d.css`
63
- min-width: max-content;
64
- `};
65
- `,f=d.css`
66
- border: 1px solid transparent;
67
- `,v=d.css`
68
- display: flex;
69
- align-items: center;
70
- justify-content: center;
71
- `,z=d(a.motion.button)`
72
- cursor: pointer;
73
- user-select: none;
74
-
75
- ${f};
76
- ${y};
77
- ${$};
78
- ${p};
79
- ${h};
80
- ${m};
81
- ${x};
82
- ${v};
83
- ${s.addRippleDefault};
84
- ${u.addTransition};
85
- ${u.addFont};
86
- ${u.addOutline};
87
- ${l.addSXTypography};
88
- ${c.addSX};
89
- `;exports.Button=s=>{var l,u,c,a;const $=d.useTheme(),p=r.useMemo(()=>{var t,o;return null==(o=null==(t=s.icons??[])?void 0:t.filter(e=>!e.isHidden))?void 0:o.map((t,o)=>"id"===(null==t?void 0:t.type)?e.jsxRuntimeExports.jsx(i.Icon,{name:null==t?void 0:t.name,type:"id",size:(null==t?void 0:t.size)??s.size,turn:t.turn,order:t.order},`${t.type}-${t.name}-${o}`):"logo"===(null==t?void 0:t.type)?e.jsxRuntimeExports.jsx(i.Icon,{name:null==t?void 0:t.name,type:"logo",size:(null==t?void 0:t.size)??s.size,turn:t.turn,order:t.order},`${t.type}-${t.name}-${o}`):"bustmarket"===(null==t?void 0:t.type)?e.jsxRuntimeExports.jsx(i.Icon,{name:null==t?void 0:t.name,type:"bustmarket",size:(null==t?void 0:t.size)??s.size,turn:t.turn,order:t.order},`${t.type}-${t.name}-${o}`):"checkbox"===(null==t?void 0:t.type)?e.jsxRuntimeExports.jsx(i.Icon,{name:null==t?void 0:t.name,type:"checkbox",size:(null==t?void 0:t.size)??s.size,turn:t.turn,order:t.order},`${t.type}-${t.name}-${o}`):"loading"===(null==t?void 0:t.type)?e.jsxRuntimeExports.jsx(i.Icon,{name:null==t?void 0:t.name,type:"loading",size:(null==t?void 0:t.size)??s.size,turn:t.turn,order:t.order},`${t.type}-${t.name}-${o}`):"realebail"===(null==t?void 0:t.type)?e.jsxRuntimeExports.jsx(i.Icon,{name:null==t?void 0:t.name,type:"realebail",size:(null==t?void 0:t.size)??s.size,turn:t.turn,order:t.order},`${t.type}-${t.name}-${o}`):null)},[s.icons,s.size]),h=r.useRef(null),m=n.useMergeRefs([h,s.ref]);return e.jsxRuntimeExports.jsxs(z,{$font:{size:(null==(l=s.font)?void 0:l.size)??o.KEY_SIZE_DATA[s.size].font,weight:(null==(u=s.font)?void 0:u.weight)??700,family:(null==(c=s.font)?void 0:c.family)??$.font.family,height:null==(a=s.font)?void 0:a.height},$isNotHoverEffect:s.isNotHoverEffect,whileTap:s.isWhileTapEffect?{scale:.9,transition:{duration:.01}}:{},id:s.id,tabIndex:s.tabIndex??0,$isFullSize:s.isFullSize,$genre:s.genre,$size:s.size,$isDisabled:s.isDisabled,$isDisabledOutline:s.isDisabled??s.isDisabledOutline,$isOutlineBoxShadow:s.isOutlineBoxShadow,$isReadOnly:s.isReadOnly,$isMinWidthAsContent:s.isMinWidthAsContent,$isWidthAsHeight:s.isWidthAsHeight,$isRadius:s.isRadius,$isHidden:s.isHidden,$isPlaystationEffect:s.isPlaystationEffect,$sxTypography:s.sxTypography,$isHiddenBorder:s.isHiddenBorder||s.isPlaystationEffect,disabled:s.isDisabled,type:s.type??"button",className:s.className,onClick:e=>{!s.isDisabled&&s.onClick&&s.onClick(e)},onFocus:s.onFocus,onMouseDown:s.onMouseDown,ref:m,$sx:s.sx,children:[e.jsxRuntimeExports.jsx(t.Ripple,{color:$.colors.checkbox[s.genre].color.rest,isDisabled:s.isDisabled??s.isDisabledRipple,isHidden:s.isHidden}),!s.isOnlyIcon&&e.jsxRuntimeExports.jsx("div",{style:{order:0,display:"contents"},children:s.children&&s.children}),e.jsxRuntimeExports.jsx(g,{$size:s.size,$isIconGroup:s.isIconGroup,$iconGroupOrder:"iconGroupOrder"in s?s.iconGroupOrder:void 0,children:p})]})},exports.ButtonSize=y,exports.ButtonSizeConstructor=b,exports.StyledButton=z,exports.StyledButtonIconsWrapper=g;
90
- //# sourceMappingURL=component-BLWcOf3A.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"component-BLWcOf3A.cjs","sources":["../src/components/button/component.styles.ts","../src/components/button/component.tsx"],"sourcesContent":["import { addRippleDefault } from '@local/components/ripple';\nimport { addSXTypography } from '@local/components/typography';\nimport { addFont, addOutline, addTransition } from '@local/styles/add';\nimport { addSX } from '@local/styles/sx';\nimport { IThemeSizePropertyDefault, KEY_SIZE_DATA } from '@local/theme';\n\nimport { motion } from 'framer-motion';\nimport styled, { css } from 'styled-components';\n\nimport { StyledDollarButtonIconsWrapperProps, StyledDollarButtonProps } from '.';\n\n/****************************************** Genre *************************************************/\nconst ButtonGenre = css<StyledDollarButtonProps>`\n ${(props) => css`\n background: ${props.theme.colors.button[props.$genre].background.rest};\n border-color: ${props.theme.colors.button[props.$genre].border.rest};\n color: ${props.theme.colors.button[props.$genre].color.rest};\n &:hover {\n ${\n (!props.$isHidden || props.$isNotHoverEffect) &&\n css`\n background: ${props.theme.colors.button[props.$genre].background.hover};\n border-color: ${props.theme.colors.button[props.$genre].border.hover};\n color: ${props.theme.colors.button[props.$genre].color.hover};\n `\n }\n }\n `};\n`;\n\n/****************************************** Disabled *************************************************/\nconst ButtonDisabled = css<StyledDollarButtonProps>`\n ${(props) =>\n props.$isHidden\n ? css`\n opacity: 0.5;\n background: ${props.theme.colors.button[props.$genre].background.rest} !important;\n color: ${props.theme.colors.button[props.$genre].color.rest} !important;\n `\n : css`\n opacity: 1;\n `}\n`;\n/****************************************** is HiddenBorder *************************************************/\nconst ButtonIsHiddenBorder = css<StyledDollarButtonProps>`\n ${(props) =>\n props.$isHiddenBorder &&\n css`\n border: 0px transparent !important;\n `}\n`;\n/****************************************** is Radius *************************************************/\nconst ButtonIsRadius = css<StyledDollarButtonProps>`\n ${(props) =>\n props.$isRadius &&\n css`\n border-radius: 100px;\n `}\n`;\n/****************************************** is PlaystationEffect *************************************************/\nconst ButtonIsPlaystationEffect = css<StyledDollarButtonProps>`\n ${(props) =>\n props.$isPlaystationEffect &&\n css`\n box-shadow: ${props.theme.effects.button};\n `}\n`;\n/****************************************** Icons Wrapper *************************************************/\nexport const StyledButtonIconsWrapper = styled.div<StyledDollarButtonIconsWrapperProps>`\n ${(props) =>\n props.$isIconGroup\n ? css`\n display: flex;\n gap: ${KEY_SIZE_DATA[props.$size].padding - 2}px;\n align-items: center;\n order: ${props.$iconGroupOrder || 'initial'};\n `\n : css`\n display: contents;\n `}\n`;\n\n/****************************************** Size *************************************************/\nexport const ButtonSize = css<StyledDollarButtonProps>`\n ${(props) =>\n ButtonSizeConstructor({\n ...KEY_SIZE_DATA[props.$size],\n isFullSize: props.$isFullSize,\n isWidthAsHeight: props.$isWidthAsHeight,\n isMinWidthAsContent: props.$isMinWidthAsContent,\n })};\n`;\nexport const ButtonSizeConstructor = (\n props: IThemeSizePropertyDefault & {\n isFullSize?: boolean;\n isWidthAsHeight?: boolean;\n isMinWidthAsContent?: boolean;\n },\n) => css`\n height: fit-content;\n min-height: ${props.height}px;\n max-height: fit-content;\n padding: 2px ${props.padding}px;\n border-radius: ${props.radius}px;\n gap: ${props.padding - 2}px;\n ${() =>\n props.isFullSize &&\n css`\n height: 100%;\n width: 100%;\n border-radius: 0px;\n `};\n ${\n props.isWidthAsHeight &&\n css`\n width: ${props.height}px;\n min-width: ${props.height}px;\n padding: 0px;\n `\n };\n ${\n props.isMinWidthAsContent &&\n css`\n min-width: max-content;\n `\n };\n`;\n/****************************************** Border *************************************************/\nconst ButtonBorder = css`\n border: 1px solid transparent;\n`;\n\n/****************************************** Flex *************************************************/\nconst ButtonFlex = css<StyledDollarButtonProps>`\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n/****************************************** Styled *************************************************/\nexport const StyledButton = styled(motion.button)<StyledDollarButtonProps>`\n cursor: pointer;\n user-select: none;\n\n ${ButtonBorder};\n ${ButtonSize};\n ${ButtonGenre};\n ${ButtonDisabled};\n ${ButtonIsHiddenBorder};\n ${ButtonIsRadius};\n ${ButtonIsPlaystationEffect};\n ${ButtonFlex};\n ${addRippleDefault};\n ${addTransition};\n ${addFont};\n ${addOutline};\n ${addSXTypography};\n ${addSX};\n`;\n","import {\n Icon,\n TIconBustMarketNameString,\n TIconCheckboxNameString,\n TIconIdNameString,\n TIconLoadingNameString,\n TIconLogoNameString,\n TIconRealEbailNameString,\n} from '@local/components/icon';\nimport { Ripple } from '@local/components/ripple';\nimport { KEY_SIZE_DATA } from '@local/theme';\n\nimport { useMergeRefs } from '@floating-ui/react';\nimport { FC, Ref, useMemo, useRef } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport { ButtonProps, StyledButton, StyledButtonIconsWrapper } from '.';\n\nexport const Button: FC<ButtonProps> = (props) => {\n const theme = useTheme();\n\n const iconComponents = useMemo(\n () =>\n (props.icons ?? [])\n ?.filter((icon) => !icon.isHidden)\n ?.map((icon, index) =>\n icon?.type === 'id' ? (\n <Icon\n key={`${icon.type}-${icon.name}-${index}`}\n name={icon?.name as TIconIdNameString}\n type='id'\n size={icon?.size ?? props.size}\n turn={icon.turn}\n order={icon.order}\n />\n ) : icon?.type === 'logo' ? (\n <Icon\n key={`${icon.type}-${icon.name}-${index}`}\n name={icon?.name as TIconLogoNameString}\n type='logo'\n size={icon?.size ?? props.size}\n turn={icon.turn}\n order={icon.order}\n />\n ) : icon?.type === 'bustmarket' ? (\n <Icon\n key={`${icon.type}-${icon.name}-${index}`}\n name={icon?.name as TIconBustMarketNameString}\n type='bustmarket'\n size={icon?.size ?? props.size}\n turn={icon.turn}\n order={icon.order}\n />\n ) : icon?.type === 'checkbox' ? (\n <Icon\n key={`${icon.type}-${icon.name}-${index}`}\n name={icon?.name as TIconCheckboxNameString}\n type='checkbox'\n size={icon?.size ?? props.size}\n turn={icon.turn}\n order={icon.order}\n />\n ) : icon?.type === 'loading' ? (\n <Icon\n key={`${icon.type}-${icon.name}-${index}`}\n name={icon?.name as TIconLoadingNameString}\n type='loading'\n size={icon?.size ?? props.size}\n turn={icon.turn}\n order={icon.order}\n />\n ) : icon?.type === 'realebail' ? (\n <Icon\n key={`${icon.type}-${icon.name}-${index}`}\n name={icon?.name as TIconRealEbailNameString}\n type='realebail'\n size={icon?.size ?? props.size}\n turn={icon.turn}\n order={icon.order}\n />\n ) : null,\n ),\n [props.icons, props.size],\n );\n\n const handleClick: ButtonProps['onClick'] = (event) => {\n if (!props.isDisabled && props.onClick) {\n props.onClick(event);\n }\n };\n const refDefault = useRef<HTMLButtonElement>(null);\n\n const ref = useMergeRefs([refDefault, props.ref]);\n\n return (\n <StyledButton\n $font={{\n size: props.font?.size ?? KEY_SIZE_DATA[props.size].font,\n weight: props.font?.weight ?? 700,\n family: props.font?.family ?? theme.font.family,\n height: props.font?.height,\n }}\n $isNotHoverEffect={props.isNotHoverEffect}\n whileTap={props.isWhileTapEffect ? { scale: 0.9, transition: { duration: 0.01 } } : {}}\n id={props.id}\n tabIndex={props.tabIndex ?? 0}\n $isFullSize={props.isFullSize}\n $genre={props.genre}\n $size={props.size}\n $isDisabled={props.isDisabled}\n $isDisabledOutline={props.isDisabled ?? props.isDisabledOutline}\n $isOutlineBoxShadow={props.isOutlineBoxShadow}\n $isReadOnly={props.isReadOnly}\n $isMinWidthAsContent={props.isMinWidthAsContent}\n $isWidthAsHeight={props.isWidthAsHeight}\n $isRadius={props.isRadius}\n $isHidden={props.isHidden}\n $isPlaystationEffect={props.isPlaystationEffect}\n $sxTypography={props.sxTypography}\n $isHiddenBorder={props.isHiddenBorder || props.isPlaystationEffect}\n disabled={props.isDisabled}\n type={props.type ?? 'button'}\n className={props.className}\n onClick={handleClick}\n onFocus={props.onFocus}\n onMouseDown={props.onMouseDown}\n ref={ref as Ref<HTMLButtonElement>}\n $sx={props.sx}\n >\n <Ripple\n color={theme.colors.checkbox[props.genre].color.rest}\n isDisabled={props.isDisabled ?? props.isDisabledRipple}\n isHidden={props.isHidden}\n />\n\n {!props.isOnlyIcon && <div style={{ order: 0, display: 'contents' }}>{props.children && props.children}</div>}\n <StyledButtonIconsWrapper\n $size={props.size}\n $isIconGroup={props.isIconGroup}\n $iconGroupOrder={'iconGroupOrder' in props ? props.iconGroupOrder : undefined}\n >\n {iconComponents}\n </StyledButtonIconsWrapper>\n </StyledButton>\n );\n};\n"],"names":["ButtonGenre","css","props","theme","colors","button","$genre","background","rest","border","color","$isHidden","$isNotHoverEffect","hover","ButtonDisabled","ButtonIsHiddenBorder","$isHiddenBorder","ButtonIsRadius","$isRadius","ButtonIsPlaystationEffect","$isPlaystationEffect","effects","StyledButtonIconsWrapper","styled","div","$isIconGroup","KEY_SIZE_DATA","$size","padding","$iconGroupOrder","ButtonSize","ButtonSizeConstructor","isFullSize","$isFullSize","isWidthAsHeight","$isWidthAsHeight","isMinWidthAsContent","$isMinWidthAsContent","height","radius","ButtonBorder","ButtonFlex","StyledButton","motion","addRippleDefault","addTransition","addFont","addOutline","addSXTypography","addSX","useTheme","iconComponents","useMemo","_b","_a","icons","filter","icon","isHidden","map","index","type","jsx","Icon","name","size","turn","order","refDefault","useRef","ref","useMergeRefs","jsxs","$font","font","weight","family","_c","_d","isNotHoverEffect","whileTap","isWhileTapEffect","scale","transition","duration","id","tabIndex","genre","$isDisabled","isDisabled","$isDisabledOutline","isDisabledOutline","$isOutlineBoxShadow","isOutlineBoxShadow","$isReadOnly","isReadOnly","isRadius","isPlaystationEffect","$sxTypography","sxTypography","isHiddenBorder","disabled","className","onClick","event","onFocus","onMouseDown","$sx","sx","children","Ripple","checkbox","isDisabledRipple","isOnlyIcon","style","display","isIconGroup","iconGroupOrder"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"component-CeuA5Ry0.js","sources":["../src/components/button/component.styles.ts","../src/components/button/component.tsx"],"sourcesContent":["import { addRippleDefault } from '@local/components/ripple';\nimport { addSXTypography } from '@local/components/typography';\nimport { addFont, addOutline, addTransition } from '@local/styles/add';\nimport { addSX } from '@local/styles/sx';\nimport { IThemeSizePropertyDefault, KEY_SIZE_DATA } from '@local/theme';\n\nimport { motion } from 'framer-motion';\nimport styled, { css } from 'styled-components';\n\nimport { StyledDollarButtonIconsWrapperProps, StyledDollarButtonProps } from '.';\n\n/****************************************** Genre *************************************************/\nconst ButtonGenre = css<StyledDollarButtonProps>`\n ${(props) => css`\n background: ${props.theme.colors.button[props.$genre].background.rest};\n border-color: ${props.theme.colors.button[props.$genre].border.rest};\n color: ${props.theme.colors.button[props.$genre].color.rest};\n &:hover {\n ${\n (!props.$isHidden || props.$isNotHoverEffect) &&\n css`\n background: ${props.theme.colors.button[props.$genre].background.hover};\n border-color: ${props.theme.colors.button[props.$genre].border.hover};\n color: ${props.theme.colors.button[props.$genre].color.hover};\n `\n }\n }\n `};\n`;\n\n/****************************************** Disabled *************************************************/\nconst ButtonDisabled = css<StyledDollarButtonProps>`\n ${(props) =>\n props.$isHidden\n ? css`\n opacity: 0.5;\n background: ${props.theme.colors.button[props.$genre].background.rest} !important;\n color: ${props.theme.colors.button[props.$genre].color.rest} !important;\n `\n : css`\n opacity: 1;\n `}\n`;\n/****************************************** is HiddenBorder *************************************************/\nconst ButtonIsHiddenBorder = css<StyledDollarButtonProps>`\n ${(props) =>\n props.$isHiddenBorder &&\n css`\n border: 0px transparent !important;\n `}\n`;\n/****************************************** is Radius *************************************************/\nconst ButtonIsRadius = css<StyledDollarButtonProps>`\n ${(props) =>\n props.$isRadius &&\n css`\n border-radius: 100px;\n `}\n`;\n/****************************************** is PlaystationEffect *************************************************/\nconst ButtonIsPlaystationEffect = css<StyledDollarButtonProps>`\n ${(props) =>\n props.$isPlaystationEffect &&\n css`\n box-shadow: ${props.theme.effects.button};\n `}\n`;\n/****************************************** Icons Wrapper *************************************************/\nexport const StyledButtonIconsWrapper = styled.div<StyledDollarButtonIconsWrapperProps>`\n ${(props) =>\n props.$isIconGroup\n ? css`\n display: flex;\n gap: ${KEY_SIZE_DATA[props.$size].padding - 2}px;\n align-items: center;\n order: ${props.$iconGroupOrder || 'initial'};\n `\n : css`\n display: contents;\n `}\n`;\n\n/****************************************** Size *************************************************/\nexport const ButtonSize = css<StyledDollarButtonProps>`\n ${(props) =>\n ButtonSizeConstructor({\n ...KEY_SIZE_DATA[props.$size],\n isFullSize: props.$isFullSize,\n isWidthAsHeight: props.$isWidthAsHeight,\n isMinWidthAsContent: props.$isMinWidthAsContent,\n })};\n`;\nexport const ButtonSizeConstructor = (\n props: IThemeSizePropertyDefault & {\n isFullSize?: boolean;\n isWidthAsHeight?: boolean;\n isMinWidthAsContent?: boolean;\n },\n) => css`\n height: fit-content;\n min-height: ${props.height}px;\n max-height: fit-content;\n padding: 2px ${props.padding}px;\n border-radius: ${props.radius}px;\n gap: ${props.padding - 2}px;\n ${() =>\n props.isFullSize &&\n css`\n height: 100%;\n width: 100%;\n border-radius: 0px;\n `};\n ${\n props.isWidthAsHeight &&\n css`\n width: ${props.height}px;\n min-width: ${props.height}px;\n padding: 0px;\n `\n };\n ${\n props.isMinWidthAsContent &&\n css`\n min-width: max-content;\n `\n };\n`;\n/****************************************** Border *************************************************/\nconst ButtonBorder = css`\n border: 1px solid transparent;\n`;\n\n/****************************************** Flex *************************************************/\nconst ButtonFlex = css<StyledDollarButtonProps>`\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n/****************************************** Styled *************************************************/\nexport const StyledButton = styled(motion.button)<StyledDollarButtonProps>`\n cursor: pointer;\n user-select: none;\n\n ${ButtonBorder};\n ${ButtonSize};\n ${ButtonGenre};\n ${ButtonDisabled};\n ${ButtonIsHiddenBorder};\n ${ButtonIsRadius};\n ${ButtonIsPlaystationEffect};\n ${ButtonFlex};\n ${addRippleDefault};\n ${addTransition};\n ${addFont};\n ${addOutline};\n ${addSXTypography};\n ${addSX};\n`;\n","import {\n Icon,\n TIconBustMarketNameString,\n TIconCheckboxNameString,\n TIconIdNameString,\n TIconLoadingNameString,\n TIconLogoNameString,\n TIconRealEbailNameString,\n} from '@local/components/icon';\nimport { Ripple } from '@local/components/ripple';\nimport { KEY_SIZE_DATA } from '@local/theme';\n\nimport { useMergeRefs } from '@floating-ui/react';\nimport { FC, Ref, useMemo, useRef } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport { ButtonProps, StyledButton, StyledButtonIconsWrapper } from '.';\n\nexport const Button: FC<ButtonProps> = (props) => {\n const theme = useTheme();\n\n const iconComponents = useMemo(\n () =>\n (props.icons ?? [])\n ?.filter((icon) => !icon.isHidden)\n ?.map((icon, index) =>\n icon?.type === 'id' ? (\n <Icon\n key={`${icon.type}-${icon.name}-${index}`}\n name={icon?.name as TIconIdNameString}\n type='id'\n size={icon?.size ?? props.size}\n turn={icon.turn}\n order={icon.order}\n />\n ) : icon?.type === 'logo' ? (\n <Icon\n key={`${icon.type}-${icon.name}-${index}`}\n name={icon?.name as TIconLogoNameString}\n type='logo'\n size={icon?.size ?? props.size}\n turn={icon.turn}\n order={icon.order}\n />\n ) : icon?.type === 'bustmarket' ? (\n <Icon\n key={`${icon.type}-${icon.name}-${index}`}\n name={icon?.name as TIconBustMarketNameString}\n type='bustmarket'\n size={icon?.size ?? props.size}\n turn={icon.turn}\n order={icon.order}\n />\n ) : icon?.type === 'checkbox' ? (\n <Icon\n key={`${icon.type}-${icon.name}-${index}`}\n name={icon?.name as TIconCheckboxNameString}\n type='checkbox'\n size={icon?.size ?? props.size}\n turn={icon.turn}\n order={icon.order}\n />\n ) : icon?.type === 'loading' ? (\n <Icon\n key={`${icon.type}-${icon.name}-${index}`}\n name={icon?.name as TIconLoadingNameString}\n type='loading'\n size={icon?.size ?? props.size}\n turn={icon.turn}\n order={icon.order}\n />\n ) : icon?.type === 'realebail' ? (\n <Icon\n key={`${icon.type}-${icon.name}-${index}`}\n name={icon?.name as TIconRealEbailNameString}\n type='realebail'\n size={icon?.size ?? props.size}\n turn={icon.turn}\n order={icon.order}\n />\n ) : null,\n ),\n [props.icons, props.size],\n );\n\n const handleClick: ButtonProps['onClick'] = (event) => {\n if (!props.isDisabled && props.onClick) {\n props.onClick(event);\n }\n };\n const refDefault = useRef<HTMLButtonElement>(null);\n\n const ref = useMergeRefs([refDefault, props.ref]);\n\n return (\n <StyledButton\n $font={{\n size: props.font?.size ?? KEY_SIZE_DATA[props.size].font,\n weight: props.font?.weight ?? 700,\n family: props.font?.family ?? theme.font.family,\n height: props.font?.height,\n }}\n $isNotHoverEffect={props.isNotHoverEffect}\n whileTap={props.isWhileTapEffect ? { scale: 0.9, transition: { duration: 0.01 } } : {}}\n id={props.id}\n tabIndex={props.tabIndex ?? 0}\n $isFullSize={props.isFullSize}\n $genre={props.genre}\n $size={props.size}\n $isDisabled={props.isDisabled}\n $isDisabledOutline={props.isDisabled ?? props.isDisabledOutline}\n $isOutlineBoxShadow={props.isOutlineBoxShadow}\n $isReadOnly={props.isReadOnly}\n $isMinWidthAsContent={props.isMinWidthAsContent}\n $isWidthAsHeight={props.isWidthAsHeight}\n $isRadius={props.isRadius}\n $isHidden={props.isHidden}\n $isPlaystationEffect={props.isPlaystationEffect}\n $sxTypography={props.sxTypography}\n $isHiddenBorder={props.isHiddenBorder || props.isPlaystationEffect}\n disabled={props.isDisabled}\n type={props.type ?? 'button'}\n className={props.className}\n onClick={handleClick}\n onFocus={props.onFocus}\n onMouseDown={props.onMouseDown}\n ref={ref as Ref<HTMLButtonElement>}\n $sx={props.sx}\n >\n <Ripple\n color={theme.colors.checkbox[props.genre].color.rest}\n isDisabled={props.isDisabled ?? props.isDisabledRipple}\n isHidden={props.isHidden}\n />\n\n {!props.isOnlyIcon && <div style={{ order: 0, display: 'contents' }}>{props.children && props.children}</div>}\n <StyledButtonIconsWrapper\n $size={props.size}\n $isIconGroup={props.isIconGroup}\n $iconGroupOrder={'iconGroupOrder' in props ? props.iconGroupOrder : undefined}\n >\n {iconComponents}\n </StyledButtonIconsWrapper>\n </StyledButton>\n );\n};\n"],"names":["_b","_a","jsx","jsxs"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"component.constants-DJzogH6s.js","sources":["../src/components/image-slider/component.styles.tsx","../src/hooks/use-image-slider/use.tsx","../src/components/image-slider/component.tsx","../src/components/image-slider/component.constants.tsx"],"sourcesContent":["import { motion } from 'framer-motion';\nimport styled from 'styled-components';\n\nexport const SliderImage = styled(motion.div)`\n display: flex;\n position: absolute;\n height: 100%;\n width: 100%;\n touch-action: pan-y;\n &:hover {\n cursor: grab;\n }\n\n &:active {\n cursor: grabbing;\n }\n`;\n\nexport const SliderDot = styled(motion.div)`\n width: 6px;\n height: 6px;\n background-color: ${(props) => props.theme.palette.whiteStandard};\n border-radius: 5px;\n opacity: 0.8;\n cursor: pointer;\n`;\n","import { Button } from '@local/components/button';\nimport { Image } from '@local/components/image';\nimport { ImageSliderProps, SliderDot, SliderImage } from '@local/components/image-slider';\nimport { Stack } from '@local/components/stack';\nimport { Typography } from '@local/components/typography';\nimport { useDialog, useDialogProps } from '@local/contexts/context-dialog';\nimport { KEY_SIZE_DATA } from '@local/theme';\n\nimport { AnimatePresence, PanInfo, Variants } from 'framer-motion';\nimport { FC, useCallback, useEffect, useMemo, useState } from 'react';\n\nimport { useImageSliderProps } from '.';\n\nexport const useImageSlider = (props: useImageSliderProps) => {\n const { onIndexChange } = props;\n\n const size = useMemo(() => KEY_SIZE_DATA[props.size], [props.size]);\n const br = useMemo(() => `${size.radius}px`, [size.radius]);\n\n const images = useMemo(() => props.images, [props.images]);\n\n const [{ activeImageId, direction }, setActiveImage] = useState({\n activeImageId: images?.[0]?.id ?? null,\n direction: 0,\n });\n const isLengthOne = useMemo(() => images?.length === 1, [images]);\n const isLengthZero = useMemo(() => images?.length === 0, [images]);\n\n const activeImageIndex = useMemo(() => images.findIndex((img) => img.id === activeImageId), [activeImageId, images]);\n\n const swipeToImage = useCallback(\n (swipeDirection: number) => {\n const currentIndex = images.findIndex((img) => img.id === activeImageId);\n const nextIndex = (currentIndex + swipeDirection + images.length) % images.length;\n setActiveImage({ activeImageId: images[nextIndex].id, direction: swipeDirection });\n },\n [activeImageId, images],\n );\n const dragEndHandler = useCallback(\n (dragInfo: PanInfo) => {\n const { offset, velocity } = dragInfo;\n const swipeThreshold = 50;\n const swipePower = Math.abs(offset.x) * velocity.x;\n\n if (swipePower > 500 || offset.x > swipeThreshold) {\n swipeToImage(-1);\n } else if (swipePower < -500 || offset.x < -swipeThreshold) {\n swipeToImage(1);\n }\n },\n [swipeToImage],\n );\n const skipToImage = useCallback(\n (imageId: number) => {\n const currentIndex = images.findIndex((img) => img.id === activeImageId);\n const newIndex = images.findIndex((img) => img.id === imageId);\n if (newIndex === -1 || newIndex === currentIndex) return;\n\n const direction = newIndex > currentIndex ? 1 : -1;\n setActiveImage({ activeImageId: imageId, direction });\n },\n [activeImageId, images],\n );\n\n useEffect(() => {\n if (activeImageId) onIndexChange?.(activeImageId);\n }, [activeImageId, onIndexChange]);\n\n const { add } = useDialog<ComponentHandleAddProps>({\n br: br,\n dragEndHandler: dragEndHandler,\n images: images,\n children: props.children,\n activeImageIndex: activeImageIndex,\n activeImageId: activeImageId,\n swipeToImage: swipeToImage,\n skipToImage: skipToImage,\n direction: direction,\n aspect: props.imageSettings.aspect,\n genre: props.genre,\n size: props.size,\n failedToLoad: props.locales.failedToLoad,\n isLengthOne: isLengthOne,\n propsDialog: {\n borderRadius: br,\n padding: '0',\n background: 'whiteStandard',\n },\n });\n const handleAdd = useCallback(() => {\n add({\n content: (params, remove) => <ComponentHandleAdd params={params} remove={remove} />,\n });\n }, [add]);\n\n return {\n isLengthZero,\n direction,\n activeImageId,\n isLengthOne,\n dragEndHandler,\n activeImageIndex,\n swipeToImage,\n skipToImage,\n handleAdd,\n };\n};\nconst sliderVariants: Variants = {\n initial: (direction) => ({\n x: direction > 0 ? '100%' : '-100%',\n scale: 1,\n opacity: 0,\n }),\n active: { x: 0, scale: 1, opacity: 1 },\n exit: (direction) => ({\n x: direction > 0 ? '-100%' : '100%',\n scale: 1,\n opacity: 0.2,\n }),\n};\nconst sliderTransition = {\n duration: 0.3,\n ease: [0.56, 0.03, 0.12, 1.04],\n};\n\ntype ComponentHandleAddProps = {\n br?: string;\n dragEndHandler: (dragInfo: PanInfo) => void;\n images: ImageSliderProps['images'];\n children?: ImageSliderProps['children'];\n activeImageIndex: number;\n activeImageId: number | null;\n swipeToImage: (swipeDirection: number) => void;\n skipToImage: (imageId: number) => void;\n direction: number;\n aspect: number;\n failedToLoad: string;\n isLengthOne: boolean;\n} & Pick<ImageSliderProps, 'genre' | 'size'>;\n\nconst ComponentHandleAdd: FC<{\n params?: useDialogProps<ComponentHandleAddProps>;\n remove?: () => void;\n}> = ({ params, remove }) => {\n return (\n <Stack\n sx={{\n default: {\n position: 'relative',\n overflow: 'hidden',\n aspectRatio: `${params?.aspect! * 2} / 2`,\n width: 'auto',\n maxWidth: '70dvw',\n height: '85dvh',\n borderRadius: params?.br,\n },\n tablet: {\n maxWidth: '95dvw',\n },\n }}\n >\n <AnimatePresence initial={false} custom={params?.direction}>\n <SliderImage\n key={params?.activeImageId}\n style={{\n overflow: 'hidden',\n borderRadius: params?.br,\n }}\n custom={params?.direction}\n variants={sliderVariants}\n initial='initial'\n animate='active'\n exit='exit'\n transition={sliderTransition}\n {...(!params?.isLengthOne\n ? {\n drag: 'x',\n dragConstraints: { left: 0, right: 0 },\n dragElastic: 0.5,\n onDragEnd: (_, dragInfo) => params?.dragEndHandler(dragInfo),\n }\n : {})}\n >\n <Image\n sxStack={(theme) => ({\n default: {\n width: '100%',\n height: '100%',\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: theme.palette.black10,\n position: 'absolute',\n pointerEvents: 'none',\n },\n })}\n isShowBeforeImage\n sxImage={{\n default: {\n objectFit: 'contain',\n },\n }}\n alt={(params?.images ?? [])?.[params?.activeImageIndex ?? 0]?.imageSrc}\n src={(params?.images ?? [])?.[params?.activeImageIndex ?? 0]?.imageSrc}\n componentFallback={\n <Typography\n sx={{\n default: {\n variant: 'h6',\n },\n }}\n >\n {params?.failedToLoad}\n </Typography>\n }\n />\n {(params?.images ?? [])?.[params?.activeImageIndex ?? 0]?.children}\n </SliderImage>\n </AnimatePresence>\n {typeof params?.children === 'function' ? params?.children?.({ isDialog: true }) : params?.children}\n\n <Button\n sx={{\n default: {\n position: 'absolute',\n bottom: 15,\n right: 15,\n },\n }}\n genre={params?.genre ?? 'product'}\n size={params?.size ?? 'medium'}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isRadius\n onClick={() => remove?.()}\n />\n {!params?.isLengthOne ? (\n <>\n <Stack\n sx={{\n default: {\n position: 'absolute',\n bottom: 15,\n left: 15,\n gap: '8px',\n },\n }}\n >\n <Button\n genre={params?.genre ?? 'product'}\n size={params?.size ?? 'medium'}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n turn: 90,\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isPlaystationEffect\n isRadius\n onClick={() => params?.swipeToImage?.(-1)}\n />\n <Button\n genre={params?.genre ?? 'product'}\n size={params?.size ?? 'medium'}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n turn: -90,\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isPlaystationEffect\n isRadius\n onClick={() => params?.swipeToImage?.(1)}\n />\n </Stack>\n <Stack\n sx={{\n default: {\n position: 'absolute',\n bottom: 15,\n left: '50%',\n transform: 'translateX(-50%)',\n gap: '4px',\n },\n }}\n >\n {(params?.images ?? [])?.map((i) => (\n <SliderDot\n onClick={() => params?.skipToImage?.(i.id)}\n key={i.id}\n initial={false}\n animate={{\n scale: params?.activeImageId === i.id ? 1.5 : 1,\n opacity: params?.activeImageId === i.id ? 1 : 0.5,\n }}\n />\n ))}\n </Stack>\n </>\n ) : null}\n </Stack>\n );\n};\n","import { AnimatePresence, Variants } from 'framer-motion';\nimport { FC, useMemo } from 'react';\n\nimport { useImageSlider } from '@local/hooks/use-image-slider';\nimport { KEY_SIZE_DATA } from '@local/theme';\n\nimport { ImageSliderProps, SliderDot, SliderImage } from '.';\nimport { Button } from '../button';\nimport { Icon } from '../icon';\nimport { Image } from '../image';\nimport { Stack, StackMotion } from '../stack';\nimport { Typography } from '../typography';\n\nexport const ImageSlider: FC<ImageSliderProps> = (props) => {\n const { onIndexChange } = props;\n const images = useMemo(() => props.images, [props.images]);\n const size = useMemo(() => KEY_SIZE_DATA[props.size], [props.size]);\n const br = useMemo(() => `${size.radius}px`, [size.radius]);\n\n const {\n isLengthZero,\n direction,\n activeImageId,\n isLengthOne,\n dragEndHandler,\n activeImageIndex,\n swipeToImage,\n skipToImage,\n handleAdd,\n } = useImageSlider({\n genre: props.genre,\n size: props.size,\n images: images,\n imageSettings: props.imageSettings,\n locales: props.locales,\n onIndexChange: onIndexChange,\n children: props.children,\n });\n return (\n <StackMotion\n {...props.propsStack}\n sx={(theme) => ({\n ...props.propsStack?.sx,\n default: {\n borderRadius: br,\n flexDirection: 'column',\n alignItems: 'center',\n overflow: 'hidden',\n width: 'auto',\n maxWidth: '70dvw',\n height: '85dvh',\n ...(props.propsStack?.sx\n ? typeof props.propsStack?.sx === 'function'\n ? props.propsStack?.sx(theme).default\n : props.propsStack?.sx.default\n : {}),\n },\n tablet: {\n maxWidth: '95dvw',\n ...(props.propsStack?.sx\n ? typeof props.propsStack?.sx === 'function'\n ? props.propsStack?.sx(theme).tablet\n : props.propsStack?.sx.tablet\n : {}),\n },\n })}\n >\n {props.isLoading ? (\n <Stack\n sx={{\n default: {\n width: '100%',\n height: '100%',\n position: 'relative',\n overflow: 'hidden',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n }}\n >\n <Icon size='large' type='loading' primaryColor='blueFocus' name='Line' />\n </Stack>\n ) : !isLengthZero ? (\n <Stack\n sx={{\n default: {\n width: '100%',\n height: '100%',\n position: 'relative',\n overflow: 'hidden',\n },\n }}\n >\n <AnimatePresence initial={false} custom={direction}>\n <SliderImage\n key={activeImageId}\n style={{\n overflow: 'hidden',\n borderRadius: br,\n }}\n custom={direction}\n variants={sliderVariants}\n initial='initial'\n animate='active'\n exit='exit'\n transition={sliderTransition}\n {...(!isLengthOne\n ? {\n drag: 'x',\n dragConstraints: { left: 0, right: 0 },\n dragElastic: 0.5,\n onDragEnd: (_, dragInfo) => dragEndHandler(dragInfo),\n }\n : {})}\n >\n <Image\n sxStack={(theme) => ({\n default: {\n width: '100%',\n height: '100%',\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: theme.palette.black10,\n position: 'absolute',\n pointerEvents: 'none',\n },\n })}\n alt={images[activeImageIndex]?.imageSrc}\n src={images[activeImageIndex]?.imageSrc}\n componentFallback={\n <Typography\n sx={{\n default: {\n variant: 'h6',\n },\n }}\n >\n {props.locales.failedToLoad}\n </Typography>\n }\n />\n {images[activeImageIndex]?.children}\n </SliderImage>\n </AnimatePresence>\n {typeof props?.children === 'function' ? props?.children?.({ isDialog: false }) : props?.children}\n\n {!isLengthOne && (\n <>\n <Button\n sx={{\n default: {\n position: 'absolute',\n top: '50%',\n left: 5,\n transform: 'translateY(-50%)',\n },\n }}\n genre={props.genre}\n size={props.size}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n turn: 90,\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isRadius\n onClick={() => swipeToImage(-1)}\n />\n <Button\n sx={{\n default: {\n position: 'absolute',\n top: '50%',\n right: 5,\n transform: 'translateY(-50%)',\n },\n }}\n genre={props.genre}\n size={props.size}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n turn: -90,\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isRadius\n onClick={() => swipeToImage(1)}\n />\n <Stack\n sx={{\n default: {\n position: 'absolute',\n bottom: 5,\n left: '50%',\n transform: 'translateX(-50%)',\n gap: '4px',\n },\n }}\n >\n {images.map((i) => (\n <SliderDot\n onClick={() => skipToImage(i.id)}\n key={i.id}\n initial={false}\n animate={{\n scale: activeImageId === i.id ? 1.5 : 1,\n opacity: activeImageId === i.id ? 1 : 0.5,\n }}\n />\n ))}\n </Stack>\n </>\n )}\n\n <Button\n sx={{\n default: {\n position: 'absolute',\n bottom: 5,\n right: 5,\n },\n }}\n genre={props.genre}\n size={props.size}\n icons={[\n {\n type: 'id',\n name: 'Activity',\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isRadius\n onClick={() => handleAdd()}\n />\n </Stack>\n ) : (\n <Stack\n sx={{\n default: {\n width: '100%',\n height: '100%',\n position: 'relative',\n overflow: 'hidden',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n }}\n >\n <Typography\n sx={{\n default: {\n variant: 'h6',\n },\n }}\n >\n {props.locales.noImagesAvailable}\n </Typography>\n </Stack>\n )}\n </StackMotion>\n );\n};\nconst sliderVariants: Variants = {\n initial: (direction) => ({\n x: direction > 0 ? '100%' : '-100%',\n scale: 1,\n opacity: 0,\n }),\n active: { x: 0, scale: 1, opacity: 1 },\n exit: (direction) => ({\n x: direction > 0 ? '-100%' : '100%',\n scale: 1,\n opacity: 0.2,\n }),\n};\nconst sliderTransition = {\n duration: 0.3,\n ease: [0.56, 0.03, 0.12, 1.04],\n};\n","import 'styled-components';\n\nimport { ImageSliderProps } from '.';\nimport { Button } from '../button';\nimport { Stack } from '../stack';\n\nexport const IMAGES: ImageSliderProps['images'] = [\n {\n id: 0,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://drupal-prod.visitcalifornia.com/sites/default/files/styles/fluid_1920/public/2020-06/VC_PlacesToVisit_LosAngelesCounty_RF_1170794243.jpg.webp?itok=46pJYz8v',\n },\n {\n id: 1,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://images.unsplash.com/flagged/photo-1575555201693-7cd442b8023f?fm=jpg&q=60&w=3000&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxzZWFyY2h8Mnx8bG9zJTIwYW5nZWxlc3xlbnwwfHwwfHx8MA%3D%3D',\n },\n {\n id: 2,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://img.goodfon.com/original/2048x1319/8/29/ssha-kaliforniia-los-andzheles-los-angeles-doma-neboskreby-s.jpg',\n },\n {\n id: 3,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://images.pexels.com/photos/2231756/pexels-photo-2231756.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=500',\n },\n {\n id: 4,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://images.pexels.com/photos/1813157/pexels-photo-1813157.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=500',\n },\n];\n"],"names":["direction","jsx","sliderVariants","sliderTransition","jsxs","Fragment","_a","_b","_c","_d"],"mappings":"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"}
@@ -1,22 +0,0 @@
1
- "use strict";const e=require("./jsx-runtime-BcGej2Kr.cjs"),i=require("framer-motion"),t=require("react"),s=require("./component-BLWcOf3A.cjs"),n=require("./component.styles-CAN6t4un.cjs"),o=require("styled-components"),a=require("./component-GKvpOWlO.cjs"),l=require("./component-BkYIZFlr.cjs"),d=require("./context.constants-BLQ_1jZI.cjs"),r=require("./theme.global-CcoD5bPP.cjs"),u=require("./component.styles-BKnUDWqO.cjs"),c=o(i.motion.div)`
2
- display: flex;
3
- position: absolute;
4
- height: 100%;
5
- width: 100%;
6
- touch-action: pan-y;
7
- &:hover {
8
- cursor: grab;
9
- }
10
-
11
- &:active {
12
- cursor: grabbing;
13
- }
14
- `,x=o(i.motion.div)`
15
- width: 6px;
16
- height: 6px;
17
- background-color: ${e=>e.theme.palette.whiteStandard};
18
- border-radius: 5px;
19
- opacity: 0.8;
20
- cursor: pointer;
21
- `,p={initial:e=>({x:e>0?"100%":"-100%",scale:1,opacity:0}),active:{x:0,scale:1,opacity:1},exit:e=>({x:e>0?"-100%":"100%",scale:1,opacity:.2})},m={duration:.3,ease:[.56,.03,.12,1.04]},g=({params:t,remove:o})=>{var d,r,u,g,h,v,f,j;return e.jsxRuntimeExports.jsxs(a.Stack,{sx:{default:{position:"relative",overflow:"hidden",aspectRatio:2*(null==t?void 0:t.aspect)+" / 2",width:"auto",maxWidth:"70dvw",height:"85dvh",borderRadius:null==t?void 0:t.br},tablet:{maxWidth:"95dvw"}},children:[e.jsxRuntimeExports.jsx(i.AnimatePresence,{initial:!1,custom:null==t?void 0:t.direction,children:e.jsxRuntimeExports.jsxs(c,{style:{overflow:"hidden",borderRadius:null==t?void 0:t.br},custom:null==t?void 0:t.direction,variants:p,initial:"initial",animate:"active",exit:"exit",transition:m,...(null==t?void 0:t.isLengthOne)?{}:{drag:"x",dragConstraints:{left:0,right:0},dragElastic:.5,onDragEnd:(e,i)=>null==t?void 0:t.dragEndHandler(i)},children:[e.jsxRuntimeExports.jsx(n.Image,{sxStack:e=>({default:{width:"100%",height:"100%",alignItems:"center",justifyContent:"center",backgroundColor:e.palette.black10,position:"absolute",pointerEvents:"none"}}),isShowBeforeImage:!0,sxImage:{default:{objectFit:"contain"}},alt:null==(r=null==(d=(null==t?void 0:t.images)??[])?void 0:d[(null==t?void 0:t.activeImageIndex)??0])?void 0:r.imageSrc,src:null==(g=null==(u=(null==t?void 0:t.images)??[])?void 0:u[(null==t?void 0:t.activeImageIndex)??0])?void 0:g.imageSrc,componentFallback:e.jsxRuntimeExports.jsx(l.Typography,{sx:{default:{variant:"h6"}},children:null==t?void 0:t.failedToLoad})}),null==(v=null==(h=(null==t?void 0:t.images)??[])?void 0:h[(null==t?void 0:t.activeImageIndex)??0])?void 0:v.children]},null==t?void 0:t.activeImageId)}),"function"==typeof(null==t?void 0:t.children)?null==(f=null==t?void 0:t.children)?void 0:f.call(t,{isDialog:!0}):null==t?void 0:t.children,e.jsxRuntimeExports.jsx(s.Button,{sx:{default:{position:"absolute",bottom:15,right:15}},genre:(null==t?void 0:t.genre)??"product",size:(null==t?void 0:t.size)??"medium",icons:[{type:"id",name:"Arrow4"}],isWidthAsHeight:!0,isHiddenBorder:!0,isRadius:!0,onClick:()=>null==o?void 0:o()}),(null==t?void 0:t.isLengthOne)?null:e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsxs(a.Stack,{sx:{default:{position:"absolute",bottom:15,left:15,gap:"8px"}},children:[e.jsxRuntimeExports.jsx(s.Button,{genre:(null==t?void 0:t.genre)??"product",size:(null==t?void 0:t.size)??"medium",icons:[{type:"id",name:"Arrow4",turn:90}],isWidthAsHeight:!0,isHiddenBorder:!0,isPlaystationEffect:!0,isRadius:!0,onClick:()=>{var e;return null==(e=null==t?void 0:t.swipeToImage)?void 0:e.call(t,-1)}}),e.jsxRuntimeExports.jsx(s.Button,{genre:(null==t?void 0:t.genre)??"product",size:(null==t?void 0:t.size)??"medium",icons:[{type:"id",name:"Arrow4",turn:-90}],isWidthAsHeight:!0,isHiddenBorder:!0,isPlaystationEffect:!0,isRadius:!0,onClick:()=>{var e;return null==(e=null==t?void 0:t.swipeToImage)?void 0:e.call(t,1)}})]}),e.jsxRuntimeExports.jsx(a.Stack,{sx:{default:{position:"absolute",bottom:15,left:"50%",transform:"translateX(-50%)",gap:"4px"}},children:null==(j=(null==t?void 0:t.images)??[])?void 0:j.map(i=>e.jsxRuntimeExports.jsx(x,{onClick:()=>{var e;return null==(e=null==t?void 0:t.skipToImage)?void 0:e.call(t,i.id)},initial:!1,animate:{scale:(null==t?void 0:t.activeImageId)===i.id?1.5:1,opacity:(null==t?void 0:t.activeImageId)===i.id?1:.5}},i.id))})]})]})},h={initial:e=>({x:e>0?"100%":"-100%",scale:1,opacity:0}),active:{x:0,scale:1,opacity:1},exit:e=>({x:e>0?"-100%":"100%",scale:1,opacity:.2})},v={duration:.3,ease:[.56,.03,.12,1.04]},f=[{id:0,children:e.jsxRuntimeExports.jsx(a.Stack,{sx:{default:{justifyContent:"flex-start",padding:"5px",flexGrow:1}},children:e.jsxRuntimeExports.jsx(s.Button,{isHiddenBorder:!0,isDisabled:!0,genre:"realebail-white",size:"medium",sxTypography:{default:{weight:700}},children:"Los Angeles"})}),imageSrc:"https://drupal-prod.visitcalifornia.com/sites/default/files/styles/fluid_1920/public/2020-06/VC_PlacesToVisit_LosAngelesCounty_RF_1170794243.jpg.webp?itok=46pJYz8v"},{id:1,children:e.jsxRuntimeExports.jsx(a.Stack,{sx:{default:{justifyContent:"flex-start",padding:"5px",flexGrow:1}},children:e.jsxRuntimeExports.jsx(s.Button,{isHiddenBorder:!0,isDisabled:!0,genre:"realebail-white",size:"medium",sxTypography:{default:{weight:700}},children:"Los Angeles"})}),imageSrc:"https://images.unsplash.com/flagged/photo-1575555201693-7cd442b8023f?fm=jpg&q=60&w=3000&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxzZWFyY2h8Mnx8bG9zJTIwYW5nZWxlc3xlbnwwfHwwfHx8MA%3D%3D"},{id:2,children:e.jsxRuntimeExports.jsx(a.Stack,{sx:{default:{justifyContent:"flex-start",padding:"5px",flexGrow:1}},children:e.jsxRuntimeExports.jsx(s.Button,{isHiddenBorder:!0,isDisabled:!0,genre:"realebail-white",size:"medium",sxTypography:{default:{weight:700}},children:"Los Angeles"})}),imageSrc:"https://img.goodfon.com/original/2048x1319/8/29/ssha-kaliforniia-los-andzheles-los-angeles-doma-neboskreby-s.jpg"},{id:3,children:e.jsxRuntimeExports.jsx(a.Stack,{sx:{default:{justifyContent:"flex-start",padding:"5px",flexGrow:1}},children:e.jsxRuntimeExports.jsx(s.Button,{isHiddenBorder:!0,isDisabled:!0,genre:"realebail-white",size:"medium",sxTypography:{default:{weight:700}},children:"Los Angeles"})}),imageSrc:"https://images.pexels.com/photos/2231756/pexels-photo-2231756.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=500"},{id:4,children:e.jsxRuntimeExports.jsx(a.Stack,{sx:{default:{justifyContent:"flex-start",padding:"5px",flexGrow:1}},children:e.jsxRuntimeExports.jsx(s.Button,{isHiddenBorder:!0,isDisabled:!0,genre:"realebail-white",size:"medium",sxTypography:{default:{weight:700}},children:"Los Angeles"})}),imageSrc:"https://images.pexels.com/photos/1813157/pexels-photo-1813157.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=500"}];exports.IMAGES=f,exports.ImageSlider=o=>{var p,m,f,j;const{onIndexChange:b}=o,y=t.useMemo(()=>o.images,[o.images]),I=t.useMemo(()=>r.KEY_SIZE_DATA[o.size],[o.size]),w=t.useMemo(()=>`${I.radius}px`,[I.radius]),{isLengthZero:E,direction:R,activeImageId:k,isLengthOne:S,dragEndHandler:A,activeImageIndex:C,swipeToImage:z,skipToImage:T,handleAdd:B}=(i=>{var s;const{onIndexChange:n}=i,o=t.useMemo(()=>r.KEY_SIZE_DATA[i.size],[i.size]),a=t.useMemo(()=>`${o.radius}px`,[o.radius]),l=t.useMemo(()=>i.images,[i.images]),[{activeImageId:u,direction:c},x]=t.useState({activeImageId:(null==(s=null==l?void 0:l[0])?void 0:s.id)??null,direction:0}),p=t.useMemo(()=>1===(null==l?void 0:l.length),[l]),m=t.useMemo(()=>0===(null==l?void 0:l.length),[l]),h=t.useMemo(()=>l.findIndex(e=>e.id===u),[u,l]),v=t.useCallback(e=>{const i=(l.findIndex(e=>e.id===u)+e+l.length)%l.length;x({activeImageId:l[i].id,direction:e})},[u,l]),f=t.useCallback(e=>{const{offset:i,velocity:t}=e,s=Math.abs(i.x)*t.x;s>500||i.x>50?v(-1):(s<-500||i.x<-50)&&v(1)},[v]),j=t.useCallback(e=>{const i=l.findIndex(e=>e.id===u),t=l.findIndex(i=>i.id===e);-1!==t&&t!==i&&x({activeImageId:e,direction:t>i?1:-1})},[u,l]);t.useEffect(()=>{u&&(null==n||n(u))},[u,n]);const{add:b}=d.useDialog({br:a,dragEndHandler:f,images:l,children:i.children,activeImageIndex:h,activeImageId:u,swipeToImage:v,skipToImage:j,direction:c,aspect:i.imageSettings.aspect,genre:i.genre,size:i.size,failedToLoad:i.locales.failedToLoad,isLengthOne:p,propsDialog:{borderRadius:a,padding:"0",background:"whiteStandard"}}),y=t.useCallback(()=>{b({content:(i,t)=>e.jsxRuntimeExports.jsx(g,{params:i,remove:t})})},[b]);return{isLengthZero:m,direction:c,activeImageId:u,isLengthOne:p,dragEndHandler:f,activeImageIndex:h,swipeToImage:v,skipToImage:j,handleAdd:y}})({genre:o.genre,size:o.size,images:y,imageSettings:o.imageSettings,locales:o.locales,onIndexChange:b,children:o.children});return e.jsxRuntimeExports.jsx(a.StackMotion,{...o.propsStack,sx:e=>{var i,t,s,n,a,l,d,r,u;return{...null==(i=o.propsStack)?void 0:i.sx,default:{borderRadius:w,flexDirection:"column",alignItems:"center",overflow:"hidden",width:"auto",maxWidth:"70dvw",height:"85dvh",...(null==(t=o.propsStack)?void 0:t.sx)?"function"==typeof(null==(s=o.propsStack)?void 0:s.sx)?null==(n=o.propsStack)?void 0:n.sx(e).default:null==(a=o.propsStack)?void 0:a.sx.default:{}},tablet:{maxWidth:"95dvw",...(null==(l=o.propsStack)?void 0:l.sx)?"function"==typeof(null==(d=o.propsStack)?void 0:d.sx)?null==(r=o.propsStack)?void 0:r.sx(e).tablet:null==(u=o.propsStack)?void 0:u.sx.tablet:{}}}},children:o.isLoading?e.jsxRuntimeExports.jsx(a.Stack,{sx:{default:{width:"100%",height:"100%",position:"relative",overflow:"hidden",display:"flex",alignItems:"center",justifyContent:"center"}},children:e.jsxRuntimeExports.jsx(u.Icon,{size:"large",type:"loading",primaryColor:"blueFocus",name:"Line"})}):E?e.jsxRuntimeExports.jsx(a.Stack,{sx:{default:{width:"100%",height:"100%",position:"relative",overflow:"hidden",display:"flex",alignItems:"center",justifyContent:"center"}},children:e.jsxRuntimeExports.jsx(l.Typography,{sx:{default:{variant:"h6"}},children:o.locales.noImagesAvailable})}):e.jsxRuntimeExports.jsxs(a.Stack,{sx:{default:{width:"100%",height:"100%",position:"relative",overflow:"hidden"}},children:[e.jsxRuntimeExports.jsx(i.AnimatePresence,{initial:!1,custom:R,children:e.jsxRuntimeExports.jsxs(c,{style:{overflow:"hidden",borderRadius:w},custom:R,variants:h,initial:"initial",animate:"active",exit:"exit",transition:v,...S?{}:{drag:"x",dragConstraints:{left:0,right:0},dragElastic:.5,onDragEnd:(e,i)=>A(i)},children:[e.jsxRuntimeExports.jsx(n.Image,{sxStack:e=>({default:{width:"100%",height:"100%",alignItems:"center",justifyContent:"center",backgroundColor:e.palette.black10,position:"absolute",pointerEvents:"none"}}),alt:null==(p=y[C])?void 0:p.imageSrc,src:null==(m=y[C])?void 0:m.imageSrc,componentFallback:e.jsxRuntimeExports.jsx(l.Typography,{sx:{default:{variant:"h6"}},children:o.locales.failedToLoad})}),null==(f=y[C])?void 0:f.children]},k)}),"function"==typeof(null==o?void 0:o.children)?null==(j=null==o?void 0:o.children)?void 0:j.call(o,{isDialog:!1}):null==o?void 0:o.children,!S&&e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx(s.Button,{sx:{default:{position:"absolute",top:"50%",left:5,transform:"translateY(-50%)"}},genre:o.genre,size:o.size,icons:[{type:"id",name:"Arrow4",turn:90}],isWidthAsHeight:!0,isHiddenBorder:!0,isRadius:!0,onClick:()=>z(-1)}),e.jsxRuntimeExports.jsx(s.Button,{sx:{default:{position:"absolute",top:"50%",right:5,transform:"translateY(-50%)"}},genre:o.genre,size:o.size,icons:[{type:"id",name:"Arrow4",turn:-90}],isWidthAsHeight:!0,isHiddenBorder:!0,isRadius:!0,onClick:()=>z(1)}),e.jsxRuntimeExports.jsx(a.Stack,{sx:{default:{position:"absolute",bottom:5,left:"50%",transform:"translateX(-50%)",gap:"4px"}},children:y.map(i=>e.jsxRuntimeExports.jsx(x,{onClick:()=>T(i.id),initial:!1,animate:{scale:k===i.id?1.5:1,opacity:k===i.id?1:.5}},i.id))})]}),e.jsxRuntimeExports.jsx(s.Button,{sx:{default:{position:"absolute",bottom:5,right:5}},genre:o.genre,size:o.size,icons:[{type:"id",name:"Activity"}],isWidthAsHeight:!0,isHiddenBorder:!0,isRadius:!0,onClick:()=>B()})]})})},exports.SliderDot=x,exports.SliderImage=c;
22
- //# sourceMappingURL=component.constants-DoZ61vWX.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"component.constants-DoZ61vWX.cjs","sources":["../src/components/image-slider/component.styles.tsx","../src/hooks/use-image-slider/use.tsx","../src/components/image-slider/component.tsx","../src/components/image-slider/component.constants.tsx"],"sourcesContent":["import { motion } from 'framer-motion';\nimport styled from 'styled-components';\n\nexport const SliderImage = styled(motion.div)`\n display: flex;\n position: absolute;\n height: 100%;\n width: 100%;\n touch-action: pan-y;\n &:hover {\n cursor: grab;\n }\n\n &:active {\n cursor: grabbing;\n }\n`;\n\nexport const SliderDot = styled(motion.div)`\n width: 6px;\n height: 6px;\n background-color: ${(props) => props.theme.palette.whiteStandard};\n border-radius: 5px;\n opacity: 0.8;\n cursor: pointer;\n`;\n","import { Button } from '@local/components/button';\nimport { Image } from '@local/components/image';\nimport { ImageSliderProps, SliderDot, SliderImage } from '@local/components/image-slider';\nimport { Stack } from '@local/components/stack';\nimport { Typography } from '@local/components/typography';\nimport { useDialog, useDialogProps } from '@local/contexts/context-dialog';\nimport { KEY_SIZE_DATA } from '@local/theme';\n\nimport { AnimatePresence, PanInfo, Variants } from 'framer-motion';\nimport { FC, useCallback, useEffect, useMemo, useState } from 'react';\n\nimport { useImageSliderProps } from '.';\n\nexport const useImageSlider = (props: useImageSliderProps) => {\n const { onIndexChange } = props;\n\n const size = useMemo(() => KEY_SIZE_DATA[props.size], [props.size]);\n const br = useMemo(() => `${size.radius}px`, [size.radius]);\n\n const images = useMemo(() => props.images, [props.images]);\n\n const [{ activeImageId, direction }, setActiveImage] = useState({\n activeImageId: images?.[0]?.id ?? null,\n direction: 0,\n });\n const isLengthOne = useMemo(() => images?.length === 1, [images]);\n const isLengthZero = useMemo(() => images?.length === 0, [images]);\n\n const activeImageIndex = useMemo(() => images.findIndex((img) => img.id === activeImageId), [activeImageId, images]);\n\n const swipeToImage = useCallback(\n (swipeDirection: number) => {\n const currentIndex = images.findIndex((img) => img.id === activeImageId);\n const nextIndex = (currentIndex + swipeDirection + images.length) % images.length;\n setActiveImage({ activeImageId: images[nextIndex].id, direction: swipeDirection });\n },\n [activeImageId, images],\n );\n const dragEndHandler = useCallback(\n (dragInfo: PanInfo) => {\n const { offset, velocity } = dragInfo;\n const swipeThreshold = 50;\n const swipePower = Math.abs(offset.x) * velocity.x;\n\n if (swipePower > 500 || offset.x > swipeThreshold) {\n swipeToImage(-1);\n } else if (swipePower < -500 || offset.x < -swipeThreshold) {\n swipeToImage(1);\n }\n },\n [swipeToImage],\n );\n const skipToImage = useCallback(\n (imageId: number) => {\n const currentIndex = images.findIndex((img) => img.id === activeImageId);\n const newIndex = images.findIndex((img) => img.id === imageId);\n if (newIndex === -1 || newIndex === currentIndex) return;\n\n const direction = newIndex > currentIndex ? 1 : -1;\n setActiveImage({ activeImageId: imageId, direction });\n },\n [activeImageId, images],\n );\n\n useEffect(() => {\n if (activeImageId) onIndexChange?.(activeImageId);\n }, [activeImageId, onIndexChange]);\n\n const { add } = useDialog<ComponentHandleAddProps>({\n br: br,\n dragEndHandler: dragEndHandler,\n images: images,\n children: props.children,\n activeImageIndex: activeImageIndex,\n activeImageId: activeImageId,\n swipeToImage: swipeToImage,\n skipToImage: skipToImage,\n direction: direction,\n aspect: props.imageSettings.aspect,\n genre: props.genre,\n size: props.size,\n failedToLoad: props.locales.failedToLoad,\n isLengthOne: isLengthOne,\n propsDialog: {\n borderRadius: br,\n padding: '0',\n background: 'whiteStandard',\n },\n });\n const handleAdd = useCallback(() => {\n add({\n content: (params, remove) => <ComponentHandleAdd params={params} remove={remove} />,\n });\n }, [add]);\n\n return {\n isLengthZero,\n direction,\n activeImageId,\n isLengthOne,\n dragEndHandler,\n activeImageIndex,\n swipeToImage,\n skipToImage,\n handleAdd,\n };\n};\nconst sliderVariants: Variants = {\n initial: (direction) => ({\n x: direction > 0 ? '100%' : '-100%',\n scale: 1,\n opacity: 0,\n }),\n active: { x: 0, scale: 1, opacity: 1 },\n exit: (direction) => ({\n x: direction > 0 ? '-100%' : '100%',\n scale: 1,\n opacity: 0.2,\n }),\n};\nconst sliderTransition = {\n duration: 0.3,\n ease: [0.56, 0.03, 0.12, 1.04],\n};\n\ntype ComponentHandleAddProps = {\n br?: string;\n dragEndHandler: (dragInfo: PanInfo) => void;\n images: ImageSliderProps['images'];\n children?: ImageSliderProps['children'];\n activeImageIndex: number;\n activeImageId: number | null;\n swipeToImage: (swipeDirection: number) => void;\n skipToImage: (imageId: number) => void;\n direction: number;\n aspect: number;\n failedToLoad: string;\n isLengthOne: boolean;\n} & Pick<ImageSliderProps, 'genre' | 'size'>;\n\nconst ComponentHandleAdd: FC<{\n params?: useDialogProps<ComponentHandleAddProps>;\n remove?: () => void;\n}> = ({ params, remove }) => {\n return (\n <Stack\n sx={{\n default: {\n position: 'relative',\n overflow: 'hidden',\n aspectRatio: `${params?.aspect! * 2} / 2`,\n width: 'auto',\n maxWidth: '70dvw',\n height: '85dvh',\n borderRadius: params?.br,\n },\n tablet: {\n maxWidth: '95dvw',\n },\n }}\n >\n <AnimatePresence initial={false} custom={params?.direction}>\n <SliderImage\n key={params?.activeImageId}\n style={{\n overflow: 'hidden',\n borderRadius: params?.br,\n }}\n custom={params?.direction}\n variants={sliderVariants}\n initial='initial'\n animate='active'\n exit='exit'\n transition={sliderTransition}\n {...(!params?.isLengthOne\n ? {\n drag: 'x',\n dragConstraints: { left: 0, right: 0 },\n dragElastic: 0.5,\n onDragEnd: (_, dragInfo) => params?.dragEndHandler(dragInfo),\n }\n : {})}\n >\n <Image\n sxStack={(theme) => ({\n default: {\n width: '100%',\n height: '100%',\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: theme.palette.black10,\n position: 'absolute',\n pointerEvents: 'none',\n },\n })}\n isShowBeforeImage\n sxImage={{\n default: {\n objectFit: 'contain',\n },\n }}\n alt={(params?.images ?? [])?.[params?.activeImageIndex ?? 0]?.imageSrc}\n src={(params?.images ?? [])?.[params?.activeImageIndex ?? 0]?.imageSrc}\n componentFallback={\n <Typography\n sx={{\n default: {\n variant: 'h6',\n },\n }}\n >\n {params?.failedToLoad}\n </Typography>\n }\n />\n {(params?.images ?? [])?.[params?.activeImageIndex ?? 0]?.children}\n </SliderImage>\n </AnimatePresence>\n {typeof params?.children === 'function' ? params?.children?.({ isDialog: true }) : params?.children}\n\n <Button\n sx={{\n default: {\n position: 'absolute',\n bottom: 15,\n right: 15,\n },\n }}\n genre={params?.genre ?? 'product'}\n size={params?.size ?? 'medium'}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isRadius\n onClick={() => remove?.()}\n />\n {!params?.isLengthOne ? (\n <>\n <Stack\n sx={{\n default: {\n position: 'absolute',\n bottom: 15,\n left: 15,\n gap: '8px',\n },\n }}\n >\n <Button\n genre={params?.genre ?? 'product'}\n size={params?.size ?? 'medium'}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n turn: 90,\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isPlaystationEffect\n isRadius\n onClick={() => params?.swipeToImage?.(-1)}\n />\n <Button\n genre={params?.genre ?? 'product'}\n size={params?.size ?? 'medium'}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n turn: -90,\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isPlaystationEffect\n isRadius\n onClick={() => params?.swipeToImage?.(1)}\n />\n </Stack>\n <Stack\n sx={{\n default: {\n position: 'absolute',\n bottom: 15,\n left: '50%',\n transform: 'translateX(-50%)',\n gap: '4px',\n },\n }}\n >\n {(params?.images ?? [])?.map((i) => (\n <SliderDot\n onClick={() => params?.skipToImage?.(i.id)}\n key={i.id}\n initial={false}\n animate={{\n scale: params?.activeImageId === i.id ? 1.5 : 1,\n opacity: params?.activeImageId === i.id ? 1 : 0.5,\n }}\n />\n ))}\n </Stack>\n </>\n ) : null}\n </Stack>\n );\n};\n","import { AnimatePresence, Variants } from 'framer-motion';\nimport { FC, useMemo } from 'react';\n\nimport { useImageSlider } from '@local/hooks/use-image-slider';\nimport { KEY_SIZE_DATA } from '@local/theme';\n\nimport { ImageSliderProps, SliderDot, SliderImage } from '.';\nimport { Button } from '../button';\nimport { Icon } from '../icon';\nimport { Image } from '../image';\nimport { Stack, StackMotion } from '../stack';\nimport { Typography } from '../typography';\n\nexport const ImageSlider: FC<ImageSliderProps> = (props) => {\n const { onIndexChange } = props;\n const images = useMemo(() => props.images, [props.images]);\n const size = useMemo(() => KEY_SIZE_DATA[props.size], [props.size]);\n const br = useMemo(() => `${size.radius}px`, [size.radius]);\n\n const {\n isLengthZero,\n direction,\n activeImageId,\n isLengthOne,\n dragEndHandler,\n activeImageIndex,\n swipeToImage,\n skipToImage,\n handleAdd,\n } = useImageSlider({\n genre: props.genre,\n size: props.size,\n images: images,\n imageSettings: props.imageSettings,\n locales: props.locales,\n onIndexChange: onIndexChange,\n children: props.children,\n });\n return (\n <StackMotion\n {...props.propsStack}\n sx={(theme) => ({\n ...props.propsStack?.sx,\n default: {\n borderRadius: br,\n flexDirection: 'column',\n alignItems: 'center',\n overflow: 'hidden',\n width: 'auto',\n maxWidth: '70dvw',\n height: '85dvh',\n ...(props.propsStack?.sx\n ? typeof props.propsStack?.sx === 'function'\n ? props.propsStack?.sx(theme).default\n : props.propsStack?.sx.default\n : {}),\n },\n tablet: {\n maxWidth: '95dvw',\n ...(props.propsStack?.sx\n ? typeof props.propsStack?.sx === 'function'\n ? props.propsStack?.sx(theme).tablet\n : props.propsStack?.sx.tablet\n : {}),\n },\n })}\n >\n {props.isLoading ? (\n <Stack\n sx={{\n default: {\n width: '100%',\n height: '100%',\n position: 'relative',\n overflow: 'hidden',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n }}\n >\n <Icon size='large' type='loading' primaryColor='blueFocus' name='Line' />\n </Stack>\n ) : !isLengthZero ? (\n <Stack\n sx={{\n default: {\n width: '100%',\n height: '100%',\n position: 'relative',\n overflow: 'hidden',\n },\n }}\n >\n <AnimatePresence initial={false} custom={direction}>\n <SliderImage\n key={activeImageId}\n style={{\n overflow: 'hidden',\n borderRadius: br,\n }}\n custom={direction}\n variants={sliderVariants}\n initial='initial'\n animate='active'\n exit='exit'\n transition={sliderTransition}\n {...(!isLengthOne\n ? {\n drag: 'x',\n dragConstraints: { left: 0, right: 0 },\n dragElastic: 0.5,\n onDragEnd: (_, dragInfo) => dragEndHandler(dragInfo),\n }\n : {})}\n >\n <Image\n sxStack={(theme) => ({\n default: {\n width: '100%',\n height: '100%',\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: theme.palette.black10,\n position: 'absolute',\n pointerEvents: 'none',\n },\n })}\n alt={images[activeImageIndex]?.imageSrc}\n src={images[activeImageIndex]?.imageSrc}\n componentFallback={\n <Typography\n sx={{\n default: {\n variant: 'h6',\n },\n }}\n >\n {props.locales.failedToLoad}\n </Typography>\n }\n />\n {images[activeImageIndex]?.children}\n </SliderImage>\n </AnimatePresence>\n {typeof props?.children === 'function' ? props?.children?.({ isDialog: false }) : props?.children}\n\n {!isLengthOne && (\n <>\n <Button\n sx={{\n default: {\n position: 'absolute',\n top: '50%',\n left: 5,\n transform: 'translateY(-50%)',\n },\n }}\n genre={props.genre}\n size={props.size}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n turn: 90,\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isRadius\n onClick={() => swipeToImage(-1)}\n />\n <Button\n sx={{\n default: {\n position: 'absolute',\n top: '50%',\n right: 5,\n transform: 'translateY(-50%)',\n },\n }}\n genre={props.genre}\n size={props.size}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n turn: -90,\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isRadius\n onClick={() => swipeToImage(1)}\n />\n <Stack\n sx={{\n default: {\n position: 'absolute',\n bottom: 5,\n left: '50%',\n transform: 'translateX(-50%)',\n gap: '4px',\n },\n }}\n >\n {images.map((i) => (\n <SliderDot\n onClick={() => skipToImage(i.id)}\n key={i.id}\n initial={false}\n animate={{\n scale: activeImageId === i.id ? 1.5 : 1,\n opacity: activeImageId === i.id ? 1 : 0.5,\n }}\n />\n ))}\n </Stack>\n </>\n )}\n\n <Button\n sx={{\n default: {\n position: 'absolute',\n bottom: 5,\n right: 5,\n },\n }}\n genre={props.genre}\n size={props.size}\n icons={[\n {\n type: 'id',\n name: 'Activity',\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isRadius\n onClick={() => handleAdd()}\n />\n </Stack>\n ) : (\n <Stack\n sx={{\n default: {\n width: '100%',\n height: '100%',\n position: 'relative',\n overflow: 'hidden',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n }}\n >\n <Typography\n sx={{\n default: {\n variant: 'h6',\n },\n }}\n >\n {props.locales.noImagesAvailable}\n </Typography>\n </Stack>\n )}\n </StackMotion>\n );\n};\nconst sliderVariants: Variants = {\n initial: (direction) => ({\n x: direction > 0 ? '100%' : '-100%',\n scale: 1,\n opacity: 0,\n }),\n active: { x: 0, scale: 1, opacity: 1 },\n exit: (direction) => ({\n x: direction > 0 ? '-100%' : '100%',\n scale: 1,\n opacity: 0.2,\n }),\n};\nconst sliderTransition = {\n duration: 0.3,\n ease: [0.56, 0.03, 0.12, 1.04],\n};\n","import 'styled-components';\n\nimport { ImageSliderProps } from '.';\nimport { Button } from '../button';\nimport { Stack } from '../stack';\n\nexport const IMAGES: ImageSliderProps['images'] = [\n {\n id: 0,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://drupal-prod.visitcalifornia.com/sites/default/files/styles/fluid_1920/public/2020-06/VC_PlacesToVisit_LosAngelesCounty_RF_1170794243.jpg.webp?itok=46pJYz8v',\n },\n {\n id: 1,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://images.unsplash.com/flagged/photo-1575555201693-7cd442b8023f?fm=jpg&q=60&w=3000&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxzZWFyY2h8Mnx8bG9zJTIwYW5nZWxlc3xlbnwwfHwwfHx8MA%3D%3D',\n },\n {\n id: 2,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://img.goodfon.com/original/2048x1319/8/29/ssha-kaliforniia-los-andzheles-los-angeles-doma-neboskreby-s.jpg',\n },\n {\n id: 3,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://images.pexels.com/photos/2231756/pexels-photo-2231756.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=500',\n },\n {\n id: 4,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://images.pexels.com/photos/1813157/pexels-photo-1813157.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=500',\n },\n];\n"],"names":["SliderImage","styled","motion","div","SliderDot","props","theme","palette","whiteStandard","sliderVariants","initial","direction","x","scale","opacity","active","exit","sliderTransition","duration","ease","ComponentHandleAdd","params","remove","jsxs","Stack","sx","default","position","overflow","aspectRatio","aspect","width","maxWidth","height","borderRadius","br","tablet","children","jsx","AnimatePresence","custom","style","variants","animate","transition","isLengthOne","drag","dragConstraints","left","right","dragElastic","onDragEnd","_","dragInfo","dragEndHandler","Image","sxStack","alignItems","justifyContent","backgroundColor","black10","pointerEvents","isShowBeforeImage","sxImage","objectFit","alt","_b","images","_a","activeImageIndex","imageSrc","src","_d","_c","componentFallback","Typography","variant","failedToLoad","_f","_e","activeImageId","_g","call","isDialog","Button","bottom","genre","size","icons","type","name","isWidthAsHeight","isHiddenBorder","isRadius","onClick","Fragment","gap","turn","isPlaystationEffect","swipeToImage","transform","map","i","skipToImage","id","IMAGES","padding","flexGrow","isDisabled","sxTypography","weight","onIndexChange","useMemo","KEY_SIZE_DATA","radius","isLengthZero","handleAdd","setActiveImage","useState","length","findIndex","img","useCallback","swipeDirection","nextIndex","offset","velocity","swipePower","Math","abs","imageId","currentIndex","newIndex","useEffect","add","useDialog","imageSettings","locales","propsDialog","background","content","useImageSlider","StackMotion","propsStack","flexDirection","_h","_i","isLoading","display","Icon","primaryColor","noImagesAvailable","top"],"mappings":"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"}