@tamagui/theme-builder 1.75.9 → 1.77.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.
@@ -0,0 +1,54 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: !0 });
8
+ }, __copyProps = (to, from, except, desc) => {
9
+ if (from && typeof from == "object" || typeof from == "function")
10
+ for (let key of __getOwnPropNames(from))
11
+ !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
12
+ return to;
13
+ };
14
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
15
+ var buildMask_exports = {};
16
+ __export(buildMask_exports, {
17
+ buildMask: () => buildMask
18
+ });
19
+ module.exports = __toCommonJS(buildMask_exports);
20
+ var import_create_theme = require("@tamagui/create-theme");
21
+ function buildMask(masks) {
22
+ return (0, import_create_theme.combineMasks)(
23
+ ...masks.map((mask) => mask.type === "inverse" ? (0, import_create_theme.createInverseMask)() : mask.type === "soften" ? (0, import_create_theme.createSoftenMask)({ strength: mask.strength || 0 }) : mask.type === "strengthen" ? (0, import_create_theme.createStrengthenMask)({ strength: mask.strength || 0 }) : mask.type === "softenBorder" ? (0, import_create_theme.createMask)((template, options) => {
24
+ const plain = import_create_theme.skipMask.mask(template, options), softer = (0, import_create_theme.createSoftenMask)({ strength: mask.strength }).mask(
25
+ template,
26
+ options
27
+ );
28
+ return {
29
+ ...plain,
30
+ borderColor: softer.borderColor,
31
+ borderColorHover: softer.borderColorHover,
32
+ borderColorPress: softer.borderColorPress,
33
+ borderColorFocus: softer.borderColorFocus
34
+ };
35
+ }) : mask.type === "strengthenBorder" ? (0, import_create_theme.createMask)((template, options) => {
36
+ const plain = import_create_theme.skipMask.mask(template, options), softer = (0, import_create_theme.createSoftenMask)({ strength: mask.strength }).mask(
37
+ template,
38
+ options
39
+ );
40
+ return {
41
+ ...plain,
42
+ borderColor: softer.borderColor,
43
+ borderColorHover: softer.borderColorHover,
44
+ borderColorPress: softer.borderColorPress,
45
+ borderColorFocus: softer.borderColorFocus
46
+ };
47
+ }) : {})
48
+ );
49
+ }
50
+ // Annotate the CommonJS export names for ESM import in node:
51
+ 0 && (module.exports = {
52
+ buildMask
53
+ });
54
+ //# sourceMappingURL=buildMask.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/buildMask.ts"],
4
+ "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,0BAQO;AAOA,SAAS,UAAU,OAAoB;AAC5C,aAAO;AAAA,IACL,GAAG,MAAM,IAAI,CAAC,SACR,KAAK,SAAS,gBACT,uCAAkB,IAEvB,KAAK,SAAS,eACT,sCAAiB,EAAE,UAAU,KAAK,YAAY,EAAE,CAAC,IAEtD,KAAK,SAAS,mBACT,0CAAqB,EAAE,UAAU,KAAK,YAAY,EAAE,CAAC,IAE1D,KAAK,SAAS,qBACT,gCAAW,CAAC,UAAU,YAAY;AACvC,YAAM,QAAQ,6BAAS,KAAK,UAAU,OAAO,GACvC,aAAS,sCAAiB,EAAE,UAAU,KAAK,SAAS,CAAC,EAAE;AAAA,QAC3D;AAAA,QACA;AAAA,MACF;AACA,aAAO;AAAA,QACL,GAAG;AAAA,QACH,aAAa,OAAO;AAAA,QACpB,kBAAkB,OAAO;AAAA,QACzB,kBAAkB,OAAO;AAAA,QACzB,kBAAkB,OAAO;AAAA,MAC3B;AAAA,IACF,CAAC,IAEC,KAAK,SAAS,yBACT,gCAAW,CAAC,UAAU,YAAY;AACvC,YAAM,QAAQ,6BAAS,KAAK,UAAU,OAAO,GACvC,aAAS,sCAAiB,EAAE,UAAU,KAAK,SAAS,CAAC,EAAE;AAAA,QAC3D;AAAA,QACA;AAAA,MACF;AACA,aAAO;AAAA,QACL,GAAG;AAAA,QACH,aAAa,OAAO;AAAA,QACpB,kBAAkB,OAAO;AAAA,QACzB,kBAAkB,OAAO;AAAA,QACzB,kBAAkB,OAAO;AAAA,MAC3B;AAAA,IACF,CAAC,IAEI,CAAC,CACT;AAAA,EACH;AACF;",
5
+ "names": []
6
+ }
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: !0 });
9
+ }, __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from == "object" || typeof from == "function")
11
+ for (let key of __getOwnPropNames(from))
12
+ !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
13
+ return to;
14
+ };
15
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
16
+ var buildMask_exports = {};
17
+ __export(buildMask_exports, {
18
+ buildMask: () => buildMask
19
+ });
20
+ module.exports = __toCommonJS(buildMask_exports);
21
+ var import_create_theme = require("@tamagui/create-theme");
22
+ function buildMask(masks) {
23
+ return (0, import_create_theme.combineMasks)(
24
+ ...masks.map((mask) => mask.type === "inverse" ? (0, import_create_theme.createInverseMask)() : mask.type === "soften" ? (0, import_create_theme.createSoftenMask)({ strength: mask.strength || 0 }) : mask.type === "strengthen" ? (0, import_create_theme.createStrengthenMask)({ strength: mask.strength || 0 }) : mask.type === "softenBorder" ? (0, import_create_theme.createMask)((template, options) => {
25
+ const plain = import_create_theme.skipMask.mask(template, options), softer = (0, import_create_theme.createSoftenMask)({ strength: mask.strength }).mask(
26
+ template,
27
+ options
28
+ );
29
+ return {
30
+ ...plain,
31
+ borderColor: softer.borderColor,
32
+ borderColorHover: softer.borderColorHover,
33
+ borderColorPress: softer.borderColorPress,
34
+ borderColorFocus: softer.borderColorFocus
35
+ };
36
+ }) : mask.type === "strengthenBorder" ? (0, import_create_theme.createMask)((template, options) => {
37
+ const plain = import_create_theme.skipMask.mask(template, options), softer = (0, import_create_theme.createSoftenMask)({ strength: mask.strength }).mask(
38
+ template,
39
+ options
40
+ );
41
+ return {
42
+ ...plain,
43
+ borderColor: softer.borderColor,
44
+ borderColorHover: softer.borderColorHover,
45
+ borderColorPress: softer.borderColorPress,
46
+ borderColorFocus: softer.borderColorFocus
47
+ };
48
+ }) : {})
49
+ );
50
+ }
51
+ // Annotate the CommonJS export names for ESM import in node:
52
+ 0 && (module.exports = {
53
+ buildMask
54
+ });
55
+ //# sourceMappingURL=buildMask.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/buildMask.ts"],
4
+ "mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,0BAQO;AAOA,SAAS,UAAU,OAAoB;AAC5C,aAAO;AAAA,IACL,GAAG,MAAM,IAAI,CAAC,SACR,KAAK,SAAS,gBACT,uCAAkB,IAEvB,KAAK,SAAS,eACT,sCAAiB,EAAE,UAAU,KAAK,YAAY,EAAE,CAAC,IAEtD,KAAK,SAAS,mBACT,0CAAqB,EAAE,UAAU,KAAK,YAAY,EAAE,CAAC,IAE1D,KAAK,SAAS,qBACT,gCAAW,CAAC,UAAU,YAAY;AACvC,YAAM,QAAQ,6BAAS,KAAK,UAAU,OAAO,GACvC,aAAS,sCAAiB,EAAE,UAAU,KAAK,SAAS,CAAC,EAAE;AAAA,QAC3D;AAAA,QACA;AAAA,MACF;AACA,aAAO;AAAA,QACL,GAAG;AAAA,QACH,aAAa,OAAO;AAAA,QACpB,kBAAkB,OAAO;AAAA,QACzB,kBAAkB,OAAO;AAAA,QACzB,kBAAkB,OAAO;AAAA,MAC3B;AAAA,IACF,CAAC,IAEC,KAAK,SAAS,yBACT,gCAAW,CAAC,UAAU,YAAY;AACvC,YAAM,QAAQ,6BAAS,KAAK,UAAU,OAAO,GACvC,aAAS,sCAAiB,EAAE,UAAU,KAAK,SAAS,CAAC,EAAE;AAAA,QAC3D;AAAA,QACA;AAAA,MACF;AACA,aAAO;AAAA,QACL,GAAG;AAAA,QACH,aAAa,OAAO;AAAA,QACpB,kBAAkB,OAAO;AAAA,QACzB,kBAAkB,OAAO;AAAA,QACzB,kBAAkB,OAAO;AAAA,MAC3B;AAAA,IACF,CAAC,IAEI,CAAC,CACT;AAAA,EACH;AACF;",
5
+ "names": []
6
+ }
package/dist/cjs/index.js CHANGED
@@ -13,9 +13,13 @@ var src_exports = {};
13
13
  module.exports = __toCommonJS(src_exports);
