create-expo-stack 2.10.4 → 2.10.5-next.08640a3
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/README.md +50 -50
- package/build/cli.js +21 -51
- package/build/commands/create-expo-stack.js +320 -364
- package/build/templates/base/components/Button.tsx.ejs +2 -3
- package/build/templates/packages/nativewind/components/Button.tsx.ejs +4 -5
- package/build/templates/packages/nativewindui/components/Button.tsx.ejs +2 -3
- package/build/templates/packages/restyle/components/Button.tsx.ejs +7 -3
- package/build/templates/packages/tamagui/components/Button.tsx.ejs +11 -5
- package/build/templates/packages/tamagui/tamagui.config.ts.ejs +24 -25
- package/build/templates/packages/unistyles/components/Button.tsx.ejs +8 -3
- package/build/types/utilities/configAnalytics.d.ts +17 -0
- package/build/utilities/bumpVersion.js +6 -6
- package/build/utilities/clearNavigationPackages.js +2 -2
- package/build/utilities/clearStylingPackages.js +2 -2
- package/build/utilities/configAnalytics.js +70 -0
- package/build/utilities/configStorage.js +31 -88
- package/build/utilities/configureProjectFiles.js +98 -83
- package/build/utilities/copyBaseAssets.js +4 -36
- package/build/utilities/generateProjectFiles.js +16 -16
- package/build/utilities/getPackageManager.js +7 -7
- package/build/utilities/printOutput.js +156 -211
- package/build/utilities/renderTitle.js +22 -62
- package/build/utilities/runCLI.js +334 -393
- package/build/utilities/runEasConfigure.js +61 -106
- package/build/utilities/runIgnite.js +9 -45
- package/build/utilities/systemCommand.js +11 -48
- package/build/utilities/usePackage.js +2 -2
- package/build/utilities/validateProjectName.js +27 -64
- package/package.json +70 -69
|
@@ -8,121 +8,76 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
-
function step(op) {
|
|
16
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
-
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
-
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;
|
|
19
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
-
switch (op[0]) {
|
|
21
|
-
case 0: case 1: t = op; break;
|
|
22
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
-
default:
|
|
26
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
-
if (t[2]) _.ops.pop();
|
|
31
|
-
_.trys.pop(); continue;
|
|
32
|
-
}
|
|
33
|
-
op = body.call(thisArg, _);
|
|
34
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
12
|
exports.easConfigure = void 0;
|
|
40
|
-
|
|
41
|
-
|
|
13
|
+
const prompts_1 = require("@clack/prompts");
|
|
14
|
+
const systemCommand_1 = require("./systemCommand");
|
|
42
15
|
function easConfigure(cliResults, packageManager, toolbox) {
|
|
43
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
message: "We can't use bun to install global packages, please select a package manager to use:",
|
|
77
|
-
options: [
|
|
78
|
-
{ value: 'npm', label: 'npm' },
|
|
79
|
-
{ value: 'yarn', label: 'yarn' },
|
|
80
|
-
{ value: 'pnpm', label: 'pnpm' }
|
|
81
|
-
]
|
|
82
|
-
})];
|
|
83
|
-
case 3:
|
|
84
|
-
packageManagerToUseResult = _b.sent();
|
|
16
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
17
|
+
const { print: { info, success, warning, error }, system } = toolbox;
|
|
18
|
+
if (cliResults.flags.noInstall) {
|
|
19
|
+
error('Eas configuration requires installing dependencies, please remove the --no-install flag and try again.');
|
|
20
|
+
process.exit(1);
|
|
21
|
+
}
|
|
22
|
+
const { projectName } = cliResults;
|
|
23
|
+
info('Configuring EAS...');
|
|
24
|
+
info(``);
|
|
25
|
+
const easOutput = yield system.spawn(`eas --version`);
|
|
26
|
+
if (easOutput === null || easOutput === void 0 ? void 0 : easOutput.error) {
|
|
27
|
+
warning('EAS CLI not found, to continue please install it globally');
|
|
28
|
+
info(``);
|
|
29
|
+
const shouldInstall = yield (0, prompts_1.confirm)({
|
|
30
|
+
message: `Install EAS CLI?`
|
|
31
|
+
});
|
|
32
|
+
info(``);
|
|
33
|
+
if ((0, prompts_1.isCancel)(shouldInstall)) {
|
|
34
|
+
(0, prompts_1.cancel)('Cancelled... 👋');
|
|
35
|
+
return process.exit(0);
|
|
36
|
+
}
|
|
37
|
+
if (shouldInstall) {
|
|
38
|
+
let packageManagerToUse = packageManager;
|
|
39
|
+
// bun has no global install
|
|
40
|
+
if (packageManager === 'bun') {
|
|
41
|
+
const packageManagerToUseResult = yield (0, prompts_1.select)({
|
|
42
|
+
message: "We can't use bun to install global packages, please select a package manager to use:",
|
|
43
|
+
options: [
|
|
44
|
+
{ value: 'npm', label: 'npm' },
|
|
45
|
+
{ value: 'yarn', label: 'yarn' },
|
|
46
|
+
{ value: 'pnpm', label: 'pnpm' }
|
|
47
|
+
]
|
|
48
|
+
});
|
|
85
49
|
if ((0, prompts_1.isCancel)(packageManagerToUseResult)) {
|
|
86
50
|
(0, prompts_1.cancel)('Cancelled... 👋');
|
|
87
|
-
return
|
|
51
|
+
return process.exit(0);
|
|
88
52
|
}
|
|
89
53
|
packageManagerToUse = packageManagerToUseResult;
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
})];
|
|
100
|
-
case 5:
|
|
101
|
-
_b.sent();
|
|
102
|
-
_b.label = 6;
|
|
103
|
-
case 6: return [4 /*yield*/, (0, systemCommand_1.runSystemCommand)({
|
|
104
|
-
command: "cd ".concat(projectName, " && eas build:configure -p all"),
|
|
105
|
-
errorMessage: 'Error configuring EAS',
|
|
106
|
-
stdio: 'inherit',
|
|
107
|
-
toolbox: toolbox
|
|
108
|
-
})];
|
|
109
|
-
case 7:
|
|
110
|
-
_b.sent();
|
|
111
|
-
success('EAS configured!');
|
|
112
|
-
info("Now we'll generate the native code for your project");
|
|
113
|
-
return [4 /*yield*/, (0, systemCommand_1.runSystemCommand)({
|
|
114
|
-
command: "cd ".concat(projectName, " && ").concat(packageManager, " run prebuild"),
|
|
115
|
-
errorMessage: 'Error generating native code',
|
|
116
|
-
stdio: 'inherit',
|
|
117
|
-
toolbox: toolbox
|
|
118
|
-
})];
|
|
119
|
-
case 8:
|
|
120
|
-
_b.sent();
|
|
121
|
-
success('Native code generated!');
|
|
122
|
-
return [2 /*return*/];
|
|
54
|
+
}
|
|
55
|
+
info(`We'll use ${packageManagerToUse} install -g eas-cli`);
|
|
56
|
+
info(``);
|
|
57
|
+
yield (0, systemCommand_1.runSystemCommand)({
|
|
58
|
+
command: `${packageManagerToUse} install -g eas-cli`,
|
|
59
|
+
toolbox,
|
|
60
|
+
errorMessage: 'Error installing EAS CLI',
|
|
61
|
+
stdio: undefined
|
|
62
|
+
});
|
|
123
63
|
}
|
|
64
|
+
}
|
|
65
|
+
yield (0, systemCommand_1.runSystemCommand)({
|
|
66
|
+
command: `cd ${projectName} && eas build:configure -p all`,
|
|
67
|
+
errorMessage: 'Error configuring EAS',
|
|
68
|
+
stdio: 'inherit',
|
|
69
|
+
toolbox
|
|
70
|
+
});
|
|
71
|
+
success('EAS configured!');
|
|
72
|
+
info(`Now we'll generate the native code for your project`);
|
|
73
|
+
yield (0, systemCommand_1.runSystemCommand)({
|
|
74
|
+
command: `cd ${projectName} && ${packageManager} run prebuild`,
|
|
75
|
+
errorMessage: 'Error generating native code',
|
|
76
|
+
stdio: 'inherit',
|
|
77
|
+
toolbox
|
|
124
78
|
});
|
|
79
|
+
success('Native code generated!');
|
|
125
80
|
});
|
|
126
81
|
}
|
|
127
82
|
exports.easConfigure = easConfigure;
|
|
128
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
83
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuRWFzQ29uZmlndXJlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxpdGllcy9ydW5FYXNDb25maWd1cmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQ0EsNENBQW1FO0FBRW5FLG1EQUFtRDtBQUVuRCxTQUFzQixZQUFZLENBQ2hDLFVBQXNCLEVBQ3RCLGNBQThCLEVBQzlCLE9BQWdCOztRQUVoQixNQUFNLEVBQ0osS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQ3hDLE1BQU0sRUFDUCxHQUFHLE9BQU8sQ0FBQztRQUVaLElBQUksVUFBVSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUMvQixLQUFLLENBQUMsd0dBQXdHLENBQUMsQ0FBQztZQUVoSCxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2xCLENBQUM7UUFFRCxNQUFNLEVBQUUsV0FBVyxFQUFFLEdBQUcsVUFBVSxDQUFDO1FBRW5DLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNULE1BQU0sU0FBUyxHQUFHLE1BQU0sTUFBTSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUV0RCxJQUFJLFNBQVMsYUFBVCxTQUFTLHVCQUFULFNBQVMsQ0FBRSxLQUFLLEVBQUUsQ0FBQztZQUNyQixPQUFPLENBQUMsMkRBQTJELENBQUMsQ0FBQztZQUNyRSxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDVCxNQUFNLGFBQWEsR0FBRyxNQUFNLElBQUEsaUJBQU8sRUFBQztnQkFDbEMsT0FBTyxFQUFFLGtCQUFrQjthQUM1QixDQUFDLENBQUM7WUFDSCxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7WUFFVCxJQUFJLElBQUEsa0JBQVEsRUFBQyxhQUFhLENBQUMsRUFBRSxDQUFDO2dCQUM1QixJQUFBLGdCQUFNLEVBQUMsaUJBQWlCLENBQUMsQ0FBQztnQkFDMUIsT0FBTyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3pCLENBQUM7WUFFRCxJQUFJLGFBQWEsRUFBRSxDQUFDO2dCQUNsQixJQUFJLG1CQUFtQixHQUFHLGNBQWMsQ0FBQztnQkFFekMsNEJBQTRCO2dCQUM1QixJQUFJLGNBQWMsS0FBSyxLQUFLLEVBQUUsQ0FBQztvQkFDN0IsTUFBTSx5QkFBeUIsR0FBRyxNQUFNLElBQUEsZ0JBQU0sRUFBQzt3QkFDN0MsT0FBTyxFQUFFLHNGQUFzRjt3QkFDL0YsT0FBTyxFQUFFOzRCQUNQLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFOzRCQUM5QixFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRTs0QkFDaEMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUU7eUJBQ2pDO3FCQUNGLENBQUMsQ0FBQztvQkFFSCxJQUFJLElBQUEsa0JBQVEsRUFBQyx5QkFBeUIsQ0FBQyxFQUFFLENBQUM7d0JBQ3hDLElBQUEsZ0JBQU0sRUFBQyxpQkFBaUIsQ0FBQyxDQUFDO3dCQUMxQixPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ3pCLENBQUM7b0JBRUQsbUJBQW1CLEdBQUcseUJBQTJDLENBQUM7Z0JBQ3BFLENBQUM7Z0JBRUQsSUFBSSxDQUFDLGFBQWEsbUJBQW1CLHFCQUFxQixDQUFDLENBQUM7Z0JBQzVELElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFFVCxNQUFNLElBQUEsZ0NBQWdCLEVBQUM7b0JBQ3JCLE9BQU8sRUFBRSxHQUFHLG1CQUFtQixxQkFBcUI7b0JBQ3BELE9BQU87b0JBQ1AsWUFBWSxFQUFFLDBCQUEwQjtvQkFDeEMsS0FBSyxFQUFFLFNBQVM7aUJBQ2pCLENBQUMsQ0FBQztZQUNMLENBQUM7UUFDSCxDQUFDO1FBRUQsTUFBTSxJQUFBLGdDQUFnQixFQUFDO1lBQ3JCLE9BQU8sRUFBRSxNQUFNLFdBQVcsZ0NBQWdDO1lBQzFELFlBQVksRUFBRSx1QkFBdUI7WUFDckMsS0FBSyxFQUFFLFNBQVM7WUFDaEIsT0FBTztTQUNSLENBQUMsQ0FBQztRQUVILE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBRTNCLElBQUksQ0FBQyxxREFBcUQsQ0FBQyxDQUFDO1FBRTVELE1BQU0sSUFBQSxnQ0FBZ0IsRUFBQztZQUNyQixPQUFPLEVBQUUsTUFBTSxXQUFXLE9BQU8sY0FBYyxlQUFlO1lBQzlELFlBQVksRUFBRSw4QkFBOEI7WUFDNUMsS0FBSyxFQUFFLFNBQVM7WUFDaEIsT0FBTztTQUNSLENBQUMsQ0FBQztRQUVILE9BQU8sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7Q0FBQTtBQXhGRCxvQ0F3RkMifQ==
|
|
@@ -8,55 +8,19 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
-
function step(op) {
|
|
16
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
-
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
-
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;
|
|
19
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
-
switch (op[0]) {
|
|
21
|
-
case 0: case 1: t = op; break;
|
|
22
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
-
default:
|
|
26
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
-
if (t[2]) _.ops.pop();
|
|
31
|
-
_.trys.pop(); continue;
|
|
32
|
-
}
|
|
33
|
-
op = body.call(thisArg, _);
|
|
34
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
12
|
exports.runIgnite = void 0;
|
|
40
|
-
|
|
13
|
+
const getPackageManager_1 = require("./getPackageManager");
|
|
41
14
|
function runIgnite(toolbox, projectName, cliResults) {
|
|
42
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
success('Running Ignite CLI to create an opinionated stack...');
|
|
50
|
-
return [4 /*yield*/, system.spawn("npx ignite-cli@$latest new ".concat(projectName, " --packager=").concat(packageManager, " --yes"), {
|
|
51
|
-
shell: true,
|
|
52
|
-
stdio: 'inherit'
|
|
53
|
-
})];
|
|
54
|
-
case 1:
|
|
55
|
-
_a.sent();
|
|
56
|
-
return [2 /*return*/];
|
|
57
|
-
}
|
|
15
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
16
|
+
const { print: { success }, system } = toolbox;
|
|
17
|
+
const packageManager = (0, getPackageManager_1.getPackageManager)(toolbox, cliResults);
|
|
18
|
+
success('Running Ignite CLI to create an opinionated stack...');
|
|
19
|
+
yield system.spawn(`npx ignite-cli@$latest new ${projectName} --packager=${packageManager} --yes`, {
|
|
20
|
+
shell: true,
|
|
21
|
+
stdio: 'inherit'
|
|
58
22
|
});
|
|
59
23
|
});
|
|
60
24
|
}
|
|
61
25
|
exports.runIgnite = runIgnite;
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVuSWduaXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxpdGllcy9ydW5JZ25pdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQ0EsMkRBQXdEO0FBR3hELFNBQXNCLFNBQVMsQ0FBQyxPQUFnQixFQUFFLFdBQW1CLEVBQUUsVUFBc0I7O1FBQzNGLE1BQU0sRUFDSixLQUFLLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFDbEIsTUFBTSxFQUNQLEdBQUcsT0FBTyxDQUFDO1FBRVosTUFBTSxjQUFjLEdBQUcsSUFBQSxxQ0FBaUIsRUFBQyxPQUFPLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFFOUQsT0FBTyxDQUFDLHNEQUFzRCxDQUFDLENBQUM7UUFDaEUsTUFBTSxNQUFNLENBQUMsS0FBSyxDQUFDLDhCQUE4QixXQUFXLGVBQWUsY0FBYyxRQUFRLEVBQUU7WUFDakcsS0FBSyxFQUFFLElBQUk7WUFDWCxLQUFLLEVBQUUsU0FBUztTQUNqQixDQUFDLENBQUM7SUFDTCxDQUFDO0NBQUE7QUFiRCw4QkFhQyJ9
|
|
@@ -8,59 +8,22 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
-
function step(op) {
|
|
16
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
-
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
-
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;
|
|
19
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
-
switch (op[0]) {
|
|
21
|
-
case 0: case 1: t = op; break;
|
|
22
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
-
default:
|
|
26
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
-
if (t[2]) _.ops.pop();
|
|
31
|
-
_.trys.pop(); continue;
|
|
32
|
-
}
|
|
33
|
-
op = body.call(thisArg, _);
|
|
34
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
12
|
exports.runSystemCommand = exports.ONLY_ERRORS = void 0;
|
|
40
13
|
exports.ONLY_ERRORS = ['ignore', 'ignore', 'inherit'];
|
|
41
14
|
function runSystemCommand(_a) {
|
|
42
|
-
return __awaiter(this, arguments, void 0, function (
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
case 0:
|
|
48
|
-
error = toolbox.print.error, system = toolbox.system;
|
|
49
|
-
return [4 /*yield*/, system.spawn(command, {
|
|
50
|
-
shell: true,
|
|
51
|
-
stdio: stdio
|
|
52
|
-
})];
|
|
53
|
-
case 1:
|
|
54
|
-
result = _c.sent();
|
|
55
|
-
if (result.error || result.status !== 0) {
|
|
56
|
-
error("".concat(errorMessage, ": ").concat(JSON.stringify(result)));
|
|
57
|
-
error("failed to run command: ".concat(command));
|
|
58
|
-
return [2 /*return*/, process.exit(1)];
|
|
59
|
-
}
|
|
60
|
-
return [2 /*return*/];
|
|
61
|
-
}
|
|
15
|
+
return __awaiter(this, arguments, void 0, function* ({ command, errorMessage, stdio, toolbox }) {
|
|
16
|
+
const { print: { error }, system } = toolbox;
|
|
17
|
+
const result = yield system.spawn(command, {
|
|
18
|
+
shell: true,
|
|
19
|
+
stdio
|
|
62
20
|
});
|
|
21
|
+
if (result.error || result.status !== 0) {
|
|
22
|
+
error(`${errorMessage}: ${JSON.stringify(result)}`);
|
|
23
|
+
error(`failed to run command: ${command}`);
|
|
24
|
+
return process.exit(1);
|
|
25
|
+
}
|
|
63
26
|
});
|
|
64
27
|
}
|
|
65
28
|
exports.runSystemCommand = runSystemCommand;
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3lzdGVtQ29tbWFuZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvc3lzdGVtQ29tbWFuZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFJYSxRQUFBLFdBQVcsR0FBRyxDQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsU0FBUyxDQUFVLENBQUM7QUFFcEUsU0FBc0IsZ0JBQWdCO3lEQUFDLEVBQ3JDLE9BQU8sRUFDUCxZQUFZLEVBQ1osS0FBSyxFQUNMLE9BQU8sRUFNUjtRQUNDLE1BQU0sRUFDSixLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFDaEIsTUFBTSxFQUNQLEdBQUcsT0FBTyxDQUFDO1FBRVosTUFBTSxNQUFNLEdBQUcsTUFBTSxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRTtZQUN6QyxLQUFLLEVBQUUsSUFBSTtZQUNYLEtBQUs7U0FDTixDQUFDLENBQUM7UUFFSCxJQUFJLE1BQU0sQ0FBQyxLQUFLLElBQUksTUFBTSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN4QyxLQUFLLENBQUMsR0FBRyxZQUFZLEtBQUssSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7WUFFcEQsS0FBSyxDQUFDLDBCQUEwQixPQUFPLEVBQUUsQ0FBQyxDQUFDO1lBRTNDLE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN6QixDQUFDO0lBQ0gsQ0FBQztDQUFBO0FBNUJELDRDQTRCQyJ9
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.usePackage = void 0;
|
|
4
4
|
function usePackage(packageName, packages) {
|
|
5
|
-
return packages.find(
|
|
5
|
+
return packages.find((p) => p.name === packageName) ? true : false;
|
|
6
6
|
}
|
|
7
7
|
exports.usePackage = usePackage;
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlUGFja2FnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvdXNlUGFja2FnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFQSxTQUFnQixVQUFVLENBQUMsV0FBbUIsRUFBRSxRQUE2QjtJQUMzRSxPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0FBQ3JFLENBQUM7QUFGRCxnQ0FFQyJ9
|
|
@@ -8,74 +8,37 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
-
function step(op) {
|
|
16
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
-
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
-
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;
|
|
19
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
-
switch (op[0]) {
|
|
21
|
-
case 0: case 1: t = op; break;
|
|
22
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
-
default:
|
|
26
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
-
if (t[2]) _.ops.pop();
|
|
31
|
-
_.trys.pop(); continue;
|
|
32
|
-
}
|
|
33
|
-
op = body.call(thisArg, _);
|
|
34
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
12
|
exports.validateProjectName = void 0;
|
|
40
|
-
|
|
13
|
+
const prompts_1 = require("@clack/prompts");
|
|
41
14
|
function validateProjectName(exists, removeAsync, prompt, projectName, overwrite) {
|
|
42
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
(0, prompts_1.cancel)('Cancelled... 👋');
|
|
66
|
-
return [2 /*return*/, process.exit(0)];
|
|
67
|
-
}
|
|
68
|
-
if (!shouldDeleteExistingProject) return [3 /*break*/, 5];
|
|
69
|
-
s.start('Deleting existing project. This may take a minute...');
|
|
70
|
-
return [4 /*yield*/, removeAsync(projectName)];
|
|
71
|
-
case 4:
|
|
72
|
-
_a.sent();
|
|
73
|
-
s.stop("Deleted existing directory: ".concat(projectName));
|
|
74
|
-
return [2 /*return*/];
|
|
75
|
-
case 5: throw new Error("A project with the name '".concat(projectName, "' already exists."));
|
|
15
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
16
|
+
const s = (0, prompts_1.spinner)();
|
|
17
|
+
if (!exists(projectName)) {
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
if (overwrite || (exists(projectName) === 'dir' && !prompt)) {
|
|
21
|
+
yield removeAsync(projectName);
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
if (prompt != null) {
|
|
25
|
+
const shouldDeleteExistingProject = yield (0, prompts_1.confirm)({
|
|
26
|
+
message: `A folder with the name '${projectName}' already exists. Do you want to delete it?`,
|
|
27
|
+
initialValue: true
|
|
28
|
+
});
|
|
29
|
+
if ((0, prompts_1.isCancel)(shouldDeleteExistingProject)) {
|
|
30
|
+
(0, prompts_1.cancel)('Cancelled... 👋');
|
|
31
|
+
return process.exit(0);
|
|
32
|
+
}
|
|
33
|
+
if (shouldDeleteExistingProject) {
|
|
34
|
+
s.start('Deleting existing project. This may take a minute...');
|
|
35
|
+
yield removeAsync(projectName);
|
|
36
|
+
s.stop(`Deleted existing directory: ${projectName}`);
|
|
37
|
+
return;
|
|
76
38
|
}
|
|
77
|
-
}
|
|
39
|
+
}
|
|
40
|
+
throw new Error(`A project with the name '${projectName}' already exists.`);
|
|
78
41
|
});
|
|
79
42
|
}
|
|
80
43
|
exports.validateProjectName = validateProjectName;
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGVQcm9qZWN0TmFtZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvdmFsaWRhdGVQcm9qZWN0TmFtZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSw0Q0FBb0U7QUFJcEUsU0FBc0IsbUJBQW1CLENBQ3ZDLE1BQXNDLEVBQ3RDLFdBQTZDLEVBQzdDLE1BQTRCLEVBQzVCLFdBQW1CLEVBQ25CLFNBQWtCOztRQUVsQixNQUFNLENBQUMsR0FBRyxJQUFBLGlCQUFPLEdBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUM7WUFDekIsT0FBTztRQUNULENBQUM7UUFFRCxJQUFJLFNBQVMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1lBQzVELE1BQU0sV0FBVyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQy9CLE9BQU87UUFDVCxDQUFDO1FBRUQsSUFBSSxNQUFNLElBQUksSUFBSSxFQUFFLENBQUM7WUFDbkIsTUFBTSwyQkFBMkIsR0FBRyxNQUFNLElBQUEsaUJBQU8sRUFBQztnQkFDaEQsT0FBTyxFQUFFLDJCQUEyQixXQUFXLDZDQUE2QztnQkFDNUYsWUFBWSxFQUFFLElBQUk7YUFDbkIsQ0FBQyxDQUFDO1lBRUgsSUFBSSxJQUFBLGtCQUFRLEVBQUMsMkJBQTJCLENBQUMsRUFBRSxDQUFDO2dCQUMxQyxJQUFBLGdCQUFNLEVBQUMsaUJBQWlCLENBQUMsQ0FBQztnQkFDMUIsT0FBTyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3pCLENBQUM7WUFFRCxJQUFJLDJCQUEyQixFQUFFLENBQUM7Z0JBQ2hDLENBQUMsQ0FBQyxLQUFLLENBQUMsc0RBQXNELENBQUMsQ0FBQztnQkFDaEUsTUFBTSxXQUFXLENBQUMsV0FBVyxDQUFDLENBQUM7Z0JBQy9CLENBQUMsQ0FBQyxJQUFJLENBQUMsK0JBQStCLFdBQVcsRUFBRSxDQUFDLENBQUM7Z0JBQ3JELE9BQU87WUFDVCxDQUFDO1FBQ0gsQ0FBQztRQUVELE1BQU0sSUFBSSxLQUFLLENBQUMsNEJBQTRCLFdBQVcsbUJBQW1CLENBQUMsQ0FBQztJQUM5RSxDQUFDO0NBQUE7QUFyQ0Qsa0RBcUNDIn0=
|
package/package.json
CHANGED
|
@@ -1,71 +1,72 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
2
|
+
"name": "create-expo-stack",
|
|
3
|
+
"version": "2.10.5-next.08640a3",
|
|
4
|
+
"description": "CLI tool to initialize a React Native application with Expo",
|
|
5
|
+
"repository": {
|
|
6
|
+
"type": "git",
|
|
7
|
+
"url": "https://github.com/danstepanov/create-expo-stack.git",
|
|
8
|
+
"directory": "cli"
|
|
9
|
+
},
|
|
10
|
+
"homepage": "https://createexpostack.com",
|
|
11
|
+
"license": "MIT",
|
|
12
|
+
"types": "build/types/types.d.ts",
|
|
13
|
+
"bin": {
|
|
14
|
+
"create-expo-stack": "bin/create-expo-stack.js"
|
|
15
|
+
},
|
|
16
|
+
"files": [
|
|
17
|
+
"build",
|
|
18
|
+
"LICENSE",
|
|
19
|
+
"readme.md",
|
|
20
|
+
"docs",
|
|
21
|
+
"bin"
|
|
22
|
+
],
|
|
23
|
+
"scripts": {
|
|
24
|
+
"build": "bun run clean-build && bun run compile && bun run copy-templates && bun run lint-templates",
|
|
25
|
+
"bump": "bun run ./src/utilities/bumpVersion.ts",
|
|
26
|
+
"clean-build": "rm -rf ./build",
|
|
27
|
+
"compile": "tsc -p .",
|
|
28
|
+
"copy-templates": "bun run copyfiles -u 2 -a \"./src/templates/**/*\" ./build/templates",
|
|
29
|
+
"dev": "bun run build && bun run bin/create-expo-stack.js",
|
|
30
|
+
"format": "eslint \"**/*.{js,jsx,ts,tsx}\" --fix --resolve-plugins-relative-to . && prettier \"**/*.{js,jsx,ts,tsx,json}\" --write",
|
|
31
|
+
"lint-templates": "bun run ejslint ./src/templates",
|
|
32
|
+
"prepublishOnly": "bun run build",
|
|
33
|
+
"publishPublic": "bun run build && npm publish --access public",
|
|
34
|
+
"snapupdate": "jest --updateSnapshot",
|
|
35
|
+
"test:watch": "bun test --watch",
|
|
36
|
+
"test": "bun test --timeout 30000"
|
|
37
|
+
},
|
|
38
|
+
"prettier": {
|
|
39
|
+
"arrowParens": "always",
|
|
40
|
+
"bracketSameLine": false,
|
|
41
|
+
"bracketSpacing": true,
|
|
42
|
+
"printWidth": 120,
|
|
43
|
+
"semi": true,
|
|
44
|
+
"singleQuote": true,
|
|
45
|
+
"tabWidth": 2,
|
|
46
|
+
"trailingComma": "none",
|
|
47
|
+
"useTabs": false
|
|
48
|
+
},
|
|
49
|
+
"dependencies": {
|
|
50
|
+
"@clack/prompts": "^0.7.0",
|
|
51
|
+
"ejs-lint": "^2.0.0",
|
|
52
|
+
"expo": "^51.0.11",
|
|
53
|
+
"figlet": "^1.6.0",
|
|
54
|
+
"gluegun": "latest",
|
|
55
|
+
"google-auth-library": "^9.11.0",
|
|
56
|
+
"gradient-string": "^2.0.2"
|
|
57
|
+
},
|
|
58
|
+
"devDependencies": {
|
|
59
|
+
"@types/gradient-string": "^1.1.2",
|
|
60
|
+
"@typescript-eslint/eslint-plugin": "^6.9.1",
|
|
61
|
+
"@typescript-eslint/parser": "^6.9.1",
|
|
62
|
+
"copyfiles": "^2.4.1",
|
|
63
|
+
"eslint": "^8.53.0",
|
|
64
|
+
"eslint-config-prettier": "^9.0.0",
|
|
65
|
+
"eslint-plugin-prettier": "^5.0.1",
|
|
66
|
+
"husky": "^5.1.3",
|
|
67
|
+
"prettier": "^3.1.0"
|
|
68
|
+
},
|
|
69
|
+
"publishConfig": {
|
|
70
|
+
"provenance": false
|
|
71
|
+
}
|
|
71
72
|
}
|