@tamagui/theme-builder 1.79.19 → 1.80.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 (63) hide show
  1. package/dist/cjs/ThemeBuilder.js +4 -1
  2. package/dist/cjs/ThemeBuilder.js.map +1 -1
  3. package/dist/cjs/ThemeBuilder.native.js +4 -1
  4. package/dist/cjs/ThemeBuilder.native.js.map +1 -1
  5. package/dist/cjs/buildMask.js +1 -1
  6. package/dist/cjs/buildMask.js.map +1 -1
  7. package/dist/cjs/buildMask.native.js +1 -1
  8. package/dist/cjs/buildMask.native.js.map +1 -1
  9. package/dist/cjs/buildThemeSuite.js +230 -245
  10. package/dist/cjs/buildThemeSuite.js.map +2 -2
  11. package/dist/cjs/buildThemeSuite.native.js +230 -245
  12. package/dist/cjs/buildThemeSuite.native.js.map +2 -2
  13. package/dist/cjs/buildThemeSuiteScales.js.map +1 -1
  14. package/dist/cjs/buildThemeSuiteScales.native.js.map +1 -1
  15. package/dist/cjs/index.js +1 -11
  16. package/dist/cjs/index.js.map +1 -1
  17. package/dist/cjs/index.native.js +1 -11
  18. package/dist/cjs/index.native.js.map +1 -1
  19. package/dist/cjs/masks.js +0 -142
  20. package/dist/cjs/masks.js.map +2 -2
  21. package/dist/cjs/masks.native.js +0 -142
  22. package/dist/cjs/masks.native.js.map +2 -2
  23. package/dist/esm/ThemeBuilder.js +4 -1
  24. package/dist/esm/ThemeBuilder.js.map +1 -1
  25. package/dist/esm/ThemeBuilder.native.js +4 -1
  26. package/dist/esm/ThemeBuilder.native.js.map +1 -1
  27. package/dist/esm/buildMask.js +1 -1
  28. package/dist/esm/buildMask.js.map +1 -1
  29. package/dist/esm/buildMask.native.js +1 -1
  30. package/dist/esm/buildMask.native.js.map +1 -1
  31. package/dist/esm/buildThemeSuite.js +227 -248
  32. package/dist/esm/buildThemeSuite.js.map +2 -2
  33. package/dist/esm/buildThemeSuite.native.js +227 -248
  34. package/dist/esm/buildThemeSuite.native.js.map +2 -2
  35. package/dist/esm/buildThemeSuiteScales.js.map +1 -1
  36. package/dist/esm/buildThemeSuiteScales.native.js.map +1 -1
  37. package/dist/esm/index.js +0 -5
  38. package/dist/esm/index.js.map +1 -1
  39. package/dist/esm/index.native.js +0 -5
  40. package/dist/esm/index.native.js.map +1 -1
  41. package/dist/esm/masks.js +0 -129
  42. package/dist/esm/masks.js.map +2 -2
  43. package/dist/esm/masks.native.js +0 -129
  44. package/dist/esm/masks.native.js.map +2 -2
  45. package/package.json +3 -3
  46. package/src/ThemeBuilder.ts +15 -8
  47. package/src/index.ts +0 -7
  48. package/types/ThemeBuilder.d.ts +5 -1
  49. package/types/ThemeBuilder.d.ts.map +1 -1
  50. package/types/buildMask.d.ts.map +1 -1
  51. package/types/buildThemeSuite.d.ts +4 -1639
  52. package/types/buildThemeSuite.d.ts.map +1 -1
  53. package/types/buildThemeSuiteScales.d.ts.map +1 -1
  54. package/types/index.d.ts +0 -5
  55. package/types/index.d.ts.map +1 -1
  56. package/types/types.d.ts +13 -8
  57. package/types/types.d.ts.map +1 -1
  58. package/src/buildMask.ts +0 -63
  59. package/src/buildThemeSuite.ts +0 -384
  60. package/src/buildThemeSuitePalettes.ts +0 -164
  61. package/src/buildThemeSuiteScales.ts +0 -254
  62. package/src/masks.ts +0 -147
  63. package/src/types.ts +0 -102
