ngx-rendering-service-lib 0.0.67015 → 0.0.67017

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 (20) hide show
  1. package/fesm2022/{ngx-rendering-service-lib-audio.component-dtVPPH67.mjs → ngx-rendering-service-lib-audio.component-BI8zkXS8.mjs} +2 -2
  2. package/fesm2022/{ngx-rendering-service-lib-audio.component-dtVPPH67.mjs.map → ngx-rendering-service-lib-audio.component-BI8zkXS8.mjs.map} +1 -1
  3. package/fesm2022/{ngx-rendering-service-lib-binder.component-BolASRH8.mjs → ngx-rendering-service-lib-binder.component-CPy79_k5.mjs} +2 -2
  4. package/fesm2022/{ngx-rendering-service-lib-binder.component-BolASRH8.mjs.map → ngx-rendering-service-lib-binder.component-CPy79_k5.mjs.map} +1 -1
  5. package/fesm2022/{ngx-rendering-service-lib-ddb.component-CuuLS6EN.mjs → ngx-rendering-service-lib-ddb.component-BWZNPHOv.mjs} +2 -2
  6. package/fesm2022/{ngx-rendering-service-lib-ddb.component-CuuLS6EN.mjs.map → ngx-rendering-service-lib-ddb.component-BWZNPHOv.mjs.map} +1 -1
  7. package/fesm2022/{ngx-rendering-service-lib-default.component-De3XA1lH.mjs → ngx-rendering-service-lib-default.component-Bbli89uc.mjs} +2 -2
  8. package/fesm2022/{ngx-rendering-service-lib-default.component-De3XA1lH.mjs.map → ngx-rendering-service-lib-default.component-Bbli89uc.mjs.map} +1 -1
  9. package/fesm2022/{ngx-rendering-service-lib-error.component-CKWsVo_o.mjs → ngx-rendering-service-lib-error.component-DWFFoJ6U.mjs} +4 -4
  10. package/fesm2022/{ngx-rendering-service-lib-error.component-CKWsVo_o.mjs.map → ngx-rendering-service-lib-error.component-DWFFoJ6U.mjs.map} +1 -1
  11. package/fesm2022/{ngx-rendering-service-lib-h5p.component-Bj4BDE4s.mjs → ngx-rendering-service-lib-h5p.component-kPdwu84f.mjs} +2 -2
  12. package/fesm2022/{ngx-rendering-service-lib-h5p.component-Bj4BDE4s.mjs.map → ngx-rendering-service-lib-h5p.component-kPdwu84f.mjs.map} +1 -1
  13. package/fesm2022/{ngx-rendering-service-lib-moodle.component-BMFvTQkb.mjs → ngx-rendering-service-lib-moodle.component-DqUmZEuZ.mjs} +2 -2
  14. package/fesm2022/{ngx-rendering-service-lib-moodle.component-BMFvTQkb.mjs.map → ngx-rendering-service-lib-moodle.component-DqUmZEuZ.mjs.map} +1 -1
  15. package/fesm2022/{ngx-rendering-service-lib-ngx-rendering-service-lib-DPe3VOz2.mjs → ngx-rendering-service-lib-ngx-rendering-service-lib-j_TCSPd-.mjs} +38 -36
  16. package/fesm2022/ngx-rendering-service-lib-ngx-rendering-service-lib-j_TCSPd-.mjs.map +1 -0
  17. package/fesm2022/ngx-rendering-service-lib.mjs +1 -1
  18. package/lib/render.component.d.ts +4 -4
  19. package/package.json +1 -1
  20. package/fesm2022/ngx-rendering-service-lib-ngx-rendering-service-lib-DPe3VOz2.mjs.map +0 -1
@@ -1,6 +1,6 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { signal, Input, Component } from '@angular/core';
3
- import { T as TrackingService, a as RenderingModule, A as AssetLinkPipe } from './ngx-rendering-service-lib-ngx-rendering-service-lib-DPe3VOz2.mjs';
3
+ import { T as TrackingService, a as RenderingModule, A as AssetLinkPipe } from './ngx-rendering-service-lib-ngx-rendering-service-lib-j_TCSPd-.mjs';
4
4
  import { FormsModule } from '@angular/forms';
5
5
  import * as i2 from '@angular/common';
6
6
 
@@ -38,4 +38,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
38
38
  }] } });
39
39
 
40
40
  export { AudioComponent };
