@tamagui/web 1.57.3 → 1.57.4

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.
@@ -29,7 +29,7 @@ function getThemeCSSRules(props) {
29
29
  const cssRuleSets = [];
30
30
  if (!process.env.TAMAGUI_DOES_SSR_CSS || process.env.TAMAGUI_DOES_SSR_CSS === "mutates-themes" || process.env.TAMAGUI_DOES_SSR_CSS === "false") {
31
31
  const { config, themeName, theme, names } = props;
32
- const hasDarkLight = "light" in config.themes && "dark" in config.themes;
32
+ const hasDarkLight = "light" in config.themes || "dark" in config.themes;
33
33
  const CNP = `.${import_constants.THEME_CLASSNAME_PREFIX}`;
34
34
  let vars = "";
35
35
  for (const themeKey in theme) {
@@ -42,46 +42,42 @@ function getThemeCSSRules(props) {
42
42
  }
43
43
  vars += `--${(0, import_helpers.simpleHash)(themeKey, 40)}:${value};`;
44
44
  }
45
- const isDarkOrLightBase = themeName === "dark" || themeName === "light";
45
+ const isDarkBase = themeName === "dark";
46
+ const isLightBase = themeName === "light";
46
47
  const baseSelectors = names.map((name) => `${CNP}${name}`);
47
48
  const selectorsSet = new Set(baseSelectors);
48
49
  if (hasDarkLight) {
50
+ const maxDepth = config.maxDarkLightNesting ?? 3;
49
51
  for (const subName of names) {
50
- const isDark = themeName === "dark" || subName.startsWith("dark_");
51
- const isLight = themeName === "light" || themeName.startsWith("light_");
52
- const maxDepth = config.maxDarkLightNesting ?? 3;
52
+ const isDark = isDarkBase || subName.startsWith("dark_");
53
+ const isLight = !isDark && (isLightBase || subName.startsWith("light_"));
53
54
  if (!(isDark || isLight)) {
54
55
  selectorsSet.add(`:root:root ${CNP}${subName}`);
55
56
  continue;
56
57
  }
57
58
  const childSelector = `${CNP}${subName.replace(/^(dark|light)_/, "")}`;
58
- const [altLightDark] = [isDark ? ["dark", "light"] : ["light", "dark"]];
59
- for (const order of [altLightDark]) {
60
- if (isDarkOrLightBase) {
61
- order.reverse();
59
+ const order = isDark ? ["dark", "light"] : ["light", "dark"];
60
+ const [stronger, weaker] = order;
61
+ const numSelectors = Math.round(maxDepth * 1.5);
62
+ for (let depth = 0; depth < numSelectors; depth++) {
63
+ const isOdd = depth % 2 === 1;
64
+ if (isOdd && depth < 3) {
65
+ continue;
62
66
  }
63
- const [stronger, weaker] = order;
64
- const numSelectors = Math.round(maxDepth * 1.5);
65
- for (let depth = 0; depth < numSelectors; depth++) {
66
- const isOdd = depth % 2 === 1;
67
- if (isOdd && depth < 3) {
68
- continue;
69
- }
70
- const parents = new Array(depth + 1).fill(0).map((_, psi) => {
71
- return `${CNP}${psi % 2 === 0 ? stronger : weaker}`;
72
- });
73
- let parentSelectors = parents.length > 1 ? parents.slice(1) : parents;
74
- if (isOdd) {
75
- const [_first, second, ...rest] = parentSelectors;
76
- parentSelectors = [second, ...rest, second];
77
- }
78
- const lastParentSelector = parentSelectors[parentSelectors.length - 1];
79
- const nextChildSelector = childSelector === lastParentSelector ? "" : childSelector;
80
- selectorsSet.add(`${parentSelectors.join(" ")} ${nextChildSelector}`.trim());
81
- selectorsSet.add(
82
- `${parentSelectors.join(" ")} ${nextChildSelector}.is_inversed`.trim()
83
- );
67
+ const parents = new Array(depth + 1).fill(0).map((_, psi) => {
68
+ return `${CNP}${psi % 2 === 0 ? stronger : weaker}`;
69
+ });
70
+ let parentSelectors = parents.length > 1 ? parents.slice(1) : parents;
71
+ if (isOdd) {
72
+ const [_first, second, ...rest] = parentSelectors;
73
+ parentSelectors = [second, ...rest, second];
84
74
  }
75
+ const lastParentSelector = parentSelectors[parentSelectors.length - 1];
76
+ const nextChildSelector = childSelector === lastParentSelector ? "" : childSelector;
77
+ selectorsSet.add(`${parentSelectors.join(" ")} ${nextChildSelector}`.trim());
78
+ selectorsSet.add(
79
+ `${parentSelectors.join(" ")} ${nextChildSelector}.is_inversed`.trim()
80
+ );
85
81
  }
86
82
  }
87
83
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/getThemeCSSRules.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["css"]
6
6
  }
@@ -6,7 +6,7 @@ function getThemeCSSRules(props) {
6
6
  const cssRuleSets = [];
7
7
  if (!process.env.TAMAGUI_DOES_SSR_CSS || process.env.TAMAGUI_DOES_SSR_CSS === "mutates-themes" || process.env.TAMAGUI_DOES_SSR_CSS === "false") {
8
8
  const { config, themeName, theme, names } = props;
9
- const hasDarkLight = "light" in config.themes && "dark" in config.themes;
9
+ const hasDarkLight = "light" in config.themes || "dark" in config.themes;
10
10
  const CNP = `.${THEME_CLASSNAME_PREFIX}`;
11
11
  let vars = "";
12
12
  for (const themeKey in theme) {
@@ -19,46 +19,42 @@ function getThemeCSSRules(props) {
19
19
  }
20
20
  vars += `--${simpleHash(themeKey, 40)}:${value};`;
21
21
  }
22
- const isDarkOrLightBase = themeName === "dark" || themeName === "light";
22
+ const isDarkBase = themeName === "dark";
23
+ const isLightBase = themeName === "light";
23
24
  const baseSelectors = names.map((name) => `${CNP}${name}`);
24
25
  const selectorsSet = new Set(baseSelectors);
25
26
  if (hasDarkLight) {
27
+ const maxDepth = config.maxDarkLightNesting ?? 3;
26
28
  for (const subName of names) {
27
- const isDark = themeName === "dark" || subName.startsWith("dark_");
28
- const isLight = themeName === "light" || themeName.startsWith("light_");
29
- const maxDepth = config.maxDarkLightNesting ?? 3;
29
+ const isDark = isDarkBase || subName.startsWith("dark_");
30
+ const isLight = !isDark && (isLightBase || subName.startsWith("light_"));
30
31
  if (!(isDark || isLight)) {
31
32
  selectorsSet.add(`:root:root ${CNP}${subName}`);
32
33
  continue;
33
34
  }
34
35
  const childSelector = `${CNP}${subName.replace(/^(dark|light)_/, "")}`;
35
- const [altLightDark] = [isDark ? ["dark", "light"] : ["light", "dark"]];
36
- for (const order of [altLightDark]) {
37
- if (isDarkOrLightBase) {
38
- order.reverse();
36
+ const order = isDark ? ["dark", "light"] : ["light", "dark"];
37
+ const [stronger, weaker] = order;
38
+ const numSelectors = Math.round(maxDepth * 1.5);
39
+ for (let depth = 0; depth < numSelectors; depth++) {
40
+ const isOdd = depth % 2 === 1;
41
+ if (isOdd && depth < 3) {
42
+ continue;
39
43
  }
40
- const [stronger, weaker] = order;
41
- const numSelectors = Math.round(maxDepth * 1.5);
42
- for (let depth = 0; depth < numSelectors; depth++) {
43
- const isOdd = depth % 2 === 1;
44
- if (isOdd && depth < 3) {
45
- continue;
46
- }
47
- const parents = new Array(depth + 1).fill(0).map((_, psi) => {
48
- return `${CNP}${psi % 2 === 0 ? stronger : weaker}`;
49
- });
50
- let parentSelectors = parents.length > 1 ? parents.slice(1) : parents;
51
- if (isOdd) {
52
- const [_first, second, ...rest] = parentSelectors;
53
- parentSelectors = [second, ...rest, second];
54
- }
55
- const lastParentSelector = parentSelectors[parentSelectors.length - 1];
56
- const nextChildSelector = childSelector === lastParentSelector ? "" : childSelector;
57
- selectorsSet.add(`${parentSelectors.join(" ")} ${nextChildSelector}`.trim());
58
- selectorsSet.add(
59
- `${parentSelectors.join(" ")} ${nextChildSelector}.is_inversed`.trim()
60
- );
44
+ const parents = new Array(depth + 1).fill(0).map((_, psi) => {
45
+ return `${CNP}${psi % 2 === 0 ? stronger : weaker}`;
46
+ });
47
+ let parentSelectors = parents.length > 1 ? parents.slice(1) : parents;
48
+ if (isOdd) {
49
+ const [_first, second, ...rest] = parentSelectors;
50
+ parentSelectors = [second, ...rest, second];
61
51
  }
52
+ const lastParentSelector = parentSelectors[parentSelectors.length - 1];
53
+ const nextChildSelector = childSelector === lastParentSelector ? "" : childSelector;
54
+ selectorsSet.add(`${parentSelectors.join(" ")} ${nextChildSelector}`.trim());
55
+ selectorsSet.add(
56
+ `${parentSelectors.join(" ")} ${nextChildSelector}.is_inversed`.trim()
57
+ );
62
58
  }
63
59
  }
64
60
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/getThemeCSSRules.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["css"]
6
6
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/web",
3
- "version": "1.57.3",
3
+ "version": "1.57.4",
4
4
  "source": "src/index.ts",
5
5
  "main": "dist/cjs",
6
6
  "module": "dist/esm",
@@ -27,19 +27,19 @@
27
27
  "reset.css"
28
28
  ],
29
29
  "dependencies": {
30
- "@tamagui/compose-refs": "1.57.3",
31
- "@tamagui/constants": "1.57.3",
32
- "@tamagui/helpers": "1.57.3",
33
- "@tamagui/normalize-css-color": "1.57.3",
34
- "@tamagui/timer": "1.57.3",
35
- "@tamagui/use-did-finish-ssr": "1.57.3",
36
- "@tamagui/use-force-update": "1.57.3"
30
+ "@tamagui/compose-refs": "1.57.4",
31
+ "@tamagui/constants": "1.57.4",
32
+ "@tamagui/helpers": "1.57.4",
33
+ "@tamagui/normalize-css-color": "1.57.4",
34
+ "@tamagui/timer": "1.57.4",
35
+ "@tamagui/use-did-finish-ssr": "1.57.4",
36
+ "@tamagui/use-force-update": "1.57.4"
37
37
  },
38
38
  "peerDependencies": {
39
39
  "react": "*"
40
40
  },
41
41
  "devDependencies": {
42
- "@tamagui/build": "1.57.3",
42
+ "@tamagui/build": "1.57.4",
43
43
  "@testing-library/react": "^13.4.0",
44
44
  "csstype": "^3.0.10",
45
45
  "react": "^18.2.0",
@@ -21,7 +21,7 @@ export function getThemeCSSRules(props: {
21
21
  const { config, themeName, theme, names } = props
22
22
 
23
23
  // special case for SSR
24
- const hasDarkLight = 'light' in config.themes && 'dark' in config.themes
24
+ const hasDarkLight = 'light' in config.themes || 'dark' in config.themes
25
25
  const CNP = `.${THEME_CLASSNAME_PREFIX}`
26
26
  let vars = ''
27
27
 
@@ -40,17 +40,19 @@ export function getThemeCSSRules(props: {
40
40
  vars += `--${simpleHash(themeKey, 40)}:${value};`
41
41
  }
42
42
 
43
- const isDarkOrLightBase = themeName === 'dark' || themeName === 'light'
43
+ const isDarkBase = themeName === 'dark'
44
+ const isLightBase = themeName === 'light'
44
45
  const baseSelectors = names.map((name) => `${CNP}${name}`)
45
46
  const selectorsSet = new Set(baseSelectors)
46
47
 
47
48
  // since we dont specify dark/light in classnames we have to do an awkward specificity war
48
49
  // use config.maxDarkLightNesting to determine how deep you can nest until it breaks
49
50
  if (hasDarkLight) {
51
+ const maxDepth = config.maxDarkLightNesting ?? 3
52
+
50
53
  for (const subName of names) {
51
- const isDark = themeName === 'dark' || subName.startsWith('dark_')
52
- const isLight = themeName === 'light' || themeName.startsWith('light_')
53
- const maxDepth = config.maxDarkLightNesting ?? 3
54
+ const isDark = isDarkBase || subName.startsWith('dark_')
55
+ const isLight = !isDark && (isLightBase || subName.startsWith('light_'))
54
56
 
55
57
  if (!(isDark || isLight)) {
56
58
  // neither light nor dark subtheme, just generate one selector with :root:root which
@@ -60,45 +62,38 @@ export function getThemeCSSRules(props: {
60
62
  }
61
63
 
62
64
  const childSelector = `${CNP}${subName.replace(/^(dark|light)_/, '')}`
65
+ const order = isDark ? ['dark', 'light'] : ['light', 'dark']
66
+ const [stronger, weaker] = order
67
+ const numSelectors = Math.round(maxDepth * 1.5)
63
68
 
64
- const [altLightDark] = [isDark ? ['dark', 'light'] : ['light', 'dark']]
69
+ for (let depth = 0; depth < numSelectors; depth++) {
70
+ const isOdd = depth % 2 === 1
65
71
 
66
- for (const order of [altLightDark]) {
67
- if (isDarkOrLightBase) {
68
- order.reverse()
72
+ // wtf is this continue:
73
+ if (isOdd && depth < 3) {
74
+ continue
69
75
  }
70
- const [stronger, weaker] = order
71
- const numSelectors = Math.round(maxDepth * 1.5)
72
-
73
- for (let depth = 0; depth < numSelectors; depth++) {
74
- const isOdd = depth % 2 === 1
75
-
76
- // wtf is this continue:
77
- if (isOdd && depth < 3) {
78
- continue
79
- }
80
76
 
81
- const parents = new Array(depth + 1).fill(0).map((_, psi) => {
82
- return `${CNP}${psi % 2 === 0 ? stronger : weaker}`
83
- })
77
+ const parents = new Array(depth + 1).fill(0).map((_, psi) => {
78
+ return `${CNP}${psi % 2 === 0 ? stronger : weaker}`
79
+ })
84
80
 
85
- let parentSelectors = parents.length > 1 ? parents.slice(1) : parents
81
+ let parentSelectors = parents.length > 1 ? parents.slice(1) : parents
86
82
 
87
- if (isOdd) {
88
- const [_first, second, ...rest] = parentSelectors
89
- parentSelectors = [second, ...rest, second]
90
- }
83
+ if (isOdd) {
84
+ const [_first, second, ...rest] = parentSelectors
85
+ parentSelectors = [second, ...rest, second]
86
+ }
91
87
 
92
- const lastParentSelector = parentSelectors[parentSelectors.length - 1]
93
- const nextChildSelector =
94
- childSelector === lastParentSelector ? '' : childSelector
88
+ const lastParentSelector = parentSelectors[parentSelectors.length - 1]
89
+ const nextChildSelector =
90
+ childSelector === lastParentSelector ? '' : childSelector
95
91
 
96
- // for light/dark/light:
97
- selectorsSet.add(`${parentSelectors.join(' ')} ${nextChildSelector}`.trim())
98
- selectorsSet.add(
99
- `${parentSelectors.join(' ')} ${nextChildSelector}.is_inversed`.trim()
100
- )
101
- }
92
+ // for light/dark/light:
93
+ selectorsSet.add(`${parentSelectors.join(' ')} ${nextChildSelector}`.trim())
94
+ selectorsSet.add(
95
+ `${parentSelectors.join(' ')} ${nextChildSelector}.is_inversed`.trim()
96
+ )
102
97
  }
103
98
  }
104
99
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getThemeCSSRules.d.ts","sourceRoot":"","sources":["../../src/helpers/getThemeCSSRules.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAG/D,wBAAgB,gBAAgB,CAAC,KAAK,EAAE;IACtC,MAAM,EAAE,kBAAkB,CAAA;IAC1B,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,WAAW,CAAA;IAClB,KAAK,EAAE,MAAM,EAAE,CAAA;CAChB,YA4JA"}
1
+ {"version":3,"file":"getThemeCSSRules.d.ts","sourceRoot":"","sources":["../../src/helpers/getThemeCSSRules.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAG/D,wBAAgB,gBAAgB,CAAC,KAAK,EAAE;IACtC,MAAM,EAAE,kBAAkB,CAAA;IAC1B,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,WAAW,CAAA;IAClB,KAAK,EAAE,MAAM,EAAE,CAAA;CAChB,YAuJA"}