@tamagui/metro-plugin 1.110.5 → 1.111.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.native.js +16 -68
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/transformer.native.js +28 -199
- package/dist/cjs/transformer.native.js.map +2 -2
- package/dist/esm/index.native.js +16 -68
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/index.native.mjs +26 -0
- package/dist/esm/index.native.mjs.map +1 -0
- package/dist/esm/transformer.native.js +28 -198
- package/dist/esm/transformer.native.js.map +2 -2
- package/dist/esm/transformer.native.mjs +44 -0
- package/dist/esm/transformer.native.mjs.map +1 -0
- package/package.json +3 -3
package/dist/cjs/index.native.js
CHANGED
|
@@ -27,83 +27,31 @@ __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++) arr2[i] = arr[i];
|
|
33
|
-
return arr2;
|
|
34
|
-
}
|
|
35
|
-
function _array_without_holes(arr) {
|
|
36
|
-
if (Array.isArray(arr)) return _array_like_to_array(arr);
|
|
37
|
-
}
|
|
38
|
-
function _define_property(obj, key, value) {
|
|
39
|
-
return key in obj ? Object.defineProperty(obj, key, {
|
|
40
|
-
value,
|
|
41
|
-
enumerable: !0,
|
|
42
|
-
configurable: !0,
|
|
43
|
-
writable: !0
|
|
44
|
-
}) : obj[key] = value, obj;
|
|
45
|
-
}
|
|
46
|
-
function _iterable_to_array(iter) {
|
|
47
|
-
if (typeof Symbol < "u" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
48
|
-
}
|
|
49
|
-
function _non_iterable_spread() {
|
|
50
|
-
throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
51
|
-
}
|
|
52
|
-
function _object_spread(target) {
|
|
53
|
-
for (var i = 1; i < arguments.length; i++) {
|
|
54
|
-
var source = arguments[i] != null ? arguments[i] : {}, ownKeys2 = Object.keys(source);
|
|
55
|
-
typeof Object.getOwnPropertySymbols == "function" && (ownKeys2 = ownKeys2.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
|
|
56
|
-
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
|
57
|
-
}))), ownKeys2.forEach(function(key) {
|
|
58
|
-
_define_property(target, key, source[key]);
|
|
59
|
-
});
|
|
60
|
-
}
|
|
61
|
-
return target;
|
|
62
|
-
}
|
|
63
|
-
function ownKeys(object, enumerableOnly) {
|
|
64
|
-
var keys = Object.keys(object);
|
|
65
|
-
if (Object.getOwnPropertySymbols) {
|
|
66
|
-
var symbols = Object.getOwnPropertySymbols(object);
|
|
67
|
-
enumerableOnly && (symbols = symbols.filter(function(sym) {
|
|
68
|
-
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
|
|
69
|
-
})), keys.push.apply(keys, symbols);
|
|
70
|
-
}
|
|
71
|
-
return keys;
|
|
72
|
-
}
|
|
73
|
-
function _object_spread_props(target, source) {
|
|
74
|
-
return source = source ?? {}, Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function(key) {
|
|
75
|
-
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
|
|
76
|
-
}), target;
|
|
77
|
-
}
|
|
78
|
-
function _to_consumable_array(arr) {
|
|
79
|
-
return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
|
|
80
|
-
}
|
|
81
|
-
function _unsupported_iterable_to_array(o, minLen) {
|
|
82
|
-
if (o) {
|
|
83
|
-
if (typeof o == "string") return _array_like_to_array(o, minLen);
|
|
84
|
-
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
85
|
-
if (n === "Object" && o.constructor && (n = o.constructor.name), n === "Map" || n === "Set") return Array.from(n);
|
|
86
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
30
|
function withTamagui(metroConfig, optionsIn) {
|
|
90
|
-
var options =
|
|
91
|
-
|
|
92
|
-
|
|
31
|
+
var 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: [
|
|
38
|
+
...metroConfig.resolver.sourceExts,
|
|
93
39
|
"css"
|
|
94
|
-
]
|
|
95
|
-
}
|
|
40
|
+
]
|
|
41
|
+
} : metroConfig = (0, import_metro.withCssInterop)(metroConfig, {
|
|
96
42
|
ignorePropertyWarningRegex: [
|
|
97
43
|
"^--"
|
|
98
44
|
]
|
|
99
45
|
});
|
|
100
46
|
var ogTransformPath = metroConfig.transformerPath;
|
|
101
|
-
return metroConfig.transformerPath = require.resolve("./transformer"), metroConfig.transformer =
|
|
47
|
+
return metroConfig.transformerPath = require.resolve("./transformer"), metroConfig.transformer = {
|
|
48
|
+
...metroConfig.transformer,
|
|
102
49
|
ogTransformPath,
|
|
103
|
-
tamagui:
|
|
50
|
+
tamagui: {
|
|
51
|
+
...options,
|
|
104
52
|
disableInitialBuild: !0
|
|
105
|
-
}
|
|
106
|
-
}
|
|
53
|
+
}
|
|
54
|
+
}, metroConfig;
|
|
107
55
|
}
|
|
108
56
|
// Annotate the CommonJS export names for ESM import in node:
|
|
109
57
|
0 && (module.exports = {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Users/n8/tamagui/code/compiler/metro-plugin/src/index.ts"],
|
|
4
|
-
"mappings": "
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;oBAIO,4BACP,eAGO;AAEA,SAASA,YACdC,aACAC,WAEC;AAED,MAAMC,UAAU;IACd,GAAGD;IACH,OAAGE,0CAA2BF,SAAAA;EAChC,GAGMG,gBAAYC,+BAAAA;AAGlB,EAAKH,QAAQI,WACNF,UAAUG,YAAYL,OAAAA,GAGxBA,QAAQM,oBAOXR,YAAYS,WAAW;IACrB,GAAGT,YAAYS;IACfC,YAAY;SAAIV,YAAYS,SAASC;MAAY;;EACnD,IATAV,kBAAcW,6BAAeX,aAAa;IACxCY,4BAA4B;MAAC;;EAE/B,CAAA;AASF,MAAMC,kBAAkBb,YAAYc;AACpCd,qBAAYc,kBAAkBC,gBAAgB,eAAA,GAC9Cf,YAAYgB,cAAc;IACxB,GAAGhB,YAAYgB;IACfH;IACAI,SAAS;MACP,GAAGf;MACHgB,qBAAqB;IACvB;EACF,GAEOlB;AACT;",
|
|
5
5
|
"names": ["withTamagui", "metroConfig", "optionsIn", "options", "loadTamaguiBuildConfigSync", "extractor", "createExtractor", "disable", "loadTamagui", "disableCSSInterop", "resolver", "sourceExts", "withCssInterop", "ignorePropertyWarningRegex", "ogTransformPath", "transformerPath", "require", "transformer", "tamagui", "disableInitialBuild"]
|
|
6
6
|
}
|
|
@@ -26,208 +26,37 @@ __export(transformer_exports, {
|
|
|
26
26
|
transform: () => transform
|
|
27
27
|
});
|
|
28
28
|
module.exports = __toCommonJS(transformer_exports);
|
|
29
|
-
var import_fs_extra = require("fs-extra"), import_metro_transform_worker = __toESM(require("metro-transform-worker")), import_node_path = require("node:path"), import_static = require("@tamagui/static");
|
|
30
|
-
function
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
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]);
|
|
29
|
+
var import_fs_extra = require("fs-extra"), import_metro_transform_worker = __toESM(require("metro-transform-worker")), import_node_path = require("node:path"), import_static = require("@tamagui/static"), extractor = (0, import_static.createExtractor)();
|
|
30
|
+
async function transform(config, projectRoot, filename, data, options) {
|
|
31
|
+
var ogPath = config.ogTransformPath || config.transformerPath, transformer = ogPath ? require(ogPath).transform : import_metro_transform_worker.default.transform;
|
|
32
|
+
if (config.tamagui.disable || options.platform !== "web" || options.type === "asset" || filename.includes("node_modules"))
|
|
33
|
+
return transformer(config, projectRoot, filename, data, options);
|
|
34
|
+
if (
|
|
35
|
+
// could by a styled() call:
|
|
36
|
+
filename.endsWith(".ts") || filename.endsWith(".tsx") || filename.endsWith(".jsx")
|
|
37
|
+
) {
|
|
38
|
+
var sourcePath = toPosixPath((0, import_node_path.join)(projectRoot, filename)), source = `${data}`, out = await (0, import_static.extractToClassNames)({
|
|
39
|
+
extractor,
|
|
40
|
+
options: {
|
|
41
|
+
// @ts-ignore
|
|
42
|
+
platform: "web",
|
|
43
|
+
...config.tamagui
|
|
44
|
+
},
|
|
45
|
+
shouldPrintDebug: source.startsWith("// debug-verbose") ? "verbose" : source.startsWith("// debug"),
|
|
46
|
+
source,
|
|
47
|
+
sourcePath
|
|
69
48
|
});
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
return t[1];
|
|
79
|
-
},
|
|
80
|
-
trys: [],
|
|
81
|
-
ops: []
|
|
82
|
-
};
|
|
83
|
-
return g = {
|
|
84
|
-
next: verb(0),
|
|
85
|
-
throw: verb(1),
|
|
86
|
-
return: verb(2)
|
|
87
|
-
}, typeof Symbol == "function" && (g[Symbol.iterator] = function() {
|
|
88
|
-
return this;
|
|
89
|
-
}), g;
|
|
90
|
-
function verb(n) {
|
|
91
|
-
return function(v) {
|
|
92
|
-
return step([
|
|
93
|
-
n,
|
|
94
|
-
v
|
|
95
|
-
]);
|
|
96
|
-
};
|
|
97
|
-
}
|
|
98
|
-
function step(op) {
|
|
99
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
100
|
-
for (; _; ) try {
|
|
101
|
-
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) return t;
|
|
102
|
-
switch (y = 0, t && (op = [
|
|
103
|
-
op[0] & 2,
|
|
104
|
-
t.value
|
|
105
|
-
]), op[0]) {
|
|
106
|
-
case 0:
|
|
107
|
-
case 1:
|
|
108
|
-
t = op;
|
|
109
|
-
break;
|
|
110
|
-
case 4:
|
|
111
|
-
return _.label++, {
|
|
112
|
-
value: op[1],
|
|
113
|
-
done: !1
|
|
114
|
-
};
|
|
115
|
-
case 5:
|
|
116
|
-
_.label++, y = op[1], op = [
|
|
117
|
-
0
|
|
118
|
-
];
|
|
119
|
-
continue;
|
|
120
|
-
case 7:
|
|
121
|
-
op = _.ops.pop(), _.trys.pop();
|
|
122
|
-
continue;
|
|
123
|
-
default:
|
|
124
|
-
if (t = _.trys, !(t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
|
125
|
-
_ = 0;
|
|
126
|
-
continue;
|
|
127
|
-
}
|
|
128
|
-
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
|
129
|
-
_.label = op[1];
|
|
130
|
-
break;
|
|
131
|
-
}
|
|
132
|
-
if (op[0] === 6 && _.label < t[1]) {
|
|
133
|
-
_.label = t[1], t = op;
|
|
134
|
-
break;
|
|
135
|
-
}
|
|
136
|
-
if (t && _.label < t[2]) {
|
|
137
|
-
_.label = t[2], _.ops.push(op);
|
|
138
|
-
break;
|
|
139
|
-
}
|
|
140
|
-
t[2] && _.ops.pop(), _.trys.pop();
|
|
141
|
-
continue;
|
|
142
|
-
}
|
|
143
|
-
op = body.call(thisArg, _);
|
|
144
|
-
} catch (e) {
|
|
145
|
-
op = [
|
|
146
|
-
6,
|
|
147
|
-
e
|
|
148
|
-
], y = 0;
|
|
149
|
-
} finally {
|
|
150
|
-
f = t = 0;
|
|
49
|
+
if (out != null && out.styles) {
|
|
50
|
+
var _process_env_DEBUG, tmpDir = (0, import_node_path.join)(projectRoot, ".tamagui", "css"), outStylePath = toPosixPath((0, import_node_path.join)(tmpDir, `${filename}`.replace(/[^a-zA-Z0-9]/gi, "") + ".css"));
|
|
51
|
+
!((_process_env_DEBUG = process.env.DEBUG) === null || _process_env_DEBUG === void 0) && _process_env_DEBUG.includes("tamagui") && console.info(" Outputting CSS file:", outStylePath);
|
|
52
|
+
var existsAlready = await (0, import_fs_extra.pathExists)(outStylePath);
|
|
53
|
+
return await (0, import_fs_extra.outputFile)(outStylePath, out.styles, "utf-8"), existsAlready || await new Promise(function(res) {
|
|
54
|
+
return setTimeout(res, 400);
|
|
55
|
+
}), transformer(config, projectRoot, filename, Buffer.from(`${out.js}
|
|
56
|
+
require("${outStylePath}")`, "utf-8"), options);
|
|
151
57
|
}
|
|
152
|
-
if (op[0] & 5) throw op[1];
|
|
153
|
-
return {
|
|
154
|
-
value: op[0] ? op[1] : void 0,
|
|
155
|
-
done: !0
|
|
156
|
-
};
|
|
157
58
|
}
|
|
158
|
-
|
|
159
|
-
var extractor = (0, import_static.createExtractor)();
|
|
160
|
-
function transform(config, projectRoot, filename, data, options) {
|
|
161
|
-
return _transform.apply(this, arguments);
|
|
162
|
-
}
|
|
163
|
-
function _transform() {
|
|
164
|
-
return _transform = _async_to_generator(function(config, projectRoot, filename, data, options) {
|
|
165
|
-
var ogPath, transformer, sourcePath, source, out, _process_env_DEBUG, tmpDir, outStylePath, existsAlready;
|
|
166
|
-
return _ts_generator(this, function(_state) {
|
|
167
|
-
switch (_state.label) {
|
|
168
|
-
case 0:
|
|
169
|
-
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") ? [
|
|
170
|
-
2,
|
|
171
|
-
transformer(config, projectRoot, filename, data, options)
|
|
172
|
-
] : (
|
|
173
|
-
// could by a styled() call:
|
|
174
|
-
filename.endsWith(".ts") || filename.endsWith(".tsx") || filename.endsWith(".jsx") ? (sourcePath = toPosixPath((0, import_node_path.join)(projectRoot, filename)), source = "".concat(data), [
|
|
175
|
-
4,
|
|
176
|
-
(0, import_static.extractToClassNames)({
|
|
177
|
-
extractor,
|
|
178
|
-
options: _object_spread({
|
|
179
|
-
// @ts-ignore
|
|
180
|
-
platform: "web"
|
|
181
|
-
}, config.tamagui),
|
|
182
|
-
shouldPrintDebug: source.startsWith("// debug-verbose") ? "verbose" : source.startsWith("// debug"),
|
|
183
|
-
source,
|
|
184
|
-
sourcePath
|
|
185
|
-
})
|
|
186
|
-
]) : [
|
|
187
|
-
3,
|
|
188
|
-
6
|
|
189
|
-
]
|
|
190
|
-
);
|
|
191
|
-
case 1:
|
|
192
|
-
return out = _state.sent(), // just write it out to our tmp dir and require it for metro to do the rest of the css work
|
|
193
|
-
out != null && out.styles ? (tmpDir = (0, import_node_path.join)(projectRoot, ".tamagui", "css"), outStylePath = toPosixPath((0, import_node_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), [
|
|
194
|
-
4,
|
|
195
|
-
(0, import_fs_extra.pathExists)(outStylePath)
|
|
196
|
-
]) : [
|
|
197
|
-
3,
|
|
198
|
-
6
|
|
199
|
-
];
|
|
200
|
-
case 2:
|
|
201
|
-
return existsAlready = _state.sent(), [
|
|
202
|
-
4,
|
|
203
|
-
(0, import_fs_extra.outputFile)(outStylePath, out.styles, "utf-8")
|
|
204
|
-
];
|
|
205
|
-
case 3:
|
|
206
|
-
return _state.sent(), existsAlready ? [
|
|
207
|
-
3,
|
|
208
|
-
5
|
|
209
|
-
] : [
|
|
210
|
-
4,
|
|
211
|
-
new Promise(function(res) {
|
|
212
|
-
return setTimeout(res, 400);
|
|
213
|
-
})
|
|
214
|
-
];
|
|
215
|
-
case 4:
|
|
216
|
-
_state.sent(), _state.label = 5;
|
|
217
|
-
case 5:
|
|
218
|
-
return [
|
|
219
|
-
2,
|
|
220
|
-
transformer(config, projectRoot, filename, Buffer.from("".concat(out.js, `
|
|
221
|
-
require("`).concat(outStylePath, '")'), "utf-8"), options)
|
|
222
|
-
];
|
|
223
|
-
case 6:
|
|
224
|
-
return [
|
|
225
|
-
2,
|
|
226
|
-
transformer(config, projectRoot, filename, data, options)
|
|
227
|
-
];
|
|
228
|
-
}
|
|
229
|
-
});
|
|
230
|
-
}), _transform.apply(this, arguments);
|
|
59
|
+
return transformer(config, projectRoot, filename, data, options);
|
|
231
60
|
}
|
|
232
61
|
function toPosixPath(path) {
|
|
233
62
|
return path.split(import_node_path.sep).join(import_node_path.posix.sep);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Users/n8/tamagui/code/compiler/metro-plugin/src/transformer.ts"],
|
|
4
|
-
"mappings": "
|
|
5
|
-
"names": ["extractor", "createExtractor", "transform", "config", "projectRoot", "filename", "data", "options", "ogPath", "
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;sBAAuC,qBAMvC,gCAAmB,4CACnB,mBAAiC,sBAGjC,gBAAqD,4BAO/CA,gBAAYC,+BAAAA;AAElB,eAAsBC,UACpBC,QACAC,aACAC,UACAC,MACAC,SAA2B;AAE3B,MAAMC,SAASL,OAAO,mBAAsBA,OAAOM,iBAC7CC,cAAcF,SAASG,QAAQH,MAAAA,EAAQN,YAAYU,8BAAAA,QAAOV;AAEhE,MACEC,OAAOU,QAAQC,WACfP,QAAQQ,aAAa,SACrBR,QAAQS,SAAS,WACjBX,SAASY,SAAS,cAAA;AAElB,WAAOP,YAAYP,QAAQC,aAAaC,UAAUC,MAAMC,OAAAA;AAG1D;;IAEEF,SAASa,SAAS,KAAA,KAClBb,SAASa,SAAS,MAAA,KAClBb,SAASa,SAAS,MAAA;IAClB;AACA,QAAMC,aAAaC,gBAAYC,uBAAKjB,aAAaC,QAAAA,CAAAA,GAG3CiB,SAAS,GAAGhB,IAAAA,IACZiB,MAAM,UAAMC,mCAAoB;MACpCxB;MACAO,SAAS;;QAEPQ,UAAU;QACV,GAAGZ,OAAOU;MACZ;MACAY,kBAAkBH,OAAOI,WAAW,kBAAA,IAChC,YACAJ,OAAOI,WAAW,UAAA;MACtBJ;MACAH;IACF,CAAA;AAGA,QAAII,OAAAA,QAAAA,IAAKI,QAAQ;UAKXC,oBAJEC,aAASR,uBAAKjB,aAAa,YAAY,KAAA,GACvC0B,eAAeV,gBACnBC,uBAAKQ,QAAQ,GAAGxB,QAAAA,GAAW0B,QAAQ,kBAAkB,EAAA,IAAM,MAAA,CAAA;AAE7D,MAAIH,wBAAAA,QAAQI,IAAIC,WAAK,QAAjBL,uBAAAA,WAAAA,mBAAmBX,SAAS,SAAA,KAC9BiB,QAAQC,KAAK,yBAAyBL,YAAAA;AAGxC,UAAMM,gBAAgB,UAAMC,4BAAWP,YAAAA;AAEvC,uBAAMQ,4BAAWR,cAAcP,IAAII,QAAQ,OAAA,GAEtCS,iBAEH,MAAM,IAAIG,QAAQ,SAACC,KAAAA;eAAQC,WAAWD,KAAK,GAAA;UAGtC9B,YACLP,QACAC,aACAC,UACAqC,OAAOC,KAAK,GAAGpB,IAAIqB,EAAE;WAAcd,YAAAA,MAAkB,OAAA,GACrDvB,OAAAA;IAEJ;EACF;AAEA,SAAOG,YAAYP,QAAQC,aAAaC,UAAUC,MAAMC,OAAAA;AAC1D;AAEA,SAASa,YAAYyB,MAAY;AAC/B,SAAOA,KAAKC,MAAMC,oBAAAA,EAAK1B,KAAK2B,uBAAMD,GAAG;AACvC;",
|
|
5
|
+
"names": ["extractor", "createExtractor", "transform", "config", "projectRoot", "filename", "data", "options", "ogPath", "transformerPath", "transformer", "require", "worker", "tamagui", "disable", "platform", "type", "includes", "endsWith", "sourcePath", "toPosixPath", "join", "source", "out", "extractToClassNames", "shouldPrintDebug", "startsWith", "styles", "process", "tmpDir", "outStylePath", "replace", "env", "DEBUG", "console", "info", "existsAlready", "pathExists", "outputFile", "Promise", "res", "setTimeout", "Buffer", "from", "js", "path", "split", "sep", "posix"]
|
|
6
6
|
}
|
package/dist/esm/index.native.js
CHANGED
|
@@ -1,82 +1,30 @@
|
|
|
1
1
|
import { createExtractor, loadTamaguiBuildConfigSync } from "@tamagui/static";
|
|
2
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++) arr2[i] = arr[i];
|
|
6
|
-
return arr2;
|
|
7
|
-
}
|
|
8
|
-
function _array_without_holes(arr) {
|
|
9
|
-
if (Array.isArray(arr)) return _array_like_to_array(arr);
|
|
10
|
-
}
|
|
11
|
-
function _define_property(obj, key, value) {
|
|
12
|
-
return key in obj ? Object.defineProperty(obj, key, {
|
|
13
|
-
value,
|
|
14
|
-
enumerable: !0,
|
|
15
|
-
configurable: !0,
|
|
16
|
-
writable: !0
|
|
17
|
-
}) : obj[key] = value, obj;
|
|
18
|
-
}
|
|
19
|
-
function _iterable_to_array(iter) {
|
|
20
|
-
if (typeof Symbol < "u" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
21
|
-
}
|
|
22
|
-
function _non_iterable_spread() {
|
|
23
|
-
throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
24
|
-
}
|
|
25
|
-
function _object_spread(target) {
|
|
26
|
-
for (var i = 1; i < arguments.length; i++) {
|
|
27
|
-
var source = arguments[i] != null ? arguments[i] : {}, ownKeys2 = Object.keys(source);
|
|
28
|
-
typeof Object.getOwnPropertySymbols == "function" && (ownKeys2 = ownKeys2.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
|
|
29
|
-
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
|
30
|
-
}))), ownKeys2.forEach(function(key) {
|
|
31
|
-
_define_property(target, key, source[key]);
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
return target;
|
|
35
|
-
}
|
|
36
|
-
function ownKeys(object, enumerableOnly) {
|
|
37
|
-
var keys = Object.keys(object);
|
|
38
|
-
if (Object.getOwnPropertySymbols) {
|
|
39
|
-
var symbols = Object.getOwnPropertySymbols(object);
|
|
40
|
-
enumerableOnly && (symbols = symbols.filter(function(sym) {
|
|
41
|
-
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
|
|
42
|
-
})), keys.push.apply(keys, symbols);
|
|
43
|
-
}
|
|
44
|
-
return keys;
|
|
45
|
-
}
|
|
46
|
-
function _object_spread_props(target, source) {
|
|
47
|
-
return source = source ?? {}, Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function(key) {
|
|
48
|
-
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
|
|
49
|
-
}), target;
|
|
50
|
-
}
|
|
51
|
-
function _to_consumable_array(arr) {
|
|
52
|
-
return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
|
|
53
|
-
}
|
|
54
|
-
function _unsupported_iterable_to_array(o, minLen) {
|
|
55
|
-
if (o) {
|
|
56
|
-
if (typeof o == "string") return _array_like_to_array(o, minLen);
|
|
57
|
-
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
58
|
-
if (n === "Object" && o.constructor && (n = o.constructor.name), n === "Map" || n === "Set") return Array.from(n);
|
|
59
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
3
|
function withTamagui(metroConfig, optionsIn) {
|
|
63
|
-
var options =
|
|
64
|
-
|
|
65
|
-
|
|
4
|
+
var options = {
|
|
5
|
+
...optionsIn,
|
|
6
|
+
...loadTamaguiBuildConfigSync(optionsIn)
|
|
7
|
+
}, extractor = createExtractor();
|
|
8
|
+
options.disable || extractor.loadTamagui(options), options.disableCSSInterop ? metroConfig.resolver = {
|
|
9
|
+
...metroConfig.resolver,
|
|
10
|
+
sourceExts: [
|
|
11
|
+
...metroConfig.resolver.sourceExts,
|
|
66
12
|
"css"
|
|
67
|
-
]
|
|
68
|
-
}
|
|
13
|
+
]
|
|
14
|
+
} : metroConfig = withCssInterop(metroConfig, {
|
|
69
15
|
ignorePropertyWarningRegex: [
|
|
70
16
|
"^--"
|
|
71
17
|
]
|
|
72
18
|
});
|
|
73
19
|
var ogTransformPath = metroConfig.transformerPath;
|
|
74
|
-
return metroConfig.transformerPath = require.resolve("./transformer"), metroConfig.transformer =
|
|
20
|
+
return metroConfig.transformerPath = require.resolve("./transformer"), metroConfig.transformer = {
|
|
21
|
+
...metroConfig.transformer,
|
|
75
22
|
ogTransformPath,
|
|
76
|
-
tamagui:
|
|
23
|
+
tamagui: {
|
|
24
|
+
...options,
|
|
77
25
|
disableInitialBuild: !0
|
|
78
|
-
}
|
|
79
|
-
}
|
|
26
|
+
}
|
|
27
|
+
}, metroConfig;
|
|
80
28
|
}
|
|
81
29
|
export {
|
|
82
30
|
withTamagui
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Users/n8/tamagui/code/compiler/metro-plugin/src/index.ts"],
|
|
4
|
-
"mappings": "AAAA,SACEA,iBACAC,kCAEK;AACP,SACEC,sBAEK
|
|
4
|
+
"mappings": "AAAA,SACEA,iBACAC,kCAEK;AACP,SACEC,sBAEK;AAEA,SAASC,YACdC,aACAC,WAEC;AAED,MAAMC,UAAU;IACd,GAAGD;IACH,GAAGJ,2BAA2BI,SAAAA;EAChC,GAGME,YAAYP,gBAAAA;AAGlB,EAAKM,QAAQE,WACND,UAAUE,YAAYH,OAAAA,GAGxBA,QAAQI,oBAOXN,YAAYO,WAAW;IACrB,GAAGP,YAAYO;IACfC,YAAY;SAAIR,YAAYO,SAASC;MAAY;;EACnD,IATAR,cAAcF,eAAeE,aAAa;IACxCS,4BAA4B;MAAC;;EAE/B,CAAA;AASF,MAAMC,kBAAkBV,YAAYW;AACpCX,qBAAYW,kBAAkBC,gBAAgB,eAAA,GAC9CZ,YAAYa,cAAc;IACxB,GAAGb,YAAYa;IACfH;IACAI,SAAS;MACP,GAAGZ;MACHa,qBAAqB;IACvB;EACF,GAEOf;AACT;",
|
|
5
5
|
"names": ["createExtractor", "loadTamaguiBuildConfigSync", "withCssInterop", "withTamagui", "metroConfig", "optionsIn", "options", "extractor", "disable", "loadTamagui", "disableCSSInterop", "resolver", "sourceExts", "ignorePropertyWarningRegex", "ogTransformPath", "transformerPath", "require", "transformer", "tamagui", "disableInitialBuild"]
|
|
6
6
|
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { createExtractor, loadTamaguiBuildConfigSync } from "@tamagui/static";
|
|
2
|
+
import { withCssInterop } from "react-native-css-interop/metro";
|
|
3
|
+
function withTamagui(metroConfig, optionsIn) {
|
|
4
|
+
var options = {
|
|
5
|
+
...optionsIn,
|
|
6
|
+
...loadTamaguiBuildConfigSync(optionsIn)
|
|
7
|
+
},
|
|
8
|
+
extractor = createExtractor();
|
|
9
|
+
options.disable || extractor.loadTamagui(options), options.disableCSSInterop ? metroConfig.resolver = {
|
|
10
|
+
...metroConfig.resolver,
|
|
11
|
+
sourceExts: [...metroConfig.resolver.sourceExts, "css"]
|
|
12
|
+
} : metroConfig = withCssInterop(metroConfig, {
|
|
13
|
+
ignorePropertyWarningRegex: ["^--"]
|
|
14
|
+
});
|
|
15
|
+
var ogTransformPath = metroConfig.transformerPath;
|
|
16
|
+
return metroConfig.transformerPath = require.resolve("./transformer"), metroConfig.transformer = {
|
|
17
|
+
...metroConfig.transformer,
|
|
18
|
+
ogTransformPath,
|
|
19
|
+
tamagui: {
|
|
20
|
+
...options,
|
|
21
|
+
disableInitialBuild: !0
|
|
22
|
+
}
|
|
23
|
+
}, metroConfig;
|
|
24
|
+
}
|
|
25
|
+
export { withTamagui };
|
|
26
|
+
//# sourceMappingURL=index.native.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createExtractor","loadTamaguiBuildConfigSync","withCssInterop","withTamagui","metroConfig","optionsIn","options","extractor","disable","loadTamagui","disableCSSInterop","resolver","sourceExts","ignorePropertyWarningRegex","ogTransformPath","transformerPath","require","resolve","transformer","tamagui","disableInitialBuild"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,SAAAA,eAAA,EAAAC,0BAAA;AAAA,SACEC,cAAA;AAAA,SACAC,YAAAC,WAAA,EAAAC,SAAA;EAAA,IAAAC,OAEK;MACP,GAAAD,SAAA;MACE,GAAAJ,0BAAA,CAAAI,SAAA;IAAA;IAAAE,SAEK,GAAAP,eAAA;EAEAM,OAAS,CAAAE,OAAA,IACdD,SAAA,CAAAE,WACA,CAAAH,OAGA,GAAAA,OAAA,CAAAI,iBAAA,GAAAN,WAAA,CAAAO,QAAA;IACA,GAAAP,WAAgB,CAAAO,QAAA;IACdC,UAAG,GACH,GAAGR,WAAA,CAAAO,QAAA,CAAAC,UAA2B,EAI1B;EAcmB,IACrBR,WAAG,GAAYF,cAAA,CAAAE,WAAA;IACfS,0BAAgB,EAAY,CAR9B;EACoC;EAEpC,IAACC,eAAA,GAAAV,WAAA,CAAAW,eAAA;EASH,OAAMX,WAAA,CAAAW,eAAkB,GAAYC,OAAA,CAAAC,OAAA,mBAAAb,WAAA,CAAAc,WAAA;IACpC,GAAAd,WAAA,CAAAc,WAAY;IAEVJ,eAAe;IACfK,OAAA;MACA,GAAAb,OAAS;MACPc,mBAAG;IAAA;EACkB,GACvBhB,WAAA;AAAA;AAIJ,S","ignoreList":[]}
|
|
@@ -2,207 +2,37 @@ import { outputFile, pathExists } from "fs-extra";
|
|
|
2
2
|
import worker from "metro-transform-worker";
|
|
3
3
|
import { join, posix, sep } from "node:path";
|
|
4
4
|
import { createExtractor, extractToClassNames } from "@tamagui/static";
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
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]);
|
|
5
|
+
var extractor = createExtractor();
|
|
6
|
+
async function transform(config, projectRoot, filename, data, options) {
|
|
7
|
+
var ogPath = config.ogTransformPath || config.transformerPath, transformer = ogPath ? require(ogPath).transform : worker.transform;
|
|
8
|
+
if (config.tamagui.disable || options.platform !== "web" || options.type === "asset" || filename.includes("node_modules"))
|
|
9
|
+
return transformer(config, projectRoot, filename, data, options);
|
|
10
|
+
if (
|
|
11
|
+
// could by a styled() call:
|
|
12
|
+
filename.endsWith(".ts") || filename.endsWith(".tsx") || filename.endsWith(".jsx")
|
|
13
|
+
) {
|
|
14
|
+
var sourcePath = toPosixPath(join(projectRoot, filename)), source = `${data}`, out = await extractToClassNames({
|
|
15
|
+
extractor,
|
|
16
|
+
options: {
|
|
17
|
+
// @ts-ignore
|
|
18
|
+
platform: "web",
|
|
19
|
+
...config.tamagui
|
|
20
|
+
},
|
|
21
|
+
shouldPrintDebug: source.startsWith("// debug-verbose") ? "verbose" : source.startsWith("// debug"),
|
|
22
|
+
source,
|
|
23
|
+
sourcePath
|
|
44
24
|
});
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
return t[1];
|
|
54
|
-
},
|
|
55
|
-
trys: [],
|
|
56
|
-
ops: []
|
|
57
|
-
};
|
|
58
|
-
return g = {
|
|
59
|
-
next: verb(0),
|
|
60
|
-
throw: verb(1),
|
|
61
|
-
return: verb(2)
|
|
62
|
-
}, typeof Symbol == "function" && (g[Symbol.iterator] = function() {
|
|
63
|
-
return this;
|
|
64
|
-
}), g;
|
|
65
|
-
function verb(n) {
|
|
66
|
-
return function(v) {
|
|
67
|
-
return step([
|
|
68
|
-
n,
|
|
69
|
-
v
|
|
70
|
-
]);
|
|
71
|
-
};
|
|
72
|
-
}
|
|
73
|
-
function step(op) {
|
|
74
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
75
|
-
for (; _; ) try {
|
|
76
|
-
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) return t;
|
|
77
|
-
switch (y = 0, t && (op = [
|
|
78
|
-
op[0] & 2,
|
|
79
|
-
t.value
|
|
80
|
-
]), op[0]) {
|
|
81
|
-
case 0:
|
|
82
|
-
case 1:
|
|
83
|
-
t = op;
|
|
84
|
-
break;
|
|
85
|
-
case 4:
|
|
86
|
-
return _.label++, {
|
|
87
|
-
value: op[1],
|
|
88
|
-
done: !1
|
|
89
|
-
};
|
|
90
|
-
case 5:
|
|
91
|
-
_.label++, y = op[1], op = [
|
|
92
|
-
0
|
|
93
|
-
];
|
|
94
|
-
continue;
|
|
95
|
-
case 7:
|
|
96
|
-
op = _.ops.pop(), _.trys.pop();
|
|
97
|
-
continue;
|
|
98
|
-
default:
|
|
99
|
-
if (t = _.trys, !(t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
|
100
|
-
_ = 0;
|
|
101
|
-
continue;
|
|
102
|
-
}
|
|
103
|
-
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
|
104
|
-
_.label = op[1];
|
|
105
|
-
break;
|
|
106
|
-
}
|
|
107
|
-
if (op[0] === 6 && _.label < t[1]) {
|
|
108
|
-
_.label = t[1], t = op;
|
|
109
|
-
break;
|
|
110
|
-
}
|
|
111
|
-
if (t && _.label < t[2]) {
|
|
112
|
-
_.label = t[2], _.ops.push(op);
|
|
113
|
-
break;
|
|
114
|
-
}
|
|
115
|
-
t[2] && _.ops.pop(), _.trys.pop();
|
|
116
|
-
continue;
|
|
117
|
-
}
|
|
118
|
-
op = body.call(thisArg, _);
|
|
119
|
-
} catch (e) {
|
|
120
|
-
op = [
|
|
121
|
-
6,
|
|
122
|
-
e
|
|
123
|
-
], y = 0;
|
|
124
|
-
} finally {
|
|
125
|
-
f = t = 0;
|
|
25
|
+
if (out?.styles) {
|
|
26
|
+
var _process_env_DEBUG, tmpDir = join(projectRoot, ".tamagui", "css"), outStylePath = toPosixPath(join(tmpDir, `${filename}`.replace(/[^a-zA-Z0-9]/gi, "") + ".css"));
|
|
27
|
+
!((_process_env_DEBUG = process.env.DEBUG) === null || _process_env_DEBUG === void 0) && _process_env_DEBUG.includes("tamagui") && console.info(" Outputting CSS file:", outStylePath);
|
|
28
|
+
var existsAlready = await pathExists(outStylePath);
|
|
29
|
+
return await outputFile(outStylePath, out.styles, "utf-8"), existsAlready || await new Promise(function(res) {
|
|
30
|
+
return setTimeout(res, 400);
|
|
31
|
+
}), transformer(config, projectRoot, filename, Buffer.from(`${out.js}
|
|
32
|
+
require("${outStylePath}")`, "utf-8"), options);
|
|
126
33
|
}
|
|
127
|
-
if (op[0] & 5) throw op[1];
|
|
128
|
-
return {
|
|
129
|
-
value: op[0] ? op[1] : void 0,
|
|
130
|
-
done: !0
|
|
131
|
-
};
|
|
132
34
|
}
|
|
133
|
-
|
|
134
|
-
var extractor = createExtractor();
|
|
135
|
-
function transform(config, projectRoot, filename, data, options) {
|
|
136
|
-
return _transform.apply(this, arguments);
|
|
137
|
-
}
|
|
138
|
-
function _transform() {
|
|
139
|
-
return _transform = _async_to_generator(function(config, projectRoot, filename, data, options) {
|
|
140
|
-
var ogPath, transformer, sourcePath, source, out, _process_env_DEBUG, tmpDir, outStylePath, existsAlready;
|
|
141
|
-
return _ts_generator(this, function(_state) {
|
|
142
|
-
switch (_state.label) {
|
|
143
|
-
case 0:
|
|
144
|
-
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") ? [
|
|
145
|
-
2,
|
|
146
|
-
transformer(config, projectRoot, filename, data, options)
|
|
147
|
-
] : (
|
|
148
|
-
// could by a styled() call:
|
|
149
|
-
filename.endsWith(".ts") || filename.endsWith(".tsx") || filename.endsWith(".jsx") ? (sourcePath = toPosixPath(join(projectRoot, filename)), source = "".concat(data), [
|
|
150
|
-
4,
|
|
151
|
-
extractToClassNames({
|
|
152
|
-
extractor,
|
|
153
|
-
options: _object_spread({
|
|
154
|
-
// @ts-ignore
|
|
155
|
-
platform: "web"
|
|
156
|
-
}, config.tamagui),
|
|
157
|
-
shouldPrintDebug: source.startsWith("// debug-verbose") ? "verbose" : source.startsWith("// debug"),
|
|
158
|
-
source,
|
|
159
|
-
sourcePath
|
|
160
|
-
})
|
|
161
|
-
]) : [
|
|
162
|
-
3,
|
|
163
|
-
6
|
|
164
|
-
]
|
|
165
|
-
);
|
|
166
|
-
case 1:
|
|
167
|
-
return out = _state.sent(), // just write it out to our tmp dir and require it for metro to do the rest of the css work
|
|
168
|
-
out != null && out.styles ? (tmpDir = join(projectRoot, ".tamagui", "css"), outStylePath = toPosixPath(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), [
|
|
169
|
-
4,
|
|
170
|
-
pathExists(outStylePath)
|
|
171
|
-
]) : [
|
|
172
|
-
3,
|
|
173
|
-
6
|
|
174
|
-
];
|
|
175
|
-
case 2:
|
|
176
|
-
return existsAlready = _state.sent(), [
|
|
177
|
-
4,
|
|
178
|
-
outputFile(outStylePath, out.styles, "utf-8")
|
|
179
|
-
];
|
|
180
|
-
case 3:
|
|
181
|
-
return _state.sent(), existsAlready ? [
|
|
182
|
-
3,
|
|
183
|
-
5
|
|
184
|
-
] : [
|
|
185
|
-
4,
|
|
186
|
-
new Promise(function(res) {
|
|
187
|
-
return setTimeout(res, 400);
|
|
188
|
-
})
|
|
189
|
-
];
|
|
190
|
-
case 4:
|
|
191
|
-
_state.sent(), _state.label = 5;
|
|
192
|
-
case 5:
|
|
193
|
-
return [
|
|
194
|
-
2,
|
|
195
|
-
transformer(config, projectRoot, filename, Buffer.from("".concat(out.js, `
|
|
196
|
-
require("`).concat(outStylePath, '")'), "utf-8"), options)
|
|
197
|
-
];
|
|
198
|
-
case 6:
|
|
199
|
-
return [
|
|
200
|
-
2,
|
|
201
|
-
transformer(config, projectRoot, filename, data, options)
|
|
202
|
-
];
|
|
203
|
-
}
|
|
204
|
-
});
|
|
205
|
-
}), _transform.apply(this, arguments);
|
|
35
|
+
return transformer(config, projectRoot, filename, data, options);
|
|
206
36
|
}
|
|
207
37
|
function toPosixPath(path) {
|
|
208
38
|
return path.split(sep).join(posix.sep);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/Users/n8/tamagui/code/compiler/metro-plugin/src/transformer.ts"],
|
|
4
|
-
"mappings": "AAAA,SAASA,YAAYC,kBAAkB;AAMvC,OAAOC,YAAY;AACnB,SAASC,MAAMC,OAAOC,WAAW;AAGjC,SAASC,iBAAiBC,2BAA2B
|
|
5
|
-
"names": ["outputFile", "pathExists", "worker", "join", "posix", "sep", "createExtractor", "extractToClassNames", "extractor", "transform", "config", "projectRoot", "filename", "data", "options", "ogPath", "
|
|
4
|
+
"mappings": "AAAA,SAASA,YAAYC,kBAAkB;AAMvC,OAAOC,YAAY;AACnB,SAASC,MAAMC,OAAOC,WAAW;AAGjC,SAASC,iBAAiBC,2BAA2B;AAOrD,IAAMC,YAAYF,gBAAAA;AAElB,eAAsBG,UACpBC,QACAC,aACAC,UACAC,MACAC,SAA2B;AAE3B,MAAMC,SAASL,OAAO,mBAAsBA,OAAOM,iBAC7CC,cAAcF,SAASG,QAAQH,MAAAA,EAAQN,YAAYP,OAAOO;AAEhE,MACEC,OAAOS,QAAQC,WACfN,QAAQO,aAAa,SACrBP,QAAQQ,SAAS,WACjBV,SAASW,SAAS,cAAA;AAElB,WAAON,YAAYP,QAAQC,aAAaC,UAAUC,MAAMC,OAAAA;AAG1D;;IAEEF,SAASY,SAAS,KAAA,KAClBZ,SAASY,SAAS,MAAA,KAClBZ,SAASY,SAAS,MAAA;IAClB;AACA,QAAMC,aAAaC,YAAYvB,KAAKQ,aAAaC,QAAAA,CAAAA,GAG3Ce,SAAS,GAAGd,IAAAA,IACZe,MAAM,MAAMrB,oBAAoB;MACpCC;MACAM,SAAS;;QAEPO,UAAU;QACV,GAAGX,OAAOS;MACZ;MACAU,kBAAkBF,OAAOG,WAAW,kBAAA,IAChC,YACAH,OAAOG,WAAW,UAAA;MACtBH;MACAF;IACF,CAAA;AAGA,QAAIG,KAAKG,QAAQ;UAKXC,oBAJEC,SAAS9B,KAAKQ,aAAa,YAAY,KAAA,GACvCuB,eAAeR,YACnBvB,KAAK8B,QAAQ,GAAGrB,QAAAA,GAAWuB,QAAQ,kBAAkB,EAAA,IAAM,MAAA,CAAA;AAE7D,MAAIH,wBAAAA,QAAQI,IAAIC,WAAK,QAAjBL,uBAAAA,WAAAA,mBAAmBT,SAAS,SAAA,KAC9Be,QAAQC,KAAK,yBAAyBL,YAAAA;AAGxC,UAAMM,gBAAgB,MAAMvC,WAAWiC,YAAAA;AAEvC,mBAAMlC,WAAWkC,cAAcN,IAAIG,QAAQ,OAAA,GAEtCS,iBAEH,MAAM,IAAIC,QAAQ,SAACC,KAAAA;eAAQC,WAAWD,KAAK,GAAA;UAGtCzB,YACLP,QACAC,aACAC,UACAgC,OAAOC,KAAK,GAAGjB,IAAIkB,EAAE;WAAcZ,YAAAA,MAAkB,OAAA,GACrDpB,OAAAA;IAEJ;EACF;AAEA,SAAOG,YAAYP,QAAQC,aAAaC,UAAUC,MAAMC,OAAAA;AAC1D;AAEA,SAASY,YAAYqB,MAAY;AAC/B,SAAOA,KAAKC,MAAM3C,GAAAA,EAAKF,KAAKC,MAAMC,GAAG;AACvC;",
|
|
5
|
+
"names": ["outputFile", "pathExists", "worker", "join", "posix", "sep", "createExtractor", "extractToClassNames", "extractor", "transform", "config", "projectRoot", "filename", "data", "options", "ogPath", "transformerPath", "transformer", "require", "tamagui", "disable", "platform", "type", "includes", "endsWith", "sourcePath", "toPosixPath", "source", "out", "shouldPrintDebug", "startsWith", "styles", "process", "tmpDir", "outStylePath", "replace", "env", "DEBUG", "console", "info", "existsAlready", "Promise", "res", "setTimeout", "Buffer", "from", "js", "path", "split"]
|
|
6
6
|
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { outputFile, pathExists } from "fs-extra";
|
|
2
|
+
import worker from "metro-transform-worker";
|
|
3
|
+
import { join, posix, sep } from "node:path";
|
|
4
|
+
import { createExtractor, extractToClassNames } from "@tamagui/static";
|
|
5
|
+
var extractor = createExtractor();
|
|
6
|
+
async function transform(config, projectRoot, filename, data, options) {
|
|
7
|
+
var ogPath = config.ogTransformPath || config.transformerPath,
|
|
8
|
+
transformer = ogPath ? require(ogPath).transform : worker.transform;
|
|
9
|
+
if (config.tamagui.disable || options.platform !== "web" || options.type === "asset" || filename.includes("node_modules")) return transformer(config, projectRoot, filename, data, options);
|
|
10
|
+
if (
|
|
11
|
+
// could by a styled() call:
|
|
12
|
+
filename.endsWith(".ts") || filename.endsWith(".tsx") || filename.endsWith(".jsx")) {
|
|
13
|
+
var sourcePath = toPosixPath(join(projectRoot, filename)),
|
|
14
|
+
source = `${data}`,
|
|
15
|
+
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
|
|
25
|
+
});
|
|
26
|
+
if (out?.styles) {
|
|
27
|
+
var _process_env_DEBUG,
|
|
28
|
+
tmpDir = join(projectRoot, ".tamagui", "css"),
|
|
29
|
+
outStylePath = toPosixPath(join(tmpDir, `${filename}`.replace(/[^a-zA-Z0-9]/gi, "") + ".css"));
|
|
30
|
+
!((_process_env_DEBUG = process.env.DEBUG) === null || _process_env_DEBUG === void 0) && _process_env_DEBUG.includes("tamagui") && console.info(" Outputting CSS file:", outStylePath);
|
|
31
|
+
var existsAlready = await pathExists(outStylePath);
|
|
32
|
+
return await outputFile(outStylePath, out.styles, "utf-8"), existsAlready || (await new Promise(function (res) {
|
|
33
|
+
return setTimeout(res, 400);
|
|
34
|
+
})), transformer(config, projectRoot, filename, Buffer.from(`${out.js}
|
|
35
|
+
require("${outStylePath}")`, "utf-8"), options);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
return transformer(config, projectRoot, filename, data, options);
|
|
39
|
+
}
|
|
40
|
+
function toPosixPath(path) {
|
|
41
|
+
return path.split(sep).join(posix.sep);
|
|
42
|
+
}
|
|
43
|
+
export { transform };
|
|
44
|
+
//# sourceMappingURL=transformer.native.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["outputFile","pathExists","worker","join","posix","sep","createExtractor","extractToClassNames","extractor","transform","config","projectRoot","filename","data","options","ogPath","ogTransformPath","transformerPath","transformer","require","tamagui","disable","platform","type","includes","endsWith","sourcePath","toPosixPath","source","out","shouldPrintDebug","startsWith","styles","_process_env_DEBUG","tmpDir","outStylePath","replace","process","env","DEBUG","console","info","existsAlready","Promise","res","setTimeout","Buffer","from","js","path","split"],"sources":["../../src/transformer.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,UAAA,EAAYC,UAAA,QAAkB;AAMvC,OAAOC,MAAA,MAAY;AACnB,SAASC,IAAA,EAAMC,KAAA,EAAOC,GAAA,QAAW;AAGjC,SAASC,eAAA,EAAiBC,mBAAA,QAA2B;AAOrD,IAAAC,SAAM,GAAAF,eAAY;AAElB,eAAsBG,UACpBC,MAAA,EACAC,WAAA,EACAC,QAAA,EACAC,IAAA,EACAC,OAAA,EAC4B;EAC5B,IAAAC,MAAM,GAAAL,MAAS,CAAAM,eAAO,IAAAN,MAAsB,CAAAO,eAAO;IAAAC,WAC7C,GAAAH,MAAc,GAAAI,OAAS,CAAAJ,MAAQ,EAAMN,SAAE,GAAAP,MAAY,CAAAO,SAAO;EAEhE,IACEC,MAAA,CAAOU,OAAA,CAAQC,OAAA,IACfP,OAAA,CAAQQ,QAAA,KAAa,SACrBR,OAAA,CAAQS,IAAA,KAAS,WACjBX,QAAA,CAASY,QAAA,CAAS,cAAc,GAEhC,OAAON,WAAA,CAAYR,MAAA,EAAQC,WAAA,EAAaC,QAAA,EAAUC,IAAA,EAAMC,OAAO;EAGjE;EAAA;EAEEF,QAAA,CAASa,QAAA,CAAS,KAAK,KACvBb,QAAA,CAASa,QAAA,CAAS,MAAM,KACxBb,QAAA,CAASa,QAAA,CAAS,MAAM,GACxB;IACA,IAAAC,UAAM,GAAAC,WAAa,CAAAxB,IAAY,CAAAQ,WAAK,EAAAC,QAAa,EAAQ;MAACgB,MAGpD,MAASf,IAAG,EAAI;MAAAgB,GAChB,SAAMtB,mBAAM;QAChBC,SAAA;QACAM,OAAA,EAAS;UAAA;UAEPQ,QAAA,EAAU;UACV,GAAGZ,MAAA,CAAOU;QACZ;QACAU,gBAAA,EAAkBF,MAAA,CAAOG,UAAA,CAAW,kBAAkB,IAClD,YACAH,MAAA,CAAOG,UAAA,CAAW,UAAU;QAChCH,MAAA;QACAF;MACF,CAAC;IAGD,IAAIG,GAAA,EAAKG,MAAA,EAAQ;MACf,IAAAC,kBAAoB;QAAAC,MAAA,GAAa/B,IAAA,CAAAQ,WAAY,EAAK,UAC5C,OAAe;QAAAwB,YAAA,GAAAR,WAAA,CAAAxB,IAAA,CAAA+B,MAAA,KAAAtB,QAAA,GAAAwB,OAAA;MAAA,EACnB,CAAAH,kBAAgB,GAAAI,OAAW,CAAAC,GAAA,CAAAC,KAAQ,cAAkBN,kBAAY,gBAAAA,kBAAA,CAAAT,QAAA,eAAAgB,OAAA,CAAAC,IAAA,0BAAAN,YAAA;MACnE,IAAAO,aAAA,SAAAzC,UAAA,CAAAkC,YAAA;MACI,aAAYnC,UAAO,CAAAmC,YAAS,EAASN,GAAA,CACvCG,MAAA,EAAQ,OAAK,GAAAU,aAAA,WAAyB,IAAAC,OAAY,WAAAC,GAAA;QAGpD,OAAMC,UAAA,CAAAD,GAAgB,KAAM;MAE5B,KAAA1B,WAAM,CAAAR,MAAA,EAAWC,WAAA,EAAAC,QAAkB,EAAAkC,MAAQ,CAAAC,IAAO,IAE7ClB,GAAA,CAAAmB,EAAA;AAKE,WACLb,YAAA,gBAAArB,OAAA;IAAA;EACA;EACA,OACAI,WAAY,CAAAR,MAAO,EAAEC,WAAA,EAAAC,QAAA,EAAAC,IAAA,EAAAC,OAAA;AAAA;AAAuC,SAC5Da,YAAAsB,IAAA;EAAA,OACFA,IAAA,CAAAC,KAAA,CAAA7C,GAAA,EAAAF,IAAA,CAAAC,KAAA,CAAAC,GAAA;AAAA;AACF,SAGFI,SAAO","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/metro-plugin",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.111.0",
|
|
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.
|
|
26
|
+
"@tamagui/static": "1.111.0",
|
|
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.
|
|
33
|
+
"@tamagui/build": "1.111.0"
|
|
34
34
|
}
|
|
35
35
|
}
|