41
- //# sourceMappingURL=ngx-rendering-service-lib-audio.component-dtVPPH67.mjs.map
41
+ //# sourceMappingURL=ngx-rendering-service-lib-audio.component-BI8zkXS8.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-rendering-service-lib-audio.component-dtVPPH67.mjs","sources":["../../src/lib/module/audio/audio.component.ts","../../src/lib/module/audio/audio.component.html"],"sourcesContent":["import {AfterViewInit, Component, ElementRef, Input, signal, ViewChild} from '@angular/core';\nimport {RenderingModule} from '../../rendering.module';\nimport {RenderModule} from '../RenderModule';\nimport {Node} from 'ngx-edu-sharing-api';\nimport {FormsModule} from '@angular/forms';\nimport {RenderData, AssetStateItem} from '../../dto/RenderData';\nimport {TrackingService} from '../../../tracking.service';\n\n@Component({\n selector: 'rs-module-audio',\n imports: [\n RenderingModule,\n FormsModule,\n ],\n templateUrl: './audio.component.html',\n styleUrl: './audio.component.scss'\n})\nexport class AudioComponent implements RenderModule, AfterViewInit{\n @Input() data: RenderData | undefined;\n @Input() node: Node | undefined;\n previewUrl: String = ''\n private hasBeenPlayed: Boolean = false\n activeObject = signal<AssetStateItem | undefined>(undefined);\n\n constructor(private trackingService: TrackingService) { }\n\n ngAfterViewInit(): void {\n this.previewUrl = this.node?.preview?.url ?? ''\n const allFinishedItems = this.data?.items?.filter(item => item.link !== '')\n this.activeObject.set(allFinishedItems?.[0]);\n }\n\n onVideoPlay(): void {\n if (!this.hasBeenPlayed) {\n this.trackingService.trackPlayed(this.node?.ref.id!!, this.node?.ref.repo!!)\n }\n this.hasBeenPlayed = true\n }\n}\n","<div class=\"audio-wrapper\" *ngIf=\"activeObject()\">\n <video\n [poster]=\"previewUrl\"\n controls\n (play)=\"onVideoPlay()\"\n >\n <source [src]=\"activeObject()?.link | rsAssetLink\" />\n </video>\n</div>\n\n\n"],"names":["i1.TrackingService"],"mappings":";;;;;;MAiBa,cAAc,CAAA;AAOzB,IAAA,WAAA,CAAoB,eAAgC,EAAA;QAAhC,IAAe,CAAA,eAAA,GAAf,eAAe;QAJnC,IAAU,CAAA,UAAA,GAAW,EAAE;QACf,IAAa,CAAA,aAAA,GAAY,KAAK;AACtC,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAA6B,SAAS,CAAC;;IAI5D,eAAe,GAAA;AACb,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE;QAC/C,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC;QAC3E,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC;;IAG9C,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;YACvB,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,EAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,IAAM,CAAC;;AAE9E,QAAA,IAAI,CAAC,aAAa,GAAG,IAAI;;+GAnBhB,cAAc,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,eAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAd,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,cAAc,ECjB3B,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,uOAWA,EDAQ,MAAA,EAAA,CAAA,gIAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,eAAe,8LACf,WAAW,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAKN,cAAc,EAAA,UAAA,EAAA,CAAA;kBAT1B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,EAClB,OAAA,EAAA;wBACL,eAAe;wBACf,WAAW;AACd,qBAAA,EAAA,QAAA,EAAA,uOAAA,EAAA,MAAA,EAAA,CAAA,gIAAA,CAAA,EAAA;iFAKM,IAAI,EAAA,CAAA;sBAAZ;gBACQ,IAAI,EAAA,CAAA;sBAAZ;;;;;"}
1
+ {"version":3,"file":"ngx-rendering-service-lib-audio.component-BI8zkXS8.mjs","sources":["../../src/lib/module/audio/audio.component.ts","../../src/lib/module/audio/audio.component.html"],"sourcesContent":["import {AfterViewInit, Component, ElementRef, Input, signal, ViewChild} from '@angular/core';\nimport {RenderingModule} from '../../rendering.module';\nimport {RenderModule} from '../RenderModule';\nimport {Node} from 'ngx-edu-sharing-api';\nimport {FormsModule} from '@angular/forms';\nimport {RenderData, AssetStateItem} from '../../dto/RenderData';\nimport {TrackingService} from '../../../tracking.service';\n\n@Component({\n selector: 'rs-module-audio',\n imports: [\n RenderingModule,\n FormsModule,\n ],\n templateUrl: './audio.component.html',\n styleUrl: './audio.component.scss'\n})\nexport class AudioComponent implements RenderModule, AfterViewInit{\n @Input() data: RenderData | undefined;\n @Input() node: Node | undefined;\n previewUrl: String = ''\n private hasBeenPlayed: Boolean = false\n activeObject = signal<AssetStateItem | undefined>(undefined);\n\n constructor(private trackingService: TrackingService) { }\n\n ngAfterViewInit(): void {\n this.previewUrl = this.node?.preview?.url ?? ''\n const allFinishedItems = this.data?.items?.filter(item => item.link !== '')\n this.activeObject.set(allFinishedItems?.[0]);\n }\n\n onVideoPlay(): void {\n if (!this.hasBeenPlayed) {\n this.trackingService.trackPlayed(this.node?.ref.id!!, this.node?.ref.repo!!)\n }\n this.hasBeenPlayed = true\n }\n}\n","<div class=\"audio-wrapper\" *ngIf=\"activeObject()\">\n <video\n [poster]=\"previewUrl\"\n controls\n (play)=\"onVideoPlay()\"\n >\n <source [src]=\"activeObject()?.link | rsAssetLink\" />\n </video>\n</div>\n\n\n"],"names":["i1.TrackingService"],"mappings":";;;;;;MAiBa,cAAc,CAAA;AAOzB,IAAA,WAAA,CAAoB,eAAgC,EAAA;QAAhC,IAAe,CAAA,eAAA,GAAf,eAAe;QAJnC,IAAU,CAAA,UAAA,GAAW,EAAE;QACf,IAAa,CAAA,aAAA,GAAY,KAAK;AACtC,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAA6B,SAAS,CAAC;;IAI5D,eAAe,GAAA;AACb,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE;QAC/C,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC;QAC3E,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC;;IAG9C,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;YACvB,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,EAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,IAAM,CAAC;;AAE9E,QAAA,IAAI,CAAC,aAAa,GAAG,IAAI;;+GAnBhB,cAAc,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,eAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAd,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,cAAc,ECjB3B,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,uOAWA,EDAQ,MAAA,EAAA,CAAA,gIAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,eAAe,8LACf,WAAW,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAKN,cAAc,EAAA,UAAA,EAAA,CAAA;kBAT1B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,EAClB,OAAA,EAAA;wBACL,eAAe;wBACf,WAAW;AACd,qBAAA,EAAA,QAAA,EAAA,uOAAA,EAAA,MAAA,EAAA,CAAA,gIAAA,CAAA,EAAA;iFAKM,IAAI,EAAA,CAAA;sBAAZ;gBACQ,IAAI,EAAA,CAAA;sBAAZ;;;;;"}
@@ -1,6 +1,6 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { signal, Input, Component } from '@angular/core';
3
- import { a as RenderingModule } from './ngx-rendering-service-lib-ngx-rendering-service-lib-DPe3VOz2.mjs';
3
+ import { a as RenderingModule } from './ngx-rendering-service-lib-ngx-rendering-service-lib-j_TCSPd-.mjs';
4
4
  import { FormsModule } from '@angular/forms';
5
5
  import { MatProgressSpinner } from '@angular/material/progress-spinner';
6
6
  import { MatAnchor } from '@angular/material/button';
@@ -54,4 +54,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
54
54
  }] } });
55
55
 
56
56
  export { BinderComponent };
