react-native-unistyles 3.0.0-alpha.7 → 3.0.0-alpha.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (200) hide show
  1. package/lib/commonjs/specs/index.web.js +1 -1
  2. package/lib/commonjs/web/convert/boxShadow.js +77 -0
  3. package/lib/commonjs/web/convert/boxShadow.js.map +1 -0
  4. package/lib/commonjs/web/convert/breakpoint.js +25 -0
  5. package/lib/commonjs/web/convert/breakpoint.js.map +1 -0
  6. package/lib/commonjs/web/convert/index.js +76 -0
  7. package/lib/commonjs/web/convert/index.js.map +1 -0
  8. package/lib/commonjs/web/convert/module.d.js +2 -0
  9. package/lib/commonjs/web/convert/module.d.js.map +1 -0
  10. package/lib/commonjs/web/convert/shadow.js +68 -0
  11. package/lib/commonjs/web/convert/shadow.js.map +1 -0
  12. package/lib/commonjs/web/convert/style.js +89 -0
  13. package/lib/commonjs/web/convert/style.js.map +1 -0
  14. package/lib/commonjs/web/convert/textShadow.js +73 -0
  15. package/lib/commonjs/web/convert/textShadow.js.map +1 -0
  16. package/lib/commonjs/web/convert/transform.js +72 -0
  17. package/lib/commonjs/web/convert/transform.js.map +1 -0
  18. package/lib/commonjs/web/convert/types.js +9 -0
  19. package/lib/commonjs/web/convert/types.js.map +1 -0
  20. package/lib/commonjs/web/convert/utils.js +55 -0
  21. package/lib/commonjs/web/convert/utils.js.map +1 -0
  22. package/lib/commonjs/web/create.js +89 -0
  23. package/lib/commonjs/web/create.js.map +1 -0
  24. package/lib/commonjs/web/index.js +51 -0
  25. package/lib/commonjs/web/index.js.map +1 -0
  26. package/lib/commonjs/web/listener/index.js +13 -0
  27. package/lib/commonjs/web/listener/index.js.map +1 -0
  28. package/lib/commonjs/web/listener/listener.js +36 -0
  29. package/lib/commonjs/web/listener/listener.js.map +1 -0
  30. package/lib/commonjs/web/mock.js +37 -0
  31. package/lib/commonjs/web/mock.js.map +1 -0
  32. package/lib/commonjs/web/mq.js +23 -0
  33. package/lib/commonjs/web/mq.js.map +1 -0
  34. package/lib/commonjs/web/pseudo.js +11 -0
  35. package/lib/commonjs/web/pseudo.js.map +1 -0
  36. package/lib/commonjs/web/registry.js +37 -0
  37. package/lib/commonjs/web/registry.js.map +1 -0
  38. package/lib/commonjs/web/runtime.js +164 -0
  39. package/lib/commonjs/web/runtime.js.map +1 -0
  40. package/lib/commonjs/web/state.js +121 -0
  41. package/lib/commonjs/web/state.js.map +1 -0
  42. package/lib/commonjs/web/utils.js +78 -0
  43. package/lib/commonjs/web/utils.js.map +1 -0
  44. package/lib/commonjs/web/variants/getVariants.js +39 -0
  45. package/lib/commonjs/web/variants/getVariants.js.map +1 -0
  46. package/lib/commonjs/web/variants/index.js +28 -0
  47. package/lib/commonjs/web/variants/index.js.map +1 -0
  48. package/lib/commonjs/web/variants/useVariants.js +75 -0
  49. package/lib/commonjs/web/variants/useVariants.js.map +1 -0
  50. package/lib/module/specs/index.web.js +1 -1
  51. package/lib/module/specs/index.web.js.map +1 -1
  52. package/lib/module/web/convert/boxShadow.js +72 -0
  53. package/lib/module/web/convert/boxShadow.js.map +1 -0
  54. package/lib/module/web/convert/breakpoint.js +20 -0
  55. package/lib/module/web/convert/breakpoint.js.map +1 -0
  56. package/lib/module/web/convert/index.js +71 -0
  57. package/lib/module/web/convert/index.js.map +1 -0
  58. package/lib/module/web/convert/module.d.js +2 -0
  59. package/lib/module/web/convert/module.d.js.map +1 -0
  60. package/lib/module/web/convert/shadow.js +63 -0
  61. package/lib/module/web/convert/shadow.js.map +1 -0
  62. package/lib/module/web/convert/style.js +84 -0
  63. package/lib/module/web/convert/style.js.map +1 -0
  64. package/lib/module/web/convert/textShadow.js +68 -0
  65. package/lib/module/web/convert/textShadow.js.map +1 -0
  66. package/lib/module/web/convert/transform.js +67 -0
  67. package/lib/module/web/convert/transform.js.map +1 -0
  68. package/lib/module/web/convert/types.js +5 -0
  69. package/lib/module/web/convert/types.js.map +1 -0
  70. package/lib/module/web/convert/utils.js +43 -0
  71. package/lib/module/web/convert/utils.js.map +1 -0
  72. package/lib/module/web/create.js +84 -0
  73. package/lib/module/web/create.js.map +1 -0
  74. package/lib/module/web/index.js +24 -0
  75. package/lib/module/web/index.js.map +1 -0
  76. package/lib/module/web/listener/index.js +4 -0
  77. package/lib/module/web/listener/index.js.map +1 -0
  78. package/lib/module/web/listener/listener.js +31 -0
  79. package/lib/module/web/listener/listener.js.map +1 -0
  80. package/lib/module/web/mock.js +33 -0
  81. package/lib/module/web/mock.js.map +1 -0
  82. package/lib/module/web/mq.js +17 -0
  83. package/lib/module/web/mq.js.map +1 -0
  84. package/lib/module/web/pseudo.js +6 -0
  85. package/lib/module/web/pseudo.js.map +1 -0
  86. package/lib/module/web/registry.js +33 -0
  87. package/lib/module/web/registry.js.map +1 -0
  88. package/lib/module/web/runtime.js +160 -0
  89. package/lib/module/web/runtime.js.map +1 -0
  90. package/lib/module/web/state.js +117 -0
  91. package/lib/module/web/state.js.map +1 -0
  92. package/lib/module/web/utils.js +65 -0
  93. package/lib/module/web/utils.js.map +1 -0
  94. package/lib/module/web/variants/getVariants.js +34 -0
  95. package/lib/module/web/variants/getVariants.js.map +1 -0
  96. package/lib/module/web/variants/index.js +5 -0
  97. package/lib/module/web/variants/index.js.map +1 -0
  98. package/lib/module/web/variants/useVariants.js +70 -0
  99. package/lib/module/web/variants/useVariants.js.map +1 -0
  100. package/lib/typescript/src/specs/index.web.d.ts +1 -1
  101. package/lib/typescript/src/specs/index.web.d.ts.map +1 -1
  102. package/lib/typescript/src/types/stylesheet.d.ts +1 -1
  103. package/lib/typescript/src/types/stylesheet.d.ts.map +1 -1
  104. package/lib/typescript/src/web/convert/boxShadow.d.ts.map +1 -0
  105. package/lib/typescript/src/web/convert/breakpoint.d.ts.map +1 -0
  106. package/lib/typescript/{web → src/web}/convert/index.d.ts +1 -1
  107. package/lib/typescript/src/web/convert/index.d.ts.map +1 -0
  108. package/lib/typescript/src/web/convert/shadow.d.ts.map +1 -0
  109. package/lib/typescript/src/web/convert/style.d.ts.map +1 -0
  110. package/lib/typescript/src/web/convert/textShadow.d.ts.map +1 -0
  111. package/lib/typescript/src/web/convert/transform.d.ts.map +1 -0
  112. package/lib/typescript/{web → src/web}/convert/types.d.ts +1 -1
  113. package/lib/typescript/src/web/convert/types.d.ts.map +1 -0
  114. package/lib/typescript/src/web/convert/utils.d.ts.map +1 -0
  115. package/lib/typescript/{web → src/web}/create.d.ts +11 -11
  116. package/lib/typescript/{web → src/web}/create.d.ts.map +1 -1
  117. package/lib/typescript/{web → src/web}/index.d.ts +12 -12
  118. package/lib/typescript/{web → src/web}/index.d.ts.map +1 -1
  119. package/lib/typescript/src/web/listener/index.d.ts.map +1 -0
  120. package/lib/typescript/{web → src/web}/listener/listener.d.ts +1 -1
  121. package/lib/typescript/src/web/listener/listener.d.ts.map +1 -0
  122. package/lib/typescript/{web → src/web}/mock.d.ts +2 -2
  123. package/lib/typescript/src/web/mock.d.ts.map +1 -0
  124. package/lib/typescript/src/web/mq.d.ts.map +1 -0
  125. package/lib/typescript/src/web/pseudo.d.ts.map +1 -0
  126. package/lib/typescript/{web → src/web}/registry.d.ts +1 -1
  127. package/lib/typescript/src/web/registry.d.ts.map +1 -0
  128. package/lib/typescript/{web → src/web}/runtime.d.ts +6 -6
  129. package/lib/typescript/src/web/runtime.d.ts.map +1 -0
  130. package/lib/typescript/{web → src/web}/state.d.ts +4 -4
  131. package/lib/typescript/src/web/state.d.ts.map +1 -0
  132. package/lib/typescript/{web → src/web}/utils.d.ts +5 -3
  133. package/lib/typescript/src/web/utils.d.ts.map +1 -0
  134. package/lib/typescript/src/web/variants/getVariants.d.ts +3 -0
  135. package/lib/typescript/src/web/variants/getVariants.d.ts.map +1 -0
  136. package/lib/typescript/src/web/variants/index.d.ts +3 -0
  137. package/lib/typescript/src/web/variants/index.d.ts.map +1 -0
  138. package/lib/typescript/src/web/variants/useVariants.d.ts +3 -0
  139. package/lib/typescript/src/web/variants/useVariants.d.ts.map +1 -0
  140. package/package.json +1 -1
  141. package/plugin/__tests__/ref.spec.js +130 -4
  142. package/plugin/index.js +12 -13
  143. package/plugin/ref.js +38 -14
  144. package/plugin/style.js +13 -7
  145. package/src/specs/index.web.ts +1 -1
  146. package/src/types/stylesheet.ts +1 -1
  147. package/{web → src/web}/convert/breakpoint.ts +1 -1
  148. package/{web → src/web}/convert/index.ts +1 -1
  149. package/{web → src/web}/convert/types.ts +1 -1
  150. package/{web → src/web}/create.ts +36 -33
  151. package/{web → src/web}/listener/listener.ts +1 -1
  152. package/{web → src/web}/mock.ts +2 -2
  153. package/{web → src/web}/registry.ts +1 -1
  154. package/{web → src/web}/runtime.ts +4 -4
  155. package/{web → src/web}/state.ts +5 -5
  156. package/{web → src/web}/utils.ts +5 -5
  157. package/src/web/variants/getVariants.ts +42 -0
  158. package/src/web/variants/index.ts +2 -0
  159. package/{web → src/web/variants}/useVariants.ts +24 -44
  160. package/lib/typescript/web/convert/boxShadow.d.ts.map +0 -1
  161. package/lib/typescript/web/convert/breakpoint.d.ts.map +0 -1
  162. package/lib/typescript/web/convert/index.d.ts.map +0 -1
  163. package/lib/typescript/web/convert/shadow.d.ts.map +0 -1
  164. package/lib/typescript/web/convert/style.d.ts.map +0 -1
  165. package/lib/typescript/web/convert/textShadow.d.ts.map +0 -1
  166. package/lib/typescript/web/convert/transform.d.ts.map +0 -1
  167. package/lib/typescript/web/convert/types.d.ts.map +0 -1
  168. package/lib/typescript/web/convert/utils.d.ts.map +0 -1
  169. package/lib/typescript/web/listener/index.d.ts.map +0 -1
  170. package/lib/typescript/web/listener/listener.d.ts.map +0 -1
  171. package/lib/typescript/web/mock.d.ts.map +0 -1
  172. package/lib/typescript/web/mq.d.ts.map +0 -1
  173. package/lib/typescript/web/pseudo.d.ts.map +0 -1
  174. package/lib/typescript/web/registry.d.ts.map +0 -1
  175. package/lib/typescript/web/runtime.d.ts.map +0 -1
  176. package/lib/typescript/web/state.d.ts.map +0 -1
  177. package/lib/typescript/web/useVariants.d.ts +0 -3
  178. package/lib/typescript/web/useVariants.d.ts.map +0 -1
  179. package/lib/typescript/web/utils.d.ts.map +0 -1
  180. /package/lib/typescript/{web → src/web}/convert/boxShadow.d.ts +0 -0
  181. /package/lib/typescript/{web → src/web}/convert/breakpoint.d.ts +0 -0
  182. /package/lib/typescript/{web → src/web}/convert/shadow.d.ts +0 -0
  183. /package/lib/typescript/{web → src/web}/convert/style.d.ts +0 -0
  184. /package/lib/typescript/{web → src/web}/convert/textShadow.d.ts +0 -0
  185. /package/lib/typescript/{web → src/web}/convert/transform.d.ts +0 -0
  186. /package/lib/typescript/{web → src/web}/convert/utils.d.ts +0 -0
  187. /package/lib/typescript/{web → src/web}/listener/index.d.ts +0 -0
  188. /package/lib/typescript/{web → src/web}/mq.d.ts +0 -0
  189. /package/lib/typescript/{web → src/web}/pseudo.d.ts +0 -0
  190. /package/{web → src/web}/convert/boxShadow.ts +0 -0
  191. /package/{web → src/web}/convert/module.d.ts +0 -0
  192. /package/{web → src/web}/convert/shadow.ts +0 -0
  193. /package/{web → src/web}/convert/style.ts +0 -0
  194. /package/{web → src/web}/convert/textShadow.ts +0 -0
  195. /package/{web → src/web}/convert/transform.ts +0 -0
  196. /package/{web → src/web}/convert/utils.ts +0 -0
  197. /package/{web → src/web}/index.ts +0 -0
  198. /package/{web → src/web}/listener/index.ts +0 -0
  199. /package/{web → src/web}/mq.ts +0 -0
  200. /package/{web → src/web}/pseudo.ts +0 -0
