@semcore/carousel 3.3.1 → 3.4.0
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.
- package/CHANGELOG.md +9 -1
- package/lib/cjs/Carousel.js +47 -37
- package/lib/cjs/Carousel.js.map +1 -1
- package/lib/cjs/index.d.js.map +1 -1
- package/lib/cjs/translations/__intergalactic-dynamic-locales.js +37 -0
- package/lib/cjs/translations/__intergalactic-dynamic-locales.js.map +1 -0
- package/lib/cjs/translations/de.json +4 -0
- package/lib/cjs/translations/en.json +4 -0
- package/lib/cjs/translations/es.json +4 -0
- package/lib/cjs/translations/fr.json +4 -0
- package/lib/cjs/translations/it.json +4 -0
- package/lib/cjs/translations/ja.json +4 -0
- package/lib/cjs/translations/ko.json +4 -0
- package/lib/cjs/translations/pl.json +4 -0
- package/lib/cjs/translations/pt.json +4 -0
- package/lib/cjs/translations/sv.json +4 -0
- package/lib/cjs/translations/tr.json +4 -0
- package/lib/cjs/translations/vi.json +4 -0
- package/lib/cjs/translations/zh.json +4 -0
- package/lib/es6/Carousel.js +47 -37
- package/lib/es6/Carousel.js.map +1 -1
- package/lib/es6/index.d.js.map +1 -1
- package/lib/es6/translations/__intergalactic-dynamic-locales.js +29 -0
- package/lib/es6/translations/__intergalactic-dynamic-locales.js.map +1 -0
- package/lib/es6/translations/de.json +4 -0
- package/lib/es6/translations/en.json +4 -0
- package/lib/es6/translations/es.json +4 -0
- package/lib/es6/translations/fr.json +4 -0
- package/lib/es6/translations/it.json +4 -0
- package/lib/es6/translations/ja.json +4 -0
- package/lib/es6/translations/ko.json +4 -0
- package/lib/es6/translations/pl.json +4 -0
- package/lib/es6/translations/pt.json +4 -0
- package/lib/es6/translations/sv.json +4 -0
- package/lib/es6/translations/tr.json +4 -0
- package/lib/es6/translations/vi.json +4 -0
- package/lib/es6/translations/zh.json +4 -0
- package/lib/types/index.d.ts +1 -0
- package/package.json +1 -1
- package/src/Carousel.jsx +27 -11
- package/src/index.d.ts +1 -0
- package/src/translations/__intergalactic-dynamic-locales.ts +29 -0
- package/src/translations/de.json +4 -0
- package/src/translations/en.json +4 -0
- package/src/translations/es.json +4 -0
- package/src/translations/fr.json +4 -0
- package/src/translations/it.json +4 -0
- package/src/translations/ja.json +4 -0
- package/src/translations/ko.json +4 -0
- package/src/translations/pl.json +4 -0
- package/src/translations/pt.json +4 -0
- package/src/translations/sv.json +4 -0
- package/src/translations/tr.json +4 -0
- package/src/translations/vi.json +4 -0
- package/src/translations/zh.json +4 -0
package/lib/es6/Carousel.js
CHANGED
|
@@ -22,19 +22,21 @@ import { Box } from '@semcore/flex-box';
|
|
|
22
22
|
import ChevronRight from '@semcore/icon/ChevronRight/l';
|
|
23
23
|
import ChevronLeft from '@semcore/icon/ChevronLeft/l';
|
|
24
24
|
import uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';
|
|
25
|
+
import i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';
|
|
26
|
+
import { localizedMessages } from './translations/__intergalactic-dynamic-locales';
|
|
25
27
|
/*__reshadow-styles__:"./style/carousel.shadow.css"*/
|
|
26
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
27
|
-
"__SCarousel": "
|
|
28
|
-
"__SContainer": "
|
|
29
|
-
"--duration": "--
|
|
30
|
-
"__SItem": "
|
|
31
|
-
"--transform": "--
|
|
32
|
-
"__SIndicators": "
|
|
33
|
-
"__SIndicator": "
|
|
34
|
-
"_active": "
|
|
35
|
-
"__SPrev": "
|
|
36
|
-
"__SNext": "
|
|
37
|
-
"_disabled": "
|
|
28
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SCarousel_1d7d0_gg_{overflow:hidden;outline:0}.___SContainer_1d7d0_gg_{display:flex;transition:transform var(--duration_1d7d0) ease-in-out}.___SItem_1d7d0_gg_{flex:0 0 100%;max-width:100%;box-sizing:border-box;transform:var(--transform_1d7d0);border-radius:var(--intergalactic-surface-rounded, 6px);overflow:hidden}.___SIndicators_1d7d0_gg_{display:flex;justify-content:center;margin-top:var(--intergalactic-spacing-4x, 16px)}.___SIndicator_1d7d0_gg_{margin:0 calc(.5*var(--intergalactic-spacing-3x, 12px));cursor:pointer;display:block;width:12px;height:12px;border-radius:var(--intergalactic-control-rounded, 6px);background-color:var(--intergalactic-icon-secondary-neutral, #a9abb6);opacity:var(--intergalactic-disabled-opacity, 0.3);-o-object-fit:cover;object-fit:cover;transition:ease-in-out opacity .1s}@media (hover:hover){.___SIndicator_1d7d0_gg_:hover{opacity:calc(2*var(--intergalactic-disabled-opacity, 0.3))}}.___SIndicator_1d7d0_gg_.__active_1d7d0_gg_{opacity:1}.___SNext_1d7d0_gg_,.___SPrev_1d7d0_gg_{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:var(--intergalactic-icon-primary-neutral, #6c6e79)}.___SPrev_1d7d0_gg_{margin-right:var(--intergalactic-spacing-3x, 12px)}.___SNext_1d7d0_gg_{margin-left:var(--intergalactic-spacing-3x, 12px)}.___SNext_1d7d0_gg_.__disabled_1d7d0_gg_,.___SPrev_1d7d0_gg_.__disabled_1d7d0_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);cursor:default;pointer-events:none}@media (prefers-reduced-motion){.___SContainer_1d7d0_gg_{transition:none}}" /*__inner_css_end__*/, "1d7d0_gg_") /*__reshadow_css_end__*/, {
|
|
29
|
+
"__SCarousel": "___SCarousel_1d7d0_gg_",
|
|
30
|
+
"__SContainer": "___SContainer_1d7d0_gg_",
|
|
31
|
+
"--duration": "--duration_1d7d0",
|
|
32
|
+
"__SItem": "___SItem_1d7d0_gg_",
|
|
33
|
+
"--transform": "--transform_1d7d0",
|
|
34
|
+
"__SIndicators": "___SIndicators_1d7d0_gg_",
|
|
35
|
+
"__SIndicator": "___SIndicator_1d7d0_gg_",
|
|
36
|
+
"_active": "__active_1d7d0_gg_",
|
|
37
|
+
"__SPrev": "___SPrev_1d7d0_gg_",
|
|
38
|
+
"__SNext": "___SNext_1d7d0_gg_",
|
|
39
|
+
"_disabled": "__disabled_1d7d0_gg_"
|
|
38
40
|
});
|
|
39
41
|
var position = {
|
|
40
42
|
getItemMin: function getItemMin(items) {
|
|
@@ -325,7 +327,8 @@ var CarouselRoot = /*#__PURE__*/function (_Component) {
|
|
|
325
327
|
return {
|
|
326
328
|
toggleItem: this.toggleItem,
|
|
327
329
|
uid: this.asProps.uid,
|
|
328
|
-
index: index
|
|
330
|
+
index: index,
|
|
331
|
+
current: index === this.asProps.index
|
|
329
332
|
};
|
|
330
333
|
}
|
|
331
334
|
}, {
|
|
@@ -333,7 +336,8 @@ var CarouselRoot = /*#__PURE__*/function (_Component) {
|
|
|
333
336
|
value: function getPrevProps() {
|
|
334
337
|
var _this$asProps3 = this.asProps,
|
|
335
338
|
index = _this$asProps3.index,
|
|
336
|
-
bounded = _this$asProps3.bounded
|
|
339
|
+
bounded = _this$asProps3.bounded,
|
|
340
|
+
getI18nText = _this$asProps3.getI18nText;
|
|
337
341
|
var items = this.state.items;
|
|
338
342
|
var disabled = false;
|
|
339
343
|
if (items.length && bounded) {
|
|
@@ -342,7 +346,8 @@ var CarouselRoot = /*#__PURE__*/function (_Component) {
|
|
|
342
346
|
return {
|
|
343
347
|
onClick: this.bindHandlerClick('left'),
|
|
344
348
|
onKeyDown: this.bindHandlerKeydownControl('left'),
|
|
345
|
-
disabled: disabled
|
|
349
|
+
disabled: disabled,
|
|
350
|
+
label: getI18nText('prev')
|
|
346
351
|
};
|
|
347
352
|
}
|
|
348
353
|
}, {
|
|
@@ -350,7 +355,8 @@ var CarouselRoot = /*#__PURE__*/function (_Component) {
|
|
|
350
355
|
value: function getNextProps() {
|
|
351
356
|
var _this$asProps4 = this.asProps,
|
|
352
357
|
index = _this$asProps4.index,
|
|
353
|
-
bounded = _this$asProps4.bounded
|
|
358
|
+
bounded = _this$asProps4.bounded,
|
|
359
|
+
getI18nText = _this$asProps4.getI18nText;
|
|
354
360
|
var items = this.state.items;
|
|
355
361
|
var disabled = false;
|
|
356
362
|
if (items.length && bounded) {
|
|
@@ -359,7 +365,8 @@ var CarouselRoot = /*#__PURE__*/function (_Component) {
|
|
|
359
365
|
return {
|
|
360
366
|
onClick: this.bindHandlerClick('right'),
|
|
361
367
|
onKeyDown: this.bindHandlerKeydownControl('right'),
|
|
362
|
-
disabled: disabled
|
|
368
|
+
disabled: disabled,
|
|
369
|
+
label: getI18nText('next')
|
|
363
370
|
};
|
|
364
371
|
}
|
|
365
372
|
}, {
|
|
@@ -388,6 +395,7 @@ var CarouselRoot = /*#__PURE__*/function (_Component) {
|
|
|
388
395
|
styles = _this$asProps5.styles,
|
|
389
396
|
Children = _this$asProps5.Children;
|
|
390
397
|
return _ref8 = sstyled(styles), /*#__PURE__*/React.createElement(SCarousel, _ref8.cn("SCarousel", _objectSpread({}, _assignProps({
|
|
398
|
+
"role": 'group',
|
|
391
399
|
"onKeyDown": this.handlerKeyDown,
|
|
392
400
|
"tabIndex": 0,
|
|
393
401
|
"onTouchStart": this.handlerTouchStart,
|
|
@@ -402,10 +410,12 @@ _defineProperty(CarouselRoot, "defaultProps", {
|
|
|
402
410
|
defaultIndex: 0,
|
|
403
411
|
duration: 350,
|
|
404
412
|
step: 100,
|
|
405
|
-
bounded: false
|
|
413
|
+
bounded: false,
|
|
414
|
+
i18n: localizedMessages,
|
|
415
|
+
locale: 'en'
|
|
406
416
|
});
|
|
407
417
|
_defineProperty(CarouselRoot, "style", style);
|
|
408
|
-
_defineProperty(CarouselRoot, "enhance", [uniqueIDEnhancement()]);
|
|
418
|
+
_defineProperty(CarouselRoot, "enhance", [uniqueIDEnhancement(), i18nEnhance(localizedMessages)]);
|
|
409
419
|
var Container = function Container(props) {
|
|
410
420
|
var _ref2 = arguments[0],
|
|
411
421
|
_ref9;
|
|
@@ -423,7 +433,8 @@ var Item = function Item(props) {
|
|
|
423
433
|
var styles = props.styles,
|
|
424
434
|
toggleItem = props.toggleItem,
|
|
425
435
|
index = props.index,
|
|
426
|
-
uid = props.uid
|
|
436
|
+
uid = props.uid,
|
|
437
|
+
current = props.current;
|
|
427
438
|
var SItem = Box;
|
|
428
439
|
var refItem = /*#__PURE__*/React.createRef();
|
|
429
440
|
useEffect(function () {
|
|
@@ -441,42 +452,41 @@ var Item = function Item(props) {
|
|
|
441
452
|
return _ref10 = sstyled(styles), /*#__PURE__*/React.createElement(SItem, _ref10.cn("SItem", _objectSpread({}, _assignProps3({
|
|
442
453
|
"ref": refItem,
|
|
443
454
|
"role": 'listitem',
|
|
444
|
-
"id": "igc-".concat(uid, "-carousel-item-").concat(index)
|
|
455
|
+
"id": "igc-".concat(uid, "-carousel-item-").concat(index),
|
|
456
|
+
"aria-current": current
|
|
445
457
|
}, _ref3))));
|
|
446
458
|
};
|
|
447
459
|
var Prev = function Prev(props) {
|
|
448
460
|
var _ref4 = arguments[0],
|
|
449
461
|
_ref11;
|
|
450
|
-
var styles = props.styles
|
|
462
|
+
var styles = props.styles,
|
|
463
|
+
children = props.children,
|
|
464
|
+
label = props.label;
|
|
451
465
|
var SPrev = Box;
|
|
452
|
-
return _ref11 = sstyled(styles), /*#__PURE__*/React.createElement(SPrev, _ref11.cn("SPrev", _objectSpread({}, _assignProps4({
|
|
453
|
-
"
|
|
454
|
-
|
|
466
|
+
return _ref11 = sstyled(styles), /*#__PURE__*/React.createElement(SPrev, _ref11.cn("SPrev", _objectSpread({}, _assignProps4({}, _ref4))), children || /*#__PURE__*/React.createElement(ChevronLeft, _ref11.cn("ChevronLeft", {
|
|
467
|
+
"interactive": true,
|
|
468
|
+
"aria-label": label
|
|
469
|
+
})));
|
|
455
470
|
};
|
|
456
471
|
Prev.defaultProps = function () {
|
|
457
472
|
return {
|
|
458
|
-
children: /*#__PURE__*/React.createElement(ChevronLeft, {
|
|
459
|
-
interactive: true,
|
|
460
|
-
"aria-label": "Visual navigation, previous"
|
|
461
|
-
}),
|
|
462
473
|
top: 0
|
|
463
474
|
};
|
|
464
475
|
};
|
|
465
476
|
var Next = function Next(props) {
|
|
466
477
|
var _ref5 = arguments[0],
|
|
467
478
|
_ref12;
|
|
468
|
-
var styles = props.styles
|
|
479
|
+
var styles = props.styles,
|
|
480
|
+
children = props.children,
|
|
481
|
+
label = props.label;
|
|
469
482
|
var SNext = Box;
|
|
470
|
-
return _ref12 = sstyled(styles), /*#__PURE__*/React.createElement(SNext, _ref12.cn("SNext", _objectSpread({}, _assignProps5({
|
|
471
|
-
"
|
|
472
|
-
|
|
483
|
+
return _ref12 = sstyled(styles), /*#__PURE__*/React.createElement(SNext, _ref12.cn("SNext", _objectSpread({}, _assignProps5({}, _ref5))), children || /*#__PURE__*/React.createElement(ChevronRight, _ref12.cn("ChevronRight", {
|
|
484
|
+
"interactive": true,
|
|
485
|
+
"aria-label": label
|
|
486
|
+
})));
|
|
473
487
|
};
|
|
474
488
|
Next.defaultProps = function () {
|
|
475
489
|
return {
|
|
476
|
-
children: /*#__PURE__*/React.createElement(ChevronRight, {
|
|
477
|
-
interactive: true,
|
|
478
|
-
"aria-label": "Visual navigation, next"
|
|
479
|
-
}),
|
|
480
490
|
top: 0
|
|
481
491
|
};
|
|
482
492
|
};
|
package/lib/es6/Carousel.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Carousel.js","names":["React","useEffect","createComponent","Component","sstyled","Root","Box","ChevronRight","ChevronLeft","uniqueIDEnhancement","style","_sstyled","insert","position","getItemMin","items","indexItem","forEach","item","index","getItemMax","getMin","getMax","MAP_TRANSFORM","ArrowLeft","ArrowRight","CarouselRoot","_Component","_inherits","_super","_createSuper","props","_this","_classCallCheck","call","_defineProperty","_assertThisInitialized","createRef","e","key","preventDefault","_this$controlTransfor","controlTransformItem","activeItemIndex","handlers","removeItem","arguments","length","undefined","asProps","state","updateItems","filter","element","node","setState","concat","_toConsumableArray","map","_objectSpread","transform","slideToValue","indexIndicator","refContainer","current","currentIndex","nextIndex","bounded","listIndex","_","ind","tmpArr","minTmpArr","maxTmpArr","unshift","pop","shift","push","tmpCurrentIndex","indexOf","left","nextIndexItem","direction","getDirection","i","_this$transformItem","transformItem","_this$asProps","maxIndexIndicator","isControlled","_this$asProps2","step","nextItemPosition","positionLeftItem","positionItemMax","positionItemMin","findIndex","transformContainer","_this$controlTransfor2","value","_touchStartCoord","changedTouches","clientX","touchEndCoord","delta","_this$controlTransfor3","_this$controlTransfor4","bindHandlerClick","_createClass","uncontrolledProps","componentDidUpdate","prevProps","getContainerProps","duration","ref","getItemProps","toggleItem","uid","getPrevProps","_this$asProps3","disabled","onClick","onKeyDown","bindHandlerKeydownControl","getNextProps","_this$asProps4","getIndicatorsProps","_this2","active","bindHandlerClickIndicator","render","_ref","_ref8","SCarousel","_this$asProps5","styles","Children","createElement","cn","_assignProps","handlerKeyDown","handlerTouchStart","handlerTouchEnd","defaultIndex","Container","_ref2","arguments[0]","_ref9","SContainer","_assignProps2","Item","_ref3","_ref10","SItem","refItem","_assignProps3","Prev","_ref4","_ref11","SPrev","_assignProps4","defaultProps","children","interactive","top","Next","_ref5","_ref12","SNext","_assignProps5","Indicators","_ref16","_ref6","_ref14","SIndicators","origin","_ref13","_assignProps6","_assignProps7","Carousel","Indicator","_extends","_ref17","_ref7","_ref15","SIndicator","_assignProps8"],"sources":["../../src/Carousel.jsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\n\nimport { Box } from '@semcore/flex-box';\nimport ChevronRight from '@semcore/icon/ChevronRight/l';\nimport ChevronLeft from '@semcore/icon/ChevronLeft/l';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\n\nimport style from './style/carousel.shadow.css';\n\nconst position = {\n getItemMin: function (items) {\n let indexItem = 0;\n items.forEach(function (item, index) {\n if (item.position < items[indexItem].position) {\n indexItem = index;\n }\n });\n return indexItem;\n },\n getItemMax: function (items) {\n let indexItem = 0;\n items.forEach(function (item, index) {\n if (item.position > items[indexItem].position) {\n indexItem = index;\n }\n });\n return indexItem;\n },\n getMin: function (items) {\n return items[position.getItemMin(items)].position;\n },\n getMax: function (items) {\n return items[position.getItemMax(items)].position;\n },\n};\n\nconst MAP_TRANSFORM = {\n ArrowLeft: 'left',\n ArrowRight: 'right',\n};\n\nclass CarouselRoot extends Component {\n static displayName = 'Carousel';\n static defaultProps = {\n defaultIndex: 0,\n duration: 350,\n step: 100,\n bounded: false,\n };\n\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n refContainer = React.createRef();\n transform = 0;\n positionLeftItem = 0;\n indexIndicator = 0;\n\n constructor(props) {\n super(props);\n this.isControlled = props.index !== undefined;\n this.state = {\n items: [],\n };\n }\n\n uncontrolledProps() {\n return {\n index: null,\n };\n }\n\n componentDidUpdate(prevProps) {\n const { index } = this.asProps;\n if (prevProps.index !== index && this.isControlled) {\n this.slideToValue(prevProps.index, index);\n }\n }\n\n handlerKeyDown = (e) => {\n switch (e.key) {\n case 'ArrowLeft':\n case 'ArrowRight': {\n e.preventDefault();\n const { activeItemIndex } = this.controlTransformItem(MAP_TRANSFORM[e.key]);\n this.handlers.index(activeItemIndex);\n }\n }\n };\n\n toggleItem = (item, removeItem = false) => {\n const { index } = this.asProps;\n const { items } = this.state;\n if (removeItem) {\n this.updateItems(items.filter((element) => element.node !== item.node));\n } else {\n this.setState(\n (state) => {\n return {\n items: [...state.items, item].map((element, position) => ({\n ...element,\n position,\n transform: 0,\n })),\n };\n },\n () => {\n const { items } = this.state;\n if (items.length > index && index >= 0) {\n this.slideToValue(this.indexIndicator, index);\n }\n },\n );\n }\n };\n\n updateItems = (items) => {\n this.setState(() => ({ items }));\n };\n\n transformContainer = (transform) => {\n if (this.refContainer.current) {\n this.refContainer.current.style.transform = `translateX(${transform}%)`;\n }\n };\n\n getDirection = (currentIndex, nextIndex, bounded) => {\n if (bounded) {\n return currentIndex < nextIndex ? 'right' : 'left';\n }\n const { items } = this.state;\n const listIndex = items.map((_, ind) => ind);\n const tmpArr = [...listIndex];\n const minTmpArr = tmpArr[0];\n const maxTmpArr = tmpArr[tmpArr.length - 1];\n\n if (tmpArr.length === 2) {\n return currentIndex < nextIndex ? 'right' : 'left';\n }\n if (currentIndex === minTmpArr) {\n tmpArr.unshift(maxTmpArr);\n tmpArr.pop();\n }\n if (currentIndex === maxTmpArr) {\n tmpArr.shift();\n tmpArr.push(minTmpArr);\n }\n\n const tmpCurrentIndex = tmpArr.indexOf(currentIndex);\n const left = tmpArr.indexOf(nextIndex);\n\n return left - tmpCurrentIndex < 0 ? 'left' : 'right';\n };\n\n slideToValue = (currentIndex, nextIndexItem, bounded) => {\n if (currentIndex === nextIndexItem) return false;\n const direction = this.getDirection(\n currentIndex,\n nextIndexItem,\n bounded || this.asProps.bounded,\n );\n let i = currentIndex;\n while (nextIndexItem !== i) {\n const { activeItemIndex } = this.transformItem(direction);\n i = activeItemIndex;\n }\n };\n\n controlTransformItem = (direction) => {\n const { bounded, index } = this.asProps;\n const { items } = this.state;\n const maxIndexIndicator = items.length - 1;\n\n if (this.isControlled) {\n if (direction === 'right') {\n if (bounded && index === maxIndexIndicator) {\n return { activeItemIndex: maxIndexIndicator };\n }\n return { activeItemIndex: index === maxIndexIndicator ? 0 : index + 1 };\n }\n if (direction === 'left') {\n if (bounded && index === 0) {\n return { activeItemIndex: 0 };\n }\n return { activeItemIndex: index === 0 ? maxIndexIndicator : index - 1 };\n }\n }\n return this.transformItem(direction);\n };\n\n transformItem = (direction) => {\n const { bounded, step } = this.asProps;\n const { items } = this.state;\n const maxIndexIndicator = items.length - 1;\n let nextItemPosition = undefined;\n\n if (direction === 'right') {\n if (bounded && this.positionLeftItem === maxIndexIndicator) {\n return { activeItemIndex: maxIndexIndicator };\n }\n this.positionLeftItem += 1;\n const positionItemMax = position.getMax(items);\n\n if (this.positionLeftItem > positionItemMax) {\n nextItemPosition = position.getItemMin(items);\n items[nextItemPosition].position = positionItemMax + 1;\n items[nextItemPosition].transform += items.length * step;\n this.updateItems([...items]);\n }\n\n this.indexIndicator += 1;\n if (this.indexIndicator > maxIndexIndicator) {\n this.indexIndicator = 0;\n }\n this.transform -= step;\n }\n if (direction === 'left') {\n if (bounded && this.positionLeftItem === 0) {\n return { activeItemIndex: 0 };\n }\n this.positionLeftItem -= 1;\n const positionItemMin = position.getMin(items);\n\n if (this.positionLeftItem < positionItemMin) {\n nextItemPosition = position.getItemMax(items);\n items[nextItemPosition].position = positionItemMin - 1;\n items[nextItemPosition].transform -= items.length * step;\n this.updateItems([...items]);\n }\n\n this.indexIndicator -= 1;\n if (this.indexIndicator < 0) {\n this.indexIndicator = maxIndexIndicator;\n }\n this.transform += step;\n }\n\n const activeItemIndex = items.findIndex((item) => item.position === this.positionLeftItem);\n if (items[activeItemIndex]) {\n items[\n activeItemIndex\n ].node.style.transform = `translateX(${items[activeItemIndex].transform}%)`;\n }\n this.transformContainer(this.transform);\n return { activeItemIndex };\n };\n\n bindHandlerClick = (direction) => {\n return () => {\n const { activeItemIndex } = this.controlTransformItem(direction);\n this.handlers.index(activeItemIndex);\n };\n };\n\n bindHandlerClickIndicator = (value) => {\n return () => {\n !this.isControlled && this.slideToValue(this.indexIndicator, value, true);\n this.handlers.index(value);\n };\n };\n\n handlerTouchStart = (e) => {\n this._touchStartCoord = e.changedTouches[0].clientX;\n };\n\n handlerTouchEnd = (e) => {\n const touchEndCoord = e.changedTouches[0].clientX;\n const delta = touchEndCoord - this._touchStartCoord;\n if (delta > 50) {\n const { activeItemIndex } = this.controlTransformItem('left');\n this.handlers.index(activeItemIndex);\n } else if (delta < -50) {\n const { activeItemIndex } = this.controlTransformItem('right');\n this.handlers.index(activeItemIndex);\n }\n };\n\n getContainerProps() {\n const { duration } = this.asProps;\n\n return {\n ref: this.refContainer,\n duration,\n };\n }\n\n getItemProps(_, index) {\n return {\n toggleItem: this.toggleItem,\n uid: this.asProps.uid,\n index,\n };\n }\n\n bindHandlerKeydownControl = (direction) => (e) => {\n const { key } = e;\n if (key === 'Enter') {\n e.preventDefault();\n this.bindHandlerClick(direction)();\n }\n };\n\n getPrevProps() {\n const { index, bounded } = this.asProps;\n const { items } = this.state;\n let disabled = false;\n if (items.length && bounded) {\n disabled = index === 0;\n }\n return {\n onClick: this.bindHandlerClick('left'),\n onKeyDown: this.bindHandlerKeydownControl('left'),\n disabled,\n };\n }\n\n getNextProps() {\n const { index, bounded } = this.asProps;\n const { items } = this.state;\n let disabled = false;\n if (items.length && bounded) {\n disabled = index === items.length - 1;\n }\n return {\n onClick: this.bindHandlerClick('right'),\n onKeyDown: this.bindHandlerKeydownControl('right'),\n disabled,\n };\n }\n\n getIndicatorsProps() {\n const { items } = this.state;\n const { index } = this.asProps;\n\n return {\n items: items.map((item, key) => ({\n active: key === index,\n onClick: this.bindHandlerClickIndicator(key),\n key,\n })),\n };\n }\n\n render() {\n const SCarousel = Root;\n const { styles, Children } = this.asProps;\n\n return sstyled(styles)(\n <SCarousel\n render={Box}\n onKeyDown={this.handlerKeyDown}\n tabIndex={0}\n onTouchStart={this.handlerTouchStart}\n onTouchEnd={this.handlerTouchEnd}\n >\n <Children />\n </SCarousel>,\n );\n }\n}\n\nconst Container = (props) => {\n const SContainer = Root;\n const { styles, duration } = props;\n\n return sstyled(styles)(<SContainer render={Box} role='list' use:duration={`${duration}ms`} />);\n};\n\nconst Item = (props) => {\n const { styles, toggleItem, index, uid } = props;\n const SItem = Root;\n const refItem = React.createRef();\n useEffect(() => {\n // add item\n toggleItem({ node: refItem.current });\n return () => {\n // remove item\n toggleItem({ node: refItem.current }, true);\n };\n }, []);\n\n return sstyled(styles)(\n <SItem render={Box} ref={refItem} role='listitem' id={`igc-${uid}-carousel-item-${index}`} />,\n );\n};\n\nconst Prev = (props) => {\n const { styles } = props;\n const SPrev = Root;\n return sstyled(styles)(<SPrev render={Box} aria-hidden='true' />);\n};\n\nPrev.defaultProps = () => ({\n children: <ChevronLeft interactive aria-label='Visual navigation, previous' />,\n top: 0,\n});\n\nconst Next = (props) => {\n const { styles } = props;\n const SNext = Root;\n return sstyled(styles)(<SNext render={Box} aria-hidden='true' />);\n};\n\nNext.defaultProps = () => ({\n children: <ChevronRight interactive aria-label='Visual navigation, next' />,\n top: 0,\n});\n\nconst Indicators = ({ items, styles, Children }) => {\n const SIndicators = Root;\n if (Children.origin) {\n return sstyled(styles)(\n <SIndicators render={Box} aria-hidden='true'>\n <Children />\n </SIndicators>,\n );\n }\n return sstyled(styles)(\n <SIndicators render={Box} aria-hidden='true'>\n {items.map((item, index) => (\n <Carousel.Indicator key={index} {...item} />\n ))}\n </SIndicators>,\n );\n};\n\nconst Indicator = ({ styles, Children }) => {\n const SIndicator = Root;\n return sstyled(styles)(\n <SIndicator render={Box}>\n <Children />\n </SIndicator>,\n );\n};\n\nconst Carousel = createComponent(CarouselRoot, {\n Container,\n Indicators,\n Indicator,\n Item,\n Prev,\n Next,\n});\n\nexport default Carousel;\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AACxC,OAAOC,eAAe,IAAIC,SAAS,EAAEC,OAAO,EAAEC,IAAI,QAAQ,eAAe;AAEzE,SAASC,GAAG,QAAQ,mBAAmB;AACvC,OAAOC,YAAY,MAAM,8BAA8B;AACvD,OAAOC,WAAW,MAAM,6BAA6B;AACrD,OAAOC,mBAAmB,MAAM,6BAA6B;AAAC;AAAA,IAAAC,KAAA,+BAAAC,QAAA,CAAAC,MAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;AAAA;AAI9D,IAAMC,QAAQ,GAAG;EACfC,UAAU,EAAE,SAAAA,WAAUC,KAAK,EAAE;IAC3B,IAAIC,SAAS,GAAG,CAAC;IACjBD,KAAK,CAACE,OAAO,CAAC,UAAUC,IAAI,EAAEC,KAAK,EAAE;MACnC,IAAID,IAAI,CAACL,QAAQ,GAAGE,KAAK,CAACC,SAAS,CAAC,CAACH,QAAQ,EAAE;QAC7CG,SAAS,GAAGG,KAAK;MACnB;IACF,CAAC,CAAC;IACF,OAAOH,SAAS;EAClB,CAAC;EACDI,UAAU,EAAE,SAAAA,WAAUL,KAAK,EAAE;IAC3B,IAAIC,SAAS,GAAG,CAAC;IACjBD,KAAK,CAACE,OAAO,CAAC,UAAUC,IAAI,EAAEC,KAAK,EAAE;MACnC,IAAID,IAAI,CAACL,QAAQ,GAAGE,KAAK,CAACC,SAAS,CAAC,CAACH,QAAQ,EAAE;QAC7CG,SAAS,GAAGG,KAAK;MACnB;IACF,CAAC,CAAC;IACF,OAAOH,SAAS;EAClB,CAAC;EACDK,MAAM,EAAE,SAAAA,OAAUN,KAAK,EAAE;IACvB,OAAOA,KAAK,CAACF,QAAQ,CAACC,UAAU,CAACC,KAAK,CAAC,CAAC,CAACF,QAAQ;EACnD,CAAC;EACDS,MAAM,EAAE,SAAAA,OAAUP,KAAK,EAAE;IACvB,OAAOA,KAAK,CAACF,QAAQ,CAACO,UAAU,CAACL,KAAK,CAAC,CAAC,CAACF,QAAQ;EACnD;AACF,CAAC;AAED,IAAMU,aAAa,GAAG;EACpBC,SAAS,EAAE,MAAM;EACjBC,UAAU,EAAE;AACd,CAAC;AAAC,IAEIC,YAAY,0BAAAC,UAAA;EAAAC,SAAA,CAAAF,YAAA,EAAAC,UAAA;EAAA,IAAAE,MAAA,GAAAC,YAAA,CAAAJ,YAAA;EAiBhB,SAAAA,aAAYK,KAAK,EAAE;IAAA,IAAAC,KAAA;IAAAC,eAAA,OAAAP,YAAA;IACjBM,KAAA,GAAAH,MAAA,CAAAK,IAAA,OAAMH,KAAK;IAAEI,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,gCANAhC,KAAK,CAACqC,SAAS,EAAE;IAAAF,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,gBACpB,CAAC;IAAAG,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,uBACM,CAAC;IAAAG,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,qBACH,CAAC;IAAAG,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,qBAuBD,UAACM,CAAC,EAAK;MACtB,QAAQA,CAAC,CAACC,GAAG;QACX,KAAK,WAAW;QAChB,KAAK,YAAY;UAAE;YACjBD,CAAC,CAACE,cAAc,EAAE;YAClB,IAAAC,qBAAA,GAA4BT,KAAA,CAAKU,oBAAoB,CAACnB,aAAa,CAACe,CAAC,CAACC,GAAG,CAAC,CAAC;cAAnEI,eAAe,GAAAF,qBAAA,CAAfE,eAAe;YACvBX,KAAA,CAAKY,QAAQ,CAACzB,KAAK,CAACwB,eAAe,CAAC;UACtC;MAAC;IAEL,CAAC;IAAAR,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,iBAEY,UAACd,IAAI,EAAyB;MAAA,IAAvB2B,UAAU,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,KAAK;MACpC,IAAQ3B,KAAK,GAAKa,KAAA,CAAKiB,OAAO,CAAtB9B,KAAK;MACb,IAAQJ,KAAK,GAAKiB,KAAA,CAAKkB,KAAK,CAApBnC,KAAK;MACb,IAAI8B,UAAU,EAAE;QACdb,KAAA,CAAKmB,WAAW,CAACpC,KAAK,CAACqC,MAAM,CAAC,UAACC,OAAO;UAAA,OAAKA,OAAO,CAACC,IAAI,KAAKpC,IAAI,CAACoC,IAAI;QAAA,EAAC,CAAC;MACzE,CAAC,MAAM;QACLtB,KAAA,CAAKuB,QAAQ,CACX,UAACL,KAAK,EAAK;UACT,OAAO;YACLnC,KAAK,EAAE,GAAAyC,MAAA,CAAAC,kBAAA,CAAIP,KAAK,CAACnC,KAAK,IAAEG,IAAI,GAAEwC,GAAG,CAAC,UAACL,OAAO,EAAExC,QAAQ;cAAA,OAAA8C,aAAA,CAAAA,aAAA,KAC/CN,OAAO;gBACVxC,QAAQ,EAARA,QAAQ;gBACR+C,SAAS,EAAE;cAAC;YAAA,CACZ;UACJ,CAAC;QACH,CAAC,EACD,YAAM;UACJ,IAAQ7C,KAAK,GAAKiB,KAAA,CAAKkB,KAAK,CAApBnC,KAAK;UACb,IAAIA,KAAK,CAACgC,MAAM,GAAG5B,KAAK,IAAIA,KAAK,IAAI,CAAC,EAAE;YACtCa,KAAA,CAAK6B,YAAY,CAAC7B,KAAA,CAAK8B,cAAc,EAAE3C,KAAK,CAAC;UAC/C;QACF,CAAC,CACF;MACH;IACF,CAAC;IAAAgB,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,kBAEa,UAACjB,KAAK,EAAK;MACvBiB,KAAA,CAAKuB,QAAQ,CAAC;QAAA,OAAO;UAAExC,KAAK,EAALA;QAAM,CAAC;MAAA,CAAC,CAAC;IAClC,CAAC;IAAAoB,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,yBAEoB,UAAC4B,SAAS,EAAK;MAClC,IAAI5B,KAAA,CAAK+B,YAAY,CAACC,OAAO,EAAE;QAC7BhC,KAAA,CAAK+B,YAAY,CAACC,OAAO,CAACtD,KAAK,CAACkD,SAAS,iBAAAJ,MAAA,CAAiBI,SAAS,OAAI;MACzE;IACF,CAAC;IAAAzB,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,mBAEc,UAACiC,YAAY,EAAEC,SAAS,EAAEC,OAAO,EAAK;MACnD,IAAIA,OAAO,EAAE;QACX,OAAOF,YAAY,GAAGC,SAAS,GAAG,OAAO,GAAG,MAAM;MACpD;MACA,IAAQnD,KAAK,GAAKiB,KAAA,CAAKkB,KAAK,CAApBnC,KAAK;MACb,IAAMqD,SAAS,GAAGrD,KAAK,CAAC2C,GAAG,CAAC,UAACW,CAAC,EAAEC,GAAG;QAAA,OAAKA,GAAG;MAAA,EAAC;MAC5C,IAAMC,MAAM,GAAAd,kBAAA,CAAOW,SAAS,CAAC;MAC7B,IAAMI,SAAS,GAAGD,MAAM,CAAC,CAAC,CAAC;MAC3B,IAAME,SAAS,GAAGF,MAAM,CAACA,MAAM,CAACxB,MAAM,GAAG,CAAC,CAAC;MAE3C,IAAIwB,MAAM,CAACxB,MAAM,KAAK,CAAC,EAAE;QACvB,OAAOkB,YAAY,GAAGC,SAAS,GAAG,OAAO,GAAG,MAAM;MACpD;MACA,IAAID,YAAY,KAAKO,SAAS,EAAE;QAC9BD,MAAM,CAACG,OAAO,CAACD,SAAS,CAAC;QACzBF,MAAM,CAACI,GAAG,EAAE;MACd;MACA,IAAIV,YAAY,KAAKQ,SAAS,EAAE;QAC9BF,MAAM,CAACK,KAAK,EAAE;QACdL,MAAM,CAACM,IAAI,CAACL,SAAS,CAAC;MACxB;MAEA,IAAMM,eAAe,GAAGP,MAAM,CAACQ,OAAO,CAACd,YAAY,CAAC;MACpD,IAAMe,IAAI,GAAGT,MAAM,CAACQ,OAAO,CAACb,SAAS,CAAC;MAEtC,OAAOc,IAAI,GAAGF,eAAe,GAAG,CAAC,GAAG,MAAM,GAAG,OAAO;IACtD,CAAC;IAAA3C,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,mBAEc,UAACiC,YAAY,EAAEgB,aAAa,EAAEd,OAAO,EAAK;MACvD,IAAIF,YAAY,KAAKgB,aAAa,EAAE,OAAO,KAAK;MAChD,IAAMC,SAAS,GAAGlD,KAAA,CAAKmD,YAAY,CACjClB,YAAY,EACZgB,aAAa,EACbd,OAAO,IAAInC,KAAA,CAAKiB,OAAO,CAACkB,OAAO,CAChC;MACD,IAAIiB,CAAC,GAAGnB,YAAY;MACpB,OAAOgB,aAAa,KAAKG,CAAC,EAAE;QAC1B,IAAAC,mBAAA,GAA4BrD,KAAA,CAAKsD,aAAa,CAACJ,SAAS,CAAC;UAAjDvC,eAAe,GAAA0C,mBAAA,CAAf1C,eAAe;QACvByC,CAAC,GAAGzC,eAAe;MACrB;IACF,CAAC;IAAAR,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,2BAEsB,UAACkD,SAAS,EAAK;MACpC,IAAAK,aAAA,GAA2BvD,KAAA,CAAKiB,OAAO;QAA/BkB,OAAO,GAAAoB,aAAA,CAAPpB,OAAO;QAAEhD,KAAK,GAAAoE,aAAA,CAALpE,KAAK;MACtB,IAAQJ,KAAK,GAAKiB,KAAA,CAAKkB,KAAK,CAApBnC,KAAK;MACb,IAAMyE,iBAAiB,GAAGzE,KAAK,CAACgC,MAAM,GAAG,CAAC;MAE1C,IAAIf,KAAA,CAAKyD,YAAY,EAAE;QACrB,IAAIP,SAAS,KAAK,OAAO,EAAE;UACzB,IAAIf,OAAO,IAAIhD,KAAK,KAAKqE,iBAAiB,EAAE;YAC1C,OAAO;cAAE7C,eAAe,EAAE6C;YAAkB,CAAC;UAC/C;UACA,OAAO;YAAE7C,eAAe,EAAExB,KAAK,KAAKqE,iBAAiB,GAAG,CAAC,GAAGrE,KAAK,GAAG;UAAE,CAAC;QACzE;QACA,IAAI+D,SAAS,KAAK,MAAM,EAAE;UACxB,IAAIf,OAAO,IAAIhD,KAAK,KAAK,CAAC,EAAE;YAC1B,OAAO;cAAEwB,eAAe,EAAE;YAAE,CAAC;UAC/B;UACA,OAAO;YAAEA,eAAe,EAAExB,KAAK,KAAK,CAAC,GAAGqE,iBAAiB,GAAGrE,KAAK,GAAG;UAAE,CAAC;QACzE;MACF;MACA,OAAOa,KAAA,CAAKsD,aAAa,CAACJ,SAAS,CAAC;IACtC,CAAC;IAAA/C,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,oBAEe,UAACkD,SAAS,EAAK;MAC7B,IAAAQ,cAAA,GAA0B1D,KAAA,CAAKiB,OAAO;QAA9BkB,OAAO,GAAAuB,cAAA,CAAPvB,OAAO;QAAEwB,IAAI,GAAAD,cAAA,CAAJC,IAAI;MACrB,IAAQ5E,KAAK,GAAKiB,KAAA,CAAKkB,KAAK,CAApBnC,KAAK;MACb,IAAMyE,iBAAiB,GAAGzE,KAAK,CAACgC,MAAM,GAAG,CAAC;MAC1C,IAAI6C,gBAAgB,GAAG5C,SAAS;MAEhC,IAAIkC,SAAS,KAAK,OAAO,EAAE;QACzB,IAAIf,OAAO,IAAInC,KAAA,CAAK6D,gBAAgB,KAAKL,iBAAiB,EAAE;UAC1D,OAAO;YAAE7C,eAAe,EAAE6C;UAAkB,CAAC;QAC/C;QACAxD,KAAA,CAAK6D,gBAAgB,IAAI,CAAC;QAC1B,IAAMC,eAAe,GAAGjF,QAAQ,CAACS,MAAM,CAACP,KAAK,CAAC;QAE9C,IAAIiB,KAAA,CAAK6D,gBAAgB,GAAGC,eAAe,EAAE;UAC3CF,gBAAgB,GAAG/E,QAAQ,CAACC,UAAU,CAACC,KAAK,CAAC;UAC7CA,KAAK,CAAC6E,gBAAgB,CAAC,CAAC/E,QAAQ,GAAGiF,eAAe,GAAG,CAAC;UACtD/E,KAAK,CAAC6E,gBAAgB,CAAC,CAAChC,SAAS,IAAI7C,KAAK,CAACgC,MAAM,GAAG4C,IAAI;UACxD3D,KAAA,CAAKmB,WAAW,CAAAM,kBAAA,CAAK1C,KAAK,EAAE;QAC9B;QAEAiB,KAAA,CAAK8B,cAAc,IAAI,CAAC;QACxB,IAAI9B,KAAA,CAAK8B,cAAc,GAAG0B,iBAAiB,EAAE;UAC3CxD,KAAA,CAAK8B,cAAc,GAAG,CAAC;QACzB;QACA9B,KAAA,CAAK4B,SAAS,IAAI+B,IAAI;MACxB;MACA,IAAIT,SAAS,KAAK,MAAM,EAAE;QACxB,IAAIf,OAAO,IAAInC,KAAA,CAAK6D,gBAAgB,KAAK,CAAC,EAAE;UAC1C,OAAO;YAAElD,eAAe,EAAE;UAAE,CAAC;QAC/B;QACAX,KAAA,CAAK6D,gBAAgB,IAAI,CAAC;QAC1B,IAAME,eAAe,GAAGlF,QAAQ,CAACQ,MAAM,CAACN,KAAK,CAAC;QAE9C,IAAIiB,KAAA,CAAK6D,gBAAgB,GAAGE,eAAe,EAAE;UAC3CH,gBAAgB,GAAG/E,QAAQ,CAACO,UAAU,CAACL,KAAK,CAAC;UAC7CA,KAAK,CAAC6E,gBAAgB,CAAC,CAAC/E,QAAQ,GAAGkF,eAAe,GAAG,CAAC;UACtDhF,KAAK,CAAC6E,gBAAgB,CAAC,CAAChC,SAAS,IAAI7C,KAAK,CAACgC,MAAM,GAAG4C,IAAI;UACxD3D,KAAA,CAAKmB,WAAW,CAAAM,kBAAA,CAAK1C,KAAK,EAAE;QAC9B;QAEAiB,KAAA,CAAK8B,cAAc,IAAI,CAAC;QACxB,IAAI9B,KAAA,CAAK8B,cAAc,GAAG,CAAC,EAAE;UAC3B9B,KAAA,CAAK8B,cAAc,GAAG0B,iBAAiB;QACzC;QACAxD,KAAA,CAAK4B,SAAS,IAAI+B,IAAI;MACxB;MAEA,IAAMhD,eAAe,GAAG5B,KAAK,CAACiF,SAAS,CAAC,UAAC9E,IAAI;QAAA,OAAKA,IAAI,CAACL,QAAQ,KAAKmB,KAAA,CAAK6D,gBAAgB;MAAA,EAAC;MAC1F,IAAI9E,KAAK,CAAC4B,eAAe,CAAC,EAAE;QAC1B5B,KAAK,CACH4B,eAAe,CAChB,CAACW,IAAI,CAAC5C,KAAK,CAACkD,SAAS,iBAAAJ,MAAA,CAAiBzC,KAAK,CAAC4B,eAAe,CAAC,CAACiB,SAAS,OAAI;MAC7E;MACA5B,KAAA,CAAKiE,kBAAkB,CAACjE,KAAA,CAAK4B,SAAS,CAAC;MACvC,OAAO;QAAEjB,eAAe,EAAfA;MAAgB,CAAC;IAC5B,CAAC;IAAAR,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,uBAEkB,UAACkD,SAAS,EAAK;MAChC,OAAO,YAAM;QACX,IAAAgB,sBAAA,GAA4BlE,KAAA,CAAKU,oBAAoB,CAACwC,SAAS,CAAC;UAAxDvC,eAAe,GAAAuD,sBAAA,CAAfvD,eAAe;QACvBX,KAAA,CAAKY,QAAQ,CAACzB,KAAK,CAACwB,eAAe,CAAC;MACtC,CAAC;IACH,CAAC;IAAAR,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,gCAE2B,UAACmE,KAAK,EAAK;MACrC,OAAO,YAAM;QACX,CAACnE,KAAA,CAAKyD,YAAY,IAAIzD,KAAA,CAAK6B,YAAY,CAAC7B,KAAA,CAAK8B,cAAc,EAAEqC,KAAK,EAAE,IAAI,CAAC;QACzEnE,KAAA,CAAKY,QAAQ,CAACzB,KAAK,CAACgF,KAAK,CAAC;MAC5B,CAAC;IACH,CAAC;IAAAhE,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,wBAEmB,UAACM,CAAC,EAAK;MACzBN,KAAA,CAAKoE,gBAAgB,GAAG9D,CAAC,CAAC+D,cAAc,CAAC,CAAC,CAAC,CAACC,OAAO;IACrD,CAAC;IAAAnE,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,sBAEiB,UAACM,CAAC,EAAK;MACvB,IAAMiE,aAAa,GAAGjE,CAAC,CAAC+D,cAAc,CAAC,CAAC,CAAC,CAACC,OAAO;MACjD,IAAME,KAAK,GAAGD,aAAa,GAAGvE,KAAA,CAAKoE,gBAAgB;MACnD,IAAII,KAAK,GAAG,EAAE,EAAE;QACd,IAAAC,sBAAA,GAA4BzE,KAAA,CAAKU,oBAAoB,CAAC,MAAM,CAAC;UAArDC,eAAe,GAAA8D,sBAAA,CAAf9D,eAAe;QACvBX,KAAA,CAAKY,QAAQ,CAACzB,KAAK,CAACwB,eAAe,CAAC;MACtC,CAAC,MAAM,IAAI6D,KAAK,GAAG,CAAC,EAAE,EAAE;QACtB,IAAAE,sBAAA,GAA4B1E,KAAA,CAAKU,oBAAoB,CAAC,OAAO,CAAC;UAAtDC,gBAAe,GAAA+D,sBAAA,CAAf/D,eAAe;QACvBX,KAAA,CAAKY,QAAQ,CAACzB,KAAK,CAACwB,gBAAe,CAAC;MACtC;IACF,CAAC;IAAAR,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,gCAmB2B,UAACkD,SAAS;MAAA,OAAK,UAAC5C,CAAC,EAAK;QAChD,IAAQC,GAAG,GAAKD,CAAC,CAATC,GAAG;QACX,IAAIA,GAAG,KAAK,OAAO,EAAE;UACnBD,CAAC,CAACE,cAAc,EAAE;UAClBR,KAAA,CAAK2E,gBAAgB,CAACzB,SAAS,CAAC,EAAE;QACpC;MACF,CAAC;IAAA;IAhPClD,KAAA,CAAKyD,YAAY,GAAG1D,KAAK,CAACZ,KAAK,KAAK6B,SAAS;IAC7ChB,KAAA,CAAKkB,KAAK,GAAG;MACXnC,KAAK,EAAE;IACT,CAAC;IAAC,OAAAiB,KAAA;EACJ;EAAC4E,YAAA,CAAAlF,YAAA;IAAAa,GAAA;IAAA4D,KAAA,EAED,SAAAU,kBAAA,EAAoB;MAClB,OAAO;QACL1F,KAAK,EAAE;MACT,CAAC;IACH;EAAC;IAAAoB,GAAA;IAAA4D,KAAA,EAED,SAAAW,mBAAmBC,SAAS,EAAE;MAC5B,IAAQ5F,KAAK,GAAK,IAAI,CAAC8B,OAAO,CAAtB9B,KAAK;MACb,IAAI4F,SAAS,CAAC5F,KAAK,KAAKA,KAAK,IAAI,IAAI,CAACsE,YAAY,EAAE;QAClD,IAAI,CAAC5B,YAAY,CAACkD,SAAS,CAAC5F,KAAK,EAAEA,KAAK,CAAC;MAC3C;IACF;EAAC;IAAAoB,GAAA;IAAA4D,KAAA,EAwMD,SAAAa,kBAAA,EAAoB;MAClB,IAAQC,QAAQ,GAAK,IAAI,CAAChE,OAAO,CAAzBgE,QAAQ;MAEhB,OAAO;QACLC,GAAG,EAAE,IAAI,CAACnD,YAAY;QACtBkD,QAAQ,EAARA;MACF,CAAC;IACH;EAAC;IAAA1E,GAAA;IAAA4D,KAAA,EAED,SAAAgB,aAAa9C,CAAC,EAAElD,KAAK,EAAE;MACrB,OAAO;QACLiG,UAAU,EAAE,IAAI,CAACA,UAAU;QAC3BC,GAAG,EAAE,IAAI,CAACpE,OAAO,CAACoE,GAAG;QACrBlG,KAAK,EAALA;MACF,CAAC;IACH;EAAC;IAAAoB,GAAA;IAAA4D,KAAA,EAUD,SAAAmB,aAAA,EAAe;MACb,IAAAC,cAAA,GAA2B,IAAI,CAACtE,OAAO;QAA/B9B,KAAK,GAAAoG,cAAA,CAALpG,KAAK;QAAEgD,OAAO,GAAAoD,cAAA,CAAPpD,OAAO;MACtB,IAAQpD,KAAK,GAAK,IAAI,CAACmC,KAAK,CAApBnC,KAAK;MACb,IAAIyG,QAAQ,GAAG,KAAK;MACpB,IAAIzG,KAAK,CAACgC,MAAM,IAAIoB,OAAO,EAAE;QAC3BqD,QAAQ,GAAGrG,KAAK,KAAK,CAAC;MACxB;MACA,OAAO;QACLsG,OAAO,EAAE,IAAI,CAACd,gBAAgB,CAAC,MAAM,CAAC;QACtCe,SAAS,EAAE,IAAI,CAACC,yBAAyB,CAAC,MAAM,CAAC;QACjDH,QAAQ,EAARA;MACF,CAAC;IACH;EAAC;IAAAjF,GAAA;IAAA4D,KAAA,EAED,SAAAyB,aAAA,EAAe;MACb,IAAAC,cAAA,GAA2B,IAAI,CAAC5E,OAAO;QAA/B9B,KAAK,GAAA0G,cAAA,CAAL1G,KAAK;QAAEgD,OAAO,GAAA0D,cAAA,CAAP1D,OAAO;MACtB,IAAQpD,KAAK,GAAK,IAAI,CAACmC,KAAK,CAApBnC,KAAK;MACb,IAAIyG,QAAQ,GAAG,KAAK;MACpB,IAAIzG,KAAK,CAACgC,MAAM,IAAIoB,OAAO,EAAE;QAC3BqD,QAAQ,GAAGrG,KAAK,KAAKJ,KAAK,CAACgC,MAAM,GAAG,CAAC;MACvC;MACA,OAAO;QACL0E,OAAO,EAAE,IAAI,CAACd,gBAAgB,CAAC,OAAO,CAAC;QACvCe,SAAS,EAAE,IAAI,CAACC,yBAAyB,CAAC,OAAO,CAAC;QAClDH,QAAQ,EAARA;MACF,CAAC;IACH;EAAC;IAAAjF,GAAA;IAAA4D,KAAA,EAED,SAAA2B,mBAAA,EAAqB;MAAA,IAAAC,MAAA;MACnB,IAAQhH,KAAK,GAAK,IAAI,CAACmC,KAAK,CAApBnC,KAAK;MACb,IAAQI,KAAK,GAAK,IAAI,CAAC8B,OAAO,CAAtB9B,KAAK;MAEb,OAAO;QACLJ,KAAK,EAAEA,KAAK,CAAC2C,GAAG,CAAC,UAACxC,IAAI,EAAEqB,GAAG;UAAA,OAAM;YAC/ByF,MAAM,EAAEzF,GAAG,KAAKpB,KAAK;YACrBsG,OAAO,EAAEM,MAAI,CAACE,yBAAyB,CAAC1F,GAAG,CAAC;YAC5CA,GAAG,EAAHA;UACF,CAAC;QAAA,CAAC;MACJ,CAAC;IACH;EAAC;IAAAA,GAAA;IAAA4D,KAAA,EAED,SAAA+B,OAAA,EAAS;MAAA,IAAAC,IAAA,QAAAlF,OAAA;QAAAmF,KAAA;MACP,IAAMC,SAAS,GAKH/H,GAAG;MAJf,IAAAgI,cAAA,GAA6B,IAAI,CAACrF,OAAO;QAAjCsF,MAAM,GAAAD,cAAA,CAANC,MAAM;QAAEC,QAAQ,GAAAF,cAAA,CAARE,QAAQ;MAExB,OAAAJ,KAAA,GAAOhI,OAAO,CAACmI,MAAM,CAAC,eACpBvI,KAAA,CAAAyI,aAAA,CAACJ,SAAS,EAAAD,KAAA,CAAAM,EAAA,cAAA/E,aAAA,KAAAgF,YAAA;QAAA,aAEG,IAAI,CAACC,cAAc;QAAA,YACpB,CAAC;QAAA,gBACG,IAAI,CAACC,iBAAiB;QAAA,cACxB,IAAI,CAACC;MAAe,GAAAX,IAAA,kBAEhCnI,KAAA,CAAAyI,aAAA,CAACD,QAAQ,EAAAJ,KAAA,CAAAM,EAAA,iBAAG,CACF;IAEhB;EAAC;EAAA,OAAAhH,YAAA;AAAA,EA7TwBvB,SAAS;AAAAgC,eAAA,CAA9BT,YAAY,iBACK,UAAU;AAAAS,eAAA,CAD3BT,YAAY,kBAEM;EACpBqH,YAAY,EAAE,CAAC;EACf9B,QAAQ,EAAE,GAAG;EACbtB,IAAI,EAAE,GAAG;EACTxB,OAAO,EAAE;AACX,CAAC;AAAAhC,eAAA,CAPGT,YAAY,WASDhB,KAAK;AAAAyB,eAAA,CAThBT,YAAY,aAUC,CAACjB,mBAAmB,EAAE,CAAC;AAsT1C,IAAMuI,SAAS,GAAG,SAAZA,SAASA,CAAIjH,KAAK,EAAK;EAAA,IAAAkH,KAAA,GAAAC,YAAA;IAAAC,KAAA;EAC3B,IAAMC,UAAU,GAG2B9I,GAAG;EAF9C,IAAQiI,MAAM,GAAexG,KAAK,CAA1BwG,MAAM;IAAEtB,QAAQ,GAAKlF,KAAK,CAAlBkF,QAAQ;EAExB,OAAAkC,KAAA,GAAO/I,OAAO,CAACmI,MAAM,CAAC,eAACvI,KAAA,CAAAyI,aAAA,CAACW,UAAU,EAAAD,KAAA,CAAAT,EAAA,eAAA/E,aAAA,KAAA0F,aAAA;IAAA,QAAmB,MAAM;IAAA,mBAAA7F,MAAA,CAAkByD,QAAQ;EAAA,GAAAgC,KAAA,IAAQ;AAC/F,CAAC;AAED,IAAMK,IAAI,GAAG,SAAPA,IAAIA,CAAIvH,KAAK,EAAK;EAAA,IAAAwH,KAAA,GAAAL,YAAA;IAAAM,MAAA;EACtB,IAAQjB,MAAM,GAA6BxG,KAAK,CAAxCwG,MAAM;IAAEnB,UAAU,GAAiBrF,KAAK,CAAhCqF,UAAU;IAAEjG,KAAK,GAAUY,KAAK,CAApBZ,KAAK;IAAEkG,GAAG,GAAKtF,KAAK,CAAbsF,GAAG;EACtC,IAAMoC,KAAK,GAYMnJ,GAAG;EAXpB,IAAMoJ,OAAO,gBAAG1J,KAAK,CAACqC,SAAS,EAAE;EACjCpC,SAAS,CAAC,YAAM;IACd;IACAmH,UAAU,CAAC;MAAE9D,IAAI,EAAEoG,OAAO,CAAC1F;IAAQ,CAAC,CAAC;IACrC,OAAO,YAAM;MACX;MACAoD,UAAU,CAAC;QAAE9D,IAAI,EAAEoG,OAAO,CAAC1F;MAAQ,CAAC,EAAE,IAAI,CAAC;IAC7C,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,OAAAwF,MAAA,GAAOpJ,OAAO,CAACmI,MAAM,CAAC,eACpBvI,KAAA,CAAAyI,aAAA,CAACgB,KAAK,EAAAD,MAAA,CAAAd,EAAA,UAAA/E,aAAA,KAAAgG,aAAA;IAAA,OAAmBD,OAAO;IAAA,QAAO,UAAU;IAAA,aAAAlG,MAAA,CAAY6D,GAAG,qBAAA7D,MAAA,CAAkBrC,KAAK;EAAA,GAAAoI,KAAA,IAAM;AAEjG,CAAC;AAED,IAAMK,IAAI,GAAG,SAAPA,IAAIA,CAAI7H,KAAK,EAAK;EAAA,IAAA8H,KAAA,GAAAX,YAAA;IAAAY,MAAA;EACtB,IAAQvB,MAAM,GAAKxG,KAAK,CAAhBwG,MAAM;EACd,IAAMwB,KAAK,GAC2BzJ,GAAG;EAAzC,OAAAwJ,MAAA,GAAO1J,OAAO,CAACmI,MAAM,CAAC,eAACvI,KAAA,CAAAyI,aAAA,CAACsB,KAAK,EAAAD,MAAA,CAAApB,EAAA,UAAA/E,aAAA,KAAAqG,aAAA;IAAA,eAA0B;EAAM,GAAAH,KAAA,IAAG;AAClE,CAAC;AAEDD,IAAI,CAACK,YAAY,GAAG;EAAA,OAAO;IACzBC,QAAQ,eAAElK,KAAA,CAAAyI,aAAA,CAACjI,WAAW;MAAC2J,WAAW;MAAC,cAAW;IAA6B,EAAG;IAC9EC,GAAG,EAAE;EACP,CAAC;AAAA,CAAC;AAEF,IAAMC,IAAI,GAAG,SAAPA,IAAIA,CAAItI,KAAK,EAAK;EAAA,IAAAuI,KAAA,GAAApB,YAAA;IAAAqB,MAAA;EACtB,IAAQhC,MAAM,GAAKxG,KAAK,CAAhBwG,MAAM;EACd,IAAMiC,KAAK,GAC2BlK,GAAG;EAAzC,OAAAiK,MAAA,GAAOnK,OAAO,CAACmI,MAAM,CAAC,eAACvI,KAAA,CAAAyI,aAAA,CAAC+B,KAAK,EAAAD,MAAA,CAAA7B,EAAA,UAAA/E,aAAA,KAAA8G,aAAA;IAAA,eAA0B;EAAM,GAAAH,KAAA,IAAG;AAClE,CAAC;AAEDD,IAAI,CAACJ,YAAY,GAAG;EAAA,OAAO;IACzBC,QAAQ,eAAElK,KAAA,CAAAyI,aAAA,CAAClI,YAAY;MAAC4J,WAAW;MAAC,cAAW;IAAyB,EAAG;IAC3EC,GAAG,EAAE;EACP,CAAC;AAAA,CAAC;AAEF,IAAMM,UAAU,GAAG,SAAbA,UAAUA,CAAAC,MAAA,EAAoC;EAAA,IAAAC,KAAA,GAAA1B,YAAA;IAAA2B,MAAA;EAAA,IAA9B9J,KAAK,GAAA4J,MAAA,CAAL5J,KAAK;IAAEwH,MAAM,GAAAoC,MAAA,CAANpC,MAAM;IAAEC,QAAQ,GAAAmC,MAAA,CAARnC,QAAQ;EAC3C,IAAMsC,WAAW,GASMxK,GAAG;EAR1B,IAAIkI,QAAQ,CAACuC,MAAM,EAAE;IAAA,IAAAC,MAAA;IACnB,OAAAA,MAAA,GAAO5K,OAAO,CAACmI,MAAM,CAAC,eACpBvI,KAAA,CAAAyI,aAAA,CAACqC,WAAW,EAAAE,MAAA,CAAAtC,EAAA,gBAAA/E,aAAA,KAAAsH,aAAA;MAAA,eAA0B;IAAM,GAAAL,KAAA,kBAC1C5K,KAAA,CAAAyI,aAAA,CAACD,QAAQ,EAAAwC,MAAA,CAAAtC,EAAA,iBAAG,CACA;EAElB;EACA,OAAAmC,MAAA,GAAOzK,OAAO,CAACmI,MAAM,CAAC,eACpBvI,KAAA,CAAAyI,aAAA,CAACqC,WAAW,EAAAD,MAAA,CAAAnC,EAAA,gBAAA/E,aAAA,KAAAuH,aAAA;IAAA,eAA0B;EAAM,GAAAN,KAAA,KACzC7J,KAAK,CAAC2C,GAAG,CAAC,UAACxC,IAAI,EAAEC,KAAK;IAAA,oBACrBnB,KAAA,CAAAyI,aAAA,CAAC0C,QAAQ,CAACC,SAAS,EAAAC,QAAA;MAAC9I,GAAG,EAAEpB;IAAM,GAAKD,IAAI,EAAI;EAAA,CAC7C,CAAC,CACU;AAElB,CAAC;AAED,IAAMkK,SAAS,GAAG,SAAZA,SAASA,CAAAE,MAAA,EAA6B;EAAA,IAAAC,KAAA,GAAArC,YAAA;IAAAsC,MAAA;EAAA,IAAvBjD,MAAM,GAAA+C,MAAA,CAAN/C,MAAM;IAAEC,QAAQ,GAAA8C,MAAA,CAAR9C,QAAQ;EACnC,IAAMiD,UAAU,GAEMnL,GAAG;EADzB,OAAAkL,MAAA,GAAOpL,OAAO,CAACmI,MAAM,CAAC,eACpBvI,KAAA,CAAAyI,aAAA,CAACgD,UAAU,EAAAD,MAAA,CAAA9C,EAAA,eAAA/E,aAAA,KAAA+H,aAAA,KAAAH,KAAA,kBACTvL,KAAA,CAAAyI,aAAA,CAACD,QAAQ,EAAAgD,MAAA,CAAA9C,EAAA,iBAAG,CACD;AAEjB,CAAC;AAED,IAAMyC,QAAQ,GAAGjL,eAAe,CAACwB,YAAY,EAAE;EAC7CsH,SAAS,EAATA,SAAS;EACT0B,UAAU,EAAVA,UAAU;EACVU,SAAS,EAATA,SAAS;EACT9B,IAAI,EAAJA,IAAI;EACJM,IAAI,EAAJA,IAAI;EACJS,IAAI,EAAJA;AACF,CAAC,CAAC;AAEF,eAAec,QAAQ"}
|
|
1
|
+
{"version":3,"file":"Carousel.js","names":["React","useEffect","createComponent","Component","sstyled","Root","Box","ChevronRight","ChevronLeft","uniqueIDEnhancement","i18nEnhance","localizedMessages","style","_sstyled","insert","position","getItemMin","items","indexItem","forEach","item","index","getItemMax","getMin","getMax","MAP_TRANSFORM","ArrowLeft","ArrowRight","CarouselRoot","_Component","_inherits","_super","_createSuper","props","_this","_classCallCheck","call","_defineProperty","_assertThisInitialized","createRef","e","key","preventDefault","_this$controlTransfor","controlTransformItem","activeItemIndex","handlers","removeItem","arguments","length","undefined","asProps","state","updateItems","filter","element","node","setState","concat","_toConsumableArray","map","_objectSpread","transform","slideToValue","indexIndicator","refContainer","current","currentIndex","nextIndex","bounded","listIndex","_","ind","tmpArr","minTmpArr","maxTmpArr","unshift","pop","shift","push","tmpCurrentIndex","indexOf","left","nextIndexItem","direction","getDirection","i","_this$transformItem","transformItem","_this$asProps","maxIndexIndicator","isControlled","_this$asProps2","step","nextItemPosition","positionLeftItem","positionItemMax","positionItemMin","findIndex","transformContainer","_this$controlTransfor2","value","_touchStartCoord","changedTouches","clientX","touchEndCoord","delta","_this$controlTransfor3","_this$controlTransfor4","bindHandlerClick","_createClass","uncontrolledProps","componentDidUpdate","prevProps","getContainerProps","duration","ref","getItemProps","toggleItem","uid","getPrevProps","_this$asProps3","getI18nText","disabled","onClick","onKeyDown","bindHandlerKeydownControl","label","getNextProps","_this$asProps4","getIndicatorsProps","_this2","active","bindHandlerClickIndicator","render","_ref","_ref8","SCarousel","_this$asProps5","styles","Children","createElement","cn","_assignProps","handlerKeyDown","handlerTouchStart","handlerTouchEnd","defaultIndex","i18n","locale","Container","_ref2","arguments[0]","_ref9","SContainer","_assignProps2","Item","_ref3","_ref10","SItem","refItem","_assignProps3","Prev","_ref4","_ref11","children","SPrev","_assignProps4","defaultProps","top","Next","_ref5","_ref12","SNext","_assignProps5","Indicators","_ref16","_ref6","_ref14","SIndicators","origin","_ref13","_assignProps6","_assignProps7","Carousel","Indicator","_extends","_ref17","_ref7","_ref15","SIndicator","_assignProps8"],"sources":["../../src/Carousel.jsx"],"sourcesContent":["import React, { useEffect } from 'react';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\n\nimport { Box } from '@semcore/flex-box';\nimport ChevronRight from '@semcore/icon/ChevronRight/l';\nimport ChevronLeft from '@semcore/icon/ChevronLeft/l';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\n\nimport style from './style/carousel.shadow.css';\n\nconst position = {\n getItemMin: function (items) {\n let indexItem = 0;\n items.forEach(function (item, index) {\n if (item.position < items[indexItem].position) {\n indexItem = index;\n }\n });\n return indexItem;\n },\n getItemMax: function (items) {\n let indexItem = 0;\n items.forEach(function (item, index) {\n if (item.position > items[indexItem].position) {\n indexItem = index;\n }\n });\n return indexItem;\n },\n getMin: function (items) {\n return items[position.getItemMin(items)].position;\n },\n getMax: function (items) {\n return items[position.getItemMax(items)].position;\n },\n};\n\nconst MAP_TRANSFORM = {\n ArrowLeft: 'left',\n ArrowRight: 'right',\n};\n\nclass CarouselRoot extends Component {\n static displayName = 'Carousel';\n static defaultProps = {\n defaultIndex: 0,\n duration: 350,\n step: 100,\n bounded: false,\n i18n: localizedMessages,\n locale: 'en',\n };\n\n static style = style;\n static enhance = [uniqueIDEnhancement(), i18nEnhance(localizedMessages)];\n\n refContainer = React.createRef();\n transform = 0;\n positionLeftItem = 0;\n indexIndicator = 0;\n\n constructor(props) {\n super(props);\n this.isControlled = props.index !== undefined;\n this.state = {\n items: [],\n };\n }\n\n uncontrolledProps() {\n return {\n index: null,\n };\n }\n\n componentDidUpdate(prevProps) {\n const { index } = this.asProps;\n if (prevProps.index !== index && this.isControlled) {\n this.slideToValue(prevProps.index, index);\n }\n }\n\n handlerKeyDown = (e) => {\n switch (e.key) {\n case 'ArrowLeft':\n case 'ArrowRight': {\n e.preventDefault();\n const { activeItemIndex } = this.controlTransformItem(MAP_TRANSFORM[e.key]);\n this.handlers.index(activeItemIndex);\n }\n }\n };\n\n toggleItem = (item, removeItem = false) => {\n const { index } = this.asProps;\n const { items } = this.state;\n if (removeItem) {\n this.updateItems(items.filter((element) => element.node !== item.node));\n } else {\n this.setState(\n (state) => {\n return {\n items: [...state.items, item].map((element, position) => ({\n ...element,\n position,\n transform: 0,\n })),\n };\n },\n () => {\n const { items } = this.state;\n if (items.length > index && index >= 0) {\n this.slideToValue(this.indexIndicator, index);\n }\n },\n );\n }\n };\n\n updateItems = (items) => {\n this.setState(() => ({ items }));\n };\n\n transformContainer = (transform) => {\n if (this.refContainer.current) {\n this.refContainer.current.style.transform = `translateX(${transform}%)`;\n }\n };\n\n getDirection = (currentIndex, nextIndex, bounded) => {\n if (bounded) {\n return currentIndex < nextIndex ? 'right' : 'left';\n }\n const { items } = this.state;\n const listIndex = items.map((_, ind) => ind);\n const tmpArr = [...listIndex];\n const minTmpArr = tmpArr[0];\n const maxTmpArr = tmpArr[tmpArr.length - 1];\n\n if (tmpArr.length === 2) {\n return currentIndex < nextIndex ? 'right' : 'left';\n }\n if (currentIndex === minTmpArr) {\n tmpArr.unshift(maxTmpArr);\n tmpArr.pop();\n }\n if (currentIndex === maxTmpArr) {\n tmpArr.shift();\n tmpArr.push(minTmpArr);\n }\n\n const tmpCurrentIndex = tmpArr.indexOf(currentIndex);\n const left = tmpArr.indexOf(nextIndex);\n\n return left - tmpCurrentIndex < 0 ? 'left' : 'right';\n };\n\n slideToValue = (currentIndex, nextIndexItem, bounded) => {\n if (currentIndex === nextIndexItem) return false;\n const direction = this.getDirection(\n currentIndex,\n nextIndexItem,\n bounded || this.asProps.bounded,\n );\n let i = currentIndex;\n while (nextIndexItem !== i) {\n const { activeItemIndex } = this.transformItem(direction);\n i = activeItemIndex;\n }\n };\n\n controlTransformItem = (direction) => {\n const { bounded, index } = this.asProps;\n const { items } = this.state;\n const maxIndexIndicator = items.length - 1;\n\n if (this.isControlled) {\n if (direction === 'right') {\n if (bounded && index === maxIndexIndicator) {\n return { activeItemIndex: maxIndexIndicator };\n }\n return { activeItemIndex: index === maxIndexIndicator ? 0 : index + 1 };\n }\n if (direction === 'left') {\n if (bounded && index === 0) {\n return { activeItemIndex: 0 };\n }\n return { activeItemIndex: index === 0 ? maxIndexIndicator : index - 1 };\n }\n }\n return this.transformItem(direction);\n };\n\n transformItem = (direction) => {\n const { bounded, step } = this.asProps;\n const { items } = this.state;\n const maxIndexIndicator = items.length - 1;\n let nextItemPosition = undefined;\n\n if (direction === 'right') {\n if (bounded && this.positionLeftItem === maxIndexIndicator) {\n return { activeItemIndex: maxIndexIndicator };\n }\n this.positionLeftItem += 1;\n const positionItemMax = position.getMax(items);\n\n if (this.positionLeftItem > positionItemMax) {\n nextItemPosition = position.getItemMin(items);\n items[nextItemPosition].position = positionItemMax + 1;\n items[nextItemPosition].transform += items.length * step;\n this.updateItems([...items]);\n }\n\n this.indexIndicator += 1;\n if (this.indexIndicator > maxIndexIndicator) {\n this.indexIndicator = 0;\n }\n this.transform -= step;\n }\n if (direction === 'left') {\n if (bounded && this.positionLeftItem === 0) {\n return { activeItemIndex: 0 };\n }\n this.positionLeftItem -= 1;\n const positionItemMin = position.getMin(items);\n\n if (this.positionLeftItem < positionItemMin) {\n nextItemPosition = position.getItemMax(items);\n items[nextItemPosition].position = positionItemMin - 1;\n items[nextItemPosition].transform -= items.length * step;\n this.updateItems([...items]);\n }\n\n this.indexIndicator -= 1;\n if (this.indexIndicator < 0) {\n this.indexIndicator = maxIndexIndicator;\n }\n this.transform += step;\n }\n\n const activeItemIndex = items.findIndex((item) => item.position === this.positionLeftItem);\n if (items[activeItemIndex]) {\n items[\n activeItemIndex\n ].node.style.transform = `translateX(${items[activeItemIndex].transform}%)`;\n }\n this.transformContainer(this.transform);\n return { activeItemIndex };\n };\n\n bindHandlerClick = (direction) => {\n return () => {\n const { activeItemIndex } = this.controlTransformItem(direction);\n this.handlers.index(activeItemIndex);\n };\n };\n\n bindHandlerClickIndicator = (value) => {\n return () => {\n !this.isControlled && this.slideToValue(this.indexIndicator, value, true);\n this.handlers.index(value);\n };\n };\n\n handlerTouchStart = (e) => {\n this._touchStartCoord = e.changedTouches[0].clientX;\n };\n\n handlerTouchEnd = (e) => {\n const touchEndCoord = e.changedTouches[0].clientX;\n const delta = touchEndCoord - this._touchStartCoord;\n if (delta > 50) {\n const { activeItemIndex } = this.controlTransformItem('left');\n this.handlers.index(activeItemIndex);\n } else if (delta < -50) {\n const { activeItemIndex } = this.controlTransformItem('right');\n this.handlers.index(activeItemIndex);\n }\n };\n\n getContainerProps() {\n const { duration } = this.asProps;\n\n return {\n ref: this.refContainer,\n duration,\n };\n }\n\n getItemProps(_, index) {\n return {\n toggleItem: this.toggleItem,\n uid: this.asProps.uid,\n index,\n current: index === this.asProps.index,\n };\n }\n\n bindHandlerKeydownControl = (direction) => (e) => {\n const { key } = e;\n if (key === 'Enter') {\n e.preventDefault();\n this.bindHandlerClick(direction)();\n }\n };\n\n getPrevProps() {\n const { index, bounded, getI18nText } = this.asProps;\n const { items } = this.state;\n let disabled = false;\n if (items.length && bounded) {\n disabled = index === 0;\n }\n return {\n onClick: this.bindHandlerClick('left'),\n onKeyDown: this.bindHandlerKeydownControl('left'),\n disabled,\n label: getI18nText('prev'),\n };\n }\n\n getNextProps() {\n const { index, bounded, getI18nText } = this.asProps;\n const { items } = this.state;\n let disabled = false;\n if (items.length && bounded) {\n disabled = index === items.length - 1;\n }\n return {\n onClick: this.bindHandlerClick('right'),\n onKeyDown: this.bindHandlerKeydownControl('right'),\n disabled,\n label: getI18nText('next'),\n };\n }\n\n getIndicatorsProps() {\n const { items } = this.state;\n const { index } = this.asProps;\n\n return {\n items: items.map((item, key) => ({\n active: key === index,\n onClick: this.bindHandlerClickIndicator(key),\n key,\n })),\n };\n }\n\n render() {\n const SCarousel = Root;\n const { styles, Children } = this.asProps;\n\n return sstyled(styles)(\n <SCarousel\n render={Box}\n role='group'\n onKeyDown={this.handlerKeyDown}\n tabIndex={0}\n onTouchStart={this.handlerTouchStart}\n onTouchEnd={this.handlerTouchEnd}\n >\n <Children />\n </SCarousel>,\n );\n }\n}\n\nconst Container = (props) => {\n const SContainer = Root;\n const { styles, duration } = props;\n\n return sstyled(styles)(<SContainer render={Box} role='list' use:duration={`${duration}ms`} />);\n};\n\nconst Item = (props) => {\n const { styles, toggleItem, index, uid, current } = props;\n const SItem = Root;\n const refItem = React.createRef();\n useEffect(() => {\n // add item\n toggleItem({ node: refItem.current });\n return () => {\n // remove item\n toggleItem({ node: refItem.current }, true);\n };\n }, []);\n\n return sstyled(styles)(\n <SItem\n render={Box}\n ref={refItem}\n role='listitem'\n id={`igc-${uid}-carousel-item-${index}`}\n aria-current={current}\n />,\n );\n};\n\nconst Prev = (props) => {\n const { styles, children, label } = props;\n const SPrev = Root;\n return sstyled(styles)(\n <SPrev render={Box}>{children || <ChevronLeft interactive aria-label={label} />}</SPrev>,\n );\n};\n\nPrev.defaultProps = () => ({\n top: 0,\n});\n\nconst Next = (props) => {\n const { styles, children, label } = props;\n const SNext = Root;\n return sstyled(styles)(\n <SNext render={Box}>{children || <ChevronRight interactive aria-label={label} />}</SNext>,\n );\n};\n\nNext.defaultProps = () => ({\n top: 0,\n});\n\nconst Indicators = ({ items, styles, Children }) => {\n const SIndicators = Root;\n if (Children.origin) {\n return sstyled(styles)(\n <SIndicators render={Box} aria-hidden='true'>\n <Children />\n </SIndicators>,\n );\n }\n return sstyled(styles)(\n <SIndicators render={Box} aria-hidden='true'>\n {items.map((item, index) => (\n <Carousel.Indicator key={index} {...item} />\n ))}\n </SIndicators>,\n );\n};\n\nconst Indicator = ({ styles, Children }) => {\n const SIndicator = Root;\n return sstyled(styles)(\n <SIndicator render={Box}>\n <Children />\n </SIndicator>,\n );\n};\n\nconst Carousel = createComponent(CarouselRoot, {\n Container,\n Indicators,\n Indicator,\n Item,\n Prev,\n Next,\n});\n\nexport default Carousel;\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AACxC,OAAOC,eAAe,IAAIC,SAAS,EAAEC,OAAO,EAAEC,IAAI,QAAQ,eAAe;AAEzE,SAASC,GAAG,QAAQ,mBAAmB;AACvC,OAAOC,YAAY,MAAM,8BAA8B;AACvD,OAAOC,WAAW,MAAM,6BAA6B;AACrD,OAAOC,mBAAmB,MAAM,6BAA6B;AAC7D,OAAOC,WAAW,MAAM,yCAAyC;AACjE,SAASC,iBAAiB,QAAQ,gDAAgD;AAAC;AAAA,IAAAC,KAAA,+BAAAC,QAAA,CAAAC,MAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;AAAA;AAInF,IAAMC,QAAQ,GAAG;EACfC,UAAU,EAAE,SAAAA,WAAUC,KAAK,EAAE;IAC3B,IAAIC,SAAS,GAAG,CAAC;IACjBD,KAAK,CAACE,OAAO,CAAC,UAAUC,IAAI,EAAEC,KAAK,EAAE;MACnC,IAAID,IAAI,CAACL,QAAQ,GAAGE,KAAK,CAACC,SAAS,CAAC,CAACH,QAAQ,EAAE;QAC7CG,SAAS,GAAGG,KAAK;MACnB;IACF,CAAC,CAAC;IACF,OAAOH,SAAS;EAClB,CAAC;EACDI,UAAU,EAAE,SAAAA,WAAUL,KAAK,EAAE;IAC3B,IAAIC,SAAS,GAAG,CAAC;IACjBD,KAAK,CAACE,OAAO,CAAC,UAAUC,IAAI,EAAEC,KAAK,EAAE;MACnC,IAAID,IAAI,CAACL,QAAQ,GAAGE,KAAK,CAACC,SAAS,CAAC,CAACH,QAAQ,EAAE;QAC7CG,SAAS,GAAGG,KAAK;MACnB;IACF,CAAC,CAAC;IACF,OAAOH,SAAS;EAClB,CAAC;EACDK,MAAM,EAAE,SAAAA,OAAUN,KAAK,EAAE;IACvB,OAAOA,KAAK,CAACF,QAAQ,CAACC,UAAU,CAACC,KAAK,CAAC,CAAC,CAACF,QAAQ;EACnD,CAAC;EACDS,MAAM,EAAE,SAAAA,OAAUP,KAAK,EAAE;IACvB,OAAOA,KAAK,CAACF,QAAQ,CAACO,UAAU,CAACL,KAAK,CAAC,CAAC,CAACF,QAAQ;EACnD;AACF,CAAC;AAED,IAAMU,aAAa,GAAG;EACpBC,SAAS,EAAE,MAAM;EACjBC,UAAU,EAAE;AACd,CAAC;AAAC,IAEIC,YAAY,0BAAAC,UAAA;EAAAC,SAAA,CAAAF,YAAA,EAAAC,UAAA;EAAA,IAAAE,MAAA,GAAAC,YAAA,CAAAJ,YAAA;EAmBhB,SAAAA,aAAYK,KAAK,EAAE;IAAA,IAAAC,KAAA;IAAAC,eAAA,OAAAP,YAAA;IACjBM,KAAA,GAAAH,MAAA,CAAAK,IAAA,OAAMH,KAAK;IAAEI,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,gCANAlC,KAAK,CAACuC,SAAS,EAAE;IAAAF,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,gBACpB,CAAC;IAAAG,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,uBACM,CAAC;IAAAG,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,qBACH,CAAC;IAAAG,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,qBAuBD,UAACM,CAAC,EAAK;MACtB,QAAQA,CAAC,CAACC,GAAG;QACX,KAAK,WAAW;QAChB,KAAK,YAAY;UAAE;YACjBD,CAAC,CAACE,cAAc,EAAE;YAClB,IAAAC,qBAAA,GAA4BT,KAAA,CAAKU,oBAAoB,CAACnB,aAAa,CAACe,CAAC,CAACC,GAAG,CAAC,CAAC;cAAnEI,eAAe,GAAAF,qBAAA,CAAfE,eAAe;YACvBX,KAAA,CAAKY,QAAQ,CAACzB,KAAK,CAACwB,eAAe,CAAC;UACtC;MAAC;IAEL,CAAC;IAAAR,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,iBAEY,UAACd,IAAI,EAAyB;MAAA,IAAvB2B,UAAU,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,KAAK;MACpC,IAAQ3B,KAAK,GAAKa,KAAA,CAAKiB,OAAO,CAAtB9B,KAAK;MACb,IAAQJ,KAAK,GAAKiB,KAAA,CAAKkB,KAAK,CAApBnC,KAAK;MACb,IAAI8B,UAAU,EAAE;QACdb,KAAA,CAAKmB,WAAW,CAACpC,KAAK,CAACqC,MAAM,CAAC,UAACC,OAAO;UAAA,OAAKA,OAAO,CAACC,IAAI,KAAKpC,IAAI,CAACoC,IAAI;QAAA,EAAC,CAAC;MACzE,CAAC,MAAM;QACLtB,KAAA,CAAKuB,QAAQ,CACX,UAACL,KAAK,EAAK;UACT,OAAO;YACLnC,KAAK,EAAE,GAAAyC,MAAA,CAAAC,kBAAA,CAAIP,KAAK,CAACnC,KAAK,IAAEG,IAAI,GAAEwC,GAAG,CAAC,UAACL,OAAO,EAAExC,QAAQ;cAAA,OAAA8C,aAAA,CAAAA,aAAA,KAC/CN,OAAO;gBACVxC,QAAQ,EAARA,QAAQ;gBACR+C,SAAS,EAAE;cAAC;YAAA,CACZ;UACJ,CAAC;QACH,CAAC,EACD,YAAM;UACJ,IAAQ7C,KAAK,GAAKiB,KAAA,CAAKkB,KAAK,CAApBnC,KAAK;UACb,IAAIA,KAAK,CAACgC,MAAM,GAAG5B,KAAK,IAAIA,KAAK,IAAI,CAAC,EAAE;YACtCa,KAAA,CAAK6B,YAAY,CAAC7B,KAAA,CAAK8B,cAAc,EAAE3C,KAAK,CAAC;UAC/C;QACF,CAAC,CACF;MACH;IACF,CAAC;IAAAgB,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,kBAEa,UAACjB,KAAK,EAAK;MACvBiB,KAAA,CAAKuB,QAAQ,CAAC;QAAA,OAAO;UAAExC,KAAK,EAALA;QAAM,CAAC;MAAA,CAAC,CAAC;IAClC,CAAC;IAAAoB,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,yBAEoB,UAAC4B,SAAS,EAAK;MAClC,IAAI5B,KAAA,CAAK+B,YAAY,CAACC,OAAO,EAAE;QAC7BhC,KAAA,CAAK+B,YAAY,CAACC,OAAO,CAACtD,KAAK,CAACkD,SAAS,iBAAAJ,MAAA,CAAiBI,SAAS,OAAI;MACzE;IACF,CAAC;IAAAzB,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,mBAEc,UAACiC,YAAY,EAAEC,SAAS,EAAEC,OAAO,EAAK;MACnD,IAAIA,OAAO,EAAE;QACX,OAAOF,YAAY,GAAGC,SAAS,GAAG,OAAO,GAAG,MAAM;MACpD;MACA,IAAQnD,KAAK,GAAKiB,KAAA,CAAKkB,KAAK,CAApBnC,KAAK;MACb,IAAMqD,SAAS,GAAGrD,KAAK,CAAC2C,GAAG,CAAC,UAACW,CAAC,EAAEC,GAAG;QAAA,OAAKA,GAAG;MAAA,EAAC;MAC5C,IAAMC,MAAM,GAAAd,kBAAA,CAAOW,SAAS,CAAC;MAC7B,IAAMI,SAAS,GAAGD,MAAM,CAAC,CAAC,CAAC;MAC3B,IAAME,SAAS,GAAGF,MAAM,CAACA,MAAM,CAACxB,MAAM,GAAG,CAAC,CAAC;MAE3C,IAAIwB,MAAM,CAACxB,MAAM,KAAK,CAAC,EAAE;QACvB,OAAOkB,YAAY,GAAGC,SAAS,GAAG,OAAO,GAAG,MAAM;MACpD;MACA,IAAID,YAAY,KAAKO,SAAS,EAAE;QAC9BD,MAAM,CAACG,OAAO,CAACD,SAAS,CAAC;QACzBF,MAAM,CAACI,GAAG,EAAE;MACd;MACA,IAAIV,YAAY,KAAKQ,SAAS,EAAE;QAC9BF,MAAM,CAACK,KAAK,EAAE;QACdL,MAAM,CAACM,IAAI,CAACL,SAAS,CAAC;MACxB;MAEA,IAAMM,eAAe,GAAGP,MAAM,CAACQ,OAAO,CAACd,YAAY,CAAC;MACpD,IAAMe,IAAI,GAAGT,MAAM,CAACQ,OAAO,CAACb,SAAS,CAAC;MAEtC,OAAOc,IAAI,GAAGF,eAAe,GAAG,CAAC,GAAG,MAAM,GAAG,OAAO;IACtD,CAAC;IAAA3C,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,mBAEc,UAACiC,YAAY,EAAEgB,aAAa,EAAEd,OAAO,EAAK;MACvD,IAAIF,YAAY,KAAKgB,aAAa,EAAE,OAAO,KAAK;MAChD,IAAMC,SAAS,GAAGlD,KAAA,CAAKmD,YAAY,CACjClB,YAAY,EACZgB,aAAa,EACbd,OAAO,IAAInC,KAAA,CAAKiB,OAAO,CAACkB,OAAO,CAChC;MACD,IAAIiB,CAAC,GAAGnB,YAAY;MACpB,OAAOgB,aAAa,KAAKG,CAAC,EAAE;QAC1B,IAAAC,mBAAA,GAA4BrD,KAAA,CAAKsD,aAAa,CAACJ,SAAS,CAAC;UAAjDvC,eAAe,GAAA0C,mBAAA,CAAf1C,eAAe;QACvByC,CAAC,GAAGzC,eAAe;MACrB;IACF,CAAC;IAAAR,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,2BAEsB,UAACkD,SAAS,EAAK;MACpC,IAAAK,aAAA,GAA2BvD,KAAA,CAAKiB,OAAO;QAA/BkB,OAAO,GAAAoB,aAAA,CAAPpB,OAAO;QAAEhD,KAAK,GAAAoE,aAAA,CAALpE,KAAK;MACtB,IAAQJ,KAAK,GAAKiB,KAAA,CAAKkB,KAAK,CAApBnC,KAAK;MACb,IAAMyE,iBAAiB,GAAGzE,KAAK,CAACgC,MAAM,GAAG,CAAC;MAE1C,IAAIf,KAAA,CAAKyD,YAAY,EAAE;QACrB,IAAIP,SAAS,KAAK,OAAO,EAAE;UACzB,IAAIf,OAAO,IAAIhD,KAAK,KAAKqE,iBAAiB,EAAE;YAC1C,OAAO;cAAE7C,eAAe,EAAE6C;YAAkB,CAAC;UAC/C;UACA,OAAO;YAAE7C,eAAe,EAAExB,KAAK,KAAKqE,iBAAiB,GAAG,CAAC,GAAGrE,KAAK,GAAG;UAAE,CAAC;QACzE;QACA,IAAI+D,SAAS,KAAK,MAAM,EAAE;UACxB,IAAIf,OAAO,IAAIhD,KAAK,KAAK,CAAC,EAAE;YAC1B,OAAO;cAAEwB,eAAe,EAAE;YAAE,CAAC;UAC/B;UACA,OAAO;YAAEA,eAAe,EAAExB,KAAK,KAAK,CAAC,GAAGqE,iBAAiB,GAAGrE,KAAK,GAAG;UAAE,CAAC;QACzE;MACF;MACA,OAAOa,KAAA,CAAKsD,aAAa,CAACJ,SAAS,CAAC;IACtC,CAAC;IAAA/C,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,oBAEe,UAACkD,SAAS,EAAK;MAC7B,IAAAQ,cAAA,GAA0B1D,KAAA,CAAKiB,OAAO;QAA9BkB,OAAO,GAAAuB,cAAA,CAAPvB,OAAO;QAAEwB,IAAI,GAAAD,cAAA,CAAJC,IAAI;MACrB,IAAQ5E,KAAK,GAAKiB,KAAA,CAAKkB,KAAK,CAApBnC,KAAK;MACb,IAAMyE,iBAAiB,GAAGzE,KAAK,CAACgC,MAAM,GAAG,CAAC;MAC1C,IAAI6C,gBAAgB,GAAG5C,SAAS;MAEhC,IAAIkC,SAAS,KAAK,OAAO,EAAE;QACzB,IAAIf,OAAO,IAAInC,KAAA,CAAK6D,gBAAgB,KAAKL,iBAAiB,EAAE;UAC1D,OAAO;YAAE7C,eAAe,EAAE6C;UAAkB,CAAC;QAC/C;QACAxD,KAAA,CAAK6D,gBAAgB,IAAI,CAAC;QAC1B,IAAMC,eAAe,GAAGjF,QAAQ,CAACS,MAAM,CAACP,KAAK,CAAC;QAE9C,IAAIiB,KAAA,CAAK6D,gBAAgB,GAAGC,eAAe,EAAE;UAC3CF,gBAAgB,GAAG/E,QAAQ,CAACC,UAAU,CAACC,KAAK,CAAC;UAC7CA,KAAK,CAAC6E,gBAAgB,CAAC,CAAC/E,QAAQ,GAAGiF,eAAe,GAAG,CAAC;UACtD/E,KAAK,CAAC6E,gBAAgB,CAAC,CAAChC,SAAS,IAAI7C,KAAK,CAACgC,MAAM,GAAG4C,IAAI;UACxD3D,KAAA,CAAKmB,WAAW,CAAAM,kBAAA,CAAK1C,KAAK,EAAE;QAC9B;QAEAiB,KAAA,CAAK8B,cAAc,IAAI,CAAC;QACxB,IAAI9B,KAAA,CAAK8B,cAAc,GAAG0B,iBAAiB,EAAE;UAC3CxD,KAAA,CAAK8B,cAAc,GAAG,CAAC;QACzB;QACA9B,KAAA,CAAK4B,SAAS,IAAI+B,IAAI;MACxB;MACA,IAAIT,SAAS,KAAK,MAAM,EAAE;QACxB,IAAIf,OAAO,IAAInC,KAAA,CAAK6D,gBAAgB,KAAK,CAAC,EAAE;UAC1C,OAAO;YAAElD,eAAe,EAAE;UAAE,CAAC;QAC/B;QACAX,KAAA,CAAK6D,gBAAgB,IAAI,CAAC;QAC1B,IAAME,eAAe,GAAGlF,QAAQ,CAACQ,MAAM,CAACN,KAAK,CAAC;QAE9C,IAAIiB,KAAA,CAAK6D,gBAAgB,GAAGE,eAAe,EAAE;UAC3CH,gBAAgB,GAAG/E,QAAQ,CAACO,UAAU,CAACL,KAAK,CAAC;UAC7CA,KAAK,CAAC6E,gBAAgB,CAAC,CAAC/E,QAAQ,GAAGkF,eAAe,GAAG,CAAC;UACtDhF,KAAK,CAAC6E,gBAAgB,CAAC,CAAChC,SAAS,IAAI7C,KAAK,CAACgC,MAAM,GAAG4C,IAAI;UACxD3D,KAAA,CAAKmB,WAAW,CAAAM,kBAAA,CAAK1C,KAAK,EAAE;QAC9B;QAEAiB,KAAA,CAAK8B,cAAc,IAAI,CAAC;QACxB,IAAI9B,KAAA,CAAK8B,cAAc,GAAG,CAAC,EAAE;UAC3B9B,KAAA,CAAK8B,cAAc,GAAG0B,iBAAiB;QACzC;QACAxD,KAAA,CAAK4B,SAAS,IAAI+B,IAAI;MACxB;MAEA,IAAMhD,eAAe,GAAG5B,KAAK,CAACiF,SAAS,CAAC,UAAC9E,IAAI;QAAA,OAAKA,IAAI,CAACL,QAAQ,KAAKmB,KAAA,CAAK6D,gBAAgB;MAAA,EAAC;MAC1F,IAAI9E,KAAK,CAAC4B,eAAe,CAAC,EAAE;QAC1B5B,KAAK,CACH4B,eAAe,CAChB,CAACW,IAAI,CAAC5C,KAAK,CAACkD,SAAS,iBAAAJ,MAAA,CAAiBzC,KAAK,CAAC4B,eAAe,CAAC,CAACiB,SAAS,OAAI;MAC7E;MACA5B,KAAA,CAAKiE,kBAAkB,CAACjE,KAAA,CAAK4B,SAAS,CAAC;MACvC,OAAO;QAAEjB,eAAe,EAAfA;MAAgB,CAAC;IAC5B,CAAC;IAAAR,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,uBAEkB,UAACkD,SAAS,EAAK;MAChC,OAAO,YAAM;QACX,IAAAgB,sBAAA,GAA4BlE,KAAA,CAAKU,oBAAoB,CAACwC,SAAS,CAAC;UAAxDvC,eAAe,GAAAuD,sBAAA,CAAfvD,eAAe;QACvBX,KAAA,CAAKY,QAAQ,CAACzB,KAAK,CAACwB,eAAe,CAAC;MACtC,CAAC;IACH,CAAC;IAAAR,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,gCAE2B,UAACmE,KAAK,EAAK;MACrC,OAAO,YAAM;QACX,CAACnE,KAAA,CAAKyD,YAAY,IAAIzD,KAAA,CAAK6B,YAAY,CAAC7B,KAAA,CAAK8B,cAAc,EAAEqC,KAAK,EAAE,IAAI,CAAC;QACzEnE,KAAA,CAAKY,QAAQ,CAACzB,KAAK,CAACgF,KAAK,CAAC;MAC5B,CAAC;IACH,CAAC;IAAAhE,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,wBAEmB,UAACM,CAAC,EAAK;MACzBN,KAAA,CAAKoE,gBAAgB,GAAG9D,CAAC,CAAC+D,cAAc,CAAC,CAAC,CAAC,CAACC,OAAO;IACrD,CAAC;IAAAnE,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,sBAEiB,UAACM,CAAC,EAAK;MACvB,IAAMiE,aAAa,GAAGjE,CAAC,CAAC+D,cAAc,CAAC,CAAC,CAAC,CAACC,OAAO;MACjD,IAAME,KAAK,GAAGD,aAAa,GAAGvE,KAAA,CAAKoE,gBAAgB;MACnD,IAAII,KAAK,GAAG,EAAE,EAAE;QACd,IAAAC,sBAAA,GAA4BzE,KAAA,CAAKU,oBAAoB,CAAC,MAAM,CAAC;UAArDC,eAAe,GAAA8D,sBAAA,CAAf9D,eAAe;QACvBX,KAAA,CAAKY,QAAQ,CAACzB,KAAK,CAACwB,eAAe,CAAC;MACtC,CAAC,MAAM,IAAI6D,KAAK,GAAG,CAAC,EAAE,EAAE;QACtB,IAAAE,sBAAA,GAA4B1E,KAAA,CAAKU,oBAAoB,CAAC,OAAO,CAAC;UAAtDC,gBAAe,GAAA+D,sBAAA,CAAf/D,eAAe;QACvBX,KAAA,CAAKY,QAAQ,CAACzB,KAAK,CAACwB,gBAAe,CAAC;MACtC;IACF,CAAC;IAAAR,eAAA,CAAAC,sBAAA,CAAAJ,KAAA,gCAoB2B,UAACkD,SAAS;MAAA,OAAK,UAAC5C,CAAC,EAAK;QAChD,IAAQC,GAAG,GAAKD,CAAC,CAATC,GAAG;QACX,IAAIA,GAAG,KAAK,OAAO,EAAE;UACnBD,CAAC,CAACE,cAAc,EAAE;UAClBR,KAAA,CAAK2E,gBAAgB,CAACzB,SAAS,CAAC,EAAE;QACpC;MACF,CAAC;IAAA;IAjPClD,KAAA,CAAKyD,YAAY,GAAG1D,KAAK,CAACZ,KAAK,KAAK6B,SAAS;IAC7ChB,KAAA,CAAKkB,KAAK,GAAG;MACXnC,KAAK,EAAE;IACT,CAAC;IAAC,OAAAiB,KAAA;EACJ;EAAC4E,YAAA,CAAAlF,YAAA;IAAAa,GAAA;IAAA4D,KAAA,EAED,SAAAU,kBAAA,EAAoB;MAClB,OAAO;QACL1F,KAAK,EAAE;MACT,CAAC;IACH;EAAC;IAAAoB,GAAA;IAAA4D,KAAA,EAED,SAAAW,mBAAmBC,SAAS,EAAE;MAC5B,IAAQ5F,KAAK,GAAK,IAAI,CAAC8B,OAAO,CAAtB9B,KAAK;MACb,IAAI4F,SAAS,CAAC5F,KAAK,KAAKA,KAAK,IAAI,IAAI,CAACsE,YAAY,EAAE;QAClD,IAAI,CAAC5B,YAAY,CAACkD,SAAS,CAAC5F,KAAK,EAAEA,KAAK,CAAC;MAC3C;IACF;EAAC;IAAAoB,GAAA;IAAA4D,KAAA,EAwMD,SAAAa,kBAAA,EAAoB;MAClB,IAAQC,QAAQ,GAAK,IAAI,CAAChE,OAAO,CAAzBgE,QAAQ;MAEhB,OAAO;QACLC,GAAG,EAAE,IAAI,CAACnD,YAAY;QACtBkD,QAAQ,EAARA;MACF,CAAC;IACH;EAAC;IAAA1E,GAAA;IAAA4D,KAAA,EAED,SAAAgB,aAAa9C,CAAC,EAAElD,KAAK,EAAE;MACrB,OAAO;QACLiG,UAAU,EAAE,IAAI,CAACA,UAAU;QAC3BC,GAAG,EAAE,IAAI,CAACpE,OAAO,CAACoE,GAAG;QACrBlG,KAAK,EAALA,KAAK;QACL6C,OAAO,EAAE7C,KAAK,KAAK,IAAI,CAAC8B,OAAO,CAAC9B;MAClC,CAAC;IACH;EAAC;IAAAoB,GAAA;IAAA4D,KAAA,EAUD,SAAAmB,aAAA,EAAe;MACb,IAAAC,cAAA,GAAwC,IAAI,CAACtE,OAAO;QAA5C9B,KAAK,GAAAoG,cAAA,CAALpG,KAAK;QAAEgD,OAAO,GAAAoD,cAAA,CAAPpD,OAAO;QAAEqD,WAAW,GAAAD,cAAA,CAAXC,WAAW;MACnC,IAAQzG,KAAK,GAAK,IAAI,CAACmC,KAAK,CAApBnC,KAAK;MACb,IAAI0G,QAAQ,GAAG,KAAK;MACpB,IAAI1G,KAAK,CAACgC,MAAM,IAAIoB,OAAO,EAAE;QAC3BsD,QAAQ,GAAGtG,KAAK,KAAK,CAAC;MACxB;MACA,OAAO;QACLuG,OAAO,EAAE,IAAI,CAACf,gBAAgB,CAAC,MAAM,CAAC;QACtCgB,SAAS,EAAE,IAAI,CAACC,yBAAyB,CAAC,MAAM,CAAC;QACjDH,QAAQ,EAARA,QAAQ;QACRI,KAAK,EAAEL,WAAW,CAAC,MAAM;MAC3B,CAAC;IACH;EAAC;IAAAjF,GAAA;IAAA4D,KAAA,EAED,SAAA2B,aAAA,EAAe;MACb,IAAAC,cAAA,GAAwC,IAAI,CAAC9E,OAAO;QAA5C9B,KAAK,GAAA4G,cAAA,CAAL5G,KAAK;QAAEgD,OAAO,GAAA4D,cAAA,CAAP5D,OAAO;QAAEqD,WAAW,GAAAO,cAAA,CAAXP,WAAW;MACnC,IAAQzG,KAAK,GAAK,IAAI,CAACmC,KAAK,CAApBnC,KAAK;MACb,IAAI0G,QAAQ,GAAG,KAAK;MACpB,IAAI1G,KAAK,CAACgC,MAAM,IAAIoB,OAAO,EAAE;QAC3BsD,QAAQ,GAAGtG,KAAK,KAAKJ,KAAK,CAACgC,MAAM,GAAG,CAAC;MACvC;MACA,OAAO;QACL2E,OAAO,EAAE,IAAI,CAACf,gBAAgB,CAAC,OAAO,CAAC;QACvCgB,SAAS,EAAE,IAAI,CAACC,yBAAyB,CAAC,OAAO,CAAC;QAClDH,QAAQ,EAARA,QAAQ;QACRI,KAAK,EAAEL,WAAW,CAAC,MAAM;MAC3B,CAAC;IACH;EAAC;IAAAjF,GAAA;IAAA4D,KAAA,EAED,SAAA6B,mBAAA,EAAqB;MAAA,IAAAC,MAAA;MACnB,IAAQlH,KAAK,GAAK,IAAI,CAACmC,KAAK,CAApBnC,KAAK;MACb,IAAQI,KAAK,GAAK,IAAI,CAAC8B,OAAO,CAAtB9B,KAAK;MAEb,OAAO;QACLJ,KAAK,EAAEA,KAAK,CAAC2C,GAAG,CAAC,UAACxC,IAAI,EAAEqB,GAAG;UAAA,OAAM;YAC/B2F,MAAM,EAAE3F,GAAG,KAAKpB,KAAK;YACrBuG,OAAO,EAAEO,MAAI,CAACE,yBAAyB,CAAC5F,GAAG,CAAC;YAC5CA,GAAG,EAAHA;UACF,CAAC;QAAA,CAAC;MACJ,CAAC;IACH;EAAC;IAAAA,GAAA;IAAA4D,KAAA,EAED,SAAAiC,OAAA,EAAS;MAAA,IAAAC,IAAA,QAAApF,OAAA;QAAAqF,KAAA;MACP,IAAMC,SAAS,GAKHnI,GAAG;MAJf,IAAAoI,cAAA,GAA6B,IAAI,CAACvF,OAAO;QAAjCwF,MAAM,GAAAD,cAAA,CAANC,MAAM;QAAEC,QAAQ,GAAAF,cAAA,CAARE,QAAQ;MAExB,OAAAJ,KAAA,GAAOpI,OAAO,CAACuI,MAAM,CAAC,eACpB3I,KAAA,CAAA6I,aAAA,CAACJ,SAAS,EAAAD,KAAA,CAAAM,EAAA,cAAAjF,aAAA,KAAAkF,YAAA;QAAA,QAEH,OAAO;QAAA,aACD,IAAI,CAACC,cAAc;QAAA,YACpB,CAAC;QAAA,gBACG,IAAI,CAACC,iBAAiB;QAAA,cACxB,IAAI,CAACC;MAAe,GAAAX,IAAA,kBAEhCvI,KAAA,CAAA6I,aAAA,CAACD,QAAQ,EAAAJ,KAAA,CAAAM,EAAA,iBAAG,CACF;IAEhB;EAAC;EAAA,OAAAlH,YAAA;AAAA,EAnUwBzB,SAAS;AAAAkC,eAAA,CAA9BT,YAAY,iBACK,UAAU;AAAAS,eAAA,CAD3BT,YAAY,kBAEM;EACpBuH,YAAY,EAAE,CAAC;EACfhC,QAAQ,EAAE,GAAG;EACbtB,IAAI,EAAE,GAAG;EACTxB,OAAO,EAAE,KAAK;EACd+E,IAAI,EAAEzI,iBAAiB;EACvB0I,MAAM,EAAE;AACV,CAAC;AAAAhH,eAAA,CATGT,YAAY,WAWDhB,KAAK;AAAAyB,eAAA,CAXhBT,YAAY,aAYC,CAACnB,mBAAmB,EAAE,EAAEC,WAAW,CAACC,iBAAiB,CAAC,CAAC;AA0T1E,IAAM2I,SAAS,GAAG,SAAZA,SAASA,CAAIrH,KAAK,EAAK;EAAA,IAAAsH,KAAA,GAAAC,YAAA;IAAAC,KAAA;EAC3B,IAAMC,UAAU,GAG2BpJ,GAAG;EAF9C,IAAQqI,MAAM,GAAe1G,KAAK,CAA1B0G,MAAM;IAAExB,QAAQ,GAAKlF,KAAK,CAAlBkF,QAAQ;EAExB,OAAAsC,KAAA,GAAOrJ,OAAO,CAACuI,MAAM,CAAC,eAAC3I,KAAA,CAAA6I,aAAA,CAACa,UAAU,EAAAD,KAAA,CAAAX,EAAA,eAAAjF,aAAA,KAAA8F,aAAA;IAAA,QAAmB,MAAM;IAAA,mBAAAjG,MAAA,CAAkByD,QAAQ;EAAA,GAAAoC,KAAA,IAAQ;AAC/F,CAAC;AAED,IAAMK,IAAI,GAAG,SAAPA,IAAIA,CAAI3H,KAAK,EAAK;EAAA,IAAA4H,KAAA,GAAAL,YAAA;IAAAM,MAAA;EACtB,IAAQnB,MAAM,GAAsC1G,KAAK,CAAjD0G,MAAM;IAAErB,UAAU,GAA0BrF,KAAK,CAAzCqF,UAAU;IAAEjG,KAAK,GAAmBY,KAAK,CAA7BZ,KAAK;IAAEkG,GAAG,GAActF,KAAK,CAAtBsF,GAAG;IAAErD,OAAO,GAAKjC,KAAK,CAAjBiC,OAAO;EAC/C,IAAM6F,KAAK,GAaCzJ,GAAG;EAZf,IAAM0J,OAAO,gBAAGhK,KAAK,CAACuC,SAAS,EAAE;EACjCtC,SAAS,CAAC,YAAM;IACd;IACAqH,UAAU,CAAC;MAAE9D,IAAI,EAAEwG,OAAO,CAAC9F;IAAQ,CAAC,CAAC;IACrC,OAAO,YAAM;MACX;MACAoD,UAAU,CAAC;QAAE9D,IAAI,EAAEwG,OAAO,CAAC9F;MAAQ,CAAC,EAAE,IAAI,CAAC;IAC7C,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,OAAA4F,MAAA,GAAO1J,OAAO,CAACuI,MAAM,CAAC,eACpB3I,KAAA,CAAA6I,aAAA,CAACkB,KAAK,EAAAD,MAAA,CAAAhB,EAAA,UAAAjF,aAAA,KAAAoG,aAAA;IAAA,OAECD,OAAO;IAAA,QACP,UAAU;IAAA,aAAAtG,MAAA,CACJ6D,GAAG,qBAAA7D,MAAA,CAAkBrC,KAAK;IAAA,gBACvB6C;EAAO,GAAA2F,KAAA,IACrB;AAEN,CAAC;AAED,IAAMK,IAAI,GAAG,SAAPA,IAAIA,CAAIjI,KAAK,EAAK;EAAA,IAAAkI,KAAA,GAAAX,YAAA;IAAAY,MAAA;EACtB,IAAQzB,MAAM,GAAsB1G,KAAK,CAAjC0G,MAAM;IAAE0B,QAAQ,GAAYpI,KAAK,CAAzBoI,QAAQ;IAAEtC,KAAK,GAAK9F,KAAK,CAAf8F,KAAK;EAC/B,IAAMuC,KAAK,GAEMhK,GAAG;EADpB,OAAA8J,MAAA,GAAOhK,OAAO,CAACuI,MAAM,CAAC,eACpB3I,KAAA,CAAA6I,aAAA,CAACyB,KAAK,EAAAF,MAAA,CAAAtB,EAAA,UAAAjF,aAAA,KAAA0G,aAAA,KAAAJ,KAAA,KAAeE,QAAQ,iBAAIrK,KAAA,CAAA6I,aAAA,CAACrI,WAAW,EAAA4J,MAAA,CAAAtB,EAAA;IAAA;IAAA,cAAyBf;EAAK,GAAI,CAAS;AAE5F,CAAC;AAEDmC,IAAI,CAACM,YAAY,GAAG;EAAA,OAAO;IACzBC,GAAG,EAAE;EACP,CAAC;AAAA,CAAC;AAEF,IAAMC,IAAI,GAAG,SAAPA,IAAIA,CAAIzI,KAAK,EAAK;EAAA,IAAA0I,KAAA,GAAAnB,YAAA;IAAAoB,MAAA;EACtB,IAAQjC,MAAM,GAAsB1G,KAAK,CAAjC0G,MAAM;IAAE0B,QAAQ,GAAYpI,KAAK,CAAzBoI,QAAQ;IAAEtC,KAAK,GAAK9F,KAAK,CAAf8F,KAAK;EAC/B,IAAM8C,KAAK,GAEMvK,GAAG;EADpB,OAAAsK,MAAA,GAAOxK,OAAO,CAACuI,MAAM,CAAC,eACpB3I,KAAA,CAAA6I,aAAA,CAACgC,KAAK,EAAAD,MAAA,CAAA9B,EAAA,UAAAjF,aAAA,KAAAiH,aAAA,KAAAH,KAAA,KAAeN,QAAQ,iBAAIrK,KAAA,CAAA6I,aAAA,CAACtI,YAAY,EAAAqK,MAAA,CAAA9B,EAAA;IAAA;IAAA,cAAyBf;EAAK,GAAI,CAAS;AAE7F,CAAC;AAED2C,IAAI,CAACF,YAAY,GAAG;EAAA,OAAO;IACzBC,GAAG,EAAE;EACP,CAAC;AAAA,CAAC;AAEF,IAAMM,UAAU,GAAG,SAAbA,UAAUA,CAAAC,MAAA,EAAoC;EAAA,IAAAC,KAAA,GAAAzB,YAAA;IAAA0B,MAAA;EAAA,IAA9BjK,KAAK,GAAA+J,MAAA,CAAL/J,KAAK;IAAE0H,MAAM,GAAAqC,MAAA,CAANrC,MAAM;IAAEC,QAAQ,GAAAoC,MAAA,CAARpC,QAAQ;EAC3C,IAAMuC,WAAW,GASM7K,GAAG;EAR1B,IAAIsI,QAAQ,CAACwC,MAAM,EAAE;IAAA,IAAAC,MAAA;IACnB,OAAAA,MAAA,GAAOjL,OAAO,CAACuI,MAAM,CAAC,eACpB3I,KAAA,CAAA6I,aAAA,CAACsC,WAAW,EAAAE,MAAA,CAAAvC,EAAA,gBAAAjF,aAAA,KAAAyH,aAAA;MAAA,eAA0B;IAAM,GAAAL,KAAA,kBAC1CjL,KAAA,CAAA6I,aAAA,CAACD,QAAQ,EAAAyC,MAAA,CAAAvC,EAAA,iBAAG,CACA;EAElB;EACA,OAAAoC,MAAA,GAAO9K,OAAO,CAACuI,MAAM,CAAC,eACpB3I,KAAA,CAAA6I,aAAA,CAACsC,WAAW,EAAAD,MAAA,CAAApC,EAAA,gBAAAjF,aAAA,KAAA0H,aAAA;IAAA,eAA0B;EAAM,GAAAN,KAAA,KACzChK,KAAK,CAAC2C,GAAG,CAAC,UAACxC,IAAI,EAAEC,KAAK;IAAA,oBACrBrB,KAAA,CAAA6I,aAAA,CAAC2C,QAAQ,CAACC,SAAS,EAAAC,QAAA;MAACjJ,GAAG,EAAEpB;IAAM,GAAKD,IAAI,EAAI;EAAA,CAC7C,CAAC,CACU;AAElB,CAAC;AAED,IAAMqK,SAAS,GAAG,SAAZA,SAASA,CAAAE,MAAA,EAA6B;EAAA,IAAAC,KAAA,GAAApC,YAAA;IAAAqC,MAAA;EAAA,IAAvBlD,MAAM,GAAAgD,MAAA,CAANhD,MAAM;IAAEC,QAAQ,GAAA+C,MAAA,CAAR/C,QAAQ;EACnC,IAAMkD,UAAU,GAEMxL,GAAG;EADzB,OAAAuL,MAAA,GAAOzL,OAAO,CAACuI,MAAM,CAAC,eACpB3I,KAAA,CAAA6I,aAAA,CAACiD,UAAU,EAAAD,MAAA,CAAA/C,EAAA,eAAAjF,aAAA,KAAAkI,aAAA,KAAAH,KAAA,kBACT5L,KAAA,CAAA6I,aAAA,CAACD,QAAQ,EAAAiD,MAAA,CAAA/C,EAAA,iBAAG,CACD;AAEjB,CAAC;AAED,IAAM0C,QAAQ,GAAGtL,eAAe,CAAC0B,YAAY,EAAE;EAC7C0H,SAAS,EAATA,SAAS;EACTyB,UAAU,EAAVA,UAAU;EACVU,SAAS,EAATA,SAAS;EACT7B,IAAI,EAAJA,IAAI;EACJM,IAAI,EAAJA,IAAI;EACJQ,IAAI,EAAJA;AACF,CAAC,CAAC;AAEF,eAAec,QAAQ"}
|
package/lib/es6/index.d.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import React from 'react';\nimport { PropGetterFn, UnknownProperties, Intergalactic } from '@semcore/core';\nimport { BoxProps } from '@semcore/flex-box';\n\ntype ChildRenderFn<Props> = Props & {\n children?: ({\n items,\n }: {\n items: { active: boolean; onClick: () => void }[];\n }) => React.ReactElement | React.ReactElement[];\n};\n\n/** @deprecated */\nexport interface ICarouselProps extends CarouselProps, UnknownProperties {}\nexport type CarouselProps = BoxProps & {\n /** Index active item */\n index?: number;\n /**\n * Index of the active item selected by default\n * @default 0\n */\n defaultIndex?: number;\n /** Called when the selection is changed */\n onIndexChange?: (index: number) => void;\n /** Animation duration\n * @default 300 */\n duration?: number;\n /** Disables infinite items change in the carousel\n * @default false */\n bounded?: boolean;\n /** @ignore */\n step?: number;\n};\n\n/** @deprecated */\nexport interface ICarouselContext extends CarouselContext, UnknownProperties {}\nexport type CarouselContext = {\n getContainerProps: PropGetterFn;\n getItemProps: PropGetterFn;\n getPrevProps: PropGetterFn;\n getNextProps: PropGetterFn;\n getIndicatorsProps: PropGetterFn;\n};\n\n/** @deprecated */\nexport interface ICarouselState extends CarouselState, UnknownProperties {}\nexport type CarouselState = {\n // eslint-disable-next-line ssr-friendly/no-dom-globals-in-module-scope\n items: { transform: number; position: number; node: HTMLDivElement }[];\n};\n\ndeclare const Carousel: Intergalactic.Component<\n 'div',\n CarouselProps,\n CarouselContext & CarouselState\n> & {\n Container: Intergalactic.Component<'div', BoxProps>;\n Indicators: Intergalactic.Component<'div', BoxProps, CarouselState>;\n Indicator: Intergalactic.Component<\n 'div',\n Omit<BoxProps, 'position'> & {\n active?: boolean;\n onClick?: () => void;\n transform?: number;\n position?: number;\n // eslint-disable-next-line ssr-friendly/no-dom-globals-in-module-scope\n node?: HTMLDivElement;\n }\n >;\n Item: Intergalactic.Component<'div', BoxProps>;\n Prev: Intergalactic.Component<'div', BoxProps>;\n Next: Intergalactic.Component<'div', BoxProps>;\n};\n\nexport default Carousel;\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import React from 'react';\nimport { PropGetterFn, UnknownProperties, Intergalactic } from '@semcore/core';\nimport { BoxProps } from '@semcore/flex-box';\n\ntype ChildRenderFn<Props> = Props & {\n children?: ({\n items,\n }: {\n items: { active: boolean; onClick: () => void }[];\n }) => React.ReactElement | React.ReactElement[];\n};\n\n/** @deprecated */\nexport interface ICarouselProps extends CarouselProps, UnknownProperties {}\nexport type CarouselProps = BoxProps & {\n /** Index active item */\n index?: number;\n /**\n * Index of the active item selected by default\n * @default 0\n */\n defaultIndex?: number;\n /** Called when the selection is changed */\n onIndexChange?: (index: number) => void;\n /** Animation duration\n * @default 300 */\n duration?: number;\n /** Disables infinite items change in the carousel\n * @default false */\n bounded?: boolean;\n /** @ignore */\n step?: number;\n locale?: string;\n};\n\n/** @deprecated */\nexport interface ICarouselContext extends CarouselContext, UnknownProperties {}\nexport type CarouselContext = {\n getContainerProps: PropGetterFn;\n getItemProps: PropGetterFn;\n getPrevProps: PropGetterFn;\n getNextProps: PropGetterFn;\n getIndicatorsProps: PropGetterFn;\n};\n\n/** @deprecated */\nexport interface ICarouselState extends CarouselState, UnknownProperties {}\nexport type CarouselState = {\n // eslint-disable-next-line ssr-friendly/no-dom-globals-in-module-scope\n items: { transform: number; position: number; node: HTMLDivElement }[];\n};\n\ndeclare const Carousel: Intergalactic.Component<\n 'div',\n CarouselProps,\n CarouselContext & CarouselState\n> & {\n Container: Intergalactic.Component<'div', BoxProps>;\n Indicators: Intergalactic.Component<'div', BoxProps, CarouselState>;\n Indicator: Intergalactic.Component<\n 'div',\n Omit<BoxProps, 'position'> & {\n active?: boolean;\n onClick?: () => void;\n transform?: number;\n position?: number;\n // eslint-disable-next-line ssr-friendly/no-dom-globals-in-module-scope\n node?: HTMLDivElement;\n }\n >;\n Item: Intergalactic.Component<'div', BoxProps>;\n Prev: Intergalactic.Component<'div', BoxProps>;\n Next: Intergalactic.Component<'div', BoxProps>;\n};\n\nexport default Carousel;\n"],"mappings":""}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import de from './de.json';
|
|
2
|
+
import en from './en.json';
|
|
3
|
+
import es from './es.json';
|
|
4
|
+
import fr from './fr.json';
|
|
5
|
+
import it from './it.json';
|
|
6
|
+
import ja from './ja.json';
|
|
7
|
+
import ko from './ko.json';
|
|
8
|
+
import pt from './pt.json';
|
|
9
|
+
import tr from './tr.json';
|
|
10
|
+
import vi from './vi.json';
|
|
11
|
+
import zh from './zh.json';
|
|
12
|
+
import pl from './pl.json';
|
|
13
|
+
import sv from './sv.json';
|
|
14
|
+
export var localizedMessages = {
|
|
15
|
+
de: de,
|
|
16
|
+
en: en,
|
|
17
|
+
es: es,
|
|
18
|
+
fr: fr,
|
|
19
|
+
it: it,
|
|
20
|
+
ja: ja,
|
|
21
|
+
ko: ko,
|
|
22
|
+
pt: pt,
|
|
23
|
+
tr: tr,
|
|
24
|
+
vi: vi,
|
|
25
|
+
zh: zh,
|
|
26
|
+
pl: pl,
|
|
27
|
+
sv: sv
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=__intergalactic-dynamic-locales.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"__intergalactic-dynamic-locales.js","names":["de","en","es","fr","it","ja","ko","pt","tr","vi","zh","pl","sv","localizedMessages"],"sources":["../../../src/translations/__intergalactic-dynamic-locales.ts"],"sourcesContent":["import de from './de.json';\nimport en from './en.json';\nimport es from './es.json';\nimport fr from './fr.json';\nimport it from './it.json';\nimport ja from './ja.json';\nimport ko from './ko.json';\nimport pt from './pt.json';\nimport tr from './tr.json';\nimport vi from './vi.json';\nimport zh from './zh.json';\nimport pl from './pl.json';\nimport sv from './sv.json';\n\nexport const localizedMessages = {\n de,\n en,\n es,\n fr,\n it,\n ja,\n ko,\n pt,\n tr,\n vi,\n zh,\n pl,\n sv,\n};\n"],"mappings":"AAAA,OAAOA,EAAE,MAAM,WAAW;AAC1B,OAAOC,EAAE,MAAM,WAAW;AAC1B,OAAOC,EAAE,MAAM,WAAW;AAC1B,OAAOC,EAAE,MAAM,WAAW;AAC1B,OAAOC,EAAE,MAAM,WAAW;AAC1B,OAAOC,EAAE,MAAM,WAAW;AAC1B,OAAOC,EAAE,MAAM,WAAW;AAC1B,OAAOC,EAAE,MAAM,WAAW;AAC1B,OAAOC,EAAE,MAAM,WAAW;AAC1B,OAAOC,EAAE,MAAM,WAAW;AAC1B,OAAOC,EAAE,MAAM,WAAW;AAC1B,OAAOC,EAAE,MAAM,WAAW;AAC1B,OAAOC,EAAE,MAAM,WAAW;AAE1B,OAAO,IAAMC,iBAAiB,GAAG;EAC/Bb,EAAE,EAAFA,EAAE;EACFC,EAAE,EAAFA,EAAE;EACFC,EAAE,EAAFA,EAAE;EACFC,EAAE,EAAFA,EAAE;EACFC,EAAE,EAAFA,EAAE;EACFC,EAAE,EAAFA,EAAE;EACFC,EAAE,EAAFA,EAAE;EACFC,EAAE,EAAFA,EAAE;EACFC,EAAE,EAAFA,EAAE;EACFC,EAAE,EAAFA,EAAE;EACFC,EAAE,EAAFA,EAAE;EACFC,EAAE,EAAFA,EAAE;EACFC,EAAE,EAAFA;AACF,CAAC"}
|
package/lib/types/index.d.ts
CHANGED
package/package.json
CHANGED
package/src/Carousel.jsx
CHANGED
|
@@ -5,6 +5,8 @@ import { Box } from '@semcore/flex-box';
|
|
|
5
5
|
import ChevronRight from '@semcore/icon/ChevronRight/l';
|
|
6
6
|
import ChevronLeft from '@semcore/icon/ChevronLeft/l';
|
|
7
7
|
import uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';
|
|
8
|
+
import i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';
|
|
9
|
+
import { localizedMessages } from './translations/__intergalactic-dynamic-locales';
|
|
8
10
|
|
|
9
11
|
import style from './style/carousel.shadow.css';
|
|
10
12
|
|
|
@@ -47,10 +49,12 @@ class CarouselRoot extends Component {
|
|
|
47
49
|
duration: 350,
|
|
48
50
|
step: 100,
|
|
49
51
|
bounded: false,
|
|
52
|
+
i18n: localizedMessages,
|
|
53
|
+
locale: 'en',
|
|
50
54
|
};
|
|
51
55
|
|
|
52
56
|
static style = style;
|
|
53
|
-
static enhance = [uniqueIDEnhancement()];
|
|
57
|
+
static enhance = [uniqueIDEnhancement(), i18nEnhance(localizedMessages)];
|
|
54
58
|
|
|
55
59
|
refContainer = React.createRef();
|
|
56
60
|
transform = 0;
|
|
@@ -290,6 +294,7 @@ class CarouselRoot extends Component {
|
|
|
290
294
|
toggleItem: this.toggleItem,
|
|
291
295
|
uid: this.asProps.uid,
|
|
292
296
|
index,
|
|
297
|
+
current: index === this.asProps.index,
|
|
293
298
|
};
|
|
294
299
|
}
|
|
295
300
|
|
|
@@ -302,7 +307,7 @@ class CarouselRoot extends Component {
|
|
|
302
307
|
};
|
|
303
308
|
|
|
304
309
|
getPrevProps() {
|
|
305
|
-
const { index, bounded } = this.asProps;
|
|
310
|
+
const { index, bounded, getI18nText } = this.asProps;
|
|
306
311
|
const { items } = this.state;
|
|
307
312
|
let disabled = false;
|
|
308
313
|
if (items.length && bounded) {
|
|
@@ -312,11 +317,12 @@ class CarouselRoot extends Component {
|
|
|
312
317
|
onClick: this.bindHandlerClick('left'),
|
|
313
318
|
onKeyDown: this.bindHandlerKeydownControl('left'),
|
|
314
319
|
disabled,
|
|
320
|
+
label: getI18nText('prev'),
|
|
315
321
|
};
|
|
316
322
|
}
|
|
317
323
|
|
|
318
324
|
getNextProps() {
|
|
319
|
-
const { index, bounded } = this.asProps;
|
|
325
|
+
const { index, bounded, getI18nText } = this.asProps;
|
|
320
326
|
const { items } = this.state;
|
|
321
327
|
let disabled = false;
|
|
322
328
|
if (items.length && bounded) {
|
|
@@ -326,6 +332,7 @@ class CarouselRoot extends Component {
|
|
|
326
332
|
onClick: this.bindHandlerClick('right'),
|
|
327
333
|
onKeyDown: this.bindHandlerKeydownControl('right'),
|
|
328
334
|
disabled,
|
|
335
|
+
label: getI18nText('next'),
|
|
329
336
|
};
|
|
330
337
|
}
|
|
331
338
|
|
|
@@ -349,6 +356,7 @@ class CarouselRoot extends Component {
|
|
|
349
356
|
return sstyled(styles)(
|
|
350
357
|
<SCarousel
|
|
351
358
|
render={Box}
|
|
359
|
+
role='group'
|
|
352
360
|
onKeyDown={this.handlerKeyDown}
|
|
353
361
|
tabIndex={0}
|
|
354
362
|
onTouchStart={this.handlerTouchStart}
|
|
@@ -368,7 +376,7 @@ const Container = (props) => {
|
|
|
368
376
|
};
|
|
369
377
|
|
|
370
378
|
const Item = (props) => {
|
|
371
|
-
const { styles, toggleItem, index, uid } = props;
|
|
379
|
+
const { styles, toggleItem, index, uid, current } = props;
|
|
372
380
|
const SItem = Root;
|
|
373
381
|
const refItem = React.createRef();
|
|
374
382
|
useEffect(() => {
|
|
@@ -381,29 +389,37 @@ const Item = (props) => {
|
|
|
381
389
|
}, []);
|
|
382
390
|
|
|
383
391
|
return sstyled(styles)(
|
|
384
|
-
<SItem
|
|
392
|
+
<SItem
|
|
393
|
+
render={Box}
|
|
394
|
+
ref={refItem}
|
|
395
|
+
role='listitem'
|
|
396
|
+
id={`igc-${uid}-carousel-item-${index}`}
|
|
397
|
+
aria-current={current}
|
|
398
|
+
/>,
|
|
385
399
|
);
|
|
386
400
|
};
|
|
387
401
|
|
|
388
402
|
const Prev = (props) => {
|
|
389
|
-
const { styles } = props;
|
|
403
|
+
const { styles, children, label } = props;
|
|
390
404
|
const SPrev = Root;
|
|
391
|
-
return sstyled(styles)(
|
|
405
|
+
return sstyled(styles)(
|
|
406
|
+
<SPrev render={Box}>{children || <ChevronLeft interactive aria-label={label} />}</SPrev>,
|
|
407
|
+
);
|
|
392
408
|
};
|
|
393
409
|
|
|
394
410
|
Prev.defaultProps = () => ({
|
|
395
|
-
children: <ChevronLeft interactive aria-label='Visual navigation, previous' />,
|
|
396
411
|
top: 0,
|
|
397
412
|
});
|
|
398
413
|
|
|
399
414
|
const Next = (props) => {
|
|
400
|
-
const { styles } = props;
|
|
415
|
+
const { styles, children, label } = props;
|
|
401
416
|
const SNext = Root;
|
|
402
|
-
return sstyled(styles)(
|
|
417
|
+
return sstyled(styles)(
|
|
418
|
+
<SNext render={Box}>{children || <ChevronRight interactive aria-label={label} />}</SNext>,
|
|
419
|
+
);
|
|
403
420
|
};
|
|
404
421
|
|
|
405
422
|
Next.defaultProps = () => ({
|
|
406
|
-
children: <ChevronRight interactive aria-label='Visual navigation, next' />,
|
|
407
423
|
top: 0,
|
|
408
424
|
});
|
|
409
425
|
|