@xylabs/sdk-react 2.9.21 → 2.9.25
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/dist/cjs5/components/InvertableThemeProvider/InvertableThemeProvider.d.ts +10 -2
- package/dist/cjs5/components/InvertableThemeProvider/InvertableThemeProviderProps.d.ts +1 -0
- package/dist/cjs5/components/InvertableThemeProvider/index.d.ts +2 -4
- package/dist/cjs5/components/TokenAmount/TokenAmountProps.d.ts +0 -1
- package/dist/cjs5/index.js +40 -8
- package/dist/cjs5/index.js.map +1 -1
- package/dist/components/InvertableThemeProvider/InvertableThemeProvider.d.ts +10 -2
- package/dist/components/InvertableThemeProvider/InvertableThemeProvider.js +20 -7
- package/dist/components/InvertableThemeProvider/InvertableThemeProvider.js.map +1 -1
- package/dist/components/InvertableThemeProvider/InvertableThemeProviderProps.d.ts +1 -0
- package/dist/components/InvertableThemeProvider/index.d.ts +2 -4
- package/dist/components/InvertableThemeProvider/index.js +2 -2
- package/dist/components/InvertableThemeProvider/index.js.map +1 -1
- package/dist/components/TokenAmount/TokenAmountProps.d.ts +0 -1
- package/dist/esm2015/components/InvertableThemeProvider/InvertableThemeProvider.d.ts +10 -2
- package/dist/esm2015/components/InvertableThemeProvider/InvertableThemeProviderProps.d.ts +1 -0
- package/dist/esm2015/components/InvertableThemeProvider/index.d.ts +2 -4
- package/dist/esm2015/components/TokenAmount/TokenAmountProps.d.ts +0 -1
- package/dist/esm2015/index.js +38 -8
- package/dist/esm2015/index.js.map +1 -1
- package/dist/esm2017/components/InvertableThemeProvider/InvertableThemeProvider.d.ts +10 -2
- package/dist/esm2017/components/InvertableThemeProvider/InvertableThemeProviderProps.d.ts +1 -0
- package/dist/esm2017/components/InvertableThemeProvider/index.d.ts +2 -4
- package/dist/esm2017/components/TokenAmount/TokenAmountProps.d.ts +0 -1
- package/dist/esm2017/index.js +38 -8
- package/dist/esm2017/index.js.map +1 -1
- package/dist/esm5/components/InvertableThemeProvider/InvertableThemeProvider.d.ts +10 -2
- package/dist/esm5/components/InvertableThemeProvider/InvertableThemeProviderProps.d.ts +1 -0
- package/dist/esm5/components/InvertableThemeProvider/index.d.ts +2 -4
- package/dist/esm5/components/TokenAmount/TokenAmountProps.d.ts +0 -1
- package/dist/esm5/index.js +38 -8
- package/dist/esm5/index.js.map +1 -1
- package/dist/hooks/useLocalStorage.js +17 -1
- package/dist/hooks/useLocalStorage.js.map +1 -1
- package/dist/node/components/InvertableThemeProvider/InvertableThemeProvider.d.ts +10 -2
- package/dist/node/components/InvertableThemeProvider/InvertableThemeProviderProps.d.ts +1 -0
- package/dist/node/components/InvertableThemeProvider/index.d.ts +2 -4
- package/dist/node/components/TokenAmount/TokenAmountProps.d.ts +0 -1
- package/dist/node/index.js +40 -8
- package/dist/node/index.js.map +1 -1
- package/dist/node-esm/components/InvertableThemeProvider/InvertableThemeProvider.d.ts +10 -2
- package/dist/node-esm/components/InvertableThemeProvider/InvertableThemeProviderProps.d.ts +1 -0
- package/dist/node-esm/components/InvertableThemeProvider/index.d.ts +2 -4
- package/dist/node-esm/components/TokenAmount/TokenAmountProps.d.ts +0 -1
- package/dist/node-esm/index.js +38 -8
- package/dist/node-esm/index.js.map +1 -1
- package/package.json +34 -32
- package/src/components/InvertableThemeProvider/InvertableThemeProvider.tsx +24 -10
- package/src/components/InvertableThemeProvider/InvertableThemeProviderProps.ts +1 -0
- package/src/components/InvertableThemeProvider/index.ts +2 -5
- package/src/hooks/useLocalStorage.ts +13 -1
- package/xylabs-sdk-react-v2.8.2.tgz +0 -0
package/package.json
CHANGED
|
@@ -9,27 +9,27 @@
|
|
|
9
9
|
"url": "https://github.com/xylabs/sdk-react/issues"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@types/react-helmet": "^6",
|
|
13
|
-
"@xylabs/sdk-js": "^2",
|
|
14
|
-
"axios": "^0",
|
|
15
|
-
"bn.js": "^5",
|
|
16
|
-
"lodash": "^4",
|
|
17
|
-
"md5": "^2",
|
|
18
|
-
"numeral": "^2",
|
|
19
|
-
"query-string": "^7",
|
|
20
|
-
"react-helmet": "^6",
|
|
21
|
-
"react-icons": "^4"
|
|
12
|
+
"@types/react-helmet": "^6.1.5",
|
|
13
|
+
"@xylabs/sdk-js": "^2.4.1",
|
|
14
|
+
"axios": "^0.25.0",
|
|
15
|
+
"bn.js": "^5.2.0",
|
|
16
|
+
"lodash": "^4.17.21",
|
|
17
|
+
"md5": "^2.3.0",
|
|
18
|
+
"numeral": "^2.0.6",
|
|
19
|
+
"query-string": "^7.1.1",
|
|
20
|
+
"react-helmet": "^6.1.0",
|
|
21
|
+
"react-icons": "^4.3.1"
|
|
22
22
|
},
|
|
23
23
|
"description": "Common React library for all XY Labs projects that use React",
|
|
24
24
|
"devDependencies": {
|
|
25
|
-
"@babel/core": "^7.17.
|
|
25
|
+
"@babel/core": "^7.17.2",
|
|
26
26
|
"@emotion/react": "^11.7.1",
|
|
27
27
|
"@emotion/styled": "^11.6.0",
|
|
28
28
|
"@ethersproject/abstract-signer": "^5.5.0",
|
|
29
29
|
"@ethersproject/providers": "^5.5.3",
|
|
30
|
-
"@mui/icons-material": "^5.
|
|
31
|
-
"@mui/material": "^5.4.
|
|
32
|
-
"@mui/styles": "^5.
|
|
30
|
+
"@mui/icons-material": "^5.4.1",
|
|
31
|
+
"@mui/material": "^5.4.1",
|
|
32
|
+
"@mui/styles": "^5.4.1",
|
|
33
33
|
"@rollup/plugin-image": "^2.1.1",
|
|
34
34
|
"@rollup/plugin-json": "^4.1.0",
|
|
35
35
|
"@rollup/plugin-replace": "^3.0.1",
|
|
@@ -44,33 +44,34 @@
|
|
|
44
44
|
"@storybook/react": "^6.4.18",
|
|
45
45
|
"@types/bn.js": "^5.1.0",
|
|
46
46
|
"@types/lodash": "^4.14.178",
|
|
47
|
-
"@types/md5": "^2.3.
|
|
48
|
-
"@types/node": "^17",
|
|
49
|
-
"@types/numeral": "^2",
|
|
50
|
-
"@types/react": "^17",
|
|
51
|
-
"@types/react-dom": "^17",
|
|
52
|
-
"@xylabs/eslint-config-react": "^2",
|
|
47
|
+
"@types/md5": "^2.3.2",
|
|
48
|
+
"@types/node": "^17.0.16",
|
|
49
|
+
"@types/numeral": "^2.0.2",
|
|
50
|
+
"@types/react": "^17.0.39",
|
|
51
|
+
"@types/react-dom": "^17.0.11",
|
|
52
|
+
"@xylabs/eslint-config-react": "^2.1.2",
|
|
53
53
|
"@xylabs/pixel": "^1.3.6",
|
|
54
|
-
"@xylabs/rollup-config": "^1.1.
|
|
55
|
-
"@xylabs/ts-scripts": "^1.0.
|
|
56
|
-
"@xylabs/tsconfig": "^1.0.
|
|
54
|
+
"@xylabs/rollup-config": "^1.1.7",
|
|
55
|
+
"@xylabs/ts-scripts": "^1.0.43",
|
|
56
|
+
"@xylabs/tsconfig": "^1.0.12",
|
|
57
57
|
"babel-loader": "^8.2.3",
|
|
58
58
|
"copyfiles": "^2.4.1",
|
|
59
|
-
"eslint": "^8",
|
|
59
|
+
"eslint": "^8.8.0",
|
|
60
60
|
"eslint-plugin-prettier": "^4.0.0",
|
|
61
61
|
"eslint-plugin-react": "^7.28.0",
|
|
62
62
|
"eslint-plugin-react-hooks": "^4.3.0",
|
|
63
63
|
"prettier": "^2.5.1",
|
|
64
64
|
"react": "^17.0.2",
|
|
65
65
|
"react-dom": "^17.0.2",
|
|
66
|
-
"react-router-dom": "^6",
|
|
67
|
-
"
|
|
68
|
-
"
|
|
66
|
+
"react-router-dom": "^6.2.1",
|
|
67
|
+
"rimraf": "^3.0.2",
|
|
68
|
+
"rollbar": "^2.24.0",
|
|
69
|
+
"rollup": "^2.67.1",
|
|
69
70
|
"rollup-plugin-svg": "^2.0.0",
|
|
70
|
-
"ts-node": "^10.
|
|
71
|
+
"ts-node": "^10.5.0",
|
|
71
72
|
"tslib": "^2.3.1",
|
|
72
73
|
"typescript": "^4.5.5",
|
|
73
|
-
"webpack": "^5"
|
|
74
|
+
"webpack": "^5.68.0"
|
|
74
75
|
},
|
|
75
76
|
"esm5": "dist/esm5/index.js",
|
|
76
77
|
"exports": {
|
|
@@ -108,7 +109,6 @@
|
|
|
108
109
|
"react-dom": "^17",
|
|
109
110
|
"react-router-dom": "^6"
|
|
110
111
|
},
|
|
111
|
-
"private": false,
|
|
112
112
|
"publishConfig": {
|
|
113
113
|
"access": "public"
|
|
114
114
|
},
|
|
@@ -118,11 +118,13 @@
|
|
|
118
118
|
},
|
|
119
119
|
"scripts": {
|
|
120
120
|
"build-storybook": "build-storybook",
|
|
121
|
+
"deploy": "yarn version patch -i && yarn npm publish",
|
|
121
122
|
"lint-pkg": "npmPkgJsonLint .",
|
|
122
123
|
"start": "start-storybook -p 6006",
|
|
123
124
|
"test": "env TS_NODE_PROJECT=\"tsconfig.test.json\" mocha -r ts-node/register 'src/**/*.spec.ts'"
|
|
124
125
|
},
|
|
125
126
|
"sideEffects": false,
|
|
126
127
|
"types": "dist/index.d.ts",
|
|
127
|
-
"version": "2.9.
|
|
128
|
-
|
|
128
|
+
"version": "2.9.25",
|
|
129
|
+
"packageManager": "yarn@3.1.1"
|
|
130
|
+
}
|
|
@@ -1,15 +1,29 @@
|
|
|
1
|
-
import { responsiveFontSizes, ScopedCssBaseline, ThemeProvider } from '@mui/material'
|
|
2
|
-
import { createTheme } from '@mui/material/styles'
|
|
3
|
-
import
|
|
1
|
+
import { responsiveFontSizes, ScopedCssBaseline, Theme, ThemeProvider } from '@mui/material'
|
|
2
|
+
import { createTheme, ThemeOptions } from '@mui/material/styles'
|
|
3
|
+
import cloneDeep from 'lodash/cloneDeep'
|
|
4
|
+
import merge from 'lodash/merge'
|
|
4
5
|
import React, { useContext } from 'react'
|
|
5
6
|
|
|
6
7
|
import { InvertableThemeContext } from './InvertableThemeContext'
|
|
7
8
|
import { InvertableThemeProviderProps } from './InvertableThemeProviderProps'
|
|
8
9
|
|
|
9
|
-
const
|
|
10
|
+
export const resolveThemeColors = (options: ThemeOptions) => {
|
|
11
|
+
const theme = createTheme(options)
|
|
12
|
+
return merge({}, options, {
|
|
13
|
+
palette: {
|
|
14
|
+
text: {
|
|
15
|
+
primary: theme.palette?.getContrastText(theme.palette.primary.main),
|
|
16
|
+
secondary: theme.palette?.getContrastText(theme.palette.secondary.main),
|
|
17
|
+
},
|
|
18
|
+
},
|
|
19
|
+
})
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export const InvertableThemeProvider: React.FC<InvertableThemeProviderProps> = ({
|
|
10
23
|
options,
|
|
11
24
|
children,
|
|
12
25
|
dark,
|
|
26
|
+
resolve = false,
|
|
13
27
|
scoped = false,
|
|
14
28
|
invert = false,
|
|
15
29
|
noResponsiveFonts,
|
|
@@ -17,7 +31,7 @@ const InvertableThemeProvider: React.FC<InvertableThemeProviderProps> = ({
|
|
|
17
31
|
}) => {
|
|
18
32
|
let internalDarkTheme = {}
|
|
19
33
|
const contextInvertableTheme = useContext(InvertableThemeContext)
|
|
20
|
-
const clonedOptions =
|
|
34
|
+
const clonedOptions = cloneDeep(options ?? contextInvertableTheme.options ?? {})
|
|
21
35
|
|
|
22
36
|
clonedOptions.palette = clonedOptions.palette ?? {}
|
|
23
37
|
|
|
@@ -33,12 +47,14 @@ const InvertableThemeProvider: React.FC<InvertableThemeProviderProps> = ({
|
|
|
33
47
|
internalDarkTheme = darkTheme
|
|
34
48
|
}
|
|
35
49
|
|
|
36
|
-
let
|
|
50
|
+
let themeOptions = merge(clonedOptions, internalDarkTheme)
|
|
37
51
|
|
|
38
|
-
if (
|
|
39
|
-
|
|
52
|
+
if (resolve) {
|
|
53
|
+
themeOptions = resolveThemeColors(themeOptions)
|
|
40
54
|
}
|
|
41
55
|
|
|
56
|
+
const theme: Theme = noResponsiveFonts ? createTheme(themeOptions) : responsiveFontSizes(createTheme(themeOptions))
|
|
57
|
+
|
|
42
58
|
return scoped ? (
|
|
43
59
|
<ScopedCssBaseline>
|
|
44
60
|
<InvertableThemeContext.Provider value={{ options: clonedOptions }}>
|
|
@@ -51,5 +67,3 @@ const InvertableThemeProvider: React.FC<InvertableThemeProviderProps> = ({
|
|
|
51
67
|
</InvertableThemeContext.Provider>
|
|
52
68
|
)
|
|
53
69
|
}
|
|
54
|
-
|
|
55
|
-
export { InvertableThemeProvider }
|
|
@@ -1,5 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
export { InvertableThemeProvider }
|
|
5
|
-
export type { InvertableThemeProviderProps }
|
|
1
|
+
export * from './InvertableThemeProvider'
|
|
2
|
+
export * from './InvertableThemeProviderProps'
|
|
@@ -6,7 +6,19 @@ export const useLocalStorage = <T>(key: string, defaultValue: T): [T, (value: T)
|
|
|
6
6
|
const [storedValue, setStoredValue] = useState<T>(() => {
|
|
7
7
|
try {
|
|
8
8
|
const item = getLocalStorageObject<T>(key)
|
|
9
|
-
|
|
9
|
+
if (typeof defaultValue === 'boolean') {
|
|
10
|
+
if (typeof item === 'boolean') {
|
|
11
|
+
return item
|
|
12
|
+
} else {
|
|
13
|
+
return defaultValue
|
|
14
|
+
}
|
|
15
|
+
} else if (Array.isArray(item)) {
|
|
16
|
+
return item
|
|
17
|
+
} else if (Object.keys(item).length) {
|
|
18
|
+
return item
|
|
19
|
+
} else {
|
|
20
|
+
return defaultValue
|
|
21
|
+
}
|
|
10
22
|
} catch (ex) {
|
|
11
23
|
//Error is already logged
|
|
12
24
|
return defaultValue
|
|
Binary file
|