package/dist/esm/masks.js CHANGED
@@ -1,130 +1 @@
1
- import {
2
- combineMasks,
3
- createIdentityMask,
4
- createInverseMask,
5
- createMask,
6
- createSoftenMask,
7
- createStrengthenMask,
8
- skipMask
9
- } from "@tamagui/create-theme";
10
- const shadows = {
11
- shadowColor: 0,
12
- shadowColorHover: 0,
13
- shadowColorPress: 0,
14
- shadowColorFocus: 0
15
- }, colors = {
16
- ...shadows,
17
- color: 0,
18
- colorHover: 0,
19
- colorFocus: 0,
20
- colorPress: 0
21
- }, templateColorsSpecific = {
22
- color1: 1,
23
- color2: 2,
24
- color3: 3,
25
- color4: 4,
26
- color5: 5,
27
- color6: 6,
28
- color7: 7,
29
- color8: 8,
30
- color9: 9,
31
- color10: 10,
32
- color11: 11,
33
- color12: 12
34
- }, skipShadowsAndSpecificColors = {
35
- ...shadows,
36
- ...templateColorsSpecific
37
- }, PALETTE_LEN = 14, baseMaskOptions = {
38
- override: shadows,
39
- skip: shadows,
40
- // avoids the transparent ends
41
- max: PALETTE_LEN - 2,
42
- min: 1
43
- }, maskOptions = {
44
- component: {
45
- ...baseMaskOptions,
46
- override: colors,
47
- skip: skipShadowsAndSpecificColors
48
- },
49
- alt: {
50
- ...baseMaskOptions
51
- },
52
- button: {
53
- ...baseMaskOptions,
54
- override: {
55
- ...colors,
56
- borderColor: "transparent",
57
- borderColorHover: "transparent"
58
- },
59
- skip: skipShadowsAndSpecificColors
60
- }
61
- }, masks = {
62
- identity: createIdentityMask(),
63
- soften: createSoftenMask(),
64
- soften2: createSoftenMask({ strength: 2 }),
65
- soften3: createSoftenMask({ strength: 3 }),
66
- strengthen: createStrengthenMask(),
67
- inverse: createInverseMask(),
68
- inverseSoften: combineMasks(createInverseMask(), createSoftenMask({ strength: 2 })),
69
- inverseSoften2: combineMasks(createInverseMask(), createSoftenMask({ strength: 3 })),
70
- inverseSoften3: combineMasks(createInverseMask(), createSoftenMask({ strength: 4 })),
71
- inverseStrengthen2: combineMasks(
72
- createInverseMask(),
73
- createStrengthenMask({ strength: 2 })
74
- ),
75
- strengthenButSoftenBorder: createMask((template, options) => {
76
- const stronger = createStrengthenMask().mask(template, options), softer = createSoftenMask().mask(template, options);
77
- return {
78
- ...stronger,
79
- borderColor: softer.borderColor,
80
- borderColorHover: softer.borderColorHover,
81
- borderColorPress: softer.borderColorPress,
82
- borderColorFocus: softer.borderColorFocus
83
- };
84
- }),
85
- soften2Border1: createMask((template, options) => {
86
- const softer2 = createSoftenMask({ strength: 2 }).mask(template, options), softer1 = createSoftenMask({ strength: 1 }).mask(template, options);
87
- return {
88
- ...softer2,
89
- borderColor: softer1.borderColor,
90
- borderColorHover: softer1.borderColorHover,
91
- borderColorPress: softer1.borderColorPress,
92
- borderColorFocus: softer1.borderColorFocus
93
- };
94
- }),
95
- soften3FlatBorder: createMask((template, options) => {
96
- const borderMask = createSoftenMask({ strength: 2 }).mask(template, options);
97
- return {
98
- ...createSoftenMask({ strength: 3 }).mask(template, options),
99
- borderColor: borderMask.borderColor,
100
- borderColorHover: borderMask.borderColorHover,
101
- borderColorPress: borderMask.borderColorPress,
102
- borderColorFocus: borderMask.borderColorFocus
103
- };
104
- }),
105
- softenBorder: createMask((template, options) => {
106
- const plain = skipMask.mask(template, options), softer = createSoftenMask().mask(template, options);
107
- return {
108
- ...plain,
109
- borderColor: softer.borderColor,
110
- borderColorHover: softer.borderColorHover,
111
- borderColorPress: softer.borderColorPress,
112
- borderColorFocus: softer.borderColorFocus
113
- };
114
- }),
115
- softenBorder2: createMask((template, options) => {
116
- const plain = skipMask.mask(template, options), softer = createSoftenMask({ strength: 2 }).mask(template, options);
117
- return {
118
- ...plain,
119
- borderColor: softer.borderColor,
120
- borderColorHover: softer.borderColorHover,
121
- borderColorPress: softer.borderColorPress,
122
- borderColorFocus: softer.borderColorFocus
123
- };
124
- })
125
- };
126
- export {
127
- maskOptions,
128
- masks
129
- };
130
1
  //# sourceMappingURL=masks.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../src/masks.ts"],
