@interopio/iocd-cli 0.0.48 → 0.0.50
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 +28 -15
- package/dist/commands/apps.command.js +20 -21
- package/dist/commands/apps.command.js.map +1 -1
- package/dist/commands/build.command.js +5 -5
- package/dist/commands/build.command.js.map +1 -1
- package/dist/commands/components.command.js +19 -20
- package/dist/commands/components.command.js.map +1 -1
- package/dist/commands/create.command.js +18 -14
- package/dist/commands/create.command.js.map +1 -1
- package/dist/commands/dev.command.js +2 -2
- package/dist/commands/license.command.js +11 -10
- package/dist/commands/license.command.js.map +1 -1
- package/dist/commands/modifications.command.js +3 -4
- package/dist/commands/modifications.command.js.map +1 -1
- package/dist/commands/setup.command.js +4 -4
- package/dist/commands/setup.command.js.map +1 -1
- package/dist/commands/test.command.js +2 -2
- package/dist/commands/test.command.js.map +1 -1
- package/dist/schemas/iocd.cli.config.schema.json +6 -7
- package/dist/services/app.service.js +29 -29
- package/dist/services/app.service.js.map +1 -1
- package/dist/services/components/components.registry.js +6 -6
- package/dist/services/components/components.registry.js.map +1 -1
- package/dist/services/config/config.service.js +28 -12
- package/dist/services/config/config.service.js.map +1 -1
- package/dist/services/create.service.js +146 -67
- package/dist/services/create.service.js.map +1 -1
- package/dist/services/dev.service.js +11 -11
- package/dist/services/dev.service.js.map +1 -1
- package/dist/services/installer/prerequisites.js +3 -3
- package/dist/services/installer/prerequisites.js.map +1 -1
- package/dist/services/installer/windows.helper.js +17 -14
- package/dist/services/installer/windows.helper.js.map +1 -1
- package/dist/services/license-file.service.js +1 -1
- package/dist/services/license-file.service.js.map +1 -1
- package/dist/services/license.service.js +18 -17
- package/dist/services/license.service.js.map +1 -1
- package/dist/services/modifications/modifications.service.js +49 -18
- package/dist/services/modifications/modifications.service.js.map +1 -1
- package/dist/services/template.service.js +72 -59
- package/dist/services/template.service.js.map +1 -1
- package/dist/services/test.service.js +4 -4
- package/dist/services/test.service.js.map +1 -1
- package/dist/templates/ioconnect-desktop/README.md +28 -15
- package/dist/templates/ioconnect-desktop/config/iocd.cli.config.json +0 -3
- package/dist/templates/ioconnect-desktop/modifications/base/iocd/config/system.json.merge +2 -1
- package/dist/templates/ioconnect-desktop/package.json +2 -2
- package/dist/templates/tests/tests/tests/sample.spec.ts +48 -3
- package/dist/utils/colors.js +31 -31
- package/dist/utils/colors.js.map +1 -1
- package/dist/utils/deep.merge.js +3 -3
- package/dist/utils/deep.merge.js.map +1 -1
- package/dist/utils/electron.builder.config.helper.js +2 -2
- package/dist/utils/ensure.iocd.exists.js +5 -7
- package/dist/utils/ensure.iocd.exists.js.map +1 -1
- package/dist/utils/error.handler.js +23 -20
- package/dist/utils/error.handler.js.map +1 -1
- package/dist/utils/file.js +1 -1
- package/dist/utils/file.js.map +1 -1
- package/dist/utils/logger.js +17 -15
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/pacakge.json.helper.js +48 -2
- package/dist/utils/pacakge.json.helper.js.map +1 -1
- package/dist/utils/path.js +23 -23
- package/dist/utils/path.js.map +1 -1
- package/dist/utils/sentry.js +15 -5
- package/dist/utils/sentry.js.map +1 -1
- package/dist/utils/version.js +2 -2
- package/package.json +5 -5
- package/dist/templates/launchpad/apps/launchpad/.eslintrc.json +0 -3
package/README.md
CHANGED
|
@@ -134,31 +134,44 @@ npm run build
|
|
|
134
134
|
|
|
135
135
|
### Basic Settings
|
|
136
136
|
|
|
137
|
-
|
|
137
|
+
Product metadata is configured in your `package.json` file:
|
|
138
138
|
|
|
139
139
|
```json
|
|
140
140
|
{
|
|
141
|
-
"
|
|
142
|
-
"productSlug": "your-product-slug",
|
|
143
|
-
"company": "Your Company",
|
|
141
|
+
"name": "your-product-slug",
|
|
144
142
|
"version": "1.0.0",
|
|
145
|
-
"
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
143
|
+
"description": "Your product description",
|
|
144
|
+
"productName": "Your Product Name",
|
|
145
|
+
"author": "Your Company"
|
|
146
|
+
}
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
These values are automatically populated by the create script and are used for:
|
|
150
|
+
- **name** → Project identifier (folder name, exe name, package name, etc.)
|
|
151
|
+
- **productName** → Display name shown to users
|
|
152
|
+
- **description** → Product description in installers and metadata
|
|
153
|
+
- **author** → Company name (also used to auto-generate copyright)
|
|
154
|
+
- **version** → Application version
|
|
155
|
+
|
|
156
|
+
CLI-specific settings go in `config/iocd.cli.config.json`:
|
|
157
|
+
|
|
158
|
+
```json
|
|
159
|
+
{
|
|
160
|
+
"components": {
|
|
161
|
+
"store": {
|
|
162
|
+
"github": {
|
|
163
|
+
"repo": "interopio/iocd-components/releases"
|
|
164
|
+
}
|
|
149
165
|
},
|
|
150
|
-
"
|
|
151
|
-
"
|
|
152
|
-
"pfxPath": "path/to/certificate.pfx"
|
|
166
|
+
"list": {
|
|
167
|
+
"iocd": "latest"
|
|
153
168
|
}
|
|
154
|
-
},
|
|
155
|
-
"mac": {
|
|
156
|
-
"appBundleName": "Your Product.app",
|
|
157
|
-
"appBundleId": "com.yourcompany.product"
|
|
158
169
|
}
|
|
159
170
|
}
|
|
160
171
|
```
|
|
161
172
|
|
|
173
|
+
> **Tip**: You can view the full JSON schema for `iocd.cli.config.json` in `node_modules/@interopio/iocd-cli/dist/schemas/iocd.cli.config.schema.json`. Add a `$schema` property to your config file for IDE autocompletion and validation.
|
|
174
|
+
|
|
162
175
|
### License Key
|
|
163
176
|
|
|
164
177
|
Set your license key using:
|
|
@@ -10,35 +10,34 @@ const error_handler_1 = require("../utils/error.handler");
|
|
|
10
10
|
const app_service_1 = __importDefault(require("../services/app.service"));
|
|
11
11
|
const template_service_1 = require("../services/template.service");
|
|
12
12
|
const logger = logger_1.Logger.getInstance("apps.command");
|
|
13
|
-
exports.appsCommand = new commander_1.Command(
|
|
14
|
-
.description('Application management commands');
|
|
13
|
+
exports.appsCommand = new commander_1.Command("apps").description("Application management commands");
|
|
15
14
|
exports.appsCommand
|
|
16
|
-
.command(
|
|
17
|
-
.description(
|
|
18
|
-
.option(
|
|
15
|
+
.command("install")
|
|
16
|
+
.description("Install dependencies for all template applications")
|
|
17
|
+
.option("--verbose", "Enable verbose logging")
|
|
19
18
|
.action(async (options) => {
|
|
20
19
|
try {
|
|
21
20
|
if (options.verbose) {
|
|
22
21
|
logger.setVerbose(true);
|
|
23
22
|
}
|
|
24
|
-
logger.info(
|
|
23
|
+
logger.info("Installing dependencies for template applications...");
|
|
25
24
|
await app_service_1.default.installAllApps();
|
|
26
|
-
logger.info(
|
|
25
|
+
logger.info("All template application dependencies installed successfully!");
|
|
27
26
|
}
|
|
28
27
|
catch (error) {
|
|
29
28
|
error_handler_1.ErrorHandler.handle(error);
|
|
30
29
|
}
|
|
31
30
|
});
|
|
32
31
|
exports.appsCommand
|
|
33
|
-
.command(
|
|
34
|
-
.description(
|
|
35
|
-
.option(
|
|
32
|
+
.command("build")
|
|
33
|
+
.description("Build all template applications and copy output to modifications folder. Requires prior installation of dependencies.")
|
|
34
|
+
.option("--verbose", "Enable verbose logging")
|
|
36
35
|
.action(async (options) => {
|
|
37
36
|
try {
|
|
38
37
|
if (options.verbose) {
|
|
39
38
|
logger.setVerbose(true);
|
|
40
39
|
}
|
|
41
|
-
logger.debug(
|
|
40
|
+
logger.debug("Building template applications...");
|
|
42
41
|
await app_service_1.default.buildAllApps();
|
|
43
42
|
}
|
|
44
43
|
catch (error) {
|
|
@@ -46,9 +45,9 @@ exports.appsCommand
|
|
|
46
45
|
}
|
|
47
46
|
});
|
|
48
47
|
exports.appsCommand
|
|
49
|
-
.command(
|
|
50
|
-
.description(
|
|
51
|
-
.option(
|
|
48
|
+
.command("dev")
|
|
49
|
+
.description("Start all template applications in development mode")
|
|
50
|
+
.option("--verbose", "Enable verbose logging")
|
|
52
51
|
.action(async (options) => {
|
|
53
52
|
try {
|
|
54
53
|
if (options.verbose) {
|
|
@@ -61,8 +60,8 @@ exports.appsCommand
|
|
|
61
60
|
}
|
|
62
61
|
});
|
|
63
62
|
exports.appsCommand
|
|
64
|
-
.command(
|
|
65
|
-
.description(
|
|
63
|
+
.command("list")
|
|
64
|
+
.description("List all template applications that are added to the seed project, and all available templates")
|
|
66
65
|
.action(async () => {
|
|
67
66
|
try {
|
|
68
67
|
await printApps();
|
|
@@ -72,8 +71,8 @@ exports.appsCommand
|
|
|
72
71
|
}
|
|
73
72
|
});
|
|
74
73
|
exports.appsCommand
|
|
75
|
-
.command(
|
|
76
|
-
.description(
|
|
74
|
+
.command("add <appName>")
|
|
75
|
+
.description("Add a new template application from the registry")
|
|
77
76
|
.action(async (_appName) => {
|
|
78
77
|
try {
|
|
79
78
|
const templateService = new template_service_1.TemplateService();
|
|
@@ -87,10 +86,10 @@ exports.appsCommand
|
|
|
87
86
|
const printApps = async () => {
|
|
88
87
|
const apps = await app_service_1.default.getAllApps();
|
|
89
88
|
if (apps.length === 0) {
|
|
90
|
-
logger.info(
|
|
89
|
+
logger.info("No template applications found.");
|
|
91
90
|
}
|
|
92
91
|
else {
|
|
93
|
-
logger.info(
|
|
92
|
+
logger.info("Added template applications:");
|
|
94
93
|
apps.forEach(app => {
|
|
95
94
|
logger.info(`- ${app.name} (${app.path})`);
|
|
96
95
|
});
|
|
@@ -100,7 +99,7 @@ const printApps = async () => {
|
|
|
100
99
|
// list all that are not part of the project
|
|
101
100
|
const notAdded = all.filter(t => !apps.find(a => a.name === t.name));
|
|
102
101
|
if (notAdded.length > 0) {
|
|
103
|
-
logger.info(
|
|
102
|
+
logger.info("Available templates that can be added:");
|
|
104
103
|
notAdded.forEach(t => {
|
|
105
104
|
logger.info(`- ${t.name}: ${t.description}`);
|
|
106
105
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apps.command.js","sourceRoot":"","sources":["../../src/commands/apps.command.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAoC;AACpC,4CAAyC;AACzC,0DAAsD;AACtD,0EAAgE;AAChE,mEAA+D;AAE/D,MAAM,MAAM,GAAG,eAAM,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;AAErC,QAAA,WAAW,GAAG,IAAI,mBAAO,CAAC,MAAM,CAAC
|
|
1
|
+
{"version":3,"file":"apps.command.js","sourceRoot":"","sources":["../../src/commands/apps.command.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,11 +4,11 @@ exports.buildCommand = void 0;
|
|
|
4
4
|
const commander_1 = require("commander");
|
|
5
5
|
const installer_service_1 = require("../services/installer/installer.service");
|
|
6
6
|
const error_handler_1 = require("../utils/error.handler");
|
|
7
|
-
exports.buildCommand = new commander_1.Command(
|
|
8
|
-
.description(
|
|
9
|
-
.option(
|
|
10
|
-
.option(
|
|
11
|
-
.option(
|
|
7
|
+
exports.buildCommand = new commander_1.Command("build")
|
|
8
|
+
.description("Build and package the io.Connect Desktop application for distribution")
|
|
9
|
+
.option("--output <path>", "Output directory for packages", "dist/packages")
|
|
10
|
+
.option("--publish-only", "Skip the build phase and only publish packages (does nothing if no publish is configured)", false)
|
|
11
|
+
.option("--skip-install", "Skip installing components during the build process", false)
|
|
12
12
|
.action(async (options) => {
|
|
13
13
|
try {
|
|
14
14
|
await (0, installer_service_1.makeInstaller)(options);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.command.js","sourceRoot":"","sources":["../../src/commands/build.command.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AACpC,+EAAwE;AACxE,0DAAsD;AAEzC,QAAA,YAAY,GAAG,IAAI,mBAAO,CAAC,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"build.command.js","sourceRoot":"","sources":["../../src/commands/build.command.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AACpC,+EAAwE;AACxE,0DAAsD;AAEzC,QAAA,YAAY,GAAG,IAAI,mBAAO,CAAC,OAAO,CAAC;KAC7C,WAAW,CACV,uEAAuE,CACxE;KACA,MAAM,CAAC,iBAAiB,EAAE,+BAA+B,EAAE,eAAe,CAAC;KAC3E,MAAM,CACL,gBAAgB,EAChB,2FAA2F,EAC3F,KAAK,CACN;KACA,MAAM,CACL,gBAAgB,EAChB,qDAAqD,EACrD,KAAK,CACN;KACA,MAAM,CACL,KAAK,EAAE,OAIN,EAAE,EAAE;IACH,IAAI,CAAC;QACH,MAAM,IAAA,iCAAa,EAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,4BAAY,CAAC,MAAM,CAAC,KAAc,CAAC,CAAC;IACtC,CAAC;AACH,CAAC,CACF,CAAC"}
|
|
@@ -43,11 +43,10 @@ const error_handler_1 = require("../utils/error.handler");
|
|
|
43
43
|
const components_service_1 = __importDefault(require("../services/components/components.service"));
|
|
44
44
|
const clack = __importStar(require("@clack/prompts"));
|
|
45
45
|
const logger = logger_1.Logger.getInstance("components.command");
|
|
46
|
-
exports.componentsCommand = new commander_1.Command(
|
|
47
|
-
.description('Component management commands');
|
|
46
|
+
exports.componentsCommand = new commander_1.Command("components").description("Component management commands");
|
|
48
47
|
exports.componentsCommand
|
|
49
|
-
.command(
|
|
50
|
-
.description(
|
|
48
|
+
.command("uninstall <name>")
|
|
49
|
+
.description("Remove a component from the project")
|
|
51
50
|
.action(async (name) => {
|
|
52
51
|
try {
|
|
53
52
|
await components_service_1.default.uninstallComponent(name);
|
|
@@ -57,8 +56,8 @@ exports.componentsCommand
|
|
|
57
56
|
}
|
|
58
57
|
});
|
|
59
58
|
exports.componentsCommand
|
|
60
|
-
.command(
|
|
61
|
-
.description(
|
|
59
|
+
.command("install [name]")
|
|
60
|
+
.description("Install all components listed in iocd.cli.config.json or a specific component by name")
|
|
62
61
|
.action(async (name) => {
|
|
63
62
|
try {
|
|
64
63
|
if (name) {
|
|
@@ -75,20 +74,20 @@ exports.componentsCommand
|
|
|
75
74
|
}
|
|
76
75
|
});
|
|
77
76
|
exports.componentsCommand
|
|
78
|
-
.command(
|
|
79
|
-
.description(
|
|
77
|
+
.command("list")
|
|
78
|
+
.description("List all installed components")
|
|
80
79
|
.action(async () => {
|
|
81
80
|
try {
|
|
82
81
|
const components = await components_service_1.default.listComponentsInThisProject();
|
|
83
82
|
// Display components nicely using @clack/prompts
|
|
84
83
|
if (components.length === 0) {
|
|
85
|
-
clack.note(
|
|
84
|
+
clack.note("No components are currently configured in your project.", "📦 Components");
|
|
86
85
|
return;
|
|
87
86
|
}
|
|
88
87
|
// Create formatted list for display
|
|
89
88
|
const componentList = components
|
|
90
89
|
.map(comp => `• ${comp.name} → ${comp.version}`)
|
|
91
|
-
.join(
|
|
90
|
+
.join("\n");
|
|
92
91
|
clack.note(componentList, `📦 Configured Components (${components.length})`);
|
|
93
92
|
}
|
|
94
93
|
catch (error) {
|
|
@@ -96,14 +95,14 @@ exports.componentsCommand
|
|
|
96
95
|
}
|
|
97
96
|
});
|
|
98
97
|
exports.componentsCommand
|
|
99
|
-
.command(
|
|
100
|
-
.description(
|
|
98
|
+
.command("browse")
|
|
99
|
+
.description("Browse all available components from currently selected store")
|
|
101
100
|
.action(async () => {
|
|
102
101
|
try {
|
|
103
102
|
const remoteComponents = await components_service_1.default.browseComponentsFromStore();
|
|
104
103
|
// Display components nicely using @clack/prompts
|
|
105
104
|
if (remoteComponents.length === 0) {
|
|
106
|
-
clack.note(
|
|
105
|
+
clack.note("No components are currently available in the store.", "📦 Components");
|
|
107
106
|
return;
|
|
108
107
|
}
|
|
109
108
|
// sort by component name and version
|
|
@@ -127,8 +126,8 @@ exports.componentsCommand
|
|
|
127
126
|
});
|
|
128
127
|
// Create formatted list for display
|
|
129
128
|
const componentList = remoteComponents
|
|
130
|
-
.map(comp => `• ${comp.name} → ${comp.fullVersion} ${comp.platform} ${comp.arch} ${comp.prerelease ?
|
|
131
|
-
.join(
|
|
129
|
+
.map(comp => `• ${comp.name} → ${comp.fullVersion} ${comp.platform} ${comp.arch} ${comp.prerelease ? "(prerelease)" : ""}`)
|
|
130
|
+
.join("\n");
|
|
132
131
|
clack.note(componentList, `📦 Available Components (${remoteComponents.length})`);
|
|
133
132
|
}
|
|
134
133
|
catch (error) {
|
|
@@ -136,7 +135,7 @@ exports.componentsCommand
|
|
|
136
135
|
}
|
|
137
136
|
});
|
|
138
137
|
exports.componentsCommand
|
|
139
|
-
.command(
|
|
138
|
+
.command("pin")
|
|
140
139
|
.description('Pin all "latest" component versions to their current specific versions for reproducible builds')
|
|
141
140
|
.action(async () => {
|
|
142
141
|
try {
|
|
@@ -147,12 +146,12 @@ exports.componentsCommand
|
|
|
147
146
|
}
|
|
148
147
|
});
|
|
149
148
|
exports.componentsCommand
|
|
150
|
-
.command(
|
|
151
|
-
.description(
|
|
152
|
-
.option(
|
|
149
|
+
.command("download [output-dir]")
|
|
150
|
+
.description("Download all available components (including prereleases) for all platforms from the current store to a local directory in local store format")
|
|
151
|
+
.option("-f, --force", "Overwrite existing files without prompting")
|
|
153
152
|
.action(async (outputDir, options) => {
|
|
154
153
|
try {
|
|
155
|
-
const targetDir = outputDir ||
|
|
154
|
+
const targetDir = outputDir || "components_download";
|
|
156
155
|
await components_service_1.default.downloadAllComponents(targetDir, options.force || false);
|
|
157
156
|
}
|
|
158
157
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components.command.js","sourceRoot":"","sources":["../../src/commands/components.command.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAAoC;AACpC,4CAAyC;AACzC,0DAAsD;AACtD,mGAA0E;AAC1E,sDAAwC;AAGxC,MAAM,MAAM,GAAG,eAAM,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC;AAE3C,QAAA,iBAAiB,GAAG,IAAI,mBAAO,CAAC,YAAY,CAAC
|
|
1
|
+
{"version":3,"file":"components.command.js","sourceRoot":"","sources":["../../src/commands/components.command.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,32 +4,36 @@ exports.createCommand = void 0;
|
|
|
4
4
|
const commander_1 = require("commander");
|
|
5
5
|
const error_handler_1 = require("../utils/error.handler");
|
|
6
6
|
const create_service_1 = require("../services/create.service");
|
|
7
|
-
exports.createCommand = new commander_1.Command(
|
|
8
|
-
.description(
|
|
9
|
-
.option(
|
|
10
|
-
.option(
|
|
11
|
-
.option(
|
|
12
|
-
.option(
|
|
13
|
-
.option(
|
|
14
|
-
.option(
|
|
15
|
-
.option(
|
|
16
|
-
.option(
|
|
7
|
+
exports.createCommand = new commander_1.Command("create")
|
|
8
|
+
.description("Create a new io.Connect Desktop project")
|
|
9
|
+
.option("--source <url/path>", "Override component source during setup")
|
|
10
|
+
.option("--non-interactive", "Run in non-interactive mode using provided options")
|
|
11
|
+
.option("--product-name <name>", "Product name for non-interactive mode")
|
|
12
|
+
.option("--folder-name <name>", "Folder name for non-interactive mode")
|
|
13
|
+
.option("--components <components>", 'Comma-separated list of components (e.g., "iocd,demos,devTools")')
|
|
14
|
+
.option("--applications <applications>", 'Comma-separated list of applications (e.g., "groups,workspaces")')
|
|
15
|
+
.option("--license-key <key>", "License key for non-interactive mode")
|
|
16
|
+
.option("--use-current-folder", "Install in current folder (non-interactive mode)")
|
|
17
17
|
.action(async (options) => {
|
|
18
18
|
try {
|
|
19
19
|
const setupService = new create_service_1.CreateService();
|
|
20
20
|
if (options.nonInteractive) {
|
|
21
21
|
// Validate required options for non-interactive mode
|
|
22
22
|
if (!options.productName || !options.folderName) {
|
|
23
|
-
throw new Error(
|
|
23
|
+
throw new Error("Non-interactive mode requires --product-name and --folder-name options");
|
|
24
24
|
}
|
|
25
25
|
await setupService.runNonInteractiveSetup({
|
|
26
26
|
productName: options.productName,
|
|
27
27
|
folderName: options.folderName,
|
|
28
|
-
components: options.components
|
|
29
|
-
|
|
28
|
+
components: options.components
|
|
29
|
+
? options.components.split(",").map((c) => c.trim())
|
|
30
|
+
: ["iocd"],
|
|
31
|
+
applications: options.applications
|
|
32
|
+
? options.applications.split(",").map((a) => a.trim())
|
|
33
|
+
: [],
|
|
30
34
|
licenseKey: options.licenseKey,
|
|
31
35
|
source: options.source,
|
|
32
|
-
useCurrentFolder: options.useCurrentFolder
|
|
36
|
+
useCurrentFolder: options.useCurrentFolder,
|
|
33
37
|
});
|
|
34
38
|
process.exit(0);
|
|
35
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.command.js","sourceRoot":"","sources":["../../src/commands/create.command.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AACpC,0DAAsD;AACtD,+DAA2D;AAE9C,QAAA,aAAa,GAAG,IAAI,mBAAO,CAAC,QAAQ,CAAC;KAC/C,WAAW,CAAC,yCAAyC,CAAC;KACtD,MAAM,CAAC,qBAAqB,EAAE,wCAAwC,CAAC;KACvE,MAAM,
|
|
1
|
+
{"version":3,"file":"create.command.js","sourceRoot":"","sources":["../../src/commands/create.command.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AACpC,0DAAsD;AACtD,+DAA2D;AAE9C,QAAA,aAAa,GAAG,IAAI,mBAAO,CAAC,QAAQ,CAAC;KAC/C,WAAW,CAAC,yCAAyC,CAAC;KACtD,MAAM,CAAC,qBAAqB,EAAE,wCAAwC,CAAC;KACvE,MAAM,CACL,mBAAmB,EACnB,oDAAoD,CACrD;KACA,MAAM,CAAC,uBAAuB,EAAE,uCAAuC,CAAC;KACxE,MAAM,CAAC,sBAAsB,EAAE,sCAAsC,CAAC;KACtE,MAAM,CACL,2BAA2B,EAC3B,kEAAkE,CACnE;KACA,MAAM,CACL,+BAA+B,EAC/B,kEAAkE,CACnE;KACA,MAAM,CAAC,qBAAqB,EAAE,sCAAsC,CAAC;KACrE,MAAM,CACL,sBAAsB,EACtB,kDAAkD,CACnD;KACA,MAAM,CAAC,KAAK,EAAC,OAAO,EAAC,EAAE;IACtB,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,IAAI,8BAAa,EAAE,CAAC;QAEzC,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;YAC3B,qDAAqD;YACrD,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;gBAChD,MAAM,IAAI,KAAK,CACb,wEAAwE,CACzE,CAAC;YACJ,CAAC;YAED,MAAM,YAAY,CAAC,sBAAsB,CAAC;gBACxC,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC5B,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;oBAC5D,CAAC,CAAC,CAAC,MAAM,CAAC;gBACZ,YAAY,EAAE,OAAO,CAAC,YAAY;oBAChC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;oBAC9D,CAAC,CAAC,EAAE;gBACN,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;aAC3C,CAAC,CAAC;YAEH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,MAAM,YAAY,CAAC,QAAQ,EAAE,CAAC;QAChC,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,4BAAY,CAAC,MAAM,CAAC,KAAc,CAAC,CAAC;IACtC,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -4,8 +4,8 @@ exports.devCommand = void 0;
|
|
|
4
4
|
const commander_1 = require("commander");
|
|
5
5
|
const dev_service_1 = require("../services/dev.service");
|
|
6
6
|
const error_handler_1 = require("../utils/error.handler");
|
|
7
|
-
exports.devCommand = new commander_1.Command(
|
|
8
|
-
.description(
|
|
7
|
+
exports.devCommand = new commander_1.Command("dev")
|
|
8
|
+
.description("Start io.cd in development mode (the app is not packaged)")
|
|
9
9
|
.action(async () => {
|
|
10
10
|
try {
|
|
11
11
|
await (0, dev_service_1.startDevMode)();
|
|
@@ -41,10 +41,9 @@ const commander_1 = require("commander");
|
|
|
41
41
|
const license_service_1 = __importDefault(require("../services/license.service"));
|
|
42
42
|
const clack = __importStar(require("@clack/prompts"));
|
|
43
43
|
const error_handler_1 = require("../utils/error.handler");
|
|
44
|
-
exports.licenseCommand = new commander_1.Command(
|
|
45
|
-
.description('License management commands');
|
|
44
|
+
exports.licenseCommand = new commander_1.Command("license").description("License management commands");
|
|
46
45
|
exports.licenseCommand
|
|
47
|
-
.description(
|
|
46
|
+
.description("Display current license information")
|
|
48
47
|
.action(async () => {
|
|
49
48
|
try {
|
|
50
49
|
const info = await license_service_1.default.validateLicense();
|
|
@@ -54,18 +53,20 @@ exports.licenseCommand
|
|
|
54
53
|
const licenseType = type;
|
|
55
54
|
const formattedExpiration = licensePayload?.expiration
|
|
56
55
|
? new Date(licensePayload.expiration).toLocaleDateString()
|
|
57
|
-
:
|
|
56
|
+
: "Never";
|
|
58
57
|
// Create formatted license info display
|
|
59
58
|
const licenseInfo = [
|
|
60
59
|
`Status: ${licenseStatus}`,
|
|
61
60
|
`Type: ${licenseType}`,
|
|
62
|
-
`Licensee: ${licensePayload?.licensee ||
|
|
63
|
-
`Organization: ${licensePayload?.organization.displayName ||
|
|
64
|
-
status !== "Invalid" ? `Expiration: ${formattedExpiration}` :
|
|
65
|
-
errorMessage ? `Error: ${errorMessage}` :
|
|
66
|
-
]
|
|
61
|
+
`Licensee: ${licensePayload?.licensee || "N/A"}`,
|
|
62
|
+
`Organization: ${licensePayload?.organization.displayName || "N/A"}`,
|
|
63
|
+
status !== "Invalid" ? `Expiration: ${formattedExpiration}` : "",
|
|
64
|
+
errorMessage ? `Error: ${errorMessage}` : "",
|
|
65
|
+
]
|
|
66
|
+
.filter(line => line.length > 0)
|
|
67
|
+
.join("\n");
|
|
67
68
|
// Display with clack.note for nice formatting
|
|
68
|
-
clack.note(licenseInfo, `${licenseStatus === "Active" ?
|
|
69
|
+
clack.note(licenseInfo, `${licenseStatus === "Active" ? "✅" : "❌"} License Information`);
|
|
69
70
|
}
|
|
70
71
|
catch (error) {
|
|
71
72
|
error_handler_1.ErrorHandler.handle(error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"license.command.js","sourceRoot":"","sources":["../../src/commands/license.command.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAAoC;AACpC,kFAAyD;AACzD,sDAAwC;AACxC,0DAAsD;AAEzC,QAAA,cAAc,GAAG,IAAI,mBAAO,CAAC,SAAS,CAAC
|
|
1
|
+
{"version":3,"file":"license.command.js","sourceRoot":"","sources":["../../src/commands/license.command.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAAoC;AACpC,kFAAyD;AACzD,sDAAwC;AACxC,0DAAsD;AAEzC,QAAA,cAAc,GAAG,IAAI,mBAAO,CAAC,SAAS,CAAC,CAAC,WAAW,CAC9D,6BAA6B,CAC9B,CAAC;AAEF,sBAAc;KACX,WAAW,CAAC,qCAAqC,CAAC;KAClD,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,yBAAc,CAAC,eAAe,EAAE,CAAC;QACpD,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC;QAE5D,6CAA6C;QAC7C,IAAI,aAAa,GAAG,MAAM,CAAC;QAC3B,MAAM,WAAW,GAAG,IAAI,CAAC;QAEzB,MAAM,mBAAmB,GAAG,cAAc,EAAE,UAAU;YACpD,CAAC,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,kBAAkB,EAAE;YAC1D,CAAC,CAAC,OAAO,CAAC;QAEZ,wCAAwC;QACxC,MAAM,WAAW,GAAG;YAClB,WAAW,aAAa,EAAE;YAC1B,SAAS,WAAW,EAAE;YACtB,aAAa,cAAc,EAAE,QAAQ,IAAI,KAAK,EAAE;YAChD,iBAAiB,cAAc,EAAE,YAAY,CAAC,WAAW,IAAI,KAAK,EAAE;YACpE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE;YAChE,YAAY,CAAC,CAAC,CAAC,UAAU,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE;SAC7C;aACE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;aAC/B,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,8CAA8C;QAC9C,KAAK,CAAC,IAAI,CACR,WAAW,EACX,GAAG,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,sBAAsB,CAChE,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,4BAAY,CAAC,MAAM,CAAC,KAAc,CAAC,CAAC;IACtC,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -4,11 +4,10 @@ exports.modificationsCommand = void 0;
|
|
|
4
4
|
const commander_1 = require("commander");
|
|
5
5
|
const modifications_service_1 = require("../services/modifications/modifications.service");
|
|
6
6
|
const error_handler_1 = require("../utils/error.handler");
|
|
7
|
-
exports.modificationsCommand = new commander_1.Command(
|
|
8
|
-
.description('Modification management commands');
|
|
7
|
+
exports.modificationsCommand = new commander_1.Command("modifications").description("Modification management commands");
|
|
9
8
|
exports.modificationsCommand
|
|
10
|
-
.command(
|
|
11
|
-
.description(
|
|
9
|
+
.command("apply [component]")
|
|
10
|
+
.description("Apply all modifications or modifications for specific component")
|
|
12
11
|
.action((component) => {
|
|
13
12
|
try {
|
|
14
13
|
if (component) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modifications.command.js","sourceRoot":"","sources":["../../src/commands/modifications.command.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AACpC,2FAAqF;AACrF,0DAAsD;AAEzC,QAAA,oBAAoB,GAAG,IAAI,mBAAO,CAAC,eAAe,CAAC
|
|
1
|
+
{"version":3,"file":"modifications.command.js","sourceRoot":"","sources":["../../src/commands/modifications.command.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AACpC,2FAAqF;AACrF,0DAAsD;AAEzC,QAAA,oBAAoB,GAAG,IAAI,mBAAO,CAAC,eAAe,CAAC,CAAC,WAAW,CAC1E,kCAAkC,CACnC,CAAC;AAEF,4BAAoB;KACjB,OAAO,CAAC,mBAAmB,CAAC;KAC5B,WAAW,CACV,iEAAiE,CAClE;KACA,MAAM,CAAC,CAAC,SAAkB,EAAE,EAAE;IAC7B,IAAI,CAAC;QACH,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CACT,8BAA8B,SAAS,wBAAwB,CAChE,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,IAAA,0CAAkB,EAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,4BAAY,CAAC,MAAM,CAAC,KAAc,CAAC,CAAC;IACtC,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -44,11 +44,11 @@ const components_service_1 = __importDefault(require("../services/components/com
|
|
|
44
44
|
const app_service_1 = __importDefault(require("../services/app.service"));
|
|
45
45
|
const clack = __importStar(require("@clack/prompts"));
|
|
46
46
|
const logger = logger_1.Logger.getInstance("setup.command");
|
|
47
|
-
exports.setupCommand = new commander_1.Command(
|
|
48
|
-
.description(
|
|
47
|
+
exports.setupCommand = new commander_1.Command("setup")
|
|
48
|
+
.description("Prepares the seed for first usage. This will install components, and install packages for all apps")
|
|
49
49
|
.action(async () => {
|
|
50
50
|
try {
|
|
51
|
-
logger.info(
|
|
51
|
+
logger.info("Setting up the seed...");
|
|
52
52
|
const componentsService = components_service_1.default;
|
|
53
53
|
// Install components first
|
|
54
54
|
await componentsService.installComponents();
|
|
@@ -56,7 +56,7 @@ exports.setupCommand = new commander_1.Command('setup')
|
|
|
56
56
|
await componentsService.pinComponentVersions();
|
|
57
57
|
// Install packages for all apps
|
|
58
58
|
await app_service_1.default.installAllApps();
|
|
59
|
-
logger.info(
|
|
59
|
+
logger.info("Seed prepared successfully!");
|
|
60
60
|
// Show next steps
|
|
61
61
|
clack.note('Run "npm run dev" to start the development environment \n' +
|
|
62
62
|
'Run "npm run build" to create distributable packages', "Next Steps");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.command.js","sourceRoot":"","sources":["../../src/commands/setup.command.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAAoC;AACpC,4CAAyC;AACzC,0DAAsD;AACtD,mGAA0E;AAC1E,0EAAiD;AACjD,sDAAwC;AAExC,MAAM,MAAM,GAAG,eAAM,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;AAEtC,QAAA,YAAY,GAAG,IAAI,mBAAO,CAAC,OAAO,CAAC;KAC7C,WAAW,
|
|
1
|
+
{"version":3,"file":"setup.command.js","sourceRoot":"","sources":["../../src/commands/setup.command.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAAoC;AACpC,4CAAyC;AACzC,0DAAsD;AACtD,mGAA0E;AAC1E,0EAAiD;AACjD,sDAAwC;AAExC,MAAM,MAAM,GAAG,eAAM,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;AAEtC,QAAA,YAAY,GAAG,IAAI,mBAAO,CAAC,OAAO,CAAC;KAC7C,WAAW,CACV,oGAAoG,CACrG;KACA,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,IAAI,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QACtC,MAAM,iBAAiB,GAAG,4BAAiB,CAAC;QAE5C,2BAA2B;QAC3B,MAAM,iBAAiB,CAAC,iBAAiB,EAAE,CAAC;QAE5C,iDAAiD;QACjD,MAAM,iBAAiB,CAAC,oBAAoB,EAAE,CAAC;QAE/C,gCAAgC;QAChC,MAAM,qBAAU,CAAC,cAAc,EAAE,CAAC;QAElC,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;QAC3C,kBAAkB;QAClB,KAAK,CAAC,IAAI,CACR,2DAA2D;YACzD,sDAAsD,EACxD,YAAY,CACb,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,4BAAY,CAAC,MAAM,CAAC,KAAc,CAAC,CAAC;IACtC,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -4,8 +4,8 @@ exports.testCommand = void 0;
|
|
|
4
4
|
const commander_1 = require("commander");
|
|
5
5
|
const test_service_1 = require("../services/test.service");
|
|
6
6
|
const error_handler_1 = require("../utils/error.handler");
|
|
7
|
-
exports.testCommand = new commander_1.Command(
|
|
8
|
-
.description(
|
|
7
|
+
exports.testCommand = new commander_1.Command("test")
|
|
8
|
+
.description("Run the test suite")
|
|
9
9
|
.action(async () => {
|
|
10
10
|
try {
|
|
11
11
|
const testService = new test_service_1.TestService();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test.command.js","sourceRoot":"","sources":["../../src/commands/test.command.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AACpC,2DAAuD;AACvD,0DAAsD;AAEzC,QAAA,WAAW,GAAG,IAAI,mBAAO,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"test.command.js","sourceRoot":"","sources":["../../src/commands/test.command.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AACpC,2DAAuD;AACvD,0DAAsD;AAEzC,QAAA,WAAW,GAAG,IAAI,mBAAO,CAAC,MAAM,CAAC;KAC3C,WAAW,CAAC,oBAAoB,CAAC;KACjC,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,IAAI,0BAAW,EAAE,CAAC;QACtC,MAAM,WAAW,CAAC,QAAQ,EAAE,CAAC;IAC/B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,4BAAY,CAAC,MAAM,CAAC,KAAc,CAAC,CAAC;IACtC,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"additionalProperties": false,
|
|
7
7
|
"properties": {
|
|
8
8
|
"company": {
|
|
9
|
-
"description": "Company name that develops the application. Used in installers, about dialogs, metadata, copyright notices, and certificates.",
|
|
9
|
+
"description": "Company name that develops the application. \nDerived from package.json \"author\" if not set. Used in installers, about dialogs, metadata, copyright notices, and certificates.",
|
|
10
10
|
"type": "string"
|
|
11
11
|
},
|
|
12
12
|
"components": {
|
|
@@ -105,7 +105,7 @@
|
|
|
105
105
|
"type": "object"
|
|
106
106
|
},
|
|
107
107
|
"copyright": {
|
|
108
|
-
"description": "Copyright notice for your product
|
|
108
|
+
"description": "Copyright notice for your product. \nAuto-generated as \"Copyright © {year} {company}. All rights reserved.\" if not set. \nAppears in application metadata, installers, and about dialogs.",
|
|
109
109
|
"type": "string"
|
|
110
110
|
},
|
|
111
111
|
"license": {
|
|
@@ -208,7 +208,6 @@
|
|
|
208
208
|
}
|
|
209
209
|
},
|
|
210
210
|
"required": [
|
|
211
|
-
"appBundleId",
|
|
212
211
|
"appBundleName",
|
|
213
212
|
"codeSign",
|
|
214
213
|
"notarization"
|
|
@@ -216,15 +215,15 @@
|
|
|
216
215
|
"type": "object"
|
|
217
216
|
},
|
|
218
217
|
"productDescription": {
|
|
219
|
-
"description": "Detailed description of your product. Used in package metadata, installers, and about dialogs.",
|
|
218
|
+
"description": "Detailed description of your product. \nDerived from package.json \"description\" if not set. Used in package metadata, installers, and about dialogs.",
|
|
220
219
|
"type": "string"
|
|
221
220
|
},
|
|
222
221
|
"productName": {
|
|
223
|
-
"description": "Human-readable name of your product (e.g., \"My Trading Application\"). Shown to users in the application title, UI, and installers.",
|
|
222
|
+
"description": "Human-readable name of your product (e.g., \"My Trading Application\"). \nDerived from package.json \"productName\" if not set. Shown to users in the application title, UI, and installers.",
|
|
224
223
|
"type": "string"
|
|
225
224
|
},
|
|
226
225
|
"productSlug": {
|
|
227
|
-
"description": "URL-friendly identifier for your product (e.g., \"my-trading-app\"). Used in file names, package identification, and filesystem operations.
|
|
226
|
+
"description": "URL-friendly identifier for your product (e.g., \"my-trading-app\"). \nDerived from package.json \"name\" if not set. Used in file names, package identification, and filesystem operations.",
|
|
228
227
|
"type": "string"
|
|
229
228
|
},
|
|
230
229
|
"sentry": {
|
|
@@ -232,7 +231,7 @@
|
|
|
232
231
|
"type": "boolean"
|
|
233
232
|
},
|
|
234
233
|
"version": {
|
|
235
|
-
"description": "Version number of your application following semantic versioning (e.g., \"1.2.3\").
|
|
234
|
+
"description": "Version number of your application following semantic versioning (e.g., \"1.2.3\"). \nDerived from package.json \"version\" if not set.",
|
|
236
235
|
"type": "string"
|
|
237
236
|
},
|
|
238
237
|
"win": {
|