@smarterplan/ngx-smarterplan-core 1.4.6 → 1.4.7

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 (41) hide show
  1. package/esm2022/lib/helpers.service.mjs +27 -20
  2. package/esm2022/lib/mattertagData.mjs +84 -84
  3. package/esm2022/lib/pipes/time-date-to-local-string.pipe.mjs +3 -8
  4. package/esm2022/lib/services/locale.service.mjs +3 -5
  5. package/esm2022/lib/services/matterport-import.service.mjs +3 -3
  6. package/esm2022/lib/services/matterport-measurement.service.mjs +78 -0
  7. package/esm2022/lib/services/matterport-navigation.service.mjs +157 -0
  8. package/esm2022/lib/services/matterport-object3d.service.mjs +234 -0
  9. package/esm2022/lib/services/matterport-pointer.service.mjs +130 -0
  10. package/esm2022/lib/services/matterport-tag.service.mjs +458 -0
  11. package/esm2022/lib/services/matterport.service.mjs +427 -988
  12. package/esm2022/lib/services/models/equipment.service.mjs +3 -4
  13. package/esm2022/lib/services/models/feature.service.mjs +3 -3
  14. package/esm2022/lib/services/models/measurement.service.mjs +3 -3
  15. package/esm2022/lib/services/models/ticket.service.mjs +3 -4
  16. package/esm2022/lib/services/navigator.service.mjs +10 -2
  17. package/esm2022/lib/services/tag.service.mjs +45 -19
  18. package/esm2022/lib/services/viewer.service.mjs +51 -16
  19. package/esm2022/lib/types.service.mjs +1 -1
  20. package/fesm2022/smarterplan-ngx-smarterplan-core.mjs +2028 -1490
  21. package/fesm2022/smarterplan-ngx-smarterplan-core.mjs.map +1 -1
  22. package/lib/helpers.service.d.ts +6 -0
  23. package/lib/mattertagData.d.ts +52 -10
  24. package/lib/services/matterport-measurement.service.d.ts +35 -0
  25. package/lib/services/matterport-navigation.service.d.ts +38 -0
  26. package/lib/services/matterport-object3d.service.d.ts +31 -0
  27. package/lib/services/matterport-pointer.service.d.ts +31 -0
  28. package/lib/services/matterport-tag.service.d.ts +104 -0
  29. package/lib/services/matterport.service.d.ts +91 -92
  30. package/lib/services/models/equipment.service.d.ts +2 -2
  31. package/lib/services/models/feature.service.d.ts +2 -2
  32. package/lib/services/models/measurement.service.d.ts +2 -2
  33. package/lib/services/models/ticket.service.d.ts +2 -2
  34. package/lib/services/tag.service.d.ts +4 -0
  35. package/lib/services/viewer.service.d.ts +1 -1
  36. package/lib/types.service.d.ts +2 -0
  37. package/package.json +1 -1
  38. package/esm2022/lib/matterport-extensions/hsl-loader/HlsLoader.mjs +0 -66
  39. package/esm2022/lib/matterport-extensions/video-renderer/VideoRenderer.mjs +0 -63
  40. package/lib/matterport-extensions/hsl-loader/HlsLoader.d.ts +0 -26
  41. package/lib/matterport-extensions/video-renderer/VideoRenderer.d.ts +0 -26
@@ -1,5 +1,5 @@
1
1
  import { NgbModal } from '@ng-bootstrap/ng-bootstrap';
2
- import { Subject, Subscription } from 'rxjs';
2
+ import { BehaviorSubject, Subject, Subscription } from 'rxjs';
3
3
  import { MattertagData } from '../../mattertagData';
4
4
  import { Event, Ticket, TicketType, TicketStatus, Affectation, POI, IUpdate, Zone } from '../../types.service';
5
5
  import { FilterService } from '../filter.service';
@@ -30,7 +30,7 @@ export declare class TicketsService extends BaseObjectService {
30
30
  zone: Ticket[];
31
31
  space: Ticket[];
32
32
  };
33
- ticketTags: Subject<Ticket[]>;
33
+ ticketTags: BehaviorSubject<Ticket[]>;
34
34
  ticketsFiltered: Ticket[];