4
- "mappings": "AAAA;AAAA,EAGE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP,MAAM,UAAU;AAAA,EACd,aAAa;AAAA,EACb,kBAAkB;AAAA,EAClB,kBAAkB;AAAA,EAClB,kBAAkB;AACpB,GAEM,SAAS;AAAA,EACb,GAAG;AAAA,EACH,OAAO;AAAA,EACP,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ,YAAY;AACd,GAEM,yBAAyB;AAAA,EAC7B,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,SAAS;AAAA,EACT,SAAS;AACX,GAEM,+BAA+B;AAAA,EACnC,GAAG;AAAA,EACH,GAAG;AACL,GAEM,cAAc,IAEd,kBAA+B;AAAA,EACnC,UAAU;AAAA,EACV,MAAM;AAAA;AAAA,EAEN,KAAK,cAAc;AAAA,EACnB,KAAK;AACP,GAEa,cAAc;AAAA,EACzB,WAAW;AAAA,IACT,GAAG;AAAA,IACH,UAAU;AAAA,IACV,MAAM;AAAA,EACR;AAAA,EACA,KAAK;AAAA,IACH,GAAG;AAAA,EACL;AAAA,EACA,QAAQ;AAAA,IACN,GAAG;AAAA,IACH,UAAU;AAAA,MACR,GAAG;AAAA,MACH,aAAa;AAAA,MACb,kBAAkB;AAAA,IACpB;AAAA,IACA,MAAM;AAAA,EACR;AACF,GAEa,QAAQ;AAAA,EACnB,UAAU,mBAAmB;AAAA,EAC7B,QAAQ,iBAAiB;AAAA,EACzB,SAAS,iBAAiB,EAAE,UAAU,EAAE,CAAC;AAAA,EACzC,SAAS,iBAAiB,EAAE,UAAU,EAAE,CAAC;AAAA,EACzC,YAAY,qBAAqB;AAAA,EACjC,SAAS,kBAAkB;AAAA,EAC3B,eAAe,aAAa,kBAAkB,GAAG,iBAAiB,EAAE,UAAU,EAAE,CAAC,CAAC;AAAA,EAClF,gBAAgB,aAAa,kBAAkB,GAAG,iBAAiB,EAAE,UAAU,EAAE,CAAC,CAAC;AAAA,EACnF,gBAAgB,aAAa,kBAAkB,GAAG,iBAAiB,EAAE,UAAU,EAAE,CAAC,CAAC;AAAA,EACnF,oBAAoB;AAAA,IAClB,kBAAkB;AAAA,IAClB,qBAAqB,EAAE,UAAU,EAAE,CAAC;AAAA,EACtC;AAAA,EACA,2BAA2B,WAAW,CAAC,UAAU,YAAY;AAC3D,UAAM,WAAW,qBAAqB,EAAE,KAAK,UAAU,OAAO,GACxD,SAAS,iBAAiB,EAAE,KAAK,UAAU,OAAO;AACxD,WAAO;AAAA,MACL,GAAG;AAAA,MACH,aAAa,OAAO;AAAA,MACpB,kBAAkB,OAAO;AAAA,MACzB,kBAAkB,OAAO;AAAA,MACzB,kBAAkB,OAAO;AAAA,IAC3B;AAAA,EACF,CAAC;AAAA,EACD,gBAAgB,WAAW,CAAC,UAAU,YAAY;AAChD,UAAM,UAAU,iBAAiB,EAAE,UAAU,EAAE,CAAC,EAAE,KAAK,UAAU,OAAO,GAClE,UAAU,iBAAiB,EAAE,UAAU,EAAE,CAAC,EAAE,KAAK,UAAU,OAAO;AACxE,WAAO;AAAA,MACL,GAAG;AAAA,MACH,aAAa,QAAQ;AAAA,MACrB,kBAAkB,QAAQ;AAAA,MAC1B,kBAAkB,QAAQ;AAAA,MAC1B,kBAAkB,QAAQ;AAAA,IAC5B;AAAA,EACF,CAAC;AAAA,EACD,mBAAmB,WAAW,CAAC,UAAU,YAAY;AACnD,UAAM,aAAa,iBAAiB,EAAE,UAAU,EAAE,CAAC,EAAE,KAAK,UAAU,OAAO;AAE3E,WAAO;AAAA,MACL,GAFc,iBAAiB,EAAE,UAAU,EAAE,CAAC,EAAE,KAAK,UAAU,OAAO;AAAA,MAGtE,aAAa,WAAW;AAAA,MACxB,kBAAkB,WAAW;AAAA,MAC7B,kBAAkB,WAAW;AAAA,MAC7B,kBAAkB,WAAW;AAAA,IAC/B;AAAA,EACF,CAAC;AAAA,EACD,cAAc,WAAW,CAAC,UAAU,YAAY;AAC9C,UAAM,QAAQ,SAAS,KAAK,UAAU,OAAO,GACvC,SAAS,iBAAiB,EAAE,KAAK,UAAU,OAAO;AACxD,WAAO;AAAA,MACL,GAAG;AAAA,MACH,aAAa,OAAO;AAAA,MACpB,kBAAkB,OAAO;AAAA,MACzB,kBAAkB,OAAO;AAAA,MACzB,kBAAkB,OAAO;AAAA,IAC3B;AAAA,EACF,CAAC;AAAA,EACD,eAAe,WAAW,CAAC,UAAU,YAAY;AAC/C,UAAM,QAAQ,SAAS,KAAK,UAAU,OAAO,GACvC,SAAS,iBAAiB,EAAE,UAAU,EAAE,CAAC,EAAE,KAAK,UAAU,OAAO;AACvE,WAAO;AAAA,MACL,GAAG;AAAA,MACH,aAAa,OAAO;AAAA,MACpB,kBAAkB,OAAO;AAAA,MACzB,kBAAkB,OAAO;AAAA,MACzB,kBAAkB,OAAO;AAAA,IAC3B;AAAA,EACF,CAAC;AACH;",
3
+ "sources": [],
4
+ "mappings": "",
5
5
  "names": []
