ngx-rendering-service-lib 0.0.3 → 0.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/index.mjs +2 -1
- package/esm2022/lib/asset-link.pipe.mjs +27 -0
- package/esm2022/lib/module/image/image.component.mjs +6 -5
- package/esm2022/lib/module/video/video.component.mjs +4 -3
- package/esm2022/lib/rendering.module.mjs +9 -3
- package/fesm2022/ngx-rendering-service-lib.mjs +44 -15
- package/fesm2022/ngx-rendering-service-lib.mjs.map +1 -1
- package/index.d.ts +1 -0
- package/lib/asset-link.pipe.d.ts +13 -0
- package/lib/rendering.module.d.ts +4 -3
- package/package.json +1 -1
- package/assets/pdfjs/build/pdf.js +0 -24385
- package/assets/pdfjs/build/pdf.js.map +0 -1
- package/assets/pdfjs/build/pdf.worker.js +0 -55973
- package/assets/pdfjs/build/pdf.worker.js.map +0 -1
- package/assets/pdfjs/web/cmaps/78-EUC-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/78-EUC-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/78-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/78-RKSJ-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/78-RKSJ-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/78-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/78ms-RKSJ-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/78ms-RKSJ-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/83pv-RKSJ-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/90ms-RKSJ-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/90ms-RKSJ-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/90msp-RKSJ-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/90msp-RKSJ-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/90pv-RKSJ-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/90pv-RKSJ-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Add-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Add-RKSJ-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Add-RKSJ-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Add-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-CNS1-0.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-CNS1-1.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-CNS1-2.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-CNS1-3.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-CNS1-4.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-CNS1-5.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-CNS1-6.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-CNS1-UCS2.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-GB1-0.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-GB1-1.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-GB1-2.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-GB1-3.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-GB1-4.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-GB1-5.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-GB1-UCS2.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-Japan1-0.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-Japan1-1.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-Japan1-2.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-Japan1-3.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-Japan1-4.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-Japan1-5.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-Japan1-6.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-Japan1-UCS2.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-Korea1-0.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-Korea1-1.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-Korea1-2.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Adobe-Korea1-UCS2.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/B5-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/B5-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/B5pc-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/B5pc-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/CNS-EUC-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/CNS-EUC-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/CNS1-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/CNS1-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/CNS2-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/CNS2-V.bcmap +0 -3
- package/assets/pdfjs/web/cmaps/ETHK-B5-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/ETHK-B5-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/ETen-B5-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/ETen-B5-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/ETenms-B5-H.bcmap +0 -3
- package/assets/pdfjs/web/cmaps/ETenms-B5-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/EUC-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/EUC-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Ext-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Ext-RKSJ-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Ext-RKSJ-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Ext-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/GB-EUC-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/GB-EUC-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/GB-H.bcmap +0 -4
- package/assets/pdfjs/web/cmaps/GB-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/GBK-EUC-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/GBK-EUC-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/GBK2K-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/GBK2K-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/GBKp-EUC-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/GBKp-EUC-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/GBT-EUC-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/GBT-EUC-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/GBT-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/GBT-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/GBTpc-EUC-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/GBTpc-EUC-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/GBpc-EUC-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/GBpc-EUC-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/HKdla-B5-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/HKdla-B5-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/HKdlb-B5-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/HKdlb-B5-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/HKgccs-B5-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/HKgccs-B5-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/HKm314-B5-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/HKm314-B5-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/HKm471-B5-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/HKm471-B5-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/HKscs-B5-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/HKscs-B5-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Hankaku.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Hiragana.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/KSC-EUC-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/KSC-EUC-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/KSC-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/KSC-Johab-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/KSC-Johab-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/KSC-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/KSCms-UHC-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/KSCms-UHC-HW-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/KSCms-UHC-HW-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/KSCms-UHC-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/KSCpc-EUC-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/KSCpc-EUC-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Katakana.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/NWP-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/NWP-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/RKSJ-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/RKSJ-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/Roman.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniCNS-UCS2-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniCNS-UCS2-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniCNS-UTF16-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniCNS-UTF16-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniCNS-UTF32-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniCNS-UTF32-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniCNS-UTF8-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniCNS-UTF8-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniGB-UCS2-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniGB-UCS2-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniGB-UTF16-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniGB-UTF16-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniGB-UTF32-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniGB-UTF32-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniGB-UTF8-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniGB-UTF8-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniJIS-UCS2-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniJIS-UCS2-HW-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniJIS-UCS2-HW-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniJIS-UCS2-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniJIS-UTF16-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniJIS-UTF16-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniJIS-UTF32-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniJIS-UTF32-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniJIS-UTF8-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniJIS-UTF8-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniJIS2004-UTF16-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniJIS2004-UTF16-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniJIS2004-UTF32-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniJIS2004-UTF32-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniJIS2004-UTF8-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniJIS2004-UTF8-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniJISPro-UCS2-HW-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniJISPro-UCS2-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniJISPro-UTF8-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniJISX0213-UTF32-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniJISX0213-UTF32-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniJISX02132004-UTF32-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniJISX02132004-UTF32-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniKS-UCS2-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniKS-UCS2-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniKS-UTF16-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniKS-UTF16-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniKS-UTF32-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniKS-UTF32-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniKS-UTF8-H.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/UniKS-UTF8-V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/V.bcmap +0 -0
- package/assets/pdfjs/web/cmaps/WP-Symbol.bcmap +0 -0
- package/assets/pdfjs/web/debugger.js +0 -615
- package/assets/pdfjs/web/images/annotation-check.svg +0 -11
- package/assets/pdfjs/web/images/annotation-comment.svg +0 -16
- package/assets/pdfjs/web/images/annotation-help.svg +0 -26
- package/assets/pdfjs/web/images/annotation-insert.svg +0 -10
- package/assets/pdfjs/web/images/annotation-key.svg +0 -11
- package/assets/pdfjs/web/images/annotation-newparagraph.svg +0 -11
- package/assets/pdfjs/web/images/annotation-noicon.svg +0 -7
- package/assets/pdfjs/web/images/annotation-note.svg +0 -42
- package/assets/pdfjs/web/images/annotation-paragraph.svg +0 -16
- package/assets/pdfjs/web/images/findbarButton-next-rtl.png +0 -0
- package/assets/pdfjs/web/images/findbarButton-next-rtl@2x.png +0 -0
- package/assets/pdfjs/web/images/findbarButton-next.png +0 -0
- package/assets/pdfjs/web/images/findbarButton-next@2x.png +0 -0
- package/assets/pdfjs/web/images/findbarButton-previous-rtl.png +0 -0
- package/assets/pdfjs/web/images/findbarButton-previous-rtl@2x.png +0 -0
- package/assets/pdfjs/web/images/findbarButton-previous.png +0 -0
- package/assets/pdfjs/web/images/findbarButton-previous@2x.png +0 -0
- package/assets/pdfjs/web/images/grab.cur +0 -0
- package/assets/pdfjs/web/images/grabbing.cur +0 -0
- package/assets/pdfjs/web/images/loading-icon.gif +0 -0
- package/assets/pdfjs/web/images/loading-small.png +0 -0
- package/assets/pdfjs/web/images/loading-small@2x.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-documentProperties.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-documentProperties@2x.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-firstPage.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-firstPage@2x.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-handTool.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-handTool@2x.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-lastPage.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-lastPage@2x.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-rotateCcw.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-rotateCcw@2x.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-rotateCw.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-rotateCw@2x.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-scrollHorizontal.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-scrollHorizontal@2x.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-scrollVertical.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-scrollVertical@2x.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-scrollWrapped.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-scrollWrapped@2x.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-selectTool.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-selectTool@2x.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-spreadEven.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-spreadEven@2x.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-spreadNone.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-spreadNone@2x.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-spreadOdd.png +0 -0
- package/assets/pdfjs/web/images/secondaryToolbarButton-spreadOdd@2x.png +0 -0
- package/assets/pdfjs/web/images/shadow.png +0 -0
- package/assets/pdfjs/web/images/texture.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-bookmark.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-bookmark@2x.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-download.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-download@2x.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-menuArrows.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-menuArrows@2x.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-openFile.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-openFile@2x.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-pageDown-rtl.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-pageDown-rtl@2x.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-pageDown.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-pageDown@2x.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-pageUp-rtl.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-pageUp-rtl@2x.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-pageUp.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-pageUp@2x.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-presentationMode.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-presentationMode@2x.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-print.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-print@2x.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-search.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-search@2x.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-secondaryToolbarToggle-rtl.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-secondaryToolbarToggle-rtl@2x.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-secondaryToolbarToggle.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-secondaryToolbarToggle@2x.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-sidebarToggle-rtl.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-sidebarToggle-rtl@2x.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-sidebarToggle.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-sidebarToggle@2x.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-viewAttachments.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-viewAttachments@2x.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-viewOutline-rtl.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-viewOutline-rtl@2x.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-viewOutline.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-viewOutline@2x.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-viewThumbnail.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-viewThumbnail@2x.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-zoomIn.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-zoomIn@2x.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-zoomOut.png +0 -0
- package/assets/pdfjs/web/images/toolbarButton-zoomOut@2x.png +0 -0
- package/assets/pdfjs/web/images/treeitem-collapsed-rtl.png +0 -0
- package/assets/pdfjs/web/images/treeitem-collapsed-rtl@2x.png +0 -0
- package/assets/pdfjs/web/images/treeitem-collapsed.png +0 -0
- package/assets/pdfjs/web/images/treeitem-collapsed@2x.png +0 -0
- package/assets/pdfjs/web/images/treeitem-expanded.png +0 -0
- package/assets/pdfjs/web/images/treeitem-expanded@2x.png +0 -0
- package/assets/pdfjs/web/locale/ach/viewer.properties +0 -207
- package/assets/pdfjs/web/locale/af/viewer.properties +0 -184
- package/assets/pdfjs/web/locale/ak/viewer.properties +0 -130
- package/assets/pdfjs/web/locale/an/viewer.properties +0 -184
- package/assets/pdfjs/web/locale/ar/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/as/viewer.properties +0 -167
- package/assets/pdfjs/web/locale/ast/viewer.properties +0 -201
- package/assets/pdfjs/web/locale/az/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/be/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/bg/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/bn-BD/viewer.properties +0 -232
- package/assets/pdfjs/web/locale/bn-IN/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/br/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/brx/viewer.properties +0 -167
- package/assets/pdfjs/web/locale/bs/viewer.properties +0 -201
- package/assets/pdfjs/web/locale/ca/viewer.properties +0 -236
- package/assets/pdfjs/web/locale/cak/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/crh/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/cs/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/csb/viewer.properties +0 -134
- package/assets/pdfjs/web/locale/cy/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/da/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/de/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/el/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/en-CA/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/en-GB/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/en-US/viewer.properties +0 -246
- package/assets/pdfjs/web/locale/en-ZA/viewer.properties +0 -170
- package/assets/pdfjs/web/locale/eo/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/es-AR/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/es-CL/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/es-ES/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/es-MX/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/et/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/eu/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/fa/viewer.properties +0 -223
- package/assets/pdfjs/web/locale/ff/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/fi/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/fr/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/fy-NL/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/ga-IE/viewer.properties +0 -184
- package/assets/pdfjs/web/locale/gd/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/gl/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/gn/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/gu-IN/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/he/viewer.properties +0 -240
- package/assets/pdfjs/web/locale/hi-IN/viewer.properties +0 -224
- package/assets/pdfjs/web/locale/hr/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/hsb/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/hto/viewer.properties +0 -127
- package/assets/pdfjs/web/locale/hu/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/hy-AM/viewer.properties +0 -201
- package/assets/pdfjs/web/locale/ia/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/id/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/is/viewer.properties +0 -239
- package/assets/pdfjs/web/locale/it/viewer.properties +0 -157
- package/assets/pdfjs/web/locale/ja/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/ka/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/kab/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/kk/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/km/viewer.properties +0 -184
- package/assets/pdfjs/web/locale/kn/viewer.properties +0 -193
- package/assets/pdfjs/web/locale/ko/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/kok/viewer.properties +0 -167
- package/assets/pdfjs/web/locale/ks/viewer.properties +0 -168
- package/assets/pdfjs/web/locale/ku/viewer.properties +0 -146
- package/assets/pdfjs/web/locale/lg/viewer.properties +0 -112
- package/assets/pdfjs/web/locale/lij/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/lo/viewer.properties +0 -152
- package/assets/pdfjs/web/locale/locale.properties +0 -369
- package/assets/pdfjs/web/locale/lt/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/ltg/viewer.properties +0 -220
- package/assets/pdfjs/web/locale/lv/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/mai/viewer.properties +0 -168
- package/assets/pdfjs/web/locale/meh/viewer.properties +0 -72
- package/assets/pdfjs/web/locale/mk/viewer.properties +0 -145
- package/assets/pdfjs/web/locale/ml/viewer.properties +0 -184
- package/assets/pdfjs/web/locale/mn/viewer.properties +0 -82
- package/assets/pdfjs/web/locale/mr/viewer.properties +0 -227
- package/assets/pdfjs/web/locale/ms/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/my/viewer.properties +0 -198
- package/assets/pdfjs/web/locale/nb-NO/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/ne-NP/viewer.properties +0 -184
- package/assets/pdfjs/web/locale/nl/viewer.properties +0 -246
- package/assets/pdfjs/web/locale/nn-NO/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/nso/viewer.properties +0 -130
- package/assets/pdfjs/web/locale/oc/viewer.properties +0 -210
- package/assets/pdfjs/web/locale/or/viewer.properties +0 -167
- package/assets/pdfjs/web/locale/pa-IN/viewer.properties +0 -225
- package/assets/pdfjs/web/locale/pl/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/pt-BR/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/pt-PT/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/rm/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/ro/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/ru/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/rw/viewer.properties +0 -81
- package/assets/pdfjs/web/locale/sah/viewer.properties +0 -166
- package/assets/pdfjs/web/locale/sat/viewer.properties +0 -134
- package/assets/pdfjs/web/locale/si/viewer.properties +0 -207
- package/assets/pdfjs/web/locale/sk/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/sl/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/son/viewer.properties +0 -180
- package/assets/pdfjs/web/locale/sq/viewer.properties +0 -235
- package/assets/pdfjs/web/locale/sr/viewer.properties +0 -220
- package/assets/pdfjs/web/locale/sv-SE/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/sw/viewer.properties +0 -128
- package/assets/pdfjs/web/locale/ta/viewer.properties +0 -201
- package/assets/pdfjs/web/locale/ta-LK/viewer.properties +0 -77
- package/assets/pdfjs/web/locale/te/viewer.properties +0 -218
- package/assets/pdfjs/web/locale/th/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/tl/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/tn/viewer.properties +0 -83
- package/assets/pdfjs/web/locale/tr/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/tsz/viewer.properties +0 -75
- package/assets/pdfjs/web/locale/uk/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/ur/viewer.properties +0 -207
- package/assets/pdfjs/web/locale/uz/viewer.properties +0 -169
- package/assets/pdfjs/web/locale/vi/viewer.properties +0 -239
- package/assets/pdfjs/web/locale/wo/viewer.properties +0 -124
- package/assets/pdfjs/web/locale/xh/viewer.properties +0 -184
- package/assets/pdfjs/web/locale/zam/viewer.properties +0 -90
- package/assets/pdfjs/web/locale/zh-CN/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/zh-TW/viewer.properties +0 -242
- package/assets/pdfjs/web/locale/zu/viewer.properties +0 -131
- package/assets/pdfjs/web/viewer.css +0 -2405
- package/assets/pdfjs/web/viewer.html +0 -394
- package/assets/pdfjs/web/viewer.js +0 -15877
- package/assets/pdfjs/web/viewer.js.map +0 -1
package/esm2022/index.mjs
CHANGED
|
@@ -9,5 +9,6 @@ export * from './lib/module/url/url.component';
|
|
|
9
9
|
export * from './lib/module/eduhtml/eduHtml.component';
|
|
10
10
|
export * from './lib/module/spreadsheet/spreadsheet.component';
|
|
11
11
|
export * from './lib/render.component';
|
|
12
|
+
export * from './lib/asset-link.pipe';
|
|
12
13
|
export * from './rendering-service-lib.module';
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLGdDQUFnQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBlZHUtc2hhcmluZy11aVxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3JlbmRlcmluZy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kdWxlL2ltYWdlL2ltYWdlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2R1bGUvdmlkZW8vdmlkZW8uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZHVsZS9wZGYvcGRmLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2R1bGUvdXJsL3VybC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kdWxlL2VkdWh0bWwvZWR1SHRtbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kdWxlL3NwcmVhZHNoZWV0L3NwcmVhZHNoZWV0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9yZW5kZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Fzc2V0LWxpbmsucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3JlbmRlcmluZy1zZXJ2aWNlLWxpYi5tb2R1bGUnO1xuIl19
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Pipe } from "@angular/core";
|
|
2
|
+
import { RSApiConfiguration } from "ngx-rendering-service-api";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* this pipe transforms any reported asset data uri from the rendering to the uri that is currently configured for the backend
|
|
6
|
+
* this is required in case the rendering service is behind a proxy, i.e. in dev mode
|
|
7
|
+
*/
|
|
8
|
+
export class AssetLinkPipe {
|
|
9
|
+
constructor(injector) {
|
|
10
|
+
this.injector = injector;
|
|
11
|
+
}
|
|
12
|
+
transform(value) {
|
|
13
|
+
if (value) {
|
|
14
|
+
const str = value.split('/public');
|
|
15
|
+
str[0] = this.injector.get(RSApiConfiguration).rootUrl;
|
|
16
|
+
return str.join('/public');
|
|
17
|
+
}
|
|
18
|
+
return value;
|
|
19
|
+
}
|
|
20
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: AssetLinkPipe, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
21
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.6", ngImport: i0, type: AssetLinkPipe, name: "rsAssetLink" }); }
|
|
22
|
+
}
|
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: AssetLinkPipe, decorators: [{
|
|
24
|
+
type: Pipe,
|
|
25
|
+
args: [{ name: 'rsAssetLink' }]
|
|
26
|
+
}], ctorParameters: () => [{ type: i0.Injector }] });
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQtbGluay5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9hc3NldC1saW5rLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFXLElBQUksRUFBZ0IsTUFBTSxlQUFlLENBQUM7QUFDNUQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sMkJBQTJCLENBQUM7O0FBRTdEOzs7R0FHRztBQUVILE1BQU0sT0FBTyxhQUFhO0lBQ3hCLFlBQ1UsUUFBa0I7UUFBbEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtJQUU1QixDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQXlCO1FBQ2pDLElBQUcsS0FBSyxFQUFFLENBQUM7WUFDVCxNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ25DLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLE9BQU8sQ0FBQztZQUN2RCxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDN0IsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzs4R0FiVSxhQUFhOzRHQUFiLGFBQWE7OzJGQUFiLGFBQWE7a0JBRHpCLElBQUk7bUJBQUMsRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RvciwgUGlwZSwgUGlwZVRyYW5zZm9ybX0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7UlNBcGlDb25maWd1cmF0aW9ufSBmcm9tIFwibmd4LXJlbmRlcmluZy1zZXJ2aWNlLWFwaVwiO1xuXG4vKipcbiAqIHRoaXMgcGlwZSB0cmFuc2Zvcm1zIGFueSByZXBvcnRlZCBhc3NldCBkYXRhIHVyaSBmcm9tIHRoZSByZW5kZXJpbmcgdG8gdGhlIHVyaSB0aGF0IGlzIGN1cnJlbnRseSBjb25maWd1cmVkIGZvciB0aGUgYmFja2VuZFxuICogdGhpcyBpcyByZXF1aXJlZCBpbiBjYXNlIHRoZSByZW5kZXJpbmcgc2VydmljZSBpcyBiZWhpbmQgYSBwcm94eSwgaS5lLiBpbiBkZXYgbW9kZVxuICovXG5AUGlwZSh7IG5hbWU6ICdyc0Fzc2V0TGluaycgfSlcbmV4cG9ydCBjbGFzcyBBc3NldExpbmtQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yLFxuICApIHtcbiAgfVxuXG4gIHRyYW5zZm9ybSh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgaWYodmFsdWUpIHtcbiAgICAgIGNvbnN0IHN0ciA9IHZhbHVlLnNwbGl0KCcvcHVibGljJyk7XG4gICAgICBzdHJbMF0gPSB0aGlzLmluamVjdG9yLmdldChSU0FwaUNvbmZpZ3VyYXRpb24pLnJvb3RVcmw7XG4gICAgICByZXR1cm4gc3RyLmpvaW4oJy9wdWJsaWMnKTtcbiAgICB9XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbn1cbiJdfQ==
|
|
@@ -4,8 +4,9 @@ import { MatIconModule } from "@angular/material/icon";
|
|
|
4
4
|
import { MatButtonModule } from "@angular/material/button";
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
import * as i1 from "@angular/common";
|
|
7
|
-
import * as i2 from "
|
|
8
|
-
import * as i3 from "@angular/material/
|
|
7
|
+
import * as i2 from "../../asset-link.pipe";
|
|
8
|
+
import * as i3 from "@angular/material/button";
|
|
9
|
+
import * as i4 from "@angular/material/icon";
|
|
9
10
|
export class ImageComponent {
|
|
10
11
|
constructor(element) {
|
|
11
12
|
this.element = element;
|
|
@@ -31,7 +32,7 @@ export class ImageComponent {
|
|
|
31
32
|
}
|
|
32
33
|
}
|
|
33
34
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: ImageComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
34
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: ImageComponent, isStandalone: true, selector: "rs-module-image", inputs: { data: "data", node: "node" }, host: { listeners: { "document:fullscreenchange": "loadOptimalSize()" } }, ngImport: i0, template: "<div class=\"image-wrapper\"\n *ngIf=\"activeObject()\"\n>\n <img\n #image\n [src]=\"activeObject()?.link\"\n [alt]=\"node?.title\"\n >\n <button mat-icon-button (click)=\"toggleFullscreen()\"><mat-icon>fullscreen</mat-icon></button>\n</div>\n", styles: [":host{position:relative;display:flex;align-items:center}.image-wrapper{width:100%}.image-wrapper img{width:100%;position:relative}.image-wrapper button{position:absolute;right:0;color:#fff;background-color:#00000080}\n"], dependencies: [{ kind: "ngmodule", type: RenderingModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type:
|
|
35
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: ImageComponent, isStandalone: true, selector: "rs-module-image", inputs: { data: "data", node: "node" }, host: { listeners: { "document:fullscreenchange": "loadOptimalSize()" } }, ngImport: i0, template: "<div class=\"image-wrapper\"\n *ngIf=\"activeObject()\"\n>\n <img\n #image\n [src]=\"activeObject()?.link | rsAssetLink\"\n [alt]=\"node?.title || node?.name || ''\"\n >\n <button mat-icon-button (click)=\"toggleFullscreen()\"><mat-icon>fullscreen</mat-icon></button>\n</div>\n", styles: [":host{position:relative;display:flex;align-items:center}.image-wrapper{width:100%}.image-wrapper img{width:100%;position:relative}.image-wrapper button{position:absolute;right:0;color:#fff;background-color:#00000080}\n"], dependencies: [{ kind: "ngmodule", type: RenderingModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.AssetLinkPipe, name: "rsAssetLink" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
|
|
35
36
|
}
|
|
36
37
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: ImageComponent, decorators: [{
|
|
37
38
|
type: Component,
|
|
@@ -39,7 +40,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
39
40
|
RenderingModule,
|
|
40
41
|
MatButtonModule,
|
|
41
42
|
MatIconModule,
|
|
42
|
-
], template: "<div class=\"image-wrapper\"\n *ngIf=\"activeObject()\"\n>\n <img\n #image\n [src]=\"activeObject()?.link\"\n [alt]=\"node?.title\"\n >\n <button mat-icon-button (click)=\"toggleFullscreen()\"><mat-icon>fullscreen</mat-icon></button>\n</div>\n", styles: [":host{position:relative;display:flex;align-items:center}.image-wrapper{width:100%}.image-wrapper img{width:100%;position:relative}.image-wrapper button{position:absolute;right:0;color:#fff;background-color:#00000080}\n"] }]
|
|
43
|
+
], template: "<div class=\"image-wrapper\"\n *ngIf=\"activeObject()\"\n>\n <img\n #image\n [src]=\"activeObject()?.link | rsAssetLink\"\n [alt]=\"node?.title || node?.name || ''\"\n >\n <button mat-icon-button (click)=\"toggleFullscreen()\"><mat-icon>fullscreen</mat-icon></button>\n</div>\n", styles: [":host{position:relative;display:flex;align-items:center}.image-wrapper{width:100%}.image-wrapper img{width:100%;position:relative}.image-wrapper button{position:absolute;right:0;color:#fff;background-color:#00000080}\n"] }]
|
|
43
44
|
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { data: [{
|
|
44
45
|
type: Input
|
|
45
46
|
}], node: [{
|
|
@@ -48,4 +49,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
48
49
|
type: HostListener,
|
|
49
50
|
args: ['document:fullscreenchange']
|
|
50
51
|
}] } });
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9tb2R1bGUvaW1hZ2UvaW1hZ2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9tb2R1bGUvaW1hZ2UvaW1hZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixTQUFTLEVBQWMsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEcsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBSXZELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7Ozs7OztBQWN6RCxNQUFNLE9BQU8sY0FBYztJQUl6QixZQUFtQixPQUFtQjtRQUFuQixZQUFPLEdBQVAsT0FBTyxDQUFZO1FBRHRDLGlCQUFZLEdBQUcsTUFBTSxDQUE2QixTQUFTLENBQUMsQ0FBQztJQUNuQixDQUFDO0lBQzNDLGVBQWU7UUFDYixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUdPLGVBQWU7UUFDckIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUNoRSxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDLENBQUE7UUFDM0UsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3BELGlEQUFpRDtZQUNqRCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNsRixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ1QsQ0FBQztJQUVELGdCQUFnQjtRQUNkLElBQUcsUUFBUSxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDOUIsUUFBUSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQzVCLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUNqRCxDQUFDO0lBQ0gsQ0FBQzs4R0F6QlUsY0FBYztrR0FBZCxjQUFjLDhMQ3BCM0Isb1NBVUEsbVJER0ksZUFBZSxpTUFDZixlQUFlLDJJQUNmLGFBQWE7OzJGQUtKLGNBQWM7a0JBWDFCLFNBQVM7K0JBQ0UsaUJBQWlCLGNBQ2YsSUFBSSxXQUNQO3dCQUNQLGVBQWU7d0JBQ2YsZUFBZTt3QkFDZixhQUFhO3FCQUNkOytFQUtRLElBQUk7c0JBQVosS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBUUUsZUFBZTtzQkFEdEIsWUFBWTt1QkFBQywyQkFBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBJbnB1dCwgc2lnbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7UmVuZGVyaW5nTW9kdWxlfSBmcm9tIFwiLi4vLi4vcmVuZGVyaW5nLm1vZHVsZVwiO1xuaW1wb3J0IHtSZW5kZXJNb2R1bGV9IGZyb20gXCIuLi9SZW5kZXJNb2R1bGVcIjtcbmltcG9ydCB7T2JqZWN0TGluaywgUmVuZGVyRGF0YVJlc3BvbnNlfSBmcm9tIFwibmd4LXJlbmRlcmluZy1zZXJ2aWNlLWFwaVwiO1xuaW1wb3J0IHtOb2RlfSBmcm9tIFwibmd4LWVkdS1zaGFyaW5nLWFwaVwiO1xuaW1wb3J0IHtNYXRJY29uTW9kdWxlfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvblwiO1xuaW1wb3J0IHtNYXRCdXR0b25Nb2R1bGV9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9idXR0b25cIjtcbmltcG9ydCB7QXNzZXRTdGF0ZURhdGEsIEFzc2V0U3RhdGVJdGVtfSBmcm9tIFwiLi4vLi4vZHRvL0Fzc2V0U3RhdGVEYXRhXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3JzLW1vZHVsZS1pbWFnZScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBSZW5kZXJpbmdNb2R1bGUsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9pbWFnZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9pbWFnZS5jb21wb25lbnQuc2Nzcydcbn0pXG5leHBvcnQgY2xhc3MgSW1hZ2VDb21wb25lbnQgaW1wbGVtZW50cyBSZW5kZXJNb2R1bGUsIEFmdGVyVmlld0luaXQge1xuICBASW5wdXQoKSBkYXRhOiBBc3NldFN0YXRlRGF0YSB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgbm9kZTogTm9kZSB8IHVuZGVmaW5lZDtcbiAgYWN0aXZlT2JqZWN0ID0gc2lnbmFsPEFzc2V0U3RhdGVJdGVtIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgZWxlbWVudDogRWxlbWVudFJlZikgeyB9XG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmxvYWRPcHRpbWFsU2l6ZSgpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6ZnVsbHNjcmVlbmNoYW5nZScpXG4gIHByaXZhdGUgbG9hZE9wdGltYWxTaXplKCkge1xuICAgIGNvbnN0IHNpemUgPSB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBjb25zdCBhbGxGaW5pc2hlZEl0ZW1zID0gdGhpcy5kYXRhPy5pdGVtcz8uZmlsdGVyKGl0ZW0gPT4gaXRlbS5saW5rICE9PSBcIlwiKVxuICAgIHRoaXMuYWN0aXZlT2JqZWN0LnNldChhbGxGaW5pc2hlZEl0ZW1zPy5zb3J0KChhLCBiKSA9PiB7XG4gICAgICAvLyBzb3J0IGJ5IHRoZSBpbWFnZSBzaXplIGNsb3Nlc3QgdG8gdGhlIHZpZXdwb3J0XG4gICAgICByZXR1cm4gTWF0aC5hYnMoYS53aWR0aCAtIHNpemUud2lkdGgpID4gTWF0aC5hYnMoYi53aWR0aCAtIHNpemUud2lkdGgpID8gMSA6IC0xO1xuICAgIH0pWzBdKTtcbiAgfVxuXG4gIHRvZ2dsZUZ1bGxzY3JlZW4oKSB7XG4gICAgaWYoZG9jdW1lbnQuZnVsbHNjcmVlbkVsZW1lbnQpIHtcbiAgICAgIGRvY3VtZW50LmV4aXRGdWxsc2NyZWVuKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LnJlcXVlc3RGdWxsc2NyZWVuKCk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiaW1hZ2Utd3JhcHBlclwiXG4gICpuZ0lmPVwiYWN0aXZlT2JqZWN0KClcIlxuPlxuICA8aW1nXG4gICAgI2ltYWdlXG4gICAgW3NyY109XCJhY3RpdmVPYmplY3QoKT8ubGluayB8IHJzQXNzZXRMaW5rXCJcbiAgICBbYWx0XT1cIm5vZGU/LnRpdGxlIHx8IG5vZGU/Lm5hbWUgfHwgJydcIlxuICA+XG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJ0b2dnbGVGdWxsc2NyZWVuKClcIj48bWF0LWljb24+ZnVsbHNjcmVlbjwvbWF0LWljb24+PC9idXR0b24+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -7,6 +7,7 @@ import { FormsModule } from "@angular/forms";
|
|
|
7
7
|
import { MatMenu, MatMenuItem, MatMenuTrigger } from "@angular/material/menu";
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
9
9
|
import * as i1 from "@angular/common";
|
|
10
|
+
import * as i2 from "../../asset-link.pipe";
|
|
10
11
|
export class VideoComponent {
|
|
11
12
|
constructor() {
|
|
12
13
|
this.activeObject = signal(undefined);
|
|
@@ -35,7 +36,7 @@ export class VideoComponent {
|
|
|
35
36
|
}
|
|
36
37
|
}
|
|
37
38
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: VideoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
38
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: VideoComponent, isStandalone: true, selector: "rs-module-video", inputs: { data: "data", node: "node" }, viewQueries: [{ propertyName: "videoRef", first: true, predicate: ["video"], descendants: true }], ngImport: i0, template: "<div class=\"video-wrapper\" *ngIf=\"activeObject()\">\n <video\n controls\n #video\n >\n <source [src]=\"activeObject()?.link\" />\n </video>\n <button\n mat-icon-button\n [matMenuTriggerFor]=\"resolutionMenu\"\n >\n <mat-icon>settings</mat-icon>\n </button>\n <mat-menu\n #resolutionMenu=\"matMenu\"\n xPosition=\"before\"\n >\n <button\n mat-menu-item\n *ngFor=\"let item of data?.items\"\n [disabled]=\"item.link === ''\"\n (click)=\"item.height !== activeObject()?.height && switchResolution(item)\"\n >\n <ng-container\n [ngTemplateOutlet]=\"item.link !== '' ? ready : loading\"\n [ngTemplateOutletContext]=\"{item:item}\"\n >\n </ng-container>\n </button>\n\n </mat-menu>\n</div>\n\n<ng-template #ready let-item='item'>\n <div style=\"display: flex; justify-content: space-between\">\n <mat-icon *ngIf=\"item.height === activeObject()?.height\">\n done\n </mat-icon>\n <div *ngIf=\"item.height !== activeObject()?.height\"></div>\n <div>\n {{item.height}}p\n </div>\n </div>\n</ng-template>\n\n<ng-template #loading let-item='item'>\n <div style=\"display: flex; justify-content: space-between\">\n <div>\n {{item.progress >= 0 ? \"Converting: \" + item.progress + \"%\" : \"Queue position: \" + -item.progress}}\n </div>\n <div style=\"padding-left: .5em\">\n {{item.height}}p\n </div>\n </div>\n</ng-template>\n", styles: [".video-wrapper{width:100%;position:relative}.video-wrapper video{width:100%;display:block}.video-wrapper button{position:absolute;right:0;top:0;color:#fff;background-color:#00000080}\n"], dependencies: [{ kind: "ngmodule", type: RenderingModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "directive", type: MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "component", type: MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }] }); }
|
|
39
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: VideoComponent, isStandalone: true, selector: "rs-module-video", inputs: { data: "data", node: "node" }, viewQueries: [{ propertyName: "videoRef", first: true, predicate: ["video"], descendants: true }], ngImport: i0, template: "<div class=\"video-wrapper\" *ngIf=\"activeObject()\">\n <video\n controls\n #video\n >\n <source [src]=\"activeObject()?.link | rsAssetLink\" />\n </video>\n <button\n mat-icon-button\n [matMenuTriggerFor]=\"resolutionMenu\"\n >\n <mat-icon>settings</mat-icon>\n </button>\n <mat-menu\n #resolutionMenu=\"matMenu\"\n xPosition=\"before\"\n >\n <button\n mat-menu-item\n *ngFor=\"let item of data?.items\"\n [disabled]=\"item.link === ''\"\n (click)=\"item.height !== activeObject()?.height && switchResolution(item)\"\n >\n <ng-container\n [ngTemplateOutlet]=\"item.link !== '' ? ready : loading\"\n [ngTemplateOutletContext]=\"{item:item}\"\n >\n </ng-container>\n </button>\n\n </mat-menu>\n</div>\n\n<ng-template #ready let-item='item'>\n <div style=\"display: flex; justify-content: space-between\">\n <mat-icon *ngIf=\"item.height === activeObject()?.height\">\n done\n </mat-icon>\n <div *ngIf=\"item.height !== activeObject()?.height\"></div>\n <div>\n {{item.height}}p\n </div>\n </div>\n</ng-template>\n\n<ng-template #loading let-item='item'>\n <div style=\"display: flex; justify-content: space-between\">\n <div>\n {{item.progress >= 0 ? \"Converting: \" + item.progress + \"%\" : \"Queue position: \" + -item.progress}}\n </div>\n <div style=\"padding-left: .5em\">\n {{item.height}}p\n </div>\n </div>\n</ng-template>\n", styles: [".video-wrapper{width:100%;position:relative}.video-wrapper video{width:100%;display:block}.video-wrapper button{position:absolute;right:0;top:0;color:#fff;background-color:#00000080}\n"], dependencies: [{ kind: "ngmodule", type: RenderingModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i2.AssetLinkPipe, name: "rsAssetLink" }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "directive", type: MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "component", type: MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }] }); }
|
|
39
40
|
}
|
|
40
41
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: VideoComponent, decorators: [{
|
|
41
42
|
type: Component,
|
|
@@ -49,7 +50,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
49
50
|
MatMenu,
|
|
50
51
|
MatMenuTrigger,
|
|
51
52
|
MatMenuItem
|
|
52
|
-
], template: "<div class=\"video-wrapper\" *ngIf=\"activeObject()\">\n <video\n controls\n #video\n >\n <source [src]=\"activeObject()?.link\" />\n </video>\n <button\n mat-icon-button\n [matMenuTriggerFor]=\"resolutionMenu\"\n >\n <mat-icon>settings</mat-icon>\n </button>\n <mat-menu\n #resolutionMenu=\"matMenu\"\n xPosition=\"before\"\n >\n <button\n mat-menu-item\n *ngFor=\"let item of data?.items\"\n [disabled]=\"item.link === ''\"\n (click)=\"item.height !== activeObject()?.height && switchResolution(item)\"\n >\n <ng-container\n [ngTemplateOutlet]=\"item.link !== '' ? ready : loading\"\n [ngTemplateOutletContext]=\"{item:item}\"\n >\n </ng-container>\n </button>\n\n </mat-menu>\n</div>\n\n<ng-template #ready let-item='item'>\n <div style=\"display: flex; justify-content: space-between\">\n <mat-icon *ngIf=\"item.height === activeObject()?.height\">\n done\n </mat-icon>\n <div *ngIf=\"item.height !== activeObject()?.height\"></div>\n <div>\n {{item.height}}p\n </div>\n </div>\n</ng-template>\n\n<ng-template #loading let-item='item'>\n <div style=\"display: flex; justify-content: space-between\">\n <div>\n {{item.progress >= 0 ? \"Converting: \" + item.progress + \"%\" : \"Queue position: \" + -item.progress}}\n </div>\n <div style=\"padding-left: .5em\">\n {{item.height}}p\n </div>\n </div>\n</ng-template>\n", styles: [".video-wrapper{width:100%;position:relative}.video-wrapper video{width:100%;display:block}.video-wrapper button{position:absolute;right:0;top:0;color:#fff;background-color:#00000080}\n"] }]
|
|
53
|
+
], template: "<div class=\"video-wrapper\" *ngIf=\"activeObject()\">\n <video\n controls\n #video\n >\n <source [src]=\"activeObject()?.link | rsAssetLink\" />\n </video>\n <button\n mat-icon-button\n [matMenuTriggerFor]=\"resolutionMenu\"\n >\n <mat-icon>settings</mat-icon>\n </button>\n <mat-menu\n #resolutionMenu=\"matMenu\"\n xPosition=\"before\"\n >\n <button\n mat-menu-item\n *ngFor=\"let item of data?.items\"\n [disabled]=\"item.link === ''\"\n (click)=\"item.height !== activeObject()?.height && switchResolution(item)\"\n >\n <ng-container\n [ngTemplateOutlet]=\"item.link !== '' ? ready : loading\"\n [ngTemplateOutletContext]=\"{item:item}\"\n >\n </ng-container>\n </button>\n\n </mat-menu>\n</div>\n\n<ng-template #ready let-item='item'>\n <div style=\"display: flex; justify-content: space-between\">\n <mat-icon *ngIf=\"item.height === activeObject()?.height\">\n done\n </mat-icon>\n <div *ngIf=\"item.height !== activeObject()?.height\"></div>\n <div>\n {{item.height}}p\n </div>\n </div>\n</ng-template>\n\n<ng-template #loading let-item='item'>\n <div style=\"display: flex; justify-content: space-between\">\n <div>\n {{item.progress >= 0 ? \"Converting: \" + item.progress + \"%\" : \"Queue position: \" + -item.progress}}\n </div>\n <div style=\"padding-left: .5em\">\n {{item.height}}p\n </div>\n </div>\n</ng-template>\n", styles: [".video-wrapper{width:100%;position:relative}.video-wrapper video{width:100%;display:block}.video-wrapper button{position:absolute;right:0;top:0;color:#fff;background-color:#00000080}\n"] }]
|
|
53
54
|
}], propDecorators: { data: [{
|
|
54
55
|
type: Input
|
|
55
56
|
}], node: [{
|
|
@@ -58,4 +59,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
58
59
|
type: ViewChild,
|
|
59
60
|
args: ["video"]
|
|
60
61
|
}] } });
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlkZW8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9tb2R1bGUvdmlkZW8vdmlkZW8uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9tb2R1bGUvdmlkZW8vdmlkZW8uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixTQUFTLEVBQWMsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDN0YsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBR3ZELE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUMvQyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDdkQsT0FBTyxFQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUM5RCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFDLE9BQU8sRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFDLE1BQU0sd0JBQXdCLENBQUM7Ozs7QUFtQjVFLE1BQU0sT0FBTyxjQUFjO0lBakIzQjtRQXFCRSxpQkFBWSxHQUFHLE1BQU0sQ0FBNkIsU0FBUyxDQUFDLENBQUM7S0EyQjlEO0lBeEJDLGVBQWU7UUFDYixNQUFNLFFBQVEsR0FBWSxTQUFpQixDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUM7UUFDakUsSUFBSSxpQkFBaUIsR0FBRyxHQUFHLENBQUM7UUFDNUIsSUFBRyxRQUFRLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDZCxpQkFBaUIsR0FBRyxHQUFHLENBQUM7UUFDNUIsQ0FBQztRQUNELElBQUcsUUFBUSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ2hCLGlCQUFpQixHQUFHLElBQUksQ0FBQztRQUMzQixDQUFDO1FBQ0QsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLEVBQUUsQ0FBQyxDQUFBO1FBQzNFLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUNwRCxpREFBaUQ7WUFDakQsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsaUJBQWlCLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ1QsQ0FBQztJQUVELGdCQUFnQixDQUFDLElBQW9CO1FBQ25DLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQzNCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsYUFBYSxDQUFDLFdBQVcsQ0FBQTtRQUM1RCxJQUFJLENBQUMsUUFBUSxFQUFFLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtRQUNuQyxJQUFJLFdBQVcsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUM5QixJQUFJLENBQUMsUUFBUyxDQUFDLGFBQWEsQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFBO1FBQ3hELENBQUM7SUFDSCxDQUFDOzhHQTlCVSxjQUFjO2tHQUFkLGNBQWMsc05DNUIzQixzOENBdURBLGlQRHhDSSxlQUFlLHNlQUNmLE9BQU8sMklBQ1AsYUFBYSw0RkFFYixXQUFXLCtCQUVYLE9BQU8sMlFBQ1AsY0FBYyxxU0FDZCxXQUFXOzsyRkFLRixjQUFjO2tCQWpCMUIsU0FBUzsrQkFDRSxpQkFBaUIsY0FDZixJQUFJLFdBQ1A7d0JBQ1AsZUFBZTt3QkFDZixPQUFPO3dCQUNQLGFBQWE7d0JBQ2IsU0FBUzt3QkFDVCxXQUFXO3dCQUNYLFNBQVM7d0JBQ1QsT0FBTzt3QkFDUCxjQUFjO3dCQUNkLFdBQVc7cUJBQ1o7OEJBS1EsSUFBSTtzQkFBWixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDYyxRQUFRO3NCQUEzQixTQUFTO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIHNpZ25hbCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7UmVuZGVyaW5nTW9kdWxlfSBmcm9tIFwiLi4vLi4vcmVuZGVyaW5nLm1vZHVsZVwiO1xuaW1wb3J0IHtSZW5kZXJNb2R1bGV9IGZyb20gXCIuLi9SZW5kZXJNb2R1bGVcIjtcbmltcG9ydCB7Tm9kZX0gZnJvbSBcIm5neC1lZHUtc2hhcmluZy1hcGlcIjtcbmltcG9ydCB7TWF0SWNvbn0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2ljb25cIjtcbmltcG9ydCB7TWF0SWNvbkJ1dHRvbn0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2J1dHRvblwiO1xuaW1wb3J0IHtNYXRPcHRpb24sIE1hdFNlbGVjdH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3NlbGVjdFwiO1xuaW1wb3J0IHtGb3Jtc01vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQge0Fzc2V0U3RhdGVEYXRhLCBBc3NldFN0YXRlSXRlbX0gZnJvbSBcIi4uLy4uL2R0by9Bc3NldFN0YXRlRGF0YVwiO1xuaW1wb3J0IHtNYXRNZW51LCBNYXRNZW51SXRlbSwgTWF0TWVudVRyaWdnZXJ9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9tZW51XCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3JzLW1vZHVsZS12aWRlbycsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBSZW5kZXJpbmdNb2R1bGUsXG4gICAgTWF0SWNvbixcbiAgICBNYXRJY29uQnV0dG9uLFxuICAgIE1hdFNlbGVjdCxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBNYXRPcHRpb24sXG4gICAgTWF0TWVudSxcbiAgICBNYXRNZW51VHJpZ2dlcixcbiAgICBNYXRNZW51SXRlbVxuICBdLFxuICB0ZW1wbGF0ZVVybDogJy4vdmlkZW8uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vdmlkZW8uY29tcG9uZW50LnNjc3MnXG59KVxuZXhwb3J0IGNsYXNzIFZpZGVvQ29tcG9uZW50IGltcGxlbWVudHMgUmVuZGVyTW9kdWxlLCBBZnRlclZpZXdJbml0e1xuICBASW5wdXQoKSBkYXRhOiBBc3NldFN0YXRlRGF0YSB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgbm9kZTogTm9kZSB8IHVuZGVmaW5lZDtcbiAgQFZpZXdDaGlsZChcInZpZGVvXCIpIHZpZGVvUmVmOiBFbGVtZW50UmVmPEhUTUxWaWRlb0VsZW1lbnQ+IHwgdW5kZWZpbmVkXG4gIGFjdGl2ZU9iamVjdCA9IHNpZ25hbDxBc3NldFN0YXRlSXRlbSB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcblxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBjb25zdCBkb3dubGluazogbnVtYmVyID0gKG5hdmlnYXRvciBhcyBhbnkpLmNvbm5lY3Rpb24/LmRvd25saW5rO1xuICAgIGxldCBvcHRpbWFsUmVzb2x1dGlvbiA9IDcyMDtcbiAgICBpZihkb3dubGluayA8IDIpIHtcbiAgICAgICAgb3B0aW1hbFJlc29sdXRpb24gPSAyNDA7XG4gICAgfVxuICAgIGlmKGRvd25saW5rID4gNikge1xuICAgICAgb3B0aW1hbFJlc29sdXRpb24gPSAxMDgwO1xuICAgIH1cbiAgICBjb25zdCBhbGxGaW5pc2hlZEl0ZW1zID0gdGhpcy5kYXRhPy5pdGVtcz8uZmlsdGVyKGl0ZW0gPT4gaXRlbS5saW5rICE9PSBcIlwiKVxuICAgIHRoaXMuYWN0aXZlT2JqZWN0LnNldChhbGxGaW5pc2hlZEl0ZW1zPy5zb3J0KChhLCBiKSA9PiB7XG4gICAgICAvLyBzb3J0IGJ5IHRoZSBpbWFnZSBzaXplIGNsb3Nlc3QgdG8gdGhlIHZpZXdwb3J0XG4gICAgICByZXR1cm4gTWF0aC5hYnMoYS53aWR0aCAtIG9wdGltYWxSZXNvbHV0aW9uKSA+IE1hdGguYWJzKGIud2lkdGggLSBvcHRpbWFsUmVzb2x1dGlvbikgPyAxIDogLTE7XG4gICAgfSlbMF0pO1xuICB9XG5cbiAgc3dpdGNoUmVzb2x1dGlvbihpdGVtOiBBc3NldFN0YXRlSXRlbSkge1xuICAgIHRoaXMuYWN0aXZlT2JqZWN0LnNldChpdGVtKVxuICAgIGNvbnN0IGN1cnJlbnRUaW1lID0gdGhpcy52aWRlb1JlZj8ubmF0aXZlRWxlbWVudC5jdXJyZW50VGltZVxuICAgIHRoaXMudmlkZW9SZWY/Lm5hdGl2ZUVsZW1lbnQubG9hZCgpXG4gICAgaWYgKGN1cnJlbnRUaW1lICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMudmlkZW9SZWYhLm5hdGl2ZUVsZW1lbnQuY3VycmVudFRpbWUgPSBjdXJyZW50VGltZVxuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInZpZGVvLXdyYXBwZXJcIiAqbmdJZj1cImFjdGl2ZU9iamVjdCgpXCI+XG4gIDx2aWRlb1xuICAgIGNvbnRyb2xzXG4gICAgI3ZpZGVvXG4gID5cbiAgICA8c291cmNlIFtzcmNdPVwiYWN0aXZlT2JqZWN0KCk/LmxpbmsgfCByc0Fzc2V0TGlua1wiIC8+XG4gIDwvdmlkZW8+XG4gIDxidXR0b25cbiAgICBtYXQtaWNvbi1idXR0b25cbiAgICBbbWF0TWVudVRyaWdnZXJGb3JdPVwicmVzb2x1dGlvbk1lbnVcIlxuICA+XG4gICAgPG1hdC1pY29uPnNldHRpbmdzPC9tYXQtaWNvbj5cbiAgPC9idXR0b24+XG4gIDxtYXQtbWVudVxuICAgICNyZXNvbHV0aW9uTWVudT1cIm1hdE1lbnVcIlxuICAgIHhQb3NpdGlvbj1cImJlZm9yZVwiXG4gID5cbiAgICA8YnV0dG9uXG4gICAgICBtYXQtbWVudS1pdGVtXG4gICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBkYXRhPy5pdGVtc1wiXG4gICAgICBbZGlzYWJsZWRdPVwiaXRlbS5saW5rID09PSAnJ1wiXG4gICAgICAoY2xpY2spPVwiaXRlbS5oZWlnaHQgIT09IGFjdGl2ZU9iamVjdCgpPy5oZWlnaHQgJiYgc3dpdGNoUmVzb2x1dGlvbihpdGVtKVwiXG4gICAgPlxuICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJpdGVtLmxpbmsgIT09ICcnID8gcmVhZHkgOiBsb2FkaW5nXCJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cIntpdGVtOml0ZW19XCJcbiAgICAgID5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvYnV0dG9uPlxuXG4gIDwvbWF0LW1lbnU+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICNyZWFkeSBsZXQtaXRlbT0naXRlbSc+XG4gIDxkaXYgc3R5bGU9XCJkaXNwbGF5OiBmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW5cIj5cbiAgICA8bWF0LWljb24gKm5nSWY9XCJpdGVtLmhlaWdodCA9PT0gYWN0aXZlT2JqZWN0KCk/LmhlaWdodFwiPlxuICAgICAgZG9uZVxuICAgIDwvbWF0LWljb24+XG4gICAgPGRpdiAqbmdJZj1cIml0ZW0uaGVpZ2h0ICE9PSBhY3RpdmVPYmplY3QoKT8uaGVpZ2h0XCI+PC9kaXY+XG4gICAgPGRpdj5cbiAgICAgIHt7aXRlbS5oZWlnaHR9fXBcbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2xvYWRpbmcgbGV0LWl0ZW09J2l0ZW0nPlxuICA8ZGl2IHN0eWxlPVwiZGlzcGxheTogZmxleDsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuXCI+XG4gICAgPGRpdj5cbiAgICAgIHt7aXRlbS5wcm9ncmVzcyA+PSAwID8gXCJDb252ZXJ0aW5nOiBcIiArIGl0ZW0ucHJvZ3Jlc3MgKyBcIiVcIiA6IFwiUXVldWUgcG9zaXRpb246IFwiICsgLWl0ZW0ucHJvZ3Jlc3N9fVxuICAgIDwvZGl2PlxuICAgIDxkaXYgc3R5bGU9XCJwYWRkaW5nLWxlZnQ6IC41ZW1cIj5cbiAgICAgIHt7aXRlbS5oZWlnaHR9fXBcbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -2,11 +2,13 @@ import { NgModule } from "@angular/core";
|
|
|
2
2
|
import { CommonModule } from "@angular/common";
|
|
3
3
|
import { EduSharingApiModule } from "ngx-edu-sharing-api";
|
|
4
4
|
import { environment } from "../environments/environment";
|
|
5
|
+
import { AssetLinkPipe } from "./asset-link.pipe";
|
|
5
6
|
import * as i0 from "@angular/core";
|
|
6
7
|
import * as i1 from "ngx-edu-sharing-api";
|
|
7
8
|
export class RenderingModule {
|
|
8
9
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: RenderingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
9
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.6", ngImport: i0, type: RenderingModule, imports: [CommonModule, i1.EduSharingApiModule], exports: [CommonModule
|
|
10
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.6", ngImport: i0, type: RenderingModule, declarations: [AssetLinkPipe], imports: [CommonModule, i1.EduSharingApiModule], exports: [CommonModule,
|
|
11
|
+
AssetLinkPipe] }); }
|
|
10
12
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: RenderingModule, imports: [CommonModule,
|
|
11
13
|
EduSharingApiModule.forRoot({ rootUrl: environment.esRootUrl }), CommonModule] }); }
|
|
12
14
|
}
|
|
@@ -17,9 +19,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
17
19
|
CommonModule,
|
|
18
20
|
EduSharingApiModule.forRoot({ rootUrl: environment.esRootUrl })
|
|
19
21
|
],
|
|
22
|
+
declarations: [
|
|
23
|
+
AssetLinkPipe,
|
|
24
|
+
],
|
|
20
25
|
exports: [
|
|
21
|
-
CommonModule
|
|
26
|
+
CommonModule,
|
|
27
|
+
AssetLinkPipe
|
|
22
28
|
]
|
|
23
29
|
}]
|
|
24
30
|
}] });
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuZGVyaW5nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvcmVuZGVyaW5nLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDeEQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLG1CQUFtQixDQUFDOzs7QUFlaEQsTUFBTSxPQUFPLGVBQWU7OEdBQWYsZUFBZTsrR0FBZixlQUFlLGlCQVB4QixhQUFhLGFBSmIsWUFBWSxxQ0FPWixZQUFZO1lBQ1osYUFBYTsrR0FHSixlQUFlLFlBWHhCLFlBQVk7WUFDWixtQkFBbUIsQ0FBQyxPQUFPLENBQUMsRUFBQyxPQUFPLEVBQUUsV0FBVyxDQUFDLFNBQVMsRUFBQyxDQUFDLEVBTTdELFlBQVk7OzJGQUlILGVBQWU7a0JBYjNCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osbUJBQW1CLENBQUMsT0FBTyxDQUFDLEVBQUMsT0FBTyxFQUFFLFdBQVcsQ0FBQyxTQUFTLEVBQUMsQ0FBQztxQkFDOUQ7b0JBQ0QsWUFBWSxFQUFFO3dCQUNaLGFBQWE7cUJBQ2Q7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osYUFBYTtxQkFDZDtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdNb2R1bGV9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xuaW1wb3J0IHtFZHVTaGFyaW5nQXBpTW9kdWxlfSBmcm9tIFwibmd4LWVkdS1zaGFyaW5nLWFwaVwiO1xuaW1wb3J0IHtlbnZpcm9ubWVudH0gZnJvbSBcIi4uL2Vudmlyb25tZW50cy9lbnZpcm9ubWVudFwiO1xuaW1wb3J0IHtBc3NldExpbmtQaXBlfSBmcm9tIFwiLi9hc3NldC1saW5rLnBpcGVcIjtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBFZHVTaGFyaW5nQXBpTW9kdWxlLmZvclJvb3Qoe3Jvb3RVcmw6IGVudmlyb25tZW50LmVzUm9vdFVybH0pXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEFzc2V0TGlua1BpcGUsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQXNzZXRMaW5rUGlwZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFJlbmRlcmluZ01vZHVsZSB7fVxuIl19
|
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { NgModule, signal, Component, Input, HostListener, ViewChild, ViewEncapsulation, Injectable } from '@angular/core';
|
|
2
|
+
import { Pipe, NgModule, signal, Component, Input, HostListener, ViewChild, ViewEncapsulation, Injectable } from '@angular/core';
|
|
3
3
|
import * as i3 from '@angular/common';
|
|
4
4
|
import { CommonModule, NgOptimizedImage } from '@angular/common';
|
|
5
5
|
import * as i1 from 'ngx-edu-sharing-api';
|
|
6
6
|
import { EduSharingApiModule } from 'ngx-edu-sharing-api';
|
|
7
|
-
import * as
|
|
7
|
+
import * as i1$1 from 'ngx-rendering-service-api';
|
|
8
|
+
import { RSApiConfiguration, RenderingServiceApiModule, RenderingServiceApiInterceptor } from 'ngx-rendering-service-api';
|
|
9
|
+
import * as i4 from '@angular/material/icon';
|
|
8
10
|
import { MatIconModule, MatIcon } from '@angular/material/icon';
|
|
9
|
-
import * as
|
|
11
|
+
import * as i3$1 from '@angular/material/button';
|
|
10
12
|
import { MatButtonModule, MatIconButton } from '@angular/material/button';
|
|
11
13
|
import { MatSelect, MatOption } from '@angular/material/select';
|
|
12
14
|
import { FormsModule } from '@angular/forms';
|
|
13
15
|
import { MatMenu, MatMenuTrigger, MatMenuItem } from '@angular/material/menu';
|
|
14
16
|
import * as i3$2 from 'ng2-pdfjs-viewer';
|
|
15
17
|
import { PdfJsViewerModule } from 'ng2-pdfjs-viewer';
|
|
16
|
-
import * as i1$1 from 'ngx-rendering-service-api';
|
|
17
|
-
import { RenderingServiceApiModule, RenderingServiceApiInterceptor } from 'ngx-rendering-service-api';
|
|
18
18
|
import { YouTubePlayer } from '@angular/youtube-player';
|
|
19
19
|
import * as i1$2 from '@angular/platform-browser';
|
|
20
20
|
import { firstValueFrom, BehaviorSubject, Subject, interval, takeUntil, switchMap } from 'rxjs';
|
|
21
|
-
import * as i4 from '@angular/material/progress-spinner';
|
|
21
|
+
import * as i4$1 from '@angular/material/progress-spinner';
|
|
22
22
|
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
|
23
23
|
import * as i5 from '@angular/material/progress-bar';
|
|
24
24
|
import { MatProgressBarModule } from '@angular/material/progress-bar';
|
|
@@ -29,9 +29,34 @@ const environment = {
|
|
|
29
29
|
esRootUrl: 'http://repository.127.0.0.1.nip.io:8100/edu-sharing/rest',
|
|
30
30
|
};
|
|
31
31
|
|
|
32
|
+
/**
|
|
33
|
+
* this pipe transforms any reported asset data uri from the rendering to the uri that is currently configured for the backend
|
|
34
|
+
* this is required in case the rendering service is behind a proxy, i.e. in dev mode
|
|
35
|
+
*/
|
|
36
|
+
class AssetLinkPipe {
|
|
37
|
+
constructor(injector) {
|
|
38
|
+
this.injector = injector;
|
|
39
|
+
}
|
|
40
|
+
transform(value) {
|
|
41
|
+
if (value) {
|
|
42
|
+
const str = value.split('/public');
|
|
43
|
+
str[0] = this.injector.get(RSApiConfiguration).rootUrl;
|
|
44
|
+
return str.join('/public');
|
|
45
|
+
}
|
|
46
|
+
return value;
|
|
47
|
+
}
|
|
48
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: AssetLinkPipe, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
49
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.6", ngImport: i0, type: AssetLinkPipe, name: "rsAssetLink" }); }
|
|
50
|
+
}
|
|
51
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: AssetLinkPipe, decorators: [{
|
|
52
|
+
type: Pipe,
|
|
53
|
+
args: [{ name: 'rsAssetLink' }]
|
|
54
|
+
}], ctorParameters: () => [{ type: i0.Injector }] });
|
|
55
|
+
|
|
32
56
|
class RenderingModule {
|
|
33
57
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: RenderingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
34
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.6", ngImport: i0, type: RenderingModule, imports: [CommonModule, i1.EduSharingApiModule], exports: [CommonModule
|
|
58
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.6", ngImport: i0, type: RenderingModule, declarations: [AssetLinkPipe], imports: [CommonModule, i1.EduSharingApiModule], exports: [CommonModule,
|
|
59
|
+
AssetLinkPipe] }); }
|
|
35
60
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: RenderingModule, imports: [CommonModule,
|
|
36
61
|
EduSharingApiModule.forRoot({ rootUrl: environment.esRootUrl }), CommonModule] }); }
|
|
37
62
|
}
|
|
@@ -42,8 +67,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
42
67
|
CommonModule,
|
|
43
68
|
EduSharingApiModule.forRoot({ rootUrl: environment.esRootUrl })
|
|
44
69
|
],
|
|
70
|
+
declarations: [
|
|
71
|
+
AssetLinkPipe,
|
|
72
|
+
],
|
|
45
73
|
exports: [
|
|
46
|
-
CommonModule
|
|
74
|
+
CommonModule,
|
|
75
|
+
AssetLinkPipe
|
|
47
76
|
]
|
|
48
77
|
}]
|
|
49
78
|
}] });
|
|
@@ -73,7 +102,7 @@ class ImageComponent {
|
|
|
73
102
|
}
|
|
74
103
|
}
|
|
75
104
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: ImageComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
76
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: ImageComponent, isStandalone: true, selector: "rs-module-image", inputs: { data: "data", node: "node" }, host: { listeners: { "document:fullscreenchange": "loadOptimalSize()" } }, ngImport: i0, template: "<div class=\"image-wrapper\"\n *ngIf=\"activeObject()\"\n>\n <img\n #image\n [src]=\"activeObject()?.link\"\n [alt]=\"node?.title\"\n >\n <button mat-icon-button (click)=\"toggleFullscreen()\"><mat-icon>fullscreen</mat-icon></button>\n</div>\n", styles: [":host{position:relative;display:flex;align-items:center}.image-wrapper{width:100%}.image-wrapper img{width:100%;position:relative}.image-wrapper button{position:absolute;right:0;color:#fff;background-color:#00000080}\n"], dependencies: [{ kind: "ngmodule", type: RenderingModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type:
|
|
105
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: ImageComponent, isStandalone: true, selector: "rs-module-image", inputs: { data: "data", node: "node" }, host: { listeners: { "document:fullscreenchange": "loadOptimalSize()" } }, ngImport: i0, template: "<div class=\"image-wrapper\"\n *ngIf=\"activeObject()\"\n>\n <img\n #image\n [src]=\"activeObject()?.link | rsAssetLink\"\n [alt]=\"node?.title || node?.name || ''\"\n >\n <button mat-icon-button (click)=\"toggleFullscreen()\"><mat-icon>fullscreen</mat-icon></button>\n</div>\n", styles: [":host{position:relative;display:flex;align-items:center}.image-wrapper{width:100%}.image-wrapper img{width:100%;position:relative}.image-wrapper button{position:absolute;right:0;color:#fff;background-color:#00000080}\n"], dependencies: [{ kind: "ngmodule", type: RenderingModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: AssetLinkPipe, name: "rsAssetLink" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3$1.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
|
|
77
106
|
}
|
|
78
107
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: ImageComponent, decorators: [{
|
|
79
108
|
type: Component,
|
|
@@ -81,7 +110,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
81
110
|
RenderingModule,
|
|
82
111
|
MatButtonModule,
|
|
83
112
|
MatIconModule,
|
|
84
|
-
], template: "<div class=\"image-wrapper\"\n *ngIf=\"activeObject()\"\n>\n <img\n #image\n [src]=\"activeObject()?.link\"\n [alt]=\"node?.title\"\n >\n <button mat-icon-button (click)=\"toggleFullscreen()\"><mat-icon>fullscreen</mat-icon></button>\n</div>\n", styles: [":host{position:relative;display:flex;align-items:center}.image-wrapper{width:100%}.image-wrapper img{width:100%;position:relative}.image-wrapper button{position:absolute;right:0;color:#fff;background-color:#00000080}\n"] }]
|
|
113
|
+
], template: "<div class=\"image-wrapper\"\n *ngIf=\"activeObject()\"\n>\n <img\n #image\n [src]=\"activeObject()?.link | rsAssetLink\"\n [alt]=\"node?.title || node?.name || ''\"\n >\n <button mat-icon-button (click)=\"toggleFullscreen()\"><mat-icon>fullscreen</mat-icon></button>\n</div>\n", styles: [":host{position:relative;display:flex;align-items:center}.image-wrapper{width:100%}.image-wrapper img{width:100%;position:relative}.image-wrapper button{position:absolute;right:0;color:#fff;background-color:#00000080}\n"] }]
|
|
85
114
|
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { data: [{
|
|
86
115
|
type: Input
|
|
87
116
|
}], node: [{
|
|
@@ -124,7 +153,7 @@ class VideoComponent {
|
|
|
124
153
|
}
|
|
125
154
|
}
|
|
126
155
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: VideoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
127
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: VideoComponent, isStandalone: true, selector: "rs-module-video", inputs: { data: "data", node: "node" }, viewQueries: [{ propertyName: "videoRef", first: true, predicate: ["video"], descendants: true }], ngImport: i0, template: "<div class=\"video-wrapper\" *ngIf=\"activeObject()\">\n <video\n controls\n #video\n >\n <source [src]=\"activeObject()?.link\" />\n </video>\n <button\n mat-icon-button\n [matMenuTriggerFor]=\"resolutionMenu\"\n >\n <mat-icon>settings</mat-icon>\n </button>\n <mat-menu\n #resolutionMenu=\"matMenu\"\n xPosition=\"before\"\n >\n <button\n mat-menu-item\n *ngFor=\"let item of data?.items\"\n [disabled]=\"item.link === ''\"\n (click)=\"item.height !== activeObject()?.height && switchResolution(item)\"\n >\n <ng-container\n [ngTemplateOutlet]=\"item.link !== '' ? ready : loading\"\n [ngTemplateOutletContext]=\"{item:item}\"\n >\n </ng-container>\n </button>\n\n </mat-menu>\n</div>\n\n<ng-template #ready let-item='item'>\n <div style=\"display: flex; justify-content: space-between\">\n <mat-icon *ngIf=\"item.height === activeObject()?.height\">\n done\n </mat-icon>\n <div *ngIf=\"item.height !== activeObject()?.height\"></div>\n <div>\n {{item.height}}p\n </div>\n </div>\n</ng-template>\n\n<ng-template #loading let-item='item'>\n <div style=\"display: flex; justify-content: space-between\">\n <div>\n {{item.progress >= 0 ? \"Converting: \" + item.progress + \"%\" : \"Queue position: \" + -item.progress}}\n </div>\n <div style=\"padding-left: .5em\">\n {{item.height}}p\n </div>\n </div>\n</ng-template>\n", styles: [".video-wrapper{width:100%;position:relative}.video-wrapper video{width:100%;display:block}.video-wrapper button{position:absolute;right:0;top:0;color:#fff;background-color:#00000080}\n"], dependencies: [{ kind: "ngmodule", type: RenderingModule }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "directive", type: MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "component", type: MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }] }); }
|
|
156
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: VideoComponent, isStandalone: true, selector: "rs-module-video", inputs: { data: "data", node: "node" }, viewQueries: [{ propertyName: "videoRef", first: true, predicate: ["video"], descendants: true }], ngImport: i0, template: "<div class=\"video-wrapper\" *ngIf=\"activeObject()\">\n <video\n controls\n #video\n >\n <source [src]=\"activeObject()?.link | rsAssetLink\" />\n </video>\n <button\n mat-icon-button\n [matMenuTriggerFor]=\"resolutionMenu\"\n >\n <mat-icon>settings</mat-icon>\n </button>\n <mat-menu\n #resolutionMenu=\"matMenu\"\n xPosition=\"before\"\n >\n <button\n mat-menu-item\n *ngFor=\"let item of data?.items\"\n [disabled]=\"item.link === ''\"\n (click)=\"item.height !== activeObject()?.height && switchResolution(item)\"\n >\n <ng-container\n [ngTemplateOutlet]=\"item.link !== '' ? ready : loading\"\n [ngTemplateOutletContext]=\"{item:item}\"\n >\n </ng-container>\n </button>\n\n </mat-menu>\n</div>\n\n<ng-template #ready let-item='item'>\n <div style=\"display: flex; justify-content: space-between\">\n <mat-icon *ngIf=\"item.height === activeObject()?.height\">\n done\n </mat-icon>\n <div *ngIf=\"item.height !== activeObject()?.height\"></div>\n <div>\n {{item.height}}p\n </div>\n </div>\n</ng-template>\n\n<ng-template #loading let-item='item'>\n <div style=\"display: flex; justify-content: space-between\">\n <div>\n {{item.progress >= 0 ? \"Converting: \" + item.progress + \"%\" : \"Queue position: \" + -item.progress}}\n </div>\n <div style=\"padding-left: .5em\">\n {{item.height}}p\n </div>\n </div>\n</ng-template>\n", styles: [".video-wrapper{width:100%;position:relative}.video-wrapper video{width:100%;display:block}.video-wrapper button{position:absolute;right:0;top:0;color:#fff;background-color:#00000080}\n"], dependencies: [{ kind: "ngmodule", type: RenderingModule }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: AssetLinkPipe, name: "rsAssetLink" }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "directive", type: MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "component", type: MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }] }); }
|
|
128
157
|
}
|
|
129
158
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: VideoComponent, decorators: [{
|
|
130
159
|
type: Component,
|
|
@@ -138,7 +167,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
138
167
|
MatMenu,
|
|
139
168
|
MatMenuTrigger,
|
|
140
169
|
MatMenuItem
|
|
141
|
-
], template: "<div class=\"video-wrapper\" *ngIf=\"activeObject()\">\n <video\n controls\n #video\n >\n <source [src]=\"activeObject()?.link\" />\n </video>\n <button\n mat-icon-button\n [matMenuTriggerFor]=\"resolutionMenu\"\n >\n <mat-icon>settings</mat-icon>\n </button>\n <mat-menu\n #resolutionMenu=\"matMenu\"\n xPosition=\"before\"\n >\n <button\n mat-menu-item\n *ngFor=\"let item of data?.items\"\n [disabled]=\"item.link === ''\"\n (click)=\"item.height !== activeObject()?.height && switchResolution(item)\"\n >\n <ng-container\n [ngTemplateOutlet]=\"item.link !== '' ? ready : loading\"\n [ngTemplateOutletContext]=\"{item:item}\"\n >\n </ng-container>\n </button>\n\n </mat-menu>\n</div>\n\n<ng-template #ready let-item='item'>\n <div style=\"display: flex; justify-content: space-between\">\n <mat-icon *ngIf=\"item.height === activeObject()?.height\">\n done\n </mat-icon>\n <div *ngIf=\"item.height !== activeObject()?.height\"></div>\n <div>\n {{item.height}}p\n </div>\n </div>\n</ng-template>\n\n<ng-template #loading let-item='item'>\n <div style=\"display: flex; justify-content: space-between\">\n <div>\n {{item.progress >= 0 ? \"Converting: \" + item.progress + \"%\" : \"Queue position: \" + -item.progress}}\n </div>\n <div style=\"padding-left: .5em\">\n {{item.height}}p\n </div>\n </div>\n</ng-template>\n", styles: [".video-wrapper{width:100%;position:relative}.video-wrapper video{width:100%;display:block}.video-wrapper button{position:absolute;right:0;top:0;color:#fff;background-color:#00000080}\n"] }]
|
|
170
|
+
], template: "<div class=\"video-wrapper\" *ngIf=\"activeObject()\">\n <video\n controls\n #video\n >\n <source [src]=\"activeObject()?.link | rsAssetLink\" />\n </video>\n <button\n mat-icon-button\n [matMenuTriggerFor]=\"resolutionMenu\"\n >\n <mat-icon>settings</mat-icon>\n </button>\n <mat-menu\n #resolutionMenu=\"matMenu\"\n xPosition=\"before\"\n >\n <button\n mat-menu-item\n *ngFor=\"let item of data?.items\"\n [disabled]=\"item.link === ''\"\n (click)=\"item.height !== activeObject()?.height && switchResolution(item)\"\n >\n <ng-container\n [ngTemplateOutlet]=\"item.link !== '' ? ready : loading\"\n [ngTemplateOutletContext]=\"{item:item}\"\n >\n </ng-container>\n </button>\n\n </mat-menu>\n</div>\n\n<ng-template #ready let-item='item'>\n <div style=\"display: flex; justify-content: space-between\">\n <mat-icon *ngIf=\"item.height === activeObject()?.height\">\n done\n </mat-icon>\n <div *ngIf=\"item.height !== activeObject()?.height\"></div>\n <div>\n {{item.height}}p\n </div>\n </div>\n</ng-template>\n\n<ng-template #loading let-item='item'>\n <div style=\"display: flex; justify-content: space-between\">\n <div>\n {{item.progress >= 0 ? \"Converting: \" + item.progress + \"%\" : \"Queue position: \" + -item.progress}}\n </div>\n <div style=\"padding-left: .5em\">\n {{item.height}}p\n </div>\n </div>\n</ng-template>\n", styles: [".video-wrapper{width:100%;position:relative}.video-wrapper video{width:100%;display:block}.video-wrapper button{position:absolute;right:0;top:0;color:#fff;background-color:#00000080}\n"] }]
|
|
142
171
|
}], propDecorators: { data: [{
|
|
143
172
|
type: Input
|
|
144
173
|
}], node: [{
|
|
@@ -321,7 +350,7 @@ class UrlComponent {
|
|
|
321
350
|
return (["mp4", "webm"].includes(this.url.split(".").pop() ?? ""));
|
|
322
351
|
}
|
|
323
352
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: UrlComponent, deps: [{ token: i1$2.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
324
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: UrlComponent, isStandalone: true, selector: "rs-module-url", inputs: { data: "data", node: "node" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"url-wrapper\">\n <div *ngIf=\"gdprOk\">\n <ng-container *ngIf=\"embedding === 'youtube' && externalId !== ''\">\n <youtube-player\n [videoId]=\"externalId ?? ''\"\n [disableCookies]=\"true\"\n ></youtube-player>\n </ng-container>\n <ng-container *ngIf=\"embedding === 'vimeo' && externalId !== ''\">\n <iframe [src]=\"getVimeoUri()\"></iframe>\n </ng-container>\n <ng-container *ngIf=\"embedding === '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 === '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 width=\"100%\"\n height=\"auto\"\n >\n </div>\n </ng-container>\n <ng-container *ngIf=\"embedding === 'video' && url !== ''\">\n <div class=\"video-wrapper\">\n <video\n controls\n [src]=\"url\"\n >\n </video>\n </div>\n </ng-container>\n </div>\n <div *ngIf=\"!gdprOk\">\n Halt! Stop!\n <button mat-button (click)=\"consentToGdprWarning()\">Weiter!</button>\n </div>\n</div>\n", styles: [":host{position:relative;display:flex;align-items:center}.url-wrapper{width:100%}.url-wrapper .audio-wrapper video[poster]{object-fit:cover}\n"], dependencies: [{ kind: "ngmodule", type: RenderingModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type:
|
|
353
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.6", type: UrlComponent, isStandalone: true, selector: "rs-module-url", inputs: { data: "data", node: "node" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"url-wrapper\">\n <div *ngIf=\"gdprOk\">\n <ng-container *ngIf=\"embedding === 'youtube' && externalId !== ''\">\n <youtube-player\n [videoId]=\"externalId ?? ''\"\n [disableCookies]=\"true\"\n ></youtube-player>\n </ng-container>\n <ng-container *ngIf=\"embedding === 'vimeo' && externalId !== ''\">\n <iframe [src]=\"getVimeoUri()\"></iframe>\n </ng-container>\n <ng-container *ngIf=\"embedding === '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 === '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 width=\"100%\"\n height=\"auto\"\n >\n </div>\n </ng-container>\n <ng-container *ngIf=\"embedding === 'video' && url !== ''\">\n <div class=\"video-wrapper\">\n <video\n controls\n [src]=\"url\"\n >\n </video>\n </div>\n </ng-container>\n </div>\n <div *ngIf=\"!gdprOk\">\n Halt! Stop!\n <button mat-button (click)=\"consentToGdprWarning()\">Weiter!</button>\n </div>\n</div>\n", styles: [":host{position:relative;display:flex;align-items:center}.url-wrapper{width:100%}.url-wrapper .audio-wrapper video[poster]{object-fit:cover}\n"], dependencies: [{ kind: "ngmodule", type: RenderingModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3$1.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: YouTubePlayer, selector: "youtube-player", inputs: ["videoId", "height", "width", "startSeconds", "endSeconds", "suggestedQuality", "playerVars", "disableCookies", "loadApi", "disablePlaceholder", "showBeforeIframeApiLoads", "placeholderButtonLabel", "placeholderImageQuality"], outputs: ["ready", "stateChange", "error", "apiChange", "playbackQualityChange", "playbackRateChange"] }, { kind: "directive", type: NgOptimizedImage, selector: "img[ngSrc]", inputs: ["ngSrc", "ngSrcset", "sizes", "width", "height", "loading", "priority", "loaderParams", "disableOptimizedSrcset", "fill", "placeholder", "placeholderConfig", "src", "srcset"] }] }); }
|
|
325
354
|
}
|
|
326
355
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: UrlComponent, decorators: [{
|
|
327
356
|
type: Component,
|
|
@@ -584,7 +613,7 @@ class RenderComponent {
|
|
|
584
613
|
}
|
|
585
614
|
}
|
|
586
615
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: RenderComponent, deps: [{ token: i0.Injector }, { token: i1$1.RenderControllerService }, { token: i1$1.JobInfoControllerService }, { token: ModuleInfoService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
587
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: RenderComponent, isStandalone: true, selector: "rs-root", inputs: { request: "request", node: "node" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"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 === 'VIDEO' || data?.module === 'AUDIO'){\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') {\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 === 'H5P' || data?.module === 'JUPYTER') {\n <rs-module-eduHtml [data]=\"data\" [node]=\"node\"></rs-module-eduHtml>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'SPREADSHEET') {\n <rs-module-spreadsheet [data]=\"data\" [node]=\"node\"></rs-module-spreadsheet>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n </ng-container>\n <ng-container *ngIf=\"useUrlModule\">\n @defer (when useUrlModule) {\n <rs-module-url [node]=\"node\"></rs-module-url>\n }\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\">Queue position: {{-(progress.progress ?? 0)}}</div>\n <mat-progress-bar [value]=\"(progress.progress ?? 0)\" *ngIf=\"(progress.progress ?? 0) >= 0\"></mat-progress-bar>\n </ng-container>\n <ng-container *ngSwitchCase=\"'spinner'\">\n <div *ngIf=\"(progress.progress ?? 0) < 0\">Queue position: {{-(progress.progress ?? 0)}</div>\n <mat-spinner [diameter]=\"50\" *ngIf=\"(progress.progress ?? 0) >= 0\"></mat-spinner>\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;padding:10px 30px}.module{overflow:auto;display:flex;flex-grow:1;height:auto;border:1px solid #aaa;padding:20px}.module rs-module-image,.module rs-module-video{width:100%}.module .progress{display:flex;justify-content:center;flex-grow:1}\n"], dependencies: [{ kind: "ngmodule", type: RenderingApiModule }, { kind: "ngmodule", type: RenderingModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i3.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i4.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "ngmodule", type: MatProgressBarModule }, { kind: "component", type: i5.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }], deferBlockDependencies: [() => [Promise.resolve().then(function () { return image_component; }).then(m => m.ImageComponent)], () => [Promise.resolve().then(function () { return video_component; }).then(m => m.VideoComponent)], () => [Promise.resolve().then(function () { return pdf_component; }).then(m => m.PdfComponent)], () => [Promise.resolve().then(function () { return eduHtml_component; }).then(m => m.EduHtmlComponent)], () => [Promise.resolve().then(function () { return spreadsheet_component; }).then(m => m.SpreadsheetComponent)], () => [Promise.resolve().then(function () { return url_component; }).then(m => m.UrlComponent)]] }); }
|
|
616
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: RenderComponent, isStandalone: true, selector: "rs-root", inputs: { request: "request", node: "node" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"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 === 'VIDEO' || data?.module === 'AUDIO'){\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') {\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 === 'H5P' || data?.module === 'JUPYTER') {\n <rs-module-eduHtml [data]=\"data\" [node]=\"node\"></rs-module-eduHtml>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n @defer (when data?.module === 'SPREADSHEET') {\n <rs-module-spreadsheet [data]=\"data\" [node]=\"node\"></rs-module-spreadsheet>\n } @loading {\n <ng-container *ngTemplateOutlet=\"loading\"></ng-container>\n }\n </ng-container>\n <ng-container *ngIf=\"useUrlModule\">\n @defer (when useUrlModule) {\n <rs-module-url [node]=\"node\"></rs-module-url>\n }\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\">Queue position: {{-(progress.progress ?? 0)}}</div>\n <mat-progress-bar [value]=\"(progress.progress ?? 0)\" *ngIf=\"(progress.progress ?? 0) >= 0\"></mat-progress-bar>\n </ng-container>\n <ng-container *ngSwitchCase=\"'spinner'\">\n <div *ngIf=\"(progress.progress ?? 0) < 0\">Queue position: {{-(progress.progress ?? 0)}</div>\n <mat-spinner [diameter]=\"50\" *ngIf=\"(progress.progress ?? 0) >= 0\"></mat-spinner>\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;padding:10px 30px}.module{overflow:auto;display:flex;flex-grow:1;height:auto;border:1px solid #aaa;padding:20px}.module rs-module-image,.module rs-module-video{width:100%}.module .progress{display:flex;justify-content:center;flex-grow:1}\n"], dependencies: [{ kind: "ngmodule", type: RenderingApiModule }, { kind: "ngmodule", type: RenderingModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i3.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i4$1.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "ngmodule", type: MatProgressBarModule }, { kind: "component", type: i5.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }], deferBlockDependencies: [() => [Promise.resolve().then(function () { return image_component; }).then(m => m.ImageComponent)], () => [Promise.resolve().then(function () { return video_component; }).then(m => m.VideoComponent)], () => [Promise.resolve().then(function () { return pdf_component; }).then(m => m.PdfComponent)], () => [Promise.resolve().then(function () { return eduHtml_component; }).then(m => m.EduHtmlComponent)], () => [Promise.resolve().then(function () { return spreadsheet_component; }).then(m => m.SpreadsheetComponent)], () => [Promise.resolve().then(function () { return url_component; }).then(m => m.UrlComponent)]] }); }
|
|
588
617
|
}
|
|
589
618
|
i0.ɵɵngDeclareClassMetadataAsync({ minVersion: "18.0.0", version: "18.2.6", ngImport: i0, type: RenderComponent, resolveDeferredDeps: () => [Promise.resolve().then(function () { return image_component; }).then(m => m.ImageComponent), Promise.resolve().then(function () { return video_component; }).then(m => m.VideoComponent), Promise.resolve().then(function () { return pdf_component; }).then(m => m.PdfComponent), Promise.resolve().then(function () { return eduHtml_component; }).then(m => m.EduHtmlComponent), Promise.resolve().then(function () { return spreadsheet_component; }).then(m => m.SpreadsheetComponent), Promise.resolve().then(function () { return url_component; }).then(m => m.UrlComponent)], resolveMetadata: (ImageComponent, VideoComponent, PdfComponent, EduHtmlComponent, SpreadsheetComponent, UrlComponent) => ({ decorators: [{
|
|
590
619
|
type: Component,
|
|
@@ -642,5 +671,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
|
|
|
642
671
|
* Generated bundle index. Do not edit.
|
|
643
672
|
*/
|
|
644
673
|
|
|
645
|
-
export { EduHtmlComponent, ImageComponent, PdfComponent, RenderComponent, RenderingModule, RenderingServiceLibModule, SpreadsheetComponent, UrlComponent, VideoComponent };
|
|
674
|
+
export { AssetLinkPipe, EduHtmlComponent, ImageComponent, PdfComponent, RenderComponent, RenderingModule, RenderingServiceLibModule, SpreadsheetComponent, UrlComponent, VideoComponent };
|
|
646
675
|
//# sourceMappingURL=ngx-rendering-service-lib.mjs.map
|