acr-assist-simulator-module
Version:
This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 1.7.4.
99 lines (98 loc) • 12.2 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes} checked by tsc
*/
import { Component, Input } from '@angular/core';
import { BaseDataElement } from '../../../core/elements/models/base-data-element.model';
import { DomSanitizer } from '@angular/platform-browser';
export class HintDiagramComponent {
/**
* @param {?} domSanitizer
*/
constructor(domSanitizer) {
this.isDataURL = /^\s*data:([a-z]+\/[a-z]+(;[a-z\-]+\=[a-z\-]+)?)?(;base64)?,[a-z0-9\!\$\&\'\,\(\)\*\+\,\;\=\-\.\_\~\:\@\/\?\%\s]*\s*$/i;
this.activeSlideIndex = 0;
this.domSanitizer = domSanitizer;
}
/**
* @return {?}
*/
resetCarouselIndex() {
this.activeSlideIndex = 0;
}
/**
* @param {?} location
* @return {?}
*/
getImageDataUrl(location) {
const /** @type {?} */ isDataURL = !!location.match(this.isDataURL);
if (isDataURL) {
location = location.replace('unsafe:', '');
return location;
}
else {
return this.imagePath + '/' + location;
}
}
}
HintDiagramComponent.decorators = [
{ type: Component, args: [{
selector: 'acr-hint-diagram',
template: `<ng-container *ngIf="dataElement !== undefined">
<button type="button" class="btn btn-default btn-xs" data-toggle="modal" attr.data-target="#{{'diag_'+dataElement.id}}"
(click)="resetCarouselIndex()">
<span class="glyphicon glyphicon-picture" aria-hidden="true" data-toggle="tooltip" data-placement="right" title="Hint Diagrams"></span>
</button>
<div class="modal inmodal fade" id="{{'diag_'+dataElement.id}}" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">
<span aria-hidden="true">×</span>
<span class="sr-only">Close</span>
</button>
<h4 class="modal-title float-left">{{dataElement.label}}</h4>
</div>
<div class="modal-body">
<ng-container>
<carousel [(activeSlide)]="activeSlideIndex" interval="false">
<ng-container *ngFor="let diag of dataElement.diagrams ">
<slide>
<img class="img-responsive max-w-h-100" [src]="domSanitizer.bypassSecurityTrustUrl(getImageDataUrl(diag.location))" alt="{{ diag.label }}">
</slide>
</ng-container>
</carousel>
</ng-container>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
</ng-container>
`,
styles: [``, `.required-field{color:red}.padding-l-5{padding-left:5px}.whitespace{margin-left:5px}.max-w-h-100{max-width:100%;max-height:100%}.carousel-control>.fa{font-size:40px;position:absolute;top:50%;z-index:5;display:inline-block;margin-top:-20px}.carousel-control.left{background-repeat:repeat-x}.carousel-control.left,.carousel-control.right{background-image:none}.carousel-control.right{background-image:linear-gradient(to right,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-repeat:repeat-x}.scroll{overflow-y:scroll;overflow-x:hidden}.div-simulator-form-height{height:calc(100vh - 100px);overflow-y:scroll;overflow-x:hidden}.div-report-text-scroll{overflow-x:hidden;overflow-y:auto;max-height:calc(100vh - 300px)}.padding-r-10{padding-right:10px}.slide-left{left:30px}.slide-right{right:30px}hr{margin-top:10px;margin-bottom:10px}.white-space-line{white-space:pre-line;word-wrap:break-word}p{margin:0 0 10px}.form-control{border-radius:0;box-shadow:none;border-color:#d2d6de}h4.modal-title.float-left{float:left}.margin-b-0{margin-bottom:0}.font-weight-400{font-weight:400}.custom-radio-style{float:left;margin-right:15px}.zoom{width:100%;overflow:auto}.zoom img{height:auto;width:100%;min-width:100%;max-width:inherit!important}.btn-zoom{background-color:#f4f4f4;color:#444;border-color:#ddd}.btn-zoom.hover,.btn-zoom:active,.btn-zoom:hover{background-color:#e7e7e7}@media (min-width:768px){label.control-label{padding-left:20px}}.padding-5{padding:5px}`]
},] },
];
/** @nocollapse */
HintDiagramComponent.ctorParameters = () => [
{ type: DomSanitizer }
];
HintDiagramComponent.propDecorators = {
dataElement: [{ type: Input }],
imagePath: [{ type: Input }]
};
function HintDiagramComponent_tsickle_Closure_declarations() {
/** @type {?} */
HintDiagramComponent.prototype.dataElement;
/** @type {?} */
HintDiagramComponent.prototype.imagePath;
/** @type {?} */
HintDiagramComponent.prototype.isDataURL;
/** @type {?} */
HintDiagramComponent.prototype.activeSlideIndex;
/** @type {?} */
HintDiagramComponent.prototype.domSanitizer;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGludC1kaWFncmFtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2Fjci1hc3Npc3Qtc2ltdWxhdG9yLW1vZHVsZS8iLCJzb3VyY2VzIjpbInNyYy9hcHAvbW9kdWxlcy9hY3ItYXNzaXN0LXNpbXVsYXRvci9hc3Npc3QtZGF0YS1lbGVtZW50L2hpbnQtZGlhZ3JhbS9oaW50LWRpYWdyYW0uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDeEYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBd0N6RCxNQUFNOzs7O0lBT0osWUFBWSxZQUEwQjt5QkFKMUIsdUhBQXVIO2dDQUNoSCxDQUFDO1FBSWxCLElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO0tBQ2xDOzs7O0lBRUQsa0JBQWtCO1FBQ2hCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLENBQUM7S0FDM0I7Ozs7O0lBRUQsZUFBZSxDQUFDLFFBQWdCO1FBQzlCLHVCQUFNLFNBQVMsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDbkQsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztZQUNkLFFBQVEsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUMzQyxNQUFNLENBQUMsUUFBUSxDQUFDO1NBQ2pCO1FBQUMsSUFBSSxDQUFDLENBQUM7WUFDTixNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLEdBQUcsUUFBUSxDQUFDO1NBQ3hDO0tBQ0Y7OztZQTdERixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtnQkFDNUIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FpQ1g7Z0JBQ0MsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFLGs3Q0FBazdDLENBQUM7YUFDajhDOzs7O1lBdkNRLFlBQVk7OzswQkF5Q2xCLEtBQUs7d0JBQ0wsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQmFzZURhdGFFbGVtZW50IH0gZnJvbSAnLi4vLi4vLi4vY29yZS9lbGVtZW50cy9tb2RlbHMvYmFzZS1kYXRhLWVsZW1lbnQubW9kZWwnO1xyXG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWNyLWhpbnQtZGlhZ3JhbScsXHJcbiAgdGVtcGxhdGU6IGA8bmctY29udGFpbmVyICpuZ0lmPVwiZGF0YUVsZW1lbnQgIT09IHVuZGVmaW5lZFwiPlxyXG4gIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IGJ0bi14c1wiIGRhdGEtdG9nZ2xlPVwibW9kYWxcIiBhdHRyLmRhdGEtdGFyZ2V0PVwiI3t7J2RpYWdfJytkYXRhRWxlbWVudC5pZH19XCJcclxuICAgIChjbGljayk9XCJyZXNldENhcm91c2VsSW5kZXgoKVwiPlxyXG4gICAgPHNwYW4gY2xhc3M9XCJnbHlwaGljb24gZ2x5cGhpY29uLXBpY3R1cmVcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBkYXRhLXRvZ2dsZT1cInRvb2x0aXBcIiBkYXRhLXBsYWNlbWVudD1cInJpZ2h0XCIgdGl0bGU9XCJIaW50IERpYWdyYW1zXCI+PC9zcGFuPlxyXG4gIDwvYnV0dG9uPlxyXG4gIDxkaXYgY2xhc3M9XCJtb2RhbCBpbm1vZGFsIGZhZGVcIiBpZD1cInt7J2RpYWdfJytkYXRhRWxlbWVudC5pZH19XCIgdGFiaW5kZXg9XCItMVwiIHJvbGU9XCJkaWFsb2dcIiBhcmlhLWhpZGRlbj1cInRydWVcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1kaWFsb2cgbW9kYWwtbGdcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWNvbnRlbnRcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtaGVhZGVyXCI+XHJcbiAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImNsb3NlXCIgZGF0YS1kaXNtaXNzPVwibW9kYWxcIj5cclxuICAgICAgICAgICAgPHNwYW4gYXJpYS1oaWRkZW49XCJ0cnVlXCI+JnRpbWVzOzwvc3Bhbj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzci1vbmx5XCI+Q2xvc2U8L3NwYW4+XHJcbiAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgIDxoNCBjbGFzcz1cIm1vZGFsLXRpdGxlIGZsb2F0LWxlZnRcIj57e2RhdGFFbGVtZW50LmxhYmVsfX08L2g0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1ib2R5XCI+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8Y2Fyb3VzZWwgWyhhY3RpdmVTbGlkZSldPVwiYWN0aXZlU2xpZGVJbmRleFwiIGludGVydmFsPVwiZmFsc2VcIj5cclxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBkaWFnIG9mIGRhdGFFbGVtZW50LmRpYWdyYW1zIFwiPlxyXG4gICAgICAgICAgICAgICAgPHNsaWRlPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJpbWctcmVzcG9uc2l2ZSBtYXgtdy1oLTEwMFwiIFtzcmNdPVwiZG9tU2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RVcmwoZ2V0SW1hZ2VEYXRhVXJsKGRpYWcubG9jYXRpb24pKVwiIGFsdD1cInt7IGRpYWcubGFiZWwgfX1cIj5cclxuICAgICAgICAgICAgICAgIDwvc2xpZGU+XHJcbiAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgIDwvY2Fyb3VzZWw+XHJcbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtZm9vdGVyXCI+XHJcbiAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiIGRhdGEtZGlzbWlzcz1cIm1vZGFsXCI+Q2xvc2U8L2J1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9uZy1jb250YWluZXI+XHJcbmAsXHJcbiAgc3R5bGVzOiBbYGAsIGAucmVxdWlyZWQtZmllbGR7Y29sb3I6cmVkfS5wYWRkaW5nLWwtNXtwYWRkaW5nLWxlZnQ6NXB4fS53aGl0ZXNwYWNle21hcmdpbi1sZWZ0OjVweH0ubWF4LXctaC0xMDB7bWF4LXdpZHRoOjEwMCU7bWF4LWhlaWdodDoxMDAlfS5jYXJvdXNlbC1jb250cm9sPi5mYXtmb250LXNpemU6NDBweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3otaW5kZXg6NTtkaXNwbGF5OmlubGluZS1ibG9jazttYXJnaW4tdG9wOi0yMHB4fS5jYXJvdXNlbC1jb250cm9sLmxlZnR7YmFja2dyb3VuZC1yZXBlYXQ6cmVwZWF0LXh9LmNhcm91c2VsLWNvbnRyb2wubGVmdCwuY2Fyb3VzZWwtY29udHJvbC5yaWdodHtiYWNrZ3JvdW5kLWltYWdlOm5vbmV9LmNhcm91c2VsLWNvbnRyb2wucmlnaHR7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQscmdiYSgwLDAsMCwuMDAwMSkgMCxyZ2JhKDAsMCwwLC41KSAxMDAlKTtiYWNrZ3JvdW5kLXJlcGVhdDpyZXBlYXQteH0uc2Nyb2xse292ZXJmbG93LXk6c2Nyb2xsO292ZXJmbG93LXg6aGlkZGVufS5kaXYtc2ltdWxhdG9yLWZvcm0taGVpZ2h0e2hlaWdodDpjYWxjKDEwMHZoIC0gMTAwcHgpO292ZXJmbG93LXk6c2Nyb2xsO292ZXJmbG93LXg6aGlkZGVufS5kaXYtcmVwb3J0LXRleHQtc2Nyb2xse292ZXJmbG93LXg6aGlkZGVuO292ZXJmbG93LXk6YXV0bzttYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSAzMDBweCl9LnBhZGRpbmctci0xMHtwYWRkaW5nLXJpZ2h0OjEwcHh9LnNsaWRlLWxlZnR7bGVmdDozMHB4fS5zbGlkZS1yaWdodHtyaWdodDozMHB4fWhye21hcmdpbi10b3A6MTBweDttYXJnaW4tYm90dG9tOjEwcHh9LndoaXRlLXNwYWNlLWxpbmV7d2hpdGUtc3BhY2U6cHJlLWxpbmU7d29yZC13cmFwOmJyZWFrLXdvcmR9cHttYXJnaW46MCAwIDEwcHh9LmZvcm0tY29udHJvbHtib3JkZXItcmFkaXVzOjA7Ym94LXNoYWRvdzpub25lO2JvcmRlci1jb2xvcjojZDJkNmRlfWg0Lm1vZGFsLXRpdGxlLmZsb2F0LWxlZnR7ZmxvYXQ6bGVmdH0ubWFyZ2luLWItMHttYXJnaW4tYm90dG9tOjB9LmZvbnQtd2VpZ2h0LTQwMHtmb250LXdlaWdodDo0MDB9LmN1c3RvbS1yYWRpby1zdHlsZXtmbG9hdDpsZWZ0O21hcmdpbi1yaWdodDoxNXB4fS56b29te3dpZHRoOjEwMCU7b3ZlcmZsb3c6YXV0b30uem9vbSBpbWd7aGVpZ2h0OmF1dG87d2lkdGg6MTAwJTttaW4td2lkdGg6MTAwJTttYXgtd2lkdGg6aW5oZXJpdCFpbXBvcnRhbnR9LmJ0bi16b29te2JhY2tncm91bmQtY29sb3I6I2Y0ZjRmNDtjb2xvcjojNDQ0O2JvcmRlci1jb2xvcjojZGRkfS5idG4tem9vbS5ob3ZlciwuYnRuLXpvb206YWN0aXZlLC5idG4tem9vbTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNlN2U3ZTd9QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpe2xhYmVsLmNvbnRyb2wtbGFiZWx7cGFkZGluZy1sZWZ0OjIwcHh9fS5wYWRkaW5nLTV7cGFkZGluZzo1cHh9YF1cclxufSlcclxuZXhwb3J0IGNsYXNzIEhpbnREaWFncmFtQ29tcG9uZW50IHtcclxuICBASW5wdXQoKSBkYXRhRWxlbWVudDogQmFzZURhdGFFbGVtZW50O1xyXG4gIEBJbnB1dCgpIGltYWdlUGF0aDogc3RyaW5nO1xyXG4gIGlzRGF0YVVSTCA9IC9eXFxzKmRhdGE6KFthLXpdK1xcL1thLXpdKyg7W2EtelxcLV0rXFw9W2EtelxcLV0rKT8pPyg7YmFzZTY0KT8sW2EtejAtOVxcIVxcJFxcJlxcJ1xcLFxcKFxcKVxcKlxcK1xcLFxcO1xcPVxcLVxcLlxcX1xcflxcOlxcQFxcL1xcP1xcJVxcc10qXFxzKiQvaTtcclxuICBhY3RpdmVTbGlkZUluZGV4ID0gMDtcclxuICBkb21TYW5pdGl6ZXI6IERvbVNhbml0aXplcjtcclxuXHJcbiAgY29uc3RydWN0b3IoZG9tU2FuaXRpemVyOiBEb21TYW5pdGl6ZXIpIHtcclxuICAgIHRoaXMuZG9tU2FuaXRpemVyID0gZG9tU2FuaXRpemVyO1xyXG4gIH1cclxuXHJcbiAgcmVzZXRDYXJvdXNlbEluZGV4KCkge1xyXG4gICAgdGhpcy5hY3RpdmVTbGlkZUluZGV4ID0gMDtcclxuICB9XHJcblxyXG4gIGdldEltYWdlRGF0YVVybChsb2NhdGlvbjogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGlzRGF0YVVSTCA9ICEhbG9jYXRpb24ubWF0Y2godGhpcy5pc0RhdGFVUkwpO1xyXG4gICAgaWYgKGlzRGF0YVVSTCkge1xyXG4gICAgICBsb2NhdGlvbiA9IGxvY2F0aW9uLnJlcGxhY2UoJ3Vuc2FmZTonLCAnJyk7XHJcbiAgICAgIHJldHVybiBsb2NhdGlvbjtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmltYWdlUGF0aCArICcvJyArIGxvY2F0aW9uO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=