@acorex-platform/extension-rtc-livekit-client 0.0.46 → 0.0.49

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.
@@ -68,16 +68,9 @@ var AXELiveKitCommandKeys;
68
68
  //#region ----- LiveKit tenant connection config -----
69
69
  //#endregion
70
70
 
71
- //#region ----- LiveKit extension settings -----
72
- var AXELiveKitSettingKeys;
73
- (function (AXELiveKitSettingKeys) {
74
- AXELiveKitSettingKeys["ConnectionPanel"] = "LiveKitExtension:Setting:ConnectionPanel";
75
- })(AXELiveKitSettingKeys || (AXELiveKitSettingKeys = {}));
76
- //#endregion
77
-
78
71
  /**
79
72
  * Generated bundle index. Do not edit.
80
73
  */
81
74
 
82
- export { AXELiveKitCommandKeys, AXELiveKitQueryKeys, AXELiveKitSettingKeys, AXE_LIVEKIT_ENV_KEYS, LiveKitExtensionManifest, RootConfig };
75
+ export { AXELiveKitCommandKeys, AXELiveKitQueryKeys, AXE_LIVEKIT_ENV_KEYS, LiveKitExtensionManifest, RootConfig };
83
76
  //# sourceMappingURL=acorex-platform-extension-rtc-livekit-client-contracts.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-extension-rtc-livekit-client-contracts.mjs","sources":["../../../../libs/extensions/rtc/livekit/contracts/src/root-config.ts","../../../../libs/extensions/rtc/livekit/contracts/src/manifest.ts","../../../../libs/extensions/rtc/livekit/contracts/src/env.keys.ts","../../../../libs/extensions/rtc/livekit/contracts/src/query.keys.ts","../../../../libs/extensions/rtc/livekit/contracts/src/commands.keys.ts","../../../../libs/extensions/rtc/livekit/contracts/src/connection.types.ts","../../../../libs/extensions/rtc/livekit/contracts/src/settings.keys.ts","../../../../libs/extensions/rtc/livekit/contracts/src/acorex-platform-extension-rtc-livekit-client-contracts.ts"],"sourcesContent":["//#region ----- LiveKit extension config -----\n\nconst config = {\n i18n: 'extensions-livekit',\n};\n\nconst MODULE_NAME = 'LiveKitExtension';\n\nexport const RootConfig = {\n config,\n module: {\n name: MODULE_NAME,\n title: `@${config.i18n}:integration.display-name`,\n icon: 'fa-light fa-video',\n },\n integration: {\n providerId: 'livekit',\n },\n};\n\n//#endregion\n","\nimport { AXPModuleManifest } from '@acorex-platform/framework-shared/core';\nimport { RootConfig } from './root-config';\n\nexport const LiveKitExtensionManifest: AXPModuleManifest = {\n name: RootConfig.module.name,\n version: '1.0.0',\n title: RootConfig.module.title,\n icon: RootConfig.module.icon,\n i18n: RootConfig.config.i18n,\n type: 'integration',\n domain: 'rtc',\n dependencies: ['RtcExtension'],\n};\n","//#region ----- LiveKit platform env keys -----\n\n/** Root `.env` / profile overlay keys for platform LiveKit credentials. */\nexport const AXE_LIVEKIT_ENV_KEYS = {\n Url: 'LIVEKIT_URL',\n ApiKey: 'LIVEKIT_API_KEY',\n ApiSecret: 'LIVEKIT_API_SECRET',\n /** Optional HTTP(S) base; converted to ws/wss when LIVEKIT_URL is unset. */\n HttpUrl: 'LIVEKIT_HTTP_URL',\n /** Documented for deploy stacks with self-signed TLS (browser must trust the cert for wss). */\n TlsInsecure: 'LIVEKIT_TLS_INSECURE',\n /** When true, clients get LIVEKIT_DEV_WS_URL (vite proxy to remote LiveKit). */\n DevWsProxy: 'LIVEKIT_DEV_WS_PROXY',\n /** Browser WebSocket URL via demo dev proxy (default ws://127.0.0.1:4800/livekit-ws). */\n DevWsUrl: 'LIVEKIT_DEV_WS_URL',\n /** Optional TURN host override when LIVEKIT_URL is localhost (default 127.0.0.1). */\n TurnHost: 'LIVEKIT_TURN_HOST',\n /** When true, production stack includes coturn + LiveKit turn_servers (set false for local dev). */\n TurnEnabled: 'LIVEKIT_TURN_ENABLED',\n /** @deprecated Use LIVEKIT_TURN_ENABLED. */\n DockerRtc: 'LIVEKIT_DOCKER_RTC',\n /** Browser-reachable IP for docker LiveKit/coturn ICE (compose reads root `.env`). */\n NodeIp: 'LIVEKIT_NODE_IP',\n} as const;\n\nexport type AXELiveKitEnvKey = (typeof AXE_LIVEKIT_ENV_KEYS)[keyof typeof AXE_LIVEKIT_ENV_KEYS];\n\nexport interface AXELiveKitPlatformConfig {\n url: string;\n apiKey: string;\n apiSecret: string;\n}\n\n//#endregion\n","//#region ----- LiveKit query keys -----\n\nexport const AXELiveKitQueryKeys = {\n IsConfigured: 'LiveKitExtension:Config:IsConfigured',\n} as const;\n\n//#endregion\n","//#region ----- LiveKit command keys -----\n\nexport enum AXELiveKitCommandKeys {\n ConnectionConnect = 'LiveKitExtension:Command:Connection.Connect',\n}\n\n//#endregion\n","//#region ----- LiveKit tenant connection config -----\n\n/** Stored on IntegrationManagement connection `config` for server-side token generation. */\nexport interface AXELiveKitConnectionConfig {\n apiKey?: string;\n apiSecret?: string;\n /** Duplicate of `instanceUrl` when stored in config for masked reconfigure flows. */\n serverUrl?: string;\n}\n\n//#endregion\n","//#region ----- LiveKit extension settings -----\n\nexport enum AXELiveKitSettingKeys {\n ConnectionPanel = 'LiveKitExtension:Setting:ConnectionPanel',\n}\n\n//#endregion\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAAA;AAEA,MAAM,MAAM,GAAG;AACb,IAAA,IAAI,EAAE,oBAAoB;CAC3B;AAED,MAAM,WAAW,GAAG,kBAAkB;AAE/B,MAAM,UAAU,GAAG;IACxB,MAAM;AACN,IAAA,MAAM,EAAE;AACN,QAAA,IAAI,EAAE,WAAW;AACjB,QAAA,KAAK,EAAE,CAAA,CAAA,EAAI,MAAM,CAAC,IAAI,CAAA,yBAAA,CAA2B;AACjD,QAAA,IAAI,EAAE,mBAAmB;AAC1B,KAAA;AACD,IAAA,WAAW,EAAE;AACX,QAAA,UAAU,EAAE,SAAS;AACtB,KAAA;;AAGH;;AChBO,MAAM,wBAAwB,GAAsB;AACzD,IAAA,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI;AAC5B,IAAA,OAAO,EAAE,OAAO;AAChB,IAAA,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK;AAC9B,IAAA,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI;AAC5B,IAAA,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI;AAC5B,IAAA,IAAI,EAAE,aAAa;AACnB,IAAA,MAAM,EAAE,KAAK;IACb,YAAY,EAAE,CAAC,cAAc,CAAC;;;ACZhC;AAEA;AACO,MAAM,oBAAoB,GAAG;AAClC,IAAA,GAAG,EAAE,aAAa;AAClB,IAAA,MAAM,EAAE,iBAAiB;AACzB,IAAA,SAAS,EAAE,oBAAoB;;AAE/B,IAAA,OAAO,EAAE,kBAAkB;;AAE3B,IAAA,WAAW,EAAE,sBAAsB;;AAEnC,IAAA,UAAU,EAAE,sBAAsB;;AAElC,IAAA,QAAQ,EAAE,oBAAoB;;AAE9B,IAAA,QAAQ,EAAE,mBAAmB;;AAE7B,IAAA,WAAW,EAAE,sBAAsB;;AAEnC,IAAA,SAAS,EAAE,oBAAoB;;AAE/B,IAAA,MAAM,EAAE,iBAAiB;;AAW3B;;ACjCA;AAEO,MAAM,mBAAmB,GAAG;AACjC,IAAA,YAAY,EAAE,sCAAsC;;AAGtD;;ACNA;IAEY;AAAZ,CAAA,UAAY,qBAAqB,EAAA;AAC/B,IAAA,qBAAA,CAAA,mBAAA,CAAA,GAAA,6CAAiE;AACnE,CAAC,EAFW,qBAAqB,KAArB,qBAAqB,GAAA,EAAA,CAAA,CAAA;AAIjC;;ACNA;AAUA;;ACVA;IAEY;AAAZ,CAAA,UAAY,qBAAqB,EAAA;AAC/B,IAAA,qBAAA,CAAA,iBAAA,CAAA,GAAA,0CAA4D;AAC9D,CAAC,EAFW,qBAAqB,KAArB,qBAAqB,GAAA,EAAA,CAAA,CAAA;AAIjC;;ACNA;;AAEG;;"}
