@vived/host 5.2.4 → 5.3.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.
@@ -148,7 +148,6 @@ class SandboxMounterUC extends MounterUC_1.MounterUC {
148
148
  this.error("No App Interface");
149
149
  return Promise.reject();
150
150
  }
151
- this.sandbox.state = AppSandboxEntity_1.SandboxState.LOADING;
152
151
  const appHandler = appInterface.mount(this.hostHandler.handler);
153
152
  this.hostDispatcher.registerAppHandler(appHandler);
154
153
  const app = this.appEntity;
@@ -1 +1 @@
1
- {"version":3,"file":"SandboxMounterUC.js","sourceRoot":"","sources":["../../../../../src/Apps/UCs/Mounters/SandboxMounterUC.ts"],"names":[],"mappings":"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","sourcesContent":["import { AppObject, Version, VIVEDApp_3 } from \"@vived/core\";\nimport {\n AppSandboxEntity,\n SandboxState\n} from \"../../../AppSandbox/Entities/AppSandboxEntity\";\nimport { HostDispatchEntity } from \"../../../Dispatcher/Entities/HostDispatchEntity\";\nimport { HostHandlerEntity } from \"../../../Handler/Entities/HostHandler\";\nimport { AppEntity, AppState } from \"../../Entities/AppEntity\";\nimport { MounterUC } from \"./MounterUC\";\n\n/**\n * Factory function to create a sandbox mounter for apps.\n *\n * The sandbox mounter is designed to mount apps in a sandboxed environment,\n * providing isolation and security for app execution.\n *\n * @param appObject - The app object to attach the mounter to\n * @returns A new SandboxMounterUC instance\n */\nexport function makeSandboxMounter(appObject: AppObject): MounterUC {\n return new SandboxMounterUC(appObject);\n}\n\n/**\n * Implementation of MounterUC for mounting apps in a sandbox environment.\n *\n * The SandboxMounterUC is responsible for safely loading and initializing apps\n * in a sandboxed context, handling app lifecycle events, and managing the\n * communication between the host and app.\n */\nclass SandboxMounterUC extends MounterUC {\n /**\n * Gets the app entity representing the app being mounted\n */\n private get appEntity() {\n return this.getCachedLocalComponent<AppEntity>(AppEntity.type);\n }\n\n /**\n * Gets the host dispatcher entity for sending messages to apps\n */\n private get hostDispatcher() {\n return this.getCachedLocalComponent<HostDispatchEntity>(\n HostDispatchEntity.type\n );\n }\n\n /**\n * Gets the host handler entity for receiving messages from apps\n */\n private get hostHandler() {\n return this.getCachedLocalComponent<HostHandlerEntity>(\n HostHandlerEntity.type\n );\n }\n\n /**\n * Gets the sandbox entity that manages the sandbox state\n */\n private get sandbox() {\n return this.getCachedSingleton<AppSandboxEntity>(AppSandboxEntity.type);\n }\n\n /**\n * Mounts the latest version of the app.\n *\n * @returns A promise that resolves when the app is mounted or rejects if an error occurs\n */\n mountLatestVersion = (): Promise<void> => {\n if (!this.appEntity) {\n this.error(\"Missing Components\");\n return Promise.reject();\n }\n\n const version = this.appEntity.latestVersion;\n if (!version) {\n this.error(\"No Version\");\n return Promise.reject();\n }\n\n return this.mount(version.major, version.minor);\n };\n\n /**\n * Mounts a specific version of the app.\n *\n * @param majorVersion - The major version number\n * @param minorVersion - The minor version number\n * @returns A promise that resolves when the app is mounted or rejects if an error occurs\n */\n mount = (majorVersion: number, minorVersion: number): Promise<void> => {\n if (\n !this.appEntity ||\n !this.hostDispatcher ||\n !this.hostHandler ||\n !this.sandbox\n ) {\n this.error(\"Missing Components\");\n return Promise.reject();\n }\n\n const version = this.getAppVersion(majorVersion, minorVersion);\n if (!version) {\n this.error(\"No Version\");\n return Promise.reject();\n }\n\n const appInterface = this.getAppInterface(version);\n if (!appInterface) {\n this.error(\"No App Interface\");\n return Promise.reject();\n }\n\n this.sandbox.state = SandboxState.LOADING;\n\n const appHandler = appInterface.mount(this.hostHandler.handler);\n this.hostDispatcher.registerAppHandler(appHandler);\n\n const app = this.appEntity;\n const sandbox = this.sandbox;\n\n return new Promise((resolve) => {\n const waitForReady = () => {\n if (app.state === AppState.READY) {\n sandbox.state = SandboxState.MOUNTED;\n app.removeChangeObserver(waitForReady);\n resolve();\n }\n };\n\n app.addChangeObserver(waitForReady);\n waitForReady();\n });\n };\n\n /**\n * Helper method to find a specific version of the app.\n *\n * @param major - Major version number\n * @param minor - Minor version number\n * @returns The Version object or undefined if not found\n */\n private getAppVersion(major: number, minor: number): Version | undefined {\n if (!this.appEntity) {\n return;\n }\n\n let appVersion = Version.GetLatestWithMajorMinor(\n this.appEntity.versions,\n major,\n minor\n );\n\n if (!appVersion) {\n appVersion = Version.GetLatestWithMajor(this.appEntity.versions, major);\n }\n\n if (!appVersion) {\n this.error(\n `Unable to find version ${major}.${minor}.X for App ${this.appEntity.name}`\n );\n }\n\n return appVersion;\n }\n\n /**\n * Unmounts the app from the sandbox.\n */\n unmount = (): void => {\n if (!this.sandbox || !this.hostDispatcher) {\n this.error(\"Missing Components\");\n return;\n }\n\n this.hostDispatcher.clearAppHandler();\n\n this.sandbox.state = SandboxState.UNMOUNTED;\n };\n\n /**\n * Loads a script into the document.\n * This is a placeholder implementation for sandbox mounting.\n *\n * @param scriptURL - URL of the script to load\n * @param appIDWithVersion - Versioned ID of the app\n * @returns A promise that resolves when the script is loaded\n */\n loadScriptIntoDocument(\n scriptURL: string,\n appIDWithVersion: string\n ): Promise<void> {\n // Unused during dev\n return Promise.resolve();\n }\n\n /**\n * Gets the app interface for a specific version.\n *\n * @param version - The version to get the interface for\n * @returns The app interface or undefined if not found\n */\n getAppInterface(version: Version): VIVEDApp_3 | undefined {\n const modifiedVersion = version.baseVersionString.split(\".\").join(\"_\");\n const idWithVersion = `${this.appObject.id}-${modifiedVersion}`;\n const appInterface = (window as any)[idWithVersion] as VIVEDApp_3;\n if (!appInterface) {\n this.appObjects.submitFatal(\n \"LocalMounterUC\",\n \"Unable to find App Interface\"\n );\n return;\n }\n\n return appInterface;\n }\n\n /**\n * Creates a new SandboxMounterUC instance.\n *\n * @param appObject - The app object to attach to\n */\n constructor(appObject: AppObject) {\n super(appObject, MounterUC.type);\n }\n}\n"]}
1
+ {"version":3,"file":"SandboxMounterUC.js","sourceRoot":"","sources":["../../../../../src/Apps/UCs/Mounters/SandboxMounterUC.ts"],"names":[],"mappings":"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","sourcesContent":["import { AppObject, Version, VIVEDApp_3 } from \"@vived/core\";\r\nimport {\r\n AppSandboxEntity,\r\n SandboxState\r\n} from \"../../../AppSandbox/Entities/AppSandboxEntity\";\r\nimport { HostDispatchEntity } from \"../../../Dispatcher/Entities/HostDispatchEntity\";\r\nimport { HostHandlerEntity } from \"../../../Handler/Entities/HostHandler\";\r\nimport { AppEntity, AppState } from \"../../Entities/AppEntity\";\r\nimport { MounterUC } from \"./MounterUC\";\r\n\r\n/**\r\n * Factory function to create a sandbox mounter for apps.\r\n *\r\n * The sandbox mounter is designed to mount apps in a sandboxed environment,\r\n * providing isolation and security for app execution.\r\n *\r\n * @param appObject - The app object to attach the mounter to\r\n * @returns A new SandboxMounterUC instance\r\n */\r\nexport function makeSandboxMounter(appObject: AppObject): MounterUC {\r\n return new SandboxMounterUC(appObject);\r\n}\r\n\r\n/**\r\n * Implementation of MounterUC for mounting apps in a sandbox environment.\r\n *\r\n * The SandboxMounterUC is responsible for safely loading and initializing apps\r\n * in a sandboxed context, handling app lifecycle events, and managing the\r\n * communication between the host and app.\r\n */\r\nclass SandboxMounterUC extends MounterUC {\r\n /**\r\n * Gets the app entity representing the app being mounted\r\n */\r\n private get appEntity() {\r\n return this.getCachedLocalComponent<AppEntity>(AppEntity.type);\r\n }\r\n\r\n /**\r\n * Gets the host dispatcher entity for sending messages to apps\r\n */\r\n private get hostDispatcher() {\r\n return this.getCachedLocalComponent<HostDispatchEntity>(\r\n HostDispatchEntity.type\r\n );\r\n }\r\n\r\n /**\r\n * Gets the host handler entity for receiving messages from apps\r\n */\r\n private get hostHandler() {\r\n return this.getCachedLocalComponent<HostHandlerEntity>(\r\n HostHandlerEntity.type\r\n );\r\n }\r\n\r\n /**\r\n * Gets the sandbox entity that manages the sandbox state\r\n */\r\n private get sandbox() {\r\n return this.getCachedSingleton<AppSandboxEntity>(AppSandboxEntity.type);\r\n }\r\n\r\n /**\r\n * Mounts the latest version of the app.\r\n *\r\n * @returns A promise that resolves when the app is mounted or rejects if an error occurs\r\n */\r\n mountLatestVersion = (): Promise<void> => {\r\n if (!this.appEntity) {\r\n this.error(\"Missing Components\");\r\n return Promise.reject();\r\n }\r\n\r\n const version = this.appEntity.latestVersion;\r\n if (!version) {\r\n this.error(\"No Version\");\r\n return Promise.reject();\r\n }\r\n\r\n return this.mount(version.major, version.minor);\r\n };\r\n\r\n /**\r\n * Mounts a specific version of the app.\r\n *\r\n * @param majorVersion - The major version number\r\n * @param minorVersion - The minor version number\r\n * @returns A promise that resolves when the app is mounted or rejects if an error occurs\r\n */\r\n mount = (majorVersion: number, minorVersion: number): Promise<void> => {\r\n if (\r\n !this.appEntity ||\r\n !this.hostDispatcher ||\r\n !this.hostHandler ||\r\n !this.sandbox\r\n ) {\r\n this.error(\"Missing Components\");\r\n return Promise.reject();\r\n }\r\n\r\n const version = this.getAppVersion(majorVersion, minorVersion);\r\n if (!version) {\r\n this.error(\"No Version\");\r\n return Promise.reject();\r\n }\r\n\r\n const appInterface = this.getAppInterface(version);\r\n if (!appInterface) {\r\n this.error(\"No App Interface\");\r\n return Promise.reject();\r\n }\r\n\r\n const appHandler = appInterface.mount(this.hostHandler.handler);\r\n this.hostDispatcher.registerAppHandler(appHandler);\r\n\r\n const app = this.appEntity;\r\n const sandbox = this.sandbox;\r\n\r\n return new Promise((resolve) => {\r\n const waitForReady = () => {\r\n if (app.state === AppState.READY) {\r\n sandbox.state = SandboxState.MOUNTED;\r\n app.removeChangeObserver(waitForReady);\r\n resolve();\r\n }\r\n };\r\n\r\n app.addChangeObserver(waitForReady);\r\n waitForReady();\r\n });\r\n };\r\n\r\n /**\r\n * Helper method to find a specific version of the app.\r\n *\r\n * @param major - Major version number\r\n * @param minor - Minor version number\r\n * @returns The Version object or undefined if not found\r\n */\r\n private getAppVersion(major: number, minor: number): Version | undefined {\r\n if (!this.appEntity) {\r\n return;\r\n }\r\n\r\n let appVersion = Version.GetLatestWithMajorMinor(\r\n this.appEntity.versions,\r\n major,\r\n minor\r\n );\r\n\r\n if (!appVersion) {\r\n appVersion = Version.GetLatestWithMajor(this.appEntity.versions, major);\r\n }\r\n\r\n if (!appVersion) {\r\n this.error(\r\n `Unable to find version ${major}.${minor}.X for App ${this.appEntity.name}`\r\n );\r\n }\r\n\r\n return appVersion;\r\n }\r\n\r\n /**\r\n * Unmounts the app from the sandbox.\r\n */\r\n unmount = (): void => {\r\n if (!this.sandbox || !this.hostDispatcher) {\r\n this.error(\"Missing Components\");\r\n return;\r\n }\r\n\r\n this.hostDispatcher.clearAppHandler();\r\n\r\n this.sandbox.state = SandboxState.UNMOUNTED;\r\n };\r\n\r\n /**\r\n * Loads a script into the document.\r\n * This is a placeholder implementation for sandbox mounting.\r\n *\r\n * @param scriptURL - URL of the script to load\r\n * @param appIDWithVersion - Versioned ID of the app\r\n * @returns A promise that resolves when the script is loaded\r\n */\r\n loadScriptIntoDocument(\r\n scriptURL: string,\r\n appIDWithVersion: string\r\n ): Promise<void> {\r\n // Unused during dev\r\n return Promise.resolve();\r\n }\r\n\r\n /**\r\n * Gets the app interface for a specific version.\r\n *\r\n * @param version - The version to get the interface for\r\n * @returns The app interface or undefined if not found\r\n */\r\n getAppInterface(version: Version): VIVEDApp_3 | undefined {\r\n const modifiedVersion = version.baseVersionString.split(\".\").join(\"_\");\r\n const idWithVersion = `${this.appObject.id}-${modifiedVersion}`;\r\n const appInterface = (window as any)[idWithVersion] as VIVEDApp_3;\r\n if (!appInterface) {\r\n this.appObjects.submitFatal(\r\n \"LocalMounterUC\",\r\n \"Unable to find App Interface\"\r\n );\r\n return;\r\n }\r\n\r\n return appInterface;\r\n }\r\n\r\n /**\r\n * Creates a new SandboxMounterUC instance.\r\n *\r\n * @param appObject - The app object to attach to\r\n */\r\n constructor(appObject: AppObject) {\r\n super(appObject, MounterUC.type);\r\n }\r\n}\r\n"]}
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GetAssetStreamURLHandler = void 0;
4
+ exports.makeGetAssetStreamURLHandler = makeGetAssetStreamURLHandler;
5
+ const core_1 = require("@vived/core");
6
+ const Assets_1 = require("../../Assets");
7
+ const Entities_1 = require("../Entities");
8
+ class GetAssetStreamURLHandler extends core_1.AppObjectUC {
9
+ constructor() {
10
+ super(...arguments);
11
+ this.requestType = "GET_ASSET_STREAM_URL";
12
+ }
13
+ }
14
+ exports.GetAssetStreamURLHandler = GetAssetStreamURLHandler;
15
+ GetAssetStreamURLHandler.type = "GetAssetStreamURLHandler";
16
+ function makeGetAssetStreamURLHandler(appObject) {
17
+ return new GetAssetStreamURLHandlerImp(appObject);
18
+ }
19
+ class GetAssetStreamURLHandlerImp extends GetAssetStreamURLHandler {
20
+ get getAssetUC() {
21
+ try {
22
+ return this.getCachedSingleton(Assets_1.GetAssetUC.type);
23
+ }
24
+ catch {
25
+ return undefined;
26
+ }
27
+ }
28
+ castPayloadV1(payload) {
29
+ const castPayload = payload;
30
+ if (!castPayload.assetID || !castPayload.callback) {
31
+ throw new Entities_1.UnableToParsePayload(this.requestType, 1, JSON.stringify(payload));
32
+ }
33
+ return castPayload;
34
+ }
35
+ constructor(appObject) {
36
+ super(appObject, GetAssetStreamURLHandler.type);
37
+ this.action = (assetID, callback) => {
38
+ if (!this.getAssetUC) {
39
+ this.error("Unable to find GetAssetUC");
40
+ callback(undefined);
41
+ return;
42
+ }
43
+ this.getAssetUC
44
+ .getAsset(assetID)
45
+ .then((asset) => {
46
+ callback(asset.fileURL ? asset.fileURL : undefined);
47
+ })
48
+ .catch((e) => {
49
+ this.error(e.message);
50
+ callback(undefined);
51
+ });
52
+ };
53
+ this.handleRequest = (version, payload) => {
54
+ if (version === 1) {
55
+ const { assetID, callback } = this.castPayloadV1(payload);
56
+ this.action(assetID, callback);
57
+ }
58
+ else {
59
+ throw new Entities_1.UnsupportedRequestVersion(this.requestType, version);
60
+ }
61
+ };
62
+ const hostHandler = Entities_1.HostHandlerEntity.get(appObject);
63
+ if (!hostHandler) {
64
+ this.error("UC added to an entity that does not have HostHandlerEntity");
65
+ return;
66
+ }
67
+ hostHandler.registerRequestHandler(this);
68
+ }
69
+ }
70
+ //# sourceMappingURL=GetAssetStreamURLHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GetAssetStreamURLHandler.js","sourceRoot":"","sources":["../../../../src/Handler/UCs/GetAssetStreamURLHandler.ts"],"names":[],"mappings":";;;AA0BA,oEAIC;AA9BD,sCAAqD;AACrD,yCAA0C;AAC1C,0CAKqB;AAOrB,MAAsB,wBACpB,SAAQ,kBAAW;IADrB;;QAMW,gBAAW,GAAG,sBAAsB,CAAC;IAIhD,CAAC;;AAVD,4DAUC;AANiB,6BAAI,GAAG,0BAA0B,AAA7B,CAA8B;AAQpD,SAAgB,4BAA4B,CAC1C,SAAoB;IAEpB,OAAO,IAAI,2BAA2B,CAAC,SAAS,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,2BAA4B,SAAQ,wBAAwB;IAChE,IAAY,UAAU;QACpB,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,kBAAkB,CAAa,mBAAU,CAAC,IAAI,CAAC,CAAC;QAC9D,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IA6BO,aAAa,CAAC,OAAgB;QACpC,MAAM,WAAW,GAAG,OAAqB,CAAC;QAC1C,IAAI,CAAC,WAAW,CAAC,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;YAClD,MAAM,IAAI,+BAAoB,CAC5B,IAAI,CAAC,WAAW,EAChB,CAAC,EACD,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CACxB,CAAC;QACJ,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,wBAAwB,CAAC,IAAI,CAAC,CAAC;QAzClD,WAAM,GAA4B,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE;YACtD,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;gBACrB,IAAI,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;gBACxC,QAAQ,CAAC,SAAS,CAAC,CAAC;gBACpB,OAAO;YACT,CAAC;YAED,IAAI,CAAC,UAAU;iBACZ,QAAQ,CAAC,OAAO,CAAC;iBACjB,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;gBACd,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YACtD,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,CAAQ,EAAE,EAAE;gBAClB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;gBACtB,QAAQ,CAAC,SAAS,CAAC,CAAC;YACtB,CAAC,CAAC,CAAC;QACP,CAAC,CAAC;QAEF,kBAAa,GAAG,CAAC,OAAe,EAAE,OAAgB,EAAE,EAAE;YACpD,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;gBAClB,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;gBAC1D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACjC,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,oCAAyB,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YACjE,CAAC;QACH,CAAC,CAAC;QAkBA,MAAM,WAAW,GAAG,4BAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACrD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,IAAI,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;YACzE,OAAO;QACT,CAAC;QAED,WAAW,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;CACF","sourcesContent":["import { AppObject, AppObjectUC } from \"@vived/core\";\r\nimport { GetAssetUC } from \"../../Assets\";\r\nimport {\r\n HostHandlerEntity,\r\n RequestHandler,\r\n UnableToParsePayload,\r\n UnsupportedRequestVersion\r\n} from \"../Entities\";\r\n\r\nexport type GetAssetStreamURLAction = (\r\n assetID: string,\r\n callback: (url: string | undefined) => void\r\n) => void;\r\n\r\nexport abstract class GetAssetStreamURLHandler\r\n extends AppObjectUC\r\n implements RequestHandler\r\n{\r\n static readonly type = \"GetAssetStreamURLHandler\";\r\n\r\n readonly requestType = \"GET_ASSET_STREAM_URL\";\r\n\r\n abstract action: GetAssetStreamURLAction;\r\n abstract handleRequest: (version: number, payload?: unknown) => void;\r\n}\r\n\r\nexport function makeGetAssetStreamURLHandler(\r\n appObject: AppObject\r\n): GetAssetStreamURLHandler {\r\n return new GetAssetStreamURLHandlerImp(appObject);\r\n}\r\n\r\nclass GetAssetStreamURLHandlerImp extends GetAssetStreamURLHandler {\r\n private get getAssetUC() {\r\n try {\r\n return this.getCachedSingleton<GetAssetUC>(GetAssetUC.type);\r\n } catch {\r\n return undefined;\r\n }\r\n }\r\n\r\n action: GetAssetStreamURLAction = (assetID, callback) => {\r\n if (!this.getAssetUC) {\r\n this.error(\"Unable to find GetAssetUC\");\r\n callback(undefined);\r\n return;\r\n }\r\n\r\n this.getAssetUC\r\n .getAsset(assetID)\r\n .then((asset) => {\r\n callback(asset.fileURL ? asset.fileURL : undefined);\r\n })\r\n .catch((e: Error) => {\r\n this.error(e.message);\r\n callback(undefined);\r\n });\r\n };\r\n\r\n handleRequest = (version: number, payload: unknown) => {\r\n if (version === 1) {\r\n const { assetID, callback } = this.castPayloadV1(payload);\r\n this.action(assetID, callback);\r\n } else {\r\n throw new UnsupportedRequestVersion(this.requestType, version);\r\n }\r\n };\r\n\r\n private castPayloadV1(payload: unknown): Payload_V1 {\r\n const castPayload = payload as Payload_V1;\r\n if (!castPayload.assetID || !castPayload.callback) {\r\n throw new UnableToParsePayload(\r\n this.requestType,\r\n 1,\r\n JSON.stringify(payload)\r\n );\r\n }\r\n\r\n return castPayload;\r\n }\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, GetAssetStreamURLHandler.type);\r\n\r\n const hostHandler = HostHandlerEntity.get(appObject);\r\n if (!hostHandler) {\r\n this.error(\"UC added to an entity that does not have HostHandlerEntity\");\r\n return;\r\n }\r\n\r\n hostHandler.registerRequestHandler(this);\r\n }\r\n}\r\n\r\ntype Payload_V1 = {\r\n assetID: string;\r\n callback: (url: string | undefined) => void;\r\n};\r\n"]}
@@ -19,6 +19,7 @@ __exportStar(require("./CloseAssetSystemPlugin"), exports);
19
19
  __exportStar(require("./GetAssetBlobURLHandler"), exports);
