@tamagui/metro-plugin 1.89.25 → 1.89.27-1708112217600

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.
@@ -27,27 +27,89 @@ __export(src_exports, {
27
27
  });
28
28
  module.exports = __toCommonJS(src_exports);
29
29
  var import_static = require("@tamagui/static"), import_metro = require("react-native-css-interop/metro");
30
+ function _array_like_to_array(arr, len) {
31
+ (len == null || len > arr.length) && (len = arr.length);
32
+ for (var i = 0, arr2 = new Array(len); i < len; i++)
33
+ arr2[i] = arr[i];
34
+ return arr2;
35
+ }
36
+ function _array_without_holes(arr) {
37
+ if (Array.isArray(arr))
38
+ return _array_like_to_array(arr);
39
+ }
40
+ function _define_property(obj, key, value) {
41
+ return key in obj ? Object.defineProperty(obj, key, {
42
+ value,
43
+ enumerable: !0,
44
+ configurable: !0,
45
+ writable: !0
46
+ }) : obj[key] = value, obj;
47
+ }
48
+ function _iterable_to_array(iter) {
49
+ if (typeof Symbol < "u" && iter[Symbol.iterator] != null || iter["@@iterator"] != null)
50
+ return Array.from(iter);
51
+ }
52
+ function _non_iterable_spread() {
53
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
54
+ }
55
+ function _object_spread(target) {
56
+ for (var i = 1; i < arguments.length; i++) {
57
+ var source = arguments[i] != null ? arguments[i] : {}, ownKeys2 = Object.keys(source);
58
+ typeof Object.getOwnPropertySymbols == "function" && (ownKeys2 = ownKeys2.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
59
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
60
+ }))), ownKeys2.forEach(function(key) {
61
+ _define_property(target, key, source[key]);
62
+ });
63
+ }
64
+ return target;
65
+ }
66
+ function ownKeys(object, enumerableOnly) {
67
+ var keys = Object.keys(object);
68
+ if (Object.getOwnPropertySymbols) {
69
+ var symbols = Object.getOwnPropertySymbols(object);
70
+ enumerableOnly && (symbols = symbols.filter(function(sym) {
71
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
72
+ })), keys.push.apply(keys, symbols);
73
+ }
74
+ return keys;
75
+ }
76
+ function _object_spread_props(target, source) {
77
+ return source = source ?? {}, Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function(key) {
78
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
79
+ }), target;
80
+ }
81
+ function _to_consumable_array(arr) {
82
+ return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
83
+ }
84
+ function _unsupported_iterable_to_array(o, minLen) {
85
+ if (o) {
86
+ if (typeof o == "string")
87
+ return _array_like_to_array(o, minLen);
88
+ var n = Object.prototype.toString.call(o).slice(8, -1);
89
+ if (n === "Object" && o.constructor && (n = o.constructor.name), n === "Map" || n === "Set")
90
+ return Array.from(n);
91
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))
92
+ return _array_like_to_array(o, minLen);
93
+ }
94
+ }
30
95
  function withTamagui(metroConfig, optionsIn) {
31
- const options = {
32
- ...optionsIn,
33
- ...(0, import_static.loadTamaguiBuildConfigSync)(optionsIn)
34
- }, extractor = (0, import_static.createExtractor)();
35
- options.disable || extractor.loadTamagui(options), options.disableCSSInterop ? metroConfig.resolver = {
36
- ...metroConfig.resolver,
37
- sourceExts: [...metroConfig.resolver.sourceExts, "css"]
38
- } : metroConfig = (0, import_metro.withCssInterop)(metroConfig, {
39
- ignorePropertyWarningRegex: ["^--"]
40
- // grouping: ['^group(/.*)?'],
96
+ var options = _object_spread({}, optionsIn, (0, import_static.loadTamaguiBuildConfigSync)(optionsIn)), extractor = (0, import_static.createExtractor)();
97
+ options.disable || extractor.loadTamagui(options), options.disableCSSInterop ? metroConfig.resolver = _object_spread_props(_object_spread({}, metroConfig.resolver), {
98
+ sourceExts: _to_consumable_array(metroConfig.resolver.sourceExts).concat([
99
+ "css"
100
+ ])
101
+ }) : metroConfig = (0, import_metro.withCssInterop)(metroConfig, {
102
+ ignorePropertyWarningRegex: [
103
+ "^--"
104
+ ]
41
105
  });
42
- const ogTransformPath = metroConfig.transformerPath;
43
- return metroConfig.transformerPath = require.resolve("./transformer"), metroConfig.transformer = {
44
- ...metroConfig.transformer,
106
+ var ogTransformPath = metroConfig.transformerPath;
107
+ return metroConfig.transformerPath = require.resolve("./transformer"), metroConfig.transformer = _object_spread_props(_object_spread({}, metroConfig.transformer), {
45
108
  ogTransformPath,
46
- tamagui: {
47
- ...options,
109
+ tamagui: _object_spread_props(_object_spread({}, options), {
48
110
  disableInitialBuild: !0
49
- }
50
- }, metroConfig;
111
+ })
112
+ }), metroConfig;
51
113
  }
52
114
  // Annotate the CommonJS export names for ESM import in node:
53
115
  0 && (module.exports = {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../src/index.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAIO,4BACP,eAGO;AAEA,SAAS,YACd,aACA,WAGA;AACA,QAAM,UAAU;AAAA,IACd,GAAG;AAAA,IACH,OAAG,0CAA2B,SAAS;AAAA,EACzC,GAGM,gBAAY,+BAAgB;AAGlC,EAAK,QAAQ,WACN,UAAU,YAAY,OAAO,GAG/B,QAAQ,oBAOX,YAAY,WAAW;AAAA,IACrB,GAAG,YAAY;AAAA,IACf,YAAY,CAAC,GAAG,YAAY,SAAS,YAAY,KAAK;AAAA,EACxD,IATA,kBAAc,6BAAe,aAAa;AAAA,IACxC,4BAA4B,CAAC,KAAK;AAAA;AAAA,EAEpC,CAAC;AASH,QAAM,kBAAkB,YAAY;AACpC,qBAAY,kBAAkB,gBAAgB,eAAe,GAC7D,YAAY,cAAc;AAAA,IACxB,GAAG,YAAY;AAAA,IACf;AAAA,IACA,SAAS;AAAA,MACP,GAAG;AAAA,MACH,qBAAqB;AAAA,IACvB;AAAA,EACF,GAEO;AACT;",
5
- "names": []
3
+ "sources": ["../../src/Users/n8/tamagui/packages/metro-plugin/src/index.ts"],
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oBAIO,4BACP,eAGO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,SAASA,YACdC,aACAC,WAEC;AAED,MAAMC,UAAU,eAAA,CAAA,GACXD,eACAE,0CAA2BF,SAAAA,CAAAA,GAI1BG,gBAAYC,+BAAAA;AAGlB,EAAKH,QAAQI,WACNF,UAAUG,YAAYL,OAAAA,GAGxBA,QAAQM,oBAOXR,YAAYS,WAAW,qBAAA,eAAA,CAAA,GAClBT,YAAYS,QAAQ,GAAA;IACvBC,YAAa,qBAAGV,YAAYS,SAASC,UAAU,EAAA,OAAnC;MAAqC;KAAM;OARzDV,kBAAcW,6BAAeX,aAAa;IACxCY,4BAA4B;MAAC;;EAE/B,CAAA;AASF,MAAMC,kBAAkBb,YAAYc;AACpCd,qBAAYc,kBAAkBC,gBAAgB,eAAA,GAC9Cf,YAAYgB,cAAc,qBAAA,eAAA,CAAA,GACrBhB,YAAYgB,WAAW,GAAA;IAC1BH;IACAI,SAAS,qBAAA,eAAA,CAAA,GACJf,OAAAA,GAAAA;MACHgB,qBAAqB;;MAIlBlB;AACT;",
5
+ "names": ["withTamagui", "metroConfig", "optionsIn", "options", "loadTamaguiBuildConfigSync", "extractor", "createExtractor", "disable", "loadTamagui", "disableCSSInterop", "resolver", "sourceExts", "withCssInterop", "ignorePropertyWarningRegex", "ogTransformPath", "transformerPath", "require", "transformer", "tamagui", "disableInitialBuild"]
6
6
  }
@@ -51,7 +51,9 @@ async function transform(config, projectRoot, filename, data, options) {
51
51
  tmpDir,
52
52
  `${filename}`.replace(/[^a-zA-Z0-9]/gi, "") + ".css"
53
53
  );
54
- return process.env.DEBUG?.includes("tamagui") && console.info(" Outputting CSS file:", outStylePath), await (0, import_fs_extra.outputFile)(outStylePath, out.styles, "utf-8"), transformer(
54
+ process.env.DEBUG?.includes("tamagui") && console.info(" Outputting CSS file:", outStylePath);
55
+ const existsAlready = await (0, import_fs_extra.pathExists)(outStylePath);
56
+ return await (0, import_fs_extra.outputFile)(outStylePath, out.styles, "utf-8"), existsAlready || await new Promise((res) => setTimeout(res, 400)), transformer(
55
57
  config,
56
58
  projectRoot,
57
59
  filename,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/transformer.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAA2B,qBAM3B,gCAAmB,4CACnB,cAAqB,iBAGrB,gBAAqD;AAOrD,MAAM,gBAAY,+BAAgB;AAElC,eAAsB,UACpB,QACA,aACA,UACA,MACA,SAC4B;AAC5B,QAAM,SAAS,OAAO,mBAAsB,OAAO,iBAC7C,cAAc,SAAS,QAAQ,MAAM,EAAE,YAAY,8BAAAA,QAAO;AAEhE,MACE,OAAO,QAAQ,WACf,QAAQ,aAAa,SACrB,QAAQ,SAAS,WACjB,SAAS,SAAS,cAAc;AAEhC,WAAO,YAAY,QAAQ,aAAa,UAAU,MAAM,OAAO;AAGjE;AAAA;AAAA,IAEE,SAAS,SAAS,KAAK,KACvB,SAAS,SAAS,MAAM,KACxB,SAAS,SAAS,MAAM;AAAA,IACxB;AACA,UAAM,iBAAa,kBAAK,aAAa,QAAQ,GAGvC,SAAS,GAAG,IAAI,IAChB,MAAM,UAAM,mCAAoB;AAAA,MACpC;AAAA,MACA,SAAS;AAAA;AAAA,QAEP,UAAU;AAAA,QACV,GAAG,OAAO;AAAA,MACZ;AAAA,MACA,kBAAkB,OAAO,WAAW,kBAAkB,IAClD,YACA,OAAO,WAAW,UAAU;AAAA,MAChC;AAAA,MACA;AAAA,IACF,CAAC;AAGD,QAAI,KAAK,QAAQ;AACf,YAAM,aAAS,kBAAK,aAAa,YAAY,KAAK,GAC5C,mBAAe;AAAA,QACnB;AAAA,QACA,GAAG,QAAQ,GAAG,QAAQ,kBAAkB,EAAE,IAAI;AAAA,MAChD;AACA,aAAI,QAAQ,IAAI,OAAO,SAAS,SAAS,KACvC,QAAQ,KAAK,yBAAyB,YAAY,GAEpD,UAAM,4BAAW,cAAc,IAAI,QAAQ,OAAO,GAE3C;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,QACA,OAAO,KAAK,GAAG,IAAI,EAAE;AAAA,WAAc,YAAY,MAAM,OAAO;AAAA,QAC5D;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAEA,SAAO,YAAY,QAAQ,aAAa,UAAU,MAAM,OAAO;AACjE;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAAuC,qBAMvC,gCAAmB,4CACnB,cAAqB,iBAGrB,gBAAqD;AAOrD,MAAM,gBAAY,+BAAgB;AAElC,eAAsB,UACpB,QACA,aACA,UACA,MACA,SAC4B;AAC5B,QAAM,SAAS,OAAO,mBAAsB,OAAO,iBAC7C,cAAc,SAAS,QAAQ,MAAM,EAAE,YAAY,8BAAAA,QAAO;AAEhE,MACE,OAAO,QAAQ,WACf,QAAQ,aAAa,SACrB,QAAQ,SAAS,WACjB,SAAS,SAAS,cAAc;AAEhC,WAAO,YAAY,QAAQ,aAAa,UAAU,MAAM,OAAO;AAGjE;AAAA;AAAA,IAEE,SAAS,SAAS,KAAK,KACvB,SAAS,SAAS,MAAM,KACxB,SAAS,SAAS,MAAM;AAAA,IACxB;AACA,UAAM,iBAAa,kBAAK,aAAa,QAAQ,GAGvC,SAAS,GAAG,IAAI,IAChB,MAAM,UAAM,mCAAoB;AAAA,MACpC;AAAA,MACA,SAAS;AAAA;AAAA,QAEP,UAAU;AAAA,QACV,GAAG,OAAO;AAAA,MACZ;AAAA,MACA,kBAAkB,OAAO,WAAW,kBAAkB,IAClD,YACA,OAAO,WAAW,UAAU;AAAA,MAChC;AAAA,MACA;AAAA,IACF,CAAC;AAGD,QAAI,KAAK,QAAQ;AACf,YAAM,aAAS,kBAAK,aAAa,YAAY,KAAK,GAC5C,mBAAe;AAAA,QACnB;AAAA,QACA,GAAG,QAAQ,GAAG,QAAQ,kBAAkB,EAAE,IAAI;AAAA,MAChD;AACA,MAAI,QAAQ,IAAI,OAAO,SAAS,SAAS,KACvC,QAAQ,KAAK,yBAAyB,YAAY;AAGpD,YAAM,gBAAgB,UAAM,4BAAW,YAAY;AAEnD,uBAAM,4BAAW,cAAc,IAAI,QAAQ,OAAO,GAE7C,iBAEH,MAAM,IAAI,QAAQ,CAAC,QAAQ,WAAW,KAAK,GAAG,CAAC,GAG1C;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,QACA,OAAO,KAAK,GAAG,IAAI,EAAE;AAAA,WAAc,YAAY,MAAM,OAAO;AAAA,QAC5D;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAEA,SAAO,YAAY,QAAQ,aAAa,UAAU,MAAM,OAAO;AACjE;",
5
5
  "names": ["worker"]
6
6
  }
@@ -27,43 +27,211 @@ __export(transformer_exports, {
27
27
  });
28
28
  module.exports = __toCommonJS(transformer_exports);
29
29
  var import_fs_extra = require("fs-extra"), import_metro_transform_worker = __toESM(require("metro-transform-worker")), import_path = require("path"), import_static = require("@tamagui/static");
30
- const extractor = (0, import_static.createExtractor)();
31
- async function transform(config, projectRoot, filename, data, options) {
32
- var _a;
33
- const ogPath = config.ogTransformPath || config.transformerPath, transformer = ogPath ? require(ogPath).transform : import_metro_transform_worker.default.transform;
34
- if (config.tamagui.disable || options.platform !== "web" || options.type === "asset" || filename.includes("node_modules"))
35
- return transformer(config, projectRoot, filename, data, options);
36
- if (
37
- // could by a styled() call:
38
- filename.endsWith(".ts") || filename.endsWith(".tsx") || filename.endsWith(".jsx")
39
- ) {
40
- const sourcePath = (0, import_path.join)(projectRoot, filename), source = `${data}`, out = await (0, import_static.extractToClassNames)({
41
- extractor,
42
- options: {
43
- // @ts-ignore
44
- platform: "web",
45
- ...config.tamagui
46
- },
47
- shouldPrintDebug: source.startsWith("// debug-verbose") ? "verbose" : source.startsWith("// debug"),
48
- source,
49
- sourcePath
30
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
31
+ try {
32
+ var info = gen[key](arg), value = info.value;
33
+ } catch (error) {
34
+ reject(error);
35
+ return;
36
+ }
37
+ info.done ? resolve(value) : Promise.resolve(value).then(_next, _throw);
38
+ }
39
+ function _async_to_generator(fn) {
40
+ return function() {
41
+ var self = this, args = arguments;
42
+ return new Promise(function(resolve, reject) {
43
+ var gen = fn.apply(self, args);
44
+ function _next(value) {
45
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
46
+ }
47
+ function _throw(err) {
48
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
49
+ }
50
+ _next(void 0);
51
+ });
52
+ };
53
+ }
54
+ function _define_property(obj, key, value) {
55
+ return key in obj ? Object.defineProperty(obj, key, {
56
+ value,
57
+ enumerable: !0,
58
+ configurable: !0,
59
+ writable: !0
60
+ }) : obj[key] = value, obj;
61
+ }
62
+ function _object_spread(target) {
63
+ for (var i = 1; i < arguments.length; i++) {
64
+ var source = arguments[i] != null ? arguments[i] : {}, ownKeys = Object.keys(source);
65
+ typeof Object.getOwnPropertySymbols == "function" && (ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
66
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
67
+ }))), ownKeys.forEach(function(key) {
68
+ _define_property(target, key, source[key]);
50
69
  });
51
- if (out != null && out.styles) {
52
- const tmpDir = (0, import_path.join)(projectRoot, ".tamagui", "css"), outStylePath = (0, import_path.join)(
53
- tmpDir,
54
- `${filename}`.replace(/[^a-zA-Z0-9]/gi, "") + ".css"
55
- );
56
- return (_a = process.env.DEBUG) != null && _a.includes("tamagui") && console.info(" Outputting CSS file:", outStylePath), await (0, import_fs_extra.outputFile)(outStylePath, out.styles, "utf-8"), transformer(
57
- config,
58
- projectRoot,
59
- filename,
60
- Buffer.from(`${out.js}
61
- require("${outStylePath}")`, "utf-8"),
62
- options
63
- );
64
- }
65
70
  }
66
- return transformer(config, projectRoot, filename, data, options);
71
+ return target;
72
+ }
73
+ function _ts_generator(thisArg, body) {
74
+ var f, y, t, g, _ = {
75
+ label: 0,
76
+ sent: function() {
77
+ if (t[0] & 1)
78
+ throw t[1];
79
+ return t[1];
80
+ },
81
+ trys: [],
82
+ ops: []
83
+ };
84
+ return g = {
85
+ next: verb(0),
86
+ throw: verb(1),
87
+ return: verb(2)
88
+ }, typeof Symbol == "function" && (g[Symbol.iterator] = function() {
89
+ return this;
90
+ }), g;
91
+ function verb(n) {
92
+ return function(v) {
93
+ return step([
94
+ n,
95
+ v
96
+ ]);
97
+ };
98
+ }
99
+ function step(op) {
100
+ if (f)
101
+ throw new TypeError("Generator is already executing.");
102
+ for (; _; )
103
+ try {
104
+ if (f = 1, y && (t = op[0] & 2 ? y.return : op[0] ? y.throw || ((t = y.return) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done)
105
+ return t;
106
+ switch (y = 0, t && (op = [
107
+ op[0] & 2,
108
+ t.value
109
+ ]), op[0]) {
110
+ case 0:
111
+ case 1:
112
+ t = op;
113
+ break;
114
+ case 4:
115
+ return _.label++, {
116
+ value: op[1],
117
+ done: !1
118
+ };
119
+ case 5:
120
+ _.label++, y = op[1], op = [
121
+ 0
122
+ ];
123
+ continue;
124
+ case 7:
125
+ op = _.ops.pop(), _.trys.pop();
126
+ continue;
127
+ default:
128
+ if (t = _.trys, !(t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
129
+ _ = 0;
130
+ continue;
131
+ }
132
+ if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
133
+ _.label = op[1];
134
+ break;
135
+ }
136
+ if (op[0] === 6 && _.label < t[1]) {
137
+ _.label = t[1], t = op;
138
+ break;
139
+ }
140
+ if (t && _.label < t[2]) {
141
+ _.label = t[2], _.ops.push(op);
142
+ break;
143
+ }
144
+ t[2] && _.ops.pop(), _.trys.pop();
145
+ continue;
146
+ }
147
+ op = body.call(thisArg, _);
148
+ } catch (e) {
149
+ op = [
150
+ 6,
151
+ e
152
+ ], y = 0;
153
+ } finally {
154
+ f = t = 0;
155
+ }
156
+ if (op[0] & 5)
157
+ throw op[1];
158
+ return {
159
+ value: op[0] ? op[1] : void 0,
160
+ done: !0
161
+ };
162
+ }
163
+ }
164
+ var extractor = (0, import_static.createExtractor)();
165
+ function transform(config, projectRoot, filename, data, options) {
166
+ return _transform.apply(this, arguments);
167
+ }
168
+ function _transform() {
169
+ return _transform = _async_to_generator(function(config, projectRoot, filename, data, options) {
170
+ var ogPath, transformer, sourcePath, source, out, _process_env_DEBUG, tmpDir, outStylePath, existsAlready;
171
+ return _ts_generator(this, function(_state) {
172
+ switch (_state.label) {
173
+ case 0:
174
+ return ogPath = config.ogTransformPath || config.transformerPath, transformer = ogPath ? require(ogPath).transform : import_metro_transform_worker.default.transform, config.tamagui.disable || options.platform !== "web" || options.type === "asset" || filename.includes("node_modules") ? [
175
+ 2,
176
+ transformer(config, projectRoot, filename, data, options)
177
+ ] : (
178
+ // could by a styled() call:
179
+ filename.endsWith(".ts") || filename.endsWith(".tsx") || filename.endsWith(".jsx") ? (sourcePath = (0, import_path.join)(projectRoot, filename), source = "".concat(data), [
180
+ 4,
181
+ (0, import_static.extractToClassNames)({
182
+ extractor,
183
+ options: _object_spread({
184
+ // @ts-ignore
185
+ platform: "web"
186
+ }, config.tamagui),
187
+ shouldPrintDebug: source.startsWith("// debug-verbose") ? "verbose" : source.startsWith("// debug"),
188
+ source,
189
+ sourcePath
190
+ })
191
+ ]) : [
192
+ 3,
193
+ 6
194
+ ]
195
+ );
196
+ case 1:
197
+ return out = _state.sent(), out != null && out.styles ? (tmpDir = (0, import_path.join)(projectRoot, ".tamagui", "css"), outStylePath = (0, import_path.join)(tmpDir, "".concat(filename).replace(/[^a-zA-Z0-9]/gi, "") + ".css"), !((_process_env_DEBUG = process.env.DEBUG) === null || _process_env_DEBUG === void 0) && _process_env_DEBUG.includes("tamagui") && console.info(" Outputting CSS file:", outStylePath), [
198
+ 4,
199
+ (0, import_fs_extra.pathExists)(outStylePath)
200
+ ]) : [
201
+ 3,
202
+ 6
203
+ ];
204
+ case 2:
205
+ return existsAlready = _state.sent(), [
206
+ 4,
207
+ (0, import_fs_extra.outputFile)(outStylePath, out.styles, "utf-8")
208
+ ];
209
+ case 3:
210
+ return _state.sent(), existsAlready ? [
211
+ 3,
212
+ 5
213
+ ] : [
214
+ 4,
215
+ new Promise(function(res) {
216
+ return setTimeout(res, 400);
217
+ })
218
+ ];
219
+ case 4:
220
+ _state.sent(), _state.label = 5;
221
+ case 5:
222
+ return [
223
+ 2,
224
+ transformer(config, projectRoot, filename, Buffer.from("".concat(out.js, `
225
+ require("`).concat(outStylePath, '")'), "utf-8"), options)
226
+ ];
227
+ case 6:
228
+ return [
229
+ 2,
230
+ transformer(config, projectRoot, filename, data, options)
231
+ ];
232
+ }
233
+ });
234
+ }), _transform.apply(this, arguments);
67
235
  }
68
236
  // Annotate the CommonJS export names for ESM import in node:
69
237
  0 && (module.exports = {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../src/transformer.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAA2B,qBAM3B,gCAAmB,4CACnB,cAAqB,iBAGrB,gBAAqD;AAOrD,MAAM,gBAAY,+BAAgB;AAElC,eAAsB,UACpB,QACA,aACA,UACA,MACA,SAC4B;AAzB9B;AA0BE,QAAM,SAAS,OAAO,mBAAsB,OAAO,iBAC7C,cAAc,SAAS,QAAQ,MAAM,EAAE,YAAY,8BAAAA,QAAO;AAEhE,MACE,OAAO,QAAQ,WACf,QAAQ,aAAa,SACrB,QAAQ,SAAS,WACjB,SAAS,SAAS,cAAc;AAEhC,WAAO,YAAY,QAAQ,aAAa,UAAU,MAAM,OAAO;AAGjE;AAAA;AAAA,IAEE,SAAS,SAAS,KAAK,KACvB,SAAS,SAAS,MAAM,KACxB,SAAS,SAAS,MAAM;AAAA,IACxB;AACA,UAAM,iBAAa,kBAAK,aAAa,QAAQ,GAGvC,SAAS,GAAG,IAAI,IAChB,MAAM,UAAM,mCAAoB;AAAA,MACpC;AAAA,MACA,SAAS;AAAA;AAAA,QAEP,UAAU;AAAA,QACV,GAAG,OAAO;AAAA,MACZ;AAAA,MACA,kBAAkB,OAAO,WAAW,kBAAkB,IAClD,YACA,OAAO,WAAW,UAAU;AAAA,MAChC;AAAA,MACA;AAAA,IACF,CAAC;AAGD,QAAI,mBAAK,QAAQ;AACf,YAAM,aAAS,kBAAK,aAAa,YAAY,KAAK,GAC5C,mBAAe;AAAA,QACnB;AAAA,QACA,GAAG,QAAQ,GAAG,QAAQ,kBAAkB,EAAE,IAAI;AAAA,MAChD;AACA,cAAI,aAAQ,IAAI,UAAZ,WAAmB,SAAS,cAC9B,QAAQ,KAAK,yBAAyB,YAAY,GAEpD,UAAM,4BAAW,cAAc,IAAI,QAAQ,OAAO,GAE3C;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,QACA,OAAO,KAAK,GAAG,IAAI,EAAE;AAAA,WAAc,YAAY,MAAM,OAAO;AAAA,QAC5D;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAEA,SAAO,YAAY,QAAQ,aAAa,UAAU,MAAM,OAAO;AACjE;",
5
- "names": ["worker"]
3
+ "sources": ["../../src/Users/n8/tamagui/packages/metro-plugin/src/transformer.ts"],
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sBAAuC,qBAMvC,gCAAmB,4CACnB,cAAqB,iBAGrB,gBAAqD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOrD,IAAMA,gBAAYC,+BAAAA;AAElB,SAAsBC,UACpBC,QACAC,aACAC,UACAC,MACAC,SAA2B;SALPL,WAAAA,MAAAA,MAAAA,SAAAA;;SAAAA,aAAAA;AAAAA,sBAAf,oBAAA,SACLC,QACAC,aACAC,UACAC,MACAC,SAA2B;QAErBC,QACAC,aAiBEC,YAGAC,QACAC,KAqBAC,oBALEC,QACAC,cAQAC;;;;AA5CV,iBAHMR,SAASL,OAAO,mBAAsBA,OAAOc,iBAC7CR,cAAcD,SAASU,QAAQV,MAAAA,EAAQN,YAAYiB,8BAAAA,QAAOjB,WAG9DC,OAAOiB,QAAQC,WACfd,QAAQe,aAAa,SACrBf,QAAQgB,SAAS,WACjBlB,SAASmB,SAAS,cAAA,IAElB;;YAAOf,YAAYN,QAAQC,aAAaC,UAAUC,MAAMC,OAAAA;;;YAKxDF,SAASoB,SAAS,KAAA,KAClBpB,SAASoB,SAAS,MAAA,KAClBpB,SAASoB,SAAS,MAAA,KAEZf,iBAAagB,kBAAKtB,aAAaC,QAAAA,GAG/BM,SAAU,GAAO,OAALL,IAAAA,GACN;;kBAAMqB,mCAAoB;gBACpC3B;gBACAO,SAAS,eAAA;;kBAEPe,UAAU;mBACPnB,OAAOiB,OAAO;gBAEnBQ,kBAAkBjB,OAAOkB,WAAW,kBAAA,IAChC,YACAlB,OAAOkB,WAAW,UAAA;gBACtBlB;gBACAD;cACF,CAAA;iBApBAL;;;;;;iBAQMO,MAAM,OAAA,KAAA,GAeRA,OAAAA,QAAAA,IAAKkB,UACDhB,aAASY,kBAAKtB,aAAa,YAAY,KAAA,GACvCW,mBAAeW,kBACnBZ,QACC,GAAW,OAATT,QAAAA,EAAW0B,QAAQ,kBAAkB,EAAA,IAAM,MAAA,GAE5ClB,wBAAAA,QAAQmB,IAAIC,WAAK,QAAjBpB,uBAAAA,WAAAA,mBAAmBW,SAAS,SAAA,KAC9BU,QAAQC,KAAK,yBAAyBpB,YAAAA,GAGlB;;gBAAMqB,4BAAWrB,YAAAA;eAV1B;;;;;AAUPC,iCAAgB,OAAA,KAAA,GAEtB;;gBAAMqB,4BAAWtB,cAAcH,IAAIkB,QAAQ,OAAA;;;iBAA3C,OAAA,KAAA,GAEKd,gBAAD;;;cAEF;;YAAM,IAAIsB,QAAQ,SAACC,KAAAA;qBAAQC,WAAWD,KAAK,GAAA;;;;AAA3C,iBAAA,KAAA;;AAGF,iBAAA;;YAAO9B,YACLN,QACAC,aACAC,UACAoC,OAAOC,KAAM,GAAsB3B,OAApBH,IAAI+B,IAAG;UAAA,EAA0B,OAAb5B,cAAa,IAAA,GAAK,OAAA,GACrDR,OAAAA;;;AAKN,iBAAA;;YAAOE,YAAYN,QAAQC,aAAaC,UAAUC,MAAMC,OAAAA;;;;EAC1D,CAAA,GA1EsBL,WAAAA,MAAAA,MAAAA,SAAAA;;",
5
+ "names": ["extractor", "createExtractor", "transform", "config", "projectRoot", "filename", "data", "options", "ogPath", "transformer", "sourcePath", "source", "out", "process", "tmpDir", "outStylePath", "existsAlready", "transformerPath", "require", "worker", "tamagui", "disable", "platform", "type", "includes", "endsWith", "join", "extractToClassNames", "shouldPrintDebug", "startsWith", "styles", "replace", "env", "DEBUG", "console", "info", "pathExists", "outputFile", "Promise", "res", "setTimeout", "Buffer", "from", "js"]
6
6
  }
@@ -13,7 +13,6 @@ function withTamagui(metroConfig, optionsIn) {
13
13
  ignorePropertyWarningRegex: ["^--"]
14
14
  // grouping: ['^group(/.*)?'],
15
15
  });
16
-
17
16
  const ogTransformPath = metroConfig.transformerPath;
18
17
  return metroConfig.transformerPath = require.resolve("./transformer"), metroConfig.transformer = {
19
18
  ...metroConfig.transformer,
@@ -1,31 +1,88 @@
1
- import {
2
- createExtractor,
3
- loadTamaguiBuildConfigSync
4
- } from "@tamagui/static";
5
- import {
6
- withCssInterop
7
- } from "react-native-css-interop/metro";
1
+ import { createExtractor, loadTamaguiBuildConfigSync } from "@tamagui/static";
2
+ import { withCssInterop } from "react-native-css-interop/metro";
3
+ function _array_like_to_array(arr, len) {
4
+ (len == null || len > arr.length) && (len = arr.length);
5
+ for (var i = 0, arr2 = new Array(len); i < len; i++)
6
+ arr2[i] = arr[i];
7
+ return arr2;
8
+ }
9
+ function _array_without_holes(arr) {
10
+ if (Array.isArray(arr))
11
+ return _array_like_to_array(arr);
12
+ }
13
+ function _define_property(obj, key, value) {
14
+ return key in obj ? Object.defineProperty(obj, key, {
15
+ value,
16
+ enumerable: !0,
17
+ configurable: !0,
18
+ writable: !0
19
+ }) : obj[key] = value, obj;
20
+ }
21
+ function _iterable_to_array(iter) {
22
+ if (typeof Symbol < "u" && iter[Symbol.iterator] != null || iter["@@iterator"] != null)
23
+ return Array.from(iter);
24
+ }
25
+ function _non_iterable_spread() {
26
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
27
+ }
28
+ function _object_spread(target) {
29
+ for (var i = 1; i < arguments.length; i++) {
30
+ var source = arguments[i] != null ? arguments[i] : {}, ownKeys2 = Object.keys(source);
31
+ typeof Object.getOwnPropertySymbols == "function" && (ownKeys2 = ownKeys2.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
32
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
33
+ }))), ownKeys2.forEach(function(key) {
34
+ _define_property(target, key, source[key]);
35
+ });
36
+ }
37
+ return target;
38
+ }
39
+ function ownKeys(object, enumerableOnly) {
40
+ var keys = Object.keys(object);
41
+ if (Object.getOwnPropertySymbols) {
42
+ var symbols = Object.getOwnPropertySymbols(object);
43
+ enumerableOnly && (symbols = symbols.filter(function(sym) {
44
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
45
+ })), keys.push.apply(keys, symbols);
46
+ }
47
+ return keys;
48
+ }
49
+ function _object_spread_props(target, source) {
50
+ return source = source ?? {}, Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function(key) {
51
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
52
+ }), target;
53
+ }
54
+ function _to_consumable_array(arr) {
55
+ return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
56
+ }
57
+ function _unsupported_iterable_to_array(o, minLen) {
58
+ if (o) {
59
+ if (typeof o == "string")
60
+ return _array_like_to_array(o, minLen);
61
+ var n = Object.prototype.toString.call(o).slice(8, -1);
62
+ if (n === "Object" && o.constructor && (n = o.constructor.name), n === "Map" || n === "Set")
63
+ return Array.from(n);
64
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))
65
+ return _array_like_to_array(o, minLen);
66
+ }
67
+ }
8
68
  function withTamagui(metroConfig, optionsIn) {
9
- const options = {
10
- ...optionsIn,
11
- ...loadTamaguiBuildConfigSync(optionsIn)
12
- }, extractor = createExtractor();
13
- options.disable || extractor.loadTamagui(options), options.disableCSSInterop ? metroConfig.resolver = {
14
- ...metroConfig.resolver,
15
- sourceExts: [...metroConfig.resolver.sourceExts, "css"]
16
- } : metroConfig = withCssInterop(metroConfig, {
17
- ignorePropertyWarningRegex: ["^--"]
18
- // grouping: ['^group(/.*)?'],
69
+ var options = _object_spread({}, optionsIn, loadTamaguiBuildConfigSync(optionsIn)), extractor = createExtractor();
70
+ options.disable || extractor.loadTamagui(options), options.disableCSSInterop ? metroConfig.resolver = _object_spread_props(_object_spread({}, metroConfig.resolver), {
71
+ sourceExts: _to_consumable_array(metroConfig.resolver.sourceExts).concat([
72
+ "css"
73
+ ])
74
+ }) : metroConfig = withCssInterop(metroConfig, {
75
+ ignorePropertyWarningRegex: [
76
+ "^--"
77
+ ]
19
78
  });
20
- const ogTransformPath = metroConfig.transformerPath;
21
- return metroConfig.transformerPath = require.resolve("./transformer"), metroConfig.transformer = {
22
- ...metroConfig.transformer,
79
+ var ogTransformPath = metroConfig.transformerPath;
80
+ return metroConfig.transformerPath = require.resolve("./transformer"), metroConfig.transformer = _object_spread_props(_object_spread({}, metroConfig.transformer), {
23
81
  ogTransformPath,
24
- tamagui: {
25
- ...options,
82
+ tamagui: _object_spread_props(_object_spread({}, options), {
26
83
  disableInitialBuild: !0
27
- }
28
- }, metroConfig;
84
+ })
85
+ }), metroConfig;
29
86
  }
30
87
  export {
31
88
  withTamagui
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../src/index.ts"],
4
- "mappings": "AAAA;AAAA,EACE;AAAA,EACA;AAAA,OAEK;AACP;AAAA,EACE;AAAA,OAEK;AAEA,SAAS,YACd,aACA,WAGA;AACA,QAAM,UAAU;AAAA,IACd,GAAG;AAAA,IACH,GAAG,2BAA2B,SAAS;AAAA,EACzC,GAGM,YAAY,gBAAgB;AAGlC,EAAK,QAAQ,WACN,UAAU,YAAY,OAAO,GAG/B,QAAQ,oBAOX,YAAY,WAAW;AAAA,IACrB,GAAG,YAAY;AAAA,IACf,YAAY,CAAC,GAAG,YAAY,SAAS,YAAY,KAAK;AAAA,EACxD,IATA,cAAc,eAAe,aAAa;AAAA,IACxC,4BAA4B,CAAC,KAAK;AAAA;AAAA,EAEpC,CAAC;AASH,QAAM,kBAAkB,YAAY;AACpC,qBAAY,kBAAkB,gBAAgB,eAAe,GAC7D,YAAY,cAAc;AAAA,IACxB,GAAG,YAAY;AAAA,IACf;AAAA,IACA,SAAS;AAAA,MACP,GAAG;AAAA,MACH,qBAAqB;AAAA,IACvB;AAAA,EACF,GAEO;AACT;",
5
- "names": []
3
+ "sources": ["../../src/Users/n8/tamagui/packages/metro-plugin/src/index.ts"],
4
+ "mappings": "AAAA,SACEA,iBACAC,kCAEK;AACP,SACEC,sBAEK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,SAASC,YACdC,aACAC,WAEC;AAED,MAAMC,UAAU,eAAA,CAAA,GACXD,WACAJ,2BAA2BI,SAAAA,CAAAA,GAI1BE,YAAYP,gBAAAA;AAGlB,EAAKM,QAAQE,WACND,UAAUE,YAAYH,OAAAA,GAGxBA,QAAQI,oBAOXN,YAAYO,WAAW,qBAAA,eAAA,CAAA,GAClBP,YAAYO,QAAQ,GAAA;IACvBC,YAAa,qBAAGR,YAAYO,SAASC,UAAU,EAAA,OAAnC;MAAqC;KAAM;OARzDR,cAAcF,eAAeE,aAAa;IACxCS,4BAA4B;MAAC;;EAE/B,CAAA;AASF,MAAMC,kBAAkBV,YAAYW;AACpCX,qBAAYW,kBAAkBC,gBAAgB,eAAA,GAC9CZ,YAAYa,cAAc,qBAAA,eAAA,CAAA,GACrBb,YAAYa,WAAW,GAAA;IAC1BH;IACAI,SAAS,qBAAA,eAAA,CAAA,GACJZ,OAAAA,GAAAA;MACHa,qBAAqB;;MAIlBf;AACT;",
5
+ "names": ["createExtractor", "loadTamaguiBuildConfigSync", "withCssInterop", "withTamagui", "metroConfig", "optionsIn", "options", "extractor", "disable", "loadTamagui", "disableCSSInterop", "resolver", "sourceExts", "ignorePropertyWarningRegex", "ogTransformPath", "transformerPath", "require", "transformer", "tamagui", "disableInitialBuild"]
6
6
  }
@@ -1,4 +1,4 @@
1
- import { outputFile } from "fs-extra";
1
+ import { outputFile, pathExists } from "fs-extra";
2
2
  import worker from "metro-transform-worker";
3
3
  import { join } from "path";
4
4
  import { createExtractor, extractToClassNames } from "@tamagui/static";
@@ -27,7 +27,9 @@ async function transform(config, projectRoot, filename, data, options) {
27
27
  tmpDir,
28
28
  `${filename}`.replace(/[^a-zA-Z0-9]/gi, "") + ".css"
29
29
  );
30
- return process.env.DEBUG?.includes("tamagui") && console.info(" Outputting CSS file:", outStylePath), await outputFile(outStylePath, out.styles, "utf-8"), transformer(
30
+ process.env.DEBUG?.includes("tamagui") && console.info(" Outputting CSS file:", outStylePath);
31
+ const existsAlready = await pathExists(outStylePath);
32
+ return await outputFile(outStylePath, out.styles, "utf-8"), existsAlready || await new Promise((res) => setTimeout(res, 400)), transformer(
31
33
  config,
32
34
  projectRoot,
33
35
  filename,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/transformer.ts"],
4
- "mappings": "AAAA,SAAS,kBAAkB;AAM3B,OAAO,YAAY;AACnB,SAAS,YAAY;AAGrB,SAAS,iBAAiB,2BAA2B;AAOrD,MAAM,YAAY,gBAAgB;AAElC,eAAsB,UACpB,QACA,aACA,UACA,MACA,SAC4B;AAC5B,QAAM,SAAS,OAAO,mBAAsB,OAAO,iBAC7C,cAAc,SAAS,QAAQ,MAAM,EAAE,YAAY,OAAO;AAEhE,MACE,OAAO,QAAQ,WACf,QAAQ,aAAa,SACrB,QAAQ,SAAS,WACjB,SAAS,SAAS,cAAc;AAEhC,WAAO,YAAY,QAAQ,aAAa,UAAU,MAAM,OAAO;AAGjE;AAAA;AAAA,IAEE,SAAS,SAAS,KAAK,KACvB,SAAS,SAAS,MAAM,KACxB,SAAS,SAAS,MAAM;AAAA,IACxB;AACA,UAAM,aAAa,KAAK,aAAa,QAAQ,GAGvC,SAAS,GAAG,IAAI,IAChB,MAAM,MAAM,oBAAoB;AAAA,MACpC;AAAA,MACA,SAAS;AAAA;AAAA,QAEP,UAAU;AAAA,QACV,GAAG,OAAO;AAAA,MACZ;AAAA,MACA,kBAAkB,OAAO,WAAW,kBAAkB,IAClD,YACA,OAAO,WAAW,UAAU;AAAA,MAChC;AAAA,MACA;AAAA,IACF,CAAC;AAGD,QAAI,KAAK,QAAQ;AACf,YAAM,SAAS,KAAK,aAAa,YAAY,KAAK,GAC5C,eAAe;AAAA,QACnB;AAAA,QACA,GAAG,QAAQ,GAAG,QAAQ,kBAAkB,EAAE,IAAI;AAAA,MAChD;AACA,aAAI,QAAQ,IAAI,OAAO,SAAS,SAAS,KACvC,QAAQ,KAAK,yBAAyB,YAAY,GAEpD,MAAM,WAAW,cAAc,IAAI,QAAQ,OAAO,GAE3C;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,QACA,OAAO,KAAK,GAAG,IAAI,EAAE;AAAA,WAAc,YAAY,MAAM,OAAO;AAAA,QAC5D;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAEA,SAAO,YAAY,QAAQ,aAAa,UAAU,MAAM,OAAO;AACjE;",
4
+ "mappings": "AAAA,SAAS,YAAY,kBAAkB;AAMvC,OAAO,YAAY;AACnB,SAAS,YAAY;AAGrB,SAAS,iBAAiB,2BAA2B;AAOrD,MAAM,YAAY,gBAAgB;AAElC,eAAsB,UACpB,QACA,aACA,UACA,MACA,SAC4B;AAC5B,QAAM,SAAS,OAAO,mBAAsB,OAAO,iBAC7C,cAAc,SAAS,QAAQ,MAAM,EAAE,YAAY,OAAO;AAEhE,MACE,OAAO,QAAQ,WACf,QAAQ,aAAa,SACrB,QAAQ,SAAS,WACjB,SAAS,SAAS,cAAc;AAEhC,WAAO,YAAY,QAAQ,aAAa,UAAU,MAAM,OAAO;AAGjE;AAAA;AAAA,IAEE,SAAS,SAAS,KAAK,KACvB,SAAS,SAAS,MAAM,KACxB,SAAS,SAAS,MAAM;AAAA,IACxB;AACA,UAAM,aAAa,KAAK,aAAa,QAAQ,GAGvC,SAAS,GAAG,IAAI,IAChB,MAAM,MAAM,oBAAoB;AAAA,MACpC;AAAA,MACA,SAAS;AAAA;AAAA,QAEP,UAAU;AAAA,QACV,GAAG,OAAO;AAAA,MACZ;AAAA,MACA,kBAAkB,OAAO,WAAW,kBAAkB,IAClD,YACA,OAAO,WAAW,UAAU;AAAA,MAChC;AAAA,MACA;AAAA,IACF,CAAC;AAGD,QAAI,KAAK,QAAQ;AACf,YAAM,SAAS,KAAK,aAAa,YAAY,KAAK,GAC5C,eAAe;AAAA,QACnB;AAAA,QACA,GAAG,QAAQ,GAAG,QAAQ,kBAAkB,EAAE,IAAI;AAAA,MAChD;AACA,MAAI,QAAQ,IAAI,OAAO,SAAS,SAAS,KACvC,QAAQ,KAAK,yBAAyB,YAAY;AAGpD,YAAM,gBAAgB,MAAM,WAAW,YAAY;AAEnD,mBAAM,WAAW,cAAc,IAAI,QAAQ,OAAO,GAE7C,iBAEH,MAAM,IAAI,QAAQ,CAAC,QAAQ,WAAW,KAAK,GAAG,CAAC,GAG1C;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,QACA,OAAO,KAAK,GAAG,IAAI,EAAE;AAAA,WAAc,YAAY,MAAM,OAAO;AAAA,QAC5D;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAEA,SAAO,YAAY,QAAQ,aAAa,UAAU,MAAM,OAAO;AACjE;",
5
5
  "names": []
6
6
  }
@@ -1,4 +1,4 @@
1
- import { outputFile } from "fs-extra";
1
+ import { outputFile, pathExists } from "fs-extra";
2
2
  import worker from "metro-transform-worker";
3
3
  import { join } from "path";
4
4
  import { createExtractor, extractToClassNames } from "@tamagui/static";
@@ -26,7 +26,9 @@ async function transform(config, projectRoot, filename, data, options) {
26
26
  if (out?.styles) {
27
27
  const tmpDir = join(projectRoot, ".tamagui", "css"),
28
28
  outStylePath = join(tmpDir, `${filename}`.replace(/[^a-zA-Z0-9]/gi, "") + ".css");
29
- return process.env.DEBUG?.includes("tamagui") && console.info(" Outputting CSS file:", outStylePath), await outputFile(outStylePath, out.styles, "utf-8"), transformer(config, projectRoot, filename, Buffer.from(`${out.js}
29
+ process.env.DEBUG?.includes("tamagui") && console.info(" Outputting CSS file:", outStylePath);
30
+ const existsAlready = await pathExists(outStylePath);
31
+ return await outputFile(outStylePath, out.styles, "utf-8"), existsAlready || (await new Promise(res => setTimeout(res, 400))), transformer(config, projectRoot, filename, Buffer.from(`${out.js}
30
32
  require("${outStylePath}")`, "utf-8"), options);
31
33
  }
32
34
  }
@@ -1,44 +1,212 @@
1
- import { outputFile } from "fs-extra";
1
+ import { outputFile, pathExists } from "fs-extra";
2
2
  import worker from "metro-transform-worker";
3
3
  import { join } from "path";
4
4
  import { createExtractor, extractToClassNames } from "@tamagui/static";
5
- const extractor = createExtractor();
6
- async function transform(config, projectRoot, filename, data, options) {
7
- var _a;
8
- const ogPath = config.ogTransformPath || config.transformerPath, transformer = ogPath ? require(ogPath).transform : worker.transform;
9
- if (config.tamagui.disable || options.platform !== "web" || options.type === "asset" || filename.includes("node_modules"))
10
- return transformer(config, projectRoot, filename, data, options);
11
- if (
12
- // could by a styled() call:
13
- filename.endsWith(".ts") || filename.endsWith(".tsx") || filename.endsWith(".jsx")
14
- ) {
15
- const sourcePath = join(projectRoot, filename), source = `${data}`, out = await extractToClassNames({
16
- extractor,
17
- options: {
18
- // @ts-ignore
19
- platform: "web",
20
- ...config.tamagui
21
- },
22
- shouldPrintDebug: source.startsWith("// debug-verbose") ? "verbose" : source.startsWith("// debug"),
23
- source,
24
- sourcePath
5
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
6
+ try {
7
+ var info = gen[key](arg), value = info.value;
8
+ } catch (error) {
9
+ reject(error);
10
+ return;
11
+ }
12
+ info.done ? resolve(value) : Promise.resolve(value).then(_next, _throw);
13
+ }
14
+ function _async_to_generator(fn) {
15
+ return function() {
16
+ var self = this, args = arguments;
17
+ return new Promise(function(resolve, reject) {
18
+ var gen = fn.apply(self, args);
19
+ function _next(value) {
20
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
21
+ }
22
+ function _throw(err) {
23
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
24
+ }
25
+ _next(void 0);
26
+ });
27
+ };
28
+ }
29
+ function _define_property(obj, key, value) {
30
+ return key in obj ? Object.defineProperty(obj, key, {
31
+ value,
32
+ enumerable: !0,
33
+ configurable: !0,
34
+ writable: !0
35
+ }) : obj[key] = value, obj;
36
+ }
37
+ function _object_spread(target) {
38
+ for (var i = 1; i < arguments.length; i++) {
39
+ var source = arguments[i] != null ? arguments[i] : {}, ownKeys = Object.keys(source);
40
+ typeof Object.getOwnPropertySymbols == "function" && (ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
41
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
42
+ }))), ownKeys.forEach(function(key) {
43
+ _define_property(target, key, source[key]);
25
44
  });
26
- if (out != null && out.styles) {
27
- const tmpDir = join(projectRoot, ".tamagui", "css"), outStylePath = join(
28
- tmpDir,
29
- `${filename}`.replace(/[^a-zA-Z0-9]/gi, "") + ".css"
30
- );
31
- return (_a = process.env.DEBUG) != null && _a.includes("tamagui") && console.info(" Outputting CSS file:", outStylePath), await outputFile(outStylePath, out.styles, "utf-8"), transformer(
32
- config,
33
- projectRoot,
34
- filename,
35
- Buffer.from(`${out.js}
36
- require("${outStylePath}")`, "utf-8"),
37
- options
38
- );
39
- }
40
45
  }
41
- return transformer(config, projectRoot, filename, data, options);
46
+ return target;
47
+ }
48
+ function _ts_generator(thisArg, body) {
49
+ var f, y, t, g, _ = {
50
+ label: 0,
51
+ sent: function() {
52
+ if (t[0] & 1)
53
+ throw t[1];
54
+ return t[1];
55
+ },
56
+ trys: [],
57
+ ops: []
58
+ };
59
+ return g = {
60
+ next: verb(0),
61
+ throw: verb(1),
62
+ return: verb(2)
63
+ }, typeof Symbol == "function" && (g[Symbol.iterator] = function() {
64
+ return this;
65
+ }), g;
66
+ function verb(n) {
67
+ return function(v) {
68
+ return step([
69
+ n,
70
+ v
71
+ ]);
72
+ };
73
+ }
74
+ function step(op) {
75
+ if (f)
76
+ throw new TypeError("Generator is already executing.");
77
+ for (; _; )
78
+ try {
79
+ if (f = 1, y && (t = op[0] & 2 ? y.return : op[0] ? y.throw || ((t = y.return) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done)
80
+ return t;
81
+ switch (y = 0, t && (op = [
82
+ op[0] & 2,
83
+ t.value
84
+ ]), op[0]) {
85
+ case 0:
86
+ case 1:
87
+ t = op;
88
+ break;
89
+ case 4:
90
+ return _.label++, {
91
+ value: op[1],
92
+ done: !1
93
+ };
94
+ case 5:
95
+ _.label++, y = op[1], op = [
96
+ 0
97
+ ];
98
+ continue;
99
+ case 7:
100
+ op = _.ops.pop(), _.trys.pop();
101
+ continue;
102
+ default:
103
+ if (t = _.trys, !(t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
104
+ _ = 0;
105
+ continue;
106
+ }
107
+ if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
108
+ _.label = op[1];
109
+ break;
110
+ }
111
+ if (op[0] === 6 && _.label < t[1]) {
112
+ _.label = t[1], t = op;
113
+ break;
114
+ }
115
+ if (t && _.label < t[2]) {
116
+ _.label = t[2], _.ops.push(op);
117
+ break;
118
+ }
119
+ t[2] && _.ops.pop(), _.trys.pop();
120
+ continue;
121
+ }
122
+ op = body.call(thisArg, _);
123
+ } catch (e) {
124
+ op = [
125
+ 6,
126
+ e
127
+ ], y = 0;
128
+ } finally {
129
+ f = t = 0;
130
+ }
131
+ if (op[0] & 5)
132
+ throw op[1];
133
+ return {
134
+ value: op[0] ? op[1] : void 0,
135
+ done: !0
136
+ };
137
+ }
138
+ }
139
+ var extractor = createExtractor();
140
+ function transform(config, projectRoot, filename, data, options) {
141
+ return _transform.apply(this, arguments);
142
+ }
143
+ function _transform() {
144
+ return _transform = _async_to_generator(function(config, projectRoot, filename, data, options) {
145
+ var ogPath, transformer, sourcePath, source, out, _process_env_DEBUG, tmpDir, outStylePath, existsAlready;
146
+ return _ts_generator(this, function(_state) {
147
+ switch (_state.label) {
148
+ case 0:
149
+ return ogPath = config.ogTransformPath || config.transformerPath, transformer = ogPath ? require(ogPath).transform : worker.transform, config.tamagui.disable || options.platform !== "web" || options.type === "asset" || filename.includes("node_modules") ? [
150
+ 2,
151
+ transformer(config, projectRoot, filename, data, options)
152
+ ] : (
153
+ // could by a styled() call:
154
+ filename.endsWith(".ts") || filename.endsWith(".tsx") || filename.endsWith(".jsx") ? (sourcePath = join(projectRoot, filename), source = "".concat(data), [
155
+ 4,
156
+ extractToClassNames({
157
+ extractor,
158
+ options: _object_spread({
159
+ // @ts-ignore
160
+ platform: "web"
161
+ }, config.tamagui),
162
+ shouldPrintDebug: source.startsWith("// debug-verbose") ? "verbose" : source.startsWith("// debug"),
163
+ source,
164
+ sourcePath
165
+ })
166
+ ]) : [
167
+ 3,
168
+ 6
169
+ ]
170
+ );
171
+ case 1:
172
+ return out = _state.sent(), out != null && out.styles ? (tmpDir = join(projectRoot, ".tamagui", "css"), outStylePath = join(tmpDir, "".concat(filename).replace(/[^a-zA-Z0-9]/gi, "") + ".css"), !((_process_env_DEBUG = process.env.DEBUG) === null || _process_env_DEBUG === void 0) && _process_env_DEBUG.includes("tamagui") && console.info(" Outputting CSS file:", outStylePath), [
173
+ 4,
174
+ pathExists(outStylePath)
175
+ ]) : [
176
+ 3,
177
+ 6
178
+ ];
179
+ case 2:
180
+ return existsAlready = _state.sent(), [
181
+ 4,
182
+ outputFile(outStylePath, out.styles, "utf-8")
183
+ ];
184
+ case 3:
185
+ return _state.sent(), existsAlready ? [
186
+ 3,
187
+ 5
188
+ ] : [
189
+ 4,
190
+ new Promise(function(res) {
191
+ return setTimeout(res, 400);
192
+ })
193
+ ];
194
+ case 4:
195
+ _state.sent(), _state.label = 5;
196
+ case 5:
197
+ return [
198
+ 2,
199
+ transformer(config, projectRoot, filename, Buffer.from("".concat(out.js, `
200
+ require("`).concat(outStylePath, '")'), "utf-8"), options)
201
+ ];
202
+ case 6:
203
+ return [
204
+ 2,
205
+ transformer(config, projectRoot, filename, data, options)
206
+ ];
207
+ }
208
+ });
209
+ }), _transform.apply(this, arguments);
42
210
  }
43
211
  export {
44
212
  transform
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../src/transformer.ts"],
4
- "mappings": "AAAA,SAAS,kBAAkB;AAM3B,OAAO,YAAY;AACnB,SAAS,YAAY;AAGrB,SAAS,iBAAiB,2BAA2B;AAOrD,MAAM,YAAY,gBAAgB;AAElC,eAAsB,UACpB,QACA,aACA,UACA,MACA,SAC4B;AAzB9B;AA0BE,QAAM,SAAS,OAAO,mBAAsB,OAAO,iBAC7C,cAAc,SAAS,QAAQ,MAAM,EAAE,YAAY,OAAO;AAEhE,MACE,OAAO,QAAQ,WACf,QAAQ,aAAa,SACrB,QAAQ,SAAS,WACjB,SAAS,SAAS,cAAc;AAEhC,WAAO,YAAY,QAAQ,aAAa,UAAU,MAAM,OAAO;AAGjE;AAAA;AAAA,IAEE,SAAS,SAAS,KAAK,KACvB,SAAS,SAAS,MAAM,KACxB,SAAS,SAAS,MAAM;AAAA,IACxB;AACA,UAAM,aAAa,KAAK,aAAa,QAAQ,GAGvC,SAAS,GAAG,IAAI,IAChB,MAAM,MAAM,oBAAoB;AAAA,MACpC;AAAA,MACA,SAAS;AAAA;AAAA,QAEP,UAAU;AAAA,QACV,GAAG,OAAO;AAAA,MACZ;AAAA,MACA,kBAAkB,OAAO,WAAW,kBAAkB,IAClD,YACA,OAAO,WAAW,UAAU;AAAA,MAChC;AAAA,MACA;AAAA,IACF,CAAC;AAGD,QAAI,mBAAK,QAAQ;AACf,YAAM,SAAS,KAAK,aAAa,YAAY,KAAK,GAC5C,eAAe;AAAA,QACnB;AAAA,QACA,GAAG,QAAQ,GAAG,QAAQ,kBAAkB,EAAE,IAAI;AAAA,MAChD;AACA,cAAI,aAAQ,IAAI,UAAZ,WAAmB,SAAS,cAC9B,QAAQ,KAAK,yBAAyB,YAAY,GAEpD,MAAM,WAAW,cAAc,IAAI,QAAQ,OAAO,GAE3C;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,QACA,OAAO,KAAK,GAAG,IAAI,EAAE;AAAA,WAAc,YAAY,MAAM,OAAO;AAAA,QAC5D;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAEA,SAAO,YAAY,QAAQ,aAAa,UAAU,MAAM,OAAO;AACjE;",
5
- "names": []
3
+ "sources": ["../../src/Users/n8/tamagui/packages/metro-plugin/src/transformer.ts"],
4
+ "mappings": "AAAA,SAASA,YAAYC,kBAAkB;AAMvC,OAAOC,YAAY;AACnB,SAASC,YAAY;AAGrB,SAASC,iBAAiBC,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOrD,IAAMC,YAAYF,gBAAAA;AAElB,SAAsBG,UACpBC,QACAC,aACAC,UACAC,MACAC,SAA2B;SALPL,WAAAA,MAAAA,MAAAA,SAAAA;;SAAAA,aAAAA;AAAAA,sBAAf,oBAAA,SACLC,QACAC,aACAC,UACAC,MACAC,SAA2B;QAErBC,QACAC,aAiBEC,YAGAC,QACAC,KAqBAC,oBALEC,QACAC,cAQAC;;;;AA5CV,iBAHMR,SAASL,OAAO,mBAAsBA,OAAOc,iBAC7CR,cAAcD,SAASU,QAAQV,MAAAA,EAAQN,YAAYL,OAAOK,WAG9DC,OAAOgB,QAAQC,WACfb,QAAQc,aAAa,SACrBd,QAAQe,SAAS,WACjBjB,SAASkB,SAAS,cAAA,IAElB;;YAAOd,YAAYN,QAAQC,aAAaC,UAAUC,MAAMC,OAAAA;;;YAKxDF,SAASmB,SAAS,KAAA,KAClBnB,SAASmB,SAAS,MAAA,KAClBnB,SAASmB,SAAS,MAAA,KAEZd,aAAaZ,KAAKM,aAAaC,QAAAA,GAG/BM,SAAU,GAAO,OAALL,IAAAA,GACN;;cAAMN,oBAAoB;gBACpCC;gBACAM,SAAS,eAAA;;kBAEPc,UAAU;mBACPlB,OAAOgB,OAAO;gBAEnBM,kBAAkBd,OAAOe,WAAW,kBAAA,IAChC,YACAf,OAAOe,WAAW,UAAA;gBACtBf;gBACAD;cACF,CAAA;iBApBAL;;;;;;iBAQMO,MAAM,OAAA,KAAA,GAeRA,OAAAA,QAAAA,IAAKe,UACDb,SAAShB,KAAKM,aAAa,YAAY,KAAA,GACvCW,eAAejB,KACnBgB,QACC,GAAW,OAATT,QAAAA,EAAWuB,QAAQ,kBAAkB,EAAA,IAAM,MAAA,GAE5Cf,wBAAAA,QAAQgB,IAAIC,WAAK,QAAjBjB,uBAAAA,WAAAA,mBAAmBU,SAAS,SAAA,KAC9BQ,QAAQC,KAAK,yBAAyBjB,YAAAA,GAGlB;;YAAMnB,WAAWmB,YAAAA;eAV1B;;;;;AAUPC,iCAAgB,OAAA,KAAA,GAEtB;;YAAMrB,WAAWoB,cAAcH,IAAIe,QAAQ,OAAA;;;iBAA3C,OAAA,KAAA,GAEKX,gBAAD;;;cAEF;;YAAM,IAAIiB,QAAQ,SAACC,KAAAA;qBAAQC,WAAWD,KAAK,GAAA;;;;AAA3C,iBAAA,KAAA;;AAGF,iBAAA;;YAAOzB,YACLN,QACAC,aACAC,UACA+B,OAAOC,KAAM,GAAsBtB,OAApBH,IAAI0B,IAAG;UAAA,EAA0B,OAAbvB,cAAa,IAAA,GAAK,OAAA,GACrDR,OAAAA;;;AAKN,iBAAA;;YAAOE,YAAYN,QAAQC,aAAaC,UAAUC,MAAMC,OAAAA;;;;EAC1D,CAAA,GA1EsBL,WAAAA,MAAAA,MAAAA,SAAAA;;",
5
+ "names": ["outputFile", "pathExists", "worker", "join", "createExtractor", "extractToClassNames", "extractor", "transform", "config", "projectRoot", "filename", "data", "options", "ogPath", "transformer", "sourcePath", "source", "out", "process", "tmpDir", "outStylePath", "existsAlready", "transformerPath", "require", "tamagui", "disable", "platform", "type", "includes", "endsWith", "shouldPrintDebug", "startsWith", "styles", "replace", "env", "DEBUG", "console", "info", "Promise", "res", "setTimeout", "Buffer", "from", "js"]
6
6
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/metro-plugin",
3
- "version": "1.89.25",
3
+ "version": "1.89.27-1708112217600",
4
4
  "source": "src/index.ts",
5
5
  "types": "./types/index.d.ts",
6
6
  "main": "dist/cjs",
@@ -23,13 +23,13 @@
23
23
  "clean:build": "tamagui-build clean:build"
24
24
  },
25
25
  "dependencies": {
26
- "@tamagui/static": "1.89.25",
26
+ "@tamagui/static": "1.89.27-1708112217600",
27
27
  "fs-extra": "^11.2.0",
28
28
  "metro-config": "^0.80.4",
29
29
  "metro-transform-worker": "^0.80.4",
30
30
  "react-native-css-interop": "~0.0.21"
31
31
  },
32
32
  "devDependencies": {
33
- "@tamagui/build": "1.89.25"
33
+ "@tamagui/build": "1.89.27-1708112217600"
34
34
  }
35
35
  }