57
- //# sourceMappingURL=ngx-rendering-service-lib-binder.component-BolASRH8.mjs.map
57
+ //# sourceMappingURL=ngx-rendering-service-lib-binder.component-CPy79_k5.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-rendering-service-lib-binder.component-BolASRH8.mjs","sources":["../../src/lib/module/binder/binder.component.ts","../../src/lib/module/binder/binder.component.html"],"sourcesContent":["import { Component, Input, OnChanges, signal, SimpleChanges} from '@angular/core';\nimport {RenderingModule} from '../../rendering.module';\nimport {RenderModule} from '../RenderModule';\nimport {Node} from 'ngx-edu-sharing-api';\nimport {FormsModule} from '@angular/forms';\nimport {RenderData, AssetStateItem} from '../../dto/RenderData';\nimport {MatProgressSpinner} from '@angular/material/progress-spinner';\nimport {DomSanitizer, SafeResourceUrl} from '@angular/platform-browser';\nimport {MatAnchor} from '@angular/material/button';\n\n@Component({\n selector: 'rs-module-binder',\n imports: [\n RenderingModule,\n FormsModule,\n MatProgressSpinner,\n MatAnchor,\n ],\n templateUrl: './binder.component.html',\n styleUrl: './binder.component.scss'\n})\nexport class BinderComponent implements RenderModule, OnChanges {\n @Input() data: RenderData | undefined;\n @Input() node: Node | undefined;\n binderItem = signal<AssetStateItem | undefined>(undefined);\n previewUrl = signal<SafeResourceUrl | undefined>(undefined)\n hasPreview = signal<boolean>(false)\n\n constructor(private sanitizer: DomSanitizer) {}\n\n ngOnChanges(changes: SimpleChanges): void {\n const binderJobData = this.data?.items?.find(item => item.additionalData === null)\n if ( binderJobData !== undefined ) {\n this.binderItem.set(binderJobData)\n }\n const previewJobData = this.data?.items?.find(item => item.additionalData !== null)\n if (previewJobData !== undefined) {\n this.hasPreview.set(true)\n if (previewJobData.link !== undefined && previewJobData.link !== '') {\n this.previewUrl.set(this.getSafeUri(previewJobData.link))\n }\n }\n }\n\n getSafeUri(assetLink: string) {\n const uri = new URL(assetLink)\n /**\n if (uri.hostname.includes(\"nip.io\")) {\n uri.hostname = \"localhost\"\n }\n */\n return this.sanitizer.bypassSecurityTrustResourceUrl(uri.toString())\n }\n}\n","<div class=\"binder-wrapper\">\n <div class=\"preview-container\" *ngIf=\"hasPreview()\">\n <mat-spinner [diameter]=\"50\" *ngIf=\"previewUrl() === ''\"></mat-spinner>\n <iframe class=\"frame\" [src]=\"previewUrl()\" *ngIf=\"previewUrl() !== ''\" ></iframe>\n </div>\n <div class=\"binder-link-container\">\n <mat-spinner [diameter]=\"50\" *ngIf=\"binderItem()?.link === ''\" ></mat-spinner>\n <a mat-flat-button color=\"primary\" [href]=\"binderItem()?.link\" target=\"_blank\" *ngIf=\"binderItem()?.link !== ''\">Link to object</a>\n </div>\n</div>\n"],"names":[],"mappings":";;;;;;;;;MAqBa,eAAe,CAAA;AAO1B,IAAA,WAAA,CAAoB,SAAuB,EAAA;QAAvB,IAAS,CAAA,SAAA,GAAT,SAAS;AAJ7B,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAA6B,SAAS,CAAC;AAC1D,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAA8B,SAAS,CAAC;AAC3D,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAU,KAAK,CAAC;;AAInC,IAAA,WAAW,CAAC,OAAsB,EAAA;QAChC,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI,CAAC;AAClF,QAAA,IAAK,aAAa,KAAK,SAAS,EAAG;AACjC,YAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC;;QAEpC,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI,CAAC;AACnF,QAAA,IAAI,cAAc,KAAK,SAAS,EAAE;AAChC,YAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;AACzB,YAAA,IAAI,cAAc,CAAC,IAAI,KAAK,SAAS,IAAI,cAAc,CAAC,IAAI,KAAK,EAAE,EAAE;AACnE,gBAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;;;;AAK/D,IAAA,UAAU,CAAC,SAAiB,EAAA;AACxB,QAAA,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC;AAClC;;;;AAIQ;QACJ,OAAO,IAAI,CAAC,SAAS,CAAC,8BAA8B,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;;+GA9B7D,eAAe,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,YAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECrB5B,0jBAUA,EDGQ,MAAA,EAAA,CAAA,qYAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,eAAe,kIACf,WAAW,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACX,kBAAkB,EAAA,QAAA,EAAA,mCAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,OAAA,EAAA,UAAA,EAAA,aAAA,CAAA,EAAA,QAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAClB,SAAS,EAAA,QAAA,EAAA,gFAAA,EAAA,QAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAKJ,eAAe,EAAA,UAAA,EAAA,CAAA;kBAX3B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,kBAAkB,EACnB,OAAA,EAAA;wBACL,eAAe;wBACf,WAAW;wBACX,kBAAkB;wBAClB,SAAS;AACZ,qBAAA,EAAA,QAAA,EAAA,0jBAAA,EAAA,MAAA,EAAA,CAAA,qYAAA,CAAA,EAAA;iFAKM,IAAI,EAAA,CAAA;sBAAZ;gBACQ,IAAI,EAAA,CAAA;sBAAZ;;;;;"}
1
+ {"version":3,"file":"ngx-rendering-service-lib-binder.component-CPy79_k5.mjs","sources":["../../src/lib/module/binder/binder.component.ts","../../src/lib/module/binder/binder.component.html"],"sourcesContent":["import { Component, Input, OnChanges, signal, SimpleChanges} from '@angular/core';\nimport {RenderingModule} from '../../rendering.module';\nimport {RenderModule} from '../RenderModule';\nimport {Node} from 'ngx-edu-sharing-api';\nimport {FormsModule} from '@angular/forms';\nimport {RenderData, AssetStateItem} from '../../dto/RenderData';\nimport {MatProgressSpinner} from '@angular/material/progress-spinner';\nimport {DomSanitizer, SafeResourceUrl} from '@angular/platform-browser';\nimport {MatAnchor} from '@angular/material/button';\n\n@Component({\n selector: 'rs-module-binder',\n imports: [\n RenderingModule,\n FormsModule,\n MatProgressSpinner,\n MatAnchor,\n ],\n templateUrl: './binder.component.html',\n styleUrl: './binder.component.scss'\n})\nexport class BinderComponent implements RenderModule, OnChanges {\n @Input() data: RenderData | undefined;\n @Input() node: Node | undefined;\n binderItem = signal<AssetStateItem | undefined>(undefined);\n previewUrl = signal<SafeResourceUrl | undefined>(undefined)\n hasPreview = signal<boolean>(false)\n\n constructor(private sanitizer: DomSanitizer) {}\n\n ngOnChanges(changes: SimpleChanges): void {\n const binderJobData = this.data?.items?.find(item => item.additionalData === null)\n if ( binderJobData !== undefined ) {\n this.binderItem.set(binderJobData)\n }\n const previewJobData = this.data?.items?.find(item => item.additionalData !== null)\n if (previewJobData !== undefined) {\n this.hasPreview.set(true)\n if (previewJobData.link !== undefined && previewJobData.link !== '') {\n this.previewUrl.set(this.getSafeUri(previewJobData.link))\n }\n }\n }\n\n getSafeUri(assetLink: string) {\n const uri = new URL(assetLink)\n /**\n if (uri.hostname.includes(\"nip.io\")) {\n uri.hostname = \"localhost\"\n }\n */\n return this.sanitizer.bypassSecurityTrustResourceUrl(uri.toString())\n }\n}\n","<div class=\"binder-wrapper\">\n <div class=\"preview-container\" *ngIf=\"hasPreview()\">\n <mat-spinner [diameter]=\"50\" *ngIf=\"previewUrl() === ''\"></mat-spinner>\n <iframe class=\"frame\" [src]=\"previewUrl()\" *ngIf=\"previewUrl() !== ''\" ></iframe>\n </div>\n <div class=\"binder-link-container\">\n <mat-spinner [diameter]=\"50\" *ngIf=\"binderItem()?.link === ''\" ></mat-spinner>\n <a mat-flat-button color=\"primary\" [href]=\"binderItem()?.link\" target=\"_blank\" *ngIf=\"binderItem()?.link !== ''\">Link to object</a>\n </div>\n</div>\n"],"names":[],"mappings":";;;;;;;;;MAqBa,eAAe,CAAA;AAO1B,IAAA,WAAA,CAAoB,SAAuB,EAAA;QAAvB,IAAS,CAAA,SAAA,GAAT,SAAS;AAJ7B,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAA6B,SAAS,CAAC;AAC1D,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAA8B,SAAS,CAAC;AAC3D,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAU,KAAK,CAAC;;AAInC,IAAA,WAAW,CAAC,OAAsB,EAAA;QAChC,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI,CAAC;AAClF,QAAA,IAAK,aAAa,KAAK,SAAS,EAAG;AACjC,YAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC;;QAEpC,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI,CAAC;AACnF,QAAA,IAAI,cAAc,KAAK,SAAS,EAAE;AAChC,YAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;AACzB,YAAA,IAAI,cAAc,CAAC,IAAI,KAAK,SAAS,IAAI,cAAc,CAAC,IAAI,KAAK,EAAE,EAAE;AACnE,gBAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;;;;AAK/D,IAAA,UAAU,CAAC,SAAiB,EAAA;AACxB,QAAA,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC;AAClC;;;;AAIQ;QACJ,OAAO,IAAI,CAAC,SAAS,CAAC,8BAA8B,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;;+GA9B7D,eAAe,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,YAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECrB5B,0jBAUA,EDGQ,MAAA,EAAA,CAAA,qYAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,eAAe,kIACf,WAAW,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACX,kBAAkB,EAAA,QAAA,EAAA,mCAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,OAAA,EAAA,UAAA,EAAA,aAAA,CAAA,EAAA,QAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAClB,SAAS,EAAA,QAAA,EAAA,gFAAA,EAAA,QAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAKJ,eAAe,EAAA,UAAA,EAAA,CAAA;kBAX3B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,kBAAkB,EACnB,OAAA,EAAA;wBACL,eAAe;wBACf,WAAW;wBACX,kBAAkB;wBAClB,SAAS;AACZ,qBAAA,EAAA,QAAA,EAAA,0jBAAA,EAAA,MAAA,EAAA,CAAA,qYAAA,CAAA,EAAA;iFAKM,IAAI,EAAA,CAAA;sBAAZ;gBACQ,IAAI,EAAA,CAAA;sBAAZ;;;;;"}
@@ -1,6 +1,6 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { signal, HostListener, Input, Component } from '@angular/core';
3
- import { a as RenderingModule } from './ngx-rendering-service-lib-ngx-rendering-service-lib-DPe3VOz2.mjs';
3
+ import { a as RenderingModule } from './ngx-rendering-service-lib-ngx-rendering-service-lib-j_TCSPd-.mjs';
4
4
  import { MatIcon } from '@angular/material/icon';
5
5
  import * as i3 from '@angular/material/button';
6
6
  import { MatButtonModule } from '@angular/material/button';
@@ -63,4 +63,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
63
63
  }] } });
64
64
 
65
65
  export { DdbComponent };