20
20
  __exportStar(require("./GetAssetFolderURLHandler"), exports);
21
21
  __exportStar(require("./GetAssetMetaHandler"), exports);
22
+ __exportStar(require("./GetAssetStreamURLHandler"), exports);
22
23
  __exportStar(require("./GetAssetsForOwnerHandler"), exports);
23
24
  __exportStar(require("./GetLinkedAssetsHandler"), exports);
24
25
  __exportStar(require("./GoToNextStateHandler"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Handler/UCs/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,2DAAyC;AACzC,2DAAyC;AACzC,6DAA2C;AAC3C,wDAAsC;AACtC,6DAA2C;AAC3C,2DAAyC;AACzC,yDAAuC;AACvC,6DAA2C;AAC3C,wDAAsC;AACtC,4DAA0C;AAC1C,0DAAwC;AACxC,6DAA2C;AAC3C,4DAA0C;AAC1C,wDAAsC;AACtC,yDAAuC;AACvC,2DAAyC;AACzC,uEAAqD;AACrD,+DAA6C;AAC7C,qDAAmC;AACnC,uDAAqC;AACrC,8DAA4C;AAC5C,2DAAyC;AACzC,uDAAqC;AACrC,uDAAqC;AACrC,sDAAoC;AACpC,+DAA6C;AAC7C,qDAAmC;AACnC,wDAAsC","sourcesContent":["export * from \"./CallbackAssetDTO\";\nexport * from \"./CloseAssetSystemPlugin\";\nexport * from \"./GetAssetBlobURLHandler\";\nexport * from \"./GetAssetFolderURLHandler\";\nexport * from \"./GetAssetMetaHandler\";\nexport * from \"./GetAssetsForOwnerHandler\";\nexport * from \"./GetLinkedAssetsHandler\";\nexport * from \"./GoToNextStateHandler\";\nexport * from \"./GoToPreviousStateHandler\";\nexport * from \"./HasNextStateHandler\";\nexport * from \"./HasPreviousStateHandler\";\nexport * from \"./IsAssetFetchedHandler\";\nexport * from \"./IsZSpaceAvailableHandler\";\nexport * from \"./NewActivityAssetHandler\";\nexport * from \"./OnAppIsReadyHandler\";\nexport * from \"./OnStateChangeHandler\";\nexport * from \"./OnStateCompleteHandler\";\nexport * from \"./RegisterExternalStyleSheetsHandler\";\nexport * from \"./RestoreCurrentStateHandler\";\nexport * from \"./ShowAlertHandler\";\nexport * from \"./ShowConfirmHandler\";\nexport * from \"./ShowMarkDownEditorHandler\";\nexport * from \"./ShowSelectModelHandler\";\nexport * from \"./ShowSpinnerHandler\";\nexport * from \"./StartZSpaceHandler\";\nexport * from \"./StopZSpaceHandler\";\nexport * from \"./SubmitActivityAssetHandler\";\nexport * from \"./SubmitLogHandler\";\nexport * from \"./SubmitResultHandler\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Handler/UCs/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,2DAAyC;AACzC,2DAAyC;AACzC,6DAA2C;AAC3C,wDAAsC;AACtC,6DAA2C;AAC3C,6DAA2C;AAC3C,2DAAyC;AACzC,yDAAuC;AACvC,6DAA2C;AAC3C,wDAAsC;AACtC,4DAA0C;AAC1C,0DAAwC;AACxC,6DAA2C;AAC3C,4DAA0C;AAC1C,wDAAsC;AACtC,yDAAuC;AACvC,2DAAyC;AACzC,uEAAqD;AACrD,+DAA6C;AAC7C,qDAAmC;AACnC,uDAAqC;AACrC,8DAA4C;AAC5C,2DAAyC;AACzC,uDAAqC;AACrC,uDAAqC;AACrC,sDAAoC;AACpC,+DAA6C;AAC7C,qDAAmC;AACnC,wDAAsC","sourcesContent":["export * from \"./CallbackAssetDTO\";\r\nexport * from \"./CloseAssetSystemPlugin\";\r\nexport * from \"./GetAssetBlobURLHandler\";\r\nexport * from \"./GetAssetFolderURLHandler\";\r\nexport * from \"./GetAssetMetaHandler\";\r\nexport * from \"./GetAssetStreamURLHandler\";\r\nexport * from \"./GetAssetsForOwnerHandler\";\r\nexport * from \"./GetLinkedAssetsHandler\";\r\nexport * from \"./GoToNextStateHandler\";\r\nexport * from \"./GoToPreviousStateHandler\";\r\nexport * from \"./HasNextStateHandler\";\r\nexport * from \"./HasPreviousStateHandler\";\r\nexport * from \"./IsAssetFetchedHandler\";\r\nexport * from \"./IsZSpaceAvailableHandler\";\r\nexport * from \"./NewActivityAssetHandler\";\r\nexport * from \"./OnAppIsReadyHandler\";\r\nexport * from \"./OnStateChangeHandler\";\r\nexport * from \"./OnStateCompleteHandler\";\r\nexport * from \"./RegisterExternalStyleSheetsHandler\";\r\nexport * from \"./RestoreCurrentStateHandler\";\r\nexport * from \"./ShowAlertHandler\";\r\nexport * from \"./ShowConfirmHandler\";\r\nexport * from \"./ShowMarkDownEditorHandler\";\r\nexport * from \"./ShowSelectModelHandler\";\r\nexport * from \"./ShowSpinnerHandler\";\r\nexport * from \"./StartZSpaceHandler\";\r\nexport * from \"./StopZSpaceHandler\";\r\nexport * from \"./SubmitActivityAssetHandler\";\r\nexport * from \"./SubmitLogHandler\";\r\nexport * from \"./SubmitResultHandler\";\r\n"]}
@@ -6,6 +6,7 @@ function setupStandardHostHandlers(appObject) {
6
6
  (0, UCs_1.makeGetAssetBlobURLHandler)(appObject);
7
7
  (0, UCs_1.makeGetAssetFolderURLHandler)(appObject);
8
8
  (0, UCs_1.makeGetAssetMetaHandler)(appObject);
9
+ (0, UCs_1.makeGetAssetStreamURLHandler)(appObject);
9
10
  (0, UCs_1.makeGetLinkedAssetsHandler)(appObject);
10
11
  (0, UCs_1.makeGoToNextStateHandler)(appObject);
11
12
  (0, UCs_1.makeGoToPreviousStateHandler)(appObject);
@@ -1 +1 @@
1
- {"version":3,"file":"setupStandardHostHandlers.js","sourceRoot":"","sources":["../../../src/Handler/setupStandardHostHandlers.ts"],"names":[],"mappings":";;AA2BA,8DAwBC;AAlDD,+BAwBe;AAEf,SAAgB,yBAAyB,CAAC,SAAoB;IAC5D,IAAA,gCAA0B,EAAC,SAAS,CAAC,CAAC;IACtC,IAAA,kCAA4B,EAAC,SAAS,CAAC,CAAC;IACxC,IAAA,6BAAuB,EAAC,SAAS,CAAC,CAAC;IACnC,IAAA,gCAA0B,EAAC,SAAS,CAAC,CAAC;IACtC,IAAA,8BAAwB,EAAC,SAAS,CAAC,CAAC;IACpC,IAAA,kCAA4B,EAAC,SAAS,CAAC,CAAC;IACxC,IAAA,6BAAuB,EAAC,SAAS,CAAC,CAAC;IACnC,IAAA,iCAA2B,EAAC,SAAS,CAAC,CAAC;IACvC,IAAA,kCAA4B,EAAC,SAAS,CAAC,CAAC;IACxC,IAAA,6BAAuB,EAAC,SAAS,CAAC,CAAC;IACnC,IAAA,8BAAwB,EAAC,SAAS,CAAC,CAAC;IACpC,IAAA,gCAA0B,EAAC,SAAS,CAAC,CAAC;IACtC,IAAA,4CAAsC,EAAC,SAAS,CAAC,CAAC;IAClD,IAAA,0BAAoB,EAAC,SAAS,CAAC,CAAC;IAChC,IAAA,4BAAsB,EAAC,SAAS,CAAC,CAAC;IAClC,IAAA,mCAA6B,EAAC,SAAS,CAAC,CAAC;IACzC,IAAA,gCAA0B,EAAC,SAAS,CAAC,CAAC;IACtC,IAAA,4BAAsB,EAAC,SAAS,CAAC,CAAC;IAClC,IAAA,4BAAsB,EAAC,SAAS,CAAC,CAAC;IAClC,IAAA,2BAAqB,EAAC,SAAS,CAAC,CAAC;IACjC,IAAA,oCAA8B,EAAC,SAAS,CAAC,CAAC;IAC1C,IAAA,0BAAoB,EAAC,SAAS,CAAC,CAAC;IAChC,IAAA,6BAAuB,EAAC,SAAS,CAAC,CAAC;AACrC,CAAC","sourcesContent":["import { AppObject } from \"@vived/core\";\nimport {\n makeGetAssetBlobURLHandler,\n makeGetAssetFolderURLHandler,\n makeGetAssetMetaHandler,\n makeGetLinkedAssetsHandler,\n makeGoToNextStateHandler,\n makeGoToPreviousStateHandler,\n makeHasNextStateHandler,\n makeHasPreviousStateHandler,\n makeIsZSpaceAvailableHandler,\n makeOnAppIsReadyHandler,\n makeOnStateChangeHandler,\n makeOnStateCompleteHandler,\n makeRegisterExternalStyleSheetsHandler,\n makeShowAlertHandler,\n makeShowConfirmHandler,\n makeShowMarkDownEditorHandler,\n makeShowSelectModelHandler,\n makeShowSpinnerHandler,\n makeStartZSpaceHandler,\n makeStopZSpaceHandler,\n makeSubmitActivityAssetHandler,\n makeSubmitLogHandler,\n makeSubmitResultHandler\n} from \"./UCs\";\n\nexport function setupStandardHostHandlers(appObject: AppObject) {\n makeGetAssetBlobURLHandler(appObject);\n makeGetAssetFolderURLHandler(appObject);\n makeGetAssetMetaHandler(appObject);\n makeGetLinkedAssetsHandler(appObject);\n makeGoToNextStateHandler(appObject);\n makeGoToPreviousStateHandler(appObject);\n makeHasNextStateHandler(appObject);\n makeHasPreviousStateHandler(appObject);\n makeIsZSpaceAvailableHandler(appObject);\n makeOnAppIsReadyHandler(appObject);\n makeOnStateChangeHandler(appObject);\n makeOnStateCompleteHandler(appObject);\n makeRegisterExternalStyleSheetsHandler(appObject);\n makeShowAlertHandler(appObject);\n makeShowConfirmHandler(appObject);\n makeShowMarkDownEditorHandler(appObject);\n makeShowSelectModelHandler(appObject);\n makeShowSpinnerHandler(appObject);\n makeStartZSpaceHandler(appObject);\n makeStopZSpaceHandler(appObject);\n makeSubmitActivityAssetHandler(appObject);\n makeSubmitLogHandler(appObject);\n makeSubmitResultHandler(appObject);\n}\n"]}
1
+ {"version":3,"file":"setupStandardHostHandlers.js","sourceRoot":"","sources":["../../../src/Handler/setupStandardHostHandlers.ts"],"names":[],"mappings":";;AA4BA,8DAyBC;AApDD,+BAyBe;AAEf,SAAgB,yBAAyB,CAAC,SAAoB;IAC5D,IAAA,gCAA0B,EAAC,SAAS,CAAC,CAAC;IACtC,IAAA,kCAA4B,EAAC,SAAS,CAAC,CAAC;IACxC,IAAA,6BAAuB,EAAC,SAAS,CAAC,CAAC;IACnC,IAAA,kCAA4B,EAAC,SAAS,CAAC,CAAC;IACxC,IAAA,gCAA0B,EAAC,SAAS,CAAC,CAAC;IACtC,IAAA,8BAAwB,EAAC,SAAS,CAAC,CAAC;IACpC,IAAA,kCAA4B,EAAC,SAAS,CAAC,CAAC;IACxC,IAAA,6BAAuB,EAAC,SAAS,CAAC,CAAC;IACnC,IAAA,iCAA2B,EAAC,SAAS,CAAC,CAAC;IACvC,IAAA,kCAA4B,EAAC,SAAS,CAAC,CAAC;IACxC,IAAA,6BAAuB,EAAC,SAAS,CAAC,CAAC;IACnC,IAAA,8BAAwB,EAAC,SAAS,CAAC,CAAC;IACpC,IAAA,gCAA0B,EAAC,SAAS,CAAC,CAAC;IACtC,IAAA,4CAAsC,EAAC,SAAS,CAAC,CAAC;IAClD,IAAA,0BAAoB,EAAC,SAAS,CAAC,CAAC;IAChC,IAAA,4BAAsB,EAAC,SAAS,CAAC,CAAC;IAClC,IAAA,mCAA6B,EAAC,SAAS,CAAC,CAAC;IACzC,IAAA,gCAA0B,EAAC,SAAS,CAAC,CAAC;IACtC,IAAA,4BAAsB,EAAC,SAAS,CAAC,CAAC;IAClC,IAAA,4BAAsB,EAAC,SAAS,CAAC,CAAC;IAClC,IAAA,2BAAqB,EAAC,SAAS,CAAC,CAAC;IACjC,IAAA,oCAA8B,EAAC,SAAS,CAAC,CAAC;IAC1C,IAAA,0BAAoB,EAAC,SAAS,CAAC,CAAC;IAChC,IAAA,6BAAuB,EAAC,SAAS,CAAC,CAAC;AACrC,CAAC","sourcesContent":["import { AppObject } from \"@vived/core\";\r\nimport {\r\n makeGetAssetBlobURLHandler,\r\n makeGetAssetFolderURLHandler,\r\n makeGetAssetMetaHandler,\r\n makeGetAssetStreamURLHandler,\r\n makeGetLinkedAssetsHandler,\r\n makeGoToNextStateHandler,\r\n makeGoToPreviousStateHandler,\r\n makeHasNextStateHandler,\r\n makeHasPreviousStateHandler,\r\n makeIsZSpaceAvailableHandler,\r\n makeOnAppIsReadyHandler,\r\n makeOnStateChangeHandler,\r\n makeOnStateCompleteHandler,\r\n makeRegisterExternalStyleSheetsHandler,\r\n makeShowAlertHandler,\r\n makeShowConfirmHandler,\r\n makeShowMarkDownEditorHandler,\r\n makeShowSelectModelHandler,\r\n makeShowSpinnerHandler,\r\n makeStartZSpaceHandler,\r\n makeStopZSpaceHandler,\r\n makeSubmitActivityAssetHandler,\r\n makeSubmitLogHandler,\r\n makeSubmitResultHandler\r\n} from \"./UCs\";\r\n\r\nexport function setupStandardHostHandlers(appObject: AppObject) {\r\n makeGetAssetBlobURLHandler(appObject);\r\n makeGetAssetFolderURLHandler(appObject);\r\n makeGetAssetMetaHandler(appObject);\r\n makeGetAssetStreamURLHandler(appObject);\r\n makeGetLinkedAssetsHandler(appObject);\r\n makeGoToNextStateHandler(appObject);\r\n makeGoToPreviousStateHandler(appObject);\r\n makeHasNextStateHandler(appObject);\r\n makeHasPreviousStateHandler(appObject);\r\n makeIsZSpaceAvailableHandler(appObject);\r\n makeOnAppIsReadyHandler(appObject);\r\n makeOnStateChangeHandler(appObject);\r\n makeOnStateCompleteHandler(appObject);\r\n makeRegisterExternalStyleSheetsHandler(appObject);\r\n makeShowAlertHandler(appObject);\r\n makeShowConfirmHandler(appObject);\r\n makeShowMarkDownEditorHandler(appObject);\r\n makeShowSelectModelHandler(appObject);\r\n makeShowSpinnerHandler(appObject);\r\n makeStartZSpaceHandler(appObject);\r\n makeStopZSpaceHandler(appObject);\r\n makeSubmitActivityAssetHandler(appObject);\r\n makeSubmitLogHandler(appObject);\r\n makeSubmitResultHandler(appObject);\r\n}\r\n"]}
@@ -145,7 +145,6 @@ class SandboxMounterUC extends MounterUC {
145
145
  this.error("No App Interface");
146
146
  return Promise.reject();
147
147
  }
148
- this.sandbox.state = SandboxState.LOADING;
149
148
  const appHandler = appInterface.mount(this.hostHandler.handler);
150
149
  this.hostDispatcher.registerAppHandler(appHandler);
151
150
  const app = this.appEntity;
@@ -1 +1 @@
1
- {"version":3,"file":"SandboxMounterUC.js","sourceRoot":"","sources":["../../../../../src/Apps/UCs/Mounters/SandboxMounterUC.ts"],"names":[],"mappings":"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","sourcesContent":["import { AppObject, Version, VIVEDApp_3 } from \"@vived/core\";\nimport {\n AppSandboxEntity,\n SandboxState\n} from \"../../../AppSandbox/Entities/AppSandboxEntity\";\nimport { HostDispatchEntity } from \"../../../Dispatcher/Entities/HostDispatchEntity\";\nimport { HostHandlerEntity } from \"../../../Handler/Entities/HostHandler\";\nimport { AppEntity, AppState } from \"../../Entities/AppEntity\";\nimport { MounterUC } from \"./MounterUC\";\n\n/**\n * Factory function to create a sandbox mounter for apps.\n *\n * The sandbox mounter is designed to mount apps in a sandboxed environment,\n * providing isolation and security for app execution.\n *\n * @param appObject - The app object to attach the mounter to\n * @returns A new SandboxMounterUC instance\n */\nexport function makeSandboxMounter(appObject: AppObject): MounterUC {\n return new SandboxMounterUC(appObject);\n}\n\n/**\n * Implementation of MounterUC for mounting apps in a sandbox environment.\n *\n * The SandboxMounterUC is responsible for safely loading and initializing apps\n * in a sandboxed context, handling app lifecycle events, and managing the\n * communication between the host and app.\n */\nclass SandboxMounterUC extends MounterUC {\n /**\n * Gets the app entity representing the app being mounted\n */\n private get appEntity() {\n return this.getCachedLocalComponent<AppEntity>(AppEntity.type);\n }\n\n /**\n * Gets the host dispatcher entity for sending messages to apps\n */\n private get hostDispatcher() {\n return this.getCachedLocalComponent<HostDispatchEntity>(\n HostDispatchEntity.type\n );\n }\n\n /**\n * Gets the host handler entity for receiving messages from apps\n */\n private get hostHandler() {\n return this.getCachedLocalComponent<HostHandlerEntity>(\n HostHandlerEntity.type\n );\n }\n\n /**\n * Gets the sandbox entity that manages the sandbox state\n */\n private get sandbox() {\n return this.getCachedSingleton<AppSandboxEntity>(AppSandboxEntity.type);\n }\n\n /**\n * Mounts the latest version of the app.\n *\n * @returns A promise that resolves when the app is mounted or rejects if an error occurs\n */\n mountLatestVersion = (): Promise<void> => {\n if (!this.appEntity) {\n this.error(\"Missing Components\");\n return Promise.reject();\n }\n\n const version = this.appEntity.latestVersion;\n if (!version) {\n this.error(\"No Version\");\n return Promise.reject();\n }\n\n return this.mount(version.major, version.minor);\n };\n\n /**\n * Mounts a specific version of the app.\n *\n * @param majorVersion - The major version number\n * @param minorVersion - The minor version number\n * @returns A promise that resolves when the app is mounted or rejects if an error occurs\n */\n mount = (majorVersion: number, minorVersion: number): Promise<void> => {\n if (\n !this.appEntity ||\n !this.hostDispatcher ||\n !this.hostHandler ||\n !this.sandbox\n ) {\n this.error(\"Missing Components\");\n return Promise.reject();\n }\n\n const version = this.getAppVersion(majorVersion, minorVersion);\n if (!version) {\n this.error(\"No Version\");\n return Promise.reject();\n }\n\n const appInterface = this.getAppInterface(version);\n if (!appInterface) {\n this.error(\"No App Interface\");\n return Promise.reject();\n }\n\n this.sandbox.state = SandboxState.LOADING;\n\n const appHandler = appInterface.mount(this.hostHandler.handler);\n this.hostDispatcher.registerAppHandler(appHandler);\n\n const app = this.appEntity;\n const sandbox = this.sandbox;\n\n return new Promise((resolve) => {\n const waitForReady = () => {\n if (app.state === AppState.READY) {\n sandbox.state = SandboxState.MOUNTED;\n app.removeChangeObserver(waitForReady);\n resolve();\n }\n };\n\n app.addChangeObserver(waitForReady);\n waitForReady();\n });\n };\n\n /**\n * Helper method to find a specific version of the app.\n *\n * @param major - Major version number\n * @param minor - Minor version number\n * @returns The Version object or undefined if not found\n */\n private getAppVersion(major: number, minor: number): Version | undefined {\n if (!this.appEntity) {\n return;\n }\n\n let appVersion = Version.GetLatestWithMajorMinor(\n this.appEntity.versions,\n major,\n minor\n );\n\n if (!appVersion) {\n appVersion = Version.GetLatestWithMajor(this.appEntity.versions, major);\n }\n\n if (!appVersion) {\n this.error(\n `Unable to find version ${major}.${minor}.X for App ${this.appEntity.name}`\n );\n }\n\n return appVersion;\n }\n\n /**\n * Unmounts the app from the sandbox.\n */\n unmount = (): void => {\n if (!this.sandbox || !this.hostDispatcher) {\n this.error(\"Missing Components\");\n return;\n }\n\n this.hostDispatcher.clearAppHandler();\n\n this.sandbox.state = SandboxState.UNMOUNTED;\n };\n\n /**\n * Loads a script into the document.\n * This is a placeholder implementation for sandbox mounting.\n *\n * @param scriptURL - URL of the script to load\n * @param appIDWithVersion - Versioned ID of the app\n * @returns A promise that resolves when the script is loaded\n */\n loadScriptIntoDocument(\n scriptURL: string,\n appIDWithVersion: string\n ): Promise<void> {\n // Unused during dev\n return Promise.resolve();\n }\n\n /**\n * Gets the app interface for a specific version.\n *\n * @param version - The version to get the interface for\n * @returns The app interface or undefined if not found\n */\n getAppInterface(version: Version): VIVEDApp_3 | undefined {\n const modifiedVersion = version.baseVersionString.split(\".\").join(\"_\");\n const idWithVersion = `${this.appObject.id}-${modifiedVersion}`;\n const appInterface = (window as any)[idWithVersion] as VIVEDApp_3;\n if (!appInterface) {\n this.appObjects.submitFatal(\n \"LocalMounterUC\",\n \"Unable to find App Interface\"\n );\n return;\n }\n\n return appInterface;\n }\n\n /**\n * Creates a new SandboxMounterUC instance.\n *\n * @param appObject - The app object to attach to\n */\n constructor(appObject: AppObject) {\n super(appObject, MounterUC.type);\n }\n}\n"]}
1
+ {"version":3,"file":"SandboxMounterUC.js","sourceRoot":"","sources":["../../../../../src/Apps/UCs/Mounters/SandboxMounterUC.ts"],"names":[],"mappings":"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","sourcesContent":["import { AppObject, Version, VIVEDApp_3 } from \"@vived/core\";\r\nimport {\r\n AppSandboxEntity,\r\n SandboxState\r\n} from \"../../../AppSandbox/Entities/AppSandboxEntity\";\r\nimport { HostDispatchEntity } from \"../../../Dispatcher/Entities/HostDispatchEntity\";\r\nimport { HostHandlerEntity } from \"../../../Handler/Entities/HostHandler\";\r\nimport { AppEntity, AppState } from \"../../Entities/AppEntity\";\r\nimport { MounterUC } from \"./MounterUC\";\r\n\r\n/**\r\n * Factory function to create a sandbox mounter for apps.\r\n *\r\n * The sandbox mounter is designed to mount apps in a sandboxed environment,\r\n * providing isolation and security for app execution.\r\n *\r\n * @param appObject - The app object to attach the mounter to\r\n * @returns A new SandboxMounterUC instance\r\n */\r\nexport function makeSandboxMounter(appObject: AppObject): MounterUC {\r\n return new SandboxMounterUC(appObject);\r\n}\r\n\r\n/**\r\n * Implementation of MounterUC for mounting apps in a sandbox environment.\r\n *\r\n * The SandboxMounterUC is responsible for safely loading and initializing apps\r\n * in a sandboxed context, handling app lifecycle events, and managing the\r\n * communication between the host and app.\r\n */\r\nclass SandboxMounterUC extends MounterUC {\r\n /**\r\n * Gets the app entity representing the app being mounted\r\n */\r\n private get appEntity() {\r\n return this.getCachedLocalComponent<AppEntity>(AppEntity.type);\r\n }\r\n\r\n /**\r\n * Gets the host dispatcher entity for sending messages to apps\r\n */\r\n private get hostDispatcher() {\r\n return this.getCachedLocalComponent<HostDispatchEntity>(\r\n HostDispatchEntity.type\r\n );\r\n }\r\n\r\n /**\r\n * Gets the host handler entity for receiving messages from apps\r\n */\r\n private get hostHandler() {\r\n return this.getCachedLocalComponent<HostHandlerEntity>(\r\n HostHandlerEntity.type\r\n );\r\n }\r\n\r\n /**\r\n * Gets the sandbox entity that manages the sandbox state\r\n */\r\n private get sandbox() {\r\n return this.getCachedSingleton<AppSandboxEntity>(AppSandboxEntity.type);\r\n }\r\n\r\n /**\r\n * Mounts the latest version of the app.\r\n *\r\n * @returns A promise that resolves when the app is mounted or rejects if an error occurs\r\n */\r\n mountLatestVersion = (): Promise<void> => {\r\n if (!this.appEntity) {\r\n this.error(\"Missing Components\");\r\n return Promise.reject();\r\n }\r\n\r\n const version = this.appEntity.latestVersion;\r\n if (!version) {\r\n this.error(\"No Version\");\r\n return Promise.reject();\r\n }\r\n\r\n return this.mount(version.major, version.minor);\r\n };\r\n\r\n /**\r\n * Mounts a specific version of the app.\r\n *\r\n * @param majorVersion - The major version number\r\n * @param minorVersion - The minor version number\r\n * @returns A promise that resolves when the app is mounted or rejects if an error occurs\r\n */\r\n mount = (majorVersion: number, minorVersion: number): Promise<void> => {\r\n if (\r\n !this.appEntity ||\r\n !this.hostDispatcher ||\r\n !this.hostHandler ||\r\n !this.sandbox\r\n ) {\r\n this.error(\"Missing Components\");\r\n return Promise.reject();\r\n }\r\n\r\n const version = this.getAppVersion(majorVersion, minorVersion);\r\n if (!version) {\r\n this.error(\"No Version\");\r\n return Promise.reject();\r\n }\r\n\r\n const appInterface = this.getAppInterface(version);\r\n if (!appInterface) {\r\n this.error(\"No App Interface\");\r\n return Promise.reject();\r\n }\r\n\r\n const appHandler = appInterface.mount(this.hostHandler.handler);\r\n this.hostDispatcher.registerAppHandler(appHandler);\r\n\r\n const app = this.appEntity;\r\n const sandbox = this.sandbox;\r\n\r\n return new Promise((resolve) => {\r\n const waitForReady = () => {\r\n if (app.state === AppState.READY) {\r\n sandbox.state = SandboxState.MOUNTED;\r\n app.removeChangeObserver(waitForReady);\r\n resolve();\r\n }\r\n };\r\n\r\n app.addChangeObserver(waitForReady);\r\n waitForReady();\r\n });\r\n };\r\n\r\n /**\r\n * Helper method to find a specific version of the app.\r\n *\r\n * @param major - Major version number\r\n * @param minor - Minor version number\r\n * @returns The Version object or undefined if not found\r\n */\r\n private getAppVersion(major: number, minor: number): Version | undefined {\r\n if (!this.appEntity) {\r\n return;\r\n }\r\n\r\n let appVersion = Version.GetLatestWithMajorMinor(\r\n this.appEntity.versions,\r\n major,\r\n minor\r\n );\r\n\r\n if (!appVersion) {\r\n appVersion = Version.GetLatestWithMajor(this.appEntity.versions, major);\r\n }\r\n\r\n if (!appVersion) {\r\n this.error(\r\n `Unable to find version ${major}.${minor}.X for App ${this.appEntity.name}`\r\n );\r\n }\r\n\r\n return appVersion;\r\n }\r\n\r\n /**\r\n * Unmounts the app from the sandbox.\r\n */\r\n unmount = (): void => {\r\n if (!this.sandbox || !this.hostDispatcher) {\r\n this.error(\"Missing Components\");\r\n return;\r\n }\r\n\r\n this.hostDispatcher.clearAppHandler();\r\n\r\n this.sandbox.state = SandboxState.UNMOUNTED;\r\n };\r\n\r\n /**\r\n * Loads a script into the document.\r\n * This is a placeholder implementation for sandbox mounting.\r\n *\r\n * @param scriptURL - URL of the script to load\r\n * @param appIDWithVersion - Versioned ID of the app\r\n * @returns A promise that resolves when the script is loaded\r\n */\r\n loadScriptIntoDocument(\r\n scriptURL: string,\r\n appIDWithVersion: string\r\n ): Promise<void> {\r\n // Unused during dev\r\n return Promise.resolve();\r\n }\r\n\r\n /**\r\n * Gets the app interface for a specific version.\r\n *\r\n * @param version - The version to get the interface for\r\n * @returns The app interface or undefined if not found\r\n */\r\n getAppInterface(version: Version): VIVEDApp_3 | undefined {\r\n const modifiedVersion = version.baseVersionString.split(\".\").join(\"_\");\r\n const idWithVersion = `${this.appObject.id}-${modifiedVersion}`;\r\n const appInterface = (window as any)[idWithVersion] as VIVEDApp_3;\r\n if (!appInterface) {\r\n this.appObjects.submitFatal(\r\n \"LocalMounterUC\",\r\n \"Unable to find App Interface\"\r\n );\r\n return;\r\n }\r\n\r\n return appInterface;\r\n }\r\n\r\n /**\r\n * Creates a new SandboxMounterUC instance.\r\n *\r\n * @param appObject - The app object to attach to\r\n */\r\n constructor(appObject: AppObject) {\r\n super(appObject, MounterUC.type);\r\n }\r\n}\r\n"]}
@@ -0,0 +1,65 @@
1
+ import { AppObjectUC } from "@vived/core";
2
+ import { GetAssetUC } from "../../Assets";
3
+ import { HostHandlerEntity, UnableToParsePayload, UnsupportedRequestVersion } from "../Entities";
4
+ export class GetAssetStreamURLHandler extends AppObjectUC {
5
+ constructor() {
6
+ super(...arguments);
7
+ this.requestType = "GET_ASSET_STREAM_URL";
8
+ }
9
+ }
10
+ GetAssetStreamURLHandler.type = "GetAssetStreamURLHandler";
11
+ export function makeGetAssetStreamURLHandler(appObject) {
12
+ return new GetAssetStreamURLHandlerImp(appObject);
13
+ }
14
+ class GetAssetStreamURLHandlerImp extends GetAssetStreamURLHandler {
15
+ get getAssetUC() {
16
+ try {
17
+ return this.getCachedSingleton(GetAssetUC.type);
18
+ }
19
+ catch {
20
+ return undefined;
21
+ }
22
+ }
23
+ castPayloadV1(payload) {
24
+ const castPayload = payload;
25
+ if (!castPayload.assetID || !castPayload.callback) {
26
+ throw new UnableToParsePayload(this.requestType, 1, JSON.stringify(payload));
27
+ }
28
+ return castPayload;
29
+ }
30
+ constructor(appObject) {
31
+ super(appObject, GetAssetStreamURLHandler.type);
32
+ this.action = (assetID, callback) => {
33
+ if (!this.getAssetUC) {
34
+ this.error("Unable to find GetAssetUC");
35
+ callback(undefined);
36
+ return;
37
+ }
38
+ this.getAssetUC
39
+ .getAsset(assetID)
40
+ .then((asset) => {
41
+ callback(asset.fileURL ? asset.fileURL : undefined);
42
+ })
43
+ .catch((e) => {
44
+ this.error(e.message);
45
+ callback(undefined);
46
+ });
47
+ };
48
+ this.handleRequest = (version, payload) => {
49
+ if (version === 1) {
50
+ const { assetID, callback } = this.castPayloadV1(payload);
51
+ this.action(assetID, callback);
52
+ }
53
+ else {
54
+ throw new UnsupportedRequestVersion(this.requestType, version);
55
+ }
56
+ };
57
+ const hostHandler = HostHandlerEntity.get(appObject);
58
+ if (!hostHandler) {
59
+ this.error("UC added to an entity that does not have HostHandlerEntity");
60
+ return;
61
+ }
62
+ hostHandler.registerRequestHandler(this);
63
+ }
64
+ }
65
+ //# sourceMappingURL=GetAssetStreamURLHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GetAssetStreamURLHandler.js","sourceRoot":"","sources":["../../../../src/Handler/UCs/GetAssetStreamURLHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,WAAW,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EACL,iBAAiB,EAEjB,oBAAoB,EACpB,yBAAyB,EAC1B,MAAM,aAAa,CAAC;AAOrB,MAAM,OAAgB,wBACpB,SAAQ,WAAW;IADrB;;QAMW,gBAAW,GAAG,sBAAsB,CAAC;IAIhD,CAAC;;AANiB,6BAAI,GAAG,0BAA0B,AAA7B,CAA8B;AAQpD,MAAM,UAAU,4BAA4B,CAC1C,SAAoB;IAEpB,OAAO,IAAI,2BAA2B,CAAC,SAAS,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,2BAA4B,SAAQ,wBAAwB;IAChE,IAAY,UAAU;QACpB,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,kBAAkB,CAAa,UAAU,CAAC,IAAI,CAAC,CAAC;QAC9D,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IA6BO,aAAa,CAAC,OAAgB;QACpC,MAAM,WAAW,GAAG,OAAqB,CAAC;QAC1C,IAAI,CAAC,WAAW,CAAC,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;YAClD,MAAM,IAAI,oBAAoB,CAC5B,IAAI,CAAC,WAAW,EAChB,CAAC,EACD,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CACxB,CAAC;QACJ,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,wBAAwB,CAAC,IAAI,CAAC,CAAC;QAzClD,WAAM,GAA4B,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE;YACtD,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;gBACrB,IAAI,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;gBACxC,QAAQ,CAAC,SAAS,CAAC,CAAC;gBACpB,OAAO;YACT,CAAC;YAED,IAAI,CAAC,UAAU;iBACZ,QAAQ,CAAC,OAAO,CAAC;iBACjB,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;gBACd,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YACtD,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,CAAQ,EAAE,EAAE;gBAClB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;gBACtB,QAAQ,CAAC,SAAS,CAAC,CAAC;YACtB,CAAC,CAAC,CAAC;QACP,CAAC,CAAC;QAEF,kBAAa,GAAG,CAAC,OAAe,EAAE,OAAgB,EAAE,EAAE;YACpD,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;gBAClB,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;gBAC1D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACjC,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,yBAAyB,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YACjE,CAAC;QACH,CAAC,CAAC;QAkBA,MAAM,WAAW,GAAG,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACrD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,IAAI,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;YACzE,OAAO;QACT,CAAC;QAED,WAAW,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;CACF","sourcesContent":["import { AppObject, AppObjectUC } from \"@vived/core\";\r\nimport { GetAssetUC } from \"../../Assets\";\r\nimport {\r\n HostHandlerEntity,\r\n RequestHandler,\r\n UnableToParsePayload,\r\n UnsupportedRequestVersion\r\n} from \"../Entities\";\r\n\r\nexport type GetAssetStreamURLAction = (\r\n assetID: string,\r\n callback: (url: string | undefined) => void\r\n) => void;\r\n\r\nexport abstract class GetAssetStreamURLHandler\r\n extends AppObjectUC\r\n implements RequestHandler\r\n{\r\n static readonly type = \"GetAssetStreamURLHandler\";\r\n\r\n readonly requestType = \"GET_ASSET_STREAM_URL\";\r\n\r\n abstract action: GetAssetStreamURLAction;\r\n abstract handleRequest: (version: number, payload?: unknown) => void;\r\n}\r\n\r\nexport function makeGetAssetStreamURLHandler(\r\n appObject: AppObject\r\n): GetAssetStreamURLHandler {\r\n return new GetAssetStreamURLHandlerImp(appObject);\r\n}\r\n\r\nclass GetAssetStreamURLHandlerImp extends GetAssetStreamURLHandler {\r\n private get getAssetUC() {\r\n try {\r\n return this.getCachedSingleton<GetAssetUC>(GetAssetUC.type);\r\n } catch {\r\n return undefined;\r\n }\r\n }\r\n\r\n action: GetAssetStreamURLAction = (assetID, callback) => {\r\n if (!this.getAssetUC) {\r\n this.error(\"Unable to find GetAssetUC\");\r\n callback(undefined);\r\n return;\r\n }\r\n\r\n this.getAssetUC\r\n .getAsset(assetID)\r\n .then((asset) => {\r\n callback(asset.fileURL ? asset.fileURL : undefined);\r\n })\r\n .catch((e: Error) => {\r\n this.error(e.message);\r\n callback(undefined);\r\n });\r\n };\r\n\r\n handleRequest = (version: number, payload: unknown) => {\r\n if (version === 1) {\r\n const { assetID, callback } = this.castPayloadV1(payload);\r\n this.action(assetID, callback);\r\n } else {\r\n throw new UnsupportedRequestVersion(this.requestType, version);\r\n }\r\n };\r\n\r\n private castPayloadV1(payload: unknown): Payload_V1 {\r\n const castPayload = payload as Payload_V1;\r\n if (!castPayload.assetID || !castPayload.callback) {\r\n throw new UnableToParsePayload(\r\n this.requestType,\r\n 1,\r\n JSON.stringify(payload)\r\n );\r\n }\r\n\r\n return castPayload;\r\n }\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, GetAssetStreamURLHandler.type);\r\n\r\n const hostHandler = HostHandlerEntity.get(appObject);\r\n if (!hostHandler) {\r\n this.error(\"UC added to an entity that does not have HostHandlerEntity\");\r\n return;\r\n }\r\n\r\n hostHandler.registerRequestHandler(this);\r\n }\r\n}\r\n\r\ntype Payload_V1 = {\r\n assetID: string;\r\n callback: (url: string | undefined) => void;\r\n};\r\n"]}
@@ -3,6 +3,7 @@ export * from "./CloseAssetSystemPlugin";
3
3
  export * from "./GetAssetBlobURLHandler";
4
4
  export * from "./GetAssetFolderURLHandler";
5
5
  export * from "./GetAssetMetaHandler";
6
+ export * from "./GetAssetStreamURLHandler";
6
7
  export * from "./GetAssetsForOwnerHandler";
7
8
  export * from "./GetLinkedAssetsHandler";
8
9
  export * from "./GoToNextStateHandler";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Handler/UCs/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,sCAAsC,CAAC;AACrD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC","sourcesContent":["export * from \"./CallbackAssetDTO\";\nexport * from \"./CloseAssetSystemPlugin\";\nexport * from \"./GetAssetBlobURLHandler\";\nexport * from \"./GetAssetFolderURLHandler\";\nexport * from \"./GetAssetMetaHandler\";\nexport * from \"./GetAssetsForOwnerHandler\";\nexport * from \"./GetLinkedAssetsHandler\";\nexport * from \"./GoToNextStateHandler\";\nexport * from \"./GoToPreviousStateHandler\";\nexport * from \"./HasNextStateHandler\";\nexport * from \"./HasPreviousStateHandler\";\nexport * from \"./IsAssetFetchedHandler\";\nexport * from \"./IsZSpaceAvailableHandler\";\nexport * from \"./NewActivityAssetHandler\";\nexport * from \"./OnAppIsReadyHandler\";\nexport * from \"./OnStateChangeHandler\";\nexport * from \"./OnStateCompleteHandler\";\nexport * from \"./RegisterExternalStyleSheetsHandler\";\nexport * from \"./RestoreCurrentStateHandler\";\nexport * from \"./ShowAlertHandler\";\nexport * from \"./ShowConfirmHandler\";\nexport * from \"./ShowMarkDownEditorHandler\";\nexport * from \"./ShowSelectModelHandler\";\nexport * from \"./ShowSpinnerHandler\";\nexport * from \"./StartZSpaceHandler\";\nexport * from \"./StopZSpaceHandler\";\nexport * from \"./SubmitActivityAssetHandler\";\nexport * from \"./SubmitLogHandler\";\nexport * from \"./SubmitResultHandler\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Handler/UCs/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,sCAAsC,CAAC;AACrD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC","sourcesContent":["export * from \"./CallbackAssetDTO\";\r\nexport * from \"./CloseAssetSystemPlugin\";\r\nexport * from \"./GetAssetBlobURLHandler\";\r\nexport * from \"./GetAssetFolderURLHandler\";\r\nexport * from \"./GetAssetMetaHandler\";\r\nexport * from \"./GetAssetStreamURLHandler\";\r\nexport * from \"./GetAssetsForOwnerHandler\";\r\nexport * from \"./GetLinkedAssetsHandler\";\r\nexport * from \"./GoToNextStateHandler\";\r\nexport * from \"./GoToPreviousStateHandler\";\r\nexport * from \"./HasNextStateHandler\";\r\nexport * from \"./HasPreviousStateHandler\";\r\nexport * from \"./IsAssetFetchedHandler\";\r\nexport * from \"./IsZSpaceAvailableHandler\";\r\nexport * from \"./NewActivityAssetHandler\";\r\nexport * from \"./OnAppIsReadyHandler\";\r\nexport * from \"./OnStateChangeHandler\";\r\nexport * from \"./OnStateCompleteHandler\";\r\nexport * from \"./RegisterExternalStyleSheetsHandler\";\r\nexport * from \"./RestoreCurrentStateHandler\";\r\nexport * from \"./ShowAlertHandler\";\r\nexport * from \"./ShowConfirmHandler\";\r\nexport * from \"./ShowMarkDownEditorHandler\";\r\nexport * from \"./ShowSelectModelHandler\";\r\nexport * from \"./ShowSpinnerHandler\";\r\nexport * from \"./StartZSpaceHandler\";\r\nexport * from \"./StopZSpaceHandler\";\r\nexport * from \"./SubmitActivityAssetHandler\";\r\nexport * from \"./SubmitLogHandler\";\r\nexport * from \"./SubmitResultHandler\";\r\n"]}
@@ -1,8 +1,9 @@
1
- import { makeGetAssetBlobURLHandler, makeGetAssetFolderURLHandler, makeGetAssetMetaHandler, makeGetLinkedAssetsHandler, makeGoToNextStateHandler, makeGoToPreviousStateHandler, makeHasNextStateHandler, makeHasPreviousStateHandler, makeIsZSpaceAvailableHandler, makeOnAppIsReadyHandler, makeOnStateChangeHandler, makeOnStateCompleteHandler, makeRegisterExternalStyleSheetsHandler, makeShowAlertHandler, makeShowConfirmHandler, makeShowMarkDownEditorHandler, makeShowSelectModelHandler, makeShowSpinnerHandler, makeStartZSpaceHandler, makeStopZSpaceHandler, makeSubmitActivityAssetHandler, makeSubmitLogHandler, makeSubmitResultHandler } from "./UCs";
1
+ import { makeGetAssetBlobURLHandler, makeGetAssetFolderURLHandler, makeGetAssetMetaHandler, makeGetAssetStreamURLHandler, makeGetLinkedAssetsHandler, makeGoToNextStateHandler, makeGoToPreviousStateHandler, makeHasNextStateHandler, makeHasPreviousStateHandler, makeIsZSpaceAvailableHandler, makeOnAppIsReadyHandler, makeOnStateChangeHandler, makeOnStateCompleteHandler, makeRegisterExternalStyleSheetsHandler, makeShowAlertHandler, makeShowConfirmHandler, makeShowMarkDownEditorHandler, makeShowSelectModelHandler, makeShowSpinnerHandler, makeStartZSpaceHandler, makeStopZSpaceHandler, makeSubmitActivityAssetHandler, makeSubmitLogHandler, makeSubmitResultHandler } from "./UCs";
2
2
  export function setupStandardHostHandlers(appObject) {
3
3
  makeGetAssetBlobURLHandler(appObject);
4
4
  makeGetAssetFolderURLHandler(appObject);
5
5
  makeGetAssetMetaHandler(appObject);
6
+ makeGetAssetStreamURLHandler(appObject);
6
7
  makeGetLinkedAssetsHandler(appObject);
7
8
  makeGoToNextStateHandler(appObject);
8
9
  makeGoToPreviousStateHandler(appObject);
@@ -1 +1 @@
1
- {"version":3,"file":"setupStandardHostHandlers.js","sourceRoot":"","sources":["../../../src/Handler/setupStandardHostHandlers.ts"],"names":[],"mappings":"AACA,OAAO,EACL,0BAA0B,EAC1B,4BAA4B,EAC5B,uBAAuB,EACvB,0BAA0B,EAC1B,wBAAwB,EACxB,4BAA4B,EAC5B,uBAAuB,EACvB,2BAA2B,EAC3B,4BAA4B,EAC5B,uBAAuB,EACvB,wBAAwB,EACxB,0BAA0B,EAC1B,sCAAsC,EACtC,oBAAoB,EACpB,sBAAsB,EACtB,6BAA6B,EAC7B,0BAA0B,EAC1B,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,8BAA8B,EAC9B,oBAAoB,EACpB,uBAAuB,EACxB,MAAM,OAAO,CAAC;AAEf,MAAM,UAAU,yBAAyB,CAAC,SAAoB;IAC5D,0BAA0B,CAAC,SAAS,CAAC,CAAC;IACtC,4BAA4B,CAAC,SAAS,CAAC,CAAC;IACxC,uBAAuB,CAAC,SAAS,CAAC,CAAC;IACnC,0BAA0B,CAAC,SAAS,CAAC,CAAC;IACtC,wBAAwB,CAAC,SAAS,CAAC,CAAC;IACpC,4BAA4B,CAAC,SAAS,CAAC,CAAC;IACxC,uBAAuB,CAAC,SAAS,CAAC,CAAC;IACnC,2BAA2B,CAAC,SAAS,CAAC,CAAC;IACvC,4BAA4B,CAAC,SAAS,CAAC,CAAC;IACxC,uBAAuB,CAAC,SAAS,CAAC,CAAC;IACnC,wBAAwB,CAAC,SAAS,CAAC,CAAC;IACpC,0BAA0B,CAAC,SAAS,CAAC,CAAC;IACtC,sCAAsC,CAAC,SAAS,CAAC,CAAC;IAClD,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAChC,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAClC,6BAA6B,CAAC,SAAS,CAAC,CAAC;IACzC,0BAA0B,CAAC,SAAS,CAAC,CAAC;IACtC,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAClC,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAClC,qBAAqB,CAAC,SAAS,CAAC,CAAC;IACjC,8BAA8B,CAAC,SAAS,CAAC,CAAC;IAC1C,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAChC,uBAAuB,CAAC,SAAS,CAAC,CAAC;AACrC,CAAC","sourcesContent":["import { AppObject } from \"@vived/core\";\nimport {\n makeGetAssetBlobURLHandler,\n makeGetAssetFolderURLHandler,\n makeGetAssetMetaHandler,\n makeGetLinkedAssetsHandler,\n makeGoToNextStateHandler,\n makeGoToPreviousStateHandler,\n makeHasNextStateHandler,\n makeHasPreviousStateHandler,\n makeIsZSpaceAvailableHandler,\n makeOnAppIsReadyHandler,\n makeOnStateChangeHandler,\n makeOnStateCompleteHandler,\n makeRegisterExternalStyleSheetsHandler,\n makeShowAlertHandler,\n makeShowConfirmHandler,\n makeShowMarkDownEditorHandler,\n makeShowSelectModelHandler,\n makeShowSpinnerHandler,\n makeStartZSpaceHandler,\n makeStopZSpaceHandler,\n makeSubmitActivityAssetHandler,\n makeSubmitLogHandler,\n makeSubmitResultHandler\n} from \"./UCs\";\n\nexport function setupStandardHostHandlers(appObject: AppObject) {\n makeGetAssetBlobURLHandler(appObject);\n makeGetAssetFolderURLHandler(appObject);\n makeGetAssetMetaHandler(appObject);\n makeGetLinkedAssetsHandler(appObject);\n makeGoToNextStateHandler(appObject);\n makeGoToPreviousStateHandler(appObject);\n makeHasNextStateHandler(appObject);\n makeHasPreviousStateHandler(appObject);\n makeIsZSpaceAvailableHandler(appObject);\n makeOnAppIsReadyHandler(appObject);\n makeOnStateChangeHandler(appObject);\n makeOnStateCompleteHandler(appObject);\n makeRegisterExternalStyleSheetsHandler(appObject);\n makeShowAlertHandler(appObject);\n makeShowConfirmHandler(appObject);\n makeShowMarkDownEditorHandler(appObject);\n makeShowSelectModelHandler(appObject);\n makeShowSpinnerHandler(appObject);\n makeStartZSpaceHandler(appObject);\n makeStopZSpaceHandler(appObject);\n makeSubmitActivityAssetHandler(appObject);\n makeSubmitLogHandler(appObject);\n makeSubmitResultHandler(appObject);\n}\n"]}
1
+ {"version":3,"file":"setupStandardHostHandlers.js","sourceRoot":"","sources":["../../../src/Handler/setupStandardHostHandlers.ts"],"names":[],"mappings":"AACA,OAAO,EACL,0BAA0B,EAC1B,4BAA4B,EAC5B,uBAAuB,EACvB,4BAA4B,EAC5B,0BAA0B,EAC1B,wBAAwB,EACxB,4BAA4B,EAC5B,uBAAuB,EACvB,2BAA2B,EAC3B,4BAA4B,EAC5B,uBAAuB,EACvB,wBAAwB,EACxB,0BAA0B,EAC1B,sCAAsC,EACtC,oBAAoB,EACpB,sBAAsB,EACtB,6BAA6B,EAC7B,0BAA0B,EAC1B,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,8BAA8B,EAC9B,oBAAoB,EACpB,uBAAuB,EACxB,MAAM,OAAO,CAAC;AAEf,MAAM,UAAU,yBAAyB,CAAC,SAAoB;IAC5D,0BAA0B,CAAC,SAAS,CAAC,CAAC;IACtC,4BAA4B,CAAC,SAAS,CAAC,CAAC;IACxC,uBAAuB,CAAC,SAAS,CAAC,CAAC;IACnC,4BAA4B,CAAC,SAAS,CAAC,CAAC;IACxC,0BAA0B,CAAC,SAAS,CAAC,CAAC;IACtC,wBAAwB,CAAC,SAAS,CAAC,CAAC;IACpC,4BAA4B,CAAC,SAAS,CAAC,CAAC;IACxC,uBAAuB,CAAC,SAAS,CAAC,CAAC;IACnC,2BAA2B,CAAC,SAAS,CAAC,CAAC;IACvC,4BAA4B,CAAC,SAAS,CAAC,CAAC;IACxC,uBAAuB,CAAC,SAAS,CAAC,CAAC;IACnC,wBAAwB,CAAC,SAAS,CAAC,CAAC;IACpC,0BAA0B,CAAC,SAAS,CAAC,CAAC;IACtC,sCAAsC,CAAC,SAAS,CAAC,CAAC;IAClD,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAChC,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAClC,6BAA6B,CAAC,SAAS,CAAC,CAAC;IACzC,0BAA0B,CAAC,SAAS,CAAC,CAAC;IACtC,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAClC,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAClC,qBAAqB,CAAC,SAAS,CAAC,CAAC;IACjC,8BAA8B,CAAC,SAAS,CAAC,CAAC;IAC1C,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAChC,uBAAuB,CAAC,SAAS,CAAC,CAAC;AACrC,CAAC","sourcesContent":["import { AppObject } from \"@vived/core\";\r\nimport {\r\n makeGetAssetBlobURLHandler,\r\n makeGetAssetFolderURLHandler,\r\n makeGetAssetMetaHandler,\r\n makeGetAssetStreamURLHandler,\r\n makeGetLinkedAssetsHandler,\r\n makeGoToNextStateHandler,\r\n makeGoToPreviousStateHandler,\r\n makeHasNextStateHandler,\r\n makeHasPreviousStateHandler,\r\n makeIsZSpaceAvailableHandler,\r\n makeOnAppIsReadyHandler,\r\n makeOnStateChangeHandler,\r\n makeOnStateCompleteHandler,\r\n makeRegisterExternalStyleSheetsHandler,\r\n makeShowAlertHandler,\r\n makeShowConfirmHandler,\r\n makeShowMarkDownEditorHandler,\r\n makeShowSelectModelHandler,\r\n makeShowSpinnerHandler,\r\n makeStartZSpaceHandler,\r\n makeStopZSpaceHandler,\r\n makeSubmitActivityAssetHandler,\r\n makeSubmitLogHandler,\r\n makeSubmitResultHandler\r\n} from \"./UCs\";\r\n\r\nexport function setupStandardHostHandlers(appObject: AppObject) {\r\n makeGetAssetBlobURLHandler(appObject);\r\n makeGetAssetFolderURLHandler(appObject);\r\n makeGetAssetMetaHandler(appObject);\r\n makeGetAssetStreamURLHandler(appObject);\r\n makeGetLinkedAssetsHandler(appObject);\r\n makeGoToNextStateHandler(appObject);\r\n makeGoToPreviousStateHandler(appObject);\r\n makeHasNextStateHandler(appObject);\r\n makeHasPreviousStateHandler(appObject);\r\n makeIsZSpaceAvailableHandler(appObject);\r\n makeOnAppIsReadyHandler(appObject);\r\n makeOnStateChangeHandler(appObject);\r\n makeOnStateCompleteHandler(appObject);\r\n makeRegisterExternalStyleSheetsHandler(appObject);\r\n makeShowAlertHandler(appObject);\r\n makeShowConfirmHandler(appObject);\r\n makeShowMarkDownEditorHandler(appObject);\r\n makeShowSelectModelHandler(appObject);\r\n makeShowSpinnerHandler(appObject);\r\n makeStartZSpaceHandler(appObject);\r\n makeStopZSpaceHandler(appObject);\r\n makeSubmitActivityAssetHandler(appObject);\r\n makeSubmitLogHandler(appObject);\r\n makeSubmitResultHandler(appObject);\r\n}\r\n"]}
@@ -0,0 +1,11 @@
1
+ import { AppObject, AppObjectUC } from "@vived/core";
2
+ import { RequestHandler } from "../Entities";
3
+ export type GetAssetStreamURLAction = (assetID: string, callback: (url: string | undefined) => void) => void;
4
+ export declare abstract class GetAssetStreamURLHandler extends AppObjectUC implements RequestHandler {
5
+ static readonly type = "GetAssetStreamURLHandler";
6
+ readonly requestType = "GET_ASSET_STREAM_URL";
7
+ abstract action: GetAssetStreamURLAction;
8
+ abstract handleRequest: (version: number, payload?: unknown) => void;
9
+ }
10
+ export declare function makeGetAssetStreamURLHandler(appObject: AppObject): GetAssetStreamURLHandler;
11
+ //# sourceMappingURL=GetAssetStreamURLHandler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GetAssetStreamURLHandler.d.ts","sourceRoot":"","sources":["../../../../src/Handler/UCs/GetAssetStreamURLHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAErD,OAAO,EAEL,cAAc,EAGf,MAAM,aAAa,CAAC;AAErB,MAAM,MAAM,uBAAuB,GAAG,CACpC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,KACxC,IAAI,CAAC;AAEV,8BAAsB,wBACpB,SAAQ,WACR,YAAW,cAAc;IAEzB,MAAM,CAAC,QAAQ,CAAC,IAAI,8BAA8B;IAElD,QAAQ,CAAC,WAAW,0BAA0B;IAE9C,QAAQ,CAAC,MAAM,EAAE,uBAAuB,CAAC;IACzC,QAAQ,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CACtE;AAED,wBAAgB,4BAA4B,CAC1C,SAAS,EAAE,SAAS,GACnB,wBAAwB,CAE1B"}
@@ -3,6 +3,7 @@ export * from "./CloseAssetSystemPlugin";
3
3
  export * from "./GetAssetBlobURLHandler";
4
4
  export * from "./GetAssetFolderURLHandler";
5
5
  export * from "./GetAssetMetaHandler";
6
+ export * from "./GetAssetStreamURLHandler";
6
7
  export * from "./GetAssetsForOwnerHandler";
7
8
  export * from "./GetLinkedAssetsHandler";
8
9
  export * from "./GoToNextStateHandler";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/Handler/UCs/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,sCAAsC,CAAC;AACrD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/Handler/UCs/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,sCAAsC,CAAC;AACrD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"setupStandardHostHandlers.d.ts","sourceRoot":"","sources":["../../../src/Handler/setupStandardHostHandlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AA2BxC,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,SAAS,QAwB7D"}
1
+ {"version":3,"file":"setupStandardHostHandlers.d.ts","sourceRoot":"","sources":["../../../src/Handler/setupStandardHostHandlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AA4BxC,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,SAAS,QAyB7D"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vived/host",
3
- "version": "5.2.4",
3
+ "version": "5.3.0",
4
4
  "description": "Public Host package for the VIVED Learning App system",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "module": "./dist/esm/index.js",