@lumiscaphe/ng-viewer 4.0.0 → 4.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.
@@ -45,6 +45,9 @@ export class NgViewerComponent {
45
45
  this.viewer.setVrobject(this.vrobject);
46
46
  }
47
47
  }
48
+ ngOnDestroy() {
49
+ this.viewer?.destroy();
50
+ }
48
51
  ngOnChanges(changes) {
49
52
  if (!this.viewer) {
50
53
  return;
@@ -72,9 +75,9 @@ export class NgViewerComponent {
72
75
  return this.viewer?.snapshot(type, quality);
73
76
  }
74
77
  }
75
- NgViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: NgViewerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
76
- NgViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: NgViewerComponent, selector: "NgViewer", inputs: { server: "server", api: "api", fit: "fit", scene: "scene", encoder: "encoder", parameters: "parameters", view: "view", vrcube: "vrcube", vrobject: "vrobject" }, outputs: { onLoadStart: "onLoadStart", onLoadProgress: "onLoadProgress", onLoadEnd: "onLoadEnd", onLoadError: "onLoadError", onInteraction: "onInteraction", onVrcubeInteraction: "onVrcubeInteraction", onVrobjectInteraction: "onVrobjectInteraction" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesOnChanges: true, ngImport: i0, template: '<div #container></div>', isInline: true, styles: [":host{display:flex;flex:1 0 auto}\n"] });
77
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: NgViewerComponent, decorators: [{
78
+ NgViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: NgViewerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
79
+ NgViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: NgViewerComponent, selector: "NgViewer", inputs: { server: "server", api: "api", fit: "fit", scene: "scene", encoder: "encoder", parameters: "parameters", view: "view", vrcube: "vrcube", vrobject: "vrobject" }, outputs: { onLoadStart: "onLoadStart", onLoadProgress: "onLoadProgress", onLoadEnd: "onLoadEnd", onLoadError: "onLoadError", onInteraction: "onInteraction", onVrcubeInteraction: "onVrcubeInteraction", onVrobjectInteraction: "onVrobjectInteraction" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesOnChanges: true, ngImport: i0, template: '<div #container></div>', isInline: true, styles: [":host{display:flex;flex:1 0 auto}\n"] });
80
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: NgViewerComponent, decorators: [{
78
81
  type: Component,
79
82
  args: [{
80
83
  selector: 'NgViewer',
@@ -117,4 +120,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImpor
117
120
  type: ViewChild,
118
121
  args: ['container']
119
122
  }] } });
