@simpleangularcontrols/sac-bootstrap4 16.0.0-rc.19 → 16.0.0-rc.20

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.
@@ -1 +1 @@
1
- {"version":3,"file":"simpleangularcontrols-sac-bootstrap4.mjs","sources":["../../../projects/sac-bootstrap4/src/controls/buttons/button.ts","../../../projects/sac-bootstrap4/src/controls/buttons/button.html","../../../projects/sac-bootstrap4/src/controls/dialog/dialog.ts","../../../projects/sac-bootstrap4/src/controls/dialog/dialog.html","../../../projects/sac-bootstrap4/src/controls/confirm/confirm.ts","../../../projects/sac-bootstrap4/src/controls/confirm/confirm.html","../../../projects/sac-bootstrap4/src/controls/confirm/confirm.service.ts","../../../projects/sac-bootstrap4/src/controls/contextmenu/contextmenuanchor.ts","../../../projects/sac-bootstrap4/src/controls/contextmenu/contextmenucontainer.ts","../../../projects/sac-bootstrap4/src/controls/contextmenu/contextmenu.ts","../../../projects/sac-bootstrap4/src/controls/contextmenu/contextmenu.html","../../../projects/sac-bootstrap4/src/controls/contextmenu/contextmenuitembutton.ts","../../../projects/sac-bootstrap4/src/controls/contextmenu/contextmenuitembutton.html","../../../projects/sac-bootstrap4/src/controls/contextmenu/contextmenuitemsplitter.ts","../../../projects/sac-bootstrap4/src/controls/contextmenu/contextmenuitemsplitter.html","../../../projects/sac-bootstrap4/src/controls/layout/tocontrolheight.pipe.ts","../../../projects/sac-bootstrap4/src/controls/layout/tocontrolwidthcss.pipe.ts","../../../projects/sac-bootstrap4/src/controls/layout/tolabelheight.pipe.ts","../../../projects/sac-bootstrap4/src/controls/layout/tolabelwidthcss.pipe.ts","../../../projects/sac-bootstrap4/src/controls/tooltip/tooltip.ts","../../../projects/sac-bootstrap4/src/controls/tooltip/tooltip.html","../../../projects/sac-bootstrap4/src/controls/layout/formlayout.directive.ts","../../../projects/sac-bootstrap4/src/controls/upload/dropzonemultiple.ts","../../../projects/sac-bootstrap4/src/controls/upload/dropzonemultiple.html","../../../projects/sac-bootstrap4/src/components/browser/browser.ts","../../../projects/sac-bootstrap4/src/components/browser/browser.html","../../../projects/sac-bootstrap4/src/components/browser/browser.module.ts","../../../projects/sac-bootstrap4/src/controls/buttons/button.module.ts","../../../projects/sac-bootstrap4/src/controls/checkbox/checkbox.ts","../../../projects/sac-bootstrap4/src/controls/checkbox/checkbox.html","../../../projects/sac-bootstrap4/src/controls/checkbox/radiobuttons.ts","../../../projects/sac-bootstrap4/src/controls/checkbox/radiobuttons.html","../../../projects/sac-bootstrap4/src/controls/checkbox/radiobutton.ts","../../../projects/sac-bootstrap4/src/controls/checkbox/radiobutton.html","../../../projects/sac-bootstrap4/src/controls/checkbox/checkbox.module.ts","../../../projects/sac-bootstrap4/src/controls/confirm/confirm.module.ts","../../../projects/sac-bootstrap4/src/controls/contextmenu/contextmenu.module.ts","../../../projects/sac-bootstrap4/src/controls/datetime/dateselector.ts","../../../projects/sac-bootstrap4/src/controls/datetime/dateselector.html","../../../projects/sac-bootstrap4/src/controls/datetime/date.ts","../../../projects/sac-bootstrap4/src/controls/datetime/date.html","../../../projects/sac-bootstrap4/src/controls/datetime/datetime.ts","../../../projects/sac-bootstrap4/src/controls/datetime/datetime.html","../../../projects/sac-bootstrap4/src/controls/datetime/time.ts","../../../projects/sac-bootstrap4/src/controls/datetime/time.html","../../../projects/sac-bootstrap4/src/controls/datetime/datetime.module.ts","../../../projects/sac-bootstrap4/src/controls/dialog/dialog.module.ts","../../../projects/sac-bootstrap4/src/controls/form/form.ts","../../../projects/sac-bootstrap4/src/controls/form/inheritform.directive.ts","../../../projects/sac-bootstrap4/src/controls/form/form.module.ts","../../../projects/sac-bootstrap4/src/controls/grid/paging.ts","../../../projects/sac-bootstrap4/src/controls/grid/paging.html","../../../projects/sac-bootstrap4/src/controls/grid/grid.ts","../../../projects/sac-bootstrap4/src/controls/grid/grid.html","../../../projects/sac-bootstrap4/src/controls/grid/gridbutton.ts","../../../projects/sac-bootstrap4/src/controls/grid/gridbutton.html","../../../projects/sac-bootstrap4/src/controls/grid/gridcolumn.ts","../../../projects/sac-bootstrap4/src/controls/grid/gridcolumn.html","../../../projects/sac-bootstrap4/src/controls/grid/gridcolumnaction.ts","../../../projects/sac-bootstrap4/src/controls/grid/gridcolumnaction.html","../../../projects/sac-bootstrap4/src/controls/grid/gridimage.ts","../../../projects/sac-bootstrap4/src/controls/grid/gridimage.html","../../../projects/sac-bootstrap4/src/controls/grid/grid.module.ts","../../../projects/sac-bootstrap4/src/controls/input/input.ts","../../../projects/sac-bootstrap4/src/controls/input/input.html","../../../projects/sac-bootstrap4/src/controls/input/inputarea.ts","../../../projects/sac-bootstrap4/src/controls/input/inputarea.html","../../../projects/sac-bootstrap4/src/controls/input/inputcurrency.ts","../../../projects/sac-bootstrap4/src/controls/input/inputcurrency.html","../../../projects/sac-bootstrap4/src/controls/input/inputdecimal.ts","../../../projects/sac-bootstrap4/src/controls/input/inputdecimal.html","../../../projects/sac-bootstrap4/src/controls/input/inputemail.ts","../../../projects/sac-bootstrap4/src/controls/input/inputemail.html","../../../projects/sac-bootstrap4/src/controls/input/inputinteger.ts","../../../projects/sac-bootstrap4/src/controls/input/inputinteger.html","../../../projects/sac-bootstrap4/src/controls/input/inputpassword.ts","../../../projects/sac-bootstrap4/src/controls/input/inputpassword.html","../../../projects/sac-bootstrap4/src/controls/input/inputsearch.ts","../../../projects/sac-bootstrap4/src/controls/input/inputsearch.html","../../../projects/sac-bootstrap4/src/controls/input/input.module.ts","../../../projects/sac-bootstrap4/src/controls/layout/layout.module.ts","../../../projects/sac-bootstrap4/src/controls/list/dropdown.ts","../../../projects/sac-bootstrap4/src/controls/list/dropdown.html","../../../projects/sac-bootstrap4/src/controls/list/dropdown.module.ts","../../../projects/sac-bootstrap4/src/controls/list/listbox.ts","../../../projects/sac-bootstrap4/src/controls/list/listbox.html","../../../projects/sac-bootstrap4/src/controls/list/list.module.ts","../../../projects/sac-bootstrap4/src/controls/multilanguage/multilanguagemenuanchor.ts","../../../projects/sac-bootstrap4/src/controls/multilanguage/multilanguagemenucontainer.ts","../../../projects/sac-bootstrap4/src/controls/multilanguage/multilanguagemenu.ts","../../../projects/sac-bootstrap4/src/controls/multilanguage/multilanguagemenu.html","../../../projects/sac-bootstrap4/src/controls/multilanguage/multilanguagemenuitembutton.ts","../../../projects/sac-bootstrap4/src/controls/multilanguage/multilanguagemenuitembutton.html","../../../projects/sac-bootstrap4/src/controls/multilanguage/multilanguageinput.ts","../../../projects/sac-bootstrap4/src/controls/multilanguage/multilanguageinput.html","../../../projects/sac-bootstrap4/src/controls/multilanguage/multilanguageinputarea.ts","../../../projects/sac-bootstrap4/src/controls/multilanguage/multilanguageinputarea.html","../../../projects/sac-bootstrap4/src/controls/multilanguage/multilanguage.module.ts","../../../projects/sac-bootstrap4/src/controls/static/formcontainer.ts","../../../projects/sac-bootstrap4/src/controls/static/formcontainer.html","../../../projects/sac-bootstrap4/src/controls/static/staticlabel.ts","../../../projects/sac-bootstrap4/src/controls/static/staticlabel.html","../../../projects/sac-bootstrap4/src/controls/static/staticlabel.module.ts","../../../projects/sac-bootstrap4/src/controls/tabs/tabitem.ts","../../../projects/sac-bootstrap4/src/controls/tabs/tabitem.html","../../../projects/sac-bootstrap4/src/controls/tabs/tab.ts","../../../projects/sac-bootstrap4/src/controls/tabs/tab.html","../../../projects/sac-bootstrap4/src/controls/tabs/tabs.module.ts","../../../projects/sac-bootstrap4/src/controls/tinymce/tinymce.ts","../../../projects/sac-bootstrap4/src/controls/tinymce/tinymce.html","../../../projects/sac-bootstrap4/src/controls/tinymce/tinymce.module.ts","../../../projects/sac-bootstrap4/src/controls/tooltip/tooltip.module.ts","../../../projects/sac-bootstrap4/src/controls/treeview/treeview.ts","../../../projects/sac-bootstrap4/src/controls/treeview/treeview.html","../../../projects/sac-bootstrap4/src/controls/treeview/treeview.module.ts","../../../projects/sac-bootstrap4/src/controls/upload/dropzonesingle.ts","../../../projects/sac-bootstrap4/src/controls/upload/dropzonesingle.html","../../../projects/sac-bootstrap4/src/controls/upload/upload.ts","../../../projects/sac-bootstrap4/src/controls/upload/upload.html","../../../projects/sac-bootstrap4/src/controls/upload/uploadmultiple.ts","../../../projects/sac-bootstrap4/src/controls/upload/uploadmultiple.html","../../../projects/sac-bootstrap4/src/controls/upload/upload.module.ts","../../../projects/sac-bootstrap4/src/controls/validation/validationsummary.ts","../../../projects/sac-bootstrap4/src/controls/validation/validationsummary.html","../../../projects/sac-bootstrap4/src/controls/validation/validationsummary.module.ts","../../../projects/sac-bootstrap4/src/controls/wizard/wizarditem.ts","../../../projects/sac-bootstrap4/src/controls/wizard/wizarditem.html","../../../projects/sac-bootstrap4/src/controls/wizard/wizard.ts","../../../projects/sac-bootstrap4/src/controls/wizard/wizard.html","../../../projects/sac-bootstrap4/src/controls/wizard/wizard.module.ts","../../../projects/sac-bootstrap4/src/public_api.ts","../../../projects/sac-bootstrap4/src/simpleangularcontrols-sac-bootstrap4.ts"],"sourcesContent":["import { Component} from '@angular/core';\nimport { SacButtonCommon } from '@simpleangularcontrols/sac-common';\nimport { NgIf, NgClass } from '@angular/common';\n\n/**\n * Button Component\n * \n * <example-url>http://localhost/demo/mysample.component.html</example-url>\n */\n@Component({\n selector: 'sac-button',\n templateUrl: './button.html',\n standalone: true,\n imports: [NgIf, NgClass],\n})\nexport class SacButtonComponent extends SacButtonCommon {\n\n}\n","<button\n [id]=\"name\"\n type=\"button\"\n class=\"btn d-flex justify-content-center align-items-center\"\n [attr.disabled]=\"_isdisabled || isloading ? 'disabled' : null\"\n (click)=\"buttonClick()\"\n [class.btn-primary]=\"role === 'primary'\"\n [class.btn-secondary]=\"role === 'secondary' || role === 'default'\"\n [class.btn-success]=\"role === 'success'\"\n [class.btn-danger]=\"role === 'danger'\"\n [class.btn-warning]=\"role === 'warning'\"\n [class.btn-info]=\"role === 'info'\"\n [class.btn-link]=\"role === 'link'\"\n>\n <span\n *ngIf=\"isloading\"\n class=\"spinner-border spinner-border-sm mr-2\"\n role=\"status\"\n aria-hidden=\"true\"\n ></span>\n <i *ngIf=\"!isloading && icon !== ''\" [ngClass]=\"icon\" [class.mr-2]=\"text\"></i\n >{{text}}\n</button>\n","import {\n ChangeDetectorRef,\n Component,\n ElementRef,\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport { SacDialogCommon } from '@simpleangularcontrols/sac-common';\nimport { NgIf } from '@angular/common';\n\n/**\n * Dialog Komponente\n */\n@Component({\n selector: 'sac-dialog',\n templateUrl: './dialog.html',\n standalone: true,\n imports: [NgIf],\n})\nexport class SacDialogComponent\n extends SacDialogCommon\n implements OnInit, OnDestroy\n{\n /**\n * Referenz auf DOM Element\n */\n private element: any;\n\n /**\n * Konstruktor\n * @param el DOM Element Referenz\n * @param cdRef Change Detection Service\n */\n constructor(el: ElementRef, cdRef: ChangeDetectorRef) {\n super(cdRef);\n\n this.element = el.nativeElement;\n }\n\n /**\n * Event wenn Komponente initialisiert wird\n */\n ngOnInit() {\n // Element an Body für korrektes Styling unter Bootstrap 3 verschieben\n document.body.appendChild(this.element);\n }\n\n /**\n * Event wenn Element entfernt wird\n */\n ngOnDestroy() {\n this.hide();\n if (document.body.contains(this.element)) {\n document.body.removeChild(this.element);\n }\n super.ngOnDestroy();\n }\n}\n","<div\n #dialog\n class=\"modal show\"\n style=\"display: block\"\n tabindex=\"-1\"\n role=\"dialog\"\n *ngIf=\"_show\"\n>\n <div\n class=\"modal-dialog modal-lg modal-dialog-centered modal-dialog-scrollable\"\n role=\"document\"\n [class.modal-xl]=\"_size === 'extralarge'\"\n [class.modal-lg]=\"_size === 'large'\"\n [class.modal-sm]=\"_size === 'small'\"\n >\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <h5 class=\"modal-title\">{{title}}</h5>\n <button\n type=\"button\"\n class=\"close\"\n data-dismiss=\"modal\"\n aria-label=\"Close\"\n (click)=\"hide()\"\n *ngIf=\"closebutton\"\n >\n <span aria-hidden=\"true\">&times;</span>\n </button>\n </div>\n <div class=\"modal-body\">\n <ng-content select=\"[dialogbody]\"></ng-content>\n </div>\n <div class=\"modal-footer\">\n <ng-content select=\"[dialogfooter]\"></ng-content>\n </div>\n </div>\n <!-- /.modal-content -->\n </div>\n <!-- /.modal-dialog -->\n</div>\n<!-- /.modal -->\n<div class=\"modal-backdrop show\" *ngIf=\"_show && backdrop\" #backdrop></div>\n","import { Component } from '@angular/core';\nimport { SacConfirmCommon } from '@simpleangularcontrols/sac-common';\nimport { SacButtonComponent } from '../buttons/button';\nimport { NgIf, NgFor } from '@angular/common';\nimport { SacDialogComponent } from '../dialog/dialog';\n\n/**\n * Confirm Komponente\n */\n@Component({\n selector: 'sac-confirm',\n templateUrl: './confirm.html',\n standalone: true,\n imports: [\n SacDialogComponent,\n NgIf,\n NgFor,\n SacButtonComponent,\n ],\n})\nexport class SacConfirmComponent extends SacConfirmCommon {}\n","<sac-dialog\n name=\"confirmDialog\"\n [(isvisible)]=\"isvisible\"\n [title]=\"title\"\n [allowesc]=\"false\"\n [closebutton]=\"false\"\n dialogsize=\"small\"\n>\n <div dialogbody>\n <div class=\"media\">\n <img\n [attr.src]=\"image\"\n class=\"align-self-center mr-3\"\n *ngIf=\"hasImage()\"\n />\n <div class=\"media-body\">{{message}}</div>\n </div>\n </div>\n <ng-container dialogfooter>\n <ng-container *ngFor=\"let button of buttons\">\n <sac-button\n [name]=\"button.key\"\n [text]=\"button.text\"\n [role]=\"button.role || 'default'\"\n (clicked)=\"confirm(button.key)\"\n ></sac-button>\n </ng-container>\n </ng-container>\n</sac-dialog>\n","import {\n ApplicationRef,\n ComponentFactory,\n ComponentFactoryResolver,\n EventEmitter,\n Inject,\n Injectable,\n Injector,\n} from '@angular/core';\nimport {\n SacConfirmButton,\n ServiceConfirmCommon,\n isDefined,\n} from '@simpleangularcontrols/sac-common';\nimport { forkJoin } from 'rxjs';\nimport { take } from 'rxjs/operators';\nimport { SacConfirmComponent } from './confirm';\n\n/**\n * Service für Confirm Messages in TypeScript Code\n *\n * @example\n * // Beispiel für ConfirmMessage mit Standard Buttons (Ja / Nein).\n * confirmService.ConfirmMessage('titel', 'frage').subscribe(action => { // Action Code });\n *\n * @example\n * // Beispiel für ConfirmMessage mit eigenen Buttons\n * let buttons: SacConfirmButton[] = [];\n * buttons.push(new SacConfirmButton('ActionKey','Text Primary'));\n * buttons.push(new SacConfirmButton('ActionKey2','Text Button 2'));\n * confirmService.ConfirmMessage('titel', 'frage', buttons).subscribe(action => { // Action Code });\n */\n@Injectable()\nexport class ServiceConfirm extends ServiceConfirmCommon {\n // #region Properties\n\n /**\n * Collection von Buttons die angezeigt werden müssen.\n */\n private buttons: SacConfirmButton[] = [];\n /**\n * Message die in Dialog angezeigt werden soll.\n */\n private message: string = '';\n /**\n * Titel der im Dialog angezeigt werden soll.\n */\n private title: string = '';\n\n // #endregion Properties\n\n // #region Constructors\n\n /**\n * Konstruktor\n * @param componentFactoryResolver Component Factory Resolver Instanz\n * @param appRef Application Referenz. Wird benötigt um den Dialog am Body anzuhängen\n * @param injector Injector. Wird benötigt um den Dialog dynamisch zu erzeugen\n */\n constructor(\n @Inject(ComponentFactoryResolver)\n private componentFactoryResolver: ComponentFactoryResolver,\n appRef: ApplicationRef,\n injector: Injector\n ) {\n super(appRef, injector);\n }\n\n // #endregion Constructors\n\n // #region Public Methods\n\n /**\n * Confirm Dialog anzeigen\n * @param message Nachricht die angezeigt werden soll.\n * @returns EventEmitter mit Key des Buttons, welcher geklickt wurde.\n */\n public ConfirmMessage(\n title: string,\n message: string,\n buttons: SacConfirmButton[] = null\n ): EventEmitter<string> {\n this.title = title;\n this.message = message;\n\n // Default Buttons setzen, wenn keine Buttons angegeben sind\n if (!isDefined(buttons)) {\n this.buttons = [];\n\n forkJoin({\n button_yes: this.localisationService.GetString(\n this.validationKeyService.ConfirmDefaultButtonYes\n ),\n button_no: this.localisationService.GetString(\n this.validationKeyService.ConfirmDefaultButtonNo\n ),\n })\n .pipe(take(1))\n .subscribe((texte) => {\n this.buttons.push(\n new SacConfirmButton('yes', texte.button_yes, 'primary')\n );\n this.buttons.push(new SacConfirmButton('no', texte.button_no));\n });\n } else {\n this.buttons = buttons;\n }\n return super.Confirm();\n }\n\n /**\n * Erzeugen einer Component Factory für einen Dialog\n */\n public GetComponentFactory(): ComponentFactory<SacConfirmComponent> {\n return this.componentFactoryResolver.resolveComponentFactory(\n SacConfirmComponent\n );\n }\n\n // #endregion Public Methods\n\n // #region Protected Methods\n\n /**\n * Konfiguration des Dialogs\n * @param instance Instanz eines SacConfirm Dialogs\n */\n protected ConfigureDialog(instance: SacConfirmComponent) {\n // Text in Dialog setzen\n instance.title = this.title;\n instance.message = this.message;\n instance.buttons = this.buttons;\n instance.image = this.iconService.ConfirmDefaultImage;\n }\n\n // #endregion Protected Methods\n}\n","import { Directive, ElementRef, forwardRef } from '@angular/core';\nimport { SacContextmenuAnchorCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Anker Komponente für Context Menü. Wird zum positionieren des Context Menü in der Page benötigt.\n */\n@Directive({\n selector: '[sacContextMenuAnchor]',\n providers: [\n {\n provide: SacContextmenuAnchorCommon,\n useExisting: forwardRef(() => SacContextmenuAnchorDirective),\n },\n ],\n standalone: true,\n})\nexport class SacContextmenuAnchorDirective extends SacContextmenuAnchorCommon {\n // #region Constructors\n\n /**\n * Konstruktor\n * @param elementRef HTML DOM Referenz\n */\n constructor(elementRef: ElementRef<HTMLElement>) {\n super(elementRef);\n }\n\n // #endregion Constructors\n}\n","import { Directive, ElementRef, forwardRef } from '@angular/core';\nimport { SacContextMenuContrainerCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Marker Komponente für Context Menü\n */\n@Directive({\n selector: '[sacContextMenuContainer]',\n providers: [\n {\n provide: SacContextMenuContrainerCommon,\n useExisting: forwardRef(() => SacContextmenuContainerDirective),\n },\n ],\n standalone: true,\n})\nexport class SacContextmenuContainerDirective extends SacContextMenuContrainerCommon {\n // #region Constructors\n\n /**\n * Konstruktor\n * @param elementRef Referenz auf DOM Element\n */\n constructor(elementRef: ElementRef<HTMLElement>) {\n super(elementRef);\n }\n\n // #endregion Constructors\n}\n","import { SacContextmenuAnchorDirective } from './contextmenuanchor';\nimport { SacContextmenuContainerDirective } from './contextmenucontainer';\nimport { DOCUMENT, NgClass, NgTemplateOutlet } from '@angular/common';\nimport { Component, ElementRef, Inject, Injector, NgZone, Renderer2 } from '@angular/core';\nimport { SacContextmenuCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Component für Contextmenü\n */\n@Component({\n selector: 'sac-contextmenu',\n templateUrl: './contextmenu.html',\n standalone: true,\n imports: [NgClass, NgTemplateOutlet, SacContextmenuContainerDirective, SacContextmenuAnchorDirective],\n})\nexport class SacContextmenuComponent extends SacContextmenuCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param document Referenz auf HTML Document\n * @param ngZone Angular Zone Service\n * @param elementRef Referenz auf HTML Element der aktuellen Komponente\n * @param renderer Render Service von Angular\n * @param injector injector to resolve services\n */\n constructor(\n @Inject(DOCUMENT) document: any,\n ngZone: NgZone,\n elementRef: ElementRef<HTMLElement>,\n renderer: Renderer2,\n injector: Injector\n ) {\n super(document, ngZone, elementRef, renderer, injector);\n }\n\n // #endregion Constructors\n}\n","<div class=\"dropdown\" [ngClass]=\"cssclass\">\n <ng-container\n [ngTemplateOutlet]=\"buttontemplate || defaultButtonTemplate\"\n ></ng-container>\n\n <div\n class=\"dropdown-menu dropdown-menu-right\"\n sacContextMenuContainer\n [class.show]=\"isopen\"\n >\n <ng-content></ng-content>\n </div>\n</div>\n\n<ng-template #defaultButtonTemplate>\n <button\n sacContextMenuAnchor\n class=\"btn btn-sm btn-link text-secondary text-decoration-none\"\n type=\"button\"\n (click)=\"toggle()\"\n >\n <i [class]=\"IconContextMenu\"></i>\n </button>\n</ng-template>\n","import { NgClass, NgIf } from '@angular/common';\nimport { Component, forwardRef } from '@angular/core';\nimport { SacContextmenuItemButtonCommon, SacContextmenuItemCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Component for menu entry in context menu\n */\n@Component({\n selector: 'sac-contextmenubutton',\n templateUrl: './contextmenuitembutton.html',\n providers: [\n {\n provide: SacContextmenuItemCommon,\n useExisting: forwardRef(() => SacContextmenuItemButtonComponent),\n },\n ],\n standalone: true,\n imports: [NgIf, NgClass],\n})\nexport class SacContextmenuItemButtonComponent extends SacContextmenuItemButtonCommon {\n // #region Constructors\n\n /**\n * Constructor\n */\n constructor() {\n super();\n }\n\n // #endregion Constructors\n}\n","<button\n [id]=\"name\"\n type=\"button\"\n class=\"dropdown-item\"\n (click)=\"callaction($event)\"\n [class.disabled]=\"isdisabled\"\n [ngClass]=\"cssclass\"\n [attr.disabled]=\"isdisabled ? 'disabled' : null\">\n <div class=\"d-flex\">\n <div\n *ngIf=\"!isicondisabled\"\n style=\"min-width: 1.5rem\">\n <img\n *ngIf=\"image\"\n [src]=\"image\"\n class=\"align-baseline\" />\n <i\n *ngIf=\"icon\"\n [class]=\"iconstyle + ' ' + icon\"></i>\n </div>\n <div class=\"flex-grow-1\">{{ text }}</div>\n </div>\n</button>\n","import { Component, forwardRef } from '@angular/core';\nimport { SacContextmenuItemCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Splitter Komponente in Context Menü\n */\n@Component({\n selector: 'sac-contextmenusplitter',\n templateUrl: './contextmenuitemsplitter.html',\n standalone: true,\n providers: [\n {\n provide: SacContextmenuItemCommon,\n useExisting: forwardRef(() => SacContextmenuItemSplitterComponent),\n },\n ],\n})\nexport class SacContextmenuItemSplitterComponent extends SacContextmenuItemCommon {}\n","<div class=\"dropdown-divider\"></div>","import { Pipe, PipeTransform } from '@angular/core';\nimport { ControlHeight } from '@simpleangularcontrols/sac-common';\n\n@Pipe({\n name: 'toControlHeight',\n standalone: true,\n})\nexport class SacToControlHeightPipe implements PipeTransform {\n // #region Public Methods\n\n /**\n * Returns the CSS class that defines the height for the control\n * @param value ControlHeight value or null\n */\n public transform(value: ControlHeight | null): string {\n // Return default value\n if (!value) {\n return '';\n }\n\n switch (value) {\n case ControlHeight.Small:\n return 'form-control-sm';\n case ControlHeight.Large:\n return 'form-control-lg';\n default:\n return '';\n }\n }\n\n // #endregion Public Methods\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { ISacLabelSizes } from '@simpleangularcontrols/sac-common';\n\n@Pipe({\n name: 'toControlWidthCss',\n standalone: true,\n})\nexport class SacToControlWidthCssPipe implements PipeTransform {\n // #region Public Methods\n\n /**\n * Get CSS classes from label width configuration to set control size\n * @param value Configuration with grid columns for different viewports\n * @returns string with css classe for bootstrap3\n */\n public transform(value: ISacLabelSizes): string {\n const classes: string[] = [];\n\n if (value.labelSizeXs) {\n classes.push('col-' + this.calcControlSize(value.labelSizeXs));\n }\n\n if (value.labelSizeSm) {\n classes.push('col-sm-' + this.calcControlSize(value.labelSizeSm));\n }\n\n if (value.labelSizeMd) {\n classes.push('col-md-' + this.calcControlSize(value.labelSizeMd));\n }\n\n if (value.labelSizeLg) {\n classes.push('col-lg-' + this.calcControlSize(value.labelSizeLg));\n }\n\n if (value.labelSizeXl) {\n classes.push('col-xl-' + this.calcControlSize(value.labelSizeXl));\n }\n\n return classes.join(' ');\n }\n\n // #endregion Public Methods\n\n // #region Private Methods\n\n /**\n * calculate the control size\n * @param labelsize grid size of label\n * @returns grid size for control. should be between 1 and 12\n */\n private calcControlSize(labelsize: number) {\n if (labelsize === 12) {\n return 12;\n }\n\n if (!labelsize) {\n return 12;\n }\n\n return 12 - labelsize;\n }\n\n // #endregion Private Methods\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { ControlHeight } from '@simpleangularcontrols/sac-common';\n\n@Pipe({\n name: 'toLabelHeight',\n standalone: true,\n})\nexport class SacToLabelHeightPipe implements PipeTransform {\n // #region Public Methods\n\n /**\n * Returns the CSS class that defines the height for the control\n * @param value ControlHeight value or null\n */\n public transform(value: ControlHeight | null): string {\n // Return default value\n if (!value) {\n return '';\n }\n\n switch (value) {\n case ControlHeight.Small:\n return 'col-form-label-sm';\n case ControlHeight.Large:\n return 'col-form-label-lg';\n default:\n return '';\n }\n }\n\n // #endregion Public Methods\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { ISacLabelSizes } from '@simpleangularcontrols/sac-common';\n\n@Pipe({\n name: 'toLabelWidthCss',\n standalone: true,\n})\nexport class SacToLabelWidthCssPipe implements PipeTransform {\n // #region Public Methods\n\n /**\n * Get CSS classes from label width configuration to set label size\n * @param value Configuration with grid columns for different viewports\n * @returns string with css classe for bootstrap3\n */\n public transform(value: ISacLabelSizes): string {\n const classes: string[] = [];\n\n if (value.labelSizeXs) {\n classes.push('col-' + value.labelSizeXs);\n }\n\n if (value.labelSizeSm) {\n classes.push('col-sm-' + value.labelSizeSm);\n }\n\n if (value.labelSizeMd) {\n classes.push('col-md-' + value.labelSizeMd);\n }\n\n if (value.labelSizeLg) {\n classes.push('col-lg-' + value.labelSizeLg);\n }\n\n if (value.labelSizeXl) {\n classes.push('col-xl-' + value.labelSizeXl);\n }\n\n return classes.join(' ');\n }\n\n // #endregion Public Methods\n}\n","import { NgIf } from '@angular/common';\nimport { ChangeDetectorRef, Component, ElementRef } from '@angular/core';\nimport { SacTooltipCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Tooltip Komponente\n *\n * @example ToolTip Control\n *\n * <ngTooltip tooltiptext=\"Mein Tooltip\" [inlinemode]=\"true\">\n * <i class=\"tooltip\"></i>\n * </ngTooltip>\n *\n * @example ToolTip Control im Inline Mode. Style auf Icon kann auch in Klasse ausgelagert werden.\n *\n * <div class=\"form-inline\">\n * <ngInputSearch iconname=\"Suchen\"></ngInputSearch>\n * <ngTooltip tooltiptext=\"Mein Tooltip\" [inlinemode]=\"true\">\n * <i class=\"tooltip\" style=\"position: relative; left: 0; top: 3px; display: inline-block; margin-right: 10px;\"></i>\n * </ngTooltip>\n * </div>\n *\n */\n@Component({\n selector: 'sac-tooltip',\n templateUrl: './tooltip.html',\n standalone: true,\n imports: [NgIf],\n})\nexport class SacTooltipComponent extends SacTooltipCommon {\n // #region Constructors\n\n /**\n * Konstrukor\n * @param parent SacFormular Instanz\n * @param injector Component Injector\n */\n constructor(cdRef: ChangeDetectorRef, ref: ElementRef) {\n super(cdRef, ref);\n }\n\n // #endregion Constructors\n\n // #region Protected Methods\n\n /**\n * Padding Value for Bootstrap5 Tooltip Padding\n * @returns Static Padding Value for BS5\n */\n protected getTooltipOffset(): number {\n return 2;\n }\n\n // #endregion Protected Methods\n}\n","<div [style.display]=\"inlinemode ? 'inline' : null\">\n <div\n #container\n (mouseenter)=\"ShowTooltip()\"\n (mouseleave)=\"HideTooltip()\"\n [style.display]=\"inlinemode ? 'inline' : null\"\n >\n <ng-content></ng-content>\n </div>\n <div #tooltip *ngIf=\"IsTooltipVisible()\">\n <div\n [class.show]=\"IsTooltipContentVisible\"\n class=\"tooltip bs-tooltip-auto fade\"\n style=\"position: absolute\"\n [style.left.px]=\"LeftPos\"\n [style.top.px]=\"TopPos\"\n [class.top]=\"GetTooltipPosition() === TooltipPosition.top\"\n [class.left]=\"GetTooltipPosition() === TooltipPosition.left\"\n [class.right]=\"GetTooltipPosition() === TooltipPosition.right\"\n [class.bottom]=\"GetTooltipPosition() === TooltipPosition.bottom\"\n [attr.x-placement]=\"GetTooltipPosition() == TooltipPosition.right ? 'right' : GetTooltipPosition() == TooltipPosition.left ? 'left' : GetTooltipPosition() == TooltipPosition.top ? 'top' :GetTooltipPosition() == TooltipPosition.bottom ? 'bottom' : null\"\n >\n <div\n class=\"arrow\"\n style=\"position: absolute\"\n [style.top.px]=\"GetTooltipPosition() === TooltipPosition.left || GetTooltipPosition() === TooltipPosition.right ? (getToolTipHeight() / 2) - 6.5 : null\"\n [style.left.px]=\"GetTooltipPosition() === TooltipPosition.bottom || GetTooltipPosition() === TooltipPosition.top ? (getToolTipWidth() / 2) - 6.5 : null\"\n ></div>\n <div class=\"tooltip-inner\">{{tooltiptext}}</div>\n </div>\n </div>\n</div>\n","import { Directive } from '@angular/core';\nimport { SacFormLayoutCommon } from '@simpleangularcontrols/sac-common';\n\n@Directive({\n selector: '[sacFormLayout]',\n standalone: true,\n})\nexport class SacFormLayoutDirective extends SacFormLayoutCommon {}\n","import { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { AsyncPipe, NgClass, NgFor, NgIf } from '@angular/common';\nimport { Component, Host, Injector, NgZone, OnInit, Optional, Renderer2, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacDropzoneMultipleCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Dropzone Komponente für mehrere Uploads\n * @see https://github.com/kukhariev/ngx-uploadx/\n */\n@Component({\n selector: 'sac-dropzonemultiple',\n templateUrl: './dropzonemultiple.html',\n styleUrls: ['./dropzone.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacDropzoneMultipleComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacDropzoneMultipleComponent),\n },\n ],\n standalone: true,\n imports: [\n NgIf,\n NgClass,\n NgFor,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacTooltipComponent,\n SacToControlHeightPipe,\n ],\n})\nexport class SacDropzoneMultipleComponent extends SacDropzoneMultipleCommon implements OnInit {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n * @param renderer Angular rendering engine\n * @param ngZone ngZone to manage external javascripts\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector,\n renderer: Renderer2,\n ngZone: NgZone\n ) {\n super(formLayout, injector, renderer, ngZone);\n }\n\n // #endregion Constructors\n\n // #region Public Methods\n\n /**\n * Initialisiert das Control\n */\n public ngOnInit() {\n super.ngOnInit();\n }\n\n // #endregion Public Methods\n}\n","<div\n id=\"{{ name }}\"\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\n id=\"{{ name }}_label\"\n for=\"{{ name }}_uploadinput\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\"\n ><span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\"></span> </sac-tooltip\n ></label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n class=\"dropzone d-flex justify-content-center position-relative\"\n (drop)=\"dropHandler($event)\"\n (dragover)=\"onDragOver($event)\"\n (dragleave)=\"onDragLeave($event)\"\n [class.active]=\"active\"\n [style.min-height]=\"uploadheight\"\n [class.is-invalid]=\"invalid && (dirty || touched)\">\n <div\n class=\"content d-flex justify-content-center\"\n *ngIf=\"uploads.length === 0\">\n <div class=\"align-self-center text-center\">\n <div [class.is-invalid]=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n <div\n class=\"content d-flex justify-content-center\"\n *ngIf=\"uploads.length > 0\">\n <div class=\"align-self-center progress-container\">\n <div\n class=\"dropzone-uploadstates\"\n [class.mt-1]=\"i > 0\"\n *ngFor=\"let file of uploads; let i = index\">\n <div\n class=\"input-group upload-component upload-component-multiple\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\">\n <div class=\"form-control upload-progress border-secondary\">\n <div class=\"progress\">\n <div\n class=\"progress-bar\"\n [class.progress-bar-success]=\"file.progress === 100\"\n role=\"progressbar\"\n [attr.aria-valuenow]=\"file.progress\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n [style.width.%]=\"file.progress\">\n <span class=\"progress-text text-dark\">{{ file.name }}</span>\n </div>\n </div>\n </div>\n <div class=\"input-group-append\">\n <!-- image-preview-clear button -->\n <a\n class=\"btn\"\n (click)=\"cancel(file.uploadId)\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconDelete\"></span>\n </a>\n </div>\n </div>\n </div>\n </div>\n </div>\n <input\n #files\n multiple\n id=\"{{ name }}_uploadinput\"\n type=\"file\"\n class=\"custom-file-input\"\n (click)=\"files.value = ''\"\n (uploadxState)=\"onUpload($event)\"\n [disabled]=\"HasQueueItem()\" />\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import {\n AsyncPipe,\n NgClass,\n NgForOf,\n NgIf,\n NgTemplateOutlet,\n} from '@angular/common';\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\nimport { Component, Injector, ViewChild } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport {\n IBrowserFile,\n IBrowserNode,\n SacFileBrowserCommon,\n} from '@simpleangularcontrols/sac-common';\nimport { Observable, forkJoin } from 'rxjs';\nimport { ServiceConfirm } from '../../controls/confirm/confirm.service';\nimport { SacContextmenuComponent } from '../../controls/contextmenu';\nimport { SacContextmenuItemButtonComponent } from '../../controls/contextmenu/contextmenuitembutton';\nimport { SacContextmenuItemSplitterComponent } from '../../controls/contextmenu/contextmenuitemsplitter';\nimport { SacDropzoneMultipleComponent } from '../../controls/upload/dropzonemultiple';\n\n/**\n * Server File Browser Komponente\n */\n@Component({\n selector: 'sac-filebrowser',\n templateUrl: './browser.html',\n standalone: true,\n imports: [\n NgTemplateOutlet,\n NgIf,\n NgForOf,\n NgClass,\n AsyncPipe,\n FormsModule,\n HttpClientModule,\n SacContextmenuComponent,\n SacContextmenuItemButtonComponent,\n SacContextmenuItemSplitterComponent,\n SacDropzoneMultipleComponent,\n ],\n providers: [ServiceConfirm],\n})\nexport class SacBrowserComponent extends SacFileBrowserCommon {\n // #region Properties\n\n /**\n * Referenz auf Upload Component\n */\n @ViewChild(SacDropzoneMultipleComponent, { static: false })\n private uploadComponent: SacDropzoneMultipleComponent;\n\n // #endregion Properties\n\n // #region Constructors\n\n /**\n * Konstruktor\n * @param httpClient HTTP Client\n * @param injector Angular Dependency Injection Service\n * @param confirmService Confirm Service\n */\n constructor(\n httpClient: HttpClient,\n injector: Injector,\n private confirmService: ServiceConfirm\n ) {\n super(httpClient, injector);\n }\n\n // #endregion Constructors\n\n // #region Public Methods\n\n /**\n * Confirm Action wenn ein File gelöscht werden soll\n * @param file File das gelöscht werden soll.\n * @returns Observable ob File gelöscht werden kann.\n */\n public confirmDeleteFile(file: IBrowserFile): Observable<boolean> {\n return new Observable<boolean>((observer) => {\n forkJoin({\n title: this.lngResourceService.GetString(\n this.validationKeyService.FilebrowserButtonDelete\n ),\n message: this.lngResourceService.GetString(\n this.validationKeyService.FilebrowserConfirmTextDeleteFile\n ),\n }).subscribe((text) => {\n this.confirmService\n .ConfirmMessage(text.title, text.message)\n .subscribe((result) => {\n if (result === 'yes') {\n observer.next(true);\n } else {\n observer.next(false);\n }\n observer.complete();\n });\n });\n });\n }\n\n /**\n * Confirm Action wenn ein Ordner gelöscht werden soll\n * @param node Ordner der gelöscht werden soll\n * @returns Observable ob Ordner gelöscht kann.\n */\n public confirmDeleteNode(node: IBrowserNode): Observable<boolean> {\n return new Observable<boolean>((observer) => {\n forkJoin({\n title: this.lngResourceService.GetString(\n this.validationKeyService.FilebrowserButtonDelete\n ),\n message: this.lngResourceService.GetString(\n this.validationKeyService.FilebrowserConfirmTextDeleteFolder\n ),\n }).subscribe((text) => {\n this.confirmService\n .ConfirmMessage(text.title, text.message)\n .subscribe((result) => {\n if (result === 'yes') {\n observer.next(true);\n } else {\n observer.next(false);\n }\n observer.complete();\n });\n });\n });\n }\n\n /**\n * Erzeugt ein Array von einer bestimmten grösse\n * @param anzahl Grösse des Array\n * @returns Array\n */\n public count(anzahl: number): Array<void> {\n return new Array(anzahl);\n }\n\n /**\n * Methode wird aufgerufen, wenn eine Datei verschoben wird\n * @param uploadid Upload ID\n */\n public uploadedFileMoved(uploadid: string): void {\n const item = this.uploadComponent.uploads.find(\n (itm) => itm.documentid === uploadid\n );\n\n if (item) {\n this.uploadComponent.cancel(item.uploadId);\n }\n }\n\n // #endregion Public Methods\n}\n","<div class=\"row\">\n <div class=\"col-12 col-md-5 col-lg-4\">\n <ul class=\"list-group list-group-flush\">\n <ng-template\n [ngTemplateOutlet]=\"treeItem\"\n [ngTemplateOutletContext]=\"{node: rootNode, deep: 0}\"\n ></ng-template>\n </ul>\n\n <ng-template #treeItem let-node=\"node\" let-deep=\"deep\">\n <li\n class=\"list-group-item py-1 px-2 d-flex align-items-center\"\n [class.list-group-item-secondary]=\"node === selectedNode\"\n (click)=\"selectNode(node)\"\n style=\"cursor: pointer\"\n >\n <div class=\"mx-3\" *ngFor=\"let i of count(deep)\"></div>\n <div\n (click)=\"switchExpandNode(node);$event.stopPropagation();\"\n class=\"mr-2\"\n [ngClass]=\"node.ChildNodes.length === 0 ? iconFolderEmpty: (!node.IsExpanded && node.ChildNodes.length > 0 ? iconFolderCollabsed : (node.IsExpanded && node.ChildNodes.length > 0 ? iconFolderOpen : ''))\"\n ></div>\n <ng-container *ngIf=\"!node.IsEditMode\">\n <div class=\"flex-grow-1\">{{ node.Name }}</div>\n </ng-container>\n <ng-container *ngIf=\"node.IsEditMode\">\n <div class=\"flex-grow-1\" ngForm>\n <input\n name=\"editFolder\"\n class=\"form-control form-control-sm\"\n [ngModel]=\"node.Name\"\n [ngModelOptions]=\"{updateOn: 'blur'}\"\n (ngModelChange)=\"renameNode(node, $event)\"\n (keydown.enter)=\"$event.target.blur();false;\"\n (blur)=\"renameNode(node, null)\"\n (click)=\"$event.stopPropagation()\"\n />\n </div>\n </ng-container>\n <div class=\"flex-shrink-0\">\n <a\n *ngIf=\"node.Path !== '/' && allowfolderrename\"\n class=\"btn btn-sm btn-link text-secondary\"\n (click)=\"editNode(node);$event.stopPropagation();\"\n >\n <i [class]=\"iconEdit\"></i>\n </a>\n <sac-contextmenu cssclass=\"d-inline-block\">\n <sac-contextmenubutton\n *ngIf=\"allowfoldercreate\"\n text=\"{{ lngResourceService.GetString(validationKeyService.FilebrowserButtonNewFolder) | async }}\"\n [icon]=\"iconFolderNew\"\n (clicked)=\"newNode(node)\"\n ></sac-contextmenubutton>\n <sac-contextmenubutton\n *ngIf=\"node.Path !== '/' && allowfolderdelete\"\n text=\"{{ lngResourceService.GetString(validationKeyService.FilebrowserButtonDelete) | async }}\"\n [icon]=\"iconDelete\"\n (clicked)=\"deleteNode(node)\"\n ></sac-contextmenubutton>\n <sac-contextmenusplitter\n *ngIf=\"allowfoldercreate || (node.Path !== '/' && allowfolderdelete)\"\n ></sac-contextmenusplitter>\n <sac-contextmenubutton\n text=\"{{ lngResourceService.GetString(validationKeyService.FilebrowserButtonRefresh) | async }}\"\n [icon]=\"iconRefresh\"\n (clicked)=\"refreshNode(node)\"\n ></sac-contextmenubutton>\n </sac-contextmenu>\n </div>\n </li>\n\n <ng-container *ngIf=\"node.IsExpanded\">\n <ng-template\n *ngFor=\"let child of node.ChildNodes\"\n [ngTemplateOutlet]=\"treeItem\"\n [ngTemplateOutletContext]=\"{node: child, deep: deep + 1}\"\n ></ng-template>\n </ng-container>\n </ng-template>\n </div>\n <div class=\"col-12 col-md-7 col-lg-8\">\n <ng-container *ngIf=\"selectedNode && selectedNode.Files\">\n <div *ngIf=\"allowfileupload\" ngForm>\n <sac-dropzonemultiple\n [disablelabel]=\"true\"\n [endpoint]=\"apiurl + '/uploadregister'\"\n name=\"upload\"\n uploadheight=\"5rem\"\n [ngModel]=\"uploads\"\n (ngModelChange)=\"uploadComplete(selectedNode,$event)\"\n [allowedtypes]=\"allowedtypes\"\n >{{\n lngResourceService.GetString(validationKeyService.FilebrowserButtonUpload)\n | async }}</sac-dropzonemultiple\n >\n </div>\n <div class=\"table-responsive\">\n <table class=\"table table-striped table-hover align-middle\">\n <thead>\n <th>\n {{\n lngResourceService.GetString(validationKeyService.FilebrowserGridFilename)\n | async }}\n </th>\n <th>\n {{\n lngResourceService.GetString(validationKeyService.FilebrowserGridSize)\n | async }}\n </th>\n <th style=\"width: 80px\"></th>\n </thead>\n <tbody>\n <ng-container *ngIf=\"selectedNode.Files.length === 0\">\n <tr>\n <td colspan=\"3\">\n {{\n lngResourceService.GetString(validationKeyService.FilebrowserGridNoFiles)\n | async }}\n </td>\n </tr>\n </ng-container>\n <ng-container *ngIf=\"selectedNode.Files.length > 0\">\n <tr\n *ngFor=\"let item of selectedNode.Files\"\n (click)=\"selectFile(item)\"\n [class.table-primary]=\"selectedFileItem === item\"\n >\n <td [class.p-2]=\"item.IsEditMode\">\n <ng-container *ngIf=\"!item.IsEditMode\">\n {{ item.Filename }}\n </ng-container>\n <ng-container *ngIf=\"item.IsEditMode\">\n <div>\n <input\n name=\"editFolder\"\n class=\"form-control form-control-sm\"\n [ngModel]=\"item.Filename\"\n [ngModelOptions]=\"{updateOn: 'blur'}\"\n (ngModelChange)=\"renameFile(item, $event)\"\n (keydown.enter)=\"$event.target.blur();false\"\n (blur)=\"renameFile(item, null)\"\n (click)=\"$event.stopPropagation();\"\n />\n </div>\n </ng-container>\n </td>\n <td>{{ item.Size}}</td>\n <td class=\"p-2\">\n <div class=\"btn-toolbar\" role=\"toolbar\">\n <div class=\"btn-group ml-auto\" role=\"group\">\n <a\n *ngIf=\"allowfilerename\"\n class=\"btn btn-sm btn-link text-secondary\"\n (click)=\"editFile(item);$event.stopPropagation();\"\n ><i [class]=\"iconEdit\"></i\n ></a>\n </div>\n <div class=\"btn-group\" role=\"group\">\n <a\n *ngIf=\"allowfiledelete\"\n class=\"btn btn-sm btn-link text-secondary\"\n (click)=\"deleteFile(item);$event.stopPropagation();\"\n ><i [class]=\"iconDelete\"></i\n ></a>\n </div>\n </div>\n </td>\n </tr>\n </ng-container>\n </tbody>\n </table>\n </div>\n </ng-container>\n </div>\n</div>\n","import { NgModule } from '@angular/core';\nimport { SacBrowserComponent } from './browser';\n\n@NgModule({\n declarations: [],\n imports: [SacBrowserComponent],\n exports: [SacBrowserComponent],\n})\nexport class SACBootstrap4BrowserModule {}\n","import { NgModule } from '@angular/core';\nimport { SacButtonComponent } from './button';\nimport { CommonModule } from '@angular/common';\n\n@NgModule({\n imports: [\n CommonModule,\n SacButtonComponent\n ],\n exports: [SacButtonComponent]\n})\nexport class SACBootstrap4ButtonModule { }\n","import { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacCheckboxCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Checkbox Kompontente\n */\n@Component({\n selector: 'sac-checkbox',\n templateUrl: './checkbox.html',\n styleUrls: ['./checkbox.scss'],\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacCheckboxComponent,\n },\n {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => SacCheckboxComponent),\n multi: true,\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n NgIf,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacTooltipComponent,\n SacToControlHeightPipe,\n ],\n})\nexport class SacCheckboxComponent extends SacCheckboxCommon {\n // #region Constructors\n\n /**\n *\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(@Host() @Optional() formLayout: SacFormLayoutDirective, injector: Injector) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"row\"\n [class.no-gutters]=\"disablelabel\"\n [class.form-group]=\"!stacked\">\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only']\">\n <label\n *ngIf=\"!disablelabel && !stacked\"\n for=\"{{ name }}\"\n class=\"col-form-label d-flex\"\n [ngClass]=\"componentHeight | toLabelHeight\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\"\n >{{ label }}</div\n >\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\"\n ><span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n </div>\n <div\n class=\"align-self-center col-12\"\n [ngClass]=\"[!disablelabel && !stacked ? (this.labelSizes | toControlWidthCss) : '']\">\n <div\n [class.form-check]=\"checkboxstyle === 'checkbox'\"\n [class.custom-control]=\"checkboxstyle === 'switch'\"\n [class.custom-switch]=\"checkboxstyle === 'switch'\"\n [class.form-check-sm]=\"componentHeight === ControlHeight.Small\"\n [class.form-check-lg]=\"componentHeight === ControlHeight.Large\">\n <input\n [class.form-check-input]=\"checkboxstyle === 'checkbox'\"\n [class.custom-control-input]=\"checkboxstyle === 'switch'\"\n [class.form-check-input-sm]=\"componentHeight === ControlHeight.Small\"\n [class.form-check-input-lg]=\"componentHeight === ControlHeight.Large\"\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"checkbox\"\n [checked]=\"value\"\n (blur)=\"onTouch()\"\n (change)=\"setValue($event.target.checked)\"\n [disabled]=\"isdisabled\" />\n <label\n for=\"{{ name }}\"\n [class.form-check-label]=\"checkboxstyle === 'checkbox'\"\n [class.custom-control-label]=\"checkboxstyle === 'switch'\"\n [class.form-check-label-sm]=\"componentHeight === ControlHeight.Small\"\n [class.form-check-label-lg]=\"componentHeight === ControlHeight.Large\">\n <ng-container *ngIf=\"checkboxtext\">{{ checkboxtext }}</ng-container>\n </label>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && (disablelabel || stacked)\"\n class=\"ml-2 mr-1 d-inline-block\"\n [class.form-check-label-sm]=\"componentHeight === ControlHeight.Small\"\n [class.form-check-label-lg]=\"componentHeight === ControlHeight.Large\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n </div>\n</div>\n","import { NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacRadiobuttonsCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n/**\n * Radiobuttons Group Komponente\n */\n@Component({\n selector: 'sac-radiobuttons',\n templateUrl: './radiobuttons.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SacRadiobuttonsComponent),\n multi: true,\n },\n {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => SacRadiobuttonsComponent),\n multi: true,\n },\n ],\n standalone: true,\n imports: [\n NgIf,\n NgClass,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacRadiobuttonsComponent extends SacRadiobuttonsCommon {\n // #region Constructors\n\n /**\n *\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div class=\"row form-group\">\n <div\n *ngIf=\"disablelabel === false\"\n class=\"col-12 pt-0\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only']\">\n <label\n class=\"col-form-label d-flex\"\n [ngClass]=\"componentHeight | toLabelHeight\"\n *ngIf=\"!disablelabel\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\"\n >{{ label }}</div\n >\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n </div>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.pt-1]=\"componentHeight === ControlHeight.Small\"\n [class.pt-2]=\"componentHeight !== ControlHeight.Small\">\n <ng-content></ng-content>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n </div>\n</div>\n","import { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { SacRadiobuttonsComponent } from './radiobuttons';\nimport { NgClass, NgIf, NgTemplateOutlet } from '@angular/common';\nimport { Component, Host, Injector, Optional } from '@angular/core';\nimport { SacRadiobuttonCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Radiobutton Komponente\n */\n@Component({\n selector: 'sac-radiobutton',\n templateUrl: './radiobutton.html',\n styleUrls: ['./radiobutton.scss'],\n standalone: true,\n imports: [NgIf, NgTemplateOutlet, SacTooltipComponent, NgClass],\n})\nexport class SacRadiobuttonComponent extends SacRadiobuttonCommon {\n // #region Constructors\n\n /**\n * Konstruktor\n * @param SacRadioButtons Radio Buttons Group Komponente\n * @param formlayout SacFormLayoutCommon to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() sacRadioButtons: SacRadiobuttonsComponent,\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(sacRadioButtons, formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"form-check\"\n [class.form-check-sm]=\"componentHeight === ControlHeight.Small\"\n [class.form-check-lg]=\"componentHeight === ControlHeight.Large\"\n *ngIf=\"hidden === false\">\n <input\n id=\"{{ getName }}_{{ getIndex }}\"\n name=\"{{ getName }}\"\n type=\"radio\"\n class=\"form-check-input\"\n [class.form-check-input-sm]=\"componentHeight === ControlHeight.Small\"\n [class.form-check-input-lg]=\"componentHeight === ControlHeight.Large\"\n [value]=\"value\"\n [checked]=\"checked\"\n (change)=\"ChangeEvent()\"\n [disabled]=\"isDisabled\" />\n <label\n for=\"{{ getName }}_{{ getIndex }}\"\n class=\"form-check-label\"\n [class.form-check-label-sm]=\"componentHeight === ControlHeight.Small\"\n [class.form-check-label-lg]=\"componentHeight === ControlHeight.Large\">\n <ng-template *ngTemplateOutlet=\"labeltemplate || defaultItemLabelTemplate; context: { label: label }\"> </ng-template>\n </label>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n class=\"ml-2 mr-1 d-inline-block\"\n [class.form-check-label-sm]=\"componentHeight === ControlHeight.Small\"\n [class.form-check-label-lg]=\"componentHeight === ControlHeight.Large\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n</div>\n\n<ng-template\n #defaultItemLabelTemplate\n let-label=\"label\">\n <ng-container>{{ label }}</ng-container>\n</ng-template>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SacCheckboxComponent } from './checkbox';\nimport { SacRadiobuttonComponent } from './radiobutton';\nimport { SacRadiobuttonsComponent } from './radiobuttons';\n\n@NgModule({\n imports: [\n CommonModule,\n SacCheckboxComponent,\n SacRadiobuttonComponent,\n SacRadiobuttonsComponent,\n ],\n exports: [\n SacCheckboxComponent,\n SacRadiobuttonComponent,\n SacRadiobuttonsComponent,\n ],\n})\nexport class SACBootstrap4CheckboxModule {}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { SacConfirmComponent } from './confirm';\nimport { ServiceConfirm } from './confirm.service';\n\n/**\n * Module für Confirm Messages\n *\n * In NgModule der Applikation folgenden Eintrag bei Imports einfügen: ExanicBootstrap4ConfirmModule.forRoot()\n *\n */\n@NgModule({\n imports: [SacConfirmComponent],\n exports: [SacConfirmComponent],\n})\nexport class SACBootstrap4ConfirmModule {\n static forRoot(): ModuleWithProviders<SACBootstrap4ConfirmModule> {\n return {\n ngModule: SACBootstrap4ConfirmModule,\n providers: [ServiceConfirm],\n };\n }\n}\n\nexport { ServiceConfirm } from './confirm.service';\n\n","import { SacContextmenuComponent } from './contextmenu';\nimport { SacContextmenuAnchorDirective } from './contextmenuanchor';\nimport { SacContextmenuContainerDirective } from './contextmenucontainer';\nimport { SacContextmenuItemButtonComponent } from './contextmenuitembutton';\nimport { SacContextmenuItemSplitterComponent } from './contextmenuitemsplitter';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\n@NgModule({\n imports: [\n CommonModule,\n SacContextmenuComponent,\n SacContextmenuItemButtonComponent,\n SacContextmenuItemSplitterComponent,\n SacContextmenuAnchorDirective,\n SacContextmenuContainerDirective,\n ],\n exports: [\n SacContextmenuComponent,\n SacContextmenuItemButtonComponent,\n SacContextmenuItemSplitterComponent,\n SacContextmenuAnchorDirective,\n ],\n})\nexport class SACBootstrap4ContextmenuModule {}\n","import { Component } from '@angular/core';\nimport { SacDateSelectorCommon } from '@simpleangularcontrols/sac-common';\nimport { NgIf, NgFor, NgStyle, NgClass } from '@angular/common';\n\n/**\n * DateTime Selektor Komponente\n */\n@Component({\n selector: 'sac-dateselector',\n templateUrl: './dateselector.html',\n standalone: true,\n imports: [\n NgIf,\n NgFor,\n NgStyle,\n NgClass,\n ],\n})\nexport class SacDateSelectorComponent extends SacDateSelectorCommon {}\n","<div class=\"calendar-selector\">\n <div *ngIf=\"dateselection\">\n <div class=\"container\">\n <div class=\"row\">\n <div class=\"col text-left\">\n <a (click)=\"monthBack()\"><span [class]=\"iconMonthPrev\"></span></a>\n </div>\n <div class=\"col text-center\">{{month+1}}/{{year}}</div>\n <div class=\"col text-right\">\n <a (click)=\"monthNext()\"><span [class]=\"iconMonthNext\"></span></a>\n </div>\n </div>\n </div>\n <div></div>\n <div class=\"container\">\n <div class=\"row\">\n <ng-container *ngFor=\"let week of dates; let i=index\">\n <ng-container *ngFor=\"let item of week\">\n <div\n class=\"p-2 col text-center\"\n [ngStyle]=\"{'cursor': item.isenabled ? 'pointer' : null}\"\n [ngClass]=\"{'day-current': item.iscurrent, 'day-selected': item.isselected, 'day-new': item.isnew, 'day-disabled': !item.isenabled}\"\n (click)=\"selectDate(item)\"\n >\n {{ item.displaytext }}\n </div>\n </ng-container>\n <div class=\"w-100\"></div>\n </ng-container>\n </div>\n </div>\n </div>\n <div class=\"d-flex flex-row justify-content-start\" *ngIf=\"timeselection\">\n <div class=\"p-2\">\n <div class=\"form-group\">\n <label>Stunde</label>\n <input\n type=\"number\"\n class=\"form-control form-control-sm\"\n [value]=\"getHours()\"\n (input)=\"setHours($event.target.value)\"\n min=\"0\"\n max=\"23\"\n />\n </div>\n </div>\n <div class=\"p-2\">\n <div class=\"form-group\">\n <label>Minute</label>\n <input\n type=\"number\"\n class=\"form-control form-control-sm\"\n [value]=\"getMinutes()\"\n (input)=\"setMinutes($event.target.value)\"\n min=\"0\"\n max=\"59\"\n />\n </div>\n </div>\n </div>\n <div class=\"d-flex flex-row\">\n <div class=\"mr-auto p-2\">\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"setToday()\">\n Heute\n </button>\n </div>\n <div class=\"p-2\">\n <button\n type=\"button\"\n class=\"btn btn-secondary\"\n (click)=\"resetSelection()\"\n >\n Reset\n </button>\n </div>\n <div class=\"p-2\">\n <button type=\"button\" class=\"btn btn-primary\" (click)=\"applySelection()\">\n Apply\n </button>\n </div>\n </div>\n</div>\n","import { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { SacDateSelectorComponent } from './dateselector';\n// Import Moment.JS\nimport { AsyncPipe, NgClass, NgIf } from '@angular/common';\nimport { ChangeDetectorRef, Component, ElementRef, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacDateCommon } from '@simpleangularcontrols/sac-common';\nimport { IMaskDirective } from 'angular-imask';\nimport * as moment_ from 'moment';\n\n// #region Classes\n\n/**\n * Komponente für Datumauswahl\n */\n@Component({\n selector: 'sac-date',\n templateUrl: './date.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => SacDateComponent),\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacDateComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n IMaskDirective,\n NgIf,\n SacDateSelectorComponent,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacDateComponent extends SacDateCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n * @param elementRef Reference to html dom element\n * @param cdRef Change Dectection Servie\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector,\n elementRef: ElementRef,\n cdRef: ChangeDetectorRef\n ) {\n super(formLayout, injector, elementRef, cdRef);\n }\n\n // #endregion Constructors\n}\n\n// #endregion Classes\n\n// #region Variables\n\n/**\n * Referenz auf Moment.JS\n */\nconst moment = moment_['default'];\n\n// #endregion Variables\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n class=\"input-group\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\"\n [class.has-validation]=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n <input\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"text\"\n class=\"form-control\"\n [imask]=\"imaskDate\"\n [attr.placeholder]=\"placeholder\"\n [value]=\"valuestring\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n (blur)=\"onTouch()\"\n (accept)=\"setValueString($event)\"\n [disabled]=\"isdisabled\" />\n <div class=\"input-group-append\">\n <button\n #pickerbutton\n class=\"btn btn-secondary\"\n type=\"button\"\n (click)=\"showDateSelector()\"\n [disabled]=\"isdisabled\">\n <i [class]=\"IconSelector\"></i>\n </button>\n </div>\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n #picker\n *ngIf=\"_showselector\">\n <div\n class=\"popover fade show position-absolute m-0\"\n role=\"tooltip\"\n *ngIf=\"_showselector\"\n [class.bs-popover-bottom]=\"GetPickerPosition() == TooltipPosition.bottom || GetPickerPosition() == TooltipPosition.bottomend\"\n [class.bs-popover-top]=\"GetPickerPosition() == TooltipPosition.top || GetPickerPosition() == TooltipPosition.topend\"\n [style.left.px]=\"posPopupLeft\"\n [style.top.px]=\"posPopupTop\">\n <div\n #pickerarrow\n class=\"arrow position-absolute m-0\"\n style=\"left: unset\"\n [style.top.px]=\"posArrowTop\"\n [style.left.px]=\"posArrowLeft\">\n </div>\n\n <div class=\"popover-body\">\n <sac-dateselector\n [initialvalue]=\"value\"\n (selectdate)=\"dateselect($event)\"\n dateselection=\"true\"></sac-dateselector>\n </div>\n </div>\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { SacDateSelectorComponent } from './dateselector';\nimport { AsyncPipe, NgClass, NgIf } from '@angular/common';\nimport { ChangeDetectorRef, Component, ElementRef, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacDateTimeCommon } from '@simpleangularcontrols/sac-common';\nimport { IMaskDirective } from 'angular-imask';\n\n/**\n * Date und Time Komponente\n */\n@Component({\n selector: 'sac-datetime',\n templateUrl: './datetime.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => SacDateTimeComponent),\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacDateTimeComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n IMaskDirective,\n NgIf,\n AsyncPipe,\n SacDateSelectorComponent,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacDateTimeComponent extends SacDateTimeCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n * @param elementRef Reference to html dom element\n * @param cdRef Change Dectection Servie\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector,\n elementRef: ElementRef,\n cdRef: ChangeDetectorRef\n ) {\n super(formLayout, injector, elementRef, cdRef);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\"\n ><span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n class=\"input-group\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\"\n [class.has-validation]=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n <input\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"text\"\n class=\"form-control\"\n [imask]=\"imaskDate\"\n [attr.placeholder]=\"placeholder\"\n [value]=\"valuestring\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n (blur)=\"onTouch()\"\n (accept)=\"setValueString($event)\"\n [disabled]=\"isdisabled\" />\n <div class=\"input-group-append\">\n <button\n #pickerbutton\n class=\"btn btn-secondary\"\n type=\"button\"\n (click)=\"showDateSelector()\"\n [disabled]=\"isdisabled\">\n <i [class]=\"IconSelector\"></i>\n </button>\n </div>\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n\n <div\n #picker\n *ngIf=\"_showselector\"\n ><div\n class=\"popover fade show position-absolute m-0\"\n role=\"tooltip\"\n [class.bs-popover-bottom]=\"GetPickerPosition() == TooltipPosition.bottom || GetPickerPosition() == TooltipPosition.bottomend\"\n [class.bs-popover-top]=\"GetPickerPosition() == TooltipPosition.top || GetPickerPosition() == TooltipPosition.topend\"\n [style.left.px]=\"posPopupLeft\"\n [style.top.px]=\"posPopupTop\">\n <div\n #pickerarrow\n class=\"arrow position-absolute m-0\"\n style=\"left: unset\"\n [style.top.px]=\"posArrowTop\"\n [style.left.px]=\"posArrowLeft\">\n </div>\n <div class=\"popover-body\">\n <sac-dateselector\n [initialvalue]=\"value\"\n (selectdate)=\"dateselect($event)\"\n dateselection=\"true\"\n timeselection=\"true\"></sac-dateselector>\n </div>\n </div>\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { SacDateSelectorComponent } from './dateselector';\nimport { AsyncPipe, NgClass, NgIf } from '@angular/common';\nimport { ChangeDetectorRef, Component, ElementRef, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacTimeCommon } from '@simpleangularcontrols/sac-common';\nimport { IMaskDirective } from 'angular-imask';\n\n/**\n * Time Auswahl Komponente\n */\n@Component({\n selector: 'sac-time',\n templateUrl: './time.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => SacTimeComponent),\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacTimeComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n IMaskDirective,\n NgIf,\n AsyncPipe,\n SacDateSelectorComponent,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacTimeComponent extends SacTimeCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n * @param elementRef Reference to html dom element\n * @param cdRef Change Dectection Servie\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector,\n elementRef: ElementRef,\n cdRef: ChangeDetectorRef\n ) {\n super(formLayout, injector, elementRef, cdRef);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\"\n ><span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n class=\"input-group\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\"\n [class.has-validation]=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n <input\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"text\"\n class=\"form-control\"\n [imask]=\"imaskDate\"\n [attr.placeholder]=\"placeholder\"\n [value]=\"valuestring\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n (blur)=\"onTouch()\"\n (accept)=\"setValueString($event)\"\n [disabled]=\"isdisabled\" />\n <div class=\"input-group-append\">\n <button\n #pickerbutton\n class=\"btn btn-secondary\"\n type=\"button\"\n (click)=\"showTimeSelector()\"\n [disabled]=\"isdisabled\">\n <i [class]=\"IconSelector\"></i>\n </button>\n </div>\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n #picker\n *ngIf=\"_showselector\">\n <div\n class=\"popover fade show position-absolute m-0\"\n role=\"tooltip\"\n [class.bs-popover-bottom]=\"GetPickerPosition() == TooltipPosition.bottom || GetPickerPosition() == TooltipPosition.bottomend\"\n [class.bs-popover-top]=\"GetPickerPosition() == TooltipPosition.top || GetPickerPosition() == TooltipPosition.topend\"\n [style.left.px]=\"posPopupLeft\"\n [style.top.px]=\"posPopupTop\">\n <div\n #pickerarrow\n class=\"arrow position-absolute m-0\"\n style=\"left: unset\"\n [style.top.px]=\"posArrowTop\"\n [style.left.px]=\"posArrowLeft\">\n </div>\n\n <div class=\"popover-body\">\n <sac-dateselector\n [initialvalue]=\"value\"\n (selectdate)=\"timeselect($event)\"\n timeselection=\"true\"></sac-dateselector>\n </div>\n </div>\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { IMaskModule } from 'angular-imask';\nimport { SacDateComponent } from './date';\nimport { SacDateSelectorComponent } from './dateselector';\nimport { SacDateTimeComponent } from './datetime';\nimport { SacTimeComponent } from './time';\n\n@NgModule({\n imports: [\n CommonModule,\n IMaskModule,\n SacDateComponent,\n SacDateTimeComponent,\n SacTimeComponent,\n SacDateSelectorComponent,\n ],\n exports: [\n SacDateComponent,\n SacDateTimeComponent,\n SacTimeComponent,\n SacDateSelectorComponent,\n ],\n})\nexport class SACBootstrap4DateTimeModule {}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SacDialogComponent } from './dialog';\n\n@NgModule({\n imports: [\n CommonModule,\n SacDialogComponent\n ],\n exports: [SacDialogComponent]\n})\nexport class SACBootstrap4DialogModule { }\n","import { Directive, HostBinding } from '@angular/core';\nimport { NgForm } from '@angular/forms';\nimport { SacFormCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Erweiterung / Hooking für automatismen in Formular. Wird als Container für alle Controls benötigt.\n *\n * @example Beispiel über Div Container\n *\n * <div ngForm></div>\n *\n * @example Beispiel über Form Tag\n *\n * <form></form>\n *\n */\n@Directive({\n selector: 'form:not([ngNoForm]):not([formGroup]),[ngForm]', // eslint-disable-line @angular-eslint/directive-selector -- required as extension to form\n exportAs: 'sacform',\n standalone: true,\n})\nexport class SacFormDirective extends SacFormCommon {\n // #region Properties\n\n /**\n * Setzt die Standard CSS Klasse für auf dem Form Container\n */\n @HostBinding('class.form')\n public cssClassForm: boolean = true;\n\n // #endregion Properties\n\n // #region Constructors\n\n /**\n * Konstruktor\n * @param form Instanz von NgForm für eigene automatische Formular Logik\n */\n constructor(form: NgForm) {\n super(form);\n }\n\n // #endregion Constructors\n}\n","import { Directive, Injector, SkipSelf } from '@angular/core';\nimport { ControlContainer, NgForm } from '@angular/forms';\nimport { SacFormCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormDirective } from './form';\n\n// #region Classes\n\n/**\n * Directive to inherit an NgForm/NgForm from a parent component\n */\n@Directive({\n selector: '[sacInheritForm]',\n exportAs: 'sacinheritform',\n standalone: true,\n providers: [\n {\n provide: SacFormDirective,\n useFactory: SACFORM_FACTORY,\n deps: [[new SkipSelf(), SacFormDirective]],\n },\n {\n provide: ControlContainer,\n useFactory: NGFORM_FACTORY,\n deps: [NgForm],\n },\n ],\n})\nexport class SacInheritFormDirective extends SacFormCommon {\n // #region Constructors\n\n /**\n * Construtor\n * @param injector: injector to receive the NgForm instance\n */\n constructor(injector: Injector) {\n super(injector.get(NgForm));\n }\n\n // #endregion Constructors\n}\n\n// #endregion Classes\n\n// #region Functions\n\n/**\n * Factory Methode für NgForm\n * @param form NgForm\n */\nexport function NGFORM_FACTORY(form: NgForm) {\n return form;\n}\n\n/**\n * Factory Methode für SacForm\n * @param form SacFormular\n */\nexport function SACFORM_FACTORY(form: SacFormDirective) {\n return form;\n}\n\n// #endregion Functions\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { SacFormDirective } from './form';\nimport { SacInheritFormDirective } from './inheritform.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n SacFormDirective, SacInheritFormDirective\n ],\n exports: [\n SacFormDirective, SacInheritFormDirective\n ]\n})\nexport class SACBootstrap4FormModule { }\n","import { Component, forwardRef, Injector } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';\nimport { SacPagingCommon } from '@simpleangularcontrols/sac-common';\nimport { NgClass, NgFor, NgIf, AsyncPipe } from '@angular/common';\n\n/**\n * Paging Komponente\n */\n@Component({\n selector: 'sac-paging',\n templateUrl: './paging.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacPagingComponent },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacPagingComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n NgFor,\n NgIf,\n FormsModule,\n AsyncPipe,\n ],\n})\nexport class SacPagingComponent extends SacPagingCommon {\n /**\n * Konstruktor\n * @param injector Angular Dependency Injection Service\n */\n constructor(injector: Injector) {\n super(injector);\n }\n}\n","<div\n class=\"d-flex justify-content-between align-items-center flex-wrap\"\n id=\"{{name}}\"\n>\n <div class=\"col-pagination order-2 order-md-1\" id=\"{{name}}_pages\">\n <ul class=\"pagination mb-4 mb-md-0\">\n <li\n class=\"page-item\"\n [ngClass]=\"{'aspNetDisabled disabled': activePageIndex === firstPageIndex}\"\n >\n <a class=\"page-link\" (click)=\"firstPage()\">«</a>\n </li>\n <li\n class=\"page-item\"\n *ngFor=\"let page of paginators; let i = index\"\n [ngClass]=\"{'active': page === activePageIndex}\"\n >\n <a class=\"page-link\" (click)=\"changePage(page)\">{{page + 1 }}</a>\n </li>\n <li\n class=\"page-item\"\n [ngClass]=\"{'aspNetDisabled disabled': activePageIndex === lastPageIndex}\"\n >\n <a class=\"page-link\" (click)=\"lastPage()\">»</a>\n </li>\n </ul>\n </div>\n <div class=\"col-summary order-1 order-md-2\">\n <div class=\"mb-4 mb-md-0 mr-4 mb-md-0\">{{ PagingText | async }}</div>\n </div>\n <div class=\"col-pagesize order-3\" *ngIf=\"!pagesizedisabled\">\n <div class=\"d-flex align-items-center\" id=\"{{name}}_size\">\n <select\n class=\"form-control form-control-sm\"\n style=\"width: 85px\"\n [ngModel]=\"pageSize\"\n (ngModelChange)=\"changePageSize($event)\"\n >\n <option [ngValue]=\"size\" *ngFor=\"let size of getPageSizes\">\n {{size}}\n </option>\n </select>\n <div class=\"ml-2\">{{ PageSizeText | async }}</div>\n </div>\n </div>\n</div>\n","import { NgFor, NgIf, NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectorRef,\n Component,\n ContentChild,\n forwardRef,\n Injector,\n TemplateRef,\n} from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacGridCommon } from '@simpleangularcontrols/sac-common';\nimport { SacPagingComponent } from './paging';\n\n/**\n * Grid Komponente\n */\n@Component({\n selector: 'sac-grid',\n templateUrl: './grid.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacGridComponent },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacGridComponent),\n },\n ],\n standalone: true,\n imports: [NgTemplateOutlet, NgFor, NgIf, SacPagingComponent],\n})\nexport class SacGridComponent extends SacGridCommon {\n // #region Properties\n\n /**\n * Referenz auf Column Template\n */\n @ContentChild(TemplateRef, { static: false })\n public template: TemplateRef<any>;\n\n /**\n * Setzt die Ellipsis Funktion auf der Column\n */\n public ellipsis: boolean = false;\n\n // #endregion Properties\n\n // #region Constructors\n\n /**\n * Konstrukor\n * @param cdRef Change Detection Reference\n */\n constructor(cdRef: ChangeDetectorRef, injector: Injector) {\n super(cdRef, injector);\n }\n\n // #endregion Constructors\n}\n","<div class=\"table-responsive\">\n <table class=\"table table-striped table-hover\" id=\"{{name}}\">\n <thead class=\"thead-light\">\n <tr>\n <ng-container\n *ngTemplateOutlet=\"template; context { row: {}, type: 'header'}\"\n >\n </ng-container>\n </tr>\n </thead>\n <tbody>\n <ng-container *ngFor=\"let item of value; let i=index\">\n <tr>\n <ng-container\n *ngTemplateOutlet=\"template; context { row: item, type: 'body'}\"\n >\n </ng-container>\n </tr>\n </ng-container>\n <tr\n *ngIf=\"value === undefined || value === null || value.length===0\"\n data-e2e=\"emptyrow\"\n >\n <td [attr.colspan]=\"ColumnCount\">{{emptytext}}</td>\n </tr>\n </tbody>\n <tfoot *ngIf=\"pagerdata\">\n <tr>\n <td [attr.colspan]=\"ColumnCount\">\n <div class=\"container-fluid\">\n <sac-paging\n name=\"{{name}}Paging\"\n (paging)=\"pageChange($event)\"\n [pagerdata]=\"pagerdata\"\n [pagesizes]=\"pagesizes\"\n [pagingtext]=\"pagingtext\"\n [pagesizetext]=\"pagesizetext\"\n [pagesizedisabled]=\"pagesizedisabled\"\n ></sac-paging>\n </div>\n </td>\n </tr>\n </tfoot>\n </table>\n</div>\n","import { Component } from '@angular/core';\nimport { SacGridButtonCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Grid Action Button\n */\n@Component({\n selector: 'sac-gridbutton',\n templateUrl: './gridbutton.html',\n standalone: true\n})\nexport class SacGridButtonComponent extends SacGridButtonCommon {\n // #region Public Methods\n\n /**\n * Returns the icon for the button\n */\n public getIconClass(): string {\n let iconset: string = this.iconstyle;\n let iconcss: string = this.icon;\n\n if (iconset === '') {\n switch (this.icon) {\n case 'edit':\n iconset = 'sprite';\n iconcss = 'icon-sprite-base-main_edit';\n break;\n case 'delete':\n iconset = 'sprite';\n iconcss = 'icon-sprite-base-main_delete';\n break;\n }\n }\n\n if (this._isdisabledvalue) {\n iconcss += '_disabled';\n }\n\n const result = iconset + ' ' + iconcss;\n\n return result.trim();\n }\n\n // #endregion Public Methods\n}\n","<a (click)=\"callaction()\" style=\"padding-right: 5px;\" [class.disabled]=\"isdisabled\" [attr.disabled]=\"isdisabled ? 'disabled' : null\"><span class=\"{{getIconClass()}}\"></span></a>\n","import { Component, ElementRef, Injector, forwardRef } from '@angular/core';\nimport {\n SacGridColumnBaseCommon,\n SacGridColumnCommon,\n} from '@simpleangularcontrols/sac-common';\nimport { SacGridComponent } from './grid';\nimport { NgIf } from '@angular/common';\n\n/**\n * Grid Column Komponente\n */\n@Component({\n selector: 'sac-gridcolumn',\n templateUrl: './gridcolumn.html',\n providers: [\n {\n provide: SacGridColumnBaseCommon,\n useExisting: forwardRef(() => SacGridColumnComponent),\n },\n ],\n standalone: true,\n imports: [NgIf],\n})\nexport class SacGridColumnComponent extends SacGridColumnCommon {\n /**\n * Konstruktor\n * @param grid Grid Referenz\n * @param el HTML DOM Element\n */\n constructor(grid: SacGridComponent, injector: Injector, el: ElementRef) {\n super(grid, injector, el);\n }\n}\n","<th\n scope=\"col\"\n *ngIf=\"IsHeader()\"\n [style.width]=\"width\"\n (click)=\"SortByColumn()\">\n <span>{{ header }}</span>\n <span\n class=\"pl-2\"\n [class]=\"IconSortUp\"\n *ngIf=\"IsSortedColumn() && GetSortDirection() === 'asc'\"></span>\n <span\n class=\"pl-2\"\n [class]=\"IconSortDown\"\n *ngIf=\"IsSortedColumn() && GetSortDirection() === 'desc'\"></span>\n</th>\n<td\n scope=\"col\"\n *ngIf=\"IsBody()\"\n [style.width]=\"width\"\n [class.ellipsis]=\"IsEllipsis()\"\n (click)=\"ColumnClick()\"\n [style.max-width]=\"IsEllipsis() ? width : null\"\n [style.overflow]=\"IsEllipsis() ? 'hidden' : null\"\n [style.text-overflow]=\"IsEllipsis() ? 'ellipsis' : null\"\n [style.white-space]=\"IsEllipsis() ? 'nowrap' : null\">\n <span\n [attr.title]=\"IsEllipsis() ? value : null\"\n [innerHtml]=\"value\"></span>\n</td>\n","import { Component, ElementRef, Injector, forwardRef } from '@angular/core';\nimport {\n SacGridColumnActionCommon,\n SacGridColumnBaseCommon,\n} from '@simpleangularcontrols/sac-common';\nimport { SacGridComponent } from './grid';\nimport { NgIf } from '@angular/common';\n\n/**\n * Grid Action Komponent\n */\n@Component({\n selector: 'sac-gridcolumnaction',\n templateUrl: './gridcolumnaction.html',\n providers: [\n {\n provide: SacGridColumnBaseCommon,\n useExisting: forwardRef(() => SacGridColumnActionComponent),\n },\n ],\n standalone: true,\n imports: [NgIf],\n})\nexport class SacGridColumnActionComponent extends SacGridColumnActionCommon {\n /**\n * Konstruktor\n * @param grid Referenz auf Grid\n * @param el HTML Element Referenz\n */\n constructor(grid: SacGridComponent, injector: Injector, el: ElementRef) {\n super(grid, injector, el);\n\n this.width = '60px';\n }\n}\n","<th scope=\"col\" *ngIf=\"IsHeader()\" [style.width]=\"width\"><span></span></th>\n<td scope=\"col\" class=\"px-2\" *ngIf=\"IsBody()\">\n <ng-content></ng-content>\n</td>\n","import { Component, Input, Output, EventEmitter, ElementRef } from '@angular/core';\nimport { SacGridCommon, SacGridImageCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Image Item für Grid\n */\n@Component({\n selector: 'sac-gridimage',\n templateUrl: './gridimage.html',\n standalone: true\n})\nexport class SacGridImageComponent extends SacGridImageCommon {\n\n /**\n * Gibt die CSS Klassen für Sprite Images zurück\n * @returns CSS Klasse\n */\n public getIconClass(): string {\n switch (this.iconstyle) {\n case 'edit':\n return 'sprite icon-sprite-base-main_edit';\n case 'delete':\n return 'sprite icon-sprite-base-main_delete';\n default:\n return this.iconstyle;\n }\n }\n\n\n}\n","<span><span class=\"{{getIconClass()}}\"></span></span>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { SacGridComponent } from './grid';\nimport { SacGridButtonComponent } from './gridbutton';\nimport { SacGridColumnComponent } from './gridcolumn';\nimport { SacGridColumnActionComponent } from './gridcolumnaction';\nimport { SacGridImageComponent } from './gridimage';\nimport { SacPagingComponent } from './paging';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n SacGridComponent,\n SacGridColumnComponent,\n SacGridColumnActionComponent,\n SacPagingComponent,\n SacGridButtonComponent,\n SacGridImageComponent,\n ],\n exports: [\n SacGridComponent,\n SacGridColumnComponent,\n SacGridColumnActionComponent,\n SacPagingComponent,\n SacGridButtonComponent,\n SacGridImageComponent,\n ],\n})\nexport class SACBootstrap4GridModule {}\n","import { AsyncPipe, NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacInputCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n/**\n * Input Komponente\n */\n@Component({\n selector: 'sac-input',\n templateUrl: './input.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputComponent },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacInputComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n NgIf,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacInputComponent extends SacInputCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <input\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"text\"\n class=\"form-control\"\n [value]=\"value\"\n [attr.placeholder]=\"placeholder\"\n [readonly]=\"readonly\"\n (blur)=\"onTouch()\"\n (input)=\"setValue($event.target.value)\"\n (keypress)=\"onKeyPress($event)\"\n [attr.maxlength]=\"maxtextlength\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n [disabled]=\"isdisabled\" />\n\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { AsyncPipe, NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacInputAreaCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n/**\n * Input Box für lange Texte\n */\n@Component({\n selector: 'sac-inputarea',\n templateUrl: './inputarea.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => SacInputAreaComponent),\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacInputAreaComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n NgIf,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacInputAreaComponent extends SacInputAreaCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div class=\"form-group row\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <textarea\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"\"\n class=\"form-control\"\n [value]=\"value\"\n [attr.placeholder]=\"placeholder\"\n (blur)=\"onTouch()\"\n (input)=\"setValue($event.target.value)\"\n (keypress)=\"onKeyPress($event)\"\n [attr.rows]=\"rows\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n [disabled]=\"isdisabled\"\n [attr.maxlength]=\"maxtextlength\"\n [readonly]=\"readonly\"></textarea>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { AsyncPipe, NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacInputCurrencyCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n/**\n * Input Control für Währungen\n */\n@Component({\n selector: 'sac-inputcurrency',\n templateUrl: './inputcurrency.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => SacInputCurrencyComponent),\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacInputCurrencyComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n NgIf,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacInputCurrencyComponent extends SacInputCurrencyCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n class=\"input-group\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\"\n [class.has-validation]=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n <input\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"text\"\n inputmode=\"decimal\"\n class=\"form-control\"\n [value]=\"value\"\n (blur)=\"onTouch()\"\n (input)=\"setValue($event.target.value)\"\n [attr.placeholder]=\"placeholder\"\n (keypress)=\"onKeyPress($event)\"\n [disabled]=\"isdisabled\"\n [readonly]=\"readonly\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\" />\n <div class=\"input-group-append\">\n <span class=\"input-group-text\">{{ currency }}</span>\n </div>\n\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { AsyncPipe, NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacInputDecimalCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n/**\n * Input Komponente für Zahlen\n */\n@Component({\n selector: 'sac-inputdecimal',\n templateUrl: './inputdecimal.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => SacInputDecimalComponent),\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacInputDecimalComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n NgIf,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacInputDecimalComponent extends SacInputDecimalCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formlayout SacFormLayoutCommon to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formlayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formlayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <input\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"text\"\n inputmode=\"decimal\"\n class=\"form-control\"\n [value]=\"value\"\n (blur)=\"onTouch()\"\n (input)=\"setValue($event.target.value)\"\n [attr.placeholder]=\"placeholder\"\n [readonly]=\"readonly\"\n (keypress)=\"onKeyPress($event)\"\n [disabled]=\"isdisabled\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\" />\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { AsyncPipe, NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacInputEmailCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n/**\n * Input Box für E-Mail Adressen\n */\n@Component({\n selector: 'sac-inputemail',\n templateUrl: './inputemail.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => SacInputEmailComponent),\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacInputEmailComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n NgIf,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacInputEmailComponent extends SacInputEmailCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div class=\"form-group row\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n class=\"input-group\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\"\n [class.has-validation]=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n <div class=\"input-group-prepend\">\n <span class=\"input-group-text\">@</span>\n </div>\n <input\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"text\"\n inputmode=\"email\"\n class=\"form-control\"\n [value]=\"value\"\n (blur)=\"onTouch()\"\n (input)=\"setValue($event.target.value)\"\n [attr.placeholder]=\"placeholder\"\n [attr.maxlength]=\"maxtextlength\"\n autocomplete=\"email\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n [disabled]=\"isdisabled\"\n [readonly]=\"readonly\" />\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { AsyncPipe, NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacInputIntegerCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n/**\n * Input Komponten für Ganzzahlen\n */\n@Component({\n selector: 'sac-inputinteger',\n templateUrl: './inputinteger.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacInputIntegerComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacInputIntegerComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n NgIf,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacInputIntegerComponent extends SacInputIntegerCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div class=\"form-group row\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <input\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"text\"\n inputmode=\"decimal\"\n class=\"form-control\"\n [value]=\"value\"\n (blur)=\"onTouch()\"\n (input)=\"setValue($event.target.value)\"\n [attr.placeholder]=\"placeholder\"\n (keypress)=\"onKeyPress($event)\"\n [disabled]=\"isdisabled\"\n [readonly]=\"readonly\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\" />\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { AsyncPipe, NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacInputPasswordCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n/**\n * Input Box für Passwörter\n */\n@Component({\n selector: 'sac-inputpassword',\n templateUrl: './inputpassword.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacInputPasswordComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacInputPasswordComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n NgIf,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacInputPasswordComponent extends SacInputPasswordCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div class=\"form-group row\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n [class.input-group]=\"passwordeye\"\n [class.is-invalid]=\"passwordeye && isinlineerrorenabled && invalid && (dirty || touched)\">\n <input\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n [type]=\"passwordeyevisible ? 'text' : 'password'\"\n class=\"form-control\"\n [attr.placeholder]=\"placeholder\"\n [value]=\"value\"\n (blur)=\"onTouch()\"\n (input)=\"setValue($event.target.value)\"\n [attr.maxlength]=\"maxtextlength\"\n autocomplete=\"new-password\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n [disabled]=\"isdisabled\"\n [readonly]=\"readonly\" />\n <div\n *ngIf=\"passwordeye\"\n class=\"input-group-append\">\n <a\n class=\"btn btn-outline-secondary\"\n (click)=\"onTogglePasswordEye()\"\n ><span [ngClass]=\"passwordeyevisible ? PasswordEyeVisibleIcon : PasswordEyeHiddenIcon\"></span>\n </a>\n </div>\n <div\n *ngIf=\"!passwordeye && isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n <div\n *ngIf=\"passwordeye && isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacInputSearchCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n/**\n * Input Box für Suche\n */\n@Component({\n selector: 'sac-inputsearch',\n templateUrl: './inputsearch.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacInputSearchComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacInputSearchComponent),\n },\n ],\n standalone: true,\n imports: [\n NgIf,\n NgClass,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacInputSearchComponent extends SacInputSearchCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n id=\"{{ name }}_label\"\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n class=\"input-group\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\">\n <input\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"text\"\n inputmode=\"search\"\n class=\"form-control\"\n [value]=\"value\"\n [attr.placeholder]=\"placeholder\"\n (blur)=\"onTouch()\"\n (input)=\"setValue($event.target.value)\"\n [attr.maxlength]=\"maxtextlength\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n [disabled]=\"isdisabled\"\n [readonly]=\"readonly\" />\n <div class=\"input-group-append\">\n <button\n type=\"button\"\n class=\"btn btn-secondary\"\n id=\"{{ name }}_search\"\n (click)=\"searchClick()\">\n <i\n *ngIf=\"buttonmode === 'icon' || buttonmode === 'mixed'\"\n [class]=\"iconname\"\n [class.mr-2]=\"buttonmode === 'mixed'\"></i>\n <ng-container *ngIf=\"buttonmode === 'text' || buttonmode === 'mixed'\">{{ buttontext }}</ng-container>\n </button>\n </div>\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SacInputComponent } from './input';\nimport { SacInputAreaComponent } from './inputarea';\nimport { SacInputCurrencyComponent } from './inputcurrency';\nimport { SacInputDecimalComponent } from './inputdecimal';\nimport { SacInputEmailComponent } from './inputemail';\nimport { SacInputIntegerComponent } from './inputinteger';\nimport { SacInputPasswordComponent } from './inputpassword';\nimport { SacInputSearchComponent } from './inputsearch';\n\n@NgModule({\n imports: [\n CommonModule,\n SacInputComponent,\n SacInputAreaComponent,\n SacInputCurrencyComponent,\n SacInputDecimalComponent,\n SacInputEmailComponent,\n SacInputIntegerComponent,\n SacInputPasswordComponent,\n SacInputSearchComponent,\n ],\n exports: [\n SacInputComponent,\n SacInputAreaComponent,\n SacInputCurrencyComponent,\n SacInputDecimalComponent,\n SacInputEmailComponent,\n SacInputIntegerComponent,\n SacInputPasswordComponent,\n SacInputSearchComponent,\n ],\n})\nexport class SACBootstrap4InputModule {}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SacFormLayoutDirective } from './formlayout.directive';\nimport { SacToControlHeightPipe } from './tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from './tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from './tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from './tolabelwidthcss.pipe';\n\n@NgModule({\n imports: [\n CommonModule,\n SacFormLayoutDirective,\n SacToControlHeightPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToLabelWidthCssPipe,\n ],\n exports: [\n SacFormLayoutDirective,\n SacToControlHeightPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToLabelWidthCssPipe,\n ],\n})\nexport class SACBootstrap4LayoutModule {}\n","import {\n AsyncPipe,\n NgClass,\n NgFor,\n NgIf,\n NgTemplateOutlet,\n} from '@angular/common';\nimport {\n Component,\n Directive,\n ElementRef,\n Host,\n Injector,\n Optional,\n Renderer2,\n forwardRef,\n} from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport {\n SacDropdownCommon,\n SacDropdownOptionCommon,\n} from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n// #region Classes\n\n/**\n * Dropdown Komponente\n */\n@Component({\n selector: 'sac-dropdown',\n templateUrl: './dropdown.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacDropdownComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacDropdownComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n NgIf,\n forwardRef(() => SacDropdownOptionDirective),\n NgFor,\n NgTemplateOutlet,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacDropdownComponent extends SacDropdownCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n * @param renderer Angular rendering engine\n * @param elementRef Reference to html dom element\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector,\n renderer: Renderer2,\n elementRef: ElementRef\n ) {\n super(formLayout, injector, renderer, elementRef);\n }\n\n // #endregion Constructors\n}\n\n/**\n * Direktive für Dropdown Option List\n */\n@Directive({ selector: '[sacOption],option', standalone: true })\nexport class SacDropdownOptionDirective extends SacDropdownOptionCommon {\n // #region Constructors\n\n /**\n * Konstruktor\n * @param elementRef Referenz auf HTML DOM Element\n * @param renderer Angular Rendering Engine\n * @param dropdownList Referenz auf DropDown Komponente\n */\n constructor(\n elementRef: ElementRef,\n renderer: Renderer2,\n @Optional() @Host() dropdownList: SacDropdownComponent\n ) {\n super(elementRef, renderer, dropdownList);\n }\n\n // #endregion Constructors\n}\n\n// #endregion Classes\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\"\n ><div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <select\n #dropdownitem\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n class=\"form-control\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n (blur)=\"onTouch()\"\n (change)=\"setValue(dropdownitem.value)\"\n [disabled]=\"isdisabled\">\n <option\n *ngIf=\"emptylabel !== ''\"\n [ngValue]=\"emptyvalue\">\n {{ emptylabel }}\n </option>\n\n <ng-content></ng-content>\n\n <ng-container *ngIf=\"groupitems === ''\">\n <option\n *ngFor=\"let item of options\"\n [ngValue]=\"optionvalue ? item[optionvalue] : item\"\n [disabled]=\"optionenabled !== '' && item[optionenabled] === false\">\n <ng-template *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate; context: { label: item[optionlabel], item: item }\"> </ng-template>\n </option>\n </ng-container>\n\n <ng-container *ngIf=\"groupitems !== ''\">\n <optgroup\n *ngFor=\"let group of options\"\n [attr.label]=\"group[grouplabel]\">\n <option\n *ngFor=\"let item of group[groupitems]\"\n [ngValue]=\"optionvalue ? item[optionvalue] : item\"\n [disabled]=\"optionenabled !== '' && item[optionenabled] === false\">\n <ng-template *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate; context: { label: item[optionlabel], item: item }\"> </ng-template>\n </option>\n </optgroup>\n </ng-container>\n </select>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n class=\"invalid-feedback\"\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n\n<ng-template\n #defaultItemLabelTemplate\n let-label=\"label\">\n {{ label }}\n</ng-template>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SacDropdownComponent, SacDropdownOptionDirective } from './dropdown';\n\n@NgModule({\n imports: [CommonModule, SacDropdownComponent, SacDropdownOptionDirective],\n exports: [SacDropdownComponent, SacDropdownOptionDirective],\n})\nexport class SACBootstrap4DropdownModule {}\n","import { AsyncPipe, NgClass, NgFor, NgIf } from '@angular/common';\nimport {\n Component,\n Directive,\n ElementRef,\n Host,\n Injector,\n Optional,\n Renderer2,\n forwardRef,\n} from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport {\n SacListboxCommon,\n SacListboxOptionCommon,\n} from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n// #region Classes\n\n/**\n * Listbox Komponente\n */\n@Component({\n selector: 'sac-listbox',\n templateUrl: './listbox.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacListboxComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacListboxComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n NgIf,\n NgFor,\n AsyncPipe,\n forwardRef(() => SacListboxOptionDirective),\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacListboxComponent extends SacListboxCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n\n/**\n * Option Item in Listbox\n */\n@Directive({ selector: '[sacOption],option', standalone: true })\nexport class SacListboxOptionDirective extends SacListboxOptionCommon {\n // #region Constructors\n\n /**\n * Konstruktor\n * @param elementRef Referenz auf DOM Element\n * @param renderer Angular Rendering Engine\n * @param listbox Referenz auf Listbox Komponente\n */\n constructor(\n elementRef: ElementRef,\n renderer: Renderer2,\n @Optional() @Host() listbox: SacListboxComponent\n ) {\n super(elementRef, renderer, listbox);\n }\n\n // #endregion Constructors\n}\n\n// #endregion Classes\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\"\n ><div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <select\n multiple\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n class=\"form-control\"\n [size]=\"rowsize\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n (blur)=\"onTouch()\"\n (change)=\"getSelectedItems($event.target)\"\n [disabled]=\"isdisabled\">\n <ng-content></ng-content>\n <ng-container *ngIf=\"groupitems === ''\">\n <option\n *ngFor=\"let option of options\"\n [value]=\"option[optionvalue]\"\n [disabled]=\"optionenabled !== '' && option[optionenabled] === false\">\n {{ option[optionlabel] }}\n </option>\n </ng-container>\n <ng-container *ngIf=\"groupitems !== ''\">\n <optgroup\n *ngFor=\"let option of options\"\n [attr.label]=\"option[grouplabel]\">\n <option\n *ngFor=\"let item of option[groupitems]\"\n [value]=\"item[optionvalue]\"\n [disabled]=\"optionenabled !== '' && item[optionenabled] === false\">\n {{ item[optionlabel] }}\n </option>\n </optgroup>\n </ng-container>\n </select>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n class=\"invalid-feedback\"\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SacListboxComponent, SacListboxOptionDirective } from './listbox';\n\n@NgModule({\n imports: [CommonModule, SacListboxComponent, SacListboxOptionDirective],\n exports: [SacListboxComponent, SacListboxOptionDirective],\n})\nexport class SACBootstrap4ListModule {}\n","import { Directive, ElementRef, forwardRef } from '@angular/core';\nimport { SacContextmenuAnchorCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Anker Komponente für Context Menü. Wird zum positionieren des Context Menü in der Page benötigt.\n */\n@Directive({\n selector: '[sacMultilanguageMenuAnchor]',\n providers: [\n {\n provide: SacContextmenuAnchorCommon,\n useExisting: forwardRef(() => SacMultilanguagemenuAnchorDirective),\n },\n ],\n standalone: true,\n})\nexport class SacMultilanguagemenuAnchorDirective extends SacContextmenuAnchorCommon {\n // #region Constructors\n\n /**\n * Konstruktor\n * @param elementRef HTML DOM Referenz\n */\n constructor(elementRef: ElementRef<HTMLElement>) {\n super(elementRef);\n }\n\n // #endregion Constructors\n}\n","import { Directive, ElementRef, forwardRef } from '@angular/core';\nimport { SacContextMenuContrainerCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Marker Komponente für Context Menü\n */\n@Directive({\n selector: '[sacMultilanguageMenuContainer]',\n providers: [\n {\n provide: SacContextMenuContrainerCommon,\n useExisting: forwardRef(() => SacMultilanguagemenuContainerDirective),\n },\n ],\n standalone: true,\n})\nexport class SacMultilanguagemenuContainerDirective extends SacContextMenuContrainerCommon {\n // #region Constructors\n\n /**\n * Konstruktor\n * @param elementRef Referenz auf DOM Element\n */\n constructor(elementRef: ElementRef<HTMLElement>) {\n super(elementRef);\n }\n\n // #endregion Constructors\n}\n","import { DOCUMENT, NgTemplateOutlet } from '@angular/common';\nimport {\n Component,\n ElementRef,\n Inject,\n Injector,\n NgZone,\n Renderer2,\n forwardRef,\n} from '@angular/core';\nimport { SacContextmenuCommon } from '@simpleangularcontrols/sac-common';\nimport { SacMultilanguagemenuAnchorDirective } from './multilanguagemenuanchor';\nimport { SacMultilanguagemenuContainerDirective } from './multilanguagemenucontainer';\n\n/**\n * Component für Contextmenü\n */\n@Component({\n selector: '[sac-multilanguagemenu]', // eslint-disable-line @angular-eslint/component-selector -- bootstrap requires append-items direct behind the previews element\n templateUrl: './multilanguagemenu.html',\n providers: [\n {\n provide: SacContextmenuCommon,\n useExisting: forwardRef(() => SacMultilanguagemenuComponent),\n },\n ],\n standalone: true,\n imports: [\n NgTemplateOutlet,\n SacMultilanguagemenuContainerDirective,\n SacMultilanguagemenuAnchorDirective,\n ],\n})\nexport class SacMultilanguagemenuComponent extends SacContextmenuCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param document Referenz auf HTML Document\n * @param ngZone Angular Zone Service\n * @param elementRef Referenz auf HTML Element der aktuellen Komponente\n * @param renderer Render Service von Angular\n * @param injector injector to resolve services in base component\n */\n constructor(\n @Inject(DOCUMENT) document: any,\n ngZone: NgZone,\n elementRef: ElementRef<HTMLElement>,\n renderer: Renderer2,\n injector: Injector\n ) {\n super(document, ngZone, elementRef, renderer, injector);\n }\n\n // #endregion Constructors\n}\n","<ng-container\n [ngTemplateOutlet]=\"buttontemplate || defaultButtonTemplate\"\n></ng-container>\n\n<div\n class=\"dropdown-menu dropdown-menu-right\"\n sacMultilanguageMenuContainer\n [class.show]=\"isopen\"\n>\n <ng-content></ng-content>\n</div>\n\n<ng-template #defaultButtonTemplate>\n <button\n sacMultilanguageMenuAnchor\n class=\"btn btn-secondary dropdown-toggle\"\n type=\"button\"\n (click)=\"toggle()\"\n ></button>\n</ng-template>\n","import { NgIf } from '@angular/common';\nimport { Component, forwardRef } from '@angular/core';\nimport { SacContextmenuItemButtonCommon, SacContextmenuItemCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Component for menu entry in context menu\n */\n@Component({\n selector: 'sac-multilanguagemenubutton',\n templateUrl: './multilanguagemenuitembutton.html',\n providers: [\n {\n provide: SacContextmenuItemCommon,\n useExisting: forwardRef(() => SacMultilanguagemenuItemButtonComponent),\n },\n ],\n standalone: true,\n imports: [NgIf],\n})\nexport class SacMultilanguagemenuItemButtonComponent extends SacContextmenuItemButtonCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param contextmenu Instance von Context Menü\n */\n constructor() {\n super();\n }\n\n // #endregion Constructors\n}\n","<button\n type=\"button\"\n class=\"dropdown-item\"\n (click)=\"callaction($event)\"\n [class.disabled]=\"isdisabled\"\n [class]=\"cssclass\"\n [attr.disabled]=\"isdisabled ? 'disabled' : null\"\n>\n <div class=\"d-flex\">\n <div *ngIf=\"!isicondisabled\" style=\"min-width: 1.5rem\">\n <img *ngIf=\"image\" [src]=\"image\" class=\"align-baseline\" />\n <i *ngIf=\"icon\" [class]=\"iconstyle + ' ' + icon\"></i>\n </div>\n <div class=\"flex-grow-1\">{{ text }}</div>\n </div>\n</button>\n","import { AsyncPipe, NgClass, NgFor, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport {\n IconType,\n SacMultilanguageInputCommon,\n} from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { SacMultilanguagemenuComponent } from './multilanguagemenu';\nimport { SacMultilanguagemenuAnchorDirective } from './multilanguagemenuanchor';\nimport { SacMultilanguagemenuItemButtonComponent } from './multilanguagemenuitembutton';\n\n/**\n * Componente für Mehrsprache Texte\n */\n@Component({\n selector: 'sac-multilanguageinput',\n templateUrl: './multilanguageinput.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacMultilanguageInputComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacMultilanguageInputComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n SacMultilanguagemenuComponent,\n SacMultilanguagemenuAnchorDirective,\n NgIf,\n NgFor,\n AsyncPipe,\n SacMultilanguagemenuItemButtonComponent,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacMultilanguageInputComponent extends SacMultilanguageInputCommon {\n // #region Properties\n\n /**\n * Enum für IconType in HTML Template\n */\n public IconType = IconType;\n\n // #endregion Properties\n\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n class=\"input-group\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\"\n [class.has-validation]=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n <input\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"text\"\n class=\"form-control\"\n [value]=\"LanguageValue\"\n [attr.placeholder]=\"placeholder\"\n (blur)=\"onTouch()\"\n (input)=\"SetLanguageValue($event.target.value)\"\n [attr.maxlength]=\"maxtextlength\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n [disabled]=\"isdisabled\" />\n <div\n placement=\"bottom-right\"\n class=\"input-group-append\"\n sac-multilanguagemenu\n [buttontemplate]=\"menuButton\"\n #contextmenu>\n <ng-template #menuButton>\n <button\n sacMultilanguageMenuAnchor\n [id]=\"name + '_dropdownitem'\"\n type=\"button\"\n class=\"btn dropdown-toggle\"\n (click)=\"contextmenu.toggle()\"\n [ngClass]=\"[IsAnyEmpty() ? 'btn-warning' : 'btn-secondary']\">\n <img\n src=\"{{ SelectedIcon }}\"\n class=\"align-baseline mr-1 ml-1\"\n *ngIf=\"SelectedIconType === IconType.Image\" />\n <span\n [ngClass]=\"SelectedIcon\"\n class=\"align-baseline mr-1 ml-1\"\n *ngIf=\"SelectedIconType === IconType.CssSprite\"></span>\n </button>\n </ng-template>\n <ng-container *ngFor=\"let sprache of Languages\">\n <sac-multilanguagemenubutton\n *ngIf=\"sprache.IconType === IconType.Image\"\n text=\"{{ sprache.Text }}\"\n image=\"{{ sprache.Icon }}\"\n [cssclass]=\"IsEmpty(sprache) ? 'text-danger border-left border-danger' : ''\"\n (clicked)=\"SelectLanguage(sprache)\"></sac-multilanguagemenubutton>\n <sac-multilanguagemenubutton\n *ngIf=\"sprache.IconType === IconType.CssSprite\"\n text=\"{{ sprache.Text }}\"\n icon=\"{{ sprache.Icon }}\"\n [cssclass]=\"IsEmpty(sprache) ? 'text-danger border-left border-danger' : ''\"\n (clicked)=\"SelectLanguage(sprache)\"></sac-multilanguagemenubutton>\n </ng-container>\n </div>\n\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n<div class=\"row\">\n <div class=\"col text-right\"></div>\n</div>\n","import { AsyncPipe, NgClass, NgFor, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport {\n IconType,\n SacMultilanguageInputAreaCommon,\n} from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { SacMultilanguagemenuComponent } from './multilanguagemenu';\nimport { SacMultilanguagemenuAnchorDirective } from './multilanguagemenuanchor';\nimport { SacMultilanguagemenuItemButtonComponent } from './multilanguagemenuitembutton';\n\n/**\n * Componente für Mehrsprache Texte als mehrzeiliger Text\n */\n@Component({\n selector: 'sac-multilanguageinputarea',\n templateUrl: './multilanguageinputarea.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacMultilanguageInputAreaComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacMultilanguageInputAreaComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n SacMultilanguagemenuComponent,\n SacMultilanguagemenuAnchorDirective,\n NgIf,\n NgFor,\n AsyncPipe,\n SacMultilanguagemenuItemButtonComponent,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacMultilanguageInputAreaComponent extends SacMultilanguageInputAreaCommon {\n // #region Properties\n\n /**\n * Enum für IconType in HTML Template\n */\n public IconType = IconType;\n\n // #endregion Properties\n\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n class=\"input-group\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\"\n [class.has-validation]=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n <textarea\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"text\"\n class=\"form-control\"\n [value]=\"LanguageValue\"\n [attr.placeholder]=\"placeholder\"\n (blur)=\"onTouch()\"\n style=\"height: auto\"\n (input)=\"SetLanguageValue($event.target.value)\"\n [attr.rows]=\"rows\"\n [attr.maxlength]=\"maxtextlength\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n [disabled]=\"isdisabled\"></textarea>\n\n <div\n placement=\"bottom-right\"\n class=\"input-group-append\"\n sac-multilanguagemenu\n [buttontemplate]=\"menuButton\"\n #contextmenu>\n <ng-template #menuButton>\n <button\n sacMultilanguageMenuAnchor\n [id]=\"name + '_dropdownitem'\"\n type=\"button\"\n class=\"btn dropdown-toggle\"\n (click)=\"contextmenu.toggle()\"\n [ngClass]=\"[IsAnyEmpty() ? 'btn-warning' : 'btn-secondary']\">\n <img\n src=\"{{ SelectedIcon }}\"\n class=\"align-baseline mr-1 ml-1\"\n *ngIf=\"SelectedIconType === IconType.Image\" />\n <i\n [ngClass]=\"SelectedIcon\"\n class=\"align-baseline mr-1 ml-1\"\n *ngIf=\"SelectedIconType === IconType.CssSprite\"></i>\n </button>\n </ng-template>\n <ng-container *ngFor=\"let sprache of Languages\">\n <sac-multilanguagemenubutton\n *ngIf=\"sprache.IconType === IconType.Image\"\n text=\"{{ sprache.Text }}\"\n image=\"{{ sprache.Icon }}\"\n [cssclass]=\"IsEmpty(sprache) ? 'text-danger border-left border-danger' : ''\"\n (clicked)=\"SelectLanguage(sprache)\"></sac-multilanguagemenubutton>\n <sac-multilanguagemenubutton\n *ngIf=\"sprache.IconType === IconType.CssSprite\"\n text=\"{{ sprache.Text }}\"\n icon=\"{{ sprache.Icon }}\"\n [cssclass]=\"IsEmpty(sprache) ? 'text-danger border-left border-danger' : ''\"\n (clicked)=\"SelectLanguage(sprache)\"></sac-multilanguagemenubutton>\n </ng-container>\n </div>\n\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n<div class=\"row\">\n <div class=\"col text-right\"></div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SacMultilanguageInputComponent } from './multilanguageinput';\nimport { SacMultilanguageInputAreaComponent } from './multilanguageinputarea';\nimport { SacMultilanguagemenuComponent } from './multilanguagemenu';\nimport { SacMultilanguagemenuAnchorDirective } from './multilanguagemenuanchor';\nimport { SacMultilanguagemenuContainerDirective } from './multilanguagemenucontainer';\nimport { SacMultilanguagemenuItemButtonComponent } from './multilanguagemenuitembutton';\n\n@NgModule({\n imports: [\n CommonModule,\n SacMultilanguageInputComponent,\n SacMultilanguageInputAreaComponent,\n SacMultilanguagemenuComponent,\n SacMultilanguagemenuAnchorDirective,\n SacMultilanguagemenuContainerDirective,\n SacMultilanguagemenuItemButtonComponent,\n ],\n exports: [SacMultilanguageInputComponent, SacMultilanguageInputAreaComponent],\n})\nexport class SACBootstrap4MultilanguageModule {}\n","import { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacStaticFormContainerCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Component für einbindung eines beliebigen Controls in die Form Struktur\n *\n * @example\n * <ngStaticFormContainer name='myformcontainer' label=\"My Custom Form Control\" [isrequired]='false'>\n * <input type=\"range\" class=\"form-control\" />\n * </ngStaticFormContainer>\n *\n * @example\n * <ngStaticFormContainer name='myformcintainer' label=\"My Custom Form Control\" [isrequired]='false' tooltiptext=\"Dies ist ein Tooltip Text\">\n * <input type=\"range\" class=\"form-control\" />\n * </ngStaticFormContainer>\n *\n **/\n@Component({\n selector: 'sac-staticformcontainer',\n templateUrl: './formcontainer.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacStaticFormContainerComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacStaticFormContainerComponent),\n },\n ],\n standalone: true,\n imports: [\n NgIf,\n NgClass,\n SacToControlHeightPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacStaticFormContainerComponent extends SacStaticFormContainerCommon {\n // #region Constructors\n\n /**\n *\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(@Host() @Optional() formLayout: SacFormLayoutDirective, injector: Injector) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\n id=\"{{ name }}_label\"\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\"\n ><span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n [class.was-validated]=\"isinlineerrorenabled && isinvalid && errormessage\">\n <ng-content></ng-content>\n <label\n for=\"{{ name }}\"\n class=\"form-label-adaptive form-label-fixed\"\n [ngClass]=\"{ required: isrequired }\"\n *ngIf=\"isAdaptiveLabel && !disablelabel\">\n {{ label }}\n </label>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n class=\"invalid-feedback\"\n *ngIf=\"isinlineerrorenabled && isinvalid && errormessage\">\n {{ errormessage }}\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacStaticLabelCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n/**\n * Komponente für statischen Text in einem Formular\n */\n@Component({\n selector: 'sac-staticlabel',\n templateUrl: './staticlabel.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacStaticLabelComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacStaticLabelComponent),\n },\n ],\n standalone: true,\n imports: [\n NgIf,\n NgClass,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacStaticLabelComponent extends SacStaticLabelCommon {\n // #region Constructors\n\n /**\n *\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\n id=\"{{ name }}_label\"\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\"\n ><span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\"></span> </sac-tooltip\n ></label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div>\n <div\n [id]=\"name\"\n class=\"form-control-plaintext\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n [innerHTML]=\"value\"></div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SacStaticFormContainerComponent } from './formcontainer';\nimport { SacStaticLabelComponent } from './staticlabel';\n\n@NgModule({\n imports: [\n CommonModule,\n SacStaticLabelComponent,\n SacStaticFormContainerComponent,\n ],\n exports: [SacStaticLabelComponent, SacStaticFormContainerComponent],\n})\nexport class SACBootstrap4StaticLabelModule {}\n","import { Component } from '@angular/core';\nimport { SacTabItemCommon } from '@simpleangularcontrols/sac-common';\nimport { NgIf, NgTemplateOutlet } from '@angular/common';\n\n/**\n * Tab Item Komponente\n */\n@Component({\n selector: 'sac-tabitem',\n templateUrl: './tabitem.html',\n standalone: true,\n imports: [NgIf, NgTemplateOutlet],\n})\nexport class SacTabItemComponent extends SacTabItemCommon {}\n","<div [id]=\"id\" [hidden]=\"unloadwhenhidden === false && active === false\" *ngIf=\"(unloadwhenhidden === true && active === true) || unloadwhenhidden === false\" class=\"tab-pane\">\n <ng-template [ngTemplateOutlet]=\"templateRef\"></ng-template>\n</div>\n","import { Component, ContentChildren, QueryList } from '@angular/core';\nimport { SacTabCommon } from '@simpleangularcontrols/sac-common';\nimport { SacTabItemComponent } from './tabitem';\nimport { NgFor, NgClass, NgStyle } from '@angular/common';\n\n/**\n * Komponente für Tabs\n */\n@Component({\n selector: 'sac-tab',\n templateUrl: './tab.html',\n standalone: true,\n imports: [\n NgFor,\n NgClass,\n NgStyle,\n ],\n})\nexport class SacTabComponent extends SacTabCommon {\n /**\n * Collection von TabItems\n */\n @ContentChildren(SacTabItemComponent)\n _tabItems: QueryList<SacTabItemComponent>;\n\n /**\n * Gibt die TabItems zurück\n * @returns Array von TabItems\n */\n tabItems(): SacTabItemComponent[] {\n return this._tabItems.toArray() as Array<SacTabItemComponent>;\n }\n}\n","<!-- Nav tabs -->\n<div class=\"nav nav-tabs\" role=\"tablist\">\n <a\n *ngFor=\"let item of _tabItems\"\n [id]=\"GetTabItemButtonId(item.id)\"\n role=\"tab\"\n class=\"nav-item nav-link active\"\n data-toggle=\"tab\"\n [ngClass]=\"{ 'active show': item.active, 'disabled': item.disabled }\"\n (click)=\"selectTab(item)\"\n [ngStyle]=\"{'cursor': item.disabled ? 'not-allowed' : 'pointer'}\"\n >{{item.label}}</a\n >\n</div>\n\n<!-- Tab panes -->\n<div class=\"tab-content pl-3 pt-2\">\n <ng-content></ng-content>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SacTabComponent } from './tab';\nimport { SacTabItemComponent } from './tabitem';\n\n@NgModule({\n imports: [\n CommonModule,\n SacTabComponent, SacTabItemComponent\n ],\n exports: [SacTabComponent, SacTabItemComponent]\n})\nexport class SACBootstrap4TabsModule { }\n","import {\n SacBrowserComponent,\n SacToControlHeightPipe,\n SacToControlWidthCssPipe,\n SacToLabelWidthCssPipe,\n} from '../../public_api';\nimport { SacButtonComponent } from '../buttons';\nimport { SacDialogComponent } from '../dialog';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { AsyncPipe, NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, NgZone, Optional, forwardRef } from '@angular/core';\nimport { FormsModule, NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacTinyMceCommon } from '@simpleangularcontrols/sac-common';\nimport { EditorComponent } from '@tinymce/tinymce-angular';\n\n/**\n * TinyMCE Komponente\n */\n@Component({\n selector: 'sac-tinymce',\n templateUrl: './tinymce.html',\n styleUrls: ['./tinymce.scss'],\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacTinyMceComponent,\n },\n {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => SacTinyMceComponent),\n multi: true,\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n EditorComponent,\n FormsModule,\n NgIf,\n SacDialogComponent,\n SacBrowserComponent,\n SacButtonComponent,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacTooltipComponent,\n SacToControlHeightPipe,\n ],\n})\nexport class SacTinyMceComponent extends SacTinyMceCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n * @param ngZone ngZone to manage external javascripts\n */\n constructor(@Host() @Optional() formLayout: SacFormLayoutDirective, injector: Injector, ngZone: NgZone) {\n super(formLayout, injector, ngZone);\n }\n\n // #endregion Constructors\n\n // #region Public Methods\n\n /**\n * overwrite tinymce defaults\n * @returns boostrap4 has no overwrites\n */\n public overwriteDefaultSettings() {\n return {};\n }\n\n // #endregion Public Methods\n}\n","<div class=\"row form-group\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\"\n ><div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <editor\n [id]=\"name + '_tinymce'\"\n [init]=\"_config\"\n [initialValue]=\"value\"\n ngModel\n [ngModelOptions]=\"{ standalone: true }\"\n (ngModelChange)=\"setValue($event)\"\n (onSaveContent)=\"save($event.event.content)\"\n [disabled]=\"disabled\"\n [class.is-invalid]=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n </editor>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n\n<sac-dialog\n *ngIf=\"selectdialogvisible\"\n [allowesc]=\"false\"\n [backdrop]=\"true\"\n [(isvisible)]=\"selectdialogvisible\"\n title=\"{{ lngResourceService.GetString(validationKeyService.TinyMceFileselectDialogtitle) | async }}\"\n size=\"large\"\n height=\"500px\">\n <ng-container dialogbody>\n <sac-filebrowser\n [apiurl]=\"filebrowserapiurl\"\n (file)=\"selectDialogSettings.value = $event\"\n [allowfoldercreate]=\"allowfoldercreate\"\n [allowfolderrename]=\"allowfolderrename\"\n [allowfolderdelete]=\"allowfolderdelete\"\n [allowfileupload]=\"allowfileupload\"\n [allowfilerename]=\"allowfilerename\"\n [allowfiledelete]=\"allowfiledelete\"\n [selectedfile]=\"selectDialogSettings.value\"\n [allowedtypes]=\"selectDialogSettings.allowedtypes\"></sac-filebrowser>\n </ng-container>\n <ng-container dialogfooter>\n <sac-button\n role=\"primary\"\n [name]=\"name + '_modalOk'\"\n text=\"{{ lngResourceService.GetString(validationKeyService.TinyMceFileselectOk) | async }}\"\n (clicked)=\"setSelectDialogResult()\"></sac-button>\n <sac-button\n [name]=\"name + '_modalClose'\"\n text=\"{{ lngResourceService.GetString(validationKeyService.TinyMceFileselectCancel) | async }}\"\n (clicked)=\"closeSelectDialog()\"></sac-button>\n </ng-container>\n</sac-dialog>\n","import { NgModule } from '@angular/core';\nimport { SacTinyMceComponent } from './tinymce';\n\n@NgModule({\n imports: [SacTinyMceComponent],\n exports: [SacTinyMceComponent],\n})\nexport class SACBootstrap4TinyMceModule {}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SacTooltipComponent } from './tooltip';\n\n@NgModule({\n imports: [CommonModule, SacTooltipComponent],\n exports: [SacTooltipComponent],\n})\nexport class SACBootstrap4TooltipModule {}\n","import { SacContextmenuComponent } from '../contextmenu';\nimport { SacContextmenuItemButtonComponent } from '../contextmenu/contextmenuitembutton';\nimport { SacContextmenuItemSplitterComponent } from '../contextmenu/contextmenuitemsplitter';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { AsyncPipe, JsonPipe, NgClass, NgFor, NgIf, NgTemplateOutlet } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacTreeviewCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Treeview Compomnent\n */\n@Component({\n selector: 'sac-treeview',\n templateUrl: './treeview.html',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacTreeviewComponent,\n },\n {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => SacTreeviewComponent),\n multi: true,\n },\n ],\n standalone: true,\n imports: [\n NgIf,\n JsonPipe,\n NgFor,\n NgTemplateOutlet,\n NgClass,\n SacContextmenuComponent,\n SacContextmenuItemButtonComponent,\n SacContextmenuItemSplitterComponent,\n SacToLabelWidthCssPipe,\n SacToLabelHeightPipe,\n SacTooltipComponent,\n SacToControlWidthCssPipe,\n AsyncPipe,\n SacToControlHeightPipe,\n ],\n})\nexport class SacTreeviewComponent extends SacTreeviewCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Component Injector\n */\n constructor(@Host() @Optional() formLayout: SacFormLayoutDirective, injector: Injector) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"row mb-3\"\n [class.g-0]=\"disablelabel\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\">\n <div [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n class=\"w-100\"\n [style.min-width]=\"helptextmode === 'tooltip' && helptext && disablelabel ? 0 : null\"\n [class.mr-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <ul\n class=\"list-group list-group-flush\"\n id=\"{{ name }}\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [class.border]=\"invalid && (dirty || touched)\"\n [class.border-danger]=\"invalid && (dirty || touched)\">\n <ng-container *ngFor=\"let node of data\">\n <ng-template\n [ngTemplateOutlet]=\"treeItem\"\n [ngTemplateOutletContext]=\"{ node: node, deep: 0, path: '', textpath: '' }\">\n </ng-template>\n </ng-container>\n </ul>\n\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n </div>\n</div>\n<ng-template\n #treeItem\n let-node=\"node\"\n let-deep=\"deep\"\n let-path=\"path\"\n let-textpath=\"textpath\">\n <li\n class=\"list-group-item list-group-item-action py-1 px-2 d-flex align-items-center\"\n [class.active]=\"isSelectedState(node)\"\n (mouseenter)=\"setHoverState(node, true)\"\n (mouseleave)=\"setHoverState(node, false)\"\n style=\"cursor: pointer\"\n attr.data-path=\"{{ path }}/{{ getStringField(node, attrid) }}\"\n attr.data-textpath=\"{{ textpath }}/{{ getStringField(node, attrlabel) }}\">\n <div\n class=\"mx-3\"\n *ngFor=\"let i of count(deep)\">\n </div>\n\n <div\n (click)=\"onNodeClicked(node)\"\n *ngIf=\"expandedstate === 'true' || expandedstate === true\"\n class=\"mr-2\"\n [ngClass]=\"!hasChildren(node) ? iconFolderEmpty : !isExpandedState(node) ? iconFolderCollabsed : isExpandedState(node) ? iconFolderOpen : ''\">\n </div>\n\n <div\n (click)=\"onNodeClicked(node)\"\n *ngIf=\"attricon && getStringField(node, attricon)\">\n <ng-template\n [ngTemplateOutlet]=\"templateicon || defaultTemplateIcon\"\n [ngTemplateOutletContext]=\"{ node: node }\">\n </ng-template>\n </div>\n\n <div\n (click)=\"onNodeClicked(node)\"\n class=\"flex-grow-1 py-1\"\n [style.overflow]=\"enableellipsis ? 'hidden' : null\"\n [style.text-overflow]=\"enableellipsis ? 'ellipsis' : null\"\n [style.white-space]=\"enableellipsis ? 'nowrap' : null\">\n <ng-template\n [ngTemplateOutlet]=\"templatelabel || defaultTemplateLabel\"\n [ngTemplateOutletContext]=\"{ node: node, label: getStringField(node, attrlabel) }\">\n </ng-template>\n </div>\n\n <div\n (click)=\"setSelectedState(node)\"\n class=\"flex-shrink-0\"\n *ngIf=\"!isDisabledState(node) && (showactionalways || isSelectedState(node) || isHoverState(node))\">\n <ng-template\n [ngTemplateOutlet]=\"templateaction || defaultTemplateAction\"\n [ngTemplateOutletContext]=\"{ node: node, actionhandler: onActionClicked.bind(this) }\">\n </ng-template>\n </div>\n </li>\n\n <ng-container *ngIf=\"isExpandedState(node)\">\n <ng-template\n *ngFor=\"let child of getChildren(node)\"\n [ngTemplateOutlet]=\"treeItem\"\n [ngTemplateOutletContext]=\"{\n node: child,\n deep: deep + 1,\n path: path + '/' + getStringField(node, attrid),\n textpath: textpath + '/' + getStringField(node, attrlabel)\n }\">\n </ng-template>\n </ng-container>\n</ng-template>\n<ng-template\n #defaultTemplateLabel\n let-label=\"label\"\n let-node=\"node\">\n <span [title]=\"label\">\n {{ label }}\n </span>\n</ng-template>\n\n<ng-template\n #defaultTemplateIcon\n let-node=\"node\">\n <div\n class=\"mr-2\"\n [ngClass]=\"getStringField(node, attricon)\">\n </div>\n</ng-template>\n\n<ng-template\n #defaultTemplateAction\n let-node=\"node\"\n let-actionhandler=\"actionhandler\">\n <a\n class=\"btn btn-sm btn-link text-secondary\"\n (click)=\"actionhandler({ action: 'default', node: node })\">\n <i [class]=\"iconAction\"></i>\n </a>\n</ng-template>\n","import { SacTreeviewComponent } from './treeview';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\n@NgModule({\n imports: [CommonModule, SacTreeviewComponent],\n exports: [SacTreeviewComponent],\n})\nexport class SACBootstrap4TreeviewModule {}\n","import { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { AsyncPipe, NgClass, NgFor, NgIf } from '@angular/common';\nimport { Component, Host, Injector, NgZone, OnInit, Optional, Renderer2, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacDropzoneSingleCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Dropzone Komponente für den Upload eines Files\n * @see https://github.com/kukhariev/ngx-uploadx/\n */\n@Component({\n selector: 'sac-dropzonesingle',\n templateUrl: './dropzonesingle.html',\n styleUrls: ['./dropzone.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacDropzoneSingleComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacDropzoneSingleComponent),\n },\n ],\n standalone: true,\n imports: [\n NgIf,\n NgClass,\n NgFor,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacTooltipComponent,\n SacToControlHeightPipe,\n ],\n})\nexport class SacDropzoneSingleComponent extends SacDropzoneSingleCommon implements OnInit {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n * @param renderer Angular rendering engine\n * @param ngZone ngZone to manage external javascripts\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector,\n renderer: Renderer2,\n ngZone: NgZone\n ) {\n super(formLayout, injector, renderer, ngZone);\n }\n\n // #endregion Constructors\n\n // #region Public Methods\n\n /**\n * Initialisiert das Control\n */\n public ngOnInit() {\n super.ngOnInit();\n }\n\n // #endregion Public Methods\n}\n","<div\n id=\"{{ name }}\"\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\n id=\"{{ name }}_label\"\n for=\"{{ name }}_uploadinput\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\"\n ><span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\"></span> </sac-tooltip\n ></label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n class=\"dropzone d-flex justify-content-center position-relative\"\n (drop)=\"dropHandler($event)\"\n (dragover)=\"onDragOver($event)\"\n (dragleave)=\"onDragLeave($event)\"\n [style.min-height]=\"uploadheight\"\n [class.active]=\"active\"\n [class.is-invalid]=\"invalid && (dirty || touched)\">\n <div\n class=\"content d-flex justify-content-center\"\n *ngIf=\"uploads.length === 0\">\n <div class=\"align-self-center text-center\">\n <div [class.is-invalid]=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n <div\n class=\"content d-flex justify-content-center\"\n *ngIf=\"uploads.length > 0\">\n <div class=\"align-self-center progress-container\">\n <div\n class=\"dropzone-uploadstates\"\n *ngFor=\"let file of uploads\">\n <div\n class=\"input-group upload-component upload-component-multiple\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\">\n <div class=\"form-control upload-progress border-secondary\">\n <div class=\"progress\">\n <div\n class=\"progress-bar\"\n [class.progress-bar-success]=\"file.progress === 100\"\n role=\"progressbar\"\n [attr.aria-valuenow]=\"file.progress\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n [style.width.%]=\"file.progress\">\n <span class=\"progress-text text-dark\">{{ file.name }}</span>\n </div>\n </div>\n </div>\n <div class=\"input-group-append\">\n <!-- image-preview-clear button -->\n <a\n class=\"btn\"\n (click)=\"cancel(file.uploadId)\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconDelete\"></span>\n </a>\n </div>\n </div>\n </div>\n </div>\n </div>\n <input\n #files\n id=\"{{ name }}_uploadinput\"\n type=\"file\"\n class=\"custom-file-input\"\n (click)=\"files.value = ''\"\n (uploadxState)=\"onUpload($event)\"\n [disabled]=\"HasQueueItem()\" />\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { AsyncPipe, NgClass, NgIf } from '@angular/common';\nimport {\n Component,\n Host,\n Injector,\n NgZone,\n Optional,\n Renderer2,\n forwardRef,\n} from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacUploadSingleCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n/**\n * Upload Komponten\n * @see https://github.com/kukhariev/ngx-uploadx/\n */\n@Component({\n selector: 'sac-upload',\n templateUrl: './upload.html',\n styleUrls: ['./upload.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacUploadComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacUploadComponent),\n },\n ],\n standalone: true,\n imports: [\n NgIf,\n NgClass,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacUploadComponent extends SacUploadSingleCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n * @param renderer Angular rendering engine\n * @param ngZone ngZone to manage external javascripts\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector,\n renderer: Renderer2,\n ngZone: NgZone\n ) {\n super(formLayout, injector, renderer, ngZone);\n }\n\n // #endregion Constructors\n}\n","<div\n id=\"{{ name }}\"\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\n id=\"{{ name }}_label\"\n for=\"{{ name }}_uploadinput\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n class=\"input-group upload-component upload-single\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\"\n [class.is-invalid]=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n <div class=\"input-group-prepend\">\n <!-- image-preview-input -->\n <div\n class=\"btn upload-input custom-file\"\n [class.disabled]=\"HasQueueItem()\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <i\n class=\"pr-2\"\n [ngClass]=\"IconBrowse\"></i>\n <span class=\"upload-browse\">{{ buttonbrowse ? buttonbrowse : (lngResourceService.GetString(validationKeyService.UploadButtonBrowse) | async) }}</span>\n <input\n type=\"file\"\n id=\"{{ name }}_uploadinput\"\n class=\"custom-file-input\"\n #files\n (click)=\"files.value = ''\"\n (uploadxState)=\"onUpload($event)\"\n multiple\n [disabled]=\"HasQueueItem()\" />\n </div>\n </div>\n <div\n class=\"form-control upload-progress\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n [class.is-invalid]=\"invalid && (dirty || touched)\">\n <div class=\"progress\">\n <div\n class=\"progress-bar\"\n [class.progress-bar-success]=\"Progress() === 100\"\n role=\"progressbar\"\n [attr.aria-valuenow]=\"Progress()\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n [style.width.%]=\"Progress()\">\n <span class=\"progress-text text-dark\">{{ Filename() | async }}</span>\n </div>\n </div>\n </div>\n <!-- <input type=\"textimage-preview-filename\" class=\"form-control image-preview-filename\" disabled=\"disabled\"> --><!-- don't give a name === doesn't send on POST/GET -->\n <div class=\"input-group-append\">\n <!-- image-preview-clear button -->\n <button\n class=\"btn\"\n (click)=\"cancelAll()\"\n [attr.disabled]=\"HasQueueItem() === false ? 'disabled' : null\"\n [class.disabled]=\"HasQueueItem() === false ? 'disabled' : null\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [ngClass]=\"IconDelete\"></span>\n </button>\n <button\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && IsPaused() === false)\"\n class=\"btn\"\n (click)=\"pauseAll()\"\n [attr.disabled]=\"IsUploading() === false ? 'disabled' : null\"\n [class.disabled]=\"IsUploading() === false ? 'disabled' : null\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [ngClass]=\"IconPause\"></span>\n </button>\n <button\n *ngIf=\"autoupload && enablepause && IsPaused()\"\n class=\"btn\"\n (click)=\"uploadAll()\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [ngClass]=\"IconContinue\"></span>\n </button>\n <button\n *ngIf=\"autoupload === false\"\n class=\"btn text-nowrap\"\n (click)=\"uploadAll()\"\n [attr.disabled]=\"IsStateToUpload() === false ? 'disabled' : null\"\n [class.disabled]=\"IsStateToUpload() === false ? 'disabled' : null\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span\n [ngClass]=\"IconUpload\"\n class=\"pr-2\"></span\n >{{ buttonupload ? buttonupload : (lngResourceService.GetString(validationKeyService.UploadButtonUpload) | async) }}\n </button>\n </div>\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { AsyncPipe, NgClass, NgFor, NgIf } from '@angular/common';\nimport { Component, Host, Injector, NgZone, Optional, Renderer2, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacUploadMultipleCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Upload Komponente für den Upload mehrer Files\n * @see https://github.com/kukhariev/ngx-uploadx/\n */\n@Component({\n selector: 'sac-uploadmultiple',\n templateUrl: './uploadmultiple.html',\n styleUrls: ['./upload.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacUploadMultipleComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacUploadMultipleComponent),\n },\n ],\n standalone: true,\n imports: [\n NgIf,\n NgClass,\n NgFor,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacUploadMultipleComponent extends SacUploadMultipleCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n * @param renderer Angular rendering engine\n * @param ngZone ngZone to manage external javascripts\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector,\n renderer: Renderer2,\n ngZone: NgZone\n ) {\n super(formLayout, injector, renderer, ngZone);\n }\n\n // #endregion Constructors\n}\n","<div\n id=\"{{ name }}\"\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\n id=\"{{ name }}_label\"\n for=\"{{ name }}_uploadinput\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\">\n <div class=\"upload-component\">\n <div class=\"row\">\n <div class=\"col-12\">\n <div\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n [class.is-invalid]=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n <div\n class=\"btn-group\"\n [class.btn-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.btn-group-lg]=\"componentHeight === ControlHeight.Large\">\n <div\n class=\"btn upload-input custom-file\"\n [class.disabled]=\"maxfiles > 0 && uploads.length >= maxfiles\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <i\n [ngClass]=\"IconBrowse\"\n class=\"pr-2\"></i>\n <span class=\"upload-browse\">{{\n buttonbrowse ? buttonbrowse : (lngResourceService.GetString(validationKeyService.UploadButtonBrowse) | async)\n }}</span>\n <input\n type=\"file\"\n id=\"{{ name }}_uploadinput\"\n class=\"custom-file-input\"\n #files\n (click)=\"files.value = ''\"\n (uploadxState)=\"onUpload($event)\"\n multiple\n [disabled]=\"maxfiles > 0 && uploads.length >= maxfiles\" />\n </div>\n\n <div\n class=\"btn-group\"\n [class.btn-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.btn-group-lg]=\"componentHeight === ControlHeight.Large\">\n <!-- image-preview-clear button -->\n <button\n class=\"btn\"\n (click)=\"cancelAll()\"\n [attr.disabled]=\"HasQueueItem() === false ? 'disabled' : null\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [ngClass]=\"IconDelete\"></span>\n </button>\n <button\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && IsPaused() === false)\"\n class=\"btn\"\n (click)=\"pauseAll()\"\n [attr.disabled]=\"IsUploading() === false ? 'disabled' : null\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [ngClass]=\"IconPause\"></span>\n </button>\n <button\n *ngIf=\"autoupload && enablepause && IsPaused() === true\"\n class=\"btn\"\n (click)=\"uploadAll()\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [ngClass]=\"IconContinue\"></span>\n </button>\n <button\n *ngIf=\"autoupload === false\"\n class=\"btn text-nowrap\"\n (click)=\"uploadAll()\"\n [attr.disabled]=\"IsStateToUpload() === false ? 'disabled' : null\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span\n [ngClass]=\"IconUpload\"\n class=\"pr-2\"></span\n >{{ buttonupload ? buttonupload : (lngResourceService.GetString(validationKeyService.UploadButtonUpload) | async) }}\n </button>\n </div>\n </div>\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n </div>\n\n <div\n *ngFor=\"let file of uploads\"\n style=\"margin-top: 5px\">\n <div\n class=\"input-group upload-component upload-multiple\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\">\n <div\n class=\"form-control upload-progress\"\n [class.is-invalid]=\"invalid && (dirty || touched)\">\n <div class=\"progress\">\n <div\n class=\"progress-bar\"\n [class.progress-bar-success]=\"file.progress === 100\"\n role=\"progressbar\"\n [attr.aria-valuenow]=\"file.progress\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n [style.width.%]=\"file.progress\">\n <span class=\"progress-text text-dark\">{{ file.name }}</span>\n </div>\n </div>\n </div>\n <div class=\"input-group-append\">\n <!-- image-preview-clear button -->\n <button\n class=\"btn\"\n (click)=\"cancel(file.uploadId)\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconDelete\"></span>\n </button>\n <button\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && file.status !== 'paused')\"\n class=\"btn\"\n (click)=\"pause(file.uploadId)\"\n [attr.disabled]=\"file.status !== 'uploading' ? 'disabled' : null\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconPause\"></span>\n </button>\n <button\n *ngIf=\"autoupload && enablepause && file.status === 'paused'\"\n class=\"btn\"\n (click)=\"upload(file.uploadId)\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconContinue\"></span>\n </button>\n <button\n *ngIf=\"autoupload === false\"\n class=\"btn text-nowrap\"\n (click)=\"upload(file.uploadId)\"\n [attr.disabled]=\"file.status !== 'added' && file.status !== 'paused' ? 'disabled' : null\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span\n [ngClass]=\"IconUpload\"\n class=\"pr-2\"></span\n >{{ buttonupload ? buttonupload : (lngResourceService.GetString(validationKeyService.UploadButtonUpload) | async) }}\n </button>\n </div>\n </div>\n </div>\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { SacDropzoneMultipleComponent } from './dropzonemultiple';\nimport { SacDropzoneSingleComponent } from './dropzonesingle';\nimport { SacUploadComponent } from './upload';\nimport { SacUploadMultipleComponent } from './uploadmultiple';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n SacUploadComponent,\n SacUploadMultipleComponent,\n SacDropzoneSingleComponent,\n SacDropzoneMultipleComponent,\n ],\n exports: [\n SacUploadComponent,\n SacUploadMultipleComponent,\n SacDropzoneSingleComponent,\n SacDropzoneMultipleComponent,\n ],\n})\nexport class SACBootstrap4UploadModule {}\n","import { AsyncPipe, NgFor, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacValidationSummaryCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormDirective } from '../form/form';\n\n/**\n * Validation Summary Kompontente\n */\n@Component({\n selector: 'sac-validationsummary',\n templateUrl: './validationsummary.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacValidationSummaryComponent,\n },\n ],\n standalone: true,\n imports: [NgIf, NgFor, AsyncPipe],\n})\nexport class SacValidationSummaryComponent extends SacValidationSummaryCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formControl Instance of Form Component to receive invalid form controls\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() parentForm: SacFormDirective,\n injector: Injector\n ) {\n super(parentForm, injector);\n }\n\n // #endregion Constructors\n}\n","<div class=\"alert alert-danger\" role=\"alert\" *ngIf=\"hasErrors\">\n <ul class=\"mb-0\">\n <li *ngFor=\"let error of formErrors\">{{error | async}}</li>\n </ul>\n</div>\n","import { NgModule } from '@angular/core';\nimport { SacValidationSummaryComponent } from './validationsummary';\nimport { CommonModule } from '@angular/common';\n\n@NgModule({\n imports: [\n CommonModule,\n SacValidationSummaryComponent\n ],\n exports: [SacValidationSummaryComponent]\n})\nexport class SACBootstrap4ValidationSummaryModule { }\n","import { Component } from '@angular/core';\nimport { SacWizardItemCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Wizard Komponente Item\n */\n@Component({\n selector: 'sac-wizarditem',\n templateUrl: './wizarditem.html',\n standalone: true,\n})\nexport class SacWizardItemComponent extends SacWizardItemCommon {}\n","","import { Component, ContentChildren, QueryList } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport {\n SacWizardCommon,\n SacWizardItemCommon,\n} from '@simpleangularcontrols/sac-common';\nimport { SacWizardItemComponent } from './wizarditem';\nimport { NgFor, NgClass, NgStyle } from '@angular/common';\n\n/**\n * Wizard Komponente\n */\n@Component({\n selector: 'sac-wizard',\n templateUrl: './wizard.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacWizardComponent },\n ],\n standalone: true,\n imports: [\n NgFor,\n NgClass,\n NgStyle,\n ],\n})\nexport class SacWizardComponent extends SacWizardCommon {\n /**\n * Wizard Items\n */\n @ContentChildren(SacWizardItemComponent)\n _wizardItems: QueryList<SacWizardItemComponent>;\n\n /**\n * Gibt die Wizard Items zurück\n * @returns Collection von WizardItems\n */\n wizardItems(): QueryList<SacWizardItemCommon> {\n return this._wizardItems as QueryList<SacWizardItemCommon>;\n }\n}\n","<ul class=\"nav nav-wizard\" role=\"tablist\">\n <li\n *ngFor=\"let item of _wizardItems\"\n class=\"nav-item\"\n [ngClass]=\"{ 'active': item.active, 'disabled': item.disabled, 'success': item.iscomplete }\"\n [ngStyle]=\"{'cursor': item.disabled ? 'not-allowed' : 'pointer'}\"\n >\n <a role=\"tab\" (click)=\"selectStep(item)\">\n <div class=\"circle\">\n <span class=\"step\"></span>\n </div>\n </a>\n <div class=\"info\">\n <a (click)=\"selectStep(item)\">{{item.label}}</a>\n </div>\n </li>\n</ul>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SacWizardComponent } from './wizard';\nimport { SacWizardItemComponent } from './wizarditem';\n\n@NgModule({\n imports: [\n CommonModule,\n SacWizardComponent, SacWizardItemComponent\n ],\n exports: [SacWizardComponent, SacWizardItemComponent]\n})\nexport class SACBootstrap4WizardModule { }\n","/*\n * Public API Surface of sac-bootstrap4\n */\nexport * from './components/browser/browser.module';\n\nexport * from './controls/buttons/button.module';\n\nexport * from './controls/checkbox/checkbox.module';\n\nexport { SACBootstrap4ConfirmModule, ServiceConfirm } from './controls/confirm/confirm.module';\n\nexport * from './controls/contextmenu/contextmenu.module';\n\nexport * from './controls/datetime/datetime.module';\n\nexport * from './controls/dialog/dialog.module';\n\nexport * from './controls/form/form';\n\nexport * from './controls/form/form.module';\n\nexport * from './controls/form/inheritform.directive';\n\nexport * from './controls/grid/grid.module';\n\nexport * from './controls/input/input.module';\n\nexport * from './controls/layout/layout.module';\n\nexport * from './controls/list/dropdown.module';\n\nexport * from './controls/list/list.module';\n\nexport * from './controls/multilanguage/multilanguage.module';\n\nexport * from './controls/static/staticlabel.module';\n\nexport * from './controls/tabs/tabs.module';\n\nexport * from './controls/tinymce/tinymce.module';\n\nexport * from './controls/tooltip/tooltip.module';\n\nexport * from './controls/treeview/treeview.module';\n\nexport * from './controls/upload/upload.module';\n\nexport * from './controls/validation/validationsummary.module';\n\nexport * from './controls/wizard/wizard.module';\n\n// Export Controls\nexport * from './controls/buttons/button';\n\nexport * from './controls/checkbox/checkbox';\n\nexport * from './controls/checkbox/radiobutton';\n\nexport * from './controls/checkbox/radiobuttons';\n\nexport * from './controls/confirm/confirm';\n\nexport * from './controls/contextmenu/contextmenu';\n\nexport * from './controls/contextmenu/contextmenuanchor';\n\nexport * from './controls/contextmenu/contextmenuitembutton';\n\nexport * from './controls/contextmenu/contextmenuitemsplitter';\n\nexport * from './controls/datetime/date';\n\nexport * from './controls/datetime/dateselector';\n\nexport * from './controls/datetime/datetime';\n\nexport * from './controls/datetime/time';\n\nexport * from './controls/dialog/dialog';\n\nexport * from './controls/form/form';\n\nexport * from './controls/form/inheritform.directive';\n\nexport * from './controls/grid/grid';\n\nexport * from './controls/grid/gridbutton';\n\nexport * from './controls/grid/gridcolumn';\n\nexport * from './controls/grid/gridcolumnaction';\n\nexport * from './controls/grid/gridimage';\n\nexport * from './controls/grid/paging';\n\nexport * from './controls/input/input';\n\nexport * from './controls/input/inputarea';\n\nexport * from './controls/input/inputcurrency';\n\nexport * from './controls/input/inputdecimal';\n\nexport * from './controls/input/inputemail';\n\nexport * from './controls/input/inputinteger';\n\nexport * from './controls/input/inputpassword';\n\nexport * from './controls/input/inputsearch';\n\nexport * from './controls/layout/formlayout.directive';\n\nexport * from './controls/layout/tocontrolheight.pipe';\n\nexport * from './controls/layout/tocontrolwidthcss.pipe';\n\nexport * from './controls/layout/tolabelheight.pipe';\n\nexport * from './controls/layout/tolabelwidthcss.pipe';\n\nexport * from './controls/list/dropdown';\n\nexport * from './controls/list/listbox';\n\nexport * from './controls/multilanguage/multilanguageinput';\n\nexport * from './controls/multilanguage/multilanguageinputarea';\n\nexport * from './controls/static/formcontainer';\n\nexport * from './controls/static/staticlabel';\n\nexport * from './controls/tabs/tab';\n\nexport * from './controls/tabs/tabitem';\n\nexport * from './controls/tinymce/tinymce';\n\nexport * from './controls/tooltip/tooltip';\n\nexport * from './controls/treeview/treeview';\n\nexport * from './controls/upload/dropzonemultiple';\n\nexport * from './controls/upload/dropzonesingle';\n\nexport * from './controls/upload/upload';\n\nexport * from './controls/upload/uploadmultiple';\n\nexport * from './controls/validation/validationsummary';\n\nexport * from './controls/wizard/wizard';\n\nexport * from './controls/wizard/wizarditem';\n\n// Export Components\nexport * from './components/browser/browser';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1.SacFormLayoutDirective","i2.ServiceConfirm","i3","i1.SacRadiobuttonsComponent","i2.SacFormLayoutDirective","i1","i1.SacGridComponent","i2","i1.SacFormDirective"],"mappings":"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"}
1
+ {"version":3,"file":"simpleangularcontrols-sac-bootstrap4.mjs","sources":["../../../projects/sac-bootstrap4/src/controls/buttons/button.ts","../../../projects/sac-bootstrap4/src/controls/buttons/button.html","../../../projects/sac-bootstrap4/src/controls/dialog/dialog.ts","../../../projects/sac-bootstrap4/src/controls/dialog/dialog.html","../../../projects/sac-bootstrap4/src/controls/confirm/confirm.ts","../../../projects/sac-bootstrap4/src/controls/confirm/confirm.html","../../../projects/sac-bootstrap4/src/controls/confirm/confirm.service.ts","../../../projects/sac-bootstrap4/src/controls/contextmenu/contextmenuanchor.ts","../../../projects/sac-bootstrap4/src/controls/contextmenu/contextmenucontainer.ts","../../../projects/sac-bootstrap4/src/controls/contextmenu/contextmenu.ts","../../../projects/sac-bootstrap4/src/controls/contextmenu/contextmenu.html","../../../projects/sac-bootstrap4/src/controls/contextmenu/contextmenuitembutton.ts","../../../projects/sac-bootstrap4/src/controls/contextmenu/contextmenuitembutton.html","../../../projects/sac-bootstrap4/src/controls/contextmenu/contextmenuitemsplitter.ts","../../../projects/sac-bootstrap4/src/controls/contextmenu/contextmenuitemsplitter.html","../../../projects/sac-bootstrap4/src/controls/layout/tocontrolheight.pipe.ts","../../../projects/sac-bootstrap4/src/controls/layout/tocontrolwidthcss.pipe.ts","../../../projects/sac-bootstrap4/src/controls/layout/tolabelheight.pipe.ts","../../../projects/sac-bootstrap4/src/controls/layout/tolabelwidthcss.pipe.ts","../../../projects/sac-bootstrap4/src/controls/tooltip/tooltip.ts","../../../projects/sac-bootstrap4/src/controls/tooltip/tooltip.html","../../../projects/sac-bootstrap4/src/controls/layout/formlayout.directive.ts","../../../projects/sac-bootstrap4/src/controls/upload/dropzonemultiple.ts","../../../projects/sac-bootstrap4/src/controls/upload/dropzonemultiple.html","../../../projects/sac-bootstrap4/src/components/browser/browser.ts","../../../projects/sac-bootstrap4/src/components/browser/browser.html","../../../projects/sac-bootstrap4/src/components/browser/browser.module.ts","../../../projects/sac-bootstrap4/src/controls/buttons/button.module.ts","../../../projects/sac-bootstrap4/src/controls/checkbox/checkbox.ts","../../../projects/sac-bootstrap4/src/controls/checkbox/checkbox.html","../../../projects/sac-bootstrap4/src/controls/checkbox/radiobuttons.ts","../../../projects/sac-bootstrap4/src/controls/checkbox/radiobuttons.html","../../../projects/sac-bootstrap4/src/controls/checkbox/radiobutton.ts","../../../projects/sac-bootstrap4/src/controls/checkbox/radiobutton.html","../../../projects/sac-bootstrap4/src/controls/checkbox/checkbox.module.ts","../../../projects/sac-bootstrap4/src/controls/confirm/confirm.module.ts","../../../projects/sac-bootstrap4/src/controls/contextmenu/contextmenu.module.ts","../../../projects/sac-bootstrap4/src/controls/datetime/dateselector.ts","../../../projects/sac-bootstrap4/src/controls/datetime/dateselector.html","../../../projects/sac-bootstrap4/src/controls/datetime/date.ts","../../../projects/sac-bootstrap4/src/controls/datetime/date.html","../../../projects/sac-bootstrap4/src/controls/datetime/datetime.ts","../../../projects/sac-bootstrap4/src/controls/datetime/datetime.html","../../../projects/sac-bootstrap4/src/controls/datetime/time.ts","../../../projects/sac-bootstrap4/src/controls/datetime/time.html","../../../projects/sac-bootstrap4/src/controls/datetime/datetime.module.ts","../../../projects/sac-bootstrap4/src/controls/dialog/dialog.module.ts","../../../projects/sac-bootstrap4/src/controls/form/form.ts","../../../projects/sac-bootstrap4/src/controls/form/inheritform.directive.ts","../../../projects/sac-bootstrap4/src/controls/form/form.module.ts","../../../projects/sac-bootstrap4/src/controls/grid/paging.ts","../../../projects/sac-bootstrap4/src/controls/grid/paging.html","../../../projects/sac-bootstrap4/src/controls/grid/grid.ts","../../../projects/sac-bootstrap4/src/controls/grid/grid.html","../../../projects/sac-bootstrap4/src/controls/grid/gridbutton.ts","../../../projects/sac-bootstrap4/src/controls/grid/gridbutton.html","../../../projects/sac-bootstrap4/src/controls/grid/gridcolumn.ts","../../../projects/sac-bootstrap4/src/controls/grid/gridcolumn.html","../../../projects/sac-bootstrap4/src/controls/grid/gridcolumnaction.ts","../../../projects/sac-bootstrap4/src/controls/grid/gridcolumnaction.html","../../../projects/sac-bootstrap4/src/controls/grid/gridimage.ts","../../../projects/sac-bootstrap4/src/controls/grid/gridimage.html","../../../projects/sac-bootstrap4/src/controls/grid/grid.module.ts","../../../projects/sac-bootstrap4/src/controls/input/input.ts","../../../projects/sac-bootstrap4/src/controls/input/input.html","../../../projects/sac-bootstrap4/src/controls/input/inputarea.ts","../../../projects/sac-bootstrap4/src/controls/input/inputarea.html","../../../projects/sac-bootstrap4/src/controls/input/inputcurrency.ts","../../../projects/sac-bootstrap4/src/controls/input/inputcurrency.html","../../../projects/sac-bootstrap4/src/controls/input/inputdecimal.ts","../../../projects/sac-bootstrap4/src/controls/input/inputdecimal.html","../../../projects/sac-bootstrap4/src/controls/input/inputemail.ts","../../../projects/sac-bootstrap4/src/controls/input/inputemail.html","../../../projects/sac-bootstrap4/src/controls/input/inputinteger.ts","../../../projects/sac-bootstrap4/src/controls/input/inputinteger.html","../../../projects/sac-bootstrap4/src/controls/input/inputpassword.ts","../../../projects/sac-bootstrap4/src/controls/input/inputpassword.html","../../../projects/sac-bootstrap4/src/controls/input/inputsearch.ts","../../../projects/sac-bootstrap4/src/controls/input/inputsearch.html","../../../projects/sac-bootstrap4/src/controls/input/input.module.ts","../../../projects/sac-bootstrap4/src/controls/layout/layout.module.ts","../../../projects/sac-bootstrap4/src/controls/list/dropdown.ts","../../../projects/sac-bootstrap4/src/controls/list/dropdown.html","../../../projects/sac-bootstrap4/src/controls/list/dropdown.module.ts","../../../projects/sac-bootstrap4/src/controls/list/listbox.ts","../../../projects/sac-bootstrap4/src/controls/list/listbox.html","../../../projects/sac-bootstrap4/src/controls/list/list.module.ts","../../../projects/sac-bootstrap4/src/controls/multilanguage/multilanguagemenuanchor.ts","../../../projects/sac-bootstrap4/src/controls/multilanguage/multilanguagemenucontainer.ts","../../../projects/sac-bootstrap4/src/controls/multilanguage/multilanguagemenu.ts","../../../projects/sac-bootstrap4/src/controls/multilanguage/multilanguagemenu.html","../../../projects/sac-bootstrap4/src/controls/multilanguage/multilanguagemenuitembutton.ts","../../../projects/sac-bootstrap4/src/controls/multilanguage/multilanguagemenuitembutton.html","../../../projects/sac-bootstrap4/src/controls/multilanguage/multilanguageinput.ts","../../../projects/sac-bootstrap4/src/controls/multilanguage/multilanguageinput.html","../../../projects/sac-bootstrap4/src/controls/multilanguage/multilanguageinputarea.ts","../../../projects/sac-bootstrap4/src/controls/multilanguage/multilanguageinputarea.html","../../../projects/sac-bootstrap4/src/controls/multilanguage/multilanguage.module.ts","../../../projects/sac-bootstrap4/src/controls/static/formcontainer.ts","../../../projects/sac-bootstrap4/src/controls/static/formcontainer.html","../../../projects/sac-bootstrap4/src/controls/static/staticlabel.ts","../../../projects/sac-bootstrap4/src/controls/static/staticlabel.html","../../../projects/sac-bootstrap4/src/controls/static/staticlabel.module.ts","../../../projects/sac-bootstrap4/src/controls/tabs/tabitem.ts","../../../projects/sac-bootstrap4/src/controls/tabs/tabitem.html","../../../projects/sac-bootstrap4/src/controls/tabs/tab.ts","../../../projects/sac-bootstrap4/src/controls/tabs/tab.html","../../../projects/sac-bootstrap4/src/controls/tabs/tabs.module.ts","../../../projects/sac-bootstrap4/src/controls/tinymce/tinymce.ts","../../../projects/sac-bootstrap4/src/controls/tinymce/tinymce.html","../../../projects/sac-bootstrap4/src/controls/tinymce/tinymce.module.ts","../../../projects/sac-bootstrap4/src/controls/tooltip/tooltip.module.ts","../../../projects/sac-bootstrap4/src/controls/treeview/treeview.ts","../../../projects/sac-bootstrap4/src/controls/treeview/treeview.html","../../../projects/sac-bootstrap4/src/controls/treeview/treeview.module.ts","../../../projects/sac-bootstrap4/src/controls/upload/dropzonesingle.ts","../../../projects/sac-bootstrap4/src/controls/upload/dropzonesingle.html","../../../projects/sac-bootstrap4/src/controls/upload/upload.ts","../../../projects/sac-bootstrap4/src/controls/upload/upload.html","../../../projects/sac-bootstrap4/src/controls/upload/uploadmultiple.ts","../../../projects/sac-bootstrap4/src/controls/upload/uploadmultiple.html","../../../projects/sac-bootstrap4/src/controls/upload/upload.module.ts","../../../projects/sac-bootstrap4/src/controls/validation/validationsummary.ts","../../../projects/sac-bootstrap4/src/controls/validation/validationsummary.html","../../../projects/sac-bootstrap4/src/controls/validation/validationsummary.module.ts","../../../projects/sac-bootstrap4/src/controls/wizard/wizarditem.ts","../../../projects/sac-bootstrap4/src/controls/wizard/wizarditem.html","../../../projects/sac-bootstrap4/src/controls/wizard/wizard.ts","../../../projects/sac-bootstrap4/src/controls/wizard/wizard.html","../../../projects/sac-bootstrap4/src/controls/wizard/wizard.module.ts","../../../projects/sac-bootstrap4/src/public_api.ts","../../../projects/sac-bootstrap4/src/simpleangularcontrols-sac-bootstrap4.ts"],"sourcesContent":["import { Component} from '@angular/core';\nimport { SacButtonCommon } from '@simpleangularcontrols/sac-common';\nimport { NgIf, NgClass } from '@angular/common';\n\n/**\n * Button Component\n * \n * <example-url>http://localhost/demo/mysample.component.html</example-url>\n */\n@Component({\n selector: 'sac-button',\n templateUrl: './button.html',\n standalone: true,\n imports: [NgIf, NgClass],\n})\nexport class SacButtonComponent extends SacButtonCommon {\n\n}\n","<button\n [id]=\"name\"\n type=\"button\"\n class=\"btn d-flex justify-content-center align-items-center\"\n [attr.disabled]=\"_isdisabled || isloading ? 'disabled' : null\"\n (click)=\"buttonClick()\"\n [class.btn-primary]=\"role === 'primary'\"\n [class.btn-secondary]=\"role === 'secondary' || role === 'default'\"\n [class.btn-success]=\"role === 'success'\"\n [class.btn-danger]=\"role === 'danger'\"\n [class.btn-warning]=\"role === 'warning'\"\n [class.btn-info]=\"role === 'info'\"\n [class.btn-link]=\"role === 'link'\"\n>\n <span\n *ngIf=\"isloading\"\n class=\"spinner-border spinner-border-sm mr-2\"\n role=\"status\"\n aria-hidden=\"true\"\n ></span>\n <i *ngIf=\"!isloading && icon !== ''\" [ngClass]=\"icon\" [class.mr-2]=\"text\"></i\n >{{text}}\n</button>\n","import {\n ChangeDetectorRef,\n Component,\n ElementRef,\n OnDestroy,\n OnInit,\n} from '@angular/core';\nimport { SacDialogCommon } from '@simpleangularcontrols/sac-common';\nimport { NgIf } from '@angular/common';\n\n/**\n * Dialog Komponente\n */\n@Component({\n selector: 'sac-dialog',\n templateUrl: './dialog.html',\n standalone: true,\n imports: [NgIf],\n})\nexport class SacDialogComponent\n extends SacDialogCommon\n implements OnInit, OnDestroy\n{\n /**\n * Referenz auf DOM Element\n */\n private element: any;\n\n /**\n * Konstruktor\n * @param el DOM Element Referenz\n * @param cdRef Change Detection Service\n */\n constructor(el: ElementRef, cdRef: ChangeDetectorRef) {\n super(cdRef);\n\n this.element = el.nativeElement;\n }\n\n /**\n * Event wenn Komponente initialisiert wird\n */\n ngOnInit() {\n // Element an Body für korrektes Styling unter Bootstrap 3 verschieben\n document.body.appendChild(this.element);\n }\n\n /**\n * Event wenn Element entfernt wird\n */\n ngOnDestroy() {\n this.hide();\n if (document.body.contains(this.element)) {\n document.body.removeChild(this.element);\n }\n super.ngOnDestroy();\n }\n}\n","<div\n #dialog\n class=\"modal show\"\n style=\"display: block\"\n tabindex=\"-1\"\n role=\"dialog\"\n *ngIf=\"_show\"\n>\n <div\n class=\"modal-dialog modal-lg modal-dialog-centered modal-dialog-scrollable\"\n role=\"document\"\n [class.modal-xl]=\"_size === 'extralarge'\"\n [class.modal-lg]=\"_size === 'large'\"\n [class.modal-sm]=\"_size === 'small'\"\n >\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <h5 class=\"modal-title\">{{title}}</h5>\n <button\n type=\"button\"\n class=\"close\"\n data-dismiss=\"modal\"\n aria-label=\"Close\"\n (click)=\"hide()\"\n *ngIf=\"closebutton\"\n >\n <span aria-hidden=\"true\">&times;</span>\n </button>\n </div>\n <div class=\"modal-body\">\n <ng-content select=\"[dialogbody]\"></ng-content>\n </div>\n <div class=\"modal-footer\">\n <ng-content select=\"[dialogfooter]\"></ng-content>\n </div>\n </div>\n <!-- /.modal-content -->\n </div>\n <!-- /.modal-dialog -->\n</div>\n<!-- /.modal -->\n<div class=\"modal-backdrop show\" *ngIf=\"_show && backdrop\" #backdrop></div>\n","import { Component } from '@angular/core';\nimport { SacConfirmCommon } from '@simpleangularcontrols/sac-common';\nimport { SacButtonComponent } from '../buttons/button';\nimport { NgIf, NgFor } from '@angular/common';\nimport { SacDialogComponent } from '../dialog/dialog';\n\n/**\n * Confirm Komponente\n */\n@Component({\n selector: 'sac-confirm',\n templateUrl: './confirm.html',\n standalone: true,\n imports: [\n SacDialogComponent,\n NgIf,\n NgFor,\n SacButtonComponent,\n ],\n})\nexport class SacConfirmComponent extends SacConfirmCommon {}\n","<sac-dialog\n name=\"confirmDialog\"\n [(isvisible)]=\"isvisible\"\n [title]=\"title\"\n [allowesc]=\"false\"\n [closebutton]=\"false\"\n dialogsize=\"small\"\n>\n <div dialogbody>\n <div class=\"media\">\n <img\n [attr.src]=\"image\"\n class=\"align-self-center mr-3\"\n *ngIf=\"hasImage()\"\n />\n <div class=\"media-body\">{{message}}</div>\n </div>\n </div>\n <ng-container dialogfooter>\n <ng-container *ngFor=\"let button of buttons\">\n <sac-button\n [name]=\"button.key\"\n [text]=\"button.text\"\n [role]=\"button.role || 'default'\"\n (clicked)=\"confirm(button.key)\"\n ></sac-button>\n </ng-container>\n </ng-container>\n</sac-dialog>\n","import {\n ApplicationRef,\n ComponentFactory,\n ComponentFactoryResolver,\n EventEmitter,\n Inject,\n Injectable,\n Injector,\n} from '@angular/core';\nimport {\n SacConfirmButton,\n ServiceConfirmCommon,\n isDefined,\n} from '@simpleangularcontrols/sac-common';\nimport { forkJoin } from 'rxjs';\nimport { take } from 'rxjs/operators';\nimport { SacConfirmComponent } from './confirm';\n\n/**\n * Service für Confirm Messages in TypeScript Code\n *\n * @example\n * // Beispiel für ConfirmMessage mit Standard Buttons (Ja / Nein).\n * confirmService.ConfirmMessage('titel', 'frage').subscribe(action => { // Action Code });\n *\n * @example\n * // Beispiel für ConfirmMessage mit eigenen Buttons\n * let buttons: SacConfirmButton[] = [];\n * buttons.push(new SacConfirmButton('ActionKey','Text Primary'));\n * buttons.push(new SacConfirmButton('ActionKey2','Text Button 2'));\n * confirmService.ConfirmMessage('titel', 'frage', buttons).subscribe(action => { // Action Code });\n */\n@Injectable()\nexport class ServiceConfirm extends ServiceConfirmCommon {\n // #region Properties\n\n /**\n * Collection von Buttons die angezeigt werden müssen.\n */\n private buttons: SacConfirmButton[] = [];\n /**\n * Message die in Dialog angezeigt werden soll.\n */\n private message: string = '';\n /**\n * Titel der im Dialog angezeigt werden soll.\n */\n private title: string = '';\n\n // #endregion Properties\n\n // #region Constructors\n\n /**\n * Konstruktor\n * @param componentFactoryResolver Component Factory Resolver Instanz\n * @param appRef Application Referenz. Wird benötigt um den Dialog am Body anzuhängen\n * @param injector Injector. Wird benötigt um den Dialog dynamisch zu erzeugen\n */\n constructor(\n @Inject(ComponentFactoryResolver)\n private componentFactoryResolver: ComponentFactoryResolver,\n appRef: ApplicationRef,\n injector: Injector\n ) {\n super(appRef, injector);\n }\n\n // #endregion Constructors\n\n // #region Public Methods\n\n /**\n * Confirm Dialog anzeigen\n * @param message Nachricht die angezeigt werden soll.\n * @returns EventEmitter mit Key des Buttons, welcher geklickt wurde.\n */\n public ConfirmMessage(\n title: string,\n message: string,\n buttons: SacConfirmButton[] = null\n ): EventEmitter<string> {\n this.title = title;\n this.message = message;\n\n // Default Buttons setzen, wenn keine Buttons angegeben sind\n if (!isDefined(buttons)) {\n this.buttons = [];\n\n forkJoin({\n button_yes: this.localisationService.GetString(\n this.validationKeyService.ConfirmDefaultButtonYes\n ),\n button_no: this.localisationService.GetString(\n this.validationKeyService.ConfirmDefaultButtonNo\n ),\n })\n .pipe(take(1))\n .subscribe((texte) => {\n this.buttons.push(\n new SacConfirmButton('yes', texte.button_yes, 'primary')\n );\n this.buttons.push(new SacConfirmButton('no', texte.button_no));\n });\n } else {\n this.buttons = buttons;\n }\n return super.Confirm();\n }\n\n /**\n * Erzeugen einer Component Factory für einen Dialog\n */\n public GetComponentFactory(): ComponentFactory<SacConfirmComponent> {\n return this.componentFactoryResolver.resolveComponentFactory(\n SacConfirmComponent\n );\n }\n\n // #endregion Public Methods\n\n // #region Protected Methods\n\n /**\n * Konfiguration des Dialogs\n * @param instance Instanz eines SacConfirm Dialogs\n */\n protected ConfigureDialog(instance: SacConfirmComponent) {\n // Text in Dialog setzen\n instance.title = this.title;\n instance.message = this.message;\n instance.buttons = this.buttons;\n instance.image = this.iconService.ConfirmDefaultImage;\n }\n\n // #endregion Protected Methods\n}\n","import { Directive, ElementRef, forwardRef } from '@angular/core';\nimport { SacContextmenuAnchorCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Anker Komponente für Context Menü. Wird zum positionieren des Context Menü in der Page benötigt.\n */\n@Directive({\n selector: '[sacContextMenuAnchor]',\n providers: [\n {\n provide: SacContextmenuAnchorCommon,\n useExisting: forwardRef(() => SacContextmenuAnchorDirective),\n },\n ],\n standalone: true,\n})\nexport class SacContextmenuAnchorDirective extends SacContextmenuAnchorCommon {\n // #region Constructors\n\n /**\n * Konstruktor\n * @param elementRef HTML DOM Referenz\n */\n constructor(elementRef: ElementRef<HTMLElement>) {\n super(elementRef);\n }\n\n // #endregion Constructors\n}\n","import { Directive, ElementRef, forwardRef } from '@angular/core';\nimport { SacContextMenuContrainerCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Marker Komponente für Context Menü\n */\n@Directive({\n selector: '[sacContextMenuContainer]',\n providers: [\n {\n provide: SacContextMenuContrainerCommon,\n useExisting: forwardRef(() => SacContextmenuContainerDirective),\n },\n ],\n standalone: true,\n})\nexport class SacContextmenuContainerDirective extends SacContextMenuContrainerCommon {\n // #region Constructors\n\n /**\n * Konstruktor\n * @param elementRef Referenz auf DOM Element\n */\n constructor(elementRef: ElementRef<HTMLElement>) {\n super(elementRef);\n }\n\n // #endregion Constructors\n}\n","import { SacContextmenuAnchorDirective } from './contextmenuanchor';\nimport { SacContextmenuContainerDirective } from './contextmenucontainer';\nimport { DOCUMENT, NgClass, NgTemplateOutlet } from '@angular/common';\nimport { Component, ElementRef, Inject, Injector, NgZone, Renderer2 } from '@angular/core';\nimport { SacContextmenuCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Component für Contextmenü\n */\n@Component({\n selector: 'sac-contextmenu',\n templateUrl: './contextmenu.html',\n standalone: true,\n imports: [NgClass, NgTemplateOutlet, SacContextmenuContainerDirective, SacContextmenuAnchorDirective],\n})\nexport class SacContextmenuComponent extends SacContextmenuCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param document Referenz auf HTML Document\n * @param ngZone Angular Zone Service\n * @param elementRef Referenz auf HTML Element der aktuellen Komponente\n * @param renderer Render Service von Angular\n * @param injector injector to resolve services\n */\n constructor(\n @Inject(DOCUMENT) document: any,\n ngZone: NgZone,\n elementRef: ElementRef<HTMLElement>,\n renderer: Renderer2,\n injector: Injector\n ) {\n super(document, ngZone, elementRef, renderer, injector);\n }\n\n // #endregion Constructors\n}\n","<div class=\"dropdown\" [ngClass]=\"cssclass\">\n <ng-container\n [ngTemplateOutlet]=\"buttontemplate || defaultButtonTemplate\"\n ></ng-container>\n\n <div\n class=\"dropdown-menu dropdown-menu-right\"\n sacContextMenuContainer\n [class.show]=\"isopen\"\n >\n <ng-content></ng-content>\n </div>\n</div>\n\n<ng-template #defaultButtonTemplate>\n <button\n sacContextMenuAnchor\n class=\"btn btn-sm btn-link text-secondary text-decoration-none\"\n type=\"button\"\n (click)=\"toggle()\"\n >\n <i [class]=\"IconContextMenu\"></i>\n </button>\n</ng-template>\n","import { NgClass, NgIf } from '@angular/common';\nimport { Component, forwardRef } from '@angular/core';\nimport { SacContextmenuItemButtonCommon, SacContextmenuItemCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Component for menu entry in context menu\n */\n@Component({\n selector: 'sac-contextmenubutton',\n templateUrl: './contextmenuitembutton.html',\n providers: [\n {\n provide: SacContextmenuItemCommon,\n useExisting: forwardRef(() => SacContextmenuItemButtonComponent),\n },\n ],\n standalone: true,\n imports: [NgIf, NgClass],\n})\nexport class SacContextmenuItemButtonComponent extends SacContextmenuItemButtonCommon {\n // #region Constructors\n\n /**\n * Constructor\n */\n constructor() {\n super();\n }\n\n // #endregion Constructors\n}\n","<button\n [id]=\"name\"\n type=\"button\"\n class=\"dropdown-item\"\n (click)=\"callaction($event)\"\n [class.disabled]=\"isdisabled\"\n [ngClass]=\"cssclass\"\n [attr.disabled]=\"isdisabled ? 'disabled' : null\">\n <div class=\"d-flex\">\n <div\n *ngIf=\"!isicondisabled\"\n style=\"min-width: 1.5rem\">\n <img\n *ngIf=\"image\"\n [src]=\"image\"\n class=\"align-baseline\" />\n <i\n *ngIf=\"icon\"\n [class]=\"iconstyle + ' ' + icon\"></i>\n </div>\n <div class=\"flex-grow-1\">{{ text }}</div>\n </div>\n</button>\n","import { Component, forwardRef } from '@angular/core';\nimport { SacContextmenuItemCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Splitter Komponente in Context Menü\n */\n@Component({\n selector: 'sac-contextmenusplitter',\n templateUrl: './contextmenuitemsplitter.html',\n standalone: true,\n providers: [\n {\n provide: SacContextmenuItemCommon,\n useExisting: forwardRef(() => SacContextmenuItemSplitterComponent),\n },\n ],\n})\nexport class SacContextmenuItemSplitterComponent extends SacContextmenuItemCommon {}\n","<div class=\"dropdown-divider\"></div>","import { Pipe, PipeTransform } from '@angular/core';\nimport { ControlHeight } from '@simpleangularcontrols/sac-common';\n\n@Pipe({\n name: 'toControlHeight',\n standalone: true,\n})\nexport class SacToControlHeightPipe implements PipeTransform {\n // #region Public Methods\n\n /**\n * Returns the CSS class that defines the height for the control\n * @param value ControlHeight value or null\n */\n public transform(value: ControlHeight | null): string {\n // Return default value\n if (!value) {\n return '';\n }\n\n switch (value) {\n case ControlHeight.Small:\n return 'form-control-sm';\n case ControlHeight.Large:\n return 'form-control-lg';\n default:\n return '';\n }\n }\n\n // #endregion Public Methods\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { ISacLabelSizes } from '@simpleangularcontrols/sac-common';\n\n@Pipe({\n name: 'toControlWidthCss',\n standalone: true,\n})\nexport class SacToControlWidthCssPipe implements PipeTransform {\n // #region Public Methods\n\n /**\n * Get CSS classes from label width configuration to set control size\n * @param value Configuration with grid columns for different viewports\n * @returns string with css classe for bootstrap3\n */\n public transform(value: ISacLabelSizes): string {\n const classes: string[] = [];\n\n if (value.labelSizeXs) {\n classes.push('col-' + this.calcControlSize(value.labelSizeXs));\n }\n\n if (value.labelSizeSm) {\n classes.push('col-sm-' + this.calcControlSize(value.labelSizeSm));\n }\n\n if (value.labelSizeMd) {\n classes.push('col-md-' + this.calcControlSize(value.labelSizeMd));\n }\n\n if (value.labelSizeLg) {\n classes.push('col-lg-' + this.calcControlSize(value.labelSizeLg));\n }\n\n if (value.labelSizeXl) {\n classes.push('col-xl-' + this.calcControlSize(value.labelSizeXl));\n }\n\n return classes.join(' ');\n }\n\n // #endregion Public Methods\n\n // #region Private Methods\n\n /**\n * calculate the control size\n * @param labelsize grid size of label\n * @returns grid size for control. should be between 1 and 12\n */\n private calcControlSize(labelsize: number) {\n if (labelsize === 12) {\n return 12;\n }\n\n if (!labelsize) {\n return 12;\n }\n\n return 12 - labelsize;\n }\n\n // #endregion Private Methods\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { ControlHeight } from '@simpleangularcontrols/sac-common';\n\n@Pipe({\n name: 'toLabelHeight',\n standalone: true,\n})\nexport class SacToLabelHeightPipe implements PipeTransform {\n // #region Public Methods\n\n /**\n * Returns the CSS class that defines the height for the control\n * @param value ControlHeight value or null\n */\n public transform(value: ControlHeight | null): string {\n // Return default value\n if (!value) {\n return '';\n }\n\n switch (value) {\n case ControlHeight.Small:\n return 'col-form-label-sm';\n case ControlHeight.Large:\n return 'col-form-label-lg';\n default:\n return '';\n }\n }\n\n // #endregion Public Methods\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { ISacLabelSizes } from '@simpleangularcontrols/sac-common';\n\n@Pipe({\n name: 'toLabelWidthCss',\n standalone: true,\n})\nexport class SacToLabelWidthCssPipe implements PipeTransform {\n // #region Public Methods\n\n /**\n * Get CSS classes from label width configuration to set label size\n * @param value Configuration with grid columns for different viewports\n * @returns string with css classe for bootstrap3\n */\n public transform(value: ISacLabelSizes): string {\n const classes: string[] = [];\n\n if (value.labelSizeXs) {\n classes.push('col-' + value.labelSizeXs);\n }\n\n if (value.labelSizeSm) {\n classes.push('col-sm-' + value.labelSizeSm);\n }\n\n if (value.labelSizeMd) {\n classes.push('col-md-' + value.labelSizeMd);\n }\n\n if (value.labelSizeLg) {\n classes.push('col-lg-' + value.labelSizeLg);\n }\n\n if (value.labelSizeXl) {\n classes.push('col-xl-' + value.labelSizeXl);\n }\n\n return classes.join(' ');\n }\n\n // #endregion Public Methods\n}\n","import { NgIf } from '@angular/common';\nimport { ChangeDetectorRef, Component, ElementRef } from '@angular/core';\nimport { SacTooltipCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Tooltip Komponente\n *\n * @example ToolTip Control\n *\n * <ngTooltip tooltiptext=\"Mein Tooltip\" [inlinemode]=\"true\">\n * <i class=\"tooltip\"></i>\n * </ngTooltip>\n *\n * @example ToolTip Control im Inline Mode. Style auf Icon kann auch in Klasse ausgelagert werden.\n *\n * <div class=\"form-inline\">\n * <ngInputSearch iconname=\"Suchen\"></ngInputSearch>\n * <ngTooltip tooltiptext=\"Mein Tooltip\" [inlinemode]=\"true\">\n * <i class=\"tooltip\" style=\"position: relative; left: 0; top: 3px; display: inline-block; margin-right: 10px;\"></i>\n * </ngTooltip>\n * </div>\n *\n */\n@Component({\n selector: 'sac-tooltip',\n templateUrl: './tooltip.html',\n standalone: true,\n imports: [NgIf],\n})\nexport class SacTooltipComponent extends SacTooltipCommon {\n // #region Constructors\n\n /**\n * Konstrukor\n * @param parent SacFormular Instanz\n * @param injector Component Injector\n */\n constructor(cdRef: ChangeDetectorRef, ref: ElementRef) {\n super(cdRef, ref);\n }\n\n // #endregion Constructors\n\n // #region Protected Methods\n\n /**\n * Padding Value for Bootstrap5 Tooltip Padding\n * @returns Static Padding Value for BS5\n */\n protected getTooltipOffset(): number {\n return 2;\n }\n\n // #endregion Protected Methods\n}\n","<div [style.display]=\"inlinemode ? 'inline' : null\">\n <div\n #container\n (mouseenter)=\"ShowTooltip()\"\n (mouseleave)=\"HideTooltip()\"\n [style.display]=\"inlinemode ? 'inline' : null\"\n >\n <ng-content></ng-content>\n </div>\n <div #tooltip *ngIf=\"IsTooltipVisible()\">\n <div\n [class.show]=\"IsTooltipContentVisible\"\n class=\"tooltip bs-tooltip-auto fade\"\n style=\"position: absolute\"\n [style.left.px]=\"LeftPos\"\n [style.top.px]=\"TopPos\"\n [class.top]=\"GetTooltipPosition() === TooltipPosition.top\"\n [class.left]=\"GetTooltipPosition() === TooltipPosition.left\"\n [class.right]=\"GetTooltipPosition() === TooltipPosition.right\"\n [class.bottom]=\"GetTooltipPosition() === TooltipPosition.bottom\"\n [attr.x-placement]=\"GetTooltipPosition() == TooltipPosition.right ? 'right' : GetTooltipPosition() == TooltipPosition.left ? 'left' : GetTooltipPosition() == TooltipPosition.top ? 'top' :GetTooltipPosition() == TooltipPosition.bottom ? 'bottom' : null\"\n >\n <div\n class=\"arrow\"\n style=\"position: absolute\"\n [style.top.px]=\"GetTooltipPosition() === TooltipPosition.left || GetTooltipPosition() === TooltipPosition.right ? (getToolTipHeight() / 2) - 6.5 : null\"\n [style.left.px]=\"GetTooltipPosition() === TooltipPosition.bottom || GetTooltipPosition() === TooltipPosition.top ? (getToolTipWidth() / 2) - 6.5 : null\"\n ></div>\n <div class=\"tooltip-inner\">{{tooltiptext}}</div>\n </div>\n </div>\n</div>\n","import { Directive } from '@angular/core';\nimport { SacFormLayoutCommon } from '@simpleangularcontrols/sac-common';\n\n@Directive({\n selector: '[sacFormLayout]',\n standalone: true,\n})\nexport class SacFormLayoutDirective extends SacFormLayoutCommon {}\n","import { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { AsyncPipe, NgClass, NgFor, NgIf } from '@angular/common';\nimport { Component, Host, Injector, NgZone, OnInit, Optional, Renderer2, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacDropzoneMultipleCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Dropzone Komponente für mehrere Uploads\n * @see https://github.com/kukhariev/ngx-uploadx/\n */\n@Component({\n selector: 'sac-dropzonemultiple',\n templateUrl: './dropzonemultiple.html',\n styleUrls: ['./dropzone.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacDropzoneMultipleComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacDropzoneMultipleComponent),\n },\n ],\n standalone: true,\n imports: [\n NgIf,\n NgClass,\n NgFor,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacTooltipComponent,\n SacToControlHeightPipe,\n ],\n})\nexport class SacDropzoneMultipleComponent extends SacDropzoneMultipleCommon implements OnInit {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n * @param renderer Angular rendering engine\n * @param ngZone ngZone to manage external javascripts\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector,\n renderer: Renderer2,\n ngZone: NgZone\n ) {\n super(formLayout, injector, renderer, ngZone);\n }\n\n // #endregion Constructors\n\n // #region Public Methods\n\n /**\n * Initialisiert das Control\n */\n public ngOnInit() {\n super.ngOnInit();\n }\n\n // #endregion Public Methods\n}\n","<div\n id=\"{{ name }}\"\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\n id=\"{{ name }}_label\"\n for=\"{{ name }}_uploadinput\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\"\n ><span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\"></span> </sac-tooltip\n ></label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n class=\"dropzone d-flex justify-content-center position-relative\"\n (drop)=\"dropHandler($event)\"\n (dragover)=\"onDragOver($event)\"\n (dragleave)=\"onDragLeave($event)\"\n [class.active]=\"active\"\n [style.min-height]=\"uploadheight\"\n [class.is-invalid]=\"invalid && (dirty || touched)\">\n <div\n class=\"content d-flex justify-content-center\"\n *ngIf=\"uploads.length === 0\">\n <div class=\"align-self-center text-center\">\n <div [class.is-invalid]=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n <div\n class=\"content d-flex justify-content-center\"\n *ngIf=\"uploads.length > 0\">\n <div class=\"align-self-center progress-container\">\n <div\n class=\"dropzone-uploadstates\"\n [class.mt-1]=\"i > 0\"\n *ngFor=\"let file of uploads; let i = index\">\n <div\n class=\"input-group upload-component upload-component-multiple\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\">\n <div class=\"form-control upload-progress border-secondary\">\n <div class=\"progress\">\n <div\n class=\"progress-bar\"\n [class.progress-bar-success]=\"file.progress === 100\"\n role=\"progressbar\"\n [attr.aria-valuenow]=\"file.progress\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n [style.width.%]=\"file.progress\">\n <span class=\"progress-text text-dark\">{{ file.name }}</span>\n </div>\n </div>\n </div>\n <div class=\"input-group-append\">\n <!-- image-preview-clear button -->\n <a\n class=\"btn\"\n (click)=\"cancel(file.uploadId)\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconDelete\"></span>\n </a>\n </div>\n </div>\n </div>\n </div>\n </div>\n <input\n #files\n multiple\n id=\"{{ name }}_uploadinput\"\n type=\"file\"\n class=\"custom-file-input\"\n (click)=\"files.value = ''\"\n (uploadxState)=\"onUpload($event)\"\n [disabled]=\"HasQueueItem()\" />\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import {\n AsyncPipe,\n NgClass,\n NgForOf,\n NgIf,\n NgTemplateOutlet,\n} from '@angular/common';\nimport { HttpClient, HttpClientModule } from '@angular/common/http';\nimport { Component, Injector, ViewChild } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport {\n IBrowserFile,\n IBrowserNode,\n SacFileBrowserCommon,\n} from '@simpleangularcontrols/sac-common';\nimport { Observable, forkJoin } from 'rxjs';\nimport { ServiceConfirm } from '../../controls/confirm/confirm.service';\nimport { SacContextmenuComponent } from '../../controls/contextmenu';\nimport { SacContextmenuItemButtonComponent } from '../../controls/contextmenu/contextmenuitembutton';\nimport { SacContextmenuItemSplitterComponent } from '../../controls/contextmenu/contextmenuitemsplitter';\nimport { SacDropzoneMultipleComponent } from '../../controls/upload/dropzonemultiple';\n\n/**\n * Server File Browser Komponente\n */\n@Component({\n selector: 'sac-filebrowser',\n templateUrl: './browser.html',\n standalone: true,\n imports: [\n NgTemplateOutlet,\n NgIf,\n NgForOf,\n NgClass,\n AsyncPipe,\n FormsModule,\n HttpClientModule,\n SacContextmenuComponent,\n SacContextmenuItemButtonComponent,\n SacContextmenuItemSplitterComponent,\n SacDropzoneMultipleComponent,\n ],\n providers: [ServiceConfirm],\n})\nexport class SacBrowserComponent extends SacFileBrowserCommon {\n // #region Properties\n\n /**\n * Referenz auf Upload Component\n */\n @ViewChild(SacDropzoneMultipleComponent, { static: false })\n private uploadComponent: SacDropzoneMultipleComponent;\n\n // #endregion Properties\n\n // #region Constructors\n\n /**\n * Konstruktor\n * @param httpClient HTTP Client\n * @param injector Angular Dependency Injection Service\n * @param confirmService Confirm Service\n */\n constructor(\n httpClient: HttpClient,\n injector: Injector,\n private confirmService: ServiceConfirm\n ) {\n super(httpClient, injector);\n }\n\n // #endregion Constructors\n\n // #region Public Methods\n\n /**\n * Confirm Action wenn ein File gelöscht werden soll\n * @param file File das gelöscht werden soll.\n * @returns Observable ob File gelöscht werden kann.\n */\n public confirmDeleteFile(file: IBrowserFile): Observable<boolean> {\n return new Observable<boolean>((observer) => {\n forkJoin({\n title: this.lngResourceService.GetString(\n this.validationKeyService.FilebrowserButtonDelete\n ),\n message: this.lngResourceService.GetString(\n this.validationKeyService.FilebrowserConfirmTextDeleteFile\n ),\n }).subscribe((text) => {\n this.confirmService\n .ConfirmMessage(text.title, text.message)\n .subscribe((result) => {\n if (result === 'yes') {\n observer.next(true);\n } else {\n observer.next(false);\n }\n observer.complete();\n });\n });\n });\n }\n\n /**\n * Confirm Action wenn ein Ordner gelöscht werden soll\n * @param node Ordner der gelöscht werden soll\n * @returns Observable ob Ordner gelöscht kann.\n */\n public confirmDeleteNode(node: IBrowserNode): Observable<boolean> {\n return new Observable<boolean>((observer) => {\n forkJoin({\n title: this.lngResourceService.GetString(\n this.validationKeyService.FilebrowserButtonDelete\n ),\n message: this.lngResourceService.GetString(\n this.validationKeyService.FilebrowserConfirmTextDeleteFolder\n ),\n }).subscribe((text) => {\n this.confirmService\n .ConfirmMessage(text.title, text.message)\n .subscribe((result) => {\n if (result === 'yes') {\n observer.next(true);\n } else {\n observer.next(false);\n }\n observer.complete();\n });\n });\n });\n }\n\n /**\n * Erzeugt ein Array von einer bestimmten grösse\n * @param anzahl Grösse des Array\n * @returns Array\n */\n public count(anzahl: number): Array<void> {\n return new Array(anzahl);\n }\n\n /**\n * Methode wird aufgerufen, wenn eine Datei verschoben wird\n * @param uploadid Upload ID\n */\n public uploadedFileMoved(uploadid: string): void {\n const item = this.uploadComponent.uploads.find(\n (itm) => itm.documentid === uploadid\n );\n\n if (item) {\n this.uploadComponent.cancel(item.uploadId);\n }\n }\n\n // #endregion Public Methods\n}\n","<div class=\"row\">\n <div class=\"col-12 col-md-5 col-lg-4\">\n <ul class=\"list-group list-group-flush\">\n <ng-template\n [ngTemplateOutlet]=\"treeItem\"\n [ngTemplateOutletContext]=\"{node: rootNode, deep: 0}\"\n ></ng-template>\n </ul>\n\n <ng-template #treeItem let-node=\"node\" let-deep=\"deep\">\n <li\n class=\"list-group-item py-1 px-2 d-flex align-items-center\"\n [class.list-group-item-secondary]=\"node === selectedNode\"\n (click)=\"selectNode(node)\"\n style=\"cursor: pointer\"\n >\n <div class=\"mx-3\" *ngFor=\"let i of count(deep)\"></div>\n <div\n (click)=\"switchExpandNode(node);$event.stopPropagation();\"\n class=\"mr-2\"\n [ngClass]=\"node.ChildNodes.length === 0 ? iconFolderEmpty: (!node.IsExpanded && node.ChildNodes.length > 0 ? iconFolderCollabsed : (node.IsExpanded && node.ChildNodes.length > 0 ? iconFolderOpen : ''))\"\n ></div>\n <ng-container *ngIf=\"!node.IsEditMode\">\n <div class=\"flex-grow-1\">{{ node.Name }}</div>\n </ng-container>\n <ng-container *ngIf=\"node.IsEditMode\">\n <div class=\"flex-grow-1\" ngForm>\n <input\n name=\"editFolder\"\n class=\"form-control form-control-sm\"\n [ngModel]=\"node.Name\"\n [ngModelOptions]=\"{updateOn: 'blur'}\"\n (ngModelChange)=\"renameNode(node, $event)\"\n (keydown.enter)=\"$event.target.blur();false;\"\n (blur)=\"renameNode(node, null)\"\n (click)=\"$event.stopPropagation()\"\n />\n </div>\n </ng-container>\n <div class=\"flex-shrink-0\">\n <a\n *ngIf=\"node.Path !== '/' && allowfolderrename\"\n class=\"btn btn-sm btn-link text-secondary\"\n (click)=\"editNode(node);$event.stopPropagation();\"\n >\n <i [class]=\"iconEdit\"></i>\n </a>\n <sac-contextmenu cssclass=\"d-inline-block\">\n <sac-contextmenubutton\n *ngIf=\"allowfoldercreate\"\n text=\"{{ lngResourceService.GetString(validationKeyService.FilebrowserButtonNewFolder) | async }}\"\n [icon]=\"iconFolderNew\"\n (clicked)=\"newNode(node)\"\n ></sac-contextmenubutton>\n <sac-contextmenubutton\n *ngIf=\"node.Path !== '/' && allowfolderdelete\"\n text=\"{{ lngResourceService.GetString(validationKeyService.FilebrowserButtonDelete) | async }}\"\n [icon]=\"iconDelete\"\n (clicked)=\"deleteNode(node)\"\n ></sac-contextmenubutton>\n <sac-contextmenusplitter\n *ngIf=\"allowfoldercreate || (node.Path !== '/' && allowfolderdelete)\"\n ></sac-contextmenusplitter>\n <sac-contextmenubutton\n text=\"{{ lngResourceService.GetString(validationKeyService.FilebrowserButtonRefresh) | async }}\"\n [icon]=\"iconRefresh\"\n (clicked)=\"refreshNode(node)\"\n ></sac-contextmenubutton>\n </sac-contextmenu>\n </div>\n </li>\n\n <ng-container *ngIf=\"node.IsExpanded\">\n <ng-template\n *ngFor=\"let child of node.ChildNodes\"\n [ngTemplateOutlet]=\"treeItem\"\n [ngTemplateOutletContext]=\"{node: child, deep: deep + 1}\"\n ></ng-template>\n </ng-container>\n </ng-template>\n </div>\n <div class=\"col-12 col-md-7 col-lg-8\">\n <ng-container *ngIf=\"selectedNode && selectedNode.Files\">\n <div *ngIf=\"allowfileupload\" ngForm>\n <sac-dropzonemultiple\n [disablelabel]=\"true\"\n [endpoint]=\"apiurl + '/uploadregister'\"\n name=\"upload\"\n uploadheight=\"5rem\"\n [ngModel]=\"uploads\"\n (ngModelChange)=\"uploadComplete(selectedNode,$event)\"\n [allowedtypes]=\"allowedtypes\"\n >{{\n lngResourceService.GetString(validationKeyService.FilebrowserButtonUpload)\n | async }}</sac-dropzonemultiple\n >\n </div>\n <div class=\"table-responsive\">\n <table class=\"table table-striped table-hover align-middle\">\n <thead>\n <th>\n {{\n lngResourceService.GetString(validationKeyService.FilebrowserGridFilename)\n | async }}\n </th>\n <th>\n {{\n lngResourceService.GetString(validationKeyService.FilebrowserGridSize)\n | async }}\n </th>\n <th style=\"width: 80px\"></th>\n </thead>\n <tbody>\n <ng-container *ngIf=\"selectedNode.Files.length === 0\">\n <tr>\n <td colspan=\"3\">\n {{\n lngResourceService.GetString(validationKeyService.FilebrowserGridNoFiles)\n | async }}\n </td>\n </tr>\n </ng-container>\n <ng-container *ngIf=\"selectedNode.Files.length > 0\">\n <tr\n *ngFor=\"let item of selectedNode.Files\"\n (click)=\"selectFile(item)\"\n [class.table-primary]=\"selectedFileItem === item\"\n >\n <td [class.p-2]=\"item.IsEditMode\">\n <ng-container *ngIf=\"!item.IsEditMode\">\n {{ item.Filename }}\n </ng-container>\n <ng-container *ngIf=\"item.IsEditMode\">\n <div>\n <input\n name=\"editFolder\"\n class=\"form-control form-control-sm\"\n [ngModel]=\"item.Filename\"\n [ngModelOptions]=\"{updateOn: 'blur'}\"\n (ngModelChange)=\"renameFile(item, $event)\"\n (keydown.enter)=\"$event.target.blur();false\"\n (blur)=\"renameFile(item, null)\"\n (click)=\"$event.stopPropagation();\"\n />\n </div>\n </ng-container>\n </td>\n <td>{{ item.Size}}</td>\n <td class=\"p-2\">\n <div class=\"btn-toolbar\" role=\"toolbar\">\n <div class=\"btn-group ml-auto\" role=\"group\">\n <a\n *ngIf=\"allowfilerename\"\n class=\"btn btn-sm btn-link text-secondary\"\n (click)=\"editFile(item);$event.stopPropagation();\"\n ><i [class]=\"iconEdit\"></i\n ></a>\n </div>\n <div class=\"btn-group\" role=\"group\">\n <a\n *ngIf=\"allowfiledelete\"\n class=\"btn btn-sm btn-link text-secondary\"\n (click)=\"deleteFile(item);$event.stopPropagation();\"\n ><i [class]=\"iconDelete\"></i\n ></a>\n </div>\n </div>\n </td>\n </tr>\n </ng-container>\n </tbody>\n </table>\n </div>\n </ng-container>\n </div>\n</div>\n","import { NgModule } from '@angular/core';\nimport { SacBrowserComponent } from './browser';\n\n@NgModule({\n declarations: [],\n imports: [SacBrowserComponent],\n exports: [SacBrowserComponent],\n})\nexport class SACBootstrap4BrowserModule {}\n","import { NgModule } from '@angular/core';\nimport { SacButtonComponent } from './button';\nimport { CommonModule } from '@angular/common';\n\n@NgModule({\n imports: [\n CommonModule,\n SacButtonComponent\n ],\n exports: [SacButtonComponent]\n})\nexport class SACBootstrap4ButtonModule { }\n","import { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacCheckboxCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Checkbox Kompontente\n */\n@Component({\n selector: 'sac-checkbox',\n templateUrl: './checkbox.html',\n styleUrls: ['./checkbox.scss'],\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacCheckboxComponent,\n },\n {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => SacCheckboxComponent),\n multi: true,\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n NgIf,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacTooltipComponent,\n SacToControlHeightPipe,\n ],\n})\nexport class SacCheckboxComponent extends SacCheckboxCommon {\n // #region Constructors\n\n /**\n *\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(@Host() @Optional() formLayout: SacFormLayoutDirective, injector: Injector) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"row\"\n [class.no-gutters]=\"disablelabel\"\n [class.form-group]=\"!stacked\">\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only']\">\n <label\n *ngIf=\"!disablelabel && !stacked\"\n for=\"{{ name }}\"\n class=\"col-form-label d-flex\"\n [ngClass]=\"componentHeight | toLabelHeight\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\"\n >{{ label }}</div\n >\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\"\n ><span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n </div>\n <div\n class=\"align-self-center col-12\"\n [ngClass]=\"[!disablelabel && !stacked ? (this.labelSizes | toControlWidthCss) : '']\">\n <div\n [class.form-check]=\"checkboxstyle === 'checkbox'\"\n [class.custom-control]=\"checkboxstyle === 'switch'\"\n [class.custom-switch]=\"checkboxstyle === 'switch'\"\n [class.form-check-sm]=\"componentHeight === ControlHeight.Small\"\n [class.form-check-lg]=\"componentHeight === ControlHeight.Large\">\n <input\n [class.form-check-input]=\"checkboxstyle === 'checkbox'\"\n [class.custom-control-input]=\"checkboxstyle === 'switch'\"\n [class.form-check-input-sm]=\"componentHeight === ControlHeight.Small\"\n [class.form-check-input-lg]=\"componentHeight === ControlHeight.Large\"\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"checkbox\"\n [checked]=\"value\"\n (blur)=\"onTouch()\"\n (change)=\"setValue($event.target.checked)\"\n [disabled]=\"isdisabled\" />\n <label\n for=\"{{ name }}\"\n [class.form-check-label]=\"checkboxstyle === 'checkbox'\"\n [class.custom-control-label]=\"checkboxstyle === 'switch'\"\n [class.form-check-label-sm]=\"componentHeight === ControlHeight.Small\"\n [class.form-check-label-lg]=\"componentHeight === ControlHeight.Large\">\n <ng-container *ngIf=\"checkboxtext\">{{ checkboxtext }}</ng-container>\n </label>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && (disablelabel || stacked)\"\n class=\"ml-2 mr-1 d-inline-block\"\n [class.form-check-label-sm]=\"componentHeight === ControlHeight.Small\"\n [class.form-check-label-lg]=\"componentHeight === ControlHeight.Large\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n </div>\n</div>\n","import { NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacRadiobuttonsCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n/**\n * Radiobuttons Group Komponente\n */\n@Component({\n selector: 'sac-radiobuttons',\n templateUrl: './radiobuttons.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SacRadiobuttonsComponent),\n multi: true,\n },\n {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => SacRadiobuttonsComponent),\n multi: true,\n },\n ],\n standalone: true,\n imports: [\n NgIf,\n NgClass,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacRadiobuttonsComponent extends SacRadiobuttonsCommon {\n // #region Constructors\n\n /**\n *\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div class=\"row form-group\">\n <div\n *ngIf=\"disablelabel === false\"\n class=\"col-12 pt-0\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only']\">\n <label\n class=\"col-form-label d-flex\"\n [ngClass]=\"componentHeight | toLabelHeight\"\n *ngIf=\"!disablelabel\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\"\n >{{ label }}</div\n >\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n </div>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.pt-1]=\"componentHeight === ControlHeight.Small\"\n [class.pt-2]=\"componentHeight !== ControlHeight.Small\">\n <ng-content></ng-content>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n </div>\n</div>\n","import { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { SacRadiobuttonsComponent } from './radiobuttons';\nimport { NgClass, NgIf, NgTemplateOutlet } from '@angular/common';\nimport { Component, Host, Injector, Optional } from '@angular/core';\nimport { SacRadiobuttonCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Radiobutton Komponente\n */\n@Component({\n selector: 'sac-radiobutton',\n templateUrl: './radiobutton.html',\n styleUrls: ['./radiobutton.scss'],\n standalone: true,\n imports: [NgIf, NgTemplateOutlet, SacTooltipComponent, NgClass],\n})\nexport class SacRadiobuttonComponent extends SacRadiobuttonCommon {\n // #region Constructors\n\n /**\n * Konstruktor\n * @param SacRadioButtons Radio Buttons Group Komponente\n * @param formlayout SacFormLayoutCommon to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() sacRadioButtons: SacRadiobuttonsComponent,\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(sacRadioButtons, formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"form-check\"\n [class.form-check-sm]=\"componentHeight === ControlHeight.Small\"\n [class.form-check-lg]=\"componentHeight === ControlHeight.Large\"\n *ngIf=\"hidden === false\">\n <input\n id=\"{{ getName }}_{{ getIndex }}\"\n name=\"{{ getName }}\"\n type=\"radio\"\n class=\"form-check-input\"\n [class.form-check-input-sm]=\"componentHeight === ControlHeight.Small\"\n [class.form-check-input-lg]=\"componentHeight === ControlHeight.Large\"\n [value]=\"value\"\n [checked]=\"checked\"\n (change)=\"ChangeEvent()\"\n [disabled]=\"isDisabled\" />\n <label\n for=\"{{ getName }}_{{ getIndex }}\"\n class=\"form-check-label\"\n [class.form-check-label-sm]=\"componentHeight === ControlHeight.Small\"\n [class.form-check-label-lg]=\"componentHeight === ControlHeight.Large\">\n <ng-template *ngTemplateOutlet=\"labeltemplate || defaultItemLabelTemplate; context: { label: label }\"> </ng-template>\n </label>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n class=\"ml-2 mr-1 d-inline-block\"\n [class.form-check-label-sm]=\"componentHeight === ControlHeight.Small\"\n [class.form-check-label-lg]=\"componentHeight === ControlHeight.Large\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n</div>\n\n<ng-template\n #defaultItemLabelTemplate\n let-label=\"label\">\n <ng-container>{{ label }}</ng-container>\n</ng-template>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SacCheckboxComponent } from './checkbox';\nimport { SacRadiobuttonComponent } from './radiobutton';\nimport { SacRadiobuttonsComponent } from './radiobuttons';\n\n@NgModule({\n imports: [\n CommonModule,\n SacCheckboxComponent,\n SacRadiobuttonComponent,\n SacRadiobuttonsComponent,\n ],\n exports: [\n SacCheckboxComponent,\n SacRadiobuttonComponent,\n SacRadiobuttonsComponent,\n ],\n})\nexport class SACBootstrap4CheckboxModule {}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { SacConfirmComponent } from './confirm';\nimport { ServiceConfirm } from './confirm.service';\n\n/**\n * Module für Confirm Messages\n *\n * In NgModule der Applikation folgenden Eintrag bei Imports einfügen: ExanicBootstrap4ConfirmModule.forRoot()\n *\n */\n@NgModule({\n imports: [SacConfirmComponent],\n exports: [SacConfirmComponent],\n})\nexport class SACBootstrap4ConfirmModule {\n static forRoot(): ModuleWithProviders<SACBootstrap4ConfirmModule> {\n return {\n ngModule: SACBootstrap4ConfirmModule,\n providers: [ServiceConfirm],\n };\n }\n}\n\nexport { ServiceConfirm } from './confirm.service';\n\n","import { SacContextmenuComponent } from './contextmenu';\nimport { SacContextmenuAnchorDirective } from './contextmenuanchor';\nimport { SacContextmenuContainerDirective } from './contextmenucontainer';\nimport { SacContextmenuItemButtonComponent } from './contextmenuitembutton';\nimport { SacContextmenuItemSplitterComponent } from './contextmenuitemsplitter';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\n@NgModule({\n imports: [\n CommonModule,\n SacContextmenuComponent,\n SacContextmenuItemButtonComponent,\n SacContextmenuItemSplitterComponent,\n SacContextmenuAnchorDirective,\n SacContextmenuContainerDirective,\n ],\n exports: [\n SacContextmenuComponent,\n SacContextmenuItemButtonComponent,\n SacContextmenuItemSplitterComponent,\n SacContextmenuAnchorDirective,\n ],\n})\nexport class SACBootstrap4ContextmenuModule {}\n","import { Component } from '@angular/core';\nimport { SacDateSelectorCommon } from '@simpleangularcontrols/sac-common';\nimport { NgIf, NgFor, NgStyle, NgClass } from '@angular/common';\n\n/**\n * DateTime Selektor Komponente\n */\n@Component({\n selector: 'sac-dateselector',\n templateUrl: './dateselector.html',\n standalone: true,\n imports: [\n NgIf,\n NgFor,\n NgStyle,\n NgClass,\n ],\n})\nexport class SacDateSelectorComponent extends SacDateSelectorCommon {}\n","<div class=\"calendar-selector\">\n <div *ngIf=\"dateselection\">\n <div class=\"container\">\n <div class=\"row\">\n <div class=\"col text-left\">\n <a (click)=\"monthBack()\"><span [class]=\"iconMonthPrev\"></span></a>\n </div>\n <div class=\"col text-center\">{{month+1}}/{{year}}</div>\n <div class=\"col text-right\">\n <a (click)=\"monthNext()\"><span [class]=\"iconMonthNext\"></span></a>\n </div>\n </div>\n </div>\n <div></div>\n <div class=\"container\">\n <div class=\"row\">\n <ng-container *ngFor=\"let week of dates; let i=index\">\n <ng-container *ngFor=\"let item of week\">\n <div\n class=\"p-2 col text-center\"\n [ngStyle]=\"{'cursor': item.isenabled ? 'pointer' : null}\"\n [ngClass]=\"{'day-current': item.iscurrent, 'day-selected': item.isselected, 'day-new': item.isnew, 'day-disabled': !item.isenabled}\"\n (click)=\"selectDate(item)\"\n >\n {{ item.displaytext }}\n </div>\n </ng-container>\n <div class=\"w-100\"></div>\n </ng-container>\n </div>\n </div>\n </div>\n <div class=\"d-flex flex-row justify-content-start\" *ngIf=\"timeselection\">\n <div class=\"p-2\">\n <div class=\"form-group\">\n <label>Stunde</label>\n <input\n type=\"number\"\n class=\"form-control form-control-sm\"\n [value]=\"getHours()\"\n (input)=\"setHours($event.target.value)\"\n min=\"0\"\n max=\"23\"\n />\n </div>\n </div>\n <div class=\"p-2\">\n <div class=\"form-group\">\n <label>Minute</label>\n <input\n type=\"number\"\n class=\"form-control form-control-sm\"\n [value]=\"getMinutes()\"\n (input)=\"setMinutes($event.target.value)\"\n min=\"0\"\n max=\"59\"\n />\n </div>\n </div>\n </div>\n <div class=\"d-flex flex-row\">\n <div class=\"mr-auto p-2\">\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"setToday()\">\n Heute\n </button>\n </div>\n <div class=\"p-2\">\n <button\n type=\"button\"\n class=\"btn btn-secondary\"\n (click)=\"resetSelection()\"\n >\n Reset\n </button>\n </div>\n <div class=\"p-2\">\n <button type=\"button\" class=\"btn btn-primary\" (click)=\"applySelection()\">\n Apply\n </button>\n </div>\n </div>\n</div>\n","import { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { SacDateSelectorComponent } from './dateselector';\n// Import Moment.JS\nimport { AsyncPipe, NgClass, NgIf } from '@angular/common';\nimport { ChangeDetectorRef, Component, ElementRef, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacDateCommon } from '@simpleangularcontrols/sac-common';\nimport { IMaskDirective } from 'angular-imask';\nimport * as moment_ from 'moment';\n\n// #region Classes\n\n/**\n * Komponente für Datumauswahl\n */\n@Component({\n selector: 'sac-date',\n templateUrl: './date.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => SacDateComponent),\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacDateComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n IMaskDirective,\n NgIf,\n SacDateSelectorComponent,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacDateComponent extends SacDateCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n * @param elementRef Reference to html dom element\n * @param cdRef Change Dectection Servie\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector,\n elementRef: ElementRef,\n cdRef: ChangeDetectorRef\n ) {\n super(formLayout, injector, elementRef, cdRef);\n }\n\n // #endregion Constructors\n}\n\n// #endregion Classes\n\n// #region Variables\n\n/**\n * Referenz auf Moment.JS\n */\nconst moment = moment_['default'];\n\n// #endregion Variables\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n class=\"input-group\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\"\n [class.has-validation]=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n <input\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"text\"\n class=\"form-control\"\n [imask]=\"imaskDate\"\n [attr.placeholder]=\"placeholder\"\n [value]=\"valuestring\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n (blur)=\"onTouch()\"\n (accept)=\"setValueString($event)\"\n [disabled]=\"isdisabled\" />\n <div class=\"input-group-append\">\n <button\n #pickerbutton\n class=\"btn btn-secondary\"\n type=\"button\"\n (click)=\"showDateSelector()\"\n [disabled]=\"isdisabled\">\n <i [class]=\"IconSelector\"></i>\n </button>\n </div>\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n #picker\n *ngIf=\"_showselector\">\n <div\n class=\"popover fade show position-absolute m-0\"\n role=\"tooltip\"\n *ngIf=\"_showselector\"\n [class.bs-popover-bottom]=\"GetPickerPosition() == TooltipPosition.bottom || GetPickerPosition() == TooltipPosition.bottomend\"\n [class.bs-popover-top]=\"GetPickerPosition() == TooltipPosition.top || GetPickerPosition() == TooltipPosition.topend\"\n [style.left.px]=\"posPopupLeft\"\n [style.top.px]=\"posPopupTop\">\n <div\n #pickerarrow\n class=\"arrow position-absolute m-0\"\n style=\"left: unset\"\n [style.top.px]=\"posArrowTop\"\n [style.left.px]=\"posArrowLeft\">\n </div>\n\n <div class=\"popover-body\">\n <sac-dateselector\n [initialvalue]=\"value\"\n (selectdate)=\"dateselect($event)\"\n dateselection=\"true\"></sac-dateselector>\n </div>\n </div>\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { SacDateSelectorComponent } from './dateselector';\nimport { AsyncPipe, NgClass, NgIf } from '@angular/common';\nimport { ChangeDetectorRef, Component, ElementRef, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacDateTimeCommon } from '@simpleangularcontrols/sac-common';\nimport { IMaskDirective } from 'angular-imask';\n\n/**\n * Date und Time Komponente\n */\n@Component({\n selector: 'sac-datetime',\n templateUrl: './datetime.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => SacDateTimeComponent),\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacDateTimeComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n IMaskDirective,\n NgIf,\n AsyncPipe,\n SacDateSelectorComponent,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacDateTimeComponent extends SacDateTimeCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n * @param elementRef Reference to html dom element\n * @param cdRef Change Dectection Servie\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector,\n elementRef: ElementRef,\n cdRef: ChangeDetectorRef\n ) {\n super(formLayout, injector, elementRef, cdRef);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\"\n ><span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n class=\"input-group\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\"\n [class.has-validation]=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n <input\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"text\"\n class=\"form-control\"\n [imask]=\"imaskDate\"\n [attr.placeholder]=\"placeholder\"\n [value]=\"valuestring\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n (blur)=\"onTouch()\"\n (accept)=\"setValueString($event)\"\n [disabled]=\"isdisabled\" />\n <div class=\"input-group-append\">\n <button\n #pickerbutton\n class=\"btn btn-secondary\"\n type=\"button\"\n (click)=\"showDateSelector()\"\n [disabled]=\"isdisabled\">\n <i [class]=\"IconSelector\"></i>\n </button>\n </div>\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n\n <div\n #picker\n *ngIf=\"_showselector\"\n ><div\n class=\"popover fade show position-absolute m-0\"\n role=\"tooltip\"\n [class.bs-popover-bottom]=\"GetPickerPosition() == TooltipPosition.bottom || GetPickerPosition() == TooltipPosition.bottomend\"\n [class.bs-popover-top]=\"GetPickerPosition() == TooltipPosition.top || GetPickerPosition() == TooltipPosition.topend\"\n [style.left.px]=\"posPopupLeft\"\n [style.top.px]=\"posPopupTop\">\n <div\n #pickerarrow\n class=\"arrow position-absolute m-0\"\n style=\"left: unset\"\n [style.top.px]=\"posArrowTop\"\n [style.left.px]=\"posArrowLeft\">\n </div>\n <div class=\"popover-body\">\n <sac-dateselector\n [initialvalue]=\"value\"\n (selectdate)=\"dateselect($event)\"\n dateselection=\"true\"\n timeselection=\"true\"></sac-dateselector>\n </div>\n </div>\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { SacDateSelectorComponent } from './dateselector';\nimport { AsyncPipe, NgClass, NgIf } from '@angular/common';\nimport { ChangeDetectorRef, Component, ElementRef, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacTimeCommon } from '@simpleangularcontrols/sac-common';\nimport { IMaskDirective } from 'angular-imask';\n\n/**\n * Time Auswahl Komponente\n */\n@Component({\n selector: 'sac-time',\n templateUrl: './time.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => SacTimeComponent),\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacTimeComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n IMaskDirective,\n NgIf,\n AsyncPipe,\n SacDateSelectorComponent,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacTimeComponent extends SacTimeCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n * @param elementRef Reference to html dom element\n * @param cdRef Change Dectection Servie\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector,\n elementRef: ElementRef,\n cdRef: ChangeDetectorRef\n ) {\n super(formLayout, injector, elementRef, cdRef);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\"\n ><span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n class=\"input-group\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\"\n [class.has-validation]=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n <input\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"text\"\n class=\"form-control\"\n [imask]=\"imaskDate\"\n [attr.placeholder]=\"placeholder\"\n [value]=\"valuestring\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n (blur)=\"onTouch()\"\n (accept)=\"setValueString($event)\"\n [disabled]=\"isdisabled\" />\n <div class=\"input-group-append\">\n <button\n #pickerbutton\n class=\"btn btn-secondary\"\n type=\"button\"\n (click)=\"showTimeSelector()\"\n [disabled]=\"isdisabled\">\n <i [class]=\"IconSelector\"></i>\n </button>\n </div>\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n #picker\n *ngIf=\"_showselector\">\n <div\n class=\"popover fade show position-absolute m-0\"\n role=\"tooltip\"\n [class.bs-popover-bottom]=\"GetPickerPosition() == TooltipPosition.bottom || GetPickerPosition() == TooltipPosition.bottomend\"\n [class.bs-popover-top]=\"GetPickerPosition() == TooltipPosition.top || GetPickerPosition() == TooltipPosition.topend\"\n [style.left.px]=\"posPopupLeft\"\n [style.top.px]=\"posPopupTop\">\n <div\n #pickerarrow\n class=\"arrow position-absolute m-0\"\n style=\"left: unset\"\n [style.top.px]=\"posArrowTop\"\n [style.left.px]=\"posArrowLeft\">\n </div>\n\n <div class=\"popover-body\">\n <sac-dateselector\n [initialvalue]=\"value\"\n (selectdate)=\"timeselect($event)\"\n timeselection=\"true\"></sac-dateselector>\n </div>\n </div>\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { IMaskModule } from 'angular-imask';\nimport { SacDateComponent } from './date';\nimport { SacDateSelectorComponent } from './dateselector';\nimport { SacDateTimeComponent } from './datetime';\nimport { SacTimeComponent } from './time';\n\n@NgModule({\n imports: [\n CommonModule,\n IMaskModule,\n SacDateComponent,\n SacDateTimeComponent,\n SacTimeComponent,\n SacDateSelectorComponent,\n ],\n exports: [\n SacDateComponent,\n SacDateTimeComponent,\n SacTimeComponent,\n SacDateSelectorComponent,\n ],\n})\nexport class SACBootstrap4DateTimeModule {}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SacDialogComponent } from './dialog';\n\n@NgModule({\n imports: [\n CommonModule,\n SacDialogComponent\n ],\n exports: [SacDialogComponent]\n})\nexport class SACBootstrap4DialogModule { }\n","import { Directive, HostBinding } from '@angular/core';\nimport { NgForm } from '@angular/forms';\nimport { SacFormCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Erweiterung / Hooking für automatismen in Formular. Wird als Container für alle Controls benötigt.\n *\n * @example Beispiel über Div Container\n *\n * <div ngForm></div>\n *\n * @example Beispiel über Form Tag\n *\n * <form></form>\n *\n */\n@Directive({\n selector: 'form:not([ngNoForm]):not([formGroup]),[ngForm]', // eslint-disable-line @angular-eslint/directive-selector -- required as extension to form\n exportAs: 'sacform',\n standalone: true,\n})\nexport class SacFormDirective extends SacFormCommon {\n // #region Properties\n\n /**\n * Setzt die Standard CSS Klasse für auf dem Form Container\n */\n @HostBinding('class.form')\n public cssClassForm: boolean = true;\n\n // #endregion Properties\n\n // #region Constructors\n\n /**\n * Konstruktor\n * @param form Instanz von NgForm für eigene automatische Formular Logik\n */\n constructor(form: NgForm) {\n super(form);\n }\n\n // #endregion Constructors\n}\n","import { Directive, Injector, SkipSelf } from '@angular/core';\nimport { ControlContainer, NgForm } from '@angular/forms';\nimport { SacFormCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormDirective } from './form';\n\n// #region Classes\n\n/**\n * Directive to inherit an NgForm/NgForm from a parent component\n */\n@Directive({\n selector: '[sacInheritForm]',\n exportAs: 'sacinheritform',\n standalone: true,\n providers: [\n {\n provide: SacFormDirective,\n useFactory: SACFORM_FACTORY,\n deps: [[new SkipSelf(), SacFormDirective]],\n },\n {\n provide: ControlContainer,\n useFactory: NGFORM_FACTORY,\n deps: [NgForm],\n },\n ],\n})\nexport class SacInheritFormDirective extends SacFormCommon {\n // #region Constructors\n\n /**\n * Construtor\n * @param injector: injector to receive the NgForm instance\n */\n constructor(injector: Injector) {\n super(injector.get(NgForm));\n }\n\n // #endregion Constructors\n}\n\n// #endregion Classes\n\n// #region Functions\n\n/**\n * Factory Methode für NgForm\n * @param form NgForm\n */\nexport function NGFORM_FACTORY(form: NgForm) {\n return form;\n}\n\n/**\n * Factory Methode für SacForm\n * @param form SacFormular\n */\nexport function SACFORM_FACTORY(form: SacFormDirective) {\n return form;\n}\n\n// #endregion Functions\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { SacFormDirective } from './form';\nimport { SacInheritFormDirective } from './inheritform.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n SacFormDirective, SacInheritFormDirective\n ],\n exports: [\n SacFormDirective, SacInheritFormDirective\n ]\n})\nexport class SACBootstrap4FormModule { }\n","import { Component, forwardRef, Injector } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';\nimport { SacPagingCommon } from '@simpleangularcontrols/sac-common';\nimport { NgClass, NgFor, NgIf, AsyncPipe } from '@angular/common';\n\n/**\n * Paging Komponente\n */\n@Component({\n selector: 'sac-paging',\n templateUrl: './paging.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacPagingComponent },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacPagingComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n NgFor,\n NgIf,\n FormsModule,\n AsyncPipe,\n ],\n})\nexport class SacPagingComponent extends SacPagingCommon {\n /**\n * Konstruktor\n * @param injector Angular Dependency Injection Service\n */\n constructor(injector: Injector) {\n super(injector);\n }\n}\n","<div\n class=\"d-flex justify-content-between align-items-center flex-wrap\"\n id=\"{{ name }}\">\n <div\n class=\"col-pagination order-2 order-md-1\"\n id=\"{{ name }}_pages\">\n <ul class=\"pagination mb-4 mb-md-0\">\n <li\n class=\"page-item\"\n [ngClass]=\"{ 'aspNetDisabled disabled': activePageIndex === firstPageIndex }\">\n <a\n class=\"page-link\"\n (click)=\"firstPage()\"\n >«</a\n >\n </li>\n <li\n class=\"page-item\"\n *ngFor=\"let page of paginators; let i = index\"\n [ngClass]=\"{ active: page === activePageIndex }\">\n <a\n class=\"page-link\"\n (click)=\"changePage(page)\"\n >{{ page + 1 }}</a\n >\n </li>\n <li\n class=\"page-item\"\n [ngClass]=\"{ 'aspNetDisabled disabled': activePageIndex === lastPageIndex }\">\n <a\n class=\"page-link\"\n (click)=\"lastPage()\"\n >»</a\n >\n </li>\n </ul>\n </div>\n <div class=\"col-summary order-1 order-md-2\">\n <div class=\"mb-4 mb-md-0 mr-4 mb-md-0\">{{ PagingText | async }}</div>\n </div>\n <div\n class=\"col-pagesize order-3\"\n *ngIf=\"!pagesizedisabled\">\n <div\n class=\"d-flex align-items-center\"\n id=\"{{ name }}_size\">\n <select\n class=\"form-control form-control-sm\"\n style=\"width: 85px\"\n [ngModel]=\"pageSize\"\n (ngModelChange)=\"changePageSize($event)\">\n <option\n [ngValue]=\"size\"\n *ngFor=\"let size of getPageSizes\">\n {{ size }}\n </option>\n </select>\n <div class=\"ml-2\">{{ PageSizeText | async }}</div>\n </div>\n </div>\n</div>\n","import { NgFor, NgIf, NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectorRef,\n Component,\n ContentChild,\n forwardRef,\n Injector,\n TemplateRef,\n} from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacGridCommon } from '@simpleangularcontrols/sac-common';\nimport { SacPagingComponent } from './paging';\n\n/**\n * Grid Komponente\n */\n@Component({\n selector: 'sac-grid',\n templateUrl: './grid.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacGridComponent },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacGridComponent),\n },\n ],\n standalone: true,\n imports: [NgTemplateOutlet, NgFor, NgIf, SacPagingComponent],\n})\nexport class SacGridComponent extends SacGridCommon {\n // #region Properties\n\n /**\n * Referenz auf Column Template\n */\n @ContentChild(TemplateRef, { static: false })\n public template: TemplateRef<any>;\n\n /**\n * Setzt die Ellipsis Funktion auf der Column\n */\n public ellipsis: boolean = false;\n\n // #endregion Properties\n\n // #region Constructors\n\n /**\n * Konstrukor\n * @param cdRef Change Detection Reference\n */\n constructor(cdRef: ChangeDetectorRef, injector: Injector) {\n super(cdRef, injector);\n }\n\n // #endregion Constructors\n}\n","<div class=\"table-responsive\">\n <table class=\"table table-striped table-hover\" id=\"{{name}}\">\n <thead class=\"thead-light\">\n <tr>\n <ng-container\n *ngTemplateOutlet=\"template; context { row: {}, type: 'header'}\"\n >\n </ng-container>\n </tr>\n </thead>\n <tbody>\n <ng-container *ngFor=\"let item of value; let i=index\">\n <tr>\n <ng-container\n *ngTemplateOutlet=\"template; context { row: item, type: 'body'}\"\n >\n </ng-container>\n </tr>\n </ng-container>\n <tr\n *ngIf=\"value === undefined || value === null || value.length===0\"\n data-e2e=\"emptyrow\"\n >\n <td [attr.colspan]=\"ColumnCount\">{{emptytext}}</td>\n </tr>\n </tbody>\n <tfoot *ngIf=\"pagerdata\">\n <tr>\n <td [attr.colspan]=\"ColumnCount\">\n <div class=\"container-fluid\">\n <sac-paging\n name=\"{{name}}Paging\"\n (paging)=\"pageChange($event)\"\n [pagerdata]=\"pagerdata\"\n [pagesizes]=\"pagesizes\"\n [pagingtext]=\"pagingtext\"\n [pagesizetext]=\"pagesizetext\"\n [pagesizedisabled]=\"pagesizedisabled\"\n ></sac-paging>\n </div>\n </td>\n </tr>\n </tfoot>\n </table>\n</div>\n","import { Component } from '@angular/core';\nimport { SacGridButtonCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Grid Action Button\n */\n@Component({\n selector: 'sac-gridbutton',\n templateUrl: './gridbutton.html',\n standalone: true\n})\nexport class SacGridButtonComponent extends SacGridButtonCommon {\n // #region Public Methods\n\n /**\n * Returns the icon for the button\n */\n public getIconClass(): string {\n let iconset: string = this.iconstyle;\n let iconcss: string = this.icon;\n\n if (iconset === '') {\n switch (this.icon) {\n case 'edit':\n iconset = 'sprite';\n iconcss = 'icon-sprite-base-main_edit';\n break;\n case 'delete':\n iconset = 'sprite';\n iconcss = 'icon-sprite-base-main_delete';\n break;\n }\n }\n\n if (this._isdisabledvalue) {\n iconcss += '_disabled';\n }\n\n const result = iconset + ' ' + iconcss;\n\n return result.trim();\n }\n\n // #endregion Public Methods\n}\n","<a (click)=\"callaction()\" style=\"padding-right: 5px;\" [class.disabled]=\"isdisabled\" [attr.disabled]=\"isdisabled ? 'disabled' : null\"><span class=\"{{getIconClass()}}\"></span></a>\n","import { Component, ElementRef, Injector, forwardRef } from '@angular/core';\nimport {\n SacGridColumnBaseCommon,\n SacGridColumnCommon,\n} from '@simpleangularcontrols/sac-common';\nimport { SacGridComponent } from './grid';\nimport { NgIf } from '@angular/common';\n\n/**\n * Grid Column Komponente\n */\n@Component({\n selector: 'sac-gridcolumn',\n templateUrl: './gridcolumn.html',\n providers: [\n {\n provide: SacGridColumnBaseCommon,\n useExisting: forwardRef(() => SacGridColumnComponent),\n },\n ],\n standalone: true,\n imports: [NgIf],\n})\nexport class SacGridColumnComponent extends SacGridColumnCommon {\n /**\n * Konstruktor\n * @param grid Grid Referenz\n * @param el HTML DOM Element\n */\n constructor(grid: SacGridComponent, injector: Injector, el: ElementRef) {\n super(grid, injector, el);\n }\n}\n","<th\n scope=\"col\"\n *ngIf=\"IsHeader()\"\n [style.width]=\"width\"\n (click)=\"SortByColumn()\">\n <span>{{ header }}</span>\n <span\n class=\"pl-2\"\n [class]=\"IconSortUp\"\n *ngIf=\"IsSortedColumn() && GetSortDirection() === 'asc'\"></span>\n <span\n class=\"pl-2\"\n [class]=\"IconSortDown\"\n *ngIf=\"IsSortedColumn() && GetSortDirection() === 'desc'\"></span>\n</th>\n<td\n scope=\"col\"\n *ngIf=\"IsBody()\"\n [style.width]=\"width\"\n [class.ellipsis]=\"IsEllipsis()\"\n (click)=\"ColumnClick()\"\n [style.max-width]=\"IsEllipsis() ? width : null\"\n [style.overflow]=\"IsEllipsis() ? 'hidden' : null\"\n [style.text-overflow]=\"IsEllipsis() ? 'ellipsis' : null\"\n [style.white-space]=\"IsEllipsis() ? 'nowrap' : null\">\n <span\n [attr.title]=\"IsEllipsis() ? value : null\"\n [innerHtml]=\"value\"></span>\n</td>\n","import { Component, ElementRef, Injector, forwardRef } from '@angular/core';\nimport {\n SacGridColumnActionCommon,\n SacGridColumnBaseCommon,\n} from '@simpleangularcontrols/sac-common';\nimport { SacGridComponent } from './grid';\nimport { NgIf } from '@angular/common';\n\n/**\n * Grid Action Komponent\n */\n@Component({\n selector: 'sac-gridcolumnaction',\n templateUrl: './gridcolumnaction.html',\n providers: [\n {\n provide: SacGridColumnBaseCommon,\n useExisting: forwardRef(() => SacGridColumnActionComponent),\n },\n ],\n standalone: true,\n imports: [NgIf],\n})\nexport class SacGridColumnActionComponent extends SacGridColumnActionCommon {\n /**\n * Konstruktor\n * @param grid Referenz auf Grid\n * @param el HTML Element Referenz\n */\n constructor(grid: SacGridComponent, injector: Injector, el: ElementRef) {\n super(grid, injector, el);\n\n this.width = '60px';\n }\n}\n","<th scope=\"col\" *ngIf=\"IsHeader()\" [style.width]=\"width\"><span></span></th>\n<td scope=\"col\" class=\"px-2\" *ngIf=\"IsBody()\">\n <ng-content></ng-content>\n</td>\n","import { Component, Input, Output, EventEmitter, ElementRef } from '@angular/core';\nimport { SacGridCommon, SacGridImageCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Image Item für Grid\n */\n@Component({\n selector: 'sac-gridimage',\n templateUrl: './gridimage.html',\n standalone: true\n})\nexport class SacGridImageComponent extends SacGridImageCommon {\n\n /**\n * Gibt die CSS Klassen für Sprite Images zurück\n * @returns CSS Klasse\n */\n public getIconClass(): string {\n switch (this.iconstyle) {\n case 'edit':\n return 'sprite icon-sprite-base-main_edit';\n case 'delete':\n return 'sprite icon-sprite-base-main_delete';\n default:\n return this.iconstyle;\n }\n }\n\n\n}\n","<span><span class=\"{{getIconClass()}}\"></span></span>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { SacGridComponent } from './grid';\nimport { SacGridButtonComponent } from './gridbutton';\nimport { SacGridColumnComponent } from './gridcolumn';\nimport { SacGridColumnActionComponent } from './gridcolumnaction';\nimport { SacGridImageComponent } from './gridimage';\nimport { SacPagingComponent } from './paging';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n SacGridComponent,\n SacGridColumnComponent,\n SacGridColumnActionComponent,\n SacPagingComponent,\n SacGridButtonComponent,\n SacGridImageComponent,\n ],\n exports: [\n SacGridComponent,\n SacGridColumnComponent,\n SacGridColumnActionComponent,\n SacPagingComponent,\n SacGridButtonComponent,\n SacGridImageComponent,\n ],\n})\nexport class SACBootstrap4GridModule {}\n","import { AsyncPipe, NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacInputCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n/**\n * Input Komponente\n */\n@Component({\n selector: 'sac-input',\n templateUrl: './input.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputComponent },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacInputComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n NgIf,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacInputComponent extends SacInputCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <input\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"text\"\n class=\"form-control\"\n [value]=\"value\"\n [attr.placeholder]=\"placeholder\"\n [readonly]=\"readonly\"\n (blur)=\"onTouch()\"\n (input)=\"setValue($event.target.value)\"\n (keypress)=\"onKeyPress($event)\"\n [attr.maxlength]=\"maxtextlength\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n [disabled]=\"isdisabled\" />\n\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { AsyncPipe, NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacInputAreaCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n/**\n * Input Box für lange Texte\n */\n@Component({\n selector: 'sac-inputarea',\n templateUrl: './inputarea.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => SacInputAreaComponent),\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacInputAreaComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n NgIf,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacInputAreaComponent extends SacInputAreaCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div class=\"form-group row\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <textarea\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"\"\n class=\"form-control\"\n [value]=\"value\"\n [attr.placeholder]=\"placeholder\"\n (blur)=\"onTouch()\"\n (input)=\"setValue($event.target.value)\"\n (keypress)=\"onKeyPress($event)\"\n [attr.rows]=\"rows\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n [disabled]=\"isdisabled\"\n [attr.maxlength]=\"maxtextlength\"\n [readonly]=\"readonly\"></textarea>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { AsyncPipe, NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacInputCurrencyCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n/**\n * Input Control für Währungen\n */\n@Component({\n selector: 'sac-inputcurrency',\n templateUrl: './inputcurrency.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => SacInputCurrencyComponent),\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacInputCurrencyComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n NgIf,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacInputCurrencyComponent extends SacInputCurrencyCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n class=\"input-group\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\"\n [class.has-validation]=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n <input\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"text\"\n inputmode=\"decimal\"\n class=\"form-control\"\n [value]=\"value\"\n (blur)=\"onTouch()\"\n (input)=\"setValue($event.target.value)\"\n [attr.placeholder]=\"placeholder\"\n (keypress)=\"onKeyPress($event)\"\n [disabled]=\"isdisabled\"\n [readonly]=\"readonly\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\" />\n <div class=\"input-group-append\">\n <span class=\"input-group-text\">{{ currency }}</span>\n </div>\n\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { AsyncPipe, NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacInputDecimalCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n/**\n * Input Komponente für Zahlen\n */\n@Component({\n selector: 'sac-inputdecimal',\n templateUrl: './inputdecimal.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => SacInputDecimalComponent),\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacInputDecimalComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n NgIf,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacInputDecimalComponent extends SacInputDecimalCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formlayout SacFormLayoutCommon to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formlayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formlayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <input\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"text\"\n inputmode=\"decimal\"\n class=\"form-control\"\n [value]=\"value\"\n (blur)=\"onTouch()\"\n (input)=\"setValue($event.target.value)\"\n [attr.placeholder]=\"placeholder\"\n [readonly]=\"readonly\"\n (keypress)=\"onKeyPress($event)\"\n [disabled]=\"isdisabled\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\" />\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { AsyncPipe, NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacInputEmailCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n/**\n * Input Box für E-Mail Adressen\n */\n@Component({\n selector: 'sac-inputemail',\n templateUrl: './inputemail.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => SacInputEmailComponent),\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacInputEmailComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n NgIf,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacInputEmailComponent extends SacInputEmailCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div class=\"form-group row\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n class=\"input-group\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\"\n [class.has-validation]=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n <div class=\"input-group-prepend\">\n <span class=\"input-group-text\">@</span>\n </div>\n <input\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"text\"\n inputmode=\"email\"\n class=\"form-control\"\n [value]=\"value\"\n (blur)=\"onTouch()\"\n (input)=\"setValue($event.target.value)\"\n [attr.placeholder]=\"placeholder\"\n [attr.maxlength]=\"maxtextlength\"\n autocomplete=\"email\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n [disabled]=\"isdisabled\"\n [readonly]=\"readonly\" />\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { AsyncPipe, NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacInputIntegerCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n/**\n * Input Komponten für Ganzzahlen\n */\n@Component({\n selector: 'sac-inputinteger',\n templateUrl: './inputinteger.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacInputIntegerComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacInputIntegerComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n NgIf,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacInputIntegerComponent extends SacInputIntegerCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div class=\"form-group row\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <input\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"text\"\n inputmode=\"decimal\"\n class=\"form-control\"\n [value]=\"value\"\n (blur)=\"onTouch()\"\n (input)=\"setValue($event.target.value)\"\n [attr.placeholder]=\"placeholder\"\n (keypress)=\"onKeyPress($event)\"\n [disabled]=\"isdisabled\"\n [readonly]=\"readonly\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\" />\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { AsyncPipe, NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacInputPasswordCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n/**\n * Input Box für Passwörter\n */\n@Component({\n selector: 'sac-inputpassword',\n templateUrl: './inputpassword.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacInputPasswordComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacInputPasswordComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n NgIf,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacInputPasswordComponent extends SacInputPasswordCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div class=\"form-group row\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n [class.input-group]=\"passwordeye\"\n [class.is-invalid]=\"passwordeye && isinlineerrorenabled && invalid && (dirty || touched)\">\n <input\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n [type]=\"passwordeyevisible ? 'text' : 'password'\"\n class=\"form-control\"\n [attr.placeholder]=\"placeholder\"\n [value]=\"value\"\n (blur)=\"onTouch()\"\n (input)=\"setValue($event.target.value)\"\n [attr.maxlength]=\"maxtextlength\"\n autocomplete=\"new-password\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n [disabled]=\"isdisabled\"\n [readonly]=\"readonly\" />\n <div\n *ngIf=\"passwordeye\"\n class=\"input-group-append\">\n <a\n class=\"btn btn-outline-secondary\"\n (click)=\"onTogglePasswordEye()\"\n ><span [ngClass]=\"passwordeyevisible ? PasswordEyeVisibleIcon : PasswordEyeHiddenIcon\"></span>\n </a>\n </div>\n <div\n *ngIf=\"!passwordeye && isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n <div\n *ngIf=\"passwordeye && isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacInputSearchCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n/**\n * Input Box für Suche\n */\n@Component({\n selector: 'sac-inputsearch',\n templateUrl: './inputsearch.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacInputSearchComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacInputSearchComponent),\n },\n ],\n standalone: true,\n imports: [\n NgIf,\n NgClass,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacInputSearchComponent extends SacInputSearchCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n id=\"{{ name }}_label\"\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n class=\"input-group\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\">\n <input\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"text\"\n inputmode=\"search\"\n class=\"form-control\"\n [value]=\"value\"\n [attr.placeholder]=\"placeholder\"\n (blur)=\"onTouch()\"\n (input)=\"setValue($event.target.value)\"\n [attr.maxlength]=\"maxtextlength\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n [disabled]=\"isdisabled\"\n [readonly]=\"readonly\" />\n <div class=\"input-group-append\">\n <button\n type=\"button\"\n class=\"btn btn-secondary\"\n id=\"{{ name }}_search\"\n (click)=\"searchClick()\">\n <i\n *ngIf=\"buttonmode === 'icon' || buttonmode === 'mixed'\"\n [class]=\"iconname\"\n [class.mr-2]=\"buttonmode === 'mixed'\"></i>\n <ng-container *ngIf=\"buttonmode === 'text' || buttonmode === 'mixed'\">{{ buttontext }}</ng-container>\n </button>\n </div>\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SacInputComponent } from './input';\nimport { SacInputAreaComponent } from './inputarea';\nimport { SacInputCurrencyComponent } from './inputcurrency';\nimport { SacInputDecimalComponent } from './inputdecimal';\nimport { SacInputEmailComponent } from './inputemail';\nimport { SacInputIntegerComponent } from './inputinteger';\nimport { SacInputPasswordComponent } from './inputpassword';\nimport { SacInputSearchComponent } from './inputsearch';\n\n@NgModule({\n imports: [\n CommonModule,\n SacInputComponent,\n SacInputAreaComponent,\n SacInputCurrencyComponent,\n SacInputDecimalComponent,\n SacInputEmailComponent,\n SacInputIntegerComponent,\n SacInputPasswordComponent,\n SacInputSearchComponent,\n ],\n exports: [\n SacInputComponent,\n SacInputAreaComponent,\n SacInputCurrencyComponent,\n SacInputDecimalComponent,\n SacInputEmailComponent,\n SacInputIntegerComponent,\n SacInputPasswordComponent,\n SacInputSearchComponent,\n ],\n})\nexport class SACBootstrap4InputModule {}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SacFormLayoutDirective } from './formlayout.directive';\nimport { SacToControlHeightPipe } from './tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from './tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from './tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from './tolabelwidthcss.pipe';\n\n@NgModule({\n imports: [\n CommonModule,\n SacFormLayoutDirective,\n SacToControlHeightPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToLabelWidthCssPipe,\n ],\n exports: [\n SacFormLayoutDirective,\n SacToControlHeightPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToLabelWidthCssPipe,\n ],\n})\nexport class SACBootstrap4LayoutModule {}\n","import {\n AsyncPipe,\n NgClass,\n NgFor,\n NgIf,\n NgTemplateOutlet,\n} from '@angular/common';\nimport {\n Component,\n Directive,\n ElementRef,\n Host,\n Injector,\n Optional,\n Renderer2,\n forwardRef,\n} from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport {\n SacDropdownCommon,\n SacDropdownOptionCommon,\n} from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n// #region Classes\n\n/**\n * Dropdown Komponente\n */\n@Component({\n selector: 'sac-dropdown',\n templateUrl: './dropdown.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacDropdownComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacDropdownComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n NgIf,\n forwardRef(() => SacDropdownOptionDirective),\n NgFor,\n NgTemplateOutlet,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacDropdownComponent extends SacDropdownCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n * @param renderer Angular rendering engine\n * @param elementRef Reference to html dom element\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector,\n renderer: Renderer2,\n elementRef: ElementRef\n ) {\n super(formLayout, injector, renderer, elementRef);\n }\n\n // #endregion Constructors\n}\n\n/**\n * Direktive für Dropdown Option List\n */\n@Directive({ selector: '[sacOption],option', standalone: true })\nexport class SacDropdownOptionDirective extends SacDropdownOptionCommon {\n // #region Constructors\n\n /**\n * Konstruktor\n * @param elementRef Referenz auf HTML DOM Element\n * @param renderer Angular Rendering Engine\n * @param dropdownList Referenz auf DropDown Komponente\n */\n constructor(\n elementRef: ElementRef,\n renderer: Renderer2,\n @Optional() @Host() dropdownList: SacDropdownComponent\n ) {\n super(elementRef, renderer, dropdownList);\n }\n\n // #endregion Constructors\n}\n\n// #endregion Classes\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\"\n ><div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <select\n #dropdownitem\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n class=\"form-control\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n (blur)=\"onTouch()\"\n (change)=\"setValue(dropdownitem.value)\"\n [disabled]=\"isdisabled\">\n <option\n *ngIf=\"emptylabel !== ''\"\n [ngValue]=\"emptyvalue\">\n {{ emptylabel }}\n </option>\n\n <ng-content></ng-content>\n\n <ng-container *ngIf=\"groupitems === ''\">\n <option\n *ngFor=\"let item of options\"\n [ngValue]=\"optionvalue ? item[optionvalue] : item\"\n [disabled]=\"optionenabled !== '' && item[optionenabled] === false\">\n <ng-template *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate; context: { label: item[optionlabel], item: item }\"> </ng-template>\n </option>\n </ng-container>\n\n <ng-container *ngIf=\"groupitems !== ''\">\n <optgroup\n *ngFor=\"let group of options\"\n [attr.label]=\"group[grouplabel]\">\n <option\n *ngFor=\"let item of group[groupitems]\"\n [ngValue]=\"optionvalue ? item[optionvalue] : item\"\n [disabled]=\"optionenabled !== '' && item[optionenabled] === false\">\n <ng-template *ngTemplateOutlet=\"optionlabeltemplate || defaultItemLabelTemplate; context: { label: item[optionlabel], item: item }\"> </ng-template>\n </option>\n </optgroup>\n </ng-container>\n </select>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n class=\"invalid-feedback\"\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n\n<ng-template\n #defaultItemLabelTemplate\n let-label=\"label\">\n {{ label }}\n</ng-template>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SacDropdownComponent, SacDropdownOptionDirective } from './dropdown';\n\n@NgModule({\n imports: [CommonModule, SacDropdownComponent, SacDropdownOptionDirective],\n exports: [SacDropdownComponent, SacDropdownOptionDirective],\n})\nexport class SACBootstrap4DropdownModule {}\n","import { AsyncPipe, NgClass, NgFor, NgIf } from '@angular/common';\nimport {\n Component,\n Directive,\n ElementRef,\n Host,\n Injector,\n Optional,\n Renderer2,\n forwardRef,\n} from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport {\n SacListboxCommon,\n SacListboxOptionCommon,\n} from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n// #region Classes\n\n/**\n * Listbox Komponente\n */\n@Component({\n selector: 'sac-listbox',\n templateUrl: './listbox.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacListboxComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacListboxComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n NgIf,\n NgFor,\n AsyncPipe,\n forwardRef(() => SacListboxOptionDirective),\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacListboxComponent extends SacListboxCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n\n/**\n * Option Item in Listbox\n */\n@Directive({ selector: '[sacOption],option', standalone: true })\nexport class SacListboxOptionDirective extends SacListboxOptionCommon {\n // #region Constructors\n\n /**\n * Konstruktor\n * @param elementRef Referenz auf DOM Element\n * @param renderer Angular Rendering Engine\n * @param listbox Referenz auf Listbox Komponente\n */\n constructor(\n elementRef: ElementRef,\n renderer: Renderer2,\n @Optional() @Host() listbox: SacListboxComponent\n ) {\n super(elementRef, renderer, listbox);\n }\n\n // #endregion Constructors\n}\n\n// #endregion Classes\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\"\n ><div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <select\n multiple\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n class=\"form-control\"\n [size]=\"rowsize\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n (blur)=\"onTouch()\"\n (change)=\"getSelectedItems($event.target)\"\n [disabled]=\"isdisabled\">\n <ng-content></ng-content>\n <ng-container *ngIf=\"groupitems === ''\">\n <option\n *ngFor=\"let option of options\"\n [value]=\"option[optionvalue]\"\n [disabled]=\"optionenabled !== '' && option[optionenabled] === false\">\n {{ option[optionlabel] }}\n </option>\n </ng-container>\n <ng-container *ngIf=\"groupitems !== ''\">\n <optgroup\n *ngFor=\"let option of options\"\n [attr.label]=\"option[grouplabel]\">\n <option\n *ngFor=\"let item of option[groupitems]\"\n [value]=\"item[optionvalue]\"\n [disabled]=\"optionenabled !== '' && item[optionenabled] === false\">\n {{ item[optionlabel] }}\n </option>\n </optgroup>\n </ng-container>\n </select>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n class=\"invalid-feedback\"\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SacListboxComponent, SacListboxOptionDirective } from './listbox';\n\n@NgModule({\n imports: [CommonModule, SacListboxComponent, SacListboxOptionDirective],\n exports: [SacListboxComponent, SacListboxOptionDirective],\n})\nexport class SACBootstrap4ListModule {}\n","import { Directive, ElementRef, forwardRef } from '@angular/core';\nimport { SacContextmenuAnchorCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Anker Komponente für Context Menü. Wird zum positionieren des Context Menü in der Page benötigt.\n */\n@Directive({\n selector: '[sacMultilanguageMenuAnchor]',\n providers: [\n {\n provide: SacContextmenuAnchorCommon,\n useExisting: forwardRef(() => SacMultilanguagemenuAnchorDirective),\n },\n ],\n standalone: true,\n})\nexport class SacMultilanguagemenuAnchorDirective extends SacContextmenuAnchorCommon {\n // #region Constructors\n\n /**\n * Konstruktor\n * @param elementRef HTML DOM Referenz\n */\n constructor(elementRef: ElementRef<HTMLElement>) {\n super(elementRef);\n }\n\n // #endregion Constructors\n}\n","import { Directive, ElementRef, forwardRef } from '@angular/core';\nimport { SacContextMenuContrainerCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Marker Komponente für Context Menü\n */\n@Directive({\n selector: '[sacMultilanguageMenuContainer]',\n providers: [\n {\n provide: SacContextMenuContrainerCommon,\n useExisting: forwardRef(() => SacMultilanguagemenuContainerDirective),\n },\n ],\n standalone: true,\n})\nexport class SacMultilanguagemenuContainerDirective extends SacContextMenuContrainerCommon {\n // #region Constructors\n\n /**\n * Konstruktor\n * @param elementRef Referenz auf DOM Element\n */\n constructor(elementRef: ElementRef<HTMLElement>) {\n super(elementRef);\n }\n\n // #endregion Constructors\n}\n","import { DOCUMENT, NgTemplateOutlet } from '@angular/common';\nimport {\n Component,\n ElementRef,\n Inject,\n Injector,\n NgZone,\n Renderer2,\n forwardRef,\n} from '@angular/core';\nimport { SacContextmenuCommon } from '@simpleangularcontrols/sac-common';\nimport { SacMultilanguagemenuAnchorDirective } from './multilanguagemenuanchor';\nimport { SacMultilanguagemenuContainerDirective } from './multilanguagemenucontainer';\n\n/**\n * Component für Contextmenü\n */\n@Component({\n selector: '[sac-multilanguagemenu]', // eslint-disable-line @angular-eslint/component-selector -- bootstrap requires append-items direct behind the previews element\n templateUrl: './multilanguagemenu.html',\n providers: [\n {\n provide: SacContextmenuCommon,\n useExisting: forwardRef(() => SacMultilanguagemenuComponent),\n },\n ],\n standalone: true,\n imports: [\n NgTemplateOutlet,\n SacMultilanguagemenuContainerDirective,\n SacMultilanguagemenuAnchorDirective,\n ],\n})\nexport class SacMultilanguagemenuComponent extends SacContextmenuCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param document Referenz auf HTML Document\n * @param ngZone Angular Zone Service\n * @param elementRef Referenz auf HTML Element der aktuellen Komponente\n * @param renderer Render Service von Angular\n * @param injector injector to resolve services in base component\n */\n constructor(\n @Inject(DOCUMENT) document: any,\n ngZone: NgZone,\n elementRef: ElementRef<HTMLElement>,\n renderer: Renderer2,\n injector: Injector\n ) {\n super(document, ngZone, elementRef, renderer, injector);\n }\n\n // #endregion Constructors\n}\n","<ng-container\n [ngTemplateOutlet]=\"buttontemplate || defaultButtonTemplate\"\n></ng-container>\n\n<div\n class=\"dropdown-menu dropdown-menu-right\"\n sacMultilanguageMenuContainer\n [class.show]=\"isopen\"\n>\n <ng-content></ng-content>\n</div>\n\n<ng-template #defaultButtonTemplate>\n <button\n sacMultilanguageMenuAnchor\n class=\"btn btn-secondary dropdown-toggle\"\n type=\"button\"\n (click)=\"toggle()\"\n ></button>\n</ng-template>\n","import { NgIf } from '@angular/common';\nimport { Component, forwardRef } from '@angular/core';\nimport { SacContextmenuItemButtonCommon, SacContextmenuItemCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Component for menu entry in context menu\n */\n@Component({\n selector: 'sac-multilanguagemenubutton',\n templateUrl: './multilanguagemenuitembutton.html',\n providers: [\n {\n provide: SacContextmenuItemCommon,\n useExisting: forwardRef(() => SacMultilanguagemenuItemButtonComponent),\n },\n ],\n standalone: true,\n imports: [NgIf],\n})\nexport class SacMultilanguagemenuItemButtonComponent extends SacContextmenuItemButtonCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param contextmenu Instance von Context Menü\n */\n constructor() {\n super();\n }\n\n // #endregion Constructors\n}\n","<button\n type=\"button\"\n class=\"dropdown-item\"\n (click)=\"callaction($event)\"\n [class.disabled]=\"isdisabled\"\n [class]=\"cssclass\"\n [attr.disabled]=\"isdisabled ? 'disabled' : null\"\n>\n <div class=\"d-flex\">\n <div *ngIf=\"!isicondisabled\" style=\"min-width: 1.5rem\">\n <img *ngIf=\"image\" [src]=\"image\" class=\"align-baseline\" />\n <i *ngIf=\"icon\" [class]=\"iconstyle + ' ' + icon\"></i>\n </div>\n <div class=\"flex-grow-1\">{{ text }}</div>\n </div>\n</button>\n","import { AsyncPipe, NgClass, NgFor, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport {\n IconType,\n SacMultilanguageInputCommon,\n} from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { SacMultilanguagemenuComponent } from './multilanguagemenu';\nimport { SacMultilanguagemenuAnchorDirective } from './multilanguagemenuanchor';\nimport { SacMultilanguagemenuItemButtonComponent } from './multilanguagemenuitembutton';\n\n/**\n * Componente für Mehrsprache Texte\n */\n@Component({\n selector: 'sac-multilanguageinput',\n templateUrl: './multilanguageinput.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacMultilanguageInputComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacMultilanguageInputComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n SacMultilanguagemenuComponent,\n SacMultilanguagemenuAnchorDirective,\n NgIf,\n NgFor,\n AsyncPipe,\n SacMultilanguagemenuItemButtonComponent,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacMultilanguageInputComponent extends SacMultilanguageInputCommon {\n // #region Properties\n\n /**\n * Enum für IconType in HTML Template\n */\n public IconType = IconType;\n\n // #endregion Properties\n\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n class=\"input-group\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\"\n [class.has-validation]=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n <input\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"text\"\n class=\"form-control\"\n [value]=\"LanguageValue\"\n [attr.placeholder]=\"placeholder\"\n (blur)=\"onTouch()\"\n (input)=\"SetLanguageValue($event.target.value)\"\n [attr.maxlength]=\"maxtextlength\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n [disabled]=\"isdisabled\" />\n <div\n placement=\"bottom-right\"\n class=\"input-group-append\"\n sac-multilanguagemenu\n [buttontemplate]=\"menuButton\"\n #contextmenu>\n <ng-template #menuButton>\n <button\n sacMultilanguageMenuAnchor\n [id]=\"name + '_dropdownitem'\"\n type=\"button\"\n class=\"btn dropdown-toggle\"\n (click)=\"contextmenu.toggle()\"\n [ngClass]=\"[IsAnyEmpty() ? 'btn-warning' : 'btn-secondary']\">\n <img\n src=\"{{ SelectedIcon }}\"\n class=\"align-baseline mr-1 ml-1\"\n *ngIf=\"SelectedIconType === IconType.Image\" />\n <span\n [ngClass]=\"SelectedIcon\"\n class=\"align-baseline mr-1 ml-1\"\n *ngIf=\"SelectedIconType === IconType.CssSprite\"></span>\n </button>\n </ng-template>\n <ng-container *ngFor=\"let sprache of Languages\">\n <sac-multilanguagemenubutton\n *ngIf=\"sprache.IconType === IconType.Image\"\n text=\"{{ sprache.Text }}\"\n image=\"{{ sprache.Icon }}\"\n [cssclass]=\"IsEmpty(sprache) ? 'text-danger border-left border-danger' : ''\"\n (clicked)=\"SelectLanguage(sprache)\"></sac-multilanguagemenubutton>\n <sac-multilanguagemenubutton\n *ngIf=\"sprache.IconType === IconType.CssSprite\"\n text=\"{{ sprache.Text }}\"\n icon=\"{{ sprache.Icon }}\"\n [cssclass]=\"IsEmpty(sprache) ? 'text-danger border-left border-danger' : ''\"\n (clicked)=\"SelectLanguage(sprache)\"></sac-multilanguagemenubutton>\n </ng-container>\n </div>\n\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n<div class=\"row\">\n <div class=\"col text-right\"></div>\n</div>\n","import { AsyncPipe, NgClass, NgFor, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport {\n IconType,\n SacMultilanguageInputAreaCommon,\n} from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { SacMultilanguagemenuComponent } from './multilanguagemenu';\nimport { SacMultilanguagemenuAnchorDirective } from './multilanguagemenuanchor';\nimport { SacMultilanguagemenuItemButtonComponent } from './multilanguagemenuitembutton';\n\n/**\n * Componente für Mehrsprache Texte als mehrzeiliger Text\n */\n@Component({\n selector: 'sac-multilanguageinputarea',\n templateUrl: './multilanguageinputarea.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacMultilanguageInputAreaComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacMultilanguageInputAreaComponent),\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n SacMultilanguagemenuComponent,\n SacMultilanguagemenuAnchorDirective,\n NgIf,\n NgFor,\n AsyncPipe,\n SacMultilanguagemenuItemButtonComponent,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacMultilanguageInputAreaComponent extends SacMultilanguageInputAreaCommon {\n // #region Properties\n\n /**\n * Enum für IconType in HTML Template\n */\n public IconType = IconType;\n\n // #endregion Properties\n\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n class=\"input-group\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\"\n [class.has-validation]=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n <textarea\n id=\"{{ name }}\"\n name=\"{{ name }}\"\n type=\"text\"\n class=\"form-control\"\n [value]=\"LanguageValue\"\n [attr.placeholder]=\"placeholder\"\n (blur)=\"onTouch()\"\n style=\"height: auto\"\n (input)=\"SetLanguageValue($event.target.value)\"\n [attr.rows]=\"rows\"\n [attr.maxlength]=\"maxtextlength\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n [disabled]=\"isdisabled\"></textarea>\n\n <div\n placement=\"bottom-right\"\n class=\"input-group-append\"\n sac-multilanguagemenu\n [buttontemplate]=\"menuButton\"\n #contextmenu>\n <ng-template #menuButton>\n <button\n sacMultilanguageMenuAnchor\n [id]=\"name + '_dropdownitem'\"\n type=\"button\"\n class=\"btn dropdown-toggle\"\n (click)=\"contextmenu.toggle()\"\n [ngClass]=\"[IsAnyEmpty() ? 'btn-warning' : 'btn-secondary']\">\n <img\n src=\"{{ SelectedIcon }}\"\n class=\"align-baseline mr-1 ml-1\"\n *ngIf=\"SelectedIconType === IconType.Image\" />\n <i\n [ngClass]=\"SelectedIcon\"\n class=\"align-baseline mr-1 ml-1\"\n *ngIf=\"SelectedIconType === IconType.CssSprite\"></i>\n </button>\n </ng-template>\n <ng-container *ngFor=\"let sprache of Languages\">\n <sac-multilanguagemenubutton\n *ngIf=\"sprache.IconType === IconType.Image\"\n text=\"{{ sprache.Text }}\"\n image=\"{{ sprache.Icon }}\"\n [cssclass]=\"IsEmpty(sprache) ? 'text-danger border-left border-danger' : ''\"\n (clicked)=\"SelectLanguage(sprache)\"></sac-multilanguagemenubutton>\n <sac-multilanguagemenubutton\n *ngIf=\"sprache.IconType === IconType.CssSprite\"\n text=\"{{ sprache.Text }}\"\n icon=\"{{ sprache.Icon }}\"\n [cssclass]=\"IsEmpty(sprache) ? 'text-danger border-left border-danger' : ''\"\n (clicked)=\"SelectLanguage(sprache)\"></sac-multilanguagemenubutton>\n </ng-container>\n </div>\n\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n<div class=\"row\">\n <div class=\"col text-right\"></div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SacMultilanguageInputComponent } from './multilanguageinput';\nimport { SacMultilanguageInputAreaComponent } from './multilanguageinputarea';\nimport { SacMultilanguagemenuComponent } from './multilanguagemenu';\nimport { SacMultilanguagemenuAnchorDirective } from './multilanguagemenuanchor';\nimport { SacMultilanguagemenuContainerDirective } from './multilanguagemenucontainer';\nimport { SacMultilanguagemenuItemButtonComponent } from './multilanguagemenuitembutton';\n\n@NgModule({\n imports: [\n CommonModule,\n SacMultilanguageInputComponent,\n SacMultilanguageInputAreaComponent,\n SacMultilanguagemenuComponent,\n SacMultilanguagemenuAnchorDirective,\n SacMultilanguagemenuContainerDirective,\n SacMultilanguagemenuItemButtonComponent,\n ],\n exports: [SacMultilanguageInputComponent, SacMultilanguageInputAreaComponent],\n})\nexport class SACBootstrap4MultilanguageModule {}\n","import { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacStaticFormContainerCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Component für einbindung eines beliebigen Controls in die Form Struktur\n *\n * @example\n * <ngStaticFormContainer name='myformcontainer' label=\"My Custom Form Control\" [isrequired]='false'>\n * <input type=\"range\" class=\"form-control\" />\n * </ngStaticFormContainer>\n *\n * @example\n * <ngStaticFormContainer name='myformcintainer' label=\"My Custom Form Control\" [isrequired]='false' tooltiptext=\"Dies ist ein Tooltip Text\">\n * <input type=\"range\" class=\"form-control\" />\n * </ngStaticFormContainer>\n *\n **/\n@Component({\n selector: 'sac-staticformcontainer',\n templateUrl: './formcontainer.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacStaticFormContainerComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacStaticFormContainerComponent),\n },\n ],\n standalone: true,\n imports: [\n NgIf,\n NgClass,\n SacToControlHeightPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacStaticFormContainerComponent extends SacStaticFormContainerCommon {\n // #region Constructors\n\n /**\n *\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(@Host() @Optional() formLayout: SacFormLayoutDirective, injector: Injector) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\n id=\"{{ name }}_label\"\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\"\n ><span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n [class.was-validated]=\"isinlineerrorenabled && isinvalid && errormessage\">\n <ng-content></ng-content>\n <label\n for=\"{{ name }}\"\n class=\"form-label-adaptive form-label-fixed\"\n [ngClass]=\"{ required: isrequired }\"\n *ngIf=\"isAdaptiveLabel && !disablelabel\">\n {{ label }}\n </label>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n class=\"invalid-feedback\"\n *ngIf=\"isinlineerrorenabled && isinvalid && errormessage\">\n {{ errormessage }}\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacStaticLabelCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n/**\n * Komponente für statischen Text in einem Formular\n */\n@Component({\n selector: 'sac-staticlabel',\n templateUrl: './staticlabel.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacStaticLabelComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacStaticLabelComponent),\n },\n ],\n standalone: true,\n imports: [\n NgIf,\n NgClass,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacStaticLabelComponent extends SacStaticLabelCommon {\n // #region Constructors\n\n /**\n *\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector\n ) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\n id=\"{{ name }}_label\"\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\"\n ><span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\"></span> </sac-tooltip\n ></label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div>\n <div\n [id]=\"name\"\n class=\"form-control-plaintext\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n [innerHTML]=\"value\"></div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SacStaticFormContainerComponent } from './formcontainer';\nimport { SacStaticLabelComponent } from './staticlabel';\n\n@NgModule({\n imports: [\n CommonModule,\n SacStaticLabelComponent,\n SacStaticFormContainerComponent,\n ],\n exports: [SacStaticLabelComponent, SacStaticFormContainerComponent],\n})\nexport class SACBootstrap4StaticLabelModule {}\n","import { Component } from '@angular/core';\nimport { SacTabItemCommon } from '@simpleangularcontrols/sac-common';\nimport { NgIf, NgTemplateOutlet } from '@angular/common';\n\n/**\n * Tab Item Komponente\n */\n@Component({\n selector: 'sac-tabitem',\n templateUrl: './tabitem.html',\n standalone: true,\n imports: [NgIf, NgTemplateOutlet],\n})\nexport class SacTabItemComponent extends SacTabItemCommon {}\n","<div [id]=\"id\" [hidden]=\"unloadwhenhidden === false && active === false\" *ngIf=\"(unloadwhenhidden === true && active === true) || unloadwhenhidden === false\" class=\"tab-pane\">\n <ng-template [ngTemplateOutlet]=\"templateRef\"></ng-template>\n</div>\n","import { Component, ContentChildren, QueryList } from '@angular/core';\nimport { SacTabCommon } from '@simpleangularcontrols/sac-common';\nimport { SacTabItemComponent } from './tabitem';\nimport { NgFor, NgClass, NgStyle } from '@angular/common';\n\n/**\n * Komponente für Tabs\n */\n@Component({\n selector: 'sac-tab',\n templateUrl: './tab.html',\n standalone: true,\n imports: [\n NgFor,\n NgClass,\n NgStyle,\n ],\n})\nexport class SacTabComponent extends SacTabCommon {\n /**\n * Collection von TabItems\n */\n @ContentChildren(SacTabItemComponent)\n _tabItems: QueryList<SacTabItemComponent>;\n\n /**\n * Gibt die TabItems zurück\n * @returns Array von TabItems\n */\n tabItems(): SacTabItemComponent[] {\n return this._tabItems.toArray() as Array<SacTabItemComponent>;\n }\n}\n","<!-- Nav tabs -->\n<div class=\"nav nav-tabs\" role=\"tablist\">\n <a\n *ngFor=\"let item of _tabItems\"\n [id]=\"GetTabItemButtonId(item.id)\"\n role=\"tab\"\n class=\"nav-item nav-link active\"\n data-toggle=\"tab\"\n [ngClass]=\"{ 'active show': item.active, 'disabled': item.disabled }\"\n (click)=\"selectTab(item)\"\n [ngStyle]=\"{'cursor': item.disabled ? 'not-allowed' : 'pointer'}\"\n >{{item.label}}</a\n >\n</div>\n\n<!-- Tab panes -->\n<div class=\"tab-content pl-3 pt-2\">\n <ng-content></ng-content>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SacTabComponent } from './tab';\nimport { SacTabItemComponent } from './tabitem';\n\n@NgModule({\n imports: [\n CommonModule,\n SacTabComponent, SacTabItemComponent\n ],\n exports: [SacTabComponent, SacTabItemComponent]\n})\nexport class SACBootstrap4TabsModule { }\n","import {\n SacBrowserComponent,\n SacToControlHeightPipe,\n SacToControlWidthCssPipe,\n SacToLabelWidthCssPipe,\n} from '../../public_api';\nimport { SacButtonComponent } from '../buttons';\nimport { SacDialogComponent } from '../dialog';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { AsyncPipe, NgClass, NgIf } from '@angular/common';\nimport { Component, Host, Injector, NgZone, Optional, forwardRef } from '@angular/core';\nimport { FormsModule, NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacTinyMceCommon } from '@simpleangularcontrols/sac-common';\nimport { EditorComponent } from '@tinymce/tinymce-angular';\n\n/**\n * TinyMCE Komponente\n */\n@Component({\n selector: 'sac-tinymce',\n templateUrl: './tinymce.html',\n styleUrls: ['./tinymce.scss'],\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacTinyMceComponent,\n },\n {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => SacTinyMceComponent),\n multi: true,\n },\n ],\n standalone: true,\n imports: [\n NgClass,\n EditorComponent,\n FormsModule,\n NgIf,\n SacDialogComponent,\n SacBrowserComponent,\n SacButtonComponent,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacTooltipComponent,\n SacToControlHeightPipe,\n ],\n})\nexport class SacTinyMceComponent extends SacTinyMceCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n * @param ngZone ngZone to manage external javascripts\n */\n constructor(@Host() @Optional() formLayout: SacFormLayoutDirective, injector: Injector, ngZone: NgZone) {\n super(formLayout, injector, ngZone);\n }\n\n // #endregion Constructors\n\n // #region Public Methods\n\n /**\n * overwrite tinymce defaults\n * @returns boostrap4 has no overwrites\n */\n public overwriteDefaultSettings() {\n return {};\n }\n\n // #endregion Public Methods\n}\n","<div class=\"row form-group\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\"\n ><div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <editor\n [id]=\"name + '_tinymce'\"\n [init]=\"_config\"\n [initialValue]=\"value\"\n ngModel\n [ngModelOptions]=\"{ standalone: true }\"\n (ngModelChange)=\"setValue($event)\"\n (onSaveContent)=\"save($event.event.content)\"\n [disabled]=\"disabled\"\n [class.is-invalid]=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n </editor>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n\n<sac-dialog\n *ngIf=\"selectdialogvisible\"\n [allowesc]=\"false\"\n [backdrop]=\"true\"\n [(isvisible)]=\"selectdialogvisible\"\n title=\"{{ lngResourceService.GetString(validationKeyService.TinyMceFileselectDialogtitle) | async }}\"\n size=\"large\"\n height=\"500px\">\n <ng-container dialogbody>\n <sac-filebrowser\n [apiurl]=\"filebrowserapiurl\"\n (file)=\"selectDialogSettings.value = $event\"\n [allowfoldercreate]=\"allowfoldercreate\"\n [allowfolderrename]=\"allowfolderrename\"\n [allowfolderdelete]=\"allowfolderdelete\"\n [allowfileupload]=\"allowfileupload\"\n [allowfilerename]=\"allowfilerename\"\n [allowfiledelete]=\"allowfiledelete\"\n [selectedfile]=\"selectDialogSettings.value\"\n [allowedtypes]=\"selectDialogSettings.allowedtypes\"></sac-filebrowser>\n </ng-container>\n <ng-container dialogfooter>\n <sac-button\n role=\"primary\"\n [name]=\"name + '_modalOk'\"\n text=\"{{ lngResourceService.GetString(validationKeyService.TinyMceFileselectOk) | async }}\"\n (clicked)=\"setSelectDialogResult()\"></sac-button>\n <sac-button\n [name]=\"name + '_modalClose'\"\n text=\"{{ lngResourceService.GetString(validationKeyService.TinyMceFileselectCancel) | async }}\"\n (clicked)=\"closeSelectDialog()\"></sac-button>\n </ng-container>\n</sac-dialog>\n","import { NgModule } from '@angular/core';\nimport { SacTinyMceComponent } from './tinymce';\n\n@NgModule({\n imports: [SacTinyMceComponent],\n exports: [SacTinyMceComponent],\n})\nexport class SACBootstrap4TinyMceModule {}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SacTooltipComponent } from './tooltip';\n\n@NgModule({\n imports: [CommonModule, SacTooltipComponent],\n exports: [SacTooltipComponent],\n})\nexport class SACBootstrap4TooltipModule {}\n","import { SacContextmenuComponent } from '../contextmenu';\nimport { SacContextmenuItemButtonComponent } from '../contextmenu/contextmenuitembutton';\nimport { SacContextmenuItemSplitterComponent } from '../contextmenu/contextmenuitemsplitter';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { AsyncPipe, JsonPipe, NgClass, NgFor, NgIf, NgTemplateOutlet } from '@angular/common';\nimport { Component, Host, Injector, Optional, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacTreeviewCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Treeview Compomnent\n */\n@Component({\n selector: 'sac-treeview',\n templateUrl: './treeview.html',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacTreeviewComponent,\n },\n {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => SacTreeviewComponent),\n multi: true,\n },\n ],\n standalone: true,\n imports: [\n NgIf,\n JsonPipe,\n NgFor,\n NgTemplateOutlet,\n NgClass,\n SacContextmenuComponent,\n SacContextmenuItemButtonComponent,\n SacContextmenuItemSplitterComponent,\n SacToLabelWidthCssPipe,\n SacToLabelHeightPipe,\n SacTooltipComponent,\n SacToControlWidthCssPipe,\n AsyncPipe,\n SacToControlHeightPipe,\n ],\n})\nexport class SacTreeviewComponent extends SacTreeviewCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Component Injector\n */\n constructor(@Host() @Optional() formLayout: SacFormLayoutDirective, injector: Injector) {\n super(formLayout, injector);\n }\n\n // #endregion Constructors\n}\n","<div\n class=\"row mb-3\"\n [class.g-0]=\"disablelabel\">\n <label\n for=\"{{ name }}\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\">\n <div [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n class=\"w-100\"\n [style.min-width]=\"helptextmode === 'tooltip' && helptext && disablelabel ? 0 : null\"\n [class.mr-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <ul\n class=\"list-group list-group-flush\"\n id=\"{{ name }}\"\n [class.is-invalid]=\"invalid && (dirty || touched)\"\n [class.border]=\"invalid && (dirty || touched)\"\n [class.border-danger]=\"invalid && (dirty || touched)\">\n <ng-container *ngFor=\"let node of data\">\n <ng-template\n [ngTemplateOutlet]=\"treeItem\"\n [ngTemplateOutletContext]=\"{ node: node, deep: 0, path: '', textpath: '' }\">\n </ng-template>\n </ng-container>\n </ul>\n\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n </div>\n</div>\n<ng-template\n #treeItem\n let-node=\"node\"\n let-deep=\"deep\"\n let-path=\"path\"\n let-textpath=\"textpath\">\n <li\n class=\"list-group-item list-group-item-action py-1 px-2 d-flex align-items-center\"\n [class.active]=\"isSelectedState(node)\"\n (mouseenter)=\"setHoverState(node, true)\"\n (mouseleave)=\"setHoverState(node, false)\"\n style=\"cursor: pointer\"\n attr.data-path=\"{{ path }}/{{ getStringField(node, attrid) }}\"\n attr.data-textpath=\"{{ textpath }}/{{ getStringField(node, attrlabel) }}\">\n <div\n class=\"mx-3\"\n *ngFor=\"let i of count(deep)\">\n </div>\n\n <div\n (click)=\"onNodeClicked(node)\"\n *ngIf=\"expandedstate === 'true' || expandedstate === true\"\n class=\"mr-2\"\n [ngClass]=\"!hasChildren(node) ? iconFolderEmpty : !isExpandedState(node) ? iconFolderCollabsed : isExpandedState(node) ? iconFolderOpen : ''\">\n </div>\n\n <div\n (click)=\"onNodeClicked(node)\"\n *ngIf=\"attricon && getStringField(node, attricon)\">\n <ng-template\n [ngTemplateOutlet]=\"templateicon || defaultTemplateIcon\"\n [ngTemplateOutletContext]=\"{ node: node }\">\n </ng-template>\n </div>\n\n <div\n (click)=\"onNodeClicked(node)\"\n class=\"flex-grow-1 py-1\"\n [style.overflow]=\"enableellipsis ? 'hidden' : null\"\n [style.text-overflow]=\"enableellipsis ? 'ellipsis' : null\"\n [style.white-space]=\"enableellipsis ? 'nowrap' : null\">\n <ng-template\n [ngTemplateOutlet]=\"templatelabel || defaultTemplateLabel\"\n [ngTemplateOutletContext]=\"{ node: node, label: getStringField(node, attrlabel) }\">\n </ng-template>\n </div>\n\n <div\n (click)=\"setSelectedState(node)\"\n class=\"flex-shrink-0\"\n *ngIf=\"!isDisabledState(node) && (showactionalways || isSelectedState(node) || isHoverState(node))\">\n <ng-template\n [ngTemplateOutlet]=\"templateaction || defaultTemplateAction\"\n [ngTemplateOutletContext]=\"{ node: node, actionhandler: onActionClicked.bind(this) }\">\n </ng-template>\n </div>\n </li>\n\n <ng-container *ngIf=\"isExpandedState(node)\">\n <ng-template\n *ngFor=\"let child of getChildren(node)\"\n [ngTemplateOutlet]=\"treeItem\"\n [ngTemplateOutletContext]=\"{\n node: child,\n deep: deep + 1,\n path: path + '/' + getStringField(node, attrid),\n textpath: textpath + '/' + getStringField(node, attrlabel)\n }\">\n </ng-template>\n </ng-container>\n</ng-template>\n<ng-template\n #defaultTemplateLabel\n let-label=\"label\"\n let-node=\"node\">\n <span [title]=\"label\">\n {{ label }}\n </span>\n</ng-template>\n\n<ng-template\n #defaultTemplateIcon\n let-node=\"node\">\n <div\n class=\"mr-2\"\n [ngClass]=\"getStringField(node, attricon)\">\n </div>\n</ng-template>\n\n<ng-template\n #defaultTemplateAction\n let-node=\"node\"\n let-actionhandler=\"actionhandler\">\n <a\n class=\"btn btn-sm btn-link text-secondary\"\n (click)=\"actionhandler({ action: 'default', node: node })\">\n <i [class]=\"iconAction\"></i>\n </a>\n</ng-template>\n","import { SacTreeviewComponent } from './treeview';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\n@NgModule({\n imports: [CommonModule, SacTreeviewComponent],\n exports: [SacTreeviewComponent],\n})\nexport class SACBootstrap4TreeviewModule {}\n","import { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { AsyncPipe, NgClass, NgFor, NgIf } from '@angular/common';\nimport { Component, Host, Injector, NgZone, OnInit, Optional, Renderer2, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacDropzoneSingleCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Dropzone Komponente für den Upload eines Files\n * @see https://github.com/kukhariev/ngx-uploadx/\n */\n@Component({\n selector: 'sac-dropzonesingle',\n templateUrl: './dropzonesingle.html',\n styleUrls: ['./dropzone.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacDropzoneSingleComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacDropzoneSingleComponent),\n },\n ],\n standalone: true,\n imports: [\n NgIf,\n NgClass,\n NgFor,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacTooltipComponent,\n SacToControlHeightPipe,\n ],\n})\nexport class SacDropzoneSingleComponent extends SacDropzoneSingleCommon implements OnInit {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n * @param renderer Angular rendering engine\n * @param ngZone ngZone to manage external javascripts\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector,\n renderer: Renderer2,\n ngZone: NgZone\n ) {\n super(formLayout, injector, renderer, ngZone);\n }\n\n // #endregion Constructors\n\n // #region Public Methods\n\n /**\n * Initialisiert das Control\n */\n public ngOnInit() {\n super.ngOnInit();\n }\n\n // #endregion Public Methods\n}\n","<div\n id=\"{{ name }}\"\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\n id=\"{{ name }}_label\"\n for=\"{{ name }}_uploadinput\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\"\n ><span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\"></span> </sac-tooltip\n ></label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n class=\"dropzone d-flex justify-content-center position-relative\"\n (drop)=\"dropHandler($event)\"\n (dragover)=\"onDragOver($event)\"\n (dragleave)=\"onDragLeave($event)\"\n [style.min-height]=\"uploadheight\"\n [class.active]=\"active\"\n [class.is-invalid]=\"invalid && (dirty || touched)\">\n <div\n class=\"content d-flex justify-content-center\"\n *ngIf=\"uploads.length === 0\">\n <div class=\"align-self-center text-center\">\n <div [class.is-invalid]=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n <div\n class=\"content d-flex justify-content-center\"\n *ngIf=\"uploads.length > 0\">\n <div class=\"align-self-center progress-container\">\n <div\n class=\"dropzone-uploadstates\"\n *ngFor=\"let file of uploads\">\n <div\n class=\"input-group upload-component upload-component-multiple\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\">\n <div class=\"form-control upload-progress border-secondary\">\n <div class=\"progress\">\n <div\n class=\"progress-bar\"\n [class.progress-bar-success]=\"file.progress === 100\"\n role=\"progressbar\"\n [attr.aria-valuenow]=\"file.progress\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n [style.width.%]=\"file.progress\">\n <span class=\"progress-text text-dark\">{{ file.name }}</span>\n </div>\n </div>\n </div>\n <div class=\"input-group-append\">\n <!-- image-preview-clear button -->\n <a\n class=\"btn\"\n (click)=\"cancel(file.uploadId)\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconDelete\"></span>\n </a>\n </div>\n </div>\n </div>\n </div>\n </div>\n <input\n #files\n id=\"{{ name }}_uploadinput\"\n type=\"file\"\n class=\"custom-file-input\"\n (click)=\"files.value = ''\"\n (uploadxState)=\"onUpload($event)\"\n [disabled]=\"HasQueueItem()\" />\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { AsyncPipe, NgClass, NgIf } from '@angular/common';\nimport {\n Component,\n Host,\n Injector,\n NgZone,\n Optional,\n Renderer2,\n forwardRef,\n} from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacUploadSingleCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\n\n/**\n * Upload Komponten\n * @see https://github.com/kukhariev/ngx-uploadx/\n */\n@Component({\n selector: 'sac-upload',\n templateUrl: './upload.html',\n styleUrls: ['./upload.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacUploadComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacUploadComponent),\n },\n ],\n standalone: true,\n imports: [\n NgIf,\n NgClass,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacUploadComponent extends SacUploadSingleCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n * @param renderer Angular rendering engine\n * @param ngZone ngZone to manage external javascripts\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector,\n renderer: Renderer2,\n ngZone: NgZone\n ) {\n super(formLayout, injector, renderer, ngZone);\n }\n\n // #endregion Constructors\n}\n","<div\n id=\"{{ name }}\"\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\n id=\"{{ name }}_label\"\n for=\"{{ name }}_uploadinput\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div [class.flex-grow-1]=\"helptextmode === 'tooltip' && helptext && disablelabel\">\n <div\n class=\"input-group upload-component upload-single\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\"\n [class.is-invalid]=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n <div class=\"input-group-prepend\">\n <!-- image-preview-input -->\n <div\n class=\"btn upload-input custom-file\"\n [class.disabled]=\"HasQueueItem()\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <i\n class=\"pr-2\"\n [ngClass]=\"IconBrowse\"></i>\n <span class=\"upload-browse\">{{ buttonbrowse ? buttonbrowse : (lngResourceService.GetString(validationKeyService.UploadButtonBrowse) | async) }}</span>\n <input\n type=\"file\"\n id=\"{{ name }}_uploadinput\"\n class=\"custom-file-input\"\n #files\n (click)=\"files.value = ''\"\n (uploadxState)=\"onUpload($event)\"\n multiple\n [disabled]=\"HasQueueItem()\" />\n </div>\n </div>\n <div\n class=\"form-control upload-progress\"\n [ngClass]=\"[componentHeight | toControlHeight]\"\n [class.is-invalid]=\"invalid && (dirty || touched)\">\n <div class=\"progress\">\n <div\n class=\"progress-bar\"\n [class.progress-bar-success]=\"Progress() === 100\"\n role=\"progressbar\"\n [attr.aria-valuenow]=\"Progress()\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n [style.width.%]=\"Progress()\">\n <span class=\"progress-text text-dark\">{{ Filename() | async }}</span>\n </div>\n </div>\n </div>\n <!-- <input type=\"textimage-preview-filename\" class=\"form-control image-preview-filename\" disabled=\"disabled\"> --><!-- don't give a name === doesn't send on POST/GET -->\n <div class=\"input-group-append\">\n <!-- image-preview-clear button -->\n <button\n class=\"btn\"\n (click)=\"cancelAll()\"\n [attr.disabled]=\"HasQueueItem() === false ? 'disabled' : null\"\n [class.disabled]=\"HasQueueItem() === false ? 'disabled' : null\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [ngClass]=\"IconDelete\"></span>\n </button>\n <button\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && IsPaused() === false)\"\n class=\"btn\"\n (click)=\"pauseAll()\"\n [attr.disabled]=\"IsUploading() === false ? 'disabled' : null\"\n [class.disabled]=\"IsUploading() === false ? 'disabled' : null\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [ngClass]=\"IconPause\"></span>\n </button>\n <button\n *ngIf=\"autoupload && enablepause && IsPaused()\"\n class=\"btn\"\n (click)=\"uploadAll()\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [ngClass]=\"IconContinue\"></span>\n </button>\n <button\n *ngIf=\"autoupload === false\"\n class=\"btn text-nowrap\"\n (click)=\"uploadAll()\"\n [attr.disabled]=\"IsStateToUpload() === false ? 'disabled' : null\"\n [class.disabled]=\"IsStateToUpload() === false ? 'disabled' : null\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span\n [ngClass]=\"IconUpload\"\n class=\"pr-2\"></span\n >{{ buttonupload ? buttonupload : (lngResourceService.GetString(validationKeyService.UploadButtonUpload) | async) }}\n </button>\n </div>\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n</div>\n","import { SacFormLayoutDirective } from '../layout/formlayout.directive';\nimport { SacToControlHeightPipe } from '../layout/tocontrolheight.pipe';\nimport { SacToControlWidthCssPipe } from '../layout/tocontrolwidthcss.pipe';\nimport { SacToLabelHeightPipe } from '../layout/tolabelheight.pipe';\nimport { SacToLabelWidthCssPipe } from '../layout/tolabelwidthcss.pipe';\nimport { SacTooltipComponent } from '../tooltip/tooltip';\nimport { AsyncPipe, NgClass, NgFor, NgIf } from '@angular/common';\nimport { Component, Host, Injector, NgZone, Optional, Renderer2, forwardRef } from '@angular/core';\nimport { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacUploadMultipleCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Upload Komponente für den Upload mehrer Files\n * @see https://github.com/kukhariev/ngx-uploadx/\n */\n@Component({\n selector: 'sac-uploadmultiple',\n templateUrl: './uploadmultiple.html',\n styleUrls: ['./upload.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacUploadMultipleComponent,\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: forwardRef(() => SacUploadMultipleComponent),\n },\n ],\n standalone: true,\n imports: [\n NgIf,\n NgClass,\n NgFor,\n AsyncPipe,\n SacToLabelWidthCssPipe,\n SacToControlWidthCssPipe,\n SacToLabelHeightPipe,\n SacToControlHeightPipe,\n SacTooltipComponent,\n ],\n})\nexport class SacUploadMultipleComponent extends SacUploadMultipleCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formLayout SacFormLayout to define scoped layout settings\n * @param injector Injector for injecting services\n * @param renderer Angular rendering engine\n * @param ngZone ngZone to manage external javascripts\n */\n constructor(\n @Host() @Optional() formLayout: SacFormLayoutDirective,\n injector: Injector,\n renderer: Renderer2,\n ngZone: NgZone\n ) {\n super(formLayout, injector, renderer, ngZone);\n }\n\n // #endregion Constructors\n}\n","<div\n id=\"{{ name }}\"\n class=\"row form-group\"\n [class.no-gutters]=\"disablelabel\">\n <label\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\n id=\"{{ name }}_label\"\n for=\"{{ name }}_uploadinput\"\n class=\"col-12 col-form-label d-flex\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only', componentHeight | toLabelHeight]\"\n [class.required]=\"isrequired\">\n <div\n class=\"text flex-grow-0\"\n [class.flex-sm-grow-1]=\"splitlabelandhelptext\">\n {{ label }}\n </div>\n <sac-tooltip\n *ngIf=\"helptextmode === 'tooltip' && helptext\"\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </label>\n <div\n class=\"col-12\"\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\">\n <div class=\"upload-component\">\n <div class=\"row\">\n <div class=\"col-12\">\n <div\n [class.d-flex]=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n [class.is-invalid]=\"isinlineerrorenabled && invalid && (dirty || touched)\">\n <div\n class=\"btn-group\"\n [class.btn-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.btn-group-lg]=\"componentHeight === ControlHeight.Large\">\n <div\n class=\"btn upload-input custom-file\"\n [class.disabled]=\"maxfiles > 0 && uploads.length >= maxfiles\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <i\n [ngClass]=\"IconBrowse\"\n class=\"pr-2\"></i>\n <span class=\"upload-browse\">{{\n buttonbrowse ? buttonbrowse : (lngResourceService.GetString(validationKeyService.UploadButtonBrowse) | async)\n }}</span>\n <input\n type=\"file\"\n id=\"{{ name }}_uploadinput\"\n class=\"custom-file-input\"\n #files\n (click)=\"files.value = ''\"\n (uploadxState)=\"onUpload($event)\"\n multiple\n [disabled]=\"maxfiles > 0 && uploads.length >= maxfiles\" />\n </div>\n\n <div\n class=\"btn-group\"\n [class.btn-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.btn-group-lg]=\"componentHeight === ControlHeight.Large\">\n <!-- image-preview-clear button -->\n <button\n class=\"btn\"\n (click)=\"cancelAll()\"\n [attr.disabled]=\"HasQueueItem() === false ? 'disabled' : null\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [ngClass]=\"IconDelete\"></span>\n </button>\n <button\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && IsPaused() === false)\"\n class=\"btn\"\n (click)=\"pauseAll()\"\n [attr.disabled]=\"IsUploading() === false ? 'disabled' : null\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [ngClass]=\"IconPause\"></span>\n </button>\n <button\n *ngIf=\"autoupload && enablepause && IsPaused() === true\"\n class=\"btn\"\n (click)=\"uploadAll()\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [ngClass]=\"IconContinue\"></span>\n </button>\n <button\n *ngIf=\"autoupload === false\"\n class=\"btn text-nowrap\"\n (click)=\"uploadAll()\"\n [attr.disabled]=\"IsStateToUpload() === false ? 'disabled' : null\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span\n [ngClass]=\"IconUpload\"\n class=\"pr-2\"></span\n >{{ buttonupload ? buttonupload : (lngResourceService.GetString(validationKeyService.UploadButtonUpload) | async) }}\n </button>\n </div>\n </div>\n <div\n *ngIf=\"helptextmode === 'tooltip' && helptext && disablelabel\"\n class=\"form-control-plaintext align-self-top ml-2 mr-1 w-auto\"\n [ngClass]=\"[componentHeight | toControlHeight]\">\n <sac-tooltip\n [tooltiptext]=\"helptext\"\n [inlinemode]=\"true\">\n <span\n [ngClass]=\"HelptextTooltipIcon\"\n class=\"ml-1\">\n </span>\n </sac-tooltip>\n </div>\n </div>\n <div\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\n class=\"invalid-feedback\">\n {{ GetErrorMessage() | async }}\n </div>\n </div>\n </div>\n\n <div\n *ngFor=\"let file of uploads\"\n style=\"margin-top: 5px\">\n <div\n class=\"input-group upload-component upload-multiple\"\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\">\n <div\n class=\"form-control upload-progress\"\n [class.is-invalid]=\"invalid && (dirty || touched)\">\n <div class=\"progress\">\n <div\n class=\"progress-bar\"\n [class.progress-bar-success]=\"file.progress === 100\"\n role=\"progressbar\"\n [attr.aria-valuenow]=\"file.progress\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n [style.width.%]=\"file.progress\">\n <span class=\"progress-text text-dark\">{{ file.name }}</span>\n </div>\n </div>\n </div>\n <div class=\"input-group-append\">\n <!-- image-preview-clear button -->\n <button\n class=\"btn\"\n (click)=\"cancel(file.uploadId)\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconDelete\"></span>\n </button>\n <button\n *ngIf=\"(autoupload === false && enablepause) || (autoupload && enablepause && file.status !== 'paused')\"\n class=\"btn\"\n (click)=\"pause(file.uploadId)\"\n [attr.disabled]=\"file.status !== 'uploading' ? 'disabled' : null\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconPause\"></span>\n </button>\n <button\n *ngIf=\"autoupload && enablepause && file.status === 'paused'\"\n class=\"btn\"\n (click)=\"upload(file.uploadId)\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span [class]=\"IconContinue\"></span>\n </button>\n <button\n *ngIf=\"autoupload === false\"\n class=\"btn text-nowrap\"\n (click)=\"upload(file.uploadId)\"\n [attr.disabled]=\"file.status !== 'added' && file.status !== 'paused' ? 'disabled' : null\"\n [class.btn-secondary]=\"!(invalid && (dirty || touched))\"\n [class.btn-danger]=\"invalid && (dirty || touched)\">\n <span\n [ngClass]=\"IconUpload\"\n class=\"pr-2\"></span\n >{{ buttonupload ? buttonupload : (lngResourceService.GetString(validationKeyService.UploadButtonUpload) | async) }}\n </button>\n </div>\n </div>\n </div>\n </div>\n <small\n *ngIf=\"helptextmode === 'text' && helptext\"\n class=\"form-text text-muted\">\n {{ helptext }}\n </small>\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { SacDropzoneMultipleComponent } from './dropzonemultiple';\nimport { SacDropzoneSingleComponent } from './dropzonesingle';\nimport { SacUploadComponent } from './upload';\nimport { SacUploadMultipleComponent } from './uploadmultiple';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n SacUploadComponent,\n SacUploadMultipleComponent,\n SacDropzoneSingleComponent,\n SacDropzoneMultipleComponent,\n ],\n exports: [\n SacUploadComponent,\n SacUploadMultipleComponent,\n SacDropzoneSingleComponent,\n SacDropzoneMultipleComponent,\n ],\n})\nexport class SACBootstrap4UploadModule {}\n","import { AsyncPipe, NgFor, NgIf } from '@angular/common';\nimport { Component, Host, Injector, Optional } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { SacValidationSummaryCommon } from '@simpleangularcontrols/sac-common';\nimport { SacFormDirective } from '../form/form';\n\n/**\n * Validation Summary Kompontente\n */\n@Component({\n selector: 'sac-validationsummary',\n templateUrl: './validationsummary.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: SacValidationSummaryComponent,\n },\n ],\n standalone: true,\n imports: [NgIf, NgFor, AsyncPipe],\n})\nexport class SacValidationSummaryComponent extends SacValidationSummaryCommon {\n // #region Constructors\n\n /**\n * Constructor\n * @param formControl Instance of Form Component to receive invalid form controls\n * @param injector Injector for injecting services\n */\n constructor(\n @Host() @Optional() parentForm: SacFormDirective,\n injector: Injector\n ) {\n super(parentForm, injector);\n }\n\n // #endregion Constructors\n}\n","<div class=\"alert alert-danger\" role=\"alert\" *ngIf=\"hasErrors\">\n <ul class=\"mb-0\">\n <li *ngFor=\"let error of formErrors\">{{error | async}}</li>\n </ul>\n</div>\n","import { NgModule } from '@angular/core';\nimport { SacValidationSummaryComponent } from './validationsummary';\nimport { CommonModule } from '@angular/common';\n\n@NgModule({\n imports: [\n CommonModule,\n SacValidationSummaryComponent\n ],\n exports: [SacValidationSummaryComponent]\n})\nexport class SACBootstrap4ValidationSummaryModule { }\n","import { Component } from '@angular/core';\nimport { SacWizardItemCommon } from '@simpleangularcontrols/sac-common';\n\n/**\n * Wizard Komponente Item\n */\n@Component({\n selector: 'sac-wizarditem',\n templateUrl: './wizarditem.html',\n standalone: true,\n})\nexport class SacWizardItemComponent extends SacWizardItemCommon {}\n","","import { Component, ContentChildren, QueryList } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport {\n SacWizardCommon,\n SacWizardItemCommon,\n} from '@simpleangularcontrols/sac-common';\nimport { SacWizardItemComponent } from './wizarditem';\nimport { NgFor, NgClass, NgStyle } from '@angular/common';\n\n/**\n * Wizard Komponente\n */\n@Component({\n selector: 'sac-wizard',\n templateUrl: './wizard.html',\n // Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann\n providers: [\n { provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacWizardComponent },\n ],\n standalone: true,\n imports: [\n NgFor,\n NgClass,\n NgStyle,\n ],\n})\nexport class SacWizardComponent extends SacWizardCommon {\n /**\n * Wizard Items\n */\n @ContentChildren(SacWizardItemComponent)\n _wizardItems: QueryList<SacWizardItemComponent>;\n\n /**\n * Gibt die Wizard Items zurück\n * @returns Collection von WizardItems\n */\n wizardItems(): QueryList<SacWizardItemCommon> {\n return this._wizardItems as QueryList<SacWizardItemCommon>;\n }\n}\n","<ul class=\"nav nav-wizard\" role=\"tablist\">\n <li\n *ngFor=\"let item of _wizardItems\"\n class=\"nav-item\"\n [ngClass]=\"{ 'active': item.active, 'disabled': item.disabled, 'success': item.iscomplete }\"\n [ngStyle]=\"{'cursor': item.disabled ? 'not-allowed' : 'pointer'}\"\n >\n <a role=\"tab\" (click)=\"selectStep(item)\">\n <div class=\"circle\">\n <span class=\"step\"></span>\n </div>\n </a>\n <div class=\"info\">\n <a (click)=\"selectStep(item)\">{{item.label}}</a>\n </div>\n </li>\n</ul>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SacWizardComponent } from './wizard';\nimport { SacWizardItemComponent } from './wizarditem';\n\n@NgModule({\n imports: [\n CommonModule,\n SacWizardComponent, SacWizardItemComponent\n ],\n exports: [SacWizardComponent, SacWizardItemComponent]\n})\nexport class SACBootstrap4WizardModule { }\n","/*\n * Public API Surface of sac-bootstrap4\n */\nexport * from './components/browser/browser.module';\n\nexport * from './controls/buttons/button.module';\n\nexport * from './controls/checkbox/checkbox.module';\n\nexport { SACBootstrap4ConfirmModule, ServiceConfirm } from './controls/confirm/confirm.module';\n\nexport * from './controls/contextmenu/contextmenu.module';\n\nexport * from './controls/datetime/datetime.module';\n\nexport * from './controls/dialog/dialog.module';\n\nexport * from './controls/form/form';\n\nexport * from './controls/form/form.module';\n\nexport * from './controls/form/inheritform.directive';\n\nexport * from './controls/grid/grid.module';\n\nexport * from './controls/input/input.module';\n\nexport * from './controls/layout/layout.module';\n\nexport * from './controls/list/dropdown.module';\n\nexport * from './controls/list/list.module';\n\nexport * from './controls/multilanguage/multilanguage.module';\n\nexport * from './controls/static/staticlabel.module';\n\nexport * from './controls/tabs/tabs.module';\n\nexport * from './controls/tinymce/tinymce.module';\n\nexport * from './controls/tooltip/tooltip.module';\n\nexport * from './controls/treeview/treeview.module';\n\nexport * from './controls/upload/upload.module';\n\nexport * from './controls/validation/validationsummary.module';\n\nexport * from './controls/wizard/wizard.module';\n\n// Export Controls\nexport * from './controls/buttons/button';\n\nexport * from './controls/checkbox/checkbox';\n\nexport * from './controls/checkbox/radiobutton';\n\nexport * from './controls/checkbox/radiobuttons';\n\nexport * from './controls/confirm/confirm';\n\nexport * from './controls/contextmenu/contextmenu';\n\nexport * from './controls/contextmenu/contextmenuanchor';\n\nexport * from './controls/contextmenu/contextmenuitembutton';\n\nexport * from './controls/contextmenu/contextmenuitemsplitter';\n\nexport * from './controls/datetime/date';\n\nexport * from './controls/datetime/dateselector';\n\nexport * from './controls/datetime/datetime';\n\nexport * from './controls/datetime/time';\n\nexport * from './controls/dialog/dialog';\n\nexport * from './controls/form/form';\n\nexport * from './controls/form/inheritform.directive';\n\nexport * from './controls/grid/grid';\n\nexport * from './controls/grid/gridbutton';\n\nexport * from './controls/grid/gridcolumn';\n\nexport * from './controls/grid/gridcolumnaction';\n\nexport * from './controls/grid/gridimage';\n\nexport * from './controls/grid/paging';\n\nexport * from './controls/input/input';\n\nexport * from './controls/input/inputarea';\n\nexport * from './controls/input/inputcurrency';\n\nexport * from './controls/input/inputdecimal';\n\nexport * from './controls/input/inputemail';\n\nexport * from './controls/input/inputinteger';\n\nexport * from './controls/input/inputpassword';\n\nexport * from './controls/input/inputsearch';\n\nexport * from './controls/layout/formlayout.directive';\n\nexport * from './controls/layout/tocontrolheight.pipe';\n\nexport * from './controls/layout/tocontrolwidthcss.pipe';\n\nexport * from './controls/layout/tolabelheight.pipe';\n\nexport * from './controls/layout/tolabelwidthcss.pipe';\n\nexport * from './controls/list/dropdown';\n\nexport * from './controls/list/listbox';\n\nexport * from './controls/multilanguage/multilanguageinput';\n\nexport * from './controls/multilanguage/multilanguageinputarea';\n\nexport * from './controls/static/formcontainer';\n\nexport * from './controls/static/staticlabel';\n\nexport * from './controls/tabs/tab';\n\nexport * from './controls/tabs/tabitem';\n\nexport * from './controls/tinymce/tinymce';\n\nexport * from './controls/tooltip/tooltip';\n\nexport * from './controls/treeview/treeview';\n\nexport * from './controls/upload/dropzonemultiple';\n\nexport * from './controls/upload/dropzonesingle';\n\nexport * from './controls/upload/upload';\n\nexport * from './controls/upload/uploadmultiple';\n\nexport * from './controls/validation/validationsummary';\n\nexport * from './controls/wizard/wizard';\n\nexport * from './controls/wizard/wizarditem';\n\n// Export Components\nexport * from './components/browser/browser';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1.SacFormLayoutDirective","i2.ServiceConfirm","i3","i1.SacRadiobuttonsComponent","i2.SacFormLayoutDirective","i1","i1.SacGridComponent","i2","i1.SacFormDirective"],"mappings":"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"}