66
- //# sourceMappingURL=ngx-rendering-service-lib-ddb.component-CuuLS6EN.mjs.map
66
+ //# sourceMappingURL=ngx-rendering-service-lib-ddb.component-BWZNPHOv.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-rendering-service-lib-ddb.component-CuuLS6EN.mjs","sources":["../../src/lib/module/ddb/ddb.component.ts","../../src/lib/module/ddb/ddb.component.html"],"sourcesContent":["import {AfterViewInit, Component, ElementRef, HostListener, Input, signal} from '@angular/core';\nimport {RenderingModule} from '../../rendering.module';\nimport {RenderModule} from '../RenderModule';\nimport {Node} from 'ngx-edu-sharing-api';\nimport {MatIcon} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {FormsModule} from '@angular/forms';\nimport {RenderData} from '../../dto/RenderData';\n\n@Component({\n selector: 'rs-module-ddb',\n imports: [\n RenderingModule,\n MatButtonModule,\n FormsModule,\n MatIcon,\n ],\n templateUrl: './ddb.component.html',\n styleUrl: './ddb.component.scss'\n})\nexport class DdbComponent implements RenderModule, AfterViewInit{\n @Input() data: RenderData | undefined;\n @Input() node: Node | undefined;\n activeObject = signal<string | undefined>(undefined);\n\n constructor(public element: ElementRef) { }\n\n ngAfterViewInit(): void {\n this.loadOptimalSize()\n }\n\n @HostListener('document:fullscreenchange')\n private loadOptimalSize() {\n const size = this.element.nativeElement.getBoundingClientRect();\n if (this.data?.items !== undefined && this.data?.items[0].additionalData !== undefined) {\n const additionalData = this.data?.items[0].additionalData\n const keys = Object.keys(additionalData)\n const sizeKeys = keys.filter(key => key.startsWith('size_'))\n const sizes = sizeKeys.map(key => additionalData[key])\n const matchingSize = sizes.sort((a,b) => {\n return Math.abs(parseInt(a.split(',')[0]) - size.width) > Math.abs(parseInt(b.split(',')[0]) - size.width) ? 1 : -1;\n })[0]\n const width = matchingSize.split(',')[0]\n const height = matchingSize.split(',')[1]\n const widthPlaceHolder = additionalData['widthPlaceHolder'] ?? ''\n const heightPlaceHolder = additionalData['heightPlaceHolder'] ?? ''\n const linkTemplate = additionalData['linkTemplate'] ?? ''\n const link = linkTemplate.replace(widthPlaceHolder, width).replace(heightPlaceHolder, height)\n this.activeObject.set(link)\n }\n }\n\n toggleFullscreen() {\n if(document.fullscreenElement) {\n void document.exitFullscreen();\n } else {\n this.element.nativeElement.requestFullscreen();\n }\n }\n}\n","<div class=\"ddb-wrapper\" *ngIf=\"activeObject()\">\n <img\n [src]=\"activeObject()\"\n [alt]=\"node?.title || node?.name || ''\"\n >\n <button mat-icon-button (click)=\"toggleFullscreen()\"><mat-icon>fullscreen</mat-icon></button>\n</div>\n"],"names":["i2"],"mappings":";;;;;;;;;MAoBa,YAAY,CAAA;AAKvB,IAAA,WAAA,CAAmB,OAAmB,EAAA;QAAnB,IAAO,CAAA,OAAA,GAAP,OAAO;AAF1B,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAqB,SAAS,CAAC;;IAIpD,eAAe,GAAA;QACb,IAAI,CAAC,eAAe,EAAE;;IAIhB,eAAe,GAAA;QACrB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,qBAAqB,EAAE;QAC/D,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,KAAK,SAAS,EAAE;AACtF,YAAA,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc;YACzD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC;AACxC,YAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AAC5D,YAAA,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,cAAc,CAAC,GAAG,CAAC,CAAC;YACtD,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAC,CAAC,KAAI;gBACtC,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACrH,aAAC,CAAC,CAAC,CAAC,CAAC;YACL,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACxC,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACzC,MAAM,gBAAgB,GAAG,cAAc,CAAC,kBAAkB,CAAC,IAAI,EAAE;YACjE,MAAM,iBAAiB,GAAG,cAAc,CAAC,mBAAmB,CAAC,IAAI,EAAE;YACnE,MAAM,YAAY,GAAG,cAAc,CAAC,cAAc,CAAC,IAAI,EAAE;AACzD,YAAA,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,iBAAiB,EAAE,MAAM,CAAC;AAC7F,YAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC;;;IAI/B,gBAAgB,GAAA;AACd,QAAA,IAAG,QAAQ,CAAC,iBAAiB,EAAE;AAC7B,YAAA,KAAK,QAAQ,CAAC,cAAc,EAAE;;aACzB;AACL,YAAA,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,iBAAiB,EAAE;;;+GApCvC,YAAY,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAZ,YAAY,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,2BAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECpBzB,6PAOA,EDKQ,MAAA,EAAA,CAAA,sNAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,eAAe,kIACf,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACf,WAAW,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACX,OAAO,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,SAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAKF,YAAY,EAAA,UAAA,EAAA,CAAA;kBAXxB,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,eAAe,EAChB,OAAA,EAAA;wBACL,eAAe;wBACf,eAAe;wBACf,WAAW;wBACX,OAAO;AACV,qBAAA,EAAA,QAAA,EAAA,6PAAA,EAAA,MAAA,EAAA,CAAA,sNAAA,CAAA,EAAA;+EAKM,IAAI,EAAA,CAAA;sBAAZ;gBACQ,IAAI,EAAA,CAAA;sBAAZ;gBAUO,eAAe,EAAA,CAAA;sBADtB,YAAY;uBAAC,2BAA2B;;;;;"}
1
+ {"version":3,"file":"ngx-rendering-service-lib-ddb.component-BWZNPHOv.mjs","sources":["../../src/lib/module/ddb/ddb.component.ts","../../src/lib/module/ddb/ddb.component.html"],"sourcesContent":["import {AfterViewInit, Component, ElementRef, HostListener, Input, signal} from '@angular/core';\nimport {RenderingModule} from '../../rendering.module';\nimport {RenderModule} from '../RenderModule';\nimport {Node} from 'ngx-edu-sharing-api';\nimport {MatIcon} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {FormsModule} from '@angular/forms';\nimport {RenderData} from '../../dto/RenderData';\n\n@Component({\n selector: 'rs-module-ddb',\n imports: [\n RenderingModule,\n MatButtonModule,\n FormsModule,\n MatIcon,\n ],\n templateUrl: './ddb.component.html',\n styleUrl: './ddb.component.scss'\n})\nexport class DdbComponent implements RenderModule, AfterViewInit{\n @Input() data: RenderData | undefined;\n @Input() node: Node | undefined;\n activeObject = signal<string | undefined>(undefined);\n\n constructor(public element: ElementRef) { }\n\n ngAfterViewInit(): void {\n this.loadOptimalSize()\n }\n\n @HostListener('document:fullscreenchange')\n private loadOptimalSize() {\n const size = this.element.nativeElement.getBoundingClientRect();\n if (this.data?.items !== undefined && this.data?.items[0].additionalData !== undefined) {\n const additionalData = this.data?.items[0].additionalData\n const keys = Object.keys(additionalData)\n const sizeKeys = keys.filter(key => key.startsWith('size_'))\n const sizes = sizeKeys.map(key => additionalData[key])\n const matchingSize = sizes.sort((a,b) => {\n return Math.abs(parseInt(a.split(',')[0]) - size.width) > Math.abs(parseInt(b.split(',')[0]) - size.width) ? 1 : -1;\n })[0]\n const width = matchingSize.split(',')[0]\n const height = matchingSize.split(',')[1]\n const widthPlaceHolder = additionalData['widthPlaceHolder'] ?? ''\n const heightPlaceHolder = additionalData['heightPlaceHolder'] ?? ''\n const linkTemplate = additionalData['linkTemplate'] ?? ''\n const link = linkTemplate.replace(widthPlaceHolder, width).replace(heightPlaceHolder, height)\n this.activeObject.set(link)\n }\n }\n\n toggleFullscreen() {\n if(document.fullscreenElement) {\n void document.exitFullscreen();\n } else {\n this.element.nativeElement.requestFullscreen();\n }\n }\n}\n","<div class=\"ddb-wrapper\" *ngIf=\"activeObject()\">\n <img\n [src]=\"activeObject()\"\n [alt]=\"node?.title || node?.name || ''\"\n >\n <button mat-icon-button (click)=\"toggleFullscreen()\"><mat-icon>fullscreen</mat-icon></button>\n</div>\n"],"names":["i2"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Input, Component } from '@angular/core';
3
- import { a as RenderingModule } from './ngx-rendering-service-lib-ngx-rendering-service-lib-DPe3VOz2.mjs';
3
+ import { a as RenderingModule } from './ngx-rendering-service-lib-ngx-rendering-service-lib-j_TCSPd-.mjs';
4
4
  import { MatIconModule } from '@angular/material/icon';
5
5
  import { MatButtonModule } from '@angular/material/button';
6
6
 
@@ -30,4 +30,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
30
30
  }] } });
