@3dsource/angular-unreal-module 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (147) hide show
  1. package/README.md +64 -0
  2. package/fesm2022/3dsource-angular-unreal-module.mjs +6226 -0
  3. package/fesm2022/3dsource-angular-unreal-module.mjs.map +1 -0
  4. package/index.d.ts +5 -0
  5. package/lib/components/clickable-overlay/clickable-overlay.component.d.ts +14 -0
  6. package/lib/components/freeze-frame/freeze-frame.component.d.ts +8 -0
  7. package/lib/components/index.d.ts +12 -0
  8. package/lib/components/low-bandwidth-indicator/DataFlowConstants.d.ts +66 -0
  9. package/lib/components/low-bandwidth-indicator/filter-settings/filter-settings.component.d.ts +37 -0
  10. package/lib/components/low-bandwidth-indicator/index.d.ts +2 -0
  11. package/lib/components/low-bandwidth-indicator/low-bandwidth-detector.component.d.ts +38 -0
  12. package/lib/components/low-bandwidth-modal/low-bandwidth-modal.component.d.ts +8 -0
  13. package/lib/components/pdf/components/generator/pdf-base-page.component.d.ts +20 -0
  14. package/lib/components/pdf/components/generator/pdf-generator.component.d.ts +26 -0
  15. package/lib/components/pdf/components/templates/general/header/header-pdf.component.d.ts +8 -0
  16. package/lib/components/pdf/components/templates/general/image-pdf/image-pdf.component.d.ts +7 -0
  17. package/lib/components/pdf/components/templates/general/intro-pdf/intro-pdf.component.d.ts +6 -0
  18. package/lib/components/pdf/components/templates/general/materials-page-pdf/materials-page-pdf.component.d.ts +6 -0
  19. package/lib/components/pdf/components/templates/general/materials-pdf/materials-pdf.component.d.ts +8 -0
  20. package/lib/components/pdf/components/templates/general/page-number/page-number.component.d.ts +8 -0
  21. package/lib/components/pdf/constants/pdf.d.ts +5 -0
  22. package/lib/components/pdf/container/pdf.component.d.ts +13 -0
  23. package/lib/components/pdf/directives/insertion.directive.d.ts +7 -0
  24. package/lib/components/pdf/helpers/generate-pdf-schema.d.ts +2 -0
  25. package/lib/components/pdf/helpers/get-pdf-url.d.ts +1 -0
  26. package/lib/components/pdf/index.d.ts +1 -0
  27. package/lib/components/pdf/interfaces/pdf.interface.d.ts +53 -0
  28. package/lib/components/pdf/store/pdf.component.store.d.ts +44 -0
  29. package/lib/components/screen-locker/afk-restart-screen-locker.component.d.ts +25 -0
  30. package/lib/components/show-case/components/source-slider/source-slider.component.d.ts +42 -0
  31. package/lib/components/show-case/components/source-slider/user-interact.directive.d.ts +33 -0
  32. package/lib/components/show-case/constants/icons/fullscreen-out.d.ts +2 -0
  33. package/lib/components/show-case/constants/icons/fullscreen.d.ts +2 -0
  34. package/lib/components/show-case/constants/icons/pause-circle.d.ts +2 -0
  35. package/lib/components/show-case/constants/icons/pause-icon.d.ts +2 -0
  36. package/lib/components/show-case/constants/icons/play-icon.d.ts +2 -0
  37. package/lib/components/show-case/constants/icons/player-boomerang.d.ts +2 -0
  38. package/lib/components/show-case/constants/icons/player-laps.d.ts +2 -0
  39. package/lib/components/show-case/constants/icons/player-next.d.ts +2 -0
  40. package/lib/components/show-case/constants/icons/player-prev.d.ts +2 -0
  41. package/lib/components/show-case/constants/index.d.ts +7 -0
  42. package/lib/components/show-case/constants/show-case.icons.d.ts +1 -0
  43. package/lib/components/show-case/container/show-case.component.d.ts +98 -0
  44. package/lib/components/show-case/helpers/mapOnInitSequenceData.d.ts +3 -0
  45. package/lib/components/show-case/index.d.ts +1 -0
  46. package/lib/components/show-case/interfaces/showcase-status.d.ts +20 -0
  47. package/lib/components/show-case/store/show-case.component.interface.d.ts +32 -0
  48. package/lib/components/show-case/store/show-case.component.store.d.ts +37 -0
  49. package/lib/components/stat-graph/stat-graph.component.d.ts +28 -0
  50. package/lib/components/unreal-scene/unreal-scene.component.d.ts +50 -0
  51. package/lib/components/unreal-status/unreal-status.component.d.ts +24 -0
  52. package/lib/components/video-locker/video-locker.component.d.ts +14 -0
  53. package/lib/components/video-stats/video-stats.component.d.ts +36 -0
  54. package/lib/components/webrtc-error-modal/webrtc-error-modal.component.d.ts +10 -0
  55. package/lib/constants/ButtonsAndCodes.d.ts +23 -0
  56. package/lib/constants/EControlSchemeType.d.ts +6 -0
  57. package/lib/constants/EMessageType.d.ts +25 -0
  58. package/lib/constants/EToClientMessageType.d.ts +12 -0
  59. package/lib/constants/InputOptions.d.ts +2 -0
  60. package/lib/constants/UnrealStatusMessage.d.ts +4 -0
  61. package/lib/constants/index.d.ts +11 -0
  62. package/lib/constants/initial-config.d.ts +3 -0
  63. package/lib/constants/mix-panel.constant.d.ts +11 -0
  64. package/lib/constants/struct.d.ts +5553 -0
  65. package/lib/constants/timeout.constant.d.ts +6 -0
  66. package/lib/constants/unreal.constant.d.ts +11 -0
  67. package/lib/constants/unreal.providers.d.ts +15 -0
  68. package/lib/helpers/CommandObserver.d.ts +8 -0
  69. package/lib/helpers/DataDecoder.d.ts +1 -0
  70. package/lib/helpers/DataFlowMonitor.d.ts +39 -0
  71. package/lib/helpers/EventWrapper.d.ts +18 -0
  72. package/lib/helpers/FromStreamerHandlers/AnswerHandler.d.ts +3 -0
  73. package/lib/helpers/FromStreamerHandlers/ConfigHandler.d.ts +3 -0
  74. package/lib/helpers/FromStreamerHandlers/IceCandidateHandler.d.ts +4 -0
  75. package/lib/helpers/FromStreamerHandlers/InstanceReadyHandler.d.ts +3 -0
  76. package/lib/helpers/FromStreamerHandlers/InstanceReservedHandler.d.ts +3 -0
  77. package/lib/helpers/FromStreamerHandlers/PingHandler.d.ts +2 -0
  78. package/lib/helpers/FromStreamerHandlers/PlayerCountHandler.d.ts +3 -0
  79. package/lib/helpers/FromStreamerHandlers/SSInfoHandler.d.ts +3 -0
  80. package/lib/helpers/FromStreamerHandlers/index.d.ts +8 -0
  81. package/lib/helpers/GetNextUrl.d.ts +1 -0
  82. package/lib/helpers/KalmanFilter1D.d.ts +20 -0
  83. package/lib/helpers/LatencyTimings.d.ts +13 -0
  84. package/lib/helpers/TouchEmulator.d.ts +24 -0
  85. package/lib/helpers/VideoRecorder.d.ts +8 -0
  86. package/lib/helpers/WsHandlers/OnCloseHandler.d.ts +2 -0
  87. package/lib/helpers/WsHandlers/OnErrorHandler.d.ts +2 -0
  88. package/lib/helpers/WsHandlers/OnMessageHandler.d.ts +2 -0
  89. package/lib/helpers/WsHandlers/OpenHandler.d.ts +2 -0
  90. package/lib/helpers/WsHandlers/index.d.ts +4 -0
  91. package/lib/helpers/clamp-and-keep-max-percents.d.ts +2 -0
  92. package/lib/helpers/deepEqual.d.ts +1 -0
  93. package/lib/helpers/dispatchResize.d.ts +2 -0
  94. package/lib/helpers/error-codes.d.ts +1 -0
  95. package/lib/helpers/float-to-smooth-percents.d.ts +2 -0
  96. package/lib/helpers/get-image-from-video-stream.d.ts +3 -0
  97. package/lib/helpers/index.d.ts +21 -0
  98. package/lib/helpers/mapQpToQuality.d.ts +2 -0
  99. package/lib/helpers/prepare-commands.d.ts +52 -0
  100. package/lib/helpers/remove-exile-commands.d.ts +10 -0
  101. package/lib/helpers/resetAfk.d.ts +1 -0
  102. package/lib/helpers/resize-observer.d.ts +2 -0
  103. package/lib/interfaces/CloseReason.d.ts +5 -0
  104. package/lib/interfaces/CustomCloseCodes.d.ts +6 -0
  105. package/lib/interfaces/LBMStats.d.ts +6 -0
  106. package/lib/interfaces/SignalingData.d.ts +8 -0
  107. package/lib/interfaces/SignalingMessage.d.ts +77 -0
  108. package/lib/interfaces/TelemetryEvent.d.ts +1 -0
  109. package/lib/interfaces/disconnect-reasons.d.ts +9 -0
  110. package/lib/interfaces/errors.interface.d.ts +5 -0
  111. package/lib/interfaces/freeze-frame-message.interface.d.ts +4 -0
  112. package/lib/interfaces/index.d.ts +16 -0
  113. package/lib/interfaces/initial-config.d.ts +8 -0
  114. package/lib/interfaces/input.interface.d.ts +19 -0
  115. package/lib/interfaces/mix-panel-events.d.ts +8 -0
  116. package/lib/interfaces/quality.interface.d.ts +1 -0
  117. package/lib/interfaces/stream-config.interface.d.ts +5 -0
  118. package/lib/interfaces/stream-resolution.interface.d.ts +4 -0
  119. package/lib/interfaces/unreal-internal-signal-events.interface.d.ts +83 -0
  120. package/lib/pipes/index.d.ts +1 -0
  121. package/lib/pipes/safe-html.pipe.d.ts +9 -0
  122. package/lib/services/afk.service.d.ts +38 -0
  123. package/lib/services/aggregator.service.d.ts +53 -0
  124. package/lib/services/command-telemetry.service.d.ts +71 -0
  125. package/lib/services/console-extensions.service.d.ts +10 -0
  126. package/lib/services/dev-mode.service.d.ts +7 -0
  127. package/lib/services/freeze-frame.service.d.ts +16 -0
  128. package/lib/services/image-capture.service.d.ts +30 -0
  129. package/lib/services/index.d.ts +17 -0
  130. package/lib/services/input.service.d.ts +53 -0
  131. package/lib/services/mix-panel.service.d.ts +11 -0
  132. package/lib/services/regions-ping.service.d.ts +34 -0
  133. package/lib/services/signalling.service.d.ts +41 -0
  134. package/lib/services/stream-status-telemetry.service.d.ts +11 -0
  135. package/lib/services/sub.service.d.ts +5 -0
  136. package/lib/services/unreal-communicator.service.d.ts +38 -0
  137. package/lib/services/video-stream-status.service.d.ts +24 -0
  138. package/lib/services/video.service.d.ts +17 -0
  139. package/lib/services/web-rtc-player.service.d.ts +44 -0
  140. package/lib/store/index.d.ts +5 -0
  141. package/lib/store/unreal.actions.d.ts +196 -0
  142. package/lib/store/unreal.effects.d.ts +79 -0
  143. package/lib/store/unreal.feature.d.ts +35 -0
  144. package/lib/store/unreal.reducer.d.ts +56 -0
  145. package/lib/store/unreal.selectors.d.ts +36 -0
  146. package/package.json +36 -0
  147. package/public-api.d.ts +7 -0
