ngx-rendering-service-lib 0.1.13 → 0.1.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/{ngx-rendering-service-lib-audio.component-fsr3_Zyz.mjs → ngx-rendering-service-lib-audio.component-B5Dl1Zoj.mjs} +2 -2
- package/fesm2022/{ngx-rendering-service-lib-audio.component-fsr3_Zyz.mjs.map → ngx-rendering-service-lib-audio.component-B5Dl1Zoj.mjs.map} +1 -1
- package/fesm2022/{ngx-rendering-service-lib-binder.component-zS-O-QtF.mjs → ngx-rendering-service-lib-binder.component-DaSISQWr.mjs} +2 -2
- package/fesm2022/{ngx-rendering-service-lib-binder.component-zS-O-QtF.mjs.map → ngx-rendering-service-lib-binder.component-DaSISQWr.mjs.map} +1 -1
- package/fesm2022/{ngx-rendering-service-lib-ddb.component-CwB0PVwS.mjs → ngx-rendering-service-lib-ddb.component-C0V4X-DD.mjs} +2 -2
- package/fesm2022/{ngx-rendering-service-lib-ddb.component-CwB0PVwS.mjs.map → ngx-rendering-service-lib-ddb.component-C0V4X-DD.mjs.map} +1 -1
- package/fesm2022/ngx-rendering-service-lib-default.component-rVthepNn.mjs +46 -0
- package/fesm2022/ngx-rendering-service-lib-default.component-rVthepNn.mjs.map +1 -0
- package/fesm2022/{ngx-rendering-service-lib-error.component-DDEH-2_C.mjs → ngx-rendering-service-lib-error.component-Ct4uKubl.mjs} +5 -5
- package/fesm2022/{ngx-rendering-service-lib-error.component-DDEH-2_C.mjs.map → ngx-rendering-service-lib-error.component-Ct4uKubl.mjs.map} +1 -1
- package/fesm2022/{ngx-rendering-service-lib-h5p.component-CWWPh0Ld.mjs → ngx-rendering-service-lib-h5p.component-Bw7u0HC5.mjs} +2 -2
- package/fesm2022/{ngx-rendering-service-lib-h5p.component-CWWPh0Ld.mjs.map → ngx-rendering-service-lib-h5p.component-Bw7u0HC5.mjs.map} +1 -1
- package/fesm2022/{ngx-rendering-service-lib-moodle.component-DNW1DryR.mjs → ngx-rendering-service-lib-moodle.component-BEdmvo5-.mjs} +4 -4
- package/fesm2022/{ngx-rendering-service-lib-moodle.component-DNW1DryR.mjs.map → ngx-rendering-service-lib-moodle.component-BEdmvo5-.mjs.map} +1 -1
- package/fesm2022/{ngx-rendering-service-lib-ngx-rendering-service-lib-DhgiWwXy.mjs → ngx-rendering-service-lib-ngx-rendering-service-lib-CEXBFepG.mjs} +19 -19
- package/fesm2022/{ngx-rendering-service-lib-ngx-rendering-service-lib-DhgiWwXy.mjs.map → ngx-rendering-service-lib-ngx-rendering-service-lib-CEXBFepG.mjs.map} +1 -1
- package/fesm2022/ngx-rendering-service-lib.mjs +1 -1
- package/lib/module/default/default.component.d.ts +4 -0
- package/package.json +1 -1
- package/fesm2022/ngx-rendering-service-lib-default.component-CZZ8zJCx.mjs +0 -33
- package/fesm2022/ngx-rendering-service-lib-default.component-CZZ8zJCx.mjs.map +0 -1
|
@@ -12,18 +12,18 @@ import * as i4 from '@angular/material/icon';
|
|
|
12
12
|
import { MatIconModule, MatIcon } from '@angular/material/icon';
|
|
13
13
|
import { FormsModule } from '@angular/forms';
|
|
14
14
|
import { MatMenu, MatMenuTrigger, MatMenuItem } from '@angular/material/menu';
|
|
15
|
-
import * as
|
|
15
|
+
import * as i1$2 from 'ngx-edu-sharing-ui';
|
|
16
16
|
import { EduSharingUiModule, NodesRightMode, EduSharingUiCommonModule, InfoMessageComponent } from 'ngx-edu-sharing-ui';
|
|
17
17
|
import * as i4$1 from '@ngx-translate/core';
|
|
18
18
|
import { TranslateModule, TranslateService } from '@ngx-translate/core';
|
|
19
19
|
import * as i4$2 from 'ngx-extended-pdf-viewer';
|
|
20
20
|
import { AnnotationEditorType, pdfDefaultOptions, NgxExtendedPdfViewerModule, NgxExtendedPdfViewerComponent } from 'ngx-extended-pdf-viewer';
|
|
21
21
|
import { firstValueFrom, Subject, BehaviorSubject, debounceTime, switchMap, interval, takeUntil, exhaustMap } from 'rxjs';
|
|
22
|
-
import * as i1$
|
|
22
|
+
import * as i1$3 from '@angular/platform-browser';
|
|
23
23
|
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
24
24
|
import * as i4$3 from '@angular/material/progress-spinner';
|
|
25
25
|
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
|
26
|
-
import * as i6
|
|
26
|
+
import * as i6 from '@angular/material/progress-bar';
|
|
27
27
|
import { MatProgressBarModule } from '@angular/material/progress-bar';
|
|
28
28
|
import { filter } from 'rxjs/operators';
|
|
29
29
|
|
|
@@ -354,7 +354,7 @@ class PdfComponent {
|
|
|
354
354
|
}
|
|
355
355
|
}
|
|
356
356
|
}
|
|
357
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: PdfComponent, deps: [{ token: i1$1.AssetControllerService }, { token:
|
|
357
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: PdfComponent, deps: [{ token: i1$1.AssetControllerService }, { token: i1$2.NodeHelperService }, { token: RENDERING_SERVICE_LIB_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
358
358
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: PdfComponent, isStandalone: true, selector: "rs-module-pdf", inputs: { data: "data", node: "node", assetUrl: "assetUrl" }, host: { listeners: { "window:keydown.control.s": "handleShortCutEvents($event)", "window:keydown.F12": "handleShortCutEvents($event)", "window:contextmenu": "handleContextMenu($event)" } }, viewQueries: [{ propertyName: "pdfViewer", first: true, predicate: NgxExtendedPdfViewerComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div\n class=\"pdf-wrapper\"\n [class.hide-all]=\"restrictedView\"\n *ngIf=\"fileData !== undefined\"\n>\n <ngx-extended-pdf-viewer\n [src]=\"fileData\"\n [enableDragAndDrop]=\"false\"\n [showPrintButton]=\"!restrictedView\"\n [showDownloadButton]=\"false\"\n [showOpenFileButton]=\"false\"\n [textLayer]=\"!restrictedView\"\n [enablePrint]=\"!restrictedView\"\n [showBookModeButton]=\"false\"\n [showFindHighlightAll]=\"false\"\n [showDrawEditor]=\"false\"\n [sidebarVisible]=\"false\"\n [showHighlightEditor]=\"false\"\n [showTextEditor]=\"false\"\n [height]=\"'var(--containerHeight, 100vh)'\"\n [showSecondaryToolbarButton]=\"false\"\n [showStampEditor]=\"false\"\n [authorization]=\"true\"\n [useInlineScripts]=\"false\"\n >\n </ngx-extended-pdf-viewer>\n</div>\n", styles: [":host{position:relative;display:flex;align-items:center;width:100%;max-height:var(--containerHeight, none);overflow:hidden}:host ::ng-deep ngx-extended-pdf-viewer,:host ::ng-deep ngx-extended-pdf-viewer .zoom{max-height:var(--containerHeight, none)}.pdf-wrapper{width:100%;height:100%;max-height:var(--containerHeight, none)}@media print{.hide-all *{display:none!important}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: RenderingModule }, { kind: "ngmodule", type: MatButtonModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: NgxExtendedPdfViewerModule }, { kind: "component", type: i4$2.NgxExtendedPdfViewerComponent, selector: "ngx-extended-pdf-viewer", inputs: ["customFindbarInputArea", "customToolbar", "customFindbar", "customFindbarButtons", "customPdfViewer", "customSecondaryToolbar", "customSidebar", "customThumbnail", "customFreeFloatingBar", "showFreeFloatingBar", "enableDragAndDrop", "forceUsingLegacyES5", "formData", "disableForms", "pageViewMode", "scrollMode", "authorization", "httpHeaders", "contextMenuAllowed", "enablePrint", "enablePrintAutoRotate", "forceFullReloadOfJavaScriptCode", "showTextEditor", "showStampEditor", "showDrawEditor", "showHighlightEditor", "logLevel", "relativeCoordsOptions", "minifiedJSLibraries", "printResolution", "rotation", "src", "base64Src", "minHeight", "height", "backgroundColor", "filenameForDownload", "ignoreKeyboard", "ignoreKeys", "acceptKeys", "imageResourcesPath", "localeFolderPath", "language", "listenToURL", "nameddest", "password", "replaceBrowserPrint", "useInlineScripts", "showUnverifiedSignatures", "startTabindex", "showSidebarButton", "sidebarVisible", "activeSidebarView", "findbarVisible", "propertiesDialogVisible", "showFindButton", "showFindHighlightAll", "showFindMatchCase", "showFindMultiple", "showFindRegexp", "showFindEntireWord", "showFindMatchDiacritics", "showFindResultsCount", "showFindMessages", "showPagingButtons", "showFirstAndLastPageButtons", "showPreviousAndNextPageButtons", "showPageNumber", "showPageLabel", "showZoomButtons", "showZoomDropdown", "showPresentationModeButton", "showOpenFileButton", "showPrintButton", "showDownloadButton", "theme", "showToolbar", "showSecondaryToolbarButton", "showSinglePageModeButton", "showVerticalScrollButton", "showHorizontalScrollButton", "showWrappedScrollButton", "showInfiniteScrollButton", "showBookModeButton", "showRotateButton", "showRotateCwButton", "showRotateCcwButton", "handTool", "showHandToolButton", "showSpreadButton", "showPropertiesButton", "showBorders", "spread", "showScrollingButtons", "page", "pageLabel", "textLayer", "zoom", "zoomLevels", "maxZoom", "minZoom", "mobileFriendlyZoom"], outputs: ["annotationEditorEvent", "formDataChange", "pageViewModeChange", "progress", "srcChange", "scrollModeChange", "afterPrint", "beforePrint", "currentZoomFactor", "rotationChange", "annotationLayerRendered", "annotationEditorLayerRendered", "xfaLayerRendered", "outlineLoaded", "attachmentsloaded", "layersloaded", "sidebarVisibleChange", "activeSidebarViewChange", "findbarVisibleChange", "propertiesDialogVisibleChange", "handToolChange", "spreadChange", "thumbnailDrawn", "pageChange", "pageLabelChange", "pagesLoaded", "pageRender", "pageRendered", "pdfDownloaded", "pdfLoaded", "pdfLoadingStarts", "pdfLoadingFailed", "textLayerRendered", "annotationEditorModeChanged", "updateFindMatchesCount", "updateFindState", "zoomChange"] }] }); }
|
|
359
359
|
}
|
|
360
360
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: PdfComponent, decorators: [{
|
|
@@ -366,7 +366,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
|
|
|
366
366
|
MatIconModule,
|
|
367
367
|
NgxExtendedPdfViewerModule
|
|
368
368
|
], template: "<div\n class=\"pdf-wrapper\"\n [class.hide-all]=\"restrictedView\"\n *ngIf=\"fileData !== undefined\"\n>\n <ngx-extended-pdf-viewer\n [src]=\"fileData\"\n [enableDragAndDrop]=\"false\"\n [showPrintButton]=\"!restrictedView\"\n [showDownloadButton]=\"false\"\n [showOpenFileButton]=\"false\"\n [textLayer]=\"!restrictedView\"\n [enablePrint]=\"!restrictedView\"\n [showBookModeButton]=\"false\"\n [showFindHighlightAll]=\"false\"\n [showDrawEditor]=\"false\"\n [sidebarVisible]=\"false\"\n [showHighlightEditor]=\"false\"\n [showTextEditor]=\"false\"\n [height]=\"'var(--containerHeight, 100vh)'\"\n [showSecondaryToolbarButton]=\"false\"\n [showStampEditor]=\"false\"\n [authorization]=\"true\"\n [useInlineScripts]=\"false\"\n >\n </ngx-extended-pdf-viewer>\n</div>\n", styles: [":host{position:relative;display:flex;align-items:center;width:100%;max-height:var(--containerHeight, none);overflow:hidden}:host ::ng-deep ngx-extended-pdf-viewer,:host ::ng-deep ngx-extended-pdf-viewer .zoom{max-height:var(--containerHeight, none)}.pdf-wrapper{width:100%;height:100%;max-height:var(--containerHeight, none)}@media print{.hide-all *{display:none!important}}\n"] }]
|
|
369
|
-
}], ctorParameters: () => [{ type: i1$1.AssetControllerService }, { type:
|
|
369
|
+
}], ctorParameters: () => [{ type: i1$1.AssetControllerService }, { type: i1$2.NodeHelperService }, { type: RenderingServiceLibConfiguration, decorators: [{
|
|
370
370
|
type: Optional
|
|
371
371
|
}, {
|
|
372
372
|
type: Inject,
|
|
@@ -448,7 +448,7 @@ class PdfIframeComponent {
|
|
|
448
448
|
iframeDoc.close();
|
|
449
449
|
}
|
|
450
450
|
}
|
|
451
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: PdfIframeComponent, deps: [{ token:
|
|
451
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: PdfIframeComponent, deps: [{ token: i1$2.NodeHelperService }, { token: i0.ElementRef }, { token: RENDERING_SERVICE_LIB_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
452
452
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: PdfIframeComponent, isStandalone: true, selector: "rs-module-pdf-iframe", inputs: { data: "data", node: "node" }, viewQueries: [{ propertyName: "iframe", first: true, predicate: ["iframe"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div\n class=\"pdf-wrapper\"\n>\n <iframe #iframe></iframe>\n</div>\n", styles: [":host{position:relative;display:flex;align-items:center;width:100%;height:100%}.pdf-wrapper{width:100%;height:100%}.pdf-wrapper iframe{width:100%;height:500px;border:0}@media print{.hide-all *{display:none!important}}\n"], dependencies: [{ kind: "ngmodule", type: RenderingModule }] }); }
|
|
453
453
|
}
|
|
454
454
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: PdfIframeComponent, decorators: [{
|
|
@@ -456,7 +456,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
|
|
|
456
456
|
args: [{ selector: 'rs-module-pdf-iframe', imports: [
|
|
457
457
|
RenderingModule,
|
|
458
458
|
], template: "<div\n class=\"pdf-wrapper\"\n>\n <iframe #iframe></iframe>\n</div>\n", styles: [":host{position:relative;display:flex;align-items:center;width:100%;height:100%}.pdf-wrapper{width:100%;height:100%}.pdf-wrapper iframe{width:100%;height:500px;border:0}@media print{.hide-all *{display:none!important}}\n"] }]
|
|
459
|
-
}], ctorParameters: () => [{ type:
|
|
459
|
+
}], ctorParameters: () => [{ type: i1$2.NodeHelperService }, { type: i0.ElementRef }, { type: RenderingServiceLibConfiguration, decorators: [{
|
|
460
460
|
type: Optional
|
|
461
461
|
}, {
|
|
462
462
|
type: Inject,
|
|
@@ -701,8 +701,8 @@ class UrlComponent {
|
|
|
701
701
|
}
|
|
702
702
|
this.embedding = UrlEmbeddings.SODIX;
|
|
703
703
|
}
|
|
704
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: UrlComponent, deps: [{ token: i1$
|
|
705
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: UrlComponent, isStandalone: true, selector: "rs-module-url", inputs: { data: "data", node: "node", isWebComponent: "isWebComponent" }, viewQueries: [{ propertyName: "ltiFrame", first: true, predicate: ["ltiFrame"], descendants: true }], ngImport: i0, template: "<div class=\"url-wrapper\">\n <div *ngIf=\"gdpr === null\">\n <ng-container *ngIf=\"embedding === UrlEmbeddings.YOUTUBE && externalId !== ''\">\n <div class=\"youtube-wrapper\">\n <iframe class=\"youtubeFrame\" [src]=\"sanitizedUrl\" allowfullscreen allow=\"fullscreen\"></iframe>\n </div>\n </ng-container>\n <ng-container *ngIf=\"embedding === UrlEmbeddings.VIMEO && externalId !== ''\">\n <iframe class=\"vimeoFrame\" [src]=\"sanitizedUrl\"></iframe>\n </ng-container>\n <ng-container *ngIf=\"embedding === UrlEmbeddings.AUDIO && url !== ''\" >\n <div class=\"audio-wrapper\">\n <video\n controls\n style=\"max-width: 100%\"\n [src]=\"url\"\n poster=\"assets/img/audio.svg\"\n >\n </video>\n </div>\n </ng-container>\n <ng-container *ngIf=\"embedding === UrlEmbeddings.IMAGE && url !== ''\">\n <div class=\"image-wrapper\">\n <img\n [ngSrc]=\"url\"\n [alt]=\"node?.title ?? 'Edu-Sharing image'\"\n [title]=\"node?.title ?? 'Edu-Sharing image'\"\n >\n </div>\n </ng-container>\n <ng-container *ngIf=\"embedding === UrlEmbeddings.VIDEO && url !== ''\">\n <div class=\"video-wrapper\">\n <video\n controls\n [src]=\"url\"\n >\n </video>\n </div>\n </ng-container>\n <ng-container *ngIf=\"(embedding === UrlEmbeddings.PREZI || embedding === UrlEmbeddings.LEARNINGAPPS) && url !== ''\">\n <iframe class=\"eduUrlFrame\" [src]=sanitizedUrl allowfullscreen=\"\" allow=\"autoplay; fullscreen\" ></iframe>\n </ng-container>\n <ng-container *ngIf=\"embedding === UrlEmbeddings.LTI13TOOL && url !== ''\">\n <iframe\n #ltiFrame\n class=\"ltiFrame\"\n [src]=sanitizedUrl\n allowfullscreen>\n </iframe>\n\n </ng-container>\n <ng-container *ngIf=\"embedding === UrlEmbeddings.SODIX\">\n <iframe\n class=\"sodixFrame\"\n [src]=sanitizedUrl>\n </iframe>\n </ng-container>\n <ng-container *ngIf=\"embedding === UrlEmbeddings.LINK || embedding === UrlEmbeddings.PIXABAY || embedding === UrlEmbeddings.OERSI || embedding === UrlEmbeddings.BROCKHAUS\" >\n <div class=\"link-wrapper\">\n <img [src]=previewUrl alt=\"preview\">\n <a mat-flat-button color=\"primary\" [href]=\"url\" target=\"_blank\" (click)=\"onLinkClick()\">\n <div class=\"link-label\">\n {{ 'SHARING.LINK' | translate }}<i esIcon=\"open_in_new\"></i>\n </div>\n </a>\n </div>\n </ng-container>\n </div>\n\n <div class=\"gdpr-wrapper\" *ngIf=\"gdpr !== null\">\n <div class=\"gdpr-image-container\">\n <img [src]=\"previewUrl\">\n <div class=\"gdpr-overlay\" [class.contrast-mode]=\"isContrastMode\">\n <ng-container *ngIf=\"isGdprGeneric()\">\n <div class=\"gdpr-content\">\n <h3>{{ 'RENDERING.GDPR.EXTERNAL_SITE' | translate }}</h3>\n <span>{{gdprInfoText}}</span>\n <a mat-button=\"outlined\" [href]=\"gdpr.ref\" target=\"_blank\">{{ 'RENDERING.GDPR.GDPR_REGULATIONS' | translate }}</a>\n <button\n mat-button\n (click)=\"consentToGdprWarning()\">\n {{ 'SHARING.LINK' | translate }}\n </button>\n </div>\n </ng-container>\n <ng-container *ngIf=\"!isGdprGeneric()\">\n <div class=\"gdpr-content\">\n <h3>{{ 'RENDERING.GDPR.EXTERNAL_CONTENT' | translate }}</h3>\n <span>{{gdprInfoText}}</span>\n <span>{{'RENDERING.GDPR.FURTHER_INFORMATION' | translate }}</span>\n <a mat-button=\"outlined\" [href]=\"gdpr.ref\" target=\"_blank\">{{ 'RENDERING.GDPR.GDPR_REGULATIONS' | translate }}</a>\n <button\n mat-button\n (click)=\"consentToGdprWarning()\">\n {{ 'RENDERING.GDPR.AGREE_AND_CONTINUE' | translate }}\n </button>\n </div>\n </ng-container>\n </div>\n </div>\n </div>\n</div>\n", styles: [":host{position:relative;display:flex;align-items:center;max-height:var(--containerHeight)}.url-wrapper{width:100%;max-height:var(--containerHeight)}.url-wrapper .audio-wrapper video[poster]{object-fit:cover}.url-wrapper .vimeoFrame,.url-wrapper .preziFrame,.url-wrapper .eduUrlFrame,.url-wrapper .youtubeFrame{width:100%;aspect-ratio:16/9;border:none}.url-wrapper .image-wrapper>img{width:100%;height:auto}.url-wrapper .sodixFrame{border:none;width:100%;height:var(--containerHeight)}.url-wrapper .ltiFrame{border:none;width:100%;max-width:100%}.url-wrapper .gdpr-wrapper{width:100%;display:flex;flex-direction:column;align-items:center}.url-wrapper .gdpr-wrapper .gdpr-image-container{position:relative;width:100%;display:inline-block}.url-wrapper .gdpr-wrapper .gdpr-image-container img{width:100%;height:auto;max-height:var(--containerHeight);display:block}.url-wrapper .gdpr-wrapper .gdpr-image-container .gdpr-overlay{position:absolute;bottom:0;left:0;right:0;background-color:#0009;display:flex;align-items:center;justify-content:center}.url-wrapper .gdpr-wrapper .gdpr-image-container .gdpr-overlay.contrast-mode{background-color:#000}.url-wrapper .gdpr-wrapper .gdpr-image-container .gdpr-overlay .gdpr-content{display:flex;flex-direction:column;align-items:center;gap:.5em;color:#fff;text-align:center;padding-bottom:1em}.url-wrapper .gdpr-wrapper .gdpr-image-container .gdpr-overlay .gdpr-content a{color:#fff}.url-wrapper .gdpr-wrapper .gdpr-image-container .gdpr-overlay .gdpr-content a[mat-button=outlined]{border:1px solid white}.url-wrapper .gdpr-wrapper .gdpr-image-container .gdpr-overlay .gdpr-content span,.url-wrapper .gdpr-wrapper .gdpr-image-container .gdpr-overlay .gdpr-content a{font-size:.875rem}.url-wrapper .gdpr-wrapper .gdpr-image-container .gdpr-overlay .gdpr-content button{background-color:green;color:#fff}.url-wrapper .link-wrapper{width:100%;display:flex;flex-direction:column;align-items:center;gap:1em}.url-wrapper .link-wrapper img{width:100%;height:auto;max-height:calc(var(--containerHeight) - 60px);object-fit:contain;display:block}.url-wrapper .link-wrapper .link-label{display:flex;align-items:center;justify-content:center;gap:10px}.url-wrapper .youtube-wrapper{width:100%;height:auto;display:flex;justify-content:center}.url-wrapper .video-wrapper video{width:100%;height:auto;max-height:calc(var(--containerHeight) - 60px);object-fit:contain}\n"], dependencies: [{ kind: "ngmodule", type: RenderingModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "ngmodule", type: EduSharingUiModule }, { kind: "pipe", type: i4$1.TranslatePipe, name: "translate" }, { kind: "directive", type:
|
|
704
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: UrlComponent, deps: [{ token: i1$3.DomSanitizer }, { token: TrackingService }, { token: GdprService }, { token: i4$1.TranslateService }, { token: i1.EduSharingApiConfiguration }, { token: i1$2.AccessibilityService }, { token: i1$1.GlobalStateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
705
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: UrlComponent, isStandalone: true, selector: "rs-module-url", inputs: { data: "data", node: "node", isWebComponent: "isWebComponent" }, viewQueries: [{ propertyName: "ltiFrame", first: true, predicate: ["ltiFrame"], descendants: true }], ngImport: i0, template: "<div class=\"url-wrapper\">\n <div *ngIf=\"gdpr === null\">\n <ng-container *ngIf=\"embedding === UrlEmbeddings.YOUTUBE && externalId !== ''\">\n <div class=\"youtube-wrapper\">\n <iframe class=\"youtubeFrame\" [src]=\"sanitizedUrl\" allowfullscreen allow=\"fullscreen\"></iframe>\n </div>\n </ng-container>\n <ng-container *ngIf=\"embedding === UrlEmbeddings.VIMEO && externalId !== ''\">\n <iframe class=\"vimeoFrame\" [src]=\"sanitizedUrl\"></iframe>\n </ng-container>\n <ng-container *ngIf=\"embedding === UrlEmbeddings.AUDIO && url !== ''\" >\n <div class=\"audio-wrapper\">\n <video\n controls\n style=\"max-width: 100%\"\n [src]=\"url\"\n poster=\"assets/img/audio.svg\"\n >\n </video>\n </div>\n </ng-container>\n <ng-container *ngIf=\"embedding === UrlEmbeddings.IMAGE && url !== ''\">\n <div class=\"image-wrapper\">\n <img\n [ngSrc]=\"url\"\n [alt]=\"node?.title ?? 'Edu-Sharing image'\"\n [title]=\"node?.title ?? 'Edu-Sharing image'\"\n >\n </div>\n </ng-container>\n <ng-container *ngIf=\"embedding === UrlEmbeddings.VIDEO && url !== ''\">\n <div class=\"video-wrapper\">\n <video\n controls\n [src]=\"url\"\n >\n </video>\n </div>\n </ng-container>\n <ng-container *ngIf=\"(embedding === UrlEmbeddings.PREZI || embedding === UrlEmbeddings.LEARNINGAPPS) && url !== ''\">\n <iframe class=\"eduUrlFrame\" [src]=sanitizedUrl allowfullscreen=\"\" allow=\"autoplay; fullscreen\" ></iframe>\n </ng-container>\n <ng-container *ngIf=\"embedding === UrlEmbeddings.LTI13TOOL && url !== ''\">\n <iframe\n #ltiFrame\n class=\"ltiFrame\"\n [src]=sanitizedUrl\n allowfullscreen>\n </iframe>\n\n </ng-container>\n <ng-container *ngIf=\"embedding === UrlEmbeddings.SODIX\">\n <iframe\n class=\"sodixFrame\"\n [src]=sanitizedUrl>\n </iframe>\n </ng-container>\n <ng-container *ngIf=\"embedding === UrlEmbeddings.LINK || embedding === UrlEmbeddings.PIXABAY || embedding === UrlEmbeddings.OERSI || embedding === UrlEmbeddings.BROCKHAUS\" >\n <div class=\"link-wrapper\">\n <img [src]=previewUrl alt=\"preview\">\n <a mat-flat-button color=\"primary\" [href]=\"url\" target=\"_blank\" (click)=\"onLinkClick()\">\n <div class=\"link-label\">\n {{ 'SHARING.LINK' | translate }}<i esIcon=\"open_in_new\"></i>\n </div>\n </a>\n </div>\n </ng-container>\n </div>\n\n <div class=\"gdpr-wrapper\" *ngIf=\"gdpr !== null\">\n <div class=\"gdpr-image-container\">\n <img [src]=\"previewUrl\">\n <div class=\"gdpr-overlay\" [class.contrast-mode]=\"isContrastMode\">\n <ng-container *ngIf=\"isGdprGeneric()\">\n <div class=\"gdpr-content\">\n <h3>{{ 'RENDERING.GDPR.EXTERNAL_SITE' | translate }}</h3>\n <span>{{gdprInfoText}}</span>\n <a mat-button=\"outlined\" [href]=\"gdpr.ref\" target=\"_blank\">{{ 'RENDERING.GDPR.GDPR_REGULATIONS' | translate }}</a>\n <button\n mat-button\n (click)=\"consentToGdprWarning()\">\n {{ 'SHARING.LINK' | translate }}\n </button>\n </div>\n </ng-container>\n <ng-container *ngIf=\"!isGdprGeneric()\">\n <div class=\"gdpr-content\">\n <h3>{{ 'RENDERING.GDPR.EXTERNAL_CONTENT' | translate }}</h3>\n <span>{{gdprInfoText}}</span>\n <span>{{'RENDERING.GDPR.FURTHER_INFORMATION' | translate }}</span>\n <a mat-button=\"outlined\" [href]=\"gdpr.ref\" target=\"_blank\">{{ 'RENDERING.GDPR.GDPR_REGULATIONS' | translate }}</a>\n <button\n mat-button\n (click)=\"consentToGdprWarning()\">\n {{ 'RENDERING.GDPR.AGREE_AND_CONTINUE' | translate }}\n </button>\n </div>\n </ng-container>\n </div>\n </div>\n </div>\n</div>\n", styles: [":host{position:relative;display:flex;align-items:center;max-height:var(--containerHeight)}.url-wrapper{width:100%;max-height:var(--containerHeight)}.url-wrapper .audio-wrapper video[poster]{object-fit:cover}.url-wrapper .vimeoFrame,.url-wrapper .preziFrame,.url-wrapper .eduUrlFrame,.url-wrapper .youtubeFrame{width:100%;aspect-ratio:16/9;border:none}.url-wrapper .image-wrapper>img{width:100%;height:auto}.url-wrapper .sodixFrame{border:none;width:100%;height:var(--containerHeight)}.url-wrapper .ltiFrame{border:none;width:100%;max-width:100%}.url-wrapper .gdpr-wrapper{width:100%;display:flex;flex-direction:column;align-items:center}.url-wrapper .gdpr-wrapper .gdpr-image-container{position:relative;width:100%;display:inline-block}.url-wrapper .gdpr-wrapper .gdpr-image-container img{width:100%;height:auto;max-height:var(--containerHeight);display:block}.url-wrapper .gdpr-wrapper .gdpr-image-container .gdpr-overlay{position:absolute;bottom:0;left:0;right:0;background-color:#0009;display:flex;align-items:center;justify-content:center}.url-wrapper .gdpr-wrapper .gdpr-image-container .gdpr-overlay.contrast-mode{background-color:#000}.url-wrapper .gdpr-wrapper .gdpr-image-container .gdpr-overlay .gdpr-content{display:flex;flex-direction:column;align-items:center;gap:.5em;color:#fff;text-align:center;padding-bottom:1em}.url-wrapper .gdpr-wrapper .gdpr-image-container .gdpr-overlay .gdpr-content a{color:#fff}.url-wrapper .gdpr-wrapper .gdpr-image-container .gdpr-overlay .gdpr-content a[mat-button=outlined]{border:1px solid white}.url-wrapper .gdpr-wrapper .gdpr-image-container .gdpr-overlay .gdpr-content span,.url-wrapper .gdpr-wrapper .gdpr-image-container .gdpr-overlay .gdpr-content a{font-size:.875rem}.url-wrapper .gdpr-wrapper .gdpr-image-container .gdpr-overlay .gdpr-content button{background-color:green;color:#fff}.url-wrapper .link-wrapper{width:100%;display:flex;flex-direction:column;align-items:center;gap:1em}.url-wrapper .link-wrapper img{width:100%;height:auto;max-height:calc(var(--containerHeight) - 60px);object-fit:contain;display:block}.url-wrapper .link-wrapper .link-label{display:flex;align-items:center;justify-content:center;gap:10px}.url-wrapper .youtube-wrapper{width:100%;height:auto;display:flex;justify-content:center}.url-wrapper .video-wrapper video{width:100%;height:auto;max-height:calc(var(--containerHeight) - 60px);object-fit:contain}\n"], dependencies: [{ kind: "ngmodule", type: RenderingModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }, { kind: "ngmodule", type: EduSharingUiModule }, { kind: "pipe", type: i4$1.TranslatePipe, name: "translate" }, { kind: "directive", type: i1$2.IconDirective, selector: "i[esIcon], i.material-icons", inputs: ["altText", "aria", "esIcon", "esIconContext", "path"] }] }); }
|
|
706
706
|
}
|
|
707
707
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: UrlComponent, decorators: [{
|
|
708
708
|
type: Component,
|
|
@@ -713,7 +713,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
|
|
|
713
713
|
NgOptimizedImage,
|
|
714
714
|
EduSharingUiModule,
|
|
715
715
|
], template: "<div class=\"url-wrapper\">\n <div *ngIf=\"gdpr === null\">\n <ng-container *ngIf=\"embedding === UrlEmbeddings.YOUTUBE && externalId !== ''\">\n <div class=\"youtube-wrapper\">\n <iframe class=\"youtubeFrame\" [src]=\"sanitizedUrl\" allowfullscreen allow=\"fullscreen\"></iframe>\n </div>\n </ng-container>\n <ng-container *ngIf=\"embedding === UrlEmbeddings.VIMEO && externalId !== ''\">\n <iframe class=\"vimeoFrame\" [src]=\"sanitizedUrl\"></iframe>\n </ng-container>\n <ng-container *ngIf=\"embedding === UrlEmbeddings.AUDIO && url !== ''\" >\n <div class=\"audio-wrapper\">\n <video\n controls\n style=\"max-width: 100%\"\n [src]=\"url\"\n poster=\"assets/img/audio.svg\"\n >\n </video>\n </div>\n </ng-container>\n <ng-container *ngIf=\"embedding === UrlEmbeddings.IMAGE && url !== ''\">\n <div class=\"image-wrapper\">\n <img\n [ngSrc]=\"url\"\n [alt]=\"node?.title ?? 'Edu-Sharing image'\"\n [title]=\"node?.title ?? 'Edu-Sharing image'\"\n >\n </div>\n </ng-container>\n <ng-container *ngIf=\"embedding === UrlEmbeddings.VIDEO && url !== ''\">\n <div class=\"video-wrapper\">\n <video\n controls\n [src]=\"url\"\n >\n </video>\n </div>\n </ng-container>\n <ng-container *ngIf=\"(embedding === UrlEmbeddings.PREZI || embedding === UrlEmbeddings.LEARNINGAPPS) && url !== ''\">\n <iframe class=\"eduUrlFrame\" [src]=sanitizedUrl allowfullscreen=\"\" allow=\"autoplay; fullscreen\" ></iframe>\n </ng-container>\n <ng-container *ngIf=\"embedding === UrlEmbeddings.LTI13TOOL && url !== ''\">\n <iframe\n #ltiFrame\n class=\"ltiFrame\"\n [src]=sanitizedUrl\n allowfullscreen>\n </iframe>\n\n </ng-container>\n <ng-container *ngIf=\"embedding === UrlEmbeddings.SODIX\">\n <iframe\n class=\"sodixFrame\"\n [src]=sanitizedUrl>\n </iframe>\n </ng-container>\n <ng-container *ngIf=\"embedding === UrlEmbeddings.LINK || embedding === UrlEmbeddings.PIXABAY || embedding === UrlEmbeddings.OERSI || embedding === UrlEmbeddings.BROCKHAUS\" >\n <div class=\"link-wrapper\">\n <img [src]=previewUrl alt=\"preview\">\n <a mat-flat-button color=\"primary\" [href]=\"url\" target=\"_blank\" (click)=\"onLinkClick()\">\n <div class=\"link-label\">\n {{ 'SHARING.LINK' | translate }}<i esIcon=\"open_in_new\"></i>\n </div>\n </a>\n </div>\n </ng-container>\n </div>\n\n <div class=\"gdpr-wrapper\" *ngIf=\"gdpr !== null\">\n <div class=\"gdpr-image-container\">\n <img [src]=\"previewUrl\">\n <div class=\"gdpr-overlay\" [class.contrast-mode]=\"isContrastMode\">\n <ng-container *ngIf=\"isGdprGeneric()\">\n <div class=\"gdpr-content\">\n <h3>{{ 'RENDERING.GDPR.EXTERNAL_SITE' | translate }}</h3>\n <span>{{gdprInfoText}}</span>\n <a mat-button=\"outlined\" [href]=\"gdpr.ref\" target=\"_blank\">{{ 'RENDERING.GDPR.GDPR_REGULATIONS' | translate }}</a>\n <button\n mat-button\n (click)=\"consentToGdprWarning()\">\n {{ 'SHARING.LINK' | translate }}\n </button>\n </div>\n </ng-container>\n <ng-container *ngIf=\"!isGdprGeneric()\">\n <div class=\"gdpr-content\">\n <h3>{{ 'RENDERING.GDPR.EXTERNAL_CONTENT' | translate }}</h3>\n <span>{{gdprInfoText}}</span>\n <span>{{'RENDERING.GDPR.FURTHER_INFORMATION' | translate }}</span>\n <a mat-button=\"outlined\" [href]=\"gdpr.ref\" target=\"_blank\">{{ 'RENDERING.GDPR.GDPR_REGULATIONS' | translate }}</a>\n <button\n mat-button\n (click)=\"consentToGdprWarning()\">\n {{ 'RENDERING.GDPR.AGREE_AND_CONTINUE' | translate }}\n </button>\n </div>\n </ng-container>\n </div>\n </div>\n </div>\n</div>\n", styles: [":host{position:relative;display:flex;align-items:center;max-height:var(--containerHeight)}.url-wrapper{width:100%;max-height:var(--containerHeight)}.url-wrapper .audio-wrapper video[poster]{object-fit:cover}.url-wrapper .vimeoFrame,.url-wrapper .preziFrame,.url-wrapper .eduUrlFrame,.url-wrapper .youtubeFrame{width:100%;aspect-ratio:16/9;border:none}.url-wrapper .image-wrapper>img{width:100%;height:auto}.url-wrapper .sodixFrame{border:none;width:100%;height:var(--containerHeight)}.url-wrapper .ltiFrame{border:none;width:100%;max-width:100%}.url-wrapper .gdpr-wrapper{width:100%;display:flex;flex-direction:column;align-items:center}.url-wrapper .gdpr-wrapper .gdpr-image-container{position:relative;width:100%;display:inline-block}.url-wrapper .gdpr-wrapper .gdpr-image-container img{width:100%;height:auto;max-height:var(--containerHeight);display:block}.url-wrapper .gdpr-wrapper .gdpr-image-container .gdpr-overlay{position:absolute;bottom:0;left:0;right:0;background-color:#0009;display:flex;align-items:center;justify-content:center}.url-wrapper .gdpr-wrapper .gdpr-image-container .gdpr-overlay.contrast-mode{background-color:#000}.url-wrapper .gdpr-wrapper .gdpr-image-container .gdpr-overlay .gdpr-content{display:flex;flex-direction:column;align-items:center;gap:.5em;color:#fff;text-align:center;padding-bottom:1em}.url-wrapper .gdpr-wrapper .gdpr-image-container .gdpr-overlay .gdpr-content a{color:#fff}.url-wrapper .gdpr-wrapper .gdpr-image-container .gdpr-overlay .gdpr-content a[mat-button=outlined]{border:1px solid white}.url-wrapper .gdpr-wrapper .gdpr-image-container .gdpr-overlay .gdpr-content span,.url-wrapper .gdpr-wrapper .gdpr-image-container .gdpr-overlay .gdpr-content a{font-size:.875rem}.url-wrapper .gdpr-wrapper .gdpr-image-container .gdpr-overlay .gdpr-content button{background-color:green;color:#fff}.url-wrapper .link-wrapper{width:100%;display:flex;flex-direction:column;align-items:center;gap:1em}.url-wrapper .link-wrapper img{width:100%;height:auto;max-height:calc(var(--containerHeight) - 60px);object-fit:contain;display:block}.url-wrapper .link-wrapper .link-label{display:flex;align-items:center;justify-content:center;gap:10px}.url-wrapper .youtube-wrapper{width:100%;height:auto;display:flex;justify-content:center}.url-wrapper .video-wrapper video{width:100%;height:auto;max-height:calc(var(--containerHeight) - 60px);object-fit:contain}\n"] }]
|
|
716
|
-
}], ctorParameters: () => [{ type: i1$
|
|
716
|
+
}], ctorParameters: () => [{ type: i1$3.DomSanitizer }, { type: TrackingService }, { type: GdprService }, { type: i4$1.TranslateService }, { type: i1.EduSharingApiConfiguration }, { type: i1$2.AccessibilityService }, { type: i1$1.GlobalStateService }], propDecorators: { data: [{
|
|
717
717
|
type: Input
|
|
718
718
|
}], node: [{
|
|
719
719
|
type: Input
|
|
@@ -755,8 +755,8 @@ class EduHtmlComponent {
|
|
|
755
755
|
return new class {
|
|
756
756
|
};
|
|
757
757
|
}
|
|
758
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: EduHtmlComponent, deps: [{ token: i1$
|
|
759
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: EduHtmlComponent, isStandalone: true, selector: "rs-module-edu-html", inputs: { data: "data", node: "node" }, ngImport: i0, template: "<div class=\"eduHtml-wrapper\" *ngIf=\"data?.items !== undefined\">\n <iframe [title]=\"node?.title ?? 'eduhtml'\" class=\"frame\" [src]=\"sanitizedUrl\"></iframe>\n <a mat-flat-button color=\"primary\" [href]=\"url\" target=\"_blank\">\n <div class=\"link-label\">\n {{ 'RENDERING.OPEN_IN_NEW_TAB' | translate }}<i esIcon=\"open_in_new\"></i>\n </div>\n </a>\n</div>\n", styles: [":host{position:relative;display:flex;align-items:center;width:100%;height:100%;max-height:var(--containerHeight)}.eduHtml-wrapper{width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:10px;max-height:var(--containerHeight)}.eduHtml-wrapper .frame{border:2px solid lightgray;width:100%;height:100%}.eduHtml-wrapper .link-label{display:flex;align-items:center;justify-content:center;gap:10px}\n"], dependencies: [{ kind: "ngmodule", type: RenderingModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i4$1.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: EduSharingUiModule }, { kind: "directive", type:
|
|
758
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: EduHtmlComponent, deps: [{ token: i1$3.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
759
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: EduHtmlComponent, isStandalone: true, selector: "rs-module-edu-html", inputs: { data: "data", node: "node" }, ngImport: i0, template: "<div class=\"eduHtml-wrapper\" *ngIf=\"data?.items !== undefined\">\n <iframe [title]=\"node?.title ?? 'eduhtml'\" class=\"frame\" [src]=\"sanitizedUrl\"></iframe>\n <a mat-flat-button color=\"primary\" [href]=\"url\" target=\"_blank\">\n <div class=\"link-label\">\n {{ 'RENDERING.OPEN_IN_NEW_TAB' | translate }}<i esIcon=\"open_in_new\"></i>\n </div>\n </a>\n</div>\n", styles: [":host{position:relative;display:flex;align-items:center;width:100%;height:100%;max-height:var(--containerHeight)}.eduHtml-wrapper{width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:10px;max-height:var(--containerHeight)}.eduHtml-wrapper .frame{border:2px solid lightgray;width:100%;height:100%}.eduHtml-wrapper .link-label{display:flex;align-items:center;justify-content:center;gap:10px}\n"], dependencies: [{ kind: "ngmodule", type: RenderingModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatAnchor, selector: "a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i4$1.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: EduSharingUiModule }, { kind: "directive", type: i1$2.IconDirective, selector: "i[esIcon], i.material-icons", inputs: ["altText", "aria", "esIcon", "esIconContext", "path"] }] }); }
|
|
760
760
|
}
|
|
761
761
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: EduHtmlComponent, decorators: [{
|
|
762
762
|
type: Component,
|
|
@@ -767,7 +767,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
|
|
|
767
767
|
TranslateModule,
|
|
768
768
|
EduSharingUiModule,
|
|
769
769
|
], template: "<div class=\"eduHtml-wrapper\" *ngIf=\"data?.items !== undefined\">\n <iframe [title]=\"node?.title ?? 'eduhtml'\" class=\"frame\" [src]=\"sanitizedUrl\"></iframe>\n <a mat-flat-button color=\"primary\" [href]=\"url\" target=\"_blank\">\n <div class=\"link-label\">\n {{ 'RENDERING.OPEN_IN_NEW_TAB' | translate }}<i esIcon=\"open_in_new\"></i>\n </div>\n </a>\n</div>\n", styles: [":host{position:relative;display:flex;align-items:center;width:100%;height:100%;max-height:var(--containerHeight)}.eduHtml-wrapper{width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:10px;max-height:var(--containerHeight)}.eduHtml-wrapper .frame{border:2px solid lightgray;width:100%;height:100%}.eduHtml-wrapper .link-label{display:flex;align-items:center;justify-content:center;gap:10px}\n"] }]
|
|
770
|
-
}], ctorParameters: () => [{ type: i1$
|
|
770
|
+
}], ctorParameters: () => [{ type: i1$3.DomSanitizer }], propDecorators: { data: [{
|
|
771
771
|
type: Input
|
|
772
772
|
}], node: [{
|
|
773
773
|
type: Input
|
|
@@ -1316,13 +1316,13 @@ class RenderComponent {
|
|
|
1316
1316
|
progress: progress
|
|
1317
1317
|
});
|
|
1318
1318
|
}
|
|
1319
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: RenderComponent, deps: [{ token: TrackingService }, { token: i0.Injector }, { token: i0.EnvironmentInjector }, { token: i0.DestroyRef }, { token: CurrentRenderRootUrlService }, { token:
|
|
1319
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: RenderComponent, deps: [{ token: TrackingService }, { token: i0.Injector }, { token: i0.EnvironmentInjector }, { token: i0.DestroyRef }, { token: CurrentRenderRootUrlService }, { token: i1$2.NodeHelperService }, { token: RENDERING_SERVICE_LIB_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1320
1320
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.14", type: RenderComponent, isStandalone: true, selector: "rs-root", inputs: { request: "request", node: "node", assetUrl: "assetUrl", resourceUrl: "resourceUrl", isWebComponent: "isWebComponent" }, providers: [
|
|
1321
1321
|
TranslateService,
|
|
1322
1322
|
CurrentRenderRootUrlService,
|
|
1323
|
-
], usesOnChanges: true, ngImport: i0, template: "@defer (when node && this.nodeHelperService.isNodeRevoked(node)){\n <rs-revoked [node]=\"node\"></rs-revoked>\n}\n@defer (when node && !(this.nodeHelperService.isNodeRevoked(node) && node.size === '0')) {\n <div class=\"module module-{{(renderData$ | async)?.module}}\">\n <ng-container *ngIf=\"renderData$ | async as data\">\n @defer (when data?.module === 'IMAGE'){\n <rs-module-image [data]=\"data\" [node]=\"node\"></rs-module-image>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'SODIX'){\n <rs-module-url [data]=\"data\" [node]=\"node\"></rs-module-url>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'VIDEO'){\n <rs-module-video [data]=\"data\" [node]=\"node\"></rs-module-video>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when (data?.module === 'PDF' || data?.module === 'DOCUMENT') && isWebComponent) {\n <rs-module-pdf-iframe [data]=\"data\" [node]=\"node\"></rs-module-pdf-iframe>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when (data?.module === 'PDF' || data?.module === 'DOCUMENT') && !isWebComponent) {\n <rs-module-pdf [data]=\"data\" [node]=\"node\"></rs-module-pdf>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'EDUHTML' || data?.module === 'JUPYTER' || data.module === 'SPREADSHEET' || data.module === 'HTML') {\n <rs-module-edu-html [data]=\"data\" [node]=\"node\"></rs-module-edu-html>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'H5P'){\n <rs-module-h5p [data]=\"data\" [node]=\"node\"></rs-module-h5p>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'AUDIO'){\n <rs-module-audio [data]=\"data\" [node]=\"node\"></rs-module-audio>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'MOODLE' || data?.module === 'SCORM') {\n <rs-module-moodle [data]=\"data\" [node]=\"node\" [isWebComponent]=\"isWebComponent\"></rs-module-moodle>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'BINDER'){\n <rs-module-binder [data]=\"data\" [node]=\"node\"></rs-module-binder>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'DDB'){\n <rs-module-ddb [data]=\"data\" [node]=\"node\"></rs-module-ddb>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n <ng-container *ngIf=\"data.module === 'default'\">\n @defer (when data.module === 'default') {\n <rs-module-default [node]=\"node\"></rs-module-default>\n }\n </ng-container>\n <ng-container *ngIf=\"data.module === 'url'\">\n @defer (when data.module === 'url') {\n <rs-module-url [node]=\"node\" [data]=\"data\" [isWebComponent]=\"isWebComponent\"></rs-module-url>\n }\n </ng-container>\n <ng-container *ngIf=\"data.module === 'ERROR'\">\n @defer (when data.module === 'ERROR') {\n <rs-module-error [node]=\"node\" [data]=\"data\"></rs-module-error>\n }\n </ng-container>\n </ng-container>\n <div class=\"progress\" *ngIf=\"(renderData$ | async) === null;\">\n <ng-container *ngIf=\"progress$ | async as progress\">\n <ng-container [ngSwitch]=\"['VIDEO', 'AUDIO'].includes(progress.module) ? 'bar' : 'spinner'\">\n <ng-container *ngSwitchCase=\"'bar'\">\n <div *ngIf=\"(progress.progress ?? 0) < 0\">{{ 'RENDERING.QUEUE_POSITION' | translate }}: {{-(progress.progress ?? 0)}}</div>\n <div *ngIf=\"(progress.progress ?? 0) >= 0\">{{ 'RENDERING.CONVERTING' | translate }}</div>\n <div *ngIf=\"(progress.progress ?? 0) >= 0\">\n <mat-progress-bar [value]=\"(progress.progress ?? 0)\"></mat-progress-bar>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'spinner'\">\n <div *ngIf=\"(progress.progress ?? 0) < 0\">{{ 'RENDERING.QUEUE_POSITION' | translate }}: {{-(progress.progress ?? 0)}}</div>\n <div *ngIf=\"(progress.progress ?? 0) >= 0\">{{ 'RENDERING.CONVERTING' | translate }}</div>\n <div *ngIf=\"(progress.progress ?? 0) >= 0\">\n <mat-spinner [diameter]=\"50\"></mat-spinner>\n </div>\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n </div>\n}\n<ng-template #loading>\n <div class=\"progress\">\n <mat-spinner></mat-spinner>\n </div>\n</ng-template>\n", styles: [":host{display:flex;flex-direction:column;gap:20px}.module{display:flex;flex-direction:column;gap:5px;height:auto}.module.module-PDF{height:100%}.module.module-{align-items:center}.module .progress{width:80%;min-height:80px;display:flex;justify-content:center;flex-grow:1;align-items:center;flex-direction:column;gap:10px}.module .progress>div{width:100%;display:flex;justify-content:center}.module .progress mat-progress-bar{width:100%;height:4px}\n"], dependencies: [{ kind: "ngmodule", type: RenderingApiModule }, { kind: "ngmodule", type: RenderingModule }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i4$3.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "ngmodule", type: MatProgressBarModule }, { kind: "ngmodule", type: MatButtonModule }, { kind: "ngmodule", type: EduSharingApiModule }, { kind: "ngmodule", type: EduSharingUiCommonModule }, { kind: "ngmodule", type: TranslateModule }], deferBlockDependencies: [() => [Promise.resolve().then(function () { return revoked_component; }).then(m => m.RevokedComponent)], () => [i2.NgIf, i2.NgTemplateOutlet, i2.NgSwitch, i2.NgSwitchCase, i2.AsyncPipe, i4$3.MatProgressSpinner, i6
|
|
1323
|
+
], usesOnChanges: true, ngImport: i0, template: "@defer (when node && this.nodeHelperService.isNodeRevoked(node)){\n <rs-revoked [node]=\"node\"></rs-revoked>\n}\n@defer (when node && !(this.nodeHelperService.isNodeRevoked(node) && node.size === '0')) {\n <div class=\"module module-{{(renderData$ | async)?.module}}\">\n <ng-container *ngIf=\"renderData$ | async as data\">\n @defer (when data?.module === 'IMAGE'){\n <rs-module-image [data]=\"data\" [node]=\"node\"></rs-module-image>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'SODIX'){\n <rs-module-url [data]=\"data\" [node]=\"node\"></rs-module-url>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'VIDEO'){\n <rs-module-video [data]=\"data\" [node]=\"node\"></rs-module-video>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when (data?.module === 'PDF' || data?.module === 'DOCUMENT') && isWebComponent) {\n <rs-module-pdf-iframe [data]=\"data\" [node]=\"node\"></rs-module-pdf-iframe>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when (data?.module === 'PDF' || data?.module === 'DOCUMENT') && !isWebComponent) {\n <rs-module-pdf [data]=\"data\" [node]=\"node\"></rs-module-pdf>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'EDUHTML' || data?.module === 'JUPYTER' || data.module === 'SPREADSHEET' || data.module === 'HTML') {\n <rs-module-edu-html [data]=\"data\" [node]=\"node\"></rs-module-edu-html>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'H5P'){\n <rs-module-h5p [data]=\"data\" [node]=\"node\"></rs-module-h5p>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'AUDIO'){\n <rs-module-audio [data]=\"data\" [node]=\"node\"></rs-module-audio>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'MOODLE' || data?.module === 'SCORM') {\n <rs-module-moodle [data]=\"data\" [node]=\"node\" [isWebComponent]=\"isWebComponent\"></rs-module-moodle>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'BINDER'){\n <rs-module-binder [data]=\"data\" [node]=\"node\"></rs-module-binder>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'DDB'){\n <rs-module-ddb [data]=\"data\" [node]=\"node\"></rs-module-ddb>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n <ng-container *ngIf=\"data.module === 'default'\">\n @defer (when data.module === 'default') {\n <rs-module-default [node]=\"node\"></rs-module-default>\n }\n </ng-container>\n <ng-container *ngIf=\"data.module === 'url'\">\n @defer (when data.module === 'url') {\n <rs-module-url [node]=\"node\" [data]=\"data\" [isWebComponent]=\"isWebComponent\"></rs-module-url>\n }\n </ng-container>\n <ng-container *ngIf=\"data.module === 'ERROR'\">\n @defer (when data.module === 'ERROR') {\n <rs-module-error [node]=\"node\" [data]=\"data\"></rs-module-error>\n }\n </ng-container>\n </ng-container>\n <div class=\"progress\" *ngIf=\"(renderData$ | async) === null;\">\n <ng-container *ngIf=\"progress$ | async as progress\">\n <ng-container [ngSwitch]=\"['VIDEO', 'AUDIO'].includes(progress.module) ? 'bar' : 'spinner'\">\n <ng-container *ngSwitchCase=\"'bar'\">\n <div *ngIf=\"(progress.progress ?? 0) < 0\">{{ 'RENDERING.QUEUE_POSITION' | translate }}: {{-(progress.progress ?? 0)}}</div>\n <div *ngIf=\"(progress.progress ?? 0) >= 0\">{{ 'RENDERING.CONVERTING' | translate }}</div>\n <div *ngIf=\"(progress.progress ?? 0) >= 0\">\n <mat-progress-bar [value]=\"(progress.progress ?? 0)\"></mat-progress-bar>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'spinner'\">\n <div *ngIf=\"(progress.progress ?? 0) < 0\">{{ 'RENDERING.QUEUE_POSITION' | translate }}: {{-(progress.progress ?? 0)}}</div>\n <div *ngIf=\"(progress.progress ?? 0) >= 0\">{{ 'RENDERING.CONVERTING' | translate }}</div>\n <div *ngIf=\"(progress.progress ?? 0) >= 0\">\n <mat-spinner [diameter]=\"50\"></mat-spinner>\n </div>\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n </div>\n}\n<ng-template #loading>\n <div class=\"progress\">\n <mat-spinner></mat-spinner>\n </div>\n</ng-template>\n", styles: [":host{display:flex;flex-direction:column;gap:20px}.module{display:flex;flex-direction:column;gap:5px;height:auto}.module.module-PDF{height:100%}.module.module-{align-items:center}.module .progress{width:80%;min-height:80px;display:flex;justify-content:center;flex-grow:1;align-items:center;flex-direction:column;gap:10px}.module .progress>div{width:100%;display:flex;justify-content:center}.module .progress mat-progress-bar{width:100%;height:4px}\n"], dependencies: [{ kind: "ngmodule", type: RenderingApiModule }, { kind: "ngmodule", type: RenderingModule }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i4$3.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "ngmodule", type: MatProgressBarModule }, { kind: "ngmodule", type: MatButtonModule }, { kind: "ngmodule", type: EduSharingApiModule }, { kind: "ngmodule", type: EduSharingUiCommonModule }, { kind: "ngmodule", type: TranslateModule }], deferBlockDependencies: [() => [Promise.resolve().then(function () { return revoked_component; }).then(m => m.RevokedComponent)], () => [i2.NgIf, i2.NgTemplateOutlet, i2.NgSwitch, i2.NgSwitchCase, i2.AsyncPipe, i4$3.MatProgressSpinner, i6.MatProgressBar, i4$1.TranslatePipe], () => [Promise.resolve().then(function () { return image_component; }).then(m => m.ImageComponent)], () => [Promise.resolve().then(function () { return url_component; }).then(m => m.UrlComponent)], () => [Promise.resolve().then(function () { return video_component; }).then(m => m.VideoComponent)], () => [Promise.resolve().then(function () { return pdfIframe_component; }).then(m => m.PdfIframeComponent)], () => [Promise.resolve().then(function () { return pdf_component; }).then(m => m.PdfComponent)], () => [Promise.resolve().then(function () { return eduHtml_component; }).then(m => m.EduHtmlComponent)], () => [import('./ngx-rendering-service-lib-h5p.component-Bw7u0HC5.mjs').then(m => m.H5pComponent)], () => [import('./ngx-rendering-service-lib-audio.component-B5Dl1Zoj.mjs').then(m => m.AudioComponent)], () => [import('./ngx-rendering-service-lib-moodle.component-BEdmvo5-.mjs').then(m => m.MoodleComponent)], () => [import('./ngx-rendering-service-lib-binder.component-DaSISQWr.mjs').then(m => m.BinderComponent)], () => [import('./ngx-rendering-service-lib-ddb.component-C0V4X-DD.mjs').then(m => m.DdbComponent)], () => [import('./ngx-rendering-service-lib-default.component-rVthepNn.mjs').then(m => m.DefaultComponent)], () => [Promise.resolve().then(function () { return url_component; }).then(m => m.UrlComponent)], () => [import('./ngx-rendering-service-lib-error.component-Ct4uKubl.mjs').then(m => m.ErrorComponent)]] }); }
|
|
1324
1324
|
}
|
|
1325
|
-
i0.ɵɵngDeclareClassMetadataAsync({ minVersion: "18.0.0", version: "19.2.14", ngImport: i0, type: RenderComponent, resolveDeferredDeps: () => [Promise.resolve().then(function () { return revoked_component; }).then(m => m.RevokedComponent), Promise.resolve().then(function () { return image_component; }).then(m => m.ImageComponent), Promise.resolve().then(function () { return url_component; }).then(m => m.UrlComponent), Promise.resolve().then(function () { return video_component; }).then(m => m.VideoComponent), Promise.resolve().then(function () { return pdfIframe_component; }).then(m => m.PdfIframeComponent), Promise.resolve().then(function () { return pdf_component; }).then(m => m.PdfComponent), Promise.resolve().then(function () { return eduHtml_component; }).then(m => m.EduHtmlComponent), import('./ngx-rendering-service-lib-h5p.component-
|
|
1325
|
+
i0.ɵɵngDeclareClassMetadataAsync({ minVersion: "18.0.0", version: "19.2.14", ngImport: i0, type: RenderComponent, resolveDeferredDeps: () => [Promise.resolve().then(function () { return revoked_component; }).then(m => m.RevokedComponent), Promise.resolve().then(function () { return image_component; }).then(m => m.ImageComponent), Promise.resolve().then(function () { return url_component; }).then(m => m.UrlComponent), Promise.resolve().then(function () { return video_component; }).then(m => m.VideoComponent), Promise.resolve().then(function () { return pdfIframe_component; }).then(m => m.PdfIframeComponent), Promise.resolve().then(function () { return pdf_component; }).then(m => m.PdfComponent), Promise.resolve().then(function () { return eduHtml_component; }).then(m => m.EduHtmlComponent), import('./ngx-rendering-service-lib-h5p.component-Bw7u0HC5.mjs').then(m => m.H5pComponent), import('./ngx-rendering-service-lib-audio.component-B5Dl1Zoj.mjs').then(m => m.AudioComponent), import('./ngx-rendering-service-lib-moodle.component-BEdmvo5-.mjs').then(m => m.MoodleComponent), import('./ngx-rendering-service-lib-binder.component-DaSISQWr.mjs').then(m => m.BinderComponent), import('./ngx-rendering-service-lib-ddb.component-C0V4X-DD.mjs').then(m => m.DdbComponent), import('./ngx-rendering-service-lib-default.component-rVthepNn.mjs').then(m => m.DefaultComponent), import('./ngx-rendering-service-lib-error.component-Ct4uKubl.mjs').then(m => m.ErrorComponent)], resolveMetadata: (RevokedComponent, ImageComponent, UrlComponent, VideoComponent, PdfIframeComponent, PdfComponent, EduHtmlComponent, H5pComponent, AudioComponent, MoodleComponent, BinderComponent, DdbComponent, DefaultComponent, ErrorComponent) => ({ decorators: [{
|
|
1326
1326
|
type: Component,
|
|
1327
1327
|
args: [{ selector: 'rs-root', imports: [
|
|
1328
1328
|
RenderingApiModule,
|
|
@@ -1351,7 +1351,7 @@ i0.ɵɵngDeclareClassMetadataAsync({ minVersion: "18.0.0", version: "19.2.14", n
|
|
|
1351
1351
|
TranslateService,
|
|
1352
1352
|
CurrentRenderRootUrlService,
|
|
1353
1353
|
], template: "@defer (when node && this.nodeHelperService.isNodeRevoked(node)){\n <rs-revoked [node]=\"node\"></rs-revoked>\n}\n@defer (when node && !(this.nodeHelperService.isNodeRevoked(node) && node.size === '0')) {\n <div class=\"module module-{{(renderData$ | async)?.module}}\">\n <ng-container *ngIf=\"renderData$ | async as data\">\n @defer (when data?.module === 'IMAGE'){\n <rs-module-image [data]=\"data\" [node]=\"node\"></rs-module-image>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'SODIX'){\n <rs-module-url [data]=\"data\" [node]=\"node\"></rs-module-url>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'VIDEO'){\n <rs-module-video [data]=\"data\" [node]=\"node\"></rs-module-video>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when (data?.module === 'PDF' || data?.module === 'DOCUMENT') && isWebComponent) {\n <rs-module-pdf-iframe [data]=\"data\" [node]=\"node\"></rs-module-pdf-iframe>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when (data?.module === 'PDF' || data?.module === 'DOCUMENT') && !isWebComponent) {\n <rs-module-pdf [data]=\"data\" [node]=\"node\"></rs-module-pdf>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'EDUHTML' || data?.module === 'JUPYTER' || data.module === 'SPREADSHEET' || data.module === 'HTML') {\n <rs-module-edu-html [data]=\"data\" [node]=\"node\"></rs-module-edu-html>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'H5P'){\n <rs-module-h5p [data]=\"data\" [node]=\"node\"></rs-module-h5p>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'AUDIO'){\n <rs-module-audio [data]=\"data\" [node]=\"node\"></rs-module-audio>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'MOODLE' || data?.module === 'SCORM') {\n <rs-module-moodle [data]=\"data\" [node]=\"node\" [isWebComponent]=\"isWebComponent\"></rs-module-moodle>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'BINDER'){\n <rs-module-binder [data]=\"data\" [node]=\"node\"></rs-module-binder>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'DDB'){\n <rs-module-ddb [data]=\"data\" [node]=\"node\"></rs-module-ddb>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n <ng-container *ngIf=\"data.module === 'default'\">\n @defer (when data.module === 'default') {\n <rs-module-default [node]=\"node\"></rs-module-default>\n }\n </ng-container>\n <ng-container *ngIf=\"data.module === 'url'\">\n @defer (when data.module === 'url') {\n <rs-module-url [node]=\"node\" [data]=\"data\" [isWebComponent]=\"isWebComponent\"></rs-module-url>\n }\n </ng-container>\n <ng-container *ngIf=\"data.module === 'ERROR'\">\n @defer (when data.module === 'ERROR') {\n <rs-module-error [node]=\"node\" [data]=\"data\"></rs-module-error>\n }\n </ng-container>\n </ng-container>\n <div class=\"progress\" *ngIf=\"(renderData$ | async) === null;\">\n <ng-container *ngIf=\"progress$ | async as progress\">\n <ng-container [ngSwitch]=\"['VIDEO', 'AUDIO'].includes(progress.module) ? 'bar' : 'spinner'\">\n <ng-container *ngSwitchCase=\"'bar'\">\n <div *ngIf=\"(progress.progress ?? 0) < 0\">{{ 'RENDERING.QUEUE_POSITION' | translate }}: {{-(progress.progress ?? 0)}}</div>\n <div *ngIf=\"(progress.progress ?? 0) >= 0\">{{ 'RENDERING.CONVERTING' | translate }}</div>\n <div *ngIf=\"(progress.progress ?? 0) >= 0\">\n <mat-progress-bar [value]=\"(progress.progress ?? 0)\"></mat-progress-bar>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'spinner'\">\n <div *ngIf=\"(progress.progress ?? 0) < 0\">{{ 'RENDERING.QUEUE_POSITION' | translate }}: {{-(progress.progress ?? 0)}}</div>\n <div *ngIf=\"(progress.progress ?? 0) >= 0\">{{ 'RENDERING.CONVERTING' | translate }}</div>\n <div *ngIf=\"(progress.progress ?? 0) >= 0\">\n <mat-spinner [diameter]=\"50\"></mat-spinner>\n </div>\n </ng-container>\n </ng-container>\n </ng-container>\n </div>\n </div>\n}\n<ng-template #loading>\n <div class=\"progress\">\n <mat-spinner></mat-spinner>\n </div>\n</ng-template>\n", styles: [":host{display:flex;flex-direction:column;gap:20px}.module{display:flex;flex-direction:column;gap:5px;height:auto}.module.module-PDF{height:100%}.module.module-{align-items:center}.module .progress{width:80%;min-height:80px;display:flex;justify-content:center;flex-grow:1;align-items:center;flex-direction:column;gap:10px}.module .progress>div{width:100%;display:flex;justify-content:center}.module .progress mat-progress-bar{width:100%;height:4px}\n"] }]
|
|
1354
|
-
}], ctorParameters: () => [{ type: TrackingService }, { type: i0.Injector }, { type: i0.EnvironmentInjector }, { type: i0.DestroyRef }, { type: CurrentRenderRootUrlService }, { type:
|
|
1354
|
+
}], ctorParameters: () => [{ type: TrackingService }, { type: i0.Injector }, { type: i0.EnvironmentInjector }, { type: i0.DestroyRef }, { type: CurrentRenderRootUrlService }, { type: i1$2.NodeHelperService }, { type: RenderingServiceLibConfiguration, decorators: [{
|
|
1355
1355
|
type: Optional
|
|
1356
1356
|
}, {
|
|
1357
1357
|
type: Inject,
|
|
@@ -1385,7 +1385,7 @@ class RevokedComponent {
|
|
|
1385
1385
|
});
|
|
1386
1386
|
}
|
|
1387
1387
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: RevokedComponent, deps: [{ token: DialogsService, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1388
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: RevokedComponent, isStandalone: true, selector: "rs-revoked", inputs: { node: "node" }, ngImport: i0, template: "<div class=\"revoked\">\n <!--<h1 class=\"mat-heading-1\">{{ node!! | nodeTitle }}</h1>-->\n <es-info-message mode=\"warning\" class=\"details-message\">{{\n 'RENDERING.REVOKED.DETAILS' + (node?.size === '0' ? '_EMPTY' : '') | translate\n }}</es-info-message>\n <div class=\"details\">\n <div class=\"date\">\n <label for=\"revoked-date\">{{ 'RENDERING.REVOKED.DATE' | translate }}:</label\n ><span\n id=\"revoked-date\"\n >{{ node?.properties?.['ccm:revoked_date_LONG']?.[0]!! | formatDate:{relative: false, time: false} }}</span\n >\n </div>\n <div class=\"reason\">\n <label for=\"revoked-reason\">{{ 'RENDERING.REVOKED.REASON' | translate }}:</label\n ><span id=\"revoked-reason\">{{ node?.properties?.['ccm:revoked_reason']?.join('') }}</span>\n </div>\n </div>\n <div class=\"actions\">\n <button mat-button color=\"primary\" (click)=\"reportRevokeFeedback()\" *ngIf=\"dialogsService\">\n <i esIcon=\"arrow_forward\"></i>{{ 'RENDERING.REVOKED.FEEDBACK' | translate }}\n </button>\n </div>\n</div>\n", styles: [":root{--primary: var(--palette-primary-500);--warning: #cd2457;--aiColor: #2c0799;--aiColorChipBg: color-mix(in srgb, var(--aiColor), #fff 75%);--aiColorText: #fff;--aiColorChip: #fff;--aiColorChipRemove: #555;--aiColorChipBorder: #ddd;--aiColorChipText: var(--aiColor);--tableIconSize: 38px;--textLight: #585858;--textMediumLight: #888;--textMain: #383838;--cardWidth: 240px;--chipsSeperatorLineColor: #e2e2e2;--colorStatusPositive: #40bf8e;--colorStatusNegative: var(--warning);--colorStarActive: #ba7c00;--nodeVirtualColor: #42ca8d;--nodeVirtualColorLight: #b8fcdd;--transitionNormal: .2s;--genericSeperatorLineColor: #ececec;--tableSeperatorLineColor: #d2d2d2;--focusColor: var(--palette-primary-300);--focusWidth: 2px;--fontSizeXSmall: 85%;--topBarSearchFocusColor: var(--palette-primary-300);--workspaceTopBarSafeBackground: #963a3a;--workspaceTopBarNewAlpha: .1;--itemSelectedTextColor: var(--palette-primary-700);--listItemSelectedBackground: var(--palette-primary-50);--listItemSelectedBackgroundEffect: linear-gradient( to right, var(--primary) 0, var(--primary) 5px, var(--palette-primary-50) 5px, var(--palette-primary-50) 5px ) no-repeat}:host ::ng-deep .revoked es-info-message .message-container{white-space:pre-line}.revoked{max-width:700px;margin:auto;padding:30px 20px}.revoked>*{text-align:center;justify-content:center;color:#383838}.revoked .details-message{display:flex;margin-bottom:30px}.revoked .details{display:flex;flex-direction:column;gap:10px}.revoked .details label{font-size:90%;color:var(--textLight)}.revoked .details .reason>span{white-space:pre-line}.revoked .details>div{display:flex;flex-direction:column}.revoked .actions{padding-top:30px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: InfoMessageComponent, selector: "es-info-message", inputs: ["message", "mode"] }, { kind: "ngmodule", type: EduSharingUiCommonModule }, { kind: "pipe", type:
|
|
1388
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.14", type: RevokedComponent, isStandalone: true, selector: "rs-revoked", inputs: { node: "node" }, ngImport: i0, template: "<div class=\"revoked\">\n <!--<h1 class=\"mat-heading-1\">{{ node!! | nodeTitle }}</h1>-->\n <es-info-message mode=\"warning\" class=\"details-message\">{{\n 'RENDERING.REVOKED.DETAILS' + (node?.size === '0' ? '_EMPTY' : '') | translate\n }}</es-info-message>\n <div class=\"details\">\n <div class=\"date\">\n <label for=\"revoked-date\">{{ 'RENDERING.REVOKED.DATE' | translate }}:</label\n ><span\n id=\"revoked-date\"\n >{{ node?.properties?.['ccm:revoked_date_LONG']?.[0]!! | formatDate:{relative: false, time: false} }}</span\n >\n </div>\n <div class=\"reason\">\n <label for=\"revoked-reason\">{{ 'RENDERING.REVOKED.REASON' | translate }}:</label\n ><span id=\"revoked-reason\">{{ node?.properties?.['ccm:revoked_reason']?.join('') }}</span>\n </div>\n </div>\n <div class=\"actions\">\n <button mat-button color=\"primary\" (click)=\"reportRevokeFeedback()\" *ngIf=\"dialogsService\">\n <i esIcon=\"arrow_forward\"></i>{{ 'RENDERING.REVOKED.FEEDBACK' | translate }}\n </button>\n </div>\n</div>\n", styles: [":root{--primary: var(--palette-primary-500);--warning: #cd2457;--aiColor: #2c0799;--aiColorChipBg: color-mix(in srgb, var(--aiColor), #fff 75%);--aiColorText: #fff;--aiColorChip: #fff;--aiColorChipRemove: #555;--aiColorChipBorder: #ddd;--aiColorChipText: var(--aiColor);--tableIconSize: 38px;--textLight: #585858;--textMediumLight: #888;--textMain: #383838;--cardWidth: 240px;--chipsSeperatorLineColor: #e2e2e2;--colorStatusPositive: #40bf8e;--colorStatusNegative: var(--warning);--colorStarActive: #ba7c00;--nodeVirtualColor: #42ca8d;--nodeVirtualColorLight: #b8fcdd;--transitionNormal: .2s;--genericSeperatorLineColor: #ececec;--tableSeperatorLineColor: #d2d2d2;--focusColor: var(--palette-primary-300);--focusWidth: 2px;--fontSizeXSmall: 85%;--topBarSearchFocusColor: var(--palette-primary-300);--workspaceTopBarSafeBackground: #963a3a;--workspaceTopBarNewAlpha: .1;--itemSelectedTextColor: var(--palette-primary-700);--listItemSelectedBackground: var(--palette-primary-50);--listItemSelectedBackgroundEffect: linear-gradient( to right, var(--primary) 0, var(--primary) 5px, var(--palette-primary-50) 5px, var(--palette-primary-50) 5px ) no-repeat}:host ::ng-deep .revoked es-info-message .message-container{white-space:pre-line}.revoked{max-width:700px;margin:auto;padding:30px 20px}.revoked>*{text-align:center;justify-content:center;color:#383838}.revoked .details-message{display:flex;margin-bottom:30px}.revoked .details{display:flex;flex-direction:column;gap:10px}.revoked .details label{font-size:90%;color:var(--textLight)}.revoked .details .reason>span{white-space:pre-line}.revoked .details>div{display:flex;flex-direction:column}.revoked .actions{padding-top:30px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: InfoMessageComponent, selector: "es-info-message", inputs: ["message", "mode"] }, { kind: "ngmodule", type: EduSharingUiCommonModule }, { kind: "pipe", type: i1$2.FormatDatePipe, name: "formatDate" }, { kind: "directive", type: i1$2.IconDirective, selector: "i[esIcon], i.material-icons", inputs: ["altText", "aria", "esIcon", "esIconContext", "path"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i4$1.TranslatePipe, name: "translate" }] }); }
|
|
1389
1389
|
}
|
|
1390
1390
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: RevokedComponent, decorators: [{
|
|
1391
1391
|
type: Component,
|
|
@@ -1450,4 +1450,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
|
|
|
1450
1450
|
*/
|
|
1451
1451
|
|
|
1452
1452
|
export { AssetLinkPipe as A, DialogsService as D, EduHtmlComponent as E, GdprService as G, ImageComponent as I, ModuleInfoService as M, PdfComponent as P, RENDERING_SERVICE_LIB_CONFIG as R, TrackingService as T, UrlComponent as U, VideoComponent as V, RenderingModule as a, RenderingServiceLibConfiguration as b, PdfIframeComponent as c, RenderComponent as d, RevokedComponent as e, RenderingServiceLibModule as f };
|
|
1453
|
-
//# sourceMappingURL=ngx-rendering-service-lib-ngx-rendering-service-lib-
|
|
1453
|
+
//# sourceMappingURL=ngx-rendering-service-lib-ngx-rendering-service-lib-CEXBFepG.mjs.map
|