@unisphere/cli 1.59.0 → 2.1.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/bundler/package/rollup.js +9 -4
- package/package.json +3 -1
- package/src/lib/commands/application/serve-command.js +18 -2
- package/src/lib/commands/application/serve-command.js.map +1 -1
- package/src/lib/commands/dev/local-nx-command.js +55 -22
- package/src/lib/commands/dev/local-nx-command.js.map +1 -1
- package/src/lib/commands/how-to/command.js +30 -0
- package/src/lib/commands/how-to/command.js.map +1 -1
- package/src/lib/commands/licenses/command.d.ts +2 -0
- package/src/lib/commands/licenses/command.js +274 -0
- package/src/lib/commands/licenses/command.js.map +1 -0
- package/src/lib/commands/package/build-command.js +31 -0
- package/src/lib/commands/package/build-command.js.map +1 -1
- package/src/lib/commands/package/licenses/command.d.ts +2 -0
- package/src/lib/commands/package/licenses/command.js +12 -0
- package/src/lib/commands/package/licenses/command.js.map +1 -0
- package/src/lib/commands/package/licenses/extract-command.d.ts +2 -0
- package/src/lib/commands/package/licenses/extract-command.js +140 -0
- package/src/lib/commands/package/licenses/extract-command.js.map +1 -0
- package/src/lib/commands/package/package-commands.js +2 -0
- package/src/lib/commands/package/package-commands.js.map +1 -1
- package/src/lib/commands/package/publish/publish.js +4 -0
- package/src/lib/commands/package/publish/publish.js.map +1 -1
- package/src/lib/commands/runtime/build-command.js +39 -0
- package/src/lib/commands/runtime/build-command.js.map +1 -1
- package/src/lib/commands/runtime/command.js +2 -0
- package/src/lib/commands/runtime/command.js.map +1 -1
- package/src/lib/commands/runtime/licenses/command.d.ts +2 -0
- package/src/lib/commands/runtime/licenses/command.js +12 -0
- package/src/lib/commands/runtime/licenses/command.js.map +1 -0
- package/src/lib/commands/runtime/licenses/extract-command.d.ts +2 -0
- package/src/lib/commands/runtime/licenses/extract-command.js +119 -0
- package/src/lib/commands/runtime/licenses/extract-command.js.map +1 -0
- package/src/lib/utils/unisphere/augment-workspace-config.js +46 -28
- package/src/lib/utils/unisphere/augment-workspace-config.js.map +1 -1
- package/src/lib/utils/unisphere/build-unisphere-elements.js +4 -3
- package/src/lib/utils/unisphere/build-unisphere-elements.js.map +1 -1
- package/src/lib/utils/unisphere/fix-package-dist-package-json.js +49 -12
- package/src/lib/utils/unisphere/fix-package-dist-package-json.js.map +1 -1
- package/src/lib/utils/unisphere/get-dependency-graph.d.ts +4 -2
- package/src/lib/utils/unisphere/get-dependency-graph.js +85 -69
- package/src/lib/utils/unisphere/get-dependency-graph.js.map +1 -1
- package/src/lib/utils/unisphere/get-licenses.d.ts +26 -0
- package/src/lib/utils/unisphere/get-licenses.js +128 -0
- package/src/lib/utils/unisphere/get-licenses.js.map +1 -0
- package/src/lib/utils/unisphere/types.d.ts +1 -1
- package/src/lib/utils/unisphere/types.js +1 -0
- package/src/lib/utils/unisphere/types.js.map +1 -1
- package/src/lib/utils/unisphere/workspace.js +25 -0
- package/src/lib/utils/unisphere/workspace.js.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fix-package-dist-package-json.js","sourceRoot":"","sources":["../../../../../../../packages/unisphere-cli/src/lib/utils/unisphere/fix-package-dist-package-json.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"fix-package-dist-package-json.js","sourceRoot":"","sources":["../../../../../../../packages/unisphere-cli/src/lib/utils/unisphere/fix-package-dist-package-json.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
export declare function getDependencyGraphAndFilteredDeps(rootDir: string, packageDir: string, patterns?: any[]
|
|
1
|
+
export declare function getDependencyGraphAndFilteredDeps(rootDir: string, packageDir: string, patterns?: any[], options?: {
|
|
2
|
+
includeTransitive?: boolean;
|
|
3
|
+
}): Promise<{
|
|
2
4
|
graph: Record<string, {
|
|
3
5
|
name: string;
|
|
4
6
|
version: string;
|
|
@@ -7,4 +9,4 @@ export declare function getDependencyGraphAndFilteredDeps(rootDir: string, packa
|
|
|
7
9
|
devDependencies: Record<string, string>;
|
|
8
10
|
}>;
|
|
9
11
|
notAllowed: string[];
|
|
10
|
-
}
|
|
12
|
+
}>;
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getDependencyGraphAndFilteredDeps = getDependencyGraphAndFilteredDeps;
|
|
4
|
-
const
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
5
|
const path = require("path");
|
|
6
6
|
const debug_1 = require("debug");
|
|
7
|
+
const devkit_1 = require("@nrwl/devkit");
|
|
7
8
|
const debug = (0, debug_1.default)('unisphere:utils:get-dependency-graph');
|
|
8
9
|
function matchesPattern(packageName, pattern) {
|
|
9
10
|
// Convert glob-like pattern to regex
|
|
@@ -16,78 +17,93 @@ function matchesPattern(packageName, pattern) {
|
|
|
16
17
|
const regex = new RegExp(`^${regexPattern}$`);
|
|
17
18
|
return regex.test(packageName);
|
|
18
19
|
}
|
|
19
|
-
function getDependencyGraphAndFilteredDeps(
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
if (!fs.existsSync(packageJsonPath)) {
|
|
34
|
-
return null;
|
|
20
|
+
function getDependencyGraphAndFilteredDeps(rootDir_1, packageDir_1) {
|
|
21
|
+
return tslib_1.__awaiter(this, arguments, void 0, function* (rootDir, packageDir, patterns = [], options = {}) {
|
|
22
|
+
const { includeTransitive = true } = options; // Default to true for backward compatibility
|
|
23
|
+
const packagePath = path.resolve(rootDir, packageDir);
|
|
24
|
+
debug('get dependency graph for %s', packagePath);
|
|
25
|
+
// Get the Nx project graph
|
|
26
|
+
const projectGraph = yield (0, devkit_1.createProjectGraphAsync)();
|
|
27
|
+
// Find the project name from the package directory
|
|
28
|
+
const projectName = Object.keys(projectGraph.nodes).find(name => {
|
|
29
|
+
const node = projectGraph.nodes[name];
|
|
30
|
+
return node.data.root === packageDir || path.resolve(rootDir, node.data.root) === packagePath;
|
|
31
|
+
});
|
|
32
|
+
if (!projectName) {
|
|
33
|
+
throw new Error(`Project not found for path ${packagePath}`);
|
|
35
34
|
}
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
35
|
+
debug('Found project: %s', projectName);
|
|
36
|
+
const graph = {};
|
|
37
|
+
function traverse(currentProjectName, directDependencyName = null, visited = new Set()) {
|
|
38
|
+
if (visited.has(currentProjectName)) {
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
visited.add(currentProjectName);
|
|
42
|
+
const node = projectGraph.nodes[currentProjectName];
|
|
43
|
+
if (!node) {
|
|
44
|
+
debug('Project not found in graph: %s', currentProjectName);
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
debug('extracting dependencies for %s', currentProjectName);
|
|
48
|
+
// Get project metadata
|
|
49
|
+
const version = node.data.version || '0.0.0';
|
|
50
|
+
const key = `${currentProjectName}@${version}`;
|
|
51
|
+
const resolvedDirectDependencyName = directDependencyName || key;
|
|
52
|
+
if (graph[key]) {
|
|
53
|
+
if (directDependencyName && !graph[key].directDependenciesName.includes(directDependencyName)) {
|
|
54
|
+
graph[key].directDependenciesName.push(directDependencyName);
|
|
55
|
+
}
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
// Get dependencies from the project graph
|
|
59
|
+
const dependencies = [];
|
|
60
|
+
const projectDeps = projectGraph.dependencies[currentProjectName] || [];
|
|
61
|
+
projectDeps.forEach(dep => {
|
|
62
|
+
if (dep.target) {
|
|
63
|
+
dependencies.push(dep.target);
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
graph[key] = {
|
|
67
|
+
name: currentProjectName,
|
|
68
|
+
version,
|
|
69
|
+
dependencies,
|
|
70
|
+
peerDependencies: {},
|
|
71
|
+
devDependencies: {},
|
|
72
|
+
directDependenciesName: directDependencyName ? [resolvedDirectDependencyName] : []
|
|
73
|
+
};
|
|
74
|
+
// Build dependency graph recursively
|
|
75
|
+
if (includeTransitive) {
|
|
76
|
+
dependencies.forEach(dep => {
|
|
77
|
+
traverse(dep, resolvedDirectDependencyName, visited);
|
|
78
|
+
});
|
|
79
|
+
}
|
|
57
80
|
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
const key = `${name}@${version}`;
|
|
74
|
-
const isForbidden = patterns.some((p) => matchesPattern(name, p));
|
|
75
|
-
if (isForbidden) {
|
|
76
|
-
const directDep = dependencyChains.get(key);
|
|
77
|
-
if (!forbiddenByDirectDep.has(directDep)) {
|
|
78
|
-
forbiddenByDirectDep.set(directDep, []);
|
|
81
|
+
// Build dependency graph starting from the target project
|
|
82
|
+
traverse(projectName);
|
|
83
|
+
debug('looking for patterns: %s', patterns.join(', '));
|
|
84
|
+
// Find forbidden dependencies and group by direct dependency
|
|
85
|
+
const forbiddenByDirectDep = new Map();
|
|
86
|
+
Object.values(graph).forEach(({ name, version, directDependenciesName }) => {
|
|
87
|
+
const key = `${name}@${version}`;
|
|
88
|
+
const isForbidden = patterns.some((p) => matchesPattern(name, p));
|
|
89
|
+
if (isForbidden) {
|
|
90
|
+
directDependenciesName.forEach((directDependencyName) => {
|
|
91
|
+
if (!forbiddenByDirectDep.has(directDependencyName)) {
|
|
92
|
+
forbiddenByDirectDep.set(directDependencyName, []);
|
|
93
|
+
}
|
|
94
|
+
forbiddenByDirectDep.get(directDependencyName).push(`${name}@${version}`);
|
|
95
|
+
});
|
|
79
96
|
}
|
|
80
|
-
|
|
97
|
+
});
|
|
98
|
+
// Format the result as grouped strings
|
|
99
|
+
const notAllowed = [];
|
|
100
|
+
for (const [directDep, forbidden] of forbiddenByDirectDep.entries()) {
|
|
101
|
+
const forbiddenList = forbidden.sort().join(', ');
|
|
102
|
+
notAllowed.push(`${directDep} -> [${forbiddenList}]`);
|
|
81
103
|
}
|
|
104
|
+
notAllowed.sort();
|
|
105
|
+
debug('not allowed dependencies grouped by direct dependency: %s', notAllowed.join('; '));
|
|
106
|
+
return { graph, notAllowed };
|
|
82
107
|
});
|
|
83
|
-
// Format the result as grouped strings
|
|
84
|
-
const notAllowed = [];
|
|
85
|
-
for (const [directDep, forbidden] of forbiddenByDirectDep.entries()) {
|
|
86
|
-
const forbiddenList = forbidden.sort().join(', ');
|
|
87
|
-
notAllowed.push(`${directDep} -> [${forbiddenList}]`);
|
|
88
|
-
}
|
|
89
|
-
notAllowed.sort();
|
|
90
|
-
debug('not allowed dependencies grouped by direct dependency: %s', notAllowed.join('; '));
|
|
91
|
-
return { graph, notAllowed };
|
|
92
108
|
}
|
|
93
109
|
//# sourceMappingURL=get-dependency-graph.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-dependency-graph.js","sourceRoot":"","sources":["../../../../../../../packages/unisphere-cli/src/lib/utils/unisphere/get-dependency-graph.ts"],"names":[],"mappings":";;AAmBA,
|
|
1
|
+
{"version":3,"file":"get-dependency-graph.js","sourceRoot":"","sources":["../../../../../../../packages/unisphere-cli/src/lib/utils/unisphere/get-dependency-graph.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export interface LicenseInfo {
|
|
2
|
+
packageName: string;
|
|
3
|
+
version: string;
|
|
4
|
+
license: string;
|
|
5
|
+
repository?: string;
|
|
6
|
+
}
|
|
7
|
+
export interface LicenseExtractionOptions {
|
|
8
|
+
includeTransitive?: boolean;
|
|
9
|
+
}
|
|
10
|
+
export interface LicenseExtractionResult {
|
|
11
|
+
licenses: LicenseInfo[];
|
|
12
|
+
missingLicenses: LicenseInfo[];
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Get licenses for all dependencies of a package
|
|
16
|
+
* Reuses the existing dependency graph extraction logic
|
|
17
|
+
*/
|
|
18
|
+
export declare function getLicenses(rootDir: string, packageDir: string, options?: LicenseExtractionOptions): Promise<LicenseExtractionResult>;
|
|
19
|
+
/**
|
|
20
|
+
* Format licenses as JSON
|
|
21
|
+
*/
|
|
22
|
+
export declare function formatLicensesAsJson(licenses: LicenseInfo[]): string;
|
|
23
|
+
/**
|
|
24
|
+
* Format licenses as summary text
|
|
25
|
+
*/
|
|
26
|
+
export declare function formatLicensesAsSummary(licenses: LicenseInfo[]): string;
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getLicenses = getLicenses;
|
|
4
|
+
exports.formatLicensesAsJson = formatLicensesAsJson;
|
|
5
|
+
exports.formatLicensesAsSummary = formatLicensesAsSummary;
|
|
6
|
+
const tslib_1 = require("tslib");
|
|
7
|
+
const fs = require("fs");
|
|
8
|
+
const path = require("path");
|
|
9
|
+
const debug_1 = require("debug");
|
|
10
|
+
const get_dependency_graph_1 = require("./get-dependency-graph");
|
|
11
|
+
const debug = (0, debug_1.default)('unisphere:utils:get-licenses');
|
|
12
|
+
/**
|
|
13
|
+
* Extract license information from a package.json file
|
|
14
|
+
*/
|
|
15
|
+
function extractLicenseFromPackageJson(packageJsonPath) {
|
|
16
|
+
try {
|
|
17
|
+
if (!fs.existsSync(packageJsonPath)) {
|
|
18
|
+
return { license: '' };
|
|
19
|
+
}
|
|
20
|
+
const pkg = JSON.parse(fs.readFileSync(packageJsonPath, 'utf8'));
|
|
21
|
+
let license = '';
|
|
22
|
+
if (pkg.license) {
|
|
23
|
+
if (typeof pkg.license === 'string') {
|
|
24
|
+
license = pkg.license;
|
|
25
|
+
}
|
|
26
|
+
else if (typeof pkg.license === 'object' && pkg.license.type) {
|
|
27
|
+
license = pkg.license.type;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
else if (pkg.licenses && Array.isArray(pkg.licenses) && pkg.licenses.length > 0) {
|
|
31
|
+
// Handle legacy licenses field (deprecated but still in use)
|
|
32
|
+
license = pkg.licenses.map((l) => typeof l === 'string' ? l : l.type).join(', ');
|
|
33
|
+
}
|
|
34
|
+
let repository;
|
|
35
|
+
if (pkg.repository) {
|
|
36
|
+
if (typeof pkg.repository === 'string') {
|
|
37
|
+
repository = pkg.repository;
|
|
38
|
+
}
|
|
39
|
+
else if (typeof pkg.repository === 'object' && pkg.repository.url) {
|
|
40
|
+
repository = pkg.repository.url;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
return { license, repository };
|
|
44
|
+
}
|
|
45
|
+
catch (error) {
|
|
46
|
+
debug('error extracting license from %s: %s', packageJsonPath, error.message);
|
|
47
|
+
return { license: '' };
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Get licenses for all dependencies of a package
|
|
52
|
+
* Reuses the existing dependency graph extraction logic
|
|
53
|
+
*/
|
|
54
|
+
function getLicenses(rootDir_1, packageDir_1) {
|
|
55
|
+
return tslib_1.__awaiter(this, arguments, void 0, function* (rootDir, packageDir, options = {}) {
|
|
56
|
+
const { includeTransitive = false } = options;
|
|
57
|
+
debug('get licenses for %s', packageDir);
|
|
58
|
+
// Reuse existing dependency graph extraction with the includeTransitive flag
|
|
59
|
+
const { graph } = yield (0, get_dependency_graph_1.getDependencyGraphAndFilteredDeps)(rootDir, packageDir, [], { includeTransitive });
|
|
60
|
+
const licenses = [];
|
|
61
|
+
const missingLicenses = [];
|
|
62
|
+
// Extract license info from the graph
|
|
63
|
+
for (const [key, node] of Object.entries(graph)) {
|
|
64
|
+
const { name, version } = node;
|
|
65
|
+
debug('extracting license for %s', key);
|
|
66
|
+
// Resolve package.json path
|
|
67
|
+
const packageJsonPath = path.resolve(rootDir, 'node_modules', name, 'package.json');
|
|
68
|
+
const { license, repository } = extractLicenseFromPackageJson(packageJsonPath);
|
|
69
|
+
const licenseInfo = {
|
|
70
|
+
packageName: name,
|
|
71
|
+
version,
|
|
72
|
+
license,
|
|
73
|
+
repository,
|
|
74
|
+
};
|
|
75
|
+
licenses.push(licenseInfo);
|
|
76
|
+
// Track packages with missing licenses
|
|
77
|
+
if (!license || license.trim() === '') {
|
|
78
|
+
missingLicenses.push(licenseInfo);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
// Sort by package name for consistent output
|
|
82
|
+
licenses.sort((a, b) => a.packageName.localeCompare(b.packageName));
|
|
83
|
+
missingLicenses.sort((a, b) => a.packageName.localeCompare(b.packageName));
|
|
84
|
+
debug('extracted %d licenses (%d missing)', licenses.length, missingLicenses.length);
|
|
85
|
+
return { licenses, missingLicenses };
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Format licenses as JSON
|
|
90
|
+
*/
|
|
91
|
+
function formatLicensesAsJson(licenses) {
|
|
92
|
+
return JSON.stringify(licenses, null, 2);
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Format licenses as summary text
|
|
96
|
+
*/
|
|
97
|
+
function formatLicensesAsSummary(licenses) {
|
|
98
|
+
const lines = [];
|
|
99
|
+
lines.push('License Summary');
|
|
100
|
+
lines.push('===============\n');
|
|
101
|
+
// Group by license type
|
|
102
|
+
const byLicense = new Map();
|
|
103
|
+
for (const info of licenses) {
|
|
104
|
+
const licenseKey = info.license || 'Unknown';
|
|
105
|
+
if (!byLicense.has(licenseKey)) {
|
|
106
|
+
byLicense.set(licenseKey, []);
|
|
107
|
+
}
|
|
108
|
+
byLicense.get(licenseKey).push(info);
|
|
109
|
+
}
|
|
110
|
+
// Sort license types
|
|
111
|
+
const sortedLicenses = Array.from(byLicense.keys()).sort();
|
|
112
|
+
for (const license of sortedLicenses) {
|
|
113
|
+
const packages = byLicense.get(license);
|
|
114
|
+
lines.push(`${license} (${packages.length} packages)`);
|
|
115
|
+
lines.push('-'.repeat(50));
|
|
116
|
+
for (const pkg of packages) {
|
|
117
|
+
let line = ` ${pkg.packageName}@${pkg.version}`;
|
|
118
|
+
if (pkg.repository) {
|
|
119
|
+
line += ` - ${pkg.repository}`;
|
|
120
|
+
}
|
|
121
|
+
lines.push(line);
|
|
122
|
+
}
|
|
123
|
+
lines.push('');
|
|
124
|
+
}
|
|
125
|
+
lines.push(`\nTotal packages: ${licenses.length}`);
|
|
126
|
+
return lines.join('\n');
|
|
127
|
+
}
|
|
128
|
+
//# sourceMappingURL=get-licenses.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-licenses.js","sourceRoot":"","sources":["../../../../../../../packages/unisphere-cli/src/lib/utils/unisphere/get-licenses.ts"],"names":[],"mappings":";;AAkEA,kCA8CC;AAKD,oDAEC;AAKD,0DAsCC;;AAlKD,yBAAyB;AACzB,6BAA6B;AAC7B,iCAA0B;AAC1B,iEAA2E;AAE3E,MAAM,KAAK,GAAG,IAAA,eAAK,EAAC,8BAA8B,CAAC,CAAC;AAkBpD;;GAEG;AACH,SAAS,6BAA6B,CAAC,eAAuB;IAC5D,IAAI,CAAC;QACH,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACpC,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;QACzB,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC;QAEjE,IAAI,OAAO,GAAG,EAAE,CAAC;QACjB,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YAChB,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBACpC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;YACxB,CAAC;iBAAM,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBAC/D,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC;YAC7B,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClF,6DAA6D;YAC7D,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxF,CAAC;QAED,IAAI,UAA8B,CAAC;QACnC,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;YACnB,IAAI,OAAO,GAAG,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;gBACvC,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC;YAC9B,CAAC;iBAAM,IAAI,OAAO,GAAG,CAAC,UAAU,KAAK,QAAQ,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;gBACpE,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;YAClC,CAAC;QACH,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;IACjC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,KAAK,CAAC,sCAAsC,EAAE,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC9E,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IACzB,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAsB,WAAW;iEAC/B,OAAe,EACf,UAAkB,EAClB,UAAoC,EAAE;QAEtC,MAAM,EAAE,iBAAiB,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;QAE9C,KAAK,CAAC,qBAAqB,EAAE,UAAU,CAAC,CAAC;QAEzC,6EAA6E;QAC7E,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAA,wDAAiC,EAAC,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,iBAAiB,EAAE,CAAC,CAAC;QAE1G,MAAM,QAAQ,GAAkB,EAAE,CAAC;QACnC,MAAM,eAAe,GAAkB,EAAE,CAAC;QAE1C,sCAAsC;QACtC,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAChD,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;YAE/B,KAAK,CAAC,2BAA2B,EAAE,GAAG,CAAC,CAAC;YAExC,4BAA4B;YAC5B,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;YACpF,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,6BAA6B,CAAC,eAAe,CAAC,CAAC;YAE/E,MAAM,WAAW,GAAgB;gBAC/B,WAAW,EAAE,IAAI;gBACjB,OAAO;gBACP,OAAO;gBACP,UAAU;aACX,CAAC;YAEF,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAE3B,uCAAuC;YACvC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;gBACtC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;QAED,6CAA6C;QAC7C,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;QACpE,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;QAE3E,KAAK,CAAC,oCAAoC,EAAE,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;QACrF,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;IACvC,CAAC;CAAA;AAED;;GAEG;AACH,SAAgB,oBAAoB,CAAC,QAAuB;IAC1D,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAC3C,CAAC;AAED;;GAEG;AACH,SAAgB,uBAAuB,CAAC,QAAuB;IAC7D,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC9B,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAEhC,wBAAwB;IACxB,MAAM,SAAS,GAAG,IAAI,GAAG,EAAyB,CAAC;IAEnD,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,IAAI,SAAS,CAAC;QAC7C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/B,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QAChC,CAAC;QACD,SAAS,CAAC,GAAG,CAAC,UAAU,CAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,qBAAqB;IACrB,MAAM,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAE3D,KAAK,MAAM,OAAO,IAAI,cAAc,EAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,CAAE,CAAC;QACzC,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,KAAK,QAAQ,CAAC,MAAM,YAAY,CAAC,CAAC;QACvD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QAE3B,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC3B,IAAI,IAAI,GAAG,KAAK,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YACjD,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;gBACnB,IAAI,IAAI,MAAM,GAAG,CAAC,UAAU,EAAE,CAAC;YACjC,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,qBAAqB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAEnD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
|
|
@@ -10,7 +10,7 @@ export interface UnisphereApplicationElement extends UnisphereElement {
|
|
|
10
10
|
distributionChannel: 'none' | 'unisphere';
|
|
11
11
|
}
|
|
12
12
|
export interface UnispherePackageElement extends UnisphereElement {
|
|
13
|
-
distributionChannel
|
|
13
|
+
distributionChannel?: 'none' | 'npm' | 'github';
|
|
14
14
|
scope: 'global' | 'widget';
|
|
15
15
|
}
|
|
16
16
|
interface AugmentedUnisphereElement {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../../packages/unisphere-cli/src/lib/utils/unisphere/types.ts"],"names":[],"mappings":";;;AA6Ba,QAAA,6BAA6B,GAAW;IACnD,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,GAAG,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE;QAC3C,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE;QAC/C,IAAI,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE;QAC5C,IAAI,EAAE;YACJ,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;YAC1B,QAAQ,EAAE,IAAI;SACf;QACD,aAAa,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE;QACrD,WAAW,EAAE;YACX,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,IAAI,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE;oBAC5C,QAAQ,EAAE;wBACR,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE;4BACL,IAAI,EAAE,WAAW;4BACjB,KAAK,EAAE,QAAQ;yBAChB;qBACF;oBACD,QAAQ,EAAE;wBACR,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE;4BACL,IAAI,EAAE,WAAW;4BACjB,KAAK,EAAE,QAAQ;yBAChB;qBACF;iBACF;gBACD,sBAAsB,EAAE,KAAK;aAC9B;SACF;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,YAAY,EAAE;oBACZ,IAAI,EAAE,KAAK;oBACX,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,UAAU,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE;4BAClD,mBAAmB,EAAE;gCACnB,IAAI,EAAE,MAAM;gCACZ,MAAM,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;6BAC9B;yBACF;qBACF;oBACD,QAAQ,EAAE,IAAI;iBACf;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,KAAK;oBACX,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,UAAU,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE;4BAClD,mBAAmB,EAAE;gCACnB,IAAI,EAAE,MAAM;gCACZ,MAAM,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../../packages/unisphere-cli/src/lib/utils/unisphere/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,30 @@ const prompts_1 = require("../prompts/prompts");
|
|
|
9
9
|
const augment_workspace_config_1 = require("./augment-workspace-config");
|
|
10
10
|
const validator_1 = require("../validator");
|
|
11
11
|
const debug = (0, debug_1.default)('unisphere:utils:unisphere');
|
|
12
|
+
/**
|
|
13
|
+
* Validates that the schema version is 2.x
|
|
14
|
+
* @param schemaVersion - The schema version string from .unisphere file
|
|
15
|
+
* @throws Error if version is not 2.x
|
|
16
|
+
*/
|
|
17
|
+
const validateSchemaVersion = (schemaVersion) => {
|
|
18
|
+
// Parse semantic version (expects format: major.minor.patch)
|
|
19
|
+
const versionMatch = schemaVersion.match(/^(\d+)\.(\d+)\.(\d+)$/);
|
|
20
|
+
if (!versionMatch) {
|
|
21
|
+
(0, prompts_1.logErrorAndRethrow)(`Invalid .unisphere schema version format: '${schemaVersion}'\n\n` +
|
|
22
|
+
`Expected format: major.minor.patch (e.g., '2.0.0')`);
|
|
23
|
+
}
|
|
24
|
+
const majorVersion = parseInt(versionMatch[1], 10);
|
|
25
|
+
// Only accept version 2.x
|
|
26
|
+
if (majorVersion !== 2) {
|
|
27
|
+
const upgradeMessage = majorVersion === 1
|
|
28
|
+
? `\nTo upgrade your project to schema version 2.x, please follow the migration guide:\n` +
|
|
29
|
+
`https://unisphere.kaltura.com/docs/create/changelog/v3-x-major-release`
|
|
30
|
+
: `\nThis CLI version only supports schema version 2.x`;
|
|
31
|
+
(0, prompts_1.logErrorAndRethrow)(`Invalid .unisphere schema version: Found '${schemaVersion}', but this CLI requires version 2.x` +
|
|
32
|
+
upgradeMessage);
|
|
33
|
+
}
|
|
34
|
+
debug(`Schema version ${schemaVersion} is valid (2.x)`);
|
|
35
|
+
};
|
|
12
36
|
const getRuntimeBucketKey = () => `v1/runtime.json`;
|
|
13
37
|
exports.getRuntimeBucketKey = getRuntimeBucketKey;
|
|
14
38
|
const getUnisphereWorkspace = (cwd, options) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -26,6 +50,7 @@ const getUnisphereWorkspace = (cwd, options) => tslib_1.__awaiter(void 0, void 0
|
|
|
26
50
|
});
|
|
27
51
|
(0, prompts_1.logErrorAndRethrow)('Invalid workspace configuration');
|
|
28
52
|
}
|
|
53
|
+
validateSchemaVersion(workspaceConfiguration.schemaVersion);
|
|
29
54
|
if (!['kaltura', 'unisphere'].includes(workspaceConfiguration.company)) {
|
|
30
55
|
(0, prompts_1.logErrorAndRethrow)(`Only Kaltura widgets are supported, got '${workspaceConfiguration.company}'`);
|
|
31
56
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../../../../../../packages/unisphere-cli/src/lib/utils/unisphere/workspace.ts"],"names":[],"mappings":";;;;AAAA,yEAAuE;AACvE,iCAA0B;AAC1B,mCAA4E;AAC5E,
|
|
1
|
+
{"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../../../../../../packages/unisphere-cli/src/lib/utils/unisphere/workspace.ts"],"names":[],"mappings":";;;;AAAA,yEAAuE;AACvE,iCAA0B;AAC1B,mCAA4E;AAC5E,gDAAwD;AACxD,yEAAoE;AACpE,4CAA8C;AAE9C,MAAM,KAAK,GAAG,IAAA,eAAK,EAAC,2BAA2B,CAAC,CAAC;AAEjD;;;;GAIG;AACH,MAAM,qBAAqB,GAAG,CAAC,aAAqB,EAAQ,EAAE;IAC5D,6DAA6D;IAC7D,MAAM,YAAY,GAAG,aAAa,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;IAElE,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,IAAA,4BAAkB,EAChB,8CAA8C,aAAa,OAAO;YAChE,oDAAoD,CACvD,CAAC;IACJ,CAAC;IAED,MAAM,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEnD,0BAA0B;IAC1B,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,cAAc,GAClB,YAAY,KAAK,CAAC;YAChB,CAAC,CAAC,uFAAuF;gBACvF,wEAAwE;YAC1E,CAAC,CAAC,qDAAqD,CAAC;QAE5D,IAAA,4BAAkB,EAChB,6CAA6C,aAAa,sCAAsC;YAC9F,cAAc,CACjB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,kBAAkB,aAAa,iBAAiB,CAAC,CAAC;AAC1D,CAAC,CAAC;AAEK,MAAM,mBAAmB,GAAG,GAAG,EAAE,CAAC,iBAAiB,CAAC;AAA9C,QAAA,mBAAmB,uBAA2B;AAEpD,MAAM,qBAAqB,GAAG,CACnC,GAAW,EACX,OAEC,EAC4B,EAAE;;IAC/B,KAAK,CACH,yEAAyE,CAC1E,CAAC;IAEF,MAAM,sBAAsB,GAAG,IAAA,oDAAyB,EACtD,GAAG,EACH,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,gBAAgB,mCAAI,KAAK,CACnC,CAAC;IAEF,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC5B,IAAA,4BAAkB,EAAC,wCAAwC,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,gBAAgB,GAAG,IAAA,0BAAc,EACrC,sBAAsB,EACtB,qCAA6B,EAC7B,yBAAyB,CAC1B,CAAC;IAEF,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,KAAK,CAAC,kCAAkC,CAAC,CAAC;QAC1C,gBAAgB,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACjC,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;QACH,IAAA,4BAAkB,EAAC,iCAAiC,CAAC,CAAC;IACxD,CAAC;IAED,qBAAqB,CAAC,sBAAsB,CAAC,aAAa,CAAC,CAAC;IAE5D,IAAI,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,sBAAsB,CAAC,OAAO,CAAC,EAAE,CAAC;QACvE,IAAA,4BAAkB,EAChB,4CAA4C,sBAAsB,CAAC,OAAO,GAAG,CAC9E,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,IAAA,iDAAsB,EACnC,sBAAsB,CAAC,GAAG,EAC1B,sBAAsB,CACvB,CAAC;IAEF,OAAO;QACL,UAAU,EAAE;YACV,kBAAkB,EAAE,sBAAsB,CAAC,GAAG;SAC/C;QACD,MAAM;KACP,CAAC;AACJ,CAAC,CAAA,CAAC;AApDW,QAAA,qBAAqB,yBAoDhC"}
|