@@ -0,0 +1,160 @@
1
+ "use strict";
2
+
3
+ import { UnistyleDependency } from '../specs/NativePlatform';
4
+ import { ColorScheme, Orientation } from '../specs/types';
5
+ import { WebContentSizeCategory } from '../types';
6
+ import { UnistylesListener } from './listener';
7
+ import { NavigationBar, StatusBar } from './mock';
8
+ import { UnistylesState } from './state';
9
+ import { hexToRGBA, isServer, schemeToTheme } from './utils';
10
+ class UnistylesRuntimeBuilder {
11
+ lightMedia = this.getLightMedia();
12
+ darkMedia = this.getDarkMedia();
13
+ getLightMedia() {
14
+ if (isServer()) {
15
+ return null;
16
+ }
17
+ if (!this.lightMedia) {
18
+ this.lightMedia = window.matchMedia('(prefers-color-scheme: light)');
19
+ }
20
+ return this.lightMedia;
21
+ }
22
+ getDarkMedia() {
23
+ if (isServer()) {
24
+ return null;
25
+ }
26
+ if (!this.darkMedia) {
27
+ this.darkMedia = window.matchMedia('(prefers-color-scheme: dark)');
28
+ }
29
+ return this.darkMedia;
30
+ }
31
+ get colorScheme() {
32
+ switch (true) {
33
+ case this.getLightMedia()?.matches:
34
+ return ColorScheme.Light;
35
+ case this.getDarkMedia()?.matches:
36
+ return ColorScheme.Dark;
37
+ default:
38
+ return ColorScheme.Unspecified;
39
+ }
40
+ }
41
+ get themeName() {
42
+ return UnistylesState.themeName;
43
+ }
44
+ get contentSizeCategory() {
45
+ return WebContentSizeCategory.Unspecified;
46
+ }
47
+ get breakpoint() {
48
+ return UnistylesState.breakpoint;
49
+ }
50
+ get orientation() {
51
+ if (isServer()) {
52
+ return Orientation.Portrait;
53
+ }
54
+ return screen.orientation.type.includes('portrait') ? Orientation.Portrait : Orientation.Landscape;
55
+ }
56
+ get theme() {
57
+ if (!this.themeName) {
58
+ throw new Error('🦄 No theme selected!');
59
+ }
60
+ const theme = UnistylesState.themes.get(this.themeName);
61
+ if (!theme) {
62
+ throw new Error(`🦄 Theme "${this.themeName}" is not registered!`);
63
+ }
64
+ return theme;
65
+ }
66
+ get pixelRatio() {
67
+ return isServer() ? 1 : window.devicePixelRatio;
68
+ }
69
+ get screen() {
70
+ if (isServer()) {
71
+ return {
72
+ width: 0,
73
+ height: 0
74
+ };
75
+ }
76
+ return {
77
+ width: window.innerWidth,
78
+ height: window.innerHeight
79
+ };
80
+ }
81
+ get fontScale() {
82
+ return 1;
83
+ }
84
+ get insets() {
85
+ return {
86
+ top: 0,
87
+ bottom: 0,
88
+ left: 0,
89
+ right: 0,
90
+ ime: 0
91
+ };
92
+ }
93
+ get statusBar() {
94
+ return StatusBar;
95
+ }
96
+ get rtl() {
97
+ return isServer() ? true : document.documentElement.dir === 'rtl';
98
+ }
99
+ get hasAdaptiveThemes() {
100
+ return UnistylesState.hasAdaptiveThemes;
101
+ }
102
+ get navigationBar() {
103
+ return NavigationBar;
104
+ }
105
+ get miniRuntime() {
106
+ return {
107
+ colorScheme: this.colorScheme,
108
+ themeName: this.themeName,
109
+ contentSizeCategory: this.contentSizeCategory,
110
+ breakpoint: this.breakpoint,
111
+ orientation: this.orientation,
112
+ pixelRatio: this.pixelRatio,
113
+ screen: this.screen,
114
+ fontScale: this.fontScale,
115
+ insets: this.insets,
116
+ statusBar: {
117
+ width: this.statusBar.width,
118
+ height: this.statusBar.height
119
+ },
120
+ navigationBar: {
121
+ width: this.navigationBar.width,
122
+ height: this.navigationBar.height
123
+ },
124
+ rtl: this.rtl,
125
+ hasAdaptiveThemes: this.hasAdaptiveThemes
126
+ };
127
+ }
128
+ setTheme = themeName => {
129
+ if (themeName === UnistylesRuntime.themeName) {
130
+ return;
131
+ }
132
+ UnistylesState.themeName = themeName;
133
+ UnistylesListener.emitChange(UnistyleDependency.Theme);
134
+ UnistylesListener.emitChange(UnistyleDependency.ThemeName);
135
+ };
136
+ setAdaptiveThemes = isEnabled => {
137
+ UnistylesState.hasAdaptiveThemes = isEnabled;
138
+ if (!isEnabled) {
139
+ return;
140
+ }
141
+ this.setTheme(schemeToTheme(UnistylesRuntime.colorScheme));
142
+ };
143
+ setRootViewBackgroundColor = (hex, alpha) => {
144
+ if (isServer()) {
145
+ return;
146
+ }
147
+ document.documentElement.style.backgroundColor = alpha ? hexToRGBA(hex, alpha) : hex;
148
+ };
149
+ setImmersiveMode = () => {};
150
+ updateTheme = (themeName, updater) => {
151
+ const oldTheme = UnistylesState.themes.get(themeName);
152
+ if (!oldTheme) {
153
+ throw new Error(`🦄 Theme "${themeName}" is not registered!`);
154
+ }
155
+ UnistylesState.themes.set(themeName, updater(oldTheme));
156
+ };
157
+ getSSRUnistyles = () => UnistylesState.tags;
158
+ }
159
+ export const UnistylesRuntime = new UnistylesRuntimeBuilder();
160
+ //# sourceMappingURL=runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["UnistyleDependency","ColorScheme","Orientation","WebContentSizeCategory","UnistylesListener","NavigationBar","StatusBar","UnistylesState","hexToRGBA","isServer","schemeToTheme","UnistylesRuntimeBuilder","lightMedia","getLightMedia","darkMedia","getDarkMedia","window","matchMedia","colorScheme","matches","Light","Dark","Unspecified","themeName","contentSizeCategory","breakpoint","orientation","Portrait","screen","type","includes","Landscape","theme","Error","themes","get","pixelRatio","devicePixelRatio","width","height","innerWidth","innerHeight","fontScale","insets","top","bottom","left","right","ime","statusBar","rtl","document","documentElement","dir","hasAdaptiveThemes","navigationBar","miniRuntime","setTheme","UnistylesRuntime","emitChange","Theme","ThemeName","setAdaptiveThemes","isEnabled","setRootViewBackgroundColor","hex","alpha","style","backgroundColor","setImmersiveMode","updateTheme","updater","oldTheme","set","getSSRUnistyles","tags"],"sourceRoot":"../../../src","sources":["web/runtime.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+
3
+ import { createElement, createRef } from 'react';
4
+ import { UnistylesRuntime } from './runtime';
5
+ import { isServer, schemeToTheme } from './utils';
6
+ import { UnistylesListener } from './listener';
7
+ import { UnistyleDependency } from '../specs/NativePlatform';
8
+ class UnistylesStateBuilder {
9
+ isSSR = isServer();
10
+ tags = [];
11
+ themes = new Map();
12
+ hasAdaptiveThemes = false;
13
+ init = config => {
14
+ this.initThemes(config.themes);
15
+ this.initBreakpoints(config.breakpoints);
16
+ this.initSettings(config.settings);
17
+ if (this.isSSR) {
18
+ return;
19
+ }
20
+ UnistylesListener.initListeners();
21
+ };
22
+ initThemes = (themes = {}) => {
23
+ Object.entries(themes).forEach(([themeName, theme]) => {
24
+ this.themes.set(themeName, theme);
25
+ });
26
+ };
27
+ initSettings = settings => {
28
+ this.hasAdaptiveThemes = settings?.adaptiveThemes ?? false;
29
+ const themeNames = Array.from(this.themes.keys());
30
+
31
+ // Single theme + no settings
32
+ if (!settings?.adaptiveThemes && !settings?.initialTheme && themeNames.length === 1) {
33
+ this.themeName = themeNames[0];
34
+ return;
35
+ }
36
+
37
+ // No settings
38
+ if (!settings?.adaptiveThemes && !settings?.initialTheme) {
39
+ throw new Error('🦄 You need to specify either "initialTheme" or "adaptiveThemes" in your config');
40
+ }
41
+
42
+ // Adaptive themes
43
+ if (settings.adaptiveThemes) {
44
+ this.themeName = schemeToTheme(UnistylesRuntime.colorScheme);
45
+ return;
46
+ }
47
+
48
+ // Initial theme
49
+ this.themeName = typeof settings.initialTheme === 'function' ? settings.initialTheme() : settings.initialTheme;
50
+ };
51
+ initBreakpoints = (breakpoints = {}) => {
52
+ const breakpointsMap = new Map();
53
+ this.breakpoints = breakpoints;
54
+ Object.entries(breakpoints).sort(([, a], [, b]) => a - b).forEach(([breakpoint, value]) => {
55
+ if (isServer()) {
56
+ return;
57
+ }
58
+ const mediaQuery = window.matchMedia(`(min-width: ${value}px)`);
59
+ breakpointsMap.set(breakpoint, mediaQuery);
60
+ if (mediaQuery.matches) {
61
+ this.breakpoint = breakpoint;
62
+ }
63
+ mediaQuery.addEventListener('change', event => {
64
+ if (!event.matches) {
65
+ const [currentBreakpoint] = Array.from(breakpointsMap).find(([, mq]) => mq.matches) ?? [];
66
+ if (currentBreakpoint) {
67
+ this.breakpoint = currentBreakpoint;
68
+ UnistylesListener.emitChange(UnistyleDependency.Breakpoints);
69
+ }
70
+ return;
71
+ }
72
+ this.breakpoint = breakpoint;
73
+ UnistylesListener.emitChange(UnistyleDependency.Breakpoints);
74
+ });
75
+ });
76
+ };
77
+ createTag() {
78
+ if (!this.isSSR) {
79
+ const tag = document.createElement('style');
80
+ document.head.appendChild(tag);
81
+ return tag;
82
+ }
83
+ const tagRef = new Proxy(/*#__PURE__*/createRef(), {
84
+ set: (target, prop, value) => {
85
+ // When ref is assigned
86
+ if ('textContent' in value) {
87
+ value.textContent = tag.textContent;
88
+ }
89
+ return Reflect.set(target, prop, value);
90
+ }
91
+ });
92
+ const tagElement = /*#__PURE__*/createElement('style', {
93
+ ref: tagRef,
94
+ key: this.tags.length
95
+ }, '');
96
+ const tag = new Proxy({
97
+ textContent: ''
98
+ }, {
99
+ set: (target, prop, value) => {
100
+ if (prop !== 'textContent') {
101
+ return false;
102
+ }
103
+
104
+ // When css is updated
105
+ target.textContent = value;
106
+ if (tagRef.current) {
107
+ tagRef.current.textContent = value;
108
+ }
109
+ return true;
110
+ }
111
+ });
112
+ this.tags.push(tagElement);
113
+ return tag;
114
+ }
115
+ }
116
+ export const UnistylesState = new UnistylesStateBuilder();
117
+ //# sourceMappingURL=state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createElement","createRef","UnistylesRuntime","isServer","schemeToTheme","UnistylesListener","UnistyleDependency","UnistylesStateBuilder","isSSR","tags","themes","Map","hasAdaptiveThemes","init","config","initThemes","initBreakpoints","breakpoints","initSettings","settings","initListeners","Object","entries","forEach","themeName","theme","set","adaptiveThemes","themeNames","Array","from","keys","initialTheme","length","Error","colorScheme","breakpointsMap","sort","a","b","breakpoint","value","mediaQuery","window","matchMedia","matches","addEventListener","event","currentBreakpoint","find","mq","emitChange","Breakpoints","createTag","tag","document","head","appendChild","tagRef","Proxy","target","prop","textContent","Reflect","tagElement","ref","key","current","push","UnistylesState"],"sourceRoot":"../../../src","sources":["web/state.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+
3
+ import { ColorScheme } from '../specs/types';
4
+ export const reduceObject = (obj, reducer) => Object.fromEntries(Object.entries(obj).map(([key, value]) => [key, reducer(value, key)]));
5
+ export const toReactNativeClassName = (className, values) => {
6
+ const returnValue = className ? {
7
+ $$css: true,
8
+ [className]: className
9
+ } : {};
10
+ Object.defineProperties(returnValue, reduceObject(values, value => ({
11
+ value,
12
+ enumerable: false,
13
+ configurable: true
14
+ })));
15
+ return returnValue;
16
+ };
17
+ export const keyInObject = (obj, key) => key in obj;
18
+ export const schemeToTheme = scheme => {
19
+ switch (scheme) {
20
+ case ColorScheme.Dark:
21
+ return 'dark';
22
+ case ColorScheme.Light:
23
+ default:
24
+ return 'light';
25
+ }
26
+ };
27
+ export const hexToRGBA = (hex, opacity) => hex.replace('#', '').split(/(?=(?:..)*$)/).map(x => parseInt(x, 16)).filter(num => !isNaN(num)).reduce((acc, color) => `${acc}${color},`, 'rgba(').concat(`${opacity})`);
28
+ export const isServer = () => typeof window === 'undefined';
29
+
30
+ /**
31
+ * Deeply merges properties of passed object
32
+ */
33
+ export const deepMergeObjects = (...sources) => {
34
+ const target = {};
35
+ sources.forEach(source => {
36
+ Object.keys(source).forEach(key => {
37
+ const sourceValue = source[key];
38
+ const targetValue = target[key];
39
+ if (Object(sourceValue) == sourceValue && Object(targetValue) === targetValue) {
40
+ // @ts-expect-error - can't assign to generic
41
+ target[key] = deepMergeObjects(targetValue, sourceValue);
42
+ return;
43
+ }
44
+
45
+ // @ts-expect-error - can't assign to generic
46
+ target[key] = sourceValue;
47
+ });
48
+ });
49
+ return target;
50
+ };
51
+ export const warn = message => console.warn(`🦄 [react-native-unistyles] ${message}`);
52
+ export const equal = (a, b) => {
53
+ if (Object.is(a, b)) {
54
+ return true;
55
+ }
56
+ if (typeof a !== 'object' || a === null || typeof b !== 'object' || b === null) {
57
+ return false;
58
+ }
59
+ const keysA = Object.keys(a);
60
+ if (keysA.length !== Object.keys(b).length) {
61
+ return false;
62
+ }
63
+ return keysA.every(key => Object.is(a[key], b[key]) && Object.prototype.hasOwnProperty.call(b, key));
64
+ };
65
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ColorScheme","reduceObject","obj","reducer","Object","fromEntries","entries","map","key","value","toReactNativeClassName","className","values","returnValue","$$css","defineProperties","enumerable","configurable","keyInObject","schemeToTheme","scheme","Dark","Light","hexToRGBA","hex","opacity","replace","split","x","parseInt","filter","num","isNaN","reduce","acc","color","concat","isServer","window","deepMergeObjects","sources","target","forEach","source","keys","sourceValue","targetValue","warn","message","console","equal","a","b","is","keysA","length","every","prototype","hasOwnProperty","call"],"sourceRoot":"../../../src","sources":["web/utils.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+
3
+ import { deepMergeObjects } from '../utils';
4
+ const hasVariants = value => 'variants' in value[1];
5
+ export const getVariants = (styles, selectedVariants) => {
6
+ return Object.entries(styles).filter(hasVariants).filter(([_key, {
7
+ variants
8
+ }]) => Object.keys(variants).some(variant => variant in variants)).map(([key, {
9
+ variants,
10
+ compoundVariants = []
11
+ }]) => {
12
+ const variantStyles = Object.entries(variants).flatMap(([variant, styles]) => {
13
+ const selectedVariant = selectedVariants[variant];
14
+ const selectedVariantStyles = styles[selectedVariant] ?? styles['default'];
15
+ if (!selectedVariantStyles) {
16
+ return [];
17
+ }
18
+ return selectedVariantStyles;
19
+ });
20
+ const compoundVariantStyles = compoundVariants.flatMap(compoundVariant => {
21
+ const {
22
+ styles,
23
+ ...conditions
24
+ } = compoundVariant;
25
+ if (Object.entries(conditions).some(([variant, value]) => String(selectedVariants[variant]) !== String(value))) {
26
+ return [];
27
+ }
28
+ return styles;
29
+ });
30
+ const mergedVariantStyles = deepMergeObjects(...variantStyles, ...compoundVariantStyles);
31
+ return [key, mergedVariantStyles];
32
+ });
33
+ };
34
+ //# sourceMappingURL=getVariants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["deepMergeObjects","hasVariants","value","getVariants","styles","selectedVariants","Object","entries","filter","_key","variants","keys","some","variant","map","key","compoundVariants","variantStyles","flatMap","selectedVariant","selectedVariantStyles","compoundVariantStyles","compoundVariant","conditions","String","mergedVariantStyles"],"sourceRoot":"../../../../src","sources":["web/variants/getVariants.ts"],"mappings":";;AACA,SAASA,gBAAgB,QAAQ,UAAU;AAQ3C,MAAMC,WAAW,GAAsBC,KAAkB,IAAgD,UAAU,IAAIA,KAAK,CAAC,CAAC,CAAC;AAE/H,OAAO,MAAMC,WAAW,GAAGA,CAACC,MAAyC,EAAEC,gBAAqC,KAAK;EAC7G,OAAOC,MAAM,CAACC,OAAO,CAACH,MAAM,CAAC,CACxBI,MAAM,CAACP,WAAW,CAAC,CACnBO,MAAM,CAAC,CAAC,CAACC,IAAI,EAAE;IAAEC;EAAS,CAAC,CAAC,KAAKJ,MAAM,CAACK,IAAI,CAACD,QAAQ,CAAC,CAACE,IAAI,CAACC,OAAO,IAAIA,OAAO,IAAIH,QAAQ,CAAC,CAAC,CAC5FI,GAAG,CAAC,CAAC,CAACC,GAAG,EAAE;IAAEL,QAAQ;IAAEM,gBAAgB,GAAG;EAAG,CAAC,CAAC,KAAK;IACjD,MAAMC,aAAa,GAAGX,MAAM,CAACC,OAAO,CAACG,QAAQ,CAAC,CAACQ,OAAO,CAAC,CAAC,CAACL,OAAO,EAAET,MAAM,CAAC,KAAK;MAC1E,MAAMe,eAAe,GAAGd,gBAAgB,CAACQ,OAAO,CAAC;MACjD,MAAMO,qBAAqB,GAAGhB,MAAM,CAACe,eAAe,CAAC,IAAIf,MAAM,CAAC,SAAS,CAAC;MAE1E,IAAI,CAACgB,qBAAqB,EAAE;QACxB,OAAO,EAAE;MACb;MAEA,OAAOA,qBAAqB;IAChC,CAAC,CAAC;IAEF,MAAMC,qBAAqB,GAAGL,gBAAgB,CAACE,OAAO,CAACI,eAAe,IAAI;MACtE,MAAM;QAAElB,MAAM;QAAE,GAAGmB;MAAW,CAAC,GAAGD,eAAe;MAEjD,IAAIhB,MAAM,CAACC,OAAO,CAACgB,UAAU,CAAC,CAACX,IAAI,CAAC,CAAC,CAACC,OAAO,EAAEX,KAAK,CAAC,KAAKsB,MAAM,CAACnB,gBAAgB,CAACQ,OAAO,CAAC,CAAC,KAAKW,MAAM,CAACtB,KAAK,CAAC,CAAC,EAAE;QAC5G,OAAO,EAAE;MACb;MAEA,OAAOE,MAAM;IACjB,CAAC,CAAC;IAEF,MAAMqB,mBAAmB,GAAGzB,gBAAgB,CAAC,GAAGiB,aAAa,EAAE,GAAGI,qBAAqB,CAAC;IAExF,OAAO,CAACN,GAAG,EAAEU,mBAAmB,CAAC;EACrC,CAAC,CAAC;AACV,CAAC","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ export * from './useVariants';
4
+ export * from './getVariants';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["web/variants/index.ts"],"mappings":";;AAAA,cAAc,eAAe;AAC7B,cAAc,eAAe","ignoreList":[]}
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+
3
+ import { useMemo, useRef, useState } from 'react';
4
+ import { equal, reduceObject } from '../utils';
5
+ import { UnistylesRegistry } from '../registry';
6
+ import { getVariants } from './getVariants';
7
+ export const createUseVariants = (styles, setSelectedVariants) => {
8
+ const useVariants = selectedVariants => {
9
+ const [unistylesMap] = useState(() => new Map());
10
+ const [classNameMap] = useState(() => new Map());
11
+ const [selectedVariantStylesMap] = useState(() => new Map());
12
+ const lastSelectedVariantsRef = useRef();
13
+ // Variable that determines if variants have changed and we need to recalculate styles
14
+ const variantsChanged = !equal(lastSelectedVariantsRef.current, selectedVariants);
15
+ if (variantsChanged) {
16
+ lastSelectedVariantsRef.current = selectedVariants;
17
+ setSelectedVariants(selectedVariants);
18
+ }
19
+ const combinedVariantStyles = useMemo(() => {
20
+ const result = getVariants(styles, selectedVariants);
21
+ result.forEach(([key, value]) => {
22
+ selectedVariantStylesMap.set(key, value);
23
+ });
24
+ return result;
25
+ }, [lastSelectedVariantsRef.current]);
26
+ if (unistylesMap.size === 0 && combinedVariantStyles.length > 0) {
27
+ combinedVariantStyles.forEach(([key, value]) => {
28
+ const {
29
+ className,
30
+ unistyles
31
+ } = UnistylesRegistry.createStyles(value, `variant-${key}`);
32
+ unistylesMap.set(key, unistyles);
33
+ classNameMap.set(key, className);
34
+ });
35
+ }
36
+ combinedVariantStyles.forEach(([key, value]) => {
37
+ const styleEntry = styles[key];
38
+ const unistyles = unistylesMap.get(key);
39
+ const className = classNameMap.get(key);
40
+ const selectedVariantStyles = selectedVariantStylesMap.get(key);
41
+ if (!unistyles || !className) {
42
+ return;
43
+ }
44
+ if (variantsChanged) {
45
+ UnistylesRegistry.updateStyles(unistyles, value, className);
46
+ }
47
+ Object.defineProperties(styleEntry, reduceObject(selectedVariantStyles ?? {}, value => ({
48
+ value,
49
+ enumerable: false,
50
+ configurable: true
51
+ })));
52
+ if (styleEntry) {
53
+ Object.keys(styleEntry ?? {}).forEach(key => {
54
+ if (!key.startsWith('variant-')) {
55
+ return;
56
+ }
57
+
58
+ // @ts-expect-error - remove old variants
59
+ delete styleEntry[key];
60
+ });
61
+ // @ts-expect-error - apply variant className
62
+ styleEntry[className] = className;
63
+ }
64
+ });
65
+ };
66
+ Object.defineProperty(styles, 'useVariants', {
67
+ value: useVariants
68
+ });
69
+ };
70
+ //# sourceMappingURL=useVariants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useMemo","useRef","useState","equal","reduceObject","UnistylesRegistry","getVariants","createUseVariants","styles","setSelectedVariants","useVariants","selectedVariants","unistylesMap","Map","classNameMap","selectedVariantStylesMap","lastSelectedVariantsRef","variantsChanged","current","combinedVariantStyles","result","forEach","key","value","set","size","length","className","unistyles","createStyles","styleEntry","get","selectedVariantStyles","updateStyles","Object","defineProperties","enumerable","configurable","keys","startsWith","defineProperty"],"sourceRoot":"../../../../src","sources":["web/variants/useVariants.ts"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,4 @@
1
1
  import type { ReactElement } from 'react';