@@ -1,4 +1,4 @@
1
- import { outputFile } from 'fs-extra'
1
+ import { outputFile, pathExists } from 'fs-extra'
2
2
  import type {
3
3
  JsTransformerConfig,
4
4
  JsTransformOptions,
@@ -70,8 +70,16 @@ export async function transform(
70
70
  if (process.env.DEBUG?.includes('tamagui')) {
71
71
  console.info(' Outputting CSS file:', outStylePath)
72
72
  }
73
+
74
+ const existsAlready = await pathExists(outStylePath)
75
+
73
76
  await outputFile(outStylePath, out.styles, 'utf-8')
74
77
 
78
+ if (!existsAlready) {
79
+ // metro has some sort of bug, expo starter wont build properly first time without this... :(
80
+ await new Promise((res) => setTimeout(res, 400))
81
+ }
82
+
75
83
  return transformer(
76
84
  config,
77
85
  projectRoot,
@@ -1 +1 @@
1
- {"version":3,"file":"transformer.d.ts","sourceRoot":"","sources":["../src/transformer.ts"],"names":[],"mappings":";AACA,OAAO,KAAK,EACV,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EAClB,MAAM,wBAAwB,CAAA;AAI/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAGrD,UAAU,0BAA2B,SAAQ,mBAAmB;IAC9D,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,OAAO,EAAE,cAAc,CAAA;CACxB;AAID,wBAAsB,SAAS,CAC7B,MAAM,EAAE,0BAA0B,EAClC,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,iBAAiB,CAAC,CA4D5B"}
1
+ {"version":3,"file":"transformer.d.ts","sourceRoot":"","sources":["../src/transformer.ts"],"names":[],"mappings":";AACA,OAAO,KAAK,EACV,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EAClB,MAAM,wBAAwB,CAAA;AAI/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAGrD,UAAU,0BAA2B,SAAQ,mBAAmB;IAC9D,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,OAAO,EAAE,cAAc,CAAA;CACxB;AAID,wBAAsB,SAAS,CAC7B,MAAM,EAAE,0BAA0B,EAClC,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,iBAAiB,CAAC,CAoE5B"}