@unisphere/cli 1.51.3 → 1.51.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -2
- package/src/lib/commands/check/command.js +1 -1
- package/src/lib/commands/check/command.js.map +1 -1
- package/src/lib/commands/info/command.js +1 -1
- package/src/lib/commands/info/command.js.map +1 -1
- package/src/lib/unisphere.js +0 -2
- package/src/lib/unisphere.js.map +1 -1
- package/src/lib/utils/get-cli-version.d.ts +1 -1
- package/src/lib/utils/get-cli-version.js +9 -3
- package/src/lib/utils/get-cli-version.js.map +1 -1
- package/_templates/unisphere-repo/.editorconfig +0 -13
- package/_templates/unisphere-repo/.eslintignore +0 -1
- package/_templates/unisphere-repo/.eslintrc.json +0 -46
- package/_templates/unisphere-repo/.nvmrc +0 -1
- package/_templates/unisphere-repo/.prettierignore +0 -5
- package/_templates/unisphere-repo/.prettierrc +0 -3
- package/_templates/unisphere-repo/.unisphere +0 -11
- package/_templates/unisphere-repo/README.md +0 -1
- package/_templates/unisphere-repo/jest.config.ts +0 -5
- package/_templates/unisphere-repo/jest.preset.js +0 -3
- package/_templates/unisphere-repo/nx.json +0 -76
- package/_templates/unisphere-repo/package-lock.json +0 -26338
- package/_templates/unisphere-repo/package.json +0 -106
- package/_templates/unisphere-repo/patches/@changesets+cli+2.27.11.patch +0 -58
- package/_templates/unisphere-repo/patches/@nx+rollup+19.2.2.patch +0 -29
- package/_templates/unisphere-repo/tsconfig.base.json +0 -22
- package/_templates/unisphere-repo/unisphere/applications/.gitkeep +0 -0
- package/_templates/unisphere-repo/unisphere/packages/.gitkeep +0 -0
- package/_templates/unisphere-repo/vitest.workspace.ts +0 -1
- package/src/lib/commands/generate/create-unisphere-repo-command.d.ts +0 -2
- package/src/lib/commands/generate/create-unisphere-repo-command.js +0 -211
- package/src/lib/commands/generate/create-unisphere-repo-command.js.map +0 -1
- package/src/lib/commands/generate/generate-commands.d.ts +0 -2
- package/src/lib/commands/generate/generate-commands.js +0 -13
- package/src/lib/commands/generate/generate-commands.js.map +0 -1
- package/src/lib/commands/generate/overwrite-placeholders.d.ts +0 -4
- package/src/lib/commands/generate/overwrite-placeholders.js +0 -119
- package/src/lib/commands/generate/overwrite-placeholders.js.map +0 -1
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "{{company-name|lower-dash-case}}-{{project-name|lower-dash-case}}/source",
|
|
3
|
-
"version": "1.0.0",
|
|
4
|
-
"license": "MIT",
|
|
5
|
-
"scripts": {
|
|
6
|
-
"postinstall": "patch-package && npm run reset",
|
|
7
|
-
"start": "unisphere how-to",
|
|
8
|
-
"info": "unisphere info",
|
|
9
|
-
"check": "unisphere check",
|
|
10
|
-
"reset": "unisphere reset",
|
|
11
|
-
"changeset": "changeset"
|
|
12
|
-
},
|
|
13
|
-
"private": true,
|
|
14
|
-
"devDependencies": {
|
|
15
|
-
"@babel/core": "^7.14.5",
|
|
16
|
-
"@babel/preset-react": "^7.14.5",
|
|
17
|
-
"@changesets/cli": "^2.27.11",
|
|
18
|
-
"@nx/eslint": "19.2.2",
|
|
19
|
-
"@nx/eslint-plugin": "19.2.2",
|
|
20
|
-
"@nx/jest": "19.2.2",
|
|
21
|
-
"@nx/js": "19.2.2",
|
|
22
|
-
"@nx/react": "^19.2.2",
|
|
23
|
-
"@nx/rollup": "19.2.2",
|
|
24
|
-
"@nx/vite": "19.2.2",
|
|
25
|
-
"@nx/web": "19.2.2",
|
|
26
|
-
"@nx/webpack": "19.2.2",
|
|
27
|
-
"@nx/workspace": "19.2.2",
|
|
28
|
-
"@rollup/plugin-alias": "^5.1.0",
|
|
29
|
-
"@rollup/plugin-replace": "^5.0.7",
|
|
30
|
-
"@rollup/plugin-terser": "^0.4.4",
|
|
31
|
-
"@rollup/plugin-url": "^8.0.2",
|
|
32
|
-
"@svgr/rollup": "^8.1.0",
|
|
33
|
-
"@svgr/webpack": "^8.0.1",
|
|
34
|
-
"@swc-node/register": "~1.9.1",
|
|
35
|
-
"@swc/cli": "~0.3.12",
|
|
36
|
-
"@swc/core": "~1.5.7",
|
|
37
|
-
"@swc/helpers": "~0.5.11",
|
|
38
|
-
"@testing-library/react": "15.0.6",
|
|
39
|
-
"@types/jest": "^29.4.0",
|
|
40
|
-
"@types/node": "18.16.9",
|
|
41
|
-
"@types/react": "18.3.1",
|
|
42
|
-
"@types/react-dom": "18.3.0",
|
|
43
|
-
"@typescript-eslint/eslint-plugin": "^7.3.0",
|
|
44
|
-
"@typescript-eslint/parser": "^7.3.0",
|
|
45
|
-
"@vitejs/plugin-react": "^4.2.0",
|
|
46
|
-
"@vitest/coverage-v8": "^1.0.4",
|
|
47
|
-
"@vitest/ui": "^1.3.1",
|
|
48
|
-
"babel-jest": "^29.4.1",
|
|
49
|
-
"concurrently": "^8.2.2",
|
|
50
|
-
"core-js": "^3.36.1",
|
|
51
|
-
"eslint": "~8.57.0",
|
|
52
|
-
"eslint-config-prettier": "^9.0.0",
|
|
53
|
-
"eslint-plugin-import": "2.27.5",
|
|
54
|
-
"eslint-plugin-jsx-a11y": "6.7.1",
|
|
55
|
-
"eslint-plugin-react": "7.32.2",
|
|
56
|
-
"eslint-plugin-react-hooks": "4.6.0",
|
|
57
|
-
"jest": "^29.4.1",
|
|
58
|
-
"jest-environment-jsdom": "^29.4.1",
|
|
59
|
-
"jsdom": "~22.1.0",
|
|
60
|
-
"local-web-server": "^5.3.3",
|
|
61
|
-
"nx": "19.2.2",
|
|
62
|
-
"patch-package": "^8.0.0",
|
|
63
|
-
"prettier": "^2.6.2",
|
|
64
|
-
"rollup": "^4.14.0",
|
|
65
|
-
"rollup-plugin-analyzer": "^4.0.0",
|
|
66
|
-
"ts-jest": "^29.1.0",
|
|
67
|
-
"ts-node": "10.9.1",
|
|
68
|
-
"tslib": "^2.3.0",
|
|
69
|
-
"typescript": "~5.4.2",
|
|
70
|
-
"vite": "^5.0.0",
|
|
71
|
-
"vitest": "^1.3.1",
|
|
72
|
-
"webpack-cli": "^5.1.4"
|
|
73
|
-
},
|
|
74
|
-
"overrides": {
|
|
75
|
-
"@mui/styles@5": {
|
|
76
|
-
"react": "18.x"
|
|
77
|
-
}
|
|
78
|
-
},
|
|
79
|
-
"dependencies": {
|
|
80
|
-
"@emotion/react": "^11.13.0",
|
|
81
|
-
"@emotion/styled": "^11.13.0",
|
|
82
|
-
"@kaltura/ds-react-bits": "^10.11.5",
|
|
83
|
-
"@kaltura/ds-react-components": "^10.11.5",
|
|
84
|
-
"@kaltura/ds-react-icons": "^10.11.5",
|
|
85
|
-
"@kaltura/ds-react-theme": "^10.11.5",
|
|
86
|
-
"@kaltura/ds-react-utils": "^10.11.5",
|
|
87
|
-
"@mui/icons-material": "^5.15.21",
|
|
88
|
-
"@mui/material": "^5.16.6",
|
|
89
|
-
"@unisphere/cli": "^1.45.3",
|
|
90
|
-
"@unisphere/notifications-core": "^1.13.0",
|
|
91
|
-
"@unisphere/notifications-runtime-react": "^1.13.0",
|
|
92
|
-
"@unisphere/runtime": "^1.74.0",
|
|
93
|
-
"@unisphere/runtime-js": "^1.72.1",
|
|
94
|
-
"@unisphere/runtime-react": "^1.69.1",
|
|
95
|
-
"react": "18.3.1",
|
|
96
|
-
"react-dom": "18.3.1",
|
|
97
|
-
"@unisphere/core": "^1.75.7"
|
|
98
|
-
},
|
|
99
|
-
"optionalDependencies": {
|
|
100
|
-
"@nx/nx-linux-x64-gnu": "19.2.2",
|
|
101
|
-
"@rollup/rollup-linux-x64-gnu": "4.22.4"
|
|
102
|
-
},
|
|
103
|
-
"workspaces": [
|
|
104
|
-
"unisphere/**"
|
|
105
|
-
]
|
|
106
|
-
}
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
diff --git a/node_modules/@changesets/cli/dist/changesets-cli.cjs.js b/node_modules/@changesets/cli/dist/changesets-cli.cjs.js
|
|
2
|
-
index eaba708..aa36b0e 100644
|
|
3
|
-
--- a/node_modules/@changesets/cli/dist/changesets-cli.cjs.js
|
|
4
|
-
+++ b/node_modules/@changesets/cli/dist/changesets-cli.cjs.js
|
|
5
|
-
@@ -336,23 +336,7 @@ async function createChangeset(changedPackages, allPackages) {
|
|
6
|
-
const packagesToRelease = await getPackagesToRelease(changedPackages, allPackages);
|
|
7
|
-
let pkgJsonsByName = getPkgJsonsByName(allPackages);
|
|
8
|
-
let pkgsLeftToGetBumpTypeFor = new Set(packagesToRelease);
|
|
9
|
-
- let pkgsThatShouldBeMajorBumped = (await askCheckboxPlus(bold(`Which packages should have a ${red("major")} bump?`), [{
|
|
10
|
-
- name: "all packages",
|
|
11
|
-
- choices: packagesToRelease.map(pkgName => {
|
|
12
|
-
- return {
|
|
13
|
-
- name: pkgName,
|
|
14
|
-
- message: formatPkgNameAndVersion(pkgName, pkgJsonsByName.get(pkgName).version)
|
|
15
|
-
- };
|
|
16
|
-
- })
|
|
17
|
-
- }], x => {
|
|
18
|
-
- // this removes changed packages and unchanged packages from the list
|
|
19
|
-
- // of packages shown after selection
|
|
20
|
-
- if (Array.isArray(x)) {
|
|
21
|
-
- return x.filter(x => x !== "all packages").map(x => cyan(x)).join(", ");
|
|
22
|
-
- }
|
|
23
|
-
-
|
|
24
|
-
- return x;
|
|
25
|
-
- })).filter(x => x !== "all packages");
|
|
26
|
-
+ let pkgsThatShouldBeMajorBumped = []
|
|
27
|
-
|
|
28
|
-
for (const pkgName of pkgsThatShouldBeMajorBumped) {
|
|
29
|
-
// for packages that are under v1, we want to make sure major releases are intended,
|
|
30
|
-
diff --git a/node_modules/@changesets/cli/dist/changesets-cli.esm.js b/node_modules/@changesets/cli/dist/changesets-cli.esm.js
|
|
31
|
-
index 817d3ce..f2fd456 100644
|
|
32
|
-
--- a/node_modules/@changesets/cli/dist/changesets-cli.esm.js
|
|
33
|
-
+++ b/node_modules/@changesets/cli/dist/changesets-cli.esm.js
|
|
34
|
-
@@ -298,23 +298,7 @@ async function createChangeset(changedPackages, allPackages) {
|
|
35
|
-
const packagesToRelease = await getPackagesToRelease(changedPackages, allPackages);
|
|
36
|
-
let pkgJsonsByName = getPkgJsonsByName(allPackages);
|
|
37
|
-
let pkgsLeftToGetBumpTypeFor = new Set(packagesToRelease);
|
|
38
|
-
- let pkgsThatShouldBeMajorBumped = (await askCheckboxPlus(bold(`Which packages should have a ${red("major")} bump?`), [{
|
|
39
|
-
- name: "all packages",
|
|
40
|
-
- choices: packagesToRelease.map(pkgName => {
|
|
41
|
-
- return {
|
|
42
|
-
- name: pkgName,
|
|
43
|
-
- message: formatPkgNameAndVersion(pkgName, pkgJsonsByName.get(pkgName).version)
|
|
44
|
-
- };
|
|
45
|
-
- })
|
|
46
|
-
- }], x => {
|
|
47
|
-
- // this removes changed packages and unchanged packages from the list
|
|
48
|
-
- // of packages shown after selection
|
|
49
|
-
- if (Array.isArray(x)) {
|
|
50
|
-
- return x.filter(x => x !== "all packages").map(x => cyan(x)).join(", ");
|
|
51
|
-
- }
|
|
52
|
-
-
|
|
53
|
-
- return x;
|
|
54
|
-
- })).filter(x => x !== "all packages");
|
|
55
|
-
+ let pkgsThatShouldBeMajorBumped = []
|
|
56
|
-
|
|
57
|
-
for (const pkgName of pkgsThatShouldBeMajorBumped) {
|
|
58
|
-
// for packages that are under v1, we want to make sure major releases are intended,
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
diff --git a/node_modules/@nx/rollup/src/plugins/with-nx/with-nx.js b/node_modules/@nx/rollup/src/plugins/with-nx/with-nx.js
|
|
2
|
-
index bffa207..6f73d4b 100644
|
|
3
|
-
--- a/node_modules/@nx/rollup/src/plugins/with-nx/with-nx.js
|
|
4
|
-
+++ b/node_modules/@nx/rollup/src/plugins/with-nx/with-nx.js
|
|
5
|
-
@@ -118,6 +118,13 @@ dependencies) {
|
|
6
|
-
};
|
|
7
|
-
}
|
|
8
|
-
if (!global.NX_GRAPH_CREATION) {
|
|
9
|
-
+ let compilerOptionsInterceptor = ((config) => config)
|
|
10
|
-
+ if (rollupConfig.unisphere?.interceptors?.compilerOptions) {
|
|
11
|
-
+ console.log(`[unisphere.nx.rollup] using monkey patched interceptor for TS compiler options`);
|
|
12
|
-
+ compilerOptionsInterceptor = rollupConfig.unisphere?.interceptors?.compilerOptions ;
|
|
13
|
-
+ }
|
|
14
|
-
+
|
|
15
|
-
+
|
|
16
|
-
finalConfig.plugins = [
|
|
17
|
-
copy({
|
|
18
|
-
targets: convertCopyAssetsToRollupOptions(options.outputPath, options.assets),
|
|
19
|
-
@@ -128,8 +135,9 @@ dependencies) {
|
|
20
|
-
require('rollup-plugin-typescript2')({
|
|
21
|
-
check: !options.skipTypeCheck,
|
|
22
|
-
tsconfig: options.tsConfig,
|
|
23
|
-
+ exclude: ['**/*.stories.ts', '**/*.stories.tsx'], // Add this line
|
|
24
|
-
tsconfigOverride: {
|
|
25
|
-
- compilerOptions: createTsCompilerOptions(projectRoot, tsConfig, options, dependencies),
|
|
26
|
-
+ compilerOptions: compilerOptionsInterceptor(createTsCompilerOptions(projectRoot, tsConfig, options, dependencies)),
|
|
27
|
-
},
|
|
28
|
-
}),
|
|
29
|
-
(0, type_definitions_1.typeDefinitions)({
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"compileOnSave": false,
|
|
3
|
-
"compilerOptions": {
|
|
4
|
-
"rootDir": ".",
|
|
5
|
-
"sourceMap": true,
|
|
6
|
-
"declaration": false,
|
|
7
|
-
"moduleResolution": "node",
|
|
8
|
-
"emitDecoratorMetadata": true,
|
|
9
|
-
"resolveJsonModule": true,
|
|
10
|
-
"experimentalDecorators": true,
|
|
11
|
-
"importHelpers": true,
|
|
12
|
-
"target": "es2015",
|
|
13
|
-
"module": "esnext",
|
|
14
|
-
"lib": ["es2020", "dom"],
|
|
15
|
-
"skipLibCheck": true,
|
|
16
|
-
"skipDefaultLibCheck": true,
|
|
17
|
-
"baseUrl": ".",
|
|
18
|
-
"paths": {
|
|
19
|
-
}
|
|
20
|
-
},
|
|
21
|
-
"exclude": ["node_modules", "tmp"]
|
|
22
|
-
}
|
|
File without changes
|
|
File without changes
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export default ['**/*/vite.config.ts', '**/*/vitest.config.ts'];
|
|
@@ -1,211 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createCreateUnisphereRepoCommand = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const commander_1 = require("commander");
|
|
6
|
-
const utils_1 = require("../../utils/utils");
|
|
7
|
-
const debug_1 = require("debug");
|
|
8
|
-
const listr2_1 = require("listr2");
|
|
9
|
-
const defaults_1 = require("../../utils/listr2/defaults");
|
|
10
|
-
const path_1 = require("path");
|
|
11
|
-
const fs_1 = require("fs");
|
|
12
|
-
const fs_extra_1 = require("fs-extra");
|
|
13
|
-
const overwrite_placeholders_1 = require("./overwrite-placeholders");
|
|
14
|
-
const inquirer = require("inquirer");
|
|
15
|
-
const child_process_1 = require("child_process");
|
|
16
|
-
const debug = (0, debug_1.default)('unisphere:template:create-unisphere-repo');
|
|
17
|
-
// Path to the local template directory (copied to dist during build)
|
|
18
|
-
const NEW_REPO_PATH = (0, path_1.resolve)(__dirname, '../../../../_templates/unisphere-repo');
|
|
19
|
-
const normalizeInput = (input) => {
|
|
20
|
-
return input
|
|
21
|
-
.trim() // Remove leading/trailing spaces
|
|
22
|
-
.toLowerCase() // Convert to lowercase
|
|
23
|
-
.replace(/\s+/g, ' ') // Multiple spaces to single space
|
|
24
|
-
.replace(/[^a-z0-9\s]/g, '') // Remove special characters but keep spaces
|
|
25
|
-
.replace(/\s+/g, '-') // Convert spaces to hyphens
|
|
26
|
-
.replace(/-+/g, '-') // Multiple hyphens to single hyphen
|
|
27
|
-
.replace(/^-+|-+$/g, ''); // Remove leading/trailing hyphens
|
|
28
|
-
};
|
|
29
|
-
const validateInput = (name) => {
|
|
30
|
-
return /^[a-zA-Z\s-]+$/.test(name);
|
|
31
|
-
};
|
|
32
|
-
const createCreateUnisphereRepoCommand = (parentCommand) => {
|
|
33
|
-
const command = parentCommand.command('create-unisphere-repo');
|
|
34
|
-
const nxpluginPathOption = new commander_1.Option('--nxplugin-path <path>', 'bypass github tags checks');
|
|
35
|
-
nxpluginPathOption.hidden = true;
|
|
36
|
-
command
|
|
37
|
-
.description('create a new unisphere repository from template')
|
|
38
|
-
.option('--cwd <path>', 'The working directory', process.cwd())
|
|
39
|
-
.option('--company-name <name>', 'The company name (letters, hyphens, and spaces only)')
|
|
40
|
-
.addOption(nxpluginPathOption)
|
|
41
|
-
.option('--experience-name <name>', 'The experience name (any format)')
|
|
42
|
-
.option('--verbose', 'Output debug logs', false)
|
|
43
|
-
.hook('preAction', utils_1.printVerboseHook)
|
|
44
|
-
.action((options) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
45
|
-
const cwd = (0, path_1.resolve)(options.cwd || process.cwd());
|
|
46
|
-
// Get values from options or prompt for all of them
|
|
47
|
-
let _companyName = options.companyName;
|
|
48
|
-
let _experienceName = options.experienceName;
|
|
49
|
-
// Create prompt questions for missing values
|
|
50
|
-
const questions = [];
|
|
51
|
-
if (!_companyName) {
|
|
52
|
-
questions.push({
|
|
53
|
-
type: 'input',
|
|
54
|
-
name: 'companyName',
|
|
55
|
-
message: 'Enter company name (letters, hyphens, and spaces only):',
|
|
56
|
-
validate: (input) => {
|
|
57
|
-
if (!input || !input.trim()) {
|
|
58
|
-
return 'Company name is required';
|
|
59
|
-
}
|
|
60
|
-
if (!validateInput(input.trim())) {
|
|
61
|
-
return 'Company name can only contain letters, hyphens, and spaces';
|
|
62
|
-
}
|
|
63
|
-
return true;
|
|
64
|
-
},
|
|
65
|
-
});
|
|
66
|
-
}
|
|
67
|
-
if (!_experienceName) {
|
|
68
|
-
questions.push({
|
|
69
|
-
type: 'input',
|
|
70
|
-
name: 'experienceName',
|
|
71
|
-
message: 'Enter experience name:',
|
|
72
|
-
validate: (input) => {
|
|
73
|
-
if (!input || !input.trim()) {
|
|
74
|
-
return 'Experience name is required';
|
|
75
|
-
}
|
|
76
|
-
if (!validateInput(input.trim())) {
|
|
77
|
-
return 'Experience name can only contain letters, hyphens, and spaces';
|
|
78
|
-
}
|
|
79
|
-
return true;
|
|
80
|
-
},
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
|
-
// Prompt for missing values
|
|
84
|
-
if (questions.length > 0) {
|
|
85
|
-
const answers = yield inquirer.prompt(questions);
|
|
86
|
-
_companyName = _companyName || answers.companyName;
|
|
87
|
-
_experienceName = _experienceName || answers.experienceName;
|
|
88
|
-
}
|
|
89
|
-
// Validate company name if provided via options
|
|
90
|
-
if (_companyName && !validateInput(_companyName)) {
|
|
91
|
-
throw new Error('Company name can only contain letters, hyphens, and spaces');
|
|
92
|
-
}
|
|
93
|
-
if (_experienceName && !validateInput(_experienceName)) {
|
|
94
|
-
throw new Error('Experience name can only contain letters, hyphens, and spaces');
|
|
95
|
-
}
|
|
96
|
-
debug(`Company name: ${_companyName}`);
|
|
97
|
-
debug(`Experience name: ${_experienceName}`);
|
|
98
|
-
// Generate repo name from company and experience name
|
|
99
|
-
const companyName = normalizeInput(_companyName);
|
|
100
|
-
const experienceName = normalizeInput(_experienceName);
|
|
101
|
-
const repoName = `unisphere-${experienceName}`;
|
|
102
|
-
const repoPath = (0, path_1.resolve)(cwd, repoName);
|
|
103
|
-
debug(`Creating repository: ${repoName} at ${repoPath}`);
|
|
104
|
-
const tasks = [
|
|
105
|
-
{
|
|
106
|
-
title: 'Check if the working directory exists',
|
|
107
|
-
task: () => {
|
|
108
|
-
if (!(0, fs_1.existsSync)(cwd)) {
|
|
109
|
-
throw new Error(`Working directory "${cwd}" does not exist.`);
|
|
110
|
-
}
|
|
111
|
-
},
|
|
112
|
-
},
|
|
113
|
-
{
|
|
114
|
-
title: 'Check if repository path exists',
|
|
115
|
-
task: () => {
|
|
116
|
-
if ((0, fs_1.existsSync)(repoPath)) {
|
|
117
|
-
throw new Error(`Path "${repoPath}" already exists.`);
|
|
118
|
-
}
|
|
119
|
-
},
|
|
120
|
-
},
|
|
121
|
-
{
|
|
122
|
-
title: 'Copy template from local path',
|
|
123
|
-
task: (ctx, task) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
124
|
-
debug(`Created repository folder: ${repoPath}`);
|
|
125
|
-
(0, fs_1.mkdirSync)(repoPath, { recursive: true });
|
|
126
|
-
debug(`Copying from ${NEW_REPO_PATH} to ${repoPath}`);
|
|
127
|
-
try {
|
|
128
|
-
yield (0, fs_extra_1.copy)(NEW_REPO_PATH, repoPath, {
|
|
129
|
-
overwrite: true,
|
|
130
|
-
recursive: true,
|
|
131
|
-
});
|
|
132
|
-
debug(`Successfully copied template from ${NEW_REPO_PATH}`);
|
|
133
|
-
}
|
|
134
|
-
catch (error) {
|
|
135
|
-
throw new Error(`Failed to copy template: ${error.message}`);
|
|
136
|
-
}
|
|
137
|
-
}),
|
|
138
|
-
},
|
|
139
|
-
{
|
|
140
|
-
title: 'Customize template for experience',
|
|
141
|
-
task: (ctx, task) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
142
|
-
task.title = 'Processing template files and placeholders';
|
|
143
|
-
yield (0, overwrite_placeholders_1.overwritePlaceholders)(repoPath, {
|
|
144
|
-
companyName,
|
|
145
|
-
experienceName,
|
|
146
|
-
});
|
|
147
|
-
task.title = 'Template customization completed';
|
|
148
|
-
}),
|
|
149
|
-
},
|
|
150
|
-
{
|
|
151
|
-
title: 'Install packages',
|
|
152
|
-
task: (ctx, task) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
153
|
-
const packageJsonPath = (0, path_1.resolve)(repoPath, 'package.json');
|
|
154
|
-
if (!(0, fs_1.existsSync)(packageJsonPath)) {
|
|
155
|
-
task.skip('No package.json found');
|
|
156
|
-
return;
|
|
157
|
-
}
|
|
158
|
-
const packageJson = yield (0, fs_extra_1.readJson)(packageJsonPath);
|
|
159
|
-
const allDependencies = Object.assign(Object.assign(Object.assign({}, packageJson.dependencies), packageJson.devDependencies), packageJson.peerDependencies);
|
|
160
|
-
// Find all @unisphere packages
|
|
161
|
-
const unispherePackages = Object.keys(allDependencies).filter((pkg) => pkg.startsWith('@unisphere'));
|
|
162
|
-
if (unispherePackages.length === 0) {
|
|
163
|
-
task.skip('No @unisphere packages found');
|
|
164
|
-
return;
|
|
165
|
-
}
|
|
166
|
-
debug(`Found @unisphere packages: ${unispherePackages.join(', ')}`);
|
|
167
|
-
// Install each @unisphere package with ^1 (latest 1.x version)
|
|
168
|
-
const packagesToInstall = unispherePackages.map((pkg) => `${pkg}@^1`);
|
|
169
|
-
const installCommand = `npm install ${packagesToInstall.join(' ')}`;
|
|
170
|
-
debug(`Running: ${installCommand}`);
|
|
171
|
-
task.title = 'Installing @unisphere packages with 1.x versions';
|
|
172
|
-
(0, child_process_1.execSync)(installCommand, {
|
|
173
|
-
cwd: repoPath,
|
|
174
|
-
stdio: 'inherit',
|
|
175
|
-
});
|
|
176
|
-
task.title = '@unisphere packages installed with 1.x versions';
|
|
177
|
-
}),
|
|
178
|
-
},
|
|
179
|
-
{
|
|
180
|
-
title: 'Create core',
|
|
181
|
-
task: (ctx, task) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
182
|
-
const packageName = options.nxpluginPath || '@unisphere/nx';
|
|
183
|
-
const createCoreCommand = `npx nx g ${packageName}:add-package --packageName="core" --scope="internal"`;
|
|
184
|
-
debug(`Running: ${createCoreCommand}`);
|
|
185
|
-
task.title = 'Creating core';
|
|
186
|
-
(0, child_process_1.execSync)(createCoreCommand, {
|
|
187
|
-
cwd: repoPath,
|
|
188
|
-
stdio: 'inherit',
|
|
189
|
-
});
|
|
190
|
-
// Create widget-types.ts file in core package
|
|
191
|
-
const widgetTypesPath = (0, path_1.resolve)(repoPath, 'unisphere/packages/core/src/lib/widget-types.ts');
|
|
192
|
-
const _companyName = companyName === 'kaltura' ? 'unisphere' : companyName;
|
|
193
|
-
const widgetTypesContent = `export const WidgetName = '${_companyName}.widget.${experienceName}'`;
|
|
194
|
-
debug(`Creating widget-types.ts at: ${widgetTypesPath}`);
|
|
195
|
-
yield (0, fs_extra_1.outputFile)(widgetTypesPath, widgetTypesContent);
|
|
196
|
-
const indexFileContent = `export * from './lib/widget-types';`;
|
|
197
|
-
const indexPath = (0, path_1.resolve)(repoPath, 'unisphere/packages/core/src/index.ts');
|
|
198
|
-
debug(`Creating index.ts at: ${indexPath}`);
|
|
199
|
-
yield (0, fs_extra_1.outputFile)(indexPath, indexFileContent);
|
|
200
|
-
task.title = 'Core created';
|
|
201
|
-
}),
|
|
202
|
-
},
|
|
203
|
-
];
|
|
204
|
-
const taskRunner = new listr2_1.Listr(tasks, (0, defaults_1.getDefaultListrOptions)());
|
|
205
|
-
yield taskRunner.run();
|
|
206
|
-
console.log(`Successfully created unisphere repository: ${repoPath}`);
|
|
207
|
-
}));
|
|
208
|
-
return command;
|
|
209
|
-
};
|
|
210
|
-
exports.createCreateUnisphereRepoCommand = createCreateUnisphereRepoCommand;
|
|
211
|
-
//# sourceMappingURL=create-unisphere-repo-command.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"create-unisphere-repo-command.js","sourceRoot":"","sources":["../../../../../../../packages/unisphere-cli/src/lib/commands/generate/create-unisphere-repo-command.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createGenerateCommand = void 0;
|
|
4
|
-
const commander_1 = require("commander");
|
|
5
|
-
const create_unisphere_repo_command_1 = require("./create-unisphere-repo-command");
|
|
6
|
-
const createGenerateCommand = () => {
|
|
7
|
-
const generateCommand = new commander_1.Command('generate');
|
|
8
|
-
generateCommand.description('manage Unisphere templates');
|
|
9
|
-
(0, create_unisphere_repo_command_1.createCreateUnisphereRepoCommand)(generateCommand);
|
|
10
|
-
return generateCommand;
|
|
11
|
-
};
|
|
12
|
-
exports.createGenerateCommand = createGenerateCommand;
|
|
13
|
-
//# sourceMappingURL=generate-commands.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generate-commands.js","sourceRoot":"","sources":["../../../../../../../packages/unisphere-cli/src/lib/commands/generate/generate-commands.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AACpC,mFAAmF;AAI5E,MAAM,qBAAqB,GAAG,GAAY,EAAE;IACjD,MAAM,eAAe,GAAG,IAAI,mBAAO,CAAC,UAAU,CAAC,CAAC;IAGhD,eAAe,CAAC,WAAW,CAAC,4BAA4B,CAAC,CAAC;IAE1D,IAAA,gEAAgC,EAAC,eAAe,CAAC,CAAC;IAElD,OAAO,eAAe,CAAC;AACzB,CAAC,CAAC;AATW,QAAA,qBAAqB,yBAShC"}
|
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.overwritePlaceholders = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const fs_extra_1 = require("fs-extra");
|
|
6
|
-
const path_1 = require("path");
|
|
7
|
-
const debug_1 = require("debug");
|
|
8
|
-
const debug = (0, debug_1.default)('unisphere:utils:overwrite-placeholders');
|
|
9
|
-
// Transformation functions
|
|
10
|
-
const transformations = {
|
|
11
|
-
'lower-dash-case': (str) => str.toLowerCase().replace(/[^a-z0-9]/g, '-'),
|
|
12
|
-
'lower-kebab-case': (str) => str.toLowerCase().replace(/[^a-z0-9]/g, '-'),
|
|
13
|
-
'camelCase': (str) => str.replace(/[-_\s]+(.)?/g, (_, c) => c ? c.toUpperCase() : ''),
|
|
14
|
-
'PascalCase': (str) => {
|
|
15
|
-
const camelCase = str.replace(/[-_\s]+(.)?/g, (_, c) => c ? c.toUpperCase() : '');
|
|
16
|
-
return camelCase.charAt(0).toUpperCase() + camelCase.slice(1);
|
|
17
|
-
},
|
|
18
|
-
'UPPER_SNAKE_CASE': (str) => str.toUpperCase().replace(/[^A-Z0-9]/g, '_'),
|
|
19
|
-
'lowercase': (str) => str.toLowerCase(),
|
|
20
|
-
'uppercase': (str) => str.toUpperCase(),
|
|
21
|
-
'human-readable': (str) => {
|
|
22
|
-
// Convert camelCase, PascalCase, snake_case, kebab-case to human readable
|
|
23
|
-
return str
|
|
24
|
-
.replace(/([a-z])([A-Z])/g, '$1 $2') // camelCase/PascalCase
|
|
25
|
-
.replace(/[-_]/g, ' ') // kebab-case and snake_case
|
|
26
|
-
.replace(/\s+/g, ' ') // multiple spaces
|
|
27
|
-
.trim()
|
|
28
|
-
.toLowerCase()
|
|
29
|
-
.replace(/\b\w/g, l => l.toUpperCase()); // Title case
|
|
30
|
-
},
|
|
31
|
-
};
|
|
32
|
-
// Apply transformation to a value
|
|
33
|
-
const applyTransformation = (value, transformation) => {
|
|
34
|
-
if (!transformation || !transformations[transformation]) {
|
|
35
|
-
return value;
|
|
36
|
-
}
|
|
37
|
-
return transformations[transformation](value);
|
|
38
|
-
};
|
|
39
|
-
// Replace placeholders in text
|
|
40
|
-
const replacePlaceholders = (content, replacements) => {
|
|
41
|
-
let result = content;
|
|
42
|
-
// Match patterns like {{variable|transformation}} or {{variable}}
|
|
43
|
-
const placeholderRegex = /\{\{([^}|]+)(\|([^}]+))?\}\}/g;
|
|
44
|
-
result = result.replace(placeholderRegex, (match, variable, _, transformation) => {
|
|
45
|
-
const value = replacements[variable];
|
|
46
|
-
if (value === undefined) {
|
|
47
|
-
debug(`Warning: No replacement found for placeholder: ${match}`);
|
|
48
|
-
return match; // Keep original if no replacement found
|
|
49
|
-
}
|
|
50
|
-
return applyTransformation(value, transformation);
|
|
51
|
-
});
|
|
52
|
-
return result;
|
|
53
|
-
};
|
|
54
|
-
// Process a single file
|
|
55
|
-
const processFile = (filePath, replacements) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
56
|
-
try {
|
|
57
|
-
const content = yield (0, fs_extra_1.readFile)(filePath, 'utf-8');
|
|
58
|
-
const newContent = replacePlaceholders(content, replacements);
|
|
59
|
-
if (newContent !== content) {
|
|
60
|
-
yield (0, fs_extra_1.writeFile)(filePath, newContent, 'utf-8');
|
|
61
|
-
debug(`Processed placeholders in: ${filePath}`);
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
catch (error) {
|
|
65
|
-
// Skip binary files or files that can't be read as text
|
|
66
|
-
debug(`Skipping file (likely binary): ${filePath}`);
|
|
67
|
-
}
|
|
68
|
-
});
|
|
69
|
-
// Rename file or directory if it contains placeholders
|
|
70
|
-
const renameIfNeeded = (itemPath, replacements) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
71
|
-
const itemName = (0, path_1.basename)(itemPath);
|
|
72
|
-
const newItemName = replacePlaceholders(itemName, replacements);
|
|
73
|
-
if (newItemName !== itemName) {
|
|
74
|
-
const newItemPath = (0, path_1.join)((0, path_1.dirname)(itemPath), newItemName);
|
|
75
|
-
yield (0, fs_extra_1.rename)(itemPath, newItemPath);
|
|
76
|
-
debug(`Renamed: ${itemName} → ${newItemName}`);
|
|
77
|
-
return newItemPath;
|
|
78
|
-
}
|
|
79
|
-
return itemPath;
|
|
80
|
-
});
|
|
81
|
-
// Recursively process directory
|
|
82
|
-
const processDirectory = (dirPath, replacements) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
83
|
-
const items = yield (0, fs_extra_1.readdir)(dirPath);
|
|
84
|
-
for (const item of items) {
|
|
85
|
-
const itemPath = (0, path_1.join)(dirPath, item);
|
|
86
|
-
const itemStat = yield (0, fs_extra_1.stat)(itemPath);
|
|
87
|
-
if (itemStat.isDirectory()) {
|
|
88
|
-
// Recursively process subdirectories first
|
|
89
|
-
yield processDirectory(itemPath, replacements);
|
|
90
|
-
// Then rename directory if needed
|
|
91
|
-
yield renameIfNeeded(itemPath, replacements);
|
|
92
|
-
}
|
|
93
|
-
else {
|
|
94
|
-
// Process file content
|
|
95
|
-
yield processFile(itemPath, replacements);
|
|
96
|
-
// Rename file if needed
|
|
97
|
-
yield renameIfNeeded(itemPath, replacements);
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
});
|
|
101
|
-
const overwritePlaceholders = (folderPath_1, _a) => tslib_1.__awaiter(void 0, [folderPath_1, _a], void 0, function* (folderPath, { companyName, experienceName, }) {
|
|
102
|
-
debug(`Processing placeholders in: ${folderPath}`);
|
|
103
|
-
// Create replacement map
|
|
104
|
-
const replacements = {
|
|
105
|
-
'company-name': companyName,
|
|
106
|
-
'project-name': experienceName,
|
|
107
|
-
};
|
|
108
|
-
debug(`Placeholder replacements:`, replacements);
|
|
109
|
-
try {
|
|
110
|
-
yield processDirectory(folderPath, replacements);
|
|
111
|
-
debug(`Successfully processed all placeholders in: ${folderPath}`);
|
|
112
|
-
}
|
|
113
|
-
catch (error) {
|
|
114
|
-
debug(`Error processing placeholders: ${error.message}`);
|
|
115
|
-
throw new Error(`Failed to process placeholders: ${error.message}`);
|
|
116
|
-
}
|
|
117
|
-
});
|
|
118
|
-
exports.overwritePlaceholders = overwritePlaceholders;
|
|
119
|
-
//# sourceMappingURL=overwrite-placeholders.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"overwrite-placeholders.js","sourceRoot":"","sources":["../../../../../../../packages/unisphere-cli/src/lib/commands/generate/overwrite-placeholders.ts"],"names":[],"mappings":"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"}
|