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

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 (100) hide show
  1. package/build/build-info.txt +3 -3
  2. package/build/{component-DdJt3LEF.cjs → component-B9dFCQcm.cjs} +2 -2
  3. package/build/{component-DdJt3LEF.cjs.map → component-B9dFCQcm.cjs.map} +1 -1
  4. package/build/{component-GtWqnaqk.js → component-BFOHa1GY.js} +35 -17
  5. package/build/component-BFOHa1GY.js.map +1 -0
  6. package/build/{component-DnJo66DS.cjs → component-BLWcOf3A.cjs} +2 -2
  7. package/build/{component-DnJo66DS.cjs.map → component-BLWcOf3A.cjs.map} +1 -1
  8. package/build/component-BkYIZFlr.cjs +245 -0
  9. package/build/component-BkYIZFlr.cjs.map +1 -0
  10. package/build/{component-feWPgACX.js → component-CFKFLOAw.js} +2 -2
  11. package/build/{component-feWPgACX.js.map → component-CFKFLOAw.js.map} +1 -1
  12. package/build/{component-P-3bwi3_.js → component-CPzlyKwR.js} +3 -3
  13. package/build/{component-P-3bwi3_.js.map → component-CPzlyKwR.js.map} +1 -1
  14. package/build/{component-CN6att4f.js → component-CeuA5Ry0.js} +2 -2
  15. package/build/{component-CN6att4f.js.map → component-CeuA5Ry0.js.map} +1 -1
  16. package/build/{component-cRmWWDr_.cjs → component-DkEqMT7w.cjs} +2 -2
  17. package/build/{component-cRmWWDr_.cjs.map → component-DkEqMT7w.cjs.map} +1 -1
  18. package/build/component-button-group.cjs.js +1 -1
  19. package/build/component-button-group.es.js +1 -1
  20. package/build/component-button.cjs.js +1 -1
  21. package/build/component-button.es.js +1 -1
  22. package/build/component-checkbox-group.cjs.js +1 -1
  23. package/build/component-checkbox-group.es.js +1 -1
  24. package/build/component-checkbox.cjs.js +1 -1
  25. package/build/component-checkbox.es.js +1 -1
  26. package/build/component-date-picker.cjs.js +1 -1
  27. package/build/component-date-picker.es.js +1 -1
  28. package/build/component-image-button.cjs.js +1 -1
  29. package/build/component-image-button.es.js +1 -1
  30. package/build/component-image-select.cjs.js +1 -1
  31. package/build/component-image-select.es.js +1 -1
  32. package/build/component-image-slider.cjs.js +1 -1
  33. package/build/component-image-slider.es.js +1 -1
  34. package/build/component-image.cjs.js +1 -1
  35. package/build/component-image.es.js +1 -1
  36. package/build/component-map.cjs.js +1 -1
  37. package/build/component-map.es.js +1 -1
  38. package/build/component-pagination.cjs.js +1 -1
  39. package/build/component-pagination.es.js +1 -1
  40. package/build/component-select.cjs.js +1 -1
  41. package/build/component-select.es.js +1 -1
  42. package/build/component-tooltip.cjs.js +1 -1
  43. package/build/component-tooltip.es.js +1 -1
  44. package/build/component-typography.cjs.js +1 -1
  45. package/build/component-typography.es.js +1 -1
  46. package/build/{component.components-C-EEYFsd.js → component.components-B2-Gqe0K.js} +2 -2
  47. package/build/{component.components-C-EEYFsd.js.map → component.components-B2-Gqe0K.js.map} +1 -1
  48. package/build/{component.components-CC3IeZon.cjs → component.components-JtwTIPAB.cjs} +2 -2
  49. package/build/{component.components-CC3IeZon.cjs.map → component.components-JtwTIPAB.cjs.map} +1 -1
  50. package/build/{component.constants-34RZJIiQ.js → component.constants-CpnBclql.js} +2 -2
  51. package/build/{component.constants-34RZJIiQ.js.map → component.constants-CpnBclql.js.map} +1 -1
  52. package/build/{component.constants-BxnfHAYp.js → component.constants-DJzogH6s.js} +4 -4
  53. package/build/{component.constants-BxnfHAYp.js.map → component.constants-DJzogH6s.js.map} +1 -1
  54. package/build/{component.constants-CpRgeAIu.cjs → component.constants-DoZ61vWX.cjs} +2 -2
  55. package/build/{component.constants-CpRgeAIu.cjs.map → component.constants-DoZ61vWX.cjs.map} +1 -1
  56. package/build/{component.constants-D6AJ1xmO.cjs → component.constants-DxcsPL8D.cjs} +2 -2
  57. package/build/{component.constants-D6AJ1xmO.cjs.map → component.constants-DxcsPL8D.cjs.map} +1 -1
  58. package/build/{component.styles-BEaqQuF_.js → component.styles-BYVYSgCZ.js} +9 -7
  59. package/build/component.styles-BYVYSgCZ.js.map +1 -0
  60. package/build/component.styles-CAN6t4un.cjs +10 -0
  61. package/build/component.styles-CAN6t4un.cjs.map +1 -0
  62. package/build/{component.styles-PNgt36ZD.cjs → component.styles-CEDSDKXy.cjs} +2 -2
  63. package/build/{component.styles-PNgt36ZD.cjs.map → component.styles-CEDSDKXy.cjs.map} +1 -1
  64. package/build/{component.styles-DbWj2stq.cjs → component.styles-COwP0J6t.cjs} +2 -2
  65. package/build/{component.styles-DbWj2stq.cjs.map → component.styles-COwP0J6t.cjs.map} +1 -1
  66. package/build/{component.styles-DTnknwt_.js → component.styles-CxPmtiIy.js} +2 -2
  67. package/build/{component.styles-DTnknwt_.js.map → component.styles-CxPmtiIy.js.map} +1 -1
  68. package/build/{component.styles-mcm1LgEr.js → component.styles-Czdj4SAF.js} +3 -3
  69. package/build/{component.styles-mcm1LgEr.js.map → component.styles-Czdj4SAF.js.map} +1 -1
  70. package/build/{component.styles-Bb7_KygZ.cjs → component.styles-DhXp_cmE.cjs} +2 -2
  71. package/build/{component.styles-Bb7_KygZ.cjs.map → component.styles-DhXp_cmE.cjs.map} +1 -1
  72. package/build/{component.styles-DWS6xT-y.js → component.styles-Dz33wmri.js} +2 -2
  73. package/build/{component.styles-DWS6xT-y.js.map → component.styles-Dz33wmri.js.map} +1 -1
  74. package/build/{component.styles-DwtZ7CY4.js → component.styles-an3dM3la.js} +5 -5
  75. package/build/{component.styles-DwtZ7CY4.js.map → component.styles-an3dM3la.js.map} +1 -1
  76. package/build/{component.styles-C4xnWrvJ.cjs → component.styles-dFnW-DgR.cjs} +2 -2
  77. package/build/{component.styles-C4xnWrvJ.cjs.map → component.styles-dFnW-DgR.cjs.map} +1 -1
  78. package/build/{component.types-BhmQrqBu.js → component.types-B2YOqKzt.js} +4 -4
  79. package/build/{component.types-BhmQrqBu.js.map → component.types-B2YOqKzt.js.map} +1 -1
  80. package/build/{component.types-CfR3RBsV.cjs → component.types-DaiIANRt.cjs} +2 -2
  81. package/build/{component.types-CfR3RBsV.cjs.map → component.types-DaiIANRt.cjs.map} +1 -1
  82. package/build/context-sonner.cjs.js +1 -1
  83. package/build/context-sonner.es.js +1 -1
  84. package/build/{context.constants-DOMoMUoD.js → context.constants-C4xdihsb.js} +2 -2
  85. package/build/{context.constants-DOMoMUoD.js.map → context.constants-C4xdihsb.js.map} +1 -1
  86. package/build/{context.constants-cm50ZUiS.cjs → context.constants-D0P7bVk9.cjs} +2 -2
  87. package/build/{context.constants-cm50ZUiS.cjs.map → context.constants-D0P7bVk9.cjs.map} +1 -1
  88. package/build/index.cjs.js +1 -1
  89. package/build/index.es.js +14 -14
  90. package/build/{use-_V1SKE0-.js → use-CuHzkWqv.js} +3 -3
  91. package/build/{use-_V1SKE0-.js.map → use-CuHzkWqv.js.map} +1 -1
  92. package/build/{use-ClugPshj.cjs → use-DWNgOa9w.cjs} +2 -2
  93. package/build/{use-ClugPshj.cjs.map → use-DWNgOa9w.cjs.map} +1 -1
  94. package/package.json +1 -1
  95. package/build/component-BVnHSTJd.cjs +0 -245
  96. package/build/component-BVnHSTJd.cjs.map +0 -1
  97. package/build/component-GtWqnaqk.js.map +0 -1
  98. package/build/component.styles-B-bndnRM.cjs +0 -10
  99. package/build/component.styles-B-bndnRM.cjs.map +0 -1
  100. package/build/component.styles-BEaqQuF_.js.map +0 -1
@@ -1,11 +1,11 @@
1
1
  import { j as jsxRuntimeExports } from "./jsx-runtime-BrDlu8eK.js";
2
2
  import { motion, AnimatePresence } from "framer-motion";
3
3
  import { useMemo, useState, useCallback, useEffect } from "react";
4
- import { c as Button } from "./component-CN6att4f.js";
5
- import { I as Image } from "./component.styles-BEaqQuF_.js";
4
+ import { c as Button } from "./component-CeuA5Ry0.js";
5
+ import { I as Image } from "./component.styles-BYVYSgCZ.js";
6
6
  import styled from "styled-components";
7
7
  import { b as Stack, c as StackMotion } from "./component-mzzOCXSx.js";
8
- import { i as Typography } from "./component-GtWqnaqk.js";
8
+ import { i as Typography } from "./component-BFOHa1GY.js";
9
9
  import { a as useDialog } from "./context.constants-BCpaUfFz.js";
10
10
  import { K as KEY_SIZE_DATA } from "./theme.global-BgERDJ4e.js";
11
11
  import { I as Icon } from "./component.styles-DS0ofW1Y.js";
@@ -760,4 +760,4 @@ export {
760
760
  SliderDot as a,
761
761
  IMAGES as b
762
762
  };