14
14
  __reExport(src_exports, require("./ThemeBuilder"), module.exports);
15
15
  __reExport(src_exports, require("@tamagui/create-theme"), module.exports);
16
+ __reExport(src_exports, require("./buildMask"), module.exports);
17
+ __reExport(src_exports, require("./types"), module.exports);
16
18
  // Annotate the CommonJS export names for ESM import in node:
17
19
  0 && (module.exports = {
18
20
  ...require("./ThemeBuilder"),
19
- ...require("@tamagui/create-theme")
21
+ ...require("@tamagui/create-theme"),
22
+ ...require("./buildMask"),
23
+ ...require("./types")
20
24
  });
21
25
  //# sourceMappingURL=index.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/index.ts"],
4
- "mappings": ";;;;;;;;;;;AAAA;AAAA;AAAA,wBAAc,2BAAd;AACA,wBAAc,kCADd;",
4
+ "mappings": ";;;;;;;;;;;AAAA;AAAA;AAAA,wBAAc,2BAAd;AACA,wBAAc,kCADd;AAEA,wBAAc,wBAFd;AAGA,wBAAc,oBAHd;",
5
5
  "names": []
6
6
  }
@@ -14,9 +14,13 @@ var src_exports = {};
14
14
  module.exports = __toCommonJS(src_exports);
