{"version":3,"file":"HorizontalCarousel.BbMHwKxx.mjs","names":["React.useRef"],"sources":["https:/framerusercontent.com/modules/CWkTbWVeR5mNIlo2eSZQ/JxyQpAaOJeH5oA1Qtr9k/HorizontalCarousel.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import*as React from\"react\";import{addPropertyControls,ControlType}from\"framer\";export default function HorizontalCarousel(props){const ref=React.useRef(null);const isDown=React.useRef(false);const startX=React.useRef(0);const scrollLeft=React.useRef(0);const cards=[{image:props.image1,title:props.title1,text:props.text1},{image:props.image2,title:props.title2,text:props.text2},{image:props.image3,title:props.title3,text:props.text3},{image:props.image4,title:props.title4,text:props.text4},{image:props.image5,title:props.title5,text:props.text5},{image:props.image6,title:props.title6,text:props.text6}].slice(0,props.cardCount);return /*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",maxWidth:\"100%\",height:\"100%\",overflow:\"hidden\",boxSizing:\"border-box\",position:\"relative\"},children:[/*#__PURE__*/_jsx(\"style\",{children:`\n                .takumi-horizontal-carousel {\n                    max-width: 100%;\n                }\n\n                .takumi-horizontal-carousel::-webkit-scrollbar {\n                    display: none;\n                }\n            `}),/*#__PURE__*/_jsx(\"div\",{ref:ref,className:\"takumi-horizontal-carousel\",\"data-carousel-id\":props.carouselId,style:{width:\"100%\",maxWidth:\"100%\",minWidth:0,height:\"100%\",overflowX:\"auto\",overflowY:\"hidden\",display:\"flex\",flexWrap:\"nowrap\",gap:props.gap,cursor:\"grab\",scrollbarWidth:\"none\",msOverflowStyle:\"none\",WebkitOverflowScrolling:\"touch\",scrollSnapType:\"x mandatory\",boxSizing:\"border-box\",userSelect:\"none\"},onPointerDown:e=>{isDown.current=true;startX.current=e.clientX;scrollLeft.current=ref.current?.scrollLeft||0;},onPointerMove:e=>{if(!isDown.current||!ref.current)return;const move=startX.current-e.clientX;ref.current.scrollLeft=scrollLeft.current+move;},onPointerUp:()=>{isDown.current=false;},onPointerLeave:()=>{isDown.current=false;},children:cards.map((card,index)=>/*#__PURE__*/_jsxs(\"div\",{style:{flexShrink:0,width:props.cardWidth,height:props.cardHeight,background:props.cardBackground,overflow:\"hidden\",scrollSnapAlign:\"start\",boxSizing:\"border-box\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",height:props.imageHeight,background:card.image?`url(${card.image}) center / cover`:\"#3388FF\"}}),/*#__PURE__*/_jsxs(\"div\",{style:{paddingTop:props.contentTopPadding,paddingLeft:props.contentSidePadding,paddingRight:props.contentSidePadding,textAlign:\"left\",fontFamily:props.fontFamily,boxSizing:\"border-box\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{fontSize:props.titleSize,color:props.titleColor,letterSpacing:\"0.08em\",lineHeight:props.titleLineHeight,marginBottom:props.titleBottomGap},children:card.title}),/*#__PURE__*/_jsx(\"div\",{style:{fontSize:props.textSize,color:props.textColor,letterSpacing:\"0.04em\",lineHeight:props.textLineHeight},children:card.text})]})]},index))})]});}HorizontalCarousel.defaultProps={carouselId:\"works-carousel\",cardCount:5,cardWidth:330,cardHeight:340,gap:24,imageHeight:250,fontFamily:\"Zen Kaku Gothic New\",titleSize:12,titleLineHeight:1.6,titleBottomGap:10,titleColor:\"#000000\",textSize:16,textLineHeight:1.7,textColor:\"#000000\",contentTopPadding:18,contentSidePadding:0,cardBackground:\"#FFFFFF\",image1:\"\",title1:\"オーダーメイド製作\",text1:\"別府市 / 特注ソファ\",image2:\"\",title2:\"張替え・修理\",text2:\"オフィスチェア / 張替え\",image3:\"\",title3:\"オーダーメイド製作\",text3:\"大分市 / カフェベンチ\",image4:\"\",title4:\"業務用家具\",text4:\"施設用ソファ / 製作\",image5:\"\",title5:\"張替え・修理\",text5:\"ラウンジチェア / 修理\",image6:\"\",title6:\"オーダーメイド製作\",text6:\"店舗什器 / 製作\"};addPropertyControls(HorizontalCarousel,{carouselId:{type:ControlType.String,title:\"連携ID\"},cardCount:{type:ControlType.Number,title:\"カード数\",min:1,max:6,step:1},cardWidth:{type:ControlType.Number,title:\"カード幅\",min:100,max:500,step:5},cardHeight:{type:ControlType.Number,title:\"カード高さ\",min:120,max:700,step:5},gap:{type:ControlType.Number,title:\"間隔\",min:8,max:80,step:4},imageHeight:{type:ControlType.Number,title:\"画像高さ\",min:80,max:500,step:5},fontFamily:{type:ControlType.String,title:\"フォント\"},titleSize:{type:ControlType.Number,title:\"タイトルサイズ\",min:10,max:28,step:1},titleLineHeight:{type:ControlType.Number,title:\"タイトル行間\",min:1,max:3,step:.1},titleBottomGap:{type:ControlType.Number,title:\"タイトル下余白\",min:0,max:40,step:1},titleColor:{type:ControlType.Color,title:\"タイトル色\"},textSize:{type:ControlType.Number,title:\"テキストサイズ\",min:10,max:28,step:1},textLineHeight:{type:ControlType.Number,title:\"テキスト行間\",min:1,max:3,step:.1},textColor:{type:ControlType.Color,title:\"テキスト色\"},contentTopPadding:{type:ControlType.Number,title:\"上余白\",min:0,max:80,step:1},contentSidePadding:{type:ControlType.Number,title:\"左右余白\",min:0,max:80,step:1},cardBackground:{type:ControlType.Color,title:\"カード背景\"},image1:{type:ControlType.Image,title:\"画像1\"},title1:{type:ControlType.String,title:\"タイトル1\"},text1:{type:ControlType.String,title:\"テキスト1\"},image2:{type:ControlType.Image,title:\"画像2\"},title2:{type:ControlType.String,title:\"タイトル2\"},text2:{type:ControlType.String,title:\"テキスト2\"},image3:{type:ControlType.Image,title:\"画像3\"},title3:{type:ControlType.String,title:\"タイトル3\"},text3:{type:ControlType.String,title:\"テキスト3\"},image4:{type:ControlType.Image,title:\"画像4\"},title4:{type:ControlType.String,title:\"タイトル4\"},text4:{type:ControlType.String,title:\"テキスト4\"},image5:{type:ControlType.Image,title:\"画像5\"},title5:{type:ControlType.String,title:\"タイトル5\"},text5:{type:ControlType.String,title:\"テキスト5\"},image6:{type:ControlType.Image,title:\"画像6\"},title6:{type:ControlType.String,title:\"タイトル6\"},text6:{type:ControlType.String,title:\"テキスト6\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"HorizontalCarousel\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./HorizontalCarousel.map"],"mappings":"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"}