@tamagui/cli 1.33.2 → 1.33.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var add_exports = {};
30
+ __export(add_exports, {
31
+ generatedPackageTypes: () => generatedPackageTypes,
32
+ installGeneratedPackage: () => installGeneratedPackage
33
+ });
34
+ module.exports = __toCommonJS(add_exports);
35
+ var import_child_process = require("child_process");
36
+ var import_fs = require("fs");
37
+ var import_promises = require("fs/promises");
38
+ var import_os = require("os");
39
+ var import_path = __toESM(require("path"));
40
+ var import_chalk = __toESM(require("chalk"));
41
+ var import_change_case = require("change-case");
42
+ var import_fs_extra = require("fs-extra");
43
+ var import_prompts = __toESM(require("prompts"));
44
+ const home = (0, import_os.homedir)();
45
+ const tamaguiDir = import_path.default.join(home, ".tamagui");
46
+ const generatedPackageTypes = ["font", "icon"];
47
+ const installGeneratedPackage = async (type, packagesPath) => {
48
+ packagesPath = packagesPath || "packages";
49
+ if (!generatedPackageTypes.includes(type)) {
50
+ throw new Error(
51
+ `${type ? `Type "${type}" is Not supported.` : `No type provided.`} Supported types: ${generatedPackageTypes.join(", ")}`
52
+ );
53
+ }
54
+ const repoName = type === "font" ? "tamagui-google-fonts" : "tamagui-iconify";
55
+ console.log(`Setting up ${import_chalk.default.blueBright(tamaguiDir)}...`);
56
+ await (0, import_fs_extra.ensureDir)(tamaguiDir);
57
+ const tempDir = import_path.default.join(tamaguiDir, repoName);
58
+ if ((0, import_fs.existsSync)(tempDir)) {
59
+ (0, import_fs.rmSync)(tempDir, { recursive: true });
60
+ }
61
+ try {
62
+ (0, import_child_process.execSync)(
63
+ `cd ${tamaguiDir} &&
64
+ git clone -n --depth=1 --branch generated --filter=tree:0 https://github.com/tamagui/${repoName}
65
+ cd ${repoName}
66
+ git sparse-checkout set --no-cone meta
67
+ git checkout`,
68
+ {
69
+ stdio: "inherit"
70
+ }
71
+ );
72
+ } catch (error) {
73
+ throw new Error(
74
+ `You don't have access to Tamagui ${type === "font" ? "fonts" : "icons"}. Check \u{1F961} Tamagui Takeout (https://tamagui.dev/takeout) for more info.`
75
+ );
76
+ }
77
+ const meta = JSON.parse(
78
+ await (0, import_promises.readFile)(import_path.default.join(tamaguiDir, repoName, `meta`, `data.json`)).then(
79
+ (r) => r.toString()
80
+ )
81
+ );
82
+ const result = await (0, import_prompts.default)({
83
+ name: "packageName",
84
+ type: "autocomplete",
85
+ message: `Pick a ${type}:`,
86
+ choices: Object.entries(meta).map(([slug, data]) => ({
87
+ title: type === "font" ? `${slug}: ${data.weights.length} weights, ${data.styles.length} styles, ${data.subsets.length} subsets (https://fonts.google.com/specimen/${(0, import_change_case.pascalCase)(slug)})` : `${data.name}: ${data.total} icons, ${data.license.title} license (${data.author.url})`,
88
+ value: slug
89
+ }))
90
+ });
91
+ const packageName = `${type === "font" ? "font-" : ""}${result.packageName}`;
92
+ const packageDir = import_path.default.join(tempDir, "packages", packageName);
93
+ (0, import_child_process.execSync)(
94
+ `cd ${tempDir} &&
95
+ git sparse-checkout set --no-cone packages/${packageName}
96
+ git checkout`
97
+ );
98
+ const finalDir = import_path.default.join(packagesPath, packageName);
99
+ await (0, import_fs_extra.ensureDir)(packagesPath);
100
+ await (0, import_fs_extra.copy)(packageDir, finalDir);
101
+ console.log(`Created the package under ${finalDir}`);
102
+ };
103
+ // Annotate the CommonJS export names for ESM import in node:
104
+ 0 && (module.exports = {
105
+ generatedPackageTypes,
106
+ installGeneratedPackage
107
+ });
108
+ //# sourceMappingURL=add.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/add.ts"],
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,2BAAyB;AACzB,gBAAmC;AACnC,sBAAyB;AACzB,gBAAwB;AACxB,kBAAiB;AAEjB,mBAAkB;AAClB,yBAA2B;AAC3B,sBAAgC;AAChC,qBAAoB;AAEpB,MAAM,WAAO,mBAAQ;AACrB,MAAM,aAAa,YAAAA,QAAK,KAAK,MAAM,UAAU;AAEtC,MAAM,wBAAwB,CAAC,QAAQ,MAAM;AAC7C,MAAM,0BAA0B,OAAO,MAAc,iBAA0B;AACpF,iBAAe,gBAAgB;AAC/B,MAAI,CAAC,sBAAsB,SAAS,IAA8C,GAAG;AACnF,UAAM,IAAI;AAAA,MACR,GACE,OAAO,SAAS,4BAA4B,wCACzB,sBAAsB,KAAK,IAAI;AAAA,IACtD;AAAA,EACF;AACA,QAAM,WAAW,SAAS,SAAS,yBAAyB;AAC5D,UAAQ,IAAI,cAAc,aAAAC,QAAM,WAAW,UAAU,MAAM;AAE3D,YAAM,2BAAU,UAAU;AAC1B,QAAM,UAAU,YAAAD,QAAK,KAAK,YAAY,QAAQ;AAC9C,UAAI,sBAAW,OAAO,GAAG;AACvB,0BAAO,SAAS,EAAE,WAAW,KAAK,CAAC;AAAA,EACrC;AACA,MAAI;AACF;AAAA,MACE,MAAM;AAAA,6FACiF;AAAA,WAClF;AAAA;AAAA;AAAA,MAGL;AAAA,QACE,OAAO;AAAA,MACT;AAAA,IACF;AAAA,EACF,SAAS,OAAP;AACA,UAAM,IAAI;AAAA,MACR,oCACE,SAAS,SAAS,UAAU;AAAA,IAEhC;AAAA,EACF;AAEA,QAAM,OAAO,KAAK;AAAA,IAChB,UAAM,0BAAS,YAAAA,QAAK,KAAK,YAAY,UAAU,QAAQ,WAAW,CAAC,EAAE;AAAA,MAAK,CAAC,MACzE,EAAE,SAAS;AAAA,IACb;AAAA,EACF;AAEA,QAAM,SAAS,UAAM,eAAAE,SAAQ;AAAA,IAC3B,MAAM;AAAA,IACN,MAAM;AAAA,IACN,SAAS,UAAU;AAAA,IAEnB,SAAS,OAAO,QAAa,IAAI,EAAE,IAAI,CAAC,CAAC,MAAM,IAAI,OAAO;AAAA,MACxD,OACE,SAAS,SACL,GAAG,SAAS,KAAK,QAAQ,mBAAmB,KAAK,OAAO,kBACtD,KAAK,QAAQ,yDACgC,+BAAW,IAAI,OAC9D,GAAG,KAAK,SAAS,KAAK,gBAAgB,KAAK,QAAQ,kBAAkB,KAAK,OAAO;AAAA,MACvF,OAAO;AAAA,IACT,EAAE;AAAA,EACJ,CAAC;AAED,QAAM,cAAc,GAAG,SAAS,SAAS,UAAU,KAAK,OAAO;AAC/D,QAAM,aAAa,YAAAF,QAAK,KAAK,SAAS,YAAY,WAAW;AAE7D;AAAA,IACE,MAAM;AAAA,iDACuC;AAAA;AAAA,EAE/C;AACA,QAAM,WAAW,YAAAA,QAAK,KAAK,cAAc,WAAW;AACpD,YAAM,2BAAU,YAAY;AAC5B,YAAM,sBAAK,YAAY,QAAQ;AAC/B,UAAQ,IAAI,6BAA6B,UAAU;AACrD;",
5
+ "names": ["path", "chalk", "prompts"]
6
+ }
package/dist/cjs/cli.js CHANGED
@@ -24,6 +24,7 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
24
24
  var import_path = require("path");
