@tamagui/cli 1.16.3 → 1.16.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/doctor.js +31 -0
- package/dist/cjs/doctor.js.map +6 -0
- package/dist/cjs/lint.js +2 -0
- package/dist/cjs/lint.js.map +6 -0
- package/dist/cjs/upgrade.js +115 -0
- package/dist/cjs/upgrade.js.map +6 -0
- package/dist/esm/doctor.js +7 -0
- package/dist/esm/doctor.js.map +6 -0
- package/dist/esm/doctor.mjs +7 -0
- package/dist/esm/doctor.mjs.map +6 -0
- package/dist/esm/lint.js +1 -0
- package/dist/esm/lint.js.map +6 -0
- package/dist/esm/lint.mjs +1 -0
- package/dist/esm/lint.mjs.map +6 -0
- package/dist/esm/upgrade.js +78 -0
- package/dist/esm/upgrade.js.map +6 -0
- package/dist/esm/upgrade.mjs +78 -0
- package/dist/esm/upgrade.mjs.map +6 -0
- package/package.json +5 -5
- package/types/doctor.d.ts.map +1 -0
- package/types/lint.d.ts.map +1 -0
- package/types/upgrade.d.ts.map +1 -0
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
20
|
+
var doctor_exports = {};
|
|
21
|
+
__export(doctor_exports, {
|
|
22
|
+
doctor: () => doctor
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(doctor_exports);
|
|
25
|
+
async function doctor(options) {
|
|
26
|
+
}
|
|
27
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
28
|
+
0 && (module.exports = {
|
|
29
|
+
doctor
|
|
30
|
+
});
|
|
31
|
+
//# sourceMappingURL=doctor.js.map
|
package/dist/cjs/lint.js
ADDED
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var upgrade_exports = {};
|
|
30
|
+
__export(upgrade_exports, {
|
|
31
|
+
DEPENDENCY_TYPES: () => DEPENDENCY_TYPES,
|
|
32
|
+
install: () => install,
|
|
33
|
+
upgrade: () => upgrade,
|
|
34
|
+
writePackage: () => writePackage
|
|
35
|
+
});
|
|
36
|
+
module.exports = __toCommonJS(upgrade_exports);
|
|
37
|
+
var import_path = __toESM(require("path"));
|
|
38
|
+
var import_get_packages = require("@manypkg/get-packages");
|
|
39
|
+
var import_chalk = __toESM(require("chalk"));
|
|
40
|
+
var import_detect_indent = __toESM(require("detect-indent"));
|
|
41
|
+
var fs = __toESM(require("fs-extra"));
|
|
42
|
+
const DEPENDENCY_TYPES = [
|
|
43
|
+
"dependencies",
|
|
44
|
+
"devDependencies",
|
|
45
|
+
"optionalDependencies",
|
|
46
|
+
"peerDependencies"
|
|
47
|
+
];
|
|
48
|
+
const upgrade = async ({
|
|
49
|
+
version,
|
|
50
|
+
tag = "latest"
|
|
51
|
+
}) => {
|
|
52
|
+
const { $ } = await import("execa");
|
|
53
|
+
const { packages, tool, rootPackage, rootDir } = await (0, import_get_packages.getPackages)(process.cwd());
|
|
54
|
+
const allPackages = rootPackage ? [rootPackage, ...packages] : packages;
|
|
55
|
+
const versionsRaw = (await $`npm view tamagui versions --json`).stdout;
|
|
56
|
+
const versions = JSON.parse(versionsRaw.trim().replaceAll(`
|
|
57
|
+
`, ""));
|
|
58
|
+
const newVersion = versions[versions.length - 1];
|
|
59
|
+
console.log(import_chalk.default.yellow(` Updating to version ${newVersion}`));
|
|
60
|
+
const out = await Promise.all(
|
|
61
|
+
allPackages.flatMap(async (pkg) => {
|
|
62
|
+
const { packageJson } = pkg;
|
|
63
|
+
let hasUpgrades = false;
|
|
64
|
+
for (const t of DEPENDENCY_TYPES) {
|
|
65
|
+
const deps = packageJson[t];
|
|
66
|
+
if (deps) {
|
|
67
|
+
for (const pkgName of Object.keys(deps)) {
|
|
68
|
+
if (isTamaguiDep(pkgName)) {
|
|
69
|
+
packageJson[pkgName] = version;
|
|
70
|
+
hasUpgrades = true;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
if (hasUpgrades) {
|
|
76
|
+
console.log(".");
|
|
77
|
+
return true;
|
|
78
|
+
}
|
|
79
|
+
})
|
|
80
|
+
);
|
|
81
|
+
console.log(import_chalk.default.yellow(` Updated ${out.length} package.jsons, installing...`));
|
|
82
|
+
await install(tool.type, rootDir);
|
|
83
|
+
};
|
|
84
|
+
function isTamaguiDep(pkgName) {
|
|
85
|
+
return pkgName.startsWith("@tamagui/") || pkgName === "tamagui" || pkgName === "react-native-web-lite" || pkgName === "tamagui-loader";
|
|
86
|
+
}
|
|
87
|
+
async function writePackage(pkg) {
|
|
88
|
+
let pkgRaw = await fs.readFile(import_path.default.join(pkg.dir, "package.json"), "utf-8");
|
|
89
|
+
let indent = (0, import_detect_indent.default)(pkgRaw).indent || " ";
|
|
90
|
+
return fs.writeFile(
|
|
91
|
+
import_path.default.join(pkg.dir, "package.json"),
|
|
92
|
+
JSON.stringify(pkg.packageJson, null, indent) + (pkgRaw.endsWith("\n") ? "\n" : "")
|
|
93
|
+
);
|
|
94
|
+
}
|
|
95
|
+
async function install(toolType, cwd) {
|
|
96
|
+
const cliRunners = {
|
|
97
|
+
lerna: "lerna",
|
|
98
|
+
pnpm: "pnpm",
|
|
99
|
+
root: "yarn",
|
|
100
|
+
rush: "rushx",
|
|
101
|
+
yarn: "yarn"
|
|
102
|
+
};
|
|
103
|
+
const { $ } = await import("execa");
|
|
104
|
+
const cmd = `${cliRunners[toolType]} ${toolType === "pnpm" ? "install" : toolType === "lerna" ? `bootstrap --since HEAD` : ""}`;
|
|
105
|
+
console.log(`running ${cmd}`);
|
|
106
|
+
await $`${cmd}`;
|
|
107
|
+
}
|
|
108
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
109
|
+
0 && (module.exports = {
|
|
110
|
+
DEPENDENCY_TYPES,
|
|
111
|
+
install,
|
|
112
|
+
upgrade,
|
|
113
|
+
writePackage
|
|
114
|
+
});
|
|
115
|
+
//# sourceMappingURL=upgrade.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/upgrade.ts"],
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,kBAAiB;AAEjB,0BAA4B;AAE5B,mBAAkB;AAClB,2BAAyB;AACzB,SAAoB;AAEb,MAAM,mBAAmB;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEO,MAAM,UAAU,OAAO;AAAA,EAC5B;AAAA,EACA,MAAM;AACR,MAGM;AACJ,QAAM,EAAE,EAAE,IAAI,MAAM,OAAO,OAAO;AAElC,QAAM,EAAE,UAAU,MAAM,aAAa,QAAQ,IAAI,UAAM,iCAAY,QAAQ,IAAI,CAAC;AAEhF,QAAM,cAAc,cAAc,CAAC,aAAa,GAAG,QAAQ,IAAI;AAE/D,QAAM,eAAe,MAAM,qCAAqC;AAChE,QAAM,WAAW,KAAK,MAAM,YAAY,KAAK,EAAE,WAAW;AAAA,GAAM,EAAE,CAAC;AACnE,QAAM,aAAa,SAAS,SAAS,SAAS,CAAC;AAE/C,UAAQ,IAAI,aAAAA,QAAM,OAAO,yBAAyB,YAAY,CAAC;AAE/D,QAAM,MAAM,MAAM,QAAQ;AAAA,IACxB,YAAY,QAAQ,OAAO,QAAQ;AACjC,YAAM,EAAE,YAAY,IAAI;AACxB,UAAI,cAAc;AAElB,iBAAW,KAAK,kBAAkB;AAChC,cAAM,OAAO,YAAY,CAAC;AAC1B,YAAI,MAAM;AACR,qBAAW,WAAW,OAAO,KAAK,IAAI,GAAG;AACvC,gBAAI,aAAa,OAAO,GAAG;AACzB,0BAAY,OAAO,IAAI;AACvB,4BAAc;AAAA,YAChB;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAEA,UAAI,aAAa;AACf,gBAAQ,IAAI,GAAG;AAEf,eAAO;AAAA,MACT;AAAA,IACF,CAAC;AAAA,EACH;AAEA,UAAQ,IAAI,aAAAA,QAAM,OAAO,aAAa,IAAI,qCAAqC,CAAC;AAEhF,QAAM,QAAQ,KAAK,MAAM,OAAO;AAClC;AAEA,SAAS,aAAa,SAAiB;AACrC,SACE,QAAQ,WAAW,WAAW,KAC9B,YAAY,aACZ,YAAY,2BACZ,YAAY;AAEhB;AAEA,eAAsB,aAAa,KAAc;AAC/C,MAAI,SAAS,MAAM,GAAG,SAAS,YAAAC,QAAK,KAAK,IAAI,KAAK,cAAc,GAAG,OAAO;AAC1E,MAAI,aAAS,qBAAAC,SAAa,MAAM,EAAE,UAAU;AAC5C,SAAO,GAAG;AAAA,IACR,YAAAD,QAAK,KAAK,IAAI,KAAK,cAAc;AAAA,IACjC,KAAK,UAAU,IAAI,aAAa,MAAM,MAAM,KAAK,OAAO,SAAS,IAAI,IAAI,OAAO;AAAA,EAClF;AACF;AAEA,eAAsB,QAAQ,UAAkB,KAAa;AAC3D,QAAM,aAAqC;AAAA,IACzC,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACR;AAEA,QAAM,EAAE,EAAE,IAAI,MAAM,OAAO,OAAO;AAClC,QAAM,MAAM,GAAG,WAAW,QAAQ,KAChC,aAAa,SAAS,YAAY,aAAa,UAAU,2BAA2B;AAEtF,UAAQ,IAAI,WAAW,KAAK;AAC5B,QAAM,IAAI;AACZ;",
|
|
5
|
+
"names": ["chalk", "path", "detectIndent"]
|
|
6
|
+
}
|
package/dist/esm/lint.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=lint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=lint.mjs.map
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import path from "path";
|
|
2
|
+
import { getPackages } from "@manypkg/get-packages";
|
|
3
|
+
import chalk from "chalk";
|
|
4
|
+
import detectIndent from "detect-indent";
|
|
5
|
+
import * as fs from "fs-extra";
|
|
6
|
+
const DEPENDENCY_TYPES = [
|
|
7
|
+
"dependencies",
|
|
8
|
+
"devDependencies",
|
|
9
|
+
"optionalDependencies",
|
|
10
|
+
"peerDependencies"
|
|
11
|
+
];
|
|
12
|
+
const upgrade = async ({
|
|
13
|
+
version,
|
|
14
|
+
tag = "latest"
|
|
15
|
+
}) => {
|
|
16
|
+
const { $ } = await import("execa");
|
|
17
|
+
const { packages, tool, rootPackage, rootDir } = await getPackages(process.cwd());
|
|
18
|
+
const allPackages = rootPackage ? [rootPackage, ...packages] : packages;
|
|
19
|
+
const versionsRaw = (await $`npm view tamagui versions --json`).stdout;
|
|
20
|
+
const versions = JSON.parse(versionsRaw.trim().replaceAll(`
|
|
21
|
+
`, ""));
|
|
22
|
+
const newVersion = versions[versions.length - 1];
|
|
23
|
+
console.log(chalk.yellow(` Updating to version ${newVersion}`));
|
|
24
|
+
const out = await Promise.all(
|
|
25
|
+
allPackages.flatMap(async (pkg) => {
|
|
26
|
+
const { packageJson } = pkg;
|
|
27
|
+
let hasUpgrades = false;
|
|
28
|
+
for (const t of DEPENDENCY_TYPES) {
|
|
29
|
+
const deps = packageJson[t];
|
|
30
|
+
if (deps) {
|
|
31
|
+
for (const pkgName of Object.keys(deps)) {
|
|
32
|
+
if (isTamaguiDep(pkgName)) {
|
|
33
|
+
packageJson[pkgName] = version;
|
|
34
|
+
hasUpgrades = true;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
if (hasUpgrades) {
|
|
40
|
+
console.log(".");
|
|
41
|
+
return true;
|
|
42
|
+
}
|
|
43
|
+
})
|
|
44
|
+
);
|
|
45
|
+
console.log(chalk.yellow(` Updated ${out.length} package.jsons, installing...`));
|
|
46
|
+
await install(tool.type, rootDir);
|
|
47
|
+
};
|
|
48
|
+
function isTamaguiDep(pkgName) {
|
|
49
|
+
return pkgName.startsWith("@tamagui/") || pkgName === "tamagui" || pkgName === "react-native-web-lite" || pkgName === "tamagui-loader";
|
|
50
|
+
}
|
|
51
|
+
async function writePackage(pkg) {
|
|
52
|
+
let pkgRaw = await fs.readFile(path.join(pkg.dir, "package.json"), "utf-8");
|
|
53
|
+
let indent = detectIndent(pkgRaw).indent || " ";
|
|
54
|
+
return fs.writeFile(
|
|
55
|
+
path.join(pkg.dir, "package.json"),
|
|
56
|
+
JSON.stringify(pkg.packageJson, null, indent) + (pkgRaw.endsWith("\n") ? "\n" : "")
|
|
57
|
+
);
|
|
58
|
+
}
|
|
59
|
+
async function install(toolType, cwd) {
|
|
60
|
+
const cliRunners = {
|
|
61
|
+
lerna: "lerna",
|
|
62
|
+
pnpm: "pnpm",
|
|
63
|
+
root: "yarn",
|
|
64
|
+
rush: "rushx",
|
|
65
|
+
yarn: "yarn"
|
|
66
|
+
};
|
|
67
|
+
const { $ } = await import("execa");
|
|
68
|
+
const cmd = `${cliRunners[toolType]} ${toolType === "pnpm" ? "install" : toolType === "lerna" ? `bootstrap --since HEAD` : ""}`;
|
|
69
|
+
console.log(`running ${cmd}`);
|
|
70
|
+
await $`${cmd}`;
|
|
71
|
+
}
|
|
72
|
+
export {
|
|
73
|
+
DEPENDENCY_TYPES,
|
|
74
|
+
install,
|
|
75
|
+
upgrade,
|
|
76
|
+
writePackage
|
|
77
|
+
};
|
|
78
|
+
//# sourceMappingURL=upgrade.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/upgrade.ts"],
|
|
4
|
+
"mappings": "AAEA,OAAO,UAAU;AAEjB,SAAS,mBAAmB;AAE5B,OAAO,WAAW;AAClB,OAAO,kBAAkB;AACzB,YAAY,QAAQ;AAEb,MAAM,mBAAmB;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEO,MAAM,UAAU,OAAO;AAAA,EAC5B;AAAA,EACA,MAAM;AACR,MAGM;AACJ,QAAM,EAAE,EAAE,IAAI,MAAM,OAAO,OAAO;AAElC,QAAM,EAAE,UAAU,MAAM,aAAa,QAAQ,IAAI,MAAM,YAAY,QAAQ,IAAI,CAAC;AAEhF,QAAM,cAAc,cAAc,CAAC,aAAa,GAAG,QAAQ,IAAI;AAE/D,QAAM,eAAe,MAAM,qCAAqC;AAChE,QAAM,WAAW,KAAK,MAAM,YAAY,KAAK,EAAE,WAAW;AAAA,GAAM,EAAE,CAAC;AACnE,QAAM,aAAa,SAAS,SAAS,SAAS,CAAC;AAE/C,UAAQ,IAAI,MAAM,OAAO,yBAAyB,YAAY,CAAC;AAE/D,QAAM,MAAM,MAAM,QAAQ;AAAA,IACxB,YAAY,QAAQ,OAAO,QAAQ;AACjC,YAAM,EAAE,YAAY,IAAI;AACxB,UAAI,cAAc;AAElB,iBAAW,KAAK,kBAAkB;AAChC,cAAM,OAAO,YAAY,CAAC;AAC1B,YAAI,MAAM;AACR,qBAAW,WAAW,OAAO,KAAK,IAAI,GAAG;AACvC,gBAAI,aAAa,OAAO,GAAG;AACzB,0BAAY,OAAO,IAAI;AACvB,4BAAc;AAAA,YAChB;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAEA,UAAI,aAAa;AACf,gBAAQ,IAAI,GAAG;AAEf,eAAO;AAAA,MACT;AAAA,IACF,CAAC;AAAA,EACH;AAEA,UAAQ,IAAI,MAAM,OAAO,aAAa,IAAI,qCAAqC,CAAC;AAEhF,QAAM,QAAQ,KAAK,MAAM,OAAO;AAClC;AAEA,SAAS,aAAa,SAAiB;AACrC,SACE,QAAQ,WAAW,WAAW,KAC9B,YAAY,aACZ,YAAY,2BACZ,YAAY;AAEhB;AAEA,eAAsB,aAAa,KAAc;AAC/C,MAAI,SAAS,MAAM,GAAG,SAAS,KAAK,KAAK,IAAI,KAAK,cAAc,GAAG,OAAO;AAC1E,MAAI,SAAS,aAAa,MAAM,EAAE,UAAU;AAC5C,SAAO,GAAG;AAAA,IACR,KAAK,KAAK,IAAI,KAAK,cAAc;AAAA,IACjC,KAAK,UAAU,IAAI,aAAa,MAAM,MAAM,KAAK,OAAO,SAAS,IAAI,IAAI,OAAO;AAAA,EAClF;AACF;AAEA,eAAsB,QAAQ,UAAkB,KAAa;AAC3D,QAAM,aAAqC;AAAA,IACzC,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACR;AAEA,QAAM,EAAE,EAAE,IAAI,MAAM,OAAO,OAAO;AAClC,QAAM,MAAM,GAAG,WAAW,QAAQ,KAChC,aAAa,SAAS,YAAY,aAAa,UAAU,2BAA2B;AAEtF,UAAQ,IAAI,WAAW,KAAK;AAC5B,QAAM,IAAI;AACZ;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import path from "path";
|
|
2
|
+
import { getPackages } from "@manypkg/get-packages";
|
|
3
|
+
import chalk from "chalk";
|
|
4
|
+
import detectIndent from "detect-indent";
|
|
5
|
+
import * as fs from "fs-extra";
|
|
6
|
+
const DEPENDENCY_TYPES = [
|
|
7
|
+
"dependencies",
|
|
8
|
+
"devDependencies",
|
|
9
|
+
"optionalDependencies",
|
|
10
|
+
"peerDependencies"
|
|
11
|
+
];
|
|
12
|
+
const upgrade = async ({
|
|
13
|
+
version,
|
|
14
|
+
tag = "latest"
|
|
15
|
+
}) => {
|
|
16
|
+
const { $ } = await import("execa");
|
|
17
|
+
const { packages, tool, rootPackage, rootDir } = await getPackages(process.cwd());
|
|
18
|
+
const allPackages = rootPackage ? [rootPackage, ...packages] : packages;
|
|
19
|
+
const versionsRaw = (await $`npm view tamagui versions --json`).stdout;
|
|
20
|
+
const versions = JSON.parse(versionsRaw.trim().replaceAll(`
|
|
21
|
+
`, ""));
|
|
22
|
+
const newVersion = versions[versions.length - 1];
|
|
23
|
+
console.log(chalk.yellow(` Updating to version ${newVersion}`));
|
|
24
|
+
const out = await Promise.all(
|
|
25
|
+
allPackages.flatMap(async (pkg) => {
|
|
26
|
+
const { packageJson } = pkg;
|
|
27
|
+
let hasUpgrades = false;
|
|
28
|
+
for (const t of DEPENDENCY_TYPES) {
|
|
29
|
+
const deps = packageJson[t];
|
|
30
|
+
if (deps) {
|
|
31
|
+
for (const pkgName of Object.keys(deps)) {
|
|
32
|
+
if (isTamaguiDep(pkgName)) {
|
|
33
|
+
packageJson[pkgName] = version;
|
|
34
|
+
hasUpgrades = true;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
if (hasUpgrades) {
|
|
40
|
+
console.log(".");
|
|
41
|
+
return true;
|
|
42
|
+
}
|
|
43
|
+
})
|
|
44
|
+
);
|
|
45
|
+
console.log(chalk.yellow(` Updated ${out.length} package.jsons, installing...`));
|
|
46
|
+
await install(tool.type, rootDir);
|
|
47
|
+
};
|
|
48
|
+
function isTamaguiDep(pkgName) {
|
|
49
|
+
return pkgName.startsWith("@tamagui/") || pkgName === "tamagui" || pkgName === "react-native-web-lite" || pkgName === "tamagui-loader";
|
|
50
|
+
}
|
|
51
|
+
async function writePackage(pkg) {
|
|
52
|
+
let pkgRaw = await fs.readFile(path.join(pkg.dir, "package.json"), "utf-8");
|
|
53
|
+
let indent = detectIndent(pkgRaw).indent || " ";
|
|
54
|
+
return fs.writeFile(
|
|
55
|
+
path.join(pkg.dir, "package.json"),
|
|
56
|
+
JSON.stringify(pkg.packageJson, null, indent) + (pkgRaw.endsWith("\n") ? "\n" : "")
|
|
57
|
+
);
|
|
58
|
+
}
|
|
59
|
+
async function install(toolType, cwd) {
|
|
60
|
+
const cliRunners = {
|
|
61
|
+
lerna: "lerna",
|
|
62
|
+
pnpm: "pnpm",
|
|
63
|
+
root: "yarn",
|
|
64
|
+
rush: "rushx",
|
|
65
|
+
yarn: "yarn"
|
|
66
|
+
};
|
|
67
|
+
const { $ } = await import("execa");
|
|
68
|
+
const cmd = `${cliRunners[toolType]} ${toolType === "pnpm" ? "install" : toolType === "lerna" ? `bootstrap --since HEAD` : ""}`;
|
|
69
|
+
console.log(`running ${cmd}`);
|
|
70
|
+
await $`${cmd}`;
|
|
71
|
+
}
|
|
72
|
+
export {
|
|
73
|
+
DEPENDENCY_TYPES,
|
|
74
|
+
install,
|
|
75
|
+
upgrade,
|
|
76
|
+
writePackage
|
|
77
|
+
};
|
|
78
|
+
//# sourceMappingURL=upgrade.mjs.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/upgrade.ts"],
|
|
4
|
+
"mappings": "AAEA,OAAO,UAAU;AAEjB,SAAS,mBAAmB;AAE5B,OAAO,WAAW;AAClB,OAAO,kBAAkB;AACzB,YAAY,QAAQ;AAEb,MAAM,mBAAmB;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEO,MAAM,UAAU,OAAO;AAAA,EAC5B;AAAA,EACA,MAAM;AACR,MAGM;AACJ,QAAM,EAAE,EAAE,IAAI,MAAM,OAAO,OAAO;AAElC,QAAM,EAAE,UAAU,MAAM,aAAa,QAAQ,IAAI,MAAM,YAAY,QAAQ,IAAI,CAAC;AAEhF,QAAM,cAAc,cAAc,CAAC,aAAa,GAAG,QAAQ,IAAI;AAE/D,QAAM,eAAe,MAAM,qCAAqC;AAChE,QAAM,WAAW,KAAK,MAAM,YAAY,KAAK,EAAE,WAAW;AAAA,GAAM,EAAE,CAAC;AACnE,QAAM,aAAa,SAAS,SAAS,SAAS,CAAC;AAE/C,UAAQ,IAAI,MAAM,OAAO,yBAAyB,YAAY,CAAC;AAE/D,QAAM,MAAM,MAAM,QAAQ;AAAA,IACxB,YAAY,QAAQ,OAAO,QAAQ;AACjC,YAAM,EAAE,YAAY,IAAI;AACxB,UAAI,cAAc;AAElB,iBAAW,KAAK,kBAAkB;AAChC,cAAM,OAAO,YAAY,CAAC;AAC1B,YAAI,MAAM;AACR,qBAAW,WAAW,OAAO,KAAK,IAAI,GAAG;AACvC,gBAAI,aAAa,OAAO,GAAG;AACzB,0BAAY,OAAO,IAAI;AACvB,4BAAc;AAAA,YAChB;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAEA,UAAI,aAAa;AACf,gBAAQ,IAAI,GAAG;AAEf,eAAO;AAAA,MACT;AAAA,IACF,CAAC;AAAA,EACH;AAEA,UAAQ,IAAI,MAAM,OAAO,aAAa,IAAI,qCAAqC,CAAC;AAEhF,QAAM,QAAQ,KAAK,MAAM,OAAO;AAClC;AAEA,SAAS,aAAa,SAAiB;AACrC,SACE,QAAQ,WAAW,WAAW,KAC9B,YAAY,aACZ,YAAY,2BACZ,YAAY;AAEhB;AAEA,eAAsB,aAAa,KAAc;AAC/C,MAAI,SAAS,MAAM,GAAG,SAAS,KAAK,KAAK,IAAI,KAAK,cAAc,GAAG,OAAO;AAC1E,MAAI,SAAS,aAAa,MAAM,EAAE,UAAU;AAC5C,SAAO,GAAG;AAAA,IACR,KAAK,KAAK,IAAI,KAAK,cAAc;AAAA,IACjC,KAAK,UAAU,IAAI,aAAa,MAAM,MAAM,KAAK,OAAO,SAAS,IAAI,IAAI,OAAO;AAAA,EAClF;AACF;AAEA,eAAsB,QAAQ,UAAkB,KAAa;AAC3D,QAAM,aAAqC;AAAA,IACzC,OAAO;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,EACR;AAEA,QAAM,EAAE,EAAE,IAAI,MAAM,OAAO,OAAO;AAClC,QAAM,MAAM,GAAG,WAAW,QAAQ,KAChC,aAAa,SAAS,YAAY,aAAa,UAAU,2BAA2B;AAEtF,UAAQ,IAAI,WAAW,KAAK;AAC5B,QAAM,IAAI;AACZ;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tamagui/cli",
|
|
3
|
-
"version": "1.16.
|
|
3
|
+
"version": "1.16.4",
|
|
4
4
|
"source": "src/index.ts",
|
|
5
5
|
"types": "./types/index.d.ts",
|
|
6
6
|
"module": "dist/esm",
|
|
@@ -36,10 +36,10 @@
|
|
|
36
36
|
"@callstack/repack-debugger-app": "^1.0.0",
|
|
37
37
|
"@fastify/sensible": "^4.1.0",
|
|
38
38
|
"@fastify/static": "^5.0.2",
|
|
39
|
-
"@tamagui/build": "1.16.
|
|
40
|
-
"@tamagui/static": "1.16.
|
|
41
|
-
"@tamagui/types": "1.16.
|
|
42
|
-
"@tamagui/vite-plugin": "1.16.
|
|
39
|
+
"@tamagui/build": "1.16.4",
|
|
40
|
+
"@tamagui/static": "1.16.4",
|
|
41
|
+
"@tamagui/types": "1.16.4",
|
|
42
|
+
"@tamagui/vite-plugin": "1.16.4",
|
|
43
43
|
"@types/compression": "^1.7.2",
|
|
44
44
|
"@types/morgan": "^1.9.3",
|
|
45
45
|
"@vitejs/plugin-react-swc": "^3.2.0",
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../src/doctor.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAEnD,wBAAsB,MAAM,CAAC,OAAO,EAAE,kBAAkB,iBAAI"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lint.d.ts","sourceRoot":"","sources":["../src/lint.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"upgrade.d.ts","sourceRoot":"","sources":["../src/upgrade.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAK/C,eAAO,MAAM,gBAAgB,0FAKnB,CAAA;AAEV,eAAO,MAAM,OAAO;;;mBA+CnB,CAAA;AAWD,wBAAsB,YAAY,CAAC,GAAG,EAAE,OAAO,iBAO9C;AAED,wBAAsB,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,iBAe1D"}
|