@telemetryos/cli 1.15.0 → 1.16.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/CHANGELOG.md CHANGED
@@ -1,5 +1,22 @@
1
1
  # @telemetryos/cli
2
2
 
3
+ ## 1.16.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 15a06b5: Iframe management, heartbeat logic, and SDK fixes
8
+ - Added iframe lifecycle management and heartbeat logic for monitoring application health
9
+ - Introduced dependency store for tracking application dependencies
10
+ - Added subscription registry for managing real-time subscriptions in the API coordinator
11
+ - Re-exported missing root-sdk types and utilities from the sdk package (Navigation class, media types, bridge utilities, client types)
12
+ - Fixed application store namespace from incorrect value to "application"
13
+ - Removed unused media fields from root-sdk
14
+
15
+ ### Patch Changes
16
+
17
+ - Updated dependencies [15a06b5]
18
+ - @telemetryos/development-application-host-ui@1.16.0
19
+
3
20
  ## 1.15.0
4
21
 
5
22
  ### 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.0",
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.0",
29
29
  "@types/serve-handler": "^6.1.4",
30
30
  "commander": "^14.0.0",
31
31
  "ignore": "^6.0.2",