@multiplatform.one/theme 8.3.0 → 8.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (248) hide show
  1. package/dist/cjs/audit/constraintAudit.native.js.map +1 -1
  2. package/dist/cjs/audit/designTokens.native.js.map +1 -1
  3. package/dist/cjs/audit/diffReport.native.js.map +1 -1
  4. package/dist/cjs/audit/index.native.js.map +1 -1
  5. package/dist/cjs/audit/themeMatrix.native.js.map +1 -1
  6. package/dist/cjs/dates.native.js.map +1 -1
  7. package/dist/cjs/devWarn.native.js.map +1 -1
  8. package/dist/cjs/expo.native.js.map +1 -1
  9. package/dist/cjs/figma/figmaTokens.native.js.map +1 -1
  10. package/dist/cjs/font.native.js.map +1 -1
  11. package/dist/cjs/fonts/createFontLoader.native.js.map +1 -1
  12. package/dist/cjs/fonts/index.native.js.map +1 -1
  13. package/dist/cjs/fonts/interFaces.native.js.map +1 -1
  14. package/dist/cjs/fonts/types.native.js.map +1 -1
  15. package/dist/cjs/index.gnome.cjs +4 -1
  16. package/dist/cjs/index.gnome.native.js +3 -0
  17. package/dist/cjs/index.gnome.native.js.map +1 -1
  18. package/dist/cjs/index.native.js +1 -1
  19. package/dist/cjs/index.native.js.map +1 -1
  20. package/dist/cjs/keyboardFocusRing.native.js.map +1 -1
  21. package/dist/cjs/menuRow.cjs +1 -1
  22. package/dist/cjs/menuRow.native.js +1 -1
  23. package/dist/cjs/menuRow.native.js.map +1 -1
  24. package/dist/cjs/nativeTwins.native.js.map +1 -1
  25. package/dist/cjs/numbers.native.js.map +1 -1
  26. package/dist/cjs/theme/Heading.native.js.map +1 -1
  27. package/dist/cjs/theme/IconSlot.native.js.map +1 -1
  28. package/dist/cjs/theme/Intent.native.js.map +1 -1
  29. package/dist/cjs/theme/Preset.native.js.map +1 -1
  30. package/dist/cjs/theme/PresetContext.native.js.map +1 -1
  31. package/dist/cjs/theme/Surface.native.js.map +1 -1
  32. package/dist/cjs/theme/Text.native.js.map +1 -1
  33. package/dist/cjs/theme/Tint.native.js.map +1 -1
  34. package/dist/cjs/theme/accentInk.cjs +6 -2
  35. package/dist/cjs/theme/accentInk.native.js +6 -2
  36. package/dist/cjs/theme/accentInk.native.js.map +1 -1
  37. package/dist/cjs/theme/activateThemeConfig.native.js.map +1 -1
  38. package/dist/cjs/theme/animations/css.native.js.map +1 -1
  39. package/dist/cjs/theme/animations/index.native.js.map +1 -1
  40. package/dist/cjs/theme/animations/reactNative.native.js.map +1 -1
  41. package/dist/cjs/theme/chartPalette.cjs +3 -3
  42. package/dist/cjs/theme/chartPalette.native.js +5 -4
  43. package/dist/cjs/theme/chartPalette.native.js.map +1 -1
  44. package/dist/cjs/theme/colorRules.cjs +5 -0
  45. package/dist/cjs/theme/colorRules.native.js +6 -0
  46. package/dist/cjs/theme/colorRules.native.js.map +1 -1
  47. package/dist/cjs/theme/controlTiers.cjs +9 -5
  48. package/dist/cjs/theme/controlTiers.native.js +10 -5
  49. package/dist/cjs/theme/controlTiers.native.js.map +1 -1
  50. package/dist/cjs/theme/cookies.native.js.map +1 -1
  51. package/dist/cjs/theme/createDefaultThemeConfig.native.js.map +1 -1
  52. package/dist/cjs/theme/createThemes.cjs +212 -8
  53. package/dist/cjs/theme/createThemes.native.js +397 -12
  54. package/dist/cjs/theme/createThemes.native.js.map +1 -1
  55. package/dist/cjs/theme/dedupeInherited.native.js.map +1 -1
  56. package/dist/cjs/theme/defaults/accent.native.js.map +1 -1
  57. package/dist/cjs/theme/defaults/base.native.js.map +1 -1
  58. package/dist/cjs/theme/defaults/builderOptions.cjs +9 -4
  59. package/dist/cjs/theme/defaults/builderOptions.native.js +9 -4
  60. package/dist/cjs/theme/defaults/builderOptions.native.js.map +1 -1
  61. package/dist/cjs/theme/defaults/categoryFonts.native.js.map +1 -1
  62. package/dist/cjs/theme/defaults/fonts.native.js.map +1 -1
  63. package/dist/cjs/theme/defaults/house.native.js.map +1 -1
  64. package/dist/cjs/theme/defaults/index.native.js.map +1 -1
  65. package/dist/cjs/theme/devtools/ColorLineVisualizer.native.js.map +1 -1
  66. package/dist/cjs/theme/devtools/ThemeDevtoolsPanel.native.js.map +1 -1
  67. package/dist/cjs/theme/devtools/animationOptions.native.js.map +1 -1
  68. package/dist/cjs/theme/devtools/buildSnapshot.native.js.map +1 -1
  69. package/dist/cjs/theme/devtools/index.native.js.map +1 -1
  70. package/dist/cjs/theme/devtools/knobIcons.native.js.map +1 -1
  71. package/dist/cjs/theme/devtools/vizConstants.native.js.map +1 -1
  72. package/dist/cjs/theme/dynamicType.native.js.map +1 -1
  73. package/dist/cjs/theme/fieldFocus.native.js.map +1 -1
  74. package/dist/cjs/theme/fillContrast.cjs +4 -1
  75. package/dist/cjs/theme/fillContrast.native.js +4 -1
  76. package/dist/cjs/theme/fillContrast.native.js.map +1 -1
  77. package/dist/cjs/theme/focusState.native.js.map +1 -1
  78. package/dist/cjs/theme/fontCategoryMetrics.native.js.map +1 -1
  79. package/dist/cjs/theme/fontCategoryStacks.native.js.map +1 -1
  80. package/dist/cjs/theme/glyphPaint.native.js.map +1 -1
  81. package/dist/cjs/theme/glyphTint.native.js.map +1 -1
  82. package/dist/cjs/theme/groupGeometry.native.js.map +1 -1
  83. package/dist/cjs/theme/index.cjs +1 -0
  84. package/dist/cjs/theme/index.native.js +1 -0
  85. package/dist/cjs/theme/index.native.js.map +1 -1
  86. package/dist/cjs/theme/intents.native.js.map +1 -1
  87. package/dist/cjs/theme/knobs.native.js.map +1 -1
  88. package/dist/cjs/theme/layoutTokens.native.js.map +1 -1
  89. package/dist/cjs/theme/listRows.native.js.map +1 -1
  90. package/dist/cjs/theme/mergedTokens.native.js.map +1 -1
  91. package/dist/cjs/theme/motion.native.js.map +1 -1
  92. package/dist/cjs/theme/motionStops.native.js.map +1 -1
  93. package/dist/cjs/theme/motionTiming.native.js.map +1 -1
  94. package/dist/cjs/theme/nativeMonoFamily.native.js.map +1 -1
  95. package/dist/cjs/theme/nativePresetSwitch.native.js.map +1 -1
  96. package/dist/cjs/theme/nativeSchemePreference.native.js.map +1 -1
  97. package/dist/cjs/theme/nativeTheme.native.js.map +1 -1
  98. package/dist/cjs/theme/nativeTransitionProps.native.js.map +1 -1
  99. package/dist/cjs/theme/overlaySurfaces.native.js.map +1 -1
  100. package/dist/cjs/theme/pageGutter.native.js.map +1 -1
  101. package/dist/cjs/theme/preset.types.native.js.map +1 -1
  102. package/dist/cjs/theme/presetPreview.native.js.map +1 -1
  103. package/dist/cjs/theme/presetStore.native.js.map +1 -1
  104. package/dist/cjs/theme/presetUserSync.native.js.map +1 -1
  105. package/dist/cjs/theme/presets.native.js.map +1 -1
  106. package/dist/cjs/theme/radiusClass.native.js.map +1 -1
  107. package/dist/cjs/theme/radiusClassTable.generated.native.js.map +1 -1
  108. package/dist/cjs/theme/ramps.native.js.map +1 -1
  109. package/dist/cjs/theme/readableColor.cjs +20 -9
  110. package/dist/cjs/theme/readableColor.native.js +20 -9
  111. package/dist/cjs/theme/readableColor.native.js.map +1 -1
  112. package/dist/cjs/theme/recipeInputs.native.js.map +1 -1
  113. package/dist/cjs/theme/recipes.native.js.map +1 -1
  114. package/dist/cjs/theme/resolveKnobs.cjs +4 -1
  115. package/dist/cjs/theme/resolveKnobs.native.js +4 -1
  116. package/dist/cjs/theme/resolveKnobs.native.js.map +1 -1
  117. package/dist/cjs/theme/scale/activeScale.native.js.map +1 -1
  118. package/dist/cjs/theme/scale/deriveRecipeInputs.native.js.map +1 -1
  119. package/dist/cjs/theme/scale/generateScale.native.js.map +1 -1
  120. package/dist/cjs/theme/scale/index.native.js.map +1 -1
  121. package/dist/cjs/theme/scale/scaleAttribute.native.js.map +1 -1
  122. package/dist/cjs/theme/scale/scaleCss.native.js.map +1 -1
  123. package/dist/cjs/theme/scale/scaleFonts.native.js.map +1 -1
  124. package/dist/cjs/theme/scale/scaleInputs.native.js.map +1 -1
  125. package/dist/cjs/theme/scale/themeScales.native.js.map +1 -1
  126. package/dist/cjs/theme/scale/useActiveScale.native.js.map +1 -1
  127. package/dist/cjs/theme/schemeStore.native.js.map +1 -1
  128. package/dist/cjs/theme/shared.native.js.map +1 -1
  129. package/dist/cjs/theme/sizeRecipes.native.js.map +1 -1
  130. package/dist/cjs/theme/subsetThemes.native.js.map +1 -1
  131. package/dist/cjs/theme/themeValue.native.js.map +1 -1
  132. package/dist/cjs/theme/tileSizes.native.js.map +1 -1
  133. package/dist/cjs/theme/tintHues.native.js.map +1 -1
  134. package/dist/cjs/theme/tokenNumber.cjs +34 -0
  135. package/dist/cjs/theme/tokenNumber.native.js +39 -0
  136. package/dist/cjs/theme/tokenNumber.native.js.map +1 -0
  137. package/dist/cjs/theme/touchManipulation.native.js.map +1 -1
  138. package/dist/cjs/theme/useResolvedKnobs.native.js.map +1 -1
  139. package/dist/cjs/theme/useTouchSurface.native.js.map +1 -1
  140. package/dist/cjs/theme/v3TokenRoles.native.js.map +1 -1
  141. package/dist/esm/index.gnome.mjs +3 -2
  142. package/dist/esm/index.gnome.mjs.map +1 -1
  143. package/dist/esm/index.gnome.native.js +3 -2
  144. package/dist/esm/index.gnome.native.js.map +1 -1
  145. package/dist/esm/menuRow.mjs +1 -1
  146. package/dist/esm/menuRow.native.js +1 -1
  147. package/dist/esm/theme/accentInk.mjs +6 -3
  148. package/dist/esm/theme/accentInk.mjs.map +1 -1
  149. package/dist/esm/theme/accentInk.native.js +6 -3
  150. package/dist/esm/theme/accentInk.native.js.map +1 -1
  151. package/dist/esm/theme/chartPalette.mjs +3 -3
  152. package/dist/esm/theme/chartPalette.mjs.map +1 -1
  153. package/dist/esm/theme/chartPalette.native.js +5 -4
  154. package/dist/esm/theme/chartPalette.native.js.map +1 -1
  155. package/dist/esm/theme/colorRules.mjs +5 -1
  156. package/dist/esm/theme/colorRules.mjs.map +1 -1
  157. package/dist/esm/theme/colorRules.native.js +6 -1
  158. package/dist/esm/theme/colorRules.native.js.map +1 -1
  159. package/dist/esm/theme/controlTiers.mjs +9 -6
  160. package/dist/esm/theme/controlTiers.mjs.map +1 -1
  161. package/dist/esm/theme/controlTiers.native.js +10 -6
  162. package/dist/esm/theme/controlTiers.native.js.map +1 -1
  163. package/dist/esm/theme/createThemes.mjs +215 -12
  164. package/dist/esm/theme/createThemes.mjs.map +1 -1
  165. package/dist/esm/theme/createThemes.native.js +400 -16
  166. package/dist/esm/theme/createThemes.native.js.map +1 -1
  167. package/dist/esm/theme/defaults/builderOptions.mjs +10 -6
  168. package/dist/esm/theme/defaults/builderOptions.mjs.map +1 -1
  169. package/dist/esm/theme/defaults/builderOptions.native.js +10 -6
  170. package/dist/esm/theme/defaults/builderOptions.native.js.map +1 -1
  171. package/dist/esm/theme/fillContrast.mjs +5 -2
  172. package/dist/esm/theme/fillContrast.mjs.map +1 -1
  173. package/dist/esm/theme/fillContrast.native.js +5 -2
  174. package/dist/esm/theme/fillContrast.native.js.map +1 -1
  175. package/dist/esm/theme/index.mjs +1 -0
  176. package/dist/esm/theme/index.mjs.map +1 -1
  177. package/dist/esm/theme/index.native.js +1 -0
  178. package/dist/esm/theme/index.native.js.map +1 -1
  179. package/dist/esm/theme/nativeTheme.mjs.map +1 -1
  180. package/dist/esm/theme/nativeTheme.native.js.map +1 -1
  181. package/dist/esm/theme/readableColor.mjs +20 -9
  182. package/dist/esm/theme/readableColor.mjs.map +1 -1
  183. package/dist/esm/theme/readableColor.native.js +20 -9
  184. package/dist/esm/theme/readableColor.native.js.map +1 -1
  185. package/dist/esm/theme/resolveKnobs.mjs +4 -1
  186. package/dist/esm/theme/resolveKnobs.mjs.map +1 -1
  187. package/dist/esm/theme/resolveKnobs.native.js +4 -1
  188. package/dist/esm/theme/resolveKnobs.native.js.map +1 -1
  189. package/dist/esm/theme/tokenNumber.mjs +9 -0
  190. package/dist/esm/theme/tokenNumber.mjs.map +1 -0
  191. package/dist/esm/theme/tokenNumber.native.js +11 -0
  192. package/dist/esm/theme/tokenNumber.native.js.map +1 -0
  193. package/package.json +5 -5
  194. package/src/figma/figmaTokens.spec.ts +2 -1
  195. package/src/index.gnome.ts +2 -0
  196. package/src/menuRow.palette.spec.ts +20 -7
  197. package/src/menuRow.spec.ts +2 -2
  198. package/src/menuRow.ts +3 -3
  199. package/src/theme/accentInk.ts +8 -2
  200. package/src/theme/accentOnSurface.spec.tsx +6 -1
  201. package/src/theme/chartPalette.spec.ts +2 -2
  202. package/src/theme/chartPalette.ts +9 -9
  203. package/src/theme/colorRules.ts +13 -0
  204. package/src/theme/controlEdges.spec.ts +114 -0
  205. package/src/theme/controlTiers.ts +18 -9
  206. package/src/theme/createDefaultThemeConfig.spec.ts +135 -12
  207. package/src/theme/createThemes.ts +363 -24
  208. package/src/theme/defaults/builderOptions.ts +25 -8
  209. package/src/theme/defaults/secondaryInk.spec.ts +10 -5
  210. package/src/theme/fillContrast.spec.ts +8 -2
  211. package/src/theme/fillContrast.ts +10 -2
  212. package/src/theme/houseGround.spec.ts +1 -1
  213. package/src/theme/index.ts +1 -0
  214. package/src/theme/nativeTheme.tsx +1 -1
  215. package/src/theme/readableColor.ts +23 -11
  216. package/src/theme/recipes.ts +1 -0
  217. package/src/theme/resolveKnobs.spec.ts +4 -4
  218. package/src/theme/resolveKnobs.ts +6 -4
  219. package/src/theme/selectionFill.spec.ts +58 -0
  220. package/src/theme/switchThumb.spec.ts +13 -1
  221. package/src/theme/themeKeyRegistry.spec.ts +26 -0
  222. package/src/theme/tokenNumber.spec.tsx +47 -0
  223. package/src/theme/tokenNumber.ts +18 -0
  224. package/types/index.gnome.d.ts +2 -1
  225. package/types/index.gnome.d.ts.map +1 -1
  226. package/types/menuRow.d.ts +5 -5
  227. package/types/theme/accentInk.d.ts +1 -0
  228. package/types/theme/accentInk.d.ts.map +1 -1
  229. package/types/theme/chartPalette.d.ts +2 -2
  230. package/types/theme/colorRules.d.ts +9 -0
  231. package/types/theme/colorRules.d.ts.map +1 -1
  232. package/types/theme/controlTiers.d.ts +11 -5
  233. package/types/theme/controlTiers.d.ts.map +1 -1
  234. package/types/theme/createThemes.d.ts +21 -12
  235. package/types/theme/createThemes.d.ts.map +1 -1
  236. package/types/theme/defaults/builderOptions.d.ts +9 -1
  237. package/types/theme/defaults/builderOptions.d.ts.map +1 -1
  238. package/types/theme/fillContrast.d.ts.map +1 -1
  239. package/types/theme/index.d.ts +1 -0
  240. package/types/theme/index.d.ts.map +1 -1
  241. package/types/theme/nativeTheme.d.ts +1 -1
  242. package/types/theme/nativeTheme.d.ts.map +1 -1
  243. package/types/theme/readableColor.d.ts.map +1 -1
  244. package/types/theme/recipes.d.ts +3 -0
  245. package/types/theme/recipes.d.ts.map +1 -1
  246. package/types/theme/resolveKnobs.d.ts.map +1 -1
  247. package/types/theme/tokenNumber.d.ts +10 -0
  248. package/types/theme/tokenNumber.d.ts.map +1 -0