31
31
 
32
32
  export { DefaultComponent };
33
- //# sourceMappingURL=ngx-rendering-service-lib-default.component-De3XA1lH.mjs.map
33
+ //# sourceMappingURL=ngx-rendering-service-lib-default.component-Bbli89uc.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-rendering-service-lib-default.component-De3XA1lH.mjs","sources":["../../src/lib/module/default/default.component.ts","../../src/lib/module/default/default.component.html"],"sourcesContent":["import {\n Component,\n Input,\n OnChanges,\n SimpleChanges\n} from '@angular/core';\nimport {RenderingModule} from '../../rendering.module';\nimport {RenderModule} from '../RenderModule';\nimport {Node} from 'ngx-edu-sharing-api';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\n\n@Component({\n selector: 'rs-module-default',\n imports: [\n RenderingModule,\n MatButtonModule,\n MatIconModule,\n ],\n templateUrl: './default.component.html',\n styleUrl: './default.component.scss'\n})\nexport class DefaultComponent implements RenderModule, OnChanges {\n @Input() data: undefined;\n @Input() node: Node | undefined;\n previewUrl: String = ''\n\n ngOnChanges(changes: SimpleChanges): void {\n if (this.node !== undefined) {\n this.previewUrl = this.node.preview?.url ?? ''\n }\n }\n}\n","<div class=\"rs-default-wrapper\">\n <img [src]=previewUrl>\n</div>\n"],"names":[],"mappings":";;;;;;MAsBa,gBAAgB,CAAA;AAV7B,IAAA,WAAA,GAAA;QAaE,IAAU,CAAA,UAAA,GAAW,EAAE;AAOxB;AALC,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE;AAC3B,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,EAAE;;;+GAPvC,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,gBAAgB,0ICtB7B,wEAGA,EAAA,MAAA,EAAA,CAAA,wFAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDYQ,eAAe,EACf,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,eAAe,8BACf,aAAa,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAKR,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAV5B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,mBAAmB,EACpB,OAAA,EAAA;wBACL,eAAe;wBACf,eAAe;wBACf,aAAa;AAChB,qBAAA,EAAA,QAAA,EAAA,wEAAA,EAAA,MAAA,EAAA,CAAA,wFAAA,CAAA,EAAA;8BAKM,IAAI,EAAA,CAAA;sBAAZ;gBACQ,IAAI,EAAA,CAAA;sBAAZ;;;;;"}
1
+ {"version":3,"file":"ngx-rendering-service-lib-default.component-Bbli89uc.mjs","sources":["../../src/lib/module/default/default.component.ts","../../src/lib/module/default/default.component.html"],"sourcesContent":["import {\n Component,\n Input,\n OnChanges,\n SimpleChanges\n} from '@angular/core';\nimport {RenderingModule} from '../../rendering.module';\nimport {RenderModule} from '../RenderModule';\nimport {Node} from 'ngx-edu-sharing-api';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\n\n@Component({\n selector: 'rs-module-default',\n imports: [\n RenderingModule,\n MatButtonModule,\n MatIconModule,\n ],\n templateUrl: './default.component.html',\n styleUrl: './default.component.scss'\n})\nexport class DefaultComponent implements RenderModule, OnChanges {\n @Input() data: undefined;\n @Input() node: Node | undefined;\n previewUrl: String = ''\n\n ngOnChanges(changes: SimpleChanges): void {\n if (this.node !== undefined) {\n this.previewUrl = this.node.preview?.url ?? ''\n }\n }\n}\n","<div class=\"rs-default-wrapper\">\n <img [src]=previewUrl>\n</div>\n"],"names":[],"mappings":";;;;;;MAsBa,gBAAgB,CAAA;AAV7B,IAAA,WAAA,GAAA;QAaE,IAAU,CAAA,UAAA,GAAW,EAAE;AAOxB;AALC,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE;AAC3B,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,EAAE;;;+GAPvC,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,gBAAgB,0ICtB7B,wEAGA,EAAA,MAAA,EAAA,CAAA,wFAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDYQ,eAAe,EACf,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,eAAe,8BACf,aAAa,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAKR,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAV5B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,mBAAmB,EACpB,OAAA,EAAA;wBACL,eAAe;wBACf,eAAe;wBACf,aAAa;AAChB,qBAAA,EAAA,QAAA,EAAA,wEAAA,EAAA,MAAA,EAAA,CAAA,wFAAA,CAAA,EAAA;8BAKM,IAAI,EAAA,CAAA;sBAAZ;gBACQ,IAAI,EAAA,CAAA;sBAAZ;;;;;"}
@@ -1,9 +1,9 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Input, Component } from '@angular/core';
3
- import { a as RenderingModule } from './ngx-rendering-service-lib-ngx-rendering-service-lib-DPe3VOz2.mjs';
3
+ import { a as RenderingModule } from './ngx-rendering-service-lib-ngx-rendering-service-lib-j_TCSPd-.mjs';
4
4
  import { MatIconModule } from '@angular/material/icon';
5
5
  import { MatButtonModule } from '@angular/material/button';
6
- import * as i4$1 from 'ngx-edu-sharing-ui';
6
+ import * as i2 from 'ngx-edu-sharing-ui';
7
7
  import { EduSharingUiModule, EduSharingUiCommonModule } from 'ngx-edu-sharing-ui';
8
8
  import { MatCard, MatCardSubtitle, MatCardHeader, MatCardTitle } from '@angular/material/card';
9
9
  import * as i4 from '@ngx-translate/core';
@@ -16,7 +16,7 @@ class ErrorComponent {
16
16
  this.errorMessage = this.data?.publicErrorMessage ?? '';
17
17
  }
18
18
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ErrorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
19
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: ErrorComponent, isStandalone: true, selector: "rs-module-error", inputs: { data: "data", node: "node" }, ngImport: i0, template: "<div class=\"rs-error-wrapper\">\n <es-info-message mode=\"error\">\n <div class=\"rs-error-message\">\n <h3>{{ 'RENDERING.ERROR.GENERIC_ERROR_MESSAGE' | translate }}</h3>\n <div>{{errorMessage | translate}}</div>\n </div>\n </es-info-message>\n</div>\n", styles: [".rs-error-wrapper{width:100%;justify-self:center;max-width:700px}.rs-error-wrapper mat-card{width:100%}.rs-error-wrapper .rs-error-message{display:flex;flex-direction:column;gap:10px}.rs-error-wrapper .rs-error-message h3{font-size:110%;font-weight:700;margin:0}\n"], dependencies: [{ kind: "ngmodule", type: RenderingModule }, { kind: "ngmodule", type: MatButtonModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: EduSharingUiModule }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }, { kind: "component", type: i4$1.InfoMessageComponent, selector: "es-info-message", inputs: ["message", "mode"] }, { kind: "ngmodule", type: EduSharingUiCommonModule }] }); }
19
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: ErrorComponent, isStandalone: true, selector: "rs-module-error", inputs: { data: "data", node: "node" }, ngImport: i0, template: "<div class=\"rs-error-wrapper\">\n <es-info-message mode=\"error\">\n <div class=\"rs-error-message\">\n <h3>{{ 'RENDERING.ERROR.GENERIC_ERROR_MESSAGE' | translate }}</h3>\n <div>{{errorMessage | translate}}</div>\n </div>\n </es-info-message>\n</div>\n", styles: [".rs-error-wrapper{width:100%;justify-self:center;max-width:700px}.rs-error-wrapper mat-card{width:100%}.rs-error-wrapper .rs-error-message{display:flex;flex-direction:column;gap:10px}.rs-error-wrapper .rs-error-message h3{font-size:110%;font-weight:700;margin:0}\n"], dependencies: [{ kind: "ngmodule", type: RenderingModule }, { kind: "ngmodule", type: MatButtonModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: EduSharingUiModule }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }, { kind: "component", type: i2.InfoMessageComponent, selector: "es-info-message", inputs: ["message", "mode"] }, { kind: "ngmodule", type: EduSharingUiCommonModule }] }); }
20
20
  }
