@fountain-ui/lab 1.9.2 → 1.12.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 +32 -0
- package/build/commonjs/AnimatedY/AnimatedY.js +2 -2
- package/build/commonjs/Carousel/CarouselWeb.js +52 -56
- package/build/commonjs/Carousel/CarouselWeb.js.map +1 -1
- package/build/commonjs/Carousel/utils.js +3 -1
- package/build/commonjs/Carousel/utils.js.map +1 -1
- package/build/commonjs/StatusBarProvider/StatusBarProvider.js +1 -1
- package/build/commonjs/StatusBarProvider/StatusBarProvider.js.map +1 -1
- package/build/commonjs/ViewPager/ChildrenMemoizedPage.js +4 -0
- package/build/commonjs/ViewPager/ChildrenMemoizedPage.js.map +1 -1
- package/build/commonjs/ViewPager/ViewPagerWeb.js +4 -4
- package/build/commonjs/ViewPager/ViewPagerWeb.js.map +1 -1
- package/build/commonjs/index.js +2 -2
- package/build/module/Carousel/CarouselWeb.js +52 -57
- package/build/module/Carousel/CarouselWeb.js.map +1 -1
- package/build/module/Carousel/utils.js +1 -0
- package/build/module/Carousel/utils.js.map +1 -1
- package/build/module/StatusBarProvider/StatusBarProvider.js +1 -1
- package/build/module/StatusBarProvider/StatusBarProvider.js.map +1 -1
- package/build/module/ViewPager/ChildrenMemoizedPage.js +4 -0
- package/build/module/ViewPager/ChildrenMemoizedPage.js.map +1 -1
- package/build/module/ViewPager/ViewPagerWeb.js +4 -4
- package/build/module/ViewPager/ViewPagerWeb.js.map +1 -1
- package/build/typescript/AnimatedY/AnimatedY.d.ts +1 -0
- package/build/typescript/BottomSheet/BottomSheetNative.d.ts +1 -0
- package/build/typescript/BottomSheet/BottomSheetWeb.d.ts +1 -0
- package/build/typescript/BottomSheet/TransparentBackdrop.d.ts +1 -0
- package/build/typescript/Carousel/CarouselNative.d.ts +1 -0
- package/build/typescript/Carousel/CarouselProps.d.ts +20 -0
- package/build/typescript/Carousel/CarouselWeb.d.ts +1 -0
- package/build/typescript/Carousel/utils.d.ts +1 -0
- package/build/typescript/DateTimePicker/DateTimePicker.d.ts +1 -0
- package/build/typescript/DateTimePicker/YearPicker.d.ts +1 -0
- package/build/typescript/StatusBarProvider/StatusBarProvider.d.ts +1 -0
- package/build/typescript/ViewPager/ViewPagerNative.d.ts +1 -0
- package/build/typescript/ViewPager/ViewPagerWeb.d.ts +1 -0
- package/package.json +14 -13
- package/src/Carousel/CarouselProps.ts +37 -13
- package/src/Carousel/CarouselWeb.tsx +53 -54
- package/src/Carousel/utils.ts +3 -1
- package/src/StatusBarProvider/StatusBarProvider.tsx +1 -1
- package/src/ViewPager/ChildrenMemoizedPage.tsx +4 -0
- package/src/ViewPager/ViewPagerWeb.tsx +10 -8
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,38 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [1.12.0](https://github.com/tappytoon/tappytoon/compare/@fountain-ui/lab@1.9.2...@fountain-ui/lab@1.12.0) (2021-09-27)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @fountain-ui/lab
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
# [1.11.0](https://github.com/tappytoon/tappytoon/compare/@fountain-ui/lab@1.9.2...@fountain-ui/lab@1.11.0) (2021-09-23)
|
|
15
|
+
|
|
16
|
+
**Note:** Version bump only for package @fountain-ui/lab
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
## [1.10.1](https://github.com/tappytoon/tappytoon/compare/@fountain-ui/lab@1.9.2...@fountain-ui/lab@1.10.1) (2021-09-10)
|
|
23
|
+
|
|
24
|
+
**Note:** Version bump only for package @fountain-ui/lab
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
# [1.10.0](https://github.com/tappytoon/tappytoon/compare/@fountain-ui/lab@1.9.2...@fountain-ui/lab@1.10.0) (2021-09-09)
|
|
31
|
+
|
|
32
|
+
**Note:** Version bump only for package @fountain-ui/lab
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
6
38
|
## [1.9.2](https://github.com/tappytoon/tappytoon/compare/@fountain-ui/lab@1.9.1...@fountain-ui/lab@1.9.2) (2021-09-01)
|
|
7
39
|
|
|
8
40
|
**Note:** Version bump only for package @fountain-ui/lab
|
|
@@ -9,9 +9,9 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
9
9
|
|
|
10
10
|
var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
|
|
11
11
|
|
|
12
|
-
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var
|
|
12
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
13
13
|
|
|
14
|
-
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
14
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
15
15
|
|
|
16
16
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
17
|
|
|
@@ -7,10 +7,14 @@ exports.default = Carousel;
|
|
|
7
7
|
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
9
|
|
|
10
|
+
var _reactNative = require("react-native");
|
|
11
|
+
|
|
10
12
|
var _reactSlick = _interopRequireDefault(require("react-slick"));
|
|
11
13
|
|
|
12
14
|
var _styled = _interopRequireDefault(require("@emotion/styled"));
|
|
13
15
|
|
|
16
|
+
var _icons = require("@fountain-ui/icons");
|
|
17
|
+
|
|
14
18
|
var _utils = require("@fountain-ui/utils");
|
|
15
19
|
|
|
16
20
|
var _utils2 = require("./utils");
|
|
@@ -20,7 +24,6 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
20
24
|
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
21
25
|
|
|
22
26
|
const baseSettings = {
|
|
23
|
-
arrows: false,
|
|
24
27
|
dots: false,
|
|
25
28
|
draggable: true,
|
|
26
29
|
lazyLoad: 'ondemand',
|
|
@@ -35,66 +38,41 @@ const baseSettings = {
|
|
|
35
38
|
const noop = () => void 0;
|
|
36
39
|
|
|
37
40
|
const StyledContainer = _styled.default.div(props => ({
|
|
38
|
-
['& .slick-slider']: {
|
|
39
|
-
display: 'block',
|
|
40
|
-
position: 'relative',
|
|
41
|
-
userSelect: 'none'
|
|
42
|
-
},
|
|
43
|
-
['& .slick-list']: {
|
|
44
|
-
display: 'block',
|
|
45
|
-
position: 'relative',
|
|
46
|
-
overflow: 'hidden',
|
|
47
|
-
margin: 0,
|
|
48
|
-
padding: 0,
|
|
49
|
-
['&:focus']: {
|
|
50
|
-
outline: 'none'
|
|
51
|
-
},
|
|
52
|
-
['&.dragging']: {
|
|
53
|
-
cursor: 'pointer'
|
|
54
|
-
}
|
|
55
|
-
},
|
|
56
|
-
['& .slick-slider .slick-track, &.slick-slider .slick-list']: {
|
|
57
|
-
transform: 'translate3d(0, 0, 0)'
|
|
58
|
-
},
|
|
59
41
|
['& .slick-track']: {
|
|
60
|
-
display: '
|
|
61
|
-
position: 'relative',
|
|
62
|
-
top: 0,
|
|
63
|
-
left: 0,
|
|
64
|
-
['&:before, &:after']: {
|
|
65
|
-
display: 'table',
|
|
66
|
-
content: '\'\''
|
|
67
|
-
},
|
|
68
|
-
['&:after']: {
|
|
69
|
-
clear: 'both'
|
|
70
|
-
}
|
|
42
|
+
display: 'flex'
|
|
71
43
|
},
|
|
72
|
-
['& .slick-slide']: {
|
|
73
|
-
display: '
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
['& > div']: {
|
|
78
|
-
display: 'flex',
|
|
79
|
-
transform: "scale(".concat(props.inactiveSlideScale, ")"),
|
|
80
|
-
transition: 'transform .5s',
|
|
81
|
-
opacity: props.inactiveSlideOpacity
|
|
82
|
-
}
|
|
44
|
+
['& .slick-slide > div']: {
|
|
45
|
+
display: 'flex',
|
|
46
|
+
opacity: 0.2,
|
|
47
|
+
transform: `scale(${props.inactiveSlideScale})`,
|
|
48
|
+
transition: 'transform .5s'
|
|
83
49
|
},
|
|
84
|
-
[
|
|
85
|
-
transform:
|
|
50
|
+
[`& .slick-active.slick-current > div`]: {
|
|
51
|
+
transform: `scale(${props.activeSlideScale})`,
|
|
86
52
|
opacity: 1
|
|
87
53
|
},
|
|
88
|
-
|
|
89
|
-
display: 'block'
|
|
90
|
-
}
|
|
54
|
+
...props.arrowsStyle
|
|
91
55
|
}));
|
|
92
56
|
|
|
57
|
+
const ArrowContainer = ({
|
|
58
|
+
children
|
|
59
|
+
}) => /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
60
|
+
style: {
|
|
61
|
+
height: '100%',
|
|
62
|
+
justifyContent: 'center',
|
|
63
|
+
alignItems: 'center',
|
|
64
|
+
backgroundColor: 'white',
|
|
65
|
+
borderRadius: 16
|
|
66
|
+
}
|
|
67
|
+
}, children);
|
|
68
|
+
|
|
93
69
|
function Carousel(props) {
|
|
94
70
|
const {
|
|
71
|
+
activeSlideScale = _utils2.defaultActiveSlideScale,
|
|
95
72
|
autoplay = _utils2.defaultAutoplay,
|
|
96
73
|
autoplayInterval = _utils2.defaultAutoplayInterval,
|
|
97
|
-
|
|
74
|
+
centerMode = true,
|
|
75
|
+
centerSlidePadding = 0,
|
|
98
76
|
data,
|
|
99
77
|
inactiveSlideOpacity = _utils2.defaultInactiveSlideOpacity,
|
|
100
78
|
inactiveSlideScale = _utils2.defaultInactiveSlideScale,
|
|
@@ -103,7 +81,9 @@ function Carousel(props) {
|
|
|
103
81
|
onChange,
|
|
104
82
|
renderItem,
|
|
105
83
|
slidesToScroll = 1,
|
|
106
|
-
slidesToShow = 1
|
|
84
|
+
slidesToShow = 1,
|
|
85
|
+
arrows = false,
|
|
86
|
+
arrowsStyle = {}
|
|
107
87
|
} = props;
|
|
108
88
|
|
|
109
89
|
const slickRef = _react.default.useRef(null);
|
|
@@ -135,20 +115,36 @@ function Carousel(props) {
|
|
|
135
115
|
};
|
|
136
116
|
|
|
137
117
|
return /*#__PURE__*/_react.default.createElement(StyledContainer, {
|
|
118
|
+
activeSlideScale: activeSlideScale,
|
|
138
119
|
inactiveSlideOpacity: inactiveSlideOpacity,
|
|
139
|
-
inactiveSlideScale: inactiveSlideScale
|
|
120
|
+
inactiveSlideScale: inactiveSlideScale,
|
|
121
|
+
arrowsStyle: arrowsStyle
|
|
140
122
|
}, /*#__PURE__*/_react.default.createElement(_reactSlick.default, _extends({}, baseSettings, {
|
|
141
123
|
afterChange: handleAfterChange,
|
|
142
124
|
autoplay: autoplay,
|
|
143
125
|
autoplaySpeed: autoplayInterval,
|
|
144
126
|
beforeChange: handleBeforeChange,
|
|
145
|
-
centerMode:
|
|
146
|
-
centerPadding: centerSlidePadding
|
|
127
|
+
centerMode: centerMode,
|
|
128
|
+
centerPadding: `${centerSlidePadding}px`,
|
|
147
129
|
infinite: infinite,
|
|
148
130
|
initialSlide: index,
|
|
149
131
|
ref: slickRef,
|
|
150
|
-
slidesToScroll:
|
|
151
|
-
slidesToShow:
|
|
132
|
+
slidesToScroll: slidesToScroll,
|
|
133
|
+
slidesToShow: slidesToShow,
|
|
134
|
+
arrows: arrows,
|
|
135
|
+
prevArrow:
|
|
136
|
+
/*#__PURE__*/
|
|
137
|
+
// If root component is not a div, there's no arrow class.
|
|
138
|
+
_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(ArrowContainer, {
|
|
139
|
+
children: /*#__PURE__*/_react.default.createElement(_icons.ChevronLeft, {
|
|
140
|
+
fill: '#767676'
|
|
141
|
+
})
|
|
142
|
+
})),
|
|
143
|
+
nextArrow: /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(ArrowContainer, {
|
|
144
|
+
children: /*#__PURE__*/_react.default.createElement(_icons.ChevronRight, {
|
|
145
|
+
fill: '#767676'
|
|
146
|
+
})
|
|
147
|
+
}))
|
|
152
148
|
}), (0, _utils.mapIndexed)((item, index) => {
|
|
153
149
|
const child = renderItem({
|
|
154
150
|
item,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["CarouselWeb.tsx"],"names":["baseSettings","
|
|
1
|
+
{"version":3,"sources":["CarouselWeb.tsx"],"names":["baseSettings","dots","draggable","lazyLoad","pauseOnFocus","pauseOnHover","rows","swipe","slidesPerRow","vertical","noop","StyledContainer","styled","div","props","display","opacity","transform","inactiveSlideScale","transition","activeSlideScale","arrowsStyle","ArrowContainer","children","height","justifyContent","alignItems","backgroundColor","borderRadius","Carousel","defaultActiveSlideScale","autoplay","defaultAutoplay","autoplayInterval","defaultAutoplayInterval","centerMode","centerSlidePadding","data","inactiveSlideOpacity","defaultInactiveSlideOpacity","defaultInactiveSlideScale","index","infinite","defaultInfinite","onChange","renderItem","slidesToScroll","slidesToShow","arrows","slickRef","React","useRef","useEffect","current","slickGoTo","fixOnClickNotWorkingAfterMobileSwipe","innerSlider","clickHandler","handleAfterChange","newIndex","handleBeforeChange","item","child","cloneElement","key"],"mappings":"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","sourcesContent":["import React from 'react';\nimport { View } from 'react-native';\nimport Slick, { Settings } from 'react-slick';\nimport styled from '@emotion/styled';\nimport { ChevronLeft, ChevronRight } from '@fountain-ui/icons';\nimport { mapIndexed } from '@fountain-ui/utils';\nimport type CarouselProps from './CarouselProps';\nimport {\n defaultAutoplay,\n defaultAutoplayInterval,\n defaultInactiveSlideOpacity,\n defaultInactiveSlideScale,\n defaultActiveSlideScale,\n defaultInfinite,\n} from './utils';\n\nconst baseSettings: Settings = {\n dots: false,\n draggable: true,\n lazyLoad: 'ondemand',\n pauseOnFocus: true,\n pauseOnHover: true,\n rows: 1,\n swipe: true,\n slidesPerRow: 1,\n vertical: false,\n};\n\nconst noop = () => void 0;\n\nconst StyledContainer: any = styled.div((props: any) => ({\n ['& .slick-track']: {\n display: 'flex',\n },\n ['& .slick-slide > div']: {\n display: 'flex',\n opacity: 0.2,\n transform: `scale(${props.inactiveSlideScale})`,\n transition: 'transform .5s',\n },\n [`& .slick-active.slick-current > div`]: {\n transform: `scale(${props.activeSlideScale})`,\n opacity: 1,\n },\n ...props.arrowsStyle,\n}));\n\ninterface ArrowContainerProps {\n children: React.ReactElement;\n}\n\nconst ArrowContainer = ({ children }: ArrowContainerProps) => (\n <View\n style={{\n height: '100%',\n justifyContent: 'center',\n alignItems: 'center',\n backgroundColor: 'white',\n borderRadius: 16,\n }}\n >\n {children}\n </View>\n);\n\nexport default function Carousel<ItemT>(props: CarouselProps<ItemT>) {\n const {\n activeSlideScale = defaultActiveSlideScale,\n autoplay = defaultAutoplay,\n autoplayInterval = defaultAutoplayInterval,\n centerMode = true,\n centerSlidePadding = 0,\n data,\n inactiveSlideOpacity = defaultInactiveSlideOpacity,\n inactiveSlideScale = defaultInactiveSlideScale,\n index,\n infinite = defaultInfinite,\n onChange,\n renderItem,\n slidesToScroll = 1,\n slidesToShow = 1,\n arrows = false,\n arrowsStyle = {},\n } = props;\n\n const slickRef = React.useRef<Slick | null>(null);\n\n React.useEffect(() => {\n if (slickRef.current) {\n slickRef.current.slickGoTo(index, false);\n }\n }, [index]);\n\n const fixOnClickNotWorkingAfterMobileSwipe = () => {\n // @ts-ignore\n if (slickRef.current && slickRef.current.innerSlider) {\n // @ts-ignore\n slickRef.current.innerSlider.clickHandler = noop;\n }\n };\n\n const handleAfterChange = (newIndex: number) => {\n fixOnClickNotWorkingAfterMobileSwipe();\n\n if (onChange) {\n onChange(newIndex);\n }\n };\n\n const handleBeforeChange = () => {\n fixOnClickNotWorkingAfterMobileSwipe();\n };\n\n return (\n <StyledContainer\n activeSlideScale={activeSlideScale}\n inactiveSlideOpacity={inactiveSlideOpacity}\n inactiveSlideScale={inactiveSlideScale}\n arrowsStyle={arrowsStyle}\n >\n <Slick\n {...baseSettings}\n afterChange={handleAfterChange}\n autoplay={autoplay}\n autoplaySpeed={autoplayInterval}\n beforeChange={handleBeforeChange}\n centerMode={centerMode}\n centerPadding={`${centerSlidePadding}px`}\n infinite={infinite}\n initialSlide={index}\n ref={slickRef}\n slidesToScroll={slidesToScroll}\n slidesToShow={slidesToShow}\n arrows={arrows}\n prevArrow={(\n // If root component is not a div, there's no arrow class.\n <div>\n <ArrowContainer children={<ChevronLeft fill={'#767676'}/>}/>\n </div>\n )}\n nextArrow={(\n <div>\n <ArrowContainer children={<ChevronRight fill={'#767676'}/>}/>\n </div>\n )}\n >\n {mapIndexed((item, index) => {\n const child = renderItem({ item, index });\n\n if (child) {\n return React.cloneElement(child, { key: index });\n }\n return child;\n }, data)}\n </Slick>\n </StyledContainer>\n );\n};\n"]}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.defaultInfinite = exports.defaultInactiveSlideScale = exports.defaultInactiveSlideOpacity = exports.defaultAutoplayInterval = exports.defaultAutoplay = void 0;
|
|
6
|
+
exports.defaultInfinite = exports.defaultActiveSlideScale = exports.defaultInactiveSlideScale = exports.defaultInactiveSlideOpacity = exports.defaultAutoplayInterval = exports.defaultAutoplay = void 0;
|
|
7
7
|
const defaultAutoplay = false;
|
|
8
8
|
exports.defaultAutoplay = defaultAutoplay;
|
|
9
9
|
const defaultAutoplayInterval = 3000;
|
|
@@ -12,6 +12,8 @@ const defaultInactiveSlideOpacity = 0.7;
|
|
|
12
12
|
exports.defaultInactiveSlideOpacity = defaultInactiveSlideOpacity;
|
|
13
13
|
const defaultInactiveSlideScale = 0.9;
|
|
14
14
|
exports.defaultInactiveSlideScale = defaultInactiveSlideScale;
|
|
15
|
+
const defaultActiveSlideScale = 0.990;
|
|
16
|
+
exports.defaultActiveSlideScale = defaultActiveSlideScale;
|
|
15
17
|
const defaultInfinite = false;
|
|
16
18
|
exports.defaultInfinite = defaultInfinite;
|
|
17
19
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["utils.ts"],"names":["defaultAutoplay","defaultAutoplayInterval","defaultInactiveSlideOpacity","defaultInactiveSlideScale","defaultInfinite"],"mappings":";;;;;;AAAO,MAAMA,eAAe,GAAG,KAAxB;;AAEA,MAAMC,uBAAuB,GAAG,IAAhC;;AAEA,MAAMC,2BAA2B,GAAG,GAApC;;AAEA,MAAMC,yBAAyB,GAAG,GAAlC;;AAEA,MAAMC,eAAe,GAAG,KAAxB","sourcesContent":["export const defaultAutoplay = false;\n\nexport const defaultAutoplayInterval = 3000;\n\nexport const defaultInactiveSlideOpacity = 0.7;\n\nexport const defaultInactiveSlideScale = 0.9;\n\nexport const defaultInfinite = false
|
|
1
|
+
{"version":3,"sources":["utils.ts"],"names":["defaultAutoplay","defaultAutoplayInterval","defaultInactiveSlideOpacity","defaultInactiveSlideScale","defaultActiveSlideScale","defaultInfinite"],"mappings":";;;;;;AAAO,MAAMA,eAAe,GAAG,KAAxB;;AAEA,MAAMC,uBAAuB,GAAG,IAAhC;;AAEA,MAAMC,2BAA2B,GAAG,GAApC;;AAEA,MAAMC,yBAAyB,GAAG,GAAlC;;AAEA,MAAMC,uBAAuB,GAAG,KAAhC;;AAEA,MAAMC,eAAe,GAAG,KAAxB","sourcesContent":["export const defaultAutoplay = false;\n\nexport const defaultAutoplayInterval = 3000;\n\nexport const defaultInactiveSlideOpacity = 0.7;\n\nexport const defaultInactiveSlideScale = 0.9;\n\nexport const defaultActiveSlideScale = 0.990;\n\nexport const defaultInfinite = false;\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["StatusBarProvider.tsx"],"names":["initialVisible","Platform","select","ios","android","StatusBarProvider","props","children","theme","defaultColor","palette","background","default","visible","setVisible","React","useState","backgroundViewColor","setBackgroundViewColor","setBackgroundColor","value","OS","RNStatusBar","setBarStyle","animated","setHidden","setTranslucent","shouldRenderBackgroundView","inset","backgroundViewStyle","backgroundColor","height","top","left","position","right","zIndex"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AACA;;AACA;;AACA;;;;AAGA,MAAMA,cAAc,GAAGC,sBAASC,MAAT,CAAgB;AACnCC,EAAAA,GAAG,EAAE,IAD8B;AAEnCC,EAAAA,OAAO,EAAE;AAF0B,CAAhB,CAAvB;;AAKe,SAASC,iBAAT,CAA2BC,KAA3B,EAA0D;AACrE,QAAM;AAAEC,IAAAA;AAAF,MAAeD,KAArB;AAEA,QAAME,KAAK,GAAG,qBAAd;AACA,QAAMC,YAAY,GAAGD,KAAK,CAACE,OAAN,CAAcC,UAAd,CAAyBC,OAA9C;;AAEA,QAAM,CAACC,OAAD,EAAUC,UAAV,IAAwBC,eAAMC,QAAN,CAAehB,cAAf,CAA9B;;AACA,QAAM,CAACiB,mBAAD,EAAsBC,sBAAtB,IAAgDH,eAAMC,QAAN,CAAeP,YAAf,CAAtD;;AAEA,QAAMU,kBAAkB,GAAIC,KAAD,IAAmB;AAC1C,QAAInB,sBAASoB,EAAT,KAAgB,SAApB,EAA+B;AAC3BC,6BAAYH,kBAAZ,CAA+BC,KAA/B;AACH;;AAED,QAAInB,sBAASoB,EAAT,KAAgB,KAApB,EAA2B;AACvBH,MAAAA,sBAAsB,CAACE,KAAD,CAAtB;AACH;AACJ,GARD;;AAUA,QAAMG,WAAW,GAAG,CAACH,KAAD,EAAwBI,QAAxB,KAA+C;AAC/DF,2BAAYC,WAAZ,CAAwBH,KAAxB,EAA+BI,QAA/B;AACH,GAFD;;AAIA,QAAMC,SAAS,GAAIL,KAAD,IAAoB;AAClC,QAAInB,sBAASoB,EAAT,KAAgB,KAApB,EAA2B;AACvBP,MAAAA,UAAU,CAAC,CAACM,KAAF,CAAV;AACH;;AAEDE,2BAAYG,SAAZ,CAAsBL,KAAtB;AACH,GAND;;AAQA,QAAMM,cAAc,GAAIN,KAAD,IAAoB;AACvC,QAAInB,sBAASoB,EAAT,KAAgB,SAApB,EAA+B;AAC3BC,6BAAYI,cAAZ,CAA2BN,KAA3B;AACH;AACJ,GAJD;;AAMA,QAAMO,0BAA0B,GAAG1B,sBAASoB,EAAT,KAAgB,KAAhB,IAAyBR,OAA5D;AAEA,QAAMe,KAAK,GAAG,oDAAd;AACA,QAAMC,mBAAmB,GAAG,iBAAI,CAC5B;AACIC,IAAAA,eAAe,EAAEb,mBADrB;AAEIc,IAAAA,MAAM,EAAEH,KAAK,CAACI,GAFlB;AAGIC,IAAAA,IAAI,EAAE,CAHV;AAIIC,IAAAA,QAAQ,EAAE,UAJd;AAKIC,IAAAA,KAAK,EAAE,CALX;AAMIH,IAAAA,GAAG,EAAE,CANT;AAOII,IAAAA,MAAM,
|
|
1
|
+
{"version":3,"sources":["StatusBarProvider.tsx"],"names":["initialVisible","Platform","select","ios","android","StatusBarProvider","props","children","theme","defaultColor","palette","background","default","visible","setVisible","React","useState","backgroundViewColor","setBackgroundViewColor","setBackgroundColor","value","OS","RNStatusBar","setBarStyle","animated","setHidden","setTranslucent","shouldRenderBackgroundView","inset","backgroundViewStyle","backgroundColor","height","top","left","position","right","zIndex","statusBar"],"mappings":";;;;;;;AAAA;;AAEA;;AACA;;AACA;;AACA;;AACA;;;;AAGA,MAAMA,cAAc,GAAGC,sBAASC,MAAT,CAAgB;AACnCC,EAAAA,GAAG,EAAE,IAD8B;AAEnCC,EAAAA,OAAO,EAAE;AAF0B,CAAhB,CAAvB;;AAKe,SAASC,iBAAT,CAA2BC,KAA3B,EAA0D;AACrE,QAAM;AAAEC,IAAAA;AAAF,MAAeD,KAArB;AAEA,QAAME,KAAK,GAAG,qBAAd;AACA,QAAMC,YAAY,GAAGD,KAAK,CAACE,OAAN,CAAcC,UAAd,CAAyBC,OAA9C;;AAEA,QAAM,CAACC,OAAD,EAAUC,UAAV,IAAwBC,eAAMC,QAAN,CAAehB,cAAf,CAA9B;;AACA,QAAM,CAACiB,mBAAD,EAAsBC,sBAAtB,IAAgDH,eAAMC,QAAN,CAAeP,YAAf,CAAtD;;AAEA,QAAMU,kBAAkB,GAAIC,KAAD,IAAmB;AAC1C,QAAInB,sBAASoB,EAAT,KAAgB,SAApB,EAA+B;AAC3BC,6BAAYH,kBAAZ,CAA+BC,KAA/B;AACH;;AAED,QAAInB,sBAASoB,EAAT,KAAgB,KAApB,EAA2B;AACvBH,MAAAA,sBAAsB,CAACE,KAAD,CAAtB;AACH;AACJ,GARD;;AAUA,QAAMG,WAAW,GAAG,CAACH,KAAD,EAAwBI,QAAxB,KAA+C;AAC/DF,2BAAYC,WAAZ,CAAwBH,KAAxB,EAA+BI,QAA/B;AACH,GAFD;;AAIA,QAAMC,SAAS,GAAIL,KAAD,IAAoB;AAClC,QAAInB,sBAASoB,EAAT,KAAgB,KAApB,EAA2B;AACvBP,MAAAA,UAAU,CAAC,CAACM,KAAF,CAAV;AACH;;AAEDE,2BAAYG,SAAZ,CAAsBL,KAAtB;AACH,GAND;;AAQA,QAAMM,cAAc,GAAIN,KAAD,IAAoB;AACvC,QAAInB,sBAASoB,EAAT,KAAgB,SAApB,EAA+B;AAC3BC,6BAAYI,cAAZ,CAA2BN,KAA3B;AACH;AACJ,GAJD;;AAMA,QAAMO,0BAA0B,GAAG1B,sBAASoB,EAAT,KAAgB,KAAhB,IAAyBR,OAA5D;AAEA,QAAMe,KAAK,GAAG,oDAAd;AACA,QAAMC,mBAAmB,GAAG,iBAAI,CAC5B;AACIC,IAAAA,eAAe,EAAEb,mBADrB;AAEIc,IAAAA,MAAM,EAAEH,KAAK,CAACI,GAFlB;AAGIC,IAAAA,IAAI,EAAE,CAHV;AAIIC,IAAAA,QAAQ,EAAE,UAJd;AAKIC,IAAAA,KAAK,EAAE,CALX;AAMIH,IAAAA,GAAG,EAAE,CANT;AAOII,IAAAA,MAAM,EAAE5B,KAAK,CAAC4B,MAAN,CAAaC;AAPzB,GAD4B,CAAJ,CAA5B;AAYA,sBACI,6BAAC,iBAAD;AAAU,IAAA,KAAK,EAAE;AACblB,MAAAA,kBADa;AAEbI,MAAAA,WAFa;AAGbE,MAAAA,SAHa;AAIbC,MAAAA;AAJa;AAAjB,KAMKC,0BAA0B,gBACvB,6BAAC,iBAAD;AAAM,IAAA,KAAK,EAAEE;AAAb,IADuB,GAEvB,IARR,EASKtB,QATL,CADJ;AAaH","sourcesContent":["import React from 'react';\nimport type { StatusBarStyle } from 'react-native';\nimport { Platform, StatusBar as RNStatusBar, View } from 'react-native';\nimport { useSafeAreaInsets } from 'react-native-safe-area-context';\nimport { useTheme } from '@fountain-ui/core';\nimport { css } from '@fountain-ui/styles';\nimport Provider from './Provider';\nimport type StatusBarProviderProps from './StatusBarProviderProps';\n\nconst initialVisible = Platform.select({\n ios: true,\n android: false,\n});\n\nexport default function StatusBarProvider(props: StatusBarProviderProps) {\n const { children } = props;\n\n const theme = useTheme();\n const defaultColor = theme.palette.background.default;\n\n const [visible, setVisible] = React.useState(initialVisible);\n const [backgroundViewColor, setBackgroundViewColor] = React.useState(defaultColor);\n\n const setBackgroundColor = (value: string) => {\n if (Platform.OS === 'android') {\n RNStatusBar.setBackgroundColor(value);\n }\n\n if (Platform.OS === 'ios') {\n setBackgroundViewColor(value);\n }\n };\n\n const setBarStyle = (value: StatusBarStyle, animated?: boolean) => {\n RNStatusBar.setBarStyle(value, animated);\n };\n\n const setHidden = (value: boolean) => {\n if (Platform.OS === 'ios') {\n setVisible(!value);\n }\n\n RNStatusBar.setHidden(value);\n };\n\n const setTranslucent = (value: boolean) => {\n if (Platform.OS === 'android') {\n RNStatusBar.setTranslucent(value);\n }\n };\n\n const shouldRenderBackgroundView = Platform.OS === 'ios' && visible;\n\n const inset = useSafeAreaInsets();\n const backgroundViewStyle = css([\n {\n backgroundColor: backgroundViewColor,\n height: inset.top,\n left: 0,\n position: 'absolute',\n right: 0,\n top: 0,\n zIndex: theme.zIndex.statusBar,\n },\n ]);\n\n return (\n <Provider value={{\n setBackgroundColor,\n setBarStyle,\n setHidden,\n setTranslucent,\n }}>\n {shouldRenderBackgroundView ? (\n <View style={backgroundViewStyle}/>\n ) : null}\n {children}\n </Provider>\n );\n}"]}
|
|
@@ -32,6 +32,10 @@ var _default = /*#__PURE__*/_react.default.memo(Page, (prevProps, nextProps) =>
|
|
|
32
32
|
return false;
|
|
33
33
|
}
|
|
34
34
|
|
|
35
|
+
if (prevProps.style !== nextProps.style) {
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
38
|
+
|
|
35
39
|
if (prevProps.rerenderKey !== nextProps.rerenderKey) {
|
|
36
40
|
return false;
|
|
37
41
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["ChildrenMemoizedPage.tsx"],"names":["Page","props","isVisible","otherProps","React","memo","prevProps","nextProps","children","rerenderKey"],"mappings":";;;;;;;AAAA;;AACA;;;;;;AAGA,MAAMA,IAAI,GAAG,SAASA,IAAT,CAAcC,KAAd,EAAgC;AACzC,QAAM;AAAEC,IAAAA,SAAF;AAAa,OAAGC;AAAhB,MAA+BF,KAArC;AAEA,sBACI,6BAAC,iBAAD;AACI,IAAA,WAAW,EAAE;AADjB,KAEQE,UAFR,EADJ;AAMH,CATD;;4BAWeC,eAAMC,IAAN,CAAWL,IAAX,EAAiB,CAACM,SAAD,EAAYC,SAAZ,KAA0B;AACtD,MAAID,SAAS,CAACE,QAAV,KAAuB,IAAvB,IAA+BD,SAAS,CAACC,QAAV,KAAuB,IAA1D,EAAgE;AAC5D,WAAO,IAAP;AACH;;AAED,MAAIF,SAAS,CAACJ,SAAV,KAAwBK,SAAS,CAACL,SAAtC,EAAiD;AAC7C,WAAO,KAAP;AACH;;AAED,MAAII,SAAS,CAACG,
|
|
1
|
+
{"version":3,"sources":["ChildrenMemoizedPage.tsx"],"names":["Page","props","isVisible","otherProps","React","memo","prevProps","nextProps","children","style","rerenderKey"],"mappings":";;;;;;;AAAA;;AACA;;;;;;AAGA,MAAMA,IAAI,GAAG,SAASA,IAAT,CAAcC,KAAd,EAAgC;AACzC,QAAM;AAAEC,IAAAA,SAAF;AAAa,OAAGC;AAAhB,MAA+BF,KAArC;AAEA,sBACI,6BAAC,iBAAD;AACI,IAAA,WAAW,EAAE;AADjB,KAEQE,UAFR,EADJ;AAMH,CATD;;4BAWeC,eAAMC,IAAN,CAAWL,IAAX,EAAiB,CAACM,SAAD,EAAYC,SAAZ,KAA0B;AACtD,MAAID,SAAS,CAACE,QAAV,KAAuB,IAAvB,IAA+BD,SAAS,CAACC,QAAV,KAAuB,IAA1D,EAAgE;AAC5D,WAAO,IAAP;AACH;;AAED,MAAIF,SAAS,CAACJ,SAAV,KAAwBK,SAAS,CAACL,SAAtC,EAAiD;AAC7C,WAAO,KAAP;AACH;;AAED,MAAII,SAAS,CAACG,KAAV,KAAoBF,SAAS,CAACE,KAAlC,EAAyC;AACrC,WAAO,KAAP;AACH;;AAED,MAAIH,SAAS,CAACI,WAAV,KAA0BH,SAAS,CAACG,WAAxC,EAAqD;AACjD,WAAO,KAAP;AACH;;AAED,SAAOJ,SAAS,CAACE,QAAV,KAAuB,IAAvB,IAA+BD,SAAS,CAACC,QAAV,KAAuB,IAA7D;AACH,CAlBc,C","sourcesContent":["import React from 'react';\nimport { View } from 'react-native';\nimport type { PageProps } from './ViewPagerProps';\n\nconst Page = function Page(props: PageProps) {\n const { isVisible, ...otherProps } = props;\n\n return (\n <View\n collapsable={false}\n {...otherProps}\n />\n );\n};\n\nexport default React.memo(Page, (prevProps, nextProps) => {\n if (prevProps.children === null && nextProps.children === null) {\n return true;\n }\n\n if (prevProps.isVisible !== nextProps.isVisible) {\n return false;\n }\n\n if (prevProps.style !== nextProps.style) {\n return false;\n }\n\n if (prevProps.rerenderKey !== nextProps.rerenderKey) {\n return false;\n }\n\n return prevProps.children !== null && nextProps.children !== null;\n});\n"]}
|
|
@@ -15,6 +15,8 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
15
15
|
|
|
16
16
|
const styles = _reactNative.StyleSheet.create({
|
|
17
17
|
root: {
|
|
18
|
+
// @ts-ignore
|
|
19
|
+
overflow: 'auto',
|
|
18
20
|
position: 'relative'
|
|
19
21
|
},
|
|
20
22
|
none: {
|
|
@@ -41,10 +43,8 @@ function ViewPager(props) {
|
|
|
41
43
|
});
|
|
42
44
|
return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
43
45
|
style: [styles.root, style]
|
|
44
|
-
}, _react.default.Children.map(renderer(children), (child, i) => /*#__PURE__*/_react.default.
|
|
45
|
-
|
|
46
|
-
style: i !== index ? styles.none : _reactNative.StyleSheet.absoluteFill,
|
|
47
|
-
children: child
|
|
46
|
+
}, _react.default.Children.map(renderer(children), (child, i) => /*#__PURE__*/_react.default.cloneElement(child, {
|
|
47
|
+
style: i !== index ? styles.none : _reactNative.StyleSheet.absoluteFill
|
|
48
48
|
})));
|
|
49
49
|
}
|
|
50
50
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["ViewPagerWeb.tsx"],"names":["styles","StyleSheet","create","root","position","none","display","ViewPager","props","children","enableVisibleHint","defaultEnableVisibleHint","index","loading","defaultLoading","pageComponent","defaultPageComponent","pageForceRerenderKey","style","renderer","React","Children","map","child","i","absoluteFill"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;;;;AAEA,MAAMA,MAAM,GAAGC,wBAAWC,MAAX,CAAkB;AAC7BC,EAAAA,IAAI,EAAE;
|
|
1
|
+
{"version":3,"sources":["ViewPagerWeb.tsx"],"names":["styles","StyleSheet","create","root","overflow","position","none","display","ViewPager","props","children","enableVisibleHint","defaultEnableVisibleHint","index","loading","defaultLoading","pageComponent","defaultPageComponent","pageForceRerenderKey","style","renderer","React","Children","map","child","i","cloneElement","absoluteFill"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;;;;AAEA,MAAMA,MAAM,GAAGC,wBAAWC,MAAX,CAAkB;AAC7BC,EAAAA,IAAI,EAAE;AACF;AACAC,IAAAA,QAAQ,EAAE,MAFR;AAGFC,IAAAA,QAAQ,EAAE;AAHR,GADuB;AAM7BC,EAAAA,IAAI,EAAE;AAAEC,IAAAA,OAAO,EAAE;AAAX;AANuB,CAAlB,CAAf;;AASe,SAASC,SAAT,CAAmBC,KAAnB,EAA0C;AACrD,QAAM;AACFC,IAAAA,QADE;AAEFC,IAAAA,iBAAiB,GAAGC,+BAFlB;AAGFC,IAAAA,KAHE;AAIFC,IAAAA,OAAO,GAAGC,qBAJR;AAKFC,IAAAA,aAAa,GAAGC,2BALd;AAMFC,IAAAA,oBANE;AAOFC,IAAAA;AAPE,MAQFV,KARJ;AAUA,QAAMW,QAAQ,GAAG,4BAAgB;AAC7BT,IAAAA,iBAD6B;AAE7BE,IAAAA,KAF6B;AAG7BC,IAAAA,OAH6B;AAI7BE,IAAAA,aAJ6B;AAK7BE,IAAAA;AAL6B,GAAhB,CAAjB;AAQA,sBACI,6BAAC,iBAAD;AAAM,IAAA,KAAK,EAAE,CAAClB,MAAM,CAACG,IAAR,EAAcgB,KAAd;AAAb,KACKE,eAAMC,QAAN,CAAeC,GAAf,CAAmBH,QAAQ,CAACV,QAAD,CAA3B,EAAuC,CAACc,KAAD,EAAQC,CAAR,kBACpCJ,eAAMK,YAAN,CAAmBF,KAAnB,EAAgD;AAC5CL,IAAAA,KAAK,EAAEM,CAAC,KAAKZ,KAAN,GAAcb,MAAM,CAACM,IAArB,GAA4BL,wBAAW0B;AADF,GAAhD,CADH,CADL,CADJ;AASH;;AAAA","sourcesContent":["import React from 'react';\nimport { StyleSheet, View } from 'react-native';\nimport type ViewPagerProps from './ViewPagerProps';\nimport { defaultEnableVisibleHint, defaultLoading, defaultPageComponent, usePageRenderer } from './utils';\n\nconst styles = StyleSheet.create({\n root: {\n // @ts-ignore\n overflow: 'auto',\n position: 'relative',\n },\n none: { display: 'none' },\n});\n\nexport default function ViewPager(props: ViewPagerProps) {\n const {\n children,\n enableVisibleHint = defaultEnableVisibleHint,\n index,\n loading = defaultLoading,\n pageComponent = defaultPageComponent,\n pageForceRerenderKey,\n style,\n } = props;\n\n const renderer = usePageRenderer({\n enableVisibleHint,\n index,\n loading,\n pageComponent,\n pageForceRerenderKey,\n });\n\n return (\n <View style={[styles.root, style]}>\n {React.Children.map(renderer(children), (child, i) =>\n React.cloneElement(child as React.ReactElement, {\n style: i !== index ? styles.none : StyleSheet.absoluteFill,\n }),\n )}\n </View>\n );\n};\n"]}
|
package/build/commonjs/index.js
CHANGED
|
@@ -118,7 +118,7 @@ Object.keys(_StatusBarProvider).forEach(function (key) {
|
|
|
118
118
|
});
|
|
119
119
|
});
|
|
120
120
|
|
|
121
|
-
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var
|
|
121
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
122
122
|
|
|
123
|
-
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
123
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
124
124
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
2
|
|
|
3
3
|
import React from 'react';
|
|
4
|
+
import { View } from 'react-native';
|
|
4
5
|
import Slick from 'react-slick';
|
|
5
6
|
import styled from '@emotion/styled';
|
|
7
|
+
import { ChevronLeft, ChevronRight } from '@fountain-ui/icons';
|
|
6
8
|
import { mapIndexed } from '@fountain-ui/utils';
|
|
7
|
-
import { defaultAutoplay, defaultAutoplayInterval, defaultInactiveSlideOpacity, defaultInactiveSlideScale, defaultInfinite } from './utils';
|
|
9
|
+
import { defaultAutoplay, defaultAutoplayInterval, defaultInactiveSlideOpacity, defaultInactiveSlideScale, defaultActiveSlideScale, defaultInfinite } from './utils';
|
|
8
10
|
const baseSettings = {
|
|
9
|
-
arrows: false,
|
|
10
11
|
dots: false,
|
|
11
12
|
draggable: true,
|
|
12
13
|
lazyLoad: 'ondemand',
|
|
@@ -21,65 +22,41 @@ const baseSettings = {
|
|
|
21
22
|
const noop = () => void 0;
|
|
22
23
|
|
|
23
24
|
const StyledContainer = styled.div(props => ({
|
|
24
|
-
['& .slick-slider']: {
|
|
25
|
-
display: 'block',
|
|
26
|
-
position: 'relative',
|
|
27
|
-
userSelect: 'none'
|
|
28
|
-
},
|
|
29
|
-
['& .slick-list']: {
|
|
30
|
-
display: 'block',
|
|
31
|
-
position: 'relative',
|
|
32
|
-
overflow: 'hidden',
|
|
33
|
-
margin: 0,
|
|
34
|
-
padding: 0,
|
|
35
|
-
['&:focus']: {
|
|
36
|
-
outline: 'none'
|
|
37
|
-
},
|
|
38
|
-
['&.dragging']: {
|
|
39
|
-
cursor: 'pointer'
|
|
40
|
-
}
|
|
41
|
-
},
|
|
42
|
-
['& .slick-slider .slick-track, &.slick-slider .slick-list']: {
|
|
43
|
-
transform: 'translate3d(0, 0, 0)'
|
|
44
|
-
},
|
|
45
25
|
['& .slick-track']: {
|
|
46
|
-
display: '
|
|
47
|
-
position: 'relative',
|
|
48
|
-
top: 0,
|
|
49
|
-
left: 0,
|
|
50
|
-
['&:before, &:after']: {
|
|
51
|
-
display: 'table',
|
|
52
|
-
content: '\'\''
|
|
53
|
-
},
|
|
54
|
-
['&:after']: {
|
|
55
|
-
clear: 'both'
|
|
56
|
-
}
|
|
26
|
+
display: 'flex'
|
|
57
27
|
},
|
|
58
|
-
['& .slick-slide']: {
|
|
59
|
-
display: '
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
['& > div']: {
|
|
64
|
-
display: 'flex',
|
|
65
|
-
transform: "scale(".concat(props.inactiveSlideScale, ")"),
|
|
66
|
-
transition: 'transform .5s',
|
|
67
|
-
opacity: props.inactiveSlideOpacity
|
|
68
|
-
}
|
|
28
|
+
['& .slick-slide > div']: {
|
|
29
|
+
display: 'flex',
|
|
30
|
+
opacity: 0.2,
|
|
31
|
+
transform: `scale(${props.inactiveSlideScale})`,
|
|
32
|
+
transition: 'transform .5s'
|
|
69
33
|
},
|
|
70
|
-
[
|
|
71
|
-
transform:
|
|
34
|
+
[`& .slick-active.slick-current > div`]: {
|
|
35
|
+
transform: `scale(${props.activeSlideScale})`,
|
|
72
36
|
opacity: 1
|
|
73
37
|
},
|
|
74
|
-
|
|
75
|
-
display: 'block'
|
|
76
|
-
}
|
|
38
|
+
...props.arrowsStyle
|
|
77
39
|
}));
|
|
40
|
+
|
|
41
|
+
const ArrowContainer = ({
|
|
42
|
+
children
|
|
43
|
+
}) => /*#__PURE__*/React.createElement(View, {
|
|
44
|
+
style: {
|
|
45
|
+
height: '100%',
|
|
46
|
+
justifyContent: 'center',
|
|
47
|
+
alignItems: 'center',
|
|
48
|
+
backgroundColor: 'white',
|
|
49
|
+
borderRadius: 16
|
|
50
|
+
}
|
|
51
|
+
}, children);
|
|
52
|
+
|
|
78
53
|
export default function Carousel(props) {
|
|
79
54
|
const {
|
|
55
|
+
activeSlideScale = defaultActiveSlideScale,
|
|
80
56
|
autoplay = defaultAutoplay,
|
|
81
57
|
autoplayInterval = defaultAutoplayInterval,
|
|
82
|
-
|
|
58
|
+
centerMode = true,
|
|
59
|
+
centerSlidePadding = 0,
|
|
83
60
|
data,
|
|
84
61
|
inactiveSlideOpacity = defaultInactiveSlideOpacity,
|
|
85
62
|
inactiveSlideScale = defaultInactiveSlideScale,
|
|
@@ -88,7 +65,9 @@ export default function Carousel(props) {
|
|
|
88
65
|
onChange,
|
|
89
66
|
renderItem,
|
|
90
67
|
slidesToScroll = 1,
|
|
91
|
-
slidesToShow = 1
|
|
68
|
+
slidesToShow = 1,
|
|
69
|
+
arrows = false,
|
|
70
|
+
arrowsStyle = {}
|
|
92
71
|
} = props;
|
|
93
72
|
const slickRef = React.useRef(null);
|
|
94
73
|
React.useEffect(() => {
|
|
@@ -118,20 +97,36 @@ export default function Carousel(props) {
|
|
|
118
97
|
};
|
|
119
98
|
|
|
120
99
|
return /*#__PURE__*/React.createElement(StyledContainer, {
|
|
100
|
+
activeSlideScale: activeSlideScale,
|
|
121
101
|
inactiveSlideOpacity: inactiveSlideOpacity,
|
|
122
|
-
inactiveSlideScale: inactiveSlideScale
|
|
102
|
+
inactiveSlideScale: inactiveSlideScale,
|
|
103
|
+
arrowsStyle: arrowsStyle
|
|
123
104
|
}, /*#__PURE__*/React.createElement(Slick, _extends({}, baseSettings, {
|
|
124
105
|
afterChange: handleAfterChange,
|
|
125
106
|
autoplay: autoplay,
|
|
126
107
|
autoplaySpeed: autoplayInterval,
|
|
127
108
|
beforeChange: handleBeforeChange,
|
|
128
|
-
centerMode:
|
|
129
|
-
centerPadding: centerSlidePadding
|
|
109
|
+
centerMode: centerMode,
|
|
110
|
+
centerPadding: `${centerSlidePadding}px`,
|
|
130
111
|
infinite: infinite,
|
|
131
112
|
initialSlide: index,
|
|
132
113
|
ref: slickRef,
|
|
133
|
-
slidesToScroll:
|
|
134
|
-
slidesToShow:
|
|
114
|
+
slidesToScroll: slidesToScroll,
|
|
115
|
+
slidesToShow: slidesToShow,
|
|
116
|
+
arrows: arrows,
|
|
117
|
+
prevArrow:
|
|
118
|
+
/*#__PURE__*/
|
|
119
|
+
// If root component is not a div, there's no arrow class.
|
|
120
|
+
React.createElement("div", null, /*#__PURE__*/React.createElement(ArrowContainer, {
|
|
121
|
+
children: /*#__PURE__*/React.createElement(ChevronLeft, {
|
|
122
|
+
fill: '#767676'
|
|
123
|
+
})
|
|
124
|
+
})),
|
|
125
|
+
nextArrow: /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(ArrowContainer, {
|
|
126
|
+
children: /*#__PURE__*/React.createElement(ChevronRight, {
|
|
127
|
+
fill: '#767676'
|
|
128
|
+
})
|
|
129
|
+
}))
|
|
135
130
|
}), mapIndexed((item, index) => {
|
|
136
131
|
const child = renderItem({
|
|
137
132
|
item,
|