@@ -1,10 +1,11 @@
1
1
  import * as Colors from "@tamagui/colors";
2
2
  import { PALETTE_BACKGROUND_OFFSET, createThemes as tamaguiCreateThemes } from "@tamagui/theme-builder";
3
3
  import { defaultChildrenThemes, v5Templates } from "@tamagui/themes/v5";
4
- import { aaTextContrastRatio, apcaContrast, contrastRatio, fillLabelLc, holdInkFloor, inSwitchOffBand, isLightGround, minContrastRatio, normalizeToHex, pickReadableForeground, plateContrastRatio, relativeLuminance, switchOffFillAlpha, systemFillHex, systemFillLuminance } from "./colorRules.mjs";
5
- import { pickSecondaryInk } from "./defaults/builderOptions.mjs";
4
+ import { aaTextContrastRatio, apcaContrast, contrastRatio, fillLabelLc, holdInkFloor, inSwitchOffBand, isLightGround, minContrastRatio, normalizeToHex, pickReadableForeground, plateContrastRatio, relativeLuminance, switchOffFillAlpha, switchOffGround, systemFillHex, systemFillLuminance } from "./colorRules.mjs";
5
+ import { darkHairlineContrast, pickSecondaryInk } from "./defaults/builderOptions.mjs";
6
6
  import { themeRampHues } from "./ramps.mjs";