package/index.d.ts ADDED
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ /// <amd-module name="@3dsource/angular-unreal-module" />
5
+ export * from './public-api';
@@ -0,0 +1,14 @@
1
+ import { SourceButtonColorScheme, SourceButtonSize } from '@source/ui-sdk/source-button';
2
+ import * as i0 from "@angular/core";
3
+ export declare class ClickableOverlayComponent {
4
+ protected SourceButtonSize: typeof SourceButtonSize;
5
+ protected SourceButtonColorScheme: typeof SourceButtonColorScheme;
6
+ state: import("@angular/core").Signal<{
7
+ message: string;
8
+ className: string;
9
+ isActivityDetected: boolean;
10
+ onOverlayClick: () => void;
11
+ } | null | undefined>;
12
+ static ɵfac: i0.ɵɵFactoryDeclaration<ClickableOverlayComponent, never>;
13
+ static ɵcmp: i0.ɵɵComponentDeclaration<ClickableOverlayComponent, "app-clickable-overlay", never, {}, {}, never, never, true, never>;
14
+ }
@@ -0,0 +1,8 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class FreezeFrameComponent {
3
+ #private;
4
+ freezeFrameProgressMessageFromVideo: import("@angular/core").Signal<number | null | undefined>;
5
+ combinedFreeze: import("@angular/core").Signal<string | null | undefined>;
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<FreezeFrameComponent, never>;
7
+ static ɵcmp: i0.ɵɵComponentDeclaration<FreezeFrameComponent, "app-freeze-frame", never, {}, {}, never, never, true, never>;
8
+ }
@@ -0,0 +1,12 @@
1
+ export * from './clickable-overlay/clickable-overlay.component';
2
+ export * from './freeze-frame/freeze-frame.component';
3
+ export * from './low-bandwidth-indicator';
4
+ export * from './low-bandwidth-modal/low-bandwidth-modal.component';
5
+ export * from './pdf';
6
+ export * from './screen-locker/afk-restart-screen-locker.component';
7
+ export * from './show-case';
8
+ export * from './stat-graph/stat-graph.component';
9
+ export * from './unreal-scene/unreal-scene.component';
10
+ export * from './video-locker/video-locker.component';
11
+ export * from './video-stats/video-stats.component';
12
+ export * from './webrtc-error-modal/webrtc-error-modal.component';
@@ -0,0 +1,66 @@
1
+ import { DataFlowMonitor } from '../../helpers/DataFlowMonitor';
2
+ export interface FilterSettings {
3
+ /**
4
+ * Minimum number of kilobits per second to trigger low bandwidth
5
+ */
6
+ minimumBitrate: number;
7
+ /**
8
+ * Amount of a percentage drop to trigger a yellow warning
9
+ */
10
+ yellowFlag: number;
11
+ /**
12
+ * Amount of a percentage drop to trigger a red warning
13
+ */
14
+ redFlag: number;
15
+ /**
16
+ * Minimum number of frames per second to trigger low bandwidth
17
+ */
18
+ minimumFps: number;
19
+ /**
20
+ * Time to wait before checking if we can switch to low bandwidth
21
+ */
22
+ monitoringDelayTime: number;
23
+ initialBitrateEstimate: number;
24
+ initialErrorCovariance: number;
25
+ processNoise: number;
26
+ measurementNoise: number;
27
+ panelOpen: boolean;
28
+ }
29
+ /**
30
+ * Default LBM Filter Parameters
31
+ */
32
+ export declare const DefaultFilterModel: FilterSettings;
33
+ /**
34
+ * Global LBM Filter Parameters
35
+ */
36
+ export declare const FilterModel: {
37
+ /**
38
+ * Minimum number of kilobits per second to trigger low bandwidth
39
+ */
40
+ minimumBitrate: number;
41
+ /**
42
+ * Amount of a percentage drop to trigger a yellow warning
43
+ */
44
+ yellowFlag: number;
45
+ /**
46
+ * Amount of a percentage drop to trigger a red warning
47
+ */
48
+ redFlag: number;
49
+ /**
50
+ * Minimum number of frames per second to trigger low bandwidth
51
+ */
52
+ minimumFps: number;
53
+ /**
54
+ * Time to wait before checking if we can switch to low bandwidth
55
+ */
56
+ monitoringDelayTime: number;
57
+ initialBitrateEstimate: number;
58
+ initialErrorCovariance: number;
59
+ processNoise: number;
60
+ measurementNoise: number;
61
+ panelOpen: boolean;
62
+ };
63
+ /**
64
+ * Bitrate Monitor Static Class
65
+ */
66
+ export declare const BITRATE_MONITOR: DataFlowMonitor;
@@ -0,0 +1,37 @@
1
+ import { OnInit } from '@angular/core';
2
+ import { DefaultFilterModel } from '../DataFlowConstants';
3
+ import * as i0 from "@angular/core";
4
+ export declare class FilterSettingsComponent implements OnInit {
5
+ private readonly storageKey;
6
+ readonly defaultFilterModel: {
7
+ minimumBitrate: number;
8
+ yellowFlag: number;
9
+ redFlag: number;
10
+ minimumFps: number;
11
+ monitoringDelayTime: number;
12
+ initialBitrateEstimate: number;
13
+ initialErrorCovariance: number;
14
+ processNoise: number;
15
+ measurementNoise: number;
16
+ panelOpen: boolean;
17
+ };
18
+ settings: {
19
+ minimumBitrate: number;
20
+ yellowFlag: number;
21
+ redFlag: number;
22
+ minimumFps: number;
23
+ monitoringDelayTime: number;
24
+ initialBitrateEstimate: number;
25
+ initialErrorCovariance: number;
26
+ processNoise: number;
27
+ measurementNoise: number;
28
+ panelOpen: boolean;
29
+ };
30
+ ngOnInit(): void;
31
+ togglePanel(): void;
32
+ saveSettings(): void;
33
+ dispatch(model: typeof DefaultFilterModel): void;
34
+ reset(): void;
35
+ static ɵfac: i0.ɵɵFactoryDeclaration<FilterSettingsComponent, never>;
36
+ static ɵcmp: i0.ɵɵComponentDeclaration<FilterSettingsComponent, "app-filter-settings", never, {}, {}, never, never, true, never>;
37
+ }
@@ -0,0 +1,2 @@
1
+ export * from './filter-settings/filter-settings.component';
2
+ export * from './low-bandwidth-detector.component';
@@ -0,0 +1,38 @@
1
+ import type { OnInit } from '@angular/core';
2
+ import type { Quality } from '../../interfaces/quality.interface';
3
+ import { DevModeService } from '../..//services/dev-mode.service';
4
+ import * as i0 from "@angular/core";
5
+ export declare class LowBandwidthDetectorComponent implements OnInit {
6
+ private readonly store;
7
+ private readonly dialog;
8
+ private readonly destroyRef;
9
+ private readonly videoStatGenerator;
10
+ readonly devModeService: DevModeService;
11
+ private readonly viewportReady$;
12
+ private readonly isLowBandwidth$;
13
+ private readonly lowBandwidthTrigger$;
14
+ private readonly highBandwidthTrigger$;
15
+ private readonly viewPortDestroyedTrigger$;
16
+ private readonly aggregatedStats$;
17
+ private readonly nativeQuality$;
18
+ private readonly monitoringTrigger$;
19
+ private readonly reTrigger$;
20
+ private readonly canSwitchToLowBand$;
21
+ private readonly videoQuality$;
22
+ private readonly fps$;
23
+ private readonly bitrateDrop$;
24
+ readonly fps: import("@angular/core").Signal<number | undefined>;
25
+ readonly nativeQuality: import("@angular/core").Signal<Quality | undefined>;
26
+ readonly isLowBandwidth: import("@angular/core").Signal<boolean | undefined>;
27
+ readonly aggregatedStats: import("@angular/core").Signal<import("@3dsource/angular-unreal-module").InboundVideoStats | undefined>;
28
+ readonly isReducedQuality: import("@angular/core").WritableSignal<boolean>;
29
+ readonly isIndicatorExpanded: import("@angular/core").WritableSignal<boolean>;
30
+ readonly isIndicatorExpandedTrigger$: import("rxjs").Observable<false>;
31
+ ngOnInit(): void;
32
+ private trySetLowBandwidth;
33
+ toggleIndicator(value: boolean): void;
34
+ hideIndicatorAfterDelay(): void;
35
+ openLBMDialog(): void;
36
+ static ɵfac: i0.ɵɵFactoryDeclaration<LowBandwidthDetectorComponent, never>;
37
+ static ɵcmp: i0.ɵɵComponentDeclaration<LowBandwidthDetectorComponent, "app-low-bandwidth-detector", never, {}, {}, never, never, true, never>;
38
+ }
@@ -0,0 +1,8 @@
1
+ import { DialogRef } from '@angular/cdk/dialog';
2
+ import * as i0 from "@angular/core";
3
+ export declare class LowBandwidthModalComponent {
4
+ dialogRef: DialogRef<any, any>;
5
+ close(value?: boolean): void;
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<LowBandwidthModalComponent, never>;
7
+ static ɵcmp: i0.ɵɵComponentDeclaration<LowBandwidthModalComponent, "app-low-bandwidth-modal", never, {}, {}, never, never, true, never>;
8
+ }
@@ -0,0 +1,20 @@
1
+ import type { ElementRef, OnInit } from '@angular/core';
2
+ import { DestroyRef } from '@angular/core';
3
+ import type { ComposedPage, PdfContent, PdfSelectedItem } from '../../interfaces/pdf.interface';
4
+ import { Subject } from 'rxjs';
5
+ import * as i0 from "@angular/core";
6
+ export declare abstract class PdfBasePageComponent implements OnInit {
7
+ content: ElementRef<HTMLDivElement>;
8
+ pagesGenerated$: Subject<ComposedPage>;
9
+ destroyRef: DestroyRef;
10
+ index: number;
11
+ countPages: number;
12
+ contentKey: string | undefined;
13
+ pdfContent: PdfContent | null;
14
+ selectedItems: PdfSelectedItem[];
15
+ ngOnInit(): void;
16
+ private getLinks;
17
+ pageToCanvas(htmlElement: HTMLElement): import("rxjs").Observable<HTMLCanvasElement | null>;
18
+ static ɵfac: i0.ɵɵFactoryDeclaration<PdfBasePageComponent, never>;
19
+ static ɵcmp: i0.ɵɵComponentDeclaration<PdfBasePageComponent, "ng-component", never, {}, { "pagesGenerated$": "pagesGenerated$"; }, never, never, true, never>;
20
+ }
@@ -0,0 +1,26 @@
1
+ import type { ElementRef, OnInit } from '@angular/core';
2
+ import { DestroyRef } from '@angular/core';
3
+ import { Store } from '@ngrx/store';
4
+ import type { PagesPdf, PdfContent, PdfGenerationProgressInfo, PdfSchemaProps } from '../../interfaces/pdf.interface';
5
+ import { InsertionDirective } from '../../directives/insertion.directive';
6
+ import * as i0 from "@angular/core";
7
+ export declare class PdfGeneratorComponent implements OnInit {
8
+ store: Store<any>;
9
+ pagesReady: PagesPdf;
10
+ schema: import("@angular/core").InputSignal<PdfSchemaProps>;
11
+ debugMode: import("@angular/core").InputSignal<boolean>;
12
+ pdfContent: import("@angular/core").InputSignal<PdfContent>;
13
+ progressChanged: import("@angular/core").OutputEmitterRef<PdfGenerationProgressInfo>;
14
+ generator: import("@angular/core").Signal<ElementRef<HTMLDivElement> | undefined>;
15
+ adHost: InsertionDirective;
16
+ private doc;
17
+ private pagesComplete;
18
+ private componentInstance;
19
+ destroyRef: DestroyRef;
20
+ ngOnInit(): void;
21
+ private generateComponent;
22
+ private generateAllPdfPages;
23
+ private addLink;
24
+ static ɵfac: i0.ɵɵFactoryDeclaration<PdfGeneratorComponent, never>;
25
+ static ɵcmp: i0.ɵɵComponentDeclaration<PdfGeneratorComponent, "app-pdf-generator", never, { "schema": { "alias": "schema"; "required": true; "isSignal": true; }; "debugMode": { "alias": "debugMode"; "required": true; "isSignal": true; }; "pdfContent": { "alias": "pdfContent"; "required": true; "isSignal": true; }; }, { "progressChanged": "progressChanged"; }, never, never, true, never>;
26
+ }
@@ -0,0 +1,8 @@
1
+ import { PdfBasePageComponent } from '../../../generator/pdf-base-page.component';
2
+ import * as i0 from "@angular/core";
3
+ export declare class HeaderPdfComponent extends PdfBasePageComponent {
4
+ name: import("@angular/core").InputSignal<string | undefined>;
5
+ link: import("@angular/core").InputSignal<string | undefined>;
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<HeaderPdfComponent, never>;
7
+ static ɵcmp: i0.ɵɵComponentDeclaration<HeaderPdfComponent, "app-header-pdf", never, { "name": { "alias": "name"; "required": false; "isSignal": true; }; "link": { "alias": "link"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
8
+ }
@@ -0,0 +1,7 @@
1
+ import { PdfBasePageComponent } from '../../../generator/pdf-base-page.component';
2
+ import * as i0 from "@angular/core";
3
+ export declare class ImagePdfComponent extends PdfBasePageComponent {
4
+ image: import("@angular/core").InputSignal<string | undefined>;
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<ImagePdfComponent, never>;
6
+ static ɵcmp: i0.ɵɵComponentDeclaration<ImagePdfComponent, "app-image-pdf", never, { "image": { "alias": "image"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
7
+ }
@@ -0,0 +1,6 @@
1
+ import { PdfBasePageComponent } from '../../../generator/pdf-base-page.component';
2
+ import * as i0 from "@angular/core";
3
+ export declare class IntroPdfComponent extends PdfBasePageComponent {
4
+ static ɵfac: i0.ɵɵFactoryDeclaration<IntroPdfComponent, never>;
5
+ static ɵcmp: i0.ɵɵComponentDeclaration<IntroPdfComponent, "app-intro-pdf", never, {}, {}, never, never, true, never>;
6
+ }
@@ -0,0 +1,6 @@
1
+ import { PdfBasePageComponent } from '../../../generator/pdf-base-page.component';
2
+ import * as i0 from "@angular/core";
3
+ export declare class MaterialsPagePdfComponent extends PdfBasePageComponent {
4
+ static ɵfac: i0.ɵɵFactoryDeclaration<MaterialsPagePdfComponent, never>;
5
+ static ɵcmp: i0.ɵɵComponentDeclaration<MaterialsPagePdfComponent, "app-materials-page-pdf", never, {}, {}, never, never, true, never>;
6
+ }
@@ -0,0 +1,8 @@
1
+ import type { PdfSelectedItem } from '../../../../interfaces/pdf.interface';
2
+ import { PdfBasePageComponent } from '../../../generator/pdf-base-page.component';
3
+ import * as i0 from "@angular/core";
4
+ export declare class MaterialsPdfComponent extends PdfBasePageComponent {
5
+ items: import("@angular/core").InputSignal<PdfSelectedItem[] | null>;
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<MaterialsPdfComponent, never>;
7
+ static ɵcmp: i0.ɵɵComponentDeclaration<MaterialsPdfComponent, "app-materials-pdf", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
8
+ }
@@ -0,0 +1,8 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class PageNumberComponent {
3
+ logo: import("@angular/core").InputSignal<boolean>;
4
+ totalPages: import("@angular/core").InputSignal<number>;
5
+ pageNumber: import("@angular/core").InputSignal<number>;
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<PageNumberComponent, never>;
7
+ static ɵcmp: i0.ɵɵComponentDeclaration<PageNumberComponent, "app-page-number", never, { "logo": { "alias": "logo"; "required": false; "isSignal": true; }; "totalPages": { "alias": "totalPages"; "required": true; "isSignal": true; }; "pageNumber": { "alias": "pageNumber"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
8
+ }
@@ -0,0 +1,5 @@
1
+ export declare const PDF_SCALE = 3;
2
+ export declare const PAGE_SIZE: {
3
+ readonly w: 210;
4
+ readonly h: 297;
5
+ };
@@ -0,0 +1,13 @@
1
+ import type { PdfGenerationProgressInfo } from '../interfaces/pdf.interface';
2
+ import { PdfComponentStore } from '../store/pdf.component.store';
3
+ import * as i0 from "@angular/core";
4
+ export declare class PdfComponent {
5
+ pdfComponentStore: PdfComponentStore;
6
+ isReadyContent: import("@angular/core").Signal<boolean | undefined>;
7
+ debugMode: import("@angular/core").Signal<boolean | undefined>;
8
+ pdfContent: import("@angular/core").Signal<import("../interfaces/pdf.interface").PdfContent | null | undefined>;
9
+ schema: import("@angular/core").Signal<import("../interfaces/pdf.interface").PdfSchemaProps | null | undefined>;
10
+ progressChanged($event: PdfGenerationProgressInfo): void;
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<PdfComponent, never>;
12
+ static ɵcmp: i0.ɵɵComponentDeclaration<PdfComponent, "app-pdf", never, {}, {}, never, never, true, never>;
13
+ }
@@ -0,0 +1,7 @@
1
+ import { ViewContainerRef } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class InsertionDirective {
4
+ viewContainerRef: ViewContainerRef;
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<InsertionDirective, never>;
6
+ static ɵdir: i0.ɵɵDirectiveDeclaration<InsertionDirective, "[appInsertion]", never, {}, {}, never, never, true, never>;
7
+ }
@@ -0,0 +1,2 @@
1
+ import type { PdfContent, PdfSchemaProps } from '../interfaces/pdf.interface';
2
+ export declare const generatePdfSchema: (content: PdfContent) => PdfSchemaProps;
@@ -0,0 +1 @@
1
+ export declare const getPdfUrl: (blob: Blob, pdfName: string) => void;
@@ -0,0 +1 @@
1
+ export * from './container/pdf.component';
@@ -0,0 +1,53 @@
1
+ import type { PdfBasePageComponent } from '../components/generator/pdf-base-page.component';
2
+ import type { jsPDF } from 'jspdf';
3
+ export interface PdfSchemaProps {
4
+ pages: PdfFactoryItems;
5
+ }
6
+ export type PDFContentKeys = keyof PdfContent;
7
+ export interface PdfFactoryItem {
8
+ factory: typeof PdfBasePageComponent;
9
+ data?: PdfSelectedItem[];
10
+ pdfContent?: PdfContent;
11
+ contentKey?: PDFContentKeys;
12
+ }
13
+ export type PdfFactoryItems = PdfFactoryItem[];
14
+ export interface PdfGenerationProgressInfo {
15
+ progress: number;
16
+ total: number;
17
+ loaded: number;
18
+ doc: jsPDF | null;
19
+ }
20
+ export interface ComposedPage extends PagePdf {
21
+ index: number;
22
+ }
23
+ export interface PagePdf {
24
+ capturedPage: HTMLCanvasElement | null;
25
+ links: PdfRectLink[];
26
+ }
27
+ export type PagesPdf = PagePdf[];
28
+ export interface PdfRectLink {
29
+ href: string | null;
30
+ rect: DOMRect;
31
+ }
32
+ export type PdfRectLinks = PdfRectLink[];
33
+ export interface PdfContent {
34
+ template: 'basic-configurator' | 'modular-configurator' | 'other';
35
+ mainImage: string | null;
36
+ link: string | null;
37
+ clientName: string | null;
38
+ selectedItems: PdfSelectedItem[];
39
+ }
40
+ export type SelectedMaterials = {
41
+ slotLabel: string;
42
+ slotName: string;
43
+ texture: string;
44
+ label: string;
45
+ imageBase64: string;
46
+ }[];
47
+ export interface PdfSelectedItem {
48
+ id: string;
49
+ type: string;
50
+ name: string | null;
51
+ label: string | null;
52
+ selectedMaterials: SelectedMaterials;
53
+ }
@@ -0,0 +1,44 @@
1
+ import { ComponentStore } from '@ngrx/component-store';
2
+ import { Store } from '@ngrx/store';
3
+ import type { PdfContent, PdfGenerationProgressInfo } from '../interfaces/pdf.interface';
4
+ import { Actions } from '@ngrx/effects';
5
+ import { ImageCaptureService } from '../../../services/image-capture.service';
6
+ import type { Observable } from 'rxjs';
7
+ import * as i0 from "@angular/core";
8
+ interface PdfBlobData {
9
+ blob: Blob | null;
10
+ }
11
+ interface PdfComponentState extends PdfBlobData {
12
+ content: PdfContent | null;
13
+ saveForLater: boolean;
14
+ debugMode: boolean;
15
+ pdfProgressData: PdfGenerationProgressInfo;
16
+ }
17
+ export declare class PdfComponentStore extends ComponentStore<PdfComponentState> {
18
+ actions$: Actions<any>;
19
+ store: Store<any>;
20
+ imageCaptureService: ImageCaptureService;
21
+ constructor();
22
+ createPdf: (observableOrValue: PdfContent | Observable<PdfContent>) => import("rxjs").Subscription;
23
+ saveBlobForDownloadLater: (observableOrValue: PdfBlobData | Observable<PdfBlobData>) => import("rxjs").Subscription;
24
+ updateProgressData: (observableOrValue: PdfGenerationProgressInfo | Observable<PdfGenerationProgressInfo>) => import("rxjs").Subscription;
25
+ resetPdf: () => void;
26
+ resetProgressData: () => void;
27
+ selectPdfProgressData$: Observable<PdfGenerationProgressInfo>;
28
+ selectIsReadyContent$: Observable<boolean>;
29
+ selectContent$: Observable<PdfContent | null>;
30
+ selectDebugMode$: Observable<boolean>;
31
+ selectIsSaveForLater$: Observable<boolean>;
32
+ selectPdfName$: Observable<string | null>;
33
+ selectPdfSchema$: Observable<import("../interfaces/pdf.interface").PdfSchemaProps | null>;
34
+ getPdfActionSuccess$: (observableOrValue?: void | Observable<void> | undefined) => import("rxjs").Subscription;
35
+ savePdf$: (observableOrValue?: void | Observable<void> | undefined) => import("rxjs").Subscription;
36
+ downloadPdf$: (observableOrValue: {
37
+ blob: Blob;
38
+ } | Observable<{
39
+ blob: Blob;
40
+ }>) => import("rxjs").Subscription;
41
+ static ɵfac: i0.ɵɵFactoryDeclaration<PdfComponentStore, never>;
42
+ static ɵprov: i0.ɵɵInjectableDeclaration<PdfComponentStore>;
43
+ }
44
+ export {};
@@ -0,0 +1,25 @@
1
+ import type { AfterViewInit, OnInit } from '@angular/core';
2
+ import { DestroyRef } from '@angular/core';
3
+ import { VideoService } from '../../services/video.service';
4
+ import { Store } from '@ngrx/store';
5
+ import { SourceButtonColorScheme, SourceButtonSize } from '@source/ui-sdk/source-button';
6
+ import * as i0 from "@angular/core";
7
+ export declare class AfkRestartScreenLockerComponent implements AfterViewInit, OnInit {
8
+ store: Store<any>;
9
+ videoService: VideoService;
10
+ destroyRef: DestroyRef;
11
+ showReconnectPopup: import("@angular/core").Signal<boolean | undefined>;
12
+ isViewportReady: import("@angular/core").Signal<boolean | undefined>;
13
+ imageLoadingSrc: import("@angular/core").Signal<string | undefined>;
14
+ streamConfig: import("@angular/core").Signal<import("@3dsource/angular-unreal-module").StreamConfig | undefined>;
15
+ isSecondStart: import("@angular/core").WritableSignal<boolean>;
16
+ SourceButtonSize: typeof SourceButtonSize;
17
+ SourceButtonColorScheme: typeof SourceButtonColorScheme;
18
+ playCallBack: null | (() => void);
19
+ ngOnInit(): void;
20
+ ngAfterViewInit(): void;
21
+ connect(): void;
22
+ onDisconnect(): void;
23
+ static ɵfac: i0.ɵɵFactoryDeclaration<AfkRestartScreenLockerComponent, never>;
24
+ static ɵcmp: i0.ɵɵComponentDeclaration<AfkRestartScreenLockerComponent, "app-afk-restart-screen-locker", never, {}, {}, never, never, true, never>;
25
+ }
@@ -0,0 +1,42 @@
1
+ import type { OnInit } from '@angular/core';
2
+ import { EventEmitter } from '@angular/core';
3
+ import type { Observable } from 'rxjs';
4
+ import { Subject } from 'rxjs';
5
+ import type { SectionEntities, SectionEntity } from '../../store/show-case.component.interface';
6
+ import type { Coords } from '@3dsource/utils';
7
+ import * as i0 from "@angular/core";
8
+ export declare class SourceSliderComponent implements OnInit {
9
+ readonly showThumb: import("@angular/core").InputSignal<boolean>;
10
+ readonly isFullscreen: import("@angular/core").InputSignal<boolean>;
11
+ readonly sections: import("@angular/core").InputSignal<SectionEntities>;
12
+ readonly section: import("@angular/core").InputSignal<SectionEntity>;
13
+ readonly duration: import("@angular/core").InputSignal<number>;
14
+ readonly isMobile: import("@angular/core").InputSignal<boolean>;
15
+ readonly lbm: import("@angular/core").InputSignal<boolean>;
16
+ percentsFloat$: EventEmitter<number>;
17
+ dragValue: import("@angular/core").OutputEmitterRef<number>;
18
+ dragSlider: import("@angular/core").OutputEmitterRef<boolean>;
19
+ mouseSection: Subject<SectionEntity | null>;
20
+ floatPosition$: Observable<number>;
21
+ activeSection$: Observable<boolean>;
22
+ hovering: boolean;
23
+ isDrag: boolean;
24
+ private _globalTime;
25
+ get globalTime(): number;
26
+ set globalTime(value: number);
27
+ ngOnInit(): void;
28
+ getSectionPosition(index: number): number;
29
+ getSectionPositionMouse(mouseSection: SectionEntity, playedSection: SectionEntity, index: number): number;
30
+ setFloatX(floatX: number): void;
31
+ mouseout(): void;
32
+ private updateSlider;
33
+ private dispatch;
34
+ private valueToPercent;
35
+ interact($event: Coords & {
36
+ activate: boolean;
37
+ pressed: boolean;
38
+ hovering: boolean;
39
+ }): void;
40
+ static ɵfac: i0.ɵɵFactoryDeclaration<SourceSliderComponent, never>;
41
+ static ɵcmp: i0.ɵɵComponentDeclaration<SourceSliderComponent, "app-show-case-slider", never, { "showThumb": { "alias": "showThumb"; "required": false; "isSignal": true; }; "isFullscreen": { "alias": "isFullscreen"; "required": true; "isSignal": true; }; "sections": { "alias": "sections"; "required": false; "isSignal": true; }; "section": { "alias": "section"; "required": false; "isSignal": true; }; "duration": { "alias": "duration"; "required": true; "isSignal": true; }; "isMobile": { "alias": "isMobile"; "required": true; "isSignal": true; }; "lbm": { "alias": "lbm"; "required": true; "isSignal": true; }; "globalTime": { "alias": "globalTime"; "required": false; }; }, { "percentsFloat$": "percentsFloat$"; "dragValue": "dragValue"; "dragSlider": "dragSlider"; "mouseSection": "mouseSection"; }, never, never, true, never>;
42
+ }
@@ -0,0 +1,33 @@
1
+ import { AfterViewInit } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import type { Coords } from '@3dsource/utils';
4
+ import * as i0 from "@angular/core";
5
+ export declare class UserInteractDirective implements AfterViewInit {
6
+ isFullscreen: import("@angular/core").InputSignal<boolean>;
7
+ isFullscreenActive: import("rxjs").Observable<boolean>;
8
+ userInteract: Subject<Coords & {
9
+ activate: boolean;
10
+ pressed: boolean;
11
+ hovering: boolean;
12
+ }>;
13
+ private element;
14
+ private floatY;
15
+ private floatX;
16
+ private pressed;
17
+ private bounds;
18
+ private hovering;
19
+ private ref;
20
+ private destroyRef;
21
+ ngAfterViewInit(): void;
22
+ private onMouseDown;
23
+ private onTouchStart;
24
+ private onMouseOut;
25
+ private onDocumentTouchMove;
26
+ private onDocumentMouseMove;
27
+ private setFloats;
28
+ private dispatch;
29
+ private onDocumentMouseUp;
30
+ private onResize;
31
+ static ɵfac: i0.ɵɵFactoryDeclaration<UserInteractDirective, never>;
32
+ static ɵdir: i0.ɵɵDirectiveDeclaration<UserInteractDirective, "[appUserInteract]", never, { "isFullscreen": { "alias": "isFullscreen"; "required": true; "isSignal": true; }; }, { "userInteract": "userInteract"; }, never, never, true, never>;
33
+ }
@@ -0,0 +1,2 @@
1
+ import type { SourceIcon } from '@source/ui-sdk/source-icon';
2
+ export declare const siShowcaseFullscreenOut: SourceIcon;
@@ -0,0 +1,2 @@
1
+ import type { SourceIcon } from '@source/ui-sdk/source-icon';
2
+ export declare const siShowcaseFullscreen: SourceIcon;
@@ -0,0 +1,2 @@
1
+ import type { SourceIcon } from '@source/ui-sdk/source-icon';
2
+ export declare const siShowcasePauseCircle: SourceIcon;
@@ -0,0 +1,2 @@
1
+ import type { SourceIcon } from '@source/ui-sdk/source-icon';
2
+ export declare const siShowcasePause: SourceIcon;
@@ -0,0 +1,2 @@
1
+ import type { SourceIcon } from '@source/ui-sdk/source-icon';
2
+ export declare const siShowcasePlay: SourceIcon;
@@ -0,0 +1,2 @@
1
+ import type { SourceIcon } from '@source/ui-sdk/source-icon';
2
+ export declare const siShowcaseBoomerang: SourceIcon;
@@ -0,0 +1,2 @@
1
+ import type { SourceIcon } from '@source/ui-sdk/source-icon';
2
+ export declare const siShowcaseLaps: SourceIcon;
@@ -0,0 +1,2 @@
1
+ import type { SourceIcon } from '@source/ui-sdk/source-icon';
2
+ export declare const siShowcaseNext: SourceIcon;
@@ -0,0 +1,2 @@
1
+ import type { SourceIcon } from '@source/ui-sdk/source-icon';
2
+ export declare const siShowcasePrev: SourceIcon;
@@ -0,0 +1,7 @@
1
+ import { ESequenceLoopBehavior } from '@struct';
2
+ export declare const KEY_DOWN_VALUES: string[];
3
+ export declare const INIT_SHOWCASE_PARAMS: {
4
+ playRate: number;
5
+ timeResponseChangeCallBack: number;
6
+ loopBehavior: ESequenceLoopBehavior;
7
+ };
@@ -0,0 +1 @@
1
+ export declare const showCaseIcons: import("@source/ui-sdk/source-icon").SourceIcon[];