120
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctdmlld2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXZpZXdlci9zcmMvbGliL25nLXZpZXdlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQWMsWUFBWSxFQUFFLEtBQUssRUFBNEIsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2SSxPQUFPLEVBQW9DLE1BQU0sRUFBZ0MsTUFBTSxvQkFBb0IsQ0FBQzs7QUFRNUcsTUFBTSxPQUFPLGlCQUFpQjtJQXdCNUI7UUFWVSxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDakMsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3BDLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQy9CLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNqQyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDbkMsd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN6QywwQkFBcUIsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBS3JELENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRTtZQUNyRCxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDbkIsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLElBQUksSUFBSTtZQUNyQixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsSUFBSSxPQUFPO1lBQ3hCLE1BQU0sRUFBRTtnQkFDTixXQUFXLEVBQUUsQ0FBQyxHQUFHLElBQVcsRUFBRSxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENB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cEdVLGlCQUFpQjtrR0FBakIsaUJBQWlCLGtsQkFKbEIsd0JBQXdCOzJGQUl2QixpQkFBaUI7a0JBTjdCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFVBQVU7b0JBQ3BCLFFBQVEsRUFBRSx3QkFBd0I7b0JBQ2xDLE1BQU0sRUFBRSxDQUFDLDBDQUEwQyxDQUFDO2lCQUNyRDswRUFNVSxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csR0FBRztzQkFBWCxLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVJLFdBQVc7c0JBQXBCLE1BQU07Z0JBQ0csY0FBYztzQkFBdkIsTUFBTTtnQkFDRyxTQUFTO3NCQUFsQixNQUFNO2dCQUNHLFdBQVc7c0JBQXBCLE1BQU07Z0JBQ0csYUFBYTtzQkFBdEIsTUFBTTtnQkFDRyxtQkFBbUI7c0JBQTVCLE1BQU07Z0JBQ0cscUJBQXFCO3NCQUE5QixNQUFNO2dCQUVpQixTQUFTO3NCQUFoQyxTQUFTO3VCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcywgVmlld0NoaWxkLCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRW5jb2RlciwgUGFyYW1ldGVycywgU2NlbmUsIFZpZXcsIFZpZXdlciwgV2lkZ2V0VlJDdWJlLCBXaWRnZXRWUk9iamVjdCB9IGZyb20gJ0BsdW1pc2NhcGhlL3ZpZXdlcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ05nVmlld2VyJyxcbiAgdGVtcGxhdGU6ICc8ZGl2ICNjb250YWluZXI+PC9kaXY+JyxcbiAgc3R5bGVzOiBbJzpob3N0IHsgZGlzcGxheTogZmxleDsgZmxleDogMSAwIGF1dG87IH0nXVxufSlcblxuZXhwb3J0IGNsYXNzIE5nVmlld2VyQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzIHtcblxuICBwdWJsaWMgdmlld2VyOiBWaWV3ZXIgfCB1bmRlZmluZWQ7XG5cbiAgQElucHV0KCkgc2VydmVyOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIGFwaTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBmaXQ6ICdjb250YWluJyB8ICdjb3ZlcicgfCAnZmlsbCcgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHNjZW5lOiBTY2VuZSB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgZW5jb2RlcjogRW5jb2RlciB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgcGFyYW1ldGVyczogUGFyYW1ldGVycyB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgdmlldzogVmlldyB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgdnJjdWJlOiBQYXJ0aWFsPFdpZGdldFZSQ3ViZT4gfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHZyb2JqZWN0OiBQYXJ0aWFsPFdpZGdldFZST2JqZWN0PiB8IHVuZGVmaW5lZDtcblxuICBAT3V0cHV0KCkgb25Mb2FkU3RhcnQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBvbkxvYWRQcm9ncmVzcyA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIG9uTG9hZEVuZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIG9uTG9hZEVycm9yID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgb25JbnRlcmFjdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIG9uVnJjdWJlSW50ZXJhY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBvblZyb2JqZWN0SW50ZXJhY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQFZpZXdDaGlsZCgnY29udGFpbmVyJykgY29udGFpbmVyITogRWxlbWVudFJlZjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLnZpZXdlciA9IG5ldyBWaWV3ZXIodGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudCwge1xuICAgICAgc2VydmVyOiB0aGlzLnNlcnZlcixcbiAgICAgIGFwaTogdGhpcy5hcGkgfHwgJ3YxJyxcbiAgICAgIGZpdDogdGhpcy5maXQgfHwgJ2NvdmVyJyxcbiAgICAgIGV2ZW50czoge1xuICAgICAgICBvbkxvYWRTdGFydDogKC4uLmFyZ3M6IGFueVtdKSA9PiB7IHRoaXMub25Mb2FkU3RhcnQuZW1pdCguLi5hcmdzKTsgfSxcbiAgICAgICAgb25Mb2FkUHJvZ3Jlc3M6ICguLi5hcmdzOiBhbnlbXSkgPT4geyB0aGlzLm9uTG9hZFByb2dyZXNzLmVtaXQoLi4uYXJncyk7IH0sXG4gICAgICAgIG9uTG9hZEVuZDogKC4uLmFyZ3M6IGFueVtdKSA9PiB7IHRoaXMub25Mb2FkRW5kLmVtaXQoLi4uYXJncyk7IH0sXG4gICAgICAgIG9uTG9hZEVycm9yOiAoLi4uYXJnczogYW55W10pID0+IHsgdGhpcy5vbkxvYWRFcnJvci5lbWl0KC4uLmFyZ3MpOyB9LFxuICAgICAgICBvbkludGVyYWN0aW9uOiAoLi4uYXJnczogYW55W10pID0+IHsgdGhpcy5vbkludGVyYWN0aW9uLmVtaXQoLi4uYXJncyk7IH0sXG4gICAgICAgIG9uVnJjdWJlSW50ZXJhY3Rpb246ICguLi5hcmdzOiBhbnlbXSkgPT4geyB0aGlzLm9uVnJjdWJlSW50ZXJhY3Rpb24uZW1pdCguLi5hcmdzKTsgfSxcbiAgICAgICAgb25Wcm9iamVjdEludGVyYWN0aW9uOiAoLi4uYXJnczogYW55W10pID0+IHsgdGhpcy5vblZyb2JqZWN0SW50ZXJhY3Rpb24uZW1pdCguLi5hcmdzKTsgfSxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICBpZiAodGhpc1snc2NlbmUnXSkge1xuICAgICAgdGhpcy52aWV3ZXIubG9hZCh0aGlzLnNjZW5lKS5jYXRjaCgoKSA9PiB7IH0pO1xuICAgIH1cblxuICAgIGlmICh0aGlzWydlbmNvZGVyJ10pIHtcbiAgICAgIHRoaXMudmlld2VyLnNldEVuY29kZXIodGhpcy5lbmNvZGVyKS5jYXRjaCgoKSA9PiB7IH0pO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnBhcmFtZXRlcnMpIHtcbiAgICAgIHRoaXMudmlld2VyLnNldFBhcmFtZXRlcnModGhpcy5wYXJhbWV0ZXJzKS5jYXRjaCgoKSA9PiB7IH0pO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnZpZXcpIHtcbiAgICAgIHRoaXMudmlld2VyLnNldFZpZXcodGhpcy52aWV3KS5jYXRjaCgoKSA9PiB7IH0pO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnZyY3ViZSkge1xuICAgICAgdGhpcy52aWV3ZXIuc2V0VnJjdWJlKHRoaXMudnJjdWJlKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy52cm9iamVjdCkge1xuICAgICAgdGhpcy52aWV3ZXIuc2V0VnJvYmplY3QodGhpcy52cm9iamVjdCk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmICghdGhpcy52aWV3ZXIpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlc1snc2NlbmUnXSAmJiBjaGFuZ2VzWydzY2VuZSddLmN1cnJlbnRWYWx1ZSkge1xuICAgICAgdGhpcy52aWV3ZXIubG9hZChjaGFuZ2VzWydzY2VuZSddLmN1cnJlbnRWYWx1ZSkuY2F0Y2goKCkgPT4geyB9KTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlc1snZW5jb2RlciddICYmIGNoYW5nZXNbJ2VuY29kZXInXS5jdXJyZW50VmFsdWUpIHtcbiAgICAgIHRoaXMudmlld2VyLnNldEVuY29kZXIoY2hhbmdlc1snZW5jb2RlciddLmN1cnJlbnRWYWx1ZSkuY2F0Y2goKCkgPT4geyB9KTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlc1sncGFyYW1ldGVycyddICYmIGNoYW5nZXNbJ3BhcmFtZXRlcnMnXS5jdXJyZW50VmFsdWUpIHtcbiAgICAgIHRoaXMudmlld2VyLnNldFBhcmFtZXRlcnMoY2hhbmdlc1sncGFyYW1ldGVycyddLmN1cnJlbnRWYWx1ZSkuY2F0Y2goKCkgPT4geyB9KTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlc1sndmlldyddICYmIGNoYW5nZXNbJ3ZpZXcnXS5jdXJyZW50VmFsdWUpIHtcbiAgICAgIHRoaXMudmlld2VyLnNldFZpZXcoY2hhbmdlc1sndmlldyddLmN1cnJlbnRWYWx1ZSkuY2F0Y2goKCkgPT4geyB9KTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlc1sndnJjdWJlJ10gJiYgY2hhbmdlc1sndnJjdWJlJ10uY3VycmVudFZhbHVlKSB7XG4gICAgICB0aGlzLnZpZXdlci5zZXRWcmN1YmUoY2hhbmdlc1sndnJjdWJlJ10uY3VycmVudFZhbHVlKTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlc1sndnJvYmplY3QnXSAmJiBjaGFuZ2VzWyd2cm9iamVjdCddLmN1cnJlbnRWYWx1ZSkge1xuICAgICAgdGhpcy52aWV3ZXIuc2V0VnJvYmplY3QoY2hhbmdlc1sndnJvYmplY3QnXS5jdXJyZW50VmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIHNuYXBzaG90KHR5cGU6IHN0cmluZywgcXVhbGl0eTogbnVtYmVyKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy52aWV3ZXI/LnNuYXBzaG90KHR5cGUsIHF1YWxpdHkpO1xuICB9XG5cbn1cbiJdfQ==
123
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctdmlld2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXZpZXdlci9zcmMvbGliL25nLXZpZXdlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQWMsWUFBWSxFQUFFLEtBQUssRUFBdUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVsSixPQUFPLEVBQW9DLE1BQU0sRUFBZ0MsTUFBTSxvQkFBb0IsQ0FBQzs7QUFRNUcsTUFBTSxPQUFPLGlCQUFpQjtJQXdCNUI7UUFWVSxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDakMsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3BDLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQy9CLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNqQyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDbkMsd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN6QywwQkFBcUIsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBS3JELENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRTtZQUNyRCxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDbkIsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLElBQUksSUFBSTtZQUNyQixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsSUFBSSxPQUFPO1lBQ3hCLE1BQU0sRUFBRTtnQkFDTixXQUFXLEVBQUUsQ0FBQyxHQUFHLElBQVcsRUFBRSxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENB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LE1BQU0sRUFBRSxRQUFRLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzlDLENBQUM7OzhHQXhHVSxpQkFBaUI7a0dBQWpCLGlCQUFpQixrbEJBSmxCLHdCQUF3QjsyRkFJdkIsaUJBQWlCO2tCQU43QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxVQUFVO29CQUNwQixRQUFRLEVBQUUsd0JBQXdCO29CQUNsQyxNQUFNLEVBQUUsQ0FBQywwQ0FBMEMsQ0FBQztpQkFDckQ7MEVBTVUsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFFSSxXQUFXO3NCQUFwQixNQUFNO2dCQUNHLGNBQWM7c0JBQXZCLE1BQU07Z0JBQ0csU0FBUztzQkFBbEIsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNO2dCQUNHLGFBQWE7c0JBQXRCLE1BQU07Z0JBQ0csbUJBQW1CO3NCQUE1QixNQUFNO2dCQUNHLHFCQUFxQjtzQkFBOUIsTUFBTTtnQkFFaUIsU0FBUztzQkFBaEMsU0FBUzt1QkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgU2ltcGxlQ2hhbmdlcywgVmlld0NoaWxkLCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRW5jb2RlciwgUGFyYW1ldGVycywgU2NlbmUsIFZpZXcsIFZpZXdlciwgV2lkZ2V0VlJDdWJlLCBXaWRnZXRWUk9iamVjdCB9IGZyb20gJ0BsdW1pc2NhcGhlL3ZpZXdlcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ05nVmlld2VyJyxcbiAgdGVtcGxhdGU6ICc8ZGl2ICNjb250YWluZXI+PC9kaXY+JyxcbiAgc3R5bGVzOiBbJzpob3N0IHsgZGlzcGxheTogZmxleDsgZmxleDogMSAwIGF1dG87IH0nXVxufSlcblxuZXhwb3J0IGNsYXNzIE5nVmlld2VyQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuXG4gIHB1YmxpYyB2aWV3ZXI6IFZpZXdlciB8IHVuZGVmaW5lZDtcblxuICBASW5wdXQoKSBzZXJ2ZXI6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgYXBpOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIGZpdDogJ2NvbnRhaW4nIHwgJ2NvdmVyJyB8ICdmaWxsJyB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgc2NlbmU6IFNjZW5lIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBlbmNvZGVyOiBFbmNvZGVyIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBwYXJhbWV0ZXJzOiBQYXJhbWV0ZXJzIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSB2aWV3OiBWaWV3IHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSB2cmN1YmU6IFBhcnRpYWw8V2lkZ2V0VlJDdWJlPiB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgdnJvYmplY3Q6IFBhcnRpYWw8V2lkZ2V0VlJPYmplY3Q+IHwgdW5kZWZpbmVkO1xuXG4gIEBPdXRwdXQoKSBvbkxvYWRTdGFydCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIG9uTG9hZFByb2dyZXNzID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgb25Mb2FkRW5kID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgb25Mb2FkRXJyb3IgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBvbkludGVyYWN0aW9uID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgb25WcmN1YmVJbnRlcmFjdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIG9uVnJvYmplY3RJbnRlcmFjdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAVmlld0NoaWxkKCdjb250YWluZXInKSBjb250YWluZXIhOiBFbGVtZW50UmVmO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMudmlld2VyID0gbmV3IFZpZXdlcih0aGlzLmNvbnRhaW5lci5uYXRpdmVFbGVtZW50LCB7XG4gICAgICBzZXJ2ZXI6IHRoaXMuc2VydmVyLFxuICAgICAgYXBpOiB0aGlzLmFwaSB8fCAndjEnLFxuICAgICAgZml0OiB0aGlzLmZpdCB8fCAnY292ZXInLFxuICAgICAgZXZlbnRzOiB7XG4gICAgICAgIG9uTG9hZFN0YXJ0OiAoLi4uYXJnczogYW55W10pID0+IHsgdGhpcy5vbkxvYWRTdGFydC5lbWl0KC4uLmFyZ3MpOyB9LFxuICAgICAgICBvbkxvYWRQcm9ncmVzczogKC4uLmFyZ3M6IGFueVtdKSA9PiB7IHRoaXMub25Mb2FkUHJvZ3Jlc3MuZW1pdCguLi5hcmdzKTsgfSxcbiAgICAgICAgb25Mb2FkRW5kOiAoLi4uYXJnczogYW55W10pID0+IHsgdGhpcy5vbkxvYWRFbmQuZW1pdCguLi5hcmdzKTsgfSxcbiAgICAgICAgb25Mb2FkRXJyb3I6ICguLi5hcmdzOiBhbnlbXSkgPT4geyB0aGlzLm9uTG9hZEVycm9yLmVtaXQoLi4uYXJncyk7IH0sXG4gICAgICAgIG9uSW50ZXJhY3Rpb246ICguLi5hcmdzOiBhbnlbXSkgPT4geyB0aGlzLm9uSW50ZXJhY3Rpb24uZW1pdCguLi5hcmdzKTsgfSxcbiAgICAgICAgb25WcmN1YmVJbnRlcmFjdGlvbjogKC4uLmFyZ3M6IGFueVtdKSA9PiB7IHRoaXMub25WcmN1YmVJbnRlcmFjdGlvbi5lbWl0KC4uLmFyZ3MpOyB9LFxuICAgICAgICBvblZyb2JqZWN0SW50ZXJhY3Rpb246ICguLi5hcmdzOiBhbnlbXSkgPT4geyB0aGlzLm9uVnJvYmplY3RJbnRlcmFjdGlvbi5lbWl0KC4uLmFyZ3MpOyB9LFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIGlmICh0aGlzWydzY2VuZSddKSB7XG4gICAgICB0aGlzLnZpZXdlci5sb2FkKHRoaXMuc2NlbmUpLmNhdGNoKCgpID0+IHsgfSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXNbJ2VuY29kZXInXSkge1xuICAgICAgdGhpcy52aWV3ZXIuc2V0RW5jb2Rlcih0aGlzLmVuY29kZXIpLmNhdGNoKCgpID0+IHsgfSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMucGFyYW1ldGVycykge1xuICAgICAgdGhpcy52aWV3ZXIuc2V0UGFyYW1ldGVycyh0aGlzLnBhcmFtZXRlcnMpLmNhdGNoKCgpID0+IHsgfSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudmlldykge1xuICAgICAgdGhpcy52aWV3ZXIuc2V0Vmlldyh0aGlzLnZpZXcpLmNhdGNoKCgpID0+IHsgfSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudnJjdWJlKSB7XG4gICAgICB0aGlzLnZpZXdlci5zZXRWcmN1YmUodGhpcy52cmN1YmUpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnZyb2JqZWN0KSB7XG4gICAgICB0aGlzLnZpZXdlci5zZXRWcm9iamVjdCh0aGlzLnZyb2JqZWN0KTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnZpZXdlcj8uZGVzdHJveSgpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmICghdGhpcy52aWV3ZXIpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlc1snc2NlbmUnXSAmJiBjaGFuZ2VzWydzY2VuZSddLmN1cnJlbnRWYWx1ZSkge1xuICAgICAgdGhpcy52aWV3ZXIubG9hZChjaGFuZ2VzWydzY2VuZSddLmN1cnJlbnRWYWx1ZSkuY2F0Y2goKCkgPT4geyB9KTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlc1snZW5jb2RlciddICYmIGNoYW5nZXNbJ2VuY29kZXInXS5jdXJyZW50VmFsdWUpIHtcbiAgICAgIHRoaXMudmlld2VyLnNldEVuY29kZXIoY2hhbmdlc1snZW5jb2RlciddLmN1cnJlbnRWYWx1ZSkuY2F0Y2goKCkgPT4geyB9KTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlc1sncGFyYW1ldGVycyddICYmIGNoYW5nZXNbJ3BhcmFtZXRlcnMnXS5jdXJyZW50VmFsdWUpIHtcbiAgICAgIHRoaXMudmlld2VyLnNldFBhcmFtZXRlcnMoY2hhbmdlc1sncGFyYW1ldGVycyddLmN1cnJlbnRWYWx1ZSkuY2F0Y2goKCkgPT4geyB9KTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlc1sndmlldyddICYmIGNoYW5nZXNbJ3ZpZXcnXS5jdXJyZW50VmFsdWUpIHtcbiAgICAgIHRoaXMudmlld2VyLnNldFZpZXcoY2hhbmdlc1sndmlldyddLmN1cnJlbnRWYWx1ZSkuY2F0Y2goKCkgPT4geyB9KTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlc1sndnJjdWJlJ10gJiYgY2hhbmdlc1sndnJjdWJlJ10uY3VycmVudFZhbHVlKSB7XG4gICAgICB0aGlzLnZpZXdlci5zZXRWcmN1YmUoY2hhbmdlc1sndnJjdWJlJ10uY3VycmVudFZhbHVlKTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlc1sndnJvYmplY3QnXSAmJiBjaGFuZ2VzWyd2cm9iamVjdCddLmN1cnJlbnRWYWx1ZSkge1xuICAgICAgdGhpcy52aWV3ZXIuc2V0VnJvYmplY3QoY2hhbmdlc1sndnJvYmplY3QnXS5jdXJyZW50VmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIHNuYXBzaG90KHR5cGU6IHN0cmluZywgcXVhbGl0eTogbnVtYmVyKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy52aWV3ZXI/LnNuYXBzaG90KHR5cGUsIHF1YWxpdHkpO1xuICB9XG5cbn1cbiJdfQ==
@@ -3,10 +3,10 @@ import { NgViewerComponent } from './ng-viewer.component';
3
3
  import * as i0 from "@angular/core";