7
- import { withAccentOnSurface, withIdentityInk } from "./accentInk.mjs";
7
+ import { pageSurfaces, pickIdentityInk, withAccentOnSurface, withIdentityInk } from "./accentInk.mjs";
8
+ import { resolveThemeThroughParents } from "./dedupeInherited.mjs";
8
9
  import { tintHueNames } from "./tintHues.mjs";
9
10
  const intentInkFloor = {
10
11
  /** Stored hsla(41, 99%, 30%, 1); 4.54:1 on $color2, dE76 2.54. */
@@ -26,9 +27,34 @@ const lightSurfaceGrouped = {
26
27
  backgroundFocus: PALETTE_BACKGROUND_OFFSET,
27
28
  backgroundActive: PALETTE_BACKGROUND_OFFSET
28
29
  };
30
+ const fillKeys = ["background", "backgroundHover", "backgroundPress", "backgroundFocus", "backgroundActive"];
31
+ const edgeKeys = ["borderColor", "borderColorHover", "borderColorFocus", "borderColorPress"];
32
+ function liftOneStep(template) {
33
+ const lifted = {
34
+ ...template
35
+ };
36
+ for (const key of [...fillKeys, ...edgeKeys]) lifted[key] = template[key] + 1;
37
+ return lifted;
38
+ }
39
+ const darkSurfaceGrouped = {
40
+ ...liftOneStep(v5Templates.dark_surface1),
41
+ selectFill: PALETTE_BACKGROUND_OFFSET + 4,
42
+ selectPress: PALETTE_BACKGROUND_OFFSET + 5
43
+ };
44
+ const darkBasePage = {
45
+ ...v5Templates.dark_base,
46
+ background: PALETTE_BACKGROUND_OFFSET,
47
+ backgroundActive: PALETTE_BACKGROUND_OFFSET,
48
+ backgroundFocus: PALETTE_BACKGROUND_OFFSET + 1,
49
+ backgroundHover: PALETTE_BACKGROUND_OFFSET + 1,
50
+ backgroundPress: PALETTE_BACKGROUND_OFFSET + 1
51
+ };
29
52
  const houseTemplates = {
30
53
  ...v5Templates,
31
- light_surface1: lightSurfaceGrouped
54
+ light_surface1: lightSurfaceGrouped,
55
+ dark_base: darkBasePage,
56
+ dark_surface1: darkSurfaceGrouped,
57
+ dark_surface2: liftOneStep(v5Templates.dark_surface2)
32
58
  };
33
59
  const houseComponentThemes = {
34
60
  Button: {
@@ -181,7 +207,7 @@ function holdAccentFloor(themes) {
181
207
  if (!base?.accentBackground || !base.accentColor) continue;
182
208
  const paper = luminanceOf(base.color1);
183
209
  const ink = luminanceOf(base.color12);
184
- const surfaces = [base.color1, base.color2, base.color3, base.color4].map(luminanceOf);
210
+ const surfaces = [base.color1, base.color2, base.color3, base.color4, ...(scheme === "dark" ? [base.color5] : [])].map(luminanceOf);
185
211
  if (paper === null || ink === null || surfaces.some(lum => lum === null)) continue;
186
212
  const steps = Array.from({
187
213
  length: 12
@@ -234,12 +260,146 @@ function holdSelectionSurface(themes) {
234
260
  color4: held,
235
261
  ...(theme.borderColor === scope.color4 ? {
236
262
  borderColor: held
263
+ } : null),
264
+ ...(theme.selectFill === scope.color4 ? {
265
+ selectFill: held
237
266
  } : null)
238
267
  };
239
268
  }
240
269
  }
241
270
  return out;
242
271
  }
272
+ function holdDarkEdges(themes) {
273
+ const out = {
274
+ ...themes
275
+ };
276
+ const scopes = Object.keys(themes).filter(name => /^dark(_[a-z]+)?$/.test(name));
277
+ const ownerOf = name => scopes.filter(scope => name === scope || name.startsWith(`${scope}_`)).reduce((longest, scope) => scope.length > longest.length ? scope : longest, "");
278
+ for (const scopeName of scopes) {
279
+ if (/_(accent|active)$/.test(scopeName)) continue;
280
+ const scope = themes[scopeName];
281
+ const ramp = Array.from({
282
+ length: 12
283
+ }, (_, index) => scope[`color${index + 1}`]);
284
+ const grounds = [scope.background, scope.color4].map(color => luminanceOf(color));
285
+ if (grounds.some(ground => ground === null)) continue;
286
+ const brightest = Math.max(...grounds);
287
+ const clears = color => {
288
+ const luminance = luminanceOf(color);
289
+ return luminance !== null && luminance > brightest && grounds.every(ground => contrastRatio(luminance, ground) >= darkHairlineContrast);
290
+ };
291
+ const hairline = ramp.findIndex((color, index) => index < 11 && clears(color));
292
+ if (hairline < 0) continue;
293
+ const medium = hairline + 1;
294
+ for (const [name, theme] of Object.entries(themes)) {
295
+ if (ownerOf(name) !== scopeName) continue;
296
+ const surface = name === scopeName || theme.background === scope.color4;
297
+ const step = ramp.indexOf(theme.borderColor);
298
+ const shift = surface && step >= 0 ? medium - step : 0;
299
+ const moved = {};
300
+ if ("borderColorHairline" in theme || name === scopeName) moved.borderColorHairline = ramp[hairline];
301
+ if (shift > 0) {
302
+ for (const key of ["borderColor", "borderColorHover", "borderColorFocus", "borderColorPress"]) {
303
+ const at = ramp.indexOf(theme[key]);
304
+ if (at >= 0) moved[key] = ramp[Math.min(11, at + shift)];
305
+ }
306
+ }
307
+ out[name] = {
308
+ ...out[name],
309
+ ...moved
310
+ };
311
+ }
312
+ }
313
+ return out;
314
+ }
315
+ function holdControlEdges(themes) {
316
+ const out = {
317
+ ...themes
318
+ };
319
+ const firstClearing = (neutral, grounds) => {
320
+ const lums = grounds.map(ground => luminanceOf(ground));
321
+ if (lums.some(lum => lum === null)) return -1;
322
+ const darkest = Math.min(...lums);
323
+ const brightest = Math.max(...lums);
324
+ const light = isLightGround(grounds[0]);
325
+ return neutral.findIndex(color => {
326
+ const lum = luminanceOf(color);
327
+ return lum !== null && (light ? lum < darkest : lum > brightest) && lums.every(ground => contrastRatio(lum, ground) >= minContrastRatio);
328
+ });
329
+ };
330
+ const resolved = (name, key) => {
331
+ for (let at = name; at; at = at.slice(0, Math.max(0, at.lastIndexOf("_")))) {
332
+ const value = (out[at] ?? themes[at])?.[key];
333
+ if (value !== void 0) return value;
334
+ if (!at.includes("_")) break;
335
+ }
336
+ return void 0;
337
+ };
338
+ for (const scheme of ["light", "dark"]) {
339
+ const root = themes[scheme];
340
+ if (!root) continue;
341
+ const neutral = Array.from({
342
+ length: 12
343
+ }, (_, index) => root[`color${index + 1}`]);
344
+ const fieldEdges = scopeName => {
345
+ const scope = themes[scopeName];
346
+ const field = `${scopeName}_Input`;
347
+ const edge = firstClearing(neutral, [scope.background, resolved(field, "background")]);
348
+ if (edge < 0) return void 0;
349
+ const ramp = Array.from({
350
+ length: 12
351
+ }, (_, index) => scope[`color${index + 1}`]);
352
+ const stepOf = color => {
353
+ const lum = luminanceOf(color);
354
+ if (lum === null) return -1;
355
+ return ramp.reduce((best, step, index) => Math.abs((luminanceOf(step) ?? 2) - lum) < Math.abs((luminanceOf(ramp[best]) ?? 2) - lum) ? index : best, 0);
356
+ };
357
+ const rest = stepOf(resolved(field, "borderColor"));
358
+ const hover = stepOf(resolved(field, "borderColorHover"));
359
+ return {
360
+ borderColorField: neutral[edge],
361
+ borderColorFieldHover: neutral[Math.min(11, Math.max(edge, edge + hover - rest))]
362
+ };
363
+ };
364
+ const rootFields = fieldEdges(scheme);
365
+ const rootControl = firstClearing(neutral, [root.background]);
366
+ if (!rootFields || rootControl < 0) continue;
367
+ out[scheme] = {
368
+ ...out[scheme],
369
+ ...rootFields,
370
+ borderColorControl: neutral[rootControl],
371
+ switchTrackOffBorder: scheme === "light" ? neutral[rootControl] : root.switchTrackOff
372
+ };
373
+ const scopes = Object.keys(themes).filter(name => new RegExp(`^${scheme}_[a-z]+$`).test(name) && !/_(accent|active)$/.test(name));
374
+ const pages = [root.background, ...scopes.filter(name => !semanticIntentNames.has(name.slice(scheme.length + 1))).map(name => themes[name].background)];
375
+ for (const scopeName of scopes) {
376
+ const scope = themes[scopeName];
377
+ const patch = {};
378
+ if (scheme === "dark" && "switchTrackOff" in scope) patch.switchTrackOffBorder = scope.switchTrackOff;
379
+ if (semanticIntentNames.has(scopeName.slice(scheme.length + 1))) {
380
+ const field = `${scopeName}_Input`;
381
+ const ramp = Array.from({
382
+ length: 12
383
+ }, (_, index) => scope[`color${index + 1}`]);
384
+ const edge = firstClearing(ramp, [...pages, resolved(field, "background")]);
385
+ patch.borderColorField = edge < 0 ? resolved(field, "borderColor") : ramp[edge];
386
+ patch.borderColorFieldHover = edge < 0 ? resolved(field, "borderColorHover") : ramp[Math.min(11, edge + 1)];
387
+ } else {
388
+ const fields = fieldEdges(scopeName);
389
+ if (fields) {
390
+ for (const [key, value] of Object.entries(fields)) if (value !== rootFields[key]) patch[key] = value;
391
+ }
392
+ const control = firstClearing(neutral, [scope.background]);
393
+ if (control >= 0 && control !== rootControl) patch.borderColorControl = neutral[control];
394
+ }
395
+ if (Object.keys(patch).length > 0) out[scopeName] = {
396
+ ...out[scopeName],
397
+ ...patch
398
+ };
399
+ }
400
+ }
401
+ return out;
402
+ }
243
403
  const selectedTintContrastRatio = 1.1;
244
404
  const neutralSelectedTintContrastRatio = 1.25;
245
405
  const achromaticChannelSpread = 8;
@@ -307,7 +467,7 @@ const switchRaisedAlphaStep = 0.04;
307
467
  function raisedGrounds(themes, scheme) {
308
468
  if (scheme === "light") return [];
309
469
  const hues = Object.entries(themes).filter(([name]) => new RegExp(`^${scheme}_[a-z]+$`).test(name)).filter(([name]) => !/_(accent|active)$/.test(name));
310
- return [themes[scheme]?.color4, ...hues.map(([, theme]) => theme.color4)].filter(color => typeof color === "string");
470
+ return [themes[scheme], ...hues.map(([, theme]) => theme)].flatMap(theme => [theme?.color4, theme?.color5]).filter(color => typeof color === "string");
311
471
  }
312
472
  function holdSwitchTrack(themes) {
313
473
  const out = {
@@ -316,11 +476,24 @@ function holdSwitchTrack(themes) {
316
476
  for (const scheme of ["light", "dark"]) {
317
477
  const base = themes[scheme];
318
478
  if (!base) continue;
319
- const paint = switchTrackPaint(base, base.accentBackground, base.background, raisedGrounds(themes, scheme));
479
+ const paint = switchTrackPaint(base, base.accentBackground, switchOffGround(base), raisedGrounds(themes, scheme));
320
480
  if (paint) out[scheme] = {
321
481
  ...base,
322
482
  ...paint
323
483
  };
484
+ if (scheme !== "dark" || !paint) continue;
485
+ for (const intent of semanticIntentNames) {
486
+ const scope = themes[`${scheme}_${intent}`];
487
+ const off = luminanceOf(paint.switchTrackOff);
488
+ if (!scope?.color4 || !scope.color5 || off === null) continue;
489
+ const holds = inSwitchOffBand(paint.switchTrackOff, scope.color4) && [scope.color4, scope.color5].every(ground => contrastRatio(off, luminanceOf(ground) ?? off) >= plateContrastRatio);
490
+ if (holds) continue;
491
+ const track = switchTrackPaint(base, scope.accentBackground ?? base.accentBackground, scope.color4, [base.color4, scope.color4, scope.color5]);
492
+ if (track) out[`${scheme}_${intent}`] = {
493
+ ...scope,
494
+ ...track
495
+ };
496
+ }
324
497
  }
325
498
  return out;
326
499
  }
@@ -484,7 +657,7 @@ function holdColorThemeAccent(themes) {
484
657
  if (!scope || ramp.some(step => !step)) continue;
485
658
  const paper = luminanceOf(scope.color1);
486
659
  const ink = luminanceOf(scope.color12);
487
- const surfaces = [scope.color1, scope.color2, scope.color3, scope.color4].map(luminanceOf);
660
+ const surfaces = [scope.color1, scope.color2, scope.color3, scope.color4, ...(scheme === "dark" ? [scope.color5] : [])].map(luminanceOf);
488
661
  if (paper === null || ink === null || surfaces.some(lum => lum === null)) continue;
489
662
  const labels = [scope.color1, scope.color12].sort((a, b) => luminanceOf(b) - luminanceOf(a));
490
663
  const solid = holdFillLabel(ramp[8], ramp.slice(0, 11), labels, paper);
@@ -500,8 +673,9 @@ function holdColorThemeAccent(themes) {
500
673
  };
501
674
  const rootOn = luminanceOf(base.switchTrackOff);
502
675
  const fillLum = luminanceOf(fill);
503
- const rootHolds = rootOn === null || fillLum === null || contrastRatio(rootOn, fillLum) >= switchStateContrastRatio;
504
- const track = rootHolds ? void 0 : switchTrackPaint(base, fill, scope.background, isLightGround(scope.background) ? [] : [scope.color4]);
676
+ const switchGround = switchOffGround(scope) ?? scope.background;
677
+ const rootHolds = rootOn === null || fillLum === null || contrastRatio(rootOn, fillLum) >= switchStateContrastRatio && inSwitchOffBand(base.switchTrackOff, switchGround) && (isLightGround(scope.background) ? [] : [scope.color4, scope.color5]).every(ground => contrastRatio(rootOn, luminanceOf(ground) ?? rootOn) >= plateContrastRatio);
678
+ const track = rootHolds ? void 0 : switchTrackPaint(base, fill, switchGround, isLightGround(scope.background) ? [] : [base.color4, scope.color4, scope.color5]);
505
679
  for (const [name, theme] of Object.entries(themes)) {
506
680
  if (name === scopeName) {
507
681
  out[name] = {
@@ -611,6 +785,34 @@ function holdHouseAccent(themes) {
611
785
  }
612
786
  return out;
613
787
  }
788
+ function holdHouseIdentityInk(themes) {
789
+ const out = {
790
+ ...themes
791
+ };
792
+ for (const scheme of ["light", "dark"]) {
793
+ const base = themes[scheme];
794
+ const blueInk = themes[`${scheme}_blue`]?.identityInk;
795
+ if (!base?.identityInk || !blueInk || base.identityInk === blueInk) continue;
796
+ const held = Array.from({
797
+ length: 12
798
+ }, (_, index) => index + 1).every(step => base[`accent${step}`] !== void 0 && base[`accent${step}`] === base[`blue${step}`]);
799
+ if (!held) continue;
800
+ for (const [name, theme] of Object.entries(themes)) {
801
+ if (name !== scheme && !name.startsWith(`${scheme}_`)) continue;
802
+ const scope = name.split("_")[1];
803
+ if (scope === "accent" || childrenHues.includes(scope)) continue;
804
+ if (theme.identityInk !== base.identityInk) continue;
805
+ const values = resolveThemeThroughParents(themes, name);
806
+ if (pickIdentityInk([blueInk], pageSurfaces(name, values)) === blueInk) {
807
+ out[name] = {
808
+ ...theme,
809
+ identityInk: blueInk
810
+ };
811
+ }
812
+ }
813
+ }
814
+ return out;
815
+ }
614
816
  const defaultLightShadows = {
615
817
  shadow1: "rgba(0,0,0,0.04)",
616
818
  shadow2: "rgba(0,0,0,0.08)",
@@ -665,6 +867,7 @@ function isChromatic(color) {
665
867
  const channels = [1, 3, 5].map(index => Number.parseInt(hex.slice(index, index + 2), 16));
666
868
  return Math.max(...channels) - Math.min(...channels) >= 24;
667
869
  }
870
+ const postPassThemeKeys = ["accentOnSurface", "borderColorControl", "borderColorField", "borderColorFieldHover", "borderColorHairline", "identityInk", "selectedBackground", "selectedColor", "switchTrackOff", "switchTrackOffBorder", "switchTrackOffHover", "switchTrackOffPress"];
668
871
  function createThemesBuilder(baseTheme, accentTheme, options) {
669
872
  const getTheme = options?.getTheme ? sanitizeGetTheme(options.getTheme) : void 0;
670
873
  const base = {
@@ -734,7 +937,7 @@ function createThemesBuilder(baseTheme, accentTheme, options) {
734
937
  createThemesProps.getTheme = getTheme;
735
938
  }
736
939
  const initialTheme = tamaguiCreateThemes(createThemesProps);
737
- const themes = withIdentityInk(withAccentOnSurface(holdFocusRingAccent(holdHouseAccent(holdColorThemeAccent(holdSwitchTrack(holdSyntaxFloor(holdNamedInkFloor(holdSelectedState(holdAccentFloor(holdSelectionSurface(neutralizeSemanticEntryText(neutralizeTintText(initialTheme)))))))))))));
940
+ const themes = holdHouseIdentityInk(withIdentityInk(withAccentOnSurface(holdFocusRingAccent(holdControlEdges(holdHouseAccent(holdColorThemeAccent(holdSwitchTrack(holdSyntaxFloor(holdNamedInkFloor(holdSelectedState(holdAccentFloor(holdDarkEdges(holdSelectionSurface(neutralizeSemanticEntryText(neutralizeTintText(initialTheme))))))))))))))));
738
941
  return {
739
942
  themes() {
740
943
  return themes;
@@ -764,5 +967,5 @@ function createThemesBuilder(baseTheme, accentTheme, options) {
764
967
  }
765
968
  };
766
969
  }
767
- export { createThemesBuilder, houseComponentThemes, houseGrandChildrenThemes, houseTemplates, tintHueNames };
970
+ export { createThemesBuilder, houseComponentThemes, houseGrandChildrenThemes, houseTemplates, postPassThemeKeys, tintHueNames };
768
971
  //# sourceMappingURL=createThemes.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["Colors","PALETTE_BACKGROUND_OFFSET","createThemes","tamaguiCreateThemes","defaultChildrenThemes","v5Templates","aaTextContrastRatio","apcaContrast","contrastRatio","fillLabelLc","holdInkFloor","inSwitchOffBand","isLightGround","minContrastRatio","normalizeToHex","pickReadableForeground","plateContrastRatio","relativeLuminance","switchOffFillAlpha","systemFillHex","systemFillLuminance","pickSecondaryInk","themeRampHues","withAccentOnSurface","withIdentityInk","tintHueNames","intentInkFloor","warning","success","withIntentInkFloor","palette","ink","length","stepped","lightSurfaceGrouped","light_surface1","background","backgroundHover","backgroundPress","backgroundFocus","backgroundActive","houseTemplates","houseComponentThemes","Button","template","Input","TextArea","Progress","ProgressIndicator","Slider","SliderActive","SliderThumb","Switch","Card","ListItem","SelectTrigger","SelectItem","InputContainerFrame","houseGrandChildrenThemes","active","alt1","alt2","sanitizeGetTheme","getTheme","props","out","key","value","Object","entries","tintNeutralTextKeys","neutralizeTintText","themes","name","theme","parts","split","scheme","has","base","patched","textMuted","semanticIntentNames","Set","entryControlNames","neutralizeSemanticEntryText","intent","component","rest","placeholderColor","neutral","luminanceOf","color","hex","nearestHoldingStep","preferred","steps","holds","preferredLum","best","bestDistance","Number","POSITIVE_INFINITY","step","lum","distance","Math","abs","holdAccentFloor","accentBackground","accentColor","paper","color1","color12","surfaces","color2","color3","color4","map","some","Array","from","_","index","fill","slice","max","accentInk","every","surface","startsWith","inheritsFill","inheritsInk","selectionSurfaceContrastRatio","selectionSurfaceScope","holdSelectionSurface","scopeName","scope","test","page","next","last","color5","color6","candidates","mixHex","held","find","candidate","borderColor","selectedTintContrastRatio","neutralSelectedTintContrastRatio","achromaticChannelSpread","isAchromaticRamp","channels","offset","parseInt","min","holdSelectedState","paint","selectedPaint","grey","offNeutral","tint","tintLum","strongest","strongestRatio","ratio","selectedBackground","selectedColor","switchStateContrastRatio","switchRaisedAlphas","switchRaisedAlphaStep","raisedGrounds","hues","filter","RegExp","holdSwitchTrack","switchTrackPaint","onFill","ground","raised","on","alpha","target","raisedLums","greys","hover","press","entry","fills","flatMap","fillAlpha","byTarget","a","b","sort","inBand","pick","switchTrackOff","switchTrackOffHover","switchTrackOffPress","syntaxInkHues","to","share","channel","round","toString","padStart","holdSyntaxFloor","hue","wash","toUpperCase","keys","namedInkHues","holdNamedInkFloor","walkToHoldingInk","step11","step12","labelHolds","label","fillLum","holdStateFill","ramp","at","indexOf","holding","holdFillLabel","labels","labelOn","holdColorThemeAccent","childrenHues","solid","holdsInk","fillHover","accent","rootOn","rootHolds","track","owned","fromEntries","borderColorHover","borderColorFocus","borderColorPress","colorHover","colorPress","colorFocus","boundaryColor","outlineColor","color10","color11","houseAccentKeys","isFullRamp","includes","houseAccentOf","blue","accentSteps","heldTheme","followed","holdHouseAccent","house","defaultLightShadows","shadow1","shadow2","shadow3","shadow4","shadow5","shadow6","defaultDarkShadows","holdFocusRingAccent","grounds","isChromatic","rootRing","scopeInk","ring","createThemesBuilder","baseTheme","accentTheme","options","dark","darkPalette","light","lightPalette","extra","assign","values","lightShadows","shadowColor","darkShadows","childrenThemes","yellowDark","yellow","error","redDark","red","greenDark","green","createThemesProps","templates","componentThemes","grandChildrenThemes","initialTheme","addTheme","addThemeProps","createdTheme","dark_accent","light_accent"],"sources":["../../../src/theme/createThemes.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Colors","PALETTE_BACKGROUND_OFFSET","createThemes","tamaguiCreateThemes","defaultChildrenThemes","v5Templates","aaTextContrastRatio","apcaContrast","contrastRatio","fillLabelLc","holdInkFloor","inSwitchOffBand","isLightGround","minContrastRatio","normalizeToHex","pickReadableForeground","plateContrastRatio","relativeLuminance","switchOffFillAlpha","switchOffGround","systemFillHex","systemFillLuminance","darkHairlineContrast","pickSecondaryInk","themeRampHues","pageSurfaces","pickIdentityInk","withAccentOnSurface","withIdentityInk","resolveThemeThroughParents","tintHueNames","intentInkFloor","warning","success","withIntentInkFloor","palette","ink","length","stepped","lightSurfaceGrouped","light_surface1","background","backgroundHover","backgroundPress","backgroundFocus","backgroundActive","fillKeys","edgeKeys","liftOneStep","template","lifted","key","darkSurfaceGrouped","dark_surface1","selectFill","selectPress","darkBasePage","dark_base","houseTemplates","dark_surface2","houseComponentThemes","Button","Input","TextArea","Progress","ProgressIndicator","Slider","SliderActive","SliderThumb","Switch","Card","ListItem","SelectTrigger","SelectItem","InputContainerFrame","houseGrandChildrenThemes","active","alt1","alt2","sanitizeGetTheme","getTheme","props","out","value","Object","entries","tintNeutralTextKeys","neutralizeTintText","themes","name","theme","parts","split","scheme","has","base","patched","textMuted","semanticIntentNames","Set","entryControlNames","neutralizeSemanticEntryText","intent","component","rest","placeholderColor","neutral","luminanceOf","color","hex","nearestHoldingStep","preferred","steps","holds","preferredLum","best","bestDistance","Number","POSITIVE_INFINITY","step","lum","distance","Math","abs","holdAccentFloor","accentBackground","accentColor","paper","color1","color12","surfaces","color2","color3","color4","color5","map","some","Array","from","_","index","fill","slice","max","accentInk","every","surface","startsWith","inheritsFill","inheritsInk","selectionSurfaceContrastRatio","selectionSurfaceScope","holdSelectionSurface","scopeName","scope","test","page","next","last","color6","candidates","mixHex","held","find","candidate","borderColor","holdDarkEdges","scopes","keys","filter","ownerOf","reduce","longest","ramp","grounds","ground","brightest","clears","luminance","hairline","findIndex","medium","indexOf","shift","moved","borderColorHairline","at","min","holdControlEdges","firstClearing","lums","darkest","light","resolved","lastIndexOf","includes","root","fieldEdges","field","edge","stepOf","hover","borderColorField","borderColorFieldHover","rootFields","rootControl","borderColorControl","switchTrackOffBorder","switchTrackOff","RegExp","pages","patch","fields","control","selectedTintContrastRatio","neutralSelectedTintContrastRatio","achromaticChannelSpread","isAchromaticRamp","channels","offset","parseInt","holdSelectedState","paint","selectedPaint","grey","offNeutral","tint","tintLum","strongest","strongestRatio","ratio","selectedBackground","selectedColor","switchStateContrastRatio","switchRaisedAlphas","switchRaisedAlphaStep","raisedGrounds","hues","flatMap","holdSwitchTrack","switchTrackPaint","off","track","onFill","raised","on","alpha","target","raisedLums","greys","press","entry","fills","fillAlpha","byTarget","a","b","sort","inBand","pick","switchTrackOffHover","switchTrackOffPress","syntaxInkHues","to","share","channel","round","toString","padStart","holdSyntaxFloor","hue","wash","toUpperCase","namedInkHues","holdNamedInkFloor","walkToHoldingInk","step11","step12","labelHolds","label","fillLum","holdStateFill","holding","holdFillLabel","labels","labelOn","holdColorThemeAccent","childrenHues","solid","holdsInk","fillHover","accent","rootOn","switchGround","rootHolds","owned","fromEntries","borderColorHover","borderColorFocus","borderColorPress","colorHover","colorPress","colorFocus","boundaryColor","outlineColor","color10","color11","houseAccentKeys","isFullRamp","houseAccentOf","blue","accentSteps","heldTheme","followed","holdHouseAccent","house","holdHouseIdentityInk","blueInk","identityInk","values","defaultLightShadows","shadow1","shadow2","shadow3","shadow4","shadow5","shadow6","defaultDarkShadows","holdFocusRingAccent","isChromatic","rootRing","scopeInk","ring","postPassThemeKeys","createThemesBuilder","baseTheme","accentTheme","options","dark","darkPalette","lightPalette","extra","assign","lightShadows","shadowColor","darkShadows","childrenThemes","yellowDark","yellow","error","redDark","red","greenDark","green","createThemesProps","templates","componentThemes","grandChildrenThemes","initialTheme","addTheme","addThemeProps","createdTheme","dark_accent","light_accent"],"sources":["../../../src/theme/createThemes.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}