@one-am/react-native-simple-image-slider 0.15.0 → 0.16.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/README.md +12 -6
- package/lib/commonjs/@types/pinch-to-zoom.js +0 -4
- package/lib/commonjs/AbsoluteComponentContainer.js +34 -0
- package/lib/commonjs/AbsoluteComponentContainer.js.map +1 -0
- package/lib/commonjs/BaseSimpleImageSlider.js +98 -132
- package/lib/commonjs/BaseSimpleImageSlider.js.map +1 -1
- package/lib/commonjs/FullScreenImageSlider.js +20 -29
- package/lib/commonjs/FullScreenImageSlider.js.map +1 -1
- package/lib/commonjs/PageCounter.js +24 -20
- package/lib/commonjs/PageCounter.js.map +1 -1
- package/lib/commonjs/PinchToZoom.js +5 -5
- package/lib/commonjs/PinchToZoom.js.map +1 -1
- package/lib/commonjs/SimpleImageSliderThemeProvider.js +19 -11
- package/lib/commonjs/SimpleImageSliderThemeProvider.js.map +1 -1
- package/lib/commonjs/index.js +9 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/@types/pinch-to-zoom.js +0 -2
- package/lib/module/AbsoluteComponentContainer.js +28 -0
- package/lib/module/AbsoluteComponentContainer.js.map +1 -0
- package/lib/module/BaseSimpleImageSlider.js +99 -133
- package/lib/module/BaseSimpleImageSlider.js.map +1 -1
- package/lib/module/FullScreenImageSlider.js +21 -30
- package/lib/module/FullScreenImageSlider.js.map +1 -1
- package/lib/module/PageCounter.js +23 -20
- package/lib/module/PageCounter.js.map +1 -1
- package/lib/module/PinchToZoom.js +5 -5
- package/lib/module/PinchToZoom.js.map +1 -1
- package/lib/module/SimpleImageSliderThemeProvider.js +19 -12
- package/lib/module/SimpleImageSliderThemeProvider.js.map +1 -1
- package/lib/module/index.js +2 -2
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/src/@types/pinch-to-zoom.d.ts +3 -4
- package/lib/typescript/src/@types/pinch-to-zoom.d.ts.map +1 -1
- package/lib/typescript/src/AbsoluteComponentContainer.d.ts +7 -0
- package/lib/typescript/src/AbsoluteComponentContainer.d.ts.map +1 -0
- package/lib/typescript/src/BaseSimpleImageSlider.d.ts +1 -1
- package/lib/typescript/src/BaseSimpleImageSlider.d.ts.map +1 -1
- package/lib/typescript/src/FullScreenImageSlider.d.ts.map +1 -1
- package/lib/typescript/src/PageCounter.d.ts.map +1 -1
- package/lib/typescript/src/PinchToZoom.d.ts.map +1 -1
- package/lib/typescript/src/SimpleImageSliderThemeProvider.d.ts +10 -2
- package/lib/typescript/src/SimpleImageSliderThemeProvider.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +2 -3
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/package.json +161 -160
- package/src/@types/pinch-to-zoom.ts +3 -5
- package/src/AbsoluteComponentContainer.tsx +30 -0
- package/src/BaseSimpleImageSlider.tsx +118 -150
- package/src/FullScreenImageSlider.tsx +39 -34
- package/src/PageCounter.tsx +35 -17
- package/src/PinchToZoom.tsx +10 -9
- package/src/SimpleImageSliderThemeProvider.tsx +32 -13
- package/src/index.tsx +7 -2
- package/lib/commonjs/@types/styled.d.js +0 -4
- package/lib/commonjs/@types/styled.d.js.map +0 -1
- package/lib/module/@types/styled.d.js +0 -4
- package/lib/module/@types/styled.d.js.map +0 -1
- package/src/@types/styled.d.ts +0 -17
|
@@ -1,30 +1,49 @@
|
|
|
1
|
-
import React, { type PropsWithChildren, useMemo } from 'react';
|
|
2
|
-
|
|
1
|
+
import React, { createContext, type PropsWithChildren, useContext, useMemo } from 'react';
|
|
2
|
+
|
|
3
|
+
export type SimpleImageSliderTheme = {
|
|
4
|
+
colors: {
|
|
5
|
+
pageCounterBackground: string;
|
|
6
|
+
pageCounterBorder: string;
|
|
7
|
+
fullScreenCloseButton: string;
|
|
8
|
+
descriptionContainerBorder: string;
|
|
9
|
+
};
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
const defaultTheme: SimpleImageSliderTheme = {
|
|
13
|
+
colors: {
|
|
14
|
+
pageCounterBackground: '#D3D3D3',
|
|
15
|
+
pageCounterBorder: '#000000',
|
|
16
|
+
fullScreenCloseButton: '#FFFFFF',
|
|
17
|
+
descriptionContainerBorder: '#FFFFFF',
|
|
18
|
+
},
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
const ThemeContext = createContext<SimpleImageSliderTheme>(defaultTheme);
|
|
3
22
|
|
|
4
23
|
export type SimpleImageSliderThemeProviderProps = PropsWithChildren<{
|
|
5
24
|
overrides?: {
|
|
6
|
-
colors: Partial<
|
|
25
|
+
colors: Partial<SimpleImageSliderTheme['colors']>;
|
|
7
26
|
};
|
|
8
27
|
}>;
|
|
9
28
|
|
|
29
|
+
export function useSimpleImageSliderTheme() {
|
|
30
|
+
return useContext(ThemeContext);
|
|
31
|
+
}
|
|
32
|
+
|
|
10
33
|
export default function SimpleImageSliderThemeProvider({
|
|
11
34
|
overrides,
|
|
12
35
|
children,
|
|
13
36
|
}: SimpleImageSliderThemeProviderProps) {
|
|
14
|
-
const theme:
|
|
37
|
+
const theme: SimpleImageSliderTheme = useMemo(
|
|
15
38
|
() => ({
|
|
39
|
+
...defaultTheme,
|
|
16
40
|
colors: {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
pageCounterBorder: '#000000',
|
|
20
|
-
fullScreenCloseButton: '#FFFFFF',
|
|
21
|
-
descriptionContainerBorder: '#FFFFFF',
|
|
22
|
-
...overrides?.colors?.simpleImageSlider,
|
|
23
|
-
},
|
|
41
|
+
...defaultTheme.colors,
|
|
42
|
+
...overrides?.colors,
|
|
24
43
|
},
|
|
25
44
|
}),
|
|
26
|
-
[overrides?.colors
|
|
45
|
+
[overrides?.colors]
|
|
27
46
|
);
|
|
28
47
|
|
|
29
|
-
return <
|
|
48
|
+
return <ThemeContext.Provider value={theme}>{children}</ThemeContext.Provider>;
|
|
30
49
|
}
|
package/src/index.tsx
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
import SimpleImageSliderThemeProvider
|
|
2
|
-
|
|
1
|
+
import SimpleImageSliderThemeProvider, {
|
|
2
|
+
useSimpleImageSliderTheme,
|
|
3
|
+
type SimpleImageSliderTheme,
|
|
4
|
+
type SimpleImageSliderThemeProviderProps,
|
|
5
|
+
} from './SimpleImageSliderThemeProvider';
|
|
3
6
|
import BaseListImageSlider, { type BaseSimpleImageSliderProps } from './BaseSimpleImageSlider';
|
|
4
7
|
import SimpleImageSlider, { type SimpleImageSliderProps } from './SimpleImageSlider';
|
|
5
8
|
import FullScreenImageSlider, { type FullScreenImageSliderProps } from './FullScreenImageSlider';
|
|
@@ -9,7 +12,9 @@ import PageCounter, { type PageCounterProps } from './PageCounter';
|
|
|
9
12
|
|
|
10
13
|
export {
|
|
11
14
|
SimpleImageSliderThemeProvider,
|
|
15
|
+
useSimpleImageSliderTheme,
|
|
12
16
|
type SimpleImageSliderTheme,
|
|
17
|
+
type SimpleImageSliderThemeProviderProps,
|
|
13
18
|
BaseListImageSlider,
|
|
14
19
|
type BaseSimpleImageSliderProps,
|
|
15
20
|
SimpleImageSlider,
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["require"],"sourceRoot":"../../../src","sources":["@types/styled.d.ts"],"mappings":";;AAAAA,OAAA","ignoreList":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["@types/styled.d.ts"],"mappings":";;AAAA,OAAO,0BAA0B","ignoreList":[]}
|
package/src/@types/styled.d.ts
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import 'styled-components/native';
|
|
2
|
-
|
|
3
|
-
export type SimpleImageSliderTheme = {
|
|
4
|
-
colors: {
|
|
5
|
-
simpleImageSlider: {
|
|
6
|
-
pageCounterBackground: string;
|
|
7
|
-
pageCounterBorder: string;
|
|
8
|
-
fullScreenCloseButton: string;
|
|
9
|
-
descriptionContainerBorder: string;
|
|
10
|
-
};
|
|
11
|
-
};
|
|
12
|
-
};
|
|
13
|
-
|
|
14
|
-
declare module 'styled-components/native' {
|
|
15
|
-
// eslint-disable-next-line @typescript-eslint/no-empty-interface
|
|
16
|
-
export interface DefaultTheme extends SimpleImageSliderTheme {}
|
|
17
|
-
}
|