@jenesei-software/jenesei-kit-react 1.3.29 → 1.3.31

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 (145) hide show
  1. package/build/area-preview.cjs.js +1 -1
  2. package/build/area-preview.es.js +1 -1
  3. package/build/area-skeleton.cjs.js +1 -1
  4. package/build/area-skeleton.es.js +1 -1
  5. package/build/build-info.txt +3 -3
  6. package/build/{component-BaGCJM5V.js → component-BEkYgajE.js} +2 -2
  7. package/build/{component-BaGCJM5V.js.map → component-BEkYgajE.js.map} +1 -1
  8. package/build/{component-DJcrW4KX.js → component-BFDCc96N.js} +2 -2
  9. package/build/{component-DJcrW4KX.js.map → component-BFDCc96N.js.map} +1 -1
  10. package/build/{component-BgFRZSbi.cjs → component-BFLPbIpv.cjs} +2 -2
  11. package/build/{component-BgFRZSbi.cjs.map → component-BFLPbIpv.cjs.map} +1 -1
  12. package/build/{component-yTziSQZ7.js → component-BV20JUqs.js} +3 -3
  13. package/build/{component-yTziSQZ7.js.map → component-BV20JUqs.js.map} +1 -1
  14. package/build/{component-BT3dejQO.js → component-BpgbR-JI.js} +2 -2
  15. package/build/{component-BT3dejQO.js.map → component-BpgbR-JI.js.map} +1 -1
  16. package/build/{component-Br2H7F-p.js → component-BqSYYCb3.js} +2 -2
  17. package/build/{component-Br2H7F-p.js.map → component-BqSYYCb3.js.map} +1 -1
  18. package/build/{component-Cp433cAv.js → component-BsjFCBxJ.js} +3 -3
  19. package/build/{component-Cp433cAv.js.map → component-BsjFCBxJ.js.map} +1 -1
  20. package/build/{component-Dwf2HFot.cjs → component-ByU2po_i.cjs} +2 -2
  21. package/build/{component-Dwf2HFot.cjs.map → component-ByU2po_i.cjs.map} +1 -1
  22. package/build/{component-BpwTWRxp.js → component-C-oN9gXq.js} +2 -2
  23. package/build/{component-BpwTWRxp.js.map → component-C-oN9gXq.js.map} +1 -1
  24. package/build/{component-D2Y1Ky9N.js → component-CJWnWh-4.js} +4 -4
  25. package/build/{component-D2Y1Ky9N.js.map → component-CJWnWh-4.js.map} +1 -1
  26. package/build/{component-BzFd5DyJ.js → component-CMUWN8YO.js} +3 -3
  27. package/build/{component-BzFd5DyJ.js.map → component-CMUWN8YO.js.map} +1 -1
  28. package/build/{component-ClQrDMsC.cjs → component-CSY_QAf5.cjs} +2 -2
  29. package/build/{component-ClQrDMsC.cjs.map → component-CSY_QAf5.cjs.map} +1 -1
  30. package/build/{component-OxaRuSX5.cjs → component-D8qNfh_3.cjs} +2 -2
  31. package/build/{component-OxaRuSX5.cjs.map → component-D8qNfh_3.cjs.map} +1 -1
  32. package/build/{component-TMPesaZf.cjs → component-DE1S-lZ5.cjs} +2 -2
  33. package/build/{component-TMPesaZf.cjs.map → component-DE1S-lZ5.cjs.map} +1 -1
  34. package/build/{component-BABozkX6.cjs → component-DfZKriX4.cjs} +2 -2
  35. package/build/{component-BABozkX6.cjs.map → component-DfZKriX4.cjs.map} +1 -1
  36. package/build/{component-CsIx8Dgr.cjs → component-Dl6zU2mb.cjs} +2 -2
  37. package/build/{component-CsIx8Dgr.cjs.map → component-Dl6zU2mb.cjs.map} +1 -1
  38. package/build/{component-CjiOOMn9.cjs → component-Dmn44ouM.cjs} +2 -2
  39. package/build/{component-CjiOOMn9.cjs.map → component-Dmn44ouM.cjs.map} +1 -1
  40. package/build/{component-BHfH9Gw4.js → component-Tjc4KXtU.js} +2 -2
  41. package/build/{component-BHfH9Gw4.js.map → component-Tjc4KXtU.js.map} +1 -1
  42. package/build/{component-DYX1oGKH.js → component-UAARmvBH.js} +2 -2
  43. package/build/{component-DYX1oGKH.js.map → component-UAARmvBH.js.map} +1 -1
  44. package/build/component-accordion.cjs.js +1 -1
  45. package/build/component-accordion.es.js +2 -2
  46. package/build/component-button-group.cjs.js +1 -1
  47. package/build/component-button-group.es.js +2 -2
  48. package/build/component-button.cjs.js +1 -1
  49. package/build/component-button.es.js +1 -1
  50. package/build/component-checkbox-group.cjs.js +1 -1
  51. package/build/component-checkbox-group.es.js +2 -2
  52. package/build/component-checkbox.cjs.js +1 -1
  53. package/build/component-checkbox.es.js +2 -2
  54. package/build/component-date-picker.cjs.js +1 -1
  55. package/build/component-date-picker.d.ts +8 -0
  56. package/build/component-date-picker.es.js +4 -2
  57. package/build/component-icon.cjs.js +1 -1
  58. package/build/component-icon.es.js +6 -6
  59. package/build/component-image-button.cjs.js +1 -1
  60. package/build/component-image-button.es.js +1 -1
  61. package/build/component-image-select.cjs.js +1 -1
  62. package/build/component-image-select.es.js +8 -8
  63. package/build/component-image-slider.cjs.js +1 -1
  64. package/build/component-image-slider.es.js +4 -4
  65. package/build/component-image.cjs.js +1 -1
  66. package/build/component-image.es.js +3 -3
  67. package/build/component-input-otp.cjs.js +1 -1
  68. package/build/component-input-otp.es.js +5 -5
  69. package/build/component-input.cjs.js +1 -1
  70. package/build/component-input.es.js +15 -15
  71. package/build/{component-B97JZKUB.cjs → component-jeO6CsTP.cjs} +2 -2
  72. package/build/{component-B97JZKUB.cjs.map → component-jeO6CsTP.cjs.map} +1 -1
  73. package/build/component-map.cjs.js +1 -1
  74. package/build/component-map.es.js +8 -8
  75. package/build/component-pagination.cjs.js +1 -1
  76. package/build/component-pagination.es.js +1 -1
  77. package/build/component-range.cjs.js +1 -1
  78. package/build/component-range.es.js +5 -5
  79. package/build/component-select.cjs.js +1 -1
  80. package/build/component-select.es.js +18 -18
  81. package/build/{component-DcAF7Isg.cjs → component-ssaD7jJ-.cjs} +2 -2
  82. package/build/{component-DcAF7Isg.cjs.map → component-ssaD7jJ-.cjs.map} +1 -1
  83. package/build/component-textarea.cjs.js +1 -1
  84. package/build/component-textarea.d.ts +3 -0
  85. package/build/component-textarea.es.js +5 -5
  86. package/build/component-toggle.cjs.js +1 -1
  87. package/build/component-toggle.es.js +4 -4
  88. package/build/component-tooltip.cjs.js +1 -1
  89. package/build/component-tooltip.d.ts +107 -0
  90. package/build/component-tooltip.es.js +9 -9
  91. package/build/component-typography.cjs.js +1 -1
  92. package/build/component-typography.d.ts +107 -0
  93. package/build/component-typography.es.js +6 -6
  94. package/build/{component-DFMjWiWi.cjs → component-zyoew755.cjs} +2 -2
  95. package/build/{component-DFMjWiWi.cjs.map → component-zyoew755.cjs.map} +1 -1
  96. package/build/{component.components-KcVM2DN2.js → component.components-CFsHZ-xd.js} +2 -2
  97. package/build/{component.components-KcVM2DN2.js.map → component.components-CFsHZ-xd.js.map} +1 -1
  98. package/build/{component.components-CsWG1Rwi.cjs → component.components-DnPZVXuo.cjs} +2 -2
  99. package/build/{component.components-CsWG1Rwi.cjs.map → component.components-DnPZVXuo.cjs.map} +1 -1
  100. package/build/{component.constants-B-csc6ih.cjs → component.constants-4oL81SFS.cjs} +2 -2
  101. package/build/{component.constants-B-csc6ih.cjs.map → component.constants-4oL81SFS.cjs.map} +1 -1
  102. package/build/{component.constants-BkbucsSA.js → component.constants-B3aCG9Aq.js} +3 -3
  103. package/build/{component.constants-BkbucsSA.js.map → component.constants-B3aCG9Aq.js.map} +1 -1
  104. package/build/{component.constants-ECVKYlcl.cjs → component.constants-DIRNAI_M.cjs} +2 -2
  105. package/build/{component.constants-ECVKYlcl.cjs.map → component.constants-DIRNAI_M.cjs.map} +1 -1
  106. package/build/{component.constants-BmRV80H6.js → component.constants-DWE902Cf.js} +2 -2
  107. package/build/{component.constants-BmRV80H6.js.map → component.constants-DWE902Cf.js.map} +1 -1
  108. package/build/component.types-D7_uJxuD.cjs +2 -0
  109. package/build/component.types-D7_uJxuD.cjs.map +1 -0
  110. package/build/{component.types-Cc_Ly48_.js → component.types-DhrhPsES.js} +187 -154
  111. package/build/component.types-DhrhPsES.js.map +1 -0
  112. package/build/consts.cjs.js +1 -1
  113. package/build/consts.es.js +1 -1
  114. package/build/context-app.cjs.js +1 -1
  115. package/build/context-app.es.js +17 -17
  116. package/build/context-sonner.cjs.js +1 -1
  117. package/build/context-sonner.es.js +18 -18
  118. package/build/{context.constants-CHzb-q9a.cjs → context.constants-CPdsUeiQ.cjs} +215 -206
  119. package/build/context.constants-CPdsUeiQ.cjs.map +1 -0
  120. package/build/{context.constants-ByIVCRij.js → context.constants-D8UVM6GL.js} +247 -134
  121. package/build/{context.constants-ByIVCRij.js.map → context.constants-D8UVM6GL.js.map} +1 -1
  122. package/build/{context.hooks-BDsIAUYd.js → context.hooks-1u3F7jId.js} +2 -2
  123. package/build/{context.hooks-BDsIAUYd.js.map → context.hooks-1u3F7jId.js.map} +1 -1
  124. package/build/{context.hooks-Bjivw-Im.cjs → context.hooks-Bi7-SukA.cjs} +2 -2
  125. package/build/{context.hooks-Bjivw-Im.cjs.map → context.hooks-Bi7-SukA.cjs.map} +1 -1
  126. package/build/{context.hooks-BHOQU6q9.cjs → context.hooks-CEM899ZV.cjs} +2 -2
  127. package/build/{context.hooks-BHOQU6q9.cjs.map → context.hooks-CEM899ZV.cjs.map} +1 -1
  128. package/build/{context.hooks-BGRydtLx.js → context.hooks-Ds6nn4po.js} +2 -2
  129. package/build/{context.hooks-BGRydtLx.js.map → context.hooks-Ds6nn4po.js.map} +1 -1
  130. package/build/index.cjs.js +1 -1
  131. package/build/index.d.ts +118 -0
  132. package/build/index.es.js +141 -139
  133. package/build/style-error.cjs.js +1 -1
  134. package/build/style-error.es.js +4 -4
  135. package/build/style-theme.cjs.js +1 -1
  136. package/build/style-theme.es.js +13 -13
  137. package/build/{use-2JigT9W0.cjs → use-BwhyveId.cjs} +2 -2
  138. package/build/{use-2JigT9W0.cjs.map → use-BwhyveId.cjs.map} +1 -1
  139. package/build/{use-DQXYSmcn.js → use-CjnNUWWw.js} +3 -3
  140. package/build/{use-DQXYSmcn.js.map → use-CjnNUWWw.js.map} +1 -1
  141. package/package.json +2 -2
  142. package/build/component.types-Cc_Ly48_.js.map +0 -1
  143. package/build/component.types-DqOJPJfu.cjs +0 -2
  144. package/build/component.types-DqOJPJfu.cjs.map +0 -1
  145. package/build/context.constants-CHzb-q9a.cjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"component.components-CsWG1Rwi.cjs","sources":["../src/components/map/component.cluster.tsx","../src/components/map/component.functions.tsx","../src/components/map/component.components.tsx","../src/components/map/component.map-cluster.tsx","../src/components/map/component.map-dot.tsx"],"sourcesContent":["import leaflet from 'leaflet';\nimport 'leaflet.markercluster';\n\nimport { Marker, Popup } from 'react-leaflet';\nimport MarkerClusterGroup from 'react-leaflet-markercluster';\n\nimport { createClusterIcon, customTextIcon, MarkerClusterProps } from '.';\n\nexport const MarkerCluster = <T extends object>(props: MarkerClusterProps<T>) => {\n return (\n <MarkerClusterGroup\n iconCreateFunction={(cluster: leaflet.MarkerCluster) => createClusterIcon(cluster, props.getCustomClusterLabel)}\n chunkedLoading\n showCoverageOnHover={false}\n spiderfyOnMaxZoom={false}\n >\n {props.markers.map((marker) => (\n <Marker\n key={marker.id}\n position={marker.position}\n icon={customTextIcon(props?.getCustomClusterLabel?.(marker.options ? [marker.options] : []) ?? '')}\n {...({\n options: marker.options,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } as any)}\n >\n <Popup {...marker.popupProps}>{marker.popupContent}</Popup>\n </Marker>\n ))}\n </MarkerClusterGroup>\n );\n};\n","import leaflet from 'leaflet';\n\nexport const createClusterIcon = <T extends object>(\n cluster: leaflet.MarkerCluster,\n getCustomClusterLabel?: (markers: T[]) => string,\n) => {\n const markersCount = cluster.getChildCount();\n const markers = cluster.getAllChildMarkers();\n const customLabel = getCustomClusterLabel?.(markers.map((m) => (m.options as { options: T }).options));\n\n return new leaflet.DivIcon({\n html: `\n <div style=\"position: relative; width: 100%; height: 100%; display: flex; justify-content: center;\">\n <svg width=\"42\" height=\"42\" viewBox=\"0 0 42 42\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill=\"#2A77EE\" d=\"M34.125 18.375C34.125 30.8735 21 38.0625 21 38.0625C21 38.0625 7.875 30.8735 7.875 18.375C7.875 14.894 9.25781 11.5556 11.7192 9.09422C14.1806 6.63281 17.519 5.25 21 5.25C24.481 5.25 27.8194 6.63281 30.2808 9.09422C32.7422 11.5556 34.125 14.894 34.125 18.375ZM21.0003 6.33599C17.8074 6.33599 14.7453 7.60436 12.4876 9.86207C10.2298 12.1198 8.96148 15.1819 8.96148 18.3748C8.96148 24.2256 12.0337 28.8895 15.2148 32.1465C16.7986 33.768 18.3854 35.0153 19.5762 35.8565C20.1675 36.2743 20.6588 36.5902 21.0003 36.8006C21.3417 36.5902 21.833 36.2743 22.4243 35.8565C23.6152 35.0153 25.202 33.768 26.7857 32.1465C29.9668 28.8895 33.0391 24.2256 33.0391 18.3748C33.0391 15.1819 31.7707 12.1198 29.513 9.86207C27.2553 7.60436 24.1932 6.33599 21.0003 6.33599ZM21.0003 38.0623C20.4785 39.0149 20.4781 39.0147 20.4776 39.0145L20.4765 39.0139L20.4733 39.0121L20.4634 39.0066L20.4297 38.9877C20.401 38.9716 20.3603 38.9485 20.3083 38.9183C20.2042 38.858 20.0549 38.7697 19.8668 38.6539C19.4907 38.4223 18.9587 38.0801 18.3228 37.6309C17.0527 36.7336 15.3582 35.4025 13.6607 33.6644C10.2793 30.2024 6.78906 25.0224 6.78906 18.3748C6.78906 14.6057 8.28631 10.9911 10.9514 8.32594C13.6165 5.66082 17.2312 4.16357 21.0003 4.16357C24.7693 4.16357 28.384 5.66082 31.0491 8.32594C33.7142 10.9911 35.2115 14.6057 35.2115 18.3748C35.2115 25.0224 31.7212 30.2024 28.3398 33.6644C26.6423 35.4025 24.9479 36.7336 23.6778 37.6309C23.0418 38.0801 22.5099 38.4223 22.1338 38.6539C21.9456 38.7697 21.7963 38.858 21.6923 38.9183C21.6402 38.9485 21.5995 38.9716 21.5709 38.9877L21.5371 39.0066L21.5272 39.0121L21.524 39.0139L21.5229 39.0145C21.5225 39.0147 21.5221 39.0149 21.0003 38.0623ZM21.0003 38.0623L21.5221 39.0149C21.197 39.193 20.8035 39.193 20.4785 39.0149L21.0003 38.0623Z\"/>\n <path fill=\"#F7FAFF\" d=\"M26.25 18.375C26.25 19.7674 25.6969 21.1027 24.7123 22.0873C23.7277 23.0719 22.3924 23.625 21 23.625C19.6076 23.625 18.2723 23.0719 17.2877 22.0873C16.3031 21.1027 15.75 19.7674 15.75 18.375C15.75 16.9826 16.3031 15.6473 17.2877 14.6627C18.2723 13.6781 19.6076 13.125 21 13.125C22.3924 13.125 23.7277 13.6781 24.7123 14.6627C25.6969 15.6473 26.25 16.9826 26.25 18.375Z\"/>\n <path fill=\"#2A77EE\" d=\"M21.0003 14.211C19.896 14.211 18.8369 14.6497 18.056 15.4305C17.2752 16.2114 16.8365 17.2705 16.8365 18.3748C16.8365 19.4791 17.2752 20.5382 18.056 21.319C18.8369 22.0999 19.896 22.5386 21.0003 22.5386C22.1046 22.5386 23.1637 22.0999 23.9445 21.319C24.7254 20.5382 25.1641 19.4791 25.1641 18.3748C25.1641 17.2705 24.7254 16.2114 23.9445 15.4305C23.1637 14.6497 22.1046 14.211 21.0003 14.211ZM16.5199 13.8944C17.7082 12.7061 19.3198 12.0386 21.0003 12.0386C22.6807 12.0386 24.2924 12.7061 25.4806 13.8944C26.6689 15.0827 27.3365 16.6943 27.3365 18.3748C27.3365 20.0552 26.6689 21.6669 25.4806 22.8552C24.2924 24.0434 22.6807 24.711 21.0003 24.711C19.3198 24.711 17.7082 24.0434 16.5199 22.8552C15.3316 21.6669 14.6641 20.0552 14.6641 18.3748C14.6641 16.6943 15.3316 15.0827 16.5199 13.8944Z\"/>\n </svg>\n <div \n style=\"\n position: absolute;\n top: -30px;\n background-color: #2A77EE;\n padding: 0px 10px;\n border-radius: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n font-family: 'Roboto';\n font-style: normal;\n font-weight: 500;\n font-size: 20px;\n line-height: 150%;\n letter-spacing: -0.03em;\n color: #F7FAFF;\n white-space: nowrap;\n \"\n >\n ${markersCount} | ${customLabel}\n </div>\n </div>\n `,\n iconSize: new leaflet.Point(42, 42),\n iconAnchor: [21, 42],\n });\n};\n\nexport const customTextIcon = (text: string) =>\n new leaflet.DivIcon({\n html: `\n <div style=\"position: relative; width: 100%; height: 100%; display: flex; justify-content: center;\">\n <svg width=\"42\" height=\"42\" viewBox=\"0 0 42 42\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill=\"#2A77EE\" d=\"M34.125 18.375C34.125 30.8735 21 38.0625 21 38.0625C21 38.0625 7.875 30.8735 7.875 18.375C7.875 14.894 9.25781 11.5556 11.7192 9.09422C14.1806 6.63281 17.519 5.25 21 5.25C24.481 5.25 27.8194 6.63281 30.2808 9.09422C32.7422 11.5556 34.125 14.894 34.125 18.375ZM21.0003 6.33599C17.8074 6.33599 14.7453 7.60436 12.4876 9.86207C10.2298 12.1198 8.96148 15.1819 8.96148 18.3748C8.96148 24.2256 12.0337 28.8895 15.2148 32.1465C16.7986 33.768 18.3854 35.0153 19.5762 35.8565C20.1675 36.2743 20.6588 36.5902 21.0003 36.8006C21.3417 36.5902 21.833 36.2743 22.4243 35.8565C23.6152 35.0153 25.202 33.768 26.7857 32.1465C29.9668 28.8895 33.0391 24.2256 33.0391 18.3748C33.0391 15.1819 31.7707 12.1198 29.513 9.86207C27.2553 7.60436 24.1932 6.33599 21.0003 6.33599ZM21.0003 38.0623C20.4785 39.0149 20.4781 39.0147 20.4776 39.0145L20.4765 39.0139L20.4733 39.0121L20.4634 39.0066L20.4297 38.9877C20.401 38.9716 20.3603 38.9485 20.3083 38.9183C20.2042 38.858 20.0549 38.7697 19.8668 38.6539C19.4907 38.4223 18.9587 38.0801 18.3228 37.6309C17.0527 36.7336 15.3582 35.4025 13.6607 33.6644C10.2793 30.2024 6.78906 25.0224 6.78906 18.3748C6.78906 14.6057 8.28631 10.9911 10.9514 8.32594C13.6165 5.66082 17.2312 4.16357 21.0003 4.16357C24.7693 4.16357 28.384 5.66082 31.0491 8.32594C33.7142 10.9911 35.2115 14.6057 35.2115 18.3748C35.2115 25.0224 31.7212 30.2024 28.3398 33.6644C26.6423 35.4025 24.9479 36.7336 23.6778 37.6309C23.0418 38.0801 22.5099 38.4223 22.1338 38.6539C21.9456 38.7697 21.7963 38.858 21.6923 38.9183C21.6402 38.9485 21.5995 38.9716 21.5709 38.9877L21.5371 39.0066L21.5272 39.0121L21.524 39.0139L21.5229 39.0145C21.5225 39.0147 21.5221 39.0149 21.0003 38.0623ZM21.0003 38.0623L21.5221 39.0149C21.197 39.193 20.8035 39.193 20.4785 39.0149L21.0003 38.0623Z\"/>\n <path fill=\"#F7FAFF\" d=\"M26.25 18.375C26.25 19.7674 25.6969 21.1027 24.7123 22.0873C23.7277 23.0719 22.3924 23.625 21 23.625C19.6076 23.625 18.2723 23.0719 17.2877 22.0873C16.3031 21.1027 15.75 19.7674 15.75 18.375C15.75 16.9826 16.3031 15.6473 17.2877 14.6627C18.2723 13.6781 19.6076 13.125 21 13.125C22.3924 13.125 23.7277 13.6781 24.7123 14.6627C25.6969 15.6473 26.25 16.9826 26.25 18.375Z\"/>\n <path fill=\"#2A77EE\" d=\"M21.0003 14.211C19.896 14.211 18.8369 14.6497 18.056 15.4305C17.2752 16.2114 16.8365 17.2705 16.8365 18.3748C16.8365 19.4791 17.2752 20.5382 18.056 21.319C18.8369 22.0999 19.896 22.5386 21.0003 22.5386C22.1046 22.5386 23.1637 22.0999 23.9445 21.319C24.7254 20.5382 25.1641 19.4791 25.1641 18.3748C25.1641 17.2705 24.7254 16.2114 23.9445 15.4305C23.1637 14.6497 22.1046 14.211 21.0003 14.211ZM16.5199 13.8944C17.7082 12.7061 19.3198 12.0386 21.0003 12.0386C22.6807 12.0386 24.2924 12.7061 25.4806 13.8944C26.6689 15.0827 27.3365 16.6943 27.3365 18.3748C27.3365 20.0552 26.6689 21.6669 25.4806 22.8552C24.2924 24.0434 22.6807 24.711 21.0003 24.711C19.3198 24.711 17.7082 24.0434 16.5199 22.8552C15.3316 21.6669 14.6641 20.0552 14.6641 18.3748C14.6641 16.6943 15.3316 15.0827 16.5199 13.8944Z\"/>\n </svg>\n <div \n style=\"\n position: absolute;\n top: -30px;\n background-color: #2A77EE;\n padding: 0px 10px;\n border-radius: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n font-family: 'Roboto';\n font-style: normal;\n font-weight: 500;\n font-size: 20px;\n line-height: 150%;\n letter-spacing: -0.03em;\n color: #F7FAFF;\n white-space: nowrap;\n \"\n >\n ${text}\n </div>\n </div>\n `,\n iconSize: new leaflet.Point(42, 42),\n iconAnchor: [21, 42],\n popupAnchor: [0, -36],\n });\n\nexport const customDefaultIcon = () =>\n new leaflet.DivIcon({\n html: `\n <div style=\"position: relative; width: 100%; height: 100%; display: flex; justify-content: center;\">\n <svg width=\"42\" height=\"42\" viewBox=\"0 0 42 42\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill=\"#2A77EE\" d=\"M34.125 18.375C34.125 30.8735 21 38.0625 21 38.0625C21 38.0625 7.875 30.8735 7.875 18.375C7.875 14.894 9.25781 11.5556 11.7192 9.09422C14.1806 6.63281 17.519 5.25 21 5.25C24.481 5.25 27.8194 6.63281 30.2808 9.09422C32.7422 11.5556 34.125 14.894 34.125 18.375ZM21.0003 6.33599C17.8074 6.33599 14.7453 7.60436 12.4876 9.86207C10.2298 12.1198 8.96148 15.1819 8.96148 18.3748C8.96148 24.2256 12.0337 28.8895 15.2148 32.1465C16.7986 33.768 18.3854 35.0153 19.5762 35.8565C20.1675 36.2743 20.6588 36.5902 21.0003 36.8006C21.3417 36.5902 21.833 36.2743 22.4243 35.8565C23.6152 35.0153 25.202 33.768 26.7857 32.1465C29.9668 28.8895 33.0391 24.2256 33.0391 18.3748C33.0391 15.1819 31.7707 12.1198 29.513 9.86207C27.2553 7.60436 24.1932 6.33599 21.0003 6.33599ZM21.0003 38.0623C20.4785 39.0149 20.4781 39.0147 20.4776 39.0145L20.4765 39.0139L20.4733 39.0121L20.4634 39.0066L20.4297 38.9877C20.401 38.9716 20.3603 38.9485 20.3083 38.9183C20.2042 38.858 20.0549 38.7697 19.8668 38.6539C19.4907 38.4223 18.9587 38.0801 18.3228 37.6309C17.0527 36.7336 15.3582 35.4025 13.6607 33.6644C10.2793 30.2024 6.78906 25.0224 6.78906 18.3748C6.78906 14.6057 8.28631 10.9911 10.9514 8.32594C13.6165 5.66082 17.2312 4.16357 21.0003 4.16357C24.7693 4.16357 28.384 5.66082 31.0491 8.32594C33.7142 10.9911 35.2115 14.6057 35.2115 18.3748C35.2115 25.0224 31.7212 30.2024 28.3398 33.6644C26.6423 35.4025 24.9479 36.7336 23.6778 37.6309C23.0418 38.0801 22.5099 38.4223 22.1338 38.6539C21.9456 38.7697 21.7963 38.858 21.6923 38.9183C21.6402 38.9485 21.5995 38.9716 21.5709 38.9877L21.5371 39.0066L21.5272 39.0121L21.524 39.0139L21.5229 39.0145C21.5225 39.0147 21.5221 39.0149 21.0003 38.0623ZM21.0003 38.0623L21.5221 39.0149C21.197 39.193 20.8035 39.193 20.4785 39.0149L21.0003 38.0623Z\"/>\n <path fill=\"#F7FAFF\" d=\"M26.25 18.375C26.25 19.7674 25.6969 21.1027 24.7123 22.0873C23.7277 23.0719 22.3924 23.625 21 23.625C19.6076 23.625 18.2723 23.0719 17.2877 22.0873C16.3031 21.1027 15.75 19.7674 15.75 18.375C15.75 16.9826 16.3031 15.6473 17.2877 14.6627C18.2723 13.6781 19.6076 13.125 21 13.125C22.3924 13.125 23.7277 13.6781 24.7123 14.6627C25.6969 15.6473 26.25 16.9826 26.25 18.375Z\"/>\n <path fill=\"#2A77EE\" d=\"M21.0003 14.211C19.896 14.211 18.8369 14.6497 18.056 15.4305C17.2752 16.2114 16.8365 17.2705 16.8365 18.3748C16.8365 19.4791 17.2752 20.5382 18.056 21.319C18.8369 22.0999 19.896 22.5386 21.0003 22.5386C22.1046 22.5386 23.1637 22.0999 23.9445 21.319C24.7254 20.5382 25.1641 19.4791 25.1641 18.3748C25.1641 17.2705 24.7254 16.2114 23.9445 15.4305C23.1637 14.6497 22.1046 14.211 21.0003 14.211ZM16.5199 13.8944C17.7082 12.7061 19.3198 12.0386 21.0003 12.0386C22.6807 12.0386 24.2924 12.7061 25.4806 13.8944C26.6689 15.0827 27.3365 16.6943 27.3365 18.3748C27.3365 20.0552 26.6689 21.6669 25.4806 22.8552C24.2924 24.0434 22.6807 24.711 21.0003 24.711C19.3198 24.711 17.7082 24.0434 16.5199 22.8552C15.3316 21.6669 14.6641 20.0552 14.6641 18.3748C14.6641 16.6943 15.3316 15.0827 16.5199 13.8944Z\"/>\n </svg>\n </div>\n `,\n iconSize: new leaflet.Point(42, 42),\n iconAnchor: [21, 42],\n popupAnchor: [0, -36],\n });\n","import { useDeepCompareMemoize } from '@local/hooks/use-deep-compare-memoize';\n\nimport { useCallback, useEffect, useState } from 'react';\nimport { useMap } from 'react-leaflet';\n\nimport { Button } from '../button';\nimport { UpdateMapSettingsProps } from '.';\n\nexport function UpdateMapSettings(props: UpdateMapSettingsProps) {\n const map = useMap();\n const propsMemo = useDeepCompareMemoize(props);\n\n useEffect(() => {\n if (propsMemo.center && propsMemo.maxBounds && propsMemo.zoom) {\n map.setMaxBounds(propsMemo.maxBounds);\n map.setView(propsMemo.center, propsMemo.zoom);\n } else {\n if (propsMemo.center) {\n map.setView(propsMemo.center, propsMemo.zoom);\n }\n }\n }, [map, propsMemo]);\n\n return null;\n}\n\nexport function CustomZoomControl() {\n const map = useMap();\n\n const handleZoomOut = useCallback(() => map.zoomOut(), [map]);\n const handleZoomIn = useCallback(() => map.zoomIn(), [map]);\n const [canZoomIn, setCanZoomIn] = useState(true);\n const [canZoomOut, setCanZoomOut] = useState(true);\n\n useEffect(() => {\n const updateZoomStatus = () => {\n setCanZoomIn(map.getZoom() < map.getMaxZoom());\n setCanZoomOut(map.getZoom() > map.getMinZoom());\n };\n\n map.on('zoomend', updateZoomStatus);\n updateZoomStatus();\n\n return () => {\n map.off('zoomend', updateZoomStatus);\n };\n }, [map]);\n return (\n <div\n style={{\n position: 'absolute',\n top: '50%',\n right: '20px',\n transform: 'translateY(-50%)',\n zIndex: 400,\n display: 'flex',\n flexDirection: 'column',\n gap: '10px',\n pointerEvents: 'none',\n }}\n >\n <Button\n isHiddenBorder\n genre='realebail-product'\n isWidthAsHeight\n isHidden={!canZoomIn}\n isDisabled={!canZoomIn}\n size='small'\n icons={[\n {\n name: 'Plus',\n type: 'id',\n size: 'medium',\n },\n ]}\n sx={{\n default: {\n pointerEvents: 'all',\n },\n }}\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n handleZoomIn();\n }}\n onMouseDown={(e) => {\n e.preventDefault();\n e.stopPropagation();\n }}\n />\n <Button\n isHiddenBorder\n genre='realebail-product'\n isHidden={!canZoomOut}\n isDisabled={!canZoomOut}\n isWidthAsHeight\n size='small'\n icons={[\n {\n name: 'Minus',\n type: 'id',\n size: 'medium',\n },\n ]}\n sx={{\n default: {\n pointerEvents: 'all',\n },\n }}\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n handleZoomOut();\n }}\n onMouseDown={(e) => {\n e.preventDefault();\n e.stopPropagation();\n }}\n />\n </div>\n );\n}\n","import { useEffect, useState } from 'react';\nimport { MapContainer, TileLayer } from 'react-leaflet';\nimport 'react-leaflet-markercluster/styles';\n\nimport {\n CustomZoomControl,\n DEFAULT_MAP_CENTER,\n DEFAULT_MAP_MAX_ZOOM,\n DEFAULT_MAP_MIN_ZOOM,\n DEFAULT_MAP_ZOOM,\n MapProps,\n MapWrapper,\n MarkerCluster,\n UpdateMapSettings,\n} from '.';\n\nimport 'leaflet.markercluster/dist/MarkerCluster.Default.css';\nimport 'leaflet.markercluster/dist/MarkerCluster.css';\nimport 'leaflet/dist/leaflet.css';\n\nexport const MapCluster = <T extends object>(props: MapProps<T>) => {\n const [theme, setTheme] = useState(props.theme ?? DEFAULT_MAP_CENTER);\n const [center, setCenter] = useState(props.center);\n\n useEffect(() => {\n setTheme(props.theme);\n }, [props.theme]);\n\n useEffect(() => {\n if (props.center) {\n setCenter(props.center);\n }\n }, [props.center]);\n\n return (\n center &&\n theme && (\n <MapWrapper style={props.style}>\n <MapContainer\n zoom={props.zoom ?? DEFAULT_MAP_ZOOM}\n minZoom={props.minZoom ?? DEFAULT_MAP_MIN_ZOOM}\n maxZoom={props.maxZoom ?? DEFAULT_MAP_MAX_ZOOM}\n attributionControl={false}\n zoomControl={false}\n style={{ height: '100%', width: '100%' }}\n >\n <CustomZoomControl />\n <TileLayer url={theme.url} attribution={theme.attribution} />\n <MarkerCluster getCustomClusterLabel={props.getCustomClusterLabel} markers={props.markers} />\n <UpdateMapSettings center={center} maxBounds={props.maxBounds} zoom={props.zoom} />\n </MapContainer>\n </MapWrapper>\n )\n );\n};\n","import { useEffect, useState } from 'react';\nimport { MapContainer, Marker, TileLayer, useMapEvents } from 'react-leaflet';\nimport 'react-leaflet-markercluster/styles';\n\nimport {\n CustomZoomControl,\n customDefaultIcon,\n DEFAULT_MAP_MAX_ZOOM,\n DEFAULT_MAP_MIN_ZOOM,\n DEFAULT_MAP_THEME,\n DEFAULT_MAP_ZOOM,\n MapDotProps,\n MapWrapper,\n UpdateMapSettings,\n} from '.';\n\nimport 'leaflet.markercluster/dist/MarkerCluster.Default.css';\nimport 'leaflet.markercluster/dist/MarkerCluster.css';\nimport 'leaflet/dist/leaflet.css';\n\nexport const MapDot = (props: MapDotProps) => {\n const [position, setPosition] = useState<[number, number] | null>(props.coords ?? null);\n const [theme, setTheme] = useState(props.theme ?? DEFAULT_MAP_THEME);\n const [center, setCenter] = useState(props.center);\n\n useEffect(() => {\n setTheme(props.theme);\n }, [props.theme]);\n\n useEffect(() => {\n if (props.center) {\n setCenter(props.center);\n }\n }, [props.center]);\n\n const MapClickHandler = () => {\n useMapEvents({\n click(e) {\n if ((e.originalEvent.target as HTMLElement).classList.contains('leaflet-container')) {\n const coords: [number, number] = [e.latlng.lat, e.latlng.lng];\n setPosition(coords);\n props.onSelect(coords);\n }\n },\n });\n return null;\n };\n\n useEffect(() => {\n if (props.coords) {\n setPosition(props.coords);\n }\n }, [props.coords]);\n return (\n center && (\n <MapWrapper>\n <MapContainer\n zoom={props.zoom ?? DEFAULT_MAP_ZOOM}\n minZoom={props.minZoom ?? DEFAULT_MAP_MIN_ZOOM}\n maxZoom={props.maxZoom ?? DEFAULT_MAP_MAX_ZOOM}\n zoomControl={false}\n attributionControl={false}\n style={{ height: '100%', width: '100%' }}\n >\n <TileLayer\n url={theme?.url ?? 'https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png'}\n attribution={theme?.attribution}\n />\n <CustomZoomControl />\n <UpdateMapSettings center={center} maxBounds={props.maxBounds} zoom={props.zoom} />\n <MapClickHandler />\n {position && <Marker position={position} icon={customDefaultIcon()} />}\n </MapContainer>\n </MapWrapper>\n )\n );\n};\n"],"names":["MarkerCluster","props","jsx","MarkerClusterGroup","iconCreateFunction","cluster","createClusterIcon","getCustomClusterLabel","chunkedLoading","showCoverageOnHover","spiderfyOnMaxZoom","children","markers","map","marker","Marker","position","icon","customTextIcon","_a","call","options","Popup","popupProps","popupContent","id","markersCount","getChildCount","getAllChildMarkers","customLabel","m","leaflet","DivIcon","html","iconSize","Point","iconAnchor","text","popupAnchor","customDefaultIcon","UpdateMapSettings","useMap","propsMemo","useDeepCompareMemoize","useEffect","center","maxBounds","zoom","setMaxBounds","setView","CustomZoomControl","handleZoomOut","useCallback","zoomOut","handleZoomIn","zoomIn","canZoomIn","setCanZoomIn","useState","canZoomOut","setCanZoomOut","updateZoomStatus","getZoom","getMaxZoom","getMinZoom","on","off","jsxs","style","top","right","transform","zIndex","display","flexDirection","gap","pointerEvents","Button","isHiddenBorder","genre","isWidthAsHeight","isHidden","isDisabled","size","icons","name","type","sx","default","onClick","e","preventDefault","stopPropagation","onMouseDown","theme","setTheme","DEFAULT_MAP_CENTER","setCenter","MapWrapper","MapContainer","DEFAULT_MAP_ZOOM","minZoom","DEFAULT_MAP_MIN_ZOOM","maxZoom","DEFAULT_MAP_MAX_ZOOM","attributionControl","zoomControl","height","width","TileLayer","url","attribution","setPosition","coords","DEFAULT_MAP_THEME","MapClickHandler","useMapEvents","click","originalEvent","target","classList","contains","latlng","lat","lng","onSelect"],"mappings":"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"}