25
25
  var import_arg = __toESM(require("arg"));
26
26
  var import_chalk = __toESM(require("chalk"));
27
+ var import_add = require("./add.js");
27
28
  var import_utils = require("./utils");
28
29
  ["exit", "SIGINT"].forEach((_) => {
29
30
  process.on(_, () => {
@@ -42,7 +43,7 @@ const COMMAND_MAP = {
42
43
  },
43
44
  async run() {
44
45
  const { _, ...flags2 } = (0, import_arg.default)(this.flags);
45
- const { generateThemes } = await import("./generate-themes.js");
46
+ const { generateThemes } = await import("@tamagui/generate-themes");
46
47
  const options = await (0, import_utils.getOptions)({
47
48
  debug: flags2["--debug"] ? flags2["--verbose"] ? "verbose" : true : false
48
49
  });
@@ -59,6 +60,23 @@ const COMMAND_MAP = {
59
60
  });
60
61
  }
61
62
  },
63
+ add: {
64
+ shorthands: ["a"],
65
+ description: `Use to add fonts and icons to your monorepo. Supported types: ${import_add.generatedPackageTypes.join(
66
+ ", "
67
+ )}`,
68
+ flags: {
69
+ "--help": Boolean,
70
+ "--debug": Boolean,
71
+ "--verbose": Boolean
72
+ },
73
+ async run() {
74
+ const { _, ...flags2 } = (0, import_arg.default)(this.flags);
75
+ const { installGeneratedPackage } = await import("./add.js");
76
+ const [cmd, type, path] = _;
77
+ await installGeneratedPackage(type, path);
78
+ }
79
+ },
62
80
  // build: {
63
81
  // shorthands: ['b'],
64
82
  // description: `Use to pre-build a Tamagui component directory`,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/cli.ts"],
4
- "mappings": "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",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA,kBAAqB;AAGrB,iBAAgB;AAChB,mBAAkB;AAElB,iBAAsC;AACtC,mBAAuC;AAEtC,CAAC,QAAQ,QAAQ,EAAE,QAAQ,CAAC,MAAM;AACjC,UAAQ,GAAG,GAAG,MAAM;AAClB,iCAAW;AACX,YAAQ,KAAK;AAAA,EACf,CAAC;AACH,CAAC;AAED,MAAM,cAAc;AAAA,EAClB,mBAAmB;AAAA,IACjB,YAAY,CAAC,IAAI;AAAA,IACjB,aAAa;AAAA,IACb,OAAO;AAAA,MACL,UAAU;AAAA,MACV,WAAW;AAAA,MACX,aAAa;AAAA,IACf;AAAA,IACA,MAAM,MAAM;AACV,YAAM,EAAE,GAAG,GAAGA,OAAM,QAAI,WAAAC,SAAI,KAAK,KAAK;AACtC,YAAM,EAAE,eAAe,IAAI,MAAM,OAAO,0BAA0B;AAClE,YAAM,UAAU,UAAM,yBAAW;AAAA,QAC/B,OAAOD,OAAM,SAAS,IAAKA,OAAM,WAAW,IAAI,YAAY,OAAQ;AAAA,MACtE,CAAC;AACD,YAAM,CAAC,KAAK,QAAQ,OAAO,IAAI;AAC/B,UAAI,CAAC,UAAU,CAAC,SAAS;AACvB,cAAM,IAAI;AAAA,UACR,iEAAiE,oBAAoB;AAAA,QACvF;AAAA,MACF;AACA,YAAM,eAAe;AAAA,QACnB,GAAG;AAAA,QACH,YAAQ,kBAAK,QAAQ,MAAM,MAAM;AAAA,QACjC,aAAS,kBAAK,QAAQ,MAAM,OAAO;AAAA,MACrC,CAAC;AAAA,IACH;AAAA,EACF;AAAA,EAEA,KAAK;AAAA,IACH,YAAY,CAAC,GAAG;AAAA,IAChB,aAAa,iEAAiE,iCAAsB;AAAA,MAClG;AAAA,IACF;AAAA,IACA,OAAO;AAAA,MACL,UAAU;AAAA,MACV,WAAW;AAAA,MACX,aAAa;AAAA,IACf;AAAA,IACA,MAAM,MAAM;AACV,YAAM,EAAE,GAAG,GAAGA,OAAM,QAAI,WAAAC,SAAI,KAAK,KAAK;AACtC,YAAM,EAAE,wBAAwB,IAAI,MAAM,OAAO,UAAU;AAC3D,YAAM,CAAC,KAAK,MAAM,IAAI,IAAI;AAI1B,YAAM,wBAAwB,MAAM,IAAI;AAAA,IAC1C;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EA6BA,KAAK;AAAA,IACH,YAAY,CAAC,GAAG;AAAA,IAChB,aAAa;AAAA,IACb,OAAO;AAAA,MACL,UAAU;AAAA,MACV,WAAW;AAAA,MACX,aAAa;AAAA,IACf;AAAA,IACA,MAAM,MAAM;AACV,YAAM,EAAE,GAAG,GAAGD,OAAM,QAAI,WAAAC,SAAI,KAAK,KAAK;AACtC,YAAM,EAAE,IAAI,IAAI,MAAM,OAAO,OAAO;AACpC,YAAM,UAAU,UAAM,yBAAW;AAAA,QAC/B,OAAOD,OAAM,SAAS,IAAKA,OAAM,WAAW,IAAI,YAAY,OAAQ;AAAA,MACtE,CAAC;AACD,YAAM,IAAI,OAAO;AAAA,IACnB;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAoBF;AAMA,MAAM,iBAAiB,OAAO,KAAK,WAAW,EAAE,QAAQ,CAACE,aAAY;AACnE,QAAMC,cAAa,YAAYD,QAAqB;AACpD,QAAM,UAAU,CAACA,UAAS,GAAGC,YAAW,UAAU,EAAE,IAAI,CAAC,QAAQ;AAC/D,WAAO,CAAC,KAAKA,WAAU;AAAA,EACzB,CAAC;AACD,SAAO;AACT,CAAC;AAED,MAAM,WAAW,OAAO,YAAY,cAAc;AAKlD,MAAM;AAAA,EACJ,GAAG,CAAC,OAAO;AAAA,EACX,GAAG;AACL,QAAI,WAAAF;AAAA,EACF;AAAA,IACE,UAAU;AAAA,IACV,aAAa;AAAA,EACf;AAAA,EACA;AAAA,IACE,YAAY;AAAA,EACd;AACF;AAEA,IAAI,MAAM,WAAW,GAAG;AACtB,UAAQ,IAAI,QAAQ,iBAAiB,EAAE,OAAO;AAC9C,UAAQ,KAAK,CAAC;AAChB;AAEA,IAAI,CAAC,WAAW,MAAM,QAAQ,GAAG;AAC/B,UAAQ,IAAI;AAAA;AAAA;AAAA;AAAA,EAIZ,OAAO,KAAK,WAAW,EACtB,IAAI,CAAC,QAAQ;AACZ,WAAO,KAAK;AAAA,EACd,CAAC,EACA,KAAK,IAAI,GAAG;AACb,UAAQ,KAAK,CAAC;AAChB;AAEA,IAAI,EAAE,WAAW,WAAW;AAC1B,UAAQ,MAAM;AACd,UAAQ,KAAK,aAAAG,QAAM,OAAO,wBAAwB,SAAS,CAAC;AAC5D,UAAQ,KAAK,CAAC;AAChB;AAEA,MAAM,aAAa,SAAS,OAAO;AAEnC,KAAK;AAEL,eAAe,OAAO;AACpB,MAAI,MAAM,QAAQ,GAAG;AACnB,YAAQ,IAAI;AAAA,YAAe,YAAY,WAAW;AAAA,CAAe;AACjE,YAAQ;AAAA,MACN,UAAU,OAAO,QAAQ,WAAW,KAAK,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,MAAM,EAAE,OAAO;AAAA,IAC/E;AACA,YAAQ,KAAK,CAAC;AAAA,EAChB;AAEA,QAAM,EAAE,GAAG,GAAG,SAAS,QAAI,WAAAH,SAAI,WAAW,KAAK;AAG/C,MAAI,SAAS,QAAQ,GAAG;AACtB,YAAQ,IAAI,aAAa;AAAA;AAAA,aAEhB,KAAK,UAAU,UAAU,MAAM,CAAC;AAAA;AAAA,CAE5C;AACG,YAAQ,KAAK,CAAC;AAAA,EAChB;AAEA,MAAI;AACF,UAAM,WAAW,IAAI;AAAA,EACvB,SAAS,KAAP;AACA,YAAQ,MAAM,0BAA0B,IAAI,SAAS;AAAA,EACvD;AAEA,UAAQ,KAAK,CAAC;AAChB;AAEA,SAAS,SAASE,aAA+BH,QAA+B;AAC9E,MAAIA,OAAM,QAAQ,GAAG;AACnB,YAAQ,IAAI,KAAKG,aAAY;AAAA,EAC/B;AACF;",
5
5
  "names": ["flags", "arg", "command", "definition", "chalk"]
6
6
  }
package/dist/cjs/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
2
  "use strict";
3
+ var import_cli = require("./cli");
3
4
  process.env.TAMAGUI_TARGET = "web";
4
- require("./cli");
5
5
  //# sourceMappingURL=index.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/index.ts"],
4
- "mappings": ";;AAEA,QAAQ,IAAI,iBAAiB;AAE7B,QAAQ,OAAO;",
4
+ "mappings": ";;AAIA,iBAAO;AAFP,QAAQ,IAAI,iBAAiB;",
5
5
  "names": []
6
6
  }