15
15
  __reExport(src_exports, require("./ThemeBuilder"), module.exports);
16
16
  __reExport(src_exports, require("@tamagui/create-theme"), module.exports);
17
+ __reExport(src_exports, require("./buildMask"), module.exports);
18
+ __reExport(src_exports, require("./types"), module.exports);
17
19
  // Annotate the CommonJS export names for ESM import in node:
18
20
  0 && (module.exports = {
19
21
  ...require("./ThemeBuilder"),
20
- ...require("@tamagui/create-theme")
22
+ ...require("@tamagui/create-theme"),
23
+ ...require("./buildMask"),
24
+ ...require("./types")
21
25
  });
22
26
  //# sourceMappingURL=index.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/index.ts"],
4
- "mappings": ";;;;;;;;;;;;AAAA;AAAA;AAAA,wBAAc,2BAAd;AACA,wBAAc,kCADd;",
4
+ "mappings": ";;;;;;;;;;;;AAAA;AAAA;AAAA,wBAAc,2BAAd;AACA,wBAAc,kCADd;AAEA,wBAAc,wBAFd;AAGA,wBAAc,oBAHd;",
5
5
  "names": []
6
6
  }
@@ -0,0 +1,14 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __copyProps = (to, from, except, desc) => {
6
+ if (from && typeof from == "object" || typeof from == "function")
7
+ for (let key of __getOwnPropNames(from))
8
+ !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
9
+ return to;
10
+ };
11
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
12
+ var types_exports = {};
13
+ module.exports = __toCommonJS(types_exports);
14
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/types.ts"],
4
+ "mappings": ";;;;;;;;;;;AAAA;AAAA;",
5
+ "names": []
6
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from == "object" || typeof from == "function")
8
+ for (let key of __getOwnPropNames(from))
9
+ !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
10
+ return to;
11
+ };
12
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
13
+ var types_exports = {};
14
+ module.exports = __toCommonJS(types_exports);
15
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/types.ts"],
4
+ "mappings": ";;;;;;;;;;;;AAAA;AAAA;",
5
+ "names": []
6
+ }
@@ -0,0 +1,41 @@
1
+ import {
2
+ combineMasks,
3
+ createInverseMask,
4
+ createMask,
5
+ createSoftenMask,
6
+ createStrengthenMask,
7
+ skipMask
8
+ } from "@tamagui/create-theme";
9
+ function buildMask(masks) {
10
+ return combineMasks(
11
+ ...masks.map((mask) => mask.type === "inverse" ? createInverseMask() : mask.type === "soften" ? createSoftenMask({ strength: mask.strength || 0 }) : mask.type === "strengthen" ? createStrengthenMask({ strength: mask.strength || 0 }) : mask.type === "softenBorder" ? createMask((template, options) => {
12
+ const plain = skipMask.mask(template, options), softer = createSoftenMask({ strength: mask.strength }).mask(
13
+ template,
14
+ options
15
+ );
16
+ return {
17
+ ...plain,
18
+ borderColor: softer.borderColor,
19
+ borderColorHover: softer.borderColorHover,
20
+ borderColorPress: softer.borderColorPress,
21
+ borderColorFocus: softer.borderColorFocus
22
+ };
23
+ }) : mask.type === "strengthenBorder" ? createMask((template, options) => {
24
+ const plain = skipMask.mask(template, options), softer = createSoftenMask({ strength: mask.strength }).mask(
25
+ template,
26
+ options
27
+ );
28
+ return {
29
+ ...plain,
30
+ borderColor: softer.borderColor,
31
+ borderColorHover: softer.borderColorHover,
32
+ borderColorPress: softer.borderColorPress,
33
+ borderColorFocus: softer.borderColorFocus
34
+ };
35
+ }) : {})
36
+ );
37
+ }
38
+ export {
39
+ buildMask
40
+ };
41
+ //# sourceMappingURL=buildMask.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/buildMask.ts"],
4
+ "mappings": "AAAA;AAAA,EAEE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAOA,SAAS,UAAU,OAAoB;AAC5C,SAAO;AAAA,IACL,GAAG,MAAM,IAAI,CAAC,SACR,KAAK,SAAS,YACT,kBAAkB,IAEvB,KAAK,SAAS,WACT,iBAAiB,EAAE,UAAU,KAAK,YAAY,EAAE,CAAC,IAEtD,KAAK,SAAS,eACT,qBAAqB,EAAE,UAAU,KAAK,YAAY,EAAE,CAAC,IAE1D,KAAK,SAAS,iBACT,WAAW,CAAC,UAAU,YAAY;AACvC,YAAM,QAAQ,SAAS,KAAK,UAAU,OAAO,GACvC,SAAS,iBAAiB,EAAE,UAAU,KAAK,SAAS,CAAC,EAAE;AAAA,QAC3D;AAAA,QACA;AAAA,MACF;AACA,aAAO;AAAA,QACL,GAAG;AAAA,QACH,aAAa,OAAO;AAAA,QACpB,kBAAkB,OAAO;AAAA,QACzB,kBAAkB,OAAO;AAAA,QACzB,kBAAkB,OAAO;AAAA,MAC3B;AAAA,IACF,CAAC,IAEC,KAAK,SAAS,qBACT,WAAW,CAAC,UAAU,YAAY;AACvC,YAAM,QAAQ,SAAS,KAAK,UAAU,OAAO,GACvC,SAAS,iBAAiB,EAAE,UAAU,KAAK,SAAS,CAAC,EAAE;AAAA,QAC3D;AAAA,QACA;AAAA,MACF;AACA,aAAO;AAAA,QACL,GAAG;AAAA,QACH,aAAa,OAAO;AAAA,QACpB,kBAAkB,OAAO;AAAA,QACzB,kBAAkB,OAAO;AAAA,QACzB,kBAAkB,OAAO;AAAA,MAC3B;AAAA,IACF,CAAC,IAEI,CAAC,CACT;AAAA,EACH;AACF;",
5
+ "names": []
6
+ }
@@ -0,0 +1,41 @@
1
+ import {
2
+ combineMasks,
3
+ createInverseMask,
4
+ createMask,
5
+ createSoftenMask,
6
+ createStrengthenMask,
7
+ skipMask
8
+ } from "@tamagui/create-theme";
9
+ function buildMask(masks) {
10
+ return combineMasks(
11
+ ...masks.map((mask) => mask.type === "inverse" ? createInverseMask() : mask.type === "soften" ? createSoftenMask({ strength: mask.strength || 0 }) : mask.type === "strengthen" ? createStrengthenMask({ strength: mask.strength || 0 }) : mask.type === "softenBorder" ? createMask((template, options) => {
12
+ const plain = skipMask.mask(template, options), softer = createSoftenMask({ strength: mask.strength }).mask(
13
+ template,
14
+ options
15
+ );
16
+ return {
17
+ ...plain,
18
+ borderColor: softer.borderColor,
19
+ borderColorHover: softer.borderColorHover,
20
+ borderColorPress: softer.borderColorPress,
21
+ borderColorFocus: softer.borderColorFocus
22
+ };
23
+ }) : mask.type === "strengthenBorder" ? createMask((template, options) => {
24
+ const plain = skipMask.mask(template, options), softer = createSoftenMask({ strength: mask.strength }).mask(
25
+ template,
26
+ options
27
+ );
28
+ return {
29
+ ...plain,
30
+ borderColor: softer.borderColor,
31
+ borderColorHover: softer.borderColorHover,
32
+ borderColorPress: softer.borderColorPress,
33
+ borderColorFocus: softer.borderColorFocus
34
+ };
35
+ }) : {})
36
+ );
37
+ }
38
+ export {
39
+ buildMask
40
+ };
41
+ //# sourceMappingURL=buildMask.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/buildMask.ts"],
4
+ "mappings": "AAAA;AAAA,EAEE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAOA,SAAS,UAAU,OAAoB;AAC5C,SAAO;AAAA,IACL,GAAG,MAAM,IAAI,CAAC,SACR,KAAK,SAAS,YACT,kBAAkB,IAEvB,KAAK,SAAS,WACT,iBAAiB,EAAE,UAAU,KAAK,YAAY,EAAE,CAAC,IAEtD,KAAK,SAAS,eACT,qBAAqB,EAAE,UAAU,KAAK,YAAY,EAAE,CAAC,IAE1D,KAAK,SAAS,iBACT,WAAW,CAAC,UAAU,YAAY;AACvC,YAAM,QAAQ,SAAS,KAAK,UAAU,OAAO,GACvC,SAAS,iBAAiB,EAAE,UAAU,KAAK,SAAS,CAAC,EAAE;AAAA,QAC3D;AAAA,QACA;AAAA,MACF;AACA,aAAO;AAAA,QACL,GAAG;AAAA,QACH,aAAa,OAAO;AAAA,QACpB,kBAAkB,OAAO;AAAA,QACzB,kBAAkB,OAAO;AAAA,QACzB,kBAAkB,OAAO;AAAA,MAC3B;AAAA,IACF,CAAC,IAEC,KAAK,SAAS,qBACT,WAAW,CAAC,UAAU,YAAY;AACvC,YAAM,QAAQ,SAAS,KAAK,UAAU,OAAO,GACvC,SAAS,iBAAiB,EAAE,UAAU,KAAK,SAAS,CAAC,EAAE;AAAA,QAC3D;AAAA,QACA;AAAA,MACF;AACA,aAAO;AAAA,QACL,GAAG;AAAA,QACH,aAAa,OAAO;AAAA,QACpB,kBAAkB,OAAO;AAAA,QACzB,kBAAkB,OAAO;AAAA,QACzB,kBAAkB,OAAO;AAAA,MAC3B;AAAA,IACF,CAAC,IAEI,CAAC,CACT;AAAA,EACH;AACF;",
5
+ "names": []
6
+ }
package/dist/esm/index.js CHANGED
@@ -1,3 +1,5 @@
1
1
  export * from "./ThemeBuilder";