2
2
  export declare const getSSRUnistyles: () => Array<ReactElement>;
3
- export * from '../../web';
3
+ export * from '../web';
4
4
  //# sourceMappingURL=index.web.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.web.d.ts","sourceRoot":"","sources":["../../../../src/specs/index.web.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AAEzC,eAAO,MAAM,eAAe,QAAe,KAAK,CAAC,YAAY,CAAC,CAAA;AAE9D,cAAc,WAAW,CAAA"}
1
+ {"version":3,"file":"index.web.d.ts","sourceRoot":"","sources":["../../../../src/specs/index.web.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AAEzC,eAAO,MAAM,eAAe,QAAe,KAAK,CAAC,YAAY,CAAC,CAAA;AAE9D,cAAc,QAAQ,CAAA"}
@@ -5,7 +5,7 @@ import type { UnistylesMiniRuntime } from '../specs';
5
5
  import type { ReactNativeStyleSheet } from './breakpoints';
6
6
  import type { ExtractVariantNames } from './variants';
7
7
  import type { CSSProperties } from 'react';
8
- import type { Pseudo } from '../../web/pseudo';
8
+ import type { Pseudo } from '../web/pseudo';
9
9
  type NestedKeys = 'shadowOffset' | 'transform' | 'textShadowOffset';
10
10
  export type UnistyleView = Omit<ViewStyle, NestedKeys>;
11
11
  export type UnistyleText = Omit<TextStyle, NestedKeys>;
@@ -1 +1 @@
1
- {"version":3,"file":"stylesheet.d.ts","sourceRoot":"","sources":["../../../../src/types/stylesheet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stylesheet.d.ts","sourceRoot":"","sources":["../../../../src/types/stylesheet.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"boxShadow.d.ts","sourceRoot":"","sources":["../../../../../src/web/convert/boxShadow.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAkB9D,eAAO,MAAM,iBAAiB,WAAY,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAG,mBAoD/D,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"breakpoint.d.ts","sourceRoot":"","sources":["../../../../../src/web/convert/breakpoint.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAMrD,eAAO,MAAM,iBAAiB,eAAgB,MAAM,KAAG,UActD,CAAA"}
@@ -1,4 +1,4 @@
1
1
  import type { NestedCSSProperties } from 'typestyle/lib/types';
2
- import type { UnistylesValues } from '../../src/types';
2
+ import type { UnistylesValues } from '../../types';
3
3
  export declare const convertToTypeStyle: (value: UnistylesValues) => NestedCSSProperties;
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/web/convert/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAWlD,eAAO,MAAM,kBAAkB,UAAW,eAAe,wBAiExD,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shadow.d.ts","sourceRoot":"","sources":["../../../../../src/web/convert/shadow.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,cAAc,qBAAsB,aAAa,CAAC,MAAM,CAAC,UAAU,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,eAAe,GAAG,CAAC,MAAM,CAAC,SAiE5H,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"style.d.ts","sourceRoot":"","sources":["../../../../../src/web/convert/style.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAgF9D,eAAO,MAAM,QAAQ,QAAS,MAAM,SAAS,GAAG,wBAY/C,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"textShadow.d.ts","sourceRoot":"","sources":["../../../../../src/web/convert/textShadow.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAiB9D,eAAO,MAAM,kBAAkB,WAAY,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAG,mBAkDhE,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../../../../src/web/convert/transform.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAK9D,KAAK,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAA;AAmC5C,eAAO,MAAM,iBAAiB,eAAgB,UAAU,KAAG,mBA+C1D,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import type { TextStyle, ViewStyle } from 'react-native';
2
- import type { ToDeepUnistyles } from '../../src/types/stylesheet';
2
+ import type { ToDeepUnistyles } from '../../types/stylesheet';
3
3
  export type ShadowOffset = ToDeepUnistyles<{
4
4
  width: number;
5
5
  height: number;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/web/convert/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAE7D,MAAM,MAAM,YAAY,GAAG,eAAe,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAAA;AAE7E,eAAO,MAAM,kBAAkB,sEAAuE,CAAA;AAEtG,MAAM,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;AAErF,eAAO,MAAM,iBAAiB,2EAA4E,CAAA;AAE1G,MAAM,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;AAEnF,MAAM,MAAM,SAAS,GAAG,UAAU,GAAG,SAAS,CAAA;AAE9C,MAAM,MAAM,aAAa,GAAG,MAAM,SAAS,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/web/convert/utils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAyC,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,SAAS,CAAA;AAEnG,eAAO,MAAM,WAAW,QAAS,MAAM,SAAS,GAAG,KAAG,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAgD,CAAA;AAExI,eAAO,MAAM,YAAY,QAAS,MAAM,YAA0E,CAAA;AAElH,eAAO,MAAM,WAAW,QAAS,MAAM,YAAwE,CAAA;AAE/G,eAAO,MAAM,qBAAqB,UAAW,MAAM,oBAAiC,CAAA;AAEpF,eAAO,MAAM,cAAc,UAAW,MAAM,YAAW,MAAM,WAyB5D,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAI,IAAI,SAAS,aAAa,OAAO,IAAI,cAAc,MAAM,UAAU,GAAG,KAAG,SAAS,CAAC,IAAI,CAazH,CAAA"}