@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.
- package/esm2022/lib/helpers.service.mjs +27 -20
- package/esm2022/lib/mattertagData.mjs +84 -84
- package/esm2022/lib/pipes/time-date-to-local-string.pipe.mjs +3 -8
- package/esm2022/lib/services/locale.service.mjs +3 -5
- package/esm2022/lib/services/matterport-import.service.mjs +3 -3
- package/esm2022/lib/services/matterport-measurement.service.mjs +78 -0
- package/esm2022/lib/services/matterport-navigation.service.mjs +157 -0
- package/esm2022/lib/services/matterport-object3d.service.mjs +234 -0
- package/esm2022/lib/services/matterport-pointer.service.mjs +130 -0
- package/esm2022/lib/services/matterport-tag.service.mjs +458 -0
- package/esm2022/lib/services/matterport.service.mjs +427 -988
- package/esm2022/lib/services/models/equipment.service.mjs +3 -4
- package/esm2022/lib/services/models/feature.service.mjs +3 -3
- package/esm2022/lib/services/models/measurement.service.mjs +3 -3
- package/esm2022/lib/services/models/ticket.service.mjs +3 -4
- package/esm2022/lib/services/navigator.service.mjs +10 -2
- package/esm2022/lib/services/tag.service.mjs +45 -19
- package/esm2022/lib/services/viewer.service.mjs +51 -16
- package/esm2022/lib/types.service.mjs +1 -1
- package/fesm2022/smarterplan-ngx-smarterplan-core.mjs +2028 -1490
- package/fesm2022/smarterplan-ngx-smarterplan-core.mjs.map +1 -1
- package/lib/helpers.service.d.ts +6 -0
- package/lib/mattertagData.d.ts +52 -10
- package/lib/services/matterport-measurement.service.d.ts +35 -0
- package/lib/services/matterport-navigation.service.d.ts +38 -0
- package/lib/services/matterport-object3d.service.d.ts +31 -0
- package/lib/services/matterport-pointer.service.d.ts +31 -0
- package/lib/services/matterport-tag.service.d.ts +104 -0
- package/lib/services/matterport.service.d.ts +91 -92
- package/lib/services/models/equipment.service.d.ts +2 -2
- package/lib/services/models/feature.service.d.ts +2 -2
- package/lib/services/models/measurement.service.d.ts +2 -2
- package/lib/services/models/ticket.service.d.ts +2 -2
- package/lib/services/tag.service.d.ts +4 -0
- package/lib/services/viewer.service.d.ts +1 -1
- package/lib/types.service.d.ts +2 -0
- package/package.json +1 -1
- package/esm2022/lib/matterport-extensions/hsl-loader/HlsLoader.mjs +0 -66
- package/esm2022/lib/matterport-extensions/video-renderer/VideoRenderer.mjs +0 -63
- package/lib/matterport-extensions/hsl-loader/HlsLoader.d.ts +0 -26
- 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:
|
|
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,
|
|
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;
|
package/lib/types.service.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -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 {};
|