2
2
  export * from "@tamagui/create-theme";
3
+ export * from "./buildMask";
4
+ export * from "./types";
3
5
  //# sourceMappingURL=index.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/index.ts"],
4
- "mappings": "AAAA,cAAc;AACd,cAAc;",
4
+ "mappings": "AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;",
5
5
  "names": []
6
6
  }
@@ -1,3 +1,5 @@
1
1
  export * from "./ThemeBuilder";
2
2
  export * from "@tamagui/create-theme";
3
+ export * from "./buildMask";
4
+ export * from "./types";
3
5
  //# sourceMappingURL=index.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/index.ts"],
4
- "mappings": "AAAA,cAAc;AACd,cAAc;",
4
+ "mappings": "AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;",
5
5
  "names": []
6
6
  }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "mappings": "",
5
+ "names": []
6
+ }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "mappings": "",
5
+ "names": []
6
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/theme-builder",
3
- "version": "1.75.9",
3
+ "version": "1.77.0",
4
4
  "source": "src/index.ts",
5
5
  "types": "./types/index.d.ts",
6
6
  "main": "dist/cjs",
@@ -27,10 +27,10 @@
27
27
  }
28
28
  },
29
29
  "dependencies": {
30
- "@tamagui/create-theme": "1.75.9"
30
+ "@tamagui/create-theme": "1.77.0"
31
31
  },