6
6
  }
@@ -1,130 +1 @@
1
- import {
2
- combineMasks,
3
- createIdentityMask,
4
- createInverseMask,
5
- createMask,
6
- createSoftenMask,
7
- createStrengthenMask,
8
- skipMask
9
- } from "@tamagui/create-theme";
10
- const shadows = {
11
- shadowColor: 0,
12
- shadowColorHover: 0,
13
- shadowColorPress: 0,
14
- shadowColorFocus: 0
15
- }, colors = {
16
- ...shadows,
17
- color: 0,
18
- colorHover: 0,
19
- colorFocus: 0,
20
- colorPress: 0
21
- }, templateColorsSpecific = {
22
- color1: 1,
23
- color2: 2,
24
- color3: 3,
25
- color4: 4,
26
- color5: 5,
27
- color6: 6,
28
- color7: 7,
29
- color8: 8,
30
- color9: 9,
31
- color10: 10,
32
- color11: 11,
33
- color12: 12
34
- }, skipShadowsAndSpecificColors = {
35
- ...shadows,
36
- ...templateColorsSpecific
37
- }, PALETTE_LEN = 14, baseMaskOptions = {
38
- override: shadows,
39
- skip: shadows,
40
- // avoids the transparent ends
41
- max: PALETTE_LEN - 2,
42
- min: 1
43
- }, maskOptions = {
44
- component: {
45
- ...baseMaskOptions,
46
- override: colors,
47
- skip: skipShadowsAndSpecificColors
48
- },
49
- alt: {
50
- ...baseMaskOptions
51
- },
52
- button: {
53
- ...baseMaskOptions,
54
- override: {
55
- ...colors,
56
- borderColor: "transparent",
57
- borderColorHover: "transparent"
58
- },
59
- skip: skipShadowsAndSpecificColors
60
- }
61
- }, masks = {
62
- identity: createIdentityMask(),
63
- soften: createSoftenMask(),
64
- soften2: createSoftenMask({ strength: 2 }),
65
- soften3: createSoftenMask({ strength: 3 }),
66
- strengthen: createStrengthenMask(),
67
- inverse: createInverseMask(),
68
- inverseSoften: combineMasks(createInverseMask(), createSoftenMask({ strength: 2 })),
69
- inverseSoften2: combineMasks(createInverseMask(), createSoftenMask({ strength: 3 })),
70
- inverseSoften3: combineMasks(createInverseMask(), createSoftenMask({ strength: 4 })),
71
- inverseStrengthen2: combineMasks(
72
- createInverseMask(),
73
- createStrengthenMask({ strength: 2 })
74
- ),
75
- strengthenButSoftenBorder: createMask((template, options) => {
76
- const stronger = createStrengthenMask().mask(template, options), softer = createSoftenMask().mask(template, options);
77
- return {
78
- ...stronger,
79
- borderColor: softer.borderColor,
80
- borderColorHover: softer.borderColorHover,
81
- borderColorPress: softer.borderColorPress,
82
- borderColorFocus: softer.borderColorFocus
83
- };
84
- }),
85
- soften2Border1: createMask((template, options) => {
86
- const softer2 = createSoftenMask({ strength: 2 }).mask(template, options), softer1 = createSoftenMask({ strength: 1 }).mask(template, options);
87
- return {
88
- ...softer2,
89
- borderColor: softer1.borderColor,
90
- borderColorHover: softer1.borderColorHover,
91
- borderColorPress: softer1.borderColorPress,
92
- borderColorFocus: softer1.borderColorFocus
93
- };
94
- }),
95
- soften3FlatBorder: createMask((template, options) => {
96
- const borderMask = createSoftenMask({ strength: 2 }).mask(template, options);
97
- return {
98
- ...createSoftenMask({ strength: 3 }).mask(template, options),
99
- borderColor: borderMask.borderColor,
100
- borderColorHover: borderMask.borderColorHover,
101
- borderColorPress: borderMask.borderColorPress,
102
- borderColorFocus: borderMask.borderColorFocus
103
- };
104
- }),
105
- softenBorder: createMask((template, options) => {
106
- const plain = skipMask.mask(template, options), softer = createSoftenMask().mask(template, options);
107
- return {
108
- ...plain,
109
- borderColor: softer.borderColor,
110
- borderColorHover: softer.borderColorHover,
111
- borderColorPress: softer.borderColorPress,
112
- borderColorFocus: softer.borderColorFocus
113
- };
114
- }),
115
- softenBorder2: createMask((template, options) => {
116
- const plain = skipMask.mask(template, options), softer = createSoftenMask({ strength: 2 }).mask(template, options);
117
- return {
118
- ...plain,
119
- borderColor: softer.borderColor,
120
- borderColorHover: softer.borderColorHover,
121
- borderColorPress: softer.borderColorPress,
122
- borderColorFocus: softer.borderColorFocus
123
- };
124
- })
125
- };
126
- export {
127
- maskOptions,
128
- masks
129
- };
130
1
  //# sourceMappingURL=masks.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../src/masks.ts"],
