@tamagui/cli 1.15.0 → 1.15.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.
@@ -82,24 +82,30 @@ async function getTamaguiConfig(options) {
82
82
  async function watchTamaguiConfig(options) {
83
83
  if (!options.tamaguiOptions.config)
84
84
  return;
85
- await generateTamaguiConfig(options);
86
- const context = await import_esbuild.default.context({
87
- entryPoints: [options.tamaguiOptions.config],
88
- sourcemap: false,
89
- // dont output just use esbuild as a watcher
90
- write: false,
91
- plugins: [
92
- {
93
- name: `on-rebuild`,
94
- setup({ onEnd }) {
95
- onEnd((res) => {
96
- generateTamaguiConfig(options);
97
- });
85
+ try {
86
+ await generateTamaguiConfig(options);
87
+ const context = await import_esbuild.default.context({
88
+ entryPoints: [options.tamaguiOptions.config],
89
+ sourcemap: false,
90
+ // dont output just use esbuild as a watcher
91
+ write: false,
92
+ plugins: [
93
+ {
94
+ name: `on-rebuild`,
95
+ setup({ onEnd }) {
96
+ onEnd((res) => {
97
+ generateTamaguiConfig(options);
98
+ });
99
+ }
98
100
  }
99
- }
100
- ]
101
- });
102
- await context.watch();
101
+ ]
102
+ });
103
+ await context.watch();
104
+ } catch (err) {
105
+ console.warn(
106
+ `Warning watching config error, you may need to restart on config changes: ${err}`
107
+ );
108
+ }
103
109
  }
104
110
  // Annotate the CommonJS export names for ESM import in node:
105
111
  0 && (module.exports = {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/tamaguiConfigUtils.ts"],
4
- "sourcesContent": ["#!/usr/bin/env node\n\nimport { getVariableValue } from '@tamagui/core-node'\nimport { CLIResolvedOptions } from '@tamagui/types'\nimport esbuild from 'esbuild'\nimport fs, { ensureDir } from 'fs-extra'\n\nimport { loadTamagui } from './utils.js'\n\nexport async function generateTamaguiConfig(options: CLIResolvedOptions) {\n await ensureDir(options.paths.dotDir)\n const config = await getTamaguiConfig(options)\n const { components, nameToPaths } = config\n const { themes, tokens } = config.tamaguiConfig\n\n // reduce down to usable, smaller json\n\n // slim themes, add name\n for (const key in themes) {\n const theme = themes[key]\n // @ts-ignore\n theme.id = key\n for (const tkey in theme) {\n theme[tkey] = getVariableValue(theme[tkey])\n }\n }\n\n // flatten variables\n for (const key in tokens) {\n const token = tokens[key]\n for (const tkey in token) {\n token[tkey] = getVariableValue(token[tkey])\n }\n }\n\n // remove bulky stuff in components\n for (const component of components) {\n for (const _ in component.nameToInfo) {\n delete component.nameToInfo[_].staticConfig['validStyles']\n delete component.nameToInfo[_].staticConfig['parentStaticConfig']\n }\n }\n\n // set to array\n for (const key in nameToPaths) {\n // @ts-ignore\n nameToPaths[key] = [...nameToPaths[key]]\n }\n\n // remove stuff we dont need to send\n const { fontsParsed, getCSS, tokensParsed, themeConfig, ...cleanedConfig } =\n config.tamaguiConfig\n\n await fs.writeJSON(\n options.paths.conf,\n {\n ...config,\n tamaguiConfig: cleanedConfig,\n },\n {\n spaces: 2,\n }\n )\n}\n\nasync function getTamaguiConfig(options: CLIResolvedOptions) {\n return loadTamagui(options.tamaguiOptions)\n}\n\nexport async function watchTamaguiConfig(options: CLIResolvedOptions) {\n if (!options.tamaguiOptions.config) return\n await generateTamaguiConfig(options)\n const context = await esbuild.context({\n entryPoints: [options.tamaguiOptions.config],\n sourcemap: false,\n // dont output just use esbuild as a watcher\n write: false,\n\n plugins: [\n {\n name: `on-rebuild`,\n setup({ onEnd }) {\n onEnd((res) => {\n generateTamaguiConfig(options)\n })\n },\n },\n ],\n })\n\n await context.watch()\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,uBAAiC;AAEjC,qBAAoB;AACpB,sBAA8B;AAE9B,mBAA4B;AAE5B,eAAsB,sBAAsB,SAA6B;AACvE,YAAM,2BAAU,QAAQ,MAAM,MAAM;AACpC,QAAM,SAAS,MAAM,iBAAiB,OAAO;AAC7C,QAAM,EAAE,YAAY,YAAY,IAAI;AACpC,QAAM,EAAE,QAAQ,OAAO,IAAI,OAAO;AAKlC,aAAW,OAAO,QAAQ;AACxB,UAAM,QAAQ,OAAO,GAAG;AAExB,UAAM,KAAK;AACX,eAAW,QAAQ,OAAO;AACxB,YAAM,IAAI,QAAI,mCAAiB,MAAM,IAAI,CAAC;AAAA,IAC5C;AAAA,EACF;AAGA,aAAW,OAAO,QAAQ;AACxB,UAAM,QAAQ,OAAO,GAAG;AACxB,eAAW,QAAQ,OAAO;AACxB,YAAM,IAAI,QAAI,mCAAiB,MAAM,IAAI,CAAC;AAAA,IAC5C;AAAA,EACF;AAGA,aAAW,aAAa,YAAY;AAClC,eAAW,KAAK,UAAU,YAAY;AACpC,aAAO,UAAU,WAAW,CAAC,EAAE,aAAa,aAAa;AACzD,aAAO,UAAU,WAAW,CAAC,EAAE,aAAa,oBAAoB;AAAA,IAClE;AAAA,EACF;AAGA,aAAW,OAAO,aAAa;AAE7B,gBAAY,GAAG,IAAI,CAAC,GAAG,YAAY,GAAG,CAAC;AAAA,EACzC;AAGA,QAAM,EAAE,aAAa,QAAQ,cAAc,aAAa,GAAG,cAAc,IACvE,OAAO;AAET,QAAM,gBAAAA,QAAG;AAAA,IACP,QAAQ,MAAM;AAAA,IACd;AAAA,MACE,GAAG;AAAA,MACH,eAAe;AAAA,IACjB;AAAA,IACA;AAAA,MACE,QAAQ;AAAA,IACV;AAAA,EACF;AACF;AAEA,eAAe,iBAAiB,SAA6B;AAC3D,aAAO,0BAAY,QAAQ,cAAc;AAC3C;AAEA,eAAsB,mBAAmB,SAA6B;AACpE,MAAI,CAAC,QAAQ,eAAe;AAAQ;AACpC,QAAM,sBAAsB,OAAO;AACnC,QAAM,UAAU,MAAM,eAAAC,QAAQ,QAAQ;AAAA,IACpC,aAAa,CAAC,QAAQ,eAAe,MAAM;AAAA,IAC3C,WAAW;AAAA;AAAA,IAEX,OAAO;AAAA,IAEP,SAAS;AAAA,MACP;AAAA,QACE,MAAM;AAAA,QACN,MAAM,EAAE,MAAM,GAAG;AACf,gBAAM,CAAC,QAAQ;AACb,kCAAsB,OAAO;AAAA,UAC/B,CAAC;AAAA,QACH;AAAA,MACF;AAAA,IACF;AAAA,EACF,CAAC;AAED,QAAM,QAAQ,MAAM;AACtB;",
4
+ "sourcesContent": ["#!/usr/bin/env node\n\nimport { getVariableValue } from '@tamagui/core-node'\nimport { CLIResolvedOptions } from '@tamagui/types'\nimport esbuild from 'esbuild'\nimport fs, { ensureDir } from 'fs-extra'\n\nimport { loadTamagui } from './utils.js'\n\nexport async function generateTamaguiConfig(options: CLIResolvedOptions) {\n await ensureDir(options.paths.dotDir)\n const config = await getTamaguiConfig(options)\n const { components, nameToPaths } = config\n const { themes, tokens } = config.tamaguiConfig\n\n // reduce down to usable, smaller json\n\n // slim themes, add name\n for (const key in themes) {\n const theme = themes[key]\n // @ts-ignore\n theme.id = key\n for (const tkey in theme) {\n theme[tkey] = getVariableValue(theme[tkey])\n }\n }\n\n // flatten variables\n for (const key in tokens) {\n const token = tokens[key]\n for (const tkey in token) {\n token[tkey] = getVariableValue(token[tkey])\n }\n }\n\n // remove bulky stuff in components\n for (const component of components) {\n for (const _ in component.nameToInfo) {\n delete component.nameToInfo[_].staticConfig['validStyles']\n delete component.nameToInfo[_].staticConfig['parentStaticConfig']\n }\n }\n\n // set to array\n for (const key in nameToPaths) {\n // @ts-ignore\n nameToPaths[key] = [...nameToPaths[key]]\n }\n\n // remove stuff we dont need to send\n const { fontsParsed, getCSS, tokensParsed, themeConfig, ...cleanedConfig } =\n config.tamaguiConfig\n\n await fs.writeJSON(\n options.paths.conf,\n {\n ...config,\n tamaguiConfig: cleanedConfig,\n },\n {\n spaces: 2,\n }\n )\n}\n\nasync function getTamaguiConfig(options: CLIResolvedOptions) {\n return loadTamagui(options.tamaguiOptions)\n}\n\nexport async function watchTamaguiConfig(options: CLIResolvedOptions) {\n if (!options.tamaguiOptions.config) return\n\n try {\n await generateTamaguiConfig(options)\n const context = await esbuild.context({\n entryPoints: [options.tamaguiOptions.config],\n sourcemap: false,\n // dont output just use esbuild as a watcher\n write: false,\n\n plugins: [\n {\n name: `on-rebuild`,\n setup({ onEnd }) {\n onEnd((res) => {\n generateTamaguiConfig(options)\n })\n },\n },\n ],\n })\n\n await context.watch()\n } catch (err) {\n console.warn(\n `Warning watching config error, you may need to restart on config changes: ${err}`\n )\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,uBAAiC;AAEjC,qBAAoB;AACpB,sBAA8B;AAE9B,mBAA4B;AAE5B,eAAsB,sBAAsB,SAA6B;AACvE,YAAM,2BAAU,QAAQ,MAAM,MAAM;AACpC,QAAM,SAAS,MAAM,iBAAiB,OAAO;AAC7C,QAAM,EAAE,YAAY,YAAY,IAAI;AACpC,QAAM,EAAE,QAAQ,OAAO,IAAI,OAAO;AAKlC,aAAW,OAAO,QAAQ;AACxB,UAAM,QAAQ,OAAO,GAAG;AAExB,UAAM,KAAK;AACX,eAAW,QAAQ,OAAO;AACxB,YAAM,IAAI,QAAI,mCAAiB,MAAM,IAAI,CAAC;AAAA,IAC5C;AAAA,EACF;AAGA,aAAW,OAAO,QAAQ;AACxB,UAAM,QAAQ,OAAO,GAAG;AACxB,eAAW,QAAQ,OAAO;AACxB,YAAM,IAAI,QAAI,mCAAiB,MAAM,IAAI,CAAC;AAAA,IAC5C;AAAA,EACF;AAGA,aAAW,aAAa,YAAY;AAClC,eAAW,KAAK,UAAU,YAAY;AACpC,aAAO,UAAU,WAAW,CAAC,EAAE,aAAa,aAAa;AACzD,aAAO,UAAU,WAAW,CAAC,EAAE,aAAa,oBAAoB;AAAA,IAClE;AAAA,EACF;AAGA,aAAW,OAAO,aAAa;AAE7B,gBAAY,GAAG,IAAI,CAAC,GAAG,YAAY,GAAG,CAAC;AAAA,EACzC;AAGA,QAAM,EAAE,aAAa,QAAQ,cAAc,aAAa,GAAG,cAAc,IACvE,OAAO;AAET,QAAM,gBAAAA,QAAG;AAAA,IACP,QAAQ,MAAM;AAAA,IACd;AAAA,MACE,GAAG;AAAA,MACH,eAAe;AAAA,IACjB;AAAA,IACA;AAAA,MACE,QAAQ;AAAA,IACV;AAAA,EACF;AACF;AAEA,eAAe,iBAAiB,SAA6B;AAC3D,aAAO,0BAAY,QAAQ,cAAc;AAC3C;AAEA,eAAsB,mBAAmB,SAA6B;AACpE,MAAI,CAAC,QAAQ,eAAe;AAAQ;AAEpC,MAAI;AACF,UAAM,sBAAsB,OAAO;AACnC,UAAM,UAAU,MAAM,eAAAC,QAAQ,QAAQ;AAAA,MACpC,aAAa,CAAC,QAAQ,eAAe,MAAM;AAAA,MAC3C,WAAW;AAAA;AAAA,MAEX,OAAO;AAAA,MAEP,SAAS;AAAA,QACP;AAAA,UACE,MAAM;AAAA,UACN,MAAM,EAAE,MAAM,GAAG;AACf,kBAAM,CAAC,QAAQ;AACb,oCAAsB,OAAO;AAAA,YAC/B,CAAC;AAAA,UACH;AAAA,QACF;AAAA,MACF;AAAA,IACF,CAAC;AAED,UAAM,QAAQ,MAAM;AAAA,EACtB,SAAS,KAAP;AACA,YAAQ;AAAA,MACN,6EAA6E;AAAA,IAC/E;AAAA,EACF;AACF;",
6
6
  "names": ["fs", "esbuild"]
7
7
  }
@@ -48,24 +48,30 @@ async function getTamaguiConfig(options) {
48
48
  async function watchTamaguiConfig(options) {
49
49
  if (!options.tamaguiOptions.config)
50
50
  return;
51
- await generateTamaguiConfig(options);
52
- const context = await esbuild.context({
53
- entryPoints: [options.tamaguiOptions.config],
54
- sourcemap: false,
55
- // dont output just use esbuild as a watcher
56
- write: false,
57
- plugins: [
58
- {
59
- name: `on-rebuild`,
60
- setup({ onEnd }) {
61
- onEnd((res) => {
62
- generateTamaguiConfig(options);
63
- });
51
+ try {
52
+ await generateTamaguiConfig(options);
53
+ const context = await esbuild.context({
54
+ entryPoints: [options.tamaguiOptions.config],
55
+ sourcemap: false,
56
+ // dont output just use esbuild as a watcher
57
+ write: false,
58
+ plugins: [
59
+ {
60
+ name: `on-rebuild`,
61
+ setup({ onEnd }) {
62
+ onEnd((res) => {
63
+ generateTamaguiConfig(options);
64
+ });
65
+ }
64
66
  }
65
- }
66
- ]
67
- });
68
- await context.watch();
67
+ ]
68
+ });
69
+ await context.watch();
70
+ } catch (err) {
71
+ console.warn(
72
+ `Warning watching config error, you may need to restart on config changes: ${err}`
73
+ );
74
+ }
69
75
  }
70
76
  export {
71
77
  generateTamaguiConfig,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/tamaguiConfigUtils.ts"],
4
- "sourcesContent": ["#!/usr/bin/env node\n\nimport { getVariableValue } from '@tamagui/core-node'\nimport { CLIResolvedOptions } from '@tamagui/types'\nimport esbuild from 'esbuild'\nimport fs, { ensureDir } from 'fs-extra'\n\nimport { loadTamagui } from './utils.js'\n\nexport async function generateTamaguiConfig(options: CLIResolvedOptions) {\n await ensureDir(options.paths.dotDir)\n const config = await getTamaguiConfig(options)\n const { components, nameToPaths } = config\n const { themes, tokens } = config.tamaguiConfig\n\n // reduce down to usable, smaller json\n\n // slim themes, add name\n for (const key in themes) {\n const theme = themes[key]\n // @ts-ignore\n theme.id = key\n for (const tkey in theme) {\n theme[tkey] = getVariableValue(theme[tkey])\n }\n }\n\n // flatten variables\n for (const key in tokens) {\n const token = tokens[key]\n for (const tkey in token) {\n token[tkey] = getVariableValue(token[tkey])\n }\n }\n\n // remove bulky stuff in components\n for (const component of components) {\n for (const _ in component.nameToInfo) {\n delete component.nameToInfo[_].staticConfig['validStyles']\n delete component.nameToInfo[_].staticConfig['parentStaticConfig']\n }\n }\n\n // set to array\n for (const key in nameToPaths) {\n // @ts-ignore\n nameToPaths[key] = [...nameToPaths[key]]\n }\n\n // remove stuff we dont need to send\n const { fontsParsed, getCSS, tokensParsed, themeConfig, ...cleanedConfig } =\n config.tamaguiConfig\n\n await fs.writeJSON(\n options.paths.conf,\n {\n ...config,\n tamaguiConfig: cleanedConfig,\n },\n {\n spaces: 2,\n }\n )\n}\n\nasync function getTamaguiConfig(options: CLIResolvedOptions) {\n return loadTamagui(options.tamaguiOptions)\n}\n\nexport async function watchTamaguiConfig(options: CLIResolvedOptions) {\n if (!options.tamaguiOptions.config) return\n await generateTamaguiConfig(options)\n const context = await esbuild.context({\n entryPoints: [options.tamaguiOptions.config],\n sourcemap: false,\n // dont output just use esbuild as a watcher\n write: false,\n\n plugins: [\n {\n name: `on-rebuild`,\n setup({ onEnd }) {\n onEnd((res) => {\n generateTamaguiConfig(options)\n })\n },\n },\n ],\n })\n\n await context.watch()\n}\n"],
5
- "mappings": ";AAEA,SAAS,wBAAwB;AAEjC,OAAO,aAAa;AACpB,OAAO,MAAM,iBAAiB;AAE9B,SAAS,mBAAmB;AAE5B,eAAsB,sBAAsB,SAA6B;AACvE,QAAM,UAAU,QAAQ,MAAM,MAAM;AACpC,QAAM,SAAS,MAAM,iBAAiB,OAAO;AAC7C,QAAM,EAAE,YAAY,YAAY,IAAI;AACpC,QAAM,EAAE,QAAQ,OAAO,IAAI,OAAO;AAKlC,aAAW,OAAO,QAAQ;AACxB,UAAM,QAAQ,OAAO,GAAG;AAExB,UAAM,KAAK;AACX,eAAW,QAAQ,OAAO;AACxB,YAAM,IAAI,IAAI,iBAAiB,MAAM,IAAI,CAAC;AAAA,IAC5C;AAAA,EACF;AAGA,aAAW,OAAO,QAAQ;AACxB,UAAM,QAAQ,OAAO,GAAG;AACxB,eAAW,QAAQ,OAAO;AACxB,YAAM,IAAI,IAAI,iBAAiB,MAAM,IAAI,CAAC;AAAA,IAC5C;AAAA,EACF;AAGA,aAAW,aAAa,YAAY;AAClC,eAAW,KAAK,UAAU,YAAY;AACpC,aAAO,UAAU,WAAW,CAAC,EAAE,aAAa,aAAa;AACzD,aAAO,UAAU,WAAW,CAAC,EAAE,aAAa,oBAAoB;AAAA,IAClE;AAAA,EACF;AAGA,aAAW,OAAO,aAAa;AAE7B,gBAAY,GAAG,IAAI,CAAC,GAAG,YAAY,GAAG,CAAC;AAAA,EACzC;AAGA,QAAM,EAAE,aAAa,QAAQ,cAAc,aAAa,GAAG,cAAc,IACvE,OAAO;AAET,QAAM,GAAG;AAAA,IACP,QAAQ,MAAM;AAAA,IACd;AAAA,MACE,GAAG;AAAA,MACH,eAAe;AAAA,IACjB;AAAA,IACA;AAAA,MACE,QAAQ;AAAA,IACV;AAAA,EACF;AACF;AAEA,eAAe,iBAAiB,SAA6B;AAC3D,SAAO,YAAY,QAAQ,cAAc;AAC3C;AAEA,eAAsB,mBAAmB,SAA6B;AACpE,MAAI,CAAC,QAAQ,eAAe;AAAQ;AACpC,QAAM,sBAAsB,OAAO;AACnC,QAAM,UAAU,MAAM,QAAQ,QAAQ;AAAA,IACpC,aAAa,CAAC,QAAQ,eAAe,MAAM;AAAA,IAC3C,WAAW;AAAA;AAAA,IAEX,OAAO;AAAA,IAEP,SAAS;AAAA,MACP;AAAA,QACE,MAAM;AAAA,QACN,MAAM,EAAE,MAAM,GAAG;AACf,gBAAM,CAAC,QAAQ;AACb,kCAAsB,OAAO;AAAA,UAC/B,CAAC;AAAA,QACH;AAAA,MACF;AAAA,IACF;AAAA,EACF,CAAC;AAED,QAAM,QAAQ,MAAM;AACtB;",
4
+ "sourcesContent": ["#!/usr/bin/env node\n\nimport { getVariableValue } from '@tamagui/core-node'\nimport { CLIResolvedOptions } from '@tamagui/types'\nimport esbuild from 'esbuild'\nimport fs, { ensureDir } from 'fs-extra'\n\nimport { loadTamagui } from './utils.js'\n\nexport async function generateTamaguiConfig(options: CLIResolvedOptions) {\n await ensureDir(options.paths.dotDir)\n const config = await getTamaguiConfig(options)\n const { components, nameToPaths } = config\n const { themes, tokens } = config.tamaguiConfig\n\n // reduce down to usable, smaller json\n\n // slim themes, add name\n for (const key in themes) {\n const theme = themes[key]\n // @ts-ignore\n theme.id = key\n for (const tkey in theme) {\n theme[tkey] = getVariableValue(theme[tkey])\n }\n }\n\n // flatten variables\n for (const key in tokens) {\n const token = tokens[key]\n for (const tkey in token) {\n token[tkey] = getVariableValue(token[tkey])\n }\n }\n\n // remove bulky stuff in components\n for (const component of components) {\n for (const _ in component.nameToInfo) {\n delete component.nameToInfo[_].staticConfig['validStyles']\n delete component.nameToInfo[_].staticConfig['parentStaticConfig']\n }\n }\n\n // set to array\n for (const key in nameToPaths) {\n // @ts-ignore\n nameToPaths[key] = [...nameToPaths[key]]\n }\n\n // remove stuff we dont need to send\n const { fontsParsed, getCSS, tokensParsed, themeConfig, ...cleanedConfig } =\n config.tamaguiConfig\n\n await fs.writeJSON(\n options.paths.conf,\n {\n ...config,\n tamaguiConfig: cleanedConfig,\n },\n {\n spaces: 2,\n }\n )\n}\n\nasync function getTamaguiConfig(options: CLIResolvedOptions) {\n return loadTamagui(options.tamaguiOptions)\n}\n\nexport async function watchTamaguiConfig(options: CLIResolvedOptions) {\n if (!options.tamaguiOptions.config) return\n\n try {\n await generateTamaguiConfig(options)\n const context = await esbuild.context({\n entryPoints: [options.tamaguiOptions.config],\n sourcemap: false,\n // dont output just use esbuild as a watcher\n write: false,\n\n plugins: [\n {\n name: `on-rebuild`,\n setup({ onEnd }) {\n onEnd((res) => {\n generateTamaguiConfig(options)\n })\n },\n },\n ],\n })\n\n await context.watch()\n } catch (err) {\n console.warn(\n `Warning watching config error, you may need to restart on config changes: ${err}`\n )\n }\n}\n"],
5
+ "mappings": ";AAEA,SAAS,wBAAwB;AAEjC,OAAO,aAAa;AACpB,OAAO,MAAM,iBAAiB;AAE9B,SAAS,mBAAmB;AAE5B,eAAsB,sBAAsB,SAA6B;AACvE,QAAM,UAAU,QAAQ,MAAM,MAAM;AACpC,QAAM,SAAS,MAAM,iBAAiB,OAAO;AAC7C,QAAM,EAAE,YAAY,YAAY,IAAI;AACpC,QAAM,EAAE,QAAQ,OAAO,IAAI,OAAO;AAKlC,aAAW,OAAO,QAAQ;AACxB,UAAM,QAAQ,OAAO,GAAG;AAExB,UAAM,KAAK;AACX,eAAW,QAAQ,OAAO;AACxB,YAAM,IAAI,IAAI,iBAAiB,MAAM,IAAI,CAAC;AAAA,IAC5C;AAAA,EACF;AAGA,aAAW,OAAO,QAAQ;AACxB,UAAM,QAAQ,OAAO,GAAG;AACxB,eAAW,QAAQ,OAAO;AACxB,YAAM,IAAI,IAAI,iBAAiB,MAAM,IAAI,CAAC;AAAA,IAC5C;AAAA,EACF;AAGA,aAAW,aAAa,YAAY;AAClC,eAAW,KAAK,UAAU,YAAY;AACpC,aAAO,UAAU,WAAW,CAAC,EAAE,aAAa,aAAa;AACzD,aAAO,UAAU,WAAW,CAAC,EAAE,aAAa,oBAAoB;AAAA,IAClE;AAAA,EACF;AAGA,aAAW,OAAO,aAAa;AAE7B,gBAAY,GAAG,IAAI,CAAC,GAAG,YAAY,GAAG,CAAC;AAAA,EACzC;AAGA,QAAM,EAAE,aAAa,QAAQ,cAAc,aAAa,GAAG,cAAc,IACvE,OAAO;AAET,QAAM,GAAG;AAAA,IACP,QAAQ,MAAM;AAAA,IACd;AAAA,MACE,GAAG;AAAA,MACH,eAAe;AAAA,IACjB;AAAA,IACA;AAAA,MACE,QAAQ;AAAA,IACV;AAAA,EACF;AACF;AAEA,eAAe,iBAAiB,SAA6B;AAC3D,SAAO,YAAY,QAAQ,cAAc;AAC3C;AAEA,eAAsB,mBAAmB,SAA6B;AACpE,MAAI,CAAC,QAAQ,eAAe;AAAQ;AAEpC,MAAI;AACF,UAAM,sBAAsB,OAAO;AACnC,UAAM,UAAU,MAAM,QAAQ,QAAQ;AAAA,MACpC,aAAa,CAAC,QAAQ,eAAe,MAAM;AAAA,MAC3C,WAAW;AAAA;AAAA,MAEX,OAAO;AAAA,MAEP,SAAS;AAAA,QACP;AAAA,UACE,MAAM;AAAA,UACN,MAAM,EAAE,MAAM,GAAG;AACf,kBAAM,CAAC,QAAQ;AACb,oCAAsB,OAAO;AAAA,YAC/B,CAAC;AAAA,UACH;AAAA,QACF;AAAA,MACF;AAAA,IACF,CAAC;AAED,UAAM,QAAQ,MAAM;AAAA,EACtB,SAAS,KAAP;AACA,YAAQ;AAAA,MACN,6EAA6E;AAAA,IAC/E;AAAA,EACF;AACF;",
6
6
  "names": []
7
7
  }
@@ -48,24 +48,30 @@ async function getTamaguiConfig(options) {
48
48
  async function watchTamaguiConfig(options) {
49
49
  if (!options.tamaguiOptions.config)
50
50
  return;
51
- await generateTamaguiConfig(options);
52
- const context = await esbuild.context({
53
- entryPoints: [options.tamaguiOptions.config],
54
- sourcemap: false,
55
- // dont output just use esbuild as a watcher
56
- write: false,
57
- plugins: [
58
- {
59
- name: `on-rebuild`,
60
- setup({ onEnd }) {
61
- onEnd((res) => {
62
- generateTamaguiConfig(options);
63
- });
51
+ try {
52
+ await generateTamaguiConfig(options);
53
+ const context = await esbuild.context({
54
+ entryPoints: [options.tamaguiOptions.config],
55
+ sourcemap: false,
56
+ // dont output just use esbuild as a watcher
57
+ write: false,
58
+ plugins: [
59
+ {
60
+ name: `on-rebuild`,
61
+ setup({ onEnd }) {
62
+ onEnd((res) => {
63
+ generateTamaguiConfig(options);
64
+ });
65
+ }
64
66
  }
65
- }
66
- ]
67
- });
68
- await context.watch();
67
+ ]
68
+ });
69
+ await context.watch();
70
+ } catch (err) {
71
+ console.warn(
72
+ `Warning watching config error, you may need to restart on config changes: ${err}`
73
+ );
74
+ }
69
75
  }
70
76
  export {
71
77
  generateTamaguiConfig,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/tamaguiConfigUtils.ts"],
4
- "sourcesContent": ["#!/usr/bin/env node\n\nimport { getVariableValue } from '@tamagui/core-node'\nimport { CLIResolvedOptions } from '@tamagui/types'\nimport esbuild from 'esbuild'\nimport fs, { ensureDir } from 'fs-extra'\n\nimport { loadTamagui } from './utils.js'\n\nexport async function generateTamaguiConfig(options: CLIResolvedOptions) {\n await ensureDir(options.paths.dotDir)\n const config = await getTamaguiConfig(options)\n const { components, nameToPaths } = config\n const { themes, tokens } = config.tamaguiConfig\n\n // reduce down to usable, smaller json\n\n // slim themes, add name\n for (const key in themes) {\n const theme = themes[key]\n // @ts-ignore\n theme.id = key\n for (const tkey in theme) {\n theme[tkey] = getVariableValue(theme[tkey])\n }\n }\n\n // flatten variables\n for (const key in tokens) {\n const token = tokens[key]\n for (const tkey in token) {\n token[tkey] = getVariableValue(token[tkey])\n }\n }\n\n // remove bulky stuff in components\n for (const component of components) {\n for (const _ in component.nameToInfo) {\n delete component.nameToInfo[_].staticConfig['validStyles']\n delete component.nameToInfo[_].staticConfig['parentStaticConfig']\n }\n }\n\n // set to array\n for (const key in nameToPaths) {\n // @ts-ignore\n nameToPaths[key] = [...nameToPaths[key]]\n }\n\n // remove stuff we dont need to send\n const { fontsParsed, getCSS, tokensParsed, themeConfig, ...cleanedConfig } =\n config.tamaguiConfig\n\n await fs.writeJSON(\n options.paths.conf,\n {\n ...config,\n tamaguiConfig: cleanedConfig,\n },\n {\n spaces: 2,\n }\n )\n}\n\nasync function getTamaguiConfig(options: CLIResolvedOptions) {\n return loadTamagui(options.tamaguiOptions)\n}\n\nexport async function watchTamaguiConfig(options: CLIResolvedOptions) {\n if (!options.tamaguiOptions.config) return\n await generateTamaguiConfig(options)\n const context = await esbuild.context({\n entryPoints: [options.tamaguiOptions.config],\n sourcemap: false,\n // dont output just use esbuild as a watcher\n write: false,\n\n plugins: [\n {\n name: `on-rebuild`,\n setup({ onEnd }) {\n onEnd((res) => {\n generateTamaguiConfig(options)\n })\n },\n },\n ],\n })\n\n await context.watch()\n}\n"],
5
- "mappings": ";AAEA,SAAS,wBAAwB;AAEjC,OAAO,aAAa;AACpB,OAAO,MAAM,iBAAiB;AAE9B,SAAS,mBAAmB;AAE5B,eAAsB,sBAAsB,SAA6B;AACvE,QAAM,UAAU,QAAQ,MAAM,MAAM;AACpC,QAAM,SAAS,MAAM,iBAAiB,OAAO;AAC7C,QAAM,EAAE,YAAY,YAAY,IAAI;AACpC,QAAM,EAAE,QAAQ,OAAO,IAAI,OAAO;AAKlC,aAAW,OAAO,QAAQ;AACxB,UAAM,QAAQ,OAAO,GAAG;AAExB,UAAM,KAAK;AACX,eAAW,QAAQ,OAAO;AACxB,YAAM,IAAI,IAAI,iBAAiB,MAAM,IAAI,CAAC;AAAA,IAC5C;AAAA,EACF;AAGA,aAAW,OAAO,QAAQ;AACxB,UAAM,QAAQ,OAAO,GAAG;AACxB,eAAW,QAAQ,OAAO;AACxB,YAAM,IAAI,IAAI,iBAAiB,MAAM,IAAI,CAAC;AAAA,IAC5C;AAAA,EACF;AAGA,aAAW,aAAa,YAAY;AAClC,eAAW,KAAK,UAAU,YAAY;AACpC,aAAO,UAAU,WAAW,CAAC,EAAE,aAAa,aAAa;AACzD,aAAO,UAAU,WAAW,CAAC,EAAE,aAAa,oBAAoB;AAAA,IAClE;AAAA,EACF;AAGA,aAAW,OAAO,aAAa;AAE7B,gBAAY,GAAG,IAAI,CAAC,GAAG,YAAY,GAAG,CAAC;AAAA,EACzC;AAGA,QAAM,EAAE,aAAa,QAAQ,cAAc,aAAa,GAAG,cAAc,IACvE,OAAO;AAET,QAAM,GAAG;AAAA,IACP,QAAQ,MAAM;AAAA,IACd;AAAA,MACE,GAAG;AAAA,MACH,eAAe;AAAA,IACjB;AAAA,IACA;AAAA,MACE,QAAQ;AAAA,IACV;AAAA,EACF;AACF;AAEA,eAAe,iBAAiB,SAA6B;AAC3D,SAAO,YAAY,QAAQ,cAAc;AAC3C;AAEA,eAAsB,mBAAmB,SAA6B;AACpE,MAAI,CAAC,QAAQ,eAAe;AAAQ;AACpC,QAAM,sBAAsB,OAAO;AACnC,QAAM,UAAU,MAAM,QAAQ,QAAQ;AAAA,IACpC,aAAa,CAAC,QAAQ,eAAe,MAAM;AAAA,IAC3C,WAAW;AAAA;AAAA,IAEX,OAAO;AAAA,IAEP,SAAS;AAAA,MACP;AAAA,QACE,MAAM;AAAA,QACN,MAAM,EAAE,MAAM,GAAG;AACf,gBAAM,CAAC,QAAQ;AACb,kCAAsB,OAAO;AAAA,UAC/B,CAAC;AAAA,QACH;AAAA,MACF;AAAA,IACF;AAAA,EACF,CAAC;AAED,QAAM,QAAQ,MAAM;AACtB;",
4
+ "sourcesContent": ["#!/usr/bin/env node\n\nimport { getVariableValue } from '@tamagui/core-node'\nimport { CLIResolvedOptions } from '@tamagui/types'\nimport esbuild from 'esbuild'\nimport fs, { ensureDir } from 'fs-extra'\n\nimport { loadTamagui } from './utils.js'\n\nexport async function generateTamaguiConfig(options: CLIResolvedOptions) {\n await ensureDir(options.paths.dotDir)\n const config = await getTamaguiConfig(options)\n const { components, nameToPaths } = config\n const { themes, tokens } = config.tamaguiConfig\n\n // reduce down to usable, smaller json\n\n // slim themes, add name\n for (const key in themes) {\n const theme = themes[key]\n // @ts-ignore\n theme.id = key\n for (const tkey in theme) {\n theme[tkey] = getVariableValue(theme[tkey])\n }\n }\n\n // flatten variables\n for (const key in tokens) {\n const token = tokens[key]\n for (const tkey in token) {\n token[tkey] = getVariableValue(token[tkey])\n }\n }\n\n // remove bulky stuff in components\n for (const component of components) {\n for (const _ in component.nameToInfo) {\n delete component.nameToInfo[_].staticConfig['validStyles']\n delete component.nameToInfo[_].staticConfig['parentStaticConfig']\n }\n }\n\n // set to array\n for (const key in nameToPaths) {\n // @ts-ignore\n nameToPaths[key] = [...nameToPaths[key]]\n }\n\n // remove stuff we dont need to send\n const { fontsParsed, getCSS, tokensParsed, themeConfig, ...cleanedConfig } =\n config.tamaguiConfig\n\n await fs.writeJSON(\n options.paths.conf,\n {\n ...config,\n tamaguiConfig: cleanedConfig,\n },\n {\n spaces: 2,\n }\n )\n}\n\nasync function getTamaguiConfig(options: CLIResolvedOptions) {\n return loadTamagui(options.tamaguiOptions)\n}\n\nexport async function watchTamaguiConfig(options: CLIResolvedOptions) {\n if (!options.tamaguiOptions.config) return\n\n try {\n await generateTamaguiConfig(options)\n const context = await esbuild.context({\n entryPoints: [options.tamaguiOptions.config],\n sourcemap: false,\n // dont output just use esbuild as a watcher\n write: false,\n\n plugins: [\n {\n name: `on-rebuild`,\n setup({ onEnd }) {\n onEnd((res) => {\n generateTamaguiConfig(options)\n })\n },\n },\n ],\n })\n\n await context.watch()\n } catch (err) {\n console.warn(\n `Warning watching config error, you may need to restart on config changes: ${err}`\n )\n }\n}\n"],
5
+ "mappings": ";AAEA,SAAS,wBAAwB;AAEjC,OAAO,aAAa;AACpB,OAAO,MAAM,iBAAiB;AAE9B,SAAS,mBAAmB;AAE5B,eAAsB,sBAAsB,SAA6B;AACvE,QAAM,UAAU,QAAQ,MAAM,MAAM;AACpC,QAAM,SAAS,MAAM,iBAAiB,OAAO;AAC7C,QAAM,EAAE,YAAY,YAAY,IAAI;AACpC,QAAM,EAAE,QAAQ,OAAO,IAAI,OAAO;AAKlC,aAAW,OAAO,QAAQ;AACxB,UAAM,QAAQ,OAAO,GAAG;AAExB,UAAM,KAAK;AACX,eAAW,QAAQ,OAAO;AACxB,YAAM,IAAI,IAAI,iBAAiB,MAAM,IAAI,CAAC;AAAA,IAC5C;AAAA,EACF;AAGA,aAAW,OAAO,QAAQ;AACxB,UAAM,QAAQ,OAAO,GAAG;AACxB,eAAW,QAAQ,OAAO;AACxB,YAAM,IAAI,IAAI,iBAAiB,MAAM,IAAI,CAAC;AAAA,IAC5C;AAAA,EACF;AAGA,aAAW,aAAa,YAAY;AAClC,eAAW,KAAK,UAAU,YAAY;AACpC,aAAO,UAAU,WAAW,CAAC,EAAE,aAAa,aAAa;AACzD,aAAO,UAAU,WAAW,CAAC,EAAE,aAAa,oBAAoB;AAAA,IAClE;AAAA,EACF;AAGA,aAAW,OAAO,aAAa;AAE7B,gBAAY,GAAG,IAAI,CAAC,GAAG,YAAY,GAAG,CAAC;AAAA,EACzC;AAGA,QAAM,EAAE,aAAa,QAAQ,cAAc,aAAa,GAAG,cAAc,IACvE,OAAO;AAET,QAAM,GAAG;AAAA,IACP,QAAQ,MAAM;AAAA,IACd;AAAA,MACE,GAAG;AAAA,MACH,eAAe;AAAA,IACjB;AAAA,IACA;AAAA,MACE,QAAQ;AAAA,IACV;AAAA,EACF;AACF;AAEA,eAAe,iBAAiB,SAA6B;AAC3D,SAAO,YAAY,QAAQ,cAAc;AAC3C;AAEA,eAAsB,mBAAmB,SAA6B;AACpE,MAAI,CAAC,QAAQ,eAAe;AAAQ;AAEpC,MAAI;AACF,UAAM,sBAAsB,OAAO;AACnC,UAAM,UAAU,MAAM,QAAQ,QAAQ;AAAA,MACpC,aAAa,CAAC,QAAQ,eAAe,MAAM;AAAA,MAC3C,WAAW;AAAA;AAAA,MAEX,OAAO;AAAA,MAEP,SAAS;AAAA,QACP;AAAA,UACE,MAAM;AAAA,UACN,MAAM,EAAE,MAAM,GAAG;AACf,kBAAM,CAAC,QAAQ;AACb,oCAAsB,OAAO;AAAA,YAC/B,CAAC;AAAA,UACH;AAAA,QACF;AAAA,MACF;AAAA,IACF,CAAC;AAED,UAAM,QAAQ,MAAM;AAAA,EACtB,SAAS,KAAP;AACA,YAAQ;AAAA,MACN,6EAA6E;AAAA,IAC/E;AAAA,EACF;AACF;",
6
6
  "names": []
7
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/cli",
3
- "version": "1.15.0",
3
+ "version": "1.15.2",
4
4
  "source": "src/index.ts",
5
5
  "types": "./types/index.d.ts",
6
6
  "module": "dist/esm",
@@ -36,11 +36,10 @@
36
36
  "@callstack/repack-debugger-app": "^1.0.0",
37
37
  "@fastify/sensible": "^4.1.0",
38
38
  "@fastify/static": "^5.0.2",
39
- "@takeout/studio": "1.5.24",
40
- "@tamagui/build": "1.15.0",
41
- "@tamagui/static": "1.15.0",
42
- "@tamagui/types": "1.15.0",
43
- "@tamagui/vite-plugin": "1.15.0",
39
+ "@tamagui/build": "1.15.2",
40
+ "@tamagui/static": "1.15.2",
41
+ "@tamagui/types": "1.15.2",
42
+ "@tamagui/vite-plugin": "1.15.2",
44
43
  "@types/compression": "^1.7.2",
45
44
  "@types/morgan": "^1.9.3",
46
45
  "@vitejs/plugin-react-swc": "^3.2.0",
@@ -48,7 +47,7 @@
48
47
  "chalk": "^4.1.2",
49
48
  "chokidar": "^3.5.2",
50
49
  "compression": "^1.7.4",
51
- "esbuild": "^0.17.5",
50
+ "esbuild": "^0.17.16",
52
51
  "execa": "^5.0.0",
53
52
  "express": "^4.18.1",
54
53
  "express-http-proxy": "^1.6.3",
@@ -69,24 +69,31 @@ async function getTamaguiConfig(options: CLIResolvedOptions) {
69
69
 
70
70
  export async function watchTamaguiConfig(options: CLIResolvedOptions) {
71
71
  if (!options.tamaguiOptions.config) return
72
- await generateTamaguiConfig(options)
73
- const context = await esbuild.context({
74
- entryPoints: [options.tamaguiOptions.config],
75
- sourcemap: false,
76
- // dont output just use esbuild as a watcher
77
- write: false,
78
72
 
79
- plugins: [
80
- {
81
- name: `on-rebuild`,
82
- setup({ onEnd }) {
83
- onEnd((res) => {
84
- generateTamaguiConfig(options)
85
- })
73
+ try {
74
+ await generateTamaguiConfig(options)
75
+ const context = await esbuild.context({
76
+ entryPoints: [options.tamaguiOptions.config],
77
+ sourcemap: false,
78
+ // dont output just use esbuild as a watcher
79
+ write: false,
80
+
81
+ plugins: [
82
+ {
83
+ name: `on-rebuild`,
84
+ setup({ onEnd }) {
85
+ onEnd((res) => {
86
+ generateTamaguiConfig(options)
87
+ })
88
+ },
86
89
  },
87
- },
88
- ],
89
- })
90
+ ],
91
+ })
90
92
 
91
- await context.watch()
93
+ await context.watch()
94
+ } catch (err) {
95
+ console.warn(
96
+ `Warning watching config error, you may need to restart on config changes: ${err}`
97
+ )
98
+ }
92
99
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tamaguiConfigUtils.d.ts","sourceRoot":"","sources":["../src/tamaguiConfigUtils.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAMnD,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,kBAAkB,iBAsDtE;AAMD,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,iBAsBnE"}
1
+ {"version":3,"file":"tamaguiConfigUtils.d.ts","sourceRoot":"","sources":["../src/tamaguiConfigUtils.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAMnD,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,kBAAkB,iBAsDtE;AAMD,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,iBA6BnE"}