763
- //# sourceMappingURL=component.constants-BxnfHAYp.js.map
763
+ //# sourceMappingURL=component.constants-DJzogH6s.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"component.constants-BxnfHAYp.js","sources":["../src/components/image-slider/component.styles.tsx","../src/hooks/use-image-slider/use.tsx","../src/components/image-slider/component.tsx","../src/components/image-slider/component.constants.tsx"],"sourcesContent":["import { motion } from 'framer-motion';\nimport styled from 'styled-components';\n\nexport const SliderImage = styled(motion.div)`\n display: flex;\n position: absolute;\n height: 100%;\n width: 100%;\n touch-action: pan-y;\n &:hover {\n cursor: grab;\n }\n\n &:active {\n cursor: grabbing;\n }\n`;\n\nexport const SliderDot = styled(motion.div)`\n width: 6px;\n height: 6px;\n background-color: ${(props) => props.theme.palette.whiteStandard};\n border-radius: 5px;\n opacity: 0.8;\n cursor: pointer;\n`;\n","import { Button } from '@local/components/button';\nimport { Image } from '@local/components/image';\nimport { ImageSliderProps, SliderDot, SliderImage } from '@local/components/image-slider';\nimport { Stack } from '@local/components/stack';\nimport { Typography } from '@local/components/typography';\nimport { useDialog, useDialogProps } from '@local/contexts/context-dialog';\nimport { KEY_SIZE_DATA } from '@local/theme';\n\nimport { AnimatePresence, PanInfo, Variants } from 'framer-motion';\nimport { FC, useCallback, useEffect, useMemo, useState } from 'react';\n\nimport { useImageSliderProps } from '.';\n\nexport const useImageSlider = (props: useImageSliderProps) => {\n const { onIndexChange } = props;\n\n const size = useMemo(() => KEY_SIZE_DATA[props.size], [props.size]);\n const br = useMemo(() => `${size.radius}px`, [size.radius]);\n\n const images = useMemo(() => props.images, [props.images]);\n\n const [{ activeImageId, direction }, setActiveImage] = useState({\n activeImageId: images?.[0]?.id ?? null,\n direction: 0,\n });\n const isLengthOne = useMemo(() => images?.length === 1, [images]);\n const isLengthZero = useMemo(() => images?.length === 0, [images]);\n\n const activeImageIndex = useMemo(() => images.findIndex((img) => img.id === activeImageId), [activeImageId, images]);\n\n const swipeToImage = useCallback(\n (swipeDirection: number) => {\n const currentIndex = images.findIndex((img) => img.id === activeImageId);\n const nextIndex = (currentIndex + swipeDirection + images.length) % images.length;\n setActiveImage({ activeImageId: images[nextIndex].id, direction: swipeDirection });\n },\n [activeImageId, images],\n );\n const dragEndHandler = useCallback(\n (dragInfo: PanInfo) => {\n const { offset, velocity } = dragInfo;\n const swipeThreshold = 50;\n const swipePower = Math.abs(offset.x) * velocity.x;\n\n if (swipePower > 500 || offset.x > swipeThreshold) {\n swipeToImage(-1);\n } else if (swipePower < -500 || offset.x < -swipeThreshold) {\n swipeToImage(1);\n }\n },\n [swipeToImage],\n );\n const skipToImage = useCallback(\n (imageId: number) => {\n const currentIndex = images.findIndex((img) => img.id === activeImageId);\n const newIndex = images.findIndex((img) => img.id === imageId);\n if (newIndex === -1 || newIndex === currentIndex) return;\n\n const direction = newIndex > currentIndex ? 1 : -1;\n setActiveImage({ activeImageId: imageId, direction });\n },\n [activeImageId, images],\n );\n\n useEffect(() => {\n if (activeImageId) onIndexChange?.(activeImageId);\n }, [activeImageId, onIndexChange]);\n\n const { add } = useDialog<ComponentHandleAddProps>({\n br: br,\n dragEndHandler: dragEndHandler,\n images: images,\n children: props.children,\n activeImageIndex: activeImageIndex,\n activeImageId: activeImageId,\n swipeToImage: swipeToImage,\n skipToImage: skipToImage,\n direction: direction,\n aspect: props.imageSettings.aspect,\n genre: props.genre,\n size: props.size,\n failedToLoad: props.locales.failedToLoad,\n isLengthOne: isLengthOne,\n propsDialog: {\n borderRadius: br,\n padding: '0',\n background: 'whiteStandard',\n },\n });\n const handleAdd = useCallback(() => {\n add({\n content: (params, remove) => <ComponentHandleAdd params={params} remove={remove} />,\n });\n }, [add]);\n\n return {\n isLengthZero,\n direction,\n activeImageId,\n isLengthOne,\n dragEndHandler,\n activeImageIndex,\n swipeToImage,\n skipToImage,\n handleAdd,\n };\n};\nconst sliderVariants: Variants = {\n initial: (direction) => ({\n x: direction > 0 ? '100%' : '-100%',\n scale: 1,\n opacity: 0,\n }),\n active: { x: 0, scale: 1, opacity: 1 },\n exit: (direction) => ({\n x: direction > 0 ? '-100%' : '100%',\n scale: 1,\n opacity: 0.2,\n }),\n};\nconst sliderTransition = {\n duration: 0.3,\n ease: [0.56, 0.03, 0.12, 1.04],\n};\n\ntype ComponentHandleAddProps = {\n br?: string;\n dragEndHandler: (dragInfo: PanInfo) => void;\n images: ImageSliderProps['images'];\n children?: ImageSliderProps['children'];\n activeImageIndex: number;\n activeImageId: number | null;\n swipeToImage: (swipeDirection: number) => void;\n skipToImage: (imageId: number) => void;\n direction: number;\n aspect: number;\n failedToLoad: string;\n isLengthOne: boolean;\n} & Pick<ImageSliderProps, 'genre' | 'size'>;\n\nconst ComponentHandleAdd: FC<{\n params?: useDialogProps<ComponentHandleAddProps>;\n remove?: () => void;\n}> = ({ params, remove }) => {\n return (\n <Stack\n sx={{\n default: {\n position: 'relative',\n overflow: 'hidden',\n aspectRatio: `${params?.aspect! * 2} / 2`,\n width: 'auto',\n maxWidth: '70dvw',\n height: '85dvh',\n borderRadius: params?.br,\n },\n tablet: {\n maxWidth: '95dvw',\n },\n }}\n >\n <AnimatePresence initial={false} custom={params?.direction}>\n <SliderImage\n key={params?.activeImageId}\n style={{\n overflow: 'hidden',\n borderRadius: params?.br,\n }}\n custom={params?.direction}\n variants={sliderVariants}\n initial='initial'\n animate='active'\n exit='exit'\n transition={sliderTransition}\n {...(!params?.isLengthOne\n ? {\n drag: 'x',\n dragConstraints: { left: 0, right: 0 },\n dragElastic: 0.5,\n onDragEnd: (_, dragInfo) => params?.dragEndHandler(dragInfo),\n }\n : {})}\n >\n <Image\n sxStack={(theme) => ({\n default: {\n width: '100%',\n height: '100%',\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: theme.palette.black10,\n position: 'absolute',\n pointerEvents: 'none',\n },\n })}\n isShowBeforeImage\n sxImage={{\n default: {\n objectFit: 'contain',\n },\n }}\n alt={(params?.images ?? [])?.[params?.activeImageIndex ?? 0]?.imageSrc}\n src={(params?.images ?? [])?.[params?.activeImageIndex ?? 0]?.imageSrc}\n componentFallback={\n <Typography\n sx={{\n default: {\n variant: 'h6',\n },\n }}\n >\n {params?.failedToLoad}\n </Typography>\n }\n />\n {(params?.images ?? [])?.[params?.activeImageIndex ?? 0]?.children}\n </SliderImage>\n </AnimatePresence>\n {typeof params?.children === 'function' ? params?.children?.({ isDialog: true }) : params?.children}\n\n <Button\n sx={{\n default: {\n position: 'absolute',\n bottom: 15,\n right: 15,\n },\n }}\n genre={params?.genre ?? 'product'}\n size={params?.size ?? 'medium'}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isRadius\n onClick={() => remove?.()}\n />\n {!params?.isLengthOne ? (\n <>\n <Stack\n sx={{\n default: {\n position: 'absolute',\n bottom: 15,\n left: 15,\n gap: '8px',\n },\n }}\n >\n <Button\n genre={params?.genre ?? 'product'}\n size={params?.size ?? 'medium'}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n turn: 90,\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isPlaystationEffect\n isRadius\n onClick={() => params?.swipeToImage?.(-1)}\n />\n <Button\n genre={params?.genre ?? 'product'}\n size={params?.size ?? 'medium'}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n turn: -90,\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isPlaystationEffect\n isRadius\n onClick={() => params?.swipeToImage?.(1)}\n />\n </Stack>\n <Stack\n sx={{\n default: {\n position: 'absolute',\n bottom: 15,\n left: '50%',\n transform: 'translateX(-50%)',\n gap: '4px',\n },\n }}\n >\n {(params?.images ?? [])?.map((i) => (\n <SliderDot\n onClick={() => params?.skipToImage?.(i.id)}\n key={i.id}\n initial={false}\n animate={{\n scale: params?.activeImageId === i.id ? 1.5 : 1,\n opacity: params?.activeImageId === i.id ? 1 : 0.5,\n }}\n />\n ))}\n </Stack>\n </>\n ) : null}\n </Stack>\n );\n};\n","import { AnimatePresence, Variants } from 'framer-motion';\nimport { FC, useMemo } from 'react';\n\nimport { useImageSlider } from '@local/hooks/use-image-slider';\nimport { KEY_SIZE_DATA } from '@local/theme';\n\nimport { ImageSliderProps, SliderDot, SliderImage } from '.';\nimport { Button } from '../button';\nimport { Icon } from '../icon';\nimport { Image } from '../image';\nimport { Stack, StackMotion } from '../stack';\nimport { Typography } from '../typography';\n\nexport const ImageSlider: FC<ImageSliderProps> = (props) => {\n const { onIndexChange } = props;\n const images = useMemo(() => props.images, [props.images]);\n const size = useMemo(() => KEY_SIZE_DATA[props.size], [props.size]);\n const br = useMemo(() => `${size.radius}px`, [size.radius]);\n\n const {\n isLengthZero,\n direction,\n activeImageId,\n isLengthOne,\n dragEndHandler,\n activeImageIndex,\n swipeToImage,\n skipToImage,\n handleAdd,\n } = useImageSlider({\n genre: props.genre,\n size: props.size,\n images: images,\n imageSettings: props.imageSettings,\n locales: props.locales,\n onIndexChange: onIndexChange,\n children: props.children,\n });\n return (\n <StackMotion\n {...props.propsStack}\n sx={(theme) => ({\n ...props.propsStack?.sx,\n default: {\n borderRadius: br,\n flexDirection: 'column',\n alignItems: 'center',\n overflow: 'hidden',\n width: 'auto',\n maxWidth: '70dvw',\n height: '85dvh',\n ...(props.propsStack?.sx\n ? typeof props.propsStack?.sx === 'function'\n ? props.propsStack?.sx(theme).default\n : props.propsStack?.sx.default\n : {}),\n },\n tablet: {\n maxWidth: '95dvw',\n ...(props.propsStack?.sx\n ? typeof props.propsStack?.sx === 'function'\n ? props.propsStack?.sx(theme).tablet\n : props.propsStack?.sx.tablet\n : {}),\n },\n })}\n >\n {props.isLoading ? (\n <Stack\n sx={{\n default: {\n width: '100%',\n height: '100%',\n position: 'relative',\n overflow: 'hidden',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n }}\n >\n <Icon size='large' type='loading' primaryColor='blueFocus' name='Line' />\n </Stack>\n ) : !isLengthZero ? (\n <Stack\n sx={{\n default: {\n width: '100%',\n height: '100%',\n position: 'relative',\n overflow: 'hidden',\n },\n }}\n >\n <AnimatePresence initial={false} custom={direction}>\n <SliderImage\n key={activeImageId}\n style={{\n overflow: 'hidden',\n borderRadius: br,\n }}\n custom={direction}\n variants={sliderVariants}\n initial='initial'\n animate='active'\n exit='exit'\n transition={sliderTransition}\n {...(!isLengthOne\n ? {\n drag: 'x',\n dragConstraints: { left: 0, right: 0 },\n dragElastic: 0.5,\n onDragEnd: (_, dragInfo) => dragEndHandler(dragInfo),\n }\n : {})}\n >\n <Image\n sxStack={(theme) => ({\n default: {\n width: '100%',\n height: '100%',\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: theme.palette.black10,\n position: 'absolute',\n pointerEvents: 'none',\n },\n })}\n alt={images[activeImageIndex]?.imageSrc}\n src={images[activeImageIndex]?.imageSrc}\n componentFallback={\n <Typography\n sx={{\n default: {\n variant: 'h6',\n },\n }}\n >\n {props.locales.failedToLoad}\n </Typography>\n }\n />\n {images[activeImageIndex]?.children}\n </SliderImage>\n </AnimatePresence>\n {typeof props?.children === 'function' ? props?.children?.({ isDialog: false }) : props?.children}\n\n {!isLengthOne && (\n <>\n <Button\n sx={{\n default: {\n position: 'absolute',\n top: '50%',\n left: 5,\n transform: 'translateY(-50%)',\n },\n }}\n genre={props.genre}\n size={props.size}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n turn: 90,\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isRadius\n onClick={() => swipeToImage(-1)}\n />\n <Button\n sx={{\n default: {\n position: 'absolute',\n top: '50%',\n right: 5,\n transform: 'translateY(-50%)',\n },\n }}\n genre={props.genre}\n size={props.size}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n turn: -90,\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isRadius\n onClick={() => swipeToImage(1)}\n />\n <Stack\n sx={{\n default: {\n position: 'absolute',\n bottom: 5,\n left: '50%',\n transform: 'translateX(-50%)',\n gap: '4px',\n },\n }}\n >\n {images.map((i) => (\n <SliderDot\n onClick={() => skipToImage(i.id)}\n key={i.id}\n initial={false}\n animate={{\n scale: activeImageId === i.id ? 1.5 : 1,\n opacity: activeImageId === i.id ? 1 : 0.5,\n }}\n />\n ))}\n </Stack>\n </>\n )}\n\n <Button\n sx={{\n default: {\n position: 'absolute',\n bottom: 5,\n right: 5,\n },\n }}\n genre={props.genre}\n size={props.size}\n icons={[\n {\n type: 'id',\n name: 'Activity',\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isRadius\n onClick={() => handleAdd()}\n />\n </Stack>\n ) : (\n <Stack\n sx={{\n default: {\n width: '100%',\n height: '100%',\n position: 'relative',\n overflow: 'hidden',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n }}\n >\n <Typography\n sx={{\n default: {\n variant: 'h6',\n },\n }}\n >\n {props.locales.noImagesAvailable}\n </Typography>\n </Stack>\n )}\n </StackMotion>\n );\n};\nconst sliderVariants: Variants = {\n initial: (direction) => ({\n x: direction > 0 ? '100%' : '-100%',\n scale: 1,\n opacity: 0,\n }),\n active: { x: 0, scale: 1, opacity: 1 },\n exit: (direction) => ({\n x: direction > 0 ? '-100%' : '100%',\n scale: 1,\n opacity: 0.2,\n }),\n};\nconst sliderTransition = {\n duration: 0.3,\n ease: [0.56, 0.03, 0.12, 1.04],\n};\n","import 'styled-components';\n\nimport { ImageSliderProps } from '.';\nimport { Button } from '../button';\nimport { Stack } from '../stack';\n\nexport const IMAGES: ImageSliderProps['images'] = [\n {\n id: 0,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://drupal-prod.visitcalifornia.com/sites/default/files/styles/fluid_1920/public/2020-06/VC_PlacesToVisit_LosAngelesCounty_RF_1170794243.jpg.webp?itok=46pJYz8v',\n },\n {\n id: 1,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://images.unsplash.com/flagged/photo-1575555201693-7cd442b8023f?fm=jpg&q=60&w=3000&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxzZWFyY2h8Mnx8bG9zJTIwYW5nZWxlc3xlbnwwfHwwfHx8MA%3D%3D',\n },\n {\n id: 2,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://img.goodfon.com/original/2048x1319/8/29/ssha-kaliforniia-los-andzheles-los-angeles-doma-neboskreby-s.jpg',\n },\n {\n id: 3,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://images.pexels.com/photos/2231756/pexels-photo-2231756.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=500',\n },\n {\n id: 4,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://images.pexels.com/photos/1813157/pexels-photo-1813157.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=500',\n },\n];\n"],"names":["direction","jsx","sliderVariants","sliderTransition","jsxs","Fragment","_a","_b","_c","_d"],"mappings":"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"}
1
+ {"version":3,"file":"component.constants-DJzogH6s.js","sources":["../src/components/image-slider/component.styles.tsx","../src/hooks/use-image-slider/use.tsx","../src/components/image-slider/component.tsx","../src/components/image-slider/component.constants.tsx"],"sourcesContent":["import { motion } from 'framer-motion';\nimport styled from 'styled-components';\n\nexport const SliderImage = styled(motion.div)`\n display: flex;\n position: absolute;\n height: 100%;\n width: 100%;\n touch-action: pan-y;\n &:hover {\n cursor: grab;\n }\n\n &:active {\n cursor: grabbing;\n }\n`;\n\nexport const SliderDot = styled(motion.div)`\n width: 6px;\n height: 6px;\n background-color: ${(props) => props.theme.palette.whiteStandard};\n border-radius: 5px;\n opacity: 0.8;\n cursor: pointer;\n`;\n","import { Button } from '@local/components/button';\nimport { Image } from '@local/components/image';\nimport { ImageSliderProps, SliderDot, SliderImage } from '@local/components/image-slider';\nimport { Stack } from '@local/components/stack';\nimport { Typography } from '@local/components/typography';\nimport { useDialog, useDialogProps } from '@local/contexts/context-dialog';\nimport { KEY_SIZE_DATA } from '@local/theme';\n\nimport { AnimatePresence, PanInfo, Variants } from 'framer-motion';\nimport { FC, useCallback, useEffect, useMemo, useState } from 'react';\n\nimport { useImageSliderProps } from '.';\n\nexport const useImageSlider = (props: useImageSliderProps) => {\n const { onIndexChange } = props;\n\n const size = useMemo(() => KEY_SIZE_DATA[props.size], [props.size]);\n const br = useMemo(() => `${size.radius}px`, [size.radius]);\n\n const images = useMemo(() => props.images, [props.images]);\n\n const [{ activeImageId, direction }, setActiveImage] = useState({\n activeImageId: images?.[0]?.id ?? null,\n direction: 0,\n });\n const isLengthOne = useMemo(() => images?.length === 1, [images]);\n const isLengthZero = useMemo(() => images?.length === 0, [images]);\n\n const activeImageIndex = useMemo(() => images.findIndex((img) => img.id === activeImageId), [activeImageId, images]);\n\n const swipeToImage = useCallback(\n (swipeDirection: number) => {\n const currentIndex = images.findIndex((img) => img.id === activeImageId);\n const nextIndex = (currentIndex + swipeDirection + images.length) % images.length;\n setActiveImage({ activeImageId: images[nextIndex].id, direction: swipeDirection });\n },\n [activeImageId, images],\n );\n const dragEndHandler = useCallback(\n (dragInfo: PanInfo) => {\n const { offset, velocity } = dragInfo;\n const swipeThreshold = 50;\n const swipePower = Math.abs(offset.x) * velocity.x;\n\n if (swipePower > 500 || offset.x > swipeThreshold) {\n swipeToImage(-1);\n } else if (swipePower < -500 || offset.x < -swipeThreshold) {\n swipeToImage(1);\n }\n },\n [swipeToImage],\n );\n const skipToImage = useCallback(\n (imageId: number) => {\n const currentIndex = images.findIndex((img) => img.id === activeImageId);\n const newIndex = images.findIndex((img) => img.id === imageId);\n if (newIndex === -1 || newIndex === currentIndex) return;\n\n const direction = newIndex > currentIndex ? 1 : -1;\n setActiveImage({ activeImageId: imageId, direction });\n },\n [activeImageId, images],\n );\n\n useEffect(() => {\n if (activeImageId) onIndexChange?.(activeImageId);\n }, [activeImageId, onIndexChange]);\n\n const { add } = useDialog<ComponentHandleAddProps>({\n br: br,\n dragEndHandler: dragEndHandler,\n images: images,\n children: props.children,\n activeImageIndex: activeImageIndex,\n activeImageId: activeImageId,\n swipeToImage: swipeToImage,\n skipToImage: skipToImage,\n direction: direction,\n aspect: props.imageSettings.aspect,\n genre: props.genre,\n size: props.size,\n failedToLoad: props.locales.failedToLoad,\n isLengthOne: isLengthOne,\n propsDialog: {\n borderRadius: br,\n padding: '0',\n background: 'whiteStandard',\n },\n });\n const handleAdd = useCallback(() => {\n add({\n content: (params, remove) => <ComponentHandleAdd params={params} remove={remove} />,\n });\n }, [add]);\n\n return {\n isLengthZero,\n direction,\n activeImageId,\n isLengthOne,\n dragEndHandler,\n activeImageIndex,\n swipeToImage,\n skipToImage,\n handleAdd,\n };\n};\nconst sliderVariants: Variants = {\n initial: (direction) => ({\n x: direction > 0 ? '100%' : '-100%',\n scale: 1,\n opacity: 0,\n }),\n active: { x: 0, scale: 1, opacity: 1 },\n exit: (direction) => ({\n x: direction > 0 ? '-100%' : '100%',\n scale: 1,\n opacity: 0.2,\n }),\n};\nconst sliderTransition = {\n duration: 0.3,\n ease: [0.56, 0.03, 0.12, 1.04],\n};\n\ntype ComponentHandleAddProps = {\n br?: string;\n dragEndHandler: (dragInfo: PanInfo) => void;\n images: ImageSliderProps['images'];\n children?: ImageSliderProps['children'];\n activeImageIndex: number;\n activeImageId: number | null;\n swipeToImage: (swipeDirection: number) => void;\n skipToImage: (imageId: number) => void;\n direction: number;\n aspect: number;\n failedToLoad: string;\n isLengthOne: boolean;\n} & Pick<ImageSliderProps, 'genre' | 'size'>;\n\nconst ComponentHandleAdd: FC<{\n params?: useDialogProps<ComponentHandleAddProps>;\n remove?: () => void;\n}> = ({ params, remove }) => {\n return (\n <Stack\n sx={{\n default: {\n position: 'relative',\n overflow: 'hidden',\n aspectRatio: `${params?.aspect! * 2} / 2`,\n width: 'auto',\n maxWidth: '70dvw',\n height: '85dvh',\n borderRadius: params?.br,\n },\n tablet: {\n maxWidth: '95dvw',\n },\n }}\n >\n <AnimatePresence initial={false} custom={params?.direction}>\n <SliderImage\n key={params?.activeImageId}\n style={{\n overflow: 'hidden',\n borderRadius: params?.br,\n }}\n custom={params?.direction}\n variants={sliderVariants}\n initial='initial'\n animate='active'\n exit='exit'\n transition={sliderTransition}\n {...(!params?.isLengthOne\n ? {\n drag: 'x',\n dragConstraints: { left: 0, right: 0 },\n dragElastic: 0.5,\n onDragEnd: (_, dragInfo) => params?.dragEndHandler(dragInfo),\n }\n : {})}\n >\n <Image\n sxStack={(theme) => ({\n default: {\n width: '100%',\n height: '100%',\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: theme.palette.black10,\n position: 'absolute',\n pointerEvents: 'none',\n },\n })}\n isShowBeforeImage\n sxImage={{\n default: {\n objectFit: 'contain',\n },\n }}\n alt={(params?.images ?? [])?.[params?.activeImageIndex ?? 0]?.imageSrc}\n src={(params?.images ?? [])?.[params?.activeImageIndex ?? 0]?.imageSrc}\n componentFallback={\n <Typography\n sx={{\n default: {\n variant: 'h6',\n },\n }}\n >\n {params?.failedToLoad}\n </Typography>\n }\n />\n {(params?.images ?? [])?.[params?.activeImageIndex ?? 0]?.children}\n </SliderImage>\n </AnimatePresence>\n {typeof params?.children === 'function' ? params?.children?.({ isDialog: true }) : params?.children}\n\n <Button\n sx={{\n default: {\n position: 'absolute',\n bottom: 15,\n right: 15,\n },\n }}\n genre={params?.genre ?? 'product'}\n size={params?.size ?? 'medium'}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isRadius\n onClick={() => remove?.()}\n />\n {!params?.isLengthOne ? (\n <>\n <Stack\n sx={{\n default: {\n position: 'absolute',\n bottom: 15,\n left: 15,\n gap: '8px',\n },\n }}\n >\n <Button\n genre={params?.genre ?? 'product'}\n size={params?.size ?? 'medium'}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n turn: 90,\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isPlaystationEffect\n isRadius\n onClick={() => params?.swipeToImage?.(-1)}\n />\n <Button\n genre={params?.genre ?? 'product'}\n size={params?.size ?? 'medium'}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n turn: -90,\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isPlaystationEffect\n isRadius\n onClick={() => params?.swipeToImage?.(1)}\n />\n </Stack>\n <Stack\n sx={{\n default: {\n position: 'absolute',\n bottom: 15,\n left: '50%',\n transform: 'translateX(-50%)',\n gap: '4px',\n },\n }}\n >\n {(params?.images ?? [])?.map((i) => (\n <SliderDot\n onClick={() => params?.skipToImage?.(i.id)}\n key={i.id}\n initial={false}\n animate={{\n scale: params?.activeImageId === i.id ? 1.5 : 1,\n opacity: params?.activeImageId === i.id ? 1 : 0.5,\n }}\n />\n ))}\n </Stack>\n </>\n ) : null}\n </Stack>\n );\n};\n","import { AnimatePresence, Variants } from 'framer-motion';\nimport { FC, useMemo } from 'react';\n\nimport { useImageSlider } from '@local/hooks/use-image-slider';\nimport { KEY_SIZE_DATA } from '@local/theme';\n\nimport { ImageSliderProps, SliderDot, SliderImage } from '.';\nimport { Button } from '../button';\nimport { Icon } from '../icon';\nimport { Image } from '../image';\nimport { Stack, StackMotion } from '../stack';\nimport { Typography } from '../typography';\n\nexport const ImageSlider: FC<ImageSliderProps> = (props) => {\n const { onIndexChange } = props;\n const images = useMemo(() => props.images, [props.images]);\n const size = useMemo(() => KEY_SIZE_DATA[props.size], [props.size]);\n const br = useMemo(() => `${size.radius}px`, [size.radius]);\n\n const {\n isLengthZero,\n direction,\n activeImageId,\n isLengthOne,\n dragEndHandler,\n activeImageIndex,\n swipeToImage,\n skipToImage,\n handleAdd,\n } = useImageSlider({\n genre: props.genre,\n size: props.size,\n images: images,\n imageSettings: props.imageSettings,\n locales: props.locales,\n onIndexChange: onIndexChange,\n children: props.children,\n });\n return (\n <StackMotion\n {...props.propsStack}\n sx={(theme) => ({\n ...props.propsStack?.sx,\n default: {\n borderRadius: br,\n flexDirection: 'column',\n alignItems: 'center',\n overflow: 'hidden',\n width: 'auto',\n maxWidth: '70dvw',\n height: '85dvh',\n ...(props.propsStack?.sx\n ? typeof props.propsStack?.sx === 'function'\n ? props.propsStack?.sx(theme).default\n : props.propsStack?.sx.default\n : {}),\n },\n tablet: {\n maxWidth: '95dvw',\n ...(props.propsStack?.sx\n ? typeof props.propsStack?.sx === 'function'\n ? props.propsStack?.sx(theme).tablet\n : props.propsStack?.sx.tablet\n : {}),\n },\n })}\n >\n {props.isLoading ? (\n <Stack\n sx={{\n default: {\n width: '100%',\n height: '100%',\n position: 'relative',\n overflow: 'hidden',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n }}\n >\n <Icon size='large' type='loading' primaryColor='blueFocus' name='Line' />\n </Stack>\n ) : !isLengthZero ? (\n <Stack\n sx={{\n default: {\n width: '100%',\n height: '100%',\n position: 'relative',\n overflow: 'hidden',\n },\n }}\n >\n <AnimatePresence initial={false} custom={direction}>\n <SliderImage\n key={activeImageId}\n style={{\n overflow: 'hidden',\n borderRadius: br,\n }}\n custom={direction}\n variants={sliderVariants}\n initial='initial'\n animate='active'\n exit='exit'\n transition={sliderTransition}\n {...(!isLengthOne\n ? {\n drag: 'x',\n dragConstraints: { left: 0, right: 0 },\n dragElastic: 0.5,\n onDragEnd: (_, dragInfo) => dragEndHandler(dragInfo),\n }\n : {})}\n >\n <Image\n sxStack={(theme) => ({\n default: {\n width: '100%',\n height: '100%',\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: theme.palette.black10,\n position: 'absolute',\n pointerEvents: 'none',\n },\n })}\n alt={images[activeImageIndex]?.imageSrc}\n src={images[activeImageIndex]?.imageSrc}\n componentFallback={\n <Typography\n sx={{\n default: {\n variant: 'h6',\n },\n }}\n >\n {props.locales.failedToLoad}\n </Typography>\n }\n />\n {images[activeImageIndex]?.children}\n </SliderImage>\n </AnimatePresence>\n {typeof props?.children === 'function' ? props?.children?.({ isDialog: false }) : props?.children}\n\n {!isLengthOne && (\n <>\n <Button\n sx={{\n default: {\n position: 'absolute',\n top: '50%',\n left: 5,\n transform: 'translateY(-50%)',\n },\n }}\n genre={props.genre}\n size={props.size}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n turn: 90,\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isRadius\n onClick={() => swipeToImage(-1)}\n />\n <Button\n sx={{\n default: {\n position: 'absolute',\n top: '50%',\n right: 5,\n transform: 'translateY(-50%)',\n },\n }}\n genre={props.genre}\n size={props.size}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n turn: -90,\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isRadius\n onClick={() => swipeToImage(1)}\n />\n <Stack\n sx={{\n default: {\n position: 'absolute',\n bottom: 5,\n left: '50%',\n transform: 'translateX(-50%)',\n gap: '4px',\n },\n }}\n >\n {images.map((i) => (\n <SliderDot\n onClick={() => skipToImage(i.id)}\n key={i.id}\n initial={false}\n animate={{\n scale: activeImageId === i.id ? 1.5 : 1,\n opacity: activeImageId === i.id ? 1 : 0.5,\n }}\n />\n ))}\n </Stack>\n </>\n )}\n\n <Button\n sx={{\n default: {\n position: 'absolute',\n bottom: 5,\n right: 5,\n },\n }}\n genre={props.genre}\n size={props.size}\n icons={[\n {\n type: 'id',\n name: 'Activity',\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isRadius\n onClick={() => handleAdd()}\n />\n </Stack>\n ) : (\n <Stack\n sx={{\n default: {\n width: '100%',\n height: '100%',\n position: 'relative',\n overflow: 'hidden',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n }}\n >\n <Typography\n sx={{\n default: {\n variant: 'h6',\n },\n }}\n >\n {props.locales.noImagesAvailable}\n </Typography>\n </Stack>\n )}\n </StackMotion>\n );\n};\nconst sliderVariants: Variants = {\n initial: (direction) => ({\n x: direction > 0 ? '100%' : '-100%',\n scale: 1,\n opacity: 0,\n }),\n active: { x: 0, scale: 1, opacity: 1 },\n exit: (direction) => ({\n x: direction > 0 ? '-100%' : '100%',\n scale: 1,\n opacity: 0.2,\n }),\n};\nconst sliderTransition = {\n duration: 0.3,\n ease: [0.56, 0.03, 0.12, 1.04],\n};\n","import 'styled-components';\n\nimport { ImageSliderProps } from '.';\nimport { Button } from '../button';\nimport { Stack } from '../stack';\n\nexport const IMAGES: ImageSliderProps['images'] = [\n {\n id: 0,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://drupal-prod.visitcalifornia.com/sites/default/files/styles/fluid_1920/public/2020-06/VC_PlacesToVisit_LosAngelesCounty_RF_1170794243.jpg.webp?itok=46pJYz8v',\n },\n {\n id: 1,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://images.unsplash.com/flagged/photo-1575555201693-7cd442b8023f?fm=jpg&q=60&w=3000&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxzZWFyY2h8Mnx8bG9zJTIwYW5nZWxlc3xlbnwwfHwwfHx8MA%3D%3D',\n },\n {\n id: 2,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://img.goodfon.com/original/2048x1319/8/29/ssha-kaliforniia-los-andzheles-los-angeles-doma-neboskreby-s.jpg',\n },\n {\n id: 3,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://images.pexels.com/photos/2231756/pexels-photo-2231756.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=500',\n },\n {\n id: 4,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://images.pexels.com/photos/1813157/pexels-photo-1813157.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=500',\n },\n];\n"],"names":["direction","jsx","sliderVariants","sliderTransition","jsxs","Fragment","_a","_b","_c","_d"],"mappings":";;;;;;;;;;;AAGO,MAAM,cAAc,OAAO,OAAO,GAAG;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAerC,MAAM,YAAY,OAAO,OAAO,GAAG;AAAA;AAAA;AAAA,sBAGpB,CAAC,UAAU,MAAM,MAAM,QAAQ,aAAa;AAAA;AAAA;AAAA;AAAA;ACR3D,MAAM,iBAAiB,CAAC,UAA+B;;AAC5D,QAAM,EAAE,kBAAkB;AAE1B,QAAM,OAAO,QAAQ,MAAM,cAAc,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC;AAClE,QAAM,KAAK,QAAQ,MAAM,GAAG,KAAK,MAAM,MAAM,CAAC,KAAK,MAAM,CAAC;AAE1D,QAAM,SAAS,QAAQ,MAAM,MAAM,QAAQ,CAAC,MAAM,MAAM,CAAC;AAEzD,QAAM,CAAC,EAAE,eAAe,aAAa,cAAc,IAAI,SAAS;AAAA,IAC9D,iBAAe,sCAAS,OAAT,mBAAa,OAAM;AAAA,IAClC,WAAW;AAAA,EAAA,CACZ;AACD,QAAM,cAAc,QAAQ,OAAM,iCAAQ,YAAW,GAAG,CAAC,MAAM,CAAC;AAChE,QAAM,eAAe,QAAQ,OAAM,iCAAQ,YAAW,GAAG,CAAC,MAAM,CAAC;AAEjE,QAAM,mBAAmB,QAAQ,MAAM,OAAO,UAAU,CAAC,QAAQ,IAAI,OAAO,aAAa,GAAG,CAAC,eAAe,MAAM,CAAC;AAEnH,QAAM,eAAe;AAAA,IACnB,CAAC,mBAA2B;AAC1B,YAAM,eAAe,OAAO,UAAU,CAAC,QAAQ,IAAI,OAAO,aAAa;AACvE,YAAM,aAAa,eAAe,iBAAiB,OAAO,UAAU,OAAO;AAC3E,qBAAe,EAAE,eAAe,OAAO,SAAS,EAAE,IAAI,WAAW,gBAAgB;AAAA,IAAA;AAAA,IAEnF,CAAC,eAAe,MAAM;AAAA,EAAA;AAExB,QAAM,iBAAiB;AAAA,IACrB,CAAC,aAAsB;AACrB,YAAM,EAAE,QAAQ,SAAA,IAAa;AAC7B,YAAM,iBAAiB;AACvB,YAAM,aAAa,KAAK,IAAI,OAAO,CAAC,IAAI,SAAS;AAEjD,UAAI,aAAa,OAAO,OAAO,IAAI,gBAAgB;AACjD,qBAAa,EAAE;AAAA,MAAA,WACN,aAAa,QAAQ,OAAO,IAAI,CAAC,gBAAgB;AAC1D,qBAAa,CAAC;AAAA,MAAA;AAAA,IAChB;AAAA,IAEF,CAAC,YAAY;AAAA,EAAA;AAEf,QAAM,cAAc;AAAA,IAClB,CAAC,YAAoB;AACnB,YAAM,eAAe,OAAO,UAAU,CAAC,QAAQ,IAAI,OAAO,aAAa;AACvE,YAAM,WAAW,OAAO,UAAU,CAAC,QAAQ,IAAI,OAAO,OAAO;AAC7D,UAAI,aAAa,MAAM,aAAa,aAAc;AAElD,YAAMA,aAAY,WAAW,eAAe,IAAI;AAChD,qBAAe,EAAE,eAAe,SAAS,WAAAA,YAAW;AAAA,IAAA;AAAA,IAEtD,CAAC,eAAe,MAAM;AAAA,EAAA;AAGxB,YAAU,MAAM;AACd,QAAI,8DAA+B;AAAA,EAAa,GAC/C,CAAC,eAAe,aAAa,CAAC;AAEjC,QAAM,EAAE,IAAA,IAAQ,UAAmC;AAAA,IACjD;AAAA,IACA;AAAA,IACA;AAAA,IACA,UAAU,MAAM;AAAA,IAChB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,QAAQ,MAAM,cAAc;AAAA,IAC5B,OAAO,MAAM;AAAA,IACb,MAAM,MAAM;AAAA,IACZ,cAAc,MAAM,QAAQ;AAAA,IAC5B;AAAA,IACA,aAAa;AAAA,MACX,cAAc;AAAA,MACd,SAAS;AAAA,MACT,YAAY;AAAA,IAAA;AAAA,EACd,CACD;AACD,QAAM,YAAY,YAAY,MAAM;AAClC,QAAI;AAAA,MACF,SAAS,CAAC,QAAQ,WAAWC,kCAAAA,IAAC,oBAAA,EAAmB,QAAgB,OAAA,CAAgB;AAAA,IAAA,CAClF;AAAA,EAAA,GACA,CAAC,GAAG,CAAC;AAER,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA;AAEJ;AACA,MAAMC,mBAA2B;AAAA,EAC/B,SAAS,CAAC,eAAe;AAAA,IACvB,GAAG,YAAY,IAAI,SAAS;AAAA,IAC5B,OAAO;AAAA,IACP,SAAS;AAAA,EAAA;AAAA,EAEX,QAAQ,EAAE,GAAG,GAAG,OAAO,GAAG,SAAS,EAAA;AAAA,EACnC,MAAM,CAAC,eAAe;AAAA,IACpB,GAAG,YAAY,IAAI,UAAU;AAAA,IAC7B,OAAO;AAAA,IACP,SAAS;AAAA,EAAA;AAEb;AACA,MAAMC,qBAAmB;AAAA,EACvB,UAAU;AAAA,EACV,MAAM,CAAC,MAAM,MAAM,MAAM,IAAI;AAC/B;AAiBA,MAAM,qBAGD,CAAC,EAAE,QAAQ,aAAa;;AAC3B,SACEC,kCAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,IAAI;AAAA,QACF,SAAS;AAAA,UACP,UAAU;AAAA,UACV,UAAU;AAAA,UACV,aAAa,IAAG,iCAAQ,UAAU,CAAC;AAAA,UACnC,OAAO;AAAA,UACP,UAAU;AAAA,UACV,QAAQ;AAAA,UACR,cAAc,iCAAQ;AAAA,QAAA;AAAA,QAExB,QAAQ;AAAA,UACN,UAAU;AAAA,QAAA;AAAA,MACZ;AAAA,MAGF,UAAA;AAAA,QAAAH,sCAAC,iBAAA,EAAgB,SAAS,OAAO,QAAQ,iCAAQ,WAC/C,UAAAG,kCAAAA;AAAAA,UAAC;AAAA,UAAA;AAAA,YAEC,OAAO;AAAA,cACL,UAAU;AAAA,cACV,cAAc,iCAAQ;AAAA,YAAA;AAAA,YAExB,QAAQ,iCAAQ;AAAA,YAChB,UAAUF;AAAAA,YACV,SAAQ;AAAA,YACR,SAAQ;AAAA,YACR,MAAK;AAAA,YACL,YAAYC;AAAAA,YACX,GAAI,EAAC,iCAAQ,eACV;AAAA,cACE,MAAM;AAAA,cACN,iBAAiB,EAAE,MAAM,GAAG,OAAO,EAAA;AAAA,cACnC,aAAa;AAAA,cACb,WAAW,CAAC,GAAG,aAAa,iCAAQ,eAAe;AAAA,YAAQ,IAE7D,CAAA;AAAA,YAEJ,UAAA;AAAA,cAAAF,kCAAAA;AAAAA,gBAAC;AAAA,gBAAA;AAAA,kBACC,SAAS,CAAC,WAAW;AAAA,oBACnB,SAAS;AAAA,sBACP,OAAO;AAAA,sBACP,QAAQ;AAAA,sBACR,YAAY;AAAA,sBACZ,gBAAgB;AAAA,sBAChB,iBAAiB,MAAM,QAAQ;AAAA,sBAC/B,UAAU;AAAA,sBACV,eAAe;AAAA,oBAAA;AAAA,kBACjB;AAAA,kBAEF,mBAAiB;AAAA,kBACjB,SAAS;AAAA,oBACP,SAAS;AAAA,sBACP,WAAW;AAAA,oBAAA;AAAA,kBACb;AAAA,kBAEF,MAAM,6CAAQ,WAAU,CAAA,MAAlB,oBAAwB,iCAAQ,qBAAoB,OAApD,mBAAwD;AAAA,kBAC9D,MAAM,6CAAQ,WAAU,CAAA,MAAlB,oBAAwB,iCAAQ,qBAAoB,OAApD,mBAAwD;AAAA,kBAC9D,mBACEA,kCAAAA;AAAAA,oBAAC;AAAA,oBAAA;AAAA,sBACC,IAAI;AAAA,wBACF,SAAS;AAAA,0BACP,SAAS;AAAA,wBAAA;AAAA,sBACX;AAAA,sBAGD,UAAA,iCAAQ;AAAA,oBAAA;AAAA,kBAAA;AAAA,gBACX;AAAA,cAAA;AAAA,eAGF,6CAAQ,WAAU,CAAA,MAAlB,oBAAwB,iCAAQ,qBAAoB,OAApD,mBAAwD;AAAA,YAAA;AAAA,UAAA;AAAA,UApDrD,iCAAQ;AAAA,QAAA,GAsDjB;AAAA,QACC,QAAO,iCAAQ,cAAa,cAAa,sCAAQ,aAAR,gCAAmB,EAAE,UAAU,KAAA,KAAU,iCAAQ;AAAA,QAE3FA,kCAAAA;AAAAA,UAAC;AAAA,UAAA;AAAA,YACC,IAAI;AAAA,cACF,SAAS;AAAA,gBACP,UAAU;AAAA,gBACV,QAAQ;AAAA,gBACR,OAAO;AAAA,cAAA;AAAA,YACT;AAAA,YAEF,QAAO,iCAAQ,UAAS;AAAA,YACxB,OAAM,iCAAQ,SAAQ;AAAA,YACtB,OAAO;AAAA,cACL;AAAA,gBACE,MAAM;AAAA,gBACN,MAAM;AAAA,cAAA;AAAA,YACR;AAAA,YAEF,iBAAe;AAAA,YACf,gBAAc;AAAA,YACd,UAAQ;AAAA,YACR,SAAS,MAAM;AAAA,UAAS;AAAA,QAAA;AAAA,QAEzB,EAAC,iCAAQ,eACRG,kCAAAA,KAAAC,kBAAAA,UAAA,EACE,UAAA;AAAA,UAAAD,kCAAAA;AAAAA,YAAC;AAAA,YAAA;AAAA,cACC,IAAI;AAAA,gBACF,SAAS;AAAA,kBACP,UAAU;AAAA,kBACV,QAAQ;AAAA,kBACR,MAAM;AAAA,kBACN,KAAK;AAAA,gBAAA;AAAA,cACP;AAAA,cAGF,UAAA;AAAA,gBAAAH,kCAAAA;AAAAA,kBAAC;AAAA,kBAAA;AAAA,oBACC,QAAO,iCAAQ,UAAS;AAAA,oBACxB,OAAM,iCAAQ,SAAQ;AAAA,oBACtB,OAAO;AAAA,sBACL;AAAA,wBACE,MAAM;AAAA,wBACN,MAAM;AAAA,wBACN,MAAM;AAAA,sBAAA;AAAA,oBACR;AAAA,oBAEF,iBAAe;AAAA,oBACf,gBAAc;AAAA,oBACd,qBAAmB;AAAA,oBACnB,UAAQ;AAAA,oBACR,SAAS,MAAA;;AAAM,8BAAAK,MAAA,iCAAQ,iBAAR,gBAAAA,IAAA,aAAuB;AAAA;AAAA,kBAAE;AAAA,gBAAA;AAAA,gBAE1CL,kCAAAA;AAAAA,kBAAC;AAAA,kBAAA;AAAA,oBACC,QAAO,iCAAQ,UAAS;AAAA,oBACxB,OAAM,iCAAQ,SAAQ;AAAA,oBACtB,OAAO;AAAA,sBACL;AAAA,wBACE,MAAM;AAAA,wBACN,MAAM;AAAA,wBACN,MAAM;AAAA,sBAAA;AAAA,oBACR;AAAA,oBAEF,iBAAe;AAAA,oBACf,gBAAc;AAAA,oBACd,qBAAmB;AAAA,oBACnB,UAAQ;AAAA,oBACR,SAAS,MAAA;;AAAM,8BAAAK,MAAA,iCAAQ,iBAAR,gBAAAA,IAAA,aAAuB;AAAA;AAAA,kBAAC;AAAA,gBAAA;AAAA,cACzC;AAAA,YAAA;AAAA,UAAA;AAAA,UAEFL,kCAAAA;AAAAA,YAAC;AAAA,YAAA;AAAA,cACC,IAAI;AAAA,gBACF,SAAS;AAAA,kBACP,UAAU;AAAA,kBACV,QAAQ;AAAA,kBACR,MAAM;AAAA,kBACN,WAAW;AAAA,kBACX,KAAK;AAAA,gBAAA;AAAA,cACP;AAAA,cAGA,kDAAQ,WAAU,CAAA,yBAAK,IAAI,CAAC,MAC5BA,kCAAAA;AAAAA,gBAAC;AAAA,gBAAA;AAAA,kBACC,SAAS,MAAA;;AAAM,4BAAAK,MAAA,iCAAQ,gBAAR,gBAAAA,IAAA,aAAsB,EAAE;AAAA;AAAA,kBAEvC,SAAS;AAAA,kBACT,SAAS;AAAA,oBACP,QAAO,iCAAQ,mBAAkB,EAAE,KAAK,MAAM;AAAA,oBAC9C,UAAS,iCAAQ,mBAAkB,EAAE,KAAK,IAAI;AAAA,kBAAA;AAAA,gBAChD;AAAA,gBALK,EAAE;AAAA,cAAA;AAAA,YAOV;AAAA,UAAA;AAAA,QACH,EAAA,CACF,IACE;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGV;AC5SO,MAAM,cAAoC,CAAC,UAAU;;AAC1D,QAAM,EAAE,kBAAkB;AAC1B,QAAM,SAAS,QAAQ,MAAM,MAAM,QAAQ,CAAC,MAAM,MAAM,CAAC;AACzD,QAAM,OAAO,QAAQ,MAAM,cAAc,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC;AAClE,QAAM,KAAK,QAAQ,MAAM,GAAG,KAAK,MAAM,MAAM,CAAC,KAAK,MAAM,CAAC;AAE1D,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA,IACE,eAAe;AAAA,IACjB,OAAO,MAAM;AAAA,IACb,MAAM,MAAM;AAAA,IACZ;AAAA,IACA,eAAe,MAAM;AAAA,IACrB,SAAS,MAAM;AAAA,IACf;AAAA,IACA,UAAU,MAAM;AAAA,EAAA,CACjB;AACD,SACEL,kCAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACE,GAAG,MAAM;AAAA,MACV,IAAI,CAAC,UAAA;;AAAW;AAAA,UACd,IAAGK,MAAA,MAAM,eAAN,gBAAAA,IAAkB;AAAA,UACrB,SAAS;AAAA,YACP,cAAc;AAAA,YACd,eAAe;AAAA,YACf,YAAY;AAAA,YACZ,UAAU;AAAA,YACV,OAAO;AAAA,YACP,UAAU;AAAA,YACV,QAAQ;AAAA,YACR,KAAIC,MAAA,MAAM,eAAN,gBAAAA,IAAkB,MAClB,SAAOC,MAAA,MAAM,eAAN,gBAAAA,IAAkB,QAAO,cAC9BC,MAAA,MAAM,eAAN,gBAAAA,IAAkB,GAAG,OAAO,WAC5B,WAAM,eAAN,mBAAkB,GAAG,UACvB,CAAA;AAAA,UAAC;AAAA,UAEP,QAAQ;AAAA,YACN,UAAU;AAAA,YACV,KAAI,WAAM,eAAN,mBAAkB,MAClB,SAAO,WAAM,eAAN,mBAAkB,QAAO,cAC9B,WAAM,eAAN,mBAAkB,GAAG,OAAO,UAC5B,WAAM,eAAN,mBAAkB,GAAG,SACvB,CAAA;AAAA,UAAC;AAAA,QACP;AAAA;AAAA,MAGD,gBAAM,YACLR,kCAAAA;AAAAA,QAAC;AAAA,QAAA;AAAA,UACC,IAAI;AAAA,YACF,SAAS;AAAA,cACP,OAAO;AAAA,cACP,QAAQ;AAAA,cACR,UAAU;AAAA,cACV,UAAU;AAAA,cACV,SAAS;AAAA,cACT,YAAY;AAAA,cACZ,gBAAgB;AAAA,YAAA;AAAA,UAClB;AAAA,UAGF,UAAAA,kCAAAA,IAAC,QAAK,MAAK,SAAQ,MAAK,WAAU,cAAa,aAAY,MAAK,OAAA,CAAO;AAAA,QAAA;AAAA,MAAA,IAEvE,CAAC,eACHG,kCAAAA;AAAAA,QAAC;AAAA,QAAA;AAAA,UACC,IAAI;AAAA,YACF,SAAS;AAAA,cACP,OAAO;AAAA,cACP,QAAQ;AAAA,cACR,UAAU;AAAA,cACV,UAAU;AAAA,YAAA;AAAA,UACZ;AAAA,UAGF,UAAA;AAAA,YAAAH,kCAAAA,IAAC,iBAAA,EAAgB,SAAS,OAAO,QAAQ,WACvC,UAAAG,kCAAAA;AAAAA,cAAC;AAAA,cAAA;AAAA,gBAEC,OAAO;AAAA,kBACL,UAAU;AAAA,kBACV,cAAc;AAAA,gBAAA;AAAA,gBAEhB,QAAQ;AAAA,gBACR,UAAU;AAAA,gBACV,SAAQ;AAAA,gBACR,SAAQ;AAAA,gBACR,MAAK;AAAA,gBACL,YAAY;AAAA,gBACX,GAAI,CAAC,cACF;AAAA,kBACE,MAAM;AAAA,kBACN,iBAAiB,EAAE,MAAM,GAAG,OAAO,EAAA;AAAA,kBACnC,aAAa;AAAA,kBACb,WAAW,CAAC,GAAG,aAAa,eAAe,QAAQ;AAAA,gBAAA,IAErD,CAAA;AAAA,gBAEJ,UAAA;AAAA,kBAAAH,kCAAAA;AAAAA,oBAAC;AAAA,oBAAA;AAAA,sBACC,SAAS,CAAC,WAAW;AAAA,wBACnB,SAAS;AAAA,0BACP,OAAO;AAAA,0BACP,QAAQ;AAAA,0BACR,YAAY;AAAA,0BACZ,gBAAgB;AAAA,0BAChB,iBAAiB,MAAM,QAAQ;AAAA,0BAC/B,UAAU;AAAA,0BACV,eAAe;AAAA,wBAAA;AAAA,sBACjB;AAAA,sBAEF,MAAK,YAAO,gBAAgB,MAAvB,mBAA0B;AAAA,sBAC/B,MAAK,YAAO,gBAAgB,MAAvB,mBAA0B;AAAA,sBAC/B,mBACEA,kCAAAA;AAAAA,wBAAC;AAAA,wBAAA;AAAA,0BACC,IAAI;AAAA,4BACF,SAAS;AAAA,8BACP,SAAS;AAAA,4BAAA;AAAA,0BACX;AAAA,0BAGD,gBAAM,QAAQ;AAAA,wBAAA;AAAA,sBAAA;AAAA,oBACjB;AAAA,kBAAA;AAAA,mBAGH,YAAO,gBAAgB,MAAvB,mBAA0B;AAAA,gBAAA;AAAA,cAAA;AAAA,cA9CtB;AAAA,YAAA,GAgDT;AAAA,YACC,QAAO,+BAAO,cAAa,cAAa,oCAAO,aAAP,+BAAkB,EAAE,UAAU,MAAA,KAAW,+BAAO;AAAA,YAExF,CAAC,eACAG,kCAAAA,KAAAC,kBAAAA,UAAA,EACE,UAAA;AAAA,cAAAJ,kCAAAA;AAAAA,gBAAC;AAAA,gBAAA;AAAA,kBACC,IAAI;AAAA,oBACF,SAAS;AAAA,sBACP,UAAU;AAAA,sBACV,KAAK;AAAA,sBACL,MAAM;AAAA,sBACN,WAAW;AAAA,oBAAA;AAAA,kBACb;AAAA,kBAEF,OAAO,MAAM;AAAA,kBACb,MAAM,MAAM;AAAA,kBACZ,OAAO;AAAA,oBACL;AAAA,sBACE,MAAM;AAAA,sBACN,MAAM;AAAA,sBACN,MAAM;AAAA,oBAAA;AAAA,kBACR;AAAA,kBAEF,iBAAe;AAAA,kBACf,gBAAc;AAAA,kBACd,UAAQ;AAAA,kBACR,SAAS,MAAM,aAAa,EAAE;AAAA,gBAAA;AAAA,cAAA;AAAA,cAEhCA,kCAAAA;AAAAA,gBAAC;AAAA,gBAAA;AAAA,kBACC,IAAI;AAAA,oBACF,SAAS;AAAA,sBACP,UAAU;AAAA,sBACV,KAAK;AAAA,sBACL,OAAO;AAAA,sBACP,WAAW;AAAA,oBAAA;AAAA,kBACb;AAAA,kBAEF,OAAO,MAAM;AAAA,kBACb,MAAM,MAAM;AAAA,kBACZ,OAAO;AAAA,oBACL;AAAA,sBACE,MAAM;AAAA,sBACN,MAAM;AAAA,sBACN,MAAM;AAAA,oBAAA;AAAA,kBACR;AAAA,kBAEF,iBAAe;AAAA,kBACf,gBAAc;AAAA,kBACd,UAAQ;AAAA,kBACR,SAAS,MAAM,aAAa,CAAC;AAAA,gBAAA;AAAA,cAAA;AAAA,cAE/BA,kCAAAA;AAAAA,gBAAC;AAAA,gBAAA;AAAA,kBACC,IAAI;AAAA,oBACF,SAAS;AAAA,sBACP,UAAU;AAAA,sBACV,QAAQ;AAAA,sBACR,MAAM;AAAA,sBACN,WAAW;AAAA,sBACX,KAAK;AAAA,oBAAA;AAAA,kBACP;AAAA,kBAGD,UAAA,OAAO,IAAI,CAAC,MACXA,kCAAAA;AAAAA,oBAAC;AAAA,oBAAA;AAAA,sBACC,SAAS,MAAM,YAAY,EAAE,EAAE;AAAA,sBAE/B,SAAS;AAAA,sBACT,SAAS;AAAA,wBACP,OAAO,kBAAkB,EAAE,KAAK,MAAM;AAAA,wBACtC,SAAS,kBAAkB,EAAE,KAAK,IAAI;AAAA,sBAAA;AAAA,oBACxC;AAAA,oBALK,EAAE;AAAA,kBAAA,CAOV;AAAA,gBAAA;AAAA,cAAA;AAAA,YACH,GACF;AAAA,YAGFA,kCAAAA;AAAAA,cAAC;AAAA,cAAA;AAAA,gBACC,IAAI;AAAA,kBACF,SAAS;AAAA,oBACP,UAAU;AAAA,oBACV,QAAQ;AAAA,oBACR,OAAO;AAAA,kBAAA;AAAA,gBACT;AAAA,gBAEF,OAAO,MAAM;AAAA,gBACb,MAAM,MAAM;AAAA,gBACZ,OAAO;AAAA,kBACL;AAAA,oBACE,MAAM;AAAA,oBACN,MAAM;AAAA,kBAAA;AAAA,gBACR;AAAA,gBAEF,iBAAe;AAAA,gBACf,gBAAc;AAAA,gBACd,UAAQ;AAAA,gBACR,SAAS,MAAM,UAAA;AAAA,cAAU;AAAA,YAAA;AAAA,UAC3B;AAAA,QAAA;AAAA,MAAA,IAGFA,kCAAAA;AAAAA,QAAC;AAAA,QAAA;AAAA,UACC,IAAI;AAAA,YACF,SAAS;AAAA,cACP,OAAO;AAAA,cACP,QAAQ;AAAA,cACR,UAAU;AAAA,cACV,UAAU;AAAA,cACV,SAAS;AAAA,cACT,YAAY;AAAA,cACZ,gBAAgB;AAAA,YAAA;AAAA,UAClB;AAAA,UAGF,UAAAA,kCAAAA;AAAAA,YAAC;AAAA,YAAA;AAAA,cACC,IAAI;AAAA,gBACF,SAAS;AAAA,kBACP,SAAS;AAAA,gBAAA;AAAA,cACX;AAAA,cAGD,gBAAM,QAAQ;AAAA,YAAA;AAAA,UAAA;AAAA,QACjB;AAAA,MAAA;AAAA,IACF;AAAA,EAAA;AAIR;AACA,MAAM,iBAA2B;AAAA,EAC/B,SAAS,CAAC,eAAe;AAAA,IACvB,GAAG,YAAY,IAAI,SAAS;AAAA,IAC5B,OAAO;AAAA,IACP,SAAS;AAAA,EAAA;AAAA,EAEX,QAAQ,EAAE,GAAG,GAAG,OAAO,GAAG,SAAS,EAAA;AAAA,EACnC,MAAM,CAAC,eAAe;AAAA,IACpB,GAAG,YAAY,IAAI,UAAU;AAAA,IAC7B,OAAO;AAAA,IACP,SAAS;AAAA,EAAA;AAEb;AACA,MAAM,mBAAmB;AAAA,EACvB,UAAU;AAAA,EACV,MAAM,CAAC,MAAM,MAAM,MAAM,IAAI;AAC/B;ACzRO,MAAM,SAAqC;AAAA,EAChD;AAAA,IACE,IAAI;AAAA,IACJ,UACEA,kCAAAA;AAAAA,MAAC;AAAA,MAAA;AAAA,QACC,IAAI;AAAA,UACF,SAAS;AAAA,YACP,gBAAgB;AAAA,YAChB,SAAS;AAAA,YACT,UAAU;AAAA,UAAA;AAAA,QACZ;AAAA,QAGF,UAAAA,kCAAAA;AAAAA,UAAC;AAAA,UAAA;AAAA,YACC,gBAAc;AAAA,YACd,YAAU;AAAA,YACV,OAAM;AAAA,YACN,MAAK;AAAA,YACL,cAAc,EAAE,SAAS,EAAE,QAAQ,MAAI;AAAA,YACxC,UAAA;AAAA,UAAA;AAAA,QAAA;AAAA,MAED;AAAA,IAAA;AAAA,IAGJ,UACE;AAAA,EAAA;AAAA,EAEJ;AAAA,IACE,IAAI;AAAA,IACJ,UACEA,kCAAAA;AAAAA,MAAC;AAAA,MAAA;AAAA,QACC,IAAI;AAAA,UACF,SAAS;AAAA,YACP,gBAAgB;AAAA,YAChB,SAAS;AAAA,YACT,UAAU;AAAA,UAAA;AAAA,QACZ;AAAA,QAGF,UAAAA,kCAAAA;AAAAA,UAAC;AAAA,UAAA;AAAA,YACC,gBAAc;AAAA,YACd,YAAU;AAAA,YACV,OAAM;AAAA,YACN,MAAK;AAAA,YACL,cAAc,EAAE,SAAS,EAAE,QAAQ,MAAI;AAAA,YACxC,UAAA;AAAA,UAAA;AAAA,QAAA;AAAA,MAED;AAAA,IAAA;AAAA,IAGJ,UACE;AAAA,EAAA;AAAA,EAEJ;AAAA,IACE,IAAI;AAAA,IACJ,UACEA,kCAAAA;AAAAA,MAAC;AAAA,MAAA;AAAA,QACC,IAAI;AAAA,UACF,SAAS;AAAA,YACP,gBAAgB;AAAA,YAChB,SAAS;AAAA,YACT,UAAU;AAAA,UAAA;AAAA,QACZ;AAAA,QAGF,UAAAA,kCAAAA;AAAAA,UAAC;AAAA,UAAA;AAAA,YACC,gBAAc;AAAA,YACd,YAAU;AAAA,YACV,OAAM;AAAA,YACN,MAAK;AAAA,YACL,cAAc,EAAE,SAAS,EAAE,QAAQ,MAAI;AAAA,YACxC,UAAA;AAAA,UAAA;AAAA,QAAA;AAAA,MAED;AAAA,IAAA;AAAA,IAGJ,UACE;AAAA,EAAA;AAAA,EAEJ;AAAA,IACE,IAAI;AAAA,IACJ,UACEA,kCAAAA;AAAAA,MAAC;AAAA,MAAA;AAAA,QACC,IAAI;AAAA,UACF,SAAS;AAAA,YACP,gBAAgB;AAAA,YAChB,SAAS;AAAA,YACT,UAAU;AAAA,UAAA;AAAA,QACZ;AAAA,QAGF,UAAAA,kCAAAA;AAAAA,UAAC;AAAA,UAAA;AAAA,YACC,gBAAc;AAAA,YACd,YAAU;AAAA,YACV,OAAM;AAAA,YACN,MAAK;AAAA,YACL,cAAc,EAAE,SAAS,EAAE,QAAQ,MAAI;AAAA,YACxC,UAAA;AAAA,UAAA;AAAA,QAAA;AAAA,MAED;AAAA,IAAA;AAAA,IAGJ,UACE;AAAA,EAAA;AAAA,EAEJ;AAAA,IACE,IAAI;AAAA,IACJ,UACEA,kCAAAA;AAAAA,MAAC;AAAA,MAAA;AAAA,QACC,IAAI;AAAA,UACF,SAAS;AAAA,YACP,gBAAgB;AAAA,YAChB,SAAS;AAAA,YACT,UAAU;AAAA,UAAA;AAAA,QACZ;AAAA,QAGF,UAAAA,kCAAAA;AAAAA,UAAC;AAAA,UAAA;AAAA,YACC,gBAAc;AAAA,YACd,YAAU;AAAA,YACV,OAAM;AAAA,YACN,MAAK;AAAA,YACL,cAAc,EAAE,SAAS,EAAE,QAAQ,MAAI;AAAA,YACxC,UAAA;AAAA,UAAA;AAAA,QAAA;AAAA,MAED;AAAA,IAAA;AAAA,IAGJ,UACE;AAAA,EAAA;AAEN;"}
@@ -1,4 +1,4 @@
1
- "use strict";const e=require("./jsx-runtime-BcGej2Kr.cjs"),i=require("framer-motion"),t=require("react"),s=require("./component-DnJo66DS.cjs"),n=require("./component.styles-B-bndnRM.cjs"),o=require("styled-components"),a=require("./component-GKvpOWlO.cjs"),l=require("./component-BVnHSTJd.cjs"),d=require("./context.constants-BLQ_1jZI.cjs"),r=require("./theme.global-CcoD5bPP.cjs"),u=require("./component.styles-BKnUDWqO.cjs"),c=o(i.motion.div)`
1
+ "use strict";const e=require("./jsx-runtime-BcGej2Kr.cjs"),i=require("framer-motion"),t=require("react"),s=require("./component-BLWcOf3A.cjs"),n=require("./component.styles-CAN6t4un.cjs"),o=require("styled-components"),a=require("./component-GKvpOWlO.cjs"),l=require("./component-BkYIZFlr.cjs"),d=require("./context.constants-BLQ_1jZI.cjs"),r=require("./theme.global-CcoD5bPP.cjs"),u=require("./component.styles-BKnUDWqO.cjs"),c=o(i.motion.div)`
2
2
  display: flex;
