@helix3/helix-cli 0.1.14-helix3.173 → 0.1.14-helix3.174

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/dist/api.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import { CliCredentials } from './config';
2
+ export declare const API_FETCH_TIMEOUT_MS = 30000;
2
3
  type NestErrorBody = {
3
4
  statusCode?: number;
4
5
  message?: string | string[];
package/dist/api.js CHANGED
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HelixApi = exports.ApiError = void 0;
3
+ exports.HelixApi = exports.ApiError = exports.API_FETCH_TIMEOUT_MS = void 0;
4
4
  exports.uploadToTicket = uploadToTicket;
5
+ exports.API_FETCH_TIMEOUT_MS = 30_000;
6
+ function withTimeout(init) {
7
+ return { ...init, signal: AbortSignal.timeout(exports.API_FETCH_TIMEOUT_MS) };
8
+ }
5
9
  class ApiError extends Error {
6
10
  status;
7
11
  body;
@@ -38,14 +42,14 @@ class HelixApi {
38
42
  this.token = token;
39
43
  }
40
44
  async request(method, path, body) {
41
- const res = await fetch(`${this.baseUrl}${path}`, {
45
+ const res = await fetch(`${this.baseUrl}${path}`, withTimeout({
42
46
  method,
43
47
  headers: {
44
48
  'content-type': 'application/json',
45
49
  ...(this.token ? { authorization: `Bearer ${this.token}` } : {}),
46
50
  },
47
51
  body: body === undefined ? undefined : JSON.stringify(body),
48
- });
52
+ }));
49
53
  if (!res.ok) {
50
54
  const problem = (await res.json().catch(() => ({})));
51
55
  throw new ApiError(res.status, problem);
@@ -60,10 +64,10 @@ class HelixApi {
60
64
  return envelope.item;
61
65
  }
62
66
  async requestBytes(path) {
63
- const res = await fetch(`${this.baseUrl}${path}`, {
67
+ const res = await fetch(`${this.baseUrl}${path}`, withTimeout({
64
68
  method: 'GET',
65
69
  headers: this.token ? { authorization: `Bearer ${this.token}` } : {},
66
- });
70
+ }));
67
71
  if (!res.ok) {
68
72
  const problem = (await res.json().catch(() => ({})));
69
73
  throw new ApiError(res.status, problem);
@@ -85,11 +89,11 @@ class HelixApi {
85
89
  // The same transport for the multipart endpoints that REPLACE rather than
86
90
  // create (achievement icon/trophy are PUTs).
87
91
  async sendMultipart(method, path, form) {
88
- const res = await fetch(`${this.baseUrl}${path}`, {
92
+ const res = await fetch(`${this.baseUrl}${path}`, withTimeout({
89
93
  method,
90
94
  headers: this.token ? { authorization: `Bearer ${this.token}` } : {},
91
95
  body: form,
92
- });
96
+ }));
93
97
  if (!res.ok) {
94
98
  const problem = (await res.json().catch(() => ({})));
95
99
  throw new ApiError(res.status, problem);
@@ -107,14 +111,14 @@ exports.HelixApi = HelixApi;
107
111
  // uploads, Cache-Control) are part of the signature, so the client must echo
108
112
  // them exactly or R2 rejects the PUT with a signature mismatch.
109
113
  async function uploadToTicket(url, body, contentType, cacheControl) {
110
- const res = await fetch(url, {
114
+ const res = await fetch(url, withTimeout({
111
115
  method: 'PUT',
112
116
  body: new Uint8Array(body),
113
117
  headers: {
114
118
  'content-type': contentType,
115
119
  ...(cacheControl ? { 'cache-control': cacheControl } : {}),
116
120
  },
117
- });
121
+ }));
118
122
  if (!res.ok) {
119
123
  throw new Error(`upload failed (${res.status}): ${await res.text().catch(() => '')}`);
120
124
  }
package/dist/api.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { Command } from 'commander';
2
+ import type { ContinuumPackageVersionReference } from '@hypersoniclabs/helix-manifest';
3
+ import type { CliCredentials } from '../config';
4
+ export interface ContinuumAdminPackagePinDependencies {
5
+ requireAuth(): CliCredentials;
6
+ pinLegacyItemPackage(credentials: CliCredentials, itemId: string, input: {
7
+ packagePin: ContinuumPackageVersionReference;
8
+ promoteToPublished?: true;
9
+ }): Promise<unknown>;
10
+ printJson(value: unknown): void;
11
+ fail(message: string): never;
12
+ }
13
+ /** Register the explicitly admin-authorized legacy Item migration path. */
14
+ export declare function registerContinuumAdminPackagePinCommand(continuum: Command, dependencies: ContinuumAdminPackagePinDependencies): void;
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.registerContinuumAdminPackagePinCommand = registerContinuumAdminPackagePinCommand;
4
+ const UUID = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
5
+ const SEMVER = /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-[0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*)?(?:\+[0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*)?$/;
6
+ const MANIFEST_CID = /^cid:sha256:[a-f0-9]{64}$/;
7
+ function validateImmutablePin(itemId, options) {
8
+ if (!UUID.test(itemId))
9
+ throw new TypeError('item id must be a UUID');
10
+ if (!UUID.test(options.packageId))
11
+ throw new TypeError('package id must be a UUID');
12
+ if (!SEMVER.test(options.version))
13
+ throw new TypeError('version must be a semantic version');
14
+ if (!MANIFEST_CID.test(options.manifestCid))
15
+ throw new TypeError('manifest cid must be cid:sha256:<64 lowercase hex characters>');
16
+ return {
17
+ packageId: options.packageId,
18
+ version: options.version,
19
+ manifestCid: options.manifestCid,
20
+ };
21
+ }
22
+ /** Register the explicitly admin-authorized legacy Item migration path. */
23
+ function registerContinuumAdminPackagePinCommand(continuum, dependencies) {
24
+ continuum
25
+ .command('pin-legacy-item-package')
26
+ .description('Admin-only: pin a legacy Universal Item to one exact Package Version')
27
+ .argument('<item-id>', 'legacy Universal Item UUID')
28
+ .requiredOption('--package-id <package-id>', 'exact Continuum Package UUID')
29
+ .requiredOption('--version <version>', 'exact immutable Package Version')
30
+ .requiredOption('--manifest-cid <cid>', 'exact Package Version manifest CID')
31
+ .option('--promote-to-published', 'promote the migrated Item to published')
32
+ .action(async (itemId, options) => {
33
+ try {
34
+ const packagePin = validateImmutablePin(itemId, options);
35
+ const receipt = await dependencies.pinLegacyItemPackage(dependencies.requireAuth(), itemId, {
36
+ packagePin,
37
+ ...(options.promoteToPublished ? { promoteToPublished: true } : {}),
38
+ });
39
+ dependencies.printJson(receipt);
40
+ }
41
+ catch (error) {
42
+ dependencies.fail(`✖ ${error instanceof Error ? error.message : String(error)}`);
43
+ }
44
+ });
45
+ }
46
+ //# sourceMappingURL=adminPackagePinCommand.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adminPackagePinCommand.js","sourceRoot":"","sources":["../../src/continuum/adminPackagePinCommand.ts"],"names":[],"mappings":";;AAoCA,0FAiCC;AAjED,MAAM,IAAI,GAAG,iEAAiE,CAAC;AAC/E,MAAM,MAAM,GAAG,2HAA2H,CAAC;AAC3I,MAAM,YAAY,GAAG,2BAA2B,CAAC;AAajD,SAAS,oBAAoB,CAAC,MAAc,EAAE,OAI7C;IACC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;QAAE,MAAM,IAAI,SAAS,CAAC,wBAAwB,CAAC,CAAC;IACtE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;QAAE,MAAM,IAAI,SAAS,CAAC,2BAA2B,CAAC,CAAC;IACpF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,MAAM,IAAI,SAAS,CAAC,oCAAoC,CAAC,CAAC;IAC7F,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;QAAE,MAAM,IAAI,SAAS,CAAC,+DAA+D,CAAC,CAAC;IAClI,OAAO;QACL,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,WAAW,EAAE,OAAO,CAAC,WAA8D;KACpF,CAAC;AACJ,CAAC;AAED,2EAA2E;AAC3E,SAAgB,uCAAuC,CACrD,SAAkB,EAClB,YAAkD;IAElD,SAAS;SACN,OAAO,CAAC,yBAAyB,CAAC;SAClC,WAAW,CAAC,sEAAsE,CAAC;SACnF,QAAQ,CAAC,WAAW,EAAE,4BAA4B,CAAC;SACnD,cAAc,CAAC,2BAA2B,EAAE,8BAA8B,CAAC;SAC3E,cAAc,CAAC,qBAAqB,EAAE,iCAAiC,CAAC;SACxE,cAAc,CAAC,sBAAsB,EAAE,oCAAoC,CAAC;SAC5E,MAAM,CAAC,wBAAwB,EAAE,wCAAwC,CAAC;SAC1E,MAAM,CAAC,KAAK,EAAE,MAAc,EAAE,OAK9B,EAAE,EAAE;QACH,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,oBAAoB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACzD,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,oBAAoB,CACrD,YAAY,CAAC,WAAW,EAAE,EAC1B,MAAM,EACN;gBACE,UAAU;gBACV,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,IAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC7E,CACF,CAAC;YACF,YAAY,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,YAAY,CAAC,IAAI,CAAC,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACnF,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -39,6 +39,11 @@ export declare class HelixContinuumApi implements ContinuumPublicationApi {
39
39
  packagePin: ContinuumPackageVersionReference;
40
40
  promoteToPublished?: true;
41
41
  }): Promise<unknown>;
42
+ /** Admin-only migration for legacy Items that cannot be pinned by their current owner. */
43
+ pinLegacyUniversalItemPackageAsAdmin(itemId: string, input: {
44
+ packagePin: ContinuumPackageVersionReference;
45
+ promoteToPublished?: true;
46
+ }): Promise<unknown>;
42
47
  createListing(listing: Listing): Promise<unknown>;
43
48
  publishWorldRelease(worldId: string, input: {
44
49
  release: WorldRelease;
@@ -70,6 +70,10 @@ class HelixContinuumApi {
70
70
  async pinUniversalItemPackage(itemId, input) {
71
71
  return this.api.request('POST', `/api/v1/continuum/universal-items/${encodeURIComponent(itemId)}/package-pin`, input);
72
72
  }
73
+ /** Admin-only migration for legacy Items that cannot be pinned by their current owner. */
74
+ async pinLegacyUniversalItemPackageAsAdmin(itemId, input) {
75
+ return this.api.request('POST', `/api/v1/continuum/admin/universal-items/${encodeURIComponent(itemId)}/package-pin`, input);
76
+ }
73
77
  async createListing(listing) {
74
78
  return this.api.request('POST', '/api/v1/continuum/listings', listing);
75
79
  }
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/continuum/client.ts"],"names":[],"mappings":";;;AAAA,6CAAqC;AACrC,6CAAyC;AAOzC,SAAS,MAAM,CAAI,KAAkB;IACnC,OAAO,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAU,CAAC;AACzF,CAAC;AASD,SAAS,sBAAsB,CAAC,KAAc;IAC5C,MAAM,QAAQ,GAAG,MAAM,CAAC,KAA0B,CAAC,CAAC;IACpD,MAAM,SAAS,GAAG,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,IAAI,QAAQ;QAChF,CAAC,CAAE,QAAgC,CAAC,MAAM;QAC1C,CAAC,CAAC,QAAQ,CAAC;IACb,IAAI,CAAC,SAAS,IAAI,OAAO,SAAS,KAAK,QAAQ;QAAE,MAAM,IAAI,SAAS,CAAC,kDAAkD,CAAC,CAAC;IACzH,MAAM,OAAO,GAAG,SAA8B,CAAC;IAC/C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,SAAS,CAAC;IACjD,IAAI,OAAO,OAAO,CAAC,GAAG,KAAK,QAAQ,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACtF,MAAM,IAAI,SAAS,CAAC,8CAA8C,CAAC,CAAC;IACtE,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAK,KAAgB,GAAG,CAAC,EAAE,CAAC;QAC1D,MAAM,IAAI,SAAS,CAAC,qDAAqD,CAAC,CAAC;IAC7E,CAAC;IACD,IAAI,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5E,MAAM,IAAI,SAAS,CAAC,qDAAqD,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,GAAmC,EAAE,KAAK,EAAE,KAAe,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC;AACpH,CAAC;AAED,0FAA0F;AAC1F,MAAa,iBAAiB;IACC;IAA7B,YAA6B,GAAa;QAAb,QAAG,GAAH,GAAG,CAAU;IAAG,CAAC;IAE9C,KAAK,CAAC,SAAS,CAAC,KAAkG;QAChH,OAAO,sBAAsB,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,2BAA2B,EAAE;YACxF,MAAM,EAAE,oBAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ;YAC7E,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ;SACrD,CAAC,CAAC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,SAAiB,EAAE,QAA+B;QACvE,OAAO,sBAAsB,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,0CAA0C,kBAAkB,CAAC,SAAS,CAAC,kBAAkB,EAAE,EAAE,QAAQ,EAAE,QAAQ,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC;IAChM,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,OAAe,EAAE,aAAqB;QAClE,OAAO,sBAAsB,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,0CAA0C,kBAAkB,CAAC,OAAO,CAAC,YAAY,kBAAkB,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC5L,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,GAAqB,EAAE,WAAiE,EAAE;QAC5G,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,4BAA4B,EAAE;YAC5D,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,IAAI,WAAW,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,UAAU,IAAI,SAAS;SAClI,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,SAAiB,EAAE,OAAgC;QAC5E,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,8BAA8B,kBAAkB,CAAC,SAAS,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACnH,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,SAAiB,EAAE,OAAe;QAC5D,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,8BAA8B,kBAAkB,CAAC,SAAS,CAAC,aAAa,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACxI,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,SAAiB,EAAE,OAAe,EAAE,GAAW;QACrE,OAAO,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,8BAA8B,kBAAkB,CAAC,SAAS,CAAC,aAAa,kBAAkB,CAAC,OAAO,CAAC,YAAY,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACzK,CAAC;IAED,KAAK,CAAC,0BAA0B,CAAC,SAAiB,EAAE,OAAe,EAAE,KAAqG;QACxK,OAAO,MAAM,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,8BAA8B,kBAAkB,CAAC,SAAS,CAAC,aAAa,kBAAkB,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;IACpK,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,SAAiB,EAAE,OAAe,EAAE,KAAmD;QAC9G,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,8BAA8B,kBAAkB,CAAC,SAAS,CAAC,aAAa,kBAAkB,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACrJ,CAAC;IAED,KAAK,CAAC,2BAA2B,CAC/B,mBAA2B,EAC3B,UAA4C;QAE5C,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CACrB,MAAM,EACN,0CAA0C,kBAAkB,CAAC,mBAAmB,CAAC,cAAc,EAC/F,EAAE,UAAU,EAAE,CACf,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,MAAc,EAAE,KAG7C;QACC,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,qCAAqC,kBAAkB,CAAC,MAAM,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IACxH,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,OAAgB;QAClC,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,4BAA4B,EAAE,OAAO,CAAC,CAAC;IACzE,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,OAAe,EAAE,KAAiE;QAC1G,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,4BAA4B,kBAAkB,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IAC7G,CAAC;CACF;AArED,8CAqEC;AAED,SAAS,WAAW,CAAC,GAAqB;IACxC,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,SAAS,CAAC;IAClI,OAAO,GAAG,IAAI,IAAI,IAAA,wBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;AACpF,CAAC"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/continuum/client.ts"],"names":[],"mappings":"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"}
@@ -432,6 +432,8 @@ function assertPublishableSceneDocument(document) {
432
432
  }
433
433
  function ownedObjectReferences(version) {
434
434
  const refs = [version.root, ...version.variants.map((variant) => variant.object)];
435
+ if (version.source)
436
+ refs.push(version.source);
435
437
  if (version.material)
436
438
  refs.push(...(0, helix_manifest_1.continuumMaterialObjectReferences)(version.material));
437
439
  if (version.scene)
@@ -1 +1 @@
1
- {"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../src/continuum/workflow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../src/continuum/workflow.ts"],"names":[],"mappings":"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"}
package/dist/device.d.ts CHANGED
@@ -28,7 +28,7 @@ export declare function createDeviceProject(input: {
28
28
  id: string;
29
29
  title: string;
30
30
  modelPath: string;
31
- template: 'clock' | 'standing-desk';
31
+ template: 'clock' | 'standing-desk' | 'television';
32
32
  }): {
33
33
  directory: string;
34
34
  definitionPath: string;
package/dist/device.js CHANGED
@@ -8,6 +8,13 @@ exports.createDeviceProject = createDeviceProject;
8
8
  const node_fs_1 = require("node:fs");
9
9
  const node_path_1 = require("node:path");
10
10
  exports.DEVICE_FILENAME = 'device.json';
11
+ const DEVICE_APP_PERMISSIONS = new Set([
12
+ 'web.content',
13
+ 'network.fetch',
14
+ 'web.externalNavigation',
15
+ 'audio.media',
16
+ ]);
17
+ const DEVICE_PORT_DIRECTIONS = new Set(['input', 'output', 'bidirectional']);
11
18
  function object(value) {
12
19
  return value && typeof value === 'object' && !Array.isArray(value)
13
20
  ? value
@@ -215,6 +222,9 @@ function exerciseValue(interaction, state) {
215
222
  options.find((option) => !option.disabled)?.value ??
216
223
  '');
217
224
  }
225
+ if (control.kind === 'text') {
226
+ return 'https://www.youtube.com/watch?v=M7lc1UVf-VE';
227
+ }
218
228
  return undefined;
219
229
  }
220
230
  function validateDeviceProject(input) {
@@ -347,6 +357,13 @@ function validateDeviceProject(input) {
347
357
  if (option.disabled && !String(option.reason ?? '').trim())
348
358
  errors.push(`interaction ${id} disabled choice "${String(option.value)}" needs a reason`);
349
359
  }
360
+ else if (control.kind === 'text') {
361
+ if (spec.type !== 'string')
362
+ errors.push(`interaction ${id} text control must target string state`);
363
+ const maxLength = Number(control.maxLength ?? 512);
364
+ if (!Number.isInteger(maxLength) || maxLength < 1 || maxLength > 4096)
365
+ errors.push(`interaction ${id} text maxLength must be 1..4096`);
366
+ }
350
367
  else
351
368
  errors.push(`interaction ${id} uses unsupported control kind "${String(control.kind)}"`);
352
369
  }
@@ -356,6 +373,42 @@ function validateDeviceProject(input) {
356
373
  if (components.length > 32)
357
374
  errors.push('components exceed the 32-component Device budget');
358
375
  const bindings = object(model.nodeBindings);
376
+ const apps = object(definition.apps);
377
+ for (const [appId, raw] of Object.entries(apps)) {
378
+ const app = object(raw);
379
+ if (!['localWeb', 'remoteWeb', 'youtube'].includes(String(app.type)))
380
+ errors.push(`app ${appId} has unsupported type "${String(app.type)}"`);
381
+ if (!String(app.entry ?? '').trim())
382
+ errors.push(`app ${appId} entry is required`);
383
+ if (app.permissions !== undefined && !Array.isArray(app.permissions)) {
384
+ errors.push(`app ${appId} permissions must be an array`);
385
+ }
386
+ else {
387
+ const permissions = Array.isArray(app.permissions) ? app.permissions.map(String) : [];
388
+ if (permissions.length > 8)
389
+ errors.push(`app ${appId} permissions exceed the 8-permission budget`);
390
+ for (const permission of permissions) {
391
+ if (!DEVICE_APP_PERMISSIONS.has(permission))
392
+ errors.push(`app ${appId} has unsupported permission "${permission}"`);
393
+ }
394
+ }
395
+ if (app.type !== 'localWeb') {
396
+ const origins = Array.isArray(app.allowedOrigins)
397
+ ? app.allowedOrigins.map(String)
398
+ : [];
399
+ if (origins.length === 0)
400
+ errors.push(`app ${appId} requires allowedOrigins`);
401
+ for (const origin of origins) {
402
+ try {
403
+ if (new URL(origin).origin !== origin)
404
+ errors.push(`app ${appId} allowed origin must not contain a path: ${origin}`);
405
+ }
406
+ catch {
407
+ errors.push(`app ${appId} has invalid allowed origin: ${origin}`);
408
+ }
409
+ }
410
+ }
411
+ }
359
412
  for (const component of components) {
360
413
  const semanticNodes = [
361
414
  'node',
@@ -372,6 +425,41 @@ function validateDeviceProject(input) {
372
425
  if (nodeNames.length && !nodes.has(authored))
373
426
  errors.push(`component ${String(component.id)} ${field} resolves to missing GLB node "${authored}"`);
374
427
  }
428
+ if (component.type === 'screen') {
429
+ if (!apps[String(component.app ?? '')])
430
+ errors.push(`screen ${String(component.id)} references unknown app "${String(component.app)}"`);
431
+ for (const field of [
432
+ 'powerStateKey',
433
+ 'sourceStateKey',
434
+ 'playbackStateKey',
435
+ 'volumeStateKey',
436
+ ]) {
437
+ if (component[field] && !state[String(component[field])])
438
+ errors.push(`screen ${String(component.id)} references unknown state "${String(component[field])}"`);
439
+ }
440
+ if (!(Number(component.widthM) > 0) || !(Number(component.heightM) > 0))
441
+ errors.push(`screen ${String(component.id)} requires positive widthM and heightM`);
442
+ }
443
+ }
444
+ const ports = Array.isArray(definition.ports)
445
+ ? definition.ports.map(object)
446
+ : [];
447
+ const portIds = new Set();
448
+ for (const port of ports) {
449
+ const id = String(port.id ?? '');
450
+ if (!id || portIds.has(id))
451
+ errors.push(`port id "${id}" is missing or duplicated`);
452
+ portIds.add(id);
453
+ if (!DEVICE_PORT_DIRECTIONS.has(String(port.direction)))
454
+ errors.push(`port ${id} has unsupported direction`);
455
+ if (!['value', 'event', 'command', 'stream'].includes(String(port.kind)))
456
+ errors.push(`port ${id} has unsupported kind`);
457
+ if (!['boolean', 'number', 'string', 'media.audio', 'media.video'].includes(String(port.dataType)))
458
+ errors.push(`port ${id} has unsupported dataType`);
459
+ if (port.stateKey && !state[String(port.stateKey)])
460
+ errors.push(`port ${id} references unknown state "${String(port.stateKey)}"`);
461
+ if (port.kind === 'value' && !port.stateKey)
462
+ errors.push(`value port ${id} requires stateKey`);
375
463
  }
376
464
  const triggers = Array.isArray(object(definition.graph).triggers)
377
465
  ? object(definition.graph).triggers
@@ -402,6 +490,11 @@ function validateDeviceProject(input) {
402
490
  'room.authority',
403
491
  'audio.playback',
404
492
  'signals.local',
493
+ 'screen.render',
494
+ 'screen.input',
495
+ 'app.web.local',
496
+ 'app.web.remote',
497
+ 'device.ports',
405
498
  ]);
406
499
  for (const capability of capabilities) {
407
500
  if (!allowedCapabilities.has(capability)) {
@@ -622,6 +715,75 @@ function deskDefinition(id, title) {
622
715
  thumbnail: { policy: 'discreteState', stateKeys: ['height'] },
623
716
  };
624
717
  }
718
+ function televisionDefinition(id, title) {
719
+ return {
720
+ format: 'helix.device',
721
+ formatVersion: 1,
722
+ id,
723
+ version: '1.0.0',
724
+ title,
725
+ model: { kind: 'glb', url: './model.glb', nodeBindings: { screen: 'screen' } },
726
+ apps: {
727
+ player: {
728
+ type: 'youtube',
729
+ entry: 'M7lc1UVf-VE',
730
+ allowedOrigins: [
731
+ 'https://www.youtube.com',
732
+ 'https://www.youtube-nocookie.com',
733
+ ],
734
+ permissions: ['web.content', 'network.fetch', 'audio.media'],
735
+ },
736
+ },
737
+ state: {
738
+ powered: { type: 'boolean', default: true, persist: true },
739
+ video: { type: 'string', default: 'M7lc1UVf-VE', persist: true },
740
+ playback: { type: 'enum', values: ['pause', 'play'], default: 'pause', persist: true },
741
+ volume: { type: 'integer', min: 0, max: 100, default: 55, persist: true },
742
+ },
743
+ interactions: [
744
+ { id: 'power', label: 'Power', verb: 'use' },
745
+ {
746
+ id: 'queueVideo',
747
+ label: 'Queue YouTube video',
748
+ verb: 'use',
749
+ control: { kind: 'text', stateKey: 'video', placeholder: 'YouTube URL or video ID', maxLength: 512, inputMode: 'url' },
750
+ },
751
+ {
752
+ id: 'playback',
753
+ label: 'Playback',
754
+ verb: 'use',
755
+ control: { kind: 'choice', stateKey: 'playback', options: [{ value: 'play', label: 'Play' }, { value: 'pause', label: 'Pause' }] },
756
+ },
757
+ {
758
+ id: 'volume',
759
+ label: 'Volume',
760
+ verb: 'use',
761
+ control: { kind: 'number', stateKey: 'volume', min: 0, max: 100, step: 1, unit: '%' },
762
+ },
763
+ ],
764
+ components: [
765
+ {
766
+ id: 'display', type: 'screen', node: 'screen', app: 'player', widthM: 1.28,
767
+ heightM: 0.72, interactive: true, powerStateKey: 'powered', sourceStateKey: 'video',
768
+ playbackStateKey: 'playback', volumeStateKey: 'volume', suspendDistanceM: 24,
769
+ },
770
+ ],
771
+ ports: [
772
+ { id: 'power', direction: 'bidirectional', kind: 'value', dataType: 'boolean', interface: 'helix.power/1', stateKey: 'powered', autoPair: true, maxLinks: 1 },
773
+ { id: 'volume', direction: 'bidirectional', kind: 'value', dataType: 'number', interface: 'helix.volume/1', stateKey: 'volume', autoPair: true, maxLinks: 4 },
774
+ { id: 'audio', direction: 'output', kind: 'stream', dataType: 'media.audio', interface: 'helix.audio/1', autoPair: true, maxLinks: 8 },
775
+ ],
776
+ interfaces: ['helix.television/1', 'helix.media-player/1'],
777
+ graph: { triggers: [{ on: 'interact', interaction: 'power', do: [{ step: 'toggleState', key: 'powered' }] }] },
778
+ script: null,
779
+ activationPreset: 'room',
780
+ authority: 'serverValidated',
781
+ capabilities: ['model.glb', 'state.typed', 'state.durable', 'room.authority', 'screen.render', 'screen.input', 'app.web.remote', 'audio.playback', 'device.ports'],
782
+ stateVersion: 1,
783
+ compatibility: { hosts: ['home', 'world'], requiredCapabilities: ['model.glb', 'state.typed', 'screen.render', 'screen.input', 'app.web.remote', 'audio.playback', 'device.ports', 'room.authority'] },
784
+ thumbnail: { policy: 'discreteState', stateKeys: ['powered'] },
785
+ };
786
+ }
625
787
  function createDeviceProject(input) {
626
788
  const directory = (0, node_path_1.resolve)(input.directory);
627
789
  const sourceModel = (0, node_path_1.resolve)(input.modelPath);
@@ -636,7 +798,9 @@ function createDeviceProject(input) {
636
798
  }
637
799
  const definition = input.template === 'clock'
638
800
  ? clockDefinition(input.id, input.title)
639
- : deskDefinition(input.id, input.title);
801
+ : input.template === 'television'
802
+ ? televisionDefinition(input.id, input.title)
803
+ : deskDefinition(input.id, input.title);
640
804
  (0, node_fs_1.copyFileSync)(sourceModel, modelPath);
641
805
  (0, node_fs_1.writeFileSync)(definitionPath, `${JSON.stringify(definition, null, 2)}\n`);
642
806
  return { directory, definitionPath, modelPath, nodeNames };