32
32
  "devDependencies": {
33
- "@tamagui/build": "1.75.9"
33
+ "@tamagui/build": "1.77.0"
34
34
  },
35
35
  "publishConfig": {
36
36
  "access": "public"
@@ -0,0 +1,63 @@
1
+ import {
2
+ CreateMask,
3
+ combineMasks,
4
+ createInverseMask,
5
+ createMask,
6
+ createSoftenMask,
7
+ createStrengthenMask,
8
+ skipMask,
9
+ } from '@tamagui/create-theme'
10
+
11
+ import { BuildMask } from './types'
12
+
13
+ // helper function for generating a custom mask given an object
14
+ // pulled out from studio, not really a "user facing" API yet
15
+
16
+ export function buildMask(masks: BuildMask[]) {
17
+ return combineMasks(
18
+ ...masks.map((mask) => {
19
+ if (mask.type === 'inverse') {
20
+ return createInverseMask()
21
+ }
22
+ if (mask.type === 'soften') {
23
+ return createSoftenMask({ strength: mask.strength || 0 })
24
+ }
25
+ if (mask.type === 'strengthen') {
26
+ return createStrengthenMask({ strength: mask.strength || 0 })
27
+ }
28
+ if (mask.type === 'softenBorder') {
29
+ return createMask((template, options) => {
30
+ const plain = skipMask.mask(template, options)
31
+ const softer = createSoftenMask({ strength: mask.strength }).mask(
32
+ template,
33
+ options
34
+ )
35
+ return {
36
+ ...plain,
37
+ borderColor: softer.borderColor,
38
+ borderColorHover: softer.borderColorHover,
39
+ borderColorPress: softer.borderColorPress,
40
+ borderColorFocus: softer.borderColorFocus,
41
+ }
42
+ })
43
+ }
44
+ if (mask.type === 'strengthenBorder') {
45
+ return createMask((template, options) => {
46
+ const plain = skipMask.mask(template, options)
47
+ const softer = createSoftenMask({ strength: mask.strength }).mask(
48
+ template,
49
+ options
50
+ )
51
+ return {
52
+ ...plain,
53
+ borderColor: softer.borderColor,
54
+ borderColorHover: softer.borderColorHover,
55
+ borderColorPress: softer.borderColorPress,
56
+ borderColorFocus: softer.borderColorFocus,
57
+ }
58
+ })
59
+ }
60
+ return {} as CreateMask
61
+ })
62
+ )
63
+ }
package/src/index.ts CHANGED
@@ -1,2 +1,4 @@
1
1
  export * from './ThemeBuilder'
2
2
  export * from '@tamagui/create-theme'
3
+ export * from './buildMask'
4
+ export * from './types'
package/src/types.ts ADDED
@@ -0,0 +1,70 @@
1
+ // only used by the studio theme builder generated:
2
+
3
+ export type BuildThemeSuiteProps = {
4
+ baseTheme: BuildLightDarkTheme
5
+ subThemes?: (BuildColorSubTheme | BuildMaskSubTheme)[]
6
+ }
7
+
8
+ export type ScaleTypeName =
9
+ | 'radix'
10
+ | 'radix-b'
11
+ | 'radius-bold'
12
+ | 'radius-bright'
13
+ | 'linear'
14
+ | 'pastel'
15
+ | 'pastel-desaturating'
16
+ | 'neon'
17
+ | 'neon-bright'
18
+ | 'neon-c'
19
+
20
+ export type BuildThemeBasicProperties = {
21
+ id: string
22
+ color: string
23
+ scale: ScaleTypeName
24
+ // saturation?: 'low' | 'x' | 'high'
25
+ contrast?: string
26
+ contrastColor?: string
27
+ contrastScale?: ScaleTypeName
28
+ errors?: string[]
29
+ }
30
+
31
+ export type BuildLightDarkTheme = BuildThemeBasicProperties & {
32
+ type: 'lightdark'
33
+ }
34
+
35
+ export type BuildColorSubTheme = BuildThemeBasicProperties & {
36
+ type: 'base'
37
+ subThemeType: 'color'
38
+ name: string
39
+ }
40
+
41
+ export type BuildMask = { id: string } & (
42
+ | {
43
+ type: 'strengthen'
44
+ strength: number
45
+ }
46
+ | {
47
+ type: 'soften'
48
+ strength: number
49
+ }
50
+ | {
51
+ type: 'inverse'
52
+ }
53
+ | {
54
+ type: 'strengthenBorder'
55
+ strength: number
56
+ }
57
+ | {
58
+ type: 'softenBorder'
59
+ strength: number
60
+ }
61
+ )
62
+
63
+ export type BuildMaskSubTheme = {
64
+ id: string
65
+ type: 'sub'
66
+ subThemeType: 'mask'
67
+ name: string
68
+ masks: BuildMask[]
69
+ errors?: string[]
70
+ }
@@ -0,0 +1,4 @@
1
+ import { CreateMask } from '@tamagui/create-theme';
2
+ import { BuildMask } from './types';
3
+ export declare function buildMask(masks: BuildMask[]): CreateMask;
4
+ //# sourceMappingURL=buildMask.d.ts.map
@@ -0,0 +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"}
package/types/index.d.ts CHANGED
@@ -1,3 +1,5 @@
1
1
  export * from './ThemeBuilder';
2
2
  export * from '@tamagui/create-theme';
3
+ export * from './buildMask';
4
+ export * from './types';
3
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,uBAAuB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,uBAAuB,CAAA;AACrC,cAAc,aAAa,CAAA;AAC3B,cAAc,SAAS,CAAA"}
@@ -0,0 +1,48 @@
1
+ export type BuildThemeSuiteProps = {
2
+ baseTheme: BuildLightDarkTheme;
3
+ subThemes?: (BuildColorSubTheme | BuildMaskSubTheme)[];
4
+ };
5
+ export type ScaleTypeName = 'radix' | 'radix-b' | 'radius-bold' | 'radius-bright' | 'linear' | 'pastel' | 'pastel-desaturating' | 'neon' | 'neon-bright' | 'neon-c';
6
+ export type BuildThemeBasicProperties = {
7
+ id: string;
8
+ color: string;
9
+ scale: ScaleTypeName;
10
+ contrast?: string;
11
+ contrastColor?: string;
12
+ contrastScale?: ScaleTypeName;
13
+ errors?: string[];
14
+ };
15
+ export type BuildLightDarkTheme = BuildThemeBasicProperties & {
16
+ type: 'lightdark';
17
+ };
18
+ export type BuildColorSubTheme = BuildThemeBasicProperties & {
19
+ type: 'base';
20
+ subThemeType: 'color';
21
+ name: string;
22
+ };
23
+ export type BuildMask = {
24
+ id: string;
25
+ } & ({
26
+ type: 'strengthen';
27
+ strength: number;
28
+ } | {
29
+ type: 'soften';
30
+ strength: number;
31
+ } | {
32
+ type: 'inverse';
33
+ } | {
34
+ type: 'strengthenBorder';
35
+ strength: number;
36
+ } | {
37
+ type: 'softenBorder';
38
+ strength: number;
39
+ });
40
+ export type BuildMaskSubTheme = {
41
+ id: string;
42
+ type: 'sub';
43
+ subThemeType: 'mask';
44
+ name: string;
45
+ masks: BuildMask[];
46
+ errors?: string[];
47
+ };
48
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,oBAAoB,GAAG;IACjC,SAAS,EAAE,mBAAmB,CAAA;IAC9B,SAAS,CAAC,EAAE,CAAC,kBAAkB,GAAG,iBAAiB,CAAC,EAAE,CAAA;CACvD,CAAA;AAED,MAAM,MAAM,aAAa,GACrB,OAAO,GACP,SAAS,GACT,aAAa,GACb,eAAe,GACf,QAAQ,GACR,QAAQ,GACR,qBAAqB,GACrB,MAAM,GACN,aAAa,GACb,QAAQ,CAAA;AAEZ,MAAM,MAAM,yBAAyB,GAAG;IACtC,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,aAAa,CAAA;IAEpB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,aAAa,CAAC,EAAE,aAAa,CAAA;IAC7B,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG,yBAAyB,GAAG;IAC5D,IAAI,EAAE,WAAW,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG,yBAAyB,GAAG;IAC3D,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,EAAE,OAAO,CAAA;IACrB,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,MAAM,MAAM,SAAS,GAAG;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,GAAG,CACrC;IACE,IAAI,EAAE,YAAY,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;CACjB,GACD;IACE,IAAI,EAAE,QAAQ,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;CACjB,GACD;IACE,IAAI,EAAE,SAAS,CAAA;CAChB,GACD;IACE,IAAI,EAAE,kBAAkB,CAAA;IACxB,QAAQ,EAAE,MAAM,CAAA;CACjB,GACD;IACE,IAAI,EAAE,cAAc,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;CACjB,CACJ,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,KAAK,CAAA;IACX,YAAY,EAAE,MAAM,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,SAAS,EAAE,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;CAClB,CAAA"}