package/dist/cli.js CHANGED
@@ -43,7 +43,7 @@ const COMMAND_MAP = {
43
43
  },
44
44
  async run() {
45
45
  const { _, ...flags2 } = (0, import_arg.default)(this.flags);
46
- const { generateThemes } = await import("./generate-themes.js");
46
+ const { generateThemes } = await import("@tamagui/generate-themes");
47
47
  const options = await (0, import_utils.getOptions)({
48
48
  debug: flags2["--debug"] ? flags2["--verbose"] ? "verbose" : true : false
49
49
  });
package/dist/cli.js.map CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/cli.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["flags", "arg", "command", "definition", "chalk"]
6
6
  }
@@ -0,0 +1,73 @@
1
+ import { execSync } from "child_process";
2
+ import { existsSync, rmSync } from "fs";
3
+ import { readFile } from "fs/promises";
4
+ import { homedir } from "os";
5
+ import path from "path";
6
+ import chalk from "chalk";
7
+ import { pascalCase } from "change-case";
8
+ import { copy, ensureDir } from "fs-extra";
9
+ import prompts from "prompts";
10
+ const home = homedir();
11
+ const tamaguiDir = path.join(home, ".tamagui");
12
+ const generatedPackageTypes = ["font", "icon"];
13
+ const installGeneratedPackage = async (type, packagesPath) => {
14
+ packagesPath = packagesPath || "packages";
15
+ if (!generatedPackageTypes.includes(type)) {
16
+ throw new Error(
17
+ `${type ? `Type "${type}" is Not supported.` : `No type provided.`} Supported types: ${generatedPackageTypes.join(", ")}`
18
+ );
19
+ }
20
+ const repoName = type === "font" ? "tamagui-google-fonts" : "tamagui-iconify";
21
+ console.log(`Setting up ${chalk.blueBright(tamaguiDir)}...`);
22
+ await ensureDir(tamaguiDir);
23
+ const tempDir = path.join(tamaguiDir, repoName);
24
+ if (existsSync(tempDir)) {
25
+ rmSync(tempDir, { recursive: true });
26
+ }
27
+ try {
28
+ execSync(
29
+ `cd ${tamaguiDir} &&
30
+ git clone -n --depth=1 --branch generated --filter=tree:0 https://github.com/tamagui/${repoName}
31
+ cd ${repoName}
32
+ git sparse-checkout set --no-cone meta
33
+ git checkout`,
34
+ {
35
+ stdio: "inherit"
36
+ }
37
+ );
38
+ } catch (error) {
39
+ throw new Error(
40
+ `You don't have access to Tamagui ${type === "font" ? "fonts" : "icons"}. Check \u{1F961} Tamagui Takeout (https://tamagui.dev/takeout) for more info.`
41
+ );
42
+ }
43
+ const meta = JSON.parse(
44
+ await readFile(path.join(tamaguiDir, repoName, `meta`, `data.json`)).then(
45
+ (r) => r.toString()
46
+ )
47
+ );
48
+ const result = await prompts({
49
+ name: "packageName",
50
+ type: "autocomplete",
51
+ message: `Pick a ${type}:`,
52
+ choices: Object.entries(meta).map(([slug, data]) => ({
53
+ title: type === "font" ? `${slug}: ${data.weights.length} weights, ${data.styles.length} styles, ${data.subsets.length} subsets (https://fonts.google.com/specimen/${pascalCase(slug)})` : `${data.name}: ${data.total} icons, ${data.license.title} license (${data.author.url})`,
54
+ value: slug
55
+ }))
56
+ });
57
+ const packageName = `${type === "font" ? "font-" : ""}${result.packageName}`;
58
+ const packageDir = path.join(tempDir, "packages", packageName);
59
+ execSync(
60
+ `cd ${tempDir} &&
61
+ git sparse-checkout set --no-cone packages/${packageName}
62
+ git checkout`
63
+ );
64
+ const finalDir = path.join(packagesPath, packageName);
65
+ await ensureDir(packagesPath);
66
+ await copy(packageDir, finalDir);
67
+ console.log(`Created the package under ${finalDir}`);
68
+ };
69
+ export {
70
+ generatedPackageTypes,
71
+ installGeneratedPackage
72
+ };
73
+ //# sourceMappingURL=add.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/add.ts"],
4
+ "mappings": "AAAA,SAAS,gBAAgB;AACzB,SAAS,YAAY,cAAc;AACnC,SAAS,gBAAgB;AACzB,SAAS,eAAe;AACxB,OAAO,UAAU;AAEjB,OAAO,WAAW;AAClB,SAAS,kBAAkB;AAC3B,SAAS,MAAM,iBAAiB;AAChC,OAAO,aAAa;AAEpB,MAAM,OAAO,QAAQ;AACrB,MAAM,aAAa,KAAK,KAAK,MAAM,UAAU;AAEtC,MAAM,wBAAwB,CAAC,QAAQ,MAAM;AAC7C,MAAM,0BAA0B,OAAO,MAAc,iBAA0B;AACpF,iBAAe,gBAAgB;AAC/B,MAAI,CAAC,sBAAsB,SAAS,IAA8C,GAAG;AACnF,UAAM,IAAI;AAAA,MACR,GACE,OAAO,SAAS,4BAA4B,wCACzB,sBAAsB,KAAK,IAAI;AAAA,IACtD;AAAA,EACF;AACA,QAAM,WAAW,SAAS,SAAS,yBAAyB;AAC5D,UAAQ,IAAI,cAAc,MAAM,WAAW,UAAU,MAAM;AAE3D,QAAM,UAAU,UAAU;AAC1B,QAAM,UAAU,KAAK,KAAK,YAAY,QAAQ;AAC9C,MAAI,WAAW,OAAO,GAAG;AACvB,WAAO,SAAS,EAAE,WAAW,KAAK,CAAC;AAAA,EACrC;AACA,MAAI;AACF;AAAA,MACE,MAAM;AAAA,6FACiF;AAAA,WAClF;AAAA;AAAA;AAAA,MAGL;AAAA,QACE,OAAO;AAAA,MACT;AAAA,IACF;AAAA,EACF,SAAS,OAAP;AACA,UAAM,IAAI;AAAA,MACR,oCACE,SAAS,SAAS,UAAU;AAAA,IAEhC;AAAA,EACF;AAEA,QAAM,OAAO,KAAK;AAAA,IAChB,MAAM,SAAS,KAAK,KAAK,YAAY,UAAU,QAAQ,WAAW,CAAC,EAAE;AAAA,MAAK,CAAC,MACzE,EAAE,SAAS;AAAA,IACb;AAAA,EACF;AAEA,QAAM,SAAS,MAAM,QAAQ;AAAA,IAC3B,MAAM;AAAA,IACN,MAAM;AAAA,IACN,SAAS,UAAU;AAAA,IAEnB,SAAS,OAAO,QAAa,IAAI,EAAE,IAAI,CAAC,CAAC,MAAM,IAAI,OAAO;AAAA,MACxD,OACE,SAAS,SACL,GAAG,SAAS,KAAK,QAAQ,mBAAmB,KAAK,OAAO,kBACtD,KAAK,QAAQ,qDACgC,WAAW,IAAI,OAC9D,GAAG,KAAK,SAAS,KAAK,gBAAgB,KAAK,QAAQ,kBAAkB,KAAK,OAAO;AAAA,MACvF,OAAO;AAAA,IACT,EAAE;AAAA,EACJ,CAAC;AAED,QAAM,cAAc,GAAG,SAAS,SAAS,UAAU,KAAK,OAAO;AAC/D,QAAM,aAAa,KAAK,KAAK,SAAS,YAAY,WAAW;AAE7D;AAAA,IACE,MAAM;AAAA,iDACuC;AAAA;AAAA,EAE/C;AACA,QAAM,WAAW,KAAK,KAAK,cAAc,WAAW;AACpD,QAAM,UAAU,YAAY;AAC5B,QAAM,KAAK,YAAY,QAAQ;AAC/B,UAAQ,IAAI,6BAA6B,UAAU;AACrD;",
5
+ "names": []
6
+ }
@@ -0,0 +1,73 @@
1
+ import { execSync } from "child_process";
2
+ import { existsSync, rmSync } from "fs";
3
+ import { readFile } from "fs/promises";
4
+ import { homedir } from "os";
5
+ import path from "path";
6
+ import chalk from "chalk";
7
+ import { pascalCase } from "change-case";
8
+ import { copy, ensureDir } from "fs-extra";
9
+ import prompts from "prompts";
10
+ const home = homedir();
11
+ const tamaguiDir = path.join(home, ".tamagui");
12
+ const generatedPackageTypes = ["font", "icon"];
13
+ const installGeneratedPackage = async (type, packagesPath) => {
14
+ packagesPath = packagesPath || "packages";
15
+ if (!generatedPackageTypes.includes(type)) {
16
+ throw new Error(
17
+ `${type ? `Type "${type}" is Not supported.` : `No type provided.`} Supported types: ${generatedPackageTypes.join(", ")}`
18
+ );
19
+ }
20
+ const repoName = type === "font" ? "tamagui-google-fonts" : "tamagui-iconify";
21
+ console.log(`Setting up ${chalk.blueBright(tamaguiDir)}...`);
22
+ await ensureDir(tamaguiDir);
23
+ const tempDir = path.join(tamaguiDir, repoName);
24
+ if (existsSync(tempDir)) {
25
+ rmSync(tempDir, { recursive: true });
26
+ }
27
+ try {
28
+ execSync(
29
+ `cd ${tamaguiDir} &&
30
+ git clone -n --depth=1 --branch generated --filter=tree:0 https://github.com/tamagui/${repoName}
31
+ cd ${repoName}
32
+ git sparse-checkout set --no-cone meta
33
+ git checkout`,
34
+ {
35
+ stdio: "inherit"
36
+ }
37
+ );
38
+ } catch (error) {
39
+ throw new Error(
40
+ `You don't have access to Tamagui ${type === "font" ? "fonts" : "icons"}. Check \u{1F961} Tamagui Takeout (https://tamagui.dev/takeout) for more info.`
41
+ );
42
+ }
43
+ const meta = JSON.parse(
44
+ await readFile(path.join(tamaguiDir, repoName, `meta`, `data.json`)).then(
45
+ (r) => r.toString()
46
+ )
47
+ );
48
+ const result = await prompts({
49
+ name: "packageName",
50
+ type: "autocomplete",
51
+ message: `Pick a ${type}:`,
52
+ choices: Object.entries(meta).map(([slug, data]) => ({
53
+ title: type === "font" ? `${slug}: ${data.weights.length} weights, ${data.styles.length} styles, ${data.subsets.length} subsets (https://fonts.google.com/specimen/${pascalCase(slug)})` : `${data.name}: ${data.total} icons, ${data.license.title} license (${data.author.url})`,
54
+ value: slug
55
+ }))
56
+ });
57
+ const packageName = `${type === "font" ? "font-" : ""}${result.packageName}`;
58
+ const packageDir = path.join(tempDir, "packages", packageName);
59
+ execSync(
60
+ `cd ${tempDir} &&
61
+ git sparse-checkout set --no-cone packages/${packageName}
62
+ git checkout`
63
+ );
64
+ const finalDir = path.join(packagesPath, packageName);
65
+ await ensureDir(packagesPath);
66
+ await copy(packageDir, finalDir);
67
+ console.log(`Created the package under ${finalDir}`);
68
+ };
69
+ export {
70
+ generatedPackageTypes,
71
+ installGeneratedPackage
72
+ };
73
+ //# sourceMappingURL=add.mjs.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/add.ts"],
4
+ "mappings": "AAAA,SAAS,gBAAgB;AACzB,SAAS,YAAY,cAAc;AACnC,SAAS,gBAAgB;AACzB,SAAS,eAAe;AACxB,OAAO,UAAU;AAEjB,OAAO,WAAW;AAClB,SAAS,kBAAkB;AAC3B,SAAS,MAAM,iBAAiB;AAChC,OAAO,aAAa;AAEpB,MAAM,OAAO,QAAQ;AACrB,MAAM,aAAa,KAAK,KAAK,MAAM,UAAU;AAEtC,MAAM,wBAAwB,CAAC,QAAQ,MAAM;AAC7C,MAAM,0BAA0B,OAAO,MAAc,iBAA0B;AACpF,iBAAe,gBAAgB;AAC/B,MAAI,CAAC,sBAAsB,SAAS,IAA8C,GAAG;AACnF,UAAM,IAAI;AAAA,MACR,GACE,OAAO,SAAS,4BAA4B,wCACzB,sBAAsB,KAAK,IAAI;AAAA,IACtD;AAAA,EACF;AACA,QAAM,WAAW,SAAS,SAAS,yBAAyB;AAC5D,UAAQ,IAAI,cAAc,MAAM,WAAW,UAAU,MAAM;AAE3D,QAAM,UAAU,UAAU;AAC1B,QAAM,UAAU,KAAK,KAAK,YAAY,QAAQ;AAC9C,MAAI,WAAW,OAAO,GAAG;AACvB,WAAO,SAAS,EAAE,WAAW,KAAK,CAAC;AAAA,EACrC;AACA,MAAI;AACF;AAAA,MACE,MAAM;AAAA,6FACiF;AAAA,WAClF;AAAA;AAAA;AAAA,MAGL;AAAA,QACE,OAAO;AAAA,MACT;AAAA,IACF;AAAA,EACF,SAAS,OAAP;AACA,UAAM,IAAI;AAAA,MACR,oCACE,SAAS,SAAS,UAAU;AAAA,IAEhC;AAAA,EACF;AAEA,QAAM,OAAO,KAAK;AAAA,IAChB,MAAM,SAAS,KAAK,KAAK,YAAY,UAAU,QAAQ,WAAW,CAAC,EAAE;AAAA,MAAK,CAAC,MACzE,EAAE,SAAS;AAAA,IACb;AAAA,EACF;AAEA,QAAM,SAAS,MAAM,QAAQ;AAAA,IAC3B,MAAM;AAAA,IACN,MAAM;AAAA,IACN,SAAS,UAAU;AAAA,IAEnB,SAAS,OAAO,QAAa,IAAI,EAAE,IAAI,CAAC,CAAC,MAAM,IAAI,OAAO;AAAA,MACxD,OACE,SAAS,SACL,GAAG,SAAS,KAAK,QAAQ,mBAAmB,KAAK,OAAO,kBACtD,KAAK,QAAQ,qDACgC,WAAW,IAAI,OAC9D,GAAG,KAAK,SAAS,KAAK,gBAAgB,KAAK,QAAQ,kBAAkB,KAAK,OAAO;AAAA,MACvF,OAAO;AAAA,IACT,EAAE;AAAA,EACJ,CAAC;AAED,QAAM,cAAc,GAAG,SAAS,SAAS,UAAU,KAAK,OAAO;AAC/D,QAAM,aAAa,KAAK,KAAK,SAAS,YAAY,WAAW;AAE7D;AAAA,IACE,MAAM;AAAA,iDACuC;AAAA;AAAA,EAE/C;AACA,QAAM,WAAW,KAAK,KAAK,cAAc,WAAW;AACpD,QAAM,UAAU,YAAY;AAC5B,QAAM,KAAK,YAAY,QAAQ;AAC/B,UAAQ,IAAI,6BAA6B,UAAU;AACrD;",
5
+ "names": []
6
+ }
package/dist/esm/cli.js CHANGED
@@ -1,6 +1,7 @@
1
1
  import { join } from "path";