3
3
  position: absolute;
4
4
  height: 100%;
@@ -19,4 +19,4 @@
19
19
  opacity: 0.8;
20
20
  cursor: pointer;
21
21
  `,p={initial:e=>({x:e>0?"100%":"-100%",scale:1,opacity:0}),active:{x:0,scale:1,opacity:1},exit:e=>({x:e>0?"-100%":"100%",scale:1,opacity:.2})},m={duration:.3,ease:[.56,.03,.12,1.04]},g=({params:t,remove:o})=>{var d,r,u,g,h,v,f,j;return e.jsxRuntimeExports.jsxs(a.Stack,{sx:{default:{position:"relative",overflow:"hidden",aspectRatio:2*(null==t?void 0:t.aspect)+" / 2",width:"auto",maxWidth:"70dvw",height:"85dvh",borderRadius:null==t?void 0:t.br},tablet:{maxWidth:"95dvw"}},children:[e.jsxRuntimeExports.jsx(i.AnimatePresence,{initial:!1,custom:null==t?void 0:t.direction,children:e.jsxRuntimeExports.jsxs(c,{style:{overflow:"hidden",borderRadius:null==t?void 0:t.br},custom:null==t?void 0:t.direction,variants:p,initial:"initial",animate:"active",exit:"exit",transition:m,...(null==t?void 0:t.isLengthOne)?{}:{drag:"x",dragConstraints:{left:0,right:0},dragElastic:.5,onDragEnd:(e,i)=>null==t?void 0:t.dragEndHandler(i)},children:[e.jsxRuntimeExports.jsx(n.Image,{sxStack:e=>({default:{width:"100%",height:"100%",alignItems:"center",justifyContent:"center",backgroundColor:e.palette.black10,position:"absolute",pointerEvents:"none"}}),isShowBeforeImage:!0,sxImage:{default:{objectFit:"contain"}},alt:null==(r=null==(d=(null==t?void 0:t.images)??[])?void 0:d[(null==t?void 0:t.activeImageIndex)??0])?void 0:r.imageSrc,src:null==(g=null==(u=(null==t?void 0:t.images)??[])?void 0:u[(null==t?void 0:t.activeImageIndex)??0])?void 0:g.imageSrc,componentFallback:e.jsxRuntimeExports.jsx(l.Typography,{sx:{default:{variant:"h6"}},children:null==t?void 0:t.failedToLoad})}),null==(v=null==(h=(null==t?void 0:t.images)??[])?void 0:h[(null==t?void 0:t.activeImageIndex)??0])?void 0:v.children]},null==t?void 0:t.activeImageId)}),"function"==typeof(null==t?void 0:t.children)?null==(f=null==t?void 0:t.children)?void 0:f.call(t,{isDialog:!0}):null==t?void 0:t.children,e.jsxRuntimeExports.jsx(s.Button,{sx:{default:{position:"absolute",bottom:15,right:15}},genre:(null==t?void 0:t.genre)??"product",size:(null==t?void 0:t.size)??"medium",icons:[{type:"id",name:"Arrow4"}],isWidthAsHeight:!0,isHiddenBorder:!0,isRadius:!0,onClick:()=>null==o?void 0:o()}),(null==t?void 0:t.isLengthOne)?null:e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsxs(a.Stack,{sx:{default:{position:"absolute",bottom:15,left:15,gap:"8px"}},children:[e.jsxRuntimeExports.jsx(s.Button,{genre:(null==t?void 0:t.genre)??"product",size:(null==t?void 0:t.size)??"medium",icons:[{type:"id",name:"Arrow4",turn:90}],isWidthAsHeight:!0,isHiddenBorder:!0,isPlaystationEffect:!0,isRadius:!0,onClick:()=>{var e;return null==(e=null==t?void 0:t.swipeToImage)?void 0:e.call(t,-1)}}),e.jsxRuntimeExports.jsx(s.Button,{genre:(null==t?void 0:t.genre)??"product",size:(null==t?void 0:t.size)??"medium",icons:[{type:"id",name:"Arrow4",turn:-90}],isWidthAsHeight:!0,isHiddenBorder:!0,isPlaystationEffect:!0,isRadius:!0,onClick:()=>{var e;return null==(e=null==t?void 0:t.swipeToImage)?void 0:e.call(t,1)}})]}),e.jsxRuntimeExports.jsx(a.Stack,{sx:{default:{position:"absolute",bottom:15,left:"50%",transform:"translateX(-50%)",gap:"4px"}},children:null==(j=(null==t?void 0:t.images)??[])?void 0:j.map(i=>e.jsxRuntimeExports.jsx(x,{onClick:()=>{var e;return null==(e=null==t?void 0:t.skipToImage)?void 0:e.call(t,i.id)},initial:!1,animate:{scale:(null==t?void 0:t.activeImageId)===i.id?1.5:1,opacity:(null==t?void 0:t.activeImageId)===i.id?1:.5}},i.id))})]})]})},h={initial:e=>({x:e>0?"100%":"-100%",scale:1,opacity:0}),active:{x:0,scale:1,opacity:1},exit:e=>({x:e>0?"-100%":"100%",scale:1,opacity:.2})},v={duration:.3,ease:[.56,.03,.12,1.04]},f=[{id:0,children:e.jsxRuntimeExports.jsx(a.Stack,{sx:{default:{justifyContent:"flex-start",padding:"5px",flexGrow:1}},children:e.jsxRuntimeExports.jsx(s.Button,{isHiddenBorder:!0,isDisabled:!0,genre:"realebail-white",size:"medium",sxTypography:{default:{weight:700}},children:"Los Angeles"})}),imageSrc:"https://drupal-prod.visitcalifornia.com/sites/default/files/styles/fluid_1920/public/2020-06/VC_PlacesToVisit_LosAngelesCounty_RF_1170794243.jpg.webp?itok=46pJYz8v"},{id:1,children:e.jsxRuntimeExports.jsx(a.Stack,{sx:{default:{justifyContent:"flex-start",padding:"5px",flexGrow:1}},children:e.jsxRuntimeExports.jsx(s.Button,{isHiddenBorder:!0,isDisabled:!0,genre:"realebail-white",size:"medium",sxTypography:{default:{weight:700}},children:"Los Angeles"})}),imageSrc:"https://images.unsplash.com/flagged/photo-1575555201693-7cd442b8023f?fm=jpg&q=60&w=3000&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxzZWFyY2h8Mnx8bG9zJTIwYW5nZWxlc3xlbnwwfHwwfHx8MA%3D%3D"},{id:2,children:e.jsxRuntimeExports.jsx(a.Stack,{sx:{default:{justifyContent:"flex-start",padding:"5px",flexGrow:1}},children:e.jsxRuntimeExports.jsx(s.Button,{isHiddenBorder:!0,isDisabled:!0,genre:"realebail-white",size:"medium",sxTypography:{default:{weight:700}},children:"Los Angeles"})}),imageSrc:"https://img.goodfon.com/original/2048x1319/8/29/ssha-kaliforniia-los-andzheles-los-angeles-doma-neboskreby-s.jpg"},{id:3,children:e.jsxRuntimeExports.jsx(a.Stack,{sx:{default:{justifyContent:"flex-start",padding:"5px",flexGrow:1}},children:e.jsxRuntimeExports.jsx(s.Button,{isHiddenBorder:!0,isDisabled:!0,genre:"realebail-white",size:"medium",sxTypography:{default:{weight:700}},children:"Los Angeles"})}),imageSrc:"https://images.pexels.com/photos/2231756/pexels-photo-2231756.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=500"},{id:4,children:e.jsxRuntimeExports.jsx(a.Stack,{sx:{default:{justifyContent:"flex-start",padding:"5px",flexGrow:1}},children:e.jsxRuntimeExports.jsx(s.Button,{isHiddenBorder:!0,isDisabled:!0,genre:"realebail-white",size:"medium",sxTypography:{default:{weight:700}},children:"Los Angeles"})}),imageSrc:"https://images.pexels.com/photos/1813157/pexels-photo-1813157.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=500"}];exports.IMAGES=f,exports.ImageSlider=o=>{var p,m,f,j;const{onIndexChange:b}=o,y=t.useMemo(()=>o.images,[o.images]),I=t.useMemo(()=>r.KEY_SIZE_DATA[o.size],[o.size]),w=t.useMemo(()=>`${I.radius}px`,[I.radius]),{isLengthZero:E,direction:R,activeImageId:k,isLengthOne:S,dragEndHandler:A,activeImageIndex:C,swipeToImage:z,skipToImage:T,handleAdd:B}=(i=>{var s;const{onIndexChange:n}=i,o=t.useMemo(()=>r.KEY_SIZE_DATA[i.size],[i.size]),a=t.useMemo(()=>`${o.radius}px`,[o.radius]),l=t.useMemo(()=>i.images,[i.images]),[{activeImageId:u,direction:c},x]=t.useState({activeImageId:(null==(s=null==l?void 0:l[0])?void 0:s.id)??null,direction:0}),p=t.useMemo(()=>1===(null==l?void 0:l.length),[l]),m=t.useMemo(()=>0===(null==l?void 0:l.length),[l]),h=t.useMemo(()=>l.findIndex(e=>e.id===u),[u,l]),v=t.useCallback(e=>{const i=(l.findIndex(e=>e.id===u)+e+l.length)%l.length;x({activeImageId:l[i].id,direction:e})},[u,l]),f=t.useCallback(e=>{const{offset:i,velocity:t}=e,s=Math.abs(i.x)*t.x;s>500||i.x>50?v(-1):(s<-500||i.x<-50)&&v(1)},[v]),j=t.useCallback(e=>{const i=l.findIndex(e=>e.id===u),t=l.findIndex(i=>i.id===e);-1!==t&&t!==i&&x({activeImageId:e,direction:t>i?1:-1})},[u,l]);t.useEffect(()=>{u&&(null==n||n(u))},[u,n]);const{add:b}=d.useDialog({br:a,dragEndHandler:f,images:l,children:i.children,activeImageIndex:h,activeImageId:u,swipeToImage:v,skipToImage:j,direction:c,aspect:i.imageSettings.aspect,genre:i.genre,size:i.size,failedToLoad:i.locales.failedToLoad,isLengthOne:p,propsDialog:{borderRadius:a,padding:"0",background:"whiteStandard"}}),y=t.useCallback(()=>{b({content:(i,t)=>e.jsxRuntimeExports.jsx(g,{params:i,remove:t})})},[b]);return{isLengthZero:m,direction:c,activeImageId:u,isLengthOne:p,dragEndHandler:f,activeImageIndex:h,swipeToImage:v,skipToImage:j,handleAdd:y}})({genre:o.genre,size:o.size,images:y,imageSettings:o.imageSettings,locales:o.locales,onIndexChange:b,children:o.children});return e.jsxRuntimeExports.jsx(a.StackMotion,{...o.propsStack,sx:e=>{var i,t,s,n,a,l,d,r,u;return{...null==(i=o.propsStack)?void 0:i.sx,default:{borderRadius:w,flexDirection:"column",alignItems:"center",overflow:"hidden",width:"auto",maxWidth:"70dvw",height:"85dvh",...(null==(t=o.propsStack)?void 0:t.sx)?"function"==typeof(null==(s=o.propsStack)?void 0:s.sx)?null==(n=o.propsStack)?void 0:n.sx(e).default:null==(a=o.propsStack)?void 0:a.sx.default:{}},tablet:{maxWidth:"95dvw",...(null==(l=o.propsStack)?void 0:l.sx)?"function"==typeof(null==(d=o.propsStack)?void 0:d.sx)?null==(r=o.propsStack)?void 0:r.sx(e).tablet:null==(u=o.propsStack)?void 0:u.sx.tablet:{}}}},children:o.isLoading?e.jsxRuntimeExports.jsx(a.Stack,{sx:{default:{width:"100%",height:"100%",position:"relative",overflow:"hidden",display:"flex",alignItems:"center",justifyContent:"center"}},children:e.jsxRuntimeExports.jsx(u.Icon,{size:"large",type:"loading",primaryColor:"blueFocus",name:"Line"})}):E?e.jsxRuntimeExports.jsx(a.Stack,{sx:{default:{width:"100%",height:"100%",position:"relative",overflow:"hidden",display:"flex",alignItems:"center",justifyContent:"center"}},children:e.jsxRuntimeExports.jsx(l.Typography,{sx:{default:{variant:"h6"}},children:o.locales.noImagesAvailable})}):e.jsxRuntimeExports.jsxs(a.Stack,{sx:{default:{width:"100%",height:"100%",position:"relative",overflow:"hidden"}},children:[e.jsxRuntimeExports.jsx(i.AnimatePresence,{initial:!1,custom:R,children:e.jsxRuntimeExports.jsxs(c,{style:{overflow:"hidden",borderRadius:w},custom:R,variants:h,initial:"initial",animate:"active",exit:"exit",transition:v,...S?{}:{drag:"x",dragConstraints:{left:0,right:0},dragElastic:.5,onDragEnd:(e,i)=>A(i)},children:[e.jsxRuntimeExports.jsx(n.Image,{sxStack:e=>({default:{width:"100%",height:"100%",alignItems:"center",justifyContent:"center",backgroundColor:e.palette.black10,position:"absolute",pointerEvents:"none"}}),alt:null==(p=y[C])?void 0:p.imageSrc,src:null==(m=y[C])?void 0:m.imageSrc,componentFallback:e.jsxRuntimeExports.jsx(l.Typography,{sx:{default:{variant:"h6"}},children:o.locales.failedToLoad})}),null==(f=y[C])?void 0:f.children]},k)}),"function"==typeof(null==o?void 0:o.children)?null==(j=null==o?void 0:o.children)?void 0:j.call(o,{isDialog:!1}):null==o?void 0:o.children,!S&&e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx(s.Button,{sx:{default:{position:"absolute",top:"50%",left:5,transform:"translateY(-50%)"}},genre:o.genre,size:o.size,icons:[{type:"id",name:"Arrow4",turn:90}],isWidthAsHeight:!0,isHiddenBorder:!0,isRadius:!0,onClick:()=>z(-1)}),e.jsxRuntimeExports.jsx(s.Button,{sx:{default:{position:"absolute",top:"50%",right:5,transform:"translateY(-50%)"}},genre:o.genre,size:o.size,icons:[{type:"id",name:"Arrow4",turn:-90}],isWidthAsHeight:!0,isHiddenBorder:!0,isRadius:!0,onClick:()=>z(1)}),e.jsxRuntimeExports.jsx(a.Stack,{sx:{default:{position:"absolute",bottom:5,left:"50%",transform:"translateX(-50%)",gap:"4px"}},children:y.map(i=>e.jsxRuntimeExports.jsx(x,{onClick:()=>T(i.id),initial:!1,animate:{scale:k===i.id?1.5:1,opacity:k===i.id?1:.5}},i.id))})]}),e.jsxRuntimeExports.jsx(s.Button,{sx:{default:{position:"absolute",bottom:5,right:5}},genre:o.genre,size:o.size,icons:[{type:"id",name:"Activity"}],isWidthAsHeight:!0,isHiddenBorder:!0,isRadius:!0,onClick:()=>B()})]})})},exports.SliderDot=x,exports.SliderImage=c;
22
- //# sourceMappingURL=component.constants-CpRgeAIu.cjs.map
22
+ //# sourceMappingURL=component.constants-DoZ61vWX.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"component.constants-CpRgeAIu.cjs","sources":["../src/components/image-slider/component.styles.tsx","../src/hooks/use-image-slider/use.tsx","../src/components/image-slider/component.tsx","../src/components/image-slider/component.constants.tsx"],"sourcesContent":["import { motion } from 'framer-motion';\nimport styled from 'styled-components';\n\nexport const SliderImage = styled(motion.div)`\n display: flex;\n position: absolute;\n height: 100%;\n width: 100%;\n touch-action: pan-y;\n &:hover {\n cursor: grab;\n }\n\n &:active {\n cursor: grabbing;\n }\n`;\n\nexport const SliderDot = styled(motion.div)`\n width: 6px;\n height: 6px;\n background-color: ${(props) => props.theme.palette.whiteStandard};\n border-radius: 5px;\n opacity: 0.8;\n cursor: pointer;\n`;\n","import { Button } from '@local/components/button';\nimport { Image } from '@local/components/image';\nimport { ImageSliderProps, SliderDot, SliderImage } from '@local/components/image-slider';\nimport { Stack } from '@local/components/stack';\nimport { Typography } from '@local/components/typography';\nimport { useDialog, useDialogProps } from '@local/contexts/context-dialog';\nimport { KEY_SIZE_DATA } from '@local/theme';\n\nimport { AnimatePresence, PanInfo, Variants } from 'framer-motion';\nimport { FC, useCallback, useEffect, useMemo, useState } from 'react';\n\nimport { useImageSliderProps } from '.';\n\nexport const useImageSlider = (props: useImageSliderProps) => {\n const { onIndexChange } = props;\n\n const size = useMemo(() => KEY_SIZE_DATA[props.size], [props.size]);\n const br = useMemo(() => `${size.radius}px`, [size.radius]);\n\n const images = useMemo(() => props.images, [props.images]);\n\n const [{ activeImageId, direction }, setActiveImage] = useState({\n activeImageId: images?.[0]?.id ?? null,\n direction: 0,\n });\n const isLengthOne = useMemo(() => images?.length === 1, [images]);\n const isLengthZero = useMemo(() => images?.length === 0, [images]);\n\n const activeImageIndex = useMemo(() => images.findIndex((img) => img.id === activeImageId), [activeImageId, images]);\n\n const swipeToImage = useCallback(\n (swipeDirection: number) => {\n const currentIndex = images.findIndex((img) => img.id === activeImageId);\n const nextIndex = (currentIndex + swipeDirection + images.length) % images.length;\n setActiveImage({ activeImageId: images[nextIndex].id, direction: swipeDirection });\n },\n [activeImageId, images],\n );\n const dragEndHandler = useCallback(\n (dragInfo: PanInfo) => {\n const { offset, velocity } = dragInfo;\n const swipeThreshold = 50;\n const swipePower = Math.abs(offset.x) * velocity.x;\n\n if (swipePower > 500 || offset.x > swipeThreshold) {\n swipeToImage(-1);\n } else if (swipePower < -500 || offset.x < -swipeThreshold) {\n swipeToImage(1);\n }\n },\n [swipeToImage],\n );\n const skipToImage = useCallback(\n (imageId: number) => {\n const currentIndex = images.findIndex((img) => img.id === activeImageId);\n const newIndex = images.findIndex((img) => img.id === imageId);\n if (newIndex === -1 || newIndex === currentIndex) return;\n\n const direction = newIndex > currentIndex ? 1 : -1;\n setActiveImage({ activeImageId: imageId, direction });\n },\n [activeImageId, images],\n );\n\n useEffect(() => {\n if (activeImageId) onIndexChange?.(activeImageId);\n }, [activeImageId, onIndexChange]);\n\n const { add } = useDialog<ComponentHandleAddProps>({\n br: br,\n dragEndHandler: dragEndHandler,\n images: images,\n children: props.children,\n activeImageIndex: activeImageIndex,\n activeImageId: activeImageId,\n swipeToImage: swipeToImage,\n skipToImage: skipToImage,\n direction: direction,\n aspect: props.imageSettings.aspect,\n genre: props.genre,\n size: props.size,\n failedToLoad: props.locales.failedToLoad,\n isLengthOne: isLengthOne,\n propsDialog: {\n borderRadius: br,\n padding: '0',\n background: 'whiteStandard',\n },\n });\n const handleAdd = useCallback(() => {\n add({\n content: (params, remove) => <ComponentHandleAdd params={params} remove={remove} />,\n });\n }, [add]);\n\n return {\n isLengthZero,\n direction,\n activeImageId,\n isLengthOne,\n dragEndHandler,\n activeImageIndex,\n swipeToImage,\n skipToImage,\n handleAdd,\n };\n};\nconst sliderVariants: Variants = {\n initial: (direction) => ({\n x: direction > 0 ? '100%' : '-100%',\n scale: 1,\n opacity: 0,\n }),\n active: { x: 0, scale: 1, opacity: 1 },\n exit: (direction) => ({\n x: direction > 0 ? '-100%' : '100%',\n scale: 1,\n opacity: 0.2,\n }),\n};\nconst sliderTransition = {\n duration: 0.3,\n ease: [0.56, 0.03, 0.12, 1.04],\n};\n\ntype ComponentHandleAddProps = {\n br?: string;\n dragEndHandler: (dragInfo: PanInfo) => void;\n images: ImageSliderProps['images'];\n children?: ImageSliderProps['children'];\n activeImageIndex: number;\n activeImageId: number | null;\n swipeToImage: (swipeDirection: number) => void;\n skipToImage: (imageId: number) => void;\n direction: number;\n aspect: number;\n failedToLoad: string;\n isLengthOne: boolean;\n} & Pick<ImageSliderProps, 'genre' | 'size'>;\n\nconst ComponentHandleAdd: FC<{\n params?: useDialogProps<ComponentHandleAddProps>;\n remove?: () => void;\n}> = ({ params, remove }) => {\n return (\n <Stack\n sx={{\n default: {\n position: 'relative',\n overflow: 'hidden',\n aspectRatio: `${params?.aspect! * 2} / 2`,\n width: 'auto',\n maxWidth: '70dvw',\n height: '85dvh',\n borderRadius: params?.br,\n },\n tablet: {\n maxWidth: '95dvw',\n },\n }}\n >\n <AnimatePresence initial={false} custom={params?.direction}>\n <SliderImage\n key={params?.activeImageId}\n style={{\n overflow: 'hidden',\n borderRadius: params?.br,\n }}\n custom={params?.direction}\n variants={sliderVariants}\n initial='initial'\n animate='active'\n exit='exit'\n transition={sliderTransition}\n {...(!params?.isLengthOne\n ? {\n drag: 'x',\n dragConstraints: { left: 0, right: 0 },\n dragElastic: 0.5,\n onDragEnd: (_, dragInfo) => params?.dragEndHandler(dragInfo),\n }\n : {})}\n >\n <Image\n sxStack={(theme) => ({\n default: {\n width: '100%',\n height: '100%',\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: theme.palette.black10,\n position: 'absolute',\n pointerEvents: 'none',\n },\n })}\n isShowBeforeImage\n sxImage={{\n default: {\n objectFit: 'contain',\n },\n }}\n alt={(params?.images ?? [])?.[params?.activeImageIndex ?? 0]?.imageSrc}\n src={(params?.images ?? [])?.[params?.activeImageIndex ?? 0]?.imageSrc}\n componentFallback={\n <Typography\n sx={{\n default: {\n variant: 'h6',\n },\n }}\n >\n {params?.failedToLoad}\n </Typography>\n }\n />\n {(params?.images ?? [])?.[params?.activeImageIndex ?? 0]?.children}\n </SliderImage>\n </AnimatePresence>\n {typeof params?.children === 'function' ? params?.children?.({ isDialog: true }) : params?.children}\n\n <Button\n sx={{\n default: {\n position: 'absolute',\n bottom: 15,\n right: 15,\n },\n }}\n genre={params?.genre ?? 'product'}\n size={params?.size ?? 'medium'}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isRadius\n onClick={() => remove?.()}\n />\n {!params?.isLengthOne ? (\n <>\n <Stack\n sx={{\n default: {\n position: 'absolute',\n bottom: 15,\n left: 15,\n gap: '8px',\n },\n }}\n >\n <Button\n genre={params?.genre ?? 'product'}\n size={params?.size ?? 'medium'}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n turn: 90,\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isPlaystationEffect\n isRadius\n onClick={() => params?.swipeToImage?.(-1)}\n />\n <Button\n genre={params?.genre ?? 'product'}\n size={params?.size ?? 'medium'}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n turn: -90,\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isPlaystationEffect\n isRadius\n onClick={() => params?.swipeToImage?.(1)}\n />\n </Stack>\n <Stack\n sx={{\n default: {\n position: 'absolute',\n bottom: 15,\n left: '50%',\n transform: 'translateX(-50%)',\n gap: '4px',\n },\n }}\n >\n {(params?.images ?? [])?.map((i) => (\n <SliderDot\n onClick={() => params?.skipToImage?.(i.id)}\n key={i.id}\n initial={false}\n animate={{\n scale: params?.activeImageId === i.id ? 1.5 : 1,\n opacity: params?.activeImageId === i.id ? 1 : 0.5,\n }}\n />\n ))}\n </Stack>\n </>\n ) : null}\n </Stack>\n );\n};\n","import { AnimatePresence, Variants } from 'framer-motion';\nimport { FC, useMemo } from 'react';\n\nimport { useImageSlider } from '@local/hooks/use-image-slider';\nimport { KEY_SIZE_DATA } from '@local/theme';\n\nimport { ImageSliderProps, SliderDot, SliderImage } from '.';\nimport { Button } from '../button';\nimport { Icon } from '../icon';\nimport { Image } from '../image';\nimport { Stack, StackMotion } from '../stack';\nimport { Typography } from '../typography';\n\nexport const ImageSlider: FC<ImageSliderProps> = (props) => {\n const { onIndexChange } = props;\n const images = useMemo(() => props.images, [props.images]);\n const size = useMemo(() => KEY_SIZE_DATA[props.size], [props.size]);\n const br = useMemo(() => `${size.radius}px`, [size.radius]);\n\n const {\n isLengthZero,\n direction,\n activeImageId,\n isLengthOne,\n dragEndHandler,\n activeImageIndex,\n swipeToImage,\n skipToImage,\n handleAdd,\n } = useImageSlider({\n genre: props.genre,\n size: props.size,\n images: images,\n imageSettings: props.imageSettings,\n locales: props.locales,\n onIndexChange: onIndexChange,\n children: props.children,\n });\n return (\n <StackMotion\n {...props.propsStack}\n sx={(theme) => ({\n ...props.propsStack?.sx,\n default: {\n borderRadius: br,\n flexDirection: 'column',\n alignItems: 'center',\n overflow: 'hidden',\n width: 'auto',\n maxWidth: '70dvw',\n height: '85dvh',\n ...(props.propsStack?.sx\n ? typeof props.propsStack?.sx === 'function'\n ? props.propsStack?.sx(theme).default\n : props.propsStack?.sx.default\n : {}),\n },\n tablet: {\n maxWidth: '95dvw',\n ...(props.propsStack?.sx\n ? typeof props.propsStack?.sx === 'function'\n ? props.propsStack?.sx(theme).tablet\n : props.propsStack?.sx.tablet\n : {}),\n },\n })}\n >\n {props.isLoading ? (\n <Stack\n sx={{\n default: {\n width: '100%',\n height: '100%',\n position: 'relative',\n overflow: 'hidden',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n }}\n >\n <Icon size='large' type='loading' primaryColor='blueFocus' name='Line' />\n </Stack>\n ) : !isLengthZero ? (\n <Stack\n sx={{\n default: {\n width: '100%',\n height: '100%',\n position: 'relative',\n overflow: 'hidden',\n },\n }}\n >\n <AnimatePresence initial={false} custom={direction}>\n <SliderImage\n key={activeImageId}\n style={{\n overflow: 'hidden',\n borderRadius: br,\n }}\n custom={direction}\n variants={sliderVariants}\n initial='initial'\n animate='active'\n exit='exit'\n transition={sliderTransition}\n {...(!isLengthOne\n ? {\n drag: 'x',\n dragConstraints: { left: 0, right: 0 },\n dragElastic: 0.5,\n onDragEnd: (_, dragInfo) => dragEndHandler(dragInfo),\n }\n : {})}\n >\n <Image\n sxStack={(theme) => ({\n default: {\n width: '100%',\n height: '100%',\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: theme.palette.black10,\n position: 'absolute',\n pointerEvents: 'none',\n },\n })}\n alt={images[activeImageIndex]?.imageSrc}\n src={images[activeImageIndex]?.imageSrc}\n componentFallback={\n <Typography\n sx={{\n default: {\n variant: 'h6',\n },\n }}\n >\n {props.locales.failedToLoad}\n </Typography>\n }\n />\n {images[activeImageIndex]?.children}\n </SliderImage>\n </AnimatePresence>\n {typeof props?.children === 'function' ? props?.children?.({ isDialog: false }) : props?.children}\n\n {!isLengthOne && (\n <>\n <Button\n sx={{\n default: {\n position: 'absolute',\n top: '50%',\n left: 5,\n transform: 'translateY(-50%)',\n },\n }}\n genre={props.genre}\n size={props.size}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n turn: 90,\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isRadius\n onClick={() => swipeToImage(-1)}\n />\n <Button\n sx={{\n default: {\n position: 'absolute',\n top: '50%',\n right: 5,\n transform: 'translateY(-50%)',\n },\n }}\n genre={props.genre}\n size={props.size}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n turn: -90,\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isRadius\n onClick={() => swipeToImage(1)}\n />\n <Stack\n sx={{\n default: {\n position: 'absolute',\n bottom: 5,\n left: '50%',\n transform: 'translateX(-50%)',\n gap: '4px',\n },\n }}\n >\n {images.map((i) => (\n <SliderDot\n onClick={() => skipToImage(i.id)}\n key={i.id}\n initial={false}\n animate={{\n scale: activeImageId === i.id ? 1.5 : 1,\n opacity: activeImageId === i.id ? 1 : 0.5,\n }}\n />\n ))}\n </Stack>\n </>\n )}\n\n <Button\n sx={{\n default: {\n position: 'absolute',\n bottom: 5,\n right: 5,\n },\n }}\n genre={props.genre}\n size={props.size}\n icons={[\n {\n type: 'id',\n name: 'Activity',\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isRadius\n onClick={() => handleAdd()}\n />\n </Stack>\n ) : (\n <Stack\n sx={{\n default: {\n width: '100%',\n height: '100%',\n position: 'relative',\n overflow: 'hidden',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n }}\n >\n <Typography\n sx={{\n default: {\n variant: 'h6',\n },\n }}\n >\n {props.locales.noImagesAvailable}\n </Typography>\n </Stack>\n )}\n </StackMotion>\n );\n};\nconst sliderVariants: Variants = {\n initial: (direction) => ({\n x: direction > 0 ? '100%' : '-100%',\n scale: 1,\n opacity: 0,\n }),\n active: { x: 0, scale: 1, opacity: 1 },\n exit: (direction) => ({\n x: direction > 0 ? '-100%' : '100%',\n scale: 1,\n opacity: 0.2,\n }),\n};\nconst sliderTransition = {\n duration: 0.3,\n ease: [0.56, 0.03, 0.12, 1.04],\n};\n","import 'styled-components';\n\nimport { ImageSliderProps } from '.';\nimport { Button } from '../button';\nimport { Stack } from '../stack';\n\nexport const IMAGES: ImageSliderProps['images'] = [\n {\n id: 0,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://drupal-prod.visitcalifornia.com/sites/default/files/styles/fluid_1920/public/2020-06/VC_PlacesToVisit_LosAngelesCounty_RF_1170794243.jpg.webp?itok=46pJYz8v',\n },\n {\n id: 1,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://images.unsplash.com/flagged/photo-1575555201693-7cd442b8023f?fm=jpg&q=60&w=3000&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxzZWFyY2h8Mnx8bG9zJTIwYW5nZWxlc3xlbnwwfHwwfHx8MA%3D%3D',\n },\n {\n id: 2,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://img.goodfon.com/original/2048x1319/8/29/ssha-kaliforniia-los-andzheles-los-angeles-doma-neboskreby-s.jpg',\n },\n {\n id: 3,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://images.pexels.com/photos/2231756/pexels-photo-2231756.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=500',\n },\n {\n id: 4,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://images.pexels.com/photos/1813157/pexels-photo-1813157.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=500',\n },\n];\n"],"names":["SliderImage","styled","motion","div","SliderDot","props","theme","palette","whiteStandard","sliderVariants","initial","direction","x","scale","opacity","active","exit","sliderTransition","duration","ease","ComponentHandleAdd","params","remove","jsxs","Stack","sx","default","position","overflow","aspectRatio","aspect","width","maxWidth","height","borderRadius","br","tablet","children","jsx","AnimatePresence","custom","style","variants","animate","transition","isLengthOne","drag","dragConstraints","left","right","dragElastic","onDragEnd","_","dragInfo","dragEndHandler","Image","sxStack","alignItems","justifyContent","backgroundColor","black10","pointerEvents","isShowBeforeImage","sxImage","objectFit","alt","_b","images","_a","activeImageIndex","imageSrc","src","_d","_c","componentFallback","Typography","variant","failedToLoad","_f","_e","activeImageId","_g","call","isDialog","Button","bottom","genre","size","icons","type","name","isWidthAsHeight","isHiddenBorder","isRadius","onClick","Fragment","gap","turn","isPlaystationEffect","swipeToImage","transform","map","i","skipToImage","id","IMAGES","padding","flexGrow","isDisabled","sxTypography","weight","onIndexChange","useMemo","KEY_SIZE_DATA","radius","isLengthZero","handleAdd","setActiveImage","useState","length","findIndex","img","useCallback","swipeDirection","nextIndex","offset","velocity","swipePower","Math","abs","imageId","currentIndex","newIndex","useEffect","add","useDialog","imageSettings","locales","propsDialog","background","content","useImageSlider","StackMotion","propsStack","flexDirection","_h","_i","isLoading","display","Icon","primaryColor","noImagesAvailable","top"],"mappings":"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"}
1
+ {"version":3,"file":"component.constants-DoZ61vWX.cjs","sources":["../src/components/image-slider/component.styles.tsx","../src/hooks/use-image-slider/use.tsx","../src/components/image-slider/component.tsx","../src/components/image-slider/component.constants.tsx"],"sourcesContent":["import { motion } from 'framer-motion';\nimport styled from 'styled-components';\n\nexport const SliderImage = styled(motion.div)`\n display: flex;\n position: absolute;\n height: 100%;\n width: 100%;\n touch-action: pan-y;\n &:hover {\n cursor: grab;\n }\n\n &:active {\n cursor: grabbing;\n }\n`;\n\nexport const SliderDot = styled(motion.div)`\n width: 6px;\n height: 6px;\n background-color: ${(props) => props.theme.palette.whiteStandard};\n border-radius: 5px;\n opacity: 0.8;\n cursor: pointer;\n`;\n","import { Button } from '@local/components/button';\nimport { Image } from '@local/components/image';\nimport { ImageSliderProps, SliderDot, SliderImage } from '@local/components/image-slider';\nimport { Stack } from '@local/components/stack';\nimport { Typography } from '@local/components/typography';\nimport { useDialog, useDialogProps } from '@local/contexts/context-dialog';\nimport { KEY_SIZE_DATA } from '@local/theme';\n\nimport { AnimatePresence, PanInfo, Variants } from 'framer-motion';\nimport { FC, useCallback, useEffect, useMemo, useState } from 'react';\n\nimport { useImageSliderProps } from '.';\n\nexport const useImageSlider = (props: useImageSliderProps) => {\n const { onIndexChange } = props;\n\n const size = useMemo(() => KEY_SIZE_DATA[props.size], [props.size]);\n const br = useMemo(() => `${size.radius}px`, [size.radius]);\n\n const images = useMemo(() => props.images, [props.images]);\n\n const [{ activeImageId, direction }, setActiveImage] = useState({\n activeImageId: images?.[0]?.id ?? null,\n direction: 0,\n });\n const isLengthOne = useMemo(() => images?.length === 1, [images]);\n const isLengthZero = useMemo(() => images?.length === 0, [images]);\n\n const activeImageIndex = useMemo(() => images.findIndex((img) => img.id === activeImageId), [activeImageId, images]);\n\n const swipeToImage = useCallback(\n (swipeDirection: number) => {\n const currentIndex = images.findIndex((img) => img.id === activeImageId);\n const nextIndex = (currentIndex + swipeDirection + images.length) % images.length;\n setActiveImage({ activeImageId: images[nextIndex].id, direction: swipeDirection });\n },\n [activeImageId, images],\n );\n const dragEndHandler = useCallback(\n (dragInfo: PanInfo) => {\n const { offset, velocity } = dragInfo;\n const swipeThreshold = 50;\n const swipePower = Math.abs(offset.x) * velocity.x;\n\n if (swipePower > 500 || offset.x > swipeThreshold) {\n swipeToImage(-1);\n } else if (swipePower < -500 || offset.x < -swipeThreshold) {\n swipeToImage(1);\n }\n },\n [swipeToImage],\n );\n const skipToImage = useCallback(\n (imageId: number) => {\n const currentIndex = images.findIndex((img) => img.id === activeImageId);\n const newIndex = images.findIndex((img) => img.id === imageId);\n if (newIndex === -1 || newIndex === currentIndex) return;\n\n const direction = newIndex > currentIndex ? 1 : -1;\n setActiveImage({ activeImageId: imageId, direction });\n },\n [activeImageId, images],\n );\n\n useEffect(() => {\n if (activeImageId) onIndexChange?.(activeImageId);\n }, [activeImageId, onIndexChange]);\n\n const { add } = useDialog<ComponentHandleAddProps>({\n br: br,\n dragEndHandler: dragEndHandler,\n images: images,\n children: props.children,\n activeImageIndex: activeImageIndex,\n activeImageId: activeImageId,\n swipeToImage: swipeToImage,\n skipToImage: skipToImage,\n direction: direction,\n aspect: props.imageSettings.aspect,\n genre: props.genre,\n size: props.size,\n failedToLoad: props.locales.failedToLoad,\n isLengthOne: isLengthOne,\n propsDialog: {\n borderRadius: br,\n padding: '0',\n background: 'whiteStandard',\n },\n });\n const handleAdd = useCallback(() => {\n add({\n content: (params, remove) => <ComponentHandleAdd params={params} remove={remove} />,\n });\n }, [add]);\n\n return {\n isLengthZero,\n direction,\n activeImageId,\n isLengthOne,\n dragEndHandler,\n activeImageIndex,\n swipeToImage,\n skipToImage,\n handleAdd,\n };\n};\nconst sliderVariants: Variants = {\n initial: (direction) => ({\n x: direction > 0 ? '100%' : '-100%',\n scale: 1,\n opacity: 0,\n }),\n active: { x: 0, scale: 1, opacity: 1 },\n exit: (direction) => ({\n x: direction > 0 ? '-100%' : '100%',\n scale: 1,\n opacity: 0.2,\n }),\n};\nconst sliderTransition = {\n duration: 0.3,\n ease: [0.56, 0.03, 0.12, 1.04],\n};\n\ntype ComponentHandleAddProps = {\n br?: string;\n dragEndHandler: (dragInfo: PanInfo) => void;\n images: ImageSliderProps['images'];\n children?: ImageSliderProps['children'];\n activeImageIndex: number;\n activeImageId: number | null;\n swipeToImage: (swipeDirection: number) => void;\n skipToImage: (imageId: number) => void;\n direction: number;\n aspect: number;\n failedToLoad: string;\n isLengthOne: boolean;\n} & Pick<ImageSliderProps, 'genre' | 'size'>;\n\nconst ComponentHandleAdd: FC<{\n params?: useDialogProps<ComponentHandleAddProps>;\n remove?: () => void;\n}> = ({ params, remove }) => {\n return (\n <Stack\n sx={{\n default: {\n position: 'relative',\n overflow: 'hidden',\n aspectRatio: `${params?.aspect! * 2} / 2`,\n width: 'auto',\n maxWidth: '70dvw',\n height: '85dvh',\n borderRadius: params?.br,\n },\n tablet: {\n maxWidth: '95dvw',\n },\n }}\n >\n <AnimatePresence initial={false} custom={params?.direction}>\n <SliderImage\n key={params?.activeImageId}\n style={{\n overflow: 'hidden',\n borderRadius: params?.br,\n }}\n custom={params?.direction}\n variants={sliderVariants}\n initial='initial'\n animate='active'\n exit='exit'\n transition={sliderTransition}\n {...(!params?.isLengthOne\n ? {\n drag: 'x',\n dragConstraints: { left: 0, right: 0 },\n dragElastic: 0.5,\n onDragEnd: (_, dragInfo) => params?.dragEndHandler(dragInfo),\n }\n : {})}\n >\n <Image\n sxStack={(theme) => ({\n default: {\n width: '100%',\n height: '100%',\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: theme.palette.black10,\n position: 'absolute',\n pointerEvents: 'none',\n },\n })}\n isShowBeforeImage\n sxImage={{\n default: {\n objectFit: 'contain',\n },\n }}\n alt={(params?.images ?? [])?.[params?.activeImageIndex ?? 0]?.imageSrc}\n src={(params?.images ?? [])?.[params?.activeImageIndex ?? 0]?.imageSrc}\n componentFallback={\n <Typography\n sx={{\n default: {\n variant: 'h6',\n },\n }}\n >\n {params?.failedToLoad}\n </Typography>\n }\n />\n {(params?.images ?? [])?.[params?.activeImageIndex ?? 0]?.children}\n </SliderImage>\n </AnimatePresence>\n {typeof params?.children === 'function' ? params?.children?.({ isDialog: true }) : params?.children}\n\n <Button\n sx={{\n default: {\n position: 'absolute',\n bottom: 15,\n right: 15,\n },\n }}\n genre={params?.genre ?? 'product'}\n size={params?.size ?? 'medium'}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isRadius\n onClick={() => remove?.()}\n />\n {!params?.isLengthOne ? (\n <>\n <Stack\n sx={{\n default: {\n position: 'absolute',\n bottom: 15,\n left: 15,\n gap: '8px',\n },\n }}\n >\n <Button\n genre={params?.genre ?? 'product'}\n size={params?.size ?? 'medium'}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n turn: 90,\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isPlaystationEffect\n isRadius\n onClick={() => params?.swipeToImage?.(-1)}\n />\n <Button\n genre={params?.genre ?? 'product'}\n size={params?.size ?? 'medium'}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n turn: -90,\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isPlaystationEffect\n isRadius\n onClick={() => params?.swipeToImage?.(1)}\n />\n </Stack>\n <Stack\n sx={{\n default: {\n position: 'absolute',\n bottom: 15,\n left: '50%',\n transform: 'translateX(-50%)',\n gap: '4px',\n },\n }}\n >\n {(params?.images ?? [])?.map((i) => (\n <SliderDot\n onClick={() => params?.skipToImage?.(i.id)}\n key={i.id}\n initial={false}\n animate={{\n scale: params?.activeImageId === i.id ? 1.5 : 1,\n opacity: params?.activeImageId === i.id ? 1 : 0.5,\n }}\n />\n ))}\n </Stack>\n </>\n ) : null}\n </Stack>\n );\n};\n","import { AnimatePresence, Variants } from 'framer-motion';\nimport { FC, useMemo } from 'react';\n\nimport { useImageSlider } from '@local/hooks/use-image-slider';\nimport { KEY_SIZE_DATA } from '@local/theme';\n\nimport { ImageSliderProps, SliderDot, SliderImage } from '.';\nimport { Button } from '../button';\nimport { Icon } from '../icon';\nimport { Image } from '../image';\nimport { Stack, StackMotion } from '../stack';\nimport { Typography } from '../typography';\n\nexport const ImageSlider: FC<ImageSliderProps> = (props) => {\n const { onIndexChange } = props;\n const images = useMemo(() => props.images, [props.images]);\n const size = useMemo(() => KEY_SIZE_DATA[props.size], [props.size]);\n const br = useMemo(() => `${size.radius}px`, [size.radius]);\n\n const {\n isLengthZero,\n direction,\n activeImageId,\n isLengthOne,\n dragEndHandler,\n activeImageIndex,\n swipeToImage,\n skipToImage,\n handleAdd,\n } = useImageSlider({\n genre: props.genre,\n size: props.size,\n images: images,\n imageSettings: props.imageSettings,\n locales: props.locales,\n onIndexChange: onIndexChange,\n children: props.children,\n });\n return (\n <StackMotion\n {...props.propsStack}\n sx={(theme) => ({\n ...props.propsStack?.sx,\n default: {\n borderRadius: br,\n flexDirection: 'column',\n alignItems: 'center',\n overflow: 'hidden',\n width: 'auto',\n maxWidth: '70dvw',\n height: '85dvh',\n ...(props.propsStack?.sx\n ? typeof props.propsStack?.sx === 'function'\n ? props.propsStack?.sx(theme).default\n : props.propsStack?.sx.default\n : {}),\n },\n tablet: {\n maxWidth: '95dvw',\n ...(props.propsStack?.sx\n ? typeof props.propsStack?.sx === 'function'\n ? props.propsStack?.sx(theme).tablet\n : props.propsStack?.sx.tablet\n : {}),\n },\n })}\n >\n {props.isLoading ? (\n <Stack\n sx={{\n default: {\n width: '100%',\n height: '100%',\n position: 'relative',\n overflow: 'hidden',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n }}\n >\n <Icon size='large' type='loading' primaryColor='blueFocus' name='Line' />\n </Stack>\n ) : !isLengthZero ? (\n <Stack\n sx={{\n default: {\n width: '100%',\n height: '100%',\n position: 'relative',\n overflow: 'hidden',\n },\n }}\n >\n <AnimatePresence initial={false} custom={direction}>\n <SliderImage\n key={activeImageId}\n style={{\n overflow: 'hidden',\n borderRadius: br,\n }}\n custom={direction}\n variants={sliderVariants}\n initial='initial'\n animate='active'\n exit='exit'\n transition={sliderTransition}\n {...(!isLengthOne\n ? {\n drag: 'x',\n dragConstraints: { left: 0, right: 0 },\n dragElastic: 0.5,\n onDragEnd: (_, dragInfo) => dragEndHandler(dragInfo),\n }\n : {})}\n >\n <Image\n sxStack={(theme) => ({\n default: {\n width: '100%',\n height: '100%',\n alignItems: 'center',\n justifyContent: 'center',\n backgroundColor: theme.palette.black10,\n position: 'absolute',\n pointerEvents: 'none',\n },\n })}\n alt={images[activeImageIndex]?.imageSrc}\n src={images[activeImageIndex]?.imageSrc}\n componentFallback={\n <Typography\n sx={{\n default: {\n variant: 'h6',\n },\n }}\n >\n {props.locales.failedToLoad}\n </Typography>\n }\n />\n {images[activeImageIndex]?.children}\n </SliderImage>\n </AnimatePresence>\n {typeof props?.children === 'function' ? props?.children?.({ isDialog: false }) : props?.children}\n\n {!isLengthOne && (\n <>\n <Button\n sx={{\n default: {\n position: 'absolute',\n top: '50%',\n left: 5,\n transform: 'translateY(-50%)',\n },\n }}\n genre={props.genre}\n size={props.size}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n turn: 90,\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isRadius\n onClick={() => swipeToImage(-1)}\n />\n <Button\n sx={{\n default: {\n position: 'absolute',\n top: '50%',\n right: 5,\n transform: 'translateY(-50%)',\n },\n }}\n genre={props.genre}\n size={props.size}\n icons={[\n {\n type: 'id',\n name: 'Arrow4',\n turn: -90,\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isRadius\n onClick={() => swipeToImage(1)}\n />\n <Stack\n sx={{\n default: {\n position: 'absolute',\n bottom: 5,\n left: '50%',\n transform: 'translateX(-50%)',\n gap: '4px',\n },\n }}\n >\n {images.map((i) => (\n <SliderDot\n onClick={() => skipToImage(i.id)}\n key={i.id}\n initial={false}\n animate={{\n scale: activeImageId === i.id ? 1.5 : 1,\n opacity: activeImageId === i.id ? 1 : 0.5,\n }}\n />\n ))}\n </Stack>\n </>\n )}\n\n <Button\n sx={{\n default: {\n position: 'absolute',\n bottom: 5,\n right: 5,\n },\n }}\n genre={props.genre}\n size={props.size}\n icons={[\n {\n type: 'id',\n name: 'Activity',\n },\n ]}\n isWidthAsHeight\n isHiddenBorder\n isRadius\n onClick={() => handleAdd()}\n />\n </Stack>\n ) : (\n <Stack\n sx={{\n default: {\n width: '100%',\n height: '100%',\n position: 'relative',\n overflow: 'hidden',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n },\n }}\n >\n <Typography\n sx={{\n default: {\n variant: 'h6',\n },\n }}\n >\n {props.locales.noImagesAvailable}\n </Typography>\n </Stack>\n )}\n </StackMotion>\n );\n};\nconst sliderVariants: Variants = {\n initial: (direction) => ({\n x: direction > 0 ? '100%' : '-100%',\n scale: 1,\n opacity: 0,\n }),\n active: { x: 0, scale: 1, opacity: 1 },\n exit: (direction) => ({\n x: direction > 0 ? '-100%' : '100%',\n scale: 1,\n opacity: 0.2,\n }),\n};\nconst sliderTransition = {\n duration: 0.3,\n ease: [0.56, 0.03, 0.12, 1.04],\n};\n","import 'styled-components';\n\nimport { ImageSliderProps } from '.';\nimport { Button } from '../button';\nimport { Stack } from '../stack';\n\nexport const IMAGES: ImageSliderProps['images'] = [\n {\n id: 0,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://drupal-prod.visitcalifornia.com/sites/default/files/styles/fluid_1920/public/2020-06/VC_PlacesToVisit_LosAngelesCounty_RF_1170794243.jpg.webp?itok=46pJYz8v',\n },\n {\n id: 1,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://images.unsplash.com/flagged/photo-1575555201693-7cd442b8023f?fm=jpg&q=60&w=3000&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxzZWFyY2h8Mnx8bG9zJTIwYW5nZWxlc3xlbnwwfHwwfHx8MA%3D%3D',\n },\n {\n id: 2,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://img.goodfon.com/original/2048x1319/8/29/ssha-kaliforniia-los-andzheles-los-angeles-doma-neboskreby-s.jpg',\n },\n {\n id: 3,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://images.pexels.com/photos/2231756/pexels-photo-2231756.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=500',\n },\n {\n id: 4,\n children: (\n <Stack\n sx={{\n default: {\n justifyContent: 'flex-start',\n padding: '5px',\n flexGrow: 1,\n },\n }}\n >\n <Button\n isHiddenBorder\n isDisabled\n genre='realebail-white'\n size='medium'\n sxTypography={{ default: { weight: 700 } }}\n >\n Los Angeles\n </Button>\n </Stack>\n ),\n imageSrc:\n 'https://images.pexels.com/photos/1813157/pexels-photo-1813157.jpeg?auto=compress&cs=tinysrgb&dpr=2&w=500',\n },\n];\n"],"names":["SliderImage","styled","motion","div","SliderDot","props","theme","palette","whiteStandard","sliderVariants","initial","direction","x","scale","opacity","active","exit","sliderTransition","duration","ease","ComponentHandleAdd","params","remove","jsxs","Stack","sx","default","position","overflow","aspectRatio","aspect","width","maxWidth","height","borderRadius","br","tablet","children","jsx","AnimatePresence","custom","style","variants","animate","transition","isLengthOne","drag","dragConstraints","left","right","dragElastic","onDragEnd","_","dragInfo","dragEndHandler","Image","sxStack","alignItems","justifyContent","backgroundColor","black10","pointerEvents","isShowBeforeImage","sxImage","objectFit","alt","_b","images","_a","activeImageIndex","imageSrc","src","_d","_c","componentFallback","Typography","variant","failedToLoad","_f","_e","activeImageId","_g","call","isDialog","Button","bottom","genre","size","icons","type","name","isWidthAsHeight","isHiddenBorder","isRadius","onClick","Fragment","gap","turn","isPlaystationEffect","swipeToImage","transform","map","i","skipToImage","id","IMAGES","padding","flexGrow","isDisabled","sxTypography","weight","onIndexChange","useMemo","KEY_SIZE_DATA","radius","isLengthZero","handleAdd","setActiveImage","useState","length","findIndex","img","useCallback","swipeDirection","nextIndex","offset","velocity","swipePower","Math","abs","imageId","currentIndex","newIndex","useEffect","add","useDialog","imageSettings","locales","propsDialog","background","content","useImageSlider","StackMotion","propsStack","flexDirection","_h","_i","isLoading","display","Icon","primaryColor","noImagesAvailable","top"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";const t=require("./jsx-runtime-BcGej2Kr.cjs"),n=require("framer-motion"),e=require("react"),i=require("./component-DnJo66DS.cjs"),o=require("./component-GKvpOWlO.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]),d=e.useMemo(()=>l.lengthData??{},[l.lengthData]),x=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:x,...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==d?void 0:d[o],onClick:()=>l.changeIndex(o),children:(null==(a=null==(s=null==d?void 0:d[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-D6AJ1xmO.cjs.map
1
+ "use strict";const t=require("./jsx-runtime-BcGej2Kr.cjs"),n=require("framer-motion"),e=require("react"),i=require("./component-BLWcOf3A.cjs"),o=require("./component-GKvpOWlO.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]),d=e.useMemo(()=>l.lengthData??{},[l.lengthData]),x=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:x,...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==d?void 0:d[o],onClick:()=>l.changeIndex(o),children:(null==(a=null==(s=null==d?void 0:d[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-DxcsPL8D.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"component.constants-D6AJ1xmO.cjs","sources":["../src/components/pagination/component.constants.ts","../src/components/pagination/component.tsx"],"sourcesContent":["export const DEFAULT_COMPONENT_PAGINATION_GAP = 12;\n","import { AnimatePresence, motion } from 'framer-motion';\nimport { FC, useCallback, useMemo } from 'react';\n\nimport { Button } from '@local/components/button';\nimport { Stack } from '@local/components/stack';\n\nimport { DEFAULT_COMPONENT_PAGINATION_GAP, PaginationProps } from '.';\n\nexport const Pagination: FC<PaginationProps> = (props) => {\n const isDisabledPrevious = useMemo(() => props.index == 0 && !props.isInfinity, [props.index, props.isInfinity]);\n const isDisabledNext = useMemo(\n () => props.index == props.length - 1 && !props.isInfinity,\n [props.index, props.isInfinity, props.length],\n );\n\n const gap = useMemo(() => props.gap ?? DEFAULT_COMPONENT_PAGINATION_GAP, [props.gap]);\n const lengthData = useMemo(() => props.lengthData ?? {}, [props.lengthData]);\n const handlePrevious = useCallback(() => {\n if (props.index == 0) {\n if (props.isInfinity) {\n props.changeIndex(props.length - 1);\n }\n } else {\n props.changeIndex(props.index - 1);\n }\n }, [props]);\n\n const handleNext = useCallback(() => {\n if (props.index == props.length - 1) {\n if (props.isInfinity) {\n props.changeIndex(0);\n }\n } else {\n props.changeIndex(props.index + 1);\n }\n }, [props]);\n\n const visibleButtons = useMemo(() => {\n const half = Math.floor(props.viewQuantity / 2);\n const start = Math.max(0, Math.min(props.index - half, props.length - props.viewQuantity));\n const end = Math.min(props.length, start + props.viewQuantity);\n return Array.from({ length: end - start }, (_, i) => start + i);\n }, [props.index, props.viewQuantity, props.length]);\n\n return (\n <Stack\n sx={(theme) => ({\n ...props?.sx,\n default: {\n height: 'fit-content',\n gap: `${gap}px`,\n ...(props?.sx ? (typeof props?.sx === 'function' ? props?.sx(theme).default : props?.sx.default) : {}),\n },\n })}\n >\n <Button\n isDisabled={isDisabledPrevious}\n isHidden={isDisabledPrevious}\n onClick={handlePrevious}\n {...props.buttonControl}\n icons={[\n {\n type: 'id',\n name: 'Arrow2',\n order: -1,\n turn: 90,\n },\n ]}\n >\n {!props.buttonControl.isWidthAsHeight && props.locale.prev}\n </Button>\n\n <Stack\n sx={{\n default: {\n width: 'fit-content',\n height: 'fit-content',\n display: 'flex',\n gap: `${gap}px`,\n alignItems: 'center',\n justifyContent: 'flex-start',\n },\n }}\n >\n {Array.from({ length: props.length }).map((_, i) => {\n const isVisible = visibleButtons.includes(i);\n return (\n <AnimatePresence key={i} mode='popLayout'>\n {isVisible && (\n <motion.div\n layout\n initial={{\n opacity: 0,\n scale: 0.8,\n }}\n animate={{\n opacity: 1,\n scale: 1,\n }}\n exit={{\n opacity: 0,\n scale: 0.8,\n }}\n transition={{ duration: 1, ease: 'backOut' }}\n >\n <Button\n isWidthAsHeight\n {...(i === props.index ? props.buttonCount.active : props.buttonCount.inactive)}\n {...lengthData?.[i]}\n onClick={() => props.changeIndex(i)}\n >\n {lengthData?.[i]?.icons?.length ? null : i + 1}\n </Button>\n </motion.div>\n )}\n </AnimatePresence>\n );\n })}\n </Stack>\n\n <Button\n isDisabled={isDisabledNext}\n isHidden={isDisabledNext}\n onClick={handleNext}\n {...props.buttonControl}\n icons={[\n {\n type: 'id',\n name: 'Arrow2',\n turn: -90,\n },\n ]}\n >\n {!props.buttonControl.isWidthAsHeight && props.locale.next}\n </Button>\n </Stack>\n );\n};\n"],"names":["DEFAULT_COMPONENT_PAGINATION_GAP","props","isDisabledPrevious","useMemo","index","isInfinity","isDisabledNext","length","gap","lengthData","handlePrevious","useCallback","changeIndex","handleNext","visibleButtons","half","Math","floor","viewQuantity","start","max","min","end","Array","from","_","i","jsxs","Stack","sx","theme","default","height","children","jsx","Button","isDisabled","isHidden","onClick","buttonControl","icons","type","name","order","turn","isWidthAsHeight","locale","prev","width","display","alignItems","justifyContent","map","isVisible","includes","AnimatePresence","mode","motion","div","layout","initial","opacity","scale","animate","exit","transition","duration","ease","buttonCount","active","inactive","next"],"mappings":"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"}
1
+ {"version":3,"file":"component.constants-DxcsPL8D.cjs","sources":["../src/components/pagination/component.constants.ts","../src/components/pagination/component.tsx"],"sourcesContent":["export const DEFAULT_COMPONENT_PAGINATION_GAP = 12;\n","import { AnimatePresence, motion } from 'framer-motion';\nimport { FC, useCallback, useMemo } from 'react';\n\nimport { Button } from '@local/components/button';\nimport { Stack } from '@local/components/stack';\n\nimport { DEFAULT_COMPONENT_PAGINATION_GAP, PaginationProps } from '.';\n\nexport const Pagination: FC<PaginationProps> = (props) => {\n const isDisabledPrevious = useMemo(() => props.index == 0 && !props.isInfinity, [props.index, props.isInfinity]);\n const isDisabledNext = useMemo(\n () => props.index == props.length - 1 && !props.isInfinity,\n [props.index, props.isInfinity, props.length],\n );\n\n const gap = useMemo(() => props.gap ?? DEFAULT_COMPONENT_PAGINATION_GAP, [props.gap]);\n const lengthData = useMemo(() => props.lengthData ?? {}, [props.lengthData]);\n const handlePrevious = useCallback(() => {\n if (props.index == 0) {\n if (props.isInfinity) {\n props.changeIndex(props.length - 1);\n }\n } else {\n props.changeIndex(props.index - 1);\n }\n }, [props]);\n\n const handleNext = useCallback(() => {\n if (props.index == props.length - 1) {\n if (props.isInfinity) {\n props.changeIndex(0);\n }\n } else {\n props.changeIndex(props.index + 1);\n }\n }, [props]);\n\n const visibleButtons = useMemo(() => {\n const half = Math.floor(props.viewQuantity / 2);\n const start = Math.max(0, Math.min(props.index - half, props.length - props.viewQuantity));\n const end = Math.min(props.length, start + props.viewQuantity);\n return Array.from({ length: end - start }, (_, i) => start + i);\n }, [props.index, props.viewQuantity, props.length]);\n\n return (\n <Stack\n sx={(theme) => ({\n ...props?.sx,\n default: {\n height: 'fit-content',\n gap: `${gap}px`,\n ...(props?.sx ? (typeof props?.sx === 'function' ? props?.sx(theme).default : props?.sx.default) : {}),\n },\n })}\n >\n <Button\n isDisabled={isDisabledPrevious}\n isHidden={isDisabledPrevious}\n onClick={handlePrevious}\n {...props.buttonControl}\n icons={[\n {\n type: 'id',\n name: 'Arrow2',\n order: -1,\n turn: 90,\n },\n ]}\n >\n {!props.buttonControl.isWidthAsHeight && props.locale.prev}\n </Button>\n\n <Stack\n sx={{\n default: {\n width: 'fit-content',\n height: 'fit-content',\n display: 'flex',\n gap: `${gap}px`,\n alignItems: 'center',\n justifyContent: 'flex-start',\n },\n }}\n >\n {Array.from({ length: props.length }).map((_, i) => {\n const isVisible = visibleButtons.includes(i);\n return (\n <AnimatePresence key={i} mode='popLayout'>\n {isVisible && (\n <motion.div\n layout\n initial={{\n opacity: 0,\n scale: 0.8,\n }}\n animate={{\n opacity: 1,\n scale: 1,\n }}\n exit={{\n opacity: 0,\n scale: 0.8,\n }}\n transition={{ duration: 1, ease: 'backOut' }}\n >\n <Button\n isWidthAsHeight\n {...(i === props.index ? props.buttonCount.active : props.buttonCount.inactive)}\n {...lengthData?.[i]}\n onClick={() => props.changeIndex(i)}\n >\n {lengthData?.[i]?.icons?.length ? null : i + 1}\n </Button>\n </motion.div>\n )}\n </AnimatePresence>\n );\n })}\n </Stack>\n\n <Button\n isDisabled={isDisabledNext}\n isHidden={isDisabledNext}\n onClick={handleNext}\n {...props.buttonControl}\n icons={[\n {\n type: 'id',\n name: 'Arrow2',\n turn: -90,\n },\n ]}\n >\n {!props.buttonControl.isWidthAsHeight && props.locale.next}\n </Button>\n </Stack>\n );\n};\n"],"names":["DEFAULT_COMPONENT_PAGINATION_GAP","props","isDisabledPrevious","useMemo","index","isInfinity","isDisabledNext","length","gap","lengthData","handlePrevious","useCallback","changeIndex","handleNext","visibleButtons","half","Math","floor","viewQuantity","start","max","min","end","Array","from","_","i","jsxs","Stack","sx","theme","default","height","children","jsx","Button","isDisabled","isHidden","onClick","buttonControl","icons","type","name","order","turn","isWidthAsHeight","locale","prev","width","display","alignItems","justifyContent","map","isVisible","includes","AnimatePresence","mode","motion","div","layout","initial","opacity","scale","animate","exit","transition","duration","ease","buttonCount","active","inactive","next"],"mappings":"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"}
@@ -2,9 +2,9 @@ import { j as jsxRuntimeExports } from "./jsx-runtime-BrDlu8eK.js";
2
2
  import { a as Skeleton } from "./area-sDVSuS3G.js";
3
3
  import { b as Stack } from "./component-mzzOCXSx.js";
4
4
  import { useState, useEffect } from "react";
5
+ import styled, { useTheme } from "styled-components";
5
6
  import { b as addTransition } from "./style-RL73t3JD.js";
6
7
  import { a as addSX } from "./style-plT9Ah7t.js";
7
- import styled from "styled-components";
8
8
  const Image = (props) => {
9
9
  const [isPending, setIsPending] = useState(true);
10
10
  const [isError, setIsError] = useState(false);
@@ -36,11 +36,12 @@ const Image = (props) => {
36
36
  setIsError(false);
37
37
  };
38
38
  }, [props.src]);
39
+ const theme = useTheme();
40
+ const { default: defaultSx, ...rest } = (props == null ? void 0 : props.sxStack) ? typeof (props == null ? void 0 : props.sxStack) === "function" ? props.sxStack(theme) : props.sxStack : {};
39
41
  return /* @__PURE__ */ jsxRuntimeExports.jsxs(
40
42
  Stack,
41
43
  {
42
- sx: (theme) => ({
43
- ...props == null ? void 0 : props.sxStack,
44
+ sx: {
44
45
  default: {
45
46
  position: "relative",
46
47
  overflow: "hidden",
@@ -60,9 +61,10 @@ const Image = (props) => {
60
61
  zIndex: 0
61
62
  }
62
63
  } : {},
63
- ...(props == null ? void 0 : props.sxStack) ? typeof (props == null ? void 0 : props.sxStack) === "function" ? props == null ? void 0 : props.sxStack(theme).default : props == null ? void 0 : props.sxStack.default : {}
64
- }
65
- }),
64
+ ...defaultSx
65
+ },
66
+ ...rest
67
+ },
66
68
  children: [
67
69
  !isError ? props.componentLoading || isPending ? /* @__PURE__ */ jsxRuntimeExports.jsx(
68
70
  Skeleton,
@@ -95,4 +97,4 @@ export {
95
97
  Image as I,
96
98
  ImageIMG as a
97
99
  };
98
- //# sourceMappingURL=component.styles-BEaqQuF_.js.map
100
+ //# sourceMappingURL=component.styles-BYVYSgCZ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component.styles-BYVYSgCZ.js","sources":["../src/components/image/component.tsx","../src/components/image/component.styles.tsx"],"sourcesContent":["import { Skeleton } from '@local/areas/skeleton';\nimport { Stack } from '@local/components/stack';\n\nimport { FC, useEffect, useState } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport { ImageIMG, ImageProps } from '.';\n\nexport const Image: FC<ImageProps> = (props) => {\n const [isPending, setIsPending] = useState(true);\n const [isError, setIsError] = useState(false);\n\n useEffect(() => {\n if (!props.src) return;\n\n const img = new (window.Image as { new (width?: number, height?: number): HTMLImageElement })();\n\n img.onload = () => {\n setIsPending(false);\n setIsError(false);\n };\n\n img.onerror = () => {\n setIsPending(false);\n setIsError(true);\n };\n\n img.src = props.src;\n\n if (img.complete) {\n if (img.naturalWidth > 0) {\n setIsPending(false);\n setIsError(false);\n } else {\n setIsPending(false);\n setIsError(true);\n }\n }\n\n return () => {\n img.onload = null;\n img.onerror = null;\n setIsPending(true);\n setIsError(false);\n };\n }, [props.src]);\n const theme = useTheme();\n const { default: defaultSx, ...rest } = props?.sxStack\n ? typeof props?.sxStack === 'function'\n ? props.sxStack(theme)\n : props.sxStack\n : {};\n\n return (\n <Stack\n sx={{\n default: {\n position: 'relative',\n overflow: 'hidden',\n ...(props.isShowBeforeImage\n ? {\n '&::before': {\n width: '100%',\n height: '100%',\n content: '\"\"',\n position: 'absolute',\n inset: 0,\n backgroundImage: `url(${props.src})`,\n backgroundRepeat: 'no-repeat',\n backgroundSize: 'cover',\n backgroundPosition: 'center',\n filter: 'blur(20px)',\n transform: 'scale(1.1)',\n zIndex: 0,\n },\n }\n : {}),\n ...defaultSx,\n },\n ...rest,\n }}\n >\n {!isError ? (\n props.componentLoading || isPending ? (\n <Skeleton\n visible\n sx={{\n default: {\n width: '100%',\n height: '100%',\n },\n }}\n />\n ) : null\n ) : null}\n {!isError && (\n <ImageIMG loading='lazy' $isPending={isPending} src={props.src} alt={props.alt} $sx={props.sxImage} />\n )}\n {isError ? props.componentFallback || null : null}\n </Stack>\n );\n};\n","import { addTransition } from '@local/styles/add';\nimport { addSX } from '@local/styles/sx';\n\nimport styled from 'styled-components';\n\nimport { ImageIMGProps } from '.';\n\nexport const ImageIMG = styled.img<ImageIMGProps>`\n position: absolute;\n width: 100%;\n height: 100%;\n object-fit: cover;\n opacity: ${(props) => (props.$isPending ? 0 : 1)};\n ${addTransition};\n ${addSX};\n`;\n"],"names":["jsxs","jsx"],"mappings":";;;;;;;AAQO,MAAM,QAAwB,CAAC,UAAU;AAC9C,QAAM,CAAC,WAAW,YAAY,IAAI,SAAS,IAAI;AAC/C,QAAM,CAAC,SAAS,UAAU,IAAI,SAAS,KAAK;AAE5C,YAAU,MAAM;AACd,QAAI,CAAC,MAAM,IAAK;AAEhB,UAAM,MAAM,IAAK,OAAO,MAAA;AAExB,QAAI,SAAS,MAAM;AACjB,mBAAa,KAAK;AAClB,iBAAW,KAAK;AAAA,IAAA;AAGlB,QAAI,UAAU,MAAM;AAClB,mBAAa,KAAK;AAClB,iBAAW,IAAI;AAAA,IAAA;AAGjB,QAAI,MAAM,MAAM;AAEhB,QAAI,IAAI,UAAU;AAChB,UAAI,IAAI,eAAe,GAAG;AACxB,qBAAa,KAAK;AAClB,mBAAW,KAAK;AAAA,MAAA,OACX;AACL,qBAAa,KAAK;AAClB,mBAAW,IAAI;AAAA,MAAA;AAAA,IACjB;AAGF,WAAO,MAAM;AACX,UAAI,SAAS;AACb,UAAI,UAAU;AACd,mBAAa,IAAI;AACjB,iBAAW,KAAK;AAAA,IAAA;AAAA,EAClB,GACC,CAAC,MAAM,GAAG,CAAC;AACd,QAAM,QAAQ,SAAA;AACd,QAAM,EAAE,SAAS,WAAW,GAAG,KAAA,KAAS,+BAAO,WAC3C,QAAO,+BAAO,aAAY,aACxB,MAAM,QAAQ,KAAK,IACnB,MAAM,UACR,CAAA;AAEJ,SACEA,kCAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,IAAI;AAAA,QACF,SAAS;AAAA,UACP,UAAU;AAAA,UACV,UAAU;AAAA,UACV,GAAI,MAAM,oBACN;AAAA,YACE,aAAa;AAAA,cACX,OAAO;AAAA,cACP,QAAQ;AAAA,cACR,SAAS;AAAA,cACT,UAAU;AAAA,cACV,OAAO;AAAA,cACP,iBAAiB,OAAO,MAAM,GAAG;AAAA,cACjC,kBAAkB;AAAA,cAClB,gBAAgB;AAAA,cAChB,oBAAoB;AAAA,cACpB,QAAQ;AAAA,cACR,WAAW;AAAA,cACX,QAAQ;AAAA,YAAA;AAAA,UACV,IAEF,CAAA;AAAA,UACJ,GAAG;AAAA,QAAA;AAAA,QAEL,GAAG;AAAA,MAAA;AAAA,MAGJ,UAAA;AAAA,QAAA,CAAC,UACA,MAAM,oBAAoB,YACxBC,kCAAAA;AAAAA,UAAC;AAAA,UAAA;AAAA,YACC,SAAO;AAAA,YACP,IAAI;AAAA,cACF,SAAS;AAAA,gBACP,OAAO;AAAA,gBACP,QAAQ;AAAA,cAAA;AAAA,YACV;AAAA,UACF;AAAA,QAAA,IAEA,OACF;AAAA,QACH,CAAC,WACAA,kCAAAA,IAAC,UAAA,EAAS,SAAQ,QAAO,YAAY,WAAW,KAAK,MAAM,KAAK,KAAK,MAAM,KAAK,KAAK,MAAM,SAAS;AAAA,QAErG,UAAU,MAAM,qBAAqB,OAAO;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGnD;AC9FO,MAAM,WAAW,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,aAKlB,CAAC,UAAW,MAAM,aAAa,IAAI,CAAE;AAAA,IAC9C,aAAa;AAAA,IACb,KAAK;AAAA;"}
@@ -0,0 +1,10 @@
1
+ "use strict";const e=require("./jsx-runtime-BcGej2Kr.cjs"),t=require("./area-DRsIULcw.cjs"),r=require("./component-GKvpOWlO.cjs"),n=require("react"),o=require("styled-components"),s=require("./style-Df37KnoJ.cjs"),i=require("./style-fRZ6xrVp.cjs"),a=o.img`
2
+ position: absolute;
3
+ width: 100%;
4
+ height: 100%;
5
+ object-fit: cover;
6
+ opacity: ${e=>e.$isPending?0:1};
7
+ ${s.addTransition};
8
+ ${i.addSX};
9
+ `;exports.Image=s=>{const[i,c]=n.useState(!0),[l,u]=n.useState(!1);n.useEffect(()=>{if(!s.src)return;const e=new window.Image;return e.onload=()=>{c(!1),u(!1)},e.onerror=()=>{c(!1),u(!0)},e.src=s.src,e.complete&&(e.naturalWidth>0?(c(!1),u(!1)):(c(!1),u(!0))),()=>{e.onload=null,e.onerror=null,c(!0),u(!1)}},[s.src]);const d=o.useTheme(),{default:x,...g}=(null==s?void 0:s.sxStack)?"function"==typeof(null==s?void 0:s.sxStack)?s.sxStack(d):s.sxStack:{};return e.jsxRuntimeExports.jsxs(r.Stack,{sx:{default:{position:"relative",overflow:"hidden",...s.isShowBeforeImage?{"&::before":{width:"100%",height:"100%",content:'""',position:"absolute",inset:0,backgroundImage:`url(${s.src})`,backgroundRepeat:"no-repeat",backgroundSize:"cover",backgroundPosition:"center",filter:"blur(20px)",transform:"scale(1.1)",zIndex:0}}:{},...x},...g},children:[l?null:s.componentLoading||i?e.jsxRuntimeExports.jsx(t.Skeleton,{visible:!0,sx:{default:{width:"100%",height:"100%"}}}):null,!l&&e.jsxRuntimeExports.jsx(a,{loading:"lazy",$isPending:i,src:s.src,alt:s.alt,$sx:s.sxImage}),l&&s.componentFallback||null]})},exports.ImageIMG=a;
10
+ //# sourceMappingURL=component.styles-CAN6t4un.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component.styles-CAN6t4un.cjs","sources":["../src/components/image/component.styles.tsx","../src/components/image/component.tsx"],"sourcesContent":["import { addTransition } from '@local/styles/add';\nimport { addSX } from '@local/styles/sx';\n\nimport styled from 'styled-components';\n\nimport { ImageIMGProps } from '.';\n\nexport const ImageIMG = styled.img<ImageIMGProps>`\n position: absolute;\n width: 100%;\n height: 100%;\n object-fit: cover;\n opacity: ${(props) => (props.$isPending ? 0 : 1)};\n ${addTransition};\n ${addSX};\n`;\n","import { Skeleton } from '@local/areas/skeleton';\nimport { Stack } from '@local/components/stack';\n\nimport { FC, useEffect, useState } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport { ImageIMG, ImageProps } from '.';\n\nexport const Image: FC<ImageProps> = (props) => {\n const [isPending, setIsPending] = useState(true);\n const [isError, setIsError] = useState(false);\n\n useEffect(() => {\n if (!props.src) return;\n\n const img = new (window.Image as { new (width?: number, height?: number): HTMLImageElement })();\n\n img.onload = () => {\n setIsPending(false);\n setIsError(false);\n };\n\n img.onerror = () => {\n setIsPending(false);\n setIsError(true);\n };\n\n img.src = props.src;\n\n if (img.complete) {\n if (img.naturalWidth > 0) {\n setIsPending(false);\n setIsError(false);\n } else {\n setIsPending(false);\n setIsError(true);\n }\n }\n\n return () => {\n img.onload = null;\n img.onerror = null;\n setIsPending(true);\n setIsError(false);\n };\n }, [props.src]);\n const theme = useTheme();\n const { default: defaultSx, ...rest } = props?.sxStack\n ? typeof props?.sxStack === 'function'\n ? props.sxStack(theme)\n : props.sxStack\n : {};\n\n return (\n <Stack\n sx={{\n default: {\n position: 'relative',\n overflow: 'hidden',\n ...(props.isShowBeforeImage\n ? {\n '&::before': {\n width: '100%',\n height: '100%',\n content: '\"\"',\n position: 'absolute',\n inset: 0,\n backgroundImage: `url(${props.src})`,\n backgroundRepeat: 'no-repeat',\n backgroundSize: 'cover',\n backgroundPosition: 'center',\n filter: 'blur(20px)',\n transform: 'scale(1.1)',\n zIndex: 0,\n },\n }\n : {}),\n ...defaultSx,\n },\n ...rest,\n }}\n >\n {!isError ? (\n props.componentLoading || isPending ? (\n <Skeleton\n visible\n sx={{\n default: {\n width: '100%',\n height: '100%',\n },\n }}\n />\n ) : null\n ) : null}\n {!isError && (\n <ImageIMG loading='lazy' $isPending={isPending} src={props.src} alt={props.alt} $sx={props.sxImage} />\n )}\n {isError ? props.componentFallback || null : null}\n </Stack>\n );\n};\n"],"names":["ImageIMG","styled","img","props","$isPending","addTransition","addSX","isPending","setIsPending","useState","isError","setIsError","useEffect","src","window","Image","onload","onerror","complete","naturalWidth","theme","useTheme","default","defaultSx","rest","sxStack","jsxs","Stack","sx","position","overflow","isShowBeforeImage","width","height","content","inset","backgroundImage","backgroundRepeat","backgroundSize","backgroundPosition","filter","transform","zIndex","children","componentLoading","jsx","Skeleton","visible","loading","alt","$sx","sxImage","componentFallback"],"mappings":"wPAOaA,EAAWC,EAAOC,GAAA;;;;;aAKjBC,GAAWA,EAAMC,WAAa,EAAI;IAC5CC;IACAC;gBCNkCH,IACpC,MAAOI,EAAWC,GAAgBC,EAAAA,UAAS,IACpCC,EAASC,GAAcF,EAAAA,UAAS,GAEvCG,EAAAA,UAAU,KACR,IAAKT,EAAMU,IAAK,OAEhB,MAAMX,EAAM,IAAKY,OAAOC,MAwBxB,OAtBAb,EAAIc,OAAS,KACXR,GAAa,GACbG,GAAW,IAGbT,EAAIe,QAAU,KACZT,GAAa,GACbG,GAAW,IAGbT,EAAIW,IAAMV,EAAMU,IAEZX,EAAIgB,WACFhB,EAAIiB,aAAe,GACrBX,GAAa,GACbG,GAAW,KAEXH,GAAa,GACbG,GAAW,KAIR,KACLT,EAAIc,OAAS,KACbd,EAAIe,QAAU,KACdT,GAAa,GACbG,GAAW,KAEZ,CAACR,EAAMU,MACV,MAAMO,EAAQC,EAAAA,YACNC,QAASC,KAAcC,UAASrB,WAAOsB,SACjB,mBAAnB,MAAAtB,OAAA,EAAAA,EAAOsB,SACZtB,EAAMsB,QAAQL,GACdjB,EAAMsB,QACR,CAAA,EAEJ,SACEC,kBAAAA,KAACC,EAAAA,MAAA,CACCC,GAAI,CACFN,QAAS,CACPO,SAAU,WACVC,SAAU,YACN3B,EAAM4B,kBACN,CACE,YAAa,CACXC,MAAO,OACPC,OAAQ,OACRC,QAAS,KACTL,SAAU,WACVM,MAAO,EACPC,gBAAiB,OAAOjC,EAAMU,OAC9BwB,iBAAkB,YAClBC,eAAgB,QAChBC,mBAAoB,SACpBC,OAAQ,aACRC,UAAW,aACXC,OAAQ,IAGZ,CAAA,KACDnB,MAEFC,GAGJmB,SAAA,CAACjC,EAYE,KAXFP,EAAMyC,kBAAoBrC,IACxBsC,kBAAAA,IAACC,EAAAA,SAAA,CACCC,SAAO,EACPnB,GAAI,CACFN,QAAS,CACPU,MAAO,OACPC,OAAQ,WAIZ,MAEJvB,GACAmC,EAAAA,kBAAAA,IAAC7C,EAAA,CAASgD,QAAQ,OAAO5C,WAAYG,EAAWM,IAAKV,EAAMU,IAAKoC,IAAK9C,EAAM8C,IAAKC,IAAK/C,EAAMgD,UAE5FzC,GAAUP,EAAMiD,mBAA4B"}