4
4
  export class NgViewerModule {
5
5
  }
6
- NgViewerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: NgViewerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7
- NgViewerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: NgViewerModule, declarations: [NgViewerComponent], exports: [NgViewerComponent] });
8
- NgViewerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: NgViewerModule, imports: [[]] });
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: NgViewerModule, decorators: [{
6
+ NgViewerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: NgViewerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7
+ NgViewerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: NgViewerModule, declarations: [NgViewerComponent], exports: [NgViewerComponent] });
8
+ NgViewerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: NgViewerModule, imports: [[]] });
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: NgViewerModule, decorators: [{
10
10
  type: NgModule,
11
11
  args: [{
12
12
  declarations: [
@@ -46,6 +46,10 @@ class NgViewerComponent {
46
46
  this.viewer.setVrobject(this.vrobject);
47
47
  }
48
48
  }
49
+ ngOnDestroy() {
50
+ var _a;
51
+ (_a = this.viewer) === null || _a === void 0 ? void 0 : _a.destroy();
52
+ }
49
53
  ngOnChanges(changes) {
50
54
  if (!this.viewer) {
51
55
  return;
@@ -74,9 +78,9 @@ class NgViewerComponent {
74
78
  return (_a = this.viewer) === null || _a === void 0 ? void 0 : _a.snapshot(type, quality);
75
79
  }
76
80
  }
77
- NgViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: NgViewerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
78
- NgViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: NgViewerComponent, selector: "NgViewer", inputs: { server: "server", api: "api", fit: "fit", scene: "scene", encoder: "encoder", parameters: "parameters", view: "view", vrcube: "vrcube", vrobject: "vrobject" }, outputs: { onLoadStart: "onLoadStart", onLoadProgress: "onLoadProgress", onLoadEnd: "onLoadEnd", onLoadError: "onLoadError", onInteraction: "onInteraction", onVrcubeInteraction: "onVrcubeInteraction", onVrobjectInteraction: "onVrobjectInteraction" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesOnChanges: true, ngImport: i0, template: '<div #container></div>', isInline: true, styles: [":host{display:flex;flex:1 0 auto}\n"] });
79
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: NgViewerComponent, decorators: [{
81
+ NgViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: NgViewerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
82
+ NgViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: NgViewerComponent, selector: "NgViewer", inputs: { server: "server", api: "api", fit: "fit", scene: "scene", encoder: "encoder", parameters: "parameters", view: "view", vrcube: "vrcube", vrobject: "vrobject" }, outputs: { onLoadStart: "onLoadStart", onLoadProgress: "onLoadProgress", onLoadEnd: "onLoadEnd", onLoadError: "onLoadError", onInteraction: "onInteraction", onVrcubeInteraction: "onVrcubeInteraction", onVrobjectInteraction: "onVrobjectInteraction" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesOnChanges: true, ngImport: i0, template: '<div #container></div>', isInline: true, styles: [":host{display:flex;flex:1 0 auto}\n"] });
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: NgViewerComponent, decorators: [{
80
84
  type: Component,
81
85
  args: [{
82
86
  selector: 'NgViewer',
@@ -122,10 +126,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImpor
122
126
 
123
127
  class NgViewerModule {
124
128
  }
125
- NgViewerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: NgViewerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
126
- NgViewerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: NgViewerModule, declarations: [NgViewerComponent], exports: [NgViewerComponent] });
127
- NgViewerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: NgViewerModule, imports: [[]] });
128
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: NgViewerModule, decorators: [{
129
+ NgViewerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: NgViewerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
130
+ NgViewerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: NgViewerModule, declarations: [NgViewerComponent], exports: [NgViewerComponent] });
131
+ NgViewerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: NgViewerModule, imports: [[]] });
132
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: NgViewerModule, decorators: [{
129
133
  type: NgModule,
130
134
  args: [{
131
135
  declarations: [
@@ -1 +1 @@
1
- {"version":3,"file":"lumiscaphe-ng-viewer.mjs","sources":["../../../projects/ng-viewer/src/lib/ng-viewer.component.ts","../../../projects/ng-viewer/src/lib/ng-viewer.module.ts","../../../projects/ng-viewer/src/public-api.ts","../../../projects/ng-viewer/src/lumiscaphe-ng-viewer.ts"],"sourcesContent":["import { AfterViewInit, Component, ElementRef, EventEmitter, Input, OnChanges, SimpleChanges, ViewChild, Output } from '@angular/core';\n\nimport { Encoder, Parameters, Scene, View, Viewer, WidgetVRCube, WidgetVRObject } from '@lumiscaphe/viewer';\n\n@Component({\n selector: 'NgViewer',\n template: '<div #container></div>',\n styles: [':host { display: flex; flex: 1 0 auto; }']\n})\n\nexport class NgViewerComponent implements AfterViewInit, OnChanges {\n\n public viewer: Viewer | undefined;\n\n @Input() server: string | undefined;\n @Input() api: string | undefined;\n @Input() fit: 'contain' | 'cover' | 'fill' | undefined;\n @Input() scene: Scene | undefined;\n @Input() encoder: Encoder | undefined;\n @Input() parameters: Parameters | undefined;\n @Input() view: View | undefined;\n @Input() vrcube: Partial<WidgetVRCube> | undefined;\n @Input() vrobject: Partial<WidgetVRObject> | undefined;\n\n @Output() onLoadStart = new EventEmitter();\n @Output() onLoadProgress = new EventEmitter();\n @Output() onLoadEnd = new EventEmitter();\n @Output() onLoadError = new EventEmitter();\n @Output() onInteraction = new EventEmitter();\n @Output() onVrcubeInteraction = new EventEmitter();\n @Output() onVrobjectInteraction = new EventEmitter();\n\n @ViewChild('container') container!: ElementRef;\n\n constructor() {\n }\n\n ngAfterViewInit() {\n this.viewer = new Viewer(this.container.nativeElement, {\n server: this.server,\n api: this.api || 'v1',\n fit: this.fit || 'cover',\n events: {\n onLoadStart: (...args: any[]) => { this.onLoadStart.emit(...args); },\n onLoadProgress: (...args: any[]) => { this.onLoadProgress.emit(...args); },\n onLoadEnd: (...args: any[]) => { this.onLoadEnd.emit(...args); },\n onLoadError: (...args: any[]) => { this.onLoadError.emit(...args); },\n onInteraction: (...args: any[]) => { this.onInteraction.emit(...args); },\n onVrcubeInteraction: (...args: any[]) => { this.onVrcubeInteraction.emit(...args); },\n onVrobjectInteraction: (...args: any[]) => { this.onVrobjectInteraction.emit(...args); },\n },\n });\n\n if (this['scene']) {\n this.viewer.load(this.scene).catch(() => { });\n }\n\n if (this['encoder']) {\n this.viewer.setEncoder(this.encoder).catch(() => { });\n }\n\n if (this.parameters) {\n this.viewer.setParameters(this.parameters).catch(() => { });\n }\n\n if (this.view) {\n this.viewer.setView(this.view).catch(() => { });\n }\n\n if (this.vrcube) {\n this.viewer.setVrcube(this.vrcube);\n }\n\n if (this.vrobject) {\n this.viewer.setVrobject(this.vrobject);\n }\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (!this.viewer) {\n return;\n }\n\n if (changes['scene'] && changes['scene'].currentValue) {\n this.viewer.load(changes['scene'].currentValue).catch(() => { });\n }\n\n if (changes['encoder'] && changes['encoder'].currentValue) {\n this.viewer.setEncoder(changes['encoder'].currentValue).catch(() => { });\n }\n\n if (changes['parameters'] && changes['parameters'].currentValue) {\n this.viewer.setParameters(changes['parameters'].currentValue).catch(() => { });\n }\n\n if (changes['view'] && changes['view'].currentValue) {\n this.viewer.setView(changes['view'].currentValue).catch(() => { });\n }\n\n if (changes['vrcube'] && changes['vrcube'].currentValue) {\n this.viewer.setVrcube(changes['vrcube'].currentValue);\n }\n\n if (changes['vrobject'] && changes['vrobject'].currentValue) {\n this.viewer.setVrobject(changes['vrobject'].currentValue);\n }\n }\n\n snapshot(type: string, quality: number): string | undefined {\n return this.viewer?.snapshot(type, quality);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { NgViewerComponent } from './ng-viewer.component';\n\n@NgModule({\n declarations: [\n NgViewerComponent\n ],\n imports: [\n ],\n exports: [\n NgViewerComponent\n ]\n})\n\nexport class NgViewerModule { }\n","/*\n * Public API Surface of ng-viewer\n */\n\nexport * from './lib/ng-viewer.component';\nexport * from './lib/ng-viewer.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;MAUa,iBAAiB;IAwB5B;QAVU,gBAAW,GAAG,IAAI,YAAY,EAAE,CAAC;QACjC,mBAAc,GAAG,IAAI,YAAY,EAAE,CAAC;QACpC,cAAS,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,gBAAW,GAAG,IAAI,YAAY,EAAE,CAAC;QACjC,kBAAa,GAAG,IAAI,YAAY,EAAE,CAAC;QACnC,wBAAmB,GAAG,IAAI,YAAY,EAAE,CAAC;QACzC,0BAAqB,GAAG,IAAI,YAAY,EAAE,CAAC;KAKpD;IAED,eAAe;QACb,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE;YACrD,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,IAAI;YACrB,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,OAAO;YACxB,MAAM,EAAE;gBACN,WAAW,EAAE,CAAC,GAAG,IAAW,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE;gBACpE,cAAc,EAAE,CAAC,GAAG,IAAW,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE;gBAC1E,SAAS,EAAE,CAAC,GAAG,IAAW,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE;gBAChE,WAAW,EAAE,CAAC,GAAG,IAAW,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE;gBACpE,aAAa,EAAE,CAAC,GAAG,IAAW,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE;gBACxE,mBAAmB,EAAE,CAAC,GAAG,IAAW,OAAO,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE;gBACpF,qBAAqB,EAAE,CAAC,GAAG,IAAW,OAAO,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE;aACzF;SACF,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE;YACjB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;SAC/C;QAED,IAAI,IAAI,CAAC,SAAS,CAAC,EAAE;YACnB,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;SACvD;QAED,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;SAC7D;QAED,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;SACjD;QAED,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SACpC;QAED,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SACxC;KACF;IAED,WAAW,CAAC,OAAsB;QAChC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,OAAO;SACR;QAED,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE;YACrD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;SAClE;QAED,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC,YAAY,EAAE;YACzD,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;SAC1E;QAED,IAAI,OAAO,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC,YAAY,EAAE;YAC/D,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;SAChF;QAED,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,YAAY,EAAE;YACnD,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;SACpE;QAED,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC,YAAY,EAAE;YACvD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC;SACvD;QAED,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC,YAAY,EAAE;YAC3D,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,CAAC;SAC3D;KACF;IAED,QAAQ,CAAC,IAAY,EAAE,OAAe;;QACpC,OAAO,MAAA,IAAI,CAAC,MAAM,0CAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;KAC7C;;8GApGU,iBAAiB;kGAAjB,iBAAiB,klBAJlB,wBAAwB;2FAIvB,iBAAiB;kBAN7B,SAAS;mBAAC;oBACT,QAAQ,EAAE,UAAU;oBACpB,QAAQ,EAAE,wBAAwB;oBAClC,MAAM,EAAE,CAAC,0CAA0C,CAAC;iBACrD;0EAMU,MAAM;sBAAd,KAAK;gBACG,GAAG;sBAAX,KAAK;gBACG,GAAG;sBAAX,KAAK;gBACG,KAAK;sBAAb,KAAK;gBACG,OAAO;sBAAf,KAAK;gBACG,UAAU;sBAAlB,KAAK;gBACG,IAAI;sBAAZ,KAAK;gBACG,MAAM;sBAAd,KAAK;gBACG,QAAQ;sBAAhB,KAAK;gBAEI,WAAW;sBAApB,MAAM;gBACG,cAAc;sBAAvB,MAAM;gBACG,SAAS;sBAAlB,MAAM;gBACG,WAAW;sBAApB,MAAM;gBACG,aAAa;sBAAtB,MAAM;gBACG,mBAAmB;sBAA5B,MAAM;gBACG,qBAAqB;sBAA9B,MAAM;gBAEiB,SAAS;sBAAhC,SAAS;uBAAC,WAAW;;;MClBX,cAAc;;2GAAd,cAAc;4GAAd,cAAc,iBATvB,iBAAiB,aAKjB,iBAAiB;4GAIR,cAAc,YAPhB,EACR;2FAMU,cAAc;kBAX1B,QAAQ;mBAAC;oBACR,YAAY,EAAE;wBACZ,iBAAiB;qBAClB;oBACD,OAAO,EAAE,EACR;oBACD,OAAO,EAAE;wBACP,iBAAiB;qBAClB;iBACF;;;ACZD;;;;ACAA;;;;;;"}
1
+ {"version":3,"file":"lumiscaphe-ng-viewer.mjs","sources":["../../../projects/ng-viewer/src/lib/ng-viewer.component.ts","../../../projects/ng-viewer/src/lib/ng-viewer.module.ts","../../../projects/ng-viewer/src/public-api.ts","../../../projects/ng-viewer/src/lumiscaphe-ng-viewer.ts"],"sourcesContent":["import { AfterViewInit, Component, ElementRef, EventEmitter, Input, OnChanges, OnDestroy, SimpleChanges, ViewChild, Output } from '@angular/core';\n\nimport { Encoder, Parameters, Scene, View, Viewer, WidgetVRCube, WidgetVRObject } from '@lumiscaphe/viewer';\n\n@Component({\n selector: 'NgViewer',\n template: '<div #container></div>',\n styles: [':host { display: flex; flex: 1 0 auto; }']\n})\n\nexport class NgViewerComponent implements AfterViewInit, OnChanges, OnDestroy {\n\n public viewer: Viewer | undefined;\n\n @Input() server: string | undefined;\n @Input() api: string | undefined;\n @Input() fit: 'contain' | 'cover' | 'fill' | undefined;\n @Input() scene: Scene | undefined;\n @Input() encoder: Encoder | undefined;\n @Input() parameters: Parameters | undefined;\n @Input() view: View | undefined;\n @Input() vrcube: Partial<WidgetVRCube> | undefined;\n @Input() vrobject: Partial<WidgetVRObject> | undefined;\n\n @Output() onLoadStart = new EventEmitter();\n @Output() onLoadProgress = new EventEmitter();\n @Output() onLoadEnd = new EventEmitter();\n @Output() onLoadError = new EventEmitter();\n @Output() onInteraction = new EventEmitter();\n @Output() onVrcubeInteraction = new EventEmitter();\n @Output() onVrobjectInteraction = new EventEmitter();\n\n @ViewChild('container') container!: ElementRef;\n\n constructor() {\n }\n\n ngAfterViewInit() {\n this.viewer = new Viewer(this.container.nativeElement, {\n server: this.server,\n api: this.api || 'v1',\n fit: this.fit || 'cover',\n events: {\n onLoadStart: (...args: any[]) => { this.onLoadStart.emit(...args); },\n onLoadProgress: (...args: any[]) => { this.onLoadProgress.emit(...args); },\n onLoadEnd: (...args: any[]) => { this.onLoadEnd.emit(...args); },\n onLoadError: (...args: any[]) => { this.onLoadError.emit(...args); },\n onInteraction: (...args: any[]) => { this.onInteraction.emit(...args); },\n onVrcubeInteraction: (...args: any[]) => { this.onVrcubeInteraction.emit(...args); },\n onVrobjectInteraction: (...args: any[]) => { this.onVrobjectInteraction.emit(...args); },\n },\n });\n\n if (this['scene']) {\n this.viewer.load(this.scene).catch(() => { });\n }\n\n if (this['encoder']) {\n this.viewer.setEncoder(this.encoder).catch(() => { });\n }\n\n if (this.parameters) {\n this.viewer.setParameters(this.parameters).catch(() => { });\n }\n\n if (this.view) {\n this.viewer.setView(this.view).catch(() => { });\n }\n\n if (this.vrcube) {\n this.viewer.setVrcube(this.vrcube);\n }\n\n if (this.vrobject) {\n this.viewer.setVrobject(this.vrobject);\n }\n }\n\n ngOnDestroy(): void {\n this.viewer?.destroy();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (!this.viewer) {\n return;\n }\n\n if (changes['scene'] && changes['scene'].currentValue) {\n this.viewer.load(changes['scene'].currentValue).catch(() => { });\n }\n\n if (changes['encoder'] && changes['encoder'].currentValue) {\n this.viewer.setEncoder(changes['encoder'].currentValue).catch(() => { });\n }\n\n if (changes['parameters'] && changes['parameters'].currentValue) {\n this.viewer.setParameters(changes['parameters'].currentValue).catch(() => { });\n }\n\n if (changes['view'] && changes['view'].currentValue) {\n this.viewer.setView(changes['view'].currentValue).catch(() => { });\n }\n\n if (changes['vrcube'] && changes['vrcube'].currentValue) {\n this.viewer.setVrcube(changes['vrcube'].currentValue);\n }\n\n if (changes['vrobject'] && changes['vrobject'].currentValue) {\n this.viewer.setVrobject(changes['vrobject'].currentValue);\n }\n }\n\n snapshot(type: string, quality: number): string | undefined {\n return this.viewer?.snapshot(type, quality);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { NgViewerComponent } from './ng-viewer.component';\n\n@NgModule({\n declarations: [\n NgViewerComponent\n ],\n imports: [\n ],\n exports: [\n NgViewerComponent\n ]\n})\n\nexport class NgViewerModule { }\n","/*\n * Public API Surface of ng-viewer\n */\n\nexport * from './lib/ng-viewer.component';\nexport * from './lib/ng-viewer.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -46,6 +46,9 @@ class NgViewerComponent {
46
46
  this.viewer.setVrobject(this.vrobject);
47
47
  }
48
48
  }
49
+ ngOnDestroy() {
50
+ this.viewer?.destroy();
51
+ }
49
52
  ngOnChanges(changes) {
50
53
  if (!this.viewer) {
51
54
  return;
@@ -73,9 +76,9 @@ class NgViewerComponent {
73
76
  return this.viewer?.snapshot(type, quality);
74
77
  }
75
78
  }
76
- NgViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: NgViewerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
77
- NgViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.2", type: NgViewerComponent, selector: "NgViewer", inputs: { server: "server", api: "api", fit: "fit", scene: "scene", encoder: "encoder", parameters: "parameters", view: "view", vrcube: "vrcube", vrobject: "vrobject" }, outputs: { onLoadStart: "onLoadStart", onLoadProgress: "onLoadProgress", onLoadEnd: "onLoadEnd", onLoadError: "onLoadError", onInteraction: "onInteraction", onVrcubeInteraction: "onVrcubeInteraction", onVrobjectInteraction: "onVrobjectInteraction" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesOnChanges: true, ngImport: i0, template: '<div #container></div>', isInline: true, styles: [":host{display:flex;flex:1 0 auto}\n"] });
78
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: NgViewerComponent, decorators: [{
79
+ NgViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: NgViewerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
80
+ NgViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: NgViewerComponent, selector: "NgViewer", inputs: { server: "server", api: "api", fit: "fit", scene: "scene", encoder: "encoder", parameters: "parameters", view: "view", vrcube: "vrcube", vrobject: "vrobject" }, outputs: { onLoadStart: "onLoadStart", onLoadProgress: "onLoadProgress", onLoadEnd: "onLoadEnd", onLoadError: "onLoadError", onInteraction: "onInteraction", onVrcubeInteraction: "onVrcubeInteraction", onVrobjectInteraction: "onVrobjectInteraction" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesOnChanges: true, ngImport: i0, template: '<div #container></div>', isInline: true, styles: [":host{display:flex;flex:1 0 auto}\n"] });
81
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: NgViewerComponent, decorators: [{
79
82
  type: Component,
80
83
  args: [{
81
84
  selector: 'NgViewer',
@@ -121,10 +124,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImpor
121
124
 
122
125
  class NgViewerModule {
123
126
  }
124
- NgViewerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: NgViewerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
125
- NgViewerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: NgViewerModule, declarations: [NgViewerComponent], exports: [NgViewerComponent] });
126
- NgViewerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: NgViewerModule, imports: [[]] });
127
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImport: i0, type: NgViewerModule, decorators: [{
127
+ NgViewerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: NgViewerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
128
+ NgViewerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: NgViewerModule, declarations: [NgViewerComponent], exports: [NgViewerComponent] });
129
+ NgViewerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: NgViewerModule, imports: [[]] });
130
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: NgViewerModule, decorators: [{
128
131
  type: NgModule,
129
132
  args: [{
130
133
  declarations: [
@@ -1 +1 @@
1
- {"version":3,"file":"lumiscaphe-ng-viewer.mjs","sources":["../../../projects/ng-viewer/src/lib/ng-viewer.component.ts","../../../projects/ng-viewer/src/lib/ng-viewer.module.ts","../../../projects/ng-viewer/src/public-api.ts","../../../projects/ng-viewer/src/lumiscaphe-ng-viewer.ts"],"sourcesContent":["import { AfterViewInit, Component, ElementRef, EventEmitter, Input, OnChanges, SimpleChanges, ViewChild, Output } from '@angular/core';\n\nimport { Encoder, Parameters, Scene, View, Viewer, WidgetVRCube, WidgetVRObject } from '@lumiscaphe/viewer';\n\n@Component({\n selector: 'NgViewer',\n template: '<div #container></div>',\n styles: [':host { display: flex; flex: 1 0 auto; }']\n})\n\nexport class NgViewerComponent implements AfterViewInit, OnChanges {\n\n public viewer: Viewer | undefined;\n\n @Input() server: string | undefined;\n @Input() api: string | undefined;\n @Input() fit: 'contain' | 'cover' | 'fill' | undefined;\n @Input() scene: Scene | undefined;\n @Input() encoder: Encoder | undefined;\n @Input() parameters: Parameters | undefined;\n @Input() view: View | undefined;\n @Input() vrcube: Partial<WidgetVRCube> | undefined;\n @Input() vrobject: Partial<WidgetVRObject> | undefined;\n\n @Output() onLoadStart = new EventEmitter();\n @Output() onLoadProgress = new EventEmitter();\n @Output() onLoadEnd = new EventEmitter();\n @Output() onLoadError = new EventEmitter();\n @Output() onInteraction = new EventEmitter();\n @Output() onVrcubeInteraction = new EventEmitter();\n @Output() onVrobjectInteraction = new EventEmitter();\n\n @ViewChild('container') container!: ElementRef;\n\n constructor() {\n }\n\n ngAfterViewInit() {\n this.viewer = new Viewer(this.container.nativeElement, {\n server: this.server,\n api: this.api || 'v1',\n fit: this.fit || 'cover',\n events: {\n onLoadStart: (...args: any[]) => { this.onLoadStart.emit(...args); },\n onLoadProgress: (...args: any[]) => { this.onLoadProgress.emit(...args); },\n onLoadEnd: (...args: any[]) => { this.onLoadEnd.emit(...args); },\n onLoadError: (...args: any[]) => { this.onLoadError.emit(...args); },\n onInteraction: (...args: any[]) => { this.onInteraction.emit(...args); },\n onVrcubeInteraction: (...args: any[]) => { this.onVrcubeInteraction.emit(...args); },\n onVrobjectInteraction: (...args: any[]) => { this.onVrobjectInteraction.emit(...args); },\n },\n });\n\n if (this['scene']) {\n this.viewer.load(this.scene).catch(() => { });\n }\n\n if (this['encoder']) {\n this.viewer.setEncoder(this.encoder).catch(() => { });\n }\n\n if (this.parameters) {\n this.viewer.setParameters(this.parameters).catch(() => { });\n }\n\n if (this.view) {\n this.viewer.setView(this.view).catch(() => { });\n }\n\n if (this.vrcube) {\n this.viewer.setVrcube(this.vrcube);\n }\n\n if (this.vrobject) {\n this.viewer.setVrobject(this.vrobject);\n }\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (!this.viewer) {\n return;\n }\n\n if (changes['scene'] && changes['scene'].currentValue) {\n this.viewer.load(changes['scene'].currentValue).catch(() => { });\n }\n\n if (changes['encoder'] && changes['encoder'].currentValue) {\n this.viewer.setEncoder(changes['encoder'].currentValue).catch(() => { });\n }\n\n if (changes['parameters'] && changes['parameters'].currentValue) {\n this.viewer.setParameters(changes['parameters'].currentValue).catch(() => { });\n }\n\n if (changes['view'] && changes['view'].currentValue) {\n this.viewer.setView(changes['view'].currentValue).catch(() => { });\n }\n\n if (changes['vrcube'] && changes['vrcube'].currentValue) {\n this.viewer.setVrcube(changes['vrcube'].currentValue);\n }\n\n if (changes['vrobject'] && changes['vrobject'].currentValue) {\n this.viewer.setVrobject(changes['vrobject'].currentValue);\n }\n }\n\n snapshot(type: string, quality: number): string | undefined {\n return this.viewer?.snapshot(type, quality);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { NgViewerComponent } from './ng-viewer.component';\n\n@NgModule({\n declarations: [\n NgViewerComponent\n ],\n imports: [\n ],\n exports: [\n NgViewerComponent\n ]\n})\n\nexport class NgViewerModule { }\n","/*\n * Public API Surface of ng-viewer\n */\n\nexport * from './lib/ng-viewer.component';\nexport * from './lib/ng-viewer.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lumiscaphe-ng-viewer.mjs","sources":["../../../projects/ng-viewer/src/lib/ng-viewer.component.ts","../../../projects/ng-viewer/src/lib/ng-viewer.module.ts","../../../projects/ng-viewer/src/public-api.ts","../../../projects/ng-viewer/src/lumiscaphe-ng-viewer.ts"],"sourcesContent":["import { AfterViewInit, Component, ElementRef, EventEmitter, Input, OnChanges, OnDestroy, SimpleChanges, ViewChild, Output } from '@angular/core';\n\nimport { Encoder, Parameters, Scene, View, Viewer, WidgetVRCube, WidgetVRObject } from '@lumiscaphe/viewer';\n\n@Component({\n selector: 'NgViewer',\n template: '<div #container></div>',\n styles: [':host { display: flex; flex: 1 0 auto; }']\n})\n\nexport class NgViewerComponent implements AfterViewInit, OnChanges, OnDestroy {\n\n public viewer: Viewer | undefined;\n\n @Input() server: string | undefined;\n @Input() api: string | undefined;\n @Input() fit: 'contain' | 'cover' | 'fill' | undefined;\n @Input() scene: Scene | undefined;\n @Input() encoder: Encoder | undefined;\n @Input() parameters: Parameters | undefined;\n @Input() view: View | undefined;\n @Input() vrcube: Partial<WidgetVRCube> | undefined;\n @Input() vrobject: Partial<WidgetVRObject> | undefined;\n\n @Output() onLoadStart = new EventEmitter();\n @Output() onLoadProgress = new EventEmitter();\n @Output() onLoadEnd = new EventEmitter();\n @Output() onLoadError = new EventEmitter();\n @Output() onInteraction = new EventEmitter();\n @Output() onVrcubeInteraction = new EventEmitter();\n @Output() onVrobjectInteraction = new EventEmitter();\n\n @ViewChild('container') container!: ElementRef;\n\n constructor() {\n }\n\n ngAfterViewInit() {\n this.viewer = new Viewer(this.container.nativeElement, {\n server: this.server,\n api: this.api || 'v1',\n fit: this.fit || 'cover',\n events: {\n onLoadStart: (...args: any[]) => { this.onLoadStart.emit(...args); },\n onLoadProgress: (...args: any[]) => { this.onLoadProgress.emit(...args); },\n onLoadEnd: (...args: any[]) => { this.onLoadEnd.emit(...args); },\n onLoadError: (...args: any[]) => { this.onLoadError.emit(...args); },\n onInteraction: (...args: any[]) => { this.onInteraction.emit(...args); },\n onVrcubeInteraction: (...args: any[]) => { this.onVrcubeInteraction.emit(...args); },\n onVrobjectInteraction: (...args: any[]) => { this.onVrobjectInteraction.emit(...args); },\n },\n });\n\n if (this['scene']) {\n this.viewer.load(this.scene).catch(() => { });\n }\n\n if (this['encoder']) {\n this.viewer.setEncoder(this.encoder).catch(() => { });\n }\n\n if (this.parameters) {\n this.viewer.setParameters(this.parameters).catch(() => { });\n }\n\n if (this.view) {\n this.viewer.setView(this.view).catch(() => { });\n }\n\n if (this.vrcube) {\n this.viewer.setVrcube(this.vrcube);\n }\n\n if (this.vrobject) {\n this.viewer.setVrobject(this.vrobject);\n }\n }\n\n ngOnDestroy(): void {\n this.viewer?.destroy();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (!this.viewer) {\n return;\n }\n\n if (changes['scene'] && changes['scene'].currentValue) {\n this.viewer.load(changes['scene'].currentValue).catch(() => { });\n }\n\n if (changes['encoder'] && changes['encoder'].currentValue) {\n this.viewer.setEncoder(changes['encoder'].currentValue).catch(() => { });\n }\n\n if (changes['parameters'] && changes['parameters'].currentValue) {\n this.viewer.setParameters(changes['parameters'].currentValue).catch(() => { });\n }\n\n if (changes['view'] && changes['view'].currentValue) {\n this.viewer.setView(changes['view'].currentValue).catch(() => { });\n }\n\n if (changes['vrcube'] && changes['vrcube'].currentValue) {\n this.viewer.setVrcube(changes['vrcube'].currentValue);\n }\n\n if (changes['vrobject'] && changes['vrobject'].currentValue) {\n this.viewer.setVrobject(changes['vrobject'].currentValue);\n }\n }\n\n snapshot(type: string, quality: number): string | undefined {\n return this.viewer?.snapshot(type, quality);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { NgViewerComponent } from './ng-viewer.component';\n\n@NgModule({\n declarations: [\n NgViewerComponent\n ],\n imports: [\n ],\n exports: [\n NgViewerComponent\n ]\n})\n\nexport class NgViewerModule { }\n","/*\n * Public API Surface of ng-viewer\n */\n\nexport * from './lib/ng-viewer.component';\nexport * from './lib/ng-viewer.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import { AfterViewInit, ElementRef, EventEmitter, OnChanges, SimpleChanges } from '@angular/core';
1
+ import { AfterViewInit, ElementRef, EventEmitter, OnChanges, OnDestroy, SimpleChanges } from '@angular/core';
2
2
  import { Encoder, Parameters, Scene, View, Viewer, WidgetVRCube, WidgetVRObject } from '@lumiscaphe/viewer';
3
3
  import * as i0 from "@angular/core";
4
- export declare class NgViewerComponent implements AfterViewInit, OnChanges {
4
+ export declare class NgViewerComponent implements AfterViewInit, OnChanges, OnDestroy {
5
5
  viewer: Viewer | undefined;
6
6
  server: string | undefined;
7
7
  api: string | undefined;
@@ -22,6 +22,7 @@ export declare class NgViewerComponent implements AfterViewInit, OnChanges {
22
22
  container: ElementRef;
23
23
  constructor();
24
24
  ngAfterViewInit(): void;
25
+ ngOnDestroy(): void;
25
26
  ngOnChanges(changes: SimpleChanges): void;
26
27
  snapshot(type: string, quality: number): string | undefined;
27
28
  static ɵfac: i0.ɵɵFactoryDeclaration<NgViewerComponent, never>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lumiscaphe/ng-viewer",
3
- "version": "4.0.0",
3
+ "version": "4.0.1",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0",