2
2
  import arg from "arg";
3
3
  import chalk from "chalk";
4
+ import { generatedPackageTypes } from "./add.js";
4
5
  import { disposeAll, getOptions } from "./utils";
5
6
  ["exit", "SIGINT"].forEach((_) => {
6
7
  process.on(_, () => {
@@ -19,7 +20,7 @@ const COMMAND_MAP = {
19
20
  },
20
21
  async run() {
21
22
  const { _, ...flags2 } = arg(this.flags);
22
- const { generateThemes } = await import("./generate-themes.js");
23
+ const { generateThemes } = await import("@tamagui/generate-themes");
23
24
  const options = await getOptions({
24
25
  debug: flags2["--debug"] ? flags2["--verbose"] ? "verbose" : true : false
25
26
  });
@@ -36,6 +37,23 @@ const COMMAND_MAP = {
36
37
  });
37
38
  }
38
39
  },
40
+ add: {
41
+ shorthands: ["a"],
42
+ description: `Use to add fonts and icons to your monorepo. Supported types: ${generatedPackageTypes.join(
43
+ ", "
44
+ )}`,
45
+ flags: {
46
+ "--help": Boolean,
47
+ "--debug": Boolean,
48
+ "--verbose": Boolean
49
+ },
50
+ async run() {
51
+ const { _, ...flags2 } = arg(this.flags);
52
+ const { installGeneratedPackage } = await import("./add.js");
53
+ const [cmd, type, path] = _;
54
+ await installGeneratedPackage(type, path);
55
+ }
56
+ },
39
57
  // build: {
40
58
  // shorthands: ['b'],
41
59
  // description: `Use to pre-build a Tamagui component directory`,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/cli.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["flags", "command", "definition"]
6
6
  }
package/dist/esm/cli.mjs CHANGED
@@ -1,6 +1,7 @@
1
1
  import { join } from "path";
2
2
  import arg from "arg";
3
3
  import chalk from "chalk";
4
+ import { generatedPackageTypes } from "./add.js";
4
5
  import { disposeAll, getOptions } from "./utils";
5
6
  ["exit", "SIGINT"].forEach((_) => {
6
7
  process.on(_, () => {
@@ -19,7 +20,7 @@ const COMMAND_MAP = {
19
20
  },
20
21
  async run() {
21
22
  const { _, ...flags2 } = arg(this.flags);
22
- const { generateThemes } = await import("./generate-themes.js");
23
+ const { generateThemes } = await import("@tamagui/generate-themes");
23
24
  const options = await getOptions({
24
25
  debug: flags2["--debug"] ? flags2["--verbose"] ? "verbose" : true : false
25
26
  });
@@ -36,6 +37,23 @@ const COMMAND_MAP = {
36
37
  });
37
38
  }
38
39
  },
40
+ add: {
41
+ shorthands: ["a"],
42
+ description: `Use to add fonts and icons to your monorepo. Supported types: ${generatedPackageTypes.join(
43
+ ", "
44
+ )}`,
45
+ flags: {
46
+ "--help": Boolean,
47
+ "--debug": Boolean,
48
+ "--verbose": Boolean
49
+ },
50
+ async run() {
51
+ const { _, ...flags2 } = arg(this.flags);
52
+ const { installGeneratedPackage } = await import("./add.js");
53
+ const [cmd, type, path] = _;
54
+ await installGeneratedPackage(type, path);
55
+ }
56
+ },
39
57
  // build: {
40
58
  // shorthands: ['b'],
41
59
  // description: `Use to pre-build a Tamagui component directory`,
@@ -72,7 +90,7 @@ const COMMAND_MAP = {
72
90
  },
73
91
  async run() {
74
92
  const { _, ...flags2 } = arg(this.flags);
75
- const { dev } = await import("../esm/dev.mjs");
93
+ const { dev } = await import("./dev");
76
94
  const options = await getOptions({
77
95
  debug: flags2["--debug"] ? flags2["--verbose"] ? "verbose" : true : false
78
96
  });
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/cli.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["flags", "command", "definition"]
6
6
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/dev/createDevServer.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
package/dist/esm/index.js CHANGED
@@ -1,4 +1,4 @@
1
1
  #!/usr/bin/env node
2
2
  process.env.TAMAGUI_TARGET = "web";
3
- require("./cli");
3
+ import "./cli";
4
4
  //# sourceMappingURL=index.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/index.ts"],
4
- "mappings": ";AAEA,QAAQ,IAAI,iBAAiB;AAE7B,QAAQ,OAAO;",
4
+ "mappings": ";AAEA,QAAQ,IAAI,iBAAiB;AAE7B,OAAO;",
5
5
  "names": []
6
6
  }
@@ -1,3 +1,4 @@
1
1
  #!/usr/bin/env node
2
+ process.env.TAMAGUI_TARGET = "web";
2
3
  import "./cli";
3
4
  //# sourceMappingURL=index.mjs.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/index.ts"],
4
- "mappings": ";AAGA,OAAO;",
4
+ "mappings": ";AAEA,QAAQ,IAAI,iBAAiB;AAE7B,OAAO;",
5
5
  "names": []
6
6
  }
package/package.json CHANGED
@@ -1,9 +1,10 @@
1
1
  {
2
2
  "name": "@tamagui/cli",
3
- "version": "1.33.2",
3
+ "version": "1.33.4",
4
4
  "source": "src/index.ts",
5
5
  "types": "./types/index.d.ts",
6
6
  "main": "dist/cjs",
7
+ "module": "dist/esm",
7
8
  "bin": {
8
9
  "tama": "./dist/cjs/index.js",
9
10
  "tamagui": "./dist/cjs/index.js"
@@ -21,7 +22,7 @@
21
22
  ".": {
22
23
  "types": "./types/index.d.ts",
23
24
  "import": "./dist/esm/index.js",
24
- "require": "./dist/esm/index.mjs"
25
+ "require": "./dist/esm/index.js"
25
26
  }
26
27
  },
27
28
  "scripts": {
@@ -35,11 +36,12 @@
35
36
  "@callstack/repack-debugger-app": "^1.0.0",
36
37
  "@fastify/sensible": "^4.1.0",
37
38
  "@fastify/static": "^5.0.2",
38
- "@tamagui/build": "1.33.2",
39
- "@tamagui/create-theme": "1.33.2",
40
- "@tamagui/static": "1.33.2",
41
- "@tamagui/types": "1.33.2",
42
- "@tamagui/vite-plugin": "1.33.2",
39
+ "@tamagui/build": "1.33.4",
40
+ "@tamagui/create-theme": "1.33.4",
41
+ "@tamagui/generate-themes": "1.33.4",
42
+ "@tamagui/static": "1.33.4",
43
+ "@tamagui/types": "1.33.4",
44
+ "@tamagui/vite-plugin": "1.33.4",
43
45
  "@types/compression": "^1.7.2",
44
46
  "@types/morgan": "^1.9.3",
45
47
  "@vitejs/plugin-react-swc": "^3.3.0",
package/src/cli.ts CHANGED
@@ -25,7 +25,7 @@ const COMMAND_MAP = {
25
25
  },
26
26
  async run() {
27
27
  const { _, ...flags } = arg(this.flags)
28
- const { generateThemes } = await import('./generate-themes.js')
28
+ const { generateThemes } = await import('@tamagui/generate-themes')
29
29
  const options = await getOptions({
30
30
  debug: flags['--debug'] ? (flags['--verbose'] ? 'verbose' : true) : false,
31
31
  })
package/src/index.ts CHANGED
@@ -2,4 +2,4 @@
2
2
 
3
3
  process.env.TAMAGUI_TARGET = 'web'
4
4
 
5
- require('./cli')
5
+ import './cli'
package/types/index.d.ts CHANGED
@@ -1,2 +1,3 @@
1
1
  #!/usr/bin/env node
2
+ import './cli';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAIA,OAAO,OAAO,CAAA"}
@@ -1,148 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- import Module from 'module'
4
-
5
- import type { ThemeBuilder } from '@tamagui/create-theme/theme-builder'
6
- import { CLIResolvedOptions } from '@tamagui/types'
7
- import fs from 'fs-extra'
8
-
9
- type ThemeBuilderInterceptOpts = {
10
- onComplete: (result: { themeBuilder: ThemeBuilder<any> }) => void
11
- }
12
-
13
- export async function generateThemes(
14
- options: CLIResolvedOptions & {
15
- inPath: string
16
- outPath: string
17
- }
18
- ) {
19
- require('esbuild-register/dist/node').register()
20
-
21
- let promise: Promise<null | ThemeBuilder<any>> | null = null as any
22
-
23
- const ogRequire = Module.prototype.require
24
- // @ts-ignore
25
- Module.prototype.require = function (id) {
26
- // @ts-ignore
27
- const out = ogRequire.apply(this, arguments)
28
- if (id === '@tamagui/create-theme/theme-builder') {
29
- if (!promise) {
30
- let resolve: Function
31
- promise = new Promise((res) => {
32
- resolve = res
33
- })
34
- return createThemeIntercept(out, {
35
- onComplete: (result) => {
36
- resolve?.(result.themeBuilder)
37
- },
38
- })
39
- }
40
- }
41
- return out
42
- }
43
-
44
- const requiredThemes = require(options.inPath)
45
- const themes = requiredThemes['default'] || requiredThemes['themes']
46
- const generatedThemes = generatedThemesToTypescript(themes)
47
-
48
- const themeBuilder = promise ? await promise : null
49
-
50
- await Promise.all([
51
- fs.writeFile(options.outPath, generatedThemes),
52
- themeBuilder?.state
53
- ? fs.writeFile(
54
- `${options.outPath}.theme-builder.json`,
55
- JSON.stringify(themeBuilder?.state)
56
- )
57
- : null,
58
- ])
59
- }
60
-
61
- function generatedThemesToTypescript(themes: Record<string, any>) {
62
- const deduped = new Map<string, Object>()
63
- const dedupedToNames = new Map<string, string[]>()
64
-
65
- for (const name in themes) {
66
- const theme = themes[name]
67
- const key = JSON.stringify(theme)
68
- if (deduped.has(key)) {
69
- dedupedToNames.set(key, [...dedupedToNames.get(key)!, name])
70
- } else {
71
- deduped.set(key, theme)
72
- dedupedToNames.set(key, [name])
73
- }
74
- }
75
-
76
- const baseTypeString = `type Theme = {
77
- ${Object.entries(themes.light || themes[Object.keys(themes)[0]])
78
- .map(([k]) => {
79
- return ` ${k}: string;\n`
80
- })
81
- .join('')}
82
- }`
83
-
84
- let themesString = `${baseTypeString}\n`
85
-
86
- deduped.forEach((theme) => {
87
- const key = JSON.stringify(theme)
88
- const [baseName, ...restNames] = dedupedToNames.get(key)!
89
- const baseTheme = `export const ${baseName} = ${objectToJsString(theme)} as Theme`
90
- themesString += `\n${baseTheme}`
91
-
92
- if (restNames.length) {
93
- const duplicateThemes = restNames.map(
94
- (name) => `export const ${name} = ${baseName} as Theme`
95
- )
96
- themesString += `\n\n` + duplicateThemes.join('\n')
97
- }
98
- })
99
-
100
- return themesString
101
- }
102
-
103
- function objectToJsString(obj: Object, indent = 4) {
104
- const whitespace = new Array(indent).fill(' ').join('')
105
- return `{
106
- ${Object.entries(obj)
107
- .map(([k, v]) => `${whitespace}${k}: '${v}'`)
108
- .join(',\n')}
109
- }`
110
- }
111
-
112
- function createThemeIntercept(
113
- createThemeExport: any,
114
- themeBuilderInterceptOpts: ThemeBuilderInterceptOpts
115
- ) {
116
- return new Proxy(createThemeExport, {
117
- get(target, key) {
118
- const out = Reflect.get(target, key)
119
- if (key === 'createThemeBuilder') {
120
- return new Proxy(out, {
121
- apply(target, thisArg, argArray) {
122
- const builder = Reflect.apply(target, thisArg, argArray) as any
123
- return themeBuilderIntercept(builder, themeBuilderInterceptOpts)
124
- },
125
- })
126
- }
127
- return out
128
- },
129
- })
130
- }
131
-
132
- function themeBuilderIntercept(
133
- themeBuilder: any,
134
- themeBuilderInterceptOpts: ThemeBuilderInterceptOpts
135
- ) {
136
- return new Proxy(themeBuilder, {
137
- get(target, key) {
138
- const out = Reflect.get(target, key)
139
- if (key === 'build') {
140
- // get the state and return!
141
- themeBuilderInterceptOpts.onComplete({
142
- themeBuilder,
143
- })
144
- }
145
- return out
146
- },
147
- })
148
- }