4
- "mappings": "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",
3
+ "sources": [],
4
+ "mappings": "",
5
5
  "names": []
6
6
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/theme-builder",
3
- "version": "1.79.19",
3
+ "version": "1.80.0",
4
4
  "source": "src/index.ts",
5
5
  "types": "./types/index.d.ts",
6
6
  "main": "dist/cjs",
@@ -27,11 +27,11 @@
27
27
  }
28
28
  },
29
29
  "dependencies": {
30
- "@tamagui/create-theme": "1.79.19",
30
+ "@tamagui/create-theme": "1.80.0",
31
31
  "color2k": "^2.0.2"
32
32
  },
33
33
  "devDependencies": {
34
- "@tamagui/build": "1.79.19"
34
+ "@tamagui/build": "1.80.0"
35
35
  },
36
36
  "publishConfig": {
37
37
  "access": "public"
@@ -72,7 +72,7 @@ type GetParentName<N extends string> =
72
72
  ? `${A}`
73
73
  : never
74
74
 
75
- export class ThemeBuilder<State extends ThemeBuilderState> {
75
+ export class ThemeBuilder<State extends ThemeBuilderState = ThemeBuilderState> {
76
76
  constructor(public state: State) {}
77
77
 
78
78
  addPalettes<const P extends PaletteDefinitions>(palettes: P) {
@@ -116,22 +116,27 @@ export class ThemeBuilder<State extends ThemeBuilderState> {
116
116
  >
117
117
  }
118
118
 
119
+ // for dev mode only really
120
+ _addedThemes: { type: 'themes' | 'childThemes'; args: any }[] = []
121
+
119
122
  addThemes<const T extends ThemeDefinitions<ObjectStringKeys<State['masks']>>>(
120
123
  themes: T
121
124
  ) {
125
+ this._addedThemes.push({ type: 'themes', args: [themes] })
126
+
122
127
  this.state.themes = {
123
128
  // as {} prevents generic string key merge messing up types
124
129
  ...(this.state.themes as {}),
125
130
  ...themes,
126
131
  }
127
132
 
128
- type TemplateToTheme<X> = State['templates'] extends {}
129
- ? X extends { template: infer Y; nonInheritedValues: infer Z }
130
- ? Y extends keyof State['templates']
131
- ? { theme: Record<keyof State['templates'][Y] | keyof Z, string> }
132
- : X
133
- : X
134
- : X
133
+ // type TemplateToTheme<X> = State['templates'] extends {}
134
+ // ? X extends { template: infer Y; nonInheritedValues: infer Z }
135
+ // ? Y extends keyof State['templates']
136
+ // ? { theme: Record<keyof State['templates'][Y] | keyof Z, string> }
137
+ // : X
138
+ // : X
139
+ // : X
135
140
 
136
141
  return this as any as ThemeBuilder<
137
142
  Omit<State, 'themes'> & {
@@ -160,6 +165,8 @@ export class ThemeBuilder<State extends ThemeBuilderState> {
160
165
  )
161
166
  }
162
167
 
168
+ this._addedThemes.push({ type: 'childThemes', args: [childThemeDefinition, options] })
169
+
163
170
  // AvoidNestingWithin[number] exclude isn't working here...
164
171
  type CurrentNames = Exclude<keyof typeof currentThemes, symbol | number>
165
172
  type ChildNames = Exclude<keyof CTD, symbol | number>
package/src/index.ts CHANGED
@@ -1,9 +1,2 @@
1
1
  export * from './ThemeBuilder'
2
2
  export * from '@tamagui/create-theme'
3
- export * from './buildMask'
4
- export * from './types'
5
-
6
- // theme suite builders
7
- export * from './buildThemeSuite'
8
- export * from './buildThemeSuitePalettes'
9
- export * from './buildThemeSuiteScales'
@@ -22,7 +22,7 @@ type ThemeBuilderBuildResult<S extends ThemeBuilderState> = {
22
22
  [Key in keyof S['themes']]: GetGeneratedTheme<S['themes'][Key], S>;
23
23
  };
24
24
  type GetParentName<N extends string> = N extends `${infer A}_${infer B}_${infer C}_${infer D}_${string}` ? `${A}_${B}_${C}_${D}` : N extends `${infer A}_${infer B}_${infer C}_${string}` ? `${A}_${B}_${C}` : N extends `${infer A}_${infer B}_${string}` ? `${A}_${B}` : N extends `${infer A}_${string}` ? `${A}` : never;
25
- export declare class ThemeBuilder<State extends ThemeBuilderState> {
25
+ export declare class ThemeBuilder<State extends ThemeBuilderState = ThemeBuilderState> {
26
26
  state: State;
27
27
  constructor(state: State);
28
28
  addPalettes<const P extends PaletteDefinitions>(palettes: P): ThemeBuilder<State & {
@@ -34,6 +34,10 @@ export declare class ThemeBuilder<State extends ThemeBuilderState> {
34
34
  addMasks<const M extends MaskDefinitions>(masks: M): ThemeBuilder<State & {
35
35
  masks: M;
36
36
  }>;
37
+ _addedThemes: {
38
+ type: 'themes' | 'childThemes';
39
+ args: any;
40
+ }[];
37
41
  addThemes<const T extends ThemeDefinitions<ObjectStringKeys<State['masks']>>>(themes: T): ThemeBuilder<Omit<State, "themes"> & {
38
42
  themes: T;
39
43
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"ThemeBuilder.d.ts","sourceRoot":"","sources":["../src/ThemeBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ThemeBuilder.d.ts","sourceRoot":"","sources":["../src/ThemeBuilder.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"buildMask.d.ts","sourceRoot":"","sources":["../src/buildMask.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAOX,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAKnC,wBAAgB,SAAS,CAAC,KAAK,EAAE,SAAS,EAAE,cA+C3C"}
1
+ {"version":3,"file":"buildMask.d.ts","sourceRoot":"","sources":["../src/buildMask.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAOX,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAKnC,wBAAgB,SAAS,CAAC,KAAK,EAAE,SAAS,EAAE,cAkD3C"}