1
+ {"version":3,"file":"component.components-DnPZVXuo.cjs","sources":["../src/components/map/component.cluster.tsx","../src/components/map/component.functions.tsx","../src/components/map/component.components.tsx","../src/components/map/component.map-cluster.tsx","../src/components/map/component.map-dot.tsx"],"sourcesContent":["import leaflet from 'leaflet';\nimport 'leaflet.markercluster';\n\nimport { Marker, Popup } from 'react-leaflet';\nimport MarkerClusterGroup from 'react-leaflet-markercluster';\n\nimport { createClusterIcon, customTextIcon, MarkerClusterProps } from '.';\n\nexport const MarkerCluster = <T extends object>(props: MarkerClusterProps<T>) => {\n return (\n <MarkerClusterGroup\n iconCreateFunction={(cluster: leaflet.MarkerCluster) => createClusterIcon(cluster, props.getCustomClusterLabel)}\n chunkedLoading\n showCoverageOnHover={false}\n spiderfyOnMaxZoom={false}\n >\n {props.markers.map((marker) => (\n <Marker\n key={marker.id}\n position={marker.position}\n icon={customTextIcon(props?.getCustomClusterLabel?.(marker.options ? [marker.options] : []) ?? '')}\n {...({\n options: marker.options,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } as any)}\n >\n <Popup {...marker.popupProps}>{marker.popupContent}</Popup>\n </Marker>\n ))}\n </MarkerClusterGroup>\n );\n};\n","import leaflet from 'leaflet';\n\nexport const createClusterIcon = <T extends object>(\n cluster: leaflet.MarkerCluster,\n getCustomClusterLabel?: (markers: T[]) => string,\n) => {\n const markersCount = cluster.getChildCount();\n const markers = cluster.getAllChildMarkers();\n const customLabel = getCustomClusterLabel?.(markers.map((m) => (m.options as { options: T }).options));\n\n return new leaflet.DivIcon({\n html: `\n <div style=\"position: relative; width: 100%; height: 100%; display: flex; justify-content: center;\">\n <svg width=\"42\" height=\"42\" viewBox=\"0 0 42 42\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill=\"#2A77EE\" d=\"M34.125 18.375C34.125 30.8735 21 38.0625 21 38.0625C21 38.0625 7.875 30.8735 7.875 18.375C7.875 14.894 9.25781 11.5556 11.7192 9.09422C14.1806 6.63281 17.519 5.25 21 5.25C24.481 5.25 27.8194 6.63281 30.2808 9.09422C32.7422 11.5556 34.125 14.894 34.125 18.375ZM21.0003 6.33599C17.8074 6.33599 14.7453 7.60436 12.4876 9.86207C10.2298 12.1198 8.96148 15.1819 8.96148 18.3748C8.96148 24.2256 12.0337 28.8895 15.2148 32.1465C16.7986 33.768 18.3854 35.0153 19.5762 35.8565C20.1675 36.2743 20.6588 36.5902 21.0003 36.8006C21.3417 36.5902 21.833 36.2743 22.4243 35.8565C23.6152 35.0153 25.202 33.768 26.7857 32.1465C29.9668 28.8895 33.0391 24.2256 33.0391 18.3748C33.0391 15.1819 31.7707 12.1198 29.513 9.86207C27.2553 7.60436 24.1932 6.33599 21.0003 6.33599ZM21.0003 38.0623C20.4785 39.0149 20.4781 39.0147 20.4776 39.0145L20.4765 39.0139L20.4733 39.0121L20.4634 39.0066L20.4297 38.9877C20.401 38.9716 20.3603 38.9485 20.3083 38.9183C20.2042 38.858 20.0549 38.7697 19.8668 38.6539C19.4907 38.4223 18.9587 38.0801 18.3228 37.6309C17.0527 36.7336 15.3582 35.4025 13.6607 33.6644C10.2793 30.2024 6.78906 25.0224 6.78906 18.3748C6.78906 14.6057 8.28631 10.9911 10.9514 8.32594C13.6165 5.66082 17.2312 4.16357 21.0003 4.16357C24.7693 4.16357 28.384 5.66082 31.0491 8.32594C33.7142 10.9911 35.2115 14.6057 35.2115 18.3748C35.2115 25.0224 31.7212 30.2024 28.3398 33.6644C26.6423 35.4025 24.9479 36.7336 23.6778 37.6309C23.0418 38.0801 22.5099 38.4223 22.1338 38.6539C21.9456 38.7697 21.7963 38.858 21.6923 38.9183C21.6402 38.9485 21.5995 38.9716 21.5709 38.9877L21.5371 39.0066L21.5272 39.0121L21.524 39.0139L21.5229 39.0145C21.5225 39.0147 21.5221 39.0149 21.0003 38.0623ZM21.0003 38.0623L21.5221 39.0149C21.197 39.193 20.8035 39.193 20.4785 39.0149L21.0003 38.0623Z\"/>\n <path fill=\"#F7FAFF\" d=\"M26.25 18.375C26.25 19.7674 25.6969 21.1027 24.7123 22.0873C23.7277 23.0719 22.3924 23.625 21 23.625C19.6076 23.625 18.2723 23.0719 17.2877 22.0873C16.3031 21.1027 15.75 19.7674 15.75 18.375C15.75 16.9826 16.3031 15.6473 17.2877 14.6627C18.2723 13.6781 19.6076 13.125 21 13.125C22.3924 13.125 23.7277 13.6781 24.7123 14.6627C25.6969 15.6473 26.25 16.9826 26.25 18.375Z\"/>\n <path fill=\"#2A77EE\" d=\"M21.0003 14.211C19.896 14.211 18.8369 14.6497 18.056 15.4305C17.2752 16.2114 16.8365 17.2705 16.8365 18.3748C16.8365 19.4791 17.2752 20.5382 18.056 21.319C18.8369 22.0999 19.896 22.5386 21.0003 22.5386C22.1046 22.5386 23.1637 22.0999 23.9445 21.319C24.7254 20.5382 25.1641 19.4791 25.1641 18.3748C25.1641 17.2705 24.7254 16.2114 23.9445 15.4305C23.1637 14.6497 22.1046 14.211 21.0003 14.211ZM16.5199 13.8944C17.7082 12.7061 19.3198 12.0386 21.0003 12.0386C22.6807 12.0386 24.2924 12.7061 25.4806 13.8944C26.6689 15.0827 27.3365 16.6943 27.3365 18.3748C27.3365 20.0552 26.6689 21.6669 25.4806 22.8552C24.2924 24.0434 22.6807 24.711 21.0003 24.711C19.3198 24.711 17.7082 24.0434 16.5199 22.8552C15.3316 21.6669 14.6641 20.0552 14.6641 18.3748C14.6641 16.6943 15.3316 15.0827 16.5199 13.8944Z\"/>\n </svg>\n <div \n style=\"\n position: absolute;\n top: -30px;\n background-color: #2A77EE;\n padding: 0px 10px;\n border-radius: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n font-family: 'Roboto';\n font-style: normal;\n font-weight: 500;\n font-size: 20px;\n line-height: 150%;\n letter-spacing: -0.03em;\n color: #F7FAFF;\n white-space: nowrap;\n \"\n >\n ${markersCount} | ${customLabel}\n </div>\n </div>\n `,\n iconSize: new leaflet.Point(42, 42),\n iconAnchor: [21, 42],\n });\n};\n\nexport const customTextIcon = (text: string) =>\n new leaflet.DivIcon({\n html: `\n <div style=\"position: relative; width: 100%; height: 100%; display: flex; justify-content: center;\">\n <svg width=\"42\" height=\"42\" viewBox=\"0 0 42 42\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill=\"#2A77EE\" d=\"M34.125 18.375C34.125 30.8735 21 38.0625 21 38.0625C21 38.0625 7.875 30.8735 7.875 18.375C7.875 14.894 9.25781 11.5556 11.7192 9.09422C14.1806 6.63281 17.519 5.25 21 5.25C24.481 5.25 27.8194 6.63281 30.2808 9.09422C32.7422 11.5556 34.125 14.894 34.125 18.375ZM21.0003 6.33599C17.8074 6.33599 14.7453 7.60436 12.4876 9.86207C10.2298 12.1198 8.96148 15.1819 8.96148 18.3748C8.96148 24.2256 12.0337 28.8895 15.2148 32.1465C16.7986 33.768 18.3854 35.0153 19.5762 35.8565C20.1675 36.2743 20.6588 36.5902 21.0003 36.8006C21.3417 36.5902 21.833 36.2743 22.4243 35.8565C23.6152 35.0153 25.202 33.768 26.7857 32.1465C29.9668 28.8895 33.0391 24.2256 33.0391 18.3748C33.0391 15.1819 31.7707 12.1198 29.513 9.86207C27.2553 7.60436 24.1932 6.33599 21.0003 6.33599ZM21.0003 38.0623C20.4785 39.0149 20.4781 39.0147 20.4776 39.0145L20.4765 39.0139L20.4733 39.0121L20.4634 39.0066L20.4297 38.9877C20.401 38.9716 20.3603 38.9485 20.3083 38.9183C20.2042 38.858 20.0549 38.7697 19.8668 38.6539C19.4907 38.4223 18.9587 38.0801 18.3228 37.6309C17.0527 36.7336 15.3582 35.4025 13.6607 33.6644C10.2793 30.2024 6.78906 25.0224 6.78906 18.3748C6.78906 14.6057 8.28631 10.9911 10.9514 8.32594C13.6165 5.66082 17.2312 4.16357 21.0003 4.16357C24.7693 4.16357 28.384 5.66082 31.0491 8.32594C33.7142 10.9911 35.2115 14.6057 35.2115 18.3748C35.2115 25.0224 31.7212 30.2024 28.3398 33.6644C26.6423 35.4025 24.9479 36.7336 23.6778 37.6309C23.0418 38.0801 22.5099 38.4223 22.1338 38.6539C21.9456 38.7697 21.7963 38.858 21.6923 38.9183C21.6402 38.9485 21.5995 38.9716 21.5709 38.9877L21.5371 39.0066L21.5272 39.0121L21.524 39.0139L21.5229 39.0145C21.5225 39.0147 21.5221 39.0149 21.0003 38.0623ZM21.0003 38.0623L21.5221 39.0149C21.197 39.193 20.8035 39.193 20.4785 39.0149L21.0003 38.0623Z\"/>\n <path fill=\"#F7FAFF\" d=\"M26.25 18.375C26.25 19.7674 25.6969 21.1027 24.7123 22.0873C23.7277 23.0719 22.3924 23.625 21 23.625C19.6076 23.625 18.2723 23.0719 17.2877 22.0873C16.3031 21.1027 15.75 19.7674 15.75 18.375C15.75 16.9826 16.3031 15.6473 17.2877 14.6627C18.2723 13.6781 19.6076 13.125 21 13.125C22.3924 13.125 23.7277 13.6781 24.7123 14.6627C25.6969 15.6473 26.25 16.9826 26.25 18.375Z\"/>\n <path fill=\"#2A77EE\" d=\"M21.0003 14.211C19.896 14.211 18.8369 14.6497 18.056 15.4305C17.2752 16.2114 16.8365 17.2705 16.8365 18.3748C16.8365 19.4791 17.2752 20.5382 18.056 21.319C18.8369 22.0999 19.896 22.5386 21.0003 22.5386C22.1046 22.5386 23.1637 22.0999 23.9445 21.319C24.7254 20.5382 25.1641 19.4791 25.1641 18.3748C25.1641 17.2705 24.7254 16.2114 23.9445 15.4305C23.1637 14.6497 22.1046 14.211 21.0003 14.211ZM16.5199 13.8944C17.7082 12.7061 19.3198 12.0386 21.0003 12.0386C22.6807 12.0386 24.2924 12.7061 25.4806 13.8944C26.6689 15.0827 27.3365 16.6943 27.3365 18.3748C27.3365 20.0552 26.6689 21.6669 25.4806 22.8552C24.2924 24.0434 22.6807 24.711 21.0003 24.711C19.3198 24.711 17.7082 24.0434 16.5199 22.8552C15.3316 21.6669 14.6641 20.0552 14.6641 18.3748C14.6641 16.6943 15.3316 15.0827 16.5199 13.8944Z\"/>\n </svg>\n <div \n style=\"\n position: absolute;\n top: -30px;\n background-color: #2A77EE;\n padding: 0px 10px;\n border-radius: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n font-family: 'Roboto';\n font-style: normal;\n font-weight: 500;\n font-size: 20px;\n line-height: 150%;\n letter-spacing: -0.03em;\n color: #F7FAFF;\n white-space: nowrap;\n \"\n >\n ${text}\n </div>\n </div>\n `,\n iconSize: new leaflet.Point(42, 42),\n iconAnchor: [21, 42],\n popupAnchor: [0, -36],\n });\n\nexport const customDefaultIcon = () =>\n new leaflet.DivIcon({\n html: `\n <div style=\"position: relative; width: 100%; height: 100%; display: flex; justify-content: center;\">\n <svg width=\"42\" height=\"42\" viewBox=\"0 0 42 42\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path fill=\"#2A77EE\" d=\"M34.125 18.375C34.125 30.8735 21 38.0625 21 38.0625C21 38.0625 7.875 30.8735 7.875 18.375C7.875 14.894 9.25781 11.5556 11.7192 9.09422C14.1806 6.63281 17.519 5.25 21 5.25C24.481 5.25 27.8194 6.63281 30.2808 9.09422C32.7422 11.5556 34.125 14.894 34.125 18.375ZM21.0003 6.33599C17.8074 6.33599 14.7453 7.60436 12.4876 9.86207C10.2298 12.1198 8.96148 15.1819 8.96148 18.3748C8.96148 24.2256 12.0337 28.8895 15.2148 32.1465C16.7986 33.768 18.3854 35.0153 19.5762 35.8565C20.1675 36.2743 20.6588 36.5902 21.0003 36.8006C21.3417 36.5902 21.833 36.2743 22.4243 35.8565C23.6152 35.0153 25.202 33.768 26.7857 32.1465C29.9668 28.8895 33.0391 24.2256 33.0391 18.3748C33.0391 15.1819 31.7707 12.1198 29.513 9.86207C27.2553 7.60436 24.1932 6.33599 21.0003 6.33599ZM21.0003 38.0623C20.4785 39.0149 20.4781 39.0147 20.4776 39.0145L20.4765 39.0139L20.4733 39.0121L20.4634 39.0066L20.4297 38.9877C20.401 38.9716 20.3603 38.9485 20.3083 38.9183C20.2042 38.858 20.0549 38.7697 19.8668 38.6539C19.4907 38.4223 18.9587 38.0801 18.3228 37.6309C17.0527 36.7336 15.3582 35.4025 13.6607 33.6644C10.2793 30.2024 6.78906 25.0224 6.78906 18.3748C6.78906 14.6057 8.28631 10.9911 10.9514 8.32594C13.6165 5.66082 17.2312 4.16357 21.0003 4.16357C24.7693 4.16357 28.384 5.66082 31.0491 8.32594C33.7142 10.9911 35.2115 14.6057 35.2115 18.3748C35.2115 25.0224 31.7212 30.2024 28.3398 33.6644C26.6423 35.4025 24.9479 36.7336 23.6778 37.6309C23.0418 38.0801 22.5099 38.4223 22.1338 38.6539C21.9456 38.7697 21.7963 38.858 21.6923 38.9183C21.6402 38.9485 21.5995 38.9716 21.5709 38.9877L21.5371 39.0066L21.5272 39.0121L21.524 39.0139L21.5229 39.0145C21.5225 39.0147 21.5221 39.0149 21.0003 38.0623ZM21.0003 38.0623L21.5221 39.0149C21.197 39.193 20.8035 39.193 20.4785 39.0149L21.0003 38.0623Z\"/>\n <path fill=\"#F7FAFF\" d=\"M26.25 18.375C26.25 19.7674 25.6969 21.1027 24.7123 22.0873C23.7277 23.0719 22.3924 23.625 21 23.625C19.6076 23.625 18.2723 23.0719 17.2877 22.0873C16.3031 21.1027 15.75 19.7674 15.75 18.375C15.75 16.9826 16.3031 15.6473 17.2877 14.6627C18.2723 13.6781 19.6076 13.125 21 13.125C22.3924 13.125 23.7277 13.6781 24.7123 14.6627C25.6969 15.6473 26.25 16.9826 26.25 18.375Z\"/>\n <path fill=\"#2A77EE\" d=\"M21.0003 14.211C19.896 14.211 18.8369 14.6497 18.056 15.4305C17.2752 16.2114 16.8365 17.2705 16.8365 18.3748C16.8365 19.4791 17.2752 20.5382 18.056 21.319C18.8369 22.0999 19.896 22.5386 21.0003 22.5386C22.1046 22.5386 23.1637 22.0999 23.9445 21.319C24.7254 20.5382 25.1641 19.4791 25.1641 18.3748C25.1641 17.2705 24.7254 16.2114 23.9445 15.4305C23.1637 14.6497 22.1046 14.211 21.0003 14.211ZM16.5199 13.8944C17.7082 12.7061 19.3198 12.0386 21.0003 12.0386C22.6807 12.0386 24.2924 12.7061 25.4806 13.8944C26.6689 15.0827 27.3365 16.6943 27.3365 18.3748C27.3365 20.0552 26.6689 21.6669 25.4806 22.8552C24.2924 24.0434 22.6807 24.711 21.0003 24.711C19.3198 24.711 17.7082 24.0434 16.5199 22.8552C15.3316 21.6669 14.6641 20.0552 14.6641 18.3748C14.6641 16.6943 15.3316 15.0827 16.5199 13.8944Z\"/>\n </svg>\n </div>\n `,\n iconSize: new leaflet.Point(42, 42),\n iconAnchor: [21, 42],\n popupAnchor: [0, -36],\n });\n","import { useDeepCompareMemoize } from '@local/hooks/use-deep-compare-memoize';\n\nimport { useCallback, useEffect, useState } from 'react';\nimport { useMap } from 'react-leaflet';\n\nimport { Button } from '../button';\nimport { UpdateMapSettingsProps } from '.';\n\nexport function UpdateMapSettings(props: UpdateMapSettingsProps) {\n const map = useMap();\n const propsMemo = useDeepCompareMemoize(props);\n\n useEffect(() => {\n if (propsMemo.center && propsMemo.maxBounds && propsMemo.zoom) {\n map.setMaxBounds(propsMemo.maxBounds);\n map.setView(propsMemo.center, propsMemo.zoom);\n } else {\n if (propsMemo.center) {\n map.setView(propsMemo.center, propsMemo.zoom);\n }\n }\n }, [map, propsMemo]);\n\n return null;\n}\n\nexport function CustomZoomControl() {\n const map = useMap();\n\n const handleZoomOut = useCallback(() => map.zoomOut(), [map]);\n const handleZoomIn = useCallback(() => map.zoomIn(), [map]);\n const [canZoomIn, setCanZoomIn] = useState(true);\n const [canZoomOut, setCanZoomOut] = useState(true);\n\n useEffect(() => {\n const updateZoomStatus = () => {\n setCanZoomIn(map.getZoom() < map.getMaxZoom());\n setCanZoomOut(map.getZoom() > map.getMinZoom());\n };\n\n map.on('zoomend', updateZoomStatus);\n updateZoomStatus();\n\n return () => {\n map.off('zoomend', updateZoomStatus);\n };\n }, [map]);\n return (\n <div\n style={{\n position: 'absolute',\n top: '50%',\n right: '20px',\n transform: 'translateY(-50%)',\n zIndex: 400,\n display: 'flex',\n flexDirection: 'column',\n gap: '10px',\n pointerEvents: 'none',\n }}\n >\n <Button\n isHiddenBorder\n genre='realebail-product'\n isWidthAsHeight\n isHidden={!canZoomIn}\n isDisabled={!canZoomIn}\n size='small'\n icons={[\n {\n name: 'Plus',\n type: 'id',\n size: 'medium',\n },\n ]}\n sx={{\n default: {\n pointerEvents: 'all',\n },\n }}\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n handleZoomIn();\n }}\n onMouseDown={(e) => {\n e.preventDefault();\n e.stopPropagation();\n }}\n />\n <Button\n isHiddenBorder\n genre='realebail-product'\n isHidden={!canZoomOut}\n isDisabled={!canZoomOut}\n isWidthAsHeight\n size='small'\n icons={[\n {\n name: 'Minus',\n type: 'id',\n size: 'medium',\n },\n ]}\n sx={{\n default: {\n pointerEvents: 'all',\n },\n }}\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n handleZoomOut();\n }}\n onMouseDown={(e) => {\n e.preventDefault();\n e.stopPropagation();\n }}\n />\n </div>\n );\n}\n","import { useEffect, useState } from 'react';\nimport { MapContainer, TileLayer } from 'react-leaflet';\nimport 'react-leaflet-markercluster/styles';\n\nimport {\n CustomZoomControl,\n DEFAULT_MAP_CENTER,\n DEFAULT_MAP_MAX_ZOOM,\n DEFAULT_MAP_MIN_ZOOM,\n DEFAULT_MAP_ZOOM,\n MapProps,\n MapWrapper,\n MarkerCluster,\n UpdateMapSettings,\n} from '.';\n\nimport 'leaflet.markercluster/dist/MarkerCluster.Default.css';\nimport 'leaflet.markercluster/dist/MarkerCluster.css';\nimport 'leaflet/dist/leaflet.css';\n\nexport const MapCluster = <T extends object>(props: MapProps<T>) => {\n const [theme, setTheme] = useState(props.theme ?? DEFAULT_MAP_CENTER);\n const [center, setCenter] = useState(props.center);\n\n useEffect(() => {\n setTheme(props.theme);\n }, [props.theme]);\n\n useEffect(() => {\n if (props.center) {\n setCenter(props.center);\n }\n }, [props.center]);\n\n return (\n center &&\n theme && (\n <MapWrapper style={props.style}>\n <MapContainer\n zoom={props.zoom ?? DEFAULT_MAP_ZOOM}\n minZoom={props.minZoom ?? DEFAULT_MAP_MIN_ZOOM}\n maxZoom={props.maxZoom ?? DEFAULT_MAP_MAX_ZOOM}\n attributionControl={false}\n zoomControl={false}\n style={{ height: '100%', width: '100%' }}\n >\n <CustomZoomControl />\n <TileLayer url={theme.url} attribution={theme.attribution} />\n <MarkerCluster getCustomClusterLabel={props.getCustomClusterLabel} markers={props.markers} />\n <UpdateMapSettings center={center} maxBounds={props.maxBounds} zoom={props.zoom} />\n </MapContainer>\n </MapWrapper>\n )\n );\n};\n","import { useEffect, useState } from 'react';\nimport { MapContainer, Marker, TileLayer, useMapEvents } from 'react-leaflet';\nimport 'react-leaflet-markercluster/styles';\n\nimport {\n CustomZoomControl,\n customDefaultIcon,\n DEFAULT_MAP_MAX_ZOOM,\n DEFAULT_MAP_MIN_ZOOM,\n DEFAULT_MAP_THEME,\n DEFAULT_MAP_ZOOM,\n MapDotProps,\n MapWrapper,\n UpdateMapSettings,\n} from '.';\n\nimport 'leaflet.markercluster/dist/MarkerCluster.Default.css';\nimport 'leaflet.markercluster/dist/MarkerCluster.css';\nimport 'leaflet/dist/leaflet.css';\n\nexport const MapDot = (props: MapDotProps) => {\n const [position, setPosition] = useState<[number, number] | null>(props.coords ?? null);\n const [theme, setTheme] = useState(props.theme ?? DEFAULT_MAP_THEME);\n const [center, setCenter] = useState(props.center);\n\n useEffect(() => {\n setTheme(props.theme);\n }, [props.theme]);\n\n useEffect(() => {\n if (props.center) {\n setCenter(props.center);\n }\n }, [props.center]);\n\n const MapClickHandler = () => {\n useMapEvents({\n click(e) {\n if ((e.originalEvent.target as HTMLElement).classList.contains('leaflet-container')) {\n const coords: [number, number] = [e.latlng.lat, e.latlng.lng];\n setPosition(coords);\n props.onSelect(coords);\n }\n },\n });\n return null;\n };\n\n useEffect(() => {\n if (props.coords) {\n setPosition(props.coords);\n }\n }, [props.coords]);\n return (\n center && (\n <MapWrapper>\n <MapContainer\n zoom={props.zoom ?? DEFAULT_MAP_ZOOM}\n minZoom={props.minZoom ?? DEFAULT_MAP_MIN_ZOOM}\n maxZoom={props.maxZoom ?? DEFAULT_MAP_MAX_ZOOM}\n zoomControl={false}\n attributionControl={false}\n style={{ height: '100%', width: '100%' }}\n >\n <TileLayer\n url={theme?.url ?? 'https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png'}\n attribution={theme?.attribution}\n />\n <CustomZoomControl />\n <UpdateMapSettings center={center} maxBounds={props.maxBounds} zoom={props.zoom} />\n <MapClickHandler />\n {position && <Marker position={position} icon={customDefaultIcon()} />}\n </MapContainer>\n </MapWrapper>\n )\n );\n};\n"],"names":["MarkerCluster","props","jsx","MarkerClusterGroup","iconCreateFunction","cluster","createClusterIcon","getCustomClusterLabel","chunkedLoading","showCoverageOnHover","spiderfyOnMaxZoom","children","markers","map","marker","Marker","position","icon","customTextIcon","_a","call","options","Popup","popupProps","popupContent","id","markersCount","getChildCount","getAllChildMarkers","customLabel","m","leaflet","DivIcon","html","iconSize","Point","iconAnchor","text","popupAnchor","customDefaultIcon","UpdateMapSettings","useMap","propsMemo","useDeepCompareMemoize","useEffect","center","maxBounds","zoom","setMaxBounds","setView","CustomZoomControl","handleZoomOut","useCallback","zoomOut","handleZoomIn","zoomIn","canZoomIn","setCanZoomIn","useState","canZoomOut","setCanZoomOut","updateZoomStatus","getZoom","getMaxZoom","getMinZoom","on","off","jsxs","style","top","right","transform","zIndex","display","flexDirection","gap","pointerEvents","Button","isHiddenBorder","genre","isWidthAsHeight","isHidden","isDisabled","size","icons","name","type","sx","default","onClick","e","preventDefault","stopPropagation","onMouseDown","theme","setTheme","DEFAULT_MAP_CENTER","setCenter","MapWrapper","MapContainer","DEFAULT_MAP_ZOOM","minZoom","DEFAULT_MAP_MIN_ZOOM","maxZoom","DEFAULT_MAP_MAX_ZOOM","attributionControl","zoomControl","height","width","TileLayer","url","attribution","setPosition","coords","DEFAULT_MAP_THEME","MapClickHandler","useMapEvents","click","originalEvent","target","classList","contains","latlng","lat","lng","onSelect"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";const e=require("./jsx-runtime-BcGej2Kr.cjs"),i=require("./context.constants-CHzb-q9a.cjs"),t=require("./component-Dwf2HFot.cjs"),s=require("./component-5Utdcc2G.cjs");require("styled-components"),require("./context.constants-wztrdG5Q.cjs");const n=require("./context.hooks-DDtUqE34.cjs"),o=require("framer-motion"),a=require("react"),l={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})},d={duration:.3,ease:[.56,.03,.12,1.04]},r=({params:n,remove:a})=>{var r,u,c,x,p,m,g,h;return e.jsxRuntimeExports.jsxs(s.Stack,{sx:{default:{position:"relative",overflow:"hidden",aspectRatio:2*(null==n?void 0:n.aspect)+" / 2",width:"auto",maxWidth:"70dvw",height:"85dvh",borderRadius:null==n?void 0:n.br},tablet:{maxWidth:"95dvw"}},children:[e.jsxRuntimeExports.jsx(o.AnimatePresence,{initial:!1,custom:null==n?void 0:n.direction,children:e.jsxRuntimeExports.jsxs(i.SliderImage,{style:{overflow:"hidden",borderRadius:null==n?void 0:n.br},custom:null==n?void 0:n.direction,variants:l,initial:"initial",animate:"active",exit:"exit",transition:d,...(null==n?void 0:n.isLengthOne)?{}:{drag:"x",dragConstraints:{left:0,right:0},dragElastic:.5,onDragEnd:(e,i)=>null==n?void 0:n.dragEndHandler(i)},children:[e.jsxRuntimeExports.jsx(t.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==(u=null==(r=(null==n?void 0:n.images)??[])?void 0:r[(null==n?void 0:n.activeImageIndex)??0])?void 0:u.imageSrc,src:null==(x=null==(c=(null==n?void 0:n.images)??[])?void 0:c[(null==n?void 0:n.activeImageIndex)??0])?void 0:x.imageSrc,componentFallback:e.jsxRuntimeExports.jsx(i.Typography,{sx:{default:{variant:"h6"}},children:null==n?void 0:n.failedToLoad})}),null==(m=null==(p=(null==n?void 0:n.images)??[])?void 0:p[(null==n?void 0:n.activeImageIndex)??0])?void 0:m.children]},null==n?void 0:n.activeImageId)}),"function"==typeof(null==n?void 0:n.children)?null==(g=null==n?void 0:n.children)?void 0:g.call(n,{isDialog:!0}):null==n?void 0:n.children,e.jsxRuntimeExports.jsx(i.Button,{sx:{default:{position:"absolute",bottom:15,right:15}},genre:(null==n?void 0:n.genre)??"product",size:(null==n?void 0:n.size)??"medium",icons:[{type:"id",name:"Arrow4"}],isWidthAsHeight:!0,isHiddenBorder:!0,isRadius:!0,onClick:()=>null==a?void 0:a()}),(null==n?void 0:n.isLengthOne)?null:e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsxs(s.Stack,{sx:{default:{position:"absolute",bottom:15,left:15,gap:"8px"}},children:[e.jsxRuntimeExports.jsx(i.Button,{genre:(null==n?void 0:n.genre)??"product",size:(null==n?void 0:n.size)??"medium",icons:[{type:"id",name:"Arrow4",turn:90}],isWidthAsHeight:!0,isHiddenBorder:!0,isPlaystationEffect:!0,isRadius:!0,onClick:()=>{var e;return null==(e=null==n?void 0:n.swipeToImage)?void 0:e.call(n,-1)}}),e.jsxRuntimeExports.jsx(i.Button,{genre:(null==n?void 0:n.genre)??"product",size:(null==n?void 0:n.size)??"medium",icons:[{type:"id",name:"Arrow4",turn:-90}],isWidthAsHeight:!0,isHiddenBorder:!0,isPlaystationEffect:!0,isRadius:!0,onClick:()=>{var e;return null==(e=null==n?void 0:n.swipeToImage)?void 0:e.call(n,1)}})]}),e.jsxRuntimeExports.jsx(s.Stack,{sx:{default:{position:"absolute",bottom:15,left:"50%",transform:"translateX(-50%)",gap:"4px"}},children:null==(h=(null==n?void 0:n.images)??[])?void 0:h.map(t=>e.jsxRuntimeExports.jsx(i.SliderDot,{onClick:()=>{var e;return null==(e=null==n?void 0:n.skipToImage)?void 0:e.call(n,t.id)},initial:!1,animate:{scale:(null==n?void 0:n.activeImageId)===t.id?1.5:1,opacity:(null==n?void 0:n.activeImageId)===t.id?1:.5}},t.id))})]})]})},u={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})},c={duration:.3,ease:[.56,.03,.12,1.04]},x=[{id:0,children:e.jsxRuntimeExports.jsx(s.Stack,{sx:{default:{justifyContent:"flex-start",padding:"5px",flexGrow:1}},children:e.jsxRuntimeExports.jsx(i.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(s.Stack,{sx:{default:{justifyContent:"flex-start",padding:"5px",flexGrow:1}},children:e.jsxRuntimeExports.jsx(i.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(s.Stack,{sx:{default:{justifyContent:"flex-start",padding:"5px",flexGrow:1}},children:e.jsxRuntimeExports.jsx(i.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(s.Stack,{sx:{default:{justifyContent:"flex-start",padding:"5px",flexGrow:1}},children:e.jsxRuntimeExports.jsx(i.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(s.Stack,{sx:{default:{justifyContent:"flex-start",padding:"5px",flexGrow:1}},children:e.jsxRuntimeExports.jsx(i.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=x,exports.ImageSlider=l=>{var d,x,p,m;const{onIndexChange:g}=l,h=a.useMemo(()=>l.images,[l.images]),v=a.useMemo(()=>i.KEY_SIZE_DATA[l.size],[l.size]),f=a.useMemo(()=>`${v.radius}px`,[v.radius]),{isLengthZero:j,direction:I,activeImageId:b,isLengthOne:y,dragEndHandler:E,activeImageIndex:w,swipeToImage:R,skipToImage:k,handleAdd:S}=(t=>{var s;const{onIndexChange:o}=t,l=a.useMemo(()=>i.KEY_SIZE_DATA[t.size],[t.size]),d=a.useMemo(()=>`${l.radius}px`,[l.radius]),u=a.useMemo(()=>t.images,[t.images]),[{activeImageId:c,direction:x},p]=a.useState({activeImageId:(null==(s=null==u?void 0:u[0])?void 0:s.id)??null,direction:0}),m=a.useMemo(()=>1===(null==u?void 0:u.length),[u]),g=a.useMemo(()=>0===(null==u?void 0:u.length),[u]),h=a.useMemo(()=>u.findIndex(e=>e.id===c),[c,u]),v=a.useCallback(e=>{const i=(u.findIndex(e=>e.id===c)+e+u.length)%u.length;p({activeImageId:u[i].id,direction:e})},[c,u]),f=a.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=a.useCallback(e=>{const i=u.findIndex(e=>e.id===c),t=u.findIndex(i=>i.id===e);-1!==t&&t!==i&&p({activeImageId:e,direction:t>i?1:-1})},[c,u]);a.useEffect(()=>{c&&(null==o||o(c))},[c,o]);const{add:I}=n.useDialog({br:d,dragEndHandler:f,images:u,children:t.children,activeImageIndex:h,activeImageId:c,swipeToImage:v,skipToImage:j,direction:x,aspect:t.imageSettings.aspect,genre:t.genre,size:t.size,failedToLoad:t.locales.failedToLoad,isLengthOne:m,propsDialog:{borderRadius:d,padding:"0",background:"whiteStandard"}}),b=a.useCallback(()=>{I({content:(i,t)=>e.jsxRuntimeExports.jsx(r,{params:i,remove:t})})},[I]);return{isLengthZero:g,direction:x,activeImageId:c,isLengthOne:m,dragEndHandler:f,activeImageIndex:h,swipeToImage:v,skipToImage:j,handleAdd:b}})({genre:l.genre,size:l.size,images:h,imageSettings:l.imageSettings,locales:l.locales,onIndexChange:g,children:l.children});return e.jsxRuntimeExports.jsx(s.StackMotion,{...l.propsStack,sx:e=>{var i,t,s,n,o,a,d,r,u;return{...null==(i=l.propsStack)?void 0:i.sx,default:{borderRadius:f,flexDirection:"column",alignItems:"center",overflow:"hidden",width:"auto",maxWidth:"70dvw",height:"85dvh",...(null==(t=l.propsStack)?void 0:t.sx)?"function"==typeof(null==(s=l.propsStack)?void 0:s.sx)?null==(n=l.propsStack)?void 0:n.sx(e).default:null==(o=l.propsStack)?void 0:o.sx.default:{}},tablet:{maxWidth:"95dvw",...(null==(a=l.propsStack)?void 0:a.sx)?"function"==typeof(null==(d=l.propsStack)?void 0:d.sx)?null==(r=l.propsStack)?void 0:r.sx(e).tablet:null==(u=l.propsStack)?void 0:u.sx.tablet:{}}}},children:l.isLoading?e.jsxRuntimeExports.jsx(s.Stack,{sx:{default:{width:"100%",height:"100%",position:"relative",overflow:"hidden",display:"flex",alignItems:"center",justifyContent:"center"}},children:e.jsxRuntimeExports.jsx(i.Icon,{size:"large",type:"loading",color:"blueFocus",name:"Line"})}):j?e.jsxRuntimeExports.jsx(s.Stack,{sx:{default:{width:"100%",height:"100%",position:"relative",overflow:"hidden",display:"flex",alignItems:"center",justifyContent:"center"}},children:e.jsxRuntimeExports.jsx(i.Typography,{sx:{default:{variant:"h6"}},children:l.locales.noImagesAvailable})}):e.jsxRuntimeExports.jsxs(s.Stack,{sx:{default:{width:"100%",height:"100%",position:"relative",overflow:"hidden"}},children:[e.jsxRuntimeExports.jsx(o.AnimatePresence,{initial:!1,custom:I,children:e.jsxRuntimeExports.jsxs(i.SliderImage,{style:{overflow:"hidden",borderRadius:f},custom:I,variants:u,initial:"initial",animate:"active",exit:"exit",transition:c,...y?{}:{drag:"x",dragConstraints:{left:0,right:0},dragElastic:.5,onDragEnd:(e,i)=>E(i)},children:[e.jsxRuntimeExports.jsx(t.Image,{sxStack:e=>({default:{width:"100%",height:"100%",alignItems:"center",justifyContent:"center",backgroundColor:e.palette.black10,position:"absolute",pointerEvents:"none"}}),alt:null==(d=h[w])?void 0:d.imageSrc,src:null==(x=h[w])?void 0:x.imageSrc,componentFallback:e.jsxRuntimeExports.jsx(i.Typography,{sx:{default:{variant:"h6"}},children:l.locales.failedToLoad})}),null==(p=h[w])?void 0:p.children]},b)}),"function"==typeof(null==l?void 0:l.children)?null==(m=null==l?void 0:l.children)?void 0:m.call(l,{isDialog:!1}):null==l?void 0:l.children,!y&&e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx(i.Button,{sx:{default:{position:"absolute",top:"50%",left:5,transform:"translateY(-50%)"}},genre:l.genre,size:l.size,icons:[{type:"id",name:"Arrow4",turn:90}],isWidthAsHeight:!0,isHiddenBorder:!0,isRadius:!0,onClick:()=>R(-1)}),e.jsxRuntimeExports.jsx(i.Button,{sx:{default:{position:"absolute",top:"50%",right:5,transform:"translateY(-50%)"}},genre:l.genre,size:l.size,icons:[{type:"id",name:"Arrow4",turn:-90}],isWidthAsHeight:!0,isHiddenBorder:!0,isRadius:!0,onClick:()=>R(1)}),e.jsxRuntimeExports.jsx(s.Stack,{sx:{default:{position:"absolute",bottom:5,left:"50%",transform:"translateX(-50%)",gap:"4px"}},children:h.map(t=>e.jsxRuntimeExports.jsx(i.SliderDot,{onClick:()=>k(t.id),initial:!1,animate:{scale:b===t.id?1.5:1,opacity:b===t.id?1:.5}},t.id))})]}),e.jsxRuntimeExports.jsx(i.Button,{sx:{default:{position:"absolute",bottom:5,right:5}},genre:l.genre,size:l.size,icons:[{type:"id",name:"Activity"}],isWidthAsHeight:!0,isHiddenBorder:!0,isRadius:!0,onClick:()=>S()})]})})};
2
- //# sourceMappingURL=component.constants-B-csc6ih.cjs.map
1
+ "use strict";const e=require("./jsx-runtime-BcGej2Kr.cjs"),i=require("./context.constants-CPdsUeiQ.cjs"),t=require("./component-ByU2po_i.cjs"),s=require("./component-5Utdcc2G.cjs");require("styled-components"),require("./context.constants-wztrdG5Q.cjs");const n=require("./context.hooks-DDtUqE34.cjs"),o=require("framer-motion"),a=require("react"),l={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})},d={duration:.3,ease:[.56,.03,.12,1.04]},r=({params:n,remove:a})=>{var r,u,c,x,p,m,g,h;return e.jsxRuntimeExports.jsxs(s.Stack,{sx:{default:{position:"relative",overflow:"hidden",aspectRatio:2*(null==n?void 0:n.aspect)+" / 2",width:"auto",maxWidth:"70dvw",height:"85dvh",borderRadius:null==n?void 0:n.br},tablet:{maxWidth:"95dvw"}},children:[e.jsxRuntimeExports.jsx(o.AnimatePresence,{initial:!1,custom:null==n?void 0:n.direction,children:e.jsxRuntimeExports.jsxs(i.SliderImage,{style:{overflow:"hidden",borderRadius:null==n?void 0:n.br},custom:null==n?void 0:n.direction,variants:l,initial:"initial",animate:"active",exit:"exit",transition:d,...(null==n?void 0:n.isLengthOne)?{}:{drag:"x",dragConstraints:{left:0,right:0},dragElastic:.5,onDragEnd:(e,i)=>null==n?void 0:n.dragEndHandler(i)},children:[e.jsxRuntimeExports.jsx(t.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==(u=null==(r=(null==n?void 0:n.images)??[])?void 0:r[(null==n?void 0:n.activeImageIndex)??0])?void 0:u.imageSrc,src:null==(x=null==(c=(null==n?void 0:n.images)??[])?void 0:c[(null==n?void 0:n.activeImageIndex)??0])?void 0:x.imageSrc,componentFallback:e.jsxRuntimeExports.jsx(i.Typography,{sx:{default:{variant:"h6"}},children:null==n?void 0:n.failedToLoad})}),null==(m=null==(p=(null==n?void 0:n.images)??[])?void 0:p[(null==n?void 0:n.activeImageIndex)??0])?void 0:m.children]},null==n?void 0:n.activeImageId)}),"function"==typeof(null==n?void 0:n.children)?null==(g=null==n?void 0:n.children)?void 0:g.call(n,{isDialog:!0}):null==n?void 0:n.children,e.jsxRuntimeExports.jsx(i.Button,{sx:{default:{position:"absolute",bottom:15,right:15}},genre:(null==n?void 0:n.genre)??"product",size:(null==n?void 0:n.size)??"medium",icons:[{type:"id",name:"Arrow4"}],isWidthAsHeight:!0,isHiddenBorder:!0,isRadius:!0,onClick:()=>null==a?void 0:a()}),(null==n?void 0:n.isLengthOne)?null:e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsxs(s.Stack,{sx:{default:{position:"absolute",bottom:15,left:15,gap:"8px"}},children:[e.jsxRuntimeExports.jsx(i.Button,{genre:(null==n?void 0:n.genre)??"product",size:(null==n?void 0:n.size)??"medium",icons:[{type:"id",name:"Arrow4",turn:90}],isWidthAsHeight:!0,isHiddenBorder:!0,isPlaystationEffect:!0,isRadius:!0,onClick:()=>{var e;return null==(e=null==n?void 0:n.swipeToImage)?void 0:e.call(n,-1)}}),e.jsxRuntimeExports.jsx(i.Button,{genre:(null==n?void 0:n.genre)??"product",size:(null==n?void 0:n.size)??"medium",icons:[{type:"id",name:"Arrow4",turn:-90}],isWidthAsHeight:!0,isHiddenBorder:!0,isPlaystationEffect:!0,isRadius:!0,onClick:()=>{var e;return null==(e=null==n?void 0:n.swipeToImage)?void 0:e.call(n,1)}})]}),e.jsxRuntimeExports.jsx(s.Stack,{sx:{default:{position:"absolute",bottom:15,left:"50%",transform:"translateX(-50%)",gap:"4px"}},children:null==(h=(null==n?void 0:n.images)??[])?void 0:h.map(t=>e.jsxRuntimeExports.jsx(i.SliderDot,{onClick:()=>{var e;return null==(e=null==n?void 0:n.skipToImage)?void 0:e.call(n,t.id)},initial:!1,animate:{scale:(null==n?void 0:n.activeImageId)===t.id?1.5:1,opacity:(null==n?void 0:n.activeImageId)===t.id?1:.5}},t.id))})]})]})},u={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})},c={duration:.3,ease:[.56,.03,.12,1.04]},x=[{id:0,children:e.jsxRuntimeExports.jsx(s.Stack,{sx:{default:{justifyContent:"flex-start",padding:"5px",flexGrow:1}},children:e.jsxRuntimeExports.jsx(i.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(s.Stack,{sx:{default:{justifyContent:"flex-start",padding:"5px",flexGrow:1}},children:e.jsxRuntimeExports.jsx(i.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(s.Stack,{sx:{default:{justifyContent:"flex-start",padding:"5px",flexGrow:1}},children:e.jsxRuntimeExports.jsx(i.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(s.Stack,{sx:{default:{justifyContent:"flex-start",padding:"5px",flexGrow:1}},children:e.jsxRuntimeExports.jsx(i.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(s.Stack,{sx:{default:{justifyContent:"flex-start",padding:"5px",flexGrow:1}},children:e.jsxRuntimeExports.jsx(i.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=x,exports.ImageSlider=l=>{var d,x,p,m;const{onIndexChange:g}=l,h=a.useMemo(()=>l.images,[l.images]),v=a.useMemo(()=>i.KEY_SIZE_DATA[l.size],[l.size]),f=a.useMemo(()=>`${v.radius}px`,[v.radius]),{isLengthZero:j,direction:I,activeImageId:b,isLengthOne:y,dragEndHandler:E,activeImageIndex:w,swipeToImage:R,skipToImage:k,handleAdd:S}=(t=>{var s;const{onIndexChange:o}=t,l=a.useMemo(()=>i.KEY_SIZE_DATA[t.size],[t.size]),d=a.useMemo(()=>`${l.radius}px`,[l.radius]),u=a.useMemo(()=>t.images,[t.images]),[{activeImageId:c,direction:x},p]=a.useState({activeImageId:(null==(s=null==u?void 0:u[0])?void 0:s.id)??null,direction:0}),m=a.useMemo(()=>1===(null==u?void 0:u.length),[u]),g=a.useMemo(()=>0===(null==u?void 0:u.length),[u]),h=a.useMemo(()=>u.findIndex(e=>e.id===c),[c,u]),v=a.useCallback(e=>{const i=(u.findIndex(e=>e.id===c)+e+u.length)%u.length;p({activeImageId:u[i].id,direction:e})},[c,u]),f=a.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=a.useCallback(e=>{const i=u.findIndex(e=>e.id===c),t=u.findIndex(i=>i.id===e);-1!==t&&t!==i&&p({activeImageId:e,direction:t>i?1:-1})},[c,u]);a.useEffect(()=>{c&&(null==o||o(c))},[c,o]);const{add:I}=n.useDialog({br:d,dragEndHandler:f,images:u,children:t.children,activeImageIndex:h,activeImageId:c,swipeToImage:v,skipToImage:j,direction:x,aspect:t.imageSettings.aspect,genre:t.genre,size:t.size,failedToLoad:t.locales.failedToLoad,isLengthOne:m,propsDialog:{borderRadius:d,padding:"0",background:"whiteStandard"}}),b=a.useCallback(()=>{I({content:(i,t)=>e.jsxRuntimeExports.jsx(r,{params:i,remove:t})})},[I]);return{isLengthZero:g,direction:x,activeImageId:c,isLengthOne:m,dragEndHandler:f,activeImageIndex:h,swipeToImage:v,skipToImage:j,handleAdd:b}})({genre:l.genre,size:l.size,images:h,imageSettings:l.imageSettings,locales:l.locales,onIndexChange:g,children:l.children});return e.jsxRuntimeExports.jsx(s.StackMotion,{...l.propsStack,sx:e=>{var i,t,s,n,o,a,d,r,u;return{...null==(i=l.propsStack)?void 0:i.sx,default:{borderRadius:f,flexDirection:"column",alignItems:"center",overflow:"hidden",width:"auto",maxWidth:"70dvw",height:"85dvh",...(null==(t=l.propsStack)?void 0:t.sx)?"function"==typeof(null==(s=l.propsStack)?void 0:s.sx)?null==(n=l.propsStack)?void 0:n.sx(e).default:null==(o=l.propsStack)?void 0:o.sx.default:{}},tablet:{maxWidth:"95dvw",...(null==(a=l.propsStack)?void 0:a.sx)?"function"==typeof(null==(d=l.propsStack)?void 0:d.sx)?null==(r=l.propsStack)?void 0:r.sx(e).tablet:null==(u=l.propsStack)?void 0:u.sx.tablet:{}}}},children:l.isLoading?e.jsxRuntimeExports.jsx(s.Stack,{sx:{default:{width:"100%",height:"100%",position:"relative",overflow:"hidden",display:"flex",alignItems:"center",justifyContent:"center"}},children:e.jsxRuntimeExports.jsx(i.Icon,{size:"large",type:"loading",color:"blueFocus",name:"Line"})}):j?e.jsxRuntimeExports.jsx(s.Stack,{sx:{default:{width:"100%",height:"100%",position:"relative",overflow:"hidden",display:"flex",alignItems:"center",justifyContent:"center"}},children:e.jsxRuntimeExports.jsx(i.Typography,{sx:{default:{variant:"h6"}},children:l.locales.noImagesAvailable})}):e.jsxRuntimeExports.jsxs(s.Stack,{sx:{default:{width:"100%",height:"100%",position:"relative",overflow:"hidden"}},children:[e.jsxRuntimeExports.jsx(o.AnimatePresence,{initial:!1,custom:I,children:e.jsxRuntimeExports.jsxs(i.SliderImage,{style:{overflow:"hidden",borderRadius:f},custom:I,variants:u,initial:"initial",animate:"active",exit:"exit",transition:c,...y?{}:{drag:"x",dragConstraints:{left:0,right:0},dragElastic:.5,onDragEnd:(e,i)=>E(i)},children:[e.jsxRuntimeExports.jsx(t.Image,{sxStack:e=>({default:{width:"100%",height:"100%",alignItems:"center",justifyContent:"center",backgroundColor:e.palette.black10,position:"absolute",pointerEvents:"none"}}),alt:null==(d=h[w])?void 0:d.imageSrc,src:null==(x=h[w])?void 0:x.imageSrc,componentFallback:e.jsxRuntimeExports.jsx(i.Typography,{sx:{default:{variant:"h6"}},children:l.locales.failedToLoad})}),null==(p=h[w])?void 0:p.children]},b)}),"function"==typeof(null==l?void 0:l.children)?null==(m=null==l?void 0:l.children)?void 0:m.call(l,{isDialog:!1}):null==l?void 0:l.children,!y&&e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx(i.Button,{sx:{default:{position:"absolute",top:"50%",left:5,transform:"translateY(-50%)"}},genre:l.genre,size:l.size,icons:[{type:"id",name:"Arrow4",turn:90}],isWidthAsHeight:!0,isHiddenBorder:!0,isRadius:!0,onClick:()=>R(-1)}),e.jsxRuntimeExports.jsx(i.Button,{sx:{default:{position:"absolute",top:"50%",right:5,transform:"translateY(-50%)"}},genre:l.genre,size:l.size,icons:[{type:"id",name:"Arrow4",turn:-90}],isWidthAsHeight:!0,isHiddenBorder:!0,isRadius:!0,onClick:()=>R(1)}),e.jsxRuntimeExports.jsx(s.Stack,{sx:{default:{position:"absolute",bottom:5,left:"50%",transform:"translateX(-50%)",gap:"4px"}},children:h.map(t=>e.jsxRuntimeExports.jsx(i.SliderDot,{onClick:()=>k(t.id),initial:!1,animate:{scale:b===t.id?1.5:1,opacity:b===t.id?1:.5}},t.id))})]}),e.jsxRuntimeExports.jsx(i.Button,{sx:{default:{position:"absolute",bottom:5,right:5}},genre:l.genre,size:l.size,icons:[{type:"id",name:"Activity"}],isWidthAsHeight:!0,isHiddenBorder:!0,isRadius:!0,onClick:()=>S()})]})})};
2
+ //# sourceMappingURL=component.constants-4oL81SFS.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"component.constants-B-csc6ih.cjs","sources":["../src/hooks/use-image-slider/use.tsx","../src/components/image-slider/component.tsx","../src/components/image-slider/component.constants.tsx"],"sourcesContent":["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 { useImageSlider } from '@local/hooks/use-image-slider';\nimport { KEY_SIZE_DATA } from '@local/theme';\n\nimport { AnimatePresence, Variants } from 'framer-motion';\nimport { FC, useMemo } from 'react';\n\nimport { Button } from '../button';\nimport { Icon } from '../icon';\nimport { Image } from '../image';\nimport { Stack, StackMotion } from '../stack';\nimport { Typography } from '../typography';\nimport { ImageSliderProps, SliderDot, SliderImage } from '.';\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' color='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 { Button } from '../button';\nimport { Stack } from '../stack';\nimport { ImageSliderProps } from '.';\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":["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","SliderImage","style","variants","animate","transition","isLengthOne","drag","dragConstraints","left","right","dragElastic","onDragEnd","_","dragInfo","dragEndHandler","Image","sxStack","theme","alignItems","justifyContent","backgroundColor","palette","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","SliderDot","skipToImage","id","IMAGES","padding","flexGrow","isDisabled","sxTypography","weight","props","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","color","noImagesAvailable","top"],"mappings":"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"}
1
+ {"version":3,"file":"component.constants-4oL81SFS.cjs","sources":["../src/hooks/use-image-slider/use.tsx","../src/components/image-slider/component.tsx","../src/components/image-slider/component.constants.tsx"],"sourcesContent":["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 { useImageSlider } from '@local/hooks/use-image-slider';\nimport { KEY_SIZE_DATA } from '@local/theme';\n\nimport { AnimatePresence, Variants } from 'framer-motion';\nimport { FC, useMemo } from 'react';\n\nimport { Button } from '../button';\nimport { Icon } from '../icon';\nimport { Image } from '../image';\nimport { Stack, StackMotion } from '../stack';\nimport { Typography } from '../typography';\nimport { ImageSliderProps, SliderDot, SliderImage } from '.';\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' color='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 { Button } from '../button';\nimport { Stack } from '../stack';\nimport { ImageSliderProps } from '.';\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":["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","SliderImage","style","variants","animate","transition","isLengthOne","drag","dragConstraints","left","right","dragElastic","onDragEnd","_","dragInfo","dragEndHandler","Image","sxStack","theme","alignItems","justifyContent","backgroundColor","palette","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","SliderDot","skipToImage","id","IMAGES","padding","flexGrow","isDisabled","sxTypography","weight","props","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","color","noImagesAvailable","top"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { j as jsxRuntimeExports } from "./jsx-runtime-BrDlu8eK.js";
2
- import { bt as KEY_SIZE_DATA, V as SliderImage, aR as Typography, B as Button, W as SliderDot, I as Icon } from "./context.constants-ByIVCRij.js";
3
- import { I as Image } from "./component-BpwTWRxp.js";
2
+ import { bv as KEY_SIZE_DATA, X as SliderImage, aT as Typography, B as Button, Y as SliderDot, I as Icon } from "./context.constants-D8UVM6GL.js";
3
+ import { I as Image } from "./component-C-oN9gXq.js";
4
4
  import { b as Stack, c as StackMotion } from "./component-DEZX8aBs.js";
5
5
  import "styled-components";
6
6
  import "./context.constants-CZykW9B3.js";
@@ -734,4 +734,4 @@ export {
734
734
  ImageSlider as I,
735
735
  IMAGES as a
736
736
  };
737
- //# sourceMappingURL=component.constants-BkbucsSA.js.map
737
+ //# sourceMappingURL=component.constants-B3aCG9Aq.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"component.constants-BkbucsSA.js","sources":["../src/hooks/use-image-slider/use.tsx","../src/components/image-slider/component.tsx","../src/components/image-slider/component.constants.tsx"],"sourcesContent":["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 { useImageSlider } from '@local/hooks/use-image-slider';\nimport { KEY_SIZE_DATA } from '@local/theme';\n\nimport { AnimatePresence, Variants } from 'framer-motion';\nimport { FC, useMemo } from 'react';\n\nimport { Button } from '../button';\nimport { Icon } from '../icon';\nimport { Image } from '../image';\nimport { Stack, StackMotion } from '../stack';\nimport { Typography } from '../typography';\nimport { ImageSliderProps, SliderDot, SliderImage } from '.';\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' color='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 { Button } from '../button';\nimport { Stack } from '../stack';\nimport { ImageSliderProps } from '.';\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
+ {"version":3,"file":"component.constants-B3aCG9Aq.js","sources":["../src/hooks/use-image-slider/use.tsx","../src/components/image-slider/component.tsx","../src/components/image-slider/component.constants.tsx"],"sourcesContent":["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 { useImageSlider } from '@local/hooks/use-image-slider';\nimport { KEY_SIZE_DATA } from '@local/theme';\n\nimport { AnimatePresence, Variants } from 'framer-motion';\nimport { FC, useMemo } from 'react';\n\nimport { Button } from '../button';\nimport { Icon } from '../icon';\nimport { Image } from '../image';\nimport { Stack, StackMotion } from '../stack';\nimport { Typography } from '../typography';\nimport { ImageSliderProps, SliderDot, SliderImage } from '.';\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' color='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 { Button } from '../button';\nimport { Stack } from '../stack';\nimport { ImageSliderProps } from '.';\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,2 +1,2 @@
1
- "use strict";const t=require("./jsx-runtime-BcGej2Kr.cjs"),n=require("framer-motion"),e=require("react"),i=require("./context.constants-CHzb-q9a.cjs"),o=require("./component-5Utdcc2G.cjs"),s=12;exports.DEFAULT_COMPONENT_PAGINATION_GAP=s,exports.Pagination=l=>{const a=e.useMemo(()=>0==l.index&&!l.isInfinity,[l.index,l.isInfinity]),r=e.useMemo(()=>l.index==l.length-1&&!l.isInfinity,[l.index,l.isInfinity,l.length]),u=e.useMemo(()=>l.gap??s,[l.gap]),x=e.useMemo(()=>l.lengthData??{},[l.lengthData]),d=e.useCallback(()=>{0==l.index?l.isInfinity&&l.changeIndex(l.length-1):l.changeIndex(l.index-1)},[l]),c=e.useCallback(()=>{l.index==l.length-1?l.isInfinity&&l.changeIndex(0):l.changeIndex(l.index+1)},[l]),h=e.useMemo(()=>{const t=Math.floor(l.viewQuantity/2),n=Math.max(0,Math.min(l.index-t,l.length-l.viewQuantity)),e=Math.min(l.length,n+l.viewQuantity);return Array.from({length:e-n},(t,e)=>n+e)},[l.index,l.viewQuantity,l.length]);return t.jsxRuntimeExports.jsxs(o.Stack,{sx:t=>({...null==l?void 0:l.sx,default:{height:"fit-content",gap:`${u}px`,...(null==l?void 0:l.sx)?"function"==typeof(null==l?void 0:l.sx)?null==l?void 0:l.sx(t).default:null==l?void 0:l.sx.default:{}}}),children:[t.jsxRuntimeExports.jsx(i.Button,{isDisabled:a,isHidden:a,onClick:d,...l.buttonControl,icons:[{type:"id",name:"Arrow2",order:-1,turn:90}],children:!l.buttonControl.isWidthAsHeight&&l.locale.prev}),t.jsxRuntimeExports.jsx(o.Stack,{sx:{default:{width:"fit-content",height:"fit-content",display:"flex",gap:`${u}px`,alignItems:"center",justifyContent:"flex-start"}},children:Array.from({length:l.length}).map((e,o)=>{var s,a;const r=h.includes(o);return t.jsxRuntimeExports.jsx(n.AnimatePresence,{mode:"popLayout",children:r&&t.jsxRuntimeExports.jsx(n.motion.div,{layout:!0,initial:{opacity:0,scale:.8},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.8},transition:{duration:1,ease:"backOut"},children:t.jsxRuntimeExports.jsx(i.Button,{isWidthAsHeight:!0,...o===l.index?l.buttonCount.active:l.buttonCount.inactive,...null==x?void 0:x[o],onClick:()=>l.changeIndex(o),children:(null==(a=null==(s=null==x?void 0:x[o])?void 0:s.icons)?void 0:a.length)?null:o+1})})},o)})}),t.jsxRuntimeExports.jsx(i.Button,{isDisabled:r,isHidden:r,onClick:c,...l.buttonControl,icons:[{type:"id",name:"Arrow2",turn:-90}],children:!l.buttonControl.isWidthAsHeight&&l.locale.next})]})};
2
- //# sourceMappingURL=component.constants-ECVKYlcl.cjs.map
1
+ "use strict";const t=require("./jsx-runtime-BcGej2Kr.cjs"),n=require("framer-motion"),e=require("react"),i=require("./context.constants-CPdsUeiQ.cjs"),o=require("./component-5Utdcc2G.cjs"),s=12;exports.DEFAULT_COMPONENT_PAGINATION_GAP=s,exports.Pagination=l=>{const a=e.useMemo(()=>0==l.index&&!l.isInfinity,[l.index,l.isInfinity]),r=e.useMemo(()=>l.index==l.length-1&&!l.isInfinity,[l.index,l.isInfinity,l.length]),u=e.useMemo(()=>l.gap??s,[l.gap]),x=e.useMemo(()=>l.lengthData??{},[l.lengthData]),d=e.useCallback(()=>{0==l.index?l.isInfinity&&l.changeIndex(l.length-1):l.changeIndex(l.index-1)},[l]),c=e.useCallback(()=>{l.index==l.length-1?l.isInfinity&&l.changeIndex(0):l.changeIndex(l.index+1)},[l]),h=e.useMemo(()=>{const t=Math.floor(l.viewQuantity/2),n=Math.max(0,Math.min(l.index-t,l.length-l.viewQuantity)),e=Math.min(l.length,n+l.viewQuantity);return Array.from({length:e-n},(t,e)=>n+e)},[l.index,l.viewQuantity,l.length]);return t.jsxRuntimeExports.jsxs(o.Stack,{sx:t=>({...null==l?void 0:l.sx,default:{height:"fit-content",gap:`${u}px`,...(null==l?void 0:l.sx)?"function"==typeof(null==l?void 0:l.sx)?null==l?void 0:l.sx(t).default:null==l?void 0:l.sx.default:{}}}),children:[t.jsxRuntimeExports.jsx(i.Button,{isDisabled:a,isHidden:a,onClick:d,...l.buttonControl,icons:[{type:"id",name:"Arrow2",order:-1,turn:90}],children:!l.buttonControl.isWidthAsHeight&&l.locale.prev}),t.jsxRuntimeExports.jsx(o.Stack,{sx:{default:{width:"fit-content",height:"fit-content",display:"flex",gap:`${u}px`,alignItems:"center",justifyContent:"flex-start"}},children:Array.from({length:l.length}).map((e,o)=>{var s,a;const r=h.includes(o);return t.jsxRuntimeExports.jsx(n.AnimatePresence,{mode:"popLayout",children:r&&t.jsxRuntimeExports.jsx(n.motion.div,{layout:!0,initial:{opacity:0,scale:.8},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.8},transition:{duration:1,ease:"backOut"},children:t.jsxRuntimeExports.jsx(i.Button,{isWidthAsHeight:!0,...o===l.index?l.buttonCount.active:l.buttonCount.inactive,...null==x?void 0:x[o],onClick:()=>l.changeIndex(o),children:(null==(a=null==(s=null==x?void 0:x[o])?void 0:s.icons)?void 0:a.length)?null:o+1})})},o)})}),t.jsxRuntimeExports.jsx(i.Button,{isDisabled:r,isHidden:r,onClick:c,...l.buttonControl,icons:[{type:"id",name:"Arrow2",turn:-90}],children:!l.buttonControl.isWidthAsHeight&&l.locale.next})]})};
2
+ //# sourceMappingURL=component.constants-DIRNAI_M.cjs.map