35
35
  ticketsUpdated: Subject<{
36
36
  zone: Ticket[];
@@ -2,7 +2,11 @@ import { Comment, DbObjectType, Equipment, Feature, POI, PoiType, Ticket, Commen
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class BaseTagService {
4
4
  constructor();
5
+ /** Base implementation for generating tag HTML. Override in derived classes. */
5
6
  getHtmlToInject(tagType: PoiType, object: DbObjectType): Promise<string>;
7
+ /** Base implementation for injecting HTML into a tag container. */
8
+ injectHtml(container: HTMLElement, tagType: PoiType, object: DbObjectType): Promise<void>;
9
+ /** Returns the navigation URL for viewing details of a specific object type. */
6
10
  getUrlForSeeDetails(object: DbObjectType, tagType: PoiType): string;
7
11
  prepareEquipmentHtml(equip: Equipment): Promise<string>;
8
12
  prepareTicketHtml(ticket: Ticket): Promise<string>;
@@ -52,7 +52,7 @@ export declare class ViewerService {
52
52
  constructor(poiService: PoiService, matterportService: MatterportService);
53
53
  checkMode(indexMode: string): boolean;
54
54
  setMode(indexMode: string): void;
55
- setTourUrl(model3d: string, showIconPlan?: boolean, showIconDollhouse?: boolean, showIconFloors?: boolean, enableQuickStart?: boolean): void;
55
+ setTourUrl(model3d: string, showIconPlan?: boolean, showIconDollhouse?: boolean, showIconFloors?: boolean, showQuickStart?: boolean, showFullscreen?: boolean, showGuidedTour?: boolean, showHighlightReel?: boolean): void;
56
56
  clearAll(): Promise<void>;
57
57
  getMode(): string;
58
58
  getViewerSelectedService(): MatterportService;
@@ -398,6 +398,8 @@ export type POI = {
398
398
  type?: PoiType | null;
399
399
  elementID?: string | null;
400
400
  virtual?: boolean | null;
401
+ xRotation?: number | null;
402
+ yRotation?: number | null;
401
403
  };
402
404
  export declare enum ViewerInteractions {
403
405
  DEFAULT = 0,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smarterplan/ngx-smarterplan-core",
3
- "version": "1.4.6",
3
+ "version": "1.4.7",
4
4
  "dependencies": {
5
5
  "tslib": "^2.5.0"
6
6
  },
@@ -1,66 +0,0 @@
1
- import { SceneComponent } from './../scene-component/SceneComponent';
2
- // @ts-ignore
3
- import Hls from 'hls.js';
4
- export class HlsLoader extends SceneComponent {
5
- video = null;
6
- texture = null;
7
- hls = null;
8
- inputs = {
9
- src: './../assets/video/121222-04.mp4',
10
- enabled: true,
11
- };
12
- outputs = {
13
- video: null,
14
- aspect: 1,
15
- };
16
- onInit(videoTexture) {
17
- this.outputs.video = videoTexture;
18
- this.outputs.aspect = 720 / 480;
19
- if (this.inputs.enabled) {
20
- this.setupStream();
21
- }
22
- }
23
- onInputsUpdated() {
24
- this.setupStream();
25
- }
26
- onDestroy() {
27
- this.releaseResources();
28
- }
29
- createVideoElement() {
30
- const video = document.createElement('video');
31
- video.crossOrigin = 'anonymous';
32
- video.setAttribute('height', '480');
33
- video.setAttribute('width', '720');
34
- video.setAttribute('muted', 'muted');
35
- video.volume = 0.1;
36
- return video;
37
- }
38
- setupStream() {
39
- this.releaseResources();
40
- if (this.inputs.enabled) {
41
- this.video = this.createVideoElement();
42
- this.hls = new Hls();
43
- this.hls.loadSource(this.inputs.src);
44
- this.hls.attachMedia(this.video);
45
- this.hls.on(Hls.Events.MANIFEST_PARSED, () => {
46
- this.outputs.video = this.video;
47
- });
48
- }
49
- }
50
- releaseResources() {
51
- if (this.hls) {
52
- this.hls.destroy();
53
- this.hls = null;
54
- }
55
- if (this.texture) {
56
- this.texture.dispose();
57
- this.texture = null;
58
- this.outputs.video = null;
59
- }
60
- }
61
- }
62
- export const hlsLoaderType = 'mp.hlsLoader';
63
- export function makeHlsLoader() {
64
- return new HlsLoader();
65
- }
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSGxzTG9hZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNtYXJ0ZXJwbGFuLWNvcmUvc3JjL2xpYi9tYXR0ZXJwb3J0LWV4dGVuc2lvbnMvaHNsLWxvYWRlci9IbHNMb2FkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBbUIsTUFBTSxxQ0FBcUMsQ0FBQztBQUV0RixhQUFhO0FBQ2IsT0FBTyxHQUFHLE1BQU0sUUFBUSxDQUFDO0FBWXpCLE1BQU0sT0FBTyxTQUFVLFNBQVEsY0FBYztJQUNuQyxLQUFLLEdBQTRCLElBQUksQ0FBQztJQUN0QyxPQUFPLEdBQXdCLElBQUksQ0FBQztJQUNwQyxHQUFHLEdBQWUsSUFBSSxDQUFDO0lBRXRCLE1BQU0sR0FBVztRQUN4QixHQUFHLEVBQUUsaUNBQWlDO1FBQ3RDLE9BQU8sRUFBRSxJQUFJO0tBQ2QsQ0FBQTtJQUVRLE9BQU8sR0FBRztRQUNqQixLQUFLLEVBQUUsSUFBSTtRQUNYLE1BQU0sRUFBRSxDQUFDO0tBQ0MsQ0FBQztJQUVKLE1BQU0sQ0FBQyxZQUEyQjtRQUN6QyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxZQUFZLENBQUM7UUFDbEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsR0FBRyxHQUFDLEdBQUcsQ0FBQztRQUM5QixJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3JCLENBQUM7SUFDSCxDQUFDO0lBRVEsZUFBZTtRQUV0QixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVRLFNBQVM7UUFDaEIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVPLGtCQUFrQjtRQUN4QixNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzlDLEtBQUssQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1FBQ2hDLEtBQUssQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3BDLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ25DLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3JDLEtBQUssQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDO1FBQ25CLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVPLFdBQVc7UUFDakIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFFeEIsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7WUFDdkMsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDckMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2pDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsZUFBZSxFQUFFLEdBQUcsRUFBRTtnQkFDM0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUNsQyxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7SUFDSCxDQUFDO0lBRU8sZ0JBQWdCO1FBQ3RCLElBQUksSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ2IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQztRQUNsQixDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUN2QixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztZQUNwQixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7UUFDNUIsQ0FBQztJQUNILENBQUM7Q0FDRjtBQUVELE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxjQUFjLENBQUM7QUFDNUMsTUFBTSxVQUFVLGFBQWE7SUFDM0IsT0FBTyxJQUFJLFNBQVMsRUFBRSxDQUFDO0FBQ3pCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTY2VuZUNvbXBvbmVudCwgQ29tcG9uZW50T3V0cHV0IH0gZnJvbSAnLi8uLi9zY2VuZS1jb21wb25lbnQvU2NlbmVDb21wb25lbnQnO1xyXG5pbXBvcnQgeyBWaWRlb1RleHR1cmUgfSBmcm9tICd0aHJlZSc7XHJcbi8vIEB0cy1pZ25vcmVcclxuaW1wb3J0IEhscyBmcm9tICdobHMuanMnO1xyXG5cclxudHlwZSBJbnB1dHMgPSB7XHJcbiAgc3JjOiBzdHJpbmc7XHJcbiAgZW5hYmxlZDogYm9vbGVhbjtcclxufTtcclxuXHJcbnR5cGUgT3V0cHV0cyA9IHtcclxuICB2aWRlbzogSFRNTFZpZGVvRWxlbWVudCB8IG51bGw7XHJcbiAgYXNwZWN0OiBudW1iZXI7XHJcbn0gJiBDb21wb25lbnRPdXRwdXQ7XHJcblxyXG5leHBvcnQgY2xhc3MgSGxzTG9hZGVyIGV4dGVuZHMgU2NlbmVDb21wb25lbnQge1xyXG4gIHByaXZhdGUgdmlkZW86IEhUTUxWaWRlb0VsZW1lbnQgfCBudWxsID0gbnVsbDtcclxuICBwcml2YXRlIHRleHR1cmU6IFZpZGVvVGV4dHVyZSB8IG51bGwgPSBudWxsO1xyXG4gIHByaXZhdGUgaGxzOiBIbHMgfCBudWxsID0gbnVsbDtcclxuXHJcbiAgb3ZlcnJpZGUgaW5wdXRzOiBJbnB1dHMgPSB7XHJcbiAgICBzcmM6ICcuLy4uL2Fzc2V0cy92aWRlby8xMjEyMjItMDQubXA0JyxcclxuICAgIGVuYWJsZWQ6IHRydWUsXHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBvdXRwdXRzID0ge1xyXG4gICAgdmlkZW86IG51bGwsXHJcbiAgICBhc3BlY3Q6IDEsXHJcbiAgfSBhcyBPdXRwdXRzO1xyXG5cclxuICBvdmVycmlkZSBvbkluaXQodmlkZW9UZXh0dXJlPzogVmlkZW9UZXh0dXJlKSB7XHJcbiAgICB0aGlzLm91dHB1dHMudmlkZW8gPSB2aWRlb1RleHR1cmU7XHJcbiAgICB0aGlzLm91dHB1dHMuYXNwZWN0ID0gNzIwLzQ4MDtcclxuICAgIGlmICh0aGlzLmlucHV0cy5lbmFibGVkKSB7XHJcbiAgICAgIHRoaXMuc2V0dXBTdHJlYW0oKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIG9uSW5wdXRzVXBkYXRlZCgpIHtcclxuXHJcbiAgICB0aGlzLnNldHVwU3RyZWFtKCk7XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBvbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLnJlbGVhc2VSZXNvdXJjZXMoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlVmlkZW9FbGVtZW50KCkge1xyXG4gICAgY29uc3QgdmlkZW8gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd2aWRlbycpO1xyXG4gICAgdmlkZW8uY3Jvc3NPcmlnaW4gPSAnYW5vbnltb3VzJztcclxuICAgIHZpZGVvLnNldEF0dHJpYnV0ZSgnaGVpZ2h0JywgJzQ4MCcpO1xyXG4gICAgdmlkZW8uc2V0QXR0cmlidXRlKCd3aWR0aCcsICc3MjAnKTtcclxuICAgIHZpZGVvLnNldEF0dHJpYnV0ZSgnbXV0ZWQnLCAnbXV0ZWQnKTtcclxuICAgIHZpZGVvLnZvbHVtZSA9IDAuMTtcclxuICAgIHJldHVybiB2aWRlbztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0dXBTdHJlYW0oKSB7XHJcbiAgICB0aGlzLnJlbGVhc2VSZXNvdXJjZXMoKTtcclxuXHJcbiAgICBpZiAodGhpcy5pbnB1dHMuZW5hYmxlZCkge1xyXG4gICAgICB0aGlzLnZpZGVvID0gdGhpcy5jcmVhdGVWaWRlb0VsZW1lbnQoKTtcclxuICAgICAgdGhpcy5obHMgPSBuZXcgSGxzKCk7XHJcbiAgICAgIHRoaXMuaGxzLmxvYWRTb3VyY2UodGhpcy5pbnB1dHMuc3JjKTtcclxuICAgICAgdGhpcy5obHMuYXR0YWNoTWVkaWEodGhpcy52aWRlbyk7XHJcbiAgICAgIHRoaXMuaGxzLm9uKEhscy5FdmVudHMuTUFOSUZFU1RfUEFSU0VELCAoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5vdXRwdXRzLnZpZGVvID0gdGhpcy52aWRlbztcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlbGVhc2VSZXNvdXJjZXMoKSB7XHJcbiAgICBpZiAodGhpcy5obHMpIHtcclxuICAgICAgdGhpcy5obHMuZGVzdHJveSgpO1xyXG4gICAgICB0aGlzLmhscyA9IG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMudGV4dHVyZSkge1xyXG4gICAgICB0aGlzLnRleHR1cmUuZGlzcG9zZSgpO1xyXG4gICAgICB0aGlzLnRleHR1cmUgPSBudWxsO1xyXG4gICAgICB0aGlzLm91dHB1dHMudmlkZW8gPSBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IGhsc0xvYWRlclR5cGUgPSAnbXAuaGxzTG9hZGVyJztcclxuZXhwb3J0IGZ1bmN0aW9uIG1ha2VIbHNMb2FkZXIoKSB7XHJcbiAgcmV0dXJuIG5ldyBIbHNMb2FkZXIoKTtcclxufVxyXG4iXX0=
@@ -1,63 +0,0 @@
1
- import { SceneComponent } from './../scene-component/SceneComponent';
2
- import { VideoTexture, LinearFilter, RGBAFormat } from 'three';
3
- export class VideoRenderer extends SceneComponent {
4
- video;
5
- texture;
6
- inputs = {
7
- src: null,
8
- };
9
- outputs = {
10
- texture: null,
11
- };
12
- onInit() {
13
- }
14
- onInputsUpdated() {
15
- this.releaseTexture();
16
- // if (!this.inputs.src) {
17
- // this.video.src = '';
18
- // return;
19
- // }
20
- if (this.inputs.src instanceof HTMLVideoElement) {
21
- // TODO 'https://www.smarterplan.io/wp-content/uploads/2023/03/121222-04.mp4';
22
- this.video = this.inputs.src;
23
- }
24
- else {
25
- this.video = this.createVideoElement();
26
- // if (typeof this.inputs.src === 'string') {
27
- // this.video.src = this.inputs.src;
28
- // } else {
29
- // this.video.srcObject = this.inputs.src;
30
- // }
31
- this.video.src = './../assets/video/121222-04.mp4';
32
- this.video.load();
33
- }
34
- this.texture = new VideoTexture(this.video);
35
- this.texture.minFilter = LinearFilter;
36
- this.texture.magFilter = LinearFilter;
37
- this.texture.format = RGBAFormat;
38
- this.outputs.texture = this.texture;
39
- this.video.play();
40
- }
41
- onDestroy() {
42
- this.releaseTexture();
43
- }
44
- releaseTexture() {
45
- if (this.texture) {
46
- this.outputs.texture = null;
47
- this.texture.dispose();
48
- }
49
- }
50
- createVideoElement() {
51
- const video = document.createElement('video');
52
- video.crossOrigin = 'anonymous';
53
- video.autoplay = true;
54
- video.muted = true;
55
- video.loop = true;
56
- return video;
57
- }
58
- }
59
- export const videoRendererType = 'mp.videoRenderer';
60
- export function makeVideoRenderer() {
61
- return new VideoRenderer();
62
- }
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVmlkZW9SZW5kZXJlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zbWFydGVycGxhbi1jb3JlL3NyYy9saWIvbWF0dGVycG9ydC1leHRlbnNpb25zL3ZpZGVvLXJlbmRlcmVyL1ZpZGVvUmVuZGVyZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGNBQWMsRUFBa0IsTUFBTSxxQ0FBcUMsQ0FBQztBQUNwRixPQUFPLEVBQVUsWUFBWSxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUMsTUFBTSxPQUFPLENBQUM7QUFVdEUsTUFBTSxPQUFPLGFBQWMsU0FBUSxjQUFjO0lBQ3ZDLEtBQUssQ0FBbUI7SUFDeEIsT0FBTyxDQUFlO0lBRXJCLE1BQU0sR0FBVztRQUN4QixHQUFHLEVBQUUsSUFBSTtLQUNWLENBQUE7SUFFUSxPQUFPLEdBQUc7UUFDakIsT0FBTyxFQUFFLElBQUk7S0FDSCxDQUFDO0lBRUosTUFBTTtJQUNmLENBQUM7SUFFUSxlQUFlO1FBQ3RCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUV0QiwwQkFBMEI7UUFDMUIseUJBQXlCO1FBQ3pCLFlBQVk7UUFDWixJQUFJO1FBRUosSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsWUFBWSxnQkFBZ0IsRUFBRSxDQUFDO1lBQ2hELDhFQUE4RTtZQUM5RSxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDO1FBQy9CLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztZQUV2Qyw2Q0FBNkM7WUFDN0Msc0NBQXNDO1lBQ3RDLFdBQVc7WUFDWCw0Q0FBNEM7WUFDNUMsSUFBSTtZQUVKLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLGlDQUFpQyxDQUFDO1lBRW5ELElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDcEIsQ0FBQztRQUVELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzVDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxHQUFHLFlBQVksQ0FBQztRQUN0QyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsR0FBRyxZQUFZLENBQUM7UUFDdEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsVUFBVSxDQUFDO1FBRWpDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDcEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRVEsU0FBUztRQUNoQixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVELGNBQWM7UUFDWixJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNqQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7WUFDNUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN6QixDQUFDO0lBQ0gsQ0FBQztJQUVPLGtCQUFrQjtRQUN4QixNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzlDLEtBQUssQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1FBQ2hDLEtBQUssQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3RCLEtBQUssQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1FBQ25CLEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBRWxCLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztDQUNGO0FBT0QsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsa0JBQWtCLENBQUM7QUFFcEQsTUFBTSxVQUFVLGlCQUFpQjtJQUMvQixPQUFPLElBQUksYUFBYSxFQUFFLENBQUM7QUFDN0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7U2NlbmVDb21wb25lbnQsIENvbXBvbmVudE91dHB1dH0gZnJvbSAnLi8uLi9zY2VuZS1jb21wb25lbnQvU2NlbmVDb21wb25lbnQnO1xyXG5pbXBvcnQge1RleHR1cmUsIFZpZGVvVGV4dHVyZSwgTGluZWFyRmlsdGVyLCBSR0JBRm9ybWF0fSBmcm9tICd0aHJlZSc7XHJcblxyXG50eXBlIElucHV0cyA9IHtcclxuICBzcmM6IE1lZGlhU3RyZWFtIHwgc3RyaW5nIHwgSFRNTFZpZGVvRWxlbWVudCB8IG51bGw7XHJcbn07XHJcblxyXG50eXBlIE91dHB1dHMgPSB7XHJcbiAgdGV4dHVyZTogVGV4dHVyZSB8IG51bGw7XHJcbn0gJiBDb21wb25lbnRPdXRwdXQ7XHJcblxyXG5leHBvcnQgY2xhc3MgVmlkZW9SZW5kZXJlciBleHRlbmRzIFNjZW5lQ29tcG9uZW50IHtcclxuICBwcml2YXRlIHZpZGVvOiBIVE1MVmlkZW9FbGVtZW50O1xyXG4gIHByaXZhdGUgdGV4dHVyZTogVmlkZW9UZXh0dXJlO1xyXG5cclxuICBvdmVycmlkZSBpbnB1dHM6IElucHV0cyA9IHtcclxuICAgIHNyYzogbnVsbCxcclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIG91dHB1dHMgPSB7XHJcbiAgICB0ZXh0dXJlOiBudWxsLFxyXG4gIH0gYXMgT3V0cHV0cztcclxuXHJcbiAgb3ZlcnJpZGUgb25Jbml0KCkge1xyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgb25JbnB1dHNVcGRhdGVkKCkge1xyXG4gICAgdGhpcy5yZWxlYXNlVGV4dHVyZSgpO1xyXG5cclxuICAgIC8vIGlmICghdGhpcy5pbnB1dHMuc3JjKSB7XHJcbiAgICAvLyAgIHRoaXMudmlkZW8uc3JjID0gJyc7XHJcbiAgICAvLyAgIHJldHVybjtcclxuICAgIC8vIH1cclxuXHJcbiAgICBpZiAodGhpcy5pbnB1dHMuc3JjIGluc3RhbmNlb2YgSFRNTFZpZGVvRWxlbWVudCkge1xyXG4gICAgICAvLyBUT0RPICdodHRwczovL3d3dy5zbWFydGVycGxhbi5pby93cC1jb250ZW50L3VwbG9hZHMvMjAyMy8wMy8xMjEyMjItMDQubXA0JztcclxuICAgICAgdGhpcy52aWRlbyA9IHRoaXMuaW5wdXRzLnNyYztcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMudmlkZW8gPSB0aGlzLmNyZWF0ZVZpZGVvRWxlbWVudCgpO1xyXG5cclxuICAgICAgLy8gaWYgKHR5cGVvZiB0aGlzLmlucHV0cy5zcmMgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgIC8vICAgdGhpcy52aWRlby5zcmMgPSB0aGlzLmlucHV0cy5zcmM7XHJcbiAgICAgIC8vIH0gZWxzZSB7XHJcbiAgICAgIC8vICAgdGhpcy52aWRlby5zcmNPYmplY3QgPSB0aGlzLmlucHV0cy5zcmM7XHJcbiAgICAgIC8vIH1cclxuXHJcbiAgICAgIHRoaXMudmlkZW8uc3JjID0gJy4vLi4vYXNzZXRzL3ZpZGVvLzEyMTIyMi0wNC5tcDQnO1xyXG5cclxuICAgICAgdGhpcy52aWRlby5sb2FkKCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy50ZXh0dXJlID0gbmV3IFZpZGVvVGV4dHVyZSh0aGlzLnZpZGVvKTtcclxuICAgIHRoaXMudGV4dHVyZS5taW5GaWx0ZXIgPSBMaW5lYXJGaWx0ZXI7XHJcbiAgICB0aGlzLnRleHR1cmUubWFnRmlsdGVyID0gTGluZWFyRmlsdGVyO1xyXG4gICAgdGhpcy50ZXh0dXJlLmZvcm1hdCA9IFJHQkFGb3JtYXQ7XHJcblxyXG4gICAgdGhpcy5vdXRwdXRzLnRleHR1cmUgPSB0aGlzLnRleHR1cmU7XHJcbiAgICB0aGlzLnZpZGVvLnBsYXkoKTtcclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIG9uRGVzdHJveSgpIHtcclxuICAgIHRoaXMucmVsZWFzZVRleHR1cmUoKTtcclxuICB9XHJcblxyXG4gIHJlbGVhc2VUZXh0dXJlKCkge1xyXG4gICAgaWYgKHRoaXMudGV4dHVyZSkge1xyXG4gICAgICB0aGlzLm91dHB1dHMudGV4dHVyZSA9IG51bGw7XHJcbiAgICAgIHRoaXMudGV4dHVyZS5kaXNwb3NlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNyZWF0ZVZpZGVvRWxlbWVudCgpIHtcclxuICAgIGNvbnN0IHZpZGVvID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndmlkZW8nKTtcclxuICAgIHZpZGVvLmNyb3NzT3JpZ2luID0gJ2Fub255bW91cyc7XHJcbiAgICB2aWRlby5hdXRvcGxheSA9IHRydWU7XHJcbiAgICB2aWRlby5tdXRlZCA9IHRydWU7XHJcbiAgICB2aWRlby5sb29wID0gdHJ1ZTtcclxuXHJcbiAgICByZXR1cm4gdmlkZW87XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElWaWRlb1JlbmRlcmVyIGV4dGVuZHMgU2NlbmVDb21wb25lbnQge1xyXG4gIGlucHV0czogSW5wdXRzO1xyXG4gIG91dHB1dHM6IE91dHB1dHM7XHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCB2aWRlb1JlbmRlcmVyVHlwZSA9ICdtcC52aWRlb1JlbmRlcmVyJztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBtYWtlVmlkZW9SZW5kZXJlcigpIHtcclxuICByZXR1cm4gbmV3IFZpZGVvUmVuZGVyZXIoKTtcclxufVxyXG4iXX0=
@@ -1,26 +0,0 @@
1
- import { SceneComponent, ComponentOutput } from './../scene-component/SceneComponent';
2
- import { VideoTexture } from 'three';
3
- type Inputs = {
4
- src: string;
5
- enabled: boolean;
6
- };
7
- type Outputs = {
8
- video: HTMLVideoElement | null;
9
- aspect: number;
10
- } & ComponentOutput;
11
- export declare class HlsLoader extends SceneComponent {
12
- private video;
13
- private texture;
14
- private hls;
15
- inputs: Inputs;
16
- outputs: Outputs;
17
- onInit(videoTexture?: VideoTexture): void;
18
- onInputsUpdated(): void;
19
- onDestroy(): void;
20
- private createVideoElement;
21
- private setupStream;
22
- private releaseResources;
23
- }
24
- export declare const hlsLoaderType = "mp.hlsLoader";
25
- export declare function makeHlsLoader(): HlsLoader;
26
- export {};
@@ -1,26 +0,0 @@
1
- import { SceneComponent, ComponentOutput } from './../scene-component/SceneComponent';
2
- import { Texture } from 'three';
3
- type Inputs = {
4
- src: MediaStream | string | HTMLVideoElement | null;
5
- };
6
- type Outputs = {
7
- texture: Texture | null;
8
- } & ComponentOutput;
9
- export declare class VideoRenderer extends SceneComponent {
10
- private video;
11
- private texture;
12
- inputs: Inputs;
13
- outputs: Outputs;
14
- onInit(): void;
15
- onInputsUpdated(): void;
16
- onDestroy(): void;
17
- releaseTexture(): void;
18
- private createVideoElement;
19
- }
20
- export interface IVideoRenderer extends SceneComponent {
21
- inputs: Inputs;
22
- outputs: Outputs;
23
- }
24
- export declare const videoRendererType = "mp.videoRenderer";
25
- export declare function makeVideoRenderer(): VideoRenderer;
26
- export {};