react-native-unistyles 2.0.0-rc.1 → 2.0.0-rc.2
Sign up to get free protection for your applications and to get access to all the features.
- package/lib/commonjs/core/UnistyleRegistry.js +15 -25
- package/lib/commonjs/core/UnistyleRegistry.js.map +1 -1
- package/lib/commonjs/core/UnistylesModule.js +187 -2
- package/lib/commonjs/core/UnistylesModule.js.map +1 -1
- package/lib/commonjs/core/UnistylesModule.native.js +9 -0
- package/lib/commonjs/core/UnistylesModule.native.js.map +1 -0
- package/lib/commonjs/hooks/useCSS.js +36 -1
- package/lib/commonjs/hooks/useCSS.js.map +1 -1
- package/lib/commonjs/hooks/useCSS.native.js +9 -0
- package/lib/commonjs/hooks/useCSS.native.js.map +1 -0
- package/lib/commonjs/normalizer/normalizer.js +1 -2
- package/lib/commonjs/normalizer/normalizer.js.map +1 -1
- package/lib/commonjs/useStyles.js +1 -2
- package/lib/commonjs/useStyles.js.map +1 -1
- package/lib/commonjs/utils/breakpoints.js +2 -11
- package/lib/commonjs/utils/breakpoints.js.map +1 -1
- package/lib/commonjs/utils/cssMediaQuery.js +3 -9
- package/lib/commonjs/utils/cssMediaQuery.js.map +1 -1
- package/lib/commonjs/utils/mq.js +12 -36
- package/lib/commonjs/utils/mq.js.map +1 -1
- package/lib/commonjs/utils/mqParser.js +1 -2
- package/lib/commonjs/utils/mqParser.js.map +1 -1
- package/lib/commonjs/utils/styles.js +34 -39
- package/lib/commonjs/utils/styles.js.map +1 -1
- package/lib/module/core/UnistyleRegistry.js +15 -25
- package/lib/module/core/UnistyleRegistry.js.map +1 -1
- package/lib/module/core/UnistylesModule.js +186 -2
- package/lib/module/core/UnistylesModule.js.map +1 -1
- package/lib/module/core/UnistylesModule.native.js +3 -0
- package/lib/module/core/UnistylesModule.native.js.map +1 -0
- package/lib/module/hooks/useCSS.js +36 -1
- package/lib/module/hooks/useCSS.js.map +1 -1
- package/lib/module/hooks/useCSS.native.js +2 -0
- package/lib/module/hooks/useCSS.native.js.map +1 -0
- package/lib/module/normalizer/normalizer.js +1 -2
- package/lib/module/normalizer/normalizer.js.map +1 -1
- package/lib/module/useStyles.js +1 -2
- package/lib/module/useStyles.js.map +1 -1
- package/lib/module/utils/breakpoints.js +2 -11
- package/lib/module/utils/breakpoints.js.map +1 -1
- package/lib/module/utils/cssMediaQuery.js +3 -9
- package/lib/module/utils/cssMediaQuery.js.map +1 -1
- package/lib/module/utils/mq.js +12 -36
- package/lib/module/utils/mq.js.map +1 -1
- package/lib/module/utils/mqParser.js +1 -2
- package/lib/module/utils/mqParser.js.map +1 -1
- package/lib/module/utils/styles.js +34 -39
- package/lib/module/utils/styles.js.map +1 -1
- package/lib/typescript/src/core/UnistylesModule.d.ts +17 -4
- package/lib/typescript/src/core/UnistylesModule.d.ts.map +1 -1
- package/lib/typescript/src/core/UnistylesModule.native.d.ts +6 -0
- package/lib/typescript/src/core/UnistylesModule.native.d.ts.map +1 -0
- package/lib/typescript/src/hooks/useCSS.d.ts +1 -1
- package/lib/typescript/src/hooks/useCSS.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useCSS.native.d.ts +3 -0
- package/lib/typescript/src/hooks/useCSS.native.d.ts.map +1 -0
- package/package.json +6 -8
- package/src/core/UnistylesModule.native.ts +7 -0
- package/src/core/UnistylesModule.ts +224 -4
- package/src/hooks/useCSS.native.ts +3 -0
- package/src/hooks/useCSS.ts +49 -1
- package/lib/commonjs/core/UnistylesModule.web.js +0 -199
- package/lib/commonjs/core/UnistylesModule.web.js.map +0 -1
- package/lib/commonjs/hooks/useCSS.web.js +0 -46
- package/lib/commonjs/hooks/useCSS.web.js.map +0 -1
- package/lib/module/core/UnistylesModule.web.js +0 -192
- package/lib/module/core/UnistylesModule.web.js.map +0 -1
- package/lib/module/hooks/useCSS.web.js +0 -39
- package/lib/module/hooks/useCSS.web.js.map +0 -1
- package/lib/typescript/src/core/UnistylesModule.web.d.ts +0 -19
- package/lib/typescript/src/core/UnistylesModule.web.d.ts.map +0 -1
- package/lib/typescript/src/hooks/useCSS.web.d.ts +0 -3
- package/lib/typescript/src/hooks/useCSS.web.d.ts.map +0 -1
- package/src/core/UnistylesModule.web.ts +0 -227
- package/src/hooks/useCSS.web.ts +0 -51
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["IS_UNISTYLES_REGEX","UNISTYLES_WIDTH_REGEX","UNISTYLES_HEIGHT_REGEX","parseMq","mq","width","fromW","toW","exec","height","fromH","toH","from","Number","to","undefined","exports","isUnistylesMq","test","isValidMq","parsedMq","isWithinTheWidthAndHeight","screenSize","isWithinTheWidth","isWithinTheHeight","screenWidth","screenHeight","getKeyForUnistylesMediaQuery","mediaQueries","find","
|
1
|
+
{"version":3,"names":["IS_UNISTYLES_REGEX","UNISTYLES_WIDTH_REGEX","UNISTYLES_HEIGHT_REGEX","parseMq","mq","width","fromW","toW","exec","height","fromH","toH","from","Number","to","undefined","exports","isUnistylesMq","test","isValidMq","parsedMq","isWithinTheWidthAndHeight","screenSize","isWithinTheWidth","isWithinTheHeight","screenWidth","screenHeight","getKeyForUnistylesMediaQuery","mediaQueries","find","key","at"],"sourceRoot":"../../../src","sources":["utils/mqParser.ts"],"mappings":"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"}
|
@@ -18,51 +18,46 @@ const isPlatformColor = value => {
|
|
18
18
|
return _common.isAndroid && 'resource_paths' in value && typeof value.resource_paths === 'object';
|
19
19
|
};
|
20
20
|
exports.isPlatformColor = isPlatformColor;
|
21
|
-
const parseStyle =
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
if (key === 'shadowOffset' || key === 'textShadowOffset') {
|
28
|
-
acc[key] = parseStyle(value, variant);
|
29
|
-
return acc;
|
30
|
-
}
|
21
|
+
const parseStyle = (style, variant = {}, parseMediaQueries = true) => Object.entries(style || {}).reduce((acc, [key, value]) => {
|
22
|
+
// nested objects
|
23
|
+
if (key === 'shadowOffset' || key === 'textShadowOffset') {
|
24
|
+
acc[key] = parseStyle(value, variant);
|
25
|
+
return acc;
|
26
|
+
}
|
31
27
|
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
28
|
+
// transforms
|
29
|
+
if (key === 'transform' && Array.isArray(value)) {
|
30
|
+
acc[key] = value.map(value => parseStyle(value, variant));
|
31
|
+
return acc;
|
32
|
+
}
|
37
33
|
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
34
|
+
// values or platform colors
|
35
|
+
if (typeof value !== 'object' || isPlatformColor(value)) {
|
36
|
+
acc[key] = value;
|
37
|
+
return acc;
|
38
|
+
}
|
39
|
+
if (key === 'variants') {
|
40
|
+
return {
|
41
|
+
...acc,
|
42
|
+
...Object.keys(value).reduce((acc, key) => ({
|
45
43
|
...acc,
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
};
|
52
|
-
}
|
44
|
+
// this will parse the styles of the selected variant (or default if it is undefined), if selected variant has no styles then it will fallback to default styles
|
45
|
+
...parseStyle(value[key][variant[key] || 'default'] ?? value[key].default ?? {})
|
46
|
+
}), {})
|
47
|
+
};
|
48
|
+
}
|
53
49
|
|
54
|
-
|
55
|
-
|
56
|
-
return {
|
57
|
-
...acc,
|
58
|
-
[key]: value
|
59
|
-
};
|
60
|
-
}
|
50
|
+
// don't parse media queries and breakpoints
|
51
|
+
if (!parseMediaQueries) {
|
61
52
|
return {
|
62
53
|
...acc,
|
63
|
-
[key]:
|
54
|
+
[key]: value
|
64
55
|
};
|
65
|
-
}
|
66
|
-
|
56
|
+
}
|
57
|
+
return {
|
58
|
+
...acc,
|
59
|
+
[key]: (0, _breakpoints.getValueForBreakpoint)(value)
|
60
|
+
};
|
61
|
+
}, {});
|
67
62
|
exports.parseStyle = parseStyle;
|
68
63
|
//# sourceMappingURL=styles.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_breakpoints","require","_common","_withPlugins","proxifyFunction","key","fn","variant","Proxy","apply","target","thisArg","argumentsList","withPlugins","parseStyle","exports","isPlatformColor","value","isIOS","semantic","isAndroid","resource_paths","style","
|
1
|
+
{"version":3,"names":["_breakpoints","require","_common","_withPlugins","proxifyFunction","key","fn","variant","Proxy","apply","target","thisArg","argumentsList","withPlugins","parseStyle","exports","isPlatformColor","value","isIOS","semantic","isAndroid","resource_paths","style","parseMediaQueries","Object","entries","reduce","acc","Array","isArray","map","keys","default","getValueForBreakpoint"],"sourceRoot":"../../../src","sources":["utils/styles.ts"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AAEO,MAAMG,eAAe,GAAGA,CAC3BC,GAAW,EACXC,EAAY,EACZC,OAA0C,KAC/B,IAAIC,KAAK,CAACF,EAAE,EAAE;EACzBG,KAAK,EAAEA,CAACC,MAAM,EAAEC,OAAO,EAAEC,aAAa,KAAK,IAAAC,wBAAW,EAACR,GAAG,EAAES,UAAU,CAACJ,MAAM,CAACD,KAAK,CAACE,OAAO,EAAEC,aAAa,CAAC,EAAEL,OAAO,CAAC;AACzH,CAAC,CAAC;AAAAQ,OAAA,CAAAX,eAAA,GAAAA,eAAA;AAEK,MAAMY,eAAe,GAAkBC,KAAQ,IAAc;EAChE,IAAIC,aAAK,EAAE;IACP,OAAO,UAAU,IAAID,KAAK,IAAI,OAAOA,KAAK,CAACE,QAAQ,KAAK,QAAQ;EACpE;EAEA,OAAOC,iBAAS,IAAI,gBAAgB,IAAIH,KAAK,IAAI,OAAOA,KAAK,CAACI,cAAc,KAAK,QAAQ;AAC7F,CAAC;AAAAN,OAAA,CAAAC,eAAA,GAAAA,eAAA;AAEM,MAAMF,UAAU,GAAGA,CACtBQ,KAAQ,EACRf,OAAyC,GAAG,CAAC,CAAC,EAC9CgB,iBAAiB,GAAG,IAAI,KACpBC,MAAM,CACTC,OAAO,CAACH,KAAK,IAAI,CAAC,CAAC,CAAC,CACpBI,MAAM,CAAC,CAACC,GAAG,EAAE,CAACtB,GAAG,EAAEY,KAAK,CAAC,KAAK;EAC3B;EACA,IAAIZ,GAAG,KAAK,cAAc,IAAIA,GAAG,KAAM,kBAAkB,EAAE;IACvDsB,GAAG,CAACtB,GAAG,CAAC,GAAGS,UAAU,CAACG,KAAK,EAAEV,OAAO,CAAC;IAErC,OAAOoB,GAAG;EACd;;EAEA;EACA,IAAItB,GAAG,KAAK,WAAW,IAAIuB,KAAK,CAACC,OAAO,CAACZ,KAAK,CAAC,EAAE;IAC7CU,GAAG,CAACtB,GAAG,CAAC,GAAGY,KAAK,CAACa,GAAG,CAACb,KAAK,IAAIH,UAAU,CAACG,KAAK,EAAEV,OAAO,CAAC,CAAC;IAEzD,OAAOoB,GAAG;EACd;;EAEA;EACA,IAAI,OAAOV,KAAK,KAAK,QAAQ,IAAID,eAAe,CAACC,KAAK,CAAC,EAAE;IACrDU,GAAG,CAACtB,GAAG,CAAY,GAAGY,KAAK;IAE3B,OAAOU,GAAG;EACd;EAEA,IAAItB,GAAG,KAAK,UAAU,EAAE;IACpB,OAAO;MACH,GAAGsB,GAAG;MACN,GAAIH,MAAM,CACLO,IAAI,CAACd,KAAK,CAAC,CACXS,MAAM,CAAC,CAACC,GAAG,EAAEtB,GAAG,MAAM;QACnB,GAAGsB,GAAG;QACN;QACA,GAAGb,UAAU,CAAEG,KAAK,CAAEZ,GAAG,CAAC,CAACE,OAAO,CAACF,GAAG,CAAyB,IAAI,SAAS,CAAC,IAAKY,KAAK,CAAEZ,GAAG,CAAC,CAAC2B,OAAO,IAAI,CAAC,CAAC;MAC/G,CAAC,CAAC,EAAE,CAAC,CAAC;IACd,CAAC;EACL;;EAEA;EACA,IAAI,CAACT,iBAAiB,EAAE;IACpB,OAAO;MACH,GAAGI,GAAG;MACN,CAACtB,GAAG,GAAGY;IACX,CAAC;EACL;EAEA,OAAO;IACH,GAAGU,GAAG;IACN,CAACtB,GAAG,GAAG,IAAA4B,kCAAqB,EAAChB,KAAgC;EACjE,CAAC;AACL,CAAC,EAAE,CAAC,CAAM,CAAC;AAAAF,OAAA,CAAAD,UAAA,GAAAA,UAAA"}
|
@@ -61,35 +61,25 @@ export class UnistyleRegistry {
|
|
61
61
|
}
|
62
62
|
throw new Error(UnistylesError.ThemeNotSelected);
|
63
63
|
};
|
64
|
-
addPlugin = (
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
})) {
|
77
|
-
throw new Error(UnistylesError.DuplicatePluginName);
|
78
|
-
}
|
79
|
-
_this.plugins = [plugin].concat(_this.plugins);
|
80
|
-
_this.unistylesBridge.addPlugin(plugin.name, notify);
|
81
|
-
};
|
82
|
-
})();
|
64
|
+
addPlugin = (plugin, notify = true) => {
|
65
|
+
if (plugin.name.startsWith('__unistyles')) {
|
66
|
+
throw new Error(UnistylesError.InvalidPluginName);
|
67
|
+
}
|
68
|
+
if (this.plugins.some(({
|
69
|
+
name
|
70
|
+
}) => name === plugin.name)) {
|
71
|
+
throw new Error(UnistylesError.DuplicatePluginName);
|
72
|
+
}
|
73
|
+
this.plugins = [plugin].concat(this.plugins);
|
74
|
+
this.unistylesBridge.addPlugin(plugin.name, notify);
|
75
|
+
};
|
83
76
|
removePlugin = plugin => {
|
84
77
|
if (plugin.name.startsWith('__unistyles')) {
|
85
78
|
throw new Error(UnistylesError.CantRemoveInternalPlugin);
|
86
79
|
}
|
87
|
-
this.plugins = this.plugins.filter(
|
88
|
-
|
89
|
-
|
90
|
-
} = _ref2;
|
91
|
-
return name !== plugin.name;
|
92
|
-
});
|
80
|
+
this.plugins = this.plugins.filter(({
|
81
|
+
name
|
82
|
+
}) => name !== plugin.name);
|
93
83
|
this.unistylesBridge.removePlugin(plugin.name);
|
94
84
|
};
|
95
85
|
hasTheme = name => name in this.themes;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["isWeb","UnistylesError","cssMediaQueriesPlugin","normalizeWebStylesPlugin","UnistyleRegistry","config","plugins","themeNames","themes","breakpoints","sortedBreakpointPairs","constructor","unistylesBridge","addThemes","keys","Object","addBreakpoints","addConfig","useBreakpoints","adaptiveThemes","useAdaptiveThemes","forEach","plugin","addPlugin","initialTheme","useTheme","experimentalCSSMediaQueries","concat","name","getTheme","forName","length","hasTheme","themeName","Error","ThemeNotFound","ThemeNotSelected","
|
1
|
+
{"version":3,"names":["isWeb","UnistylesError","cssMediaQueriesPlugin","normalizeWebStylesPlugin","UnistyleRegistry","config","plugins","themeNames","themes","breakpoints","sortedBreakpointPairs","constructor","unistylesBridge","addThemes","keys","Object","addBreakpoints","addConfig","useBreakpoints","adaptiveThemes","useAdaptiveThemes","forEach","plugin","addPlugin","initialTheme","useTheme","experimentalCSSMediaQueries","concat","name","getTheme","forName","length","hasTheme","themeName","Error","ThemeNotFound","ThemeNotSelected","notify","startsWith","InvalidPluginName","some","DuplicatePluginName","removePlugin","CantRemoveInternalPlugin","filter"],"sourceRoot":"../../../src","sources":["core/UnistyleRegistry.ts"],"mappings":"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"}
|
@@ -1,3 +1,187 @@
|
|
1
|
-
import { NativeModules } from 'react-native';
|
2
|
-
|
1
|
+
import { NativeEventEmitter, NativeModules } from 'react-native';
|
2
|
+
import { normalizeWebStylesPlugin } from '../plugins';
|
3
|
+
import { isServer } from '../common';
|
4
|
+
export class UnistylesBridgeWeb {
|
5
|
+
#timerRef = undefined;
|
6
|
+
#hasAdaptiveThemes = false;
|
7
|
+
#supportsAutomaticColorScheme = false;
|
8
|
+
#screenWidth = isServer ? undefined : window.innerWidth;
|
9
|
+
#screenHeight = isServer ? undefined : window.innerHeight;
|
10
|
+
#themes = [];
|
11
|
+
#breakpoints = {};
|
12
|
+
#colorScheme = this.getPreferredColorScheme();
|
13
|
+
#themeName = '';
|
14
|
+
#enabledPlugins = [normalizeWebStylesPlugin.name];
|
15
|
+
#unistylesEvents = new NativeEventEmitter(NativeModules.Unistyles);
|
16
|
+
#sortedBreakpointPairs = [];
|
17
|
+
#breakpoint = '';
|
18
|
+
constructor() {
|
19
|
+
if (!isServer) {
|
20
|
+
this.setupListeners();
|
21
|
+
this.#screenWidth = window.innerWidth;
|
22
|
+
this.#screenHeight = window.innerHeight;
|
23
|
+
}
|
24
|
+
}
|
25
|
+
install() {
|
26
|
+
// @ts-ignore
|
27
|
+
// eslint-disable-next-line no-undef
|
28
|
+
globalThis.__UNISTYLES__ = new Proxy({}, {
|
29
|
+
get: (_target, prop) => {
|
30
|
+
switch (prop) {
|
31
|
+
case 'themeName':
|
32
|
+
return this.getTheme();
|
33
|
+
case 'screenWidth':
|
34
|
+
return this.#screenWidth;
|
35
|
+
case 'screenHeight':
|
36
|
+
return this.#screenHeight;
|
37
|
+
case 'breakpoint':
|
38
|
+
return this.#breakpoint || undefined;
|
39
|
+
case 'breakpoints':
|
40
|
+
return this.#breakpoints;
|
41
|
+
case 'hasAdaptiveThemes':
|
42
|
+
return this.#hasAdaptiveThemes;
|
43
|
+
case 'sortedBreakpointPairs':
|
44
|
+
return this.#sortedBreakpointPairs;
|
45
|
+
case 'enabledPlugins':
|
46
|
+
return this.#enabledPlugins;
|
47
|
+
case 'colorScheme':
|
48
|
+
return this.#colorScheme;
|
49
|
+
case 'useTheme':
|
50
|
+
return themeName => this.useTheme(themeName);
|
51
|
+
case 'useBreakpoints':
|
52
|
+
return breakpoints => this.useBreakpoints(breakpoints);
|
53
|
+
case 'useAdaptiveThemes':
|
54
|
+
return enable => this.useAdaptiveThemes(enable);
|
55
|
+
case 'addPlugin':
|
56
|
+
return (pluginName, notify) => this.addPlugin(pluginName, notify);
|
57
|
+
case 'removePlugin':
|
58
|
+
return pluginName => this.removePlugin(pluginName);
|
59
|
+
default:
|
60
|
+
return Reflect.get(this, prop);
|
61
|
+
}
|
62
|
+
},
|
63
|
+
set: (target, prop, newValue, receiver) => {
|
64
|
+
switch (prop) {
|
65
|
+
case 'themes':
|
66
|
+
{
|
67
|
+
this.#themes = newValue;
|
68
|
+
this.#supportsAutomaticColorScheme = newValue.includes('light') && newValue.includes('dark');
|
69
|
+
return true;
|
70
|
+
}
|
71
|
+
case 'themeName':
|
72
|
+
{
|
73
|
+
this.#themeName = newValue;
|
74
|
+
this.emitThemeChange();
|
75
|
+
return true;
|
76
|
+
}
|
77
|
+
default:
|
78
|
+
return Reflect.set(target, prop, newValue, receiver);
|
79
|
+
}
|
80
|
+
}
|
81
|
+
});
|
82
|
+
return true;
|
83
|
+
}
|
84
|
+
useTheme(themeName) {
|
85
|
+
this.#themeName = themeName;
|
86
|
+
this.emitThemeChange();
|
87
|
+
}
|
88
|
+
useBreakpoints(breakpoints) {
|
89
|
+
this.#breakpoints = breakpoints;
|
90
|
+
this.#sortedBreakpointPairs = Object.entries(breakpoints).sort(([, a], [, b]) => (a ?? 0) - (b ?? 0));
|
91
|
+
if (!isServer) {
|
92
|
+
this.#breakpoint = this.getBreakpointFromScreenWidth(this.#screenWidth);
|
93
|
+
}
|
94
|
+
}
|
95
|
+
useAdaptiveThemes(enable) {
|
96
|
+
this.#hasAdaptiveThemes = enable;
|
97
|
+
if (!this.#hasAdaptiveThemes || !this.#supportsAutomaticColorScheme) {
|
98
|
+
return;
|
99
|
+
}
|
100
|
+
if (this.#themeName !== this.#colorScheme) {
|
101
|
+
this.#themeName = this.#colorScheme;
|
102
|
+
this.emitThemeChange();
|
103
|
+
}
|
104
|
+
}
|
105
|
+
addPlugin(pluginName, notify) {
|
106
|
+
this.#enabledPlugins = [pluginName].concat(this.#enabledPlugins);
|
107
|
+
if (notify) {
|
108
|
+
this.emitPluginChange();
|
109
|
+
}
|
110
|
+
}
|
111
|
+
removePlugin(pluginName) {
|
112
|
+
this.#enabledPlugins = this.#enabledPlugins.filter(name => name !== pluginName);
|
113
|
+
this.emitPluginChange();
|
114
|
+
}
|
115
|
+
getTheme() {
|
116
|
+
if (this.#themes.length === 1) {
|
117
|
+
return this.#themes.at(0);
|
118
|
+
}
|
119
|
+
return this.#themeName;
|
120
|
+
}
|
121
|
+
setupListeners() {
|
122
|
+
window.addEventListener('resize', () => {
|
123
|
+
clearTimeout(this.#timerRef);
|
124
|
+
this.#timerRef = setTimeout(() => {
|
125
|
+
this.#screenWidth = window.innerWidth;
|
126
|
+
this.#screenHeight = window.innerHeight;
|
127
|
+
this.#breakpoint = this.getBreakpointFromScreenWidth(this.#screenWidth);
|
128
|
+
this.emitLayoutChange();
|
129
|
+
}, 100);
|
130
|
+
});
|
131
|
+
window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', event => {
|
132
|
+
this.#colorScheme = event.matches ? 'dark' : 'light';
|
133
|
+
if (!this.#supportsAutomaticColorScheme || !this.#hasAdaptiveThemes) {
|
134
|
+
return;
|
135
|
+
}
|
136
|
+
if (this.#colorScheme !== this.#themeName) {
|
137
|
+
this.#themeName = this.#colorScheme;
|
138
|
+
this.emitThemeChange();
|
139
|
+
}
|
140
|
+
});
|
141
|
+
}
|
142
|
+
getBreakpointFromScreenWidth(width) {
|
143
|
+
const breakpoint = this.#sortedBreakpointPairs.find(([, value], index, otherBreakpoints) => {
|
144
|
+
const minVal = value;
|
145
|
+
const maxVal = otherBreakpoints[index + 1]?.[1];
|
146
|
+
if (!maxVal) {
|
147
|
+
return true;
|
148
|
+
}
|
149
|
+
return width >= minVal && width < maxVal;
|
150
|
+
});
|
151
|
+
return breakpoint?.at(0);
|
152
|
+
}
|
153
|
+
getPreferredColorScheme() {
|
154
|
+
if (!isServer && window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
155
|
+
return 'dark';
|
156
|
+
}
|
157
|
+
return 'light';
|
158
|
+
}
|
159
|
+
emitPluginChange() {
|
160
|
+
this.#unistylesEvents.emit('__unistylesOnChange', {
|
161
|
+
type: 'plugin'
|
162
|
+
});
|
163
|
+
}
|
164
|
+
emitThemeChange() {
|
165
|
+
this.#unistylesEvents.emit('__unistylesOnChange', {
|
166
|
+
type: 'theme',
|
167
|
+
payload: {
|
168
|
+
themeName: this.#themeName
|
169
|
+
}
|
170
|
+
});
|
171
|
+
}
|
172
|
+
emitLayoutChange() {
|
173
|
+
this.#unistylesEvents.emit('__unistylesOnChange', {
|
174
|
+
type: 'layout',
|
175
|
+
payload: {
|
176
|
+
breakpoint: this.#breakpoint,
|
177
|
+
orientation: this.#screenWidth > this.#screenHeight ? 'landscape' : 'portrait',
|
178
|
+
screen: {
|
179
|
+
width: this.#screenWidth,
|
180
|
+
height: this.#screenHeight
|
181
|
+
}
|
182
|
+
}
|
183
|
+
});
|
184
|
+
}
|
185
|
+
}
|
186
|
+
export const UnistylesModule = new UnistylesBridgeWeb();
|
3
187
|
//# sourceMappingURL=UnistylesModule.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["NativeModules","
|
1
|
+
{"version":3,"names":["NativeEventEmitter","NativeModules","normalizeWebStylesPlugin","isServer","UnistylesBridgeWeb","timerRef","undefined","hasAdaptiveThemes","supportsAutomaticColorScheme","screenWidth","window","innerWidth","screenHeight","innerHeight","themes","breakpoints","colorScheme","getPreferredColorScheme","themeName","enabledPlugins","name","unistylesEvents","Unistyles","sortedBreakpointPairs","breakpoint","constructor","setupListeners","install","globalThis","__UNISTYLES__","Proxy","get","_target","prop","getTheme","useTheme","useBreakpoints","enable","useAdaptiveThemes","pluginName","notify","addPlugin","removePlugin","Reflect","set","target","newValue","receiver","includes","emitThemeChange","Object","entries","sort","a","b","getBreakpointFromScreenWidth","concat","emitPluginChange","filter","length","at","addEventListener","clearTimeout","setTimeout","emitLayoutChange","matchMedia","event","matches","width","find","value","index","otherBreakpoints","minVal","maxVal","emit","type","payload","orientation","screen","height","UnistylesModule"],"sourceRoot":"../../../src","sources":["core/UnistylesModule.ts"],"mappings":"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"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["NativeModules","UnistylesModule","Unistyles"],"sourceRoot":"../../../src","sources":["core/UnistylesModule.native.ts"],"mappings":"AAAA,SAASA,aAAa,QAAQ,cAAc;AAM5C,OAAO,MAAMC,eAAe,GAAGD,aAAa,EAAEE,SAAkC"}
|
@@ -1,2 +1,37 @@
|
|
1
|
-
|
1
|
+
import { useInsertionEffect, useRef } from 'react';
|
2
|
+
import { unistyles } from '../core';
|
3
|
+
import { generateReactNativeWebId } from '../utils';
|
4
|
+
export const useCSS = stylesheet => {
|
5
|
+
const insertedIds = useRef([]);
|
6
|
+
useInsertionEffect(() => {
|
7
|
+
if (!unistyles.registry.config.experimentalCSSMediaQueries) {
|
8
|
+
return;
|
9
|
+
}
|
10
|
+
Object.entries(stylesheet).forEach(([_key, value]) => {
|
11
|
+
Object.entries(value).forEach(([prop, val]) => {
|
12
|
+
if (!val.toString().includes('@media')) {
|
13
|
+
return;
|
14
|
+
}
|
15
|
+
const id = generateReactNativeWebId(prop, '""');
|
16
|
+
if (insertedIds.current.includes(id)) {
|
17
|
+
return;
|
18
|
+
}
|
19
|
+
const style = document.createElement('style');
|
20
|
+
style.id = id;
|
21
|
+
style.innerHTML = val;
|
22
|
+
document.head.appendChild(style);
|
23
|
+
insertedIds.current = [...insertedIds.current, id];
|
24
|
+
});
|
25
|
+
});
|
26
|
+
return () => {
|
27
|
+
insertedIds.current.forEach(id => {
|
28
|
+
const style = document.getElementById(id);
|
29
|
+
if (style) {
|
30
|
+
style.remove();
|
31
|
+
}
|
32
|
+
});
|
33
|
+
insertedIds.current = [];
|
34
|
+
};
|
35
|
+
}, [stylesheet]);
|
36
|
+
};
|
2
37
|
//# sourceMappingURL=useCSS.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["useCSS","
|
1
|
+
{"version":3,"names":["useInsertionEffect","useRef","unistyles","generateReactNativeWebId","useCSS","stylesheet","insertedIds","registry","config","experimentalCSSMediaQueries","Object","entries","forEach","_key","value","prop","val","toString","includes","id","current","style","document","createElement","innerHTML","head","appendChild","getElementById","remove"],"sourceRoot":"../../../src","sources":["hooks/useCSS.ts"],"mappings":"AAAA,SAASA,kBAAkB,EAAEC,MAAM,QAAQ,OAAO;AAClD,SAASC,SAAS,QAAQ,SAAS;AAEnC,SAASC,wBAAwB,QAAQ,UAAU;AAEnD,OAAO,MAAMC,MAAM,GAAOC,UAAoC,IAAK;EAC/D,MAAMC,WAAW,GAAGL,MAAM,CAAgB,EAAE,CAAC;EAE7CD,kBAAkB,CAAC,MAAM;IACrB,IAAI,CAACE,SAAS,CAACK,QAAQ,CAACC,MAAM,CAACC,2BAA2B,EAAE;MACxD;IACJ;IAEAC,MAAM,CACDC,OAAO,CAACN,UAAU,CAAC,CACnBO,OAAO,CAAC,CAAC,CAACC,IAAI,EAAEC,KAAK,CAAC,KAAK;MACxBJ,MAAM,CAACC,OAAO,CAACG,KAAM,CAAC,CACjBF,OAAO,CAAC,CAAC,CAACG,IAAI,EAAEC,GAAG,CAAC,KAAK;QACtB,IAAI,CAACA,GAAG,CAACC,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,QAAQ,CAAC,EAAE;UACpC;QACJ;QAEA,MAAMC,EAAE,GAAGhB,wBAAwB,CAACY,IAAI,EAAE,IAAI,CAAC;QAE/C,IAAIT,WAAW,CAACc,OAAO,CAACF,QAAQ,CAACC,EAAE,CAAC,EAAE;UAClC;QACJ;QAEA,MAAME,KAAK,GAAGC,QAAQ,CAACC,aAAa,CAAC,OAAO,CAAC;QAE7CF,KAAK,CAACF,EAAE,GAAGA,EAAE;QACbE,KAAK,CAACG,SAAS,GAAGR,GAAG;QAErBM,QAAQ,CAACG,IAAI,CAACC,WAAW,CAACL,KAAK,CAAC;QAChCf,WAAW,CAACc,OAAO,GAAG,CAAC,GAAGd,WAAW,CAACc,OAAO,EAAED,EAAE,CAAC;MACtD,CAAC,CAAC;IACV,CAAC,CAAC;IAEN,OAAO,MAAM;MACTb,WAAW,CAACc,OAAO,CAACR,OAAO,CAACO,EAAE,IAAI;QAC9B,MAAME,KAAK,GAAGC,QAAQ,CAACK,cAAc,CAACR,EAAE,CAAC;QAEzC,IAAIE,KAAK,EAAE;UACPA,KAAK,CAACO,MAAM,CAAC,CAAC;QAClB;MACJ,CAAC,CAAC;MAEFtB,WAAW,CAACc,OAAO,GAAG,EAAE;IAC5B,CAAC;EACL,CAAC,EAAE,CAACf,UAAU,CAAC,CAAC;AACpB,CAAC"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["useCSS","_stylesheet"],"sourceRoot":"../../../src","sources":["hooks/useCSS.native.ts"],"mappings":"AAEA,OAAO,MAAMA,MAAM,GAAOC,WAAqC,IAAW,CAAC,CAAC"}
|
@@ -1,8 +1,7 @@
|
|
1
1
|
// based on react-native-web normalizer
|
2
2
|
// https://github.com/necolas/react-native-web
|
3
3
|
import normalizeColors from '@react-native/normalize-colors';
|
4
|
-
export const normalizeColor =
|
5
|
-
let opacity = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
|
4
|
+
export const normalizeColor = (color, opacity = 1) => {
|
6
5
|
// If the opacity is 1 there's no need to normalize the color
|
7
6
|
if (opacity === 1) {
|
8
7
|
return color;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["normalizeColors","normalizeColor","color","opacity","
|
1
|
+
{"version":3,"names":["normalizeColors","normalizeColor","color","opacity","integer","hex","toString","padStart","length","r","g","b","a","split","map","x","parseInt","filter","num","isNaN","normalizeNumericValue","value","normalizeTransform","key","includes","createTextShadowValue","style","textShadowColor","textShadowOffset","textShadowRadius","offsetX","width","offsetY","height","radius","createBoxShadowValue","shadowColor","shadowOffset","shadowOpacity","shadowRadius","createTransformValue","transforms","transform","Object","keys","undefined","join","Boolean","preprocessor"],"sourceRoot":"../../../src","sources":["normalizer/normalizer.ts"],"mappings":"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"}
|
package/lib/module/useStyles.js
CHANGED
@@ -18,8 +18,7 @@ export const useStyles = (stylesheet, variantsMap) => {
|
|
18
18
|
} = useUnistyles();
|
19
19
|
const variants = useVariants(variantsMap);
|
20
20
|
const parsedStyles = useMemo(() => typeof stylesheet === 'function' ? stylesheet(theme) : stylesheet, [theme, stylesheet, layout]);
|
21
|
-
const dynamicStyleSheet = useMemo(() => Object.entries(parsedStyles || {}).reduce((acc,
|
22
|
-
let [key, value] = _ref;
|
21
|
+
const dynamicStyleSheet = useMemo(() => Object.entries(parsedStyles || {}).reduce((acc, [key, value]) => {
|
23
22
|
if (typeof value === 'function') {
|
24
23
|
return {
|
25
24
|
...acc,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["useMemo","StyleSheet","parseStyle","proxifyFunction","withPlugins","useCSS","useUnistyles","useVariants","unistyles","isWeb","useStyles","stylesheet","variantsMap","theme","layout","plugins","variants","parsedStyles","dynamicStyleSheet","Object","entries","reduce","acc","
|
1
|
+
{"version":3,"names":["useMemo","StyleSheet","parseStyle","proxifyFunction","withPlugins","useCSS","useUnistyles","useVariants","unistyles","isWeb","useStyles","stylesheet","variantsMap","theme","layout","plugins","variants","parsedStyles","dynamicStyleSheet","Object","entries","reduce","acc","key","value","create","registry","config","experimentalCSSMediaQueries","breakpoint","styles"],"sourceRoot":"../../src","sources":["useStyles.ts"],"mappings":"AAAA,SAASA,OAAO,QAAQ,OAAO;AAC/B,SAASC,UAAU,QAAQ,cAAc;AACzC,SAASC,UAAU,EAAEC,eAAe,EAAEC,WAAW,QAAQ,SAAS;AAClE,SAASC,MAAM,EAAEC,YAAY,EAAEC,WAAW,QAAQ,SAAS;AAG3D,SAASC,SAAS,QAAQ,QAAQ;AAClC,SAASC,KAAK,QAAQ,UAAU;AAQhC;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,SAAS,GAAGA,CACrBC,UAAe,EACfC,WAAoD,KAC7B;EACvB,MAAM;IAAEC,KAAK;IAAEC,MAAM;IAAEC;EAAQ,CAAC,GAAGT,YAAY,CAAC,CAAC;EACjD,MAAMU,QAAQ,GAAGT,WAAW,CAACK,WAAW,CAAC;EACzC,MAAMK,YAAY,GAAGjB,OAAO,CAAC,MAAM,OAAOW,UAAU,KAAK,UAAU,GAC7DA,UAAU,CAACE,KAAK,CAAC,GACjBF,UAAU,EAAE,CAACE,KAAK,EAAEF,UAAU,EAAEG,MAAM,CAAC,CAAC;EAE9C,MAAMI,iBAAiB,GAAGlB,OAAO,CAAC,MAAMmB,MAAM,CACzCC,OAAO,CAACH,YAAY,IAAI,CAAC,CAAC,CAAC,CAC3BI,MAAM,CAAC,CAACC,GAAG,EAAE,CAACC,GAAG,EAAEC,KAAK,CAAC,KAAK;IAC3B,IAAI,OAAOA,KAAK,KAAK,UAAU,EAAE;MAC7B,OAAO;QACH,GAAGF,GAAG;QACN,CAACC,GAAG,GAAGpB,eAAe,CAACoB,GAAG,EAAEC,KAAK;MACrC,CAAC;IACL;IAEA,OAAOvB,UAAU,CAACwB,MAAM,CAAC;MACrB,GAAGH,GAAG;MACN,CAACC,GAAG,GAAGnB,WAAW,CAACmB,GAAG,EAAErB,UAAU,CAC9BsB,KAAK,EACLR,QAAQ,EACR,CAACP,KAAK,IAAI,CAACD,SAAS,CAACkB,QAAQ,CAACC,MAAM,CAACC,2BAA2B,CACpE;IACJ,CAAC,CAAC;EACN,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAACX,YAAY,EAAED,QAAQ,EAAED,OAAO,CAC5C,CAAC;EAEDV,MAAM,CAACa,iBAA8C,CAAC;EAEtD,OAAO;IACHL,KAAK;IACLgB,UAAU,EAAEf,MAAM,CAACe,UAAU;IAC7BC,MAAM,EAAEZ;EACZ,CAAC;AACL,CAAC"}
|
@@ -19,17 +19,8 @@ export const getValueForBreakpoint = value => {
|
|
19
19
|
return directBreakpoint;
|
20
20
|
}
|
21
21
|
const breakpointPairs = unistyles.registry.sortedBreakpointPairs;
|
22
|
-
const currentBreakpointIndex = breakpointPairs.findIndex(
|
23
|
-
|
24
|
-
return key === breakpoint;
|
25
|
-
});
|
26
|
-
const availableBreakpoints = breakpointPairs.filter((_ref2, index) => {
|
27
|
-
let [key] = _ref2;
|
28
|
-
return index < currentBreakpointIndex && key in value;
|
29
|
-
}).map(_ref3 => {
|
30
|
-
let [key] = _ref3;
|
31
|
-
return key;
|
32
|
-
});
|
22
|
+
const currentBreakpointIndex = breakpointPairs.findIndex(([key]) => key === breakpoint);
|
23
|
+
const availableBreakpoints = breakpointPairs.filter(([key], index) => index < currentBreakpointIndex && key in value).map(([key]) => key);
|
33
24
|
return value[availableBreakpoints[availableBreakpoints.length - 1]];
|
34
25
|
};
|
35
26
|
//# sourceMappingURL=breakpoints.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["unistyles","ScreenOrientation","isMobile","getKeyForUnistylesMediaQuery","getValueForBreakpoint","value","customMediaQueryKey","Object","entries","runtime","screen","hasBreakpoints","registry","sortedBreakpointPairs","length","Landscape","Portrait","orientation","breakpoint","undefined","directBreakpoint","breakpointPairs","currentBreakpointIndex","findIndex","
|
1
|
+
{"version":3,"names":["unistyles","ScreenOrientation","isMobile","getKeyForUnistylesMediaQuery","getValueForBreakpoint","value","customMediaQueryKey","Object","entries","runtime","screen","hasBreakpoints","registry","sortedBreakpointPairs","length","Landscape","Portrait","orientation","breakpoint","undefined","directBreakpoint","breakpointPairs","currentBreakpointIndex","findIndex","key","availableBreakpoints","filter","index","map"],"sourceRoot":"../../../src","sources":["utils/breakpoints.ts"],"mappings":"AAAA,SAASA,SAAS,QAAQ,SAAS;AAGnC,SAASC,iBAAiB,EAAEC,QAAQ,QAAQ,WAAW;AACvD,SAASC,4BAA4B,QAAQ,YAAY;AAEzD,OAAO,MAAMC,qBAAqB,GAAIC,KAA8B,IAAwB;EACxF,MAAMC,mBAAmB,GAAGH,4BAA4B,CACpDI,MAAM,CAACC,OAAO,CAACH,KAAK,CAAC,EACrBL,SAAS,CAACS,OAAO,CAACC,MACtB,CAAuB;EAEvB,IAAIJ,mBAAmB,EAAE;IACrB,OAAOD,KAAK,CAACC,mBAAmB,CAAC;EACrC;EAEA,MAAMK,cAAc,GAAGX,SAAS,CAACY,QAAQ,CAACC,qBAAqB,CAACC,MAAM,GAAG,CAAC;EAE1E,IAAI,CAACH,cAAc,IAAIT,QAAQ,KAAKD,iBAAiB,CAACc,SAAS,IAAIV,KAAK,IAAIJ,iBAAiB,CAACe,QAAQ,IAAIX,KAAK,CAAC,EAAE;IAC9G,OAAOA,KAAK,CAACL,SAAS,CAACS,OAAO,CAACQ,WAAW,CAAC;EAC/C;EAEA,MAAMC,UAAU,GAAGlB,SAAS,CAACS,OAAO,CAACS,UAAU;EAE/C,IAAI,CAACA,UAAU,EAAE;IACb,OAAOC,SAAS;EACpB;EAEA,MAAMC,gBAAgB,GAAGf,KAAK,CAACa,UAAU,CAAC;EAE1C,IAAIE,gBAAgB,IAAKF,UAAU,IAAIb,KAAM,EAAE;IAC3C,OAAOe,gBAAgB;EAC3B;EAEA,MAAMC,eAAe,GAAGrB,SAAS,CAACY,QAAQ,CAACC,qBAAqB;EAChE,MAAMS,sBAAsB,GAAGD,eAAe,CACzCE,SAAS,CAAC,CAAC,CAACC,GAAG,CAAC,KAAKA,GAAG,KAAKN,UAAU,CAAC;EAE7C,MAAMO,oBAAoB,GAAGJ,eAAe,CACvCK,MAAM,CAAC,CAAC,CAACF,GAAG,CAAC,EAAEG,KAAK,KAAKA,KAAK,GAAGL,sBAAsB,IAAIE,GAAG,IAAInB,KAAK,CAAC,CACxEuB,GAAG,CAAC,CAAC,CAACJ,GAAG,CAAC,KAAKA,GAAG,CAAC;EAExB,OAAOnB,KAAK,CAACoB,oBAAoB,CAACA,oBAAoB,CAACX,MAAM,GAAG,CAAC,CAAC,CAAwC;AAC9G,CAAC"}
|
@@ -2,11 +2,7 @@ import { normalizeColor } from '../normalizer';
|
|
2
2
|
import { isUnistylesMq, isValidMq, parseMq } from './mqParser';
|
3
3
|
import { generateReactNativeWebId } from './generateId';
|
4
4
|
export const createMediaQueryForStyles = (styles, runtime) => {
|
5
|
-
const withMediaQueries = Object.entries(styles).filter(
|
6
|
-
let [, value] = _ref;
|
7
|
-
return typeof value === 'object';
|
8
|
-
}).reduce((acc, _ref2) => {
|
9
|
-
let [prop, value] = _ref2;
|
5
|
+
const withMediaQueries = Object.entries(styles).filter(([, value]) => typeof value === 'object').reduce((acc, [prop, value]) => {
|
10
6
|
const objectKeys = Object.keys(value);
|
11
7
|
const mediaQueries = objectKeys.filter(key => isUnistylesMq(key));
|
12
8
|
const breakpoints = objectKeys.filter(key => runtime.breakpoints[key]);
|
@@ -47,8 +43,7 @@ const getMaxHeightMediaQuery = height => {
|
|
47
43
|
}
|
48
44
|
return `and (max-height: ${height.to}px)`;
|
49
45
|
};
|
50
|
-
const getMediaQueriesFromMQ = (prop, value, className) => Object.entries(value).reduce((acc,
|
51
|
-
let [key, value] = _ref3;
|
46
|
+
const getMediaQueriesFromMQ = (prop, value, className) => Object.entries(value).reduce((acc, [key, value]) => {
|
52
47
|
const result = parseMq(key);
|
53
48
|
if (!isValidMq(result)) {
|
54
49
|
return acc;
|
@@ -85,8 +80,7 @@ const getMediaQueriesFromMQ = (prop, value, className) => Object.entries(value).
|
|
85
80
|
}
|
86
81
|
return acc;
|
87
82
|
}, '');
|
88
|
-
const getBreakpointsStyles = (prop, value, runtime, className) => Object.entries(value).reduce((acc,
|
89
|
-
let [key, value] = _ref4;
|
83
|
+
const getBreakpointsStyles = (prop, value, runtime, className) => Object.entries(value).reduce((acc, [key, value]) => {
|
90
84
|
const breakpoint = runtime.breakpoints[key];
|
91
85
|
if (breakpoint === undefined) {
|
92
86
|
return acc;
|