21
21
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: ErrorComponent, decorators: [{
22
22
  type: Component,
@@ -38,4 +38,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
38
38
  }] } });
39
39
 
40
40
  export { ErrorComponent };
41
- //# sourceMappingURL=ngx-rendering-service-lib-error.component-CKWsVo_o.mjs.map
41
+ //# sourceMappingURL=ngx-rendering-service-lib-error.component-DWFFoJ6U.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-rendering-service-lib-error.component-CKWsVo_o.mjs","sources":["../../src/lib/module/error/error.component.ts","../../src/lib/module/error/error.component.html"],"sourcesContent":["import {\n AfterContentInit,\n Component,\n Input,\n} from '@angular/core';\nimport {RenderingModule} from '../../rendering.module';\nimport {RenderModule} from '../RenderModule';\nimport {Node} from 'ngx-edu-sharing-api';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {RenderData} from '../../dto/RenderData';\nimport {EduSharingUiCommonModule, EduSharingUiModule} from 'ngx-edu-sharing-ui';\nimport {MatCard, MatCardHeader, MatCardSubtitle, MatCardTitle} from '@angular/material/card';\n\n@Component({\n selector: 'rs-module-error',\n imports: [\n RenderingModule,\n MatButtonModule,\n MatIconModule,\n EduSharingUiModule,\n MatCard,\n EduSharingUiCommonModule,\n MatCardSubtitle,\n MatCardHeader,\n MatCardTitle\n ],\n templateUrl: './error.component.html',\n styleUrl: './error.component.scss'\n})\nexport class ErrorComponent implements RenderModule, AfterContentInit {\n @Input() data: RenderData | undefined\n @Input() node: Node | undefined;\n errorMessage: string = ''\n\n ngAfterContentInit() {\n this.errorMessage = this.data?.publicErrorMessage ?? ''\n }\n}\n","<div class=\"rs-error-wrapper\">\n <es-info-message mode=\"error\">\n <div class=\"rs-error-message\">\n <h3>{{ 'RENDERING.ERROR.GENERIC_ERROR_MESSAGE' | translate }}</h3>\n <div>{{errorMessage | translate}}</div>\n </div>\n </es-info-message>\n</div>\n"],"names":["i1","i2"],"mappings":";;;;;;;;;;MA8Ba,cAAc,CAAA;AAhB3B,IAAA,WAAA,GAAA;QAmBE,IAAY,CAAA,YAAA,GAAW,EAAE;AAK1B;IAHC,kBAAkB,GAAA;QAChB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,IAAI,EAAE,kBAAkB,IAAI,EAAE;;+GAN9C,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAd,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC9B3B,iRAQA,EAAA,MAAA,EAAA,CAAA,0QAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDSQ,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACf,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACf,aAAa,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACb,kBAAkB,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,aAAA,EAAA,IAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAElB,wBAAwB,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAQnB,cAAc,EAAA,UAAA,EAAA,CAAA;kBAhB1B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,EAClB,OAAA,EAAA;wBACL,eAAe;wBACf,eAAe;wBACf,aAAa;wBACb,kBAAkB;wBAClB,OAAO;wBACP,wBAAwB;wBACxB,eAAe;wBACf,aAAa;wBACb;AACH,qBAAA,EAAA,QAAA,EAAA,iRAAA,EAAA,MAAA,EAAA,CAAA,0QAAA,CAAA,EAAA;8BAKM,IAAI,EAAA,CAAA;sBAAZ;gBACQ,IAAI,EAAA,CAAA;sBAAZ;;;;;"}
1
+ {"version":3,"file":"ngx-rendering-service-lib-error.component-DWFFoJ6U.mjs","sources":["../../src/lib/module/error/error.component.ts","../../src/lib/module/error/error.component.html"],"sourcesContent":["import {\n AfterContentInit,\n Component,\n Input,\n} from '@angular/core';\nimport {RenderingModule} from '../../rendering.module';\nimport {RenderModule} from '../RenderModule';\nimport {Node} from 'ngx-edu-sharing-api';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {RenderData} from '../../dto/RenderData';\nimport {EduSharingUiCommonModule, EduSharingUiModule} from 'ngx-edu-sharing-ui';\nimport {MatCard, MatCardHeader, MatCardSubtitle, MatCardTitle} from '@angular/material/card';\n\n@Component({\n selector: 'rs-module-error',\n imports: [\n RenderingModule,\n MatButtonModule,\n MatIconModule,\n EduSharingUiModule,\n MatCard,\n EduSharingUiCommonModule,\n MatCardSubtitle,\n MatCardHeader,\n MatCardTitle\n ],\n templateUrl: './error.component.html',\n styleUrl: './error.component.scss'\n})\nexport class ErrorComponent implements RenderModule, AfterContentInit {\n @Input() data: RenderData | undefined\n @Input() node: Node | undefined;\n errorMessage: string = ''\n\n ngAfterContentInit() {\n this.errorMessage = this.data?.publicErrorMessage ?? ''\n }\n}\n","<div class=\"rs-error-wrapper\">\n <es-info-message mode=\"error\">\n <div class=\"rs-error-message\">\n <h3>{{ 'RENDERING.ERROR.GENERIC_ERROR_MESSAGE' | translate }}</h3>\n <div>{{errorMessage | translate}}</div>\n </div>\n </es-info-message>\n</div>\n"],"names":["i1"],"mappings":";;;;;;;;;;MA8Ba,cAAc,CAAA;AAhB3B,IAAA,WAAA,GAAA;QAmBE,IAAY,CAAA,YAAA,GAAW,EAAE;AAK1B;IAHC,kBAAkB,GAAA;QAChB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,IAAI,EAAE,kBAAkB,IAAI,EAAE;;+GAN9C,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAd,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC9B3B,iRAQA,EAAA,MAAA,EAAA,CAAA,0QAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDSQ,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACf,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACf,aAAa,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACb,kBAAkB,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,aAAA,EAAA,IAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAElB,wBAAwB,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAQnB,cAAc,EAAA,UAAA,EAAA,CAAA;kBAhB1B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,EAClB,OAAA,EAAA;wBACL,eAAe;wBACf,eAAe;wBACf,aAAa;wBACb,kBAAkB;wBAClB,OAAO;wBACP,wBAAwB;wBACxB,eAAe;wBACf,aAAa;wBACb;AACH,qBAAA,EAAA,QAAA,EAAA,iRAAA,EAAA,MAAA,EAAA,CAAA,0QAAA,CAAA,EAAA;8BAKM,IAAI,EAAA,CAAA;sBAAZ;gBACQ,IAAI,EAAA,CAAA;sBAAZ;;;;;"}
@@ -1,6 +1,6 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { ViewChild, Input, Inject, Optional, Component } from '@angular/core';
3
- import { R as RENDERING_SERVICE_LIB_CONFIG, a as RenderingModule, b as RenderingServiceLibConfiguration } from './ngx-rendering-service-lib-ngx-rendering-service-lib-DPe3VOz2.mjs';
3
+ import { R as RENDERING_SERVICE_LIB_CONFIG, a as RenderingModule, b as RenderingServiceLibConfiguration } from './ngx-rendering-service-lib-ngx-rendering-service-lib-j_TCSPd-.mjs';
4
4
  import { MatIconModule } from '@angular/material/icon';
5
5
  import { MatButtonModule } from '@angular/material/button';
6
6
  import * as i2 from '@angular/common';
@@ -88,4 +88,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
88
88
  }] } });
89
89
 
90
90
  export { H5pComponent };
