{"version":3,"file":"laserfiche-lf-ui-components-internal-shared.mjs","sources":["../../../projects/ui-components/internal-shared/app-localization.service.ts","../../../projects/ui-components/internal-shared/lf-loader/lf-loader.component.ts","../../../projects/ui-components/internal-shared/lf-loader/lf-loader.component.html","../../../projects/ui-components/internal-shared/lf-loader/lf-loader.module.ts","../../../projects/ui-components/internal-shared/lf-modals/lf-popup-modal/lf-popup-modal.component.ts","../../../projects/ui-components/internal-shared/lf-modals/lf-popup-modal/lf-popup-modal.component.html","../../../projects/ui-components/internal-shared/lf-modals/lf-modals.module.ts","../../../projects/ui-components/internal-shared/validation-utils.ts","../../../projects/ui-components/internal-shared/filter-utils.ts","../../../projects/ui-components/internal-shared/general-dialog-layout/general-dialog-layout.component.ts","../../../projects/ui-components/internal-shared/general-dialog-layout/general-dialog-layout.component.html","../../../projects/ui-components/internal-shared/general-dialog-layout/general-dialog-layout.module.ts","../../../projects/ui-components/internal-shared/lf-toast-message/lf-toast-message.component.ts","../../../projects/ui-components/internal-shared/lf-toast-message/lf-toast-message.component.html","../../../projects/ui-components/internal-shared/lf-toast-message/lf-toast-message.module.ts","../../../projects/ui-components/internal-shared/lf-internal-shared-public-api.ts","../../../projects/ui-components/internal-shared/laserfiche-lf-ui-components-internal-shared.ts"],"sourcesContent":["// Copyright (c) Laserfiche.\n// Licensed under the MIT License. See LICENSE in the project root for license information.\n\nimport { Injectable } from '@angular/core';\nimport { LfLocalizationService, StringUtils } from '@laserfiche/lf-js-utils';\nimport { combineLatest, Observable, Subject } from 'rxjs';\nimport { concatMap, map, startWith } from 'rxjs/operators';\nimport * as strings_ar from './strings/ar.json';\nimport * as strings_en from './strings/en.json';\nimport * as strings_es from './strings/es.json';\nimport * as strings_fr from './strings/fr.json';\nimport * as strings_frFR from './strings/fr-FR.json';\nimport * as strings_it from './strings/it.json';\nimport * as strings_id from './strings/id.json';\nimport * as strings_ptBR from './strings/pt-BR.json';\nimport * as strings_th from './strings/th.json';\nimport * as strings_cs from './strings/cs.json';\nimport * as strings_de from './strings/de.json';\nimport * as strings_el from './strings/el.json';\nimport * as strings_ja from './strings/ja.json';\nimport * as strings_ko from './strings/ko.json';\nimport * as strings_ms from './strings/ms.json';\nimport * as strings_nl from './strings/nl.json';\nimport * as strings_ro from './strings/ro.json';\nimport * as strings_sr_Latn from './strings/sr-Latn.json';\nimport * as strings_tr from './strings/tr.json';\nimport * as strings_vi from './strings/vi.json';\nimport * as strings_zhHans from './strings/zh-Hans.json';\nimport * as strings_zhHant from './strings/zh-Hant.json';\n\nimport * as strings_ar_common from '@laserfiche/lf-resource-library/resources/laserfiche-base/ar-EG.json';\nimport * as strings_cs_common from '@laserfiche/lf-resource-library/resources/laserfiche-base/cs-CZ.json';\nimport * as strings_de_common from '@laserfiche/lf-resource-library/resources/laserfiche-base/de-DE.json';\nimport * as strings_el_common from '@laserfiche/lf-resource-library/resources/laserfiche-base/el-GR.json';\nimport * as strings_id_common from '@laserfiche/lf-resource-library/resources/laserfiche-base/id-ID.json';\nimport * as strings_ja_common from '@laserfiche/lf-resource-library/resources/laserfiche-base/ja-JP.json';\nimport * as strings_ko_common from '@laserfiche/lf-resource-library/resources/laserfiche-base/ko-KR.json';\nimport * as strings_ms_common from '@laserfiche/lf-resource-library/resources/laserfiche-base/ms-MY.json';\nimport * as strings_nl_common from '@laserfiche/lf-resource-library/resources/laserfiche-base/nl-NL.json';\nimport * as strings_ro_common from '@laserfiche/lf-resource-library/resources/laserfiche-base/ro-RO.json';\nimport * as strings_srLatn_common from '@laserfiche/lf-resource-library/resources/laserfiche-base/sr-Latn.json';\nimport * as strings_tr_common from '@laserfiche/lf-resource-library/resources/laserfiche-base/tr-TR.json';\nimport * as strings_vi_common from '@laserfiche/lf-resource-library/resources/laserfiche-base/vi-VN.json';\nimport * as strings_en_common from '@laserfiche/lf-resource-library/resources/laserfiche-base/en-US.json';\nimport * as strings_es_common from '@laserfiche/lf-resource-library/resources/laserfiche-base/es-MX.json';\nimport * as strings_fr_common from '@laserfiche/lf-resource-library/resources/laserfiche-base/fr-CA.json';\nimport * as strings_frFR_common from '@laserfiche/lf-resource-library/resources/laserfiche-base/fr-FR.json';\nimport * as strings_it_common from '@laserfiche/lf-resource-library/resources/laserfiche-base/it-IT.json';\nimport * as strings_ptBR_common from '@laserfiche/lf-resource-library/resources/laserfiche-base/pt-BR.json';\nimport * as strings_th_common from '@laserfiche/lf-resource-library/resources/laserfiche-base/th-TH.json';\nimport * as strings_zhHans_common from '@laserfiche/lf-resource-library/resources/laserfiche-base/zh-Hans.json';\nimport * as strings_zhHant_common from '@laserfiche/lf-resource-library/resources/laserfiche-base/zh-Hant.json';\n\n\n/** @internal */\n@Injectable({\n  providedIn: 'root',\n})\nexport class AppLocalizationService {\n\n  localResources: Map<string, object> = new Map<string, object>([\n    ['ar-EG', (strings_ar as any).default],\n    ['cs-CZ', (strings_cs as any).default],\n    ['de-DE', (strings_de as any).default],\n    ['el-GR', (strings_el as any).default],\n    ['en-US', (strings_en as any).default],\n    ['es-MX', (strings_es as any).default],\n    ['fr-CA', (strings_fr as any).default],\n    ['fr-FR', (strings_frFR as any).default],\n    ['id-ID', (strings_id as any).default],\n    ['it-IT', (strings_it as any).default],\n    ['ja-JP', (strings_ja as any).default],\n    ['ko-KR', (strings_ko as any).default],\n    ['ms-MY', (strings_ms as any).default],\n    ['nl-NL', (strings_nl as any).default],\n    ['pt-BR', (strings_ptBR as any).default],\n    ['ro-RO', (strings_ro as any).default],\n    ['sr-Latn', (strings_sr_Latn as any).default],\n    ['th-TH', (strings_th as any).default],\n    ['tr-TR', (strings_tr as any).default],\n    ['vi-VN', (strings_vi as any).default],\n    ['zh-Hans', (strings_zhHans as any).default],\n    ['zh-Hant', (strings_zhHant as any).default],\n  ]);\n\n  resourceLibraryResources: Map<string, object> = new Map<string, object>([\n    ['ar-EG', (strings_ar_common as any).default],\n    ['cs-CZ', (strings_cs_common as any).default],\n    ['de-DE', (strings_de_common as any).default],\n    ['el-GR', (strings_el_common as any).default],\n    ['en-US', (strings_en_common as any).default],\n    ['es-MX', (strings_es_common as any).default],\n    ['fr-CA', (strings_fr_common as any).default],\n    ['fr-FR', (strings_frFR_common as any).default],\n    ['id-ID', (strings_id_common as any).default],\n    ['it-IT', (strings_it_common as any).default],\n    ['ja-JP', (strings_ja_common as any).default],\n    ['ko-KR', (strings_ko_common as any).default],\n    ['ms-MY', (strings_ms_common as any).default],\n    ['nl-NL', (strings_nl_common as any).default],\n    ['pt-BR', (strings_ptBR_common as any).default],\n    ['ro-RO', (strings_ro_common as any).default],\n    ['sr-Latn', (strings_srLatn_common as any).default],\n    ['th-TH', (strings_th_common as any).default],\n    ['tr-TR', (strings_tr_common as any).default],\n    ['vi-VN', (strings_vi_common as any).default],\n    ['zh-Hans', (strings_zhHans_common as any).default],\n    ['zh-Hant', (strings_zhHant_common as any).default],\n  ]);\n  localLocalizationService = new LfLocalizationService(this.localResources);\n  lfCommonLocalizationService = new LfLocalizationService(this.resourceLibraryResources);\n  internalGetString: Subject<void> = new Subject<void>();\n\n  constructor() {\n    window.addEventListener('message', async (ev: MessageEvent) => {\n      if (ev.origin === window.origin) {\n        try {\n          const langData = ev.data;\n          const langObj = JSON.parse(langData);\n          if (langObj) {\n            const language = langObj['lf-localization-service-set-language'];\n            const debug = langObj['lf-localization-service-debug-mode'];\n            if (language) {\n              await this.setLanguageAsync(language);\n            }\n            if (debug !== undefined) {\n              this.lfCommonLocalizationService.debugMode = debug;\n              this.localLocalizationService.debugMode = debug;\n              this.internalGetString.next();\n            }\n          }\n        }\n        catch (err: any) {\n          // Do not log, this will happen on most message events\n        }\n      }\n    });\n  }\n\n  async setLanguageAsync(language: string) {\n    this.lfCommonLocalizationService.setLanguage(language);\n    this.localLocalizationService.setLanguage(language);\n    this.internalGetString.next();\n  }\n\n  languageChanged(): Observable<string | undefined> {\n    const currentLanguage = this.lfCommonLocalizationService.currentResource?.language;\n    return this.internalGetString.pipe(startWith(currentLanguage), map(() => { return this.lfCommonLocalizationService.currentResource?.language; }));\n  }\n\n  getStringLaserficheObservable(key: string, params?: string[]): Observable<string> {\n    const keyedString = this.getResourceStringLaserfiche(key, params);\n    return this.internalGetString.pipe(\n      startWith(keyedString),\n      map(() => {\n        const newString = this.getResourceStringLaserfiche(key, params);\n        return newString;\n      })\n    );\n  }\n\n  getStringComponentsObservable(key: string, params?: string[]): Observable<string> {\n    const keyedString = this.getResourceStringComponents(key, params);\n    return this.internalGetString.pipe(\n      startWith(keyedString),\n      map(() => {\n        const newString = this.getResourceStringComponents(key, params);\n        return newString;\n      })\n    );\n  }\n\n  getStringLaserficheWithObservableParams(key: string, params?: Observable<string>[]): Observable<string> {\n    const genericParams = params?.map((param, index) => {\n      return `{${index}}`;\n    });\n    const translatedString = this.getStringLaserficheObservable(key, genericParams);\n    const toReturn = this.addParamsToString(params, translatedString);\n    return toReturn;\n  }\n\n  getStringComponentsWithObservableParams(key: string, params?: Observable<string>[]): Observable<string> {\n    const genericParams = params?.map((param, index) => {\n      return `{${index}}`;\n    });\n    const translatedString = this.getStringComponentsObservable(key, genericParams);\n    const observableString = this.addParamsToString(params, translatedString);\n    return observableString;\n  }\n\n  getResourceStringLaserfiche(key: string, params?: string[]): string {\n    return this.lfCommonLocalizationService.getString(key, params);\n  }\n\n  getResourceStringComponents(key: string, params?: string[]): string {\n    return this.localLocalizationService.getString(key, params);\n  }\n\n  private addParamsToString(params: Observable<string>[] | undefined, translatedString: Observable<string>) {\n    let latestParamsObs: Observable<string[]> | undefined;\n    if (params) {\n      latestParamsObs = combineLatest(params);\n    }\n\n    const toReturn = translatedString.pipe(\n      concatMap((stringToFormat) => {\n        if (latestParamsObs) {\n          const formattedString = latestParamsObs.pipe(\n            map((latestParams) => {\n              try {\n                const newStringFormat = StringUtils.formatString(stringToFormat, latestParams);\n                return newStringFormat;\n              } catch (err: any) {\n                console.warn('Unable to format string', err.message);\n                return stringToFormat;\n              }\n            })\n          );\n          return formattedString;\n        }\n        return stringToFormat;\n      })\n    );\n    return toReturn;\n  }\n\n  getString(key: string, params?: string[]): string {\n    return this.lfCommonLocalizationService.getString(key, params);\n  }\n\n}\n","// Copyright (c) Laserfiche.\r\n// Licensed under the MIT License. See LICENSE in the project root for license information.\r\n\r\nimport { Component } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { AppLocalizationService } from '../app-localization.service';\r\n\r\n/**\r\n * @internal\r\n * Not for public use\r\n */\r\n@Component({\r\n  selector: 'lf-loader-component',\r\n  templateUrl: './lf-loader.component.html',\r\n  styleUrls: ['./lf-loader.component.css']\r\n})\r\nexport class LfLoaderComponent {\r\n\r\n  /** @internal */\r\n  constructor(\r\n    /**@internal */\r\n    private localizationService: AppLocalizationService\r\n  ) {\r\n  }\r\n\r\n  readonly LOADING: Observable<string> = this.localizationService.getStringLaserficheObservable('LOADING');\r\n\r\n}\r\n","<!--Copyright (c) Laserfiche.\r\nLicensed under the MIT License. See LICENSE in the project root for license information.-->\r\n\r\n<i class=\"loader\"></i>\r\n<span class=\"lf-loader-text\">{{LOADING | async}}</span>\r\n","// Copyright (c) Laserfiche.\r\n// Licensed under the MIT License. See LICENSE in the project root for license information.\r\n\r\nimport { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { LfLoaderComponent } from './lf-loader.component';\r\n\r\n/**\r\n * @internal\r\n * Not for public use\r\n */\r\n@NgModule({\r\n  declarations: [LfLoaderComponent],\r\n  imports: [CommonModule],\r\n  providers: [],\r\n  bootstrap: [LfLoaderComponent],\r\n  exports: [LfLoaderComponent],\r\n  schemas: [CUSTOM_ELEMENTS_SCHEMA],\r\n})\r\nexport class LfLoaderModule { }\r\n","// Copyright (c) Laserfiche.\r\n// Licensed under the MIT License. See LICENSE in the project root for license information.\r\n\r\nimport { Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\n\r\n/**\r\n * @internal\r\n * Not for public use\r\n */\r\n@Component({\r\n  selector: 'lf-popup-modal-component',\r\n  templateUrl: './lf-popup-modal.component.html',\r\n  styleUrls: ['./lf-popup-modal.component.css']\r\n})\r\nexport class LfPopupModalComponent {\r\n  @Input() data!: PopupModalData;\r\n  @Output() buttonClick: EventEmitter<string> = new EventEmitter<string>();\r\n\r\n  /** @internal */\r\n  onConfirmClick(): void {\r\n    this.buttonClick.emit(PopupModalResult.CONFIRM);\r\n  }\r\n\r\n  /** @internal */\r\n  onCancelClick(): void {\r\n    this.buttonClick.emit(PopupModalResult.CANCEL);\r\n  }\r\n\r\n  /** @internal */\r\n  onNoClick(): void {\r\n    this.buttonClick.emit(PopupModalResult.NO);\r\n  }\r\n}\r\n\r\n/** @internal */\r\nexport interface PopupModalData {\r\n  popupTitle: Observable<string>;\r\n  popupMessage: Observable<string>;\r\n  confirmButtonText?: Observable<string>;\r\n  cancelButtonText?: Observable<string>;\r\n  noButtonText?: Observable<string>;\r\n  data?: any;\r\n}\r\n\r\n/** @internal */\r\nexport enum PopupModalResult {\r\n  CONFIRM = 'CONFIRM',\r\n  NO='NO',\r\n  CANCEL='CANCEL'\r\n}\r\n","<!--Copyright (c) Laserfiche.\r\nLicensed under the MIT License. See LICENSE in the project root for license information.-->\r\n\r\n<div *ngIf=\"data\">\r\n    <span class=\"lf-dialog-title lf-popup-dialog-title\">{{data.popupTitle | async}}</span>\r\n    <div class=\"lf-dialog-message\">\r\n        <p>{{data.popupMessage | async}}</p>\r\n    </div>\r\n    <div class=\"lf-dialog-actions\">\r\n        <button *ngIf=\"data.confirmButtonText\" class=\"lf-button primary-button dialog-button\"\r\n            (click)=\"onConfirmClick()\" cdkFocusInitial>{{data.confirmButtonText | async}}</button>\r\n        <button *ngIf=\"data.noButtonText\" class=\"lf-button sec-button dialog-button\"\r\n            (click)=\"onNoClick()\">{{data.noButtonText | async}}</button>\r\n        <button *ngIf=\"data.cancelButtonText\" class=\"lf-button sec-button dialog-button\"\r\n            (click)=\"onCancelClick()\">{{data.cancelButtonText | async}}</button>\r\n    </div>\r\n</div>\r\n","// Copyright (c) Laserfiche.\r\n// Licensed under the MIT License. See LICENSE in the project root for license information.\r\n\r\nimport { NgModule } from '@angular/core';\r\nimport { LfPopupModalComponent } from './lf-popup-modal/lf-popup-modal.component';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatInputModule } from '@angular/material/input';\r\n\r\n/**\r\n * @internal\r\n * Not for public use\r\n */\r\n@NgModule({\r\n  declarations: [\r\n    LfPopupModalComponent\r\n  ],\r\n  imports: [\r\n    MatFormFieldModule,\r\n    FormsModule,\r\n    CommonModule,\r\n    MatInputModule,\r\n  ],\r\n  exports: [\r\n    LfPopupModalComponent\r\n  ],\r\n  bootstrap: [\r\n    LfPopupModalComponent\r\n  ]\r\n})\r\nexport class LfModalsModule { }\r\n","// Copyright (c) Laserfiche.\n// Licensed under the MIT License. See LICENSE in the project root for license information.\n\nimport { ValidatorFn, AbstractControl } from '@angular/forms';\nimport { LfMetadataValidationUtils } from '@laserfiche/lf-js-utils';\n\n/** @internal */\nexport enum ValidationRule {\n    LONG_INT = 'longint',\n    MAX_LENGTH = 'maxlength',\n    NUMBER = 'number',\n    PATTERN = 'pattern',\n    NUMERIC = 'numeric',\n    REQUIRED = 'required',\n    SHORT_INT = 'shortint',\n    TIME = 'time',\n    DATEPICKER_PARSE = 'datepickerParse',\n    DATETIME_PICKER_PARSE = 'datetimePickerParse'\n}\n\n// @dynamic\n/** @internal */\nexport class ValidationUtils {\n\n    /** Only one error will be displayed at a time (in this priority order) */\n    static validationRulesInPriorityOrder: ValidationRule[] = [\n        ValidationRule.DATEPICKER_PARSE,\n        ValidationRule.DATETIME_PICKER_PARSE,\n        ValidationRule.TIME,\n        ValidationRule.REQUIRED,\n        ValidationRule.MAX_LENGTH,\n        ValidationRule.PATTERN,\n        ValidationRule.NUMERIC,\n        ValidationRule.NUMBER,\n        ValidationRule.LONG_INT,\n        ValidationRule.SHORT_INT,\n    ];\n\n    static numericValidator(constraint: string): ValidatorFn {\n        const validatorFn: ValidatorFn = (control: AbstractControl): { [key: string]: any } | null => {\n            // Don't try to match regex if there is no value\n            if (!control.value) {\n                return null;\n            }\n            const validationFailedExplanation = { numeric: { value: control.value } };\n            const matchesConstraint = LfMetadataValidationUtils.evaluateNumericValidationExpression(control.value, constraint);\n            return matchesConstraint ? null : validationFailedExplanation;\n        };\n        return validatorFn;\n    }\n\n    static generalRegexValidator(regex: RegExp, ruleName?: string): ValidatorFn {\n        const validatorFn: ValidatorFn = (control: AbstractControl): { [key: string]: any } | null => {\n            // Don't try to match regex if there is no value\n            if (!control.value) {\n                return null;\n            }\n            ruleName = ruleName ?? ValidationRule.PATTERN; // default regex validation key\n            const validationFailedExplanation = {\n                [ruleName]: { value: control.value },\n            };\n            const matchesRegex = regex.test(control.value);\n            return matchesRegex ? null : validationFailedExplanation;\n        };\n        return validatorFn;\n    }\n\n    static requiredValidator(): ValidatorFn {\n        const validatorFn: ValidatorFn = (control: AbstractControl): { [key: string]: any } | null => {\n            // Don't try to match regex if there is no value\n            const validationFailedExplanation = {\n                ['required']: { value: control.value },\n            };\n            if (!control.value) {\n                return validationFailedExplanation;\n            }\n            const isEmptyString = LfMetadataValidationUtils.isNullOrEmpty(control.value.toString());\n            return isEmptyString ? validationFailedExplanation : null;\n        };\n        return validatorFn;\n    }\n\n    static createTimeValidator(): ValidatorFn {\n        const regexAMPM: string = `([0][0-9]|[1][0-2]):[0-5][0-9]:[0-5][0-9] ([AMP]){2}`;\n        const regex24Hour: string = `([01]?[0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]`;\n        const regexNoSeconds: string = `([01]?[0-9]|2[0-3]):[0-5][0-9]`;\n        const timePattern = new RegExp(`${regexAMPM}|${regex24Hour}|${regexNoSeconds}`);\n        return ValidationUtils.generalRegexValidator(timePattern, 'time');\n    }\n}\n","// Copyright (c) Laserfiche.\r\n// Licensed under the MIT License. See LICENSE in the project root for license information.\r\n\r\ninterface ObjectWithName {\r\n    name: string;\r\n}\r\n\r\n/** @internal */\r\nexport function filterObjectsByName<T extends ObjectWithName>(nodesToFilter?: T[], filterText?: string): T[] | undefined {\r\n    if (!filterText) {\r\n        return nodesToFilter;\r\n    }\r\n    else {\r\n        const lowercaseFilterText: string = filterText.toLowerCase();\r\n        return nodesToFilter?.filter(node => {\r\n            if (node.name) {\r\n                const lowercaseName: string = node.name.toLowerCase();\r\n                return lowercaseName.includes(lowercaseFilterText);\r\n            }\r\n            return false;\r\n        });\r\n    }\r\n}\r\n","// Copyright (c) Laserfiche.\r\n// Licensed under the MIT License. See LICENSE in the project root for license information.\r\n\r\nimport { Component } from '@angular/core';\r\n/**\r\n * @internal\r\n * Not for public use\r\n */\r\n@Component({\r\n  selector: 'lf-general-dialog-layout',\r\n  templateUrl: './general-dialog-layout.component.html',\r\n  styleUrls: ['./general-dialog-layout.component.css'],\r\n})\r\nexport class GeneralDialogLayoutComponent {}\r\n","<!--Copyright (c) Laserfiche.\r\nLicensed under the MIT License. See LICENSE in the project root for license information.-->\r\n\r\n<div class=\"wrapper\">\r\n  <div class=\"header\">\r\n    <ng-content select=\".dialog-header\"></ng-content>\r\n  </div>\r\n\r\n  <div class=\"content-box\">\r\n    <ng-content select=\".dialog-content\"></ng-content>\r\n  </div>\r\n\r\n  <div class=\"footer\">\r\n    <ng-content select=\".dialog-footer\"></ng-content>\r\n  </div>\r\n</div>\r\n","// Copyright (c) Laserfiche.\r\n// Licensed under the MIT License. See LICENSE in the project root for license information.\r\n\r\nimport { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { GeneralDialogLayoutComponent } from './general-dialog-layout.component';\r\n\r\n/**\r\n * @internal\r\n * Not for public use\r\n */\r\n@NgModule({\r\n  declarations: [GeneralDialogLayoutComponent],\r\n  imports: [CommonModule],\r\n  providers: [],\r\n  bootstrap: [GeneralDialogLayoutComponent],\r\n  exports: [GeneralDialogLayoutComponent],\r\n  schemas: [CUSTOM_ELEMENTS_SCHEMA],\r\n})\r\nexport class GeneralDialogLayoutModule { }\r\n","// Copyright (c) Laserfiche.\r\n// Licensed under the MIT License. See LICENSE in the project root for license information.\r\n\r\nimport { Component, Input } from '@angular/core';\r\n\r\n/** @internal */\r\nexport enum LfMessageToastTypes {\r\n  Error = 'Error',\r\n  Warning = 'Warning',\r\n  Validation = 'Validation',\r\n  Informational = 'Informational',\r\n}\r\n\r\n/** @internal */\r\nexport interface LfToastMessage {\r\n  message: string;\r\n  timeToShow?: number;\r\n  type: LfMessageToastTypes;\r\n  noIcon: boolean;\r\n  hideMessage?: boolean;\r\n  id?: string;\r\n}\r\n\r\n/** @internal */\r\n@Component({\r\n  selector: 'lf-toast-message',\r\n  templateUrl: './lf-toast-message.component.html',\r\n  styleUrls: ['./lf-toast-message.component.css'],\r\n})\r\nexport class LfToastMessageComponent {\r\n  @Input()\r\n  set messages(messages: LfToastMessage[]) {\r\n    if (typeof messages === 'undefined') {\r\n      return;\r\n    }\r\n    for (const message of messages) {\r\n      let messageId = message.id;\r\n      if (!messageId) {\r\n        messageId = message.id = Math.random().toString();\r\n      }\r\n\r\n      this.allMessages.push(message);\r\n      // Errors and Warnings will not auto dismiss\r\n      if (\r\n        (message.type === LfMessageToastTypes.Validation || message.type === LfMessageToastTypes.Informational) &&\r\n        message.timeToShow &&\r\n        message.timeToShow > 0\r\n      ) {\r\n        window.setTimeout(this._removeToast.bind(this, messageId), message.timeToShow);\r\n      }\r\n    }\r\n  }\r\n\r\n  allMessages: LfToastMessage[];\r\n\r\n  constructor() {\r\n    this.allMessages = [];\r\n  }\r\n\r\n  _computeTypeIcon(type: LfMessageToastTypes): string {\r\n    switch (type) {\r\n      case LfMessageToastTypes.Validation:\r\n        return 'check_circle_outline';\r\n      case LfMessageToastTypes.Warning:\r\n        return 'warning_amber';\r\n      case LfMessageToastTypes.Informational:\r\n        return 'info';\r\n      default:\r\n        return 'error_outline';\r\n    }\r\n  }\r\n\r\n  _closeToast(messageId: string) {\r\n    this._removeToast(messageId);\r\n  }\r\n\r\n  _removeToast(messageId: string) {\r\n    const idx = this.allMessages.findIndex((message) => message.id === messageId);\r\n    if (idx !== -1) {\r\n      this.allMessages.splice(idx, 1);\r\n    }\r\n  }\r\n\r\n  clearToasts(toastFilter?: LfMessageToastTypes) {\r\n    this.allMessages = toastFilter ? this.allMessages.filter((message) => message.type !== toastFilter) : [];\r\n  }\r\n}\r\n","<!--Copyright (c) Laserfiche.\r\nLicensed under the MIT License. See LICENSE in the project root for license information.-->\r\n\r\n<div\r\n  *ngFor=\"let message of allMessages; index as idx\"\r\n  class=\"toast-message message-holder lf-flexbox-col\"\r\n  [ngClass]=\"{\r\n    error: message.type === 'Error',\r\n    warning: message.type === 'Warning',\r\n    validation: message.type === 'Validation',\r\n    informational: message.type === 'Informational'\r\n  }\"\r\n>\r\n  <div class=\"lf-flexbox-row lf-flexbox-center both-axis\">\r\n    <span\r\n      class=\"material-icons-outlined\"\r\n      style=\"flex: 0 0 auto\"\r\n      [ngClass]=\"{\r\n        warningIcon: message.type === 'Warning',\r\n        'hide-icon': message.noIcon\r\n      }\"\r\n      [attr.aria-label]=\"message.type\"\r\n    >\r\n      {{ _computeTypeIcon(message.type) }}\r\n    </span>\r\n    <div\r\n      class=\"message-text lf-flex-item lf-flexbox-row\"\r\n      [ngClass]=\"{\r\n        error: message.type === 'Error',\r\n        warning: message.type === 'Warning',\r\n        validation: message.type === 'Validation',\r\n        informational: message.type === 'Informational',\r\n        'no-left-padding': message.noIcon\r\n      }\"\r\n    >\r\n      <div class=\"message-wrapper\">\r\n        {{ message.message }}\r\n      </div>\r\n    </div>\r\n    <button\r\n      id=\"close-btn\"\r\n      (click)=\"_closeToast(message.id)\"\r\n      style=\"flex: 0 0 auto\"\r\n      [ngClass]=\"{\r\n        warningIcon: message.type === 'Warning'\r\n      }\"\r\n    >\r\n      <span class=\"material-icons-outlined\" aria-label=\"close\"> close </span>\r\n    </button>\r\n  </div>\r\n</div>\r\n","// Copyright (c) Laserfiche.\r\n// Licensed under the MIT License. See LICENSE in the project root for license information.\r\n\r\nimport { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { LfToastMessageComponent } from './lf-toast-message.component';\r\n/**\r\n * @internal\r\n * Not for public use\r\n */\r\n@NgModule({\r\n  declarations: [LfToastMessageComponent],\r\n  imports: [CommonModule],\r\n  providers: [],\r\n  bootstrap: [LfToastMessageComponent],\r\n  exports: [LfToastMessageComponent],\r\n  schemas: [CUSTOM_ELEMENTS_SCHEMA],\r\n})\r\nexport class LfToastMessageModule { }\r\n","// Copyright (c) Laserfiche.\r\n// Licensed under the MIT License. See LICENSE in the project root for license information.\r\n\r\nexport * from './lf-loader/lf-loader.module';\r\nexport * from './lf-loader/lf-loader.component';\r\n\r\nexport * from './lf-modals/lf-modals.module';\r\nexport * from './lf-modals/lf-popup-modal/lf-popup-modal.component';\r\n\r\nexport * from './app-localization.service';\r\n\r\nexport * from './validation-utils';\r\n\r\nexport * from './filter-utils';\r\n\r\nexport * from './general-dialog-layout/general-dialog-layout.module';\r\nexport * from './general-dialog-layout/general-dialog-layout.component';\r\n\r\nexport * from './lf-toast-message/lf-toast-message.module';\r\nexport * from './lf-toast-message/lf-toast-message.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './lf-internal-shared-public-api';\n"],"names":["strings_ar.default","strings_cs.default","strings_de.default","strings_el.default","strings_en.default","strings_es.default","strings_fr.default","strings_frFR.default","strings_id.default","strings_it.default","strings_ja.default","strings_ko.default","strings_ms.default","strings_nl.default","strings_ptBR.default","strings_ro.default","strings_sr_Latn.default","strings_th.default","strings_tr.default","strings_vi.default","strings_zhHans.default","strings_zhHant.default","i1.AppLocalizationService","i2"],"mappings":"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"}