@tamagui/theme-builder 1.138.0 → 1.138.2
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.
- package/dist/cjs/ThemeBuilder.cjs +15 -1
- package/dist/cjs/ThemeBuilder.js +15 -1
- package/dist/cjs/ThemeBuilder.js.map +1 -1
- package/dist/cjs/ThemeBuilder.native.js +17 -2
- package/dist/cjs/ThemeBuilder.native.js.map +1 -1
- package/dist/cjs/createThemes.cjs +6 -3
- package/dist/cjs/createThemes.js +6 -3
- package/dist/cjs/createThemes.js.map +1 -1
- package/dist/cjs/createThemes.native.js +6 -3
- package/dist/cjs/createThemes.native.js.map +1 -1
- package/dist/esm/ThemeBuilder.js +15 -1
- package/dist/esm/ThemeBuilder.js.map +1 -1
- package/dist/esm/ThemeBuilder.mjs +15 -1
- package/dist/esm/ThemeBuilder.mjs.map +1 -1
- package/dist/esm/ThemeBuilder.native.js +17 -2
- package/dist/esm/ThemeBuilder.native.js.map +1 -1
- package/dist/esm/createThemes.js +6 -3
- package/dist/esm/createThemes.js.map +1 -1
- package/dist/esm/createThemes.mjs +6 -3
- package/dist/esm/createThemes.mjs.map +1 -1
- package/dist/esm/createThemes.native.js +6 -3
- package/dist/esm/createThemes.native.js.map +1 -1
- package/package.json +8 -5
- package/src/ThemeBuilder.ts +79 -10
- package/src/createThemes.ts +26 -14
- package/src/types.ts +11 -0
- package/types/ThemeBuilder.d.ts +32 -10
- package/types/ThemeBuilder.d.ts.map +1 -1
- package/types/createStudioThemes.d.ts +1 -1
- package/types/createThemes.d.ts +6 -9
- package/types/createThemes.d.ts.map +1 -1
- package/types/defaultTemplates.d.ts +1 -1
- package/types/defaultTemplatesStronger.d.ts +1 -1
- package/types/defaultTemplatesStrongest.d.ts +1 -1
- package/types/types.d.ts +10 -0
- package/types/types.d.ts.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["applyMask","createMask","createThemeWithPalettes","objectEntries","objectFromEntries","_class_call_check","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","value","ThemeBuilder","ThemeBuilder2","state","_addedThemes","palettes","templates","masks","map","param","val","themes","push","type","args","childThemeDefinition","options","addChildThemes","currentThemes","Error","currentThemeNames","keys","incomingThemeNames","namesWithDefinitions","flatMap","prefix","avoidNestingWithin","some","avoidName","startsWith","endsWith","subName","fullName","definition","avoidNest","name","filter","Boolean","childThemes","fromEntries","next","_this","_loop","themeName2","nameParts","split","parentName2","slice","join","definitions","themeDefinition","Array","isArray","found","find","d","parent","out","theme","maskedThemes","parentName","themeName","mask"],"sources":["../../src/ThemeBuilder.ts"],"sourcesContent":[null],"mappings":"
|
|
1
|
+
{"version":3,"names":["applyMask","createMask","createThemeWithPalettes","objectEntries","objectFromEntries","_class_call_check","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","value","ThemeBuilder","ThemeBuilder2","state","_addedThemes","palettes","templates","masks","map","param","val","themes","push","type","args","childThemeDefinition","options","addChildThemes","currentThemes","Error","currentThemeNames","keys","incomingThemeNames","namesWithDefinitions","flatMap","prefix","avoidNestingWithin","some","avoidName","startsWith","endsWith","subName","fullName","definition","avoidNest","name","filter","Boolean","childThemes","fromEntries","next","fn","_getThemeFn","_this","_loop","themeName2","nameParts","split","parentName2","slice","join","definitions","themeDefinition","Array","isArray","found","find","d","parent","out","theme","maskedThemes","parentName","themeName","mask","_this_state_templates","_this_state_templates1","palette","paletteName","template","templateName","options2","parentDefinition","attemptParentName","msg","process","env","NODE_ENV"],"sources":["../../src/ThemeBuilder.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/esm/createThemes.js
CHANGED
|
@@ -9,7 +9,8 @@ function createThemes(props) {
|
|
|
9
9
|
childrenThemes,
|
|
10
10
|
grandChildrenThemes,
|
|
11
11
|
templates = defaultTemplates,
|
|
12
|
-
componentThemes
|
|
12
|
+
componentThemes,
|
|
13
|
+
getTheme
|
|
13
14
|
} = props, builder = createSimpleThemeBuilder({
|
|
14
15
|
extra: props.base.extra,
|
|
15
16
|
componentThemes,
|
|
@@ -17,7 +18,8 @@ function createThemes(props) {
|
|
|
17
18
|
templates,
|
|
18
19
|
accentTheme: !!accent,
|
|
19
20
|
childrenThemes: normalizeSubThemes(childrenThemes),
|
|
20
|
-
grandChildrenThemes: grandChildrenThemes ? normalizeSubThemes(grandChildrenThemes) : void 0
|
|
21
|
+
grandChildrenThemes: grandChildrenThemes ? normalizeSubThemes(grandChildrenThemes) : void 0,
|
|
22
|
+
getTheme
|
|
21
23
|
});
|
|
22
24
|
return lastBuilder = builder.themeBuilder, builder.themes;
|
|
23
25
|
}
|
|
@@ -46,6 +48,7 @@ const defaultPalettes = createPalettes(
|
|
|
46
48
|
);
|
|
47
49
|
function createSimpleThemeBuilder(props) {
|
|
48
50
|
const {
|
|
51
|
+
getTheme,
|
|
49
52
|
extra,
|
|
50
53
|
childrenThemes = null,
|
|
51
54
|
grandChildrenThemes = null,
|
|
@@ -120,7 +123,7 @@ function createSimpleThemeBuilder(props) {
|
|
|
120
123
|
// ...Object.keys(childrenThemes || {}),
|
|
121
124
|
...Object.keys(grandChildrenThemes || {})
|
|
122
125
|
]
|
|
123
|
-
})), {
|
|
126
|
+
})), getTheme && (themeBuilder = themeBuilder.getTheme(getTheme)), {
|
|
124
127
|
themeBuilder,
|
|
125
128
|
themes: themeBuilder.build()
|
|
126
129
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/createThemes.ts"],
|
|
4
|
-
"mappings": "AAAA,SAAS,mBAAmB;AAC5B,SAAS,8BAA8B;AACvC,SAAS,wBAAwB;AACjC,SAAS,uBAAuB,iCAAiC;AACjE,SAAS,0BAA6C;
|
|
4
|
+
"mappings": "AAAA,SAAS,mBAAmB;AAC5B,SAAS,8BAA8B;AACvC,SAAS,wBAAwB;AACjC,SAAS,uBAAuB,iCAAiC;AACjE,SAAS,0BAA6C;AAgD/C,SAAS,aAQd,OAQA;AACA,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA,YAAY;AAAA,IACZ;AAAA,IACA;AAAA,EACF,IAAI,OAEE,UAAU,yBAAyB;AAAA,IACvC,OAAO,MAAM,KAAK;AAAA,IAClB;AAAA,IACA,UAAU,eAAe,kBAAkB,KAAY,CAAC;AAAA,IACxD;AAAA,IACA,aAAa,CAAC,CAAC;AAAA,IACf,gBAAgB,mBAAmB,cAAc;AAAA,IACjD,qBAAsB,sBAClB,mBAAmB,mBAAmB,IACtC;AAAA,IAGJ;AAAA,EACF,CAAC;AAED,uBAAc,QAAQ,cAEf,QAAQ;AACjB;AAEA,IAAI,cAAmC;AAEhC,MAAM,iBAAiB,MAAM;AAEpC,SAAS,mBAAqD,MAAU;AACtE,SAAO,OAAO;AAAA,IACZ,OAAO,QAAQ,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,MAAM,KAAK,MACnC;AAAA,MACL;AAAA,MACA;AAAA,QACE,SAAS;AAAA,QACT,UAAU,MAAM,YAAY;AAAA,MAC9B;AAAA,IACF,CACD;AAAA,EACH;AACF;AAEA,MAAM,kBAA4C;AAAA,EAChD,kBAAkB;AAAA,IAChB,MAAM;AAAA,MACJ,SAAS,CAAC,QAAQ,MAAM;AAAA,IAC1B;AAAA,IACA,QAAQ;AAAA,MACN,SAAS,CAAC,WAAW,SAAS;AAAA,IAChC;AAAA,EACF,CAAC;AACH;AAOO,SAAS,yBAuCd,OAYA;AACA,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA,iBAAiB;AAAA,IACjB,sBAAsB;AAAA,IACtB,YAAY;AAAA,IACZ,WAAW;AAAA,IACX;AAAA,IACA,kBAAkB,cAAe,mBAC5B,yBACD;AAAA,EACN,IAAI;AAGJ,MAAI,eAAe,mBAAmB,EACnC,YAAY,QAAQ,EACpB,aAAa,SAAS,EACtB,UAAU;AAAA,IACT,OAAO;AAAA,MACL,UAAU;AAAA,MACV,SAAS;AAAA,MACT,oBAAoB;AAAA,QAClB,GAAG,OAAO;AAAA,QACV,GAAI,eACF,SAAS,gBAAgB;AAAA,UACvB,SAAS,SAAS,aAAa,4BAA4B,CAAC;AAAA,UAC5D,SAAS,SAAS,aAAa,4BAA4B,CAAC;AAAA,UAC5D,SAAS,SAAS,aAAa,4BAA4B,CAAC;AAAA,UAC5D,SAAS,SAAS,aAAa,4BAA4B,CAAC;AAAA,UAC5D,SAAS,SAAS,aAAa,4BAA4B,CAAC;AAAA,UAC5D,SAAS,SAAS,aAAa,4BAA4B,CAAC;AAAA,UAC5D,SAAS,SAAS,aAAa,4BAA4B,CAAC;AAAA,UAC5D,SAAS,SAAS,aAAa,4BAA4B,CAAC;AAAA,UAC5D,SAAS,SAAS,aAAa,4BAA4B,CAAC;AAAA,UAC5D,UAAU,SAAS,aAAa,4BAA4B,CAAC;AAAA,UAC7D,UAAU,SAAS,aAAa,4BAA4B,EAAE;AAAA,UAC9D,UAAU,SAAS,aAAa,4BAA4B,EAAE;AAAA,QAChE;AAAA,MACJ;AAAA,IACF;AAAA,IACA,MAAM;AAAA,MACJ,UAAU;AAAA,MACV,SAAS;AAAA,MACT,oBAAoB;AAAA,QAClB,GAAG,OAAO;AAAA,QACV,GAAI,eACF,SAAS,eAAe;AAAA,UACtB,SAAS,SAAS,YAAY,4BAA4B,CAAC;AAAA,UAC3D,SAAS,SAAS,YAAY,4BAA4B,CAAC;AAAA,UAC3D,SAAS,SAAS,YAAY,4BAA4B,CAAC;AAAA,UAC3D,SAAS,SAAS,YAAY,4BAA4B,CAAC;AAAA,UAC3D,SAAS,SAAS,YAAY,4BAA4B,CAAC;AAAA,UAC3D,SAAS,SAAS,YAAY,4BAA4B,CAAC;AAAA,UAC3D,SAAS,SAAS,YAAY,4BAA4B,CAAC;AAAA,UAC3D,SAAS,SAAS,YAAY,4BAA4B,CAAC;AAAA,UAC3D,SAAS,SAAS,YAAY,4BAA4B,CAAC;AAAA,UAC3D,UAAU,SAAS,YAAY,4BAA4B,CAAC;AAAA,UAC5D,UAAU,SAAS,YAAY,4BAA4B,EAAE;AAAA,UAC7D,UAAU,SAAS,YAAY,4BAA4B,EAAE;AAAA,QAC/D;AAAA,MACJ;AAAA,IACF;AAAA,EACF,CAAC;AAEH,SAAI,SAAS,iBACX,eAAe,aAAa,eAAe;AAAA,IACzC,QAAQ;AAAA,MACN;AAAA,QACE,QAAQ;AAAA,QACR,UAAU;AAAA,QACV,SAAS;AAAA,MACX;AAAA,MACA;AAAA,QACE,QAAQ;AAAA,QACR,UAAU;AAAA,QACV,SAAS;AAAA,MACX;AAAA,IACF;AAAA,EACF,CAAC,IAGC,mBACF,eAAe,aAAa,eAAe,gBAAgB;AAAA,IACzD,oBAAoB,CAAC,QAAQ;AAAA,EAC/B,CAAC,IAGC,wBACF,eAAe,aAAa,eAAe,qBAAqB;AAAA,IAC9D,oBAAoB,CAAC,QAAQ;AAAA,EAC/B,CAAC,IAGC,oBACF,eAAe,aAAa,mBAAmB,mBAAmB,eAAe,GAAG;AAAA,IAClF,oBAAoB;AAAA;AAAA,MAElB,GAAG,OAAO,KAAK,uBAAuB,CAAC,CAAC;AAAA,IAC1C;AAAA,EACF,CAAC,IAGC,aACF,eAAe,aAAa,SAAS,QAAe,IAG/C;AAAA,IACL;AAAA,IACA,QAAQ,aAAa,MAAM;AAAA,EAC7B;AACF;AAEA,SAAS,iBAAiB,QAAsC;AAC9D,SAAO;AAAA,IACL,OAAO;AAAA,IACP,MAAM,CAAC,GAAG,MAAM,EAAE,QAAQ;AAAA,EAC5B;AACF;AAEA,SAAS,WAAW,SAAwB;AAE1C,QAAM,WAAW,QAAQ,MAAM;AAc/B,SAZgB,QAAQ,MAAM,IAAI,CAAC,QAAQ,UAAU;AACnD,UAAM,SAAS,QAAQ,KAAK,KAAK,GAC3B,CAAC,MAAM,MAAM,IAAI,IAAI,YAAY,MAAM,GACvC,CAAC,MAAM,MAAM,IAAI,IAAI,YAAY,MAAM;AAC7C,WAAO;AAAA,MACL,OAAO,YAAY,IAAU,UAAU,KAAK;AAAA,MAC5C,KAAK,EAAE,OAAO,MAAM,MAAM,KAAK;AAAA,MAC/B,KAAK,EAAE,OAAO,MAAM,MAAM,KAAK;AAAA,MAC/B,KAAK,EAAE,OAAO,MAAM,MAAM,KAAK;AAAA,IACjC;AAAA,EACF,CAAC;AAGH;AAEA,SAAS,YAAY,UAAkB,UAAkB,OAAe;AACtE,SAAO,KAAK,MAAO,SAAS,WAAW,KAAM,QAAQ;AACvD;AAEA,SAAS,mCAAmC,KAAc;AACxD,SAAO,MAAM,QAAQ,GAAG,IAAI,iBAAiB,GAAG,IAAI;AACtD;AAEA,SAAS,kBAAkB,OAAmD;AAC5E,QAAM,OAAO,mCAAmC,MAAM,KAAK,OAAO,GAC5D,SAAS,MAAM,SACjB,mCAAmC,MAAM,OAAO,OAAO,IACvD,MAEE,cAAc,WAAW,IAAI;AAEnC,WAAS,qBAAqB,MAA8B;AAC1D,WAAO,OAAO;AAAA,MACZ,OAAO,QAAQ,IAAI,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,MAC5B;AAAA,QACL;AAAA,QACA;AAAA,UACE,MAAM;AAAA,UACN,SAAS,MAAM,UACX,WAAW,mCAAmC,MAAM,OAAO,CAAC,IAC5D;AAAA,QACN;AAAA,MACF,CACD;AAAA,IACH;AAAA,EACF;AAEA,SAAO;AAAA,IACL,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,SAAS;AAAA,IACX;AAAA,IACA,GAAI,UAAU;AAAA,MACZ,QAAQ;AAAA,QACN,MAAM;AAAA,QACN,SAAS,WAAW,MAAM;AAAA,MAC5B;AAAA,IACF;AAAA,IACA,GAAI,MAAM,kBAAkB,qBAAqB,MAAM,cAAc;AAAA,IACrE,GAAI,MAAM,uBAAuB,qBAAqB,MAAM,mBAAmB;AAAA,EACjF;AACF;AAEO,MAAM,qBAAqB,CAAC,eAC1B,OAAO;AAAA,EACZ,OAAO,QAAQ,UAAU,EAAE,IAAI,CAAC,CAAC,eAAe,EAAE,SAAS,CAAC,MACnD;AAAA,IACL;AAAA,IACA;AAAA,MACE,QAAQ;AAAA,MACR,UAAU,YAAY;AAAA,IACxB;AAAA,EACF,CACD;AACH;AAGK,SAAS,eAAe,UAAmD;AAChF,QAAM,iBAAiB,SAAS,SAAS,sBAAsB,SAAS,MAAM,IAAI,MAC5E,eAAe,sBAAsB,SAAS,IAAI;AAwCxD,SAtCa,OAAO;AAAA,IAClB,OAAO,QAAQ,QAAQ,EAAE,QAAQ,CAAC,CAAC,MAAM,OAAO,MAAM;AACpD,YAAMA,YAAW,sBAAsB,OAAO,GAExC,mBADW,KAAK,WAAW,QAAQ,IACL,eAAe,kBAAkB;AAErE,UAAI,CAAC;AACH,eAAO,CAAC;AAGV,YAAM,gBAAgB,iBAAkB,OAClC,eAAe,iBAAkB,MAEjC,WAAW;AAqBjB,aAnBY;AAAA,QACV;AAAA,UACE,SAAS,SAAS,UAAU,SAAS,IAAI;AAAA,UACzC;AAAA,YACE,cAAc,QAAQ;AAAA,YACtB,GAAGA,UAAS;AAAA,YACZ,cAAc,cAAc,SAAS,WAAW,CAAC;AAAA,UACnD;AAAA,QACF;AAAA,QACA;AAAA,UACE,SAAS,SAAS,SAAS,QAAQ,IAAI;AAAA,UACvC;AAAA,YACE,aAAa,aAAa,SAAS,WAAW,CAAC;AAAA,YAC/C,GAAGA,UAAS;AAAA,YACZ,aAAa,QAAQ;AAAA,UACvB;AAAA,QACF;AAAA,MACF;AAAA,IAGF,CAAC;AAAA,EACH;AAGF;",
|
|
5
5
|
"names": ["palettes"]
|
|
6
6
|
}
|
|
@@ -9,7 +9,8 @@ function createThemes(props) {
|
|
|
9
9
|
childrenThemes,
|
|
10
10
|
grandChildrenThemes,
|
|
11
11
|
templates = defaultTemplates,
|
|
12
|
-
componentThemes
|
|
12
|
+
componentThemes,
|
|
13
|
+
getTheme
|
|
13
14
|
} = props,
|
|
14
15
|
builder = createSimpleThemeBuilder({
|
|
15
16
|
extra: props.base.extra,
|
|
@@ -18,7 +19,8 @@ function createThemes(props) {
|
|
|
18
19
|
templates,
|
|
19
20
|
accentTheme: !!accent,
|
|
20
21
|
childrenThemes: normalizeSubThemes(childrenThemes),
|
|
21
|
-
grandChildrenThemes: grandChildrenThemes ? normalizeSubThemes(grandChildrenThemes) : void 0
|
|
22
|
+
grandChildrenThemes: grandChildrenThemes ? normalizeSubThemes(grandChildrenThemes) : void 0,
|
|
23
|
+
getTheme
|
|
22
24
|
});
|
|
23
25
|
return lastBuilder = builder.themeBuilder, builder.themes;
|
|
24
26
|
}
|
|
@@ -40,6 +42,7 @@ const defaultPalettes = createPalettes(getThemesPalettes({
|
|
|
40
42
|
}));
|
|
41
43
|
function createSimpleThemeBuilder(props) {
|
|
42
44
|
const {
|
|
45
|
+
getTheme,
|
|
43
46
|
extra,
|
|
44
47
|
childrenThemes = null,
|
|
45
48
|
grandChildrenThemes = null,
|
|
@@ -110,7 +113,7 @@ function createSimpleThemeBuilder(props) {
|
|
|
110
113
|
avoidNestingWithin: [
|
|
111
114
|
// ...Object.keys(childrenThemes || {}),
|
|
112
115
|
...Object.keys(grandChildrenThemes || {})]
|
|
113
|
-
})), {
|
|
116
|
+
})), getTheme && (themeBuilder = themeBuilder.getTheme(getTheme)), {
|
|
114
117
|
themeBuilder,
|
|
115
118
|
themes: themeBuilder.build()
|
|
116
119
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["parseToHsla","defaultComponentThemes","defaultTemplates","getThemeSuitePalettes","PALETTE_BACKGROUND_OFFSET","createThemeBuilder","createThemes","props","accent","childrenThemes","grandChildrenThemes","templates","componentThemes","builder","createSimpleThemeBuilder","extra","base","palettes","createPalettes","getThemesPalettes","accentTheme","normalizeSubThemes","lastBuilder","themeBuilder","themes","getLastBuilder","defs","Object","fromEntries","entries","map","name","value","palette","template","defaultPalettes","addPalettes","addTemplates","addThemes","light","nonInheritedValues","light_accent","accent1","accent2","accent3","accent4","accent5","accent6","accent7","accent8","accent9","accent10","accent11","accent12","dark","dark_accent","addChildThemes","parent","avoidNestingWithin","addComponentThemes","getComponentThemes","keys","build","getSchemePalette","colors","reverse","getAnchors","numItems","length","lcolor","index","dcolor","lhue","lsat","llum","dhue","dsat","dlum","spreadIndex","hue","sat","lum","maxIndex","Math","round","coerceSimplePaletteToSchemePalette","def","Array","isArray","baseAnchors","getSubThemesPalettes","key","anchors","components","componentName","accentPalettes","basePalettes","flatMap","palettes2","oppositePalettes","startsWith","oppositeLight","oppositeDark","bgOffset"],"sources":["../../src/createThemes.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,WAAA,QAAmB;AAC5B,SAASC,sBAAA,QAA8B;AACvC,SAASC,gBAAA,QAAwB;AACjC,SAASC,qBAAA,EAAuBC,yBAAA,QAAiC;AACjE,SAASC,kBAAA,QAA6C;
|
|
1
|
+
{"version":3,"names":["parseToHsla","defaultComponentThemes","defaultTemplates","getThemeSuitePalettes","PALETTE_BACKGROUND_OFFSET","createThemeBuilder","createThemes","props","accent","childrenThemes","grandChildrenThemes","templates","componentThemes","getTheme","builder","createSimpleThemeBuilder","extra","base","palettes","createPalettes","getThemesPalettes","accentTheme","normalizeSubThemes","lastBuilder","themeBuilder","themes","getLastBuilder","defs","Object","fromEntries","entries","map","name","value","palette","template","defaultPalettes","addPalettes","addTemplates","addThemes","light","nonInheritedValues","light_accent","accent1","accent2","accent3","accent4","accent5","accent6","accent7","accent8","accent9","accent10","accent11","accent12","dark","dark_accent","addChildThemes","parent","avoidNestingWithin","addComponentThemes","getComponentThemes","keys","build","getSchemePalette","colors","reverse","getAnchors","numItems","length","lcolor","index","dcolor","lhue","lsat","llum","dhue","dsat","dlum","spreadIndex","hue","sat","lum","maxIndex","Math","round","coerceSimplePaletteToSchemePalette","def","Array","isArray","baseAnchors","getSubThemesPalettes","key","anchors","components","componentName","accentPalettes","basePalettes","flatMap","palettes2","oppositePalettes","startsWith","oppositeLight","oppositeDark","bgOffset"],"sources":["../../src/createThemes.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -9,7 +9,8 @@ function createThemes(props) {
|
|
|
9
9
|
childrenThemes,
|
|
10
10
|
grandChildrenThemes,
|
|
11
11
|
templates = defaultTemplates,
|
|
12
|
-
componentThemes
|
|
12
|
+
componentThemes,
|
|
13
|
+
getTheme
|
|
13
14
|
} = props,
|
|
14
15
|
builder = createSimpleThemeBuilder({
|
|
15
16
|
extra: props.base.extra,
|
|
@@ -18,7 +19,8 @@ function createThemes(props) {
|
|
|
18
19
|
templates,
|
|
19
20
|
accentTheme: !!accent,
|
|
20
21
|
childrenThemes: normalizeSubThemes(childrenThemes),
|
|
21
|
-
grandChildrenThemes: grandChildrenThemes ? normalizeSubThemes(grandChildrenThemes) : void 0
|
|
22
|
+
grandChildrenThemes: grandChildrenThemes ? normalizeSubThemes(grandChildrenThemes) : void 0,
|
|
23
|
+
getTheme
|
|
22
24
|
});
|
|
23
25
|
return lastBuilder = builder.themeBuilder, builder.themes;
|
|
24
26
|
}
|
|
@@ -45,6 +47,7 @@ var defaultPalettes = createPalettes(getThemesPalettes({
|
|
|
45
47
|
}));
|
|
46
48
|
function createSimpleThemeBuilder(props) {
|
|
47
49
|
var {
|
|
50
|
+
getTheme,
|
|
48
51
|
extra,
|
|
49
52
|
childrenThemes = null,
|
|
50
53
|
grandChildrenThemes = null,
|
|
@@ -115,7 +118,7 @@ function createSimpleThemeBuilder(props) {
|
|
|
115
118
|
avoidNestingWithin: [
|
|
116
119
|
// ...Object.keys(childrenThemes || {}),
|
|
117
120
|
...Object.keys(grandChildrenThemes || {})]
|
|
118
|
-
})), {
|
|
121
|
+
})), getTheme && (themeBuilder = themeBuilder.getTheme(getTheme)), {
|
|
119
122
|
themeBuilder,
|
|
120
123
|
themes: themeBuilder.build()
|
|
121
124
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["parseToHsla","defaultComponentThemes","defaultTemplates","getThemeSuitePalettes","PALETTE_BACKGROUND_OFFSET","createThemeBuilder","createThemes","props","accent","childrenThemes","grandChildrenThemes","templates","componentThemes","builder","createSimpleThemeBuilder","extra","base","palettes","createPalettes","getThemesPalettes","accentTheme","normalizeSubThemes","lastBuilder","themeBuilder","themes","getLastBuilder","defs","Object","fromEntries","entries","map","param","name","value","palette","template","defaultPalettes","addPalettes","addTemplates","addThemes","light","nonInheritedValues","light_accent","accent1","accent2","accent3","accent4","accent5","accent6","accent7","accent8","accent9","accent10","accent11","accent12","dark","dark_accent","addChildThemes","parent","avoidNestingWithin","addComponentThemes","getComponentThemes","keys","build","getSchemePalette","colors","reverse","getAnchors","maxIndex","numItems","length","anchors","lcolor","index","dcolor","lhue","lsat","llum","dhue","dsat","dlum","spreadIndex","hue","sat","lum","Math","round","coerceSimplePaletteToSchemePalette","def","Array","isArray","baseAnchors","getSubThemesPalettes","key","components","componentName","accentPalettes","basePalettes","next","flatMap","_$palettes","isAccent","startsWith","oppositePalettes","oppositeLight","oppositeDark","bgOffset","out"],"sources":["../../src/createThemes.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,WAAA,QAAmB;AAC5B,SAASC,sBAAA,QAA8B;AACvC,SAASC,gBAAA,QAAwB;AACjC,SAASC,qBAAA,EAAuBC,yBAAA,QAAiC;AACjE,SAASC,kBAAA,QAA6C;
|
|
1
|
+
{"version":3,"names":["parseToHsla","defaultComponentThemes","defaultTemplates","getThemeSuitePalettes","PALETTE_BACKGROUND_OFFSET","createThemeBuilder","createThemes","props","accent","childrenThemes","grandChildrenThemes","templates","componentThemes","getTheme","builder","createSimpleThemeBuilder","extra","base","palettes","createPalettes","getThemesPalettes","accentTheme","normalizeSubThemes","lastBuilder","themeBuilder","themes","getLastBuilder","defs","Object","fromEntries","entries","map","param","name","value","palette","template","defaultPalettes","addPalettes","addTemplates","addThemes","light","nonInheritedValues","light_accent","accent1","accent2","accent3","accent4","accent5","accent6","accent7","accent8","accent9","accent10","accent11","accent12","dark","dark_accent","addChildThemes","parent","avoidNestingWithin","addComponentThemes","getComponentThemes","keys","build","getSchemePalette","colors","reverse","getAnchors","maxIndex","numItems","length","anchors","lcolor","index","dcolor","lhue","lsat","llum","dhue","dsat","dlum","spreadIndex","hue","sat","lum","Math","round","coerceSimplePaletteToSchemePalette","def","Array","isArray","baseAnchors","getSubThemesPalettes","key","components","componentName","accentPalettes","basePalettes","next","flatMap","_$palettes","isAccent","startsWith","oppositePalettes","oppositeLight","oppositeDark","bgOffset","out"],"sources":["../../src/createThemes.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/theme-builder",
|
|
3
|
-
"version": "1.138.
|
|
3
|
+
"version": "1.138.2",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"source": "src/index.ts",
|
|
6
6
|
"types": "./types/index.d.ts",
|
|
@@ -17,7 +17,9 @@
|
|
|
17
17
|
"lint": "biome check src",
|
|
18
18
|
"lint:fix": "biome check --write src",
|
|
19
19
|
"clean": "tamagui-build clean",
|
|
20
|
-
"clean:build": "tamagui-build clean:build"
|
|
20
|
+
"clean:build": "tamagui-build clean:build",
|
|
21
|
+
"test": "vitest --run",
|
|
22
|
+
"test:watch": "vitest"
|
|
21
23
|
},
|
|
22
24
|
"exports": {
|
|
23
25
|
"./package.json": "./package.json",
|
|
@@ -33,12 +35,13 @@
|
|
|
33
35
|
}
|
|
34
36
|
},
|
|
35
37
|
"dependencies": {
|
|
36
|
-
"@tamagui/create-theme": "1.138.
|
|
37
|
-
"@tamagui/web": "1.138.
|
|
38
|
+
"@tamagui/create-theme": "1.138.2",
|
|
39
|
+
"@tamagui/web": "1.138.2",
|
|
38
40
|
"color2k": "^2.0.2"
|
|
39
41
|
},
|
|
40
42
|
"devDependencies": {
|
|
41
|
-
"@tamagui/build": "1.138.
|
|
43
|
+
"@tamagui/build": "1.138.2",
|
|
44
|
+
"vitest": "^4.0.4"
|
|
42
45
|
},
|
|
43
46
|
"publishConfig": {
|
|
44
47
|
"access": "public"
|
package/src/ThemeBuilder.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type {
|
|
2
2
|
MaskDefinitions,
|
|
3
3
|
PaletteDefinitions,
|
|
4
|
+
Template,
|
|
4
5
|
TemplateDefinitions,
|
|
5
6
|
ThemeDefinitions,
|
|
6
7
|
ThemeUsingMask,
|
|
@@ -13,6 +14,7 @@ import {
|
|
|
13
14
|
objectFromEntries,
|
|
14
15
|
} from '@tamagui/create-theme'
|
|
15
16
|
import type { Narrow } from '@tamagui/web'
|
|
17
|
+
import type { GetThemeFn } from './types'
|
|
16
18
|
|
|
17
19
|
export type ThemeBuilderInternalState = {
|
|
18
20
|
palettes?: PaletteDefinitions
|
|
@@ -53,9 +55,20 @@ type GetGeneratedTheme<TD, S extends ThemeBuilderInternalState> = TD extends {
|
|
|
53
55
|
: TD
|
|
54
56
|
: TD
|
|
55
57
|
|
|
56
|
-
type ThemeBuilderBuildResult<
|
|
57
|
-
|
|
58
|
-
|
|
58
|
+
type ThemeBuilderBuildResult<
|
|
59
|
+
S extends ThemeBuilderInternalState,
|
|
60
|
+
FinalTheme extends Record<string, string | number> = Record<string, string>,
|
|
61
|
+
> = Record<string, string> extends FinalTheme
|
|
62
|
+
? FinalTheme extends Record<string, string>
|
|
63
|
+
? {
|
|
64
|
+
[Key in keyof S['themes']]: GetGeneratedTheme<S['themes'][Key], S>
|
|
65
|
+
}
|
|
66
|
+
: {
|
|
67
|
+
[Key in keyof S['themes']]: FinalTheme
|
|
68
|
+
}
|
|
69
|
+
: {
|
|
70
|
+
[Key in keyof S['themes']]: FinalTheme
|
|
71
|
+
}
|
|
59
72
|
|
|
60
73
|
type GetParentName<N extends string> =
|
|
61
74
|
N extends `${infer A}_${infer B}_${infer C}_${infer D}_${string}`
|
|
@@ -68,9 +81,29 @@ type GetParentName<N extends string> =
|
|
|
68
81
|
? `${A}`
|
|
69
82
|
: never
|
|
70
83
|
|
|
84
|
+
// Flatten union types into a single object with optional properties
|
|
85
|
+
type UnionToIntersection<U> = (U extends any ? (k: U) => void : never) extends (
|
|
86
|
+
k: infer I
|
|
87
|
+
) => void
|
|
88
|
+
? I
|
|
89
|
+
: never
|
|
90
|
+
|
|
91
|
+
type Prettify<T> = {
|
|
92
|
+
[K in keyof T]: T[K]
|
|
93
|
+
} & {}
|
|
94
|
+
|
|
95
|
+
type FlattenUnion<T extends Record<string, string | number>> = Prettify<{
|
|
96
|
+
[K in keyof UnionToIntersection<T>]: UnionToIntersection<T>[K]
|
|
97
|
+
}> extends infer R extends Record<string, string | number>
|
|
98
|
+
? R
|
|
99
|
+
: never
|
|
100
|
+
|
|
71
101
|
export class ThemeBuilder<
|
|
72
102
|
State extends ThemeBuilderInternalState = ThemeBuilderInternalState,
|
|
103
|
+
FinalTheme extends Record<string, string | number> = Record<string, string>,
|
|
73
104
|
> {
|
|
105
|
+
private _getThemeFn?: GetThemeFn<FinalTheme>
|
|
106
|
+
|
|
74
107
|
constructor(public state: State) {}
|
|
75
108
|
|
|
76
109
|
addPalettes<const P extends PaletteDefinitions>(palettes: P) {
|
|
@@ -82,7 +115,8 @@ export class ThemeBuilder<
|
|
|
82
115
|
return this as any as ThemeBuilder<
|
|
83
116
|
State & {
|
|
84
117
|
palettes: P
|
|
85
|
-
}
|
|
118
|
+
},
|
|
119
|
+
FinalTheme
|
|
86
120
|
>
|
|
87
121
|
}
|
|
88
122
|
|
|
@@ -95,7 +129,8 @@ export class ThemeBuilder<
|
|
|
95
129
|
return this as any as ThemeBuilder<
|
|
96
130
|
State & {
|
|
97
131
|
templates: T
|
|
98
|
-
}
|
|
132
|
+
},
|
|
133
|
+
FinalTheme
|
|
99
134
|
>
|
|
100
135
|
}
|
|
101
136
|
|
|
@@ -110,7 +145,8 @@ export class ThemeBuilder<
|
|
|
110
145
|
return this as any as ThemeBuilder<
|
|
111
146
|
State & {
|
|
112
147
|
masks: M
|
|
113
|
-
}
|
|
148
|
+
},
|
|
149
|
+
FinalTheme
|
|
114
150
|
>
|
|
115
151
|
}
|
|
116
152
|
|
|
@@ -143,7 +179,8 @@ export class ThemeBuilder<
|
|
|
143
179
|
// [Key in keyof T]: TemplateToTheme<T[Key]>
|
|
144
180
|
// } & State['themes']
|
|
145
181
|
themes: T
|
|
146
|
-
}
|
|
182
|
+
},
|
|
183
|
+
FinalTheme
|
|
147
184
|
>
|
|
148
185
|
}
|
|
149
186
|
|
|
@@ -236,11 +273,28 @@ export class ThemeBuilder<
|
|
|
236
273
|
return this as any as ThemeBuilder<
|
|
237
274
|
State & {
|
|
238
275
|
themes: ChildThemes
|
|
239
|
-
}
|
|
276
|
+
},
|
|
277
|
+
FinalTheme
|
|
240
278
|
>
|
|
241
279
|
}
|
|
242
280
|
|
|
243
|
-
|
|
281
|
+
getTheme<NewTheme extends Record<string, string | number>>(
|
|
282
|
+
fn: (props: {
|
|
283
|
+
name: string
|
|
284
|
+
theme: GetGeneratedTheme<State['themes'][keyof State['themes']], State>
|
|
285
|
+
scheme?: 'light' | 'dark'
|
|
286
|
+
parentName: string
|
|
287
|
+
parentNames: string[]
|
|
288
|
+
level: number
|
|
289
|
+
palette?: string[]
|
|
290
|
+
template?: Template
|
|
291
|
+
}) => NewTheme
|
|
292
|
+
) {
|
|
293
|
+
this._getThemeFn = fn as any
|
|
294
|
+
return this as any as ThemeBuilder<State, FlattenUnion<NewTheme>>
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
build(): ThemeBuilderBuildResult<State, FinalTheme> {
|
|
244
298
|
if (!this.state.themes) {
|
|
245
299
|
return {} as any
|
|
246
300
|
}
|
|
@@ -331,7 +385,7 @@ export class ThemeBuilder<
|
|
|
331
385
|
)
|
|
332
386
|
}
|
|
333
387
|
|
|
334
|
-
|
|
388
|
+
const theme = createThemeWithPalettes(
|
|
335
389
|
this.state.palettes,
|
|
336
390
|
paletteName,
|
|
337
391
|
template,
|
|
@@ -339,6 +393,21 @@ export class ThemeBuilder<
|
|
|
339
393
|
themeName,
|
|
340
394
|
true
|
|
341
395
|
)
|
|
396
|
+
|
|
397
|
+
out[themeName] = this._getThemeFn
|
|
398
|
+
? this._getThemeFn({
|
|
399
|
+
theme,
|
|
400
|
+
name: themeName,
|
|
401
|
+
level: nameParts.length,
|
|
402
|
+
parentName,
|
|
403
|
+
scheme: /^(light|dark)$/.test(nameParts[0])
|
|
404
|
+
? (nameParts[0] as 'light' | 'dark')
|
|
405
|
+
: undefined,
|
|
406
|
+
parentNames: nameParts.slice(0, -1),
|
|
407
|
+
palette,
|
|
408
|
+
template,
|
|
409
|
+
})
|
|
410
|
+
: theme
|
|
342
411
|
}
|
|
343
412
|
}
|
|
344
413
|
|
package/src/createThemes.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { defaultComponentThemes } from './defaultComponentThemes'
|
|
|
3
3
|
import { defaultTemplates } from './defaultTemplates'
|
|
4
4
|
import { getThemeSuitePalettes, PALETTE_BACKGROUND_OFFSET } from './getThemeSuitePalettes'
|
|
5
5
|
import { createThemeBuilder, type ThemeBuilder } from './ThemeBuilder'
|
|
6
|
-
import type { BuildPalettes, BuildTemplates } from './types'
|
|
6
|
+
import type { BuildPalettes, BuildTemplates, GetThemeFn } from './types'
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* TODO
|
|
@@ -47,21 +47,25 @@ export type CreateThemesProps<
|
|
|
47
47
|
grandChildrenThemes?: GrandChildrenThemes
|
|
48
48
|
templates?: Templates
|
|
49
49
|
componentThemes?: ComponentThemes
|
|
50
|
-
|
|
51
|
-
colors: string[]
|
|
52
|
-
name: string
|
|
53
|
-
scheme?: 'light' | 'dark'
|
|
54
|
-
}) => Record<string, string>
|
|
50
|
+
getTheme?: GetThemeFn<any>
|
|
55
51
|
}
|
|
56
52
|
|
|
57
53
|
export function createThemes<
|
|
58
|
-
Extra extends ExtraThemeValuesByScheme,
|
|
59
|
-
SubThemes extends SimpleThemesDefinition,
|
|
60
|
-
ComponentThemes extends SimpleThemesDefinition,
|
|
54
|
+
Extra extends ExtraThemeValuesByScheme = ExtraThemeValuesByScheme,
|
|
55
|
+
SubThemes extends SimpleThemesDefinition = SimpleThemesDefinition,
|
|
56
|
+
ComponentThemes extends SimpleThemesDefinition = SimpleThemesDefinition,
|
|
61
57
|
GrandChildrenThemes extends SimpleThemesDefinition | undefined = undefined,
|
|
62
58
|
Accent extends BaseThemeDefinition<Extra> | undefined = undefined,
|
|
59
|
+
Templates extends BuildTemplates = typeof defaultTemplates,
|
|
63
60
|
>(
|
|
64
|
-
props: CreateThemesProps<
|
|
61
|
+
props: CreateThemesProps<
|
|
62
|
+
Accent,
|
|
63
|
+
GrandChildrenThemes,
|
|
64
|
+
Extra,
|
|
65
|
+
SubThemes,
|
|
66
|
+
ComponentThemes,
|
|
67
|
+
Templates
|
|
68
|
+
>
|
|
65
69
|
) {
|
|
66
70
|
const {
|
|
67
71
|
accent,
|
|
@@ -69,12 +73,13 @@ export function createThemes<
|
|
|
69
73
|
grandChildrenThemes,
|
|
70
74
|
templates = defaultTemplates,
|
|
71
75
|
componentThemes,
|
|
76
|
+
getTheme,
|
|
72
77
|
} = props
|
|
73
78
|
|
|
74
79
|
const builder = createSimpleThemeBuilder({
|
|
75
80
|
extra: props.base.extra,
|
|
76
81
|
componentThemes,
|
|
77
|
-
palettes: createPalettes(getThemesPalettes(props)),
|
|
82
|
+
palettes: createPalettes(getThemesPalettes(props as any)),
|
|
78
83
|
templates: templates as typeof defaultTemplates,
|
|
79
84
|
accentTheme: !!accent as Accent extends undefined ? false : true,
|
|
80
85
|
childrenThemes: normalizeSubThemes(childrenThemes),
|
|
@@ -83,6 +88,7 @@ export function createThemes<
|
|
|
83
88
|
: undefined) as GrandChildrenThemes extends undefined
|
|
84
89
|
? undefined
|
|
85
90
|
: Record<keyof GrandChildrenThemes, any>,
|
|
91
|
+
getTheme: getTheme as any,
|
|
86
92
|
})
|
|
87
93
|
|
|
88
94
|
lastBuilder = builder.themeBuilder
|
|
@@ -146,7 +152,7 @@ export function createSimpleThemeBuilder<
|
|
|
146
152
|
>,
|
|
147
153
|
HasAccent extends boolean = false,
|
|
148
154
|
ComponentThemes extends SimpleThemesDefinition | false = false,
|
|
149
|
-
FullTheme = {
|
|
155
|
+
FullTheme extends Record<string, string | number> = {
|
|
150
156
|
[ThemeKey in
|
|
151
157
|
| keyof Templates['light_base']
|
|
152
158
|
| keyof Extra['dark']
|
|
@@ -171,11 +177,13 @@ export function createSimpleThemeBuilder<
|
|
|
171
177
|
grandChildrenThemes?: GrandChildrenThemes
|
|
172
178
|
componentThemes?: ComponentThemes
|
|
173
179
|
extra?: Extra
|
|
180
|
+
getTheme?: GetThemeFn<any>
|
|
174
181
|
}): {
|
|
175
182
|
themeBuilder: ThemeBuilder<any>
|
|
176
183
|
themes: Record<ThemeNames, FullTheme>
|
|
177
184
|
} {
|
|
178
185
|
const {
|
|
186
|
+
getTheme,
|
|
179
187
|
extra,
|
|
180
188
|
childrenThemes = null as unknown as ChildrenThemes,
|
|
181
189
|
grandChildrenThemes = null as unknown as GrandChildrenThemes,
|
|
@@ -252,7 +260,7 @@ export function createSimpleThemeBuilder<
|
|
|
252
260
|
palette: 'dark_accent',
|
|
253
261
|
},
|
|
254
262
|
],
|
|
255
|
-
})
|
|
263
|
+
}) as any
|
|
256
264
|
}
|
|
257
265
|
|
|
258
266
|
if (childrenThemes) {
|
|
@@ -276,8 +284,12 @@ export function createSimpleThemeBuilder<
|
|
|
276
284
|
})
|
|
277
285
|
}
|
|
278
286
|
|
|
287
|
+
if (getTheme) {
|
|
288
|
+
themeBuilder = themeBuilder.getTheme(getTheme as any) as any
|
|
289
|
+
}
|
|
290
|
+
|
|
279
291
|
return {
|
|
280
|
-
themeBuilder,
|
|
292
|
+
themeBuilder: themeBuilder as any,
|
|
281
293
|
themes: themeBuilder.build() as any,
|
|
282
294
|
}
|
|
283
295
|
}
|
package/src/types.ts
CHANGED
|
@@ -1,5 +1,16 @@
|
|
|
1
1
|
import type { Template } from '@tamagui/create-theme'
|
|
2
2
|
|
|
3
|
+
export type GetThemeFn<ThemeType extends Record<string, string | number>> = (props: {
|
|
4
|
+
name: string
|
|
5
|
+
theme: Record<string, string>
|
|
6
|
+
scheme?: 'light' | 'dark'
|
|
7
|
+
parentName: string
|
|
8
|
+
parentNames: string[]
|
|
9
|
+
level: number
|
|
10
|
+
palette?: string[]
|
|
11
|
+
template?: Template
|
|
12
|
+
}) => ThemeType
|
|
13
|
+
|
|
3
14
|
export type TemplateStrategy = 'base' | 'stronger' | 'strongest'
|
|
4
15
|
|
|
5
16
|
export type ThemeSuiteItem = {
|