piral-cli 0.13.8 → 0.14.0-beta.3156
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 +5 -2
- package/lib/api.js +23 -23
- package/lib/api.js.map +1 -1
- package/lib/apps/build-pilet.js +18 -16
- package/lib/apps/build-pilet.js.map +1 -1
- package/lib/apps/build-piral.js +35 -34
- package/lib/apps/build-piral.js.map +1 -1
- package/lib/apps/debug-pilet.js +28 -27
- package/lib/apps/debug-pilet.js.map +1 -1
- package/lib/apps/debug-piral.js +15 -14
- package/lib/apps/debug-piral.js.map +1 -1
- package/lib/apps/declaration-piral.js +5 -3
- package/lib/apps/declaration-piral.js.map +1 -1
- package/lib/apps/new-pilet.js +43 -39
- package/lib/apps/new-pilet.js.map +1 -1
- package/lib/apps/new-piral.js +21 -20
- package/lib/apps/new-piral.js.map +1 -1
- package/lib/apps/pack-pilet.js +6 -4
- package/lib/apps/pack-pilet.js.map +1 -1
- package/lib/apps/publish-pilet.js +48 -47
- package/lib/apps/publish-pilet.js.map +1 -1
- package/lib/apps/publish-piral.js +23 -22
- package/lib/apps/publish-piral.js.map +1 -1
- package/lib/apps/upgrade-pilet.js +34 -33
- package/lib/apps/upgrade-pilet.js.map +1 -1
- package/lib/apps/upgrade-piral.js +20 -19
- package/lib/apps/upgrade-piral.js.map +1 -1
- package/lib/apps/validate-pilet.js +13 -11
- package/lib/apps/validate-pilet.js.map +1 -1
- package/lib/apps/validate-piral.js +12 -10
- package/lib/apps/validate-piral.js.map +1 -1
- package/lib/build/bundler-calls.d.ts +3 -0
- package/lib/build/bundler-calls.js +107 -0
- package/lib/build/bundler-calls.js.map +1 -0
- package/lib/build/run-build-pilet.d.ts +1 -0
- package/lib/build/run-build-pilet.js +65 -0
- package/lib/build/run-build-pilet.js.map +1 -0
- package/lib/build/run-build-piral.d.ts +1 -0
- package/lib/build/run-build-piral.js +66 -0
- package/lib/build/run-build-piral.js.map +1 -0
- package/lib/build/run-debug-mono-piral.d.ts +1 -0
- package/lib/build/run-debug-mono-piral.js +71 -0
- package/lib/build/run-debug-mono-piral.js.map +1 -0
- package/lib/build/run-debug-pilet.d.ts +1 -0
- package/lib/build/run-debug-pilet.js +90 -0
- package/lib/build/run-debug-pilet.js.map +1 -0
- package/lib/build/run-debug-piral.d.ts +1 -0
- package/lib/build/run-debug-piral.js +86 -0
- package/lib/build/run-debug-piral.js.map +1 -0
- package/lib/bundler.js +62 -25
- package/lib/bundler.js.map +1 -1
- package/lib/cli.js +2 -2
- package/lib/cli.js.map +1 -1
- package/lib/commands.js +12 -12
- package/lib/commands.js.map +1 -1
- package/lib/common/archive.js +8 -8
- package/lib/common/archive.js.map +1 -1
- package/lib/common/browser.js +2 -2
- package/lib/common/browser.js.map +1 -1
- package/lib/common/clients/lerna.js +4 -4
- package/lib/common/clients/lerna.js.map +1 -1
- package/lib/common/clients/npm.js +12 -12
- package/lib/common/clients/npm.js.map +1 -1
- package/lib/common/clients/pnpm.js +5 -5
- package/lib/common/clients/pnpm.js.map +1 -1
- package/lib/common/clients/yarn.js +5 -5
- package/lib/common/clients/yarn.js.map +1 -1
- package/lib/common/compatibility.js +9 -9
- package/lib/common/compatibility.js.map +1 -1
- package/lib/common/config.d.ts +5 -1
- package/lib/common/config.js +2 -1
- package/lib/common/config.js.map +1 -1
- package/lib/common/constants.d.ts +1 -1
- package/lib/common/constants.js +2 -2
- package/lib/common/constants.js.map +1 -1
- package/lib/common/declaration.js +19 -19
- package/lib/common/declaration.js.map +1 -1
- package/lib/common/emulator.js +24 -23
- package/lib/common/emulator.js.map +1 -1
- package/lib/common/envs.js +3 -3
- package/lib/common/envs.js.map +1 -1
- package/lib/common/hash.d.ts +1 -0
- package/lib/common/hash.js +8 -3
- package/lib/common/hash.js.map +1 -1
- package/lib/common/http.d.ts +1 -0
- package/lib/common/http.js +28 -14
- package/lib/common/http.js.map +1 -1
- package/lib/common/injectors.js +4 -4
- package/lib/common/injectors.js.map +1 -1
- package/lib/common/inspect.js +4 -4
- package/lib/common/inspect.js.map +1 -1
- package/lib/common/io.js +77 -73
- package/lib/common/io.js.map +1 -1
- package/lib/common/language.js +2 -2
- package/lib/common/language.js.map +1 -1
- package/lib/common/log.js +8 -8
- package/lib/common/log.js.map +1 -1
- package/lib/common/npm.d.ts +3 -1
- package/lib/common/npm.js +68 -48
- package/lib/common/npm.js.map +1 -1
- package/lib/common/pack.js +18 -18
- package/lib/common/pack.js.map +1 -1
- package/lib/common/package.d.ts +4 -2
- package/lib/common/package.js +182 -81
- package/lib/common/package.js.map +1 -1
- package/lib/common/patcher.js +20 -20
- package/lib/common/patcher.js.map +1 -1
- package/lib/common/port.js +3 -3
- package/lib/common/port.js.map +1 -1
- package/lib/common/rules.js +4 -4
- package/lib/common/rules.js.map +1 -1
- package/lib/common/scaffold.js +15 -15
- package/lib/common/scaffold.js.map +1 -1
- package/lib/common/scripts.js +5 -5
- package/lib/common/scripts.js.map +1 -1
- package/lib/common/template.js +4 -4
- package/lib/common/template.js.map +1 -1
- package/lib/external/index.js +1369 -611
- package/lib/helpers.js +2 -2
- package/lib/helpers.js.map +1 -1
- package/lib/inject.js +2 -2
- package/lib/inject.js.map +1 -1
- package/lib/injectors/pilet.d.ts +1 -10
- package/lib/injectors/pilet.js +74 -27
- package/lib/injectors/pilet.js.map +1 -1
- package/lib/injectors/piral.d.ts +4 -2
- package/lib/injectors/piral.js +20 -5
- package/lib/injectors/piral.js.map +1 -1
- package/lib/messages.d.ts +11 -3
- package/lib/messages.js +11 -3
- package/lib/messages.js.map +1 -1
- package/lib/pb-cli.js +1 -1
- package/lib/pb-cli.js.map +1 -1
- package/lib/pilet-cli.js +1 -1
- package/lib/pilet-cli.js.map +1 -1
- package/lib/piral-cli.js +1 -1
- package/lib/piral-cli.js.map +1 -1
- package/lib/plugin.js +10 -10
- package/lib/plugin.js.map +1 -1
- package/lib/release.js +3 -3
- package/lib/release.js.map +1 -1
- package/lib/resolvers.js +13 -13
- package/lib/resolvers.js.map +1 -1
- package/lib/rules/index.js +7 -7
- package/lib/rules/index.js.map +1 -1
- package/lib/rules/pilet-has-externals-as-peers.js +3 -3
- package/lib/rules/pilet-has-externals-as-peers.js.map +1 -1
- package/lib/rules/pilet-has-no-self-reference.js +1 -1
- package/lib/rules/pilet-has-no-self-reference.js.map +1 -1
- package/lib/rules/pilet-stays-small.js +3 -3
- package/lib/rules/pilet-stays-small.js.map +1 -1
- package/lib/rules/pilet-uses-latest-piral.js +1 -1
- package/lib/rules/pilet-uses-latest-piral.js.map +1 -1
- package/lib/rules/piral-entry-ends-with-html.js +1 -1
- package/lib/rules/piral-entry-ends-with-html.js.map +1 -1
- package/lib/rules/piral-has-valid-files.js +5 -5
- package/lib/rules/piral-has-valid-files.js.map +1 -1
- package/lib/runner.js +1 -1
- package/lib/runner.js.map +1 -1
- package/lib/select.js +6 -6
- package/lib/select.js.map +1 -1
- package/lib/types/common.d.ts +8 -0
- package/lib/types/public.d.ts +66 -12
- package/package.json +3 -3
- package/src/apps/build-pilet.ts +7 -4
- package/src/apps/build-piral.ts +6 -5
- package/src/apps/debug-pilet.ts +3 -2
- package/src/apps/debug-piral.ts +2 -1
- package/src/apps/declaration-piral.ts +3 -1
- package/src/apps/new-pilet.ts +7 -3
- package/src/apps/new-piral.ts +2 -1
- package/src/apps/pack-pilet.ts +3 -1
- package/src/apps/publish-pilet.ts +6 -5
- package/src/apps/publish-piral.ts +3 -2
- package/src/apps/upgrade-pilet.ts +5 -4
- package/src/apps/upgrade-piral.ts +2 -1
- package/src/apps/validate-pilet.ts +5 -2
- package/src/apps/validate-piral.ts +3 -1
- package/src/build/bundler-calls.ts +121 -0
- package/src/build/run-build-pilet.ts +89 -0
- package/src/build/run-build-piral.ts +88 -0
- package/src/build/run-debug-mono-piral.ts +87 -0
- package/src/build/run-debug-pilet.ts +114 -0
- package/src/build/run-debug-piral.ts +106 -0
- package/src/bundler.test.ts +83 -68
- package/src/bundler.ts +52 -12
- package/src/common/config.ts +6 -1
- package/src/common/constants.ts +1 -1
- package/src/common/emulator.ts +1 -0
- package/src/common/hash.ts +5 -0
- package/src/common/http.ts +18 -4
- package/src/common/io.ts +4 -0
- package/src/common/npm.test.ts +14 -14
- package/src/common/npm.ts +21 -2
- package/src/common/package.ts +120 -9
- package/src/helpers.ts +2 -2
- package/src/injectors/pilet.ts +82 -22
- package/src/injectors/piral.test.ts +6 -5
- package/src/injectors/piral.ts +21 -2
- package/src/messages.ts +23 -15
- package/src/types/common.ts +9 -0
- package/src/types/public.ts +71 -20
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "piral-cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.14.0-beta.3156",
|
|
4
4
|
"description": "The standard CLI for creating and building a Piral instance or a Pilet.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"portal",
|
|
@@ -70,12 +70,12 @@
|
|
|
70
70
|
},
|
|
71
71
|
"dependencies": {
|
|
72
72
|
"chalk": "^2.4.2",
|
|
73
|
-
"dets": "^0.10.
|
|
73
|
+
"dets": "^0.10.2",
|
|
74
74
|
"ejs": "^2.6.2",
|
|
75
75
|
"kras": "^0.12.2",
|
|
76
76
|
"rimraf": "^3.0.0",
|
|
77
77
|
"typescript": "^4.0.2",
|
|
78
78
|
"yargs": "^15.4.1"
|
|
79
79
|
},
|
|
80
|
-
"gitHead": "
|
|
80
|
+
"gitHead": "e368a181defdfca4722d7bd478a9dcd47d90a51b"
|
|
81
81
|
}
|
package/src/apps/build-pilet.ts
CHANGED
|
@@ -12,6 +12,7 @@ import {
|
|
|
12
12
|
ForceOverwrite,
|
|
13
13
|
matchAnyPilet,
|
|
14
14
|
fail,
|
|
15
|
+
config,
|
|
15
16
|
} from '../common';
|
|
16
17
|
|
|
17
18
|
export interface BuildPiletOptions {
|
|
@@ -93,7 +94,7 @@ export const buildPiletDefaults: BuildPiletOptions = {
|
|
|
93
94
|
sourceMaps: true,
|
|
94
95
|
contentHash: true,
|
|
95
96
|
optimizeModules: false,
|
|
96
|
-
schemaVersion:
|
|
97
|
+
schemaVersion: config.schemaVersion,
|
|
97
98
|
declaration: true,
|
|
98
99
|
};
|
|
99
100
|
|
|
@@ -113,9 +114,10 @@ export async function buildPilet(baseDir = process.cwd(), options: BuildPiletOpt
|
|
|
113
114
|
bundlerName,
|
|
114
115
|
app,
|
|
115
116
|
} = options;
|
|
117
|
+
const fullBase = resolve(process.cwd(), baseDir);
|
|
116
118
|
setLogLevel(logLevel);
|
|
117
119
|
progress('Reading configuration ...');
|
|
118
|
-
const allEntries = await matchAnyPilet(
|
|
120
|
+
const allEntries = await matchAnyPilet(fullBase, [entry]);
|
|
119
121
|
|
|
120
122
|
if (allEntries.length === 0) {
|
|
121
123
|
fail('entryFileMissing_0077');
|
|
@@ -123,12 +125,12 @@ export async function buildPilet(baseDir = process.cwd(), options: BuildPiletOpt
|
|
|
123
125
|
|
|
124
126
|
const entryModule = allEntries.shift();
|
|
125
127
|
const targetDir = dirname(entryModule);
|
|
126
|
-
const { peerDependencies, peerModules, root, appPackage, piletPackage, ignored } = await retrievePiletData(
|
|
128
|
+
const { peerDependencies, peerModules, root, appPackage, piletPackage, ignored, importmap } = await retrievePiletData(
|
|
127
129
|
targetDir,
|
|
128
130
|
app,
|
|
129
131
|
);
|
|
130
132
|
const externals = [...Object.keys(peerDependencies), ...peerModules];
|
|
131
|
-
const outDir = dirname(resolve(
|
|
133
|
+
const outDir = dirname(resolve(fullBase, target));
|
|
132
134
|
|
|
133
135
|
if (fresh) {
|
|
134
136
|
progress('Removing output directory ...');
|
|
@@ -147,6 +149,7 @@ export async function buildPilet(baseDir = process.cwd(), options: BuildPiletOpt
|
|
|
147
149
|
minify,
|
|
148
150
|
externals,
|
|
149
151
|
targetDir,
|
|
152
|
+
importmap,
|
|
150
153
|
outFile: basename(target),
|
|
151
154
|
outDir,
|
|
152
155
|
entryModule: `./${relative(root, entryModule)}`,
|
package/src/apps/build-piral.ts
CHANGED
|
@@ -151,12 +151,13 @@ export async function buildPiral(baseDir = process.cwd(), options: BuildPiralOpt
|
|
|
151
151
|
_ = {},
|
|
152
152
|
bundlerName,
|
|
153
153
|
} = options;
|
|
154
|
+
const fullBase = resolve(process.cwd(), baseDir);
|
|
155
|
+
const useSubdir = type === 'all' || subdir;
|
|
154
156
|
setLogLevel(logLevel);
|
|
155
157
|
progress('Reading configuration ...');
|
|
156
|
-
const
|
|
157
|
-
const entryFiles = await retrievePiralRoot(baseDir, entry);
|
|
158
|
+
const entryFiles = await retrievePiralRoot(fullBase, entry);
|
|
158
159
|
const { name, root, ignored, externals, scripts } = await retrievePiletsInfo(entryFiles);
|
|
159
|
-
const dest = getDestination(entryFiles, resolve(
|
|
160
|
+
const dest = getDestination(entryFiles, resolve(fullBase, target));
|
|
160
161
|
|
|
161
162
|
await checkCliCompatibility(root);
|
|
162
163
|
|
|
@@ -202,9 +203,9 @@ export async function buildPiral(baseDir = process.cwd(), options: BuildPiralOpt
|
|
|
202
203
|
|
|
203
204
|
if (type !== emulatorSourcesName) {
|
|
204
205
|
await packageEmulator(rootDir);
|
|
205
|
-
logDone(`Emulator sources available in "${rootDir}".`);
|
|
206
|
-
} else {
|
|
207
206
|
logDone(`Emulator package available in "${rootDir}".`);
|
|
207
|
+
} else {
|
|
208
|
+
logDone(`Emulator sources available in "${rootDir}".`);
|
|
208
209
|
}
|
|
209
210
|
|
|
210
211
|
logReset();
|
package/src/apps/debug-pilet.ts
CHANGED
|
@@ -82,7 +82,7 @@ export const debugPiletDefaults: DebugPiletOptions = {
|
|
|
82
82
|
port: 1234,
|
|
83
83
|
hmr: true,
|
|
84
84
|
optimizeModules: false,
|
|
85
|
-
schemaVersion:
|
|
85
|
+
schemaVersion: config.schemaVersion,
|
|
86
86
|
};
|
|
87
87
|
|
|
88
88
|
const injectorName = resolve(__dirname, '../injectors/pilet.js');
|
|
@@ -168,7 +168,7 @@ export async function debugPilet(baseDir = process.cwd(), options: DebugPiletOpt
|
|
|
168
168
|
const pilets = await Promise.all(
|
|
169
169
|
allEntries.map(async (entryModule) => {
|
|
170
170
|
const targetDir = dirname(entryModule);
|
|
171
|
-
const { peerDependencies, peerModules, root, appPackage, appFile, ignored, emulator } = await retrievePiletData(
|
|
171
|
+
const { peerDependencies, peerModules, root, appPackage, appFile, ignored, emulator, importmap } = await retrievePiletData(
|
|
172
172
|
targetDir,
|
|
173
173
|
app,
|
|
174
174
|
);
|
|
@@ -192,6 +192,7 @@ export async function debugPilet(baseDir = process.cwd(), options: DebugPiletOpt
|
|
|
192
192
|
hmr,
|
|
193
193
|
externals,
|
|
194
194
|
targetDir,
|
|
195
|
+
importmap,
|
|
195
196
|
entryModule: `./${relative(root, entryModule)}`,
|
|
196
197
|
logLevel,
|
|
197
198
|
version: schemaVersion,
|
package/src/apps/debug-piral.ts
CHANGED
|
@@ -86,9 +86,10 @@ export async function debugPiral(baseDir = process.cwd(), options: DebugPiralOpt
|
|
|
86
86
|
_ = {},
|
|
87
87
|
bundlerName,
|
|
88
88
|
} = options;
|
|
89
|
+
const fullBase = resolve(process.cwd(), baseDir);
|
|
89
90
|
setLogLevel(logLevel);
|
|
90
91
|
progress('Reading configuration ...');
|
|
91
|
-
const entryFiles = await retrievePiralRoot(
|
|
92
|
+
const entryFiles = await retrievePiralRoot(fullBase, entry);
|
|
92
93
|
const { externals, name, root, ignored } = await retrievePiletsInfo(entryFiles);
|
|
93
94
|
const krasConfig = readKrasConfig({ port }, krasrc);
|
|
94
95
|
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { resolve } from 'path';
|
|
1
2
|
import { setLogLevel, logDone, createPiralDeclaration, ForceOverwrite } from '../common';
|
|
2
3
|
import { LogLevels } from '../types';
|
|
3
4
|
|
|
@@ -37,7 +38,8 @@ export async function declarationPiral(baseDir = process.cwd(), options: Declara
|
|
|
37
38
|
forceOverwrite = declarationPiralDefaults.forceOverwrite,
|
|
38
39
|
logLevel = declarationPiralDefaults.logLevel,
|
|
39
40
|
} = options;
|
|
41
|
+
const fullBase = resolve(process.cwd(), baseDir);
|
|
40
42
|
setLogLevel(logLevel);
|
|
41
|
-
await createPiralDeclaration(
|
|
43
|
+
await createPiralDeclaration(fullBase, entry, target, forceOverwrite, logLevel);
|
|
42
44
|
logDone(`Declaration created successfully in "${target}"!`);
|
|
43
45
|
}
|
package/src/apps/new-pilet.ts
CHANGED
|
@@ -120,10 +120,11 @@ export async function newPilet(baseDir = process.cwd(), options: NewPiletOptions
|
|
|
120
120
|
bundlerName = newPiletDefaults.bundlerName,
|
|
121
121
|
variables = newPiletDefaults.variables,
|
|
122
122
|
} = options;
|
|
123
|
+
const fullBase = resolve(process.cwd(), baseDir);
|
|
124
|
+
const root = resolve(fullBase, target);
|
|
123
125
|
setLogLevel(logLevel);
|
|
124
126
|
progress('Preparing source and target ...');
|
|
125
|
-
const
|
|
126
|
-
const [sourceName, sourceVersion, hadVersion, type] = await dissectPackageName(baseDir, source);
|
|
127
|
+
const [sourceName, sourceVersion, hadVersion, type] = await dissectPackageName(fullBase, source);
|
|
127
128
|
const success = await createDirectory(root);
|
|
128
129
|
|
|
129
130
|
if (success) {
|
|
@@ -204,7 +205,10 @@ always-auth=true`,
|
|
|
204
205
|
await copyScaffoldingFiles(packageRoot, root, files, piralInfo);
|
|
205
206
|
}
|
|
206
207
|
|
|
207
|
-
await patchPiletPackage(root, packageName, packageVersion, piralInfo,
|
|
208
|
+
await patchPiletPackage(root, packageName, packageVersion, piralInfo, isEmulator, {
|
|
209
|
+
language,
|
|
210
|
+
bundler: bundlerName,
|
|
211
|
+
});
|
|
208
212
|
|
|
209
213
|
if (install) {
|
|
210
214
|
progress(`Installing dependencies ...`);
|
package/src/apps/new-piral.ts
CHANGED
|
@@ -118,9 +118,10 @@ export async function newPiral(baseDir = process.cwd(), options: NewPiralOptions
|
|
|
118
118
|
bundlerName = newPiralDefaults.bundlerName,
|
|
119
119
|
variables = newPiralDefaults.variables,
|
|
120
120
|
} = options;
|
|
121
|
+
const fullBase = resolve(process.cwd(), baseDir);
|
|
122
|
+
const root = resolve(fullBase, target);
|
|
121
123
|
setLogLevel(logLevel);
|
|
122
124
|
progress('Preparing source and target ...');
|
|
123
|
-
const root = resolve(baseDir, target);
|
|
124
125
|
const success = await createDirectory(root);
|
|
125
126
|
|
|
126
127
|
if (success) {
|
package/src/apps/pack-pilet.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { resolve } from 'path';
|
|
1
2
|
import { createPiletPackage, logDone, setLogLevel, progress } from '../common';
|
|
2
3
|
import { LogLevels } from '../types';
|
|
3
4
|
|
|
@@ -30,8 +31,9 @@ export async function packPilet(baseDir = process.cwd(), options: PackPiletOptio
|
|
|
30
31
|
target = packPiletDefaults.target,
|
|
31
32
|
logLevel = packPiletDefaults.logLevel,
|
|
32
33
|
} = options;
|
|
34
|
+
const fullBase = resolve(process.cwd(), baseDir);
|
|
33
35
|
setLogLevel(logLevel);
|
|
34
36
|
progress('Reading configuration ...');
|
|
35
|
-
await createPiletPackage(
|
|
37
|
+
await createPiletPackage(fullBase, source, target);
|
|
36
38
|
logDone(`Pilet packed successfully!`);
|
|
37
39
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { relative, join, dirname, basename } from 'path';
|
|
1
|
+
import { relative, join, dirname, basename, resolve } from 'path';
|
|
2
2
|
import { buildPilet } from './build-pilet';
|
|
3
3
|
import { LogLevels, PiletSchemaVersion, PiletPublishSource } from '../types';
|
|
4
4
|
import {
|
|
@@ -76,7 +76,7 @@ export const publishPiletDefaults: PublishPiletOptions = {
|
|
|
76
76
|
fresh: false,
|
|
77
77
|
cert: undefined,
|
|
78
78
|
logLevel: LogLevels.info,
|
|
79
|
-
schemaVersion:
|
|
79
|
+
schemaVersion: config.schemaVersion,
|
|
80
80
|
from: 'local',
|
|
81
81
|
fields: {},
|
|
82
82
|
};
|
|
@@ -134,6 +134,7 @@ export async function publishPilet(baseDir = process.cwd(), options: PublishPile
|
|
|
134
134
|
cert = config.cert ?? publishPiletDefaults.cert,
|
|
135
135
|
fields = publishPiletDefaults.fields,
|
|
136
136
|
} = options;
|
|
137
|
+
const fullBase = resolve(process.cwd(), baseDir);
|
|
137
138
|
setLogLevel(logLevel);
|
|
138
139
|
progress('Reading configuration ...');
|
|
139
140
|
|
|
@@ -152,7 +153,7 @@ export async function publishPilet(baseDir = process.cwd(), options: PublishPile
|
|
|
152
153
|
}
|
|
153
154
|
|
|
154
155
|
log('generalDebug_0003', 'Getting the tgz files ...');
|
|
155
|
-
const files = await getFiles(
|
|
156
|
+
const files = await getFiles(fullBase, source, from, fresh, schemaVersion, ca);
|
|
156
157
|
const successfulUploads: Array<string> = [];
|
|
157
158
|
log('generalDebug_0003', 'Received available tgz files.');
|
|
158
159
|
|
|
@@ -164,8 +165,8 @@ export async function publishPilet(baseDir = process.cwd(), options: PublishPile
|
|
|
164
165
|
|
|
165
166
|
for (const file of files) {
|
|
166
167
|
log('generalDebug_0003', 'Reading the file for upload ...');
|
|
167
|
-
const fileName = relative(
|
|
168
|
-
const content = await readBinary(
|
|
168
|
+
const fileName = relative(fullBase, file);
|
|
169
|
+
const content = await readBinary(fullBase, fileName);
|
|
169
170
|
|
|
170
171
|
if (content) {
|
|
171
172
|
progress(`Publishing "%s" ...`, file, url);
|
|
@@ -87,6 +87,7 @@ export async function publishPiral(baseDir = process.cwd(), options: PublishPira
|
|
|
87
87
|
fields = publishPiralDefaults.fields,
|
|
88
88
|
provider = publishPiralDefaults.provider,
|
|
89
89
|
} = options;
|
|
90
|
+
const fullBase = resolve(process.cwd(), baseDir);
|
|
90
91
|
setLogLevel(logLevel);
|
|
91
92
|
|
|
92
93
|
if (type === 'emulator-sources') {
|
|
@@ -97,14 +98,14 @@ export async function publishPiral(baseDir = process.cwd(), options: PublishPira
|
|
|
97
98
|
|
|
98
99
|
if (type !== 'release') {
|
|
99
100
|
progress('Publishing emulator package ...');
|
|
100
|
-
await publishEmulator(
|
|
101
|
+
await publishEmulator(fullBase, source, fields);
|
|
101
102
|
logDone(`Successfully published emulator.`);
|
|
102
103
|
logReset();
|
|
103
104
|
}
|
|
104
105
|
|
|
105
106
|
if (type !== 'emulator') {
|
|
106
107
|
progress('Publishing release files ...');
|
|
107
|
-
await publishRelease(
|
|
108
|
+
await publishRelease(fullBase, source, provider, fields);
|
|
108
109
|
logDone(`Successfully published release.`);
|
|
109
110
|
logReset();
|
|
110
111
|
}
|
|
@@ -82,8 +82,9 @@ export async function upgradePilet(baseDir = process.cwd(), options: UpgradePile
|
|
|
82
82
|
logLevel = upgradePiletDefaults.logLevel,
|
|
83
83
|
install = upgradePiletDefaults.install,
|
|
84
84
|
} = options;
|
|
85
|
+
const fullBase = resolve(process.cwd(), baseDir);
|
|
86
|
+
const root = resolve(fullBase, target);
|
|
85
87
|
setLogLevel(logLevel);
|
|
86
|
-
const root = resolve(baseDir, target);
|
|
87
88
|
const valid = await checkExistingDirectory(root);
|
|
88
89
|
|
|
89
90
|
if (!valid) {
|
|
@@ -107,9 +108,9 @@ export async function upgradePilet(baseDir = process.cwd(), options: UpgradePile
|
|
|
107
108
|
fail('invalidPiralReference_0043');
|
|
108
109
|
}
|
|
109
110
|
|
|
110
|
-
const monorepoRef = await isMonorepoPackageRef(sourceName,
|
|
111
|
+
const monorepoRef = await isMonorepoPackageRef(sourceName, fullBase);
|
|
111
112
|
const [packageRef, packageVersion] = await getCurrentPackageDetails(
|
|
112
|
-
|
|
113
|
+
fullBase,
|
|
113
114
|
sourceName,
|
|
114
115
|
currentVersion,
|
|
115
116
|
version,
|
|
@@ -148,7 +149,7 @@ export async function upgradePilet(baseDir = process.cwd(), options: UpgradePile
|
|
|
148
149
|
await copyScaffoldingFiles(packageRoot, root, notOnceFiles, piralInfo);
|
|
149
150
|
}
|
|
150
151
|
|
|
151
|
-
await patchPiletPackage(root, sourceName, packageVersion, piralInfo);
|
|
152
|
+
await patchPiletPackage(root, sourceName, packageVersion, piralInfo, isEmulator);
|
|
152
153
|
|
|
153
154
|
if (install) {
|
|
154
155
|
progress(`Updating dependencies ...`);
|
|
@@ -81,8 +81,9 @@ export async function upgradePiral(baseDir = process.cwd(), options: UpgradePira
|
|
|
81
81
|
logLevel = upgradePiralDefaults.logLevel,
|
|
82
82
|
install = upgradePiralDefaults.install,
|
|
83
83
|
} = options;
|
|
84
|
+
const fullBase = resolve(process.cwd(), baseDir);
|
|
85
|
+
const root = resolve(fullBase, target);
|
|
84
86
|
setLogLevel(logLevel);
|
|
85
|
-
const root = resolve(baseDir, target);
|
|
86
87
|
const valid = await checkExistingDirectory(root);
|
|
87
88
|
const exists = await checkExists(join(root, 'package.json'));
|
|
88
89
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { join, dirname } from 'path';
|
|
1
|
+
import { join, dirname, resolve } from 'path';
|
|
2
2
|
import { ruleSummary, runRules, retrievePiletData, getPiletsInfo, setLogLevel, progress, log } from '../common';
|
|
3
3
|
import { getPiletRules } from '../rules';
|
|
4
4
|
import { PiletRuleContext, LogLevels } from '../types';
|
|
@@ -32,11 +32,12 @@ export async function validatePilet(baseDir = process.cwd(), options: ValidatPil
|
|
|
32
32
|
logLevel = validatePiletDefaults.logLevel,
|
|
33
33
|
app = validatePiletDefaults.app,
|
|
34
34
|
} = options;
|
|
35
|
+
const fullBase = resolve(process.cwd(), baseDir);
|
|
35
36
|
setLogLevel(logLevel);
|
|
36
37
|
progress('Reading configuration ...');
|
|
37
38
|
|
|
38
39
|
const rules = await getPiletRules();
|
|
39
|
-
const entryFile = join(
|
|
40
|
+
const entryFile = join(fullBase, entry);
|
|
40
41
|
const target = dirname(entryFile);
|
|
41
42
|
const {
|
|
42
43
|
dependencies,
|
|
@@ -44,6 +45,7 @@ export async function validatePilet(baseDir = process.cwd(), options: ValidatPil
|
|
|
44
45
|
devDependencies,
|
|
45
46
|
peerModules,
|
|
46
47
|
root,
|
|
48
|
+
importmap,
|
|
47
49
|
ignored: _0,
|
|
48
50
|
emulator: _1,
|
|
49
51
|
...data
|
|
@@ -63,6 +65,7 @@ export async function validatePilet(baseDir = process.cwd(), options: ValidatPil
|
|
|
63
65
|
dependencies,
|
|
64
66
|
devDependencies,
|
|
65
67
|
peerDependencies,
|
|
68
|
+
importmap,
|
|
66
69
|
peerModules,
|
|
67
70
|
root,
|
|
68
71
|
data,
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { resolve } from 'path';
|
|
1
2
|
import { retrievePiralRoot, retrievePiletsInfo, ruleSummary, runRules, config } from '../common';
|
|
2
3
|
import { setLogLevel, progress, log, checkCliCompatibility } from '../common';
|
|
3
4
|
import { getPiralRules } from '../rules';
|
|
@@ -22,11 +23,12 @@ export const validatePiralDefaults: ValidatPiralOptions = {
|
|
|
22
23
|
|
|
23
24
|
export async function validatePiral(baseDir = process.cwd(), options: ValidatPiralOptions = {}) {
|
|
24
25
|
const { entry = validatePiralDefaults.entry, logLevel = validatePiralDefaults.logLevel } = options;
|
|
26
|
+
const fullBase = resolve(process.cwd(), baseDir);
|
|
25
27
|
setLogLevel(logLevel);
|
|
26
28
|
progress('Reading configuration ...');
|
|
27
29
|
|
|
28
30
|
const rules = await getPiralRules();
|
|
29
|
-
const entryFiles = await retrievePiralRoot(
|
|
31
|
+
const entryFiles = await retrievePiralRoot(fullBase, entry);
|
|
30
32
|
const { root, dependencies, ignored: _, ...info } = await retrievePiletsInfo(entryFiles);
|
|
31
33
|
const errors: Array<string> = [];
|
|
32
34
|
const warnings: Array<string> = [];
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import { resolve } from 'path';
|
|
2
|
+
import { fork, ChildProcess } from 'child_process';
|
|
3
|
+
import { Bundler, BundleDetails, BaseBundleParameters } from '../types';
|
|
4
|
+
|
|
5
|
+
function getPath(name: string) {
|
|
6
|
+
return resolve(__dirname, '..', '..', 'lib', 'build', `run-${name}.js`);
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
type BundleListener = (args: any) => void;
|
|
10
|
+
|
|
11
|
+
function createBundler(cwd: string, ps: ChildProcess, args: any) {
|
|
12
|
+
let promise = Promise.resolve();
|
|
13
|
+
const listeners: Array<BundleListener> = [];
|
|
14
|
+
const bundle: BundleDetails = {
|
|
15
|
+
dir: cwd,
|
|
16
|
+
hash: '',
|
|
17
|
+
name: '',
|
|
18
|
+
};
|
|
19
|
+
const setPending = () => {
|
|
20
|
+
promise = new Promise((done) => {
|
|
21
|
+
const f = () => {
|
|
22
|
+
done();
|
|
23
|
+
bundler.off(f);
|
|
24
|
+
};
|
|
25
|
+
bundler.on(f);
|
|
26
|
+
});
|
|
27
|
+
};
|
|
28
|
+
const bundler = {
|
|
29
|
+
bundle,
|
|
30
|
+
start() {
|
|
31
|
+
ps.send({
|
|
32
|
+
type: 'bundle',
|
|
33
|
+
...args,
|
|
34
|
+
});
|
|
35
|
+
},
|
|
36
|
+
on(cb: BundleListener) {
|
|
37
|
+
listeners.push(cb);
|
|
38
|
+
},
|
|
39
|
+
off(cb: BundleListener) {
|
|
40
|
+
listeners.splice(listeners.indexOf(cb), 1);
|
|
41
|
+
},
|
|
42
|
+
emit(args: any) {
|
|
43
|
+
[...listeners].forEach((cb) => cb(args));
|
|
44
|
+
},
|
|
45
|
+
ready() {
|
|
46
|
+
return promise;
|
|
47
|
+
},
|
|
48
|
+
setPending,
|
|
49
|
+
};
|
|
50
|
+
setPending();
|
|
51
|
+
return bundler;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
export function callDynamic<T extends BaseBundleParameters>(name: string, path: string, args: T) {
|
|
55
|
+
const cwd = args.root;
|
|
56
|
+
return new Promise<Bundler>((resolve, reject) => {
|
|
57
|
+
const ps = fork(getPath(name), [], { cwd });
|
|
58
|
+
const bundler = createBundler(cwd, ps, args);
|
|
59
|
+
const setup = {
|
|
60
|
+
type: 'init',
|
|
61
|
+
path,
|
|
62
|
+
};
|
|
63
|
+
const start = () => {
|
|
64
|
+
ps.send({
|
|
65
|
+
type: 'start',
|
|
66
|
+
...args,
|
|
67
|
+
});
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
ps.on('message', (msg: any) => {
|
|
71
|
+
switch (msg.type) {
|
|
72
|
+
case 'pending':
|
|
73
|
+
bundler.setPending();
|
|
74
|
+
break;
|
|
75
|
+
case 'update':
|
|
76
|
+
bundler.bundle.hash = msg.outHash;
|
|
77
|
+
bundler.bundle.name = msg.outName;
|
|
78
|
+
bundler.emit(msg.args);
|
|
79
|
+
break;
|
|
80
|
+
case 'done':
|
|
81
|
+
bundler.bundle.dir = msg.outDir;
|
|
82
|
+
return resolve(bundler);
|
|
83
|
+
case 'fail':
|
|
84
|
+
return reject(msg.error);
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
|
|
88
|
+
ps.send(setup, start);
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
export function callStatic<T extends BaseBundleParameters>(name: string, path: string, args: T) {
|
|
93
|
+
const cwd = args.root;
|
|
94
|
+
return new Promise<Bundler>((resolve, reject) => {
|
|
95
|
+
const ps = fork(getPath(name), [], { cwd });
|
|
96
|
+
const bundler = createBundler(cwd, ps, args);
|
|
97
|
+
const setup = {
|
|
98
|
+
type: 'init',
|
|
99
|
+
path,
|
|
100
|
+
};
|
|
101
|
+
const start = () => {
|
|
102
|
+
ps.send({
|
|
103
|
+
type: 'start',
|
|
104
|
+
...args,
|
|
105
|
+
});
|
|
106
|
+
};
|
|
107
|
+
|
|
108
|
+
ps.on('message', (msg: any) => {
|
|
109
|
+
switch (msg.type) {
|
|
110
|
+
case 'done':
|
|
111
|
+
bundler.bundle.dir = msg.outDir;
|
|
112
|
+
bundler.bundle.name = msg.outFile;
|
|
113
|
+
return resolve(bundler);
|
|
114
|
+
case 'fail':
|
|
115
|
+
return reject(msg.error);
|
|
116
|
+
}
|
|
117
|
+
});
|
|
118
|
+
|
|
119
|
+
ps.send(setup, start);
|
|
120
|
+
});
|
|
121
|
+
}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import type { PiletSchemaVersion, LogLevels, SharedDependency, PiletBuildHandler } from '../types';
|
|
2
|
+
import { setStandardEnvs } from '../common';
|
|
3
|
+
|
|
4
|
+
let handler: PiletBuildHandler;
|
|
5
|
+
|
|
6
|
+
function run(
|
|
7
|
+
root: string,
|
|
8
|
+
piral: string,
|
|
9
|
+
sourceMaps: boolean,
|
|
10
|
+
contentHash: boolean,
|
|
11
|
+
minify: boolean,
|
|
12
|
+
externals: Array<string>,
|
|
13
|
+
importmap: Array<SharedDependency>,
|
|
14
|
+
targetDir: string,
|
|
15
|
+
outDir: string,
|
|
16
|
+
outFile: string,
|
|
17
|
+
entryModule: string,
|
|
18
|
+
version: PiletSchemaVersion,
|
|
19
|
+
logLevel: LogLevels,
|
|
20
|
+
args: any,
|
|
21
|
+
) {
|
|
22
|
+
setStandardEnvs({
|
|
23
|
+
production: true,
|
|
24
|
+
piral,
|
|
25
|
+
root,
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
return handler.create({
|
|
29
|
+
root,
|
|
30
|
+
piral,
|
|
31
|
+
entryModule,
|
|
32
|
+
targetDir,
|
|
33
|
+
outDir,
|
|
34
|
+
outFile,
|
|
35
|
+
externals,
|
|
36
|
+
importmap,
|
|
37
|
+
version,
|
|
38
|
+
develop: false,
|
|
39
|
+
sourceMaps,
|
|
40
|
+
contentHash,
|
|
41
|
+
minify,
|
|
42
|
+
logLevel,
|
|
43
|
+
watch: false,
|
|
44
|
+
args,
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
process.on('message', async (msg) => {
|
|
49
|
+
try {
|
|
50
|
+
switch (msg.type) {
|
|
51
|
+
case 'init':
|
|
52
|
+
handler = require(msg.path);
|
|
53
|
+
break;
|
|
54
|
+
case 'start':
|
|
55
|
+
const bundler = await run(
|
|
56
|
+
process.cwd(),
|
|
57
|
+
msg.piral,
|
|
58
|
+
msg.sourceMaps,
|
|
59
|
+
msg.contentHash,
|
|
60
|
+
msg.minify,
|
|
61
|
+
msg.externals,
|
|
62
|
+
msg.importmap,
|
|
63
|
+
msg.targetDir,
|
|
64
|
+
msg.outDir,
|
|
65
|
+
msg.outFile,
|
|
66
|
+
msg.entryModule,
|
|
67
|
+
msg.version,
|
|
68
|
+
msg.logLevel,
|
|
69
|
+
msg,
|
|
70
|
+
);
|
|
71
|
+
const result = await bundler.bundle();
|
|
72
|
+
|
|
73
|
+
if (result) {
|
|
74
|
+
process.send({
|
|
75
|
+
type: 'done',
|
|
76
|
+
outDir: result.outDir,
|
|
77
|
+
outFile: result.outFile,
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
break;
|
|
82
|
+
}
|
|
83
|
+
} catch (error) {
|
|
84
|
+
process.send({
|
|
85
|
+
type: 'fail',
|
|
86
|
+
error: error?.message,
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
});
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import type { PiralBuildHandler, LogLevels } from '../types';
|
|
2
|
+
import { setStandardEnvs } from '../common';
|
|
3
|
+
|
|
4
|
+
let handler: PiralBuildHandler;
|
|
5
|
+
|
|
6
|
+
function run(
|
|
7
|
+
root: string,
|
|
8
|
+
piral: string,
|
|
9
|
+
emulator: boolean,
|
|
10
|
+
sourceMaps: boolean,
|
|
11
|
+
contentHash: boolean,
|
|
12
|
+
minify: boolean,
|
|
13
|
+
externals: Array<string>,
|
|
14
|
+
publicUrl: string,
|
|
15
|
+
outFile: string,
|
|
16
|
+
outDir: string,
|
|
17
|
+
entryFiles: string,
|
|
18
|
+
logLevel: LogLevels,
|
|
19
|
+
args: any,
|
|
20
|
+
) {
|
|
21
|
+
setStandardEnvs({
|
|
22
|
+
production: !emulator,
|
|
23
|
+
root,
|
|
24
|
+
debugPiral: emulator,
|
|
25
|
+
debugPilet: emulator,
|
|
26
|
+
piral,
|
|
27
|
+
dependencies: externals,
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
return handler.create({
|
|
31
|
+
root,
|
|
32
|
+
entryFiles,
|
|
33
|
+
outFile,
|
|
34
|
+
outDir,
|
|
35
|
+
externals,
|
|
36
|
+
emulator,
|
|
37
|
+
sourceMaps,
|
|
38
|
+
contentHash,
|
|
39
|
+
minify,
|
|
40
|
+
publicUrl,
|
|
41
|
+
hmr: false,
|
|
42
|
+
logLevel,
|
|
43
|
+
watch: false,
|
|
44
|
+
args,
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
process.on('message', async (msg) => {
|
|
49
|
+
try {
|
|
50
|
+
switch (msg.type) {
|
|
51
|
+
case 'init':
|
|
52
|
+
handler = require(msg.path);
|
|
53
|
+
break;
|
|
54
|
+
case 'start':
|
|
55
|
+
const bundler = await run(
|
|
56
|
+
process.cwd(),
|
|
57
|
+
msg.piral,
|
|
58
|
+
msg.emulator,
|
|
59
|
+
msg.sourceMaps,
|
|
60
|
+
msg.contentHash,
|
|
61
|
+
msg.minify,
|
|
62
|
+
msg.externals,
|
|
63
|
+
msg.publicUrl,
|
|
64
|
+
msg.outFile,
|
|
65
|
+
msg.outDir,
|
|
66
|
+
msg.entryFiles,
|
|
67
|
+
msg.logLevel,
|
|
68
|
+
msg,
|
|
69
|
+
);
|
|
70
|
+
const result = await bundler.bundle();
|
|
71
|
+
|
|
72
|
+
if (result) {
|
|
73
|
+
process.send({
|
|
74
|
+
type: 'done',
|
|
75
|
+
outDir: result.outDir,
|
|
76
|
+
outFile: result.outFile,
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
break;
|
|
81
|
+
}
|
|
82
|
+
} catch (error) {
|
|
83
|
+
process.send({
|
|
84
|
+
type: 'fail',
|
|
85
|
+
error: error?.message,
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
});
|