91
- //# sourceMappingURL=ngx-rendering-service-lib-h5p.component-Bj4BDE4s.mjs.map
91
+ //# sourceMappingURL=ngx-rendering-service-lib-h5p.component-kPdwu84f.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-rendering-service-lib-h5p.component-Bj4BDE4s.mjs","sources":["../../src/lib/module/h5p/h5p.component.ts","../../src/lib/module/h5p/h5p.component.html"],"sourcesContent":["import {\n AfterViewInit,\n Component,\n ElementRef,\n Inject,\n Input,\n OnInit,\n Optional,\n Renderer2,\n ViewChild\n} from '@angular/core';\nimport {RenderingModule} from '../../rendering.module';\nimport {RenderModule} from '../RenderModule';\nimport {Node} from 'ngx-edu-sharing-api';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {RenderData} from '../../dto/RenderData';\nimport {DomSanitizer, SafeResourceUrl} from '@angular/platform-browser';\nimport {DOCUMENT, PlatformLocation} from '@angular/common';\nimport {\n RENDERING_SERVICE_LIB_CONFIG,\n RenderingServiceLibConfiguration\n} from '../../../rendering-service-lib-configuration';\n\n@Component({\n selector: 'rs-module-h5p',\n imports: [\n RenderingModule,\n MatButtonModule,\n MatIconModule,\n ],\n templateUrl: './h5p.component.html',\n styleUrl: './h5p.component.scss'\n})\nexport class H5pComponent implements RenderModule, OnInit, AfterViewInit {\n @Input() data: RenderData | undefined\n @Input() node: Node | undefined\n @ViewChild('iframeEl', { static: false }) iframeEl?: ElementRef<HTMLIFrameElement>;\n private assetsUrl: string = ''\n\n sanitizedUrl: SafeResourceUrl = new class implements SafeResourceUrl {\n }\n\n constructor(\n private renderer: Renderer2,\n private sanitizer: DomSanitizer,\n @Inject(DOCUMENT) private document: Document,\n private platformLocation: PlatformLocation,\n @Optional() @Inject(RENDERING_SERVICE_LIB_CONFIG) public configuration: RenderingServiceLibConfiguration\n ) {\n if (configuration && configuration.assetsUrl) {\n this.assetsUrl = (configuration?.assetsUrl || '').replace('assets', '')\n } else {\n this.assetsUrl = this.platformLocation.getBaseHrefFromDOM()\n }\n }\n\n ngOnInit() {\n if (this.data?.items !== undefined && this.data.items[0].link) {\n this.sanitizedUrl = this.getSafeUri()\n }\n }\n\n ngAfterViewInit(): void {\n const h5pResizerUrl = this.assetsUrl + 'h5p-resizer.js';\n\n this.addScriptAfterIframe(h5pResizerUrl);\n }\n\n getSafeUri() {\n if (this.data?.items !== undefined && this.data.items[0].link) {\n const uri = new URL(this.data.items[0].link)\n /**\n if (uri.hostname.includes('nip.io')) {\n uri.hostname = 'localhost'\n }\n */\n return this.sanitizer.bypassSecurityTrustResourceUrl(uri.toString())\n }\n return new class implements SafeResourceUrl {\n }\n }\n\n private addScriptAfterIframe(src: string): void {\n if (!this.iframeEl?.nativeElement?.parentNode) {\n return;\n }\n\n if (this.document.querySelector(`script[src=\"${src}\"]`)) {\n return;\n }\n\n const script = this.renderer.createElement('script');\n script.type = 'text/javascript';\n script.src = src;\n script.async = true;\n\n const parent = this.iframeEl.nativeElement.parentNode;\n this.renderer.insertBefore(parent, script, this.iframeEl.nativeElement.nextSibling);\n }\n}\n","<div class=\"h5p-wrapper\" *ngIf=\"data?.items !== undefined\">\n <iframe\n #iframeEl\n [title]=\"node?.title ?? 'H5P'\"\n class=\"frame\"\n [src]=\"sanitizedUrl\"\n allow=\"camera; microphone; fullscreen\"\n allowfullscreen\n ></iframe>\n</div>\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ngx-rendering-service-lib-h5p.component-kPdwu84f.mjs","sources":["../../src/lib/module/h5p/h5p.component.ts","../../src/lib/module/h5p/h5p.component.html"],"sourcesContent":["import {\n AfterViewInit,\n Component,\n ElementRef,\n Inject,\n Input,\n OnInit,\n Optional,\n Renderer2,\n ViewChild\n} from '@angular/core';\nimport {RenderingModule} from '../../rendering.module';\nimport {RenderModule} from '../RenderModule';\nimport {Node} from 'ngx-edu-sharing-api';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {RenderData} from '../../dto/RenderData';\nimport {DomSanitizer, SafeResourceUrl} from '@angular/platform-browser';\nimport {DOCUMENT, PlatformLocation} from '@angular/common';\nimport {\n RENDERING_SERVICE_LIB_CONFIG,\n RenderingServiceLibConfiguration\n} from '../../../rendering-service-lib-configuration';\n\n@Component({\n selector: 'rs-module-h5p',\n imports: [\n RenderingModule,\n MatButtonModule,\n MatIconModule,\n ],\n templateUrl: './h5p.component.html',\n styleUrl: './h5p.component.scss'\n})\nexport class H5pComponent implements RenderModule, OnInit, AfterViewInit {\n @Input() data: RenderData | undefined\n @Input() node: Node | undefined\n @ViewChild('iframeEl', { static: false }) iframeEl?: ElementRef<HTMLIFrameElement>;\n private assetsUrl: string = ''\n\n sanitizedUrl: SafeResourceUrl = new class implements SafeResourceUrl {\n }\n\n constructor(\n private renderer: Renderer2,\n private sanitizer: DomSanitizer,\n @Inject(DOCUMENT) private document: Document,\n private platformLocation: PlatformLocation,\n @Optional() @Inject(RENDERING_SERVICE_LIB_CONFIG) public configuration: RenderingServiceLibConfiguration\n ) {\n if (configuration && configuration.assetsUrl) {\n this.assetsUrl = (configuration?.assetsUrl || '').replace('assets', '')\n } else {\n this.assetsUrl = this.platformLocation.getBaseHrefFromDOM()\n }\n }\n\n ngOnInit() {\n if (this.data?.items !== undefined && this.data.items[0].link) {\n this.sanitizedUrl = this.getSafeUri()\n }\n }\n\n ngAfterViewInit(): void {\n const h5pResizerUrl = this.assetsUrl + 'h5p-resizer.js';\n\n this.addScriptAfterIframe(h5pResizerUrl);\n }\n\n getSafeUri() {\n if (this.data?.items !== undefined && this.data.items[0].link) {\n const uri = new URL(this.data.items[0].link)\n /**\n if (uri.hostname.includes('nip.io')) {\n uri.hostname = 'localhost'\n }\n */\n return this.sanitizer.bypassSecurityTrustResourceUrl(uri.toString())\n }\n return new class implements SafeResourceUrl {\n }\n }\n\n private addScriptAfterIframe(src: string): void {\n if (!this.iframeEl?.nativeElement?.parentNode) {\n return;\n }\n\n if (this.document.querySelector(`script[src=\"${src}\"]`)) {\n return;\n }\n\n const script = this.renderer.createElement('script');\n script.type = 'text/javascript';\n script.src = src;\n script.async = true;\n\n const parent = this.iframeEl.nativeElement.parentNode;\n this.renderer.insertBefore(parent, script, this.iframeEl.nativeElement.nextSibling);\n }\n}\n","<div class=\"h5p-wrapper\" *ngIf=\"data?.items !== undefined\">\n <iframe\n #iframeEl\n [title]=\"node?.title ?? 'H5P'\"\n class=\"frame\"\n [src]=\"sanitizedUrl\"\n allow=\"camera; microphone; fullscreen\"\n allowfullscreen\n ></iframe>\n</div>\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Input, Component } from '@angular/core';
3
- import { a as RenderingModule } from './ngx-rendering-service-lib-ngx-rendering-service-lib-DPe3VOz2.mjs';
3
+ import { a as RenderingModule } from './ngx-rendering-service-lib-ngx-rendering-service-lib-j_TCSPd-.mjs';
4
4
  import { MatIconModule } from '@angular/material/icon';
