@telemetryos/cli 1.15.0 → 1.16.1

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/CHANGELOG.md CHANGED
@@ -1,5 +1,31 @@
1
1
  # @telemetryos/cli
2
2
 
3
+ ## 1.16.1
4
+
5
+ ### Patch Changes
6
+
7
+ - Standardize ESLint configs and rename spec files to test (#69)
8
+ Change media.openPicker from request to subscription pattern (#68)
9
+ - Updated dependencies
10
+ - @telemetryos/development-application-host-ui@1.16.1
11
+
12
+ ## 1.16.0
13
+
14
+ ### Minor Changes
15
+
16
+ - 15a06b5: Iframe management, heartbeat logic, and SDK fixes
17
+ - Added iframe lifecycle management and heartbeat logic for monitoring application health
18
+ - Introduced dependency store for tracking application dependencies
19
+ - Added subscription registry for managing real-time subscriptions in the API coordinator
20
+ - Re-exported missing root-sdk types and utilities from the sdk package (Navigation class, media types, bridge utilities, client types)
21
+ - Fixed application store namespace from incorrect value to "application"
22
+ - Removed unused media fields from root-sdk
23
+
24
+ ### Patch Changes
25
+
26
+ - Updated dependencies [15a06b5]
27
+ - @telemetryos/development-application-host-ui@1.16.0
28
+
3
29
  ## 1.15.0
4
30
 
5
31
  ### Minor Changes
@@ -0,0 +1,13 @@
1
+ import { Command } from 'commander';
2
+ export type ArchiveCallbacks = {
3
+ onLog?: (line: string) => void;
4
+ onStateChange?: (state: string) => void;
5
+ onComplete?: (data: {
6
+ filename: string;
7
+ }) => void;
8
+ onError?: (error: Error) => void;
9
+ };
10
+ export declare const archiveCommand: Command;
11
+ export declare function handleArchiveCommand(projectPath: string, options: {
12
+ output?: string;
13
+ }, callbacks?: ArchiveCallbacks): Promise<void>;
@@ -0,0 +1,49 @@
1
+ import { Command } from 'commander';
2
+ import path from 'path';
3
+ import { loadProjectConfig } from '../services/project-config.js';
4
+ import { createArchive } from '../services/archiver.js';
5
+ import { ansi } from '../utils/ansi.js';
6
+ export const archiveCommand = new Command('archive')
7
+ .alias('zip')
8
+ .description('Create a project archive for manual upload')
9
+ .argument('[project-path]', 'Path to the project directory. Defaults to current working directory', process.cwd())
10
+ .option('-o, --output <path>', 'Output directory for the archive')
11
+ .action(handleArchiveCommand);
12
+ export async function handleArchiveCommand(projectPath, options, callbacks) {
13
+ var _a, _b, _c, _d, _e;
14
+ projectPath = path.resolve(process.cwd(), projectPath);
15
+ const logMessage = (callbacks === null || callbacks === void 0 ? void 0 : callbacks.onLog) || ((msg) => console.log(msg));
16
+ try {
17
+ // Step 1: Load project config
18
+ (_a = callbacks === null || callbacks === void 0 ? void 0 : callbacks.onStateChange) === null || _a === void 0 ? void 0 : _a.call(callbacks, 'loading');
19
+ logMessage(`\n${ansi.cyan}Loading project configuration...${ansi.reset}`);
20
+ const config = await loadProjectConfig(projectPath);
21
+ logMessage(` Project: ${ansi.bold}${config.name || path.basename(projectPath)}${ansi.reset}`);
22
+ if (config.version) {
23
+ logMessage(` Version: ${config.version}`);
24
+ }
25
+ // Step 2: Create archive directly in out/
26
+ (_b = callbacks === null || callbacks === void 0 ? void 0 : callbacks.onStateChange) === null || _b === void 0 ? void 0 : _b.call(callbacks, 'archiving');
27
+ logMessage(`\n${ansi.cyan}Archiving project...${ansi.reset}`);
28
+ const outDir = options.output
29
+ ? path.resolve(process.cwd(), options.output)
30
+ : path.join(projectPath, 'out');
31
+ const { filename } = await createArchive(projectPath, outDir, (msg) => {
32
+ logMessage(` ${ansi.dim}${msg}${ansi.reset}`);
33
+ });
34
+ // Step 3: Report success
35
+ (_c = callbacks === null || callbacks === void 0 ? void 0 : callbacks.onStateChange) === null || _c === void 0 ? void 0 : _c.call(callbacks, 'success');
36
+ logMessage(`\n${ansi.green}${ansi.bold}Archive created!${ansi.reset}`);
37
+ logMessage(`\n ${ansi.dim}${outDir}/${filename}${ansi.reset}`);
38
+ logMessage('');
39
+ (_d = callbacks === null || callbacks === void 0 ? void 0 : callbacks.onComplete) === null || _d === void 0 ? void 0 : _d.call(callbacks, { filename });
40
+ }
41
+ catch (error) {
42
+ const err = error;
43
+ logMessage(`\n${ansi.red}Error: ${err.message}${ansi.reset}\n`);
44
+ (_e = callbacks === null || callbacks === void 0 ? void 0 : callbacks.onError) === null || _e === void 0 ? void 0 : _e.call(callbacks, err);
45
+ if (!callbacks) {
46
+ process.exit(1);
47
+ }
48
+ }
49
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@telemetryos/cli",
3
- "version": "1.15.0",
3
+ "version": "1.16.1",
4
4
  "description": "The official TelemetryOS application CLI package. Use it to build applications that run on the TelemetryOS platform",
5
5
  "type": "module",
6
6
  "bin": {
@@ -25,7 +25,7 @@
25
25
  "license": "",
26
26
  "repository": "github:TelemetryTV/Application-API",
27
27
  "dependencies": {
28
- "@telemetryos/development-application-host-ui": "^1.15.0",
28
+ "@telemetryos/development-application-host-ui": "^1.16.1",
29
29
  "@types/serve-handler": "^6.1.4",
30
30
  "commander": "^14.0.0",
31
31
  "ignore": "^6.0.2",