1
+ {"version":3,"file":"acorex-platform-extension-rtc-livekit-client-contracts.mjs","sources":["../../../../libs/extensions/rtc/livekit/contracts/src/root-config.ts","../../../../libs/extensions/rtc/livekit/contracts/src/manifest.ts","../../../../libs/extensions/rtc/livekit/contracts/src/env.keys.ts","../../../../libs/extensions/rtc/livekit/contracts/src/query.keys.ts","../../../../libs/extensions/rtc/livekit/contracts/src/commands.keys.ts","../../../../libs/extensions/rtc/livekit/contracts/src/connection.types.ts","../../../../libs/extensions/rtc/livekit/contracts/src/acorex-platform-extension-rtc-livekit-client-contracts.ts"],"sourcesContent":["//#region ----- LiveKit extension config -----\n\nconst config = {\n i18n: 'extensions-livekit',\n};\n\nconst MODULE_NAME = 'LiveKitExtension';\n\nexport const RootConfig = {\n config,\n module: {\n name: MODULE_NAME,\n title: `@${config.i18n}:integration.display-name`,\n icon: 'fa-light fa-video',\n },\n integration: {\n providerId: 'livekit',\n },\n};\n\n//#endregion\n","\nimport { AXPModuleManifest } from '@acorex-platform/framework-shared/core';\nimport { RootConfig } from './root-config';\n\nexport const LiveKitExtensionManifest: AXPModuleManifest = {\n name: RootConfig.module.name,\n version: '1.0.0',\n title: RootConfig.module.title,\n icon: RootConfig.module.icon,\n i18n: RootConfig.config.i18n,\n type: 'integration',\n domain: 'rtc',\n dependencies: ['RtcExtension'],\n};\n","//#region ----- LiveKit platform env keys -----\n\n/** Root `.env` / profile overlay keys for platform LiveKit credentials. */\nexport const AXE_LIVEKIT_ENV_KEYS = {\n Url: 'LIVEKIT_URL',\n ApiKey: 'LIVEKIT_API_KEY',\n ApiSecret: 'LIVEKIT_API_SECRET',\n /** Optional HTTP(S) base; converted to ws/wss when LIVEKIT_URL is unset. */\n HttpUrl: 'LIVEKIT_HTTP_URL',\n /** Documented for deploy stacks with self-signed TLS (browser must trust the cert for wss). */\n TlsInsecure: 'LIVEKIT_TLS_INSECURE',\n /** When true, clients get LIVEKIT_DEV_WS_URL (vite proxy to remote LiveKit). */\n DevWsProxy: 'LIVEKIT_DEV_WS_PROXY',\n /** Browser WebSocket URL via demo dev proxy (default ws://127.0.0.1:4800/livekit-ws). */\n DevWsUrl: 'LIVEKIT_DEV_WS_URL',\n /** Optional TURN host override when LIVEKIT_URL is localhost (default 127.0.0.1). */\n TurnHost: 'LIVEKIT_TURN_HOST',\n /** When true, production stack includes coturn + LiveKit turn_servers (set false for local dev). */\n TurnEnabled: 'LIVEKIT_TURN_ENABLED',\n /** @deprecated Use LIVEKIT_TURN_ENABLED. */\n DockerRtc: 'LIVEKIT_DOCKER_RTC',\n /** Browser-reachable IP for docker LiveKit/coturn ICE (compose reads root `.env`). */\n NodeIp: 'LIVEKIT_NODE_IP',\n} as const;\n\nexport type AXELiveKitEnvKey = (typeof AXE_LIVEKIT_ENV_KEYS)[keyof typeof AXE_LIVEKIT_ENV_KEYS];\n\nexport interface AXELiveKitPlatformConfig {\n url: string;\n apiKey: string;\n apiSecret: string;\n}\n\n//#endregion\n","//#region ----- LiveKit query keys -----\n\nexport const AXELiveKitQueryKeys = {\n IsConfigured: 'LiveKitExtension:Config:IsConfigured',\n} as const;\n\n//#endregion\n","//#region ----- LiveKit command keys -----\n\nexport enum AXELiveKitCommandKeys {\n ConnectionConnect = 'LiveKitExtension:Command:Connection.Connect',\n}\n\n//#endregion\n","//#region ----- LiveKit tenant connection config -----\n\n/** Stored on IntegrationManagement connection `config` for server-side token generation. */\nexport interface AXELiveKitConnectionConfig {\n apiKey?: string;\n apiSecret?: string;\n /** Duplicate of `instanceUrl` when stored in config for masked reconfigure flows. */\n serverUrl?: string;\n}\n\n//#endregion\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAAA;AAEA,MAAM,MAAM,GAAG;AACb,IAAA,IAAI,EAAE,oBAAoB;CAC3B;AAED,MAAM,WAAW,GAAG,kBAAkB;AAE/B,MAAM,UAAU,GAAG;IACxB,MAAM;AACN,IAAA,MAAM,EAAE;AACN,QAAA,IAAI,EAAE,WAAW;AACjB,QAAA,KAAK,EAAE,CAAA,CAAA,EAAI,MAAM,CAAC,IAAI,CAAA,yBAAA,CAA2B;AACjD,QAAA,IAAI,EAAE,mBAAmB;AAC1B,KAAA;AACD,IAAA,WAAW,EAAE;AACX,QAAA,UAAU,EAAE,SAAS;AACtB,KAAA;;AAGH;;AChBO,MAAM,wBAAwB,GAAsB;AACzD,IAAA,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI;AAC5B,IAAA,OAAO,EAAE,OAAO;AAChB,IAAA,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK;AAC9B,IAAA,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI;AAC5B,IAAA,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI;AAC5B,IAAA,IAAI,EAAE,aAAa;AACnB,IAAA,MAAM,EAAE,KAAK;IACb,YAAY,EAAE,CAAC,cAAc,CAAC;;;ACZhC;AAEA;AACO,MAAM,oBAAoB,GAAG;AAClC,IAAA,GAAG,EAAE,aAAa;AAClB,IAAA,MAAM,EAAE,iBAAiB;AACzB,IAAA,SAAS,EAAE,oBAAoB;;AAE/B,IAAA,OAAO,EAAE,kBAAkB;;AAE3B,IAAA,WAAW,EAAE,sBAAsB;;AAEnC,IAAA,UAAU,EAAE,sBAAsB;;AAElC,IAAA,QAAQ,EAAE,oBAAoB;;AAE9B,IAAA,QAAQ,EAAE,mBAAmB;;AAE7B,IAAA,WAAW,EAAE,sBAAsB;;AAEnC,IAAA,SAAS,EAAE,oBAAoB;;AAE/B,IAAA,MAAM,EAAE,iBAAiB;;AAW3B;;ACjCA;AAEO,MAAM,mBAAmB,GAAG;AACjC,IAAA,YAAY,EAAE,sCAAsC;;AAGtD;;ACNA;IAEY;AAAZ,CAAA,UAAY,qBAAqB,EAAA;AAC/B,IAAA,qBAAA,CAAA,mBAAA,CAAA,GAAA,6CAAiE;AACnE,CAAC,EAFW,qBAAqB,KAArB,qBAAqB,GAAA,EAAA,CAAA,CAAA;AAIjC;;ACNA;AAUA;;ACVA;;AAEG;;"}
@@ -1,9 +1,9 @@
1
1
  import { AXMIntegrationManagementModule } from '@acorex-platform/module-integration-management-client';
2
- import { AXP_INTEGRATION_RUNTIME_PROVIDER, AXP_SETTING_DEFINITION_PROVIDER, AXP_INTEGRATION_PROVIDER } from '@acorex-platform/framework-client/common';
2
+ import { AXP_INTEGRATION_RUNTIME_PROVIDER, AXP_INTEGRATION_PROVIDER } from '@acorex-platform/framework-client/common';
3
3
  import { provideCommandSetups } from '@acorex-platform/framework-client/runtime';
4
4
  import * as i0 from '@angular/core';
5
5
  import { Injectable, NgModule } from '@angular/core';
6
- import { RootConfig, AXELiveKitCommandKeys, AXELiveKitSettingKeys } from '@acorex-platform/extension-rtc-livekit-client/contracts';
6
+ import { RootConfig, AXELiveKitCommandKeys } from '@acorex-platform/extension-rtc-livekit-client/contracts';
7
7
  import { AXP_LOGO_PROVIDER } from '@acorex-platform/framework-client/core';
8
8
  import { AXPWidgetsList, AXP_INTEGRATION_AUTH_METHOD_TYPE, AXP_INTEGRATION_CONNECTION_SCOPE, AXP_INTEGRATION_CONNECTION_STATUS } from '@acorex-platform/framework-shared/core';
9
9
  import { AXE_RTC_DOMAIN_ID } from '@acorex-platform/extension-rtc-core-client/contracts';
@@ -120,51 +120,11 @@ const provideLiveKitIntegrationRuntimeProvider = {
120
120
  multi: true,
121
121
  };
122
122
 
123
- const INTEGRATIONS_SETTINGS_GROUP = 'integrations';
124
- const I18N = `@${RootConfig.config.i18n}:settings.tenant-integration`;
125
- //#region ----- LiveKit settings provider -----
126
- class AXELiveKitSettingsProvider {
127
- async provide(context) {
128
- if (!context.hasGroup(INTEGRATIONS_SETTINGS_GROUP)) {
129
- return;
130
- }
131
- const integrations = context.group(INTEGRATIONS_SETTINGS_GROUP);
132
- if (!integrations) {
133
- return;
134
- }
135
- integrations
136
- .addSection('livekit', `${I18N}.section-title`, `${I18N}.section-description`)
137
- .addSetting({
138
- key: AXELiveKitSettingKeys.ConnectionPanel,
139
- title: `${I18N}.connection-title`,
140
- scope: 'T',
141
- overridableAt: [],
142
- isInherited: false,
143
- widget: {
144
- type: AXPWidgetsList.Advanced.IntegrationConnectionsPanel,
145
- layout: { stacked: true },
146
- options: {
147
- providerId: RootConfig.integration.providerId,
148
- connectionScope: 'tenant',
149
- },
150
- },
151
- description: `${I18N}.connection-description`,
152
- })
153
- .endSection();
154
- }
155
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXELiveKitSettingsProvider, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
156
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXELiveKitSettingsProvider }); }
157
- }
158
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXELiveKitSettingsProvider, decorators: [{
159
- type: Injectable
160
- }] });
161
-
162
123
  class AXELiveKitExtensionModule {
163
124
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXELiveKitExtensionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
164
125
  static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.8", ngImport: i0, type: AXELiveKitExtensionModule, imports: [AXMIntegrationManagementModule] }); }
165
126
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXELiveKitExtensionModule, providers: [
166
127
  AXE_LIVEKIT_LOGO_PROVIDER,
167
- { provide: AXP_SETTING_DEFINITION_PROVIDER, useClass: AXELiveKitSettingsProvider, multi: true },
168
128
  { provide: AXP_INTEGRATION_PROVIDER, useClass: AXELiveKitIntegrationProvider, multi: true },
169
129
  provideLiveKitIntegrationRuntimeProvider,
170
130
  provideCommandSetups([
@@ -181,7 +141,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
181
141
  imports: [AXMIntegrationManagementModule],
182
142
  providers: [
183
143
  AXE_LIVEKIT_LOGO_PROVIDER,
184
- { provide: AXP_SETTING_DEFINITION_PROVIDER, useClass: AXELiveKitSettingsProvider, multi: true },
185
144
  { provide: AXP_INTEGRATION_PROVIDER, useClass: AXELiveKitIntegrationProvider, multi: true },
186
145
  provideLiveKitIntegrationRuntimeProvider,
187
146
  provideCommandSetups([
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-extension-rtc-livekit-client.mjs","sources":["../../../../libs/extensions/rtc/livekit/client/src/lib/brand/livekit-logo-key.ts","../../../../libs/extensions/rtc/livekit/client/src/lib/brand/livekit-logo.provider.ts","../../../../libs/extensions/rtc/livekit/client/src/lib/integration/livekit.integration.provider.ts","../../../../libs/extensions/rtc/livekit/client/src/lib/integration/livekit.integration-runtime.provider.ts","../../../../libs/extensions/rtc/livekit/client/src/lib/settings/livekit-settings.provider.ts","../../../../libs/extensions/rtc/livekit/client/src/lib/livekit-extension.module.ts","../../../../libs/extensions/rtc/livekit/client/src/acorex-platform-extension-rtc-livekit-client.ts"],"sourcesContent":["//#region ---- LiveKit logo registry key ----\n\nexport const axpLiveKitLogoKey = 'livekit' as const;\n\n/** Mark artwork (64×64); consuming apps copy to `assets/images/brand/integrations/`. */\nexport const AXE_LIVEKIT_MARK_SRC = 'assets/images/brand/integrations/livekit-mark.svg';\n\n/** Source mark dimensions (64×64). */\nexport const AXE_LIVEKIT_MARK_ASPECT = 1;\n\n//#endregion\n","import {\n AXP_LOGO_PROVIDER,\n type AXPLogoProvider,\n type AXPLogoRequest,\n type AXPLogoView,\n} from '@acorex-platform/framework-client/core';\nimport {\n AXE_LIVEKIT_MARK_ASPECT,\n AXE_LIVEKIT_MARK_SRC,\n axpLiveKitLogoKey,\n} from './livekit-logo-key';\n\nconst liveKitLogoProvider: AXPLogoProvider = {\n key: axpLiveKitLogoKey,\n resolve: async (request: AXPLogoRequest): Promise<AXPLogoView> => ({\n kind: 'image',\n src: AXE_LIVEKIT_MARK_SRC,\n height: request.size,\n width: Math.round(request.size * AXE_LIVEKIT_MARK_ASPECT),\n }),\n};\n\nexport const AXE_LIVEKIT_LOGO_PROVIDER = {\n provide: AXP_LOGO_PROVIDER,\n useValue: liveKitLogoProvider,\n multi: true,\n} as const;\n","import {\n AXP_INTEGRATION_AUTH_METHOD_TYPE,\n AXP_INTEGRATION_CONNECTION_SCOPE,\n AXPWidgetsList,\n} from '@acorex-platform/framework-shared/core';\nimport { AXPIntegrationProvider, AXPIntegrationProviderContext } from '@acorex-platform/framework-client/common';\nimport { Injectable } from '@angular/core';\nimport { AXE_RTC_DOMAIN_ID } from '@acorex-platform/extension-rtc-core-client/contracts';\nimport { AXELiveKitCommandKeys, RootConfig } from '@acorex-platform/extension-rtc-livekit-client/contracts';\nimport { axpLiveKitLogoKey } from '../brand/livekit-logo-key';\n\n@Injectable()\nexport class AXELiveKitIntegrationProvider implements AXPIntegrationProvider {\n async provide(context: AXPIntegrationProviderContext): Promise<void> {\n const I18N = `@${RootConfig.config.i18n}:integration`;\n\n context.register({\n id: RootConfig.integration.providerId,\n domainId: AXE_RTC_DOMAIN_ID,\n module: RootConfig.module.name,\n displayName: `${I18N}.display-name`,\n description: `${I18N}.description`,\n icon: RootConfig.module.icon,\n logoKey: axpLiveKitLogoKey,\n connectionScopes: [AXP_INTEGRATION_CONNECTION_SCOPE.Tenant],\n allowMultipleConnections: false,\n defaultConnectionKey: 'default',\n connectCommandKey: AXELiveKitCommandKeys.ConnectionConnect,\n authMethods: [\n {\n type: AXP_INTEGRATION_AUTH_METHOD_TYPE.ApiToken,\n label: `${I18N}.auth.api-token.label`,\n instructions: `${I18N}.auth.api-token.instructions`,\n supportsValidation: true,\n fields: [\n {\n type: AXPWidgetsList.Editors.TextBox,\n path: 'serverUrl',\n options: { placeholder: `${I18N}.auth.api-token.server-url.placeholder` },\n },\n {\n type: AXPWidgetsList.Editors.PasswordBox,\n path: 'apiKey',\n options: { placeholder: `${I18N}.auth.api-token.api-key.placeholder` },\n },\n {\n type: AXPWidgetsList.Editors.PasswordBox,\n path: 'apiSecret',\n options: { placeholder: `${I18N}.auth.api-token.api-secret.placeholder` },\n },\n ],\n },\n ],\n });\n }\n}\n","import {\r\n AXP_INTEGRATION_CONNECTION_STATUS,\r\n type AXPIntegrationProviderRuntimeHooks,\r\n type AXPIntegrationRuntimeContext,\r\n type AXPIntegrationValidationResult,\r\n} from '@acorex-platform/framework-shared/core';\r\nimport {\r\n AXP_INTEGRATION_RUNTIME_PROVIDER,\r\n type AXPIntegrationRuntimeProvider,\r\n} from '@acorex-platform/framework-client/common';\r\nimport { Injectable } from '@angular/core';\r\nimport { defaultTo, trim } from 'lodash-es';\r\nimport { RootConfig, type AXELiveKitConnectionConfig } from '@acorex-platform/extension-rtc-livekit-client/contracts';\r\n\r\n@Injectable()\r\nexport class AXELiveKitIntegrationRuntimeProvider implements AXPIntegrationRuntimeProvider {\r\n readonly providerId = RootConfig.integration.providerId;\r\n\r\n async getHooks(): Promise<AXPIntegrationProviderRuntimeHooks> {\r\n return {\r\n validateConnection: (ctx) => this.validateConnection(ctx),\r\n };\r\n }\r\n\r\n private async validateConnection(ctx: AXPIntegrationRuntimeContext): Promise<AXPIntegrationValidationResult> {\r\n const config = (ctx.config ?? {}) as AXELiveKitConnectionConfig;\r\n const serverUrl = trim(defaultTo(ctx.instanceUrl ?? config.serverUrl, ''));\r\n const apiKey = trim(defaultTo(config.apiKey, ''));\r\n const apiSecret = trim(defaultTo(config.apiSecret, ''));\r\n\r\n if (!serverUrl || !apiKey || !apiSecret) {\r\n return {\r\n valid: false,\r\n status: AXP_INTEGRATION_CONNECTION_STATUS.Invalid,\r\n errorMessage: '@extensions-livekit:integration.validation.incomplete-credentials',\r\n };\r\n }\r\n\r\n return {\r\n valid: true,\r\n status: AXP_INTEGRATION_CONNECTION_STATUS.Connected,\r\n externalAccountName: serverUrl,\r\n };\r\n }\r\n}\r\n\r\nexport const provideLiveKitIntegrationRuntimeProvider = {\r\n provide: AXP_INTEGRATION_RUNTIME_PROVIDER,\r\n useClass: AXELiveKitIntegrationRuntimeProvider,\r\n multi: true,\r\n};\r\n","import {\n AXPSettingDefinitionProvider,\n AXPSettingDefinitionProviderContext,\n} from '@acorex-platform/framework-client/common';\nimport { AXPWidgetsList } from '@acorex-platform/framework-shared/core';\nimport { Injectable } from '@angular/core';\nimport { AXELiveKitSettingKeys, RootConfig } from '@acorex-platform/extension-rtc-livekit-client/contracts';\n\nconst INTEGRATIONS_SETTINGS_GROUP = 'integrations';\nconst I18N = `@${RootConfig.config.i18n}:settings.tenant-integration`;\n\n//#region ----- LiveKit settings provider -----\n\n@Injectable()\nexport class AXELiveKitSettingsProvider implements AXPSettingDefinitionProvider {\n async provide(context: AXPSettingDefinitionProviderContext): Promise<void> {\n if (!context.hasGroup(INTEGRATIONS_SETTINGS_GROUP)) {\n return;\n }\n\n const integrations = context.group(INTEGRATIONS_SETTINGS_GROUP);\n if (!integrations) {\n return;\n }\n\n integrations\n .addSection('livekit', `${I18N}.section-title`, `${I18N}.section-description`)\n .addSetting({\n key: AXELiveKitSettingKeys.ConnectionPanel,\n title: `${I18N}.connection-title`,\n scope: 'T',\n overridableAt: [],\n isInherited: false,\n widget: {\n type: AXPWidgetsList.Advanced.IntegrationConnectionsPanel,\n layout: { stacked: true },\n options: {\n providerId: RootConfig.integration.providerId,\n connectionScope: 'tenant',\n },\n },\n description: `${I18N}.connection-description`,\n })\n .endSection();\n }\n}\n\n//#endregion\n","import { AXMIntegrationManagementModule } from '@acorex-platform/module-integration-management-client';\nimport {\n AXP_INTEGRATION_PROVIDER,\n AXP_SETTING_DEFINITION_PROVIDER,\n} from '@acorex-platform/framework-client/common';\nimport { provideCommandSetups } from '@acorex-platform/framework-client/runtime';\nimport { NgModule } from '@angular/core';\nimport { AXELiveKitCommandKeys } from '@acorex-platform/extension-rtc-livekit-client/contracts';\nimport { AXE_LIVEKIT_LOGO_PROVIDER } from './brand/livekit-logo.provider';\nimport { AXELiveKitIntegrationProvider } from './integration/livekit.integration.provider';\nimport { provideLiveKitIntegrationRuntimeProvider } from './integration/livekit.integration-runtime.provider';\nimport { AXELiveKitSettingsProvider } from './settings/livekit-settings.provider';\n\n@NgModule({\n imports: [AXMIntegrationManagementModule],\n providers: [\n AXE_LIVEKIT_LOGO_PROVIDER,\n { provide: AXP_SETTING_DEFINITION_PROVIDER, useClass: AXELiveKitSettingsProvider, multi: true },\n { provide: AXP_INTEGRATION_PROVIDER, useClass: AXELiveKitIntegrationProvider, multi: true },\n provideLiveKitIntegrationRuntimeProvider,\n provideCommandSetups([\n {\n key: AXELiveKitCommandKeys.ConnectionConnect,\n command: () => import('./features/connect/connect-livekit.command').then((c) => c.ConnectLiveKitCommand),\n },\n ]),\n ],\n})\nexport class AXELiveKitExtensionModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-platform-extension-rtc-livekit-client.mjs","sources":["../../../../libs/extensions/rtc/livekit/client/src/lib/brand/livekit-logo-key.ts","../../../../libs/extensions/rtc/livekit/client/src/lib/brand/livekit-logo.provider.ts","../../../../libs/extensions/rtc/livekit/client/src/lib/integration/livekit.integration.provider.ts","../../../../libs/extensions/rtc/livekit/client/src/lib/integration/livekit.integration-runtime.provider.ts","../../../../libs/extensions/rtc/livekit/client/src/lib/livekit-extension.module.ts","../../../../libs/extensions/rtc/livekit/client/src/acorex-platform-extension-rtc-livekit-client.ts"],"sourcesContent":["//#region ---- LiveKit logo registry key ----\n\nexport const axpLiveKitLogoKey = 'livekit' as const;\n\n/** Mark artwork (64×64); consuming apps copy to `assets/images/brand/integrations/`. */\nexport const AXE_LIVEKIT_MARK_SRC = 'assets/images/brand/integrations/livekit-mark.svg';\n\n/** Source mark dimensions (64×64). */\nexport const AXE_LIVEKIT_MARK_ASPECT = 1;\n\n//#endregion\n","import {\n AXP_LOGO_PROVIDER,\n type AXPLogoProvider,\n type AXPLogoRequest,\n type AXPLogoView,\n} from '@acorex-platform/framework-client/core';\nimport {\n AXE_LIVEKIT_MARK_ASPECT,\n AXE_LIVEKIT_MARK_SRC,\n axpLiveKitLogoKey,\n} from './livekit-logo-key';\n\nconst liveKitLogoProvider: AXPLogoProvider = {\n key: axpLiveKitLogoKey,\n resolve: async (request: AXPLogoRequest): Promise<AXPLogoView> => ({\n kind: 'image',\n src: AXE_LIVEKIT_MARK_SRC,\n height: request.size,\n width: Math.round(request.size * AXE_LIVEKIT_MARK_ASPECT),\n }),\n};\n\nexport const AXE_LIVEKIT_LOGO_PROVIDER = {\n provide: AXP_LOGO_PROVIDER,\n useValue: liveKitLogoProvider,\n multi: true,\n} as const;\n","import {\n AXP_INTEGRATION_AUTH_METHOD_TYPE,\n AXP_INTEGRATION_CONNECTION_SCOPE,\n AXPWidgetsList,\n} from '@acorex-platform/framework-shared/core';\nimport { AXPIntegrationProvider, AXPIntegrationProviderContext } from '@acorex-platform/framework-client/common';\nimport { Injectable } from '@angular/core';\nimport { AXE_RTC_DOMAIN_ID } from '@acorex-platform/extension-rtc-core-client/contracts';\nimport { AXELiveKitCommandKeys, RootConfig } from '@acorex-platform/extension-rtc-livekit-client/contracts';\nimport { axpLiveKitLogoKey } from '../brand/livekit-logo-key';\n\n@Injectable()\nexport class AXELiveKitIntegrationProvider implements AXPIntegrationProvider {\n async provide(context: AXPIntegrationProviderContext): Promise<void> {\n const I18N = `@${RootConfig.config.i18n}:integration`;\n\n context.register({\n id: RootConfig.integration.providerId,\n domainId: AXE_RTC_DOMAIN_ID,\n module: RootConfig.module.name,\n displayName: `${I18N}.display-name`,\n description: `${I18N}.description`,\n icon: RootConfig.module.icon,\n logoKey: axpLiveKitLogoKey,\n connectionScopes: [AXP_INTEGRATION_CONNECTION_SCOPE.Tenant],\n allowMultipleConnections: false,\n defaultConnectionKey: 'default',\n connectCommandKey: AXELiveKitCommandKeys.ConnectionConnect,\n authMethods: [\n {\n type: AXP_INTEGRATION_AUTH_METHOD_TYPE.ApiToken,\n label: `${I18N}.auth.api-token.label`,\n instructions: `${I18N}.auth.api-token.instructions`,\n supportsValidation: true,\n fields: [\n {\n type: AXPWidgetsList.Editors.TextBox,\n path: 'serverUrl',\n options: { placeholder: `${I18N}.auth.api-token.server-url.placeholder` },\n },\n {\n type: AXPWidgetsList.Editors.PasswordBox,\n path: 'apiKey',\n options: { placeholder: `${I18N}.auth.api-token.api-key.placeholder` },\n },\n {\n type: AXPWidgetsList.Editors.PasswordBox,\n path: 'apiSecret',\n options: { placeholder: `${I18N}.auth.api-token.api-secret.placeholder` },\n },\n ],\n },\n ],\n });\n }\n}\n","import {\r\n AXP_INTEGRATION_CONNECTION_STATUS,\r\n type AXPIntegrationProviderRuntimeHooks,\r\n type AXPIntegrationRuntimeContext,\r\n type AXPIntegrationValidationResult,\r\n} from '@acorex-platform/framework-shared/core';\r\nimport {\r\n AXP_INTEGRATION_RUNTIME_PROVIDER,\r\n type AXPIntegrationRuntimeProvider,\r\n} from '@acorex-platform/framework-client/common';\r\nimport { Injectable } from '@angular/core';\r\nimport { defaultTo, trim } from 'lodash-es';\r\nimport { RootConfig, type AXELiveKitConnectionConfig } from '@acorex-platform/extension-rtc-livekit-client/contracts';\r\n\r\n@Injectable()\r\nexport class AXELiveKitIntegrationRuntimeProvider implements AXPIntegrationRuntimeProvider {\r\n readonly providerId = RootConfig.integration.providerId;\r\n\r\n async getHooks(): Promise<AXPIntegrationProviderRuntimeHooks> {\r\n return {\r\n validateConnection: (ctx) => this.validateConnection(ctx),\r\n };\r\n }\r\n\r\n private async validateConnection(ctx: AXPIntegrationRuntimeContext): Promise<AXPIntegrationValidationResult> {\r\n const config = (ctx.config ?? {}) as AXELiveKitConnectionConfig;\r\n const serverUrl = trim(defaultTo(ctx.instanceUrl ?? config.serverUrl, ''));\r\n const apiKey = trim(defaultTo(config.apiKey, ''));\r\n const apiSecret = trim(defaultTo(config.apiSecret, ''));\r\n\r\n if (!serverUrl || !apiKey || !apiSecret) {\r\n return {\r\n valid: false,\r\n status: AXP_INTEGRATION_CONNECTION_STATUS.Invalid,\r\n errorMessage: '@extensions-livekit:integration.validation.incomplete-credentials',\r\n };\r\n }\r\n\r\n return {\r\n valid: true,\r\n status: AXP_INTEGRATION_CONNECTION_STATUS.Connected,\r\n externalAccountName: serverUrl,\r\n };\r\n }\r\n}\r\n\r\nexport const provideLiveKitIntegrationRuntimeProvider = {\r\n provide: AXP_INTEGRATION_RUNTIME_PROVIDER,\r\n useClass: AXELiveKitIntegrationRuntimeProvider,\r\n multi: true,\r\n};\r\n","import { AXMIntegrationManagementModule } from '@acorex-platform/module-integration-management-client';\nimport { AXP_INTEGRATION_PROVIDER } from '@acorex-platform/framework-client/common';\nimport { provideCommandSetups } from '@acorex-platform/framework-client/runtime';\nimport { NgModule } from '@angular/core';\nimport { AXELiveKitCommandKeys } from '@acorex-platform/extension-rtc-livekit-client/contracts';\nimport { AXE_LIVEKIT_LOGO_PROVIDER } from './brand/livekit-logo.provider';\nimport { AXELiveKitIntegrationProvider } from './integration/livekit.integration.provider';\nimport { provideLiveKitIntegrationRuntimeProvider } from './integration/livekit.integration-runtime.provider';\n\n@NgModule({\n imports: [AXMIntegrationManagementModule],\n providers: [\n AXE_LIVEKIT_LOGO_PROVIDER,\n { provide: AXP_INTEGRATION_PROVIDER, useClass: AXELiveKitIntegrationProvider, multi: true },\n provideLiveKitIntegrationRuntimeProvider,\n provideCommandSetups([\n {\n key: AXELiveKitCommandKeys.ConnectionConnect,\n command: () => import('./features/connect/connect-livekit.command').then((c) => c.ConnectLiveKitCommand),\n },\n ]),\n ],\n})\nexport class AXELiveKitExtensionModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@acorex-platform/extension-rtc-livekit-client",
3
- "version": "0.0.46",
3
+ "version": "0.0.49",
4
4
  "sideEffects": false,
5
5
  "peerDependencies": {
6
6
  "@angular/common": "^21.0.0 || ^22.0.0",
@@ -61,9 +61,5 @@ interface AXELiveKitConnectionConfig {
61
61
  serverUrl?: string;
62
62
  }
63
63
 
64
- declare enum AXELiveKitSettingKeys {
65
- ConnectionPanel = "LiveKitExtension:Setting:ConnectionPanel"
66
- }
67
-
68
- export { AXELiveKitCommandKeys, AXELiveKitQueryKeys, AXELiveKitSettingKeys, AXE_LIVEKIT_ENV_KEYS, LiveKitExtensionManifest, RootConfig };
64
+ export { AXELiveKitCommandKeys, AXELiveKitQueryKeys, AXE_LIVEKIT_ENV_KEYS, LiveKitExtensionManifest, RootConfig };
69
65
  export type { AXELiveKitConnectionConfig, AXELiveKitEnvKey, AXELiveKitPlatformConfig };