5
5
  import * as i3 from '@angular/material/button';
6
6
  import { MatButtonModule } from '@angular/material/button';
@@ -58,4 +58,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
58
58
  }] } });
59
59
 
60
60
  export { MoodleComponent };
61
- //# sourceMappingURL=ngx-rendering-service-lib-moodle.component-BMFvTQkb.mjs.map
61
+ //# sourceMappingURL=ngx-rendering-service-lib-moodle.component-DqUmZEuZ.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-rendering-service-lib-moodle.component-BMFvTQkb.mjs","sources":["../../src/lib/module/moodle/moodle.component.ts","../../src/lib/module/moodle/moodle.component.html"],"sourcesContent":["import {Component, Input, OnInit} from '@angular/core';\nimport {RenderingModule} from '../../rendering.module';\nimport {RenderModule} from '../RenderModule';\nimport {Node} from 'ngx-edu-sharing-api';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {RenderData} from '../../dto/RenderData';\nimport {DomSanitizer, SafeResourceUrl} from '@angular/platform-browser';\nimport {TranslateModule} from '@ngx-translate/core';\n\n@Component({\n selector: 'rs-module-moodle',\n imports: [\n RenderingModule,\n MatButtonModule,\n MatIconModule,\n TranslateModule,\n ],\n templateUrl: './moodle.component.html',\n styleUrl: './moodle.component.scss'\n})\nexport class MoodleComponent implements RenderModule, OnInit {\n @Input() data: RenderData | undefined\n @Input() node: Node | undefined\n @Input() isWebComponent: boolean = false\n previewUrl: string = ''\n sanitizedUrl: SafeResourceUrl | null = null\n sanitizedLinkUrl: SafeResourceUrl | null = null\n\n constructor(private sanitizer: DomSanitizer) {\n }\n\n ngOnInit() {\n if (this.data?.items !== undefined && this.data.items[0].link) {\n this.sanitizedUrl = this.getSafeUri()\n this.sanitizedLinkUrl = this.getSafeLinkUri()\n this.previewUrl = this.node?.preview?.url ?? ''\n }\n }\n\n getSafeUri() {\n if (this.data?.items !== undefined && this.data.items[0].link) {\n const uri = new URL(this.data.items[0].link)\n return this.sanitizer.bypassSecurityTrustResourceUrl(uri.toString())\n }\n return null\n }\n\n getSafeLinkUri() {\n if (this.data?.items !== undefined && this.data.items[0].additionalData) {\n const uri = new URL(this.data.items[0].additionalData['linkUrl'] ?? '')\n return this.sanitizer.bypassSecurityTrustResourceUrl(uri.toString())\n }\n return null\n }\n}\n","<div class=\"moodle-wrapper\" *ngIf=\"data?.items !== undefined\">\n <iframe *ngIf=\"!isWebComponent\" class=\"frame\" [src]=\"sanitizedUrl\"></iframe>\n <img *ngIf=\"isWebComponent\" [src]=previewUrl alt=\"preview\">\n <a mat-button=\"filled\" [href]=\"sanitizedLinkUrl\" target=\"_blank\">{{ 'RENDERING.GO_TO_COURSE' | translate }}</a>\n</div>\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ngx-rendering-service-lib-moodle.component-DqUmZEuZ.mjs","sources":["../../src/lib/module/moodle/moodle.component.ts","../../src/lib/module/moodle/moodle.component.html"],"sourcesContent":["import {Component, Input, OnInit} from '@angular/core';\nimport {RenderingModule} from '../../rendering.module';\nimport {RenderModule} from '../RenderModule';\nimport {Node} from 'ngx-edu-sharing-api';\nimport {MatIconModule} from '@angular/material/icon';\nimport {MatButtonModule} from '@angular/material/button';\nimport {RenderData} from '../../dto/RenderData';\nimport {DomSanitizer, SafeResourceUrl} from '@angular/platform-browser';\nimport {TranslateModule} from '@ngx-translate/core';\n\n@Component({\n selector: 'rs-module-moodle',\n imports: [\n RenderingModule,\n MatButtonModule,\n MatIconModule,\n TranslateModule,\n ],\n templateUrl: './moodle.component.html',\n styleUrl: './moodle.component.scss'\n})\nexport class MoodleComponent implements RenderModule, OnInit {\n @Input() data: RenderData | undefined\n @Input() node: Node | undefined\n @Input() isWebComponent: boolean = false\n previewUrl: string = ''\n sanitizedUrl: SafeResourceUrl | null = null\n sanitizedLinkUrl: SafeResourceUrl | null = null\n\n constructor(private sanitizer: DomSanitizer) {\n }\n\n ngOnInit() {\n if (this.data?.items !== undefined && this.data.items[0].link) {\n this.sanitizedUrl = this.getSafeUri()\n this.sanitizedLinkUrl = this.getSafeLinkUri()\n this.previewUrl = this.node?.preview?.url ?? ''\n }\n }\n\n getSafeUri() {\n if (this.data?.items !== undefined && this.data.items[0].link) {\n const uri = new URL(this.data.items[0].link)\n return this.sanitizer.bypassSecurityTrustResourceUrl(uri.toString())\n }\n return null\n }\n\n getSafeLinkUri() {\n if (this.data?.items !== undefined && this.data.items[0].additionalData) {\n const uri = new URL(this.data.items[0].additionalData['linkUrl'] ?? '')\n return this.sanitizer.bypassSecurityTrustResourceUrl(uri.toString())\n }\n return null\n }\n}\n","<div class=\"moodle-wrapper\" *ngIf=\"data?.items !== undefined\">\n <iframe *ngIf=\"!isWebComponent\" class=\"frame\" [src]=\"sanitizedUrl\"></iframe>\n <img *ngIf=\"isWebComponent\" [src]=previewUrl alt=\"preview\">\n <a mat-button=\"filled\" [href]=\"sanitizedLinkUrl\" target=\"_blank\">{{ 'RENDERING.GO_TO_COURSE' | translate }}</a>\n</div>\n"],"names":[],"mappings":";;;;;;;;;;;MAqBa,eAAe,CAAA;AAQ1B,IAAA,WAAA,CAAoB,SAAuB,EAAA;QAAvB,IAAS,CAAA,SAAA,GAAT,SAAS;QALpB,IAAc,CAAA,cAAA,GAAY,KAAK;QACxC,IAAU,CAAA,UAAA,GAAW,EAAE;QACvB,IAAY,CAAA,YAAA,GAA2B,IAAI;QAC3C,IAAgB,CAAA,gBAAA,GAA2B,IAAI;;IAK/C,QAAQ,GAAA;AACN,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;AAC7D,YAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,UAAU,EAAE;AACrC,YAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,cAAc,EAAE;AAC7C,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE;;;IAInD,UAAU,GAAA;AACR,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;AAC7D,YAAA,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAC5C,OAAO,IAAI,CAAC,SAAS,CAAC,8BAA8B,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;;AAEtE,QAAA,OAAO,IAAI;;IAGb,cAAc,GAAA;AACZ,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE;YACvE,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;YACvE,OAAO,IAAI,CAAC,SAAS,CAAC,8BAA8B,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;;AAEtE,QAAA,OAAO,IAAI;;+GAhCF,eAAe,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,YAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECrB5B,gWAKA,EDQI,MAAA,EAAA,CAAA,iQAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,eAAe,kIACf,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,gFAAA,EAAA,QAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACf,aAAa,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACb,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAKN,eAAe,EAAA,UAAA,EAAA,CAAA;kBAX3B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,kBAAkB,EACrB,OAAA,EAAA;wBACP,eAAe;wBACf,eAAe;wBACf,aAAa;wBACb,eAAe;AAChB,qBAAA,EAAA,QAAA,EAAA,gWAAA,EAAA,MAAA,EAAA,CAAA,iQAAA,CAAA,EAAA;iFAKQ,IAAI,EAAA,CAAA;sBAAZ;gBACQ,IAAI,EAAA,CAAA;sBAAZ;gBACQ,cAAc,EAAA,CAAA;sBAAtB;;;;;"}