{"version":3,"file":"gl-ng-frontend.mjs","sources":["../../../projects/gl-ng-buttons-frontend/src/lib/component/image/simple/gl-component-button-image-simple.component.ts","../../../projects/gl-ng-buttons-frontend/src/lib/component/image/simple/gl-component-button-image-simple.component.html","../../../projects/gl-ng-buttons-frontend/src/lib/component/image/tooltip/gl-component-button-image-tooltip.component.ts","../../../projects/gl-ng-buttons-frontend/src/lib/component/image/tooltip/gl-component-button-image-tooltip.component.html","../../../projects/gl-ng-titles-frontend/src/lib/component/label/simple/gl-component-title-label-simple.component.ts","../../../projects/gl-ng-titles-frontend/src/lib/component/label/simple/gl-component-title-label-simple.component.html","../../../projects/gl-ng-titles-frontend/src/lib/component/label/button/container/gl-component-title-label-button-container.component.ts","../../../projects/gl-ng-titles-frontend/src/lib/component/label/button/container/gl-component-title-label-button-container.component.html","../../../projects/gl-ng-modals-frontend/src/lib/component/alert/gl-component-modal-alert.service.ts","../../../projects/gl-ng-attachments-frontend/src/lib/component/image/preview/gl-component-attachment-image-preview.service.ts","../../../projects/gl-ng-attachments-frontend/src/lib/component/image/preview/gl-component-attachment-image-preview.component.ts","../../../projects/gl-ng-attachments-frontend/src/lib/component/image/preview/gl-component-attachment-image-preview.component.html","../../../projects/gl-ng-attachments-frontend/src/lib/component/item/gl-component-attachment-item.component.ts","../../../projects/gl-ng-attachments-frontend/src/lib/component/item/gl-component-attachment-item.component.html","../../../projects/wrapper_attachments.ts","../../../projects/gl-ng-buttons-frontend/src/lib/component/attachment/file/gl-component-button-attachment-file.service.ts","../../../projects/gl-ng-buttons-frontend/src/lib/component/attachment/file/gl-component-button-attachment-file.component.ts","../../../projects/gl-ng-buttons-frontend/src/lib/component/attachment/file/gl-component-button-attachment-file.component.html","../../../projects/gl-ng-modals-frontend/src/lib/component/attachment/link/gl-component-modal-attachment-link.service.ts","../../../projects/gl-ng-buttons-frontend/src/lib/component/attachment/link/gl-component-button-attachment-link.component.ts","../../../projects/gl-ng-buttons-frontend/src/lib/component/attachment/link/gl-component-button-attachment-link.component.html","../../../projects/gl-ng-buttons-frontend/src/lib/component/interface/gl-component-button-interface.component.ts","../../../projects/gl-ng-buttons-frontend/src/lib/component/interface/gl-component-button-interface.component.html","../../../projects/gl-ng-buttons-frontend/src/lib/component/menu/simple/gl-component-button-menu-simple.component.ts","../../../projects/gl-ng-buttons-frontend/src/lib/component/menu/simple/gl-component-button-menu-simple.component.html","../../../projects/gl-ng-buttons-frontend/src/lib/component/menu/tooltip/gl-component-button-menu-tooltip.component.ts","../../../projects/gl-ng-buttons-frontend/src/lib/component/menu/tooltip/gl-component-button-menu-tooltip.component.html","../../../projects/wrapper_buttons.ts","../../../projects/gl-ng-inputs-frontend/src/lib/core/directives/click-outside/core-directives-click-outside.directive.ts","../../../projects/gl-ng-inputs-frontend/src/lib/core/pipes/list-filter/core-pipes-list-filter.pipe.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/autocomplete/simple/gl-component-input-autocomplete-simple.service.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/autocomplete/simple/gl-component-input-autocomplete-simple.component.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/autocomplete/simple/gl-component-input-autocomplete-simple.component.html","../../../projects/gl-ng-inputs-frontend/src/lib/component/autocomplete/label/gl-component-input-autocomplete-label.component.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/autocomplete/label/gl-component-input-autocomplete-label.component.html","../../../projects/gl-ng-inputs-frontend/src/lib/component/button/hyperlink/gl-component-input-button-hyperlink.component.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/button/hyperlink/gl-component-input-button-hyperlink.component.html","../../../projects/gl-ng-inputs-frontend/src/lib/component/button/simple/gl-component-input-button-simple.component.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/button/simple/gl-component-input-button-simple.component.html","../../../projects/gl-ng-inputs-frontend/src/lib/component/check-box/simple/gl-component-input-check-box-simple.component.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/check-box/simple/gl-component-input-check-box-simple.component.html","../../../projects/gl-ng-inputs-frontend/src/lib/component/check-box/label/gl-component-input-check-box-label.component.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/check-box/label/gl-component-input-check-box-label.component.html","../../../projects/gl-ng-inputs-frontend/src/lib/component/datepicker/simple/month-year/gl-component-input-datepicker-simple-month-year.component.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/datepicker/simple/month-year/gl-component-input-datepicker-simple-month-year.component.html","../../../projects/gl-ng-inputs-frontend/src/lib/component/datepicker/simple/day-month-year/gl-component-input-datepicker-simple-day-month-year.component.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/datepicker/simple/day-month-year/gl-component-input-datepicker-simple-day-month-year.component.html","../../../projects/gl-ng-inputs-frontend/src/lib/component/datepicker/label/gl-component-input-datepicker-label.component.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/datepicker/label/gl-component-input-datepicker-label.component.html","../../../projects/gl-ng-inputs-frontend/src/lib/core/directives/drag-and-drop/core-directives-drag-and-drop.directive.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/switch/gl-component-input-switch.component.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/switch/gl-component-input-switch.component.html","../../../projects/gl-ng-inputs-frontend/src/lib/component/drag-and-drop/simple/gl-component-input-drag-and-drop-simple.component.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/drag-and-drop/simple/gl-component-input-drag-and-drop-simple.component.html","../../../projects/gl-ng-inputs-frontend/src/lib/component/option/simple/gl-component-input-option-simple.component.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/option/simple/gl-component-input-option-simple.component.html","../../../projects/gl-ng-inputs-frontend/src/lib/component/text-area/simple/gl-component-input-text-area-simple.component.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/text-area/simple/gl-component-input-text-area-simple.component.html","../../../projects/gl-ng-inputs-frontend/src/lib/component/text-area/label/gl-component-input-text-area-label.component.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/text-area/label/gl-component-input-text-area-label.component.html","../../../projects/gl-ng-inputs-frontend/src/lib/component/text/simple/gl-component-input-text-simple.service.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/text/simple/gl-component-input-text-simple.component.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/text/simple/gl-component-input-text-simple.component.html","../../../projects/gl-ng-inputs-frontend/src/lib/component/text/label/button/container/gl-component-input-text-label-button-container.component.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/text/label/button/container/gl-component-input-text-label-button-container.component.html","../../../projects/gl-ng-inputs-frontend/src/lib/component/text/label/simple/gl-component-input-text-label-simple.component.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/text/label/simple/gl-component-input-text-label-simple.component.html","../../../projects/gl-ng-inputs-frontend/src/lib/component/text/simple/with-step/gl-component-input-text-simple-with-step.component.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/text/simple/with-step/gl-component-input-text-simple-with-step.component.html","../../../projects/gl-ng-inputs-frontend/src/lib/component/text/simple/search/gl-component-input-text-simple-search.component.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/text/simple/search/gl-component-input-text-simple-search.component.html","../../../projects/gl-ng-inputs-frontend/src/lib/component/dropdown/simple/gl-component-input-dropdown-simple.model.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/dropdown/simple/gl-component-input-dropdown-simple.component.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/dropdown/simple/gl-component-input-dropdown-simple.component.html","../../../projects/gl-ng-inputs-frontend/src/lib/component/dropdown/label/gl-component-input-dropdown-label.component.ts","../../../projects/gl-ng-inputs-frontend/src/lib/component/dropdown/label/gl-component-input-dropdown-label.component.html","../../../projects/gl-ng-inputs-frontend/src/lib/component/component.module.ts","../../../projects/gl-ng-inputs-frontend/src/lib/gl-ng-inputs-frontend.module.ts","../../../projects/gl-ng-error-message-frontend/src/lib/component/error-message/gl-component-error-message.component.ts","../../../projects/gl-ng-error-message-frontend/src/lib/component/error-message/gl-component-error-message.component.html","../../../projects/gl-ng-error-message-frontend/src/lib/component/component.module.ts","../../../projects/gl-ng-footer-frontend/src/lib/component/container/gl-component-footer-container.component.ts","../../../projects/gl-ng-footer-frontend/src/lib/component/container/gl-component-footer-container.component.html","../../../projects/gl-ng-logos-frontend/src/lib/component/square/gl-component-logo-square.component.ts","../../../projects/gl-ng-logos-frontend/src/lib/component/square/gl-component-logo-square.component.html","../../../projects/gl-ng-error-message-frontend/src/lib/view/error-message/gl-view-error-message.component.ts","../../../projects/gl-ng-error-message-frontend/src/lib/view/error-message/gl-view-error-message.component.html","../../../projects/gl-ng-error-message-frontend/src/lib/view/view.module.ts","../../../projects/gl-ng-error-message-frontend/src/lib/gl-ng-error-message-frontend.module.ts","../../../projects/wrapper_error_message.ts","../../../projects/gl-ng-filters-frontend/src/lib/component/filter/container/gl-component-filter-container.component.ts","../../../projects/gl-ng-filters-frontend/src/lib/component/filter/container/gl-component-filter-container.component.html","../../../projects/gl-ng-menus-frontend/src/lib/component/menu/background/gl-component-menu-background.component.ts","../../../projects/gl-ng-menus-frontend/src/lib/component/menu/background/gl-component-menu-background.component.html","../../../projects/gl-ng-filters-frontend/src/lib/component/filter/gl-component-filter.service.ts","../../../projects/gl-ng-filters-frontend/src/lib/component/filter/gl-component-filter.component.ts","../../../projects/gl-ng-filters-frontend/src/lib/component/filter/gl-component-filter.component.html","../../../projects/gl-ng-filters-frontend/src/lib/component/component.module.ts","../../../projects/gl-ng-filters-frontend/src/lib/gl-ng-filters-frontend.module.ts","../../../projects/wrapper_filters.ts","../../../projects/gl-ng-footer-frontend/src/lib/component/simple/gl-component-footer-simple.component.ts","../../../projects/gl-ng-footer-frontend/src/lib/component/simple/gl-component-footer-simple.component.html","../../../projects/wrapper_footer.ts","../../../projects/gl-ng-titles-frontend/src/lib/component/page/gl-component-title-page.component.ts","../../../projects/gl-ng-titles-frontend/src/lib/component/page/gl-component-title-page.component.html","../../../projects/gl-ng-headers-frontend/src/lib/component/default/gl-component-header-default.component.ts","../../../projects/gl-ng-headers-frontend/src/lib/component/default/gl-component-header-default.component.html","../../../projects/wrapper_headers.ts","../../../projects/wrapper_inputs.ts","../../../projects/gl-ng-lists-frontend/src/lib/component/item-remove/gl-component-input-list-item-remove.component.ts","../../../projects/gl-ng-lists-frontend/src/lib/component/item-remove/gl-component-input-list-item-remove.component.html","../../../projects/gl-ng-lists-frontend/src/lib/component/item-up-down/gl-component-input-list-item-up-down.component.ts","../../../projects/gl-ng-lists-frontend/src/lib/component/item-up-down/gl-component-input-list-item-up-down.component.html","../../../projects/wrapper_lists.ts","../../../projects/gl-ng-logos-frontend/src/lib/component/text-only/gl-component-logo-text-only.component.ts","../../../projects/gl-ng-logos-frontend/src/lib/component/text-only/gl-component-logo-text-only.component.html","../../../projects/wrapper_logos.ts","../../../projects/gl-ng-menus-frontend/src/lib/component/menu/gl-component-menu.service.ts","../../../projects/gl-ng-menus-frontend/src/lib/component/menu/item/gl-component-menu-item.component.ts","../../../projects/gl-ng-menus-frontend/src/lib/component/menu/item/gl-component-menu-item.component.html","../../../projects/gl-ng-menus-frontend/src/lib/component/menu/gl-component-menu.component.ts","../../../projects/gl-ng-menus-frontend/src/lib/component/menu/gl-component-menu.component.html","../../../projects/gl-ng-menus-frontend/src/lib/component/modal/actions/item/gl-component-modal-actions-item.component.ts","../../../projects/gl-ng-menus-frontend/src/lib/component/modal/actions/item/gl-component-modal-actions-item.component.html","../../../projects/gl-ng-menus-frontend/src/lib/component/modal/actions/gl-component-modal-actions.service.ts","../../../projects/gl-ng-menus-frontend/src/lib/component/modal/actions/gl-component-modal-actions.component.ts","../../../projects/gl-ng-menus-frontend/src/lib/component/modal/actions/gl-component-modal-actions.component.html","../../../projects/wrapper_menus.ts","../../../projects/gl-ng-modals-frontend/src/lib/component/header/gl-component-modal-header.component.ts","../../../projects/gl-ng-modals-frontend/src/lib/component/header/gl-component-modal-header.component.html","../../../projects/gl-ng-modals-frontend/src/lib/component/alert/gl-component-modal-alert.component.ts","../../../projects/gl-ng-modals-frontend/src/lib/component/alert/gl-component-modal-alert.component.html","../../../projects/gl-ng-modals-frontend/src/lib/component/attachment/link/gl-component-modal-attachment-link.component.ts","../../../projects/gl-ng-modals-frontend/src/lib/component/attachment/link/gl-component-modal-attachment-link.component.html","../../../projects/gl-ng-modals-frontend/src/lib/component/loading/gl-component-modal-loading.service.ts","../../../projects/gl-ng-modals-frontend/src/lib/component/loading/gl-component-modal-loading.component.ts","../../../projects/gl-ng-modals-frontend/src/lib/component/loading/gl-component-modal-loading.component.html","../../../projects/gl-ng-modals-frontend/src/lib/component/upload-file/gl-component-modal-upload-file.service.ts","../../../projects/gl-ng-modals-frontend/src/lib/component/upload-file/gl-component-modal-upload-file.component.ts","../../../projects/gl-ng-modals-frontend/src/lib/component/upload-file/gl-component-modal-upload-file.component.html","../../../projects/gl-ng-modals-frontend/src/lib/component/component.module.ts","../../../projects/gl-ng-modals-frontend/src/lib/gl-ng-modals-frontend.module.ts","../../../projects/gl-ng-modals-frontend/src/lib/core/directives/autofocus/core-directives-autofocus.directive.ts","../../../projects/gl-ng-modals-frontend/src/lib/component/actions/item/gl-components-modal-actions-item.component.ts","../../../projects/gl-ng-modals-frontend/src/lib/component/actions/item/gl-components-modal-actions-item.component.html","../../../projects/gl-ng-modals-frontend/src/lib/component/actions/gl-components-modal-actions.service.ts","../../../projects/gl-ng-modals-frontend/src/lib/component/actions/gl-components-modal-actions.component.ts","../../../projects/gl-ng-modals-frontend/src/lib/component/actions/gl-components-modal-actions.component.html","../../../projects/wrapper_modals.ts","../../../projects/gl-ng-navigation-frontend/src/lib/component/tab/simple/gl-component-navigation-tab-simple.component.ts","../../../projects/gl-ng-navigation-frontend/src/lib/component/tab/simple/gl-component-navigation-tab-simple.component.html","../../../projects/gl-ng-navigation-frontend/src/lib/component/tab/container/gl-component-navigation-tab-container.component.ts","../../../projects/gl-ng-navigation-frontend/src/lib/component/tab/container/gl-component-navigation-tab-container.component.html","../../../projects/wrapper_navigation.ts","../../../projects/gl-ng-paging-frontend/src/lib/component/paging/gl-component-paging.component.ts","../../../projects/gl-ng-paging-frontend/src/lib/component/paging/gl-component-paging.component.html","../../../projects/gl-ng-paging-frontend/src/lib/component/component.module.ts","../../../projects/gl-ng-paging-frontend/src/lib/gl-ng-paging-frontend.module.ts","../../../projects/wrapper_paging.ts","../../../projects/gl-ng-titles-frontend/src/lib/component/label/button/simple/gl-component-title-label-button-simple.component.ts","../../../projects/gl-ng-titles-frontend/src/lib/component/label/button/simple/gl-component-title-label-button-simple.component.html","../../../projects/wrapper_titles.ts","../../../projects/gl-ng-frontend/src/lib/component/component.module.ts","../../../projects/gl-ng-frontend/src/lib/gl-ng-frontend.module.ts","../../../projects/wrapper_index.ts","../../../projects/gl-ng-frontend.ts"],"sourcesContent":["import { Component, Input } from '@angular/core';\r\nimport { NgOptimizedImage } from '@angular/common';\r\n\r\n@Component({\r\n  selector: 'gl-component-button-image-simple',\r\n  templateUrl: './gl-component-button-image-simple.component.html',\r\n  styleUrls: ['./gl-component-button-image-simple.component.scss'],\r\n  imports: [\r\n    NgOptimizedImage\r\n  ],\r\n  standalone: true\r\n})\r\nexport class GlComponentButtonImageSimpleComponent {\r\n  @Input() id;\r\n  @Input() alt;\r\n  @Input() src;\r\n  @Input() callback: (args?: any[]) => void;\r\n  @Input() disableDragging = false;\r\n\r\n  constructor() { }\r\n\r\n  preventDragging(): boolean {\r\n    return !this.disableDragging;\r\n  }\r\n}\r\n","<img\r\n  class=\"button\"\r\n  [id]=\"id\"\r\n  [src]=\"src\"\r\n  [alt]=\"alt\"\r\n  (click)=\"callback()\"\r\n  (dragstart)=\"preventDragging()\">\r\n","import { Component, Input } from '@angular/core';\r\nimport { TButtonToolTipBorder, TButtonToolTipHorizontalPosition, TButtonToolTipVerticalPosition, TButtonToolTipWidth } from './gl-component-button-image-tooltip.interface';\r\nimport { GlComponentButtonImageSimpleComponent } from '../simple/gl-component-button-image-simple.component';\r\n\r\n@Component({\r\n    selector: 'gl-component-button-image-tooltip',\r\n    templateUrl: './gl-component-button-image-tooltip.component.html',\r\n    styleUrls: ['./gl-component-button-image-tooltip.component.scss'],\r\n    standalone: true,\r\n    imports: [GlComponentButtonImageSimpleComponent]\r\n})\r\nexport class GlComponentButtonImageTooltipComponent {\r\n  @Input() id;\r\n  @Input() alt;\r\n  @Input() src;\r\n  @Input() show = true;\r\n  @Input() callback: (args?: any[]) => void;\r\n\r\n  @Input() verticalPosition: TButtonToolTipVerticalPosition = 'top';\r\n  @Input() horizontalPosition: TButtonToolTipHorizontalPosition = 'center';\r\n  @Input() fullwidth: TButtonToolTipWidth = 'default';\r\n  @Input() borderRadius: TButtonToolTipBorder = 'default';\r\n\r\n  constructor() { }\r\n}\r\n","@if (show) {\r\n  <div\r\n    [class.hidden]=\"!show\"\r\n    [id]=\"id\"\r\n    [attr.tooltip]=\"alt\"\r\n    class=\"tooltip {{ verticalPosition }} {{ horizontalPosition }} {{ fullwidth }} {{ borderRadius }}\">\r\n    <gl-component-button-image-simple\r\n      [src]=\"src\"\r\n      [alt]=\"alt\"\r\n      [id]=\"id\"\r\n      [callback]=\"callback\"\r\n    ></gl-component-button-image-simple>\r\n  </div>\r\n}\r\n","import { AfterViewInit, Component, ElementRef, Input, ViewChild } from '@angular/core';\r\nimport { THorizontalAlignment, TLabelColor, TLabelTheme } from './gl-component-title-label-simple.interface';\r\nimport { NgOptimizedImage } from '@angular/common';\r\n\r\n@Component({\r\n    selector: 'gl-component-title-label-simple',\r\n    templateUrl: './gl-component-title-label-simple.component.html',\r\n    styleUrls: ['./gl-component-title-label-simple.component.scss'],\r\n    standalone: true,\r\n  imports: [NgOptimizedImage]\r\n})\r\nexport class GlComponentTitleLabelSimpleComponent implements AfterViewInit {\r\n  @ViewChild('label') label: ElementRef<HTMLLabelElement>;\r\n\r\n  @Input() labelValue;\r\n  @Input() id;\r\n  @Input() labelAlignment: THorizontalAlignment;\r\n  @Input() labelColor: TLabelColor = '';\r\n  @Input() customLabelColor: string = '';\r\n  @Input() theme: TLabelTheme = '';\r\n\r\n  @Input() required = false;\r\n  @Input() requiredLabel = 'Required field';\r\n\r\n  constructor() { }\r\n\r\n  ngAfterViewInit(): void {\r\n    const label: HTMLLabelElement = this.label.nativeElement;\r\n    const host = label.parentElement;\r\n\r\n    if (this.theme === 'category-title') {\r\n      host.style.flexGrow = '0';\r\n    }\r\n  }\r\n}\r\n","<!--suppress XmlInvalidId -->\r\n<label\r\n  #label\r\n  class=\"header-data {{ labelAlignment }} {{ theme }} {{ labelColor }}\"\r\n  [style.color]=\"customLabelColor\"\r\n  [attr.for]=\"id\">{{ labelValue }}\r\n</label>\r\n\r\n@if(required) {\r\n  <img\r\n    src=\"../assets/img/icon/label/dot.svg\"\r\n    class=\"required-fill-dot {{ theme }}\"\r\n    [title]=\"requiredLabel\"\r\n    alt=\"Required fill icon\">\r\n}\r\n\r\n","import { Component, Input } from '@angular/core';\r\nimport { THorizontalAlignment, TLabelColor, TLabelTheme } from '../../simple/gl-component-title-label-simple.interface';\r\nimport { GlComponentTitleLabelSimpleComponent } from '../../simple/gl-component-title-label-simple.component';\r\n\r\n@Component({\r\n    selector: 'gl-component-title-label-button-container',\r\n    templateUrl: './gl-component-title-label-button-container.component.html',\r\n    styleUrls: ['./gl-component-title-label-button-container.component.scss'],\r\n    standalone: true,\r\n    imports: [GlComponentTitleLabelSimpleComponent]\r\n})\r\nexport class GlComponentTitleLabelButtonContainerComponent {\r\n\r\n  @Input() labelValue;\r\n  @Input() id;\r\n  @Input() labelAlignment: THorizontalAlignment;\r\n  @Input() required = false;\r\n  @Input() theme: TLabelTheme = '';\r\n  @Input() labelColor: TLabelColor = '';\r\n  @Input() requiredFieldDescription = 'Required field';\r\n\r\n  constructor() { }\r\n}\r\n","<div class=\"label-with-button-container {{ theme }} {{ labelColor }}\">\r\n  <gl-component-title-label-simple\r\n    [labelValue]=\"labelValue\"\r\n    [id]=\"id\"\r\n    [labelAlignment]=\"labelAlignment\"\r\n    [required]=\"required\"\r\n    [theme]=\"theme\"\r\n    [requiredLabel]=\"requiredFieldDescription\"\r\n  ></gl-component-title-label-simple>\r\n  <div class=\"label-button-container\">\r\n    <ng-content></ng-content>\r\n  </div>\r\n</div>\r\n","import { Injectable } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class GlComponentModalAlertService {\r\n  message: string;\r\n  isOK = true;\r\n\r\n  showModal: boolean;\r\n  modalClass: string;\r\n  currentValue: Subject<boolean> = new Subject<boolean>();\r\n  resolvePromise;\r\n\r\n  customYes: string;\r\n  customNo: string;\r\n\r\n  private _okButton: HTMLInputElement;\r\n  private _noButton: HTMLInputElement;\r\n  private _yesButton: HTMLInputElement;\r\n\r\n  constructor() {}\r\n\r\n  show(message): Promise<boolean> {\r\n    return this.modal(true, true, message);\r\n  }\r\n  showYesNo(message, customYes?: string, customNo?: string): Promise<boolean> {\r\n    this.customYes = customYes;\r\n    this.customNo = customNo;\r\n\r\n    return this.modal(true, false, message);\r\n  }\r\n\r\n  hide(): void {\r\n    this.modal(false, this.isOK, this.message);\r\n  }\r\n\r\n  onNo(): void {\r\n    this.currentValue.next(false);\r\n    this.resolvePromise(false);\r\n    this.hide();\r\n  }\r\n  onYes(): void {\r\n    this.currentValue.next(true);\r\n    this.resolvePromise(true);\r\n    this.hide();\r\n  }\r\n  onOk(): void {\r\n    this.currentValue.next(true);\r\n    this.resolvePromise(true);\r\n    this.hide();\r\n  }\r\n\r\n  private modal(show: boolean, isOK: boolean = true, message: string = ''): Promise<boolean> {\r\n    return new Promise(resolve => {\r\n      this.resolvePromise = resolve;\r\n      this.isOK = isOK;\r\n      this.message = message;\r\n\r\n      if (show) {\r\n        this.modalClass = 'hide-modal';\r\n        this.showModal = show;\r\n        this.modalClass = 'show-modal';\r\n\r\n        setTimeout(() => {\r\n          this.setElements();\r\n\r\n          setTimeout(() => {\r\n            if (isOK) {\r\n              this._okButton.focus();\r\n            } else {\r\n              this._yesButton.focus();\r\n            }\r\n          }, 300);\r\n        }, 300);\r\n      } else {\r\n        this.modalClass = 'hide-modal';\r\n        setTimeout(() => {\r\n          this.showModal = false;\r\n          this.message = '';\r\n          this.customYes = null;\r\n          this.customNo = null;\r\n        }, 300);\r\n      }\r\n    });\r\n  }\r\n\r\n  onModalKeyUp(e: KeyboardEvent): void {\r\n    if (e.key === 'Enter') {\r\n      if (this.isOK) { this.onOk(); } else { this.onYes(); }\r\n    } else if (e.key === 'Escape') {\r\n      if (this.isOK) { this.onOk(); } else { this.onNo(); }\r\n    }\r\n  }\r\n\r\n  private setElements(): void {\r\n    const container = document.querySelector('.modal-container .modal-main-content .button-container');\r\n\r\n    this._okButton = container.querySelector('.ok .default-button');\r\n    this._noButton = container.querySelector('.no .default-button');\r\n    this._yesButton = container.querySelector('.yes .default-button');\r\n  }\r\n}\r\n","import { EventEmitter, Injectable } from '@angular/core';\r\nimport { AttachmentConvert, AttachmentParser, AttachmentValidate } from 'gl-w-attachment-frontend';\r\nimport { ImageResize } from 'gl-w-image-frontend';\r\nimport { NumberParse } from 'gl-w-number-frontend';\r\nimport { Subject } from 'rxjs';\r\n\r\nimport { IImageButtonTooltip } from '../../../../../../gl-ng-buttons-frontend/src/lib/component/image/tooltip/gl-component-button-image-tooltip.interface';\r\nimport { GlComponentModalAlertService } from '../../../../../../gl-ng-modals-frontend/src/lib/component/alert/gl-component-modal-alert.service';\r\n\r\nimport { IImageString, IImageUpdate } from './gl-component-attachment-image-preview.interface';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class GlComponentAttachmentImagePreviewService {\r\n  private readonly image = '../assets/img/icon/image/image-template.svg';\r\n\r\n  retrieveUpdate: Subject<IImageUpdate> = new Subject();\r\n  labelIcons = '../assets/img/icon/label/';\r\n\r\n  buttons: IImageButtonTooltip[] = [\r\n    {\r\n      src: `${this.labelIcons}image.svg`,\r\n      id: 'add-image-from-label',\r\n      alt: 'Add image',\r\n      show: true, callback: () => {\r\n        this.addImage();\r\n      }\r\n    },\r\n    {\r\n      src: `${this.labelIcons}remove-image.svg`,\r\n      id: 'clear-image-from-label',\r\n      alt: 'Remove image',\r\n      show: false,\r\n      callback: () => {\r\n        this.removeImage();\r\n      }\r\n    },\r\n  ];\r\n\r\n  private _accepts: string[];\r\n  private _input: HTMLInputElement;\r\n  private _userImage: HTMLDivElement;\r\n  private _currentValue: EventEmitter<IImageString>;\r\n\r\n  constructor(private _alert: GlComponentModalAlertService) {\r\n    this.retrieveUpdate.subscribe((data) => {\r\n      if (data.image != null && data.image.trim().length > 0) {\r\n        this.setImage(data);\r\n        this.updateButtons(true);\r\n      } else {\r\n        this.setImage({ image: '' });\r\n        this.updateButtons(false);\r\n      }\r\n    });\r\n  }\r\n\r\n  initialize(\r\n    input: HTMLInputElement, userImage: HTMLDivElement, currentValue: EventEmitter<IImageString>,\r\n    invalidSizeDescription: string, invalidFormatDescription: string, addImageButtonDescription: string,\r\n    removeImageButtonDescription: string): void {\r\n    this._input = input;\r\n    this._accepts = AttachmentParser.parseAcceptFiles((input.attributes as any).accept.value);\r\n    this._userImage = userImage;\r\n    this._currentValue = currentValue;\r\n\r\n    setTimeout(() => {\r\n      this.buttons[0].alt = addImageButtonDescription;\r\n      this.buttons[1].alt = removeImageButtonDescription;\r\n    }, 100);\r\n\r\n    this._input.oninput = () => { this.onChange(invalidSizeDescription, invalidFormatDescription); };\r\n    this.removeImage(true);\r\n  }\r\n\r\n  onChange(invalidSizeDescription: string, invalidFormatDescription: string): void {\r\n    const isValid = AttachmentValidate.file(this._input, this._accepts);\r\n    const sizeValid = AttachmentValidate.fileSize(this._input);\r\n\r\n    if (!sizeValid) {\r\n      const maxSize: number = AttachmentValidate.maxSize(this._input);\r\n      const maxSizeStr = NumberParse.formatDecimalSeparator(maxSize);\r\n      this._alert.show(`${invalidSizeDescription} ${maxSizeStr}KB`).then(() => {});\r\n      return;\r\n    }\r\n\r\n    if (isValid) {\r\n      AttachmentConvert.textFileToUrlImage(this._input.files[0]).then((image: string) => {\r\n        this.setImage({ image });\r\n        this._currentValue.emit({ value: image });\r\n        this.updateButtons(true);\r\n        this.clearInput();\r\n      });\r\n    } else {\r\n      this.clearInput();\r\n      this._alert.show(invalidFormatDescription).then(() => {});\r\n    }\r\n  }\r\n\r\n  clearInput(): void {\r\n    this._input.value = null;\r\n  }\r\n\r\n  updateButtons(hasValue: boolean): void {\r\n    this.buttons[0].show = !hasValue;\r\n    this.buttons[1].show = hasValue;\r\n  }\r\n\r\n  setImage(data: IImageUpdate): void {\r\n    const img = data.resize ? ImageResize.base64(data) : data.image;\r\n\r\n    this._userImage.style.backgroundImage = `url(\"${img}\")`;\r\n    this._userImage.classList.remove('required-fill');\r\n  }\r\n\r\n  addImage(): void {\r\n    this._input.click();\r\n  }\r\n\r\n  removeImage(init?: boolean): void {\r\n    this.clearInput();\r\n    this.setImage({ image: this.image });\r\n\r\n    if (!init) {\r\n      this._currentValue.emit({ value: null });\r\n      this.updateButtons(false);\r\n    }\r\n  }\r\n}\r\n","import { AfterViewInit, Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';\r\nimport { TTheme } from '../../../core/interfaces/global.interface';\r\nimport { GlComponentAttachmentImagePreviewService } from './gl-component-attachment-image-preview.service';\r\nimport { GlComponentButtonImageTooltipComponent } from '../../../../../../gl-ng-buttons-frontend/src/lib/component/image/tooltip/gl-component-button-image-tooltip.component';\r\nimport { GlComponentTitleLabelButtonContainerComponent } from '../../../../../../gl-ng-titles-frontend/src/lib/component/label/button/container/gl-component-title-label-button-container.component';\r\n\r\n@Component({\r\n    selector: 'gl-component-attachment-image-preview',\r\n    templateUrl: './gl-component-attachment-image-preview.component.html',\r\n    styleUrls: ['./gl-component-attachment-image-preview.component.scss'],\r\n    standalone: true,\r\n    imports: [\r\n      GlComponentTitleLabelButtonContainerComponent,\r\n      GlComponentButtonImageTooltipComponent\r\n    ]\r\n})\r\nexport class GlComponentAttachmentImagePreviewComponent implements AfterViewInit{\r\n  @ViewChild('fileInputImage', { read: ElementRef, static: true }) fileInputImage: ElementRef<HTMLInputElement>;\r\n  @ViewChild('userImage', { read: ElementRef, static: true }) userImage: ElementRef<HTMLDivElement>;\r\n\r\n  @Input() disabled = false;\r\n  @Input() currentImage;\r\n  @Input() required = false;\r\n  @Input() theme: TTheme = '';\r\n  @Input() showLabel = true;\r\n  @Input() requiredFieldDescription = 'Required field';\r\n  @Input() addImageDescription = 'Click to add an image';\r\n  @Input() maxImageSize = '10240';\r\n  @Input() invalidSizeDescription = 'Invalid file size. The max allowed size is';\r\n  @Input() invalidFormatDescription = 'Invalid file format!';\r\n  @Input() addImageButtonDescription = 'Add image';\r\n  @Input() removeImageButtonDescription = 'Remove image';\r\n\r\n  @Output() currentValue$ = new EventEmitter();\r\n\r\n  constructor(public service: GlComponentAttachmentImagePreviewService) { }\r\n\r\n  ngAfterViewInit(): void {\r\n    this.service.initialize(\r\n      this.fileInputImage.nativeElement,\r\n      this.userImage.nativeElement,\r\n      this.currentValue$,\r\n      this.invalidSizeDescription,\r\n      this.invalidFormatDescription,\r\n      this.addImageButtonDescription,\r\n      this.removeImageButtonDescription\r\n    );\r\n\r\n    this.updateImage();\r\n  }\r\n\r\n  updateImage(): void {\r\n    if (this.currentImage != null && this.currentImage.length > 0) {\r\n      this.service.setImage(this.currentImage);\r\n    }\r\n  }\r\n}\r\n","<div class=\"item-container {{ theme }}\">\r\n  @if(showLabel) {\r\n    <gl-component-title-label-button-container\r\n      labelValue=\"Image\"\r\n      labelAlignment=\"left\"\r\n      [theme]=\"theme\"\r\n      [requiredFieldDescription]=\"requiredFieldDescription\"\r\n      [required]=\"required\">\r\n      <ng-content select=\"top\"></ng-content>\r\n\r\n      @for(b of service.buttons; track b.id) {\r\n        <gl-component-button-image-tooltip\r\n         [src]=\"b.src\"\r\n         [alt]=\"b.alt\"\r\n         [id]=\"b.id\"\r\n         [show]=\"b.show && !disabled || b.id === 'expand-with-step-2'\"\r\n         [callback]=\"b.callback\"\r\n       ></gl-component-button-image-tooltip>\r\n      }\r\n\r\n      <ng-content select=\"[slot=buttons]\"></ng-content>\r\n      <ng-content select=\"bottom\"></ng-content>\r\n    </gl-component-title-label-button-container>\r\n  }\r\n\r\n\r\n  <div class=\"attachment-container-content\">\r\n    <input\r\n      #fileInputImage\r\n      id=\"file-input-image\"\r\n      name=\"file-input-image\"\r\n      type=\"file\"\r\n      class=\"input-image\"\r\n      accept=\"image/tif, image/tiff, image/x-png, image/jpeg, image/jpg, image/bmp, image/gif, image/svg+xml\"\r\n      maxlength=\"1\"\r\n      [attr.data-maxsize]=\"maxImageSize\"\r\n      [title]=\"addImageDescription\"\r\n    />\r\n  </div>\r\n  <div class=\"image-container\">\r\n    <div #userImage id=\"image\"></div>\r\n  </div>\r\n</div>\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { TAttachmentItemType } from './gl-component-attachment-item.interface';\r\nimport { NgOptimizedImage } from '@angular/common';\r\n\r\n@Component({\r\n    selector: 'gl-component-attachment-item',\r\n    templateUrl: './gl-component-attachment-item.component.html',\r\n    styleUrls: ['./gl-component-attachment-item.component.scss'],\r\n    standalone: true,\r\n  imports: [NgOptimizedImage]\r\n})\r\nexport class GlComponentAttachmentItemComponent {\r\n  @Input() disabled = false;\r\n  @Input() attachmentUrl: string;\r\n  @Input() fileName: string;\r\n  @Input() fileIcon: string;\r\n  @Input() id: number;\r\n  @Input() type: TAttachmentItemType = 'file';\r\n  @Input() addingSmooth: boolean;\r\n\r\n  @Output() click$: EventEmitter<void> = new EventEmitter();\r\n  @Output() removeCurrentItem$: EventEmitter<{ id: number }> = new EventEmitter();\r\n  @Output() editCurrentItem$: EventEmitter<{ id: number }> = new EventEmitter();\r\n\r\n  constructor() { }\r\n\r\n  removeItem(id: number): void {\r\n    this.removeCurrentItem$.emit({ id });\r\n  }\r\n  editItem(id: number): void {\r\n    this.editCurrentItem$.emit({ id });\r\n  }\r\n\r\n  onButtonClick(e: Event): void {\r\n    e.preventDefault();\r\n    this.click$.emit();\r\n  }\r\n}\r\n","<div class=\"attachment-container {{ addingSmooth ? 'adding-row-animated' : '' }}\">\r\n  <img\r\n    class=\"attachment-icon\"\r\n    [src]=\"fileIcon\"\r\n    alt=\"Ícone anexo\">\r\n  <a\r\n    (click)=\"onButtonClick($event)\"\r\n    [id]=\"id\"\r\n    [href]=\"attachmentUrl\"\r\n    class=\"file\"\r\n  >{{ fileName }}</a>\r\n  @if(!disabled && type === 'link') {\r\n    <img\r\n      (click)=\"editItem(id)\"\r\n      class=\"edit-item\"\r\n      src=\"../assets/img/icon/menu/attachment/edit.svg\"\r\n      alt=\"Editar anexo\"/>\r\n  }\r\n\r\n  @if(!disabled) {\r\n    <img\r\n      (click)=\"removeItem(id)\"\r\n      class=\"remove-item\"\r\n      src=\"../assets/img/icon/menu/attachment/delete.svg\"\r\n      alt=\"Apagar anexo\"/>\r\n  }\r\n</div>\r\n","/*\r\n * Public API Surface of gl-ng-attachments-frontend\r\n */\r\n\r\n// region interfaces\r\nexport { TTheme } from './gl-ng-attachments-frontend/src/lib/core/interfaces/global.interface';\r\n// endregion\r\n\r\n// region image\r\nexport { GlComponentAttachmentImagePreviewComponent } from './gl-ng-attachments-frontend/src/lib/component/image/preview/gl-component-attachment-image-preview.component';\r\nexport { GlComponentAttachmentImagePreviewService } from './gl-ng-attachments-frontend/src/lib/component/image/preview/gl-component-attachment-image-preview.service';\r\nexport { IImageString, IImageUpdate } from './gl-ng-attachments-frontend/src/lib/component/image/preview/gl-component-attachment-image-preview.interface';\r\n// endregion\r\n\r\n// region item\r\nexport { GlComponentAttachmentItemComponent } from './gl-ng-attachments-frontend/src/lib/component/item/gl-component-attachment-item.component';\r\nexport { TAttachmentItemType } from './gl-ng-attachments-frontend/src/lib/component/item/gl-component-attachment-item.interface';\r\n// endregion\r\n\r\n","import { EventEmitter, Injectable } from '@angular/core';\r\nimport { IAttachmentData } from 'gl-w-attachment-frontend';\r\nimport { AttachmentIcon, AttachmentParser, AttachmentValidate } from 'gl-w-attachment-frontend';\r\nimport { NumberParse } from 'gl-w-number-frontend';\r\nimport { GlComponentModalAlertService } from '../../../../../../gl-ng-modals-frontend/src/lib/component/alert/gl-component-modal-alert.service';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class GlComponentButtonAttachmentFileService {\r\n  private _input: HTMLInputElement;\r\n  private _accepts: string[];\r\n  private _currentValue: EventEmitter<IAttachmentData>;\r\n  private _attachments: IAttachmentData[];\r\n\r\n  constructor(\r\n    public _alert: GlComponentModalAlertService\r\n  ) { }\r\n\r\n  initialize(\r\n    input: HTMLInputElement, currentValue: EventEmitter<IAttachmentData>, attachments: IAttachmentData[],\r\n    duplicatedDescription: string, invalidSizeDescription: string, invalidFormatDescription: string, attachmentIconSrc: string): void {\r\n    this._input = input;\r\n    this._currentValue = currentValue;\r\n    this._attachments = attachments;\r\n\r\n    // Todo Block specif files\r\n    const accept = (input.attributes as any).accept.value;\r\n    // tslint:disable-next-line:triple-equals\r\n    const accepts: boolean = accept == null || accept == 'undefined' || accept === '';\r\n\r\n    this._accepts = accepts ? ['*'] : AttachmentParser.parseAcceptFiles((input.attributes as any).accept.value);\r\n    this._input.oninput = () => {\r\n      this.onChange(duplicatedDescription, invalidSizeDescription, invalidFormatDescription, attachmentIconSrc);\r\n    };\r\n  }\r\n\r\n  addAttachment(): void {\r\n    this._input.click();\r\n  }\r\n  onChange(\r\n    duplicatedDescription: string, invalidSizeDescription: string, invalidFormatDescription: string, attachmentIconSrc: string): void {\r\n    const isValid = AttachmentValidate.file(this._input, this._accepts);\r\n    const sizeValid = AttachmentValidate.fileSize(this._input);\r\n    const duplicated = AttachmentValidate.duplicated(this._input.files[0].name, this._attachments);\r\n\r\n    if (duplicated) {\r\n      this.clearInput();\r\n      this._alert.show(duplicatedDescription).then(() => {});\r\n      return;\r\n    } else if (!sizeValid) {\r\n      const maxSize: number = AttachmentValidate.maxSize(this._input);\r\n      const maxSizeStr: string = NumberParse.formatDecimalSeparator(maxSize);\r\n      this.clearInput();\r\n      this._alert.show(`${invalidSizeDescription}: ${maxSizeStr}KB`).then(() => {});\r\n      return;\r\n    } else if (!isValid) {\r\n      this.clearInput();\r\n      this._alert.show(invalidFormatDescription).then(() => {});\r\n    } else {\r\n      const file: IAttachmentData = {\r\n        name: this._input.files[0].name,\r\n        file: this._input.files[0],\r\n        icon: AttachmentIcon.get(this._input.files[0].name, attachmentIconSrc),\r\n        new: true,\r\n        url: '',\r\n        remove: false,\r\n        id: this._attachments.length,\r\n      };\r\n\r\n      this.clearInput();\r\n      this._currentValue.emit(file);\r\n    }\r\n  }\r\n\r\n  clearInput(): void {\r\n    this._input.value = null;\r\n  }\r\n}\r\n","import { AfterViewInit, Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';\r\nimport { GlComponentButtonAttachmentFileService } from './gl-component-button-attachment-file.service';\r\nimport { IAttachmentData } from 'gl-w-attachment-frontend';\r\nimport { NgOptimizedImage } from '@angular/common';\r\n\r\n@Component({\r\n  selector: 'gl-component-button-attachment-file',\r\n  templateUrl: './gl-component-button-attachment-file.component.html',\r\n  styleUrls: ['./gl-component-button-attachment-file.component.scss'],\r\n  imports: [\r\n    NgOptimizedImage\r\n  ],\r\n  standalone: true\r\n})\r\nexport class GlComponentButtonAttachmentFileComponent implements AfterViewInit {\r\n  @ViewChild('fileInput', { read: ElementRef, static: true }) fileInput: ElementRef<HTMLInputElement>;\r\n\r\n  /**\r\n   * @param maxFileSize Size in KB.\r\n   * @param attachmentIconSrc (Optional) In case the source is not informed, the default path will be the one in gl-w-frontend package.\r\n   */\r\n  @Input() maxFileSize = '46080';\r\n  @Input() accept: string[];\r\n  @Input() title = 'Click to add an attachment';\r\n  @Input() icon = '../assets/img/icon/attachment/attachment.svg';\r\n  @Input() attachmentIconSrc: string;\r\n  @Input() description = 'Add attachment';\r\n  @Input() attachments: IAttachmentData[] = [];\r\n  @Input() duplicatedDescription = 'File duplicated. Please, add another file!';\r\n  @Input() invalidSizeDescription = 'Invalid file size. The max allowed size is';\r\n  @Input() invalidFormatDescription = 'Invalid file format!';\r\n\r\n  @Output() currentValue$: EventEmitter<IAttachmentData> = new EventEmitter();\r\n\r\n  constructor(public service: GlComponentButtonAttachmentFileService) { }\r\n\r\n  ngAfterViewInit(): void {\r\n    this.service.initialize(\r\n      this.fileInput.nativeElement,\r\n      this.currentValue$,\r\n      this.attachments,\r\n      this.duplicatedDescription,\r\n      this.invalidSizeDescription,\r\n      this.invalidFormatDescription,\r\n      this.attachmentIconSrc\r\n    );\r\n  }\r\n}\r\n","<div class=\"attachment-container\" (click)=\"service.addAttachment()\">\r\n  <input\r\n    #fileInput\r\n    id=\"file-input\"\r\n    name=\"file-input\"\r\n    type=\"file\"\r\n    class=\"file-input\"\r\n    [accept]=\"accept\"\r\n    [title]=\"title\"\r\n    [attr.data-maxsize]=\"maxFileSize\"/>\r\n  <img\r\n    class=\"attachment-icon\"\r\n    [src]=\"icon\"\r\n    alt=\"Attachment Icon\">\r\n  <span class=\"attachment-file-button\">{{ description }}</span>\r\n</div>\r\n","import { Injectable } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\nimport { GlComponentModalAlertService } from '../../alert/gl-component-modal-alert.service';\r\nimport { IAttachmentLink } from './gl-component-modal-attachment-link.interface';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class GlComponentModalAttachmentLinkService {\r\n  name: HTMLInputElement;\r\n  url: HTMLInputElement;\r\n  linkIcon = '../assets/img/icon/attachment/link.svg';\r\n\r\n  showModal = false;\r\n  modalClass: string;\r\n  currentValue: Subject<IAttachmentLink> = new Subject();\r\n\r\n  editing: boolean;\r\n  editId: number;\r\n\r\n  private _name: string;\r\n  private _url: string;\r\n\r\n  constructor(private _alert: GlComponentModalAlertService) { }\r\n\r\n  setup(name: HTMLInputElement, url: HTMLInputElement): void {\r\n    this.name = name;\r\n    this.url = url;\r\n  }\r\n\r\n  onCancel(): void {\r\n    this.modal(false);\r\n  }\r\n\r\n  async onConfirm(): Promise<void> {\r\n    if (await this.validData()) {\r\n      const values = {\r\n        name: this._name,\r\n        url: this._url,\r\n        icon: this.linkIcon,\r\n        editing: this.editing,\r\n        editId: this.editId\r\n      };\r\n\r\n      this.currentValue.next(values);\r\n      this.modal(false);\r\n    }\r\n  }\r\n\r\n  onName(e: Event): void {\r\n    this._name = (e.currentTarget as HTMLInputElement).value;\r\n  }\r\n\r\n  onUrl(e: Event): void {\r\n    this._url = (e.currentTarget as HTMLInputElement).value;\r\n  }\r\n\r\n  async validData(): Promise<boolean> {\r\n    const urlRegex = /^(ftp|http|https):\\/\\/[^ \"]+$/;\r\n    const hasHttp = this._url != null && !this._url.includes('http://') && !this._url.includes('https://');\r\n    const tempUrl = hasHttp ? `http://${this._url}` : this._url;\r\n    const validUrl = new RegExp(urlRegex).test(tempUrl);\r\n\r\n    if (this._name == null || this._name.trim().length === 0) {\r\n      await this._alert.show('Por favor, informe o nome do arquivo!');\r\n      return false;\r\n    } else if (this._url == null || this._url.trim().length === 0) {\r\n      await this._alert.show('Por favor, informe o url do arquivo!');\r\n      return false;\r\n    } else if (!validUrl) {\r\n      await this._alert.show('Por favor, informe um url válido!');\r\n    } else {\r\n      this._url = tempUrl;\r\n      return true;\r\n    }\r\n  }\r\n\r\n  modal(show): void {\r\n    this.editing = false;\r\n    this.editId = null;\r\n\r\n    if (show) {\r\n      this.modalClass = 'hide-modal';\r\n      this.showModal = true;\r\n      this.modalClass = 'show-modal';\r\n\r\n    } else {\r\n      this.modalClass = 'hide-modal';\r\n      setTimeout(() => {\r\n        this.showModal = false;\r\n      }, 300);\r\n    }\r\n  }\r\n\r\n  edit(name: string, url: string, editId: number): void {\r\n    this.modal(true);\r\n    this.editing = true;\r\n    this.editId = editId;\r\n\r\n    setTimeout(() => {\r\n      this.name = document.querySelector('#attachment-link-name');\r\n      this.url = document.querySelector('#attachment-link-value');\r\n\r\n      this._name = name;\r\n      this.name.value = name;\r\n      this._url = url;\r\n      this.url.value = url;\r\n    }, 100);\r\n  }\r\n\r\n  onModalKeyUp(e: KeyboardEvent): Promise<void> {\r\n    if (e.key === 'Enter') {\r\n      return this.onConfirm();\r\n    } else if (e.key === 'Escape') {\r\n      this.onCancel();\r\n    }\r\n  }\r\n}\r\n","import { Component } from '@angular/core';\r\nimport { GlComponentModalAttachmentLinkService } from '../../../../../../gl-ng-modals-frontend/src/lib/component/attachment/link/gl-component-modal-attachment-link.service';\r\nimport { NgOptimizedImage } from '@angular/common';\r\n\r\n@Component({\r\n  selector: 'gl-component-button-attachment-link',\r\n  templateUrl: './gl-component-button-attachment-link.component.html',\r\n  styleUrls: ['./gl-component-button-attachment-link.component.scss'],\r\n  imports: [\r\n    NgOptimizedImage\r\n  ],\r\n  standalone: true\r\n})\r\nexport class GlComponentButtonAttachmentLinkComponent {\r\n\r\n  constructor(public service: GlComponentModalAttachmentLinkService) { }\r\n\r\n}\r\n","<div\r\n  class=\"attachment-container dark link-container\"\r\n  (click)=\"service.modal(true)\">\r\n  <img\r\n    class=\"attachment-icon\"\r\n    src=\"../assets/img/icon/menu/attachment/link-white.svg\"\r\n    alt=\"Attachment Icon\">\r\n  <span\r\n    id=\"add-attachment-link\"\r\n    class=\"attachment-file-button\">Adicionar link</span>\r\n</div>\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { NgOptimizedImage } from '@angular/common';\r\n\r\n@Component({\r\n  selector: 'gl-component-button-interface',\r\n  templateUrl: './gl-component-button-interface.component.html',\r\n  styleUrls: ['./gl-component-button-interface.component.scss'],\r\n  imports: [\r\n    NgOptimizedImage\r\n  ],\r\n  standalone: true\r\n})\r\nexport class GlComponentButtonInterfaceComponent implements OnInit {\r\n  @Input() innerHtml: string;\r\n  @Input() buttonClick: () => void;\r\n  @Input() imageSrc: string;\r\n  @Input() imageAlt: string;\r\n  @Input() id: string;\r\n\r\n  constructor() { }\r\n\r\n  ngOnInit(): void {\r\n  }\r\n\r\n}\r\n","<div\r\n  class=\"attachment-container dark link-container\"\r\n  (click)=\"buttonClick()\">\r\n  <img\r\n    class=\"attachment-icon\"\r\n    [src]=\"imageSrc\"\r\n    [alt]=\"imageAlt\">\r\n  <span\r\n    [id]=\"id\"\r\n    class=\"attachment-file-button\">{{ innerHtml }}</span>\r\n</div>\r\n","import { Component, Input } from '@angular/core';\r\nimport { NgOptimizedImage } from '@angular/common';\r\n\r\n@Component({\r\n    selector: 'gl-component-button-menu-simple',\r\n    templateUrl: './gl-component-button-menu-simple.component.html',\r\n    styleUrls: ['./gl-component-button-menu-simple.component.scss'],\r\n    standalone: true,\r\n  imports: [NgOptimizedImage]\r\n})\r\nexport class GlComponentButtonMenuSimpleComponent {\r\n  @Input() disabled = false;\r\n  @Input() hide = false;\r\n  @Input() src: string;\r\n  @Input() id: string;\r\n  @Input() alt: string;\r\n  @Input() callback: () => {};\r\n\r\n  constructor() { }\r\n}\r\n","@if (!hide) {\r\n  <img\r\n    [id]=\"id\"\r\n    class=\"menu-buttons\"\r\n    [src]=\"src\"\r\n    [alt]=\"alt\"\r\n    (click)=\"callback\">\r\n}\r\n","import { Component, Input } from '@angular/core';\r\nimport { GlComponentButtonMenuSimpleComponent } from '../simple/gl-component-button-menu-simple.component';\r\n\r\n@Component({\r\n    selector: 'gl-component-button-menu-tooltip',\r\n    templateUrl: './gl-component-button-menu-tooltip.component.html',\r\n    styleUrls: ['./gl-component-button-menu-tooltip.component.scss'],\r\n    standalone: true,\r\n    imports: [GlComponentButtonMenuSimpleComponent]\r\n})\r\nexport class GlComponentButtonMenuTooltipComponent {\r\n  @Input() disabled = false;\r\n  @Input() hide = false;\r\n  @Input() tooltip: string;\r\n  @Input() src: string;\r\n  @Input() id: string;\r\n  @Input() alt: string;\r\n  @Input() callback;\r\n\r\n  constructor() { }\r\n}\r\n","@if(!disabled && !hide) {\r\n  <div [attr.alt]=\"alt\" class=\"tooltip-menu\">\r\n    <gl-component-button-menu-simple\r\n      [src]=\"src\"\r\n      [id]=\"id\"\r\n      [alt]=\"alt\"\r\n      [hide]=\"hide\"\r\n      (click)=\"callback($event)\"\r\n    ></gl-component-button-menu-simple>\r\n  </div>\r\n}\r\n","/*\r\n * Public API Surface of gl-ng-buttons-frontend\r\n */\r\n\r\n// region interfaces\r\nexport { TTheme } from './gl-ng-buttons-frontend/src/lib/interfaces/global.interface';\r\n// endregion\r\n\r\n// region attachment\r\nimport { GlComponentButtonAttachmentFileComponent } from './gl-ng-buttons-frontend/src/lib/component/attachment/file/gl-component-button-attachment-file.component';\r\nimport { GlComponentButtonAttachmentFileService } from './gl-ng-buttons-frontend/src/lib/component/attachment/file/gl-component-button-attachment-file.service';\r\nimport { GlComponentButtonAttachmentLinkComponent } from './gl-ng-buttons-frontend/src/lib/component/attachment/link/gl-component-button-attachment-link.component';\r\n\r\nexport { GlComponentButtonAttachmentFileComponent, GlComponentButtonAttachmentFileService, GlComponentButtonAttachmentLinkComponent };\r\n// endregion\r\n\r\n// region image\r\nimport { GlComponentButtonImageSimpleComponent } from './gl-ng-buttons-frontend/src/lib/component/image/simple/gl-component-button-image-simple.component';\r\nimport { GlComponentButtonImageTooltipComponent } from './gl-ng-buttons-frontend/src/lib/component/image/tooltip/gl-component-button-image-tooltip.component';\r\nimport { IButtonImageSimple } from './gl-ng-buttons-frontend/src/lib/component/image/simple/gl-component-button-image-simple.interface';\r\nimport {\r\n  IImageButtonTooltip, TButtonToolTipBorder, TButtonToolTipHorizontalPosition, TButtonToolTipVerticalPosition, TButtonToolTipWidth\r\n} from './gl-ng-buttons-frontend/src/lib/component/image/tooltip/gl-component-button-image-tooltip.interface';\r\n\r\nexport {\r\n  GlComponentButtonImageSimpleComponent,\r\n  GlComponentButtonImageTooltipComponent,\r\n  IButtonImageSimple,\r\n  IImageButtonTooltip,\r\n  TButtonToolTipBorder,\r\n  TButtonToolTipHorizontalPosition,\r\n  TButtonToolTipVerticalPosition,\r\n  TButtonToolTipWidth\r\n};\r\n// endregion\r\n\r\n// region interface\r\nimport { GlComponentButtonInterfaceComponent } from './gl-ng-buttons-frontend/src/lib/component/interface/gl-component-button-interface.component';\r\nexport { GlComponentButtonInterfaceComponent };\r\n// endregion\r\n\r\n// region menu\r\nimport { GlComponentButtonMenuSimpleComponent } from './gl-ng-buttons-frontend/src/lib/component/menu/simple/gl-component-button-menu-simple.component';\r\nimport { GlComponentButtonMenuTooltipComponent } from './gl-ng-buttons-frontend/src/lib/component/menu/tooltip/gl-component-button-menu-tooltip.component';\r\nimport { IMenuButton } from './gl-ng-buttons-frontend/src/lib/component/menu/simple/gl-component-button-menu-simple.interface';\r\n\r\nexport { GlComponentButtonMenuSimpleComponent, IMenuButton, GlComponentButtonMenuTooltipComponent };\r\n// endregion\r\n\r\n","import { Directive, ElementRef, EventEmitter, HostListener, Output } from '@angular/core';\r\n\r\n@Directive({\r\n    // tslint:disable-next-line:directive-selector\r\n    selector: '[clickOutside]',\r\n    standalone: true\r\n})\r\nexport class CoreDirectivesClickOutsideDirective {\r\n  @Output() public clickOutside = new EventEmitter<MouseEvent>();\r\n\r\n  constructor(private _elementRef: ElementRef) { }\r\n\r\n  @HostListener('document:click', ['$event', '$event.target'])\r\n  public onClick(event: MouseEvent, targetElement: HTMLElement): void {\r\n    if (!targetElement) {\r\n      return;\r\n    }\r\n\r\n    const clickedInside = this._elementRef.nativeElement.contains(targetElement);\r\n    if (!clickedInside) {\r\n      this.clickOutside.emit(event);\r\n    }\r\n  }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\nimport { ListItem } from '../../../component/dropdown/simple/gl-component-input-dropdown-simple.model';\r\n\r\n@Pipe({\r\n    name: 'multiSelectFilter',\r\n    pure: false,\r\n    standalone: true\r\n})\r\nexport class CorePipesListFilterPipe implements PipeTransform {\r\n\r\n  transform(items: ListItem[], filter: ListItem): ListItem[] {\r\n    if (!items || !filter) {\r\n      return items;\r\n    }\r\n    return items.filter((item: ListItem) => this.applyFilter(item, filter));\r\n  }\r\n\r\n  applyFilter(item: ListItem, filter: ListItem): boolean {\r\n    if (typeof item.text === 'string' && typeof filter.text === 'string') {\r\n      return !(filter.text && item.text && item.text.toLowerCase().indexOf(filter.text.toLowerCase()) === -1);\r\n    } else {\r\n      return !(filter.text && item.text && item.text.toString().toLowerCase().indexOf(filter.text.toString().toLowerCase()) === -1);\r\n    }\r\n  }\r\n}\r\n","import { Injectable, OnDestroy } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\nimport { IResetAutocompleteValue, ISetAutocompleteValue, IUpdateOptionList\r\n} from './gl-component-input-autocomplete-simple.interface';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class GlComponentInputAutocompleteSimpleService implements OnDestroy {\r\n  autocompleteList$: Subject<IUpdateOptionList> = new Subject();\r\n  autocompleteReset$: Subject<IResetAutocompleteValue> = new Subject();\r\n  autocompleteLoaded$: Subject<boolean> = new Subject();\r\n  autocompleteUpdateValue$: Subject<ISetAutocompleteValue> = new Subject();\r\n\r\n  constructor() {}\r\n\r\n  ngOnDestroy(): void {\r\n    this.autocompleteList$.observers.map(x => x.complete());\r\n    this.autocompleteLoaded$.observers.map(x => x.complete());\r\n    this.autocompleteReset$.observers.map(x => x.complete());\r\n    this.autocompleteUpdateValue$.observers.map(x => x.complete());\r\n  }\r\n}\r\n","import { Overlay } from '@angular/cdk/overlay';\r\nimport { AfterViewInit, Component, ElementRef, EventEmitter, Input, OnChanges, OnDestroy, OnInit, Output, SimpleChanges, ViewChild } from '@angular/core';\r\nimport { UntypedFormControl, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatAutocomplete, MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { IComboBoxData } from 'gl-w-combobox-frontend';\r\nimport { Observable } from 'rxjs';\r\nimport { map, startWith } from 'rxjs/operators';\r\nimport { THorizontalAlignment, TTheme } from '../../../core/interfaces/alignments.interface';\r\nimport { GlComponentInputAutocompleteSimpleService } from './gl-component-input-autocomplete-simple.service';\r\nimport { MatOptionModule } from '@angular/material/core';\r\nimport { AsyncPipe, NgOptimizedImage } from '@angular/common';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\n\r\n@Component({\r\n    selector: 'gl-component-input-autocomplete-simple',\r\n    templateUrl: './gl-component-input-autocomplete-simple.component.html',\r\n    styleUrls: ['./gl-component-input-autocomplete-simple.component.scss'],\r\n    standalone: true,\r\n  imports: [MatFormFieldModule, MatInputModule, ReactiveFormsModule, MatAutocompleteModule, MatDialogModule, MatOptionModule, AsyncPipe, NgOptimizedImage]\r\n})\r\nexport class GlComponentInputAutocompleteSimpleComponent implements OnInit, OnDestroy, OnChanges, AfterViewInit {\r\n  @ViewChild('input') input: ElementRef<HTMLInputElement>;\r\n\r\n  @Output() currentValue = new EventEmitter<IComboBoxData>();\r\n  @Input() listItems: IComboBoxData[] = [];\r\n\r\n  @Input() disabled: boolean;\r\n  @Input() listName: string;\r\n  @Input() id: string;\r\n  @Input() placeholder: string;\r\n  @Input() itemContentAlignment: THorizontalAlignment | '';\r\n  @Input() theme: TTheme = '';\r\n  @Input() value: string;\r\n  @Input() maxLength = '255';\r\n\r\n  @Input() custom: boolean;\r\n  @Input() baseUrl: string;\r\n\r\n  @Input() valueField: string;\r\n  @Input() textField: string;\r\n\r\n  @Input() labelValue: string;\r\n  @Input() labelAlignment: THorizontalAlignment;\r\n  @Input() required: boolean;\r\n  @Input() requiredField: string;\r\n\r\n  private _loaded = false;\r\n  readonly imageSource = '../assets/img/icon/drop-down/arrow-down.svg';\r\n  readonly clearSource = '../assets/img/icon/drop-down/clear.svg';\r\n  autocompleteInput = new UntypedFormControl();\r\n  filteredOptions: Observable<IComboBoxData[]>;\r\n\r\n  constructor(private _service: GlComponentInputAutocompleteSimpleService, public overlay: Overlay) {\r\n    _service.autocompleteList$.subscribe(update => {\r\n      if (this.listName === update.listName) {\r\n        this.listItems = update.options;\r\n        this.setup();\r\n      }\r\n    });\r\n    _service.autocompleteReset$.subscribe(update => {\r\n      if (this.id === update.comboboxId) {\r\n        this.input.nativeElement.value = '';\r\n        this.validate();\r\n      }\r\n    });\r\n    _service.autocompleteLoaded$.subscribe(loaded => {\r\n      this._loaded = loaded;\r\n      _service.autocompleteLoaded$.observers.map(x => x.complete());\r\n    });\r\n    _service.autocompleteUpdateValue$.subscribe(update => {\r\n      if (this.id === update.comboboxId) {\r\n        this.listItems = update.options;\r\n        const value = update.options.filter(x => x.value === update.value);\r\n        const input = this.input.nativeElement;\r\n\r\n        if (value != null && value.length > 0) {\r\n          input.value = value[0].text;\r\n          this.autocompleteInput.setValue(value[0].text);\r\n          this.value = value[0].value;\r\n          this.setup();\r\n        } else {\r\n          input.value = '';\r\n          this.autocompleteInput.setValue('');\r\n          this.value = '';\r\n          this.setup();\r\n        }\r\n      }\r\n    });\r\n  }\r\n\r\n  async ngOnInit(): Promise<void> {\r\n    this.setup();\r\n  }\r\n  ngAfterViewInit(): void {\r\n    if (this.theme !== '') {\r\n      document.body.classList.add(this.theme);\r\n    }\r\n  }\r\n\r\n  private setup(): void {\r\n    // @ts-ignore Todo check typescript bug\r\n    this.filteredOptions = this\r\n      .autocompleteInput\r\n      .valueChanges\r\n      // @ts-ignore Todo check typescript bug\r\n      .pipe(startWith(''),\r\n        map(value => this.filter(value))\r\n      );\r\n\r\n    setTimeout(() => { this.validate(); });\r\n  }\r\n  private filter(value: string): IComboBoxData[] {\r\n    if (value == null) { value = ''; }\r\n\r\n    const filterValue = value.toLowerCase();\r\n    return this.listItems.filter(option => option.text?.toLowerCase().includes(filterValue));\r\n  }\r\n\r\n  validate(): void {\r\n    const input: HTMLInputElement = this.input.nativeElement;\r\n    const value: string = input.value;\r\n    const filteredData = this.filter(value);\r\n\r\n    if (value != null && value.trim().length > 0 && filteredData.length > 0) {\r\n      input.value = filteredData[0].text;\r\n      this.autocompleteInput.setValue(filteredData[0].text);\r\n      this.currentValue.emit({\r\n        id: filteredData[0].id,\r\n        text: filteredData[0].text,\r\n        value: filteredData[0].value\r\n      });\r\n    } else {\r\n      input.value = '';\r\n      this.autocompleteInput.setValue('');\r\n      this.currentValue.emit({\r\n        id: null,\r\n        text: null,\r\n        value: null\r\n      });\r\n    }\r\n  }\r\n\r\n  reset(auto: MatAutocomplete, event: Event): void {\r\n    if (auto.options != null) { auto.options.map(option => option.deselect()); }\r\n    (event.currentTarget as HTMLInputElement).select();\r\n  }\r\n\r\n  clearItems(input: HTMLInputElement): void {\r\n    input.value = null;\r\n    this.autocompleteInput.setValue(null);\r\n    this.currentValue.emit({\r\n      id: null,\r\n      text: null,\r\n      value: null\r\n    });\r\n    setTimeout(() => {\r\n      input.click();\r\n    }, 100);\r\n  }\r\n\r\n  arrowClick(): void {\r\n    this.autocompleteInput.reset();\r\n    this.autocompleteInput.setValue('');\r\n  }\r\n\r\n  ngOnDestroy(): void {\r\n    this._service.autocompleteList$.observers.map(x => x.complete());\r\n    this._service.autocompleteReset$.observers.map(x => x.complete());\r\n    this._service.autocompleteLoaded$.observers.map(x => x.complete());\r\n  }\r\n\r\n  ngOnChanges(changes: SimpleChanges): void {\r\n    const prevList = changes.listItems?.previousValue;\r\n    const currList = changes.listItems?.currentValue;\r\n\r\n    const prevValue = changes.value?.previousValue;\r\n    const currValue = changes.value?.currentValue;\r\n\r\n    // tslint:disable-next-line:triple-equals\r\n    if (prevList != currList) { this.setup(); }\r\n    // tslint:disable-next-line:triple-equals\r\n    if (prevValue != currValue) { this.setup(); }\r\n\r\n    this.overlay.position().global().dispose();\r\n  }\r\n}\r\n","<ng-content></ng-content>\r\n<div class=\"input-container custom-combobox {{ theme }} {{ disabled ? 'read-only' : '' }} {{ listItems.length > 0 ? '' : 'no-data' }}\">\r\n  <mat-form-field\r\n    (focusout)=\"overlay.position().global().dispose()\"\r\n    floatLabel=\"auto\"\r\n    appearance=\"outline\">\r\n    <div class=\"combobox-container {{ listItems.length > 0 ? '' : 'no-data' }} {{ disabled ? 'read-only' : '' }}\">\r\n      <input\r\n        #input\r\n        type=\"text\"\r\n        aria-label=\"Number\"\r\n        class=\"item-content {{ itemContentAlignment }} {{ theme }} {{ listItems.length > 0 ? '' : 'no-data' }} {{ disabled ? 'read-only' : '' }}\"\r\n        matInput\r\n        [readonly]=\"disabled\"\r\n        [id]=\"id\"\r\n        [placeholder]=\"placeholder\"\r\n        [formControl]=\"autocompleteInput\"\r\n        [maxLength]=\"maxLength\"\r\n        [matAutocomplete]=\"auto\"\r\n        (focusin)=\"reset(auto, $event)\"\r\n        (focusout)=\"validate()\">\r\n    </div>\r\n    <mat-autocomplete autoActiveFirstOption=\"true\" #auto=\"matAutocomplete\" (optionSelected)=\"input.blur()\" [mat-dialog-close]=\"overlay.position().global().dispose()\">\r\n\r\n      @for(option of filteredOptions | async; track option.id) {\r\n        <mat-option [value]=\"option.text\">\r\n          {{option.text}}\r\n        </mat-option>\r\n      }\r\n    </mat-autocomplete>\r\n  </mat-form-field>\r\n  <img\r\n    #arrowDown\r\n    (click)=\"clearItems(input)\"\r\n    alt=\"Show items\"\r\n    class=\"arrow-down {{ theme }} {{ disabled ? 'read-only' : '' }}\"\r\n    [src]=\"imageSource\">\r\n</div>\r\n\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { IComboBoxData } from 'gl-w-combobox-frontend';\r\nimport { THorizontalAlignment, TTheme } from '../../../core/interfaces/alignments.interface';\r\nimport { GlComponentTitleLabelSimpleComponent } from '../../../../../../gl-ng-titles-frontend/src/lib/component/label/simple/gl-component-title-label-simple.component';\r\nimport { GlComponentInputAutocompleteSimpleComponent } from '../simple/gl-component-input-autocomplete-simple.component';\r\nimport { TLabelColor, TLabelTheme } from '../../../../../../gl-ng-titles-frontend/src/lib/component/label/simple/gl-component-title-label-simple.interface';\r\n\r\n@Component({\r\n    selector: 'gl-component-input-autocomplete-label',\r\n    templateUrl: './gl-component-input-autocomplete-label.component.html',\r\n    styleUrls: ['./gl-component-input-autocomplete-label.component.scss'],\r\n    standalone: true,\r\n    imports: [GlComponentInputAutocompleteSimpleComponent, GlComponentTitleLabelSimpleComponent]\r\n})\r\nexport class GlComponentInputAutocompleteLabelComponent {\r\n\r\n  @Output() currentValue = new EventEmitter();\r\n  @Input() listItems: IComboBoxData[] = [];\r\n\r\n  @Input() disabled = false;\r\n  @Input() listName: string;\r\n  @Input() id: string;\r\n  @Input() labelValue: string;\r\n  @Input() labelAlignment: THorizontalAlignment;\r\n  @Input() placeholder: string;\r\n  @Input() itemContentAlignment: THorizontalAlignment | '';\r\n  @Input() theme: TTheme = '';\r\n  @Input() value;\r\n  @Input() required: boolean;\r\n  @Input() labelTheme: TLabelTheme = ''\r\n  @Input() labelColor: TLabelColor = '';\r\n  @Input() customLabelColor: string = '';\r\n\r\n  @Input() custom: boolean;\r\n  @Input() baseUrl: string;\r\n\r\n  @Input() valueField: string;\r\n  @Input() textField: string;\r\n  @Input() requiredField = 'Required field';\r\n\r\n  constructor() {}\r\n\r\n  onCurrentValue(value): void { this.currentValue.emit(value); }\r\n}\r\n","<div class=\"item-container {{ labelTheme !== 'simple' ? 'default-label' : '' }}\">\r\n  <gl-component-input-autocomplete-simple\r\n    [theme]=\"theme\"\r\n    [value]=\"value\"\r\n    [listName]=\"listName\"\r\n    (currentValue)=\"onCurrentValue($event)\"\r\n    [id]=\"id\"\r\n    [itemContentAlignment]=\"itemContentAlignment\"\r\n    [placeholder]=\"placeholder\"\r\n    [listItems]=\"listItems\"\r\n    [disabled]=\"disabled\"\r\n\r\n    [custom]=\"custom\"\r\n    [baseUrl]=\"baseUrl\"\r\n    [valueField]=\"valueField\"\r\n    [textField]=\"textField\"\r\n  ><gl-component-title-label-simple\r\n    [id]=\"id\"\r\n    [labelAlignment]=\"labelAlignment\"\r\n    [labelValue]=\"labelValue\"\r\n    [required]=\"required\"\r\n    [requiredLabel]=\"requiredField\"\r\n    [theme]=\"labelTheme\"\r\n    [labelColor]=\"labelColor\"\r\n    [customLabelColor]=\"customLabelColor\"\r\n  ></gl-component-title-label-simple>\r\n  </gl-component-input-autocomplete-simple>\r\n</div>\r\n\r\n","import { Component, Input } from '@angular/core';\r\nimport { NgOptimizedImage } from '@angular/common';\r\n\r\n@Component({\r\n    selector: 'gl-component-input-button-hyperlink',\r\n    templateUrl: './gl-component-input-button-hyperlink.component.html',\r\n    styleUrls: ['./gl-component-input-button-hyperlink.component.scss'],\r\n    standalone: true,\r\n  imports: [NgOptimizedImage]\r\n})\r\nexport class GlComponentInputButtonHyperlinkComponent {\r\n  @Input() imageSrc: string;\r\n  @Input() imageDescription: string;\r\n  @Input() description: string;\r\n  @Input() link: string;\r\n  @Input() readonly = false;\r\n\r\n  constructor() { }\r\n}\r\n","<div class=\"hyperlink-container\">\r\n\r\n  <img\r\n    class=\"logo\"\r\n    [src]=\"imageSrc\"\r\n    [alt]=\"imageDescription\">\r\n\r\n  @if(readonly) {\r\n    <span\r\n      class=\"message\">\r\n    {{ description }}\r\n  </span>\r\n  }\r\n\r\n  @if(!readonly) {\r\n    <a\r\n      class=\"message\"\r\n      target=\"_blank\"\r\n      [href]=\"link\"\r\n    >{{ description }}</a>\r\n  }\r\n\r\n</div>\r\n","import { Component, Input } from '@angular/core';\r\nimport { TInputButtonSimpleClass, TInputButtonType } from './gl-component-input-button-simple.interface';\r\n\r\n@Component({\r\n    selector: 'gl-component-input-button-simple',\r\n    templateUrl: './gl-component-input-button-simple.component.html',\r\n    styleUrls: ['./gl-component-input-button-simple.component.scss'],\r\n    standalone: true\r\n})\r\nexport class GlComponentInputButtonSimpleComponent {\r\n  @Input() value: string;\r\n  @Input() theme: TInputButtonSimpleClass = '';\r\n  @Input() innerValue: string;\r\n  @Input() readonly = false;\r\n  @Input() type: TInputButtonType = 'button';\r\n  @Input() disableDragging = false;\r\n  @Input() class: string;\r\n\r\n  constructor() {}\r\n\r\n  preventDragging(): boolean {\r\n    return !this.disableDragging;\r\n  }\r\n}\r\n","<button\r\n  class=\"default-button {{ theme }} {{ class }}\"\r\n  [type]=\"type\"\r\n  [value]=\"value\"\r\n  [disabled]=\"readonly\"\r\n  (dragstart)=\"preventDragging()\"\r\n>{{ innerValue }}</button>\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { TCheckboxTheme, TCheckedIcon, TUncheckedIcon } from './gl-component-input-check-box-simple.interface';\r\nimport { NgOptimizedImage } from '@angular/common';\r\n\r\n@Component({\r\n    selector: 'gl-component-input-check-box-simple',\r\n    templateUrl: './gl-component-input-check-box-simple.component.html',\r\n    styleUrls: ['./gl-component-input-check-box-simple.component.scss'],\r\n    standalone: true,\r\n  imports: [NgOptimizedImage]\r\n})\r\nexport class GlComponentInputCheckBoxSimpleComponent {\r\n\r\n  @Input() checked = false;\r\n  @Input() showBackground = true;\r\n  @Input() disabled = false;\r\n\r\n  @Input() theme: TCheckboxTheme = 'dark';\r\n  @Input() checkedIcon: TCheckedIcon = 'checked';\r\n  @Input() uncheckedIcon: TUncheckedIcon = 'unchecked';\r\n\r\n  @Output() checked$: EventEmitter<boolean> = new EventEmitter();\r\n\r\n  constructor() { }\r\n\r\n  onChecked(checked: boolean): void {\r\n    this.checked = checked;\r\n    this.checked$.emit(checked);\r\n  }\r\n}\r\n","<div class=\"check-box-container {{ theme }} {{ showBackground ? '' : 'transparent' }}\">\r\n  @if(!checked) {\r\n    <img\r\n      (click)=\"onChecked(true)\"\r\n      alt=\"Checked\"\r\n      class=\"check-box unchecked\"\r\n      [class.disabled]=\"disabled\"\r\n      [src]=\"'../assets/img/icon/check-box/' + uncheckedIcon + '.svg'\">\r\n  }\r\n\r\n  @if(checked) {\r\n    <img\r\n      (click)=\"onChecked(false)\"\r\n      alt=\"Unchecked\"\r\n      class=\"check-box checked\"\r\n      [class.disabled]=\"disabled\"\r\n      [src]=\"'../assets/img/icon/check-box/' + checkedIcon +'.svg'\">\r\n  }\r\n</div>\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { THorizontalAlignment } from '../../../core/interfaces/alignments.interface';\r\nimport { GlComponentInputCheckBoxSimpleComponent } from '../simple/gl-component-input-check-box-simple.component';\r\nimport { GlComponentTitleLabelSimpleComponent } from '../../../../../../gl-ng-titles-frontend/src/lib/component/label/simple/gl-component-title-label-simple.component';\r\nimport { TLabelColor, TLabelTheme } from '../../../../../../gl-ng-titles-frontend/src/lib/component/label/simple/gl-component-title-label-simple.interface';\r\n\r\n@Component({\r\n    selector: 'gl-component-input-check-box-label',\r\n    templateUrl: './gl-component-input-check-box-label.component.html',\r\n    styleUrls: ['./gl-component-input-check-box-label.component.scss'],\r\n    standalone: true,\r\n    imports: [GlComponentTitleLabelSimpleComponent, GlComponentInputCheckBoxSimpleComponent]\r\n})\r\nexport class GlComponentInputCheckBoxLabelComponent {\r\n\r\n  @Input() checked = false;\r\n  @Input() showBackground = true;\r\n\r\n  @Input() labelId: string;\r\n  @Input() labelAlignment: THorizontalAlignment = 'center';\r\n  @Input() required: boolean;\r\n  @Input() labelValue: string;\r\n  @Input() requiredLabelDescription: string;\r\n  @Input() labelTheme: TLabelTheme = ''\r\n  @Input() labelColor: TLabelColor = '';\r\n\r\n  @Output() checked$: EventEmitter<boolean> = new EventEmitter();\r\n\r\n  constructor() { }\r\n}\r\n","<gl-component-title-label-simple\r\n  [labelAlignment]=\"labelAlignment\"\r\n  [required]=\"required\"\r\n  [labelValue]=\"labelValue\"\r\n  [requiredLabel]=\"requiredLabelDescription\"\r\n  [id]=\"labelId\"\r\n  [labelColor]=\"labelColor\"\r\n  [theme]=\"labelTheme\"\r\n></gl-component-title-label-simple>\r\n<gl-component-input-check-box-simple\r\n  [checked]=\"checked\"\r\n  [showBackground]=\"showBackground\"\r\n  (checked$)=\"checked$.emit($event)\"\r\n></gl-component-input-check-box-simple>\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { MAT_MOMENT_DATE_ADAPTER_OPTIONS, MomentDateAdapter } from '@angular/material-moment-adapter';\r\nimport { DateAdapter, MAT_DATE_FORMATS, MAT_DATE_LOCALE } from '@angular/material/core';\r\nimport { MatDatepicker, MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { DateGet } from 'gl-w-date-frontend';\r\nimport { THorizontalAlignment, TTheme } from '../../../../core/interfaces/alignments.interface';\r\nimport { IDatePickerMonthYearOutput } from './gl-component-input-datepicker-simple-month-year.interface';\r\nimport { NgOptimizedImage } from '@angular/common';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\n\r\nconst MONTH_YEAR_FORMAT = {\r\n  parse: {\r\n    dateInput: 'MM/YYYY',\r\n  },\r\n  display: {\r\n    dateInput: 'MM/YYYY',\r\n    monthYearLabel: 'MMM YYYY',\r\n    dateA11yLabel: 'LL',\r\n    monthYearA11yLabel: 'MMMM YYYY',\r\n  },\r\n};\r\n\r\n@Component({\r\n    selector: 'gl-component-input-datepicker-simple-month-year',\r\n    templateUrl: './gl-component-input-datepicker-simple-month-year.component.html',\r\n    styleUrls: ['./gl-component-input-datepicker-simple-month-year.component.scss'],\r\n    providers: [\r\n        {\r\n            provide: MAT_DATE_LOCALE,\r\n            useValue: 'pt-BR'\r\n        },\r\n        {\r\n            provide: DateAdapter,\r\n            useClass: MomentDateAdapter,\r\n            deps: [MAT_DATE_LOCALE, MAT_MOMENT_DATE_ADAPTER_OPTIONS]\r\n        },\r\n        {\r\n            provide: MAT_DATE_FORMATS,\r\n            useValue: MONTH_YEAR_FORMAT\r\n        }\r\n    ],\r\n    standalone: true,\r\n  imports: [MatFormFieldModule, MatInputModule, MatDatepickerModule, NgOptimizedImage]\r\n})\r\nexport class GlComponentInputDatepickerSimpleMonthYearComponent {\r\n  @Input() disabled = false;\r\n  @Input() id: string;\r\n  @Input() placeholder: string;\r\n  @Input() itemContentAlignment: THorizontalAlignment = 'center';\r\n  @Input() theme: TTheme = '';\r\n  @Input() value: Date = DateGet.currentDate('DD/MM/YYYY');\r\n  @Input() maxLength = 255;\r\n\r\n  @Output() currentValue: EventEmitter<IDatePickerMonthYearOutput> = new EventEmitter();\r\n\r\n  readonly dateFormatString: 'MM/YYYY' = 'MM/YYYY';\r\n  readonly dateFormat = 'DD/MM/YYYY';\r\n  startDate = this.value;\r\n  date: Date = DateGet.customDateNoUTC('DD/MM/YYYY');\r\n\r\n  constructor() {}\r\n\r\n  chosenYearHandler(normalizedYear: any): void {\r\n    const ctrlValue = this.date;\r\n    ctrlValue.setFullYear(normalizedYear.year());\r\n    this.date = ctrlValue;\r\n\r\n    const date = DateGet.customDateNoUTC(ctrlValue, this.dateFormat);\r\n\r\n    const dateString = DateGet.customDateNoUTCString(normalizedYear, this.dateFormatString, this.dateFormatString) as 'MM/YYYY';\r\n\r\n    this.currentValue.emit({ date, dateString });\r\n  }\r\n  chosenMonthHandler(normalizedMonth: any, datepicker: MatDatepicker<any>): void {\r\n    const ctrlValue = this.date;\r\n    ctrlValue.setMonth(normalizedMonth.month());\r\n    this.date = ctrlValue;\r\n\r\n    datepicker.close();\r\n\r\n    const date = DateGet.customDateNoUTC(ctrlValue, this.dateFormat);\r\n    const dateString = DateGet.customDateString(normalizedMonth, this.dateFormatString, this.dateFormatString) as 'MM/YYYY';\r\n\r\n    this.currentValue.emit({ date, dateString });\r\n  }\r\n\r\n  clear(): void {\r\n    this.currentValue.emit({\r\n      date: null,\r\n      dateString: null\r\n    });\r\n  }\r\n  changed(event): void {\r\n    this.currentValue.emit({\r\n      date: DateGet.customDateNoUTC(event.value, this.dateFormat),\r\n      dateString: DateGet.customDateString(event.value, this.dateFormatString, this.dateFormatString) as 'MM/YYYY'\r\n    });\r\n  }\r\n}\r\n","<ng-content></ng-content>\r\n<mat-form-field appearance=\"none\" floatLabel=\"never\">\r\n  <!--  <mat-label>Input disabled</mat-label>-->\r\n  <input\r\n    class=\"item-content {{ itemContentAlignment }} {{ theme }}\"\r\n    matInput\r\n    [id]=\"id\"\r\n    [placeholder]=\"placeholder\"\r\n    [value]=\"value\"\r\n    [matDatepicker]=\"dp3\"\r\n    [attr.maxlength]=\"maxLength\"\r\n    (dateChange)=\"changed($event)\"\r\n    disabled>\r\n\r\n  @if (!disabled) {\r\n    <mat-datepicker-toggle matSuffix (click)=\"clear()\">\r\n      <img\r\n        matDatepickerToggleIcon\r\n        class=\"datepicker-button\"\r\n        alt=\"Date picker icon\"\r\n        src=\"../assets/img/icon/datepicker/clear.svg\">\r\n    </mat-datepicker-toggle>\r\n    <mat-datepicker-toggle matSuffix [for]=\"dp3\">\r\n      <img\r\n        matDatepickerToggleIcon\r\n        class=\"datepicker-button\"\r\n        alt=\"Date picker icon\"\r\n        src=\"../assets/img/icon/datepicker/date.svg\">\r\n    </mat-datepicker-toggle>\r\n  }\r\n\r\n  <mat-datepicker\r\n    #dp3 disabled=\"false\"\r\n    startView=\"multi-year\"\r\n    (yearSelected)=\"chosenYearHandler($event)\"\r\n    (monthSelected)=\"chosenMonthHandler($event, dp3)\"\r\n    panelClass=\"month-picker\">\r\n  ></mat-datepicker>\r\n</mat-form-field>\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { MAT_MOMENT_DATE_ADAPTER_OPTIONS, MAT_MOMENT_DATE_FORMATS, MomentDateAdapter } from '@angular/material-moment-adapter';\r\nimport { DateAdapter, MAT_DATE_FORMATS, MAT_DATE_LOCALE } from '@angular/material/core';\r\nimport { DateGet } from 'gl-w-date-frontend';\r\nimport { THorizontalAlignment, TTheme } from '../../../../core/interfaces/alignments.interface';\r\nimport { IDatePickerOutput } from './gl-component-input-datepicker-simple-day-month-year.interface';\r\nimport { NgOptimizedImage } from '@angular/common';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\n\r\n@Component({\r\n    selector: 'gl-component-input-datepicker-simple-day-month-year',\r\n    templateUrl: './gl-component-input-datepicker-simple-day-month-year.component.html',\r\n    styleUrls: ['./gl-component-input-datepicker-simple-day-month-year.component.scss'],\r\n    providers: [\r\n        { provide: MAT_DATE_LOCALE, useValue: 'pt-BR' },\r\n        {\r\n            provide: DateAdapter,\r\n            useClass: MomentDateAdapter,\r\n            deps: [MAT_DATE_LOCALE, MAT_MOMENT_DATE_ADAPTER_OPTIONS]\r\n        },\r\n        {\r\n            provide: MAT_DATE_FORMATS,\r\n            useValue: MAT_MOMENT_DATE_FORMATS\r\n        },\r\n    ],\r\n    standalone: true,\r\n  imports: [MatFormFieldModule, MatInputModule, MatDatepickerModule, NgOptimizedImage]\r\n})\r\nexport class GlComponentInputDatepickerSimpleDayMonthYearComponent {\r\n  @Input() disabled = false;\r\n  @Input() id: string;\r\n  @Input() placeholder: string;\r\n  @Input() itemContentAlignment: THorizontalAlignment = 'center';\r\n  @Input() theme: TTheme = '';\r\n  @Input() value: Date = null;\r\n  @Input() maxLength = 255;\r\n\r\n  @Output() currentValue: EventEmitter<IDatePickerOutput> = new EventEmitter();\r\n\r\n  readonly dateFormat: 'DD/MM/YYYY' = 'DD/MM/YYYY';\r\n\r\n  constructor() {}\r\n\r\n  clear(input: HTMLInputElement): void {\r\n    this.currentValue.emit({\r\n      date: null,\r\n      dateString: null\r\n    });\r\n\r\n    input.value = null;\r\n  }\r\n\r\n  changed(event): void {\r\n    this.currentValue.emit({\r\n      date: DateGet.customDateNoUTC(event.value, this.dateFormat),\r\n      dateString: DateGet.customDateNoUTCString(event.value, this.dateFormat) as 'DD/MM/YYYY'\r\n    });\r\n  }\r\n}\r\n","<ng-content></ng-content>\r\n<mat-form-field appearance=\"none\" floatLabel=\"never\" id=\"{{ id + '-with-step' }}\">\r\n<!--  <mat-label>Input disabled</mat-label>-->\r\n  <input\r\n    #input\r\n    class=\"item-content {{ itemContentAlignment }} {{ theme }}\"\r\n    [id]=\"id\"\r\n    [placeholder]=\"placeholder\"\r\n    [value]=\"value\"\r\n    [matDatepicker]=\"dp3\"\r\n    [attr.maxlength]=\"maxLength\"\r\n    (dateChange)=\"changed($event)\"\r\n    matInput\r\n    disabled>\r\n\r\n  @if(!disabled) {\r\n    <mat-datepicker-toggle matSuffix (click)=\"clear(input)\">\r\n      <img\r\n        matDatepickerToggleIcon\r\n        class=\"datepicker-button\"\r\n        alt=\"Date picker icon\"\r\n        src=\"../assets/img/icon/datepicker/clear.svg\">\r\n    </mat-datepicker-toggle>\r\n    <mat-datepicker-toggle matSuffix [for]=\"dp3\">\r\n      <img\r\n        matDatepickerToggleIcon\r\n        class=\"datepicker-button\"\r\n        alt=\"Date picker icon\"\r\n        src=\"../assets/img/icon/datepicker/date.svg\">\r\n    </mat-datepicker-toggle>\r\n  }\r\n\r\n  <mat-datepicker #dp3 disabled=\"false\"></mat-datepicker>\r\n</mat-form-field>\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { THorizontalAlignment, TTheme } from '../../../core/interfaces/alignments.interface';\r\nimport { IDatePickerOutput } from '../simple/day-month-year/gl-component-input-datepicker-simple-day-month-year.interface';\r\nimport { IDatePickerMonthYearOutput } from '../simple/month-year/gl-component-input-datepicker-simple-month-year.interface';\r\nimport { GlComponentInputDatepickerSimpleMonthYearComponent } from '../simple/month-year/gl-component-input-datepicker-simple-month-year.component';\r\nimport { GlComponentTitleLabelSimpleComponent } from '../../../../../../gl-ng-titles-frontend/src/lib/component/label/simple/gl-component-title-label-simple.component';\r\nimport { GlComponentInputDatepickerSimpleDayMonthYearComponent } from '../simple/day-month-year/gl-component-input-datepicker-simple-day-month-year.component';\r\nimport { TLabelColor, TLabelTheme } from '../../../../../../gl-ng-titles-frontend/src/lib/component/label/simple/gl-component-title-label-simple.interface';\r\n\r\n@Component({\r\n    selector: 'gl-component-input-datepicker-label',\r\n    templateUrl: './gl-component-input-datepicker-label.component.html',\r\n    styleUrls: ['./gl-component-input-datepicker-label.component.scss'],\r\n    standalone: true,\r\n    imports: [GlComponentInputDatepickerSimpleDayMonthYearComponent, GlComponentTitleLabelSimpleComponent, GlComponentInputDatepickerSimpleMonthYearComponent]\r\n})\r\nexport class GlComponentInputDatepickerLabelComponent implements OnInit {\r\n  @Input() disabled = false;\r\n  @Input() id: string;\r\n  @Input() placeholder: string;\r\n  @Input() itemContentAlignment: THorizontalAlignment = 'center';\r\n  @Input() theme: TTheme = '';\r\n  @Input() value: Date = null;\r\n  @Input() dateFormat: 'MM/YYYY' | 'DD/MM/YYYY' = 'DD/MM/YYYY';\r\n\r\n  @Input() labelTheme: TLabelTheme = ''\r\n  @Input() labelColor: TLabelColor = '';\r\n  @Input() customLabelColor: string = '';\r\n\r\n  @Input() maxLength = 255;\r\n  @Input() labelValue: string;\r\n  @Input() labelAlignment: THorizontalAlignment = 'center';\r\n  @Input() required: boolean;\r\n  @Input() requiredField = 'Required field';\r\n\r\n  @Output() currentValue: EventEmitter<IDatePickerOutput | IDatePickerMonthYearOutput> = new EventEmitter();\r\n\r\n  constructor() {}\r\n\r\n  ngOnInit(): void {}\r\n\r\n  onCurrentValue(event: IDatePickerOutput | IDatePickerMonthYearOutput): void {\r\n    this.currentValue.emit(event);\r\n  }\r\n}\r\n","<div class=\"item-container {{ labelTheme !== 'simple' ? 'default-label' : '' }}\">\r\n  @if(dateFormat == 'DD/MM/YYYY') {\r\n    <gl-component-input-datepicker-simple-day-month-year\r\n      [theme]=\"theme\"\r\n      [value]=\"value\"\r\n      (currentValue)=\"onCurrentValue($event)\"\r\n      [id]=\"id\"\r\n      [itemContentAlignment]=\"itemContentAlignment\"\r\n      [placeholder]=\"placeholder\"\r\n      [disabled]=\"disabled\"\r\n      [maxLength]=\"maxLength\"\r\n    ><gl-component-title-label-simple\r\n      [id]=\"id\"\r\n      [labelAlignment]=\"labelAlignment\"\r\n      [labelValue]=\"labelValue\"\r\n      [required]=\"required\"\r\n      [theme]=\"labelTheme\"\r\n      [labelColor]=\"labelColor\"\r\n      [customLabelColor]=\"customLabelColor\"\r\n      [requiredLabel]=\"requiredField\"\r\n    ></gl-component-title-label-simple>\r\n    </gl-component-input-datepicker-simple-day-month-year>\r\n  }\r\n\r\n  @if(dateFormat == 'MM/YYYY') {\r\n    <gl-component-input-datepicker-simple-month-year\r\n      [theme]=\"theme\"\r\n      [value]=\"value\"\r\n      (currentValue)=\"onCurrentValue($event)\"\r\n      [id]=\"id\"\r\n      [itemContentAlignment]=\"itemContentAlignment\"\r\n      [placeholder]=\"placeholder\"\r\n      [disabled]=\"disabled\"\r\n      [maxLength]=\"maxLength\"\r\n    ><gl-component-title-label-simple\r\n      [id]=\"id\"\r\n      [labelAlignment]=\"labelAlignment\"\r\n      [labelValue]=\"labelValue\"\r\n      [required]=\"required\"\r\n      [theme]=\"labelTheme\"\r\n      [labelColor]=\"labelColor\"\r\n      [customLabelColor]=\"customLabelColor\"\r\n      [requiredLabel]=\"requiredField\"\r\n    ></gl-component-title-label-simple>\r\n    </gl-component-input-datepicker-simple-month-year>\r\n  }\r\n</div>\r\n\r\n\r\n\r\n","import { Directive, EventEmitter, HostBinding, HostListener, Output } from '@angular/core';\r\n\r\n@Directive({\r\n    selector: '[glCoreDirectivesDragAndDrop]',\r\n    standalone: true\r\n})\r\nexport class CoreDirectivesDragAndDropDirective {\r\n  @HostBinding('class.file-over') fileOver: boolean;\r\n  @HostBinding('class.file-not-over') fileNotOver: boolean;\r\n  @Output() fileDropped: EventEmitter<any> = new EventEmitter();\r\n\r\n  private static isReadOnly(event): boolean {\r\n    return event.target.classList.contains('readonly');\r\n  }\r\n\r\n  @HostListener('dragover', ['$event']) onDragOver(event: DragEvent): void {\r\n    event.preventDefault();\r\n    event.stopPropagation();\r\n\r\n    const readonly = CoreDirectivesDragAndDropDirective.isReadOnly(event);\r\n\r\n    if (!readonly) {\r\n      this.fileOver = true;\r\n      this.fileNotOver = false;\r\n    } else {\r\n      this.fileOver = false;\r\n      this.fileNotOver = true;\r\n    }\r\n  }\r\n  @HostListener('dragleave', ['$event']) public onDragLeader(event: DragEvent): void {\r\n    event.preventDefault();\r\n    event.stopPropagation();\r\n\r\n    const readonly = CoreDirectivesDragAndDropDirective.isReadOnly(event);\r\n\r\n    if (!readonly) {\r\n      this.fileOver = false;\r\n      this.fileNotOver = true;\r\n    } else {\r\n      this.fileOver = false;\r\n      this.fileNotOver = true;\r\n    }\r\n  }\r\n  @HostListener('drop', ['$event']) public onDrop(event: DragEvent): void {\r\n    event.preventDefault();\r\n    event.stopPropagation();\r\n\r\n    const readonly = CoreDirectivesDragAndDropDirective.isReadOnly(event);\r\n\r\n    if (!readonly) {\r\n      this.fileOver = false;\r\n      this.fileNotOver = true;\r\n      const files = event.dataTransfer.files;\r\n\r\n      if (files.length > 0) {\r\n        // Do some stuff here\r\n        this.fileDropped.emit(files);\r\n        console.log(`You dropped ${files.length} files.`);\r\n      }\r\n    } else {\r\n      this.fileOver = false;\r\n      this.fileNotOver = true;\r\n    }\r\n  }\r\n}\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { NgOptimizedImage } from '@angular/common';\r\n\r\n@Component({\r\n    selector: 'gl-component-input-switch',\r\n    templateUrl: './gl-component-input-switch.component.html',\r\n    styleUrls: ['./gl-component-input-switch.component.scss'],\r\n    standalone: true,\r\n  imports: [NgOptimizedImage]\r\n})\r\nexport class GlComponentInputSwitchComponent {\r\n  @Input() disabled = false;\r\n  @Input() active = false;\r\n  @Input() label: string;\r\n  @Input() labelColor: 'white' | 'black' = 'white';\r\n  @Input() showLabel = true;\r\n  @Input() showAsInputButton = false;\r\n\r\n  @Input() buttonIconSrc: string;\r\n\r\n  @Output() active$: EventEmitter<boolean> = new EventEmitter();\r\n\r\n  constructor() { }\r\n\r\n  activate(): void {\r\n    if (!this.disabled) {\r\n      this.active = !this.active;\r\n      this.active$.emit(this.active);\r\n    }\r\n  }\r\n\r\n  onContainerClick(): void {\r\n    if (this.showAsInputButton) {\r\n      this.activate();\r\n    }\r\n  }\r\n}\r\n","<div class=\"switch-main-container {{ disabled ? 'disabled' : '' }} {{ showAsInputButton ? 'show-as-button' : '' }}\"\r\n  (click)=\"onContainerClick()\">\r\n  @if (showAsInputButton && buttonIconSrc?.length > 0) {\r\n    <img\r\n      [src]=\"buttonIconSrc\"\r\n      class=\"switch-button-icon\"\r\n      alt=\"switch-icon\">\r\n  }\r\n\r\n  @if(showLabel) {\r\n    <span\r\n      class=\"switch-label {{ labelColor }} {{ buttonIconSrc?.length > 0 ? 'has-icon' : '' }}\"\r\n    >{{ label }}</span>\r\n  }\r\n\r\n  <div\r\n    (click)=\"activate()\"\r\n    class=\"switch-item-container {{ active ? 'active' : '' }}\">\r\n    <div\r\n      class=\"switch-item {{ active ? 'active' : '' }}\"></div>\r\n  </div>\r\n</div>\r\n","import { Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';\r\nimport { AttachmentIcon, AttachmentValidate, IAttachmentData } from 'gl-w-attachment-frontend';\r\nimport { GlComponentModalAlertService } from '../../../../../../gl-ng-modals-frontend/src/lib/component/alert/gl-component-modal-alert.service';\r\nimport { IDragAndDropAddedResult } from './gl-component-input-drag-and-drop-simple.interface';\r\nimport { GlComponentInputButtonSimpleComponent } from '../../button/simple/gl-component-input-button-simple.component';\r\nimport { GlComponentAttachmentItemComponent } from '../../../../../../gl-ng-attachments-frontend/src/lib/component/item/gl-component-attachment-item.component';\r\nimport { CoreDirectivesDragAndDropDirective } from '../../../core/directives/drag-and-drop/core-directives-drag-and-drop.directive';\r\nimport { GlComponentInputSwitchComponent } from '../../switch/gl-component-input-switch.component';\r\nimport { NgOptimizedImage } from '@angular/common';\r\n\r\n@Component({\r\n    selector: 'gl-component-input-drag-and-drop-simple',\r\n    templateUrl: './gl-component-input-drag-and-drop-simple.component.html',\r\n    styleUrls: ['./gl-component-input-drag-and-drop-simple.component.scss'],\r\n    standalone: true,\r\n  imports: [GlComponentInputSwitchComponent, CoreDirectivesDragAndDropDirective, GlComponentAttachmentItemComponent, GlComponentInputButtonSimpleComponent, NgOptimizedImage]\r\n})\r\nexport class GlComponentInputDragAndDropSimpleComponent {\r\n  @ViewChild('fileAttachment') input: ElementRef<HTMLInputElement>;\r\n\r\n  @Input() showUploadButton = true;\r\n  @Input() showContinueUpload: boolean;\r\n  @Input() continueUpload: boolean;\r\n  @Input() continueUploadLabel = 'Continue previous loading';\r\n\r\n  @Input() uploadButtonValue = 'Upload files';\r\n  @Input() readOnly = false;\r\n  @Input() handleErrorMessage = false;\r\n\r\n  /**\r\n   * In case the button icon source is not passed, the icon will be hidden.\r\n   */\r\n  @Input() resumeButtonIconSrc: string;\r\n  @Input() descriptionDragAndDrop = 'Drag and drop the file';\r\n  @Input() descriptionDragAndDropOr = 'or';\r\n  @Input() descriptionDragAndDropClickHere = 'Click here';\r\n\r\n  @Input() uploadIcon = '../assets/img/icon/upload/upload.svg';\r\n\r\n  /**\r\n   * The message must contain the string $var1$. It'll be replaced during runtime.\r\n   * I.e.: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit: $var1$'\r\n   */\r\n  @Input() invalidExtensionMessageSingular = 'The invalid file has not been added to the attachment list. Accepted file extensions: $var1$';\r\n  /**\r\n   * The message must contain the string $var1$. It'll be replaced during runtime.\r\n   * I.e.: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit: $var1$'\r\n   */\r\n  @Input() invalidExtensionMessagePlural = 'The invalid files have not been added to the attachment list. Accepted file extensions: $var1$';\r\n  /**\r\n   * The message must contain the string $var1$. It'll be replaced during runtime.\r\n   * I.e.: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit: $var1$'\r\n   */\r\n  @Input() duplicatedMessageSingular = 'The duplicated file has not been added to the attachment list. Rejected files: $var1$';\r\n  /**\r\n   * The message must contain the string $var1$. It'll be replaced during runtime.\r\n   * I.e.: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit: $var1$'\r\n   */\r\n  @Input() duplicatedMessagePlural = 'The duplicated files have not been added to the attachment list. Rejected files: $var1$';\r\n  /**\r\n   * The message must contain the string $var1$ and $var2$. It'll be replaced during runtime.\r\n   * I.e.: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit: $var1$'\r\n   */\r\n  @Input() invalidSizeMessageSingular = 'The current file is over $var1$KB and has not been added to the attachment list. Rejected files: $var2$';\r\n  /**\r\n   * The message must contain the string $var1$ and $var2$. It'll be replaced during runtime.\r\n   * I.e.: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit: $var1$'\r\n   */\r\n  @Input() invalidSizeMessagePlural =\r\n    'The files with size over $var1$KB have not been added to the attachment list. Rejected files: $var2$';\r\n\r\n  /**\r\n   * The message must contain the string $var1$. It'll be replaced during runtime.\r\n   * I.e.: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit: $var1$'\r\n   */\r\n  @Input() invalidLengthMessageSingular = 'You can just add one attachment file. Rejected files: $var1$';\r\n  /**\r\n   * The message must contain the string $var1$. It'll be replaced during runtime.\r\n   * I.e.: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit: $var1$'\r\n   */\r\n  @Input() invalidLengthMessagePlural = 'You can just add $var1$ attachment file. Rejected files: $var2$';\r\n\r\n  /**\r\n   * If maxNumberOfFiles value is greater than 1 or equal to -1, multiple files are enabled.\r\n   * Default value = -1.\r\n   */\r\n  @Input() maxNumberOfFiles = -1;\r\n  /**\r\n   * If maxSize value is calculated in KB.\r\n   * Default value = 46080 (45mb).\r\n   */\r\n  @Input() maxSize = 46080;\r\n  /**\r\n   * This field does not require to include the dot extension.\r\n   * Example: [\"psd\", .xlsx\", \"zip\", \".docx\", \".pptx\"]\r\n   */\r\n  @Input() acceptFileType: string[] = [];\r\n  /**\r\n   * Returns the list of valid attachments added.\r\n   */\r\n\r\n  @Input() attachmentItems: IAttachmentData[] = [];\r\n\r\n  @Output() $attachmentItems: EventEmitter<IDragAndDropAddedResult> = new EventEmitter();\r\n  @Output() $removedAttachmentItems: EventEmitter<IAttachmentData[]> = new EventEmitter();\r\n  /**\r\n   * Returns the list of valid attachments added and fires the upload button.\r\n   */\r\n  @Output() $uploadClick: EventEmitter<IAttachmentData[]> = new EventEmitter();\r\n  @Output() $continueUploadActive: EventEmitter<boolean> = new EventEmitter();\r\n  @Output() handleErrorMessageResult$: EventEmitter<string> = new EventEmitter();\r\n\r\n  constructor(private _alert: GlComponentModalAlertService) { }\r\n\r\n  private static fileNameList(list: string[]): string {\r\n    let listName = '\\n';\r\n    for (const [i, item] of list.entries()) {\r\n      const separator = i < (list.length - 1) ? ';\\n' : '.';\r\n      listName += `${i + 1}. ${item}${separator}`;\r\n    }\r\n\r\n    return listName;\r\n  }\r\n\r\n  async onFileDropped(fileList: FileList): Promise<void> {\r\n    const duplicatedList: string[] = [];\r\n    const invalidFileList: string[] = [];\r\n    const invalidSizeList: string[] = [];\r\n    const invalidLengthList: string[] = [];\r\n    const newItems: IAttachmentData[] = [];\r\n\r\n    if (this.maxNumberOfFiles === -1 || this.maxNumberOfFiles > 1) {\r\n      // tslint:disable-next-line:prefer-for-of\r\n      for (let i = 0; i < fileList.length; i++) {\r\n        const file = fileList[i];\r\n        const validFile = this.acceptFileType.length > 0 ? AttachmentValidate.fileArray(file.name, this.acceptFileType) :  true;\r\n        const duplicated = AttachmentValidate.duplicated(file.name, this.attachmentItems);\r\n        const invalidSize = !AttachmentValidate.fileSizeFromArray(this.input.nativeElement, file);\r\n\r\n        if (validFile) {\r\n          if (duplicated) {\r\n            duplicatedList.push(file.name);\r\n          } else if (invalidSize) {\r\n            invalidSizeList.push(file.name);\r\n          } else {\r\n            if (this.maxNumberOfFiles === -1 || this.attachmentItems.length < this.maxNumberOfFiles) {\r\n              newItems.push(this.addItemToArray(file));\r\n            } else {\r\n              invalidLengthList.push(file.name);\r\n            }\r\n          }\r\n        } else {\r\n          invalidFileList.push(file.name);\r\n        }\r\n      }\r\n\r\n      await this.showErrorMessage(invalidFileList, duplicatedList, invalidSizeList, invalidLengthList);\r\n    } else {\r\n      const arrayCopy = [...this.attachmentItems];\r\n      this.attachmentItems = [];\r\n\r\n      // tslint:disable-next-line:prefer-for-of\r\n      for (let i = 0; i < fileList.length; i++) {\r\n        const file = fileList[i];\r\n        const validFile = this.acceptFileType.length > 0 ? AttachmentValidate.fileArray(file.name, this.acceptFileType) :  true;\r\n        const duplicated = AttachmentValidate.duplicated(file.name, this.attachmentItems);\r\n        const invalidSize = !AttachmentValidate.fileSizeFromArray(this.input.nativeElement, file);\r\n\r\n        if (validFile) {\r\n          if (duplicated) {\r\n            duplicatedList.push(file.name);\r\n          } else if (invalidSize) {\r\n            invalidSizeList.push(file.name);\r\n          } else {\r\n            if (this.attachmentItems.length === 0) {\r\n              newItems.push(this.addItemToArray(file));\r\n            } else {\r\n              invalidLengthList.push(file.name);\r\n            }\r\n          }\r\n        } else {\r\n          invalidFileList.push(file.name);\r\n        }\r\n      }\r\n\r\n      if (this.attachmentItems.length === 0) { this.attachmentItems = [...arrayCopy]; }\r\n      await this.showErrorMessage(invalidFileList, duplicatedList, invalidSizeList, invalidLengthList);\r\n    }\r\n\r\n    this.input.nativeElement.value = '';\r\n    this.$attachmentItems.emit({\r\n      merged: this.attachmentItems,\r\n      new: [...newItems]\r\n    });\r\n  }\r\n\r\n  removeAttachment(removed): void {\r\n    const removedItem: IAttachmentData[] = this.attachmentItems.filter(x => x.id === removed.id);\r\n    const tempList = this.attachmentItems.filter(x => x.id !== removed.id);\r\n    const attachments: IAttachmentData[] = [];\r\n\r\n    for (const item of tempList) {\r\n      attachments.push({\r\n        id: item.id,\r\n        name: item.file.name,\r\n        icon: AttachmentIcon.get(item.file.name),\r\n        file: item.file,\r\n        new: item.new,\r\n        remove: true,\r\n        url: item.url,\r\n        type: item.type\r\n      });\r\n    }\r\n\r\n    this.attachmentItems = [...attachments];\r\n    this.$attachmentItems.emit({\r\n      merged: attachments,\r\n      new: []\r\n    });\r\n    this.$removedAttachmentItems.emit(removedItem);\r\n  }\r\n  async fileBrowserHandler(files: EventTarget): Promise<void> {\r\n    const fileList: FileList = (files as HTMLInputElement).files;\r\n    return this.onFileDropped(fileList);\r\n  }\r\n  parsedAcceptList(): string {\r\n    let accept = '\\n';\r\n    for (let i = 0; i < this.acceptFileType.length; i++) {\r\n      const item = this.acceptFileType[i];\r\n      const separator = i < (this.acceptFileType.length - 1) ? ', ' : '';\r\n      let tempExtension: string;\r\n\r\n      if (!item.includes('.', 0)) {\r\n        tempExtension = `.${item}`;\r\n      }\r\n\r\n      accept += `${tempExtension}${separator}`;\r\n\r\n    }\r\n\r\n    return accept;\r\n  }\r\n  click(): void {\r\n    this.input.nativeElement.click();\r\n  }\r\n\r\n  uploadClick(): void {\r\n    this.$uploadClick.emit(this.attachmentItems);\r\n  }\r\n\r\n  onContinueUpload(active: boolean): void {\r\n    this.$continueUploadActive.emit(active);\r\n    this.continueUpload = active;\r\n  }\r\n\r\n  private addItemToArray(file: File): IAttachmentData {\r\n    const item = {\r\n      id: this.attachmentItems.length,\r\n      name: file.name,\r\n      icon: AttachmentIcon.get(file.name),\r\n      file,\r\n      new: true,\r\n      remove: false\r\n    };\r\n\r\n    this.attachmentItems.push(item);\r\n    return item;\r\n  }\r\n  private async showErrorMessage(\r\n    invalidFileList: string[], duplicatedList: string[], invalidSizeList: string[], invalidLengthList: string[] = []): Promise<void> {\r\n    const timeout = 500;\r\n\r\n    if (invalidFileList != null && invalidFileList.length > 0) {\r\n      await this.errorMessage(\r\n        this.acceptFileType,\r\n        this.invalidExtensionMessageSingular,\r\n        this.invalidExtensionMessagePlural\r\n      );\r\n    }\r\n\r\n    if (duplicatedList != null && duplicatedList.length > 0) {\r\n      setTimeout(async () => {\r\n        await this.errorMessage(\r\n          duplicatedList,\r\n          this.duplicatedMessageSingular,\r\n          this.duplicatedMessagePlural\r\n        );\r\n      }, timeout);\r\n    }\r\n\r\n    if (invalidSizeList != null && invalidSizeList.length > 0) {\r\n      setTimeout(async () => {\r\n        await this.errorMessageTwoVariables(\r\n          invalidSizeList,\r\n          this.invalidSizeMessageSingular,\r\n          this.invalidSizeMessagePlural,\r\n          this.maxSize.toString()\r\n        );\r\n      }, timeout);\r\n    }\r\n\r\n    if (invalidLengthList != null && invalidLengthList.length > 0) {\r\n      setTimeout(async () => {\r\n        const plural = this.maxNumberOfFiles > 1 ? this.invalidLengthMessagePlural : this.invalidLengthMessageSingular;\r\n        await this.errorMessageTwoVariables(\r\n          invalidLengthList,\r\n          this.invalidLengthMessageSingular,\r\n          plural,\r\n          this.maxNumberOfFiles.toString(),\r\n          this.maxNumberOfFiles > 1\r\n        );\r\n      }, timeout);\r\n    }\r\n  }\r\n  private async errorMessage(arrayList: string[], singularMessage: string, pluralMessage: string): Promise<void> {\r\n    const fileNames = GlComponentInputDragAndDropSimpleComponent.fileNameList(arrayList);\r\n    const isPlural = arrayList.length > 1;\r\n    const singular = singularMessage.replace('$var1$', fileNames);\r\n    const plural = pluralMessage.replace('$var1$', fileNames);\r\n    const message = isPlural ? plural : singular;\r\n\r\n    if (this.handleErrorMessage) {\r\n      this.handleErrorMessageResult$.emit(message);\r\n    } else {\r\n      await this._alert.show(message);\r\n    }\r\n  }\r\n  private async errorMessageTwoVariables(\r\n    arrayList: string[], singularMessage: string, pluralMessage: string, firstVariable: string,\r\n    isPluralComparator: boolean = null): Promise<void> {\r\n    const fileNames = GlComponentInputDragAndDropSimpleComponent.fileNameList(arrayList);\r\n    const isPlural = isPluralComparator && arrayList.length > 1 || !isPluralComparator && arrayList.length > 1;\r\n    const singular = singularMessage.replace('$var1$', firstVariable).replace('$var2$', fileNames);\r\n    const plural = pluralMessage.replace('$var1$', firstVariable).replace('$var2$', fileNames);\r\n\r\n    const message = isPlural ? plural : singular;\r\n\r\n    if (this.handleErrorMessage) {\r\n      this.handleErrorMessageResult$.emit(message);\r\n    } else {\r\n      await this._alert.show(message);\r\n    }\r\n  }\r\n}\r\n","@if (showContinueUpload) {\r\n  <gl-component-input-switch\r\n    [active]=\"continueUpload\"\r\n    [disabled]=\"!readOnly\"\r\n    [label]=\"continueUploadLabel\"\r\n    (active$)=\"onContinueUpload($event)\"\r\n    class=\"drag-and-drop-continue-switch\"\r\n\r\n    buttonIconSrc=\"../assets/img/icon/upload/resume-upload.svg\"\r\n    labelColor=\"white\"\r\n    [showAsInputButton]=\"true\"\r\n    [showLabel]=\"true\"\r\n  ></gl-component-input-switch>\r\n}\r\n\r\n<div\r\n  class=\"file-attachment-container {{ readOnly ? 'readonly' : '' }}\"\r\n  glCoreDirectivesDragAndDrop\r\n  (fileDropped)=\"onFileDropped($event)\"\r\n  (change)=\"fileBrowserHandler($event.target)\"\r\n  (click)=\"fileAttachment.click()\">\r\n\r\n  <div class=\"description-container {{ readOnly ? 'readonly' : '' }}\">\r\n    <img\r\n      alt=\"Upload icon\"\r\n      class=\"upload-icon {{ readOnly ? 'readonly' : '' }}\"\r\n      [src]=\"uploadIcon\">\r\n\r\n    @if(!readOnly) {\r\n      <span class=\"action-description {{ readOnly ? 'readonly' : '' }}\">{{ descriptionDragAndDrop }}</span>\r\n      <span class=\"action-description {{ readOnly ? 'readonly' : '' }}\">{{ descriptionDragAndDropOr }}</span>\r\n      <span class=\"action-description button {{ readOnly ? 'readonly' : '' }}\">{{ descriptionDragAndDropClickHere }}</span>\r\n    }\r\n  </div>\r\n\r\n  <input\r\n    #fileAttachment\r\n    class=\"file-attachment\"\r\n    id=\"file-attachment\"\r\n    type=\"file\"\r\n    [attr.data-maxsize]=\"maxSize\"\r\n    [accept]=\"parsedAcceptList\"\r\n    [disabled]=\"readOnly\"\r\n    [multiple]=\"(maxNumberOfFiles == -1 && maxNumberOfFiles > 1) || (maxNumberOfFiles == null)\">\r\n</div>\r\n<div class=\"attachment-list\">\r\n  @for(item of attachmentItems; track item.id) {\r\n    <gl-component-attachment-item\r\n      [fileIcon]=\"item.icon\"\r\n      [id]=\"item.id\"\r\n      [fileName]=\"item.name\"\r\n      [disabled]=\"readOnly\"\r\n      [addingSmooth]=\"true\"\r\n\r\n      (removeCurrentItem$)=\"removeAttachment($event);\"\r\n    ></gl-component-attachment-item>\r\n  }\r\n</div>\r\n\r\n@if (attachmentItems.length > 0 && showUploadButton) {\r\n  <div class=\"button-container upload-file\">\r\n    <gl-component-input-button-simple\r\n      #uploadFileButton\r\n      [innerValue]=\"uploadButtonValue\"\r\n      [readonly]=\"readOnly\"\r\n      value=\"upload-file\"\r\n      (click)=\"uploadClick()\"\r\n    ></gl-component-input-button-simple>\r\n  </div>\r\n\r\n}\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { TTheme } from '../../../core/interfaces/alignments.interface';\r\n\r\n@Component({\r\n    selector: 'gl-component-input-option-simple',\r\n    templateUrl: './gl-component-input-option-simple.component.html',\r\n    styleUrls: ['./gl-component-input-option-simple.component.scss'],\r\n    standalone: true\r\n})\r\nexport class GlComponentInputOptionSimpleComponent {\r\n  @Input() value: string;\r\n  @Input() id: string;\r\n  @Input() label: string;\r\n  @Input() name: string;\r\n  @Input() checked: boolean;\r\n  @Input() theme: TTheme = '';\r\n  @Input() disabled: boolean;\r\n\r\n  @Input() boldLabel = false;\r\n\r\n  @Output() itemSelected: EventEmitter<string> = new EventEmitter();\r\n\r\n  constructor() { }\r\n\r\n  onCheck(value: string, input: HTMLInputElement): void {\r\n    if (!this.disabled) {\r\n      input.checked = true;\r\n      this.itemSelected.emit(value);\r\n    }\r\n  }\r\n}\r\n","<div class=\"input-container {{ theme }}\">\r\n  <!--suppress HtmlFormInputWithoutLabel -->\r\n  <input\r\n    #input\r\n    [checked]=\"checked\"\r\n    class=\"input-radio {{ disabled ? 'disabled' : '' }}\"\r\n    type=\"radio\"\r\n    [value]=\"value\"\r\n    [id]=\"id\"\r\n    [name]=\"name\"\r\n    (click)=\"onCheck(value, input)\">\r\n  <span\r\n    (click)=\"onCheck(value, input)\"\r\n    class=\"check-mark {{ disabled ? 'disabled' : '' }}\"\r\n  ></span>\r\n  <label\r\n    class=\"label {{ boldLabel ? 'bold' : '' }} {{ disabled ? 'disabled' : '' }}\"\r\n    [for]=\"id\"\r\n    (click)=\"onCheck(value, input)\"\r\n  >{{ label }}</label>\r\n</div>\r\n","import { Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';\r\nimport { THorizontalAlignment, TTheme } from '../../../core/interfaces/alignments.interface';\r\nimport { ISimpleTextAreaResult } from './gl-component-input-text-area-simple.interface';\r\n\r\n@Component({\r\n    selector: 'gl-component-input-text-area-simple',\r\n    templateUrl: './gl-component-input-text-area-simple.component.html',\r\n    styleUrls: ['./gl-component-input-text-area-simple.component.scss'],\r\n    standalone: true\r\n})\r\nexport class GlComponentInputTextAreaSimpleComponent {\r\n  @ViewChild('textArea', { read: ElementRef, static: true }) textArea: ElementRef<HTMLTextAreaElement>;\r\n\r\n  @Input() disabled = false;\r\n  @Input() id: string;\r\n  @Input() labelAlignment: THorizontalAlignment;\r\n  @Input() labelValue: string;\r\n  @Input() placeholder: string;\r\n  @Input() itemContentAlignment: THorizontalAlignment;\r\n  @Input() theme: TTheme;\r\n  @Input() autoScroll: boolean = false;\r\n\r\n  @Input() value = '';\r\n  @Input() maxLength: number;\r\n  @Output() currentValue: EventEmitter<ISimpleTextAreaResult> = new EventEmitter();\r\n\r\n  constructor() { }\r\n\r\n  onKeyUp(args): void {\r\n    const value = args.target.value;\r\n\r\n    if (value.trim().length > 0) {\r\n      this.textArea.nativeElement.classList.remove('required-fill');\r\n    }\r\n\r\n    this.currentValue.emit({ value });\r\n  }\r\n}\r\n","<div class=\"item-container\">\r\n  <ng-content></ng-content>\r\n  <!--suppress HtmlFormInputWithoutLabel -->\r\n  <textarea\r\n    #textArea\r\n    class=\"item-content {{ disabled ? 'disabled' : '' }} {{ itemContentAlignment }} {{ theme }}\"\r\n    [id]=\"id\"\r\n    [placeholder]=\"placeholder\"\r\n    (keyup)=\"onKeyUp($event)\"\r\n    [value]=\"value\"\r\n    [disabled]=\"disabled\"\r\n    [maxLength]=\"maxLength\"\r\n    [scrollTop]=\"autoScroll ? textArea.scrollHeight : 0\"\r\n  ></textarea>\r\n</div>\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { THorizontalAlignment, TTheme } from '../../../core/interfaces/alignments.interface';\r\nimport { ISimpleTextAreaResult } from '../simple/gl-component-input-text-area-simple.interface';\r\nimport { GlComponentTitleLabelSimpleComponent } from '../../../../../../gl-ng-titles-frontend/src/lib/component/label/simple/gl-component-title-label-simple.component';\r\nimport { GlComponentInputTextAreaSimpleComponent } from '../simple/gl-component-input-text-area-simple.component';\r\nimport { TLabelColor, TLabelTheme } from '../../../../../../gl-ng-titles-frontend/src/lib/component/label/simple/gl-component-title-label-simple.interface';\r\n\r\n@Component({\r\n    selector: 'gl-component-input-text-area-label',\r\n    templateUrl: './gl-component-input-text-area-label.component.html',\r\n    styleUrls: ['./gl-component-input-text-area-label.component.scss'],\r\n    standalone: true,\r\n    imports: [GlComponentInputTextAreaSimpleComponent, GlComponentTitleLabelSimpleComponent]\r\n})\r\nexport class GlComponentInputTextAreaLabelComponent {\r\n  @Input() disabled = false;\r\n  @Input() id: string;\r\n  @Input() labelAlignment: THorizontalAlignment;\r\n  @Input() labelValue: string;\r\n  @Input() placeholder: string;\r\n  @Input() itemContentAlignment: THorizontalAlignment;\r\n  @Input() theme: TTheme = '';\r\n  @Input() autoScroll: boolean = false;\r\n\r\n  @Input() labelTheme: TLabelTheme = ''\r\n  @Input() labelColor: TLabelColor = '';\r\n  @Input() customLabelColor: string = '';\r\n\r\n  @Input() value = '';\r\n  @Input() maxLength: number;\r\n  @Input() required: boolean;\r\n  @Input() requiredLabel = 'Required label';\r\n\r\n  @Output() currentValue: EventEmitter<ISimpleTextAreaResult> = new EventEmitter();\r\n\r\n  constructor() { }\r\n\r\n  onKeyUp(values): void {\r\n    this.currentValue.emit(values);\r\n  }\r\n}\r\n","<div class=\"item-container {{ labelTheme !== 'simple' ? 'default-label' : '' }}\">\r\n\r\n</div>\r\n<gl-component-input-text-area-simple\r\n  [theme]=\"theme\"\r\n  [id]=\"id\"\r\n  [placeholder]=\"placeholder\"\r\n  [itemContentAlignment]=\"itemContentAlignment\"\r\n  (currentValue)=\"onKeyUp($event)\"\r\n  [value]=\"value\"\r\n  [disabled]=\"disabled\"\r\n  [maxLength]=\"maxLength\"\r\n  [autoScroll]=\"autoScroll\">\r\n  <gl-component-title-label-simple\r\n    [theme]=\"labelTheme\"\r\n    [labelColor]=\"labelColor\"\r\n    [customLabelColor]=\"customLabelColor\"\r\n    [labelAlignment]=\"labelAlignment\"\r\n    [id]=\"id\"\r\n    [labelValue]=\"labelValue\"\r\n\r\n    [required]=\"required\"\r\n    [requiredLabel]=\"requiredLabel\"\r\n  ></gl-component-title-label-simple>\r\n</gl-component-input-text-area-simple>\r\n","import { Injectable } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class GlComponentInputTextSimpleService {\r\n\r\n  updateInputMask$: Subject<undefined> = new Subject();\r\n\r\n  constructor() { }\r\n\r\n  updateInputMask(): void {\r\n    this.updateInputMask$.next(undefined);\r\n  }\r\n}\r\n","import { AfterViewInit, Component, ElementRef, EventEmitter, Input, OnDestroy, Output, ViewChild } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { InputMask, TCurrencyTypes } from 'gl-w-input-frontend';\r\nimport { NumberParse, TCurrencySymbolTypes, TDecimalSeparators } from 'gl-w-number-frontend';\r\nimport { THorizontalAlignment } from '../../../core/interfaces/alignments.interface';\r\nimport { ISimpleTextResult, TInputTextMask, TInputTextTheme, TInputType } from './gl-component-input-text-simple.interface';\r\nimport { GlComponentInputTextSimpleService } from './gl-component-input-text-simple.service';\r\n\r\n@Component({\r\n    selector: 'gl-component-input-text-simple',\r\n    templateUrl: './gl-component-input-text-simple.component.html',\r\n    styleUrls: ['./gl-component-input-text-simple.component.scss'],\r\n    providers: [\r\n        {\r\n            provide: NG_VALUE_ACCESSOR,\r\n            multi: true,\r\n            useExisting: GlComponentInputTextSimpleComponent\r\n        },\r\n        // {\r\n        //   provide: NG_VALIDATORS,\r\n        //   multi: true,\r\n        //   useExisting: GlComponentInputTextSimpleComponent\r\n        // }\r\n    ],\r\n    standalone: true,\r\n    imports: []\r\n})\r\nexport class GlComponentInputTextSimpleComponent implements AfterViewInit, OnDestroy, ControlValueAccessor {\r\n  @ViewChild('inputElement', { read: ElementRef, static: true }) inputElement: ElementRef<HTMLInputElement>;\r\n\r\n  private _input: HTMLInputElement;\r\n  private _touched: boolean;\r\n\r\n  @Input() disabled = false;\r\n  @Input() autocomplete = false;\r\n  @Input() id: string;\r\n  @Input() placeholder: string;\r\n  @Input() itemContentAlignment: THorizontalAlignment;\r\n  @Input() theme: TInputTextTheme = '';\r\n  @Input() value: string = null;\r\n  @Input() type: TInputType = 'text';\r\n\r\n  @Input() showIcon = false;\r\n  @Input() iconSrc: string = null;\r\n\r\n  @Input() mask: TInputTextMask;\r\n  @Input() decimalSeparator: TDecimalSeparators = ',';\r\n  @Input() decimalPlaces = 2;\r\n  @Input() allowMinus = true;\r\n  @Input() rightAlign = true;\r\n  @Input() step = 5;\r\n\r\n  @Input() maskSymbol: TCurrencySymbolTypes;\r\n  @Input() maxLength = 255;\r\n\r\n  @Output() currentValue: EventEmitter<ISimpleTextResult> = new EventEmitter();\r\n  @Output() onKeyUp(input: HTMLInputElement, event: KeyboardEvent): void {\r\n    const value = input.value;\r\n\r\n    switch (event.key) {\r\n      case 'ArrowLeft': case 'ArrowRight': case 'ArrowUp': case 'ArrowDown': case 'Control': case 'Alt':\r\n      case 'CapsLock': case 'Escape': case 'Meta': case 'F1': case 'F2': case 'F3': case 'F4': case 'F5': case 'F6': case 'F7':\r\n      case 'F8': case 'F9': case 'F10': case 'F11': case 'F12': case 'Insert': case 'Home': case 'End': case 'PageUp':\r\n      case 'PageDown': case 'NumLock':\r\n        break;\r\n      default:\r\n        const pastedValue = event.ctrlKey && event.key === 'v' || event.ctrlKey && event.key === 'V'\r\n        if ((!event.altKey && !event.ctrlKey) || pastedValue) {\r\n          let parsedValue: string = value;\r\n\r\n          if (this.mask != null) {\r\n            // @ts-ignore\r\n            const unmaskedValue = input.inputmask.unmaskedvalue();\r\n\r\n            switch (this.mask) {\r\n              case 'currency': case 'integer': case 'numeric':\r\n                parsedValue = NumberParse.stringCurrencyToNumber(\r\n                  unmaskedValue,\r\n                  this.maskSymbol,\r\n                  this.decimalPlaces\r\n                ).toString();\r\n                break;\r\n\r\n              case 'million-currency':\r\n                parsedValue = unmaskedValue.replace(',', '.');\r\n                break;\r\n\r\n              case 'percentage':\r\n                parsedValue = unmaskedValue.replace(this.decimalSeparator, '.');\r\n                break;\r\n\r\n              default:\r\n                parsedValue = unmaskedValue;\r\n                break;\r\n            }\r\n            // const currentValueParsed =\r\n            // StringConverter.stringCurrencyToNumber(this.value, this.decimalSeparator, this.maskSymbol).toFixed(2);\r\n          }\r\n\r\n          if (value.trim().length > 0) {\r\n            input.classList.remove('required-fill');\r\n          }\r\n\r\n          this.currentValue.emit({\r\n            value,\r\n            // @ts-ignore\r\n            unmaskedValue: parsedValue\r\n          });\r\n\r\n          this.markAsTouched();\r\n          this.onChange({\r\n            value,\r\n            // @ts-ignore\r\n            unmaskedValue: parsedValue\r\n          });\r\n        }\r\n        break;\r\n    }\r\n  }\r\n\r\n  constructor(public service: GlComponentInputTextSimpleService) { }\r\n\r\n  ngAfterViewInit(): void {\r\n    this._input = this.inputElement.nativeElement;\r\n    const host: HTMLElement = this._input.parentElement;\r\n\r\n    this.applyInputMask();\r\n\r\n    this.service.updateInputMask$.subscribe(() => {\r\n      this.applyInputMask();\r\n    });\r\n\r\n    if (this.showIcon && this.iconSrc != null) {\r\n      const iconElement: HTMLSpanElement = host.querySelector('.icon');\r\n      const iconSource = `url(\"${this.iconSrc}\")`;\r\n\r\n      iconElement.style.setProperty('--input-text-image-src', iconSource);\r\n    }\r\n  }\r\n  ngOnDestroy(): void {\r\n    this.service.updateInputMask$.observers.map(x => x.complete);\r\n  }\r\n\r\n  applyInputMask(): void {\r\n    setTimeout(() => {\r\n      if (this.mask != null && this._input != null && this._input.value != null) {\r\n        if (this.mask.includes('currency')) {\r\n          this.inputElement.nativeElement.placeholder = InputMask.currency(\r\n            this.inputElement.nativeElement,\r\n            this.mask as TCurrencyTypes,\r\n            this.maskSymbol\r\n          );\r\n        } else if (this.mask === 'percentage' || this.mask === 'numeric') {\r\n          this.placeholder = InputMask[this.mask](\r\n            this._input,\r\n            this.allowMinus,\r\n            this.decimalSeparator,\r\n            this.rightAlign,\r\n            this.step\r\n          );\r\n        } else if (this.mask === 'integer') {\r\n          this.placeholder = InputMask.integer(\r\n            this._input,\r\n            this.allowMinus,\r\n            this.rightAlign,\r\n            this.step\r\n          );\r\n        } else if (this.mask === 'custom') {\r\n          InputMask.customNumberPhone(\r\n            this.placeholder,\r\n            this._input,\r\n            this.rightAlign\r\n          );\r\n        }\r\n      } else if (this._input != null) {\r\n        InputMask.remove(this._input);\r\n      }\r\n    }, 0);\r\n  }\r\n\r\n  onChange = (value: any) => {};\r\n  onTouched = () => {};\r\n\r\n  writeValue(result: any): void {\r\n    this.value = result;\r\n  }\r\n  registerOnChange(onChange: any): void {\r\n    this.onChange = onChange;\r\n  }\r\n  registerOnTouched(onTouched: any): void {\r\n    this.onTouched = onTouched;\r\n  }\r\n  setDisabledState(isDisabled: boolean): void {\r\n    this.disabled = isDisabled;\r\n  }\r\n  markAsTouched(): void {\r\n    if (!this._touched) {\r\n      this.onTouched();\r\n      this._touched = true;\r\n    }\r\n  }\r\n\r\n  // validate(control: AbstractControl): ValidationErrors | null {\r\n  //   const value = control.value;\r\n  //   if (value == null) {\r\n  //     return {\r\n  //       cannotBeNull: {\r\n  //         value\r\n  //       }\r\n  //     };\r\n  //   }\r\n  // }\r\n}\r\n","<!--suppress HtmlFormInputWithoutLabel -->\r\n@if(showIcon && iconSrc != null) {\r\n  <span\r\n    class=\"icon\"\r\n  ></span>\r\n}\r\n\r\n<input\r\n  #inputElement\r\n  class=\"item-content {{ disabled ? 'disabled' : '' }} {{ itemContentAlignment }} {{ theme }} {{ showIcon ? 'show-icon' : '' }}\"\r\n  [type]=\"type\"\r\n  [id]=\"id\"\r\n  [value]=\"value\"\r\n  [placeholder]=\"placeholder\"\r\n  (keyup)=\"onKeyUp(inputElement, $event)\"\r\n  [disabled]=\"disabled\"\r\n  [maxLength]=\"maxLength\">\r\n","import {Component, EventEmitter, Input, Output} from '@angular/core';\r\nimport { TCurrencySymbolTypes, TDecimalSeparators } from 'gl-w-number-frontend';\r\nimport { THorizontalAlignment, TTheme } from '../../../../../core/interfaces/alignments.interface';\r\nimport { TInputTextMask, TInputType } from '../../../simple/gl-component-input-text-simple.interface';\r\nimport { GlComponentInputTextSimpleComponent } from '../../../simple/gl-component-input-text-simple.component';\r\nimport { GlComponentTitleLabelButtonContainerComponent } from '../../../../../../../../gl-ng-titles-frontend/src/lib/component/label/button/container/gl-component-title-label-button-container.component';\r\nimport { TLabelColor, TLabelTheme } from '../../../../../../../../gl-ng-titles-frontend/src/lib/component/label/simple/gl-component-title-label-simple.interface';\r\n\r\n@Component({\r\n    selector: 'gl-component-input-text-label-button-container',\r\n    templateUrl: './gl-component-input-text-label-button-container.component.html',\r\n    styleUrls: ['./gl-component-input-text-label-button-container.component.scss'],\r\n    standalone: true,\r\n    imports: [GlComponentTitleLabelButtonContainerComponent, GlComponentInputTextSimpleComponent]\r\n})\r\nexport class GlComponentInputTextLabelButtonContainerComponent {\r\n  @Input() disabled = false;\r\n  @Input() autocomplete = false;\r\n  @Input() id: string;\r\n  @Input() labelAlignment: THorizontalAlignment;\r\n  @Input() labelValue: string;\r\n  @Input() placeholder: string;\r\n  @Input() itemContentAlignment: THorizontalAlignment;\r\n  @Input() theme: TTheme = '';\r\n  @Input() value: string = null;\r\n  @Input() type: TInputType = 'text';\r\n\r\n  @Input() labelTheme: TLabelTheme = ''\r\n  @Input() labelColor: TLabelColor = '';\r\n\r\n  @Input() mask: TInputTextMask;\r\n  @Input() decimalSeparator: TDecimalSeparators = ',';\r\n  @Input() maskSymbol: TCurrencySymbolTypes;\r\n  @Input() allowMinus = true;\r\n  @Input() rightAlign = true;\r\n  @Input() step = 5;\r\n\r\n  @Input() maxLength = 255;\r\n  @Input() required: boolean;\r\n\r\n  @Input() requiredLabel = 'Required field';\r\n\r\n  @Output() currentValue = new EventEmitter();\r\n\r\n  constructor() { }\r\n\r\n  onKeyUp(values): void {\r\n    this.currentValue.emit(values);\r\n  }\r\n}\r\n","<div class=\"item-container\">\r\n  <gl-component-title-label-button-container\r\n    [labelValue]=\"labelValue\"\r\n    [id]=\"id\"\r\n    [labelAlignment]=\"labelAlignment\"\r\n    [required]=\"required\"\r\n    [theme]=\"labelTheme\"\r\n    [labelColor]=\"labelColor\"\r\n    [requiredFieldDescription]=\"requiredLabel\">\r\n    <div class=\"button-container\">\r\n      <ng-content></ng-content>\r\n    </div>\r\n  </gl-component-title-label-button-container>\r\n  <gl-component-input-text-simple\r\n    [theme]=\"theme\"\r\n    [value]=\"value\"\r\n    [id]=\"id\"\r\n    [type]=\"type\"\r\n    [itemContentAlignment]=\"itemContentAlignment\"\r\n    [placeholder]=\"placeholder\"\r\n    (currentValue)=\"onKeyUp($event)\"\r\n    [disabled]=\"disabled\"\r\n    [autocomplete]=\"autocomplete\"\r\n\r\n    [mask]=\"mask\"\r\n    [maskSymbol]=\"maskSymbol\"\r\n    [allowMinus]=\"allowMinus\"\r\n    [rightAlign]=\"rightAlign\"\r\n    [step]=\"step\"\r\n    [decimalSeparator]=\"decimalSeparator\"\r\n    [maxLength]=\"maxLength\"\r\n  ></gl-component-input-text-simple>\r\n</div>\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { TCurrencySymbolTypes, TDecimalSeparators } from 'gl-w-number-frontend';\r\nimport { THorizontalAlignment, TTheme } from '../../../../core/interfaces/alignments.interface';\r\nimport { TInputTextMask, TInputType } from '../../simple/gl-component-input-text-simple.interface';\r\nimport { GlComponentInputTextSimpleComponent } from '../../simple/gl-component-input-text-simple.component';\r\nimport { GlComponentTitleLabelSimpleComponent } from '../../../../../../../gl-ng-titles-frontend/src/lib/component/label/simple/gl-component-title-label-simple.component';\r\nimport { TLabelColor, TLabelTheme } from '../../../../../../../gl-ng-titles-frontend/src/lib/component/label/simple/gl-component-title-label-simple.interface';\r\n\r\n@Component({\r\n    selector: 'gl-component-input-text-label-simple',\r\n    templateUrl: './gl-component-input-text-label-simple.component.html',\r\n    styleUrls: ['./gl-component-input-text-label-simple.component.scss'],\r\n    standalone: true,\r\n    imports: [GlComponentTitleLabelSimpleComponent, GlComponentInputTextSimpleComponent]\r\n})\r\nexport class GlComponentInputTextLabelSimpleComponent {\r\n  @Input() disabled = false;\r\n  @Input() autocomplete = false;\r\n  @Input() id: string;\r\n  @Input() labelAlignment: THorizontalAlignment;\r\n  @Input() labelValue: string;\r\n  @Input() placeholder: string;\r\n  @Input() itemContentAlignment: THorizontalAlignment;\r\n  @Input() theme: TTheme = '';\r\n  @Input() value: string = null;\r\n  @Input() type: TInputType = 'text';\r\n  @Input() labelTheme: TLabelTheme = ''\r\n  @Input() labelColor: TLabelColor = '';\r\n  @Input() customLabelColor: string = '';\r\n\r\n  @Input() allowMinus = true;\r\n  @Input() rightAlign = true;\r\n  @Input() step = 5;\r\n\r\n  @Input() mask: TInputTextMask;\r\n  @Input() decimalSeparator: TDecimalSeparators = ',';\r\n  @Input() maskSymbol: TCurrencySymbolTypes;\r\n  @Input() maxLength = 255;\r\n  @Input() required: boolean;\r\n\r\n  @Input() requiredLabel = 'Required field';\r\n\r\n  @Output() currentValue = new EventEmitter();\r\n\r\n  constructor() { }\r\n\r\n  onKeyUp(values): void {\r\n    this.currentValue.emit(values);\r\n  }\r\n}\r\n","<div class=\"item-container {{ labelTheme !== 'simple' ? 'default-label' : '' }}\">\r\n  <gl-component-title-label-simple\r\n    [id]=\"id\"\r\n    [labelValue]=\"labelValue\"\r\n    [labelAlignment]=\"labelAlignment\"\r\n    [required]=\"required\"\r\n    [requiredLabel]=\"requiredLabel\"\r\n    [theme]=\"labelTheme\"\r\n    [labelColor]=\"labelColor\"\r\n    [customLabelColor]=\"customLabelColor\"\r\n  ></gl-component-title-label-simple>\r\n  <gl-component-input-text-simple\r\n    [theme]=\"theme\"\r\n    [value]=\"value\"\r\n    [id]=\"id\"\r\n    [type]=\"type\"\r\n    [itemContentAlignment]=\"itemContentAlignment\"\r\n    [placeholder]=\"placeholder\"\r\n    (currentValue)=\"onKeyUp($event)\"\r\n    [disabled]=\"disabled\"\r\n    [autocomplete]=\"autocomplete\"\r\n    [allowMinus]=\"allowMinus\"\r\n    [rightAlign]=\"rightAlign\"\r\n    [step]=\"step\"\r\n    [decimalSeparator]=\"decimalSeparator\"\r\n\r\n    [mask]=\"mask\"\r\n    [maskSymbol]=\"maskSymbol\"\r\n    [maxLength]=\"maxLength\"\r\n  ></gl-component-input-text-simple>\r\n</div>\r\n","import { Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';\r\nimport { NumberParse, TCurrencySymbolTypes, TDecimalSeparators } from 'gl-w-number-frontend';\r\nimport { THorizontalAlignment, TTheme } from '../../../../core/interfaces/alignments.interface';\r\nimport { IInputTextStepButton, TStepType } from './gl-component-input-text-simple-with-step.interface';\r\nimport { TInputTextMask, TInputType } from '../gl-component-input-text-simple.interface';\r\nimport Decimal from 'decimal.js';\nimport { GlComponentButtonImageTooltipComponent } from '../../../../../../../gl-ng-buttons-frontend/src/lib/component/image/tooltip/gl-component-button-image-tooltip.component';\nimport { GlComponentInputTextSimpleComponent } from '../gl-component-input-text-simple.component';\r\n\r\n@Component({\r\n    selector: 'gl-component-input-text-simple-with-step',\r\n    templateUrl: './gl-component-input-text-simple-with-step.component.html',\r\n    styleUrls: ['./gl-component-input-text-simple-with-step.component.scss'],\r\n    standalone: true,\r\n    imports: [GlComponentInputTextSimpleComponent, GlComponentButtonImageTooltipComponent]\r\n})\r\nexport class GlComponentInputTextSimpleWithStepComponent {\r\n  @ViewChild('inputWithStepElement', { read: ElementRef, static: true }) inputElement: ElementRef<HTMLInputElement>;\r\n\r\n  @Input() disabled = false;\r\n  @Input() autocomplete = false;\r\n  @Input() id: string;\r\n  @Input() placeholder: string;\r\n  @Input() itemContentAlignment: THorizontalAlignment;\r\n  @Input() theme: TTheme = '';\r\n  @Input() value = 0;\r\n  @Input() type: TInputType = 'text';\r\n\r\n  @Input() allowMinus = true;\r\n  @Input() rightAlign = true;\r\n  @Input() step = 5;\r\n\r\n  @Input() mask: TInputTextMask;\r\n  @Input() decimalSeparator: TDecimalSeparators = ',';\r\n  @Input() decimalPlaces = 2;\r\n  @Input() maskSymbol: TCurrencySymbolTypes;\r\n  @Input() maxLength = 255;\r\n\r\n  @Output() currentValue: EventEmitter<IInputTextStepButton> = new EventEmitter();\r\n\r\n  callback = () => {};\r\n\r\n  constructor() { }\r\n\r\n  convertValue(value: number): string {\r\n    if (this.mask === 'percentage') {\r\n      return NumberParse.toPercentage(value, false, this.decimalSeparator, this.decimalPlaces);\r\n    } else {\r\n      return this.value.toString();\r\n    }\r\n  }\r\n\r\n  processValue(type: TStepType, value: string): void {\r\n    const input: HTMLInputElement = this.inputElement.nativeElement.querySelector('input.item-content');\r\n    const previousValue: number = this.value == null || Number.isNaN(this.value) ? 0 : this.value;\r\n    const step = this.mask === 'percentage' ? new Decimal(this.step).dividedBy(100).toDecimalPlaces(2).toNumber() : this.step;\r\n    let newValue: number;\r\n\r\n    const symbol = this.mask === 'percentage' ? '%' : '';\r\n    const parsed = new Decimal(this.value).mul(100).toNumber();\r\n    const currentValue = NumberParse.decimalToString(parsed, ',', this.decimalPlaces) + symbol;\r\n\r\n    if (currentValue !== value) {\r\n      if (type === 'increase') {\r\n        newValue = previousValue + step;\r\n        input.value = this.convertValue(this.value);\r\n\r\n        this.currentValue.emit({\r\n          type: 'increase',\r\n          previousValue: this.mask === 'percentage' ? previousValue : previousValue,\r\n          newValue: this.mask === 'percentage' ? newValue : newValue\r\n        });\r\n      } else if (type === 'decrease') {\r\n        newValue = previousValue - step;\r\n        input.value = this.convertValue(this.value);\r\n\r\n        this.currentValue.emit({\r\n          type: 'decrease',\r\n          previousValue: this.mask === 'percentage' ? previousValue : previousValue,\r\n          newValue: this.mask === 'percentage' ? newValue : newValue\r\n        });\r\n      } else {\r\n        const parsedValue: string = value == null || value.length === 0 ? '0.00%' : value;\r\n        newValue = NumberParse.percentageToNumber(parsedValue, this.decimalSeparator, this.decimalPlaces);\r\n        input.value = this.convertValue(this.value);\r\n\r\n        this.currentValue.emit({\r\n          type: 'typing',\r\n          previousValue: this.mask === 'percentage' ? previousValue : previousValue,\r\n          newValue: this.mask === 'percentage' ? newValue : newValue\r\n        });\r\n      }\r\n    }\r\n  }\r\n}\r\n","<div class=\"item-container\">\r\n  <gl-component-input-text-simple\r\n    #inputWithStepElement\r\n    [theme]=\"theme\"\r\n    [value]=\"convertValue(value)\"\r\n    [id]=\"id\"\r\n    [type]=\"type\"\r\n    [itemContentAlignment]=\"itemContentAlignment\"\r\n    [placeholder]=\"placeholder\"\r\n    (currentValue)=\"processValue('typing', $event.value?.trim())\"\r\n    [disabled]=\"disabled\"\r\n    [autocomplete]=\"autocomplete\"\r\n    [allowMinus]=\"allowMinus\"\r\n    [rightAlign]=\"rightAlign\"\r\n    [step]=\"step\"\r\n    [decimalSeparator]=\"decimalSeparator\"\r\n    [decimalPlaces]=\"decimalPlaces\"\r\n\r\n    [mask]=\"mask\"\r\n    [maskSymbol]=\"maskSymbol\"\r\n    [maxLength]=\"maxLength\"\r\n  ></gl-component-input-text-simple>\r\n  <div class=\"step-button-container\">\r\n    <gl-component-button-image-tooltip\r\n      alt=\"Decrease\"\r\n      src=\"../assets/img/icon/list/show-remove.svg\"\r\n      [id]=\"id + '-decrease'\"\r\n      [callback]=\"callback\"\r\n      [show]=\"!disabled\"\r\n      (click)=\"processValue('decrease', null)\"\r\n    ></gl-component-button-image-tooltip>\r\n    <gl-component-button-image-tooltip\r\n      alt=\"Increase\"\r\n      src=\"../assets/img/icon/list/add-line.svg\"\r\n      [id]=\"id + '-increase'\"\r\n      [callback]=\"callback\"\r\n      [show]=\"!disabled\"\r\n      (click)=\"processValue('increase', null)\"\r\n    ></gl-component-button-image-tooltip>\r\n  </div>\r\n</div>\r\n","import { AfterViewInit, Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { GlComponentInputTextSimpleComponent } from '../gl-component-input-text-simple.component';\r\nimport { ISearchOutput } from './gl-component-input-text-simple-search.interface';\r\nimport { NgOptimizedImage } from '@angular/common';\r\n\r\n@Component({\r\n    selector: 'gl-component-input-text-simple-search',\r\n    templateUrl: './gl-component-input-text-simple-search.component.html',\r\n    styleUrls: ['./gl-component-input-text-simple-search.component.scss'],\r\n    standalone: true,\r\n  imports: [GlComponentInputTextSimpleComponent, NgOptimizedImage]\r\n})\r\nexport class GlComponentInputTextSimpleSearchComponent implements AfterViewInit{\r\n  @Input() isOnSearch = false;\r\n  @Output() keyDown$: EventEmitter<ISearchOutput> = new EventEmitter();\r\n\r\n  private timeouts: any[] = [];\r\n  search: string = null;\r\n  searchInput: HTMLElement;\r\n\r\n  constructor() { }\r\n\r\n  onSearchFocus(inputComponent: GlComponentInputTextSimpleComponent, backgroundTranslucid: HTMLDivElement): void {\r\n    // backgroundTranslucid.classList.add('highlight');\r\n    const input = inputComponent.inputElement.nativeElement.parentElement.parentElement.parentElement;\r\n\r\n    backgroundTranslucid.classList.remove('remove-highlight');\r\n    input.classList.remove('remove-highlight');\r\n    backgroundTranslucid.classList.add('highlight');\r\n    input.classList.add('highlight');\r\n  }\r\n  onSearchLostFocus(inputComponent: GlComponentInputTextSimpleComponent, backgroundTranslucid: HTMLDivElement): void {\r\n    const input = inputComponent.inputElement.nativeElement.parentElement.parentElement.parentElement;\r\n    const activeItem = document.activeElement.id;\r\n    if (activeItem !== 'search-input' && activeItem !== 'search-button') {\r\n      input.classList.add('remove-highlight');\r\n      backgroundTranslucid.classList.add('remove-highlight');\r\n    }\r\n\r\n    // const activeItem = document.activeElement.id;\r\n    // if (activeItem !== 'search-input' && activeItem !== 'search-button') {\r\n    //\r\n    //   backgroundTranslucid.classList.add('remove-highlight');\r\n    //\r\n    //   this.timeouts.push(\r\n    //     setTimeout(() => {\r\n    //       backgroundTranslucid.classList.remove('remove-highlight');\r\n    //       backgroundTranslucid.classList.remove('highlight');\r\n    //\r\n    //       this.clearTimeouts();\r\n    //     }, 500)\r\n    //   );\r\n    // }\r\n  }\r\n\r\n  onSearchKeyDown(inputComponent: GlComponentInputTextSimpleComponent, event, click: boolean = false): void {\r\n    const input = inputComponent.inputElement.nativeElement;\r\n    const isEnter = !click && event.key?.toLowerCase() === 'enter';\r\n\r\n    if (click || isEnter) {\r\n      this.keyDown$.emit({\r\n        value: input.value?.trim(),\r\n        isOnSearch: this.isOnSearch\r\n      });\r\n    }\r\n  }\r\n\r\n  private clearTimeouts(): void {\r\n    for (const timeout of this.timeouts) {\r\n      clearInterval(timeout);\r\n      clearTimeout(timeout);\r\n\r\n      this.timeouts.shift();\r\n    }\r\n  }\r\n\r\n  ngAfterViewInit(): void {\r\n    this.searchInput = document.querySelector('#search-input');\r\n  }\r\n}\r\n","<div class=\"search-container\">\r\n  <img\r\n    (mouseenter)=\"onSearchFocus(searchInput, backgroundTranslucid)\"\r\n    (focusin)=\"onSearchFocus(searchInput, backgroundTranslucid)\"\r\n    (mouseleave)=\"onSearchLostFocus(searchInput, backgroundTranslucid)\"\r\n    (focusout)=\"onSearchLostFocus(searchInput, backgroundTranslucid)\"\r\n    (click)=\"onSearchKeyDown(searchInput, $event, true)\"\r\n    id=\"search-button\"\r\n    class=\"search-icon\"\r\n    src=\"../assets/img/icon/search/search-icon.svg\"\r\n    alt=\"Search icon\">\r\n  <gl-component-input-text-simple\r\n    #searchInput\r\n    id=\"search-input\"\r\n    maxLength=\"50\"\r\n    type=\"search\"\r\n    placeholder=\"Busque aqui sua requisição de compra...\"\r\n    class=\"search-input\"\r\n    theme=\"light\"\r\n    [value]=\"search\"\r\n    (mouseenter)=\"onSearchFocus(searchInput, backgroundTranslucid)\"\r\n    (focusin)=\"onSearchFocus(searchInput, backgroundTranslucid)\"\r\n    (mouseleave)=\"onSearchLostFocus(searchInput, backgroundTranslucid)\"\r\n    (focusout)=\"onSearchLostFocus(searchInput, backgroundTranslucid)\"\r\n    (keydown)=\"onSearchKeyDown(searchInput, $event)\"\r\n  ></gl-component-input-text-simple>\r\n\r\n  <div #backgroundTranslucid class=\"translucid-background\"></div>\r\n</div>\r\n","export interface IDropdownSettings {\r\n  singleSelection?: boolean;\r\n  idField?: string;\r\n  textField?: string;\r\n  iconField?: string;\r\n  disabledField?: string;\r\n  enableCheckAll?: boolean;\r\n  selectAllText?: string;\r\n  unSelectAllText?: string;\r\n  allowSearchFilter?: boolean;\r\n  clearSearchFilter?: boolean;\r\n  maxHeight?: number;\r\n  itemsShowLimit?: number;\r\n  limitSelection?: number;\r\n  searchPlaceholderText?: string;\r\n  noDataAvailablePlaceholderText?: string;\r\n  closeDropDownOnSelection?: boolean;\r\n  showSelectedItemsAtTop?: boolean;\r\n  defaultOpen?: boolean;\r\n  allowRemoteDataSearch?: boolean;\r\n}\r\n\r\nexport class ListItem {\r\n  id: number;\r\n  value: String | number;\r\n  text: String | number;\r\n  isDisabled?: boolean;\r\n  icon?: string;\r\n\r\n  public constructor(source: any) {\r\n    if (typeof source === 'string' || typeof source === 'number') {\r\n      this.value = this.text = source;\r\n      this.isDisabled = false;\r\n      this.icon = '';\r\n    }\r\n    if (typeof source === 'object') {\r\n      this.value = source.value;\r\n      this.text = source.text;\r\n      this.isDisabled = source.isDisabled;\r\n      this.icon = source.icon;\r\n    }\r\n  }\r\n}\r\n","import { Component, HostListener, forwardRef, Input, Output, EventEmitter, ChangeDetectionStrategy } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor, ReactiveFormsModule, FormsModule } from '@angular/forms';\r\nimport { CorePipesListFilterPipe } from '../../../core/pipes/list-filter/core-pipes-list-filter.pipe';\r\nimport { IDropdownSettings, ListItem } from './gl-component-input-dropdown-simple.model';\r\nimport { NgClass, NgOptimizedImage } from '@angular/common';\r\nimport { CoreDirectivesClickOutsideDirective } from '../../../core/directives/click-outside/core-directives-click-outside.directive';\r\n\r\nexport const DROPDOWN_CONTROL_VALUE_ACCESSOR: any = {\r\n  provide: NG_VALUE_ACCESSOR,\r\n  useExisting: forwardRef(() => GlComponentInputDropdownSimpleComponent),\r\n  multi: true\r\n};\r\nconst noop = () => {};\r\n\r\n@Component({\r\n    selector: 'gl-component-input-dropdown-simple',\r\n    templateUrl: './gl-component-input-dropdown-simple.component.html',\r\n    styleUrls: ['./gl-component-input-dropdown-simple.component.scss'],\r\n    providers: [DROPDOWN_CONTROL_VALUE_ACCESSOR],\r\n    changeDetection: ChangeDetectionStrategy.OnPush,\r\n    standalone: true,\r\n  imports: [CoreDirectivesClickOutsideDirective, NgClass, ReactiveFormsModule, FormsModule, CorePipesListFilterPipe, NgOptimizedImage]\r\n})\r\nexport class GlComponentInputDropdownSimpleComponent implements ControlValueAccessor {\r\n  readonly imageSource = '../assets/img/icon/drop-down/arrow-down.svg';\r\n  _settings: IDropdownSettings;\r\n  _data: ListItem[] = [];\r\n  isDropdownOpen = true;\r\n  _placeholder = 'Select';\r\n  selectedItems: ListItem[] = [];\r\n\r\n  private _sourceDataType = null; // to keep note of the source data type. could be array of string/number/object\r\n  // tslint:disable-next-line:ban-types\r\n  private _sourceDataFields: String[] = []; // store source data fields names\r\n  filter: ListItem = new ListItem(this.data);\r\n  defaultSettings: IDropdownSettings = {\r\n    singleSelection: true,\r\n    idField: 'value',\r\n    textField: 'text',\r\n    iconField: 'icon',\r\n    disabledField: 'isDisabled',\r\n    enableCheckAll: true,\r\n    selectAllText: 'Select All',\r\n    unSelectAllText: 'UnSelect All',\r\n    allowSearchFilter: true,\r\n    limitSelection: -1,\r\n    clearSearchFilter: true,\r\n    maxHeight: 197,\r\n    itemsShowLimit: 999999999999,\r\n    searchPlaceholderText: 'Search',\r\n    noDataAvailablePlaceholderText: 'No data available',\r\n    closeDropDownOnSelection: true,\r\n    showSelectedItemsAtTop: true,\r\n    defaultOpen: false,\r\n    allowRemoteDataSearch: false\r\n  };\r\n\r\n  private onTouchedCallback: () => void = noop;\r\n  private onChangeCallback: (_: any) => void = noop;\r\n\r\n  @Input()\r\n  public set placeholder(value: string) {\r\n    if (value) {\r\n      this._placeholder = value;\r\n    } else {\r\n      this._placeholder = 'Select';\r\n    }\r\n  }\r\n\r\n  @Input() disabled = false;\r\n  @Input() iconPreview: string;\r\n  @Input() showIcon = false;\r\n\r\n  @Input()\r\n  public set settings(value: IDropdownSettings) {\r\n    if (value) {\r\n      this._settings = Object.assign(this.defaultSettings, value);\r\n    } else {\r\n      this._settings = Object.assign(this.defaultSettings);\r\n    }\r\n  }\r\n\r\n  @Input()\r\n  public set selected(value: ListItem[]) {\r\n    const single = this.defaultSettings.singleSelection || this._settings.singleSelection;\r\n\r\n    if (value == null || value.length === 0) {\r\n      this.selectedItems = [];\r\n    } else {\r\n      if (single) {\r\n        this.selectedItems.push(value[0]);\r\n      } else {\r\n        this.selectedItems = value;\r\n      }\r\n    }\r\n  }\r\n\r\n  @Input()\r\n  public set data(value: ListItem[]) {\r\n    if (!value) {\r\n      this._data = [];\r\n    } else {\r\n      const firstItem = value[0];\r\n      this._sourceDataType = typeof firstItem;\r\n      this._sourceDataFields = this.getFields(firstItem);\r\n      this._data = value.map((item: any) =>\r\n        typeof item === 'string' || typeof item === 'number'\r\n          ? new ListItem(item)\r\n          : new ListItem({\r\n            value: item[this._settings.idField],\r\n            text: item[this._settings.textField],\r\n            isDisabled: item[this._settings.disabledField],\r\n            icon: item[this._settings.iconField]\r\n          })\r\n      );\r\n    }\r\n  }\r\n\r\n  @Output() $filterChange: EventEmitter<ListItem> = new EventEmitter<any>();\r\n  @Output() $dropDownClose: EventEmitter<ListItem> = new EventEmitter<any>();\r\n  @Output() $select: EventEmitter<ListItem> = new EventEmitter<any>();\r\n  @Output() $deselect: EventEmitter<ListItem> = new EventEmitter<any>();\r\n  @Output() $selectAll: EventEmitter<ListItem[]> = new EventEmitter<any[]>();\r\n  @Output() $deselectAll: EventEmitter<ListItem[]> = new EventEmitter<any[]>();\r\n\r\n  constructor(private listFilterPipe: CorePipesListFilterPipe) {}\r\n\r\n  onFilterTextChange($event): void {\r\n    this.$filterChange.emit($event);\r\n  }\r\n\r\n  // region Actions\r\n  onItemClick($event: any, item: ListItem): void | boolean {\r\n    if (this.disabled || item.isDisabled) {\r\n      return false;\r\n    }\r\n\r\n    const found = this.isSelected(item);\r\n    const sameSingleItem = this.isSameSingleItem(item);\r\n    const allowAdd = this._settings.limitSelection === -1 || (this._settings.limitSelection > 0 && this.selectedItems.length < this._settings.limitSelection);\r\n\r\n    if (!found || !sameSingleItem) {\r\n      if (allowAdd) {\r\n        this.addSelected(item);\r\n      }\r\n    } else {\r\n      this.removeSelected(item);\r\n\r\n      if (sameSingleItem) {\r\n        this.selectedItems = [];\r\n        this.$select.emit(this.emittedValue(null));\r\n      }\r\n    }\r\n\r\n    if (this._settings.singleSelection && this._settings.closeDropDownOnSelection) {\r\n      this.closeDropdown();\r\n    }\r\n  }\r\n  toggleDropdown(evt): void | boolean {\r\n    evt.preventDefault();\r\n    if (this.disabled && this._settings.singleSelection) {\r\n      return false;\r\n    }\r\n    this._settings.defaultOpen = !this._settings.defaultOpen;\r\n    if (!this._settings.defaultOpen) {\r\n      this.$dropDownClose.emit();\r\n    }\r\n  }\r\n  closeDropdown(): void {\r\n    this._settings.defaultOpen = false;\r\n    // clear search text\r\n    if (this._settings.clearSearchFilter) {\r\n      this.filter.text = '';\r\n    }\r\n    this.$dropDownClose.emit();\r\n  }\r\n  toggleSelectAll(): void {\r\n    if (this.disabled) {\r\n      return;\r\n    }\r\n    if (!this.isAllItemsSelected()) {\r\n      // filter out disabled item first before slicing\r\n      this.selectedItems = this.listFilterPipe.transform(this._data, this.filter).filter(item => !item.isDisabled).slice();\r\n      this.$selectAll.emit(this.emittedValue(this.selectedItems));\r\n    } else {\r\n      this.selectedItems = [];\r\n      this.$deselectAll.emit(this.emittedValue(this.selectedItems));\r\n    }\r\n    this.onChangeCallback(this.emittedValue(this.selectedItems));\r\n  }\r\n  emittedValue(val: any): any {\r\n    const selected = [];\r\n    if (Array.isArray(val)) {\r\n      val.map(item => {\r\n        selected.push(this.objectify(item));\r\n      });\r\n    } else {\r\n      if (val) {\r\n        return this.objectify(val);\r\n      }\r\n    }\r\n    return selected;\r\n  }\r\n  showButton(): boolean {\r\n    if (!this._settings.singleSelection) {\r\n      if (this._settings.limitSelection > 0) {\r\n        return false;\r\n      }\r\n      // this._settings.enableCheckAll = this._settings.limitSelection === -1 ? true : false;\r\n      return true; // !this._settings.singleSelection && this._settings.enableCheckAll && this._data.length > 0;\r\n    } else {\r\n      // should be disabled in single selection mode\r\n      return false;\r\n    }\r\n  }\r\n  isSameSingleItem(item: ListItem): boolean {\r\n    const singleItem = this._settings.singleSelection;\r\n    const isListItem = typeof item !== 'string' && typeof item !== 'number';\r\n    let isEqual: boolean;\r\n\r\n    if (isListItem) {\r\n      isEqual = this.selectedItems[0] === item;\r\n    } else {\r\n      // @ts-ignore //Todo this is a Typescript bug: https://github.com/microsoft/TypeScript/issues/42999\r\n      isEqual = this.selectedItems[0].value === item.value;\r\n    }\r\n\r\n    return singleItem && isEqual;\r\n  }\r\n\r\n  addSelected(item: ListItem): void {\r\n    if (this._settings.singleSelection) {\r\n      this.selectedItems = [];\r\n      this.selectedItems.push(item);\r\n    } else {\r\n      this.selectedItems.push(item);\r\n    }\r\n    this.onChangeCallback(this.emittedValue(this.selectedItems));\r\n    this.$select.emit(this.emittedValue(item));\r\n  }\r\n  removeSelected(itemSel: ListItem): void {\r\n    this.selectedItems.forEach(item => {\r\n      if (itemSel.value === item.value) {\r\n        this.selectedItems.splice(this.selectedItems.indexOf(item), 1);\r\n      }\r\n    });\r\n    this.onChangeCallback(this.emittedValue(this.selectedItems));\r\n    this.$deselect.emit(this.emittedValue(itemSel));\r\n  }\r\n  // endregion\r\n\r\n  // region ControlValueAccessor\r\n  writeValue(value: any): void {\r\n    if (value !== undefined && value !== null && value.length > 0) {\r\n      if (this._settings.singleSelection) {\r\n        try {\r\n          if (value.length >= 1) {\r\n            const firstItem = value[0];\r\n            this.selectedItems = [\r\n              typeof firstItem === 'string' || typeof firstItem === 'number'\r\n                ? new ListItem(firstItem)\r\n                : new ListItem({\r\n                  value: firstItem[this._settings.idField],\r\n                  text: firstItem[this._settings.textField],\r\n                  isDisabled: firstItem[this._settings.disabledField],\r\n                  icon: firstItem[this._settings.iconField]\r\n                })\r\n            ];\r\n          }\r\n        } catch (e) {\r\n          console.error(e.body.msg);\r\n        }\r\n      } else {\r\n        const _data = value.map((item: any) =>\r\n          typeof item === 'string' || typeof item === 'number'\r\n            ? new ListItem(item)\r\n            : new ListItem({\r\n              value: item[this._settings.idField],\r\n              text: item[this._settings.textField],\r\n              isDisabled: item[this._settings.disabledField],\r\n              icon: item[this._settings.iconField]\r\n            })\r\n        );\r\n        if (this._settings.limitSelection > 0) {\r\n          this.selectedItems = _data.splice(0, this._settings.limitSelection);\r\n        } else {\r\n          this.selectedItems = _data;\r\n        }\r\n      }\r\n    } else {\r\n      this.selectedItems = [];\r\n    }\r\n    this.onChangeCallback(value);\r\n  }\r\n\r\n  // From ControlValueAccessor interface\r\n  registerOnChange(fn: any): void {\r\n    this.onChangeCallback = fn;\r\n  }\r\n\r\n  // From ControlValueAccessor interface\r\n  registerOnTouched(fn: any): void {\r\n    this.onTouchedCallback = fn;\r\n  }\r\n  // endregion\r\n\r\n  // Set touched on blur\r\n  @HostListener('blur')\r\n  onTouched(): void {\r\n    this.closeDropdown();\r\n    this.onTouchedCallback();\r\n  }\r\n\r\n  // region Parse\r\n  showIconPreview(): boolean {\r\n    const showIcon = this.showIcon;\r\n    const single = this._settings?.singleSelection || this.settings?.singleSelection;\r\n    const iconPreview = this.iconPreview != null && this.iconPreview.length > 0;\r\n\r\n    return showIcon && single && iconPreview;\r\n  }\r\n  itemShowRemaining(): number {\r\n    return this.selectedItems.length - this._settings.itemsShowLimit;\r\n  }\r\n  isSelected(clickedItem: ListItem): boolean {\r\n    let found = false;\r\n    this.selectedItems.forEach(item => {\r\n      if (clickedItem.value === item.value) {\r\n        found = true;\r\n      }\r\n    });\r\n    return found;\r\n  }\r\n  isLimitSelectionReached(): boolean {\r\n    return this._settings.limitSelection === this.selectedItems.length;\r\n  }\r\n  isAllItemsSelected(): boolean {\r\n    // get disabled item count\r\n    const filteredItems = this.listFilterPipe.transform(this._data, this.filter);\r\n    const itemDisabledCount = filteredItems.filter(item => item.isDisabled).length;\r\n\r\n    // take disabled items into consideration when checking\r\n    if ((!this.data || this.data.length === 0) && this._settings.allowRemoteDataSearch) {\r\n      return false;\r\n    }\r\n    return filteredItems.length === this.selectedItems.length + itemDisabledCount;\r\n  }\r\n  objectify(val: ListItem): string | number | object {\r\n    if (this._sourceDataType === 'object') {\r\n      const obj = {};\r\n      obj[this._settings.idField] = val.value;\r\n      obj[this._settings.textField] = val.text;\r\n      if (this._sourceDataFields.includes(this._settings.disabledField)) {\r\n        obj[this._settings.disabledField] = val.isDisabled;\r\n      }\r\n      obj[this._settings.iconField] = val.icon;\r\n      return obj;\r\n    }\r\n    if (this._sourceDataType === 'number') {\r\n      return Number(val.value);\r\n    } else {\r\n      return val.text;\r\n    }\r\n  }\r\n  // endregion\r\n\r\n  getFields(inputData): any[] {\r\n    const fields = [];\r\n    if (typeof inputData !== 'object') {\r\n      return fields;\r\n    }\r\n    // tslint:disable-next-line:forin\r\n    for (const prop in inputData) {\r\n      fields.push(prop);\r\n    }\r\n    return fields;\r\n  }\r\n}\r\n","<div class=\"multiselect-dropdown\"\r\n   tabindex=\"0\"\r\n   (blur)=\"onTouched()\"\r\n   (clickOutside)=\"closeDropdown()\">\r\n  <div class=\"multiselect-dropdown-container\" [class.disabled]=\"disabled\">\r\n    <span\r\n      class=\"dropdown-btn {{ selectedItems.length > 0 ? 'has-items' : '' }} {{ _settings.singleSelection ? 'single-item' : 'multiple-item' }}\"\r\n      tabindex=\"-1\"\r\n      (click)=\"toggleDropdown($event)\">\r\n\r\n      @if(selectedItems.length == 0) {\r\n        <span\r\n          class=\"placeholder {{ showIconPreview() ? 'has-icon-preview' : '' }}\"\r\n        >{{_placeholder}}</span>\r\n      }\r\n\r\n\r\n      @for (item of selectedItems; track item.id) {\r\n        <span class=\"selected-item-container {{ _settings.singleSelection ? 'single-item' : 'multiple-item' }}\" >\r\n        <span\r\n          class=\"selected-item\"\r\n          [hidden]=\"item.id  > (this._settings.itemsShowLimit-1)\">\r\n          <span [title]=\"item.text\">{{item.text}}</span>\r\n          @if(!disabled && (!_settings.singleSelection || !defaultSettings.singleSelection)) {\r\n            <img\r\n              alt=\"Remove item\"\r\n              class=\"remove-item\"\r\n              src=\"../assets/img/icon/check-box/checked.svg\"\r\n              (click)=\"onItemClick($event,item)\">\r\n          }\r\n        </span>\r\n      </span>\r\n      }\r\n\r\n      <span class=\"buttons-container\"\r\n        [ngClass]=\"{ 'dropdown-multiselect--active': _settings.defaultOpen }\">\r\n\r\n        @if(itemShowRemaining()>0) {\r\n          <span class=\"items-remaining-container\">\r\n           <span\r\n             class=\"items-remaining\"\r\n           >+{{itemShowRemaining()}}</span>\r\n        </span>\r\n        }\r\n\r\n        @if(showIconPreview()) {\r\n          <img\r\n            alt=\"Icon preview\"\r\n            class=\"icon-preview\"\r\n            [src]=\"iconPreview\">\r\n        }\r\n\r\n        @if(!disabled) {\r\n          <img\r\n            alt=\"Show items\"\r\n            class=\"dropdown-multiselect__caret arrow-down {{ 'theme' }} {{ disabled ? 'read-only' : '' }}\"\r\n            [src]=\"imageSource\">\r\n        }\r\n\r\n      </span>\r\n    </span>\r\n  </div>\r\n\r\n  <div class=\"dropdown-list\" [hidden]=\"!_settings.defaultOpen\">\r\n    <ul class=\"item1\">\r\n      @if((_data.length > 0 || _settings.allowRemoteDataSearch) && !_settings.singleSelection && _settings.enableCheckAll && _settings.limitSelection===-1) {\r\n        <li\r\n          class=\"multiselect-item-checkbox select-all\"\r\n          (click)=\"toggleSelectAll()\">\r\n\r\n          <input\r\n            type=\"checkbox\"\r\n            aria-label=\"multiselect-select-all\"\r\n            [checked]=\"isAllItemsSelected()\"\r\n            [disabled]=\"disabled || isLimitSelectionReached()\"/>\r\n          <div class=\"check-box-inner select-all\">{{!isAllItemsSelected() ? _settings.selectAllText : _settings.unSelectAllText}}</div>\r\n        </li>\r\n      }\r\n\r\n      @if((_data.length>0 || _settings.allowRemoteDataSearch) && _settings.allowSearchFilter) {\r\n        <li class=\"filter-textbox\">\r\n          <input\r\n            type=\"text\"\r\n            aria-label=\"multiselect-search\"\r\n            [readOnly]=\"disabled\"\r\n            [placeholder]=\"_settings.searchPlaceholderText\"\r\n            [(ngModel)]=\"filter.text\"\r\n            (ngModelChange)=\"onFilterTextChange($event)\">\r\n        </li>\r\n      }\r\n    </ul>\r\n    <ul class=\"item2\" [style.maxHeight]=\"_settings.maxHeight+'px'\">\r\n      @for(item of _data | multiSelectFilter:filter; track item.id) {\r\n        <li class=\"multiselect-item-checkbox\"\r\n            (click)=\"onItemClick($event,item)\">\r\n          <input\r\n            type=\"checkbox\"\r\n            [attr.aria-label]=\"item.text\"\r\n            [checked]=\"isSelected(item)\"\r\n            [disabled]=\"disabled || (isLimitSelectionReached() && !isSelected(item)) || item.isDisabled\"/>\r\n          <div class=\"check-box-inner\">{{item.text}}</div>\r\n        </li>\r\n      }\r\n\r\n      @if(_data.length == 0 && !_settings.allowRemoteDataSearch) {\r\n        <li class=\"no-data\">\r\n          <h5>{{_settings.noDataAvailablePlaceholderText}}</h5>\r\n        </li>\r\n      }\r\n\r\n    </ul>\r\n  </div>\r\n</div>\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { THorizontalAlignment } from '../../../core/interfaces/alignments.interface';\r\nimport { IDropdownSettings, ListItem } from '../simple/gl-component-input-dropdown-simple.model';\r\nimport { GlComponentInputDropdownSimpleComponent } from '../simple/gl-component-input-dropdown-simple.component';\r\nimport { GlComponentTitleLabelSimpleComponent } from '../../../../../../gl-ng-titles-frontend/src/lib/component/label/simple/gl-component-title-label-simple.component';\r\nimport { TLabelColor, TLabelTheme } from '../../../../../../gl-ng-titles-frontend/src/lib/component/label/simple/gl-component-title-label-simple.interface';\r\n\r\n@Component({\r\n    selector: 'gl-component-input-dropdown-label',\r\n    templateUrl: './gl-component-input-dropdown-label.component.html',\r\n    styleUrls: ['./gl-component-input-dropdown-label.component.scss'],\r\n    standalone: true,\r\n    imports: [GlComponentTitleLabelSimpleComponent, GlComponentInputDropdownSimpleComponent]\r\n})\r\nexport class GlComponentInputDropdownLabelComponent {\r\n  @Input() labelAlignment: THorizontalAlignment;\r\n  @Input() required: boolean;\r\n  @Input() labelValue: string;\r\n  @Input() requiredLabelDescription: string;\r\n  @Input() labelId: string;\r\n\r\n  @Input() placeholder: string;\r\n  @Input() disabled: boolean;\r\n  @Input() settings: IDropdownSettings;\r\n  @Input() selected: ListItem[];\r\n  @Input() data: ListItem[];\r\n\r\n  @Input() labelTheme: TLabelTheme = ''\r\n  @Input() labelColor: TLabelColor = '';\r\n  @Input() customLabelColor: string = '';\r\n\r\n  @Input() iconPreview: string;\r\n  @Input() showIcon = false;\r\n\r\n  @Output() $filterChange: EventEmitter<ListItem> = new EventEmitter<any>();\r\n  @Output() $dropDownClose: EventEmitter<ListItem> = new EventEmitter<any>();\r\n  @Output() $select: EventEmitter<ListItem> = new EventEmitter<any>();\r\n  @Output() $deselect: EventEmitter<ListItem> = new EventEmitter<any>();\r\n  @Output() $selectAll: EventEmitter<ListItem[]> = new EventEmitter<any[]>();\r\n  @Output() $deselectAll: EventEmitter<ListItem[]> = new EventEmitter<any[]>();\r\n\r\n  constructor() { }\r\n}\r\n","<div class=\"item-container {{ labelTheme !== 'simple' ? 'default-label' : '' }}\">\r\n  <gl-component-title-label-simple\r\n    [labelAlignment]=\"labelAlignment\"\r\n    [required]=\"required\"\r\n    [labelValue]=\"labelValue\"\r\n    [requiredLabel]=\"requiredLabelDescription\"\r\n    [id]=\"labelId\"\r\n    [labelColor]=\"labelColor\"\r\n    [customLabelColor]=\"customLabelColor\"\r\n    [theme]=\"labelTheme\"\r\n  ></gl-component-title-label-simple>\r\n\r\n  <gl-component-input-dropdown-simple\r\n    [placeholder]=\"placeholder\"\r\n    [disabled]=\"disabled\"\r\n    [settings]=\"settings\"\r\n    [selected]=\"selected\"\r\n    [data]=\"data\"\r\n    [showIcon]=\"showIcon\"\r\n    [iconPreview]=\"iconPreview\"\r\n    ($filterChange)=\"$filterChange.emit($event)\"\r\n    ($dropDownClose)=\"$dropDownClose.emit($event)\"\r\n    ($select)=\"$select.emit($event)\"\r\n    ($deselect)=\"$deselect.emit($event)\"\r\n    ($selectAll)=\"$selectAll.emit($event)\"\r\n    ($deselectAll)=\"$deselectAll.emit($event)\"\r\n  ></gl-component-input-dropdown-simple>\r\n</div>\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\n\r\n\r\n\r\n\r\nimport { CoreDirectivesClickOutsideDirective } from '../core/directives/click-outside/core-directives-click-outside.directive';\r\nimport { CorePipesListFilterPipe } from '../core/pipes/list-filter/core-pipes-list-filter.pipe';\r\nimport { GlComponentInputAutocompleteLabelComponent } from './autocomplete/label/gl-component-input-autocomplete-label.component';\r\nimport { GlComponentInputAutocompleteSimpleComponent } from './autocomplete/simple/gl-component-input-autocomplete-simple.component';\r\nimport { GlComponentInputButtonHyperlinkComponent } from './button/hyperlink/gl-component-input-button-hyperlink.component';\r\nimport { GlComponentInputButtonSimpleComponent } from './button/simple/gl-component-input-button-simple.component';\r\nimport { GlComponentInputCheckBoxLabelComponent } from './check-box/label/gl-component-input-check-box-label.component';\r\nimport { GlComponentInputCheckBoxSimpleComponent } from './check-box/simple/gl-component-input-check-box-simple.component';\r\nimport { GlComponentInputDatepickerLabelComponent } from './datepicker/label/gl-component-input-datepicker-label.component';\r\nimport { GlComponentInputDatepickerSimpleDayMonthYearComponent } from './datepicker/simple/day-month-year/gl-component-input-datepicker-simple-day-month-year.component';\r\nimport { GlComponentInputDatepickerSimpleMonthYearComponent } from './datepicker/simple/month-year/gl-component-input-datepicker-simple-month-year.component';\r\nimport { GlComponentInputDragAndDropSimpleComponent } from './drag-and-drop/simple/gl-component-input-drag-and-drop-simple.component';\r\nimport { GlComponentInputOptionSimpleComponent } from './option/simple/gl-component-input-option-simple.component';\r\nimport { GlComponentInputSwitchComponent } from './switch/gl-component-input-switch.component';\r\nimport { GlComponentInputTextAreaLabelComponent } from './text-area/label/gl-component-input-text-area-label.component';\r\nimport { GlComponentInputTextAreaSimpleComponent } from './text-area/simple/gl-component-input-text-area-simple.component';\r\nimport { GlComponentInputTextLabelButtonContainerComponent } from './text/label/button/container/gl-component-input-text-label-button-container.component';\r\nimport { GlComponentInputTextLabelSimpleComponent } from './text/label/simple/gl-component-input-text-label-simple.component';\r\nimport { GlComponentInputTextSimpleComponent } from './text/simple/gl-component-input-text-simple.component';\r\nimport { GlComponentInputTextSimpleWithStepComponent } from './text/simple/with-step/gl-component-input-text-simple-with-step.component';\r\nimport { GlComponentInputTextSimpleSearchComponent } from './text/simple/search/gl-component-input-text-simple-search.component';\r\nimport { GlComponentInputDropdownSimpleComponent } from './dropdown/simple/gl-component-input-dropdown-simple.component';\r\nimport { GlComponentInputDropdownLabelComponent } from './dropdown/label/gl-component-input-dropdown-label.component';\r\n\r\n@NgModule({\r\n    imports: [\r\n    CommonModule,\r\n    MatFormFieldModule,\r\n    MatInputModule,\r\n    ReactiveFormsModule,\r\n    MatAutocompleteModule,\r\n    MatDialogModule,\r\n    MatDatepickerModule,\r\n    FormsModule,\r\n    CoreDirectivesClickOutsideDirective,\r\n    GlComponentInputAutocompleteLabelComponent,\r\n    GlComponentInputAutocompleteSimpleComponent,\r\n    GlComponentInputButtonHyperlinkComponent,\r\n    GlComponentInputButtonSimpleComponent,\r\n    GlComponentInputCheckBoxLabelComponent,\r\n    GlComponentInputCheckBoxSimpleComponent,\r\n    GlComponentInputDatepickerLabelComponent,\r\n    GlComponentInputDatepickerSimpleDayMonthYearComponent,\r\n    GlComponentInputDatepickerSimpleMonthYearComponent,\r\n    GlComponentInputDropdownSimpleComponent,\r\n    GlComponentInputOptionSimpleComponent,\r\n    GlComponentInputSwitchComponent,\r\n    GlComponentInputTextLabelButtonContainerComponent,\r\n    GlComponentInputTextLabelSimpleComponent,\r\n    GlComponentInputTextSimpleComponent,\r\n    GlComponentInputTextSimpleWithStepComponent,\r\n    GlComponentInputTextAreaSimpleComponent,\r\n    GlComponentInputTextAreaLabelComponent,\r\n    GlComponentInputDragAndDropSimpleComponent,\r\n    GlComponentInputTextSimpleSearchComponent,\r\n    GlComponentInputDropdownLabelComponent\r\n],\r\n    exports: [\r\n        GlComponentInputAutocompleteLabelComponent,\r\n        GlComponentInputAutocompleteSimpleComponent,\r\n        GlComponentInputButtonHyperlinkComponent,\r\n        GlComponentInputButtonSimpleComponent,\r\n        GlComponentInputCheckBoxLabelComponent,\r\n        GlComponentInputCheckBoxSimpleComponent,\r\n        GlComponentInputDatepickerLabelComponent,\r\n        GlComponentInputDatepickerSimpleDayMonthYearComponent,\r\n        GlComponentInputDatepickerSimpleMonthYearComponent,\r\n        GlComponentInputDropdownSimpleComponent,\r\n        GlComponentInputDropdownLabelComponent,\r\n        GlComponentInputOptionSimpleComponent,\r\n        GlComponentInputSwitchComponent,\r\n        GlComponentInputTextLabelButtonContainerComponent,\r\n        GlComponentInputTextLabelSimpleComponent,\r\n        GlComponentInputTextSimpleComponent,\r\n        GlComponentInputTextSimpleWithStepComponent,\r\n        GlComponentInputTextAreaSimpleComponent,\r\n        GlComponentInputTextAreaLabelComponent,\r\n        GlComponentInputDragAndDropSimpleComponent,\r\n        GlComponentInputTextSimpleSearchComponent\r\n    ],\r\n    providers: [CorePipesListFilterPipe]\r\n})\r\nexport class ComponentModule {\r\n  static forRoot(): ModuleWithProviders<ComponentModule> {\r\n    return {\r\n      ngModule: ComponentModule\r\n    };\r\n  }\r\n}\r\n","import { ModuleWithProviders, NgModule } from '@angular/core';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\nimport { ComponentModule } from './component/component.module';\r\n\r\n\r\n@NgModule({\r\n  declarations: [\r\n\r\n  ],\r\n  imports: [\r\n    ReactiveFormsModule\r\n],\r\n  exports: [\r\n    ComponentModule\r\n]\r\n})\r\nexport class GlNgInputsFrontendModule {\r\n  static forRoot(): ModuleWithProviders<GlNgInputsFrontendModule> {\r\n    return {\r\n      ngModule: GlNgInputsFrontendModule\r\n    };\r\n  }\r\n}\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { TErrorMessagePosition } from './gl-component-error-message.component.interface';\nimport { GlComponentInputButtonSimpleComponent } from '../../../../../gl-ng-inputs-frontend/src/lib/component/button/simple/gl-component-input-button-simple.component';\r\n\r\n@Component({\r\n    selector: 'gl-component-error-message',\r\n    templateUrl: './gl-component-error-message.component.html',\r\n    styleUrls: ['./gl-component-error-message.component.scss'],\r\n    standalone: true,\r\n    imports: [GlComponentInputButtonSimpleComponent]\r\n})\r\nexport class GlComponentErrorMessageComponent {\r\n  @Input() position: TErrorMessagePosition = 'left';\r\n  @Input() errorCode: string | number;\r\n  @Input() errorMessage: string;\r\n  @Input() buttonLabel: string;\r\n  @Output() buttonAction$: EventEmitter<void> = new EventEmitter();\r\n\r\n  constructor() { }\r\n\r\n  buttonAction(): void {\r\n    this.buttonAction$.emit();\r\n  }\r\n}\r\n","<div class=\"content-container {{ position === 'right' ? 'right' : 'left' }}\">\r\n  <h1 class=\"main-title\">{{ errorCode }}</h1>\r\n  <h2 class=\"message\">{{ errorMessage }}</h2>\r\n  <gl-component-input-button-simple\r\n    class=\"home-button\"\r\n    [innerValue]=\"buttonLabel\"\r\n    (click)=\"buttonAction()\"\r\n  ></gl-component-input-button-simple>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { GlNgInputsFrontendModule } from '../../../../gl-ng-inputs-frontend/src/lib/gl-ng-inputs-frontend.module';\r\nimport { GlComponentErrorMessageComponent } from './error-message/gl-component-error-message.component';\r\n\r\n@NgModule({\r\n    imports: [\r\n        CommonModule,\r\n        GlNgInputsFrontendModule,\r\n        GlComponentErrorMessageComponent\r\n    ],\r\n    exports: [\r\n        GlComponentErrorMessageComponent\r\n    ]\r\n})\r\nexport class ComponentModule { }\r\n","import { Component, Input } from '@angular/core';\r\nimport { NgOptimizedImage } from '@angular/common';\r\n\r\n@Component({\r\n    selector: 'gl-component-footer-container',\r\n    templateUrl: './gl-component-footer-container.component.html',\r\n    styleUrls: ['./gl-component-footer-container.component.scss'],\r\n    standalone: true,\r\n  imports: [NgOptimizedImage]\r\n})\r\nexport class GlComponentFooterContainerComponent {\r\n  @Input() description: string;\r\n  @Input() imageLogo: string;\r\n  @Input() imageDescription = 'Image logo';\r\n\r\n  constructor() { }\r\n}\r\n","<section class=\"footer-container\">\r\n  <span class=\"description\">{{ description }}</span>\r\n  @if (imageLogo != null) {\r\n    <img\r\n      class=\"image-logo\"\r\n      [alt]=\"imageDescription\"\r\n      [src]=\"imageLogo\">\r\n  }\r\n  <div class=\"user-container\">\r\n    <ng-content></ng-content>\r\n  </div>\r\n</section>\r\n","import { Component, Input } from '@angular/core';\r\nimport { TLogoHorizontalPosition, TLogoVerticalPosition } from './gl-component-logo-square.interface';\r\nimport { NgOptimizedImage } from '@angular/common';\r\n\r\n@Component({\r\n  selector: 'gl-component-logo-square',\r\n  templateUrl: './gl-component-logo-square.component.html',\r\n  styleUrls: ['./gl-component-logo-square.component.scss'],\r\n  imports: [\r\n    NgOptimizedImage\r\n  ],\r\n  standalone: true\r\n})\r\nexport class GlComponentLogoSquareComponent {\r\n  @Input() imageScr: string;\r\n  @Input() imageAlt: string;\r\n  @Input() horizontalPosition: TLogoHorizontalPosition = 'left';\r\n  @Input() verticalPosition: TLogoVerticalPosition = 'top';\r\n\r\n  constructor() { }\r\n}\r\n","<img\r\n  class=\"logo {{ horizontalPosition == 'right' ? 'right' : 'left' }} {{ verticalPosition == 'bottom' ? 'bottom' : 'top' }}\"\r\n  [src]=\"imageScr\"\r\n  [alt]=\"imageAlt\">\r\n","import { AfterViewInit, Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';\r\nimport { TErrorMessageErrorPosition, TErrorMessageLogoHorizontalPosition, TErrorMessageLogoVerticalPosition } from './gl-view-error-message.interface';\r\nimport { GlComponentInputButtonHyperlinkComponent } from '../../../../../gl-ng-inputs-frontend/src/lib/component/button/hyperlink/gl-component-input-button-hyperlink.component';\r\nimport { GlComponentFooterContainerComponent } from '../../../../../gl-ng-footer-frontend/src/lib/component/container/gl-component-footer-container.component';\r\nimport { GlComponentErrorMessageComponent } from '../../component/error-message/gl-component-error-message.component';\r\nimport { GlComponentLogoSquareComponent } from '../../../../../gl-ng-logos-frontend/src/lib/component/square/gl-component-logo-square.component';\r\n\r\n@Component({\r\n    selector: 'gl-view-error-message',\r\n    templateUrl: './gl-view-error-message.component.html',\r\n    styleUrls: ['./gl-view-error-message.component.scss'],\r\n    standalone: true,\r\n    imports: [GlComponentLogoSquareComponent, GlComponentErrorMessageComponent, GlComponentFooterContainerComponent, GlComponentInputButtonHyperlinkComponent]\r\n})\r\nexport class GlViewErrorMessageComponent implements AfterViewInit {\r\n  @ViewChild('mainContainer') mainContainer: ElementRef<HTMLDivElement>;\r\n\r\n  @Input() blurBackground: string;\r\n  @Input() background: string;\r\n\r\n  @Input() logoImageScr: string;\r\n  @Input() logoImageAlt: string;\r\n  @Input() logoHorizontalPosition: TErrorMessageLogoHorizontalPosition = 'left';\r\n  @Input() logoVerticalPosition: TErrorMessageLogoVerticalPosition = 'top';\r\n\r\n  @Input() errorPosition: TErrorMessageErrorPosition = 'left';\r\n  @Input() errorCode: string | number;\r\n  @Input() errorMessage: string;\r\n  @Input() errorButtonLabel: string;\r\n  @Output() errorButtonAction$: EventEmitter<void> = new EventEmitter();\r\n\r\n  @Input() footerMainDescription: string;\r\n  @Input() footerShowContainer: boolean;\r\n  @Input() footerDescription: string;\r\n  @Input() footerImageDescription = 'Image logo';\r\n  @Input() footerImageSrc: string;\r\n  @Input() footerLink: string;\r\n\r\n  constructor() { }\r\n\r\n  ngAfterViewInit(): void {\r\n    const mainContainer: HTMLDivElement = this.mainContainer.nativeElement;\r\n    const mainContainerParent: HTMLDivElement = this.mainContainer.nativeElement.parentNode as HTMLDivElement;\r\n\r\n    mainContainer.style.backgroundImage = `url(${this.background})`;\r\n    mainContainerParent.style.backgroundImage = `url(${this.blurBackground})`;\r\n  }\r\n\r\n  errorButtonAction(): void {\r\n    this.errorButtonAction$.emit();\r\n  }\r\n}\r\n","<div #mainContainer class=\"main-container\">\r\n  <gl-component-logo-square\r\n    [horizontalPosition]=\"logoHorizontalPosition\"\r\n    [verticalPosition]=\"logoVerticalPosition\"\r\n    [imageAlt]=\"logoImageAlt\"\r\n    [imageScr]=\"logoImageScr\"\r\n  ></gl-component-logo-square>\r\n  <gl-component-error-message\r\n    [position]=\"errorPosition\"\r\n    [errorCode]=\"errorCode\"\r\n    [errorMessage]=\"errorMessage\"\r\n    [buttonLabel]=\"errorButtonLabel\"\r\n    (buttonAction$)=\"errorButtonAction()\"\r\n  ></gl-component-error-message>\r\n  <gl-component-footer-container [description]=\"footerMainDescription\">\r\n    @if (footerShowContainer) {\r\n      <gl-component-input-button-hyperlink\r\n        [description]=\"footerDescription\"\r\n        [imageDescription]=\"footerImageDescription\"\r\n        [imageSrc]=\"footerImageSrc\"\r\n        [link]=\"footerLink\"\r\n      ></gl-component-input-button-hyperlink>\r\n    }\r\n  </gl-component-footer-container>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { GlNgInputsFrontendModule } from '../../../../gl-ng-inputs-frontend/src/lib/gl-ng-inputs-frontend.module';\r\n\r\nimport { ComponentModule } from '../component/component.module';\r\nimport { GlViewErrorMessageComponent } from './error-message/gl-view-error-message.component';\r\n\r\n@NgModule({\r\n    exports: [\r\n        GlViewErrorMessageComponent\r\n    ],\r\n    imports: [\r\n    CommonModule,\r\n    ComponentModule,\r\n    GlNgInputsFrontendModule,\r\n    GlViewErrorMessageComponent\r\n]\r\n})\r\nexport class ViewModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { ComponentModule } from './component/component.module';\r\nimport { ViewModule } from './view/view.module';\r\n\r\n@NgModule({\r\n  declarations: [\r\n\r\n  ],\r\n  imports: [\r\n    ComponentModule,\r\n    ViewModule,\r\n  ],\r\n  exports: [\r\n    ComponentModule,\r\n    ViewModule\r\n  ]\r\n})\r\nexport class GlNgErrorMessageFrontendModule { }\r\n","/*\r\n * Public API Surface of gl-ng-error-message-frontend\r\n */\r\nexport { ComponentModule as GlNgErrorMessageComponentModule } from './gl-ng-error-message-frontend/src/lib/component/component.module';\r\nexport { ViewModule as GlNgErrorMessageViewModule } from './gl-ng-error-message-frontend/src/lib/view/view.module';\r\nexport { GlNgErrorMessageFrontendModule } from './gl-ng-error-message-frontend/src/lib/gl-ng-error-message-frontend.module';\r\n\r\n// region interfaces\r\nexport { TTheme } from './gl-ng-error-message-frontend/src/lib/interfaces/global.interface';\r\n// endregion\r\n\r\n// region error-message\r\nexport { GlComponentErrorMessageComponent } from './gl-ng-error-message-frontend/src/lib/component/error-message/gl-component-error-message.component';\r\nexport { TErrorMessagePosition } from './gl-ng-error-message-frontend/src/lib/component/error-message/gl-component-error-message.component.interface';\r\n// endregion\r\n\r\n// region view error-message\r\nexport { GlViewErrorMessageComponent } from './gl-ng-error-message-frontend/src/lib/view/error-message/gl-view-error-message.component';\r\n// endregion\r\n\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n    selector: 'gl-component-filter-container',\r\n    templateUrl: './gl-component-filter-container.component.html',\r\n    styleUrls: ['./gl-component-filter-container.component.scss'],\r\n    standalone: true\r\n})\r\nexport class GlComponentFilterContainerComponent {\r\n  @Input() label: string;\r\n\r\n  constructor() { }\r\n}\r\n","<div class=\"type-container\">\r\n  <label class=\"title\">{{ label }}</label>\r\n  <ng-content></ng-content>\r\n</div>\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n    selector: 'gl-component-menu-background',\r\n    templateUrl: './gl-component-menu-background.component.html',\r\n    styleUrls: ['./gl-component-menu-background.component.scss'],\r\n    standalone: true\r\n})\r\nexport class GlComponentMenuBackgroundComponent {\r\n\r\n  constructor() { }\r\n}\r\n","<div class=\"menu-background\"></div>\r\n","import { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { Subject } from 'rxjs';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class GlComponentFilterService {\r\n  container: HTMLDivElement;\r\n  background: HTMLDivElement;\r\n  menuNavContainer: HTMLDivElement;\r\n  opened = false;\r\n  menuHidden$: Subject<boolean> = new Subject();\r\n  router: Router;\r\n  isIE: boolean;\r\n  applyPartialResult: () => Promise<void>;\r\n\r\n  constructor() { }\r\n\r\n  initialize(\r\n    container: HTMLDivElement,\r\n    background: HTMLDivElement,\r\n    menuNavContainer: HTMLDivElement,\r\n    router: Router,\r\n    applyPartialResult: () => Promise<void>\r\n  ): void {\r\n    this.container = container;\r\n    this.background = background;\r\n    this.menuNavContainer = menuNavContainer;\r\n    this.router = router;\r\n    this.menuHidden$.next(true);\r\n    this.applyPartialResult = applyPartialResult;\r\n  }\r\n\r\n  backgroundClick(event): void {\r\n    if (this.opened) { this.close(event); }\r\n  }\r\n  open(event: Event): boolean {\r\n    event.preventDefault();\r\n\r\n\r\n    this.container.classList.add('menu-active');\r\n    this.background.classList.add('visible-background');\r\n\r\n    setTimeout(() => {\r\n      if (this.isIE) {\r\n        this.menuNavContainer.scrollTop = 0;\r\n      } else {\r\n        this.menuNavContainer.scrollTo({ top: 0, behavior: 'smooth' });\r\n      }\r\n    }, 100);\r\n\r\n    this.menuHidden$.next(false);\r\n    this.opened = true;\r\n\r\n    setTimeout(async (): Promise<void> => {\r\n      if(this.applyPartialResult !== null && this.applyPartialResult !== undefined) {\r\n        await this.applyPartialResult();\r\n      }\r\n    }, 100);\r\n\r\n    return true;\r\n  }\r\n  close(event: Event): boolean {\r\n    event.preventDefault();\r\n    this.container.classList.remove('menu-active');\r\n    this.background.classList.remove('visible-background');\r\n\r\n    this.menuHidden$.next(true);\r\n    this.opened = false;\r\n    return false;\r\n  }\r\n}\r\n","import {AfterViewInit, Component, ElementRef, EventEmitter, Input, Output, ViewChild} from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { TFilterButtonClass, TFilterType } from './gl-component-filter.interface';\r\nimport { GlComponentFilterService } from './gl-component-filter.service';\r\nimport { GlComponentInputButtonSimpleComponent } from '../../../../../gl-ng-inputs-frontend/src/lib/component/button/simple/gl-component-input-button-simple.component';\r\nimport { NgOptimizedImage } from '@angular/common';\r\nimport { GlComponentMenuBackgroundComponent } from '../../../../../gl-ng-menus-frontend/src/lib/component/menu/background/gl-component-menu-background.component';\r\n\r\n@Component({\r\n    selector: 'gl-component-filter',\r\n    templateUrl: './gl-component-filter.component.html',\r\n    styleUrls: ['./gl-component-filter.component.scss'],\r\n    standalone: true,\r\n  imports: [GlComponentMenuBackgroundComponent, GlComponentInputButtonSimpleComponent, NgOptimizedImage]\r\n})\r\nexport class GlComponentFilterComponent implements AfterViewInit {\r\n  @ViewChild('container', { static: true, read: ElementRef }) container: ElementRef<HTMLDivElement>;\r\n  @ViewChild('background', { static: true, read: ElementRef }) background: ElementRef<HTMLDivElement>;\r\n  @ViewChild('menuNavContainer') menuNavContainer: ElementRef<HTMLDivElement>;\r\n\r\n  @Input() title: string;\r\n  @Input() subtitle = 'Filter';\r\n  @Input() type: TFilterType = '';\r\n  @Input() closeButton = '../assets/img/icon/menu/close.svg';\r\n  @Input() partialResult: number;\r\n  @Input() partialResultDescription = 'Partial results with these filters:';\r\n  @Input() itemSingularDescription = 'item';\r\n  @Input() itemPluralDescription = 'items';\r\n  @Input() applyButtonDescription = 'Apply filter';\r\n  @Input() clearButtonDescription = 'Clear filter';\r\n  @Input() buttonClass: TFilterButtonClass = 'light-translucid';\r\n\r\n  @Input() isIE = false;\r\n  @Input() applyPartialResult: () => Promise<void>;\r\n\r\n  @Output() applyFilter$: EventEmitter<void> = new EventEmitter();\r\n  @Output() clearFilter$: EventEmitter<void> = new EventEmitter();\r\n\r\n  constructor(\r\n    public router: Router,\r\n    public service: GlComponentFilterService\r\n  ) {}\r\n\r\n  ngAfterViewInit(): void {\r\n    this.service.initialize(\r\n      this.container.nativeElement,\r\n      this.background.nativeElement,\r\n      this.menuNavContainer.nativeElement,\r\n      this.router,\r\n      this.applyPartialResult\r\n    );\r\n\r\n\r\n  }\r\n\r\n  onApply(): void {\r\n    this.applyFilter$.emit();\r\n  }\r\n\r\n  onClear(): void {\r\n    this.clearFilter$.emit();\r\n  }\r\n}\r\n","<gl-component-menu-background\r\n  #background\r\n  (click)=\"service.backgroundClick($event)\"\r\n></gl-component-menu-background>\r\n<div #container class=\"filter-container {{ type }}\">\r\n  <div class=\"header-filter-container\">\r\n    <div class=\"menu-header\">\r\n      <div class=\"menu-top-icons-container\">\r\n        <img\r\n          id=\"close-menu-button\"\r\n          (click)=\"service.close($event)\"\r\n          [src]=\"closeButton\"\r\n          class=\"menu-icons close-menu\"\r\n          alt=\"Close menu button\">\r\n      </div>\r\n      <div class=\"menu-header-title\">\r\n        <h1 class=\"title\">{{ title }}</h1>\r\n        <h2 class=\"subtitle\">{{ subtitle }}</h2>\r\n      </div>\r\n    </div>\r\n  </div>\r\n  <nav class=\"menu-nav-container\" #menuNavContainer>\r\n    <div class=\"menu-content\">\r\n      <div class=\"input-container\" >\r\n        <ng-content></ng-content>\r\n      </div>\r\n    </div>\r\n  </nav>\r\n  <div class=\"bottom-container\">\r\n\r\n    @if(partialResult != null) {\r\n      <span\r\n        class=\"partial-result-description\">{{ partialResultDescription }} {{ partialResult }} {{ partialResult > 1 ? itemPluralDescription : itemSingularDescription }}\r\n    </span>\r\n    }\r\n\r\n    <div class=\"buttons-container\">\r\n      <gl-component-input-button-simple\r\n        value=\"apply\"\r\n        [theme]=\"buttonClass\"\r\n        [innerValue]=\"applyButtonDescription\"\r\n        (click)=\"onApply()\"\r\n      ></gl-component-input-button-simple>\r\n      <gl-component-input-button-simple\r\n        value=\"clear\"\r\n        [theme]=\"buttonClass\"\r\n        [innerValue]=\"clearButtonDescription\"\r\n        (click)=\"onClear()\"\r\n      ></gl-component-input-button-simple>\r\n    </div>\r\n  </div>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { GlNgInputsFrontendModule } from '../../../../gl-ng-inputs-frontend/src/lib/gl-ng-inputs-frontend.module';\r\n\r\nimport { GlComponentFilterContainerComponent } from './filter/container/gl-component-filter-container.component';\r\nimport { GlComponentFilterComponent } from './filter/gl-component-filter.component';\r\n\r\n@NgModule({\r\n    imports: [\r\n    CommonModule,\r\n    GlNgInputsFrontendModule,\r\n    GlComponentFilterComponent,\r\n    GlComponentFilterContainerComponent\r\n],\r\n    exports: [\r\n        GlComponentFilterComponent,\r\n        GlComponentFilterContainerComponent\r\n    ]\r\n})\r\nexport class ComponentModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { ComponentModule } from './component/component.module';\r\n\r\n@NgModule({\r\n  declarations: [\r\n\r\n  ],\r\n  imports: [\r\n    ComponentModule\r\n  ],\r\n  exports: [\r\n    ComponentModule\r\n  ]\r\n})\r\nexport class GlNgFiltersFrontendModule { }\r\n","/*\r\n * Public API Surface of gl-ng-filters-frontend\r\n */\r\nexport { ComponentModule as GlNgFiltersComponentModule } from './gl-ng-filters-frontend/src/lib/component/component.module';\r\nexport { GlNgFiltersFrontendModule } from './gl-ng-filters-frontend/src/lib/gl-ng-filters-frontend.module';\r\n\r\n// region interfaces\r\nexport { TTheme } from './gl-ng-filters-frontend/src/lib/interfaces/global.interface';\r\n// endregion\r\n\r\n// region filter\r\nexport { GlComponentFilterComponent } from './gl-ng-filters-frontend/src/lib/component/filter/gl-component-filter.component';\r\nexport { GlComponentFilterService } from './gl-ng-filters-frontend/src/lib/component/filter/gl-component-filter.service';\r\nexport { GlComponentFilterContainerComponent } from './gl-ng-filters-frontend/src/lib/component/filter/container/gl-component-filter-container.component';\r\n// endregion\r\n\r\n","import { Component, Input } from '@angular/core';\r\nimport { TFooterTheme } from './gl-component-footer-simple.interface';\r\nimport { NgOptimizedImage } from '@angular/common';\r\n\r\n@Component({\r\n    selector: 'gl-component-footer-simple',\r\n    templateUrl: './gl-component-footer-simple.component.html',\r\n    styleUrls: ['./gl-component-footer-simple.component.scss'],\r\n    standalone: true,\r\n  imports: [NgOptimizedImage]\r\n})\r\nexport class GlComponentFooterSimpleComponent {\r\n  @Input() description: string;\r\n  @Input() imageLogo: string;\r\n  @Input() imageDescription = 'Image logo';\r\n  @Input() theme: TFooterTheme = '';\r\n\r\n  constructor() { }\r\n}\r\n","<section class=\"footer-container {{ theme }}\">\r\n  <span class=\"description\">{{ description }} {{ imageLogo == null ? '' : 'has-logo' }}</span>\r\n  @if (imageLogo != null) {\r\n    <img\r\n      class=\"image-logo\"\r\n      [alt]=\"imageDescription\"\r\n      [src]=\"imageLogo\">\r\n  }\r\n</section>\r\n","/*\r\n * Public API Surface of gl-ng-footer-frontend\r\n */\r\n\r\n// region interfaces\r\nexport { TTheme } from './gl-ng-footer-frontend/src/lib/interfaces/global.interface';\r\n// endregion\r\n\r\n\r\n// region simple\r\nexport { GlComponentFooterSimpleComponent } from './gl-ng-footer-frontend/src/lib/component/simple/gl-component-footer-simple.component';\r\n// endregion\r\n\r\n// region container\r\nexport { GlComponentFooterContainerComponent } from './gl-ng-footer-frontend/src/lib/component/container/gl-component-footer-container.component';\r\n// endregion\r\n\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n    selector: 'gl-component-title-page',\r\n    templateUrl: './gl-component-title-page.component.html',\r\n    styleUrls: ['./gl-component-title-page.component.scss'],\r\n    standalone: true\r\n})\r\nexport class GlComponentTitlePageComponent {\r\n\r\n  @Input() title: string;\r\n  @Input() subtitle: string;\r\n\r\n  constructor() { }\r\n}\r\n","<div class=\"page-title\">\r\n  <div class=\"title-container\">\r\n    <h1 class=\"title\">{{ title }}</h1>\r\n    <h2 class=\"subtitle\">{{ subtitle }}</h2>\r\n  </div>\r\n</div>\r\n","import { AfterViewInit, Component, EventEmitter, Input, OnDestroy, OnInit, Output } from '@angular/core';\r\nimport { IMenuButton } from '../../../../../gl-ng-buttons-frontend/src/lib/component/menu/simple/gl-component-button-menu-simple.interface';\r\nimport { THeaderTheme } from './gl-component-header-default.interface';\r\nimport { GlComponentButtonMenuTooltipComponent } from '../../../../../gl-ng-buttons-frontend/src/lib/component/menu/tooltip/gl-component-button-menu-tooltip.component';\r\nimport { GlComponentTitlePageComponent } from '../../../../../gl-ng-titles-frontend/src/lib/component/page/gl-component-title-page.component';\r\n\r\n@Component({\r\n    selector: 'gl-component-header-default',\r\n    templateUrl: './gl-component-header-default.component.html',\r\n    styleUrls: ['./gl-component-header-default.component.scss'],\r\n    standalone: true,\r\n    imports: [GlComponentTitlePageComponent, GlComponentButtonMenuTooltipComponent]\r\n})\r\nexport class GlComponentHeaderDefaultComponent implements OnInit, AfterViewInit, OnDestroy {\r\n  @Input() systemLogo = false;\r\n  @Input() labelModel: string;\r\n  @Input() labelId: number;\r\n  @Input() labelArea: string;\r\n  @Input() theme: THeaderTheme = '';\r\n  @Input() title: string;\r\n  @Input() subtitle: string;\r\n  @Input() menuButtons: IMenuButton[];\r\n  @Input() hideOnScrollDown = false;\r\n  @Output() keyDown$: EventEmitter<any> = new EventEmitter();\r\n\r\n  @Input() readonly: boolean;\r\n\r\n  private _previousScrollPosition = window.pageYOffset;\r\n  private _header: HTMLElement;\r\n\r\n  constructor() { }\r\n\r\n  onKeyDown(event): void {\r\n    this.keyDown$.emit(event);\r\n  }\r\n\r\n  ngOnDestroy(): void {\r\n    window.removeEventListener('scroll', this.scroll, true); // third parameter\r\n  }\r\n\r\n  ngOnInit(): void {\r\n    if (this.hideOnScrollDown) {\r\n      window.addEventListener('scroll', this.scroll, true); // third parameter\r\n    }\r\n  }\r\n  ngAfterViewInit(): void {\r\n    this._header = document.querySelector('gl-component-header-default');\r\n\r\n    this._header.style.position = 'fixed';\r\n    this._header.style.top = '0';\r\n    this._header.style.zIndex = '100';\r\n    this._header.style.width = '100vw';\r\n  }\r\n\r\n  scroll = (): void => {\r\n    const currentScrollPosition = window.pageYOffset <= 0 ? 0 : window.pageYOffset;\r\n\r\n    if (this._header != null) {\r\n      if (currentScrollPosition === 0 || this._previousScrollPosition > currentScrollPosition) {\r\n        this._header.style.top = '0';\r\n      } else {\r\n        this._header.style.top = '-' + this._header.getBoundingClientRect().height.toString() + 'px';\r\n      }\r\n      this._previousScrollPosition = currentScrollPosition;\r\n    }\r\n  }\r\n}\r\n","<section class=\"header-container {{ theme }}\" [attr.type]=\"theme\" (window:keydown)=\"onKeyDown($event)\">\r\n  <div class=\"header-content {{ theme }}\" >\r\n    @if(theme != 'only-buttons') {\r\n      <div class=\"default-logo\">\r\n        <ng-content select=\"[slot=default-logo]\"></ng-content>\r\n      </div>\r\n    }\r\n\r\n    @if(theme != 'only-buttons' && !systemLogo) {\r\n      <gl-component-title-page\r\n        [title]=\"title\"\r\n        [subtitle]=\"subtitle\"\r\n      ></gl-component-title-page>\r\n    }\r\n\r\n    <ng-content class=\"system-logo\" select=\"[slot=system-logo]\"></ng-content>\r\n\r\n    <div class=\"menu-bar\">\r\n      <div class=\"menu-buttons-container\">\r\n        <ng-content></ng-content>\r\n        @for (menuButton of menuButtons; track menuButton.id) {\r\n          <gl-component-button-menu-tooltip\r\n            [disabled]=\"(readonly && !menuButton.canReadonly) || (!readonly && menuButton.canReadonly && menuButton.readonly)\"\r\n            [tooltip]=\"menuButton.alt\"\r\n            [src]=\"menuButton.src\"\r\n            [id]=\"menuButton.id\"\r\n            [alt]=\"menuButton.alt\"\r\n            [callback]=\"menuButton.callback\">\r\n          </gl-component-button-menu-tooltip>\r\n        }\r\n      </div>\r\n    </div>\r\n  </div>\r\n</section>\r\n","/*\r\n * Public API Surface of gl-ng-headers-frontend\r\n */\r\n\r\n// region interfaces\r\nexport { TTheme } from './gl-ng-headers-frontend/src/lib/interfaces/global.interface';\r\n// endregion\r\n\r\n// region default\r\nexport { GlComponentHeaderDefaultComponent } from './gl-ng-headers-frontend/src/lib/component/default/gl-component-header-default.component';\r\nexport { THeaderTheme } from './gl-ng-headers-frontend/src/lib/component/default/gl-component-header-default.interface';\r\n// endregion\r\n\r\n","/*\r\n * Public API Surface of gl-ng-inputs-frontend\r\n */\r\n\r\nexport { ComponentModule as GlNgInputsComponentModule } from './gl-ng-inputs-frontend/src/lib/component/component.module';\r\nexport { GlNgInputsFrontendModule } from './gl-ng-inputs-frontend/src/lib/gl-ng-inputs-frontend.module';\r\n\r\n// region directives\r\nexport { CoreDirectivesDragAndDropDirective } from './gl-ng-inputs-frontend/src/lib/core/directives/drag-and-drop/core-directives-drag-and-drop.directive';\r\nexport { CoreDirectivesClickOutsideDirective } from './gl-ng-inputs-frontend/src/lib/core/directives/click-outside/core-directives-click-outside.directive';\r\n// endregion\r\n\r\n// region interfaces\r\nexport { TTheme, THorizontalAlignment } from './gl-ng-inputs-frontend/src/lib/core/interfaces/alignments.interface';\r\n// endregion\r\n\r\n// region pipes\r\nexport { CorePipesListFilterPipe } from './gl-ng-inputs-frontend/src/lib/core/pipes/list-filter/core-pipes-list-filter.pipe';\r\n// endregion\r\n\r\n// region autocomplete\r\nexport { GlComponentInputAutocompleteSimpleComponent } from './gl-ng-inputs-frontend/src/lib/component/autocomplete/simple/gl-component-input-autocomplete-simple.component';\r\nexport { GlComponentInputAutocompleteSimpleService } from './gl-ng-inputs-frontend/src/lib/component/autocomplete/simple/gl-component-input-autocomplete-simple.service';\r\nexport { GlComponentInputAutocompleteLabelComponent } from './gl-ng-inputs-frontend/src/lib/component/autocomplete/label/gl-component-input-autocomplete-label.component';\r\nexport { IResetAutocompleteValue, ISetAutocompleteValue, IUpdateOptionList } from './gl-ng-inputs-frontend/src/lib/component/autocomplete/simple/gl-component-input-autocomplete-simple.interface';\r\n// endregion\r\n\r\n// region button\r\nexport { GlComponentInputButtonHyperlinkComponent } from './gl-ng-inputs-frontend/src/lib/component/button/hyperlink/gl-component-input-button-hyperlink.component';\r\nexport { GlComponentInputButtonSimpleComponent } from './gl-ng-inputs-frontend/src/lib/component/button/simple/gl-component-input-button-simple.component';\r\nexport { TInputButtonSimpleClass, TInputButtonType } from './gl-ng-inputs-frontend/src/lib/component/button/simple/gl-component-input-button-simple.interface';\r\n// endregion\r\n\r\n// region check-box\r\nexport { GlComponentInputCheckBoxLabelComponent } from './gl-ng-inputs-frontend/src/lib/component/check-box/label/gl-component-input-check-box-label.component';\r\nexport { GlComponentInputCheckBoxSimpleComponent } from './gl-ng-inputs-frontend/src/lib/component/check-box/simple/gl-component-input-check-box-simple.component';\r\n// endregion\r\n\r\n// region datepicker\r\nexport { GlComponentInputDatepickerSimpleMonthYearComponent } from './gl-ng-inputs-frontend/src/lib/component/datepicker/simple/month-year/gl-component-input-datepicker-simple-month-year.component';\r\nexport { GlComponentInputDatepickerSimpleDayMonthYearComponent } from './gl-ng-inputs-frontend/src/lib/component/datepicker/simple/day-month-year/gl-component-input-datepicker-simple-day-month-year.component';\r\nexport { GlComponentInputDatepickerLabelComponent } from './gl-ng-inputs-frontend/src/lib/component/datepicker/label/gl-component-input-datepicker-label.component';\r\nexport { IDatePickerOutput } from './gl-ng-inputs-frontend/src/lib/component/datepicker/simple/day-month-year/gl-component-input-datepicker-simple-day-month-year.interface';\r\nexport { IDatePickerMonthYearOutput } from './gl-ng-inputs-frontend/src/lib/component/datepicker/simple/month-year/gl-component-input-datepicker-simple-month-year.interface';\r\n// endregion\r\n\r\n// region drag and drop\r\nexport { GlComponentInputDragAndDropSimpleComponent } from './gl-ng-inputs-frontend/src/lib/component/drag-and-drop/simple/gl-component-input-drag-and-drop-simple.component';\r\nexport { IDragAndDropAddedResult, IDragAndDropVariables, TAttachmentUploadResult } from './gl-ng-inputs-frontend/src/lib/component/drag-and-drop/simple/gl-component-input-drag-and-drop-simple.interface';\r\n// endregion\r\n\r\n// region dropdown\r\nexport { GlComponentInputDropdownSimpleComponent, DROPDOWN_CONTROL_VALUE_ACCESSOR } from './gl-ng-inputs-frontend/src/lib/component/dropdown/simple/gl-component-input-dropdown-simple.component';\r\nexport { GlComponentInputDropdownLabelComponent } from './gl-ng-inputs-frontend/src/lib/component/dropdown/label/gl-component-input-dropdown-label.component';\r\nexport { IDropdownSettings, ListItem as DropDownListItem } from './gl-ng-inputs-frontend/src/lib/component/dropdown/simple/gl-component-input-dropdown-simple.model';\r\n// endregion\r\n\r\n// region option\r\nexport { GlComponentInputOptionSimpleComponent } from './gl-ng-inputs-frontend/src/lib/component/option/simple/gl-component-input-option-simple.component';\r\n// endregion\r\n\r\n// region switch\r\nexport { GlComponentInputSwitchComponent } from './gl-ng-inputs-frontend/src/lib/component/switch/gl-component-input-switch.component';\r\n// endregion\r\n\r\n// region text\r\nexport { GlComponentInputTextLabelButtonContainerComponent } from './gl-ng-inputs-frontend/src/lib/component/text/label/button/container/gl-component-input-text-label-button-container.component';\r\nexport { GlComponentInputTextLabelSimpleComponent } from './gl-ng-inputs-frontend/src/lib/component/text/label/simple/gl-component-input-text-label-simple.component';\r\nexport { GlComponentInputTextSimpleComponent } from './gl-ng-inputs-frontend/src/lib/component/text/simple/gl-component-input-text-simple.component';\r\nexport { GlComponentInputTextSimpleWithStepComponent } from './gl-ng-inputs-frontend/src/lib/component/text/simple/with-step/gl-component-input-text-simple-with-step.component';\r\nexport { GlComponentInputTextSimpleService } from './gl-ng-inputs-frontend/src/lib/component/text/simple/gl-component-input-text-simple.service';\r\n\r\nexport { GlComponentInputTextSimpleSearchComponent } from './gl-ng-inputs-frontend/src/lib/component/text/simple/search/gl-component-input-text-simple-search.component';\r\nexport { ISearchOutput } from './gl-ng-inputs-frontend/src/lib/component/text/simple/search/gl-component-input-text-simple-search.interface';\r\n\r\nexport { IInputTextStepButton, TStepType } from './gl-ng-inputs-frontend/src/lib/component/text/simple/with-step/gl-component-input-text-simple-with-step.interface';\r\nexport { ISimpleTextResult, TInputTextTheme, TInputType, TInputTextMask } from './gl-ng-inputs-frontend/src/lib/component/text/simple/gl-component-input-text-simple.interface';\r\n// endregion\r\n\r\n// region text-area\r\nexport { GlComponentInputTextAreaSimpleComponent } from './gl-ng-inputs-frontend/src/lib/component/text-area/simple/gl-component-input-text-area-simple.component';\r\nexport { ISimpleTextAreaResult } from './gl-ng-inputs-frontend/src/lib/component/text-area/simple/gl-component-input-text-area-simple.interface';\r\nexport { GlComponentInputTextAreaLabelComponent } from './gl-ng-inputs-frontend/src/lib/component/text-area/label/gl-component-input-text-area-label.component';\r\n// endregion\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { IListRemoveItem } from './gl-component-input-list-item-remove.interface';\r\nimport { NgClass, NgOptimizedImage } from '@angular/common';\r\n\r\n@Component({\r\n    selector: 'gl-component-input-list-item-remove',\r\n    templateUrl: './gl-component-input-list-item-remove.component.html',\r\n    styleUrls: ['./gl-component-input-list-item-remove.component.scss'],\r\n    standalone: true,\r\n  imports: [NgClass, NgOptimizedImage]\r\n})\r\nexport class GlComponentInputListItemRemoveComponent {\r\n\r\n  @Input() showRemove = false;\r\n  @Input() id: number;\r\n\r\n  @Output() itemToRemove: EventEmitter<IListRemoveItem> = new EventEmitter();\r\n\r\n  constructor() { }\r\n\r\n  removeItem(): void {\r\n    this.itemToRemove.emit({\r\n      id: +this.id\r\n    });\r\n  }\r\n}\r\n","<img\r\n  [id]=\"id\"\r\n  class=\"remove-item\"\r\n  [ngClass]=\"{\r\n    'show-remove': showRemove,\r\n    'hide-remove' : !showRemove\r\n  }\"\r\n  src=\"../assets/img/icon/list/delete-item.svg\"\r\n  (click)=\"removeItem()\"\r\n  alt=\"Remove list item\">\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { TListReorder } from './gl-component-input-list-item-up-down.interface';\nimport { GlComponentButtonImageTooltipComponent } from '../../../../../gl-ng-buttons-frontend/src/lib/component/image/tooltip/gl-component-button-image-tooltip.component';\r\n\r\n@Component({\r\n    selector: 'gl-component-input-list-item-up-down',\r\n    templateUrl: './gl-component-input-list-item-up-down.component.html',\r\n    styleUrls: ['./gl-component-input-list-item-up-down.component.scss'],\r\n    standalone: true,\r\n    imports: [GlComponentButtonImageTooltipComponent]\r\n})\r\nexport class GlComponentInputListItemUpDownComponent {\r\n  @Input() showUp = true;\r\n  @Input() showDown = true;\r\n\r\n  @Output() moveUpDown$: EventEmitter<TListReorder> = new EventEmitter();\r\n\r\n  callback = () => {};\r\n\r\n  constructor() { }\r\n  onClick(type: TListReorder): void {\r\n\r\n    if (type === 'move-down') {\r\n      if (this.showDown) {\r\n        this.moveUpDown$.emit(type);\r\n      }\r\n    } else {\r\n      if (this.showUp) {\r\n        this.moveUpDown$.emit(type);\r\n      }\r\n    }\r\n  }\r\n}\r\n","<div class=\"reorder-list-container\">\r\n\r\n  <gl-component-button-image-tooltip\r\n    id=\"move-up-list-item\"\r\n    alt=\"Move up\"\r\n    src=\"../assets/img/icon/list/move-up.svg\"\r\n    [class]=\"showUp ? '' : 'disabled'\"\r\n    (click)=\"onClick('move-up')\"\r\n    [callback]=\"callback\"\r\n  ></gl-component-button-image-tooltip>\r\n  <gl-component-button-image-tooltip\r\n    id=\"move-down-list-item\"\r\n    alt=\"Move down\"\r\n    src=\"../assets/img/icon/list/move-down.svg\"\r\n    [class]=\"showDown ? '' : 'disabled'\"\r\n    (click)=\"onClick('move-down')\"\r\n    [callback]=\"callback\"\r\n  ></gl-component-button-image-tooltip>\r\n</div>\r\n","/*\r\n * Public API Surface of gl-ng-lists-frontend\r\n */\r\n\r\n// region interfaces\r\nexport { TTheme } from './gl-ng-lists-frontend/src/lib/interfaces/global.interface';\r\n// endregion\r\n\r\n// region item remove\r\nexport { GlComponentInputListItemRemoveComponent } from './gl-ng-lists-frontend/src/lib/component/item-remove/gl-component-input-list-item-remove.component';\r\nexport { IListRemoveItem } from './gl-ng-lists-frontend/src/lib/component/item-remove/gl-component-input-list-item-remove.interface';\r\n// endregion\r\n\r\n// region item up down\r\nexport { GlComponentInputListItemUpDownComponent } from './gl-ng-lists-frontend/src/lib/component/item-up-down/gl-component-input-list-item-up-down.component';\r\nexport { TListReorder, IMoveDownResult } from './gl-ng-lists-frontend/src/lib/component/item-up-down/gl-component-input-list-item-up-down.interface';\r\n// endregion\r\n\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\n\r\n@Component({\r\n    selector: 'gl-component-logo-text-only',\r\n    templateUrl: './gl-component-logo-text-only.component.html',\r\n    styleUrls: ['./gl-component-logo-text-only.component.scss'],\r\n    standalone: true,\r\n    imports: []\r\n})\r\nexport class GlComponentLogoTextOnlyComponent {\r\n  @Output() click$: EventEmitter<boolean> = new EventEmitter();\r\n\r\n  @Input() clickable = false;\r\n  @Input() formType: string = null;\r\n  @Input() showRelease = false;\r\n  @Input() columnView = false;\r\n\r\n  @Input() title: string = null;\r\n  @Input() subtitle: string = null;\r\n  @Input() releaseName: string = null;\r\n\r\n  constructor() { }\r\n\r\n  onClick(): void {\r\n    this.click$.emit(true);\r\n  }\r\n}\r\n","<div class=\"title-container {{ clickable ? 'click' : '' }} {{ columnView ? 'column-view' : '' }}\"\r\n     (click)=\"onClick()\">\r\n  <h1 class=\"title title-1\">{{ title }}</h1>\r\n  <h1 class=\"title title-2\">{{ subtitle }}{{ formType == null ? '' : ': ' + formType }}</h1>\r\n  @if(showRelease && releaseName != null) {\r\n    <span\r\n      class=\"release\">{{ releaseName }}\r\n  </span>\r\n  }\r\n\r\n</div>\r\n","/*\r\n * Public API Surface of gl-ng-logos-frontend\r\n */\r\n\r\n// region interfaces\r\nexport { TTheme } from './gl-ng-logos-frontend/src/lib/interfaces/global.interface';\r\n// endregion\r\n\r\n\r\n// region square\r\nexport { GlComponentLogoSquareComponent } from './gl-ng-logos-frontend/src/lib/component/square/gl-component-logo-square.component';\r\nexport { GlComponentLogoTextOnlyComponent } from './gl-ng-logos-frontend/src/lib/component/text-only/gl-component-logo-text-only.component';\r\nexport { TLogoHorizontalPosition, TLogoVerticalPosition } from './gl-ng-logos-frontend/src/lib/component/square/gl-component-logo-square.interface';\r\n// endregion\r\n\r\n","import { Injectable, OnDestroy } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { Subject } from 'rxjs';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\n  export class GlComponentMenuService implements OnDestroy {\r\n\r\n  container: HTMLDivElement;\r\n  background: HTMLDivElement;\r\n\r\n  router: Router;\r\n\r\n  menuHidden: Subject<boolean> = new Subject();\r\n  opened = false;\r\n\r\n  private _timeouts: any[] = [];\r\n\r\n  constructor() { }\r\n\r\n  ngOnDestroy(): void {\r\n    this.menuHidden.observers.map(x => x.complete());\r\n  }\r\n\r\n  initialize(container: HTMLDivElement, background: HTMLDivElement, router: Router): void {\r\n    this.container = container;\r\n    this.background = background;\r\n    this.router = router;\r\n\r\n    this.menuHidden.next(true);\r\n  }\r\n\r\n  close(event: Event): boolean {\r\n    event.preventDefault();\r\n    this.background.classList.add('hide-background');\r\n    this.container.classList.remove('menu-active');\r\n\r\n    this._timeouts.push(setTimeout(() => {\r\n      this.background.classList.remove('hide-background');\r\n      this.background.classList.remove('visible-background');\r\n    }, 1100));\r\n\r\n    this.menuHidden.next(true);\r\n    this.opened = false;\r\n    return false;\r\n  }\r\n  open(event: Event): boolean {\r\n    event.preventDefault();\r\n    this.container.classList.add('menu-active');\r\n\r\n    for (const timeout of this._timeouts) {\r\n      clearInterval(timeout);\r\n    }\r\n\r\n    this.background.classList.add('visible-background');\r\n\r\n    this.menuHidden.next(false);\r\n    this.opened = true;\r\n    return true;\r\n  }\r\n\r\n  goToSettings(url: string, target: string = '_blank'): void {\r\n    window.open(url, target);\r\n  }\r\n\r\n  backgroundClick(event): void {\r\n    if (this.opened) { this.close(event); }\r\n  }\r\n}\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { Router, RouterLink } from '@angular/router';\r\nimport { IMenuItem, TMenuItemTheme, TUrlTarget } from './gl-component-menu-item.interface';\r\nimport { style, state, animate, transition, trigger } from '@angular/animations';\r\nimport { GlComponentMenuService } from '../gl-component-menu.service';\r\nimport { ViewportScroller, NgOptimizedImage } from '@angular/common';\r\nimport scrollIntoView from 'scroll-into-view-if-needed';\r\n\r\n@Component({\r\n    selector: 'gl-component-menu-item',\r\n    templateUrl: './gl-component-menu-item.component.html',\r\n    styleUrls: ['./gl-component-menu-item.component.scss'],\r\n    animations: [\r\n        trigger('fadeInOut', [\r\n            state('', style({\r\n                opacity: 0,\r\n                height: 0,\r\n                transform: 'scaleY(0)'\r\n            })),\r\n            transition(':enter', [\r\n                style({\r\n                    opacity: 0,\r\n                    height: 0,\r\n                    transform: 'scaleY(0)'\r\n                }),\r\n                animate('0.3s ease-in', style({\r\n                    opacity: 1,\r\n                    height: '*',\r\n                    transform: 'scaleY(1)'\r\n                }))\r\n            ]),\r\n            transition(':leave', [\r\n                animate(250, style({\r\n                    opacity: 0,\r\n                    height: 0,\r\n                    transform: 'scaleY(0)'\r\n                }))\r\n            ])\r\n        ])\r\n    ],\r\n    standalone: true,\r\n  imports: [RouterLink, NgOptimizedImage]\r\n})\r\nexport class GlComponentMenuItemComponent {\r\n  @Input() itemClass: TMenuItemTheme = 'dark';\r\n  @Input() absolute: boolean;\r\n  @Input() menuLogo = '../assets/img/logo/glaucio-logo-colored.svg';\r\n  @Input() src = this.menuLogo;\r\n  @Input() href: string;\r\n  @Input() fragment: string;\r\n  @Input() alt;\r\n  @Input() content;\r\n  @Input() target: TUrlTarget = '_self';\r\n\r\n  @Input() hasSubitem: boolean;\r\n  @Input() active: boolean;\r\n  @Input() subItems: IMenuItem[];\r\n\r\n  @Output() $click: EventEmitter<any> = new EventEmitter();\r\n\r\n  constructor(\r\n    private _router: Router,\r\n    private _menu: GlComponentMenuService,\r\n    private _viewportScroller: ViewportScroller\r\n  ) {\r\n\r\n  }\r\n\r\n  // openAbsoluteLink(event, href, target: TUrlTarget = '_self'): void {\r\n  //   this._router.navigate(['/externalRedirect', { externalUrl: href, target}], {\r\n  //     skipLocationChange: true,\r\n  //   }).then(() => {\r\n  //     console.log(`Redirected to: ${href}`);\r\n  //   });\r\n  //\r\n  //   event.preventDefault();\r\n  // }\r\n  // openAbsoluteLink(event, href, target: TUrlTarget = '_self'): void {\r\n  //   this._router.navigate([href, target], {\r\n  //     skipLocationChange: true,\r\n  //   })\r\n  //\r\n  //   // this._router.navigate(['/externalRedirect', { externalUrl: href, target}], {\r\n  //   //   skipLocationChange: true,\r\n  //   // }).then(() => {\r\n  //   //   console.log(`Redirected to: ${href}`);\r\n  //   // });\r\n  //\r\n  //   event.preventDefault();\r\n  // }\r\n\r\n  toggleActive(): void {\r\n    this.active = !this.active;\r\n  }\r\n\r\n  onClick(event): void {\r\n    if (this.fragment != null) {\r\n      this._menu.close(event);\r\n\r\n      const element: HTMLElement = document.querySelector(`#${this.fragment}`);\r\n      scrollIntoView(element, {\r\n        block: 'start',\r\n        behavior: 'smooth',\r\n        scrollMode: 'always',\r\n      });\r\n\r\n        this.$click.emit({ event, href: this.href, fragment: this.fragment });\r\n    }\r\n  }\r\n}\r\n","@if(!hasSubitem) {\r\n  <li class=\"menu-title {{ itemClass }}\">\r\n    <img\r\n      [src]=\"src\"\r\n      class=\"menu-icons\"\r\n      [alt]=\"alt\"/>\r\n    @if(absolute) {\r\n<!--      <a-->\r\n<!--        class=\"menu-item\"-->\r\n<!--        [href]=\"'externalRedirect'\"-->\r\n<!--        (click)=\"openAbsoluteLink($event, href, target)\"-->\r\n<!--        >{{ content }}</a>-->\r\n      <a\r\n        class=\"menu-item\"\r\n        [href]=\"href\"\r\n        [target]=\"target\"\r\n      >{{ content }}</a>\r\n    }\r\n\r\n    @if (!absolute) {\r\n      <a\r\n        class=\"menu-item\"\r\n        [routerLink]=\"href\"\r\n        [fragment]=\"fragment\"\r\n        (click)=\"onClick($event)\"\r\n      >{{ content }}</a>\r\n    }\r\n  </li>\r\n}\r\n\r\n@if(hasSubitem) {\r\n  <li class=\"menu-title {{ itemClass }} {{ active ? 'active' : '' }}\">\r\n    <img\r\n      [src]=\"src\"\r\n      class=\"menu-icons\"\r\n      [alt]=\"alt\"/>\r\n    <div\r\n      class=\"menu-item\"\r\n      (click)=\"toggleActive()\"\r\n    >{{ content }}</div>\r\n    <img\r\n      src=\"../assets/img/icon/side-menu/arrow-down.svg\"\r\n      class=\"menu-arrow\"\r\n      [alt]=\"alt\"/>\r\n  </li>\r\n}\r\n\r\n@if(hasSubitem && active) {\r\n  <ol [@fadeInOut] class=\"subitem-container {{ active ? 'active' : '' }}\">\r\n    @for(item of subItems; track item.id) {\r\n      <li class=\"menu-title adding-row-animated {{ item.class }}\">\r\n        <img\r\n          [src]=\"item.src\"\r\n          class=\"menu-icons\"\r\n          [alt]=\"item.alt\"/>\r\n        @if(item.absolute) {\r\n<!--          <a-->\r\n<!--            class=\"menu-item\"-->\r\n<!--            [href]=\"'externalRedirect'\"-->\r\n<!--            (click)=\"openAbsoluteLink($event, item.href, item.target)\"-->\r\n<!--          >{{ item.content }}</a>-->\r\n          <a\r\n            class=\"menu-item\"\r\n            [href]=\"item.href\"\r\n            [target]=\"item.target\"\r\n          >{{ item.content }}</a>\r\n        }\r\n\r\n        @if(!item.absolute) {\r\n          <a\r\n            class=\"menu-item\"\r\n            [routerLink]=\"item.href\"\r\n            [fragment]=\"item.fragment\"\r\n            (click)=\"onClick($event)\"\r\n          >{{ item.content }}</a>\r\n        }\r\n      </li>\r\n    }\r\n  </ol>\r\n}\r\n\r\n","import {Component, ElementRef, EventEmitter, Input, OnInit, Output, ViewChild} from '@angular/core';\r\nimport { Router, RouterLink } from '@angular/router';\r\nimport { GlComponentMenuService } from './gl-component-menu.service';\r\nimport { IMenuItem, IMenuItemComplex } from './item/gl-component-menu-item.interface';\r\nimport { TMenuPosition, TUrlTargets } from './gl-component-menu.interface';\r\nimport { GlComponentMenuItemComponent } from './item/gl-component-menu-item.component';\r\nimport { NgOptimizedImage } from '@angular/common';\r\nimport { GlComponentMenuBackgroundComponent } from './background/gl-component-menu-background.component';\r\n\r\n@Component({\r\n    selector: 'gl-component-menu',\r\n    templateUrl: './gl-component-menu.component.html',\r\n    styleUrls: ['./gl-component-menu.component.scss'],\r\n    standalone: true,\r\n  imports: [GlComponentMenuBackgroundComponent, GlComponentMenuItemComponent, RouterLink, NgOptimizedImage]\r\n})\r\nexport class GlComponentMenuComponent implements OnInit {\r\n  @ViewChild('container', { static: true, read: ElementRef }) container: ElementRef<HTMLDivElement>;\r\n  @ViewChild('background', { static: true, read: ElementRef }) background: ElementRef<HTMLDivElement>;\r\n\r\n  @Input() title: string;\r\n  @Input() subtitle: string;\r\n  @Input() systemVersion: string;\r\n  @Input() menuItems: IMenuItem[];\r\n  @Input() menuItemsComplex: IMenuItemComplex[];\r\n  @Input() showSettings: boolean;\r\n  @Input() showLogout: boolean;\r\n  @Input() className: string | 'dark' | 'translucid' | '' = '';\r\n  @Input() settingsUrl: string;\r\n  @Input() settingsTarget: TUrlTargets = '_blank';\r\n  @Input() menuLogo = '../assets/img/logo/glaucio-logo-colored.svg';\r\n  @Input() menuBottomTitle: string;\r\n  @Input() menuBottomVersion = '1.0.0';\r\n  @Input() menuPosition: TMenuPosition = 'right';\r\n\r\n  @Input() logoutButton = './assets/img/icon/side-menu/logout.svg';\r\n  @Input() closeButton = '../assets/img/icon/side-menu/close.svg';\r\n  @Input() settingsButton = '../assets/img/icon/side-menu/admin-settings.svg';\r\n\r\n  @Output() $click: EventEmitter<any> = new EventEmitter();\r\n  @Output() $logoutClick: EventEmitter<MouseEvent> = new EventEmitter();\r\n\r\n\r\n\r\n  constructor(\r\n    public service: GlComponentMenuService,\r\n    public router: Router\r\n  ) { }\r\n\r\n  ngOnInit(): void {\r\n    this.service.initialize(this.container.nativeElement, this.background.nativeElement, this.router);\r\n  }\r\n}\r\n","<gl-component-menu-background\r\n  #background\r\n  (click)=\"service.backgroundClick($event)\"\r\n></gl-component-menu-background>\r\n<div #container class=\"menu-container {{ className }} {{ menuPosition === 'left' ? 'left' : 'right' }}\">\r\n  <nav class=\"menu-nav-container\">\r\n    <ul class=\"menu-content\">\r\n      <li class=\"menu-header-container\">\r\n        <div class=\"menu-header\">\r\n          <div class=\"menu-top-icons-container\">\r\n            <img\r\n              id=\"close-menu-button\"\r\n              (click)=\"service.close($event)\"\r\n              [src]=\"closeButton\"\r\n              class=\"menu-icons close-menu\"\r\n              alt=\"Close menu button\">\r\n            @if(showSettings) {\r\n              <img\r\n                id=\"settings-menu-button\"\r\n                (click)=\"service.goToSettings(settingsUrl, settingsTarget)\"\r\n                [src]=\"settingsButton\"\r\n                class=\"menu-icons settings-menu\"\r\n                alt=\"Settings menu button\">\r\n            }\r\n           @if(showLogout) {\r\n             <img\r\n               id=\"logout-menu-button\"\r\n               (click)=\"$logoutClick.emit($event)\"\r\n               [src]=\"logoutButton\"\r\n               class=\"menu-icons logout-menu\"\r\n               alt=\"Close menu button\">\r\n           }\r\n\r\n            <div class=\"logo-container\">\r\n              <img\r\n                class=\"main-logo\"\r\n                [src]=\"menuLogo\"\r\n                alt=\"Menu Logo\"/>\r\n            </div>\r\n\r\n          </div>\r\n          <div class=\"menu-header-title\">\r\n            <h1 class=\"title\">{{ title }}</h1>\r\n            <h2 class=\"subtitle\">{{ subtitle }}</h2>\r\n            <h3 class=\"system-version\">{{ menuBottomVersion == null ? 'Version: ' + systemVersion : menuBottomVersion }}</h3>\r\n          </div>\r\n        </div>\r\n      </li>\r\n      <li class=\"menu-content-container {{ title?.length > 0 ? 'has-title' : '' }}\">\r\n        @for(menuItem of menuItems; track menuItem.id) {\r\n          <gl-component-menu-item\r\n            [absolute]=\"menuItem.absolute\"\r\n            [alt]=\"menuItem.alt\"\r\n            [src]=\"menuItem.src\"\r\n            [fragment]=\"menuItem.fragment\"\r\n            [routerLink]=\"menuItem.href\"\r\n            [href]=\"menuItem.href\"\r\n            [content]=\"menuItem.content\"\r\n            [itemClass]=\"menuItem.class\"\r\n            [target]=\"menuItem.target\"\r\n            ($click)=\"$click.emit($event)\"\r\n          ></gl-component-menu-item>\r\n        }\r\n\r\n        @for(menuItem of menuItemsComplex; track menuItem.id) {\r\n          <gl-component-menu-item\r\n            [absolute]=\"menuItem.absolute\"\r\n            [alt]=\"menuItem.alt\"\r\n            [src]=\"menuItem.src\"\r\n            [fragment]=\"menuItem.fragment\"\r\n            [routerLink]=\"menuItem.href\"\r\n            [href]=\"menuItem.href\"\r\n            [content]=\"menuItem.content\"\r\n            [itemClass]=\"menuItem.class\"\r\n            [hasSubitem]=\"menuItem.hasSubitem\"\r\n            [active]=\"menuItem.active\"\r\n            [target]=\"menuItem.target\"\r\n            [subItems]=\"menuItem.subItems\"\r\n            ($click)=\"$click.emit($event)\"\r\n          ></gl-component-menu-item>\r\n        }\r\n      </li>\r\n<!--      <li class=\"logo-main-container\">-->\r\n<!--        <div class=\"logo-container\">-->\r\n<!--&lt;!&ndash;          <img class=\"main-logo\" [src]=\"menuLogo\" alt=\"Menu Logo\"/>&ndash;&gt;-->\r\n<!--          <span class=\"main-logo-title\">{{ menuBottomTitle }}</span>-->\r\n<!--          <span class=\"main-logo-title\">{{ menuBottomVersion == null ? 'Version: ' + systemVersion : menuBottomVersion }}</span>-->\r\n<!--        </div>-->\r\n<!--      </li>-->\r\n    </ul>\r\n  </nav>\r\n</div>\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { NgOptimizedImage } from '@angular/common';\r\n\r\n@Component({\r\n    selector: 'gl-component-modal-actions-item',\r\n    templateUrl: './gl-component-modal-actions-item.component.html',\r\n    styleUrls: ['./gl-component-modal-actions-item.component.scss'],\r\n    standalone: true,\r\n  imports: [NgOptimizedImage]\r\n})\r\nexport class GlComponentModalActionsItemComponent implements OnInit {\r\n  @Input() title: string;\r\n  @Input() icon: string;\r\n  @Input() red = false;\r\n  @Input() green = false;\r\n  @Input() action: () => void;\r\n  @Input() hide = true;\r\n  @Input() groupSplit = false;\r\n\r\n  @Output() $clicked: EventEmitter<void> = new EventEmitter();\r\n\r\n  constructor() { }\r\n\r\n  private static checkField(field: string | boolean | (() => void), name: string): void {\r\n    if (name == null) {\r\n      throw Error('The name param must be filled!');\r\n    }\r\n\r\n    const fieldEmptyMessage = `The ${name} field cannot be null or empty!`;\r\n    if (field == null) {\r\n      throw Error(fieldEmptyMessage);\r\n    }\r\n\r\n    if (typeof field === 'string') {\r\n      if (field.trim().length === 0) {\r\n        throw Error(fieldEmptyMessage);\r\n      }\r\n    }\r\n  }\r\n\r\n  ngOnInit(): void {\r\n    GlComponentModalActionsItemComponent.checkField(this.title, 'title');\r\n    GlComponentModalActionsItemComponent.checkField(this.icon, 'icon');\r\n    GlComponentModalActionsItemComponent.checkField(this.red, 'red');\r\n    GlComponentModalActionsItemComponent.checkField(this.green, 'green');\r\n    GlComponentModalActionsItemComponent.checkField(this.action, 'action');\r\n    GlComponentModalActionsItemComponent.checkField(this.hide, 'hide');\r\n\r\n    if (this.red && this.green) {\r\n      throw Error('You cannot set the item as green and red!');\r\n    }\r\n  }\r\n\r\n  onClick(): void {\r\n    this.action();\r\n    this.$clicked.emit();\r\n  }\r\n}\r\n","@if(!hide) {\r\n  <div class=\"action-item-container\" [class.group-split]=\"groupSplit\" (click)=\"onClick()\">\r\n  <span\r\n    class=\"action-title\"\r\n    [class.red]=\"red\"\r\n    [class.green]=\"green\"\r\n  >{{ title }}</span>\r\n\r\n    <img\r\n      alt=\"Icon\"\r\n      class=\"action-icon\"\r\n      [src]=\"icon\">\r\n  </div>\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { IModalItemAction } from './item/gl-component-modal-actions-item.interface';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class GlComponentModalActionsService {\r\n\r\n  readonly actions: IModalItemAction[] = [];\r\n  showModal: boolean;\r\n  modalClass: string;\r\n  resolvePromise;\r\n  binder;\r\n\r\n  private _closeButton: HTMLInputElement;\r\n\r\n  constructor() { }\r\n\r\n  addAction(actions: IModalItemAction[], removeCurrent: boolean = false): void {\r\n    if (removeCurrent) {\r\n      this.clearActions();\r\n    }\r\n    this.actions.push(...actions);\r\n  }\r\n  addSingleAction(id: number, title: string, icon: string, action: () => void, red: boolean, green: boolean, hide?: boolean, groupSplit?: boolean, removeCurrent: boolean = false): void {\r\n    const actionExists = this.actions.filter(x => x.title === title).length > 0;\r\n\r\n    if (removeCurrent) {\r\n      this.clearActions();\r\n    }\r\n\r\n    if (!actionExists) {\r\n      this.actions.push({ id, title, icon, action, red, green, hide, groupSplit });\r\n    }\r\n  }\r\n  removeAction(index: number, deleteCount: number = 1): void {\r\n    this.actions.splice(index, deleteCount);\r\n  }\r\n  clearActions(): void {\r\n    this.actions.splice(0, this.actions.length);\r\n  }\r\n\r\n  show(actions: IModalItemAction[], binder): Promise<boolean> {\r\n    this.binder = binder;\r\n    this.addAction(actions);\r\n    return this.modal(true);\r\n  }\r\n  hide(): void {\r\n    this.clearActions();\r\n    this.modal(false);\r\n  }\r\n\r\n  private modal(show: boolean): Promise<boolean> {\r\n    return new Promise(resolve => {\r\n      this.resolvePromise = resolve;\r\n\r\n      if (show) {\r\n        this.modalClass = 'hide-modal';\r\n        this.showModal = show;\r\n        this.modalClass = 'show-modal';\r\n\r\n        setTimeout(() => {\r\n          this.setElements();\r\n\r\n          setTimeout(() => {\r\n            this._closeButton.focus();\r\n          }, 300);\r\n        }, 300);\r\n      } else {\r\n        this.modalClass = 'hide-modal';\r\n        setTimeout(() => {\r\n          this.showModal = false;\r\n        }, 300);\r\n      }\r\n    });\r\n  }\r\n  private setElements(): void {\r\n    const container = document.querySelector('.modal-container');\r\n\r\n    this._closeButton = container.querySelector('.close');\r\n  }\r\n}\r\n","import { Component } from '@angular/core';\r\nimport { GlComponentModalActionsService } from './gl-component-modal-actions.service';\r\nimport { GlComponentModalActionsItemComponent } from './item/gl-component-modal-actions-item.component';\r\nimport { NgOptimizedImage } from '@angular/common';\r\n\r\n@Component({\r\n    selector: 'gl-component-modal-actions',\r\n    templateUrl: './gl-component-modal-actions.component.html',\r\n    styleUrls: ['./gl-component-modal-actions.component.scss'],\r\n    standalone: true,\r\n  imports: [GlComponentModalActionsItemComponent, NgOptimizedImage]\r\n})\r\nexport class GlComponentModalActionsComponent {\r\n\r\n  constructor(public service: GlComponentModalActionsService) { }\r\n}\r\n","@if (service.showModal){\r\n  <div\r\n    (keydown.escape)=\"service.hide()\"\r\n    id=\"modal\"\r\n    class=\"modal-container {{ service.modalClass }}\"\r\n    tabindex=\"-1\">\r\n\r\n    <div class=\"modal-main-content\">\r\n      <div class=\"background\" (click)=\"service.hide()\"></div>\r\n\r\n      <div class=\"action-main-container\">\r\n        @for(item of service.actions; track item.id) {\r\n          <gl-component-modal-actions-item\r\n            [title]=\"item.title\"\r\n            [icon]=\"item.icon\"\r\n            [red]=\"item.red\"\r\n            [green]=\"item.green\"\r\n            [hide]=\"item.hide\"\r\n            [action]=\"item.action\"\r\n            [groupSplit]=\"item.groupSplit\"\r\n            ($clicked)=\"service.hide()\"\r\n          ></gl-component-modal-actions-item>\r\n        }\r\n      </div>\r\n\r\n      <img\r\n        alt=\"Close icon\"\r\n        class=\"close close-modal\"\r\n        src=\"assets/img/icon/menu/close.svg\"\r\n        (click)=\"service.hide()\">\r\n    </div>\r\n  </div>\r\n\r\n}\r\n","/*\r\n * Public API Surface of gl-ng-menus-frontend\r\n */\r\n\r\n// region interfaces\r\nexport { TTheme } from './gl-ng-menus-frontend/src/lib/interfaces/global.interface';\r\n// endregion\r\n\r\n\r\n// region background\r\nimport { GlComponentMenuBackgroundComponent } from './gl-ng-menus-frontend/src/lib/component/menu/background/gl-component-menu-background.component';\r\nexport { GlComponentMenuBackgroundComponent };\r\n// endregion\r\n\r\n// region item\r\nexport { GlComponentMenuComponent } from './gl-ng-menus-frontend/src/lib/component/menu/gl-component-menu.component';\r\nexport { GlComponentMenuService } from './gl-ng-menus-frontend/src/lib/component/menu/gl-component-menu.service';\r\nexport { GlComponentMenuItemComponent } from './gl-ng-menus-frontend/src/lib/component/menu/item/gl-component-menu-item.component';\r\nexport { TMenuPosition } from './gl-ng-menus-frontend/src/lib/component/menu/gl-component-menu.interface';\r\nexport { IMenuItemComplex, TMenuItemTheme, IMenuItem, TUrlTarget } from './gl-ng-menus-frontend/src/lib/component/menu/item/gl-component-menu-item.interface';\r\n// endregion\r\n\r\n// region action\r\nexport { GlComponentModalActionsComponent } from './gl-ng-menus-frontend/src/lib/component/modal/actions/gl-component-modal-actions.component';\r\nexport { GlComponentModalActionsService } from './gl-ng-menus-frontend/src/lib/component/modal/actions/gl-component-modal-actions.service';\r\nexport { GlComponentModalActionsItemComponent } from './gl-ng-menus-frontend/src/lib/component/modal/actions/item/gl-component-modal-actions-item.component';\r\nexport { IModalItemAction } from './gl-ng-menus-frontend/src/lib/component/modal/actions/item/gl-component-modal-actions-item.interface';\r\n// endregion\r\n","import { Component, Input } from '@angular/core';\r\nimport { NgOptimizedImage } from '@angular/common';\r\n\r\n@Component({\r\n  selector: 'gl-component-modal-header',\r\n  templateUrl: './gl-component-modal-header.component.html',\r\n  styleUrls: ['./gl-component-modal-header.component.scss'],\r\n  imports: [\r\n    NgOptimizedImage\r\n  ],\r\n  standalone: true\r\n})\r\nexport class GlComponentModalHeaderComponent {\r\n  @Input() title: string;\r\n  @Input() subtitle: string;\r\n  @Input() modalLogo: string;\r\n  constructor() { }\r\n}\r\n","<div class=\"modal-title-container\">\r\n  <img\r\n    class=\"modal-logo\"\r\n    [src]=\"modalLogo\"\r\n    alt=\"Header Logo\">\r\n  <div class=\"modal-title-text-container\">\r\n    <h2 class=\"modal-title\">{{ title }}</h2>\r\n    <h2 class=\"modal-title\">{{ subtitle }}</h2>\r\n  </div>\r\n</div>\r\n","import { Component, Input } from '@angular/core';\r\nimport { GlComponentModalAlertService } from './gl-component-modal-alert.service';\r\nimport { GlComponentInputButtonSimpleComponent } from '../../../../../gl-ng-inputs-frontend/src/lib/component/button/simple/gl-component-input-button-simple.component';\r\nimport { GlComponentModalHeaderComponent } from '../header/gl-component-modal-header.component';\r\n\r\n\r\n@Component({\r\n    selector: 'gl-component-modal-alert',\r\n    templateUrl: './gl-component-modal-alert.component.html',\r\n    styleUrls: ['./gl-component-modal-alert.component.scss'],\r\n    standalone: true,\r\n    imports: [GlComponentModalHeaderComponent, GlComponentInputButtonSimpleComponent]\r\n})\r\nexport class GlComponentModalAlertComponent {\r\n  @Input() title: string;\r\n  @Input() subtitle: string;\r\n  @Input() modalLogo: string = '../assets/img/logo/glaucio-logo-colored.svg';\r\n  @Input() innerValueNo = 'No';\r\n  @Input() innerValueYes = 'Yes';\r\n  @Input() innerValueOK = 'OK';\r\n\r\n  @Input() noValue = 'no';\r\n  @Input() yesValue = 'yes';\r\n  @Input() okValue = 'ok';\r\n\r\n  constructor(public service: GlComponentModalAlertService) { }\r\n}\r\n","@if(service.showModal) {\r\n  <div\r\n    (keydown)=\"service.onModalKeyUp($event)\"\r\n    id=\"modal\"\r\n    class=\"modal-container {{ service.modalClass }}\"\r\n    tabindex=\"-1\">\r\n    <div class=\"modal-main-content\">\r\n      <gl-component-modal-header\r\n        [title]=\"title\"\r\n        [subtitle]=\"subtitle\"\r\n        [modalLogo]=\"modalLogo\"\r\n      ></gl-component-modal-header>\r\n      <div class=\"modal-message-container\">\r\n        <span class=\"modal-message\">{{ service.message }}</span>\r\n      </div>\r\n      <div class=\"button-container\">\r\n        @if(!service.isOK) {\r\n          <gl-component-input-button-simple\r\n            class=\"no\"\r\n            (click)=\"service.onNo()\"\r\n            [innerValue]=\"service.customNo == null ? innerValueNo : service.customNo\"\r\n            [value]=\"noValue\"\r\n          ></gl-component-input-button-simple>\r\n          <gl-component-input-button-simple\r\n            class=\"yes\"\r\n            (click)=\"service.onYes()\"\r\n            [innerValue]=\"service.customYes == null ? innerValueYes : service.customYes\"\r\n            [value]=\"yesValue\"\r\n          ></gl-component-input-button-simple>\r\n        }\r\n\r\n        @if(service.isOK) {\r\n          <gl-component-input-button-simple\r\n            class=\"ok\"\r\n            (click)=\"service.onOk()\"\r\n            [innerValue]=\"innerValueOK\"\r\n            [value]=\"okValue\"\r\n          ></gl-component-input-button-simple>\r\n        }\r\n      </div>\r\n    </div>\r\n  </div>\r\n}\r\n","import { Component, Input } from '@angular/core';\r\nimport { GlComponentModalAttachmentLinkService } from './gl-component-modal-attachment-link.service';\r\nimport { GlComponentInputButtonSimpleComponent } from '../../../../../../gl-ng-inputs-frontend/src/lib/component/button/simple/gl-component-input-button-simple.component';\r\nimport { GlComponentModalHeaderComponent } from '../../header/gl-component-modal-header.component';\r\n\r\n\r\n@Component({\r\n    selector: 'gl-component-modal-attachment-link',\r\n    templateUrl: './gl-component-modal-attachment-link.component.html',\r\n    styleUrls: ['./gl-component-modal-attachment-link.component.scss'],\r\n    standalone: true,\r\n    imports: [GlComponentModalHeaderComponent, GlComponentInputButtonSimpleComponent]\r\n})\r\nexport class GlComponentModalAttachmentLinkComponent {\r\n  @Input() title: string;\r\n  @Input() subtitle = ': link';\r\n  @Input() modalLogo: string;\r\n  @Input() fileNameLabel = 'File name';\r\n  @Input() fileNamePlaceholder = 'Type the file name';\r\n  @Input() linkPlaceholder = 'Type the file link';\r\n  @Input() cancelInnerValue = 'Cancel';\r\n\r\n  constructor(public service: GlComponentModalAttachmentLinkService) { }\r\n\r\n}\r\n","@if(service.showModal) {\r\n  <div\r\n    (keyup)=\"service.onModalKeyUp($event)\"\r\n    id=\"modal-attachment-link\"\r\n    class=\"modal-link-container {{ service.modalClass }}\">\r\n    <div class=\"modal-main-content\">\r\n      <gl-component-modal-header\r\n        [title]=\"title\"\r\n        [subtitle]=\"subtitle\"\r\n        [modalLogo]=\"modalLogo\"\r\n      ></gl-component-modal-header>\r\n      <div class=\"modal-input-container\">\r\n        <div class=\"name-container\">\r\n          <label for=\"attachment-link-name\">{{ fileNameLabel }}</label>\r\n          <input\r\n            (keyup)=\"service.onName($event)\"\r\n            id=\"attachment-link-name\"\r\n            type=\"text\"\r\n            [placeholder]=\"fileNamePlaceholder\">\r\n        </div>\r\n        <div class=\"value-container\">\r\n          <label for=\"attachment-link-value\">Link</label>\r\n          <input\r\n            (keyup)=\"service.onUrl($event)\"\r\n            id=\"attachment-link-value\"\r\n            type=\"text\"\r\n            [placeholder]=\"linkPlaceholder\">\r\n        </div>\r\n      </div>\r\n      <div class=\"button-container\">\r\n        <gl-component-input-button-simple\r\n          (click)=\"service.onCancel()\"\r\n          class=\"cancel\"\r\n          [innerValue]=\"cancelInnerValue\"\r\n          value=\"cancel\"\r\n        ></gl-component-input-button-simple>\r\n        <gl-component-input-button-simple\r\n          (click)=\"service.onConfirm()\"\r\n          class=\"ok\"\r\n          innerValue=\"OK\"\r\n          value=\"ok\"\r\n        ></gl-component-input-button-simple>\r\n      </div>\r\n      <div class=\"modal-footer\"></div>\r\n    </div>\r\n  </div>\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class GlComponentModalLoadingService {\r\n  private _defaultMessage = 'Loading... please wait...';\r\n  defaultMessage = 'Loading... please wait...';\r\n  _loadingStatus = this.defaultMessage;\r\n  _showLoading = true;\r\n  _mainLoading: HTMLDivElement;\r\n\r\n  constructor() { }\r\n\r\n  checkElement(): Promise<undefined> {\r\n    return new Promise(resolve => {\r\n      if (this._mainLoading == null) {\r\n        const loadingInterval = setInterval(() => {\r\n          this._mainLoading = document.querySelector('.main-loading');\r\n          if (this._mainLoading != null) {\r\n            clearInterval(loadingInterval);\r\n            resolve(undefined);\r\n          }\r\n        }, 1);\r\n      } else {\r\n        resolve(undefined);\r\n      }\r\n    });\r\n  }\r\n\r\n  setup(mainLoading: HTMLDivElement): void {\r\n    this._mainLoading = mainLoading;\r\n  }\r\n\r\n  hide(): void {\r\n    this.checkElement().then(() => {\r\n      this._mainLoading.classList.add('hide-loading');\r\n      setTimeout(() => {\r\n        this._showLoading = false;\r\n        this.status(null);\r\n      }, 1100);\r\n    });\r\n  }\r\n  show(status?: string): void {\r\n    this.checkElement().then(() => {\r\n      if (status != null) { this.status(status); } else { this.status(null); }\r\n      this._mainLoading.classList.remove('hide-loading');\r\n      this._showLoading = true;\r\n    });\r\n  }\r\n  status(message): void {\r\n    this.checkElement().then(() => {\r\n      setTimeout(() => {\r\n\r\n        if (message == null || message.trim().length === 0) {\r\n          if (this.defaultMessage != null && this.defaultMessage.length === 0) { this.defaultMessage = this._defaultMessage; }\r\n          this._loadingStatus = this.defaultMessage;\r\n        } else {\r\n          this._loadingStatus = message;\r\n        }\r\n      }, 10);\r\n    });\r\n  }\r\n}\r\n","import { AfterViewChecked, Component, ElementRef, Input, ViewChild } from '@angular/core';\r\nimport { GlComponentModalLoadingService } from './gl-component-modal-loading.service';\r\n\r\n\r\n@Component({\r\n    selector: 'gl-component-modal-loading',\r\n    templateUrl: './gl-component-modal-loading.component.html',\r\n    styleUrls: ['./gl-component-modal-loading.component.scss'],\r\n    standalone: true,\r\n    imports: []\r\n})\r\nexport class GlComponentModalLoadingComponent implements AfterViewChecked {\r\n  @ViewChild('mainLoading', { read: ElementRef, static: true }) mainLoading: ElementRef<HTMLDivElement>;\r\n\r\n  @Input() defaultMessage: string;\r\n  @Input() customLoading = false;\r\n  // @Input() slot: 'user-content' = 'user-content';\r\n\r\n  loaded = false;\r\n\r\n  constructor(public service: GlComponentModalLoadingService) {\r\n    service.defaultMessage = this.defaultMessage;\r\n  }\r\n\r\n  ngAfterViewChecked(): void {\r\n    const container = document.querySelector('.main-loading') as HTMLDivElement;\r\n\r\n    if (container != null && !this.loaded) {\r\n      this.service.setup(container);\r\n      this.loaded = true;\r\n    }\r\n  }\r\n}\r\n","@if(service._showLoading) {\r\n  <div #mainLoading class=\"main-loading\">\r\n    @if(!customLoading) {\r\n      <div class=\"loading-container\">\r\n        <div class=\"lds-facebook\"><div></div><div></div><div></div></div>\r\n      </div>\r\n    }\r\n\r\n    @if(customLoading) {\r\n      <div class=\"custom-loading\">\r\n        <ng-content select=\"[slot=custom-loading]\"></ng-content>\r\n      </div>\r\n    }\r\n\r\n    <div class=\"status-container\">\r\n      <div class=\"user-content\">\r\n<!--        <ng-content select=\"{{ '[slot=' + slot + ']' }}\"></ng-content>-->\r\n        <ng-content></ng-content>\r\n      </div>\r\n      <h2 class=\"subtitle loading-status\">{{ service._loadingStatus }}</h2>\r\n    </div>\r\n  </div>\r\n}\r\n\r\n","import { Injectable, OnDestroy } from '@angular/core';\r\nimport { IAttachmentData } from 'gl-w-attachment-frontend';\r\nimport { Subject } from 'rxjs';\r\nimport { GlComponentModalAlertService } from '../alert/gl-component-modal-alert.service';\r\nimport { TModalUploadFunction } from './gl-component-modal-upload-file.interface';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class GlComponentModalUploadFileService implements OnDestroy {\r\n  get modalClass(): string {\r\n    return this._modalClass;\r\n  }\r\n  get showModal(): boolean {\r\n    return this._showModal;\r\n  }\r\n  get attachmentItems(): IAttachmentData[] {\r\n    return this._attachmentItems;\r\n  }\r\n\r\n  attachmentItems$: Subject<IAttachmentData[]> = new Subject();\r\n  currentValue$: Subject<boolean> = new Subject<boolean>();\r\n\r\n  uploadAction: TModalUploadFunction;\r\n  uploadActionCaller: any;\r\n  resolvePromise: (value) => void;\r\n\r\n  private _modalClass: string;\r\n  private _showModal: boolean;\r\n  private _attachmentItems: IAttachmentData[] = [];\r\n  private _uploadButton: HTMLInputElement;\r\n  private _cancelButton: HTMLInputElement;\r\n\r\n  constructor(public alert: GlComponentModalAlertService) {\r\n    setTimeout(async () => {\r\n      await this.clear();\r\n    });\r\n  }\r\n\r\n  async ngOnDestroy(): Promise<void> {\r\n    await this.clear();\r\n  }\r\n\r\n  async show(action: TModalUploadFunction, caller: any, resetData = true, clearObservers = false, subscribe = true): Promise<unknown> {\r\n    await this.clear(resetData, clearObservers);\r\n\r\n    this.uploadActionCaller = caller;\r\n\r\n    if (caller != null) {\r\n      this.uploadAction = action.bind(caller);\r\n    } else {\r\n      this.uploadAction = action;\r\n    }\r\n\r\n    return this.modal(true, resetData, clearObservers);\r\n  }\r\n  hide(resetData = true, clearObservers = true): void {\r\n    this.modal(false, resetData, clearObservers);\r\n  }\r\n\r\n  async showError(message: string): Promise<void | unknown> {\r\n    this.hide(false, false);\r\n    await this.alert.show(message);\r\n    return this.show(this.uploadAction, this.uploadActionCaller, false, false, false);\r\n  }\r\n\r\n  private modal(show: boolean, resetData = false, clearObservers = false): Promise<unknown> {\r\n    this.attachmentItems$.observers.map(x => x.complete());\r\n\r\n    return new Promise(async resolve => {\r\n      this.resolvePromise = resolve;\r\n\r\n      await this.clear(resetData, clearObservers);\r\n\r\n      if (show) {\r\n        this._modalClass = 'hide-modal';\r\n        this._showModal = show;\r\n        this._modalClass = 'show-modal';\r\n\r\n        setTimeout(() => {\r\n          this.setElements();\r\n\r\n          setTimeout(() => {\r\n            this._uploadButton.focus();\r\n          }, 300);\r\n        }, 300);\r\n      } else {\r\n        this._modalClass = 'hide-modal';\r\n        setTimeout(() => {\r\n          this._showModal = false;\r\n        }, 300);\r\n      }\r\n    });\r\n  }\r\n  private setElements(): void {\r\n    const container = document.querySelector('.modal-container .modal-main-content .button-container');\r\n\r\n    this._uploadButton = container.querySelector('.upload .default-button');\r\n    this._cancelButton = container.querySelector('.cancel .default-button');\r\n  }\r\n\r\n  private subscription(): Promise<void> {\r\n    return new Promise(resolve => {\r\n\r\n      if (this.attachmentItems$.observers.length === 0) {\r\n        this.attachmentItems$.subscribe(attachments => {\r\n          this._attachmentItems = attachments;\r\n        });\r\n\r\n        resolve();\r\n      } else {\r\n        resolve();\r\n      }\r\n    });\r\n  }\r\n  private clearObservers(): Promise<void> {\r\n    return new Promise(resolve => {\r\n      this.attachmentItems$.observers.map(x => x.complete());\r\n      resolve();\r\n    });\r\n  }\r\n  private clearItems(): Promise<void> {\r\n    return new Promise(resolve => {\r\n      this._attachmentItems = [];\r\n      resolve();\r\n    });\r\n  }\r\n  private async clear(resetData = true, clearObservers = true): Promise<void> {\r\n    if (resetData) {\r\n      await this.clearItems();\r\n    }\r\n\r\n    if (clearObservers) {\r\n      await this.clearObservers();\r\n    }\r\n\r\n    await this.subscription();\r\n  }\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { IAttachmentData } from 'gl-w-attachment-frontend';\r\nimport { GlComponentModalUploadFileService } from './gl-component-modal-upload-file.service';\r\nimport { GlComponentInputButtonSimpleComponent } from '../../../../../gl-ng-inputs-frontend/src/lib/component/button/simple/gl-component-input-button-simple.component';\r\nimport { GlComponentInputDragAndDropSimpleComponent } from '../../../../../gl-ng-inputs-frontend/src/lib/component/drag-and-drop/simple/gl-component-input-drag-and-drop-simple.component';\r\nimport { GlComponentModalHeaderComponent } from '../header/gl-component-modal-header.component';\r\n\r\n\r\n@Component({\r\n    selector: 'gl-component-modal-upload-file',\r\n    templateUrl: './gl-component-modal-upload-file.component.html',\r\n    styleUrls: ['./gl-component-modal-upload-file.component.scss'],\r\n    standalone: true,\r\n    imports: [GlComponentModalHeaderComponent, GlComponentInputDragAndDropSimpleComponent, GlComponentInputButtonSimpleComponent]\r\n})\r\nexport class GlComponentModalUploadFileComponent implements OnInit {\r\n  @Input() title: string;\r\n  @Input() subtitle: string;\r\n  @Input() modalLogo: string;\r\n  @Input() innerValueUpload = 'Upload';\r\n  @Input() innerValueCancel = 'Cancel';\r\n  @Input() readOnly = false;\r\n  @Input() attachments: IAttachmentData[] = [];\r\n\r\n  @Input() uploadValue = 'upload';\r\n  @Input() cancelValue = 'cancel';\r\n\r\n  @Input() showContinueUpload: boolean;\r\n  @Input() continueUpload: boolean;\r\n  @Input() continueUploadLabel = 'Continue previous loading';\r\n\r\n  /**\r\n   * In case the button icon source is not passed, the icon will be hidden.\r\n   */\r\n  @Input() resumeButtonIconSrc: string = null;\r\n  @Input() descriptionDragAndDrop = 'Drag and drop the file';\r\n  @Input() descriptionDragAndDropOr = 'or';\r\n  @Input() descriptionDragAndDropClickHere = 'Click here';\r\n\r\n  @Input() uploadIcon = '../assets/img/icon/upload/upload.svg';\r\n\r\n  /**\r\n   * The message must contain the string $var1$. It'll be replaced during runtime.\r\n   * I.e.: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit: $var1$'\r\n   */\r\n  @Input() invalidExtensionMessageSingular = 'The invalid file has not been added to the attachment list. Accepted file extensions: $var1$';\r\n  /**\r\n   * The message must contain the string $var1$. It'll be replaced during runtime.\r\n   * I.e.: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit: $var1$'\r\n   */\r\n  @Input() invalidExtensionMessagePlural = 'The invalid files have not been added to the attachment list. Accepted file extensions: $var1$';\r\n  /**\r\n   * The message must contain the string $var1$. It'll be replaced during runtime.\r\n   * I.e.: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit: $var1$'\r\n   */\r\n  @Input() duplicatedMessageSingular = 'The duplicated file has not been added to the attachment list. Rejected files: $var1$';\r\n  /**\r\n   * The message must contain the string $var1$. It'll be replaced during runtime.\r\n   * I.e.: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit: $var1$'\r\n   */\r\n  @Input() duplicatedMessagePlural = 'The duplicated files have not been added to the attachment list. Rejected files: $var1$';\r\n  /**\r\n   * The message must contain the string $var1$ and $var2$. It'll be replaced during runtime.\r\n   * I.e.: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit: $var1$'\r\n   */\r\n  @Input() invalidSizeMessageSingular = 'The current file is over $var1$KB and has not been added to the attachment list. Rejected files: $var2$';\r\n  /**\r\n   * The message must contain the string $var1$ and $var2$. It'll be replaced during runtime.\r\n   * I.e.: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit: $var1$'\r\n   */\r\n  @Input() invalidSizeMessagePlural =\r\n    'The files with size over $var1$KB have not been added to the attachment list. Rejected files: $var2$';\r\n\r\n  /**\r\n   * The message must contain the string $var1$. It'll be replaced during runtime.\r\n   * I.e.: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit: $var1$'\r\n   */\r\n  @Input() invalidLengthMessageSingular = 'You can just add one attachment file. Rejected files: $var1$';\r\n  /**\r\n   * The message must contain the string $var1$. It'll be replaced during runtime.\r\n   * I.e.: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit: $var1$'\r\n   */\r\n  @Input() invalidLengthMessagePlural = 'You can just add $var1$ attachment file. Rejected files: $var2$';\r\n\r\n  /**\r\n   * If maxNumberOfFiles value is greater than 1 or equal to -1, multiple files are enabled.\r\n   * Default value = -1.\r\n   */\r\n  @Input() maxNumberOfFiles = -1;\r\n  /**\r\n   * If maxSize value is calculated in KB.\r\n   * Default value = 46080 (45mb).\r\n   */\r\n  @Input() maxSize = 46080;\r\n  /**\r\n   * This field does not require to include the dot extension.\r\n   * Example: [\"psd\", .xlsx\", \"zip\", \".docx\", \".pptx\"]\r\n   */\r\n  @Input() acceptFileType: string[] = [];\r\n\r\n  constructor(public service: GlComponentModalUploadFileService) {}\r\n\r\n  ngOnInit(): void {\r\n    if (this.attachments.length > 0) {\r\n      this.service.attachmentItems$.next(this.attachments);\r\n    }\r\n  }\r\n\r\n  onCancel(): void {\r\n    this.service.currentValue$.next(false);\r\n    this.service.resolvePromise(false);\r\n    this.service.hide();\r\n  }\r\n  async onUpload(): Promise<void | unknown> {\r\n    if (this.service.attachmentItems.length === 0) {\r\n      return this.service.showError('Não existem arquivos anexados! Por favor, insira pelo menos um arquivo antes de continuar!');\r\n    }\r\n\r\n    const attachments: IAttachmentData[] = [...this.service.attachmentItems];\r\n\r\n    this.service.currentValue$.next(true);\r\n    this.service.resolvePromise(true);\r\n    this.service.hide();\r\n\r\n    await this.service.uploadAction(attachments);\r\n    this.service.uploadAction = null;\r\n  }\r\n\r\n  onModalKeyUp(e: KeyboardEvent): void | unknown {\r\n    if (e.key === 'Enter') {\r\n      return this.onUpload();\r\n    } else if (e.key === 'Escape') {\r\n      this.onCancel();\r\n    }\r\n  }\r\n}\r\n","@if(service.showModal) {\r\n  <div\r\n    (keydown)=\"onModalKeyUp($event)\"\r\n    id=\"modal\"\r\n    class=\"modal-container {{ service.modalClass }}\"\r\n    tabindex=\"-1\">\r\n    <div class=\"modal-main-content\">\r\n      <gl-component-modal-header\r\n        [title]=\"title\"\r\n        [subtitle]=\"subtitle\"\r\n        [modalLogo]=\"modalLogo\"\r\n      ></gl-component-modal-header>\r\n      <div class=\"modal-upload-container\">\r\n        <gl-component-input-drag-and-drop-simple\r\n          [resumeButtonIconSrc]=\"resumeButtonIconSrc\"\r\n          [uploadIcon]=\"uploadIcon\"\r\n          [maxSize]=\"maxSize\"\r\n          [showUploadButton]=\"false\"\r\n          [handleErrorMessage]=\"true\"\r\n\r\n          [descriptionDragAndDrop]=\"descriptionDragAndDrop\"\r\n          [descriptionDragAndDropOr]=\"descriptionDragAndDropOr\"\r\n          [descriptionDragAndDropClickHere]=\"descriptionDragAndDropClickHere\"\r\n\r\n          [invalidExtensionMessageSingular]=\"invalidExtensionMessageSingular\"\r\n          [invalidExtensionMessagePlural]=\"invalidExtensionMessagePlural\"\r\n          [duplicatedMessageSingular]=\"duplicatedMessageSingular\"\r\n          [duplicatedMessagePlural]=\"duplicatedMessagePlural\"\r\n\r\n          [invalidSizeMessageSingular]=\"invalidSizeMessageSingular\"\r\n          [invalidSizeMessagePlural]=\"invalidSizeMessagePlural\"\r\n\r\n          [invalidLengthMessageSingular]=\"invalidLengthMessageSingular\"\r\n          [invalidLengthMessagePlural]=\"invalidLengthMessagePlural\"\r\n\r\n          [maxNumberOfFiles]=\"maxNumberOfFiles\"\r\n          [acceptFileType]=\"acceptFileType\"\r\n          [readOnly]=\"readOnly\"\r\n\r\n          [attachmentItems]=\"service.attachmentItems\"\r\n          [showContinueUpload]=\"showContinueUpload\"\r\n          [continueUpload]=\"continueUpload\"\r\n          [continueUploadLabel]=\"continueUploadLabel\"\r\n\r\n          ($attachmentItems)=\"service.attachmentItems$.next($event)\"\r\n          ($continueUploadActive)=\"continueUpload = $event\"\r\n          (handleErrorMessageResult$)=\"service.showError($event)\"\r\n        ></gl-component-input-drag-and-drop-simple>\r\n      </div>\r\n      <div class=\"button-container\">\r\n        <gl-component-input-button-simple\r\n          class=\"cancel\"\r\n          (click)=\"onCancel()\"\r\n          [innerValue]=\"innerValueCancel\"\r\n          [value]=\"cancelValue\"\r\n        ></gl-component-input-button-simple>\r\n        <gl-component-input-button-simple\r\n          class=\"upload\"\r\n          (click)=\"onUpload()\"\r\n          [innerValue]=\"innerValueUpload\"\r\n          [value]=\"uploadValue\"\r\n        ></gl-component-input-button-simple>\r\n      </div>\r\n    </div>\r\n  </div>\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { GlNgInputsFrontendModule } from '../../../../gl-ng-inputs-frontend/src/lib/gl-ng-inputs-frontend.module';\r\n\r\nimport { GlComponentModalAlertComponent } from './alert/gl-component-modal-alert.component';\r\nimport { GlComponentModalAttachmentLinkComponent } from './attachment/link/gl-component-modal-attachment-link.component';\r\nimport { GlComponentModalHeaderComponent } from './header/gl-component-modal-header.component';\r\nimport { GlComponentModalLoadingComponent } from './loading/gl-component-modal-loading.component';\r\nimport { GlComponentModalUploadFileComponent } from './upload-file/gl-component-modal-upload-file.component';\r\n\r\n@NgModule({\r\n    imports: [\r\n    CommonModule,\r\n    GlNgInputsFrontendModule,\r\n    GlComponentModalAlertComponent,\r\n    GlComponentModalAttachmentLinkComponent,\r\n    GlComponentModalHeaderComponent,\r\n    GlComponentModalLoadingComponent,\r\n    GlComponentModalUploadFileComponent\r\n],\r\n    exports: [\r\n        GlComponentModalAlertComponent,\r\n        GlComponentModalAttachmentLinkComponent,\r\n        GlComponentModalHeaderComponent,\r\n        GlComponentModalLoadingComponent,\r\n        GlComponentModalUploadFileComponent\r\n    ]\r\n})\r\nexport class ComponentModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { ComponentModule } from './component/component.module';\r\n\r\n\r\n@NgModule({\r\n  declarations: [\r\n\r\n  ],\r\n  imports: [\r\n    ComponentModule\r\n],\r\n  exports: [\r\n    ComponentModule\r\n]\r\n})\r\nexport class GlNgModalsFrontendModule { }\r\n","import { AfterViewInit, Directive, ElementRef, Input } from '@angular/core';\r\n\r\n@Directive({\r\n    selector: '[glAutoFocus]',\r\n    standalone: true\r\n})\r\nexport class CoreDirectivesAutofocusDirective implements AfterViewInit {\r\n\r\n  @Input() focusInnerClass: string = null;\r\n\r\n  constructor(private elementRef: ElementRef) { }\r\n\r\n  ngAfterViewInit(): void {\r\n    if (this.focusInnerClass != null) {\r\n      this.elementRef?.nativeElement?.querySelector(this.focusInnerClass)?.focus();\r\n    } else {\r\n      this.elementRef?.nativeElement?.focus();\r\n    }\r\n  }\r\n}\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { NgOptimizedImage } from '@angular/common';\r\n\r\n@Component({\r\n  standalone: true,\r\n  selector: 'gl-components-modal-actions-item',\r\n  templateUrl: './gl-components-modal-actions-item.component.html',\r\n  imports: [\r\n    NgOptimizedImage\r\n  ],\r\n  styleUrls: ['./gl-components-modal-actions-item.component.scss']\r\n})\r\nexport class GlComponentsModalActionsItemComponent {\r\n  @Input() title: string;\r\n  @Input() icon: string;\r\n  @Input() red: boolean;\r\n  @Input() action: () => void;\r\n  @Input() hide: boolean;\r\n\r\n  @Output() $clicked: EventEmitter<null> = new EventEmitter();\r\n\r\n  constructor() { }\r\n\r\n  onClick(): void {\r\n    this.action();\r\n    this.$clicked.emit();\r\n  }\r\n}\r\n","@if (!hide){\r\n  <div class=\"action-item-container\" (click)=\"onClick()\">\r\n    <span class=\"action-title {{ red ? 'red' : '' }}\">{{ title }}</span>\r\n    <img\r\n      alt=\"Icon\"\r\n      class=\"action-icon\"\r\n      [src]=\"icon\">\r\n  </div>\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { IModalItemAction } from './item/gl-components-modal-actions-item.interface';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class GlComponentsModalActionsService {\r\n\r\n  readonly actions: IModalItemAction[] = [];\r\n  showModal: boolean;\r\n  modalClass: string;\r\n  resolvePromise;\r\n  binder;\r\n\r\n  container: Element;\r\n  closeButton: HTMLInputElement;\r\n\r\n  constructor() {}\r\n\r\n  _showContainer(visible: boolean) {\r\n    if (visible) {\r\n      this.setElements();\r\n    }\r\n  }\r\n\r\n  addAction(actions: IModalItemAction[], removeCurrent: boolean = false): void {\r\n    if (removeCurrent) {\r\n      this.clearActions();\r\n    }\r\n    this.actions.push(...actions);\r\n  }\r\n  removeAction(index: number, deleteCount: number = 1): void {\r\n    this.actions.splice(index, deleteCount);\r\n  }\r\n  clearActions(): void {\r\n    this.actions.splice(0, this.actions.length);\r\n  }\r\n\r\n  show(actions: IModalItemAction[], binder): Promise<boolean> {\r\n    this.binder = binder;\r\n    this.addAction(actions);\r\n    return this.modal(true);\r\n  }\r\n  hide(): void {\r\n    this.clearActions();\r\n    this.modal(false);\r\n  }\r\n\r\n  onModalKeyUp(e: KeyboardEvent): void {\r\n    if (e.key === 'Escape') {\r\n      this.hide();\r\n    }\r\n  }\r\n\r\n  private modal(show: boolean): Promise<boolean> {\r\n    return new Promise(resolve => {\r\n      this.resolvePromise = resolve;\r\n\r\n      if (show) {\r\n        this.showModal = show;\r\n      } else {\r\n        this.modalClass = 'hide-modal';\r\n        setTimeout(() => {\r\n          this.showModal = show;\r\n        }, 300);\r\n      }\r\n    });\r\n  }\r\n\r\n  private setElements(): void {\r\n    this.container = document.querySelector('#modal-actions-close-container') as HTMLElement;\r\n    this.closeButton = document.querySelector('#modal-actions-close-button');\r\n\r\n    setTimeout(() => {\r\n      this.modalClass = 'show-modal';\r\n\r\n      setTimeout(() => {\r\n        this.closeButton.focus();\r\n      }, 300)\r\n    }, 0)\r\n  }\r\n}\r\n","import { Component, ViewChild } from '@angular/core';\r\nimport { GlComponentsModalActionsService } from './gl-components-modal-actions.service';\r\nimport { GlComponentsModalActionsItemComponent } from './item/gl-components-modal-actions-item.component';\r\nimport { NgOptimizedImage } from '@angular/common';\r\n\r\n@Component({\r\n  standalone: true,\r\n  selector: 'gl-components-modal-actions',\r\n  templateUrl: './gl-components-modal-actions.component.html',\r\n  imports: [\r\n    GlComponentsModalActionsItemComponent,\r\n    NgOptimizedImage\r\n  ],\r\n  styleUrls: ['./gl-components-modal-actions.component.scss']\r\n})\r\n\r\nexport class GlComponentsModalActionsComponent {\r\n  @ViewChild('modalActionsCloseContainer') set modalActionsCloseContainer(container) {\r\n    if (container) {\r\n      this.service._showContainer(true);\r\n    }\r\n  }\r\n\r\n  constructor(public service: GlComponentsModalActionsService) { }\r\n}\r\n\r\n","@if(service.showModal){\r\n  <div\r\n    (keydown)=\"service.onModalKeyUp($event)\"\r\n    id=\"modal-actions-close-container\"\r\n    class=\"modal-container {{ service.modalClass }}\"\r\n    tabindex=\"-1\"\r\n    #modalActionsCloseContainer>\r\n\r\n    <div class=\"modal-main-content\">\r\n      <div class=\"action-main-container\">\r\n        @for(item of service.actions; track item.id) {\r\n          <gl-components-modal-actions-item\r\n            [title]=\"item.title\"\r\n            [icon]=\"item.icon\"\r\n            [red]=\"item.red\"\r\n            [hide]=\"item.hide\"\r\n            [action]=\"item.action\"\r\n            ($clicked)=\"service.hide()\"\r\n          ></gl-components-modal-actions-item>\r\n        }\r\n\r\n      </div>\r\n\r\n      <img\r\n        tabindex=\"100\"\r\n        id=\"modal-actions-close-button\"\r\n        alt=\"Close icon\"\r\n        class=\"close close-modal\"\r\n        src=\"assets/img/icon/menu/close.svg\"\r\n        (keydown)=\"service.onModalKeyUp($event)\"\r\n        (click)=\"service.hide()\">\r\n    </div>\r\n  </div>\r\n}\r\n\r\n","/*\r\n * Public API Surface of gl-ng-modals-frontend\r\n */\r\nexport { ComponentModule as GlNgModalsComponentModule } from './gl-ng-modals-frontend/src/lib/component/component.module';\r\nexport { GlNgModalsFrontendModule } from  './gl-ng-modals-frontend/src/lib/gl-ng-modals-frontend.module';\r\n\r\n// region interfaces\r\nexport { TTheme } from './gl-ng-modals-frontend/src/lib/interfaces/global.interface';\r\nexport { IModalItemAction } from './gl-ng-modals-frontend/src/lib/component/actions/item/gl-components-modal-actions-item.interface';\r\nexport { IAlertData } from './gl-ng-modals-frontend/src/lib/component/alert/gl-component-modal-alert.interface';\r\n// endregion\r\n\r\n// region directives\r\nexport { CoreDirectivesAutofocusDirective } from './gl-ng-modals-frontend/src/lib/core/directives/autofocus/core-directives-autofocus.directive';\r\n// endregion\r\n\r\n// region actions\r\nexport { GlComponentsModalActionsItemComponent } from './gl-ng-modals-frontend/src/lib/component/actions/item/gl-components-modal-actions-item.component';\r\nexport { GlComponentsModalActionsComponent } from './gl-ng-modals-frontend/src/lib/component/actions/gl-components-modal-actions.component';\r\nexport { GlComponentsModalActionsService } from './gl-ng-modals-frontend/src/lib/component/actions/gl-components-modal-actions.service';\r\n// endregion\r\n\r\n// region alert\r\nexport { GlComponentModalAlertComponent } from './gl-ng-modals-frontend/src/lib/component/alert/gl-component-modal-alert.component';\r\nexport { GlComponentModalAlertService } from './gl-ng-modals-frontend/src/lib/component/alert/gl-component-modal-alert.service';\r\n// endregion\r\n\r\n// region attachment\r\nexport { GlComponentModalAttachmentLinkComponent } from './gl-ng-modals-frontend/src/lib/component/attachment/link/gl-component-modal-attachment-link.component';\r\nexport { GlComponentModalAttachmentLinkService } from './gl-ng-modals-frontend/src/lib/component/attachment/link/gl-component-modal-attachment-link.service';\r\nexport { IAttachmentLink } from './gl-ng-modals-frontend/src/lib/component/attachment/link/gl-component-modal-attachment-link.interface';\r\n// endregion\r\n\r\n// region header\r\nexport { GlComponentModalHeaderComponent } from './gl-ng-modals-frontend/src/lib/component/header/gl-component-modal-header.component';\r\n// endregion\r\n\r\n// region loading\r\nexport { GlComponentModalLoadingComponent } from './gl-ng-modals-frontend/src/lib/component/loading/gl-component-modal-loading.component';\r\nexport { GlComponentModalLoadingService } from './gl-ng-modals-frontend/src/lib/component/loading/gl-component-modal-loading.service';\r\n// endregion\r\n\r\n// region Upload File\r\nexport { GlComponentModalUploadFileComponent } from './gl-ng-modals-frontend/src/lib/component/upload-file/gl-component-modal-upload-file.component';\r\nexport { GlComponentModalUploadFileService } from './gl-ng-modals-frontend/src/lib/component/upload-file/gl-component-modal-upload-file.service';\r\nexport { TModalUploadFunction } from './gl-ng-modals-frontend/src/lib/component/upload-file/gl-component-modal-upload-file.interface';\r\n// endregion\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { NgOptimizedImage } from '@angular/common';\r\n\r\n@Component({\r\n    selector: 'gl-component-navigation-tab-simple',\r\n    templateUrl: './gl-component-navigation-tab-simple.component.html',\r\n    styleUrls: ['./gl-component-navigation-tab-simple.component.scss'],\r\n    standalone: true,\r\n  imports: [NgOptimizedImage]\r\n})\r\nexport class GlComponentNavigationTabSimpleComponent {\r\n  @Input() tabActive: boolean;\r\n  @Input() showSeparator: boolean;\r\n  @Input() tabSequence: number;\r\n  @Input() tabDescription: string;\r\n  @Input() tabIsTheFirst: boolean;\r\n  @Input() tabIsTheLast: boolean;\r\n  @Input() tabEnabled = true;\r\n  @Input() safariStyle = true;\r\n\r\n  @Input() srcIcon: string = null;\r\n  @Input() showIcon = false;\r\n\r\n  @Output() activate$: EventEmitter<number> = new EventEmitter();\r\n\r\n  constructor() { }\r\n\r\n  activate(sequence: number): void {\r\n    if (this.tabEnabled) {\r\n      this.activate$.emit(sequence);\r\n    }\r\n  }\r\n}\r\n","<div\r\n  class=\"navigation-tab\"\r\n  (click)=\"activate(tabSequence)\"\r\n  [class.disabled]=\"tabEnabled\"\r\n  [class.active]=\"tabActive\"\r\n  [class.first-item]=\"tabIsTheFirst\"\r\n  [class.last-item]=\"tabIsTheLast\"\r\n  [class.safari-style]=\"safariStyle\">\r\n\r\n  <div class=\"tab-sequence\">\r\n    <span class=\"tab-sequence-content\">{{ tabSequence }}</span>\r\n  </div>\r\n  <span class=\"tab-description\">{{ tabDescription }}</span>\r\n  @if(showIcon) {\r\n    <img\r\n      [src]=\"srcIcon\"\r\n      class=\"navigation-tab-icon\"\r\n      alt=\"Tab icon\">\r\n  }\r\n\r\n</div>\r\n@if(!safariStyle) {\r\n  <div class=\"border-bottom\"></div>\r\n}\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { INavigationTab } from '../simple/gl-component-navigation-tab-simple.interface';\r\nimport { GlComponentNavigationTabSimpleComponent } from '../simple/gl-component-navigation-tab-simple.component';\r\nimport { NgStyle } from '@angular/common';\r\n\r\n@Component({\r\n    selector: 'gl-component-navigation-tab-container',\r\n    templateUrl: './gl-component-navigation-tab-container.component.html',\r\n    styleUrls: ['./gl-component-navigation-tab-container.component.scss'],\r\n    standalone: true,\r\n    imports: [GlComponentNavigationTabSimpleComponent, NgStyle]\r\n})\r\nexport class GlComponentNavigationTabContainerComponent {\r\n\r\n  @Input() navigationTabs: INavigationTab[];\r\n  @Output() activatedTab$: EventEmitter<number> = new EventEmitter();\r\n\r\n  constructor() { }\r\n\r\n  activate(sequence: number): void {\r\n    this.reset();\r\n    const active = this.navigationTabs.filter(x => x.sequence === sequence);\r\n    active[0].active = true;\r\n    this.activatedTab$.emit(sequence);\r\n  }\r\n\r\n  reset(): void {\r\n    for (const item of this.navigationTabs) {\r\n      item.active = false;\r\n    }\r\n  }\r\n\r\n  tabHovering(hovering: boolean, sequence: number, active: boolean): void {\r\n    const tab = document.querySelector(`#navigation-tab-${sequence}`) as HTMLDivElement;\r\n\r\n    if (!active) {\r\n      if (hovering) {\r\n        tab.style.zIndex = '990';\r\n      } else {\r\n        tab.style.zIndex = (100 - sequence).toString();\r\n      }\r\n    }\r\n  }\r\n}\r\n","@for(tab of navigationTabs; track tab.sequence) {\r\n  <gl-component-navigation-tab-simple\r\n    [tabEnabled]=\"tab.enabled\"\r\n    [tabSequence]=\"tab.sequence\"\r\n    [tabDescription]=\"tab.description\"\r\n    [tabActive]=\"tab.active\"\r\n    [showSeparator]=\"tab.showSeparator\"\r\n    [tabIsTheFirst]=\"tab.isTheFirst\"\r\n    [tabIsTheLast]=\"tab.isTheLast\"\r\n    [ngStyle]=\"{\r\n    'z-index': tab.active ? 1000 : (100 - tab.sequence)\r\n  }\"\r\n    [id]=\"'navigation-tab-' + tab.sequence\"\r\n    [showIcon]=\"tab.showIcon\"\r\n    [srcIcon]=\"tab.srcIcon\"\r\n    (mouseover)=\"tabHovering(true, tab.sequence, tab.active)\"\r\n    (mouseleave)=\"tabHovering(false, tab.sequence, tab.active)\"\r\n    (activate$)=\"activate($event)\"\r\n  ></gl-component-navigation-tab-simple>\r\n}\r\n\r\n","/*\r\n * Public API Surface of gl-ng-navigation-frontend\r\n */\r\n\r\n// region interfaces\r\nexport { TTheme } from './gl-ng-navigation-frontend/src/lib/interfaces/global.interface';\r\n// endregion\r\n\r\n// region simple\r\nexport { GlComponentNavigationTabSimpleComponent } from './gl-ng-navigation-frontend/src/lib/component/tab/simple/gl-component-navigation-tab-simple.component';\r\nexport { INavigationTab } from './gl-ng-navigation-frontend/src/lib/component/tab/simple/gl-component-navigation-tab-simple.interface';\r\n// endregion\r\n\r\n// region container\r\nexport { GlComponentNavigationTabContainerComponent } from './gl-ng-navigation-frontend/src/lib/component/tab/container/gl-component-navigation-tab-container.component';\r\n// endregion\r\n","import { AfterViewInit, Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { IItemsPerPage, IPageButtons, IPaging, TPagingThemeType, TPagingType } from './gl-component-paging.interface';\r\nimport { GlComponentInputButtonSimpleComponent } from '../../../../../gl-ng-inputs-frontend/src/lib/component/button/simple/gl-component-input-button-simple.component';\r\nimport { NgOptimizedImage } from '@angular/common';\r\n\r\n@Component({\r\n    selector: 'gl-component-paging',\r\n    templateUrl: './gl-component-paging.component.html',\r\n    styleUrls: ['./gl-component-paging.component.scss'],\r\n    standalone: true,\r\n  imports: [GlComponentInputButtonSimpleComponent, NgOptimizedImage]\r\n})\r\nexport class GlComponentPagingComponent implements AfterViewInit {\r\n  @Input() pageInfo: string;\r\n  @Input() hasNext: boolean;\r\n  @Input() hasPrevious: boolean;\r\n  @Input() type: TPagingThemeType = 'dark';\r\n  @Input() firstPageTitle = 'First page';\r\n  @Input() previousPageTitle = 'Previous page';\r\n  @Input() nextPageTitle = 'Next page';\r\n  @Input() lastPageTitle = 'Last page';\r\n  @Input() pageDescription = 'Page';\r\n  @Input() pageSize: number;\r\n  @Input() itemsPerPageDescriptions = 'Items per page';\r\n  @Input() pageSizeValue1 = 5;\r\n  @Input() pageSizeValue2 = 10;\r\n  @Input() pageSizeValue3 = 15;\r\n  @Input() pageSizeValue4 = 20;\r\n  @Input() pageSizeValue5 = 25;\r\n\r\n  @Input() pageButtons: IPageButtons[] = [];\r\n\r\n  @Output() pageChange$: EventEmitter<IPaging> = new EventEmitter();\r\n  @Output() setNumberOfItems$: EventEmitter<number> = new EventEmitter();\r\n  @Output() setPage$: EventEmitter<number> = new EventEmitter();\r\n\r\n  itemsPerPage: IItemsPerPage[] = [];\r\n  readonly firstIcon: string = '../assets/img/icon/paging/first.svg';\r\n  readonly previousIcon: string = '../assets/img/icon/paging/previous.svg';\r\n  readonly nextIcon: string = '../assets/img/icon/paging/next.svg';\r\n  readonly lastIcon: string = '../assets/img/icon/paging/last.svg';\r\n\r\n  constructor() {}\r\n\r\n  ngAfterViewInit(): void {\r\n    for (let i = 1; i <= 5; i++) {\r\n      const pageSize = +this[`pageSizeValue${i}`];\r\n\r\n      this.itemsPerPage.push({\r\n        id: this.itemsPerPage.length - 1,\r\n        title: `${pageSize} ${this.itemsPerPageDescriptions.toLowerCase()}`,\r\n        innerValue: pageSize?.toString(),\r\n        value: pageSize?.toString(),\r\n        theme: this.pageSize === pageSize ? 'active' : '',\r\n        pageSize\r\n      });\r\n    }\r\n  }\r\n\r\n  onPageChange(event: MouseEvent, type: TPagingType): void {\r\n    this.pageChange$.emit({ event, type });\r\n  }\r\n  setNumberOfItems(items: number): void {\r\n    this.itemsPerPage.map(x => x.theme = x.pageSize === items ? 'active' : '');\r\n    this.setNumberOfItems$.emit(items);\r\n  }\r\n  setPage(page: number): void {\r\n    this.setPage$.emit(page);\r\n  }\r\n}\r\n","<div class=\"pagination-container {{ type }}\">\r\n  <div class=\"pagination-buttons-container\">\r\n    @if(hasPrevious) {\r\n      <a id=\"first-page\" class=\"anchor-button\"\r\n         (click)=\"onPageChange($event, 'first')\"\r\n         [title]=\"firstPageTitle\">\r\n        <img\r\n          [src]=\"firstIcon\"\r\n          [alt]=\"firstPageTitle\">\r\n      </a>\r\n      <a id=\"prev-page\" class=\"anchor-button\"\r\n         (click)=\"onPageChange($event, 'previous')\"\r\n         [title]=\"previousPageTitle\">\r\n        <img\r\n          [src]=\"previousIcon\"\r\n          [alt]=\"previousPageTitle\">\r\n      </a>\r\n    }\r\n\r\n\r\n    <span id=\"page-info\">{{ pageInfo }}</span>\r\n    <div class=\"page-buttons-container\">\r\n      @for(button of pageButtons; track button.id) {\r\n        <gl-component-input-button-simple\r\n          [value]=\"button.page.toString()\"\r\n          [innerValue]=\"button.page.toString()\"\r\n          (click)=\"setPage(button.page)\"\r\n          [class]=\"button.active ? 'active' : ''\"\r\n          [title]=\"pageDescription + ' ' + button.page.toString()\"\r\n        ></gl-component-input-button-simple>\r\n      }\r\n    </div>\r\n\r\n    @if (hasNext) {\r\n      <a href=\"#\" id=\"next-page\" class=\"anchor-button\"\r\n         (click)=\"onPageChange($event, 'next')\"\r\n         [title]=\"nextPageTitle\">\r\n        <img\r\n          [src]=\"nextIcon\"\r\n          [alt]=\"nextPageTitle\">\r\n      </a>\r\n      <a href=\"#\" id=\"last-page\" class=\"anchor-button\"\r\n         (click)=\"onPageChange($event, 'last')\"\r\n         [title]=\"lastPageTitle\">\r\n        <img\r\n          [src]=\"lastIcon\"\r\n          [alt]=\"lastPageTitle\">\r\n      </a>\r\n    }\r\n  </div>\r\n\r\n  <div class=\"number-items-page\" >\r\n    <span class=\"label-page-items\">{{ itemsPerPageDescriptions }}</span>\r\n    @for(item of itemsPerPage; track item.id) {\r\n      <gl-component-input-button-simple\r\n        [title]=\"item.title\"\r\n        [innerValue]=\"item.innerValue\"\r\n        [value]=\"item.value\"\r\n        [theme]=\"item.theme\"\r\n        (click)=\"setNumberOfItems(item.pageSize)\"\r\n      ></gl-component-input-button-simple>\r\n    }\r\n  </div>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { GlNgInputsFrontendModule } from '../../../../gl-ng-inputs-frontend/src/lib/gl-ng-inputs-frontend.module';\r\nimport { GlComponentPagingComponent } from './paging/gl-component-paging.component';\r\n\r\n@NgModule({\r\n    imports: [\r\n        CommonModule,\r\n        GlNgInputsFrontendModule,\r\n        GlComponentPagingComponent\r\n    ],\r\n    exports: [\r\n        GlComponentPagingComponent\r\n    ]\r\n})\r\nexport class ComponentModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { ComponentModule } from './component/component.module';\r\n\r\n@NgModule({\r\n  declarations: [\r\n\r\n  ],\r\n  imports: [\r\n    ComponentModule\r\n  ],\r\n  exports: [\r\n    ComponentModule\r\n  ]\r\n})\r\nexport class GlNgPagingFrontendModule { }\r\n","/*\r\n * Public API Surface of gl-ng-paging-frontend\r\n */\r\nexport { ComponentModule as  GlNgPagingComponentModule } from './gl-ng-paging-frontend/src/lib/component/component.module';\r\nexport { GlNgPagingFrontendModule } from './gl-ng-paging-frontend/src/lib/gl-ng-paging-frontend.module';\r\n\r\n// region interfaces\r\nexport { TTheme } from './gl-ng-paging-frontend/src/lib/interfaces/global.interface';\r\n// endregion\r\n\r\n// region paging\r\nexport { GlComponentPagingComponent } from './gl-ng-paging-frontend/src/lib/component/paging/gl-component-paging.component';\r\nexport { IInitialFinalRange, IPageButtons, IPaging, TPagingType, TPagingThemeType, IItemsPerPage } from './gl-ng-paging-frontend/src/lib/component/paging/gl-component-paging.interface';\r\n// endregion\r\n\r\n","import { Component, Input } from '@angular/core';\r\nimport { TTheme } from '../../../../interfaces/global.interface';\r\nimport { NgOptimizedImage } from '@angular/common';\r\n\r\n@Component({\r\n    selector: 'gl-component-title-label-button-simple',\r\n    templateUrl: './gl-component-title-label-button-simple.component.html',\r\n    styleUrls: ['./gl-component-title-label-button-simple.component.scss'],\r\n    standalone: true,\r\n  imports: [NgOptimizedImage]\r\n})\r\nexport class GlComponentTitleLabelButtonSimpleComponent {\r\n\r\n  @Input() id: string;\r\n  @Input() alt: string;\r\n  @Input() src: string;\r\n  @Input() required = false;\r\n  @Input() theme: TTheme = '';\r\n  @Input() requiredFieldDescription = 'Required field';\r\n\r\n  constructor() { }\r\n}\r\n","<div class=\"label-button-container {{ theme }}\">\r\n  <div\r\n    [attr.alt]=\"alt\"\r\n    class=\"tooltip top\">\r\n    <img\r\n      class=\"label-button\"\r\n      [id]=\"id\"\r\n      [src]=\"src\"\r\n      [alt]=\"alt\">\r\n  </div>\r\n  @if(required) {\r\n    <img\r\n      src=\"../assets/img/icon/label/dot.svg\"\r\n      class=\"required-fill-dot\"\r\n      [title]=\"requiredFieldDescription\"\r\n      alt=\"Required fill icon\">\r\n  }\r\n</div>\r\n","/*\r\n * Public API Surface of gl-ng-titles-frontend\r\n */\r\n\r\n\r\n// region interfaces\r\nexport { TTheme } from './gl-ng-titles-frontend/src/lib/interfaces/global.interface';\r\n// endregion\r\n\r\n// region label\r\nexport { GlComponentTitleLabelSimpleComponent } from './gl-ng-titles-frontend/src/lib/component/label/simple/gl-component-title-label-simple.component';\r\nexport { GlComponentTitleLabelButtonSimpleComponent } from './gl-ng-titles-frontend/src/lib/component/label/button/simple/gl-component-title-label-button-simple.component';\r\nexport { GlComponentTitleLabelButtonContainerComponent } from './gl-ng-titles-frontend/src/lib/component/label/button/container/gl-component-title-label-button-container.component';\r\nexport { THorizontalAlignment, TLabelTheme } from './gl-ng-titles-frontend/src/lib/component/label/simple/gl-component-title-label-simple.interface';\r\n// endregion\r\n\r\n// region page\r\nexport { GlComponentTitlePageComponent } from './gl-ng-titles-frontend/src/lib/component/page/gl-component-title-page.component';\r\n// endregion\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n\r\nimport { GlNgErrorMessageFrontendModule } from '../../../../wrapper_error_message';\r\nimport { GlNgFiltersFrontendModule } from '../../../../wrapper_filters';\r\n\r\n\r\nimport { GlNgInputsFrontendModule } from '../../../../wrapper_inputs';\r\n\r\n\r\n\r\nimport { GlNgModalsFrontendModule } from '../../../../wrapper_modals';\r\n\r\nimport { GlNgPagingFrontendModule } from '../../../../wrapper_paging';\r\n\r\n\r\n@NgModule({\r\n  declarations: [],\r\n  imports: [\r\n    CommonModule,\r\n    GlNgErrorMessageFrontendModule,\r\n    GlNgFiltersFrontendModule,\r\n    GlNgInputsFrontendModule,\r\n    GlNgModalsFrontendModule,\r\n    GlNgPagingFrontendModule\r\n],\r\n  exports: [\r\n    GlNgErrorMessageFrontendModule,\r\n    GlNgFiltersFrontendModule,\r\n    GlNgInputsFrontendModule,\r\n    GlNgModalsFrontendModule,\r\n    GlNgPagingFrontendModule\r\n]\r\n})\r\nexport class ComponentModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { ComponentModule } from './component/component.module';\r\n\r\n@NgModule({\r\n  declarations: [\r\n\r\n  ],\r\n  imports: [\r\n    ComponentModule\r\n  ],\r\n  exports: [\r\n    ComponentModule\r\n  ]\r\n})\r\nexport class GlNgFrontendModule { }\r\n","/*\r\n * Public API Surface of gl-ng-frontend\r\n */\r\n\r\nexport {\r\n  TAttachmentItemType,\r\n  IImageString,\r\n  IImageUpdate,\r\n  GlComponentAttachmentImagePreviewComponent,\r\n  GlComponentAttachmentImagePreviewService,\r\n  GlComponentAttachmentItemComponent,\r\n} from './wrapper_attachments';\r\n\r\nexport {\r\n  TButtonToolTipWidth,\r\n  TButtonToolTipVerticalPosition,\r\n  TButtonToolTipHorizontalPosition,\r\n  TButtonToolTipBorder,\r\n  IImageButtonTooltip,\r\n  IButtonImageSimple,\r\n  GlComponentButtonAttachmentFileComponent,\r\n  GlComponentButtonAttachmentFileService,\r\n  GlComponentButtonAttachmentLinkComponent,\r\n  GlComponentButtonImageSimpleComponent,\r\n  GlComponentButtonImageTooltipComponent,\r\n  GlComponentButtonInterfaceComponent,\r\n  GlComponentButtonMenuSimpleComponent,\r\n  GlComponentButtonMenuTooltipComponent,\r\n  IMenuButton\r\n} from './wrapper_buttons';\r\n\r\nexport {\r\n  GlNgErrorMessageComponentModule,\r\n  TErrorMessagePosition,\r\n  GlComponentErrorMessageComponent,\r\n  GlNgErrorMessageFrontendModule,\r\n  GlNgErrorMessageViewModule,\r\n  GlViewErrorMessageComponent\r\n} from './wrapper_error_message';\r\n\r\nexport {\r\n  GlNgFiltersComponentModule,\r\n  GlComponentFilterComponent,\r\n  GlComponentFilterContainerComponent,\r\n  GlComponentFilterService,\r\n  GlNgFiltersFrontendModule\r\n} from './wrapper_filters';\r\n\r\nexport {\r\n  GlComponentFooterContainerComponent,\r\n  GlComponentFooterSimpleComponent,\r\n} from './wrapper_footer';\r\n\r\nexport {\r\n  GlComponentHeaderDefaultComponent,\r\n  THeaderTheme\r\n} from './wrapper_headers';\r\n\r\nexport {\r\n  GlNgInputsComponentModule,\r\n  THorizontalAlignment,\r\n  TInputType,\r\n  ISimpleTextResult,\r\n  TInputTextTheme,\r\n  IInputTextStepButton,\r\n  TStepType,\r\n  IDropdownSettings,\r\n  DROPDOWN_CONTROL_VALUE_ACCESSOR,\r\n  TAttachmentUploadResult,\r\n  IDragAndDropVariables,\r\n  IDragAndDropAddedResult,\r\n  IDatePickerMonthYearOutput,\r\n  IDatePickerOutput,\r\n  TInputButtonType,\r\n  TInputButtonSimpleClass,\r\n  ISearchOutput,\r\n  IUpdateOptionList,\r\n  ISetAutocompleteValue,\r\n  IResetAutocompleteValue,\r\n  CoreDirectivesClickOutsideDirective,\r\n  CoreDirectivesDragAndDropDirective,\r\n  CorePipesListFilterPipe,\r\n  DropDownListItem,\r\n  GlComponentInputAutocompleteLabelComponent,\r\n  GlComponentInputAutocompleteSimpleComponent,\r\n  GlComponentInputAutocompleteSimpleService,\r\n  GlComponentInputButtonHyperlinkComponent,\r\n  GlComponentInputButtonSimpleComponent,\r\n  GlComponentInputCheckBoxLabelComponent,\r\n  GlComponentInputCheckBoxSimpleComponent,\r\n  GlComponentInputDatepickerLabelComponent,\r\n  GlComponentInputDatepickerSimpleDayMonthYearComponent,\r\n  GlComponentInputDatepickerSimpleMonthYearComponent,\r\n  GlComponentInputDragAndDropSimpleComponent,\r\n  GlComponentInputDropdownLabelComponent,\r\n  GlComponentInputDropdownSimpleComponent,\r\n  GlComponentInputOptionSimpleComponent,\r\n  GlComponentInputSwitchComponent,\r\n  GlComponentInputTextAreaLabelComponent,\r\n  GlComponentInputTextAreaSimpleComponent,\r\n  GlComponentInputTextLabelButtonContainerComponent,\r\n  GlComponentInputTextLabelSimpleComponent,\r\n  GlComponentInputTextSimpleComponent,\r\n  GlComponentInputTextSimpleSearchComponent,\r\n  GlComponentInputTextSimpleService,\r\n  GlComponentInputTextSimpleWithStepComponent,\r\n  GlNgInputsFrontendModule,\r\n  TInputTextMask,\r\n  ISimpleTextAreaResult\r\n} from './wrapper_inputs';\r\n\r\nexport {\r\n  TListReorder,\r\n  IListRemoveItem,\r\n  GlComponentInputListItemRemoveComponent,\r\n  GlComponentInputListItemUpDownComponent,\r\n  IMoveDownResult\r\n} from './wrapper_lists';\r\n\r\nexport {\r\n  TLogoVerticalPosition,\r\n  TLogoHorizontalPosition,\r\n  GlComponentLogoTextOnlyComponent,\r\n  GlComponentLogoSquareComponent,\r\n} from './wrapper_logos';\r\n\r\nexport {\r\n  GlComponentMenuService,\r\n  IMenuItem,\r\n  TMenuItemTheme,\r\n  TMenuPosition,\r\n  IMenuItemComplex,\r\n  GlComponentMenuBackgroundComponent,\r\n  GlComponentMenuComponent,\r\n  GlComponentMenuItemComponent,\r\n  TUrlTarget,\r\n  IModalItemAction,\r\n  GlComponentModalActionsService,\r\n  GlComponentModalActionsItemComponent,\r\n  GlComponentModalActionsComponent\r\n} from './wrapper_menus';\r\n\r\nexport {\r\n  GlNgModalsComponentModule,\r\n  GlComponentModalUploadFileService,\r\n  TModalUploadFunction,\r\n  GlComponentModalLoadingService,\r\n  GlComponentModalAlertService,\r\n  GlComponentModalAttachmentLinkService,\r\n  CoreDirectivesAutofocusDirective,\r\n  GlComponentModalAlertComponent,\r\n  GlComponentModalAttachmentLinkComponent,\r\n  GlComponentModalHeaderComponent,\r\n  GlComponentModalLoadingComponent,\r\n  GlComponentModalUploadFileComponent,\r\n  GlNgModalsFrontendModule,\r\n  IAttachmentLink\r\n} from './wrapper_modals';\r\n\r\nexport {\r\n  GlComponentNavigationTabSimpleComponent,\r\n  GlComponentNavigationTabContainerComponent,\r\n  INavigationTab\r\n} from './wrapper_navigation';\r\n\r\nexport {\r\n  GlNgPagingComponentModule,\r\n  TPagingType,\r\n  TPagingThemeType,\r\n  IPaging,\r\n  GlComponentPagingComponent,\r\n  GlNgPagingFrontendModule,\r\n  IPageButtons,\r\n  IItemsPerPage,\r\n  IInitialFinalRange\r\n} from './wrapper_paging';\r\nexport {\r\n  GlComponentTitleLabelButtonContainerComponent,\r\n  GlComponentTitleLabelButtonSimpleComponent,\r\n  GlComponentTitleLabelSimpleComponent,\r\n  GlComponentTitlePageComponent,\r\n  TLabelTheme,\r\n} from './wrapper_titles';\r\n\r\nexport { ComponentModule } from './gl-ng-frontend/src/lib/component/component.module';\r\nexport { GlNgFrontendModule } from './gl-ng-frontend/src/lib/gl-ng-frontend.module';\r\n\r\n// region interfaces\r\nexport { TTheme } from './gl-ng-frontend/src/lib/interfaces/global.interface';\r\n// endregion\r\n\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './wrapper_index';\n"],"names":["i1.GlComponentModalAlertService","i1.GlComponentAttachmentImagePreviewService","i1.GlComponentButtonAttachmentFileService","i1.GlComponentModalAttachmentLinkService","i1.GlComponentInputAutocompleteSimpleService","i4","i1.GlComponentInputTextSimpleService","i1.CorePipesListFilterPipe","i2","ComponentModule","i1","i2.GlComponentFilterService","i2.GlComponentMenuService","i3","i1.GlComponentMenuService","i1.GlComponentModalActionsService","i1.GlComponentModalLoadingService","i1.GlComponentModalUploadFileService","i1.GlComponentsModalActionsService"],"mappings":"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"}