@pepperi-addons/ngx-lib 0.4.0-angular14.40 → 0.4.0-angular14.43
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/address/address.component.mjs +1 -1
- package/esm2020/attachment/attachment.component.mjs +1 -1
- package/esm2020/checkbox/checkbox.component.mjs +1 -1
- package/esm2020/color/color-picker.component.mjs +1 -1
- package/esm2020/color/color.component.mjs +1 -1
- package/esm2020/date/date.component.mjs +1 -1
- package/esm2020/field-title/field-title.component.mjs +6 -3
- package/esm2020/form/internal-button.component.mjs +1 -1
- package/esm2020/image/image.component.mjs +1 -1
- package/esm2020/images-filmstrip/images-filmstrip.component.mjs +1 -1
- package/esm2020/link/link.component.mjs +1 -1
- package/esm2020/menu/menu.component.mjs +3 -3
- package/esm2020/quantity-selector/quantity-selector.component.mjs +2 -2
- package/esm2020/rich-html-textarea/rich-html-textarea.component.mjs +1 -1
- package/esm2020/select/select.component.mjs +1 -1
- package/esm2020/signature/signature.component.mjs +1 -1
- package/esm2020/slider/slider.component.mjs +1 -1
- package/esm2020/textarea/textarea.component.mjs +1 -1
- package/esm2020/textbox/textbox.component.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-address.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-address.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-attachment.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-attachment.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-checkbox.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-checkbox.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-color.mjs +2 -2
- package/fesm2015/pepperi-addons-ngx-lib-color.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-date.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-date.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-field-title.mjs +5 -2
- package/fesm2015/pepperi-addons-ngx-lib-field-title.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-form.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-form.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-image.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-image.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-images-filmstrip.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-images-filmstrip.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-link.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-link.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-menu.mjs +2 -2
- package/fesm2015/pepperi-addons-ngx-lib-menu.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-quantity-selector.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-quantity-selector.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-rich-html-textarea.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-rich-html-textarea.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-select.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-select.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-signature.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-signature.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-slider.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-slider.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-textarea.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-textarea.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-textbox.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-textbox.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-address.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-address.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-attachment.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-attachment.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-checkbox.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-checkbox.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-color.mjs +2 -2
- package/fesm2020/pepperi-addons-ngx-lib-color.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-date.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-date.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-field-title.mjs +5 -2
- package/fesm2020/pepperi-addons-ngx-lib-field-title.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-form.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-form.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-image.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-image.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-images-filmstrip.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-images-filmstrip.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-link.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-link.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-menu.mjs +2 -2
- package/fesm2020/pepperi-addons-ngx-lib-menu.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-quantity-selector.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-quantity-selector.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-rich-html-textarea.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-rich-html-textarea.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-select.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-select.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-signature.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-signature.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-slider.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-slider.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-textarea.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-textarea.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-textbox.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-textbox.mjs.map +1 -1
- package/field-title/field-title.component.d.ts +2 -1
- package/package.json +1 -1
- package/src/core/style/components/general.scss +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pepperi-addons-ngx-lib-quantity-selector.mjs","sources":["../../../projects/ngx-lib/quantity-selector/quantity-selector-validation.directive.ts","../../../projects/ngx-lib/quantity-selector/quantity-selector.component.ts","../../../projects/ngx-lib/quantity-selector/quantity-selector.component.html","../../../projects/ngx-lib/quantity-selector/quantity-selector.pipes.ts","../../../projects/ngx-lib/quantity-selector/quantity-selector.module.ts","../../../projects/ngx-lib/quantity-selector/public-api.ts","../../../projects/ngx-lib/quantity-selector/pepperi-addons-ngx-lib-quantity-selector.ts"],"sourcesContent":["import { getLocaleNumberSymbol, NumberSymbol } from '@angular/common';\nimport {\n Directive,\n ElementRef,\n HostListener,\n Input,\n OnInit,\n} from '@angular/core';\nimport { PepValidatorService } from '@pepperi-addons/ngx-lib';\n\n@Directive({\n selector: '[pepQsValidation]',\n})\nexport class PepQuantitySelectorValidationDirective implements OnInit {\n @Input() allowDecimal: boolean;\n\n previousValue = '';\n\n constructor(\n private hostElement: ElementRef,\n private validatorService: PepValidatorService\n ) {}\n\n ngOnInit() {\n //\n }\n\n @HostListener('change', ['$event'])\n onChange(e) {\n this.validateValue(this.hostElement.nativeElement.value);\n }\n\n @HostListener('keydown', ['$event'])\n onKeyDown(e: KeyboardEvent) {\n const originalValue: string = e.target['value'];\n\n // save value before keydown event\n this.previousValue = originalValue;\n\n const isNumber = this.validatorService.isNumber(e, this.allowDecimal);\n if (isNumber) return;\n else e.preventDefault();\n }\n\n validateValue(value: string): void {\n const newValue = this.validatorService.validateNumber(\n value,\n this.allowDecimal\n );\n this.hostElement.nativeElement['value'] = newValue ? newValue : 0;\n }\n}\n","import {\n Component,\n OnInit,\n OnChanges,\n OnDestroy,\n Input,\n Output,\n EventEmitter,\n ViewChild,\n ElementRef,\n ChangeDetectorRef,\n ChangeDetectionStrategy,\n Renderer2,\n AfterViewInit,\n} from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport {\n trigger,\n state,\n style,\n animate,\n transition,\n} from '@angular/animations';\nimport {\n PepLayoutType,\n PepStyleType,\n PepCustomizationService,\n PepHorizontalAlignment,\n DEFAULT_HORIZONTAL_ALIGNMENT,\n IPepFieldClickEvent,\n PepQuantitySelectorFieldType,\n PepQuantitySelectorField,\n PepUtilitiesService,\n} from '@pepperi-addons/ngx-lib';\nimport { BehaviorSubject, fromEvent, Subject } from 'rxjs';\nimport { debounceTime, distinctUntilChanged, takeUntil } from 'rxjs/operators';\nimport { TranslateService } from '@ngx-translate/core';\n\n@Component({\n selector: 'pep-quantity-selector',\n templateUrl: './quantity-selector.component.html',\n styleUrls: ['./quantity-selector.component.scss', './quantity-selector.component.theme.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [\n trigger('showHide', [\n state(\n 'show',\n style({\n opacity: 1,\n transform: 'scale(1)',\n })\n ),\n state(\n 'hide',\n style({\n opacity: 0,\n transform: 'scale(0)',\n })\n ),\n transition('show => hide', animate('250ms ease-out')),\n transition('hide => show', animate('250ms ease-in')),\n ]),\n ],\n})\nexport class PepQuantitySelectorComponent\n implements OnChanges, OnInit, AfterViewInit, OnDestroy {\n public static ENTER_CHILDREN = '[EnterChildren]';\n public static ENTER_PACKAGE = '[EnterPackage]';\n public static PLUS = '[+]';\n public static MINUS = '[-]';\n\n @Input() key = '';\n\n private _value = null;\n @Input()\n set value(value: string) {\n if (!value) {\n value = '';\n }\n\n this._value = value;\n this.setFormattedValue(value);\n }\n get value(): string {\n return this._value;\n }\n\n private _formattedValue = null;\n @Input()\n set formattedValue(value: string) {\n // if (!value) {\n // value = '';\n // }\n\n // if (this._calculateFormattedValue) {\n // this._calculateFormattedValue = false;\n // }\n\n // this.setFormattedValue(value);\n }\n get formattedValue(): string {\n return this._formattedValue;\n }\n\n @Input() label = '';\n @Input() type: PepQuantitySelectorFieldType = 'qs';\n @Input() mandatory = false;\n @Input() disabled = false;\n @Input() readonly = false;\n\n private _textColor = '';\n @Input()\n set textColor(value: string) {\n this._textColor = value;\n this.isCaution = value === '#FF0000';\n }\n get textColor(): string {\n return this._textColor;\n }\n\n @Input() xAlignment: PepHorizontalAlignment = DEFAULT_HORIZONTAL_ALIGNMENT;\n @Input() rowSpan = 1;\n \n private _allowDecimal = false;\n @Input() \n set allowDecimal(value: boolean) {\n this._allowDecimal = value;\n\n if (this.value) {\n this.setFormattedValue(this.value);\n }\n }\n get allowDecimal(): boolean {\n return this._allowDecimal;\n }\n\n @Input() additionalValue = '';\n\n private _notificationInfo: any;\n @Input()\n set notificationInfo(value: any) {\n this._notificationInfo = value;\n\n const messages = value && value > 0 ? JSON.parse(value).Messages : '';\n if (messages && messages.length > 0) {\n // Replace the msg keys.\n for (const msg of messages) {\n if (msg.Key === 'Inventory_Limit_Msg') {\n msg.Key = 'MESSAGES.ERROR_INVENTORY_LIMIT';\n } else if (msg.Key === 'Case_Quantity_Limit_Msg') {\n msg.Key = 'MESSAGES.ERROR_CASE_QUANTITY_LIMIT';\n } else if (msg.Key === 'Min_Quantity_Limit_Msg') {\n msg.Key = 'MESSAGES.ERROR_MIN_QUANTITY_LIMIT';\n } else if (msg.Key === 'Max_Quantity_Limit_Msg') {\n msg.Key = 'MESSAGES.ERROR_MAX_QUANTITY_LIMIT';\n }\n }\n\n this.messages = messages;\n\n const fieldControl = this.form.controls[this.key];\n fieldControl.setErrors({\n serverError: 'Error',\n });\n\n this.sameElementInTheWantedRow = null;\n setTimeout(() => {\n if (this.QSInput && this.QSInput.nativeElement) {\n this.QSInput.nativeElement.focus();\n }\n }, 150);\n }\n }\n get notificationInfo(): any {\n return this._notificationInfo;\n }\n\n private _visible = true;\n @Input()\n set visible(visible: boolean) {\n this._visible = visible;\n if (visible) {\n this.renderer.removeClass(\n this.element.nativeElement,\n 'hidden-element'\n );\n } else {\n this.renderer.addClass(\n this.element.nativeElement,\n 'hidden-element'\n );\n }\n }\n get visible(): boolean {\n return this._visible;\n }\n\n controlType = 'qs';\n\n @Input() form: FormGroup = null;\n @Input() showTitle = true;\n @Input() renderTitle = true;\n @Input() layoutType: PepLayoutType = 'form';\n @Input() isActive = false;\n\n // Get default style from theme.\n @Input()\n styleType: PepStyleType = document.documentElement.style.getPropertyValue(\n PepCustomizationService.STYLE_QS_KEY\n ) as PepStyleType; //'strong';\n\n @Output()\n valueChange: EventEmitter<string> = new EventEmitter<string>();\n\n @Output()\n elementClick: EventEmitter<IPepFieldClickEvent> = new EventEmitter<IPepFieldClickEvent>();\n\n @ViewChild('QSCont') QSCont: ElementRef;\n @ViewChild('QSInput') QSInput: ElementRef;\n\n private _calculateFormattedValue = true;\n get calculateFormattedValue(): boolean {\n return this._calculateFormattedValue;\n }\n\n private readonly _destroyed: Subject<void>;\n private qsWidthSubject: BehaviorSubject<number>;\n lastQsContClientWidth = 0;\n showQsBtn = true;\n\n standAlone = false;\n isInFocus = false;\n isMatrixFocus = false;\n\n isCaution = false;\n messages: Array<any> = null;\n\n sameElementInTheWantedRow = null;\n\n isEmptyKey = false;\n\n constructor(\n private cd: ChangeDetectorRef,\n private customizationService: PepCustomizationService,\n private renderer: Renderer2,\n private element: ElementRef,\n private translate: TranslateService,\n private utilitiesService: PepUtilitiesService\n ) {\n this._destroyed = new Subject();\n this.qsWidthSubject = new BehaviorSubject(0);\n }\n\n setForm() {\n const pepField = new PepQuantitySelectorField({\n key: this.key,\n value: this.value,\n mandatory: this.mandatory,\n readonly: this.readonly,\n disabled: this.disabled,\n });\n this.form = this.customizationService.getDefaultFromGroup(pepField);\n }\n\n private setFormattedValue(value: string) {\n if (this._calculateFormattedValue) {\n if (this.allowDecimal) {\n this._formattedValue = this.utilitiesService.formatDecimal(value);\n } else {\n this._formattedValue = this.utilitiesService.formatNumber(value);\n }\n } else {\n this._formattedValue = value;\n }\n \n this.updateFormFieldValue();\n }\n\n private updateFormFieldValue() {\n this.customizationService.updateFormFieldValue(\n this.form,\n this.key,\n this.formattedValue\n );\n }\n\n get displayValue(): string {\n const res = this.isInFocus\n ? parseFloat(this.value).toString()\n : this.formattedValue;\n return res;\n }\n\n protected getDestroyer() {\n return takeUntil(this._destroyed);\n }\n\n ngOnInit(): void {\n if (this.form === null) {\n if (this.key === '') {\n this.isEmptyKey = true;\n }\n\n this.standAlone = true;\n this.setForm();\n\n this.renderer.addClass(\n this.element.nativeElement,\n PepCustomizationService.STAND_ALONE_FIELD_CLASS_NAME\n );\n\n if (!this.renderTitle) {\n this.renderer.addClass(\n this.element.nativeElement,\n PepCustomizationService.STAND_ALONE_FIELD_NO_SPACING_CLASS_NAME\n );\n }\n }\n\n this.qsWidthSubject\n .asObservable()\n .pipe(this.getDestroyer(), distinctUntilChanged())\n .subscribe((qsWidth: number) => {\n this.setupQsButtons(qsWidth);\n });\n\n this.updateFormFieldValue();\n }\n\n ngAfterViewInit() {\n //\n }\n\n ngAfterViewChecked(): void {\n this.setQsView();\n }\n\n ngOnChanges(changes: any): void {\n // Bug fix for addons when the key is '' in the ngOnInit for some reson\n if (this.isEmptyKey && this.key !== '') {\n this.setForm();\n }\n\n setTimeout(() => {\n this.focusToTheSameElementInTheWantedRow();\n }, 150);\n }\n\n ngOnDestroy(): void {\n this._destroyed.next();\n this._destroyed.complete();\n }\n\n get getAdditionalValue(): string {\n return this.additionalValue.length > 0 ? 'show' : 'hide';\n }\n\n getParentByClass(el, parentSelector /* optional */): any {\n // If no parentSelector defined will bubble up all the way to *document*\n if (parentSelector === undefined) {\n parentSelector = document;\n }\n\n let p = el.parentNode;\n\n while (\n p &&\n !p?.classList?.contains(parentSelector) &&\n parentSelector !== document\n ) {\n const o = p;\n p = o?.parentNode || null;\n }\n\n return p?.className.indexOf(parentSelector) > -1 ? p : null;\n }\n\n getSameElementInTheWantedRowByClassName(event: any, isNext = true): any {\n const eventTarget = event.target || event.srcElement;\n let sameElementInTheWantedRowByClassName;\n\n let parentSelector;\n if (this.layoutType === 'table') {\n parentSelector = this.getParentByClass(eventTarget, 'table-row');\n } else if (this.layoutType === 'card') {\n parentSelector = this.getParentByClass(eventTarget, 'card-view');\n if (!parentSelector) {\n parentSelector = this.getParentByClass(\n eventTarget,\n 'line-view'\n );\n }\n }\n\n if (\n parentSelector.nextElementSibling === null &&\n parentSelector.previousElementSibling === null\n ) {\n sameElementInTheWantedRowByClassName = null;\n } else {\n if (isNext) {\n if (parentSelector.nextElementSibling === null) {\n sameElementInTheWantedRowByClassName = parentSelector.parentElement.querySelectorAll(\n '[name=' + this.key + ']'\n )[0];\n } else {\n sameElementInTheWantedRowByClassName = parentSelector.nextElementSibling.querySelectorAll(\n '[name=' + this.key + ']'\n )[0];\n }\n } else {\n if (parentSelector.previousElementSibling === null) {\n const elementsList = parentSelector.parentElement.querySelectorAll(\n '[name=' + this.key + ']'\n );\n sameElementInTheWantedRowByClassName =\n elementsList[elementsList.length - 1];\n } else {\n sameElementInTheWantedRowByClassName = parentSelector.previousElementSibling.querySelectorAll(\n '[name=' + this.key + ']'\n )[0];\n }\n }\n }\n\n return sameElementInTheWantedRowByClassName;\n }\n\n setSameElementInTheWantedRow(event: any, isNext = true): void {\n // Navigate to the QS in the next row.\n if (this.layoutType === 'card' || this.layoutType === 'table') {\n this.sameElementInTheWantedRow = this.getSameElementInTheWantedRowByClassName(\n event,\n isNext\n );\n }\n\n this.QSInput.nativeElement.blur();\n }\n\n focusToTheSameElementInTheWantedRow(): void {\n if (this.sameElementInTheWantedRow) {\n const elem = this.sameElementInTheWantedRow;\n // If this is regular item (qs and not button) .\n if (elem instanceof HTMLInputElement && elem.type === 'text') {\n elem.click();\n elem.select();\n } else {\n const parentElem = elem.parentNode;\n parentElem.click();\n elem.focus();\n }\n this.sameElementInTheWantedRow = null;\n }\n }\n\n cleanError(): void {\n const fieldControl = this.form.controls[this.key];\n\n // Clean the error message\n if (this.messages && this.messages.length > 0) {\n this.messages = this.notificationInfo = null;\n fieldControl.setErrors(null);\n }\n }\n\n onMatrixMouseEnter(event: any): void {\n this.isMatrixFocus = true;\n }\n\n onMatrixMouseleave(event: any): void {\n this.isMatrixFocus = false;\n }\n\n onMatrixClick(event: any): void {\n this.isInFocus = true;\n\n if (this.QSInput && this.QSInput.nativeElement) {\n this.QSInput.nativeElement.focus();\n }\n }\n\n onMatrixBlur(event: any): void {\n if (\n !event.relatedTarget ||\n event.relatedTarget.className.indexOf('qs') < 0\n ) {\n this.isMatrixFocus = false;\n }\n\n this.onBlur(event);\n }\n\n onFocus(event: any): void {\n this.isInFocus = true;\n }\n\n isDifferentValue(value: string): boolean {\n let res = false;\n\n const currentValue = this.utilitiesService.coerceNumberProperty(\n this.value\n );\n const newValue = this.utilitiesService.coerceNumberProperty(value);\n\n res = currentValue !== newValue;\n\n return res;\n }\n\n onBlur(event: any): void {\n this.isInFocus = false;\n this.cleanError();\n const value = event.target ? event.target.value : event;\n\n if (value !== this.value && this.isDifferentValue(value)) {\n this.value = value;\n\n // // If the user is setting the formatted value then set the value till the user format it and return it back.\n // if (!this._calculateFormattedValue) {\n // this._formattedValue = value;\n // }\n\n this.valueChange.emit(this.value);\n } else {\n this.focusToTheSameElementInTheWantedRow();\n }\n }\n\n onKeydown(event): any {\n const keyboardEvent = event as KeyboardEvent;\n\n if (keyboardEvent.key === 'Enter') {\n this.setSameElementInTheWantedRow(\n keyboardEvent,\n !keyboardEvent.shiftKey\n );\n return true;\n }\n }\n\n increment(event): void {\n if (this.standAlone) {\n this.value = this.utilitiesService.incrementNumber(this.value);\n }\n\n this.elementClick.emit({\n key: this.key,\n value: PepQuantitySelectorComponent.PLUS,\n controlType: this.controlType,\n eventWhich: event.which,\n });\n event.stopPropagation();\n }\n\n decrement(event): void {\n if (this.standAlone) {\n this.value = this.utilitiesService.decrementNumber(this.value);\n }\n\n this.elementClick.emit({\n key: this.key,\n value: PepQuantitySelectorComponent.MINUS,\n controlType: this.controlType,\n eventWhich: event.which,\n });\n event.stopPropagation();\n }\n\n enterChildren(event): void {\n this.elementClick.emit({\n key: this.key,\n value: PepQuantitySelectorComponent.ENTER_CHILDREN,\n controlType: this.controlType,\n eventWhich: event.which,\n });\n }\n\n enterPackage(event): void {\n this.elementClick.emit({\n key: this.key,\n value: PepQuantitySelectorComponent.ENTER_PACKAGE,\n controlType: this.controlType,\n eventWhich: event.which,\n otherData: this.notificationInfo,\n });\n }\n\n setupQsButtons(qsWidth: number) {\n this.showQsBtn = qsWidth > 120;\n\n if (!this.cd['destroyed']) {\n this.cd.detectChanges();\n }\n }\n\n setQsView(): void {\n if (\n this.QSCont &&\n this.QSCont.nativeElement &&\n this.QSCont.nativeElement.clientWidth > 0\n ) {\n setTimeout(() => {\n this.qsWidthSubject.next(this.QSCont.nativeElement.clientWidth);\n }, 0);\n }\n }\n}\n","<ng-container [formGroup]=\"form\">\n <ng-template #pepTemplate>\n <div #QSCont class=\"pep-quantity-selector-container {{ styleType }}\" [ngClass]=\"{\n 'hide-qs-actions' : layoutType === 'card' && rowSpan <= 1,\n 'pep-table-quantity-selector': layoutType === 'table',\n 'one-row': rowSpan === 1,\n caution: isCaution,\n 'matrix-qs': type === 'qsForMatrix',\n 'zero-quantity': formattedValue === '0'\n }\">\n <pep-field-title *ngIf=\"renderTitle && layoutType !== 'table' && layoutType !== 'card'\" [label]=\"label\"\n [mandatory]=\"mandatory\" [disabled]=\"disabled\" [showTitle]=\"showTitle\" [xAlignment]=\"xAlignment\">\n </pep-field-title>\n\n <ng-container *ngIf=\"type == 'qs'\">\n <ng-container *ngIf=\"readonly; then readonlyBlock; else editableQSBlock\"></ng-container>\n <ng-template #readonlyBlock>\n <button [id]=\"key\" mat-button class=\"pep-button {{ styleType }} disable \"\n [ngClass]=\"{caution: isCaution, md: rowSpan !== 1, xs: rowSpan === 1}\"\n title=\"{{ formattedValue }}\" disabled=\"true\">\n <span class=\"ellipsis\">\n {{ formattedValue }}\n </span>\n </button>\n </ng-template>\n <ng-template #editableQSBlock>\n <mat-form-field appearance=\"outline\">\n <input pepQsValidation [allowDecimal]=\"allowDecimal\" type=\"decimalNumber\" inputmode=\"decimal\"\n matInput #QSInput name=\"{{ key }}\" class=\"body-lg ellipsis\" title=\"{{ formattedValue }}\"\n autocomplete=\"off\" [id]=\"key\" [formControlName]=\"key\" [value]=\"displayValue\"\n (click)=\"$event.target.setSelectionRange(0, 999)\" (keydown)=\"onKeydown($event)\"\n (blur)=\"onBlur($event)\" (focus)=\"onFocus($event)\" />\n <button *ngIf=\"showQsBtn\" mat-button matPrefix (click)=\"decrement($event)\"\n class=\"pep-button icon-button sm weak qs-action\" [disabled]=\"disabled\" [ngClass]=\"{ disable: disabled, caution: isCaution && styleType !== 'strong',\n 'keep-background-on-focus': styleType === 'strong'}\">\n <mat-icon>\n <pep-icon name=\"number_minus\">\n </pep-icon>\n </mat-icon>\n </button>\n <button *ngIf=\"showQsBtn\" mat-button matSuffix (click)=\"increment($event)\"\n class=\"pep-button icon-button sm weak qs-action\" [disabled]=\"disabled\" [ngClass]=\"{ disable: disabled, caution: isCaution && styleType !== 'strong',\n 'keep-background-on-focus': styleType === 'strong'}\">\n <mat-icon>\n <pep-icon name=\"number_plus\">\n </pep-icon>\n </mat-icon>\n </button>\n <mat-error *ngIf=\"messages?.length > 0\">\n <span class=\"qs-error body-xs\" *ngFor=\"let msg of messages\"> {{ msg.Key | translate }} :\n {{ msg.Value }} </span>\n </mat-error>\n </mat-form-field>\n </ng-template>\n </ng-container>\n\n <ng-container *ngIf=\"type == 'qsForMatrix'\">\n <ng-container *ngIf=\"readonly; then readonlyBlock; else editableQSBlock\"></ng-container>\n <ng-template #readonlyBlock>\n <button [id]=\"key\" mat-button class=\"pep-button {{ styleType }} disable\" disabled=\"true\"\n [ngClass]=\"{caution: isCaution, md: rowSpan !== 1, xs: rowSpan === 1}\">\n X\n </button>\n </ng-template>\n <ng-template #editableQSBlock>\n <span *ngIf=\" xAlignment=='right'\" class=\" body-sm additional-value prefix\"\n matBadge=\"{{ additionalValue }}\" matBadgePosition=\"before\"\n matBadgeSize=\"rowSpan === 1 ? small : medium\" [@showHide]=\"getAdditionalValue\"></span>\n\n <mat-form-field appearance=\"outline\" (mouseleave)=\"!isInFocus ? onMatrixMouseleave($event) : null\">\n <input pepQsValidation [allowDecimal]=\"allowDecimal\" type=\"decimalNumber\" inputmode=\"decimal\"\n matInput #QSInput name=\"{{ key }}\" title=\"{{ formattedValue }}\" class=\"body-sm ellipsis\"\n autocomplete=\"off\" [id]=\"key\" [formControlName]=\"key\" [value]=\"displayValue\"\n (click)=\"onMatrixClick($event); $event.target.setSelectionRange(0, 999)\"\n (keydown)=\"onKeydown($event)\" (blur)=\"onMatrixBlur($event)\"\n (focus)=\"onMatrixMouseEnter($event); onFocus($event)\"\n (mouseenter)=\"onMatrixMouseEnter($event)\" />\n\n <mat-error *ngIf=\"messages?.length > 0\">\n <span class=\"qs-error body-xs\" *ngFor=\"let msg of messages\"> {{ msg.Key | translate }} :\n {{ msg.Value }} </span>\n </mat-error>\n </mat-form-field>\n\n <span *ngIf=\"xAlignment != 'right'\" class=\"body-sm additional-value suffix\"\n matBadge=\"{{ additionalValue }}\" matBadgePosition=\"before\"\n matBadgeSize=\"rowSpan === 1 ? small : medium\" [@showHide]=\"getAdditionalValue\"></span>\n </ng-template>\n </ng-container>\n\n <ng-container *ngIf=\"type == 'button'\">\n <ng-container *ngIf=\"(value | pepToNumber) == 0; then regularBlock; else withBadgeBlock\">\n </ng-container>\n <ng-template #regularBlock>\n <button mat-button [disabled]=\"disabled\" class=\"pep-button {{ styleType }} \" [id]=\"key\"\n name=\"{{ key }}\"\n [ngClass]=\"{ disable: disabled, caution: isCaution, md: rowSpan !== 1, xs: rowSpan === 1}\"\n [title]=\"'QS.ORDER' | translate\" (click)=\"enterChildren($event)\">\n <span class=\"ellipsis\">\n {{ 'QS.ORDER' | translate }}\n </span>\n </button>\n </ng-template>\n <ng-template #withBadgeBlock>\n <button mat-button matBadge=\"{{ formattedValue }}\"\n matBadgePosition=\"{{xAlignment == 'right' ? 'before' : 'after'}}\"\n [matBadgeSize]=\"layoutType === 'card' && rowSpan === 1 ? 'small' : 'medium'\"\n class=\"pep-button {{ styleType }} \" [id]=\"key\" name=\"{{ key }}\" [ngClass]=\"{ disable: disabled, caution: isCaution, md: rowSpan !== 1, xs: rowSpan === 1,\n 'right-alignment': xAlignment == 'right', 'left-alignment': xAlignment != 'right'}\"\n [title]=\"'QS.ORDER' | translate\" (click)=\"enterChildren($event)\" [disabled]=\"disabled\">\n <span class=\"ellipsis\">\n {{ 'QS.ORDER' | translate }}\n </span>\n </button>\n </ng-template>\n </ng-container>\n <ng-container *ngIf=\"type == 'packageButton'\">\n <button mat-button class=\"pep-button {{ styleType }} \" [id]=\"key\" name=\"{{ key }}\"\n [ngClass]=\"{ disable: disabled, caution: isCaution, md: rowSpan !== 1, xs: rowSpan === 1}\"\n [title]=\"'QS.ORDER' | translate\" (click)=\"enterPackage($event)\" [disabled]=\"disabled\">\n <span class=\"ellipsis\">\n {{ 'QS.ORDER' | translate }} ({{ formattedValue }})\n </span>\n </button>\n </ng-container>\n </div>\n </ng-template>\n\n <ng-container *ngIf=\"layoutType === 'form'\">\n <ng-container *ngTemplateOutlet=\"pepTemplate\"></ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"layoutType === 'card'\">\n <ng-container *ngTemplateOutlet=\"pepTemplate\"></ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"layoutType === 'table'\">\n <ng-container *ngTemplateOutlet=\"pepTemplate\"></ng-container>\n </ng-container>\n</ng-container>","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({ name: 'pepQuantitySelectorNumber' })\nexport class PepQuantitySelectorNumberPipe implements PipeTransform {\n transform(value: string, allowDecimal: boolean): string {\n const tmpValue = parseFloat(value);\n\n if (tmpValue === 0) {\n return '0';\n } else if (allowDecimal) {\n return tmpValue.toString();\n } else {\n return parseInt(value).toString();\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ReactiveFormsModule } from '@angular/forms';\n\nimport { MatCommonModule } from '@angular/material/core';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatBadgeModule } from '@angular/material/badge';\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport {\n PepIconModule,\n PepIconRegistry,\n pepIconNumberMinus,\n pepIconNumberPlus,\n} from '@pepperi-addons/ngx-lib/icon';\nimport { PepFieldTitleModule } from '@pepperi-addons/ngx-lib/field-title';\n\nimport { PepQuantitySelectorComponent } from './quantity-selector.component';\nimport { PepQuantitySelectorValidationDirective } from './quantity-selector-validation.directive';\nimport { PepQuantitySelectorNumberPipe } from './quantity-selector.pipes';\n\n@NgModule({\n imports: [\n CommonModule,\n ReactiveFormsModule,\n // Material modules\n MatCommonModule,\n MatFormFieldModule,\n MatInputModule,\n MatButtonModule,\n MatBadgeModule,\n MatIconModule,\n // ngx-lib modules\n PepNgxLibModule,\n PepIconModule,\n PepFieldTitleModule,\n ],\n exports: [PepQuantitySelectorComponent],\n declarations: [\n PepQuantitySelectorComponent,\n PepQuantitySelectorNumberPipe,\n PepQuantitySelectorValidationDirective,\n ],\n})\nexport class PepQuantitySelectorModule {\n constructor(private pepIconRegistry: PepIconRegistry) {\n this.pepIconRegistry.registerIcons([\n pepIconNumberMinus,\n pepIconNumberPlus,\n ]);\n }\n}\n","/*\n * Public API Surface of ngx-lib/quantity-selector\n */\nexport * from './quantity-selector.module';\nexport * from './quantity-selector.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i10","i12.PepQuantitySelectorValidationDirective","i1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pepperi-addons-ngx-lib-quantity-selector.mjs","sources":["../../../projects/ngx-lib/quantity-selector/quantity-selector-validation.directive.ts","../../../projects/ngx-lib/quantity-selector/quantity-selector.component.ts","../../../projects/ngx-lib/quantity-selector/quantity-selector.component.html","../../../projects/ngx-lib/quantity-selector/quantity-selector.pipes.ts","../../../projects/ngx-lib/quantity-selector/quantity-selector.module.ts","../../../projects/ngx-lib/quantity-selector/public-api.ts","../../../projects/ngx-lib/quantity-selector/pepperi-addons-ngx-lib-quantity-selector.ts"],"sourcesContent":["import { getLocaleNumberSymbol, NumberSymbol } from '@angular/common';\nimport {\n Directive,\n ElementRef,\n HostListener,\n Input,\n OnInit,\n} from '@angular/core';\nimport { PepValidatorService } from '@pepperi-addons/ngx-lib';\n\n@Directive({\n selector: '[pepQsValidation]',\n})\nexport class PepQuantitySelectorValidationDirective implements OnInit {\n @Input() allowDecimal: boolean;\n\n previousValue = '';\n\n constructor(\n private hostElement: ElementRef,\n private validatorService: PepValidatorService\n ) {}\n\n ngOnInit() {\n //\n }\n\n @HostListener('change', ['$event'])\n onChange(e) {\n this.validateValue(this.hostElement.nativeElement.value);\n }\n\n @HostListener('keydown', ['$event'])\n onKeyDown(e: KeyboardEvent) {\n const originalValue: string = e.target['value'];\n\n // save value before keydown event\n this.previousValue = originalValue;\n\n const isNumber = this.validatorService.isNumber(e, this.allowDecimal);\n if (isNumber) return;\n else e.preventDefault();\n }\n\n validateValue(value: string): void {\n const newValue = this.validatorService.validateNumber(\n value,\n this.allowDecimal\n );\n this.hostElement.nativeElement['value'] = newValue ? newValue : 0;\n }\n}\n","import {\n Component,\n OnInit,\n OnChanges,\n OnDestroy,\n Input,\n Output,\n EventEmitter,\n ViewChild,\n ElementRef,\n ChangeDetectorRef,\n ChangeDetectionStrategy,\n Renderer2,\n AfterViewInit,\n} from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport {\n trigger,\n state,\n style,\n animate,\n transition,\n} from '@angular/animations';\nimport {\n PepLayoutType,\n PepStyleType,\n PepCustomizationService,\n PepHorizontalAlignment,\n DEFAULT_HORIZONTAL_ALIGNMENT,\n IPepFieldClickEvent,\n PepQuantitySelectorFieldType,\n PepQuantitySelectorField,\n PepUtilitiesService,\n} from '@pepperi-addons/ngx-lib';\nimport { BehaviorSubject, fromEvent, Subject } from 'rxjs';\nimport { debounceTime, distinctUntilChanged, takeUntil } from 'rxjs/operators';\nimport { TranslateService } from '@ngx-translate/core';\n\n@Component({\n selector: 'pep-quantity-selector',\n templateUrl: './quantity-selector.component.html',\n styleUrls: ['./quantity-selector.component.scss', './quantity-selector.component.theme.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [\n trigger('showHide', [\n state(\n 'show',\n style({\n opacity: 1,\n transform: 'scale(1)',\n })\n ),\n state(\n 'hide',\n style({\n opacity: 0,\n transform: 'scale(0)',\n })\n ),\n transition('show => hide', animate('250ms ease-out')),\n transition('hide => show', animate('250ms ease-in')),\n ]),\n ],\n})\nexport class PepQuantitySelectorComponent\n implements OnChanges, OnInit, AfterViewInit, OnDestroy {\n public static ENTER_CHILDREN = '[EnterChildren]';\n public static ENTER_PACKAGE = '[EnterPackage]';\n public static PLUS = '[+]';\n public static MINUS = '[-]';\n\n @Input() key = '';\n\n private _value = null;\n @Input()\n set value(value: string) {\n if (!value) {\n value = '';\n }\n\n this._value = value;\n this.setFormattedValue(value);\n }\n get value(): string {\n return this._value;\n }\n\n private _formattedValue = null;\n @Input()\n set formattedValue(value: string) {\n // if (!value) {\n // value = '';\n // }\n\n // if (this._calculateFormattedValue) {\n // this._calculateFormattedValue = false;\n // }\n\n // this.setFormattedValue(value);\n }\n get formattedValue(): string {\n return this._formattedValue;\n }\n\n @Input() label = '';\n @Input() type: PepQuantitySelectorFieldType = 'qs';\n @Input() mandatory = false;\n @Input() disabled = false;\n @Input() readonly = false;\n\n private _textColor = '';\n @Input()\n set textColor(value: string) {\n this._textColor = value;\n this.isCaution = value === '#FF0000';\n }\n get textColor(): string {\n return this._textColor;\n }\n\n @Input() xAlignment: PepHorizontalAlignment = DEFAULT_HORIZONTAL_ALIGNMENT;\n @Input() rowSpan = 1;\n \n private _allowDecimal = false;\n @Input() \n set allowDecimal(value: boolean) {\n this._allowDecimal = value;\n\n if (this.value) {\n this.setFormattedValue(this.value);\n }\n }\n get allowDecimal(): boolean {\n return this._allowDecimal;\n }\n\n @Input() additionalValue = '';\n\n private _notificationInfo: any;\n @Input()\n set notificationInfo(value: any) {\n this._notificationInfo = value;\n\n const messages = value && value > 0 ? JSON.parse(value).Messages : '';\n if (messages && messages.length > 0) {\n // Replace the msg keys.\n for (const msg of messages) {\n if (msg.Key === 'Inventory_Limit_Msg') {\n msg.Key = 'MESSAGES.ERROR_INVENTORY_LIMIT';\n } else if (msg.Key === 'Case_Quantity_Limit_Msg') {\n msg.Key = 'MESSAGES.ERROR_CASE_QUANTITY_LIMIT';\n } else if (msg.Key === 'Min_Quantity_Limit_Msg') {\n msg.Key = 'MESSAGES.ERROR_MIN_QUANTITY_LIMIT';\n } else if (msg.Key === 'Max_Quantity_Limit_Msg') {\n msg.Key = 'MESSAGES.ERROR_MAX_QUANTITY_LIMIT';\n }\n }\n\n this.messages = messages;\n\n const fieldControl = this.form.controls[this.key];\n fieldControl.setErrors({\n serverError: 'Error',\n });\n\n this.sameElementInTheWantedRow = null;\n setTimeout(() => {\n if (this.QSInput && this.QSInput.nativeElement) {\n this.QSInput.nativeElement.focus();\n }\n }, 150);\n }\n }\n get notificationInfo(): any {\n return this._notificationInfo;\n }\n\n private _visible = true;\n @Input()\n set visible(visible: boolean) {\n this._visible = visible;\n if (visible) {\n this.renderer.removeClass(\n this.element.nativeElement,\n 'hidden-element'\n );\n } else {\n this.renderer.addClass(\n this.element.nativeElement,\n 'hidden-element'\n );\n }\n }\n get visible(): boolean {\n return this._visible;\n }\n\n controlType = 'qs';\n\n @Input() form: FormGroup = null;\n @Input() showTitle = true;\n @Input() renderTitle = true;\n @Input() layoutType: PepLayoutType = 'form';\n @Input() isActive = false;\n\n // Get default style from theme.\n @Input()\n styleType: PepStyleType = document.documentElement.style.getPropertyValue(\n PepCustomizationService.STYLE_QS_KEY\n ) as PepStyleType; //'strong';\n\n @Output()\n valueChange: EventEmitter<string> = new EventEmitter<string>();\n\n @Output()\n elementClick: EventEmitter<IPepFieldClickEvent> = new EventEmitter<IPepFieldClickEvent>();\n\n @ViewChild('QSCont') QSCont: ElementRef;\n @ViewChild('QSInput') QSInput: ElementRef;\n\n private _calculateFormattedValue = true;\n get calculateFormattedValue(): boolean {\n return this._calculateFormattedValue;\n }\n\n private readonly _destroyed: Subject<void>;\n private qsWidthSubject: BehaviorSubject<number>;\n lastQsContClientWidth = 0;\n showQsBtn = true;\n\n standAlone = false;\n isInFocus = false;\n isMatrixFocus = false;\n\n isCaution = false;\n messages: Array<any> = null;\n\n sameElementInTheWantedRow = null;\n\n isEmptyKey = false;\n\n constructor(\n private cd: ChangeDetectorRef,\n private customizationService: PepCustomizationService,\n private renderer: Renderer2,\n private element: ElementRef,\n private translate: TranslateService,\n private utilitiesService: PepUtilitiesService\n ) {\n this._destroyed = new Subject();\n this.qsWidthSubject = new BehaviorSubject(0);\n }\n\n setForm() {\n const pepField = new PepQuantitySelectorField({\n key: this.key,\n value: this.value,\n mandatory: this.mandatory,\n readonly: this.readonly,\n disabled: this.disabled,\n });\n this.form = this.customizationService.getDefaultFromGroup(pepField);\n }\n\n private setFormattedValue(value: string) {\n if (this._calculateFormattedValue) {\n if (this.allowDecimal) {\n this._formattedValue = this.utilitiesService.formatDecimal(value);\n } else {\n this._formattedValue = this.utilitiesService.formatNumber(value);\n }\n } else {\n this._formattedValue = value;\n }\n \n this.updateFormFieldValue();\n }\n\n private updateFormFieldValue() {\n this.customizationService.updateFormFieldValue(\n this.form,\n this.key,\n this.formattedValue\n );\n }\n\n get displayValue(): string {\n const res = this.isInFocus\n ? parseFloat(this.value).toString()\n : this.formattedValue;\n return res;\n }\n\n protected getDestroyer() {\n return takeUntil(this._destroyed);\n }\n\n ngOnInit(): void {\n if (this.form === null) {\n if (this.key === '') {\n this.isEmptyKey = true;\n }\n\n this.standAlone = true;\n this.setForm();\n\n this.renderer.addClass(\n this.element.nativeElement,\n PepCustomizationService.STAND_ALONE_FIELD_CLASS_NAME\n );\n\n if (!this.renderTitle) {\n this.renderer.addClass(\n this.element.nativeElement,\n PepCustomizationService.STAND_ALONE_FIELD_NO_SPACING_CLASS_NAME\n );\n }\n }\n\n this.qsWidthSubject\n .asObservable()\n .pipe(this.getDestroyer(), distinctUntilChanged())\n .subscribe((qsWidth: number) => {\n this.setupQsButtons(qsWidth);\n });\n\n this.updateFormFieldValue();\n }\n\n ngAfterViewInit() {\n //\n }\n\n ngAfterViewChecked(): void {\n this.setQsView();\n }\n\n ngOnChanges(changes: any): void {\n // Bug fix for addons when the key is '' in the ngOnInit for some reson\n if (this.isEmptyKey && this.key !== '') {\n this.setForm();\n }\n\n setTimeout(() => {\n this.focusToTheSameElementInTheWantedRow();\n }, 150);\n }\n\n ngOnDestroy(): void {\n this._destroyed.next();\n this._destroyed.complete();\n }\n\n get getAdditionalValue(): string {\n return this.additionalValue.length > 0 ? 'show' : 'hide';\n }\n\n getParentByClass(el, parentSelector /* optional */): any {\n // If no parentSelector defined will bubble up all the way to *document*\n if (parentSelector === undefined) {\n parentSelector = document;\n }\n\n let p = el.parentNode;\n\n while (\n p &&\n !p?.classList?.contains(parentSelector) &&\n parentSelector !== document\n ) {\n const o = p;\n p = o?.parentNode || null;\n }\n\n return p?.className.indexOf(parentSelector) > -1 ? p : null;\n }\n\n getSameElementInTheWantedRowByClassName(event: any, isNext = true): any {\n const eventTarget = event.target || event.srcElement;\n let sameElementInTheWantedRowByClassName;\n\n let parentSelector;\n if (this.layoutType === 'table') {\n parentSelector = this.getParentByClass(eventTarget, 'table-row');\n } else if (this.layoutType === 'card') {\n parentSelector = this.getParentByClass(eventTarget, 'card-view');\n if (!parentSelector) {\n parentSelector = this.getParentByClass(\n eventTarget,\n 'line-view'\n );\n }\n }\n\n if (\n parentSelector.nextElementSibling === null &&\n parentSelector.previousElementSibling === null\n ) {\n sameElementInTheWantedRowByClassName = null;\n } else {\n if (isNext) {\n if (parentSelector.nextElementSibling === null) {\n sameElementInTheWantedRowByClassName = parentSelector.parentElement.querySelectorAll(\n '[name=' + this.key + ']'\n )[0];\n } else {\n sameElementInTheWantedRowByClassName = parentSelector.nextElementSibling.querySelectorAll(\n '[name=' + this.key + ']'\n )[0];\n }\n } else {\n if (parentSelector.previousElementSibling === null) {\n const elementsList = parentSelector.parentElement.querySelectorAll(\n '[name=' + this.key + ']'\n );\n sameElementInTheWantedRowByClassName =\n elementsList[elementsList.length - 1];\n } else {\n sameElementInTheWantedRowByClassName = parentSelector.previousElementSibling.querySelectorAll(\n '[name=' + this.key + ']'\n )[0];\n }\n }\n }\n\n return sameElementInTheWantedRowByClassName;\n }\n\n setSameElementInTheWantedRow(event: any, isNext = true): void {\n // Navigate to the QS in the next row.\n if (this.layoutType === 'card' || this.layoutType === 'table') {\n this.sameElementInTheWantedRow = this.getSameElementInTheWantedRowByClassName(\n event,\n isNext\n );\n }\n\n this.QSInput.nativeElement.blur();\n }\n\n focusToTheSameElementInTheWantedRow(): void {\n if (this.sameElementInTheWantedRow) {\n const elem = this.sameElementInTheWantedRow;\n // If this is regular item (qs and not button) .\n if (elem instanceof HTMLInputElement && elem.type === 'text') {\n elem.click();\n elem.select();\n } else {\n const parentElem = elem.parentNode;\n parentElem.click();\n elem.focus();\n }\n this.sameElementInTheWantedRow = null;\n }\n }\n\n cleanError(): void {\n const fieldControl = this.form.controls[this.key];\n\n // Clean the error message\n if (this.messages && this.messages.length > 0) {\n this.messages = this.notificationInfo = null;\n fieldControl.setErrors(null);\n }\n }\n\n onMatrixMouseEnter(event: any): void {\n this.isMatrixFocus = true;\n }\n\n onMatrixMouseleave(event: any): void {\n this.isMatrixFocus = false;\n }\n\n onMatrixClick(event: any): void {\n this.isInFocus = true;\n\n if (this.QSInput && this.QSInput.nativeElement) {\n this.QSInput.nativeElement.focus();\n }\n }\n\n onMatrixBlur(event: any): void {\n if (\n !event.relatedTarget ||\n event.relatedTarget.className.indexOf('qs') < 0\n ) {\n this.isMatrixFocus = false;\n }\n\n this.onBlur(event);\n }\n\n onFocus(event: any): void {\n this.isInFocus = true;\n }\n\n isDifferentValue(value: string): boolean {\n let res = false;\n\n const currentValue = this.utilitiesService.coerceNumberProperty(\n this.value\n );\n const newValue = this.utilitiesService.coerceNumberProperty(value);\n\n res = currentValue !== newValue;\n\n return res;\n }\n\n onBlur(event: any): void {\n this.isInFocus = false;\n this.cleanError();\n const value = event.target ? event.target.value : event;\n\n if (value !== this.value && this.isDifferentValue(value)) {\n this.value = value;\n\n // // If the user is setting the formatted value then set the value till the user format it and return it back.\n // if (!this._calculateFormattedValue) {\n // this._formattedValue = value;\n // }\n\n this.valueChange.emit(this.value);\n } else {\n this.focusToTheSameElementInTheWantedRow();\n }\n }\n\n onKeydown(event): any {\n const keyboardEvent = event as KeyboardEvent;\n\n if (keyboardEvent.key === 'Enter') {\n this.setSameElementInTheWantedRow(\n keyboardEvent,\n !keyboardEvent.shiftKey\n );\n return true;\n }\n }\n\n increment(event): void {\n if (this.standAlone) {\n this.value = this.utilitiesService.incrementNumber(this.value);\n }\n\n this.elementClick.emit({\n key: this.key,\n value: PepQuantitySelectorComponent.PLUS,\n controlType: this.controlType,\n eventWhich: event.which,\n });\n event.stopPropagation();\n }\n\n decrement(event): void {\n if (this.standAlone) {\n this.value = this.utilitiesService.decrementNumber(this.value);\n }\n\n this.elementClick.emit({\n key: this.key,\n value: PepQuantitySelectorComponent.MINUS,\n controlType: this.controlType,\n eventWhich: event.which,\n });\n event.stopPropagation();\n }\n\n enterChildren(event): void {\n this.elementClick.emit({\n key: this.key,\n value: PepQuantitySelectorComponent.ENTER_CHILDREN,\n controlType: this.controlType,\n eventWhich: event.which,\n });\n }\n\n enterPackage(event): void {\n this.elementClick.emit({\n key: this.key,\n value: PepQuantitySelectorComponent.ENTER_PACKAGE,\n controlType: this.controlType,\n eventWhich: event.which,\n otherData: this.notificationInfo,\n });\n }\n\n setupQsButtons(qsWidth: number) {\n this.showQsBtn = qsWidth > 120;\n\n if (!this.cd['destroyed']) {\n this.cd.detectChanges();\n }\n }\n\n setQsView(): void {\n if (\n this.QSCont &&\n this.QSCont.nativeElement &&\n this.QSCont.nativeElement.clientWidth > 0\n ) {\n setTimeout(() => {\n this.qsWidthSubject.next(this.QSCont.nativeElement.clientWidth);\n }, 0);\n }\n }\n}\n","<ng-container [formGroup]=\"form\">\n <ng-template #pepTemplate>\n <div #QSCont class=\"pep-quantity-selector-container {{ styleType }}\" [ngClass]=\"{\n 'hide-qs-actions' : layoutType === 'card' && rowSpan <= 1,\n 'pep-table-quantity-selector': layoutType === 'table',\n 'one-row': rowSpan === 1,\n caution: isCaution,\n 'matrix-qs': type === 'qsForMatrix',\n 'zero-quantity': formattedValue === '0'\n }\">\n <pep-field-title *ngIf=\"renderTitle && layoutType !== 'table' && layoutType !== 'card'\" [label]=\"label\"\n [mandatory]=\"mandatory\" [disabled]=\"disabled\" [showTitle]=\"showTitle\" [xAlignment]=\"xAlignment\">\n </pep-field-title>\n\n <ng-container *ngIf=\"type == 'qs'\">\n <ng-container *ngIf=\"readonly; then readonlyBlock; else editableQSBlock\"></ng-container>\n <ng-template #readonlyBlock>\n <button [id]=\"key\" mat-button class=\"pep-button {{ styleType }} disable \"\n [ngClass]=\"{caution: isCaution, md: rowSpan !== 1, xs: rowSpan === 1}\"\n title=\"{{ formattedValue }}\" disabled=\"true\">\n <span class=\"ellipsis\">\n {{ formattedValue }}\n </span>\n </button>\n </ng-template>\n <ng-template #editableQSBlock>\n <mat-form-field appearance=\"outline\">\n <input pepQsValidation [allowDecimal]=\"allowDecimal\" type=\"decimalNumber\" inputmode=\"decimal\"\n matInput #QSInput name=\"{{ key }}\" class=\"body-lg ellipsis\" title=\"{{ formattedValue }}\"\n autocomplete=\"off\" [id]=\"key\" [formControlName]=\"key\" [value]=\"displayValue\"\n (click)=\"$event.target.setSelectionRange(0, 999)\" (keydown)=\"onKeydown($event)\"\n (blur)=\"onBlur($event)\" (focus)=\"onFocus($event)\" />\n <button *ngIf=\"showQsBtn\" mat-button matPrefix (click)=\"decrement($event)\"\n class=\"pep-button icon-button sm weak qs-action\" [disabled]=\"disabled\" [ngClass]=\"{ disable: disabled, caution: isCaution && styleType !== 'strong',\n 'keep-background-on-focus': styleType === 'strong'}\">\n <mat-icon>\n <pep-icon name=\"number_minus\">\n </pep-icon>\n </mat-icon>\n </button>\n <button *ngIf=\"showQsBtn\" mat-button matSuffix (click)=\"increment($event)\"\n class=\"pep-button icon-button sm weak qs-action\" [disabled]=\"disabled\" [ngClass]=\"{ disable: disabled, caution: isCaution && styleType !== 'strong',\n 'keep-background-on-focus': styleType === 'strong'}\">\n <mat-icon>\n <pep-icon name=\"number_plus\">\n </pep-icon>\n </mat-icon>\n </button>\n <mat-error *ngIf=\"messages?.length > 0\">\n <span class=\"qs-error body-xs\" *ngFor=\"let msg of messages\"> {{ msg.Key | translate }} :\n {{ msg.Value }} </span>\n </mat-error>\n </mat-form-field>\n </ng-template>\n </ng-container>\n\n <ng-container *ngIf=\"type == 'qsForMatrix'\">\n <ng-container *ngIf=\"readonly; then readonlyBlock; else editableQSBlock\"></ng-container>\n <ng-template #readonlyBlock>\n <button [id]=\"key\" mat-button class=\"pep-button {{ styleType }} disable\" disabled=\"true\"\n [ngClass]=\"{caution: isCaution, md: rowSpan !== 1, xs: rowSpan === 1}\">\n X\n </button>\n </ng-template>\n <ng-template #editableQSBlock>\n <span *ngIf=\" xAlignment=='right'\" class=\" body-sm additional-value prefix\"\n matBadge=\"{{ additionalValue }}\" matBadgePosition=\"before\"\n matBadgeSize=\"rowSpan === 1 ? small : medium\" [@showHide]=\"getAdditionalValue\"></span>\n\n <mat-form-field appearance=\"outline\" (mouseleave)=\"!isInFocus ? onMatrixMouseleave($event) : null\">\n <input pepQsValidation [allowDecimal]=\"allowDecimal\" type=\"decimalNumber\" inputmode=\"decimal\"\n matInput #QSInput name=\"{{ key }}\" title=\"{{ formattedValue }}\" class=\"body-sm ellipsis\"\n autocomplete=\"off\" [id]=\"key\" [formControlName]=\"key\" [value]=\"displayValue\"\n (click)=\"onMatrixClick($event); $event.target.setSelectionRange(0, 999)\"\n (keydown)=\"onKeydown($event)\" (blur)=\"onMatrixBlur($event)\"\n (focus)=\"onMatrixMouseEnter($event); onFocus($event)\"\n (mouseenter)=\"onMatrixMouseEnter($event)\" />\n\n <mat-error *ngIf=\"messages?.length > 0\">\n <span class=\"qs-error body-xs\" *ngFor=\"let msg of messages\"> {{ msg.Key | translate }} :\n {{ msg.Value }} </span>\n </mat-error>\n </mat-form-field>\n\n <span *ngIf=\"xAlignment != 'right'\" class=\"body-sm additional-value suffix\"\n matBadge=\"{{ additionalValue }}\" matBadgePosition=\"before\"\n matBadgeSize=\"rowSpan === 1 ? small : medium\" [@showHide]=\"getAdditionalValue\"></span>\n </ng-template>\n </ng-container>\n\n <ng-container *ngIf=\"type == 'button'\">\n <ng-container *ngIf=\"(value | pepToNumber) == 0; then regularBlock; else withBadgeBlock\">\n </ng-container>\n <ng-template #regularBlock>\n <button mat-button [disabled]=\"disabled\" class=\"pep-button {{ styleType }} \" [id]=\"key\"\n name=\"{{ key }}\"\n [ngClass]=\"{ disable: disabled, caution: isCaution, md: rowSpan !== 1, xs: rowSpan === 1}\"\n [title]=\"'QS.ORDER' | translate\" (click)=\"enterChildren($event)\">\n <span class=\"ellipsis\">\n {{ 'QS.ORDER' | translate }}\n </span>\n </button>\n </ng-template>\n <ng-template #withBadgeBlock>\n <button mat-button matBadge=\"{{ formattedValue }}\"\n matBadgePosition=\"{{xAlignment == 'right' ? 'before' : 'after'}}\"\n [matBadgeSize]=\"layoutType === 'card' && rowSpan === 1 ? 'small' : 'medium'\"\n class=\"pep-button {{ styleType }} \" [id]=\"key\" name=\"{{ key }}\" [ngClass]=\"{ disable: disabled, caution: isCaution, md: rowSpan !== 1, xs: rowSpan === 1,\n 'right-alignment': xAlignment == 'right', 'left-alignment': xAlignment != 'right'}\"\n [title]=\"'QS.ORDER' | translate\" (click)=\"enterChildren($event)\" [disabled]=\"disabled\">\n <span class=\"ellipsis\">\n {{ 'QS.ORDER' | translate }}\n </span>\n </button>\n </ng-template>\n </ng-container>\n <ng-container *ngIf=\"type == 'packageButton'\">\n <button mat-button class=\"pep-button {{ styleType }} \" [id]=\"key\" name=\"{{ key }}\"\n [ngClass]=\"{ disable: disabled, caution: isCaution, md: rowSpan !== 1, xs: rowSpan === 1}\"\n [title]=\"'QS.ORDER' | translate\" (click)=\"enterPackage($event)\" [disabled]=\"disabled\">\n <span class=\"ellipsis\">\n {{ 'QS.ORDER' | translate }} ({{ formattedValue }})\n </span>\n </button>\n </ng-container>\n </div>\n </ng-template>\n\n <ng-container *ngIf=\"layoutType === 'form'\">\n <ng-container *ngTemplateOutlet=\"pepTemplate\"></ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"layoutType === 'card'\">\n <ng-container *ngTemplateOutlet=\"pepTemplate\"></ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"layoutType === 'table'\">\n <ng-container *ngTemplateOutlet=\"pepTemplate\"></ng-container>\n </ng-container>\n</ng-container>","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({ name: 'pepQuantitySelectorNumber' })\nexport class PepQuantitySelectorNumberPipe implements PipeTransform {\n transform(value: string, allowDecimal: boolean): string {\n const tmpValue = parseFloat(value);\n\n if (tmpValue === 0) {\n return '0';\n } else if (allowDecimal) {\n return tmpValue.toString();\n } else {\n return parseInt(value).toString();\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ReactiveFormsModule } from '@angular/forms';\n\nimport { MatCommonModule } from '@angular/material/core';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatBadgeModule } from '@angular/material/badge';\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport {\n PepIconModule,\n PepIconRegistry,\n pepIconNumberMinus,\n pepIconNumberPlus,\n} from '@pepperi-addons/ngx-lib/icon';\nimport { PepFieldTitleModule } from '@pepperi-addons/ngx-lib/field-title';\n\nimport { PepQuantitySelectorComponent } from './quantity-selector.component';\nimport { PepQuantitySelectorValidationDirective } from './quantity-selector-validation.directive';\nimport { PepQuantitySelectorNumberPipe } from './quantity-selector.pipes';\n\n@NgModule({\n imports: [\n CommonModule,\n ReactiveFormsModule,\n // Material modules\n MatCommonModule,\n MatFormFieldModule,\n MatInputModule,\n MatButtonModule,\n MatBadgeModule,\n MatIconModule,\n // ngx-lib modules\n PepNgxLibModule,\n PepIconModule,\n PepFieldTitleModule,\n ],\n exports: [PepQuantitySelectorComponent],\n declarations: [\n PepQuantitySelectorComponent,\n PepQuantitySelectorNumberPipe,\n PepQuantitySelectorValidationDirective,\n ],\n})\nexport class PepQuantitySelectorModule {\n constructor(private pepIconRegistry: PepIconRegistry) {\n this.pepIconRegistry.registerIcons([\n pepIconNumberMinus,\n pepIconNumberPlus,\n ]);\n }\n}\n","/*\n * Public API Surface of ngx-lib/quantity-selector\n */\nexport * from './quantity-selector.module';\nexport * from './quantity-selector.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i10","i12.PepQuantitySelectorValidationDirective","i1"],"mappings":"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"}
|
|
@@ -212,7 +212,7 @@ class PepRichHtmlTextareaComponent {
|
|
|
212
212
|
}
|
|
213
213
|
}
|
|
214
214
|
PepRichHtmlTextareaComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepRichHtmlTextareaComponent, deps: [{ token: i1.DomSanitizer }, { token: i2.PepDialogService }, { token: i3.PepCustomizationService }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
215
|
-
PepRichHtmlTextareaComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: PepRichHtmlTextareaComponent, selector: "pep-rich-html-textarea", inputs: { key: "key", value: "value", label: "label", mandatory: "mandatory", disabled: "disabled", readonly: "readonly", maxFieldCharacters: "maxFieldCharacters", xAlignment: "xAlignment", rowSpan: "rowSpan", visible: "visible", form: "form", isActive: "isActive", showTitle: "showTitle", renderTitle: "renderTitle", layoutType: "layoutType", inlineMode: "inlineMode", toolbarOptions: "toolbarOptions" }, outputs: { valueChange: "valueChange" }, viewQueries: [{ propertyName: "richTextEditorDialogTemplate", first: true, predicate: ["richTextEditorDialogTemplate"], descendants: true, read: TemplateRef }], usesOnChanges: true, ngImport: i0, template: "<ng-container [formGroup]=\"form\">\n <ng-template #pepTemplate let-isFormView=\"isFormView\">\n <div class=\"pep-textarea-container pep-report-textarea\" [ngClass]=\"{ 'stand-alone': standAlone,\n 'right-alignment': xAlignment == 'right', 'one-row': !isFormView && rowSpan === 1,\n 'pep-textarea-card-container': layoutType === 'card'}\">\n <pep-field-title *ngIf=\"renderTitle && isFormView\" [label]=\"label\" [mandatory]=\"mandatory\"\n [disabled]=\"disabled\"\n [maxFieldCharacters]=\"inlineMode && !disabled && !readonly ? maxFieldCharacters : 0\"\n [xAlignment]=\"xAlignment\" [showTitle]=\"showTitle\" [inputLength]=\"quillContent?.length\">\n </pep-field-title>\n <mat-form-field appearance=\"outline\" dir=\"{{ xAlignment == 'right' ? 'rtl' : 'ltr' }}\"\n [ngClass]=\"{ 'pep-table-textarea': layoutType === 'table', 'active': active, 'ignore-disabled': disabled }\">\n <textarea [hidden]=\"true\" matInput [formControlName]=\"key\"></textarea>\n\n <ng-container *ngIf=\"inlineMode; then inlineBlock; else notInlineBlock\"></ng-container>\n\n <ng-template #inlineBlock>\n <ng-container *ngTemplateOutlet=\"quilTemplate; context: {inDialog: false}\"></ng-container>\n </ng-template>\n <ng-template #notInlineBlock>\n\n <!-- We can use the quill-view-html\n <quill-view-html class=\"body-sm rich-text-cont \"\n [ngStyle]=\"{ 'text-align': xAlignment == 'right' ? 'right' : 'left' }\" [content]=\"value | pepSafeHtml\"\n theme=\"snow\" [style.height]=\"fieldHeight\"></quill-view-html> \n -->\n\n <div class=\"body-sm rich-text-cont \"\n [ngStyle]=\"{ 'text-align': xAlignment == 'right' ? 'right' : 'left' }\"\n [innerHtml]=\"value | pepSafeHtml\" [style.height]=\"fieldHeight\">\n </div>\n </ng-template>\n <pep-textbox-icon matSuffix [value]=\"value\" [label]=\"label\" [type]=\"controlType\"\n [disabled]=\"disabled || readonly\"\n [ngClass]=\"{ 'card-one-row-icon': layoutType === 'card' && rowSpan === 1 }\"\n (iconClick)=\"openDialog()\">\n </pep-textbox-icon>\n <mat-error>\n <span class=\"body-xs\"\n [title]=\"mandatory && value.length == 0 ? ('MESSAGES.ERROR_IS_REQUIRED' | translate: { field: label }) : ('MESSAGES.ERROR_IS_NOT_VALID' | translate: { field: label })\"\n [innerText]=\"mandatory && value.length == 0 ? ('MESSAGES.ERROR_IS_REQUIRED' | translate: { field: label }) : ('MESSAGES.ERROR_IS_NOT_VALID' | translate: { field: label })\"></span>\n </mat-error>\n\n </mat-form-field>\n </div>\n </ng-template>\n\n <ng-container *ngIf=\"layoutType === 'form'\">\n <ng-container *ngTemplateOutlet=\"pepTemplate; context: { isFormView: true }\"></ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"layoutType === 'card'\">\n <div class=\"pep-textarea-card-container card-flex-container\"\n [ngClass]=\"{'one-row': rowSpan === 1, 'pep-button weak': isActive && !disabled}\"\n [ngStyle]=\"{ '-webkit-line-clamp': rowSpan }\" [class]=\"'text-align-' + xAlignment\"\n (click)=\"!disabled ? cardTemplateClicked($event) : ''\" [style.height]=\"fieldHeight\">\n <span *ngIf=\"showTitle && label != ''\" class=\"body-xs title no-shrink\" title=\"{{ label }}\">{{ label\n }}: </span>\n <span [id]=\"key\" class=\"body-sm value wrap\" [innerHtml]=\"value | pepSafeHtml\"></span>\n <button *ngIf=\"isActive && !disabled\" class=\"pep-button weak card-edit-button self-start\"\n [ngClass]=\"{'self-end' : value && value !== ''}\" mat-button>\n <mat-icon>\n <pep-icon name=\"system_edit\">\n </pep-icon>\n </mat-icon>\n </button>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"layoutType === 'table'\">\n <ng-container *ngIf=\"isActive && !disabled; then selectedBlock; else notSelectedBlock\"></ng-container>\n <ng-template #selectedBlock>\n <ng-container *ngTemplateOutlet=\"pepTemplate; context: { isFormView: false }\"></ng-container>\n </ng-template>\n <ng-template #notSelectedBlock>\n <ng-container *ngIf=\"value?.length > 0; then notEmptyBlock; else emptyBlock\"></ng-container>\n <ng-template #notEmptyBlock>\n <div class=\"pep-textarea-card-container card-flex-container one-row\">\n <span [id]=\"key\" class=\"wrap\" [innerHtml]=\"value | pepSafeHtml\"></span>\n </div>\n </ng-template>\n <ng-template #emptyBlock>\n <span> </span>\n </ng-template>\n </ng-template>\n </ng-container>\n</ng-container>\n\n<ng-template #richTextEditorDialogTemplate>\n <div class=\"rich-text-editor-container\">\n <button mat-button [mat-dialog-close]=\"null\" class=\"pep-button icon-button md weak pull-right flip\">\n <mat-icon>\n <pep-icon name=\"system_close\">\n </pep-icon>\n </mat-icon>\n </button>\n <ng-container *ngTemplateOutlet=\"quilTemplate; context: {inDialog: true}\"></ng-container>\n <div mat-dialog-actions class=\" pep-border-top\">\n <div class=\"pep-spacing-element-negative\">\n <button mat-button [mat-dialog-close]=\"null\" class=\"pep-spacing-element pep-button md weak\">\n {{'ACTIONS.CANCEL' | translate}}\n </button>\n <button mat-button [mat-dialog-close]=\"quillContentDialog || ''\" [disabled]=\"disabled\"\n class=\"pep-spacing-element pep-button md strong \">\n {{'ACTIONS.SAVE' | translate}}\n </button>\n </div>\n </div>\n </div>\n</ng-template>\n\n<ng-template #quilTemplate let-inDialog=\"inDialog\">\n <quill-editor id=\"{{inDialog ? 'quill-editor-dialog' : 'quill-editor-inline'}}\"\n [class]=\"inDialog ? 'dialog-quill' : 'inline-quill'\" [ngClass]=\"{ 'rich-text-cont': !inDialog }\"\n placeholder=\"{{'RICH_TEXTAREA.HINT' | translate}}\" [ngModel]=\"inDialog ? quillContentDialog : quillContent\"\n [sanitize]=\"true\" [readOnly]=\"disabled\" [maxLength]=\"maxFieldCharacters\" [required]=\"mandatory\"\n (onEditorCreated)=\"onEditorCreated($event, inDialog)\" (onContentChanged)=\"onContentChanged($event, inDialog)\"\n (onBlur)=\"onBlur($event, inDialog)\" (onFocus)=\"onFocus($event, inDialog)\" theme=\"\">\n <div *ngIf=\"!disabled\" quill-editor-toolbar>\n <div class=\"pep-spacing-element-negative\">\n <span class=\"ql-formats\">\n <select *ngIf=\"toolbarOptions?.font\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-font select-arrow\">\n <option selected></option>\n <option value=\"serif\"></option>\n <option value=\"monospace\"></option>\n </select>\n <select *ngIf=\"toolbarOptions?.size\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-size select-arrow\">\n <option value=\"small\"></option>\n <option selected></option>\n <option value=\"large\"></option>\n <option value=\"huge\"></option>\n </select>\n </span>\n <span class=\"ql-formats\">\n <select *ngIf=\"toolbarOptions?.header\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-header select-arrow\">\n <option value=\"1\"></option>\n <option value=\"2\"></option>\n <option value=\"3\"></option>\n <!-- \n <option value=\"4\"></option>\n <option value=\"5\"></option>\n <option value=\"6\"></option> \n -->\n <option value=\"false\" selected></option>\n </select>\n </span>\n <!-- <hr class=\"vertical-separator\" /> -->\n <span class=\"ql-formats\">\n <button mat-button *ngIf=\"toolbarOptions?.bold\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-bold\"></button>\n <button mat-button *ngIf=\"toolbarOptions?.italic\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-italic\"></button>\n <button mat-button *ngIf=\"toolbarOptions?.underline\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-underline\"></button>\n <button mat-button *ngIf=\"toolbarOptions?.strike\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-strike\"></button>\n </span>\n <span class=\"ql-formats\">\n <button mat-button *ngIf=\"toolbarOptions?.link\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-link\"></button>\n <button mat-button *ngIf=\"toolbarOptions?.image\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-image\"></button>\n </span>\n <!-- <hr class=\"vertical-separator\" /> -->\n <span class=\"ql-formats\">\n <button mat-button *ngIf=\"toolbarOptions?.ordered\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-list\" value=\"ordered\"></button>\n <button mat-button *ngIf=\"toolbarOptions?.bullet\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-list\" value=\"bullet\"></button>\n </span>\n <!-- <hr class=\"vertical-separator\" /> -->\n <span class=\"ql-formats\">\n <select *ngIf=\"toolbarOptions?.color\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-color\"></select>\n <select *ngIf=\"toolbarOptions?.background\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-background\"></select>\n </span>\n <span class=\"ql-formats\">\n <select *ngIf=\"toolbarOptions?.align\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-align\">\n <option selected></option>\n <option value=\"center\"></option>\n <option value=\"right\"></option>\n <option value=\"justify\"></option>\n </select>\n </span>\n </div>\n </div>\n </quill-editor>\n</ng-template>", styles: [".pepperi-textarea-container,.pep-textarea-container{height:inherit;display:grid;align-items:center}.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex{display:flex}.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix{line-height:unset;width:100%;height:100%;overflow:hidden;display:grid!important}.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element{margin:0;padding:.5rem 1.5rem .5rem 0;vertical-align:unset;resize:none;width:calc(100% + 3rem);max-width:unset;overflow-y:scroll;box-sizing:border-box}.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-prefix,.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-suffix,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-prefix,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-suffix{align-self:flex-end!important;margin-bottom:.5rem}.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix .mat-input-element,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix .mat-input-element{padding-top:.35rem}.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix,.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix{align-self:center!important;margin-bottom:unset}.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix .card-one-row-icon .pepperi-button,.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix .card-one-row-icon .pep-button,.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix .card-one-row-icon .pepperi-button,.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix .card-one-row-icon .pep-button,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix .card-one-row-icon .pepperi-button,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix .card-one-row-icon .pep-button,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix .card-one-row-icon .pepperi-button,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix .card-one-row-icon .pep-button{width:1rem!important;height:1rem!important}.pepperi-textarea-container.one-row .mat-form-field.pepperi-table-textarea ::ng-deep .mat-input-element,.pepperi-textarea-container.one-row .mat-form-field.pep-table-textarea ::ng-deep .mat-input-element,.pep-textarea-container.one-row .mat-form-field.pepperi-table-textarea ::ng-deep .mat-input-element,.pep-textarea-container.one-row .mat-form-field.pep-table-textarea ::ng-deep .mat-input-element{padding-top:.135rem!important}.pepperi-textarea-container .rich-text-cont,.pep-textarea-container .rich-text-cont{overflow-x:hidden;display:inline-block;vertical-align:unset;margin:0;padding:.5rem 1.5rem .5rem 0;resize:none;width:calc(100% + 3rem);max-width:unset;overflow-y:scroll;box-sizing:border-box}.pepperi-textarea-container.right-alignment .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element,.pep-textarea-container.right-alignment .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element{padding:.5rem 0 .5rem 1.5rem}.pepperi-textarea-container.right-alignment .rich-text-cont,.pep-textarea-container.right-alignment .rich-text-cont{padding:.5rem 0 .5rem 1.5rem}.pepperi-textarea-card-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex,.pep-textarea-card-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex{padding-left:.5rem;padding-right:.5rem}.pepperi-textarea-card-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex .mat-input-element,.pep-textarea-card-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex .mat-input-element{padding:.25rem 1.5rem .5rem 0}.pepperi-textarea-card-container.card-flex-container,.pep-textarea-card-container.card-flex-container{height:inherit;display:flex;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;white-space:unset;padding:.25rem;max-width:100%}.pepperi-textarea-card-container.card-flex-container.one-row .title,.pep-textarea-card-container.card-flex-container.one-row .title{padding-top:.25rem}.pepperi-textarea-card-container.card-flex-container span.value,.pep-textarea-card-container.card-flex-container span.value{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;white-space:unset}.pepperi-textarea-card-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix,.pep-textarea-card-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix{line-height:0!important}.pepperi-textarea-card-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix .mat-input-element,.pep-textarea-card-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix .mat-input-element{padding-top:0;padding-bottom:0}.pepperi-textarea-card-container.right-alignment .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element,.pep-textarea-card-container.right-alignment .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element{padding:.25rem 0 .5rem 1.5rem}.pepperi-report-textarea ::ng-deep .mat-form-field-suffix,.pep-report-textarea ::ng-deep .mat-form-field-suffix{right:0!important}.pepperi-report-textarea.readonly ::ng-deep .mat-form-field-wrapper .mat-form-field-flex,.pep-report-textarea.readonly ::ng-deep .mat-form-field-wrapper .mat-form-field-flex{padding:0}:host{height:inherit;display:block}.pepperi-textarea-container ::ng-deep .mat-form-field-infix,.pep-textarea-container ::ng-deep .mat-form-field-infix{margin-left:calc(var(--pep-spacing-md, .75rem) * -1)}.pepperi-textarea-container.right-alignment ::ng-deep .mat-form-field-infix,.pep-textarea-container.right-alignment ::ng-deep .mat-form-field-infix{margin-left:unset;margin-right:calc(var(--pep-spacing-md, .75rem) * -1)}.vertical-separator{display:none}\n", ".pepperi-textarea-container,.pep-textarea-container{height:inherit;display:grid;align-items:center}.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex{display:flex}.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix{line-height:unset;width:100%;height:100%;overflow:hidden;display:grid!important}.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element{margin:0;padding:.5rem 1.5rem .5rem 0;vertical-align:unset;resize:none;width:calc(100% + 3rem);max-width:unset;overflow-y:scroll;box-sizing:border-box}.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-prefix,.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-suffix,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-prefix,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-suffix{align-self:flex-end!important;margin-bottom:.5rem}.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix .mat-input-element,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix .mat-input-element{padding-top:.35rem}.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix,.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix{align-self:center!important;margin-bottom:unset}.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix .card-one-row-icon .pepperi-button,.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix .card-one-row-icon .pep-button,.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix .card-one-row-icon .pepperi-button,.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix .card-one-row-icon .pep-button,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix .card-one-row-icon .pepperi-button,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix .card-one-row-icon .pep-button,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix .card-one-row-icon .pepperi-button,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix .card-one-row-icon .pep-button{width:1rem!important;height:1rem!important}.pepperi-textarea-container.one-row .mat-form-field.pepperi-table-textarea ::ng-deep .mat-input-element,.pepperi-textarea-container.one-row .mat-form-field.pep-table-textarea ::ng-deep .mat-input-element,.pep-textarea-container.one-row .mat-form-field.pepperi-table-textarea ::ng-deep .mat-input-element,.pep-textarea-container.one-row .mat-form-field.pep-table-textarea ::ng-deep .mat-input-element{padding-top:.135rem!important}.pepperi-textarea-container .rich-text-cont,.pep-textarea-container .rich-text-cont{overflow-x:hidden;display:inline-block;vertical-align:unset;margin:0;padding:.5rem 1.5rem .5rem 0;resize:none;width:calc(100% + 3rem);max-width:unset;overflow-y:scroll;box-sizing:border-box}.pepperi-textarea-container.right-alignment .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element,.pep-textarea-container.right-alignment .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element{padding:.5rem 0 .5rem 1.5rem}.pepperi-textarea-container.right-alignment .rich-text-cont,.pep-textarea-container.right-alignment .rich-text-cont{padding:.5rem 0 .5rem 1.5rem}.pepperi-textarea-card-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex,.pep-textarea-card-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex{padding-left:.5rem;padding-right:.5rem}.pepperi-textarea-card-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex .mat-input-element,.pep-textarea-card-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex .mat-input-element{padding:.25rem 1.5rem .5rem 0}.pepperi-textarea-card-container.card-flex-container,.pep-textarea-card-container.card-flex-container{height:inherit;display:flex;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;white-space:unset;padding:.25rem;max-width:100%}.pepperi-textarea-card-container.card-flex-container.one-row .title,.pep-textarea-card-container.card-flex-container.one-row .title{padding-top:.25rem}.pepperi-textarea-card-container.card-flex-container span.value,.pep-textarea-card-container.card-flex-container span.value{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;white-space:unset}.pepperi-textarea-card-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix,.pep-textarea-card-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix{line-height:0!important}.pepperi-textarea-card-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix .mat-input-element,.pep-textarea-card-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix .mat-input-element{padding-top:0;padding-bottom:0}.pepperi-textarea-card-container.right-alignment .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element,.pep-textarea-card-container.right-alignment .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element{padding:.25rem 0 .5rem 1.5rem}.pepperi-report-textarea ::ng-deep .mat-form-field-suffix,.pep-report-textarea ::ng-deep .mat-form-field-suffix{right:0!important}.pepperi-report-textarea.readonly ::ng-deep .mat-form-field-wrapper .mat-form-field-flex,.pep-report-textarea.readonly ::ng-deep .mat-form-field-wrapper .mat-form-field-flex{padding:0}.pepperi-report-textarea ::ng-deep .mat-form-field-flex,.pep-report-textarea ::ng-deep .mat-form-field-flex{background:transparent!important}.mat-form-field.mat-form-field-disabled ::ng-deep .mat-form-field-flex{color:hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%))}.right-alignment quill-editor.inline-quill::ng-deep .ql-container .ql-editor{padding-right:unset;padding-left:calc(var(--pep-spacing-sm, .5rem) + 1rem)}quill-editor.inline-quill::ng-deep .ql-container .ql-editor{width:calc(100% + 1rem);padding-right:calc(var(--pep-spacing-sm, .5rem) + 1rem)}quill-editor ::ng-deep .ql-toolbar{display:flex;padding:0!important;border:unset}quill-editor ::ng-deep .ql-toolbar .ql-transparent{opacity:.9}quill-editor ::ng-deep .ql-toolbar .ql-formats{margin-right:0!important;margin-bottom:.5rem}quill-editor ::ng-deep .ql-toolbar .ql-formats button{height:2.5rem}quill-editor ::ng-deep .ql-toolbar .ql-formats button svg{width:1.25rem!important;float:unset!important}quill-editor ::ng-deep .ql-toolbar .ql-formats button.ql-active{box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);position:relative}quill-editor ::ng-deep .ql-toolbar .ql-formats button.ql-active:not(.keep-background-on-focus){background:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%))}quill-editor ::ng-deep .ql-toolbar .ql-formats button.ql-active:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;top:0;bottom:0;left:0;right:0;border-radius:inherit;border:1px solid hsl(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%))}quill-editor ::ng-deep .ql-toolbar .ql-formats button:focus{box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);position:relative}quill-editor ::ng-deep .ql-toolbar .ql-formats button:focus:not(.keep-background-on-focus){background:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%))}quill-editor ::ng-deep .ql-toolbar .ql-formats button:focus:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;top:0;bottom:0;left:0;right:0;border-radius:inherit;border:1px solid hsl(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%))}quill-editor ::ng-deep .ql-toolbar .ql-formats button:active{box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);position:relative}quill-editor ::ng-deep .ql-toolbar .ql-formats button:active:not(.keep-background-on-focus){background:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%))}quill-editor ::ng-deep .ql-toolbar .ql-formats button:active:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;top:0;bottom:0;left:0;right:0;border-radius:inherit;border:1px solid hsl(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%))}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-stroke{stroke:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.8)}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-fill{fill:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.8)}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker:not(.ql-color-picker) .ql-picker-options .ql-picker-item{outline:unset!important;width:100%;height:auto;padding:var(--pep-spacing-xs, .25rem) var(--pep-spacing-sm, .5rem);display:grid}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker:not(.ql-color-picker) .ql-picker-options .ql-picker-item:hover{background:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.16)}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker:not(.ql-color-picker) .ql-picker-options .ql-picker-item:active{box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);background:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.24)!important}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker:not(.ql-color-picker) .ql-picker-options .ql-picker-item:active:not(.keep-background-on-focus){background:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%))}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker:not(.ql-color-picker) .ql-picker-options .ql-picker-item:disabled{box-shadow:unset;border:unset;color:hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.35)!important;background:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.04)!important}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker:not(.ql-color-picker) .ql-picker-options .ql-picker-item:disabled:after{border:unset}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker:not(.ql-color-picker) .ql-picker-options .ql-picker-item:disabled .svg-icon{fill:hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.35)}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker:not(.ql-color-picker) .ql-picker-options .ql-picker-item:disabled .svg-icon.stroke{fill:unset;stroke:hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.35)}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-color-picker,quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-icon-picker{width:unset}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker .ql-picker-label{outline:none;display:grid;grid-auto-flow:column;align-items:center;line-height:1rem;border:unset}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker .ql-picker-label svg{width:1.5rem}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker .ql-picker-label:after{content:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgaWQ9InN2ZzQiCiAgIHZlcnNpb249IjEuMSIKICAgdmlld0JveD0iMCAwIDI0IDI0IgogICBoZWlnaHQ9IjE2IgogICB3aWR0aD0iMTYiPgogIDxtZXRhZGF0YQogICAgIGlkPSJtZXRhZGF0YTEwIj4KICAgIDxyZGY6UkRGPgogICAgICA8Y2M6V29yawogICAgICAgICByZGY6YWJvdXQ9IiI+CiAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9zdmcreG1sPC9kYzpmb3JtYXQ+CiAgICAgICAgPGRjOnR5cGUKICAgICAgICAgICByZGY6cmVzb3VyY2U9Imh0dHA6Ly9wdXJsLm9yZy9kYy9kY21pdHlwZS9TdGlsbEltYWdlIiAvPgogICAgICA8L2NjOldvcms+CiAgICA8L3JkZjpSREY+CiAgPC9tZXRhZGF0YT4KICA8ZGVmcwogICAgIGlkPSJkZWZzOCIgLz4KICA8cGF0aAogICAgIGlkPSJwYXRoMiIKICAgICBkPSJNNS44MDAzMjE0OCw5LjI4Njc0MzU0IEwxMS4yNTQyODI0LDEzLjIwMjc1ODMgQzExLjY2NjEzMDksMTMuNTg1MDgzIDEyLjMzMzg2OTEsMTMuNTg1MDgzIDEyLjc0NTcxNzYsMTMuMjAyNzU4MyBMMTguMTk5Njc4NSw5LjI4Njc0MzU0IEMxOC42MTE1MjcsOC45MDQ0MTg4MiAxOS4yNzkyNjUyLDguOTA0NDE4ODIgMTkuNjkxMTEzNyw5LjI4Njc0MzU0IEMyMC4xMDI5NjIxLDkuNjY5MDY4MjYgMjAuMTAyOTYyMSwxMC4yODg5MzkxIDE5LjY5MTExMzcsMTAuNjcxMjYzOCBMMTMuNDkxNDM1MSwxNi40MjY1MTI5IEMxMi42Njc3MzgzLDE3LjE5MTE2MjQgMTEuMzMyMjYxNywxNy4xOTExNjI0IDEwLjUwODU2NDksMTYuNDI2NTEyOSBMNC4zMDg4ODYzMywxMC42NzEyNjM4IEMzLjg5NzAzNzg5LDEwLjI4ODkzOTEgMy44OTcwMzc4OSw5LjY2OTA2ODI2IDQuMzA4ODg2MzMsOS4yODY3NDM1NCBDNC43MjA3MzQ3OCw4LjkwNDQxODgyIDUuMzg4NDczMDMsOC45MDQ0MTg4MiA1LjgwMDMyMTQ4LDkuMjg2NzQzNTQgWiIKICAgICBmaWxsLXJ1bGU9ImV2ZW5vZGQiCiAgICAgZmlsbC1vcGFjaXR5PSIuNSIgLz4KPC9zdmc+Cg==);cursor:pointer;display:grid;height:inherit;justify-content:center;align-content:center}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.select-arrow .ql-picker-label:before{line-height:unset}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.select-arrow .ql-picker-label svg{display:none}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker .ql-picker-options{border-radius:var(--pep-border-radius-md, .25rem);box-sizing:content-box;padding:unset;box-shadow:var(--pep-shadow-sm-offset, 0 .25rem .5rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.32);border:1px solid hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%))}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-color-picker .ql-picker-options{padding:var(--pep-spacing-xs, .25rem) var(--pep-spacing-sm, .5rem);width:140px}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-color-picker .ql-picker-options:focus{outline:unset!important}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-color-picker .ql-picker-options .ql-picker-item:focus{outline:unset!important}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-expanded{box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);position:relative}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-expanded:not(.keep-background-on-focus){background:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%))}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-expanded:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;top:0;bottom:0;left:0;right:0;border-radius:inherit;border:1px solid hsl(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%))}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:hsl(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%))}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:hsl(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%))}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-expanded .ql-picker-label{border:unset}quill-editor ::ng-deep .ql-toolbar .vertical-separator{border-color:hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.24)}@media (max-width: 568px){quill-editor ::ng-deep .ql-toolbar .ql-list{display:none}}@media (max-width: 599px){quill-editor ::ng-deep .ql-toolbar .ql-italic,quill-editor ::ng-deep .ql-toolbar .ql-underline{display:none}}@media (max-width: 460px){quill-editor ::ng-deep .ql-toolbar .ql-italic,quill-editor ::ng-deep .ql-toolbar .ql-image,quill-editor ::ng-deep .ql-toolbar .ql-underline,quill-editor ::ng-deep .ql-toolbar .ql-list,quill-editor ::ng-deep .ql-toolbar .ql-header{display:none}}quill-editor ::ng-deep .ql-container{height:16rem;border:unset;border-top:1px solid hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.24)!important}quill-editor ::ng-deep .ql-container .ql-editor{padding:var(--pep-spacing-sm, .5rem) 0}quill-editor ::ng-deep .ql-container .ql-editor.ql-blank:before{right:0;left:0}quill-editor ::ng-deep .ql-container .ql-tooltip.ql-flip{left:0!important}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i5.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i5.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i6.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { kind: "component", type: i7.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i8.MatError, selector: "mat-error", inputs: ["id"] }, { kind: "component", type: i8.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i8.MatSuffix, selector: "[matSuffix]" }, { kind: "directive", type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i11.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i11.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: i12.QuillEditorComponent, selector: "quill-editor" }, { kind: "component", type: i1$1.PepIconComponent, selector: "pep-icon", inputs: ["spin", "name", "fill"] }, { kind: "component", type: i14.PepFieldTitleComponent, selector: "pep-field-title", inputs: ["label", "mandatory", "disabled", "maxFieldCharacters", "hint", "xAlignment", "showTitle", "inputLength"] }, { kind: "component", type: i15.PepTextboxIconComponent, selector: "pep-textbox-icon", inputs: ["value", "label", "type", "disabled"], outputs: ["iconClick"] }, { kind: "pipe", type: i3.PepSafeHtmlPipe, name: "pepSafeHtml" }, { kind: "pipe", type: i16.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
215
|
+
PepRichHtmlTextareaComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: PepRichHtmlTextareaComponent, selector: "pep-rich-html-textarea", inputs: { key: "key", value: "value", label: "label", mandatory: "mandatory", disabled: "disabled", readonly: "readonly", maxFieldCharacters: "maxFieldCharacters", xAlignment: "xAlignment", rowSpan: "rowSpan", visible: "visible", form: "form", isActive: "isActive", showTitle: "showTitle", renderTitle: "renderTitle", layoutType: "layoutType", inlineMode: "inlineMode", toolbarOptions: "toolbarOptions" }, outputs: { valueChange: "valueChange" }, viewQueries: [{ propertyName: "richTextEditorDialogTemplate", first: true, predicate: ["richTextEditorDialogTemplate"], descendants: true, read: TemplateRef }], usesOnChanges: true, ngImport: i0, template: "<ng-container [formGroup]=\"form\">\n <ng-template #pepTemplate let-isFormView=\"isFormView\">\n <div class=\"pep-textarea-container pep-report-textarea\" [ngClass]=\"{ 'stand-alone': standAlone,\n 'right-alignment': xAlignment == 'right', 'one-row': !isFormView && rowSpan === 1,\n 'pep-textarea-card-container': layoutType === 'card'}\">\n <pep-field-title *ngIf=\"renderTitle && isFormView\" [label]=\"label\" [mandatory]=\"mandatory\"\n [disabled]=\"disabled\"\n [maxFieldCharacters]=\"inlineMode && !disabled && !readonly ? maxFieldCharacters : 0\"\n [xAlignment]=\"xAlignment\" [showTitle]=\"showTitle\" [inputLength]=\"quillContent?.length\">\n </pep-field-title>\n <mat-form-field appearance=\"outline\" dir=\"{{ xAlignment == 'right' ? 'rtl' : 'ltr' }}\"\n [ngClass]=\"{ 'pep-table-textarea': layoutType === 'table', 'active': active, 'ignore-disabled': disabled }\">\n <textarea [hidden]=\"true\" matInput [formControlName]=\"key\"></textarea>\n\n <ng-container *ngIf=\"inlineMode; then inlineBlock; else notInlineBlock\"></ng-container>\n\n <ng-template #inlineBlock>\n <ng-container *ngTemplateOutlet=\"quilTemplate; context: {inDialog: false}\"></ng-container>\n </ng-template>\n <ng-template #notInlineBlock>\n\n <!-- We can use the quill-view-html\n <quill-view-html class=\"body-sm rich-text-cont \"\n [ngStyle]=\"{ 'text-align': xAlignment == 'right' ? 'right' : 'left' }\" [content]=\"value | pepSafeHtml\"\n theme=\"snow\" [style.height]=\"fieldHeight\"></quill-view-html> \n -->\n\n <div class=\"body-sm rich-text-cont \"\n [ngStyle]=\"{ 'text-align': xAlignment == 'right' ? 'right' : 'left' }\"\n [innerHtml]=\"value | pepSafeHtml\" [style.height]=\"fieldHeight\">\n </div>\n </ng-template>\n <pep-textbox-icon matSuffix [value]=\"value\" [label]=\"label\" [type]=\"controlType\"\n [disabled]=\"disabled || readonly\"\n [ngClass]=\"{ 'card-one-row-icon': layoutType === 'card' && rowSpan === 1 }\"\n (iconClick)=\"openDialog()\">\n </pep-textbox-icon>\n <mat-error>\n <span class=\"body-xs\"\n [title]=\"mandatory && value.length == 0 ? ('MESSAGES.ERROR_IS_REQUIRED' | translate: { field: label }) : ('MESSAGES.ERROR_IS_NOT_VALID' | translate: { field: label })\"\n [innerText]=\"mandatory && value.length == 0 ? ('MESSAGES.ERROR_IS_REQUIRED' | translate: { field: label }) : ('MESSAGES.ERROR_IS_NOT_VALID' | translate: { field: label })\"></span>\n </mat-error>\n\n </mat-form-field>\n </div>\n </ng-template>\n\n <ng-container *ngIf=\"layoutType === 'form'\">\n <ng-container *ngTemplateOutlet=\"pepTemplate; context: { isFormView: true }\"></ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"layoutType === 'card'\">\n <div class=\"pep-textarea-card-container card-flex-container\"\n [ngClass]=\"{'one-row': rowSpan === 1, 'pep-button weak': isActive && !disabled}\"\n [ngStyle]=\"{ '-webkit-line-clamp': rowSpan }\" [class]=\"'text-align-' + xAlignment\"\n (click)=\"!disabled ? cardTemplateClicked($event) : ''\" [style.height]=\"fieldHeight\">\n <span *ngIf=\"showTitle && label != ''\" class=\"body-xs title no-shrink\" title=\"{{ label }}\">{{ label\n }}: </span>\n <span [id]=\"key\" class=\"body-sm value wrap\" [innerHtml]=\"value | pepSafeHtml\"></span>\n <button *ngIf=\"isActive && !disabled\" class=\"pep-button weak card-edit-button self-start\"\n [ngClass]=\"{'self-end' : value && value !== ''}\" mat-button>\n <mat-icon>\n <pep-icon name=\"system_edit\">\n </pep-icon>\n </mat-icon>\n </button>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"layoutType === 'table'\">\n <ng-container *ngIf=\"isActive && !disabled; then selectedBlock; else notSelectedBlock\"></ng-container>\n <ng-template #selectedBlock>\n <ng-container *ngTemplateOutlet=\"pepTemplate; context: { isFormView: false }\"></ng-container>\n </ng-template>\n <ng-template #notSelectedBlock>\n <ng-container *ngIf=\"value?.length > 0; then notEmptyBlock; else emptyBlock\"></ng-container>\n <ng-template #notEmptyBlock>\n <div class=\"pep-textarea-card-container card-flex-container one-row\">\n <span [id]=\"key\" class=\"wrap\" [innerHtml]=\"value | pepSafeHtml\"></span>\n </div>\n </ng-template>\n <ng-template #emptyBlock>\n <span> </span>\n </ng-template>\n </ng-template>\n </ng-container>\n</ng-container>\n\n<ng-template #richTextEditorDialogTemplate>\n <div class=\"rich-text-editor-container\">\n <button mat-button [mat-dialog-close]=\"null\" class=\"pep-button icon-button md weak pull-right flip\">\n <mat-icon>\n <pep-icon name=\"system_close\">\n </pep-icon>\n </mat-icon>\n </button>\n <ng-container *ngTemplateOutlet=\"quilTemplate; context: {inDialog: true}\"></ng-container>\n <div mat-dialog-actions class=\" pep-border-top\">\n <div class=\"pep-spacing-element-negative\">\n <button mat-button [mat-dialog-close]=\"null\" class=\"pep-spacing-element pep-button md weak\">\n {{'ACTIONS.CANCEL' | translate}}\n </button>\n <button mat-button [mat-dialog-close]=\"quillContentDialog || ''\" [disabled]=\"disabled\"\n class=\"pep-spacing-element pep-button md strong \">\n {{'ACTIONS.SAVE' | translate}}\n </button>\n </div>\n </div>\n </div>\n</ng-template>\n\n<ng-template #quilTemplate let-inDialog=\"inDialog\">\n <quill-editor id=\"{{inDialog ? 'quill-editor-dialog' : 'quill-editor-inline'}}\"\n [class]=\"inDialog ? 'dialog-quill' : 'inline-quill'\" [ngClass]=\"{ 'rich-text-cont': !inDialog }\"\n placeholder=\"{{'RICH_TEXTAREA.HINT' | translate}}\" [ngModel]=\"inDialog ? quillContentDialog : quillContent\"\n [sanitize]=\"true\" [readOnly]=\"disabled\" [maxLength]=\"maxFieldCharacters\" [required]=\"mandatory\"\n (onEditorCreated)=\"onEditorCreated($event, inDialog)\" (onContentChanged)=\"onContentChanged($event, inDialog)\"\n (onBlur)=\"onBlur($event, inDialog)\" (onFocus)=\"onFocus($event, inDialog)\" theme=\"\">\n <div *ngIf=\"!disabled\" quill-editor-toolbar>\n <div class=\"pep-spacing-element-negative\">\n <span class=\"ql-formats\">\n <select *ngIf=\"toolbarOptions?.font\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-font select-arrow\">\n <option selected></option>\n <option value=\"serif\"></option>\n <option value=\"monospace\"></option>\n </select>\n <select *ngIf=\"toolbarOptions?.size\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-size select-arrow\">\n <option value=\"small\"></option>\n <option selected></option>\n <option value=\"large\"></option>\n <option value=\"huge\"></option>\n </select>\n </span>\n <span class=\"ql-formats\">\n <select *ngIf=\"toolbarOptions?.header\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-header select-arrow\">\n <option value=\"1\"></option>\n <option value=\"2\"></option>\n <option value=\"3\"></option>\n <!-- \n <option value=\"4\"></option>\n <option value=\"5\"></option>\n <option value=\"6\"></option> \n -->\n <option value=\"false\" selected></option>\n </select>\n </span>\n <!-- <hr class=\"vertical-separator\" /> -->\n <span class=\"ql-formats\">\n <button mat-button *ngIf=\"toolbarOptions?.bold\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-bold\"></button>\n <button mat-button *ngIf=\"toolbarOptions?.italic\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-italic\"></button>\n <button mat-button *ngIf=\"toolbarOptions?.underline\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-underline\"></button>\n <button mat-button *ngIf=\"toolbarOptions?.strike\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-strike\"></button>\n </span>\n <span class=\"ql-formats\">\n <button mat-button *ngIf=\"toolbarOptions?.link\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-link\"></button>\n <button mat-button *ngIf=\"toolbarOptions?.image\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-image\"></button>\n </span>\n <!-- <hr class=\"vertical-separator\" /> -->\n <span class=\"ql-formats\">\n <button mat-button *ngIf=\"toolbarOptions?.ordered\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-list\" value=\"ordered\"></button>\n <button mat-button *ngIf=\"toolbarOptions?.bullet\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-list\" value=\"bullet\"></button>\n </span>\n <!-- <hr class=\"vertical-separator\" /> -->\n <span class=\"ql-formats\">\n <select *ngIf=\"toolbarOptions?.color\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-color\"></select>\n <select *ngIf=\"toolbarOptions?.background\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-background\"></select>\n </span>\n <span class=\"ql-formats\">\n <select *ngIf=\"toolbarOptions?.align\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-align\">\n <option selected></option>\n <option value=\"center\"></option>\n <option value=\"right\"></option>\n <option value=\"justify\"></option>\n </select>\n </span>\n </div>\n </div>\n </quill-editor>\n</ng-template>", styles: [".pepperi-textarea-container,.pep-textarea-container{height:inherit;display:grid;align-items:center}.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex{display:flex}.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix{line-height:unset;width:100%;height:100%;overflow:hidden;display:grid!important}.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element{margin:0;padding:.5rem 1.5rem .5rem 0;vertical-align:unset;resize:none;width:calc(100% + 3rem);max-width:unset;overflow-y:scroll;box-sizing:border-box}.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-prefix,.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-suffix,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-prefix,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-suffix{align-self:flex-end!important;margin-bottom:.5rem}.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix .mat-input-element,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix .mat-input-element{padding-top:.35rem}.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix,.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix{align-self:center!important;margin-bottom:unset}.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix .card-one-row-icon .pepperi-button,.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix .card-one-row-icon .pep-button,.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix .card-one-row-icon .pepperi-button,.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix .card-one-row-icon .pep-button,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix .card-one-row-icon .pepperi-button,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix .card-one-row-icon .pep-button,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix .card-one-row-icon .pepperi-button,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix .card-one-row-icon .pep-button{width:1rem!important;height:1rem!important}.pepperi-textarea-container.one-row .mat-form-field.pepperi-table-textarea ::ng-deep .mat-input-element,.pepperi-textarea-container.one-row .mat-form-field.pep-table-textarea ::ng-deep .mat-input-element,.pep-textarea-container.one-row .mat-form-field.pepperi-table-textarea ::ng-deep .mat-input-element,.pep-textarea-container.one-row .mat-form-field.pep-table-textarea ::ng-deep .mat-input-element{padding-top:.135rem!important}.pepperi-textarea-container .rich-text-cont,.pep-textarea-container .rich-text-cont{overflow-x:hidden;display:inline-block;vertical-align:unset;margin:0;padding:.5rem 1.5rem .5rem 0;resize:none;width:calc(100% + 3rem);max-width:unset;overflow-y:scroll;box-sizing:border-box}.pepperi-textarea-container.right-alignment .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element,.pep-textarea-container.right-alignment .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element{padding:.5rem 0 .5rem 1.5rem}.pepperi-textarea-container.right-alignment .rich-text-cont,.pep-textarea-container.right-alignment .rich-text-cont{padding:.5rem 0 .5rem 1.5rem}.pepperi-textarea-card-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex,.pep-textarea-card-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex{padding-left:.5rem;padding-right:.5rem}.pepperi-textarea-card-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex .mat-input-element,.pep-textarea-card-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex .mat-input-element{padding:.25rem 1.5rem .5rem 0}.pepperi-textarea-card-container.card-flex-container,.pep-textarea-card-container.card-flex-container{height:inherit;display:flex;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;white-space:unset;padding:.25rem;max-width:100%}.pepperi-textarea-card-container.card-flex-container.one-row .title,.pep-textarea-card-container.card-flex-container.one-row .title{padding-top:.25rem}.pepperi-textarea-card-container.card-flex-container span.value,.pep-textarea-card-container.card-flex-container span.value{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;white-space:unset}.pepperi-textarea-card-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix,.pep-textarea-card-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix{line-height:0!important}.pepperi-textarea-card-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix .mat-input-element,.pep-textarea-card-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix .mat-input-element{padding-top:0;padding-bottom:0}.pepperi-textarea-card-container.right-alignment .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element,.pep-textarea-card-container.right-alignment .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element{padding:.25rem 0 .5rem 1.5rem}.pepperi-report-textarea ::ng-deep .mat-form-field-suffix,.pep-report-textarea ::ng-deep .mat-form-field-suffix{right:0!important}.pepperi-report-textarea.readonly ::ng-deep .mat-form-field-wrapper .mat-form-field-flex,.pep-report-textarea.readonly ::ng-deep .mat-form-field-wrapper .mat-form-field-flex{padding:0}:host{height:inherit;display:block}.pepperi-textarea-container ::ng-deep .mat-form-field-infix,.pep-textarea-container ::ng-deep .mat-form-field-infix{margin-left:calc(var(--pep-spacing-md, .75rem) * -1)}.pepperi-textarea-container.right-alignment ::ng-deep .mat-form-field-infix,.pep-textarea-container.right-alignment ::ng-deep .mat-form-field-infix{margin-left:unset;margin-right:calc(var(--pep-spacing-md, .75rem) * -1)}.vertical-separator{display:none}\n", ".pepperi-textarea-container,.pep-textarea-container{height:inherit;display:grid;align-items:center}.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex{display:flex}.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix{line-height:unset;width:100%;height:100%;overflow:hidden;display:grid!important}.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element{margin:0;padding:.5rem 1.5rem .5rem 0;vertical-align:unset;resize:none;width:calc(100% + 3rem);max-width:unset;overflow-y:scroll;box-sizing:border-box}.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-prefix,.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-suffix,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-prefix,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-suffix{align-self:flex-end!important;margin-bottom:.5rem}.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix .mat-input-element,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix .mat-input-element{padding-top:.35rem}.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix,.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix{align-self:center!important;margin-bottom:unset}.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix .card-one-row-icon .pepperi-button,.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix .card-one-row-icon .pep-button,.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix .card-one-row-icon .pepperi-button,.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix .card-one-row-icon .pep-button,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix .card-one-row-icon .pepperi-button,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix .card-one-row-icon .pep-button,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix .card-one-row-icon .pepperi-button,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix .card-one-row-icon .pep-button{width:1rem!important;height:1rem!important}.pepperi-textarea-container.one-row .mat-form-field.pepperi-table-textarea ::ng-deep .mat-input-element,.pepperi-textarea-container.one-row .mat-form-field.pep-table-textarea ::ng-deep .mat-input-element,.pep-textarea-container.one-row .mat-form-field.pepperi-table-textarea ::ng-deep .mat-input-element,.pep-textarea-container.one-row .mat-form-field.pep-table-textarea ::ng-deep .mat-input-element{padding-top:.135rem!important}.pepperi-textarea-container .rich-text-cont,.pep-textarea-container .rich-text-cont{overflow-x:hidden;display:inline-block;vertical-align:unset;margin:0;padding:.5rem 1.5rem .5rem 0;resize:none;width:calc(100% + 3rem);max-width:unset;overflow-y:scroll;box-sizing:border-box}.pepperi-textarea-container.right-alignment .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element,.pep-textarea-container.right-alignment .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element{padding:.5rem 0 .5rem 1.5rem}.pepperi-textarea-container.right-alignment .rich-text-cont,.pep-textarea-container.right-alignment .rich-text-cont{padding:.5rem 0 .5rem 1.5rem}.pepperi-textarea-card-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex,.pep-textarea-card-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex{padding-left:.5rem;padding-right:.5rem}.pepperi-textarea-card-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex .mat-input-element,.pep-textarea-card-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex .mat-input-element{padding:.25rem 1.5rem .5rem 0}.pepperi-textarea-card-container.card-flex-container,.pep-textarea-card-container.card-flex-container{height:inherit;display:flex;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;white-space:unset;padding:.25rem;max-width:100%}.pepperi-textarea-card-container.card-flex-container.one-row .title,.pep-textarea-card-container.card-flex-container.one-row .title{padding-top:.25rem}.pepperi-textarea-card-container.card-flex-container span.value,.pep-textarea-card-container.card-flex-container span.value{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;white-space:unset}.pepperi-textarea-card-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix,.pep-textarea-card-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix{line-height:0!important}.pepperi-textarea-card-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix .mat-input-element,.pep-textarea-card-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix .mat-input-element{padding-top:0;padding-bottom:0}.pepperi-textarea-card-container.right-alignment .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element,.pep-textarea-card-container.right-alignment .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element{padding:.25rem 0 .5rem 1.5rem}.pepperi-report-textarea ::ng-deep .mat-form-field-suffix,.pep-report-textarea ::ng-deep .mat-form-field-suffix{right:0!important}.pepperi-report-textarea.readonly ::ng-deep .mat-form-field-wrapper .mat-form-field-flex,.pep-report-textarea.readonly ::ng-deep .mat-form-field-wrapper .mat-form-field-flex{padding:0}.pepperi-report-textarea ::ng-deep .mat-form-field-flex,.pep-report-textarea ::ng-deep .mat-form-field-flex{background:transparent!important}.mat-form-field.mat-form-field-disabled ::ng-deep .mat-form-field-flex{color:hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%))}.right-alignment quill-editor.inline-quill::ng-deep .ql-container .ql-editor{padding-right:unset;padding-left:calc(var(--pep-spacing-sm, .5rem) + 1rem)}quill-editor.inline-quill::ng-deep .ql-container .ql-editor{width:calc(100% + 1rem);padding-right:calc(var(--pep-spacing-sm, .5rem) + 1rem)}quill-editor ::ng-deep .ql-toolbar{display:flex;padding:0!important;border:unset}quill-editor ::ng-deep .ql-toolbar .ql-transparent{opacity:.9}quill-editor ::ng-deep .ql-toolbar .ql-formats{margin-right:0!important;margin-bottom:.5rem}quill-editor ::ng-deep .ql-toolbar .ql-formats button{height:2.5rem}quill-editor ::ng-deep .ql-toolbar .ql-formats button svg{width:1.25rem!important;float:unset!important}quill-editor ::ng-deep .ql-toolbar .ql-formats button.ql-active{box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);position:relative}quill-editor ::ng-deep .ql-toolbar .ql-formats button.ql-active:not(.keep-background-on-focus){background:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%))}quill-editor ::ng-deep .ql-toolbar .ql-formats button.ql-active:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;top:0;bottom:0;left:0;right:0;border-radius:inherit;border:1px solid hsl(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%))}quill-editor ::ng-deep .ql-toolbar .ql-formats button:focus{box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);position:relative}quill-editor ::ng-deep .ql-toolbar .ql-formats button:focus:not(.keep-background-on-focus){background:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%))}quill-editor ::ng-deep .ql-toolbar .ql-formats button:focus:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;top:0;bottom:0;left:0;right:0;border-radius:inherit;border:1px solid hsl(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%))}quill-editor ::ng-deep .ql-toolbar .ql-formats button:active{box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);position:relative}quill-editor ::ng-deep .ql-toolbar .ql-formats button:active:not(.keep-background-on-focus){background:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%))}quill-editor ::ng-deep .ql-toolbar .ql-formats button:active:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;top:0;bottom:0;left:0;right:0;border-radius:inherit;border:1px solid hsl(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%))}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-stroke{stroke:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.8)}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-fill{fill:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.8)}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker:not(.ql-color-picker) .ql-picker-options .ql-picker-item{outline:unset!important;width:100%;height:auto;padding:var(--pep-spacing-xs, .25rem) var(--pep-spacing-sm, .5rem);display:grid}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker:not(.ql-color-picker) .ql-picker-options .ql-picker-item:hover{background:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.16)}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker:not(.ql-color-picker) .ql-picker-options .ql-picker-item:active{box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);background:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.24)!important}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker:not(.ql-color-picker) .ql-picker-options .ql-picker-item:active:not(.keep-background-on-focus){background:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%))}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker:not(.ql-color-picker) .ql-picker-options .ql-picker-item:disabled{box-shadow:unset;border:unset;color:hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.35)!important;background:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.04)!important}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker:not(.ql-color-picker) .ql-picker-options .ql-picker-item:disabled:after{border:unset}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker:not(.ql-color-picker) .ql-picker-options .ql-picker-item:disabled .svg-icon{fill:hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.35)}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker:not(.ql-color-picker) .ql-picker-options .ql-picker-item:disabled .svg-icon.stroke{fill:unset;stroke:hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.35)}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-color-picker,quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-icon-picker{width:unset}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker .ql-picker-label{outline:none;display:grid;grid-auto-flow:column;align-items:center;line-height:1rem;border:unset}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker .ql-picker-label svg{width:1.5rem}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker .ql-picker-label:after{content:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgaWQ9InN2ZzQiCiAgIHZlcnNpb249IjEuMSIKICAgdmlld0JveD0iMCAwIDI0IDI0IgogICBoZWlnaHQ9IjE2IgogICB3aWR0aD0iMTYiPgogIDxtZXRhZGF0YQogICAgIGlkPSJtZXRhZGF0YTEwIj4KICAgIDxyZGY6UkRGPgogICAgICA8Y2M6V29yawogICAgICAgICByZGY6YWJvdXQ9IiI+CiAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9zdmcreG1sPC9kYzpmb3JtYXQ+CiAgICAgICAgPGRjOnR5cGUKICAgICAgICAgICByZGY6cmVzb3VyY2U9Imh0dHA6Ly9wdXJsLm9yZy9kYy9kY21pdHlwZS9TdGlsbEltYWdlIiAvPgogICAgICA8L2NjOldvcms+CiAgICA8L3JkZjpSREY+CiAgPC9tZXRhZGF0YT4KICA8ZGVmcwogICAgIGlkPSJkZWZzOCIgLz4KICA8cGF0aAogICAgIGlkPSJwYXRoMiIKICAgICBkPSJNNS44MDAzMjE0OCw5LjI4Njc0MzU0IEwxMS4yNTQyODI0LDEzLjIwMjc1ODMgQzExLjY2NjEzMDksMTMuNTg1MDgzIDEyLjMzMzg2OTEsMTMuNTg1MDgzIDEyLjc0NTcxNzYsMTMuMjAyNzU4MyBMMTguMTk5Njc4NSw5LjI4Njc0MzU0IEMxOC42MTE1MjcsOC45MDQ0MTg4MiAxOS4yNzkyNjUyLDguOTA0NDE4ODIgMTkuNjkxMTEzNyw5LjI4Njc0MzU0IEMyMC4xMDI5NjIxLDkuNjY5MDY4MjYgMjAuMTAyOTYyMSwxMC4yODg5MzkxIDE5LjY5MTExMzcsMTAuNjcxMjYzOCBMMTMuNDkxNDM1MSwxNi40MjY1MTI5IEMxMi42Njc3MzgzLDE3LjE5MTE2MjQgMTEuMzMyMjYxNywxNy4xOTExNjI0IDEwLjUwODU2NDksMTYuNDI2NTEyOSBMNC4zMDg4ODYzMywxMC42NzEyNjM4IEMzLjg5NzAzNzg5LDEwLjI4ODkzOTEgMy44OTcwMzc4OSw5LjY2OTA2ODI2IDQuMzA4ODg2MzMsOS4yODY3NDM1NCBDNC43MjA3MzQ3OCw4LjkwNDQxODgyIDUuMzg4NDczMDMsOC45MDQ0MTg4MiA1LjgwMDMyMTQ4LDkuMjg2NzQzNTQgWiIKICAgICBmaWxsLXJ1bGU9ImV2ZW5vZGQiCiAgICAgZmlsbC1vcGFjaXR5PSIuNSIgLz4KPC9zdmc+Cg==);cursor:pointer;display:grid;height:inherit;justify-content:center;align-content:center}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.select-arrow .ql-picker-label:before{line-height:unset}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.select-arrow .ql-picker-label svg{display:none}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker .ql-picker-options{border-radius:var(--pep-border-radius-md, .25rem);box-sizing:content-box;padding:unset;box-shadow:var(--pep-shadow-sm-offset, 0 .25rem .5rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.32);border:1px solid hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%))}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-color-picker .ql-picker-options{padding:var(--pep-spacing-xs, .25rem) var(--pep-spacing-sm, .5rem);width:140px}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-color-picker .ql-picker-options:focus{outline:unset!important}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-color-picker .ql-picker-options .ql-picker-item:focus{outline:unset!important}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-expanded{box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);position:relative}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-expanded:not(.keep-background-on-focus){background:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%))}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-expanded:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;top:0;bottom:0;left:0;right:0;border-radius:inherit;border:1px solid hsl(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%))}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:hsl(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%))}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:hsl(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%))}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-expanded .ql-picker-label{border:unset}quill-editor ::ng-deep .ql-toolbar .vertical-separator{border-color:hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.24)}@media (max-width: 568px){quill-editor ::ng-deep .ql-toolbar .ql-list{display:none}}@media (max-width: 599px){quill-editor ::ng-deep .ql-toolbar .ql-italic,quill-editor ::ng-deep .ql-toolbar .ql-underline{display:none}}@media (max-width: 460px){quill-editor ::ng-deep .ql-toolbar .ql-italic,quill-editor ::ng-deep .ql-toolbar .ql-image,quill-editor ::ng-deep .ql-toolbar .ql-underline,quill-editor ::ng-deep .ql-toolbar .ql-list,quill-editor ::ng-deep .ql-toolbar .ql-header{display:none}}quill-editor ::ng-deep .ql-container{height:16rem;border:unset;border-top:1px solid hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.24)!important}quill-editor ::ng-deep .ql-container .ql-editor{padding:var(--pep-spacing-sm, .5rem) 0}quill-editor ::ng-deep .ql-container .ql-editor.ql-blank:before{right:0;left:0}quill-editor ::ng-deep .ql-container .ql-tooltip.ql-flip{left:0!important}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i5.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i5.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i6.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { kind: "component", type: i7.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i8.MatError, selector: "mat-error", inputs: ["id"] }, { kind: "component", type: i8.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i8.MatSuffix, selector: "[matSuffix]" }, { kind: "directive", type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i11.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i11.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: i12.QuillEditorComponent, selector: "quill-editor" }, { kind: "component", type: i1$1.PepIconComponent, selector: "pep-icon", inputs: ["spin", "name", "fill"] }, { kind: "component", type: i14.PepFieldTitleComponent, selector: "pep-field-title", inputs: ["label", "mandatory", "disabled", "maxFieldCharacters", "hint", "xAlignment", "showTitle", "inputLength", "fontBodyType"] }, { kind: "component", type: i15.PepTextboxIconComponent, selector: "pep-textbox-icon", inputs: ["value", "label", "type", "disabled"], outputs: ["iconClick"] }, { kind: "pipe", type: i3.PepSafeHtmlPipe, name: "pepSafeHtml" }, { kind: "pipe", type: i16.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
216
216
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepRichHtmlTextareaComponent, decorators: [{
|
|
217
217
|
type: Component,
|
|
218
218
|
args: [{ selector: 'pep-rich-html-textarea', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container [formGroup]=\"form\">\n <ng-template #pepTemplate let-isFormView=\"isFormView\">\n <div class=\"pep-textarea-container pep-report-textarea\" [ngClass]=\"{ 'stand-alone': standAlone,\n 'right-alignment': xAlignment == 'right', 'one-row': !isFormView && rowSpan === 1,\n 'pep-textarea-card-container': layoutType === 'card'}\">\n <pep-field-title *ngIf=\"renderTitle && isFormView\" [label]=\"label\" [mandatory]=\"mandatory\"\n [disabled]=\"disabled\"\n [maxFieldCharacters]=\"inlineMode && !disabled && !readonly ? maxFieldCharacters : 0\"\n [xAlignment]=\"xAlignment\" [showTitle]=\"showTitle\" [inputLength]=\"quillContent?.length\">\n </pep-field-title>\n <mat-form-field appearance=\"outline\" dir=\"{{ xAlignment == 'right' ? 'rtl' : 'ltr' }}\"\n [ngClass]=\"{ 'pep-table-textarea': layoutType === 'table', 'active': active, 'ignore-disabled': disabled }\">\n <textarea [hidden]=\"true\" matInput [formControlName]=\"key\"></textarea>\n\n <ng-container *ngIf=\"inlineMode; then inlineBlock; else notInlineBlock\"></ng-container>\n\n <ng-template #inlineBlock>\n <ng-container *ngTemplateOutlet=\"quilTemplate; context: {inDialog: false}\"></ng-container>\n </ng-template>\n <ng-template #notInlineBlock>\n\n <!-- We can use the quill-view-html\n <quill-view-html class=\"body-sm rich-text-cont \"\n [ngStyle]=\"{ 'text-align': xAlignment == 'right' ? 'right' : 'left' }\" [content]=\"value | pepSafeHtml\"\n theme=\"snow\" [style.height]=\"fieldHeight\"></quill-view-html> \n -->\n\n <div class=\"body-sm rich-text-cont \"\n [ngStyle]=\"{ 'text-align': xAlignment == 'right' ? 'right' : 'left' }\"\n [innerHtml]=\"value | pepSafeHtml\" [style.height]=\"fieldHeight\">\n </div>\n </ng-template>\n <pep-textbox-icon matSuffix [value]=\"value\" [label]=\"label\" [type]=\"controlType\"\n [disabled]=\"disabled || readonly\"\n [ngClass]=\"{ 'card-one-row-icon': layoutType === 'card' && rowSpan === 1 }\"\n (iconClick)=\"openDialog()\">\n </pep-textbox-icon>\n <mat-error>\n <span class=\"body-xs\"\n [title]=\"mandatory && value.length == 0 ? ('MESSAGES.ERROR_IS_REQUIRED' | translate: { field: label }) : ('MESSAGES.ERROR_IS_NOT_VALID' | translate: { field: label })\"\n [innerText]=\"mandatory && value.length == 0 ? ('MESSAGES.ERROR_IS_REQUIRED' | translate: { field: label }) : ('MESSAGES.ERROR_IS_NOT_VALID' | translate: { field: label })\"></span>\n </mat-error>\n\n </mat-form-field>\n </div>\n </ng-template>\n\n <ng-container *ngIf=\"layoutType === 'form'\">\n <ng-container *ngTemplateOutlet=\"pepTemplate; context: { isFormView: true }\"></ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"layoutType === 'card'\">\n <div class=\"pep-textarea-card-container card-flex-container\"\n [ngClass]=\"{'one-row': rowSpan === 1, 'pep-button weak': isActive && !disabled}\"\n [ngStyle]=\"{ '-webkit-line-clamp': rowSpan }\" [class]=\"'text-align-' + xAlignment\"\n (click)=\"!disabled ? cardTemplateClicked($event) : ''\" [style.height]=\"fieldHeight\">\n <span *ngIf=\"showTitle && label != ''\" class=\"body-xs title no-shrink\" title=\"{{ label }}\">{{ label\n }}: </span>\n <span [id]=\"key\" class=\"body-sm value wrap\" [innerHtml]=\"value | pepSafeHtml\"></span>\n <button *ngIf=\"isActive && !disabled\" class=\"pep-button weak card-edit-button self-start\"\n [ngClass]=\"{'self-end' : value && value !== ''}\" mat-button>\n <mat-icon>\n <pep-icon name=\"system_edit\">\n </pep-icon>\n </mat-icon>\n </button>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"layoutType === 'table'\">\n <ng-container *ngIf=\"isActive && !disabled; then selectedBlock; else notSelectedBlock\"></ng-container>\n <ng-template #selectedBlock>\n <ng-container *ngTemplateOutlet=\"pepTemplate; context: { isFormView: false }\"></ng-container>\n </ng-template>\n <ng-template #notSelectedBlock>\n <ng-container *ngIf=\"value?.length > 0; then notEmptyBlock; else emptyBlock\"></ng-container>\n <ng-template #notEmptyBlock>\n <div class=\"pep-textarea-card-container card-flex-container one-row\">\n <span [id]=\"key\" class=\"wrap\" [innerHtml]=\"value | pepSafeHtml\"></span>\n </div>\n </ng-template>\n <ng-template #emptyBlock>\n <span> </span>\n </ng-template>\n </ng-template>\n </ng-container>\n</ng-container>\n\n<ng-template #richTextEditorDialogTemplate>\n <div class=\"rich-text-editor-container\">\n <button mat-button [mat-dialog-close]=\"null\" class=\"pep-button icon-button md weak pull-right flip\">\n <mat-icon>\n <pep-icon name=\"system_close\">\n </pep-icon>\n </mat-icon>\n </button>\n <ng-container *ngTemplateOutlet=\"quilTemplate; context: {inDialog: true}\"></ng-container>\n <div mat-dialog-actions class=\" pep-border-top\">\n <div class=\"pep-spacing-element-negative\">\n <button mat-button [mat-dialog-close]=\"null\" class=\"pep-spacing-element pep-button md weak\">\n {{'ACTIONS.CANCEL' | translate}}\n </button>\n <button mat-button [mat-dialog-close]=\"quillContentDialog || ''\" [disabled]=\"disabled\"\n class=\"pep-spacing-element pep-button md strong \">\n {{'ACTIONS.SAVE' | translate}}\n </button>\n </div>\n </div>\n </div>\n</ng-template>\n\n<ng-template #quilTemplate let-inDialog=\"inDialog\">\n <quill-editor id=\"{{inDialog ? 'quill-editor-dialog' : 'quill-editor-inline'}}\"\n [class]=\"inDialog ? 'dialog-quill' : 'inline-quill'\" [ngClass]=\"{ 'rich-text-cont': !inDialog }\"\n placeholder=\"{{'RICH_TEXTAREA.HINT' | translate}}\" [ngModel]=\"inDialog ? quillContentDialog : quillContent\"\n [sanitize]=\"true\" [readOnly]=\"disabled\" [maxLength]=\"maxFieldCharacters\" [required]=\"mandatory\"\n (onEditorCreated)=\"onEditorCreated($event, inDialog)\" (onContentChanged)=\"onContentChanged($event, inDialog)\"\n (onBlur)=\"onBlur($event, inDialog)\" (onFocus)=\"onFocus($event, inDialog)\" theme=\"\">\n <div *ngIf=\"!disabled\" quill-editor-toolbar>\n <div class=\"pep-spacing-element-negative\">\n <span class=\"ql-formats\">\n <select *ngIf=\"toolbarOptions?.font\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-font select-arrow\">\n <option selected></option>\n <option value=\"serif\"></option>\n <option value=\"monospace\"></option>\n </select>\n <select *ngIf=\"toolbarOptions?.size\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-size select-arrow\">\n <option value=\"small\"></option>\n <option selected></option>\n <option value=\"large\"></option>\n <option value=\"huge\"></option>\n </select>\n </span>\n <span class=\"ql-formats\">\n <select *ngIf=\"toolbarOptions?.header\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-header select-arrow\">\n <option value=\"1\"></option>\n <option value=\"2\"></option>\n <option value=\"3\"></option>\n <!-- \n <option value=\"4\"></option>\n <option value=\"5\"></option>\n <option value=\"6\"></option> \n -->\n <option value=\"false\" selected></option>\n </select>\n </span>\n <!-- <hr class=\"vertical-separator\" /> -->\n <span class=\"ql-formats\">\n <button mat-button *ngIf=\"toolbarOptions?.bold\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-bold\"></button>\n <button mat-button *ngIf=\"toolbarOptions?.italic\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-italic\"></button>\n <button mat-button *ngIf=\"toolbarOptions?.underline\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-underline\"></button>\n <button mat-button *ngIf=\"toolbarOptions?.strike\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-strike\"></button>\n </span>\n <span class=\"ql-formats\">\n <button mat-button *ngIf=\"toolbarOptions?.link\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-link\"></button>\n <button mat-button *ngIf=\"toolbarOptions?.image\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-image\"></button>\n </span>\n <!-- <hr class=\"vertical-separator\" /> -->\n <span class=\"ql-formats\">\n <button mat-button *ngIf=\"toolbarOptions?.ordered\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-list\" value=\"ordered\"></button>\n <button mat-button *ngIf=\"toolbarOptions?.bullet\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-list\" value=\"bullet\"></button>\n </span>\n <!-- <hr class=\"vertical-separator\" /> -->\n <span class=\"ql-formats\">\n <select *ngIf=\"toolbarOptions?.color\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-color\"></select>\n <select *ngIf=\"toolbarOptions?.background\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-background\"></select>\n </span>\n <span class=\"ql-formats\">\n <select *ngIf=\"toolbarOptions?.align\"\n class=\"pep-spacing-element pep-button icon-button md weak ql-align\">\n <option selected></option>\n <option value=\"center\"></option>\n <option value=\"right\"></option>\n <option value=\"justify\"></option>\n </select>\n </span>\n </div>\n </div>\n </quill-editor>\n</ng-template>", styles: [".pepperi-textarea-container,.pep-textarea-container{height:inherit;display:grid;align-items:center}.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex{display:flex}.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix{line-height:unset;width:100%;height:100%;overflow:hidden;display:grid!important}.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element{margin:0;padding:.5rem 1.5rem .5rem 0;vertical-align:unset;resize:none;width:calc(100% + 3rem);max-width:unset;overflow-y:scroll;box-sizing:border-box}.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-prefix,.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-suffix,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-prefix,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-suffix{align-self:flex-end!important;margin-bottom:.5rem}.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix .mat-input-element,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix .mat-input-element{padding-top:.35rem}.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix,.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix{align-self:center!important;margin-bottom:unset}.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix .card-one-row-icon .pepperi-button,.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix .card-one-row-icon .pep-button,.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix .card-one-row-icon .pepperi-button,.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix .card-one-row-icon .pep-button,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix .card-one-row-icon .pepperi-button,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix .card-one-row-icon .pep-button,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix .card-one-row-icon .pepperi-button,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix .card-one-row-icon .pep-button{width:1rem!important;height:1rem!important}.pepperi-textarea-container.one-row .mat-form-field.pepperi-table-textarea ::ng-deep .mat-input-element,.pepperi-textarea-container.one-row .mat-form-field.pep-table-textarea ::ng-deep .mat-input-element,.pep-textarea-container.one-row .mat-form-field.pepperi-table-textarea ::ng-deep .mat-input-element,.pep-textarea-container.one-row .mat-form-field.pep-table-textarea ::ng-deep .mat-input-element{padding-top:.135rem!important}.pepperi-textarea-container .rich-text-cont,.pep-textarea-container .rich-text-cont{overflow-x:hidden;display:inline-block;vertical-align:unset;margin:0;padding:.5rem 1.5rem .5rem 0;resize:none;width:calc(100% + 3rem);max-width:unset;overflow-y:scroll;box-sizing:border-box}.pepperi-textarea-container.right-alignment .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element,.pep-textarea-container.right-alignment .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element{padding:.5rem 0 .5rem 1.5rem}.pepperi-textarea-container.right-alignment .rich-text-cont,.pep-textarea-container.right-alignment .rich-text-cont{padding:.5rem 0 .5rem 1.5rem}.pepperi-textarea-card-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex,.pep-textarea-card-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex{padding-left:.5rem;padding-right:.5rem}.pepperi-textarea-card-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex .mat-input-element,.pep-textarea-card-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex .mat-input-element{padding:.25rem 1.5rem .5rem 0}.pepperi-textarea-card-container.card-flex-container,.pep-textarea-card-container.card-flex-container{height:inherit;display:flex;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;white-space:unset;padding:.25rem;max-width:100%}.pepperi-textarea-card-container.card-flex-container.one-row .title,.pep-textarea-card-container.card-flex-container.one-row .title{padding-top:.25rem}.pepperi-textarea-card-container.card-flex-container span.value,.pep-textarea-card-container.card-flex-container span.value{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;white-space:unset}.pepperi-textarea-card-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix,.pep-textarea-card-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix{line-height:0!important}.pepperi-textarea-card-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix .mat-input-element,.pep-textarea-card-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix .mat-input-element{padding-top:0;padding-bottom:0}.pepperi-textarea-card-container.right-alignment .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element,.pep-textarea-card-container.right-alignment .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element{padding:.25rem 0 .5rem 1.5rem}.pepperi-report-textarea ::ng-deep .mat-form-field-suffix,.pep-report-textarea ::ng-deep .mat-form-field-suffix{right:0!important}.pepperi-report-textarea.readonly ::ng-deep .mat-form-field-wrapper .mat-form-field-flex,.pep-report-textarea.readonly ::ng-deep .mat-form-field-wrapper .mat-form-field-flex{padding:0}:host{height:inherit;display:block}.pepperi-textarea-container ::ng-deep .mat-form-field-infix,.pep-textarea-container ::ng-deep .mat-form-field-infix{margin-left:calc(var(--pep-spacing-md, .75rem) * -1)}.pepperi-textarea-container.right-alignment ::ng-deep .mat-form-field-infix,.pep-textarea-container.right-alignment ::ng-deep .mat-form-field-infix{margin-left:unset;margin-right:calc(var(--pep-spacing-md, .75rem) * -1)}.vertical-separator{display:none}\n", ".pepperi-textarea-container,.pep-textarea-container{height:inherit;display:grid;align-items:center}.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex{display:flex}.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix{line-height:unset;width:100%;height:100%;overflow:hidden;display:grid!important}.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element{margin:0;padding:.5rem 1.5rem .5rem 0;vertical-align:unset;resize:none;width:calc(100% + 3rem);max-width:unset;overflow-y:scroll;box-sizing:border-box}.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-prefix,.pepperi-textarea-container .mat-form-field ::ng-deep .mat-form-field-suffix,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-prefix,.pep-textarea-container .mat-form-field ::ng-deep .mat-form-field-suffix{align-self:flex-end!important;margin-bottom:.5rem}.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix .mat-input-element,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix .mat-input-element{padding-top:.35rem}.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix,.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix{align-self:center!important;margin-bottom:unset}.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix .card-one-row-icon .pepperi-button,.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix .card-one-row-icon .pep-button,.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix .card-one-row-icon .pepperi-button,.pepperi-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix .card-one-row-icon .pep-button,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix .card-one-row-icon .pepperi-button,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-prefix .card-one-row-icon .pep-button,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix .card-one-row-icon .pepperi-button,.pep-textarea-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-suffix .card-one-row-icon .pep-button{width:1rem!important;height:1rem!important}.pepperi-textarea-container.one-row .mat-form-field.pepperi-table-textarea ::ng-deep .mat-input-element,.pepperi-textarea-container.one-row .mat-form-field.pep-table-textarea ::ng-deep .mat-input-element,.pep-textarea-container.one-row .mat-form-field.pepperi-table-textarea ::ng-deep .mat-input-element,.pep-textarea-container.one-row .mat-form-field.pep-table-textarea ::ng-deep .mat-input-element{padding-top:.135rem!important}.pepperi-textarea-container .rich-text-cont,.pep-textarea-container .rich-text-cont{overflow-x:hidden;display:inline-block;vertical-align:unset;margin:0;padding:.5rem 1.5rem .5rem 0;resize:none;width:calc(100% + 3rem);max-width:unset;overflow-y:scroll;box-sizing:border-box}.pepperi-textarea-container.right-alignment .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element,.pep-textarea-container.right-alignment .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element{padding:.5rem 0 .5rem 1.5rem}.pepperi-textarea-container.right-alignment .rich-text-cont,.pep-textarea-container.right-alignment .rich-text-cont{padding:.5rem 0 .5rem 1.5rem}.pepperi-textarea-card-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex,.pep-textarea-card-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex{padding-left:.5rem;padding-right:.5rem}.pepperi-textarea-card-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex .mat-input-element,.pep-textarea-card-container .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-flex .mat-input-element{padding:.25rem 1.5rem .5rem 0}.pepperi-textarea-card-container.card-flex-container,.pep-textarea-card-container.card-flex-container{height:inherit;display:flex;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;white-space:unset;padding:.25rem;max-width:100%}.pepperi-textarea-card-container.card-flex-container.one-row .title,.pep-textarea-card-container.card-flex-container.one-row .title{padding-top:.25rem}.pepperi-textarea-card-container.card-flex-container span.value,.pep-textarea-card-container.card-flex-container span.value{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;white-space:unset}.pepperi-textarea-card-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix,.pep-textarea-card-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix{line-height:0!important}.pepperi-textarea-card-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix .mat-input-element,.pep-textarea-card-container.one-row .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-form-field-infix .mat-input-element{padding-top:0;padding-bottom:0}.pepperi-textarea-card-container.right-alignment .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element,.pep-textarea-card-container.right-alignment .mat-form-field ::ng-deep .mat-form-field-wrapper .mat-input-element{padding:.25rem 0 .5rem 1.5rem}.pepperi-report-textarea ::ng-deep .mat-form-field-suffix,.pep-report-textarea ::ng-deep .mat-form-field-suffix{right:0!important}.pepperi-report-textarea.readonly ::ng-deep .mat-form-field-wrapper .mat-form-field-flex,.pep-report-textarea.readonly ::ng-deep .mat-form-field-wrapper .mat-form-field-flex{padding:0}.pepperi-report-textarea ::ng-deep .mat-form-field-flex,.pep-report-textarea ::ng-deep .mat-form-field-flex{background:transparent!important}.mat-form-field.mat-form-field-disabled ::ng-deep .mat-form-field-flex{color:hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%))}.right-alignment quill-editor.inline-quill::ng-deep .ql-container .ql-editor{padding-right:unset;padding-left:calc(var(--pep-spacing-sm, .5rem) + 1rem)}quill-editor.inline-quill::ng-deep .ql-container .ql-editor{width:calc(100% + 1rem);padding-right:calc(var(--pep-spacing-sm, .5rem) + 1rem)}quill-editor ::ng-deep .ql-toolbar{display:flex;padding:0!important;border:unset}quill-editor ::ng-deep .ql-toolbar .ql-transparent{opacity:.9}quill-editor ::ng-deep .ql-toolbar .ql-formats{margin-right:0!important;margin-bottom:.5rem}quill-editor ::ng-deep .ql-toolbar .ql-formats button{height:2.5rem}quill-editor ::ng-deep .ql-toolbar .ql-formats button svg{width:1.25rem!important;float:unset!important}quill-editor ::ng-deep .ql-toolbar .ql-formats button.ql-active{box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);position:relative}quill-editor ::ng-deep .ql-toolbar .ql-formats button.ql-active:not(.keep-background-on-focus){background:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%))}quill-editor ::ng-deep .ql-toolbar .ql-formats button.ql-active:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;top:0;bottom:0;left:0;right:0;border-radius:inherit;border:1px solid hsl(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%))}quill-editor ::ng-deep .ql-toolbar .ql-formats button:focus{box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);position:relative}quill-editor ::ng-deep .ql-toolbar .ql-formats button:focus:not(.keep-background-on-focus){background:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%))}quill-editor ::ng-deep .ql-toolbar .ql-formats button:focus:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;top:0;bottom:0;left:0;right:0;border-radius:inherit;border:1px solid hsl(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%))}quill-editor ::ng-deep .ql-toolbar .ql-formats button:active{box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);position:relative}quill-editor ::ng-deep .ql-toolbar .ql-formats button:active:not(.keep-background-on-focus){background:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%))}quill-editor ::ng-deep .ql-toolbar .ql-formats button:active:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;top:0;bottom:0;left:0;right:0;border-radius:inherit;border:1px solid hsl(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%))}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-stroke{stroke:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.8)}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-fill{fill:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.8)}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker:not(.ql-color-picker) .ql-picker-options .ql-picker-item{outline:unset!important;width:100%;height:auto;padding:var(--pep-spacing-xs, .25rem) var(--pep-spacing-sm, .5rem);display:grid}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker:not(.ql-color-picker) .ql-picker-options .ql-picker-item:hover{background:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.16)}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker:not(.ql-color-picker) .ql-picker-options .ql-picker-item:active{box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);background:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.24)!important}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker:not(.ql-color-picker) .ql-picker-options .ql-picker-item:active:not(.keep-background-on-focus){background:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%))}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker:not(.ql-color-picker) .ql-picker-options .ql-picker-item:disabled{box-shadow:unset;border:unset;color:hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.35)!important;background:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.04)!important}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker:not(.ql-color-picker) .ql-picker-options .ql-picker-item:disabled:after{border:unset}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker:not(.ql-color-picker) .ql-picker-options .ql-picker-item:disabled .svg-icon{fill:hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.35)}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker:not(.ql-color-picker) .ql-picker-options .ql-picker-item:disabled .svg-icon.stroke{fill:unset;stroke:hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.35)}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-color-picker,quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-icon-picker{width:unset}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker .ql-picker-label{outline:none;display:grid;grid-auto-flow:column;align-items:center;line-height:1rem;border:unset}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker .ql-picker-label svg{width:1.5rem}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker .ql-picker-label:after{content:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgaWQ9InN2ZzQiCiAgIHZlcnNpb249IjEuMSIKICAgdmlld0JveD0iMCAwIDI0IDI0IgogICBoZWlnaHQ9IjE2IgogICB3aWR0aD0iMTYiPgogIDxtZXRhZGF0YQogICAgIGlkPSJtZXRhZGF0YTEwIj4KICAgIDxyZGY6UkRGPgogICAgICA8Y2M6V29yawogICAgICAgICByZGY6YWJvdXQ9IiI+CiAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9zdmcreG1sPC9kYzpmb3JtYXQ+CiAgICAgICAgPGRjOnR5cGUKICAgICAgICAgICByZGY6cmVzb3VyY2U9Imh0dHA6Ly9wdXJsLm9yZy9kYy9kY21pdHlwZS9TdGlsbEltYWdlIiAvPgogICAgICA8L2NjOldvcms+CiAgICA8L3JkZjpSREY+CiAgPC9tZXRhZGF0YT4KICA8ZGVmcwogICAgIGlkPSJkZWZzOCIgLz4KICA8cGF0aAogICAgIGlkPSJwYXRoMiIKICAgICBkPSJNNS44MDAzMjE0OCw5LjI4Njc0MzU0IEwxMS4yNTQyODI0LDEzLjIwMjc1ODMgQzExLjY2NjEzMDksMTMuNTg1MDgzIDEyLjMzMzg2OTEsMTMuNTg1MDgzIDEyLjc0NTcxNzYsMTMuMjAyNzU4MyBMMTguMTk5Njc4NSw5LjI4Njc0MzU0IEMxOC42MTE1MjcsOC45MDQ0MTg4MiAxOS4yNzkyNjUyLDguOTA0NDE4ODIgMTkuNjkxMTEzNyw5LjI4Njc0MzU0IEMyMC4xMDI5NjIxLDkuNjY5MDY4MjYgMjAuMTAyOTYyMSwxMC4yODg5MzkxIDE5LjY5MTExMzcsMTAuNjcxMjYzOCBMMTMuNDkxNDM1MSwxNi40MjY1MTI5IEMxMi42Njc3MzgzLDE3LjE5MTE2MjQgMTEuMzMyMjYxNywxNy4xOTExNjI0IDEwLjUwODU2NDksMTYuNDI2NTEyOSBMNC4zMDg4ODYzMywxMC42NzEyNjM4IEMzLjg5NzAzNzg5LDEwLjI4ODkzOTEgMy44OTcwMzc4OSw5LjY2OTA2ODI2IDQuMzA4ODg2MzMsOS4yODY3NDM1NCBDNC43MjA3MzQ3OCw4LjkwNDQxODgyIDUuMzg4NDczMDMsOC45MDQ0MTg4MiA1LjgwMDMyMTQ4LDkuMjg2NzQzNTQgWiIKICAgICBmaWxsLXJ1bGU9ImV2ZW5vZGQiCiAgICAgZmlsbC1vcGFjaXR5PSIuNSIgLz4KPC9zdmc+Cg==);cursor:pointer;display:grid;height:inherit;justify-content:center;align-content:center}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.select-arrow .ql-picker-label:before{line-height:unset}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.select-arrow .ql-picker-label svg{display:none}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker .ql-picker-options{border-radius:var(--pep-border-radius-md, .25rem);box-sizing:content-box;padding:unset;box-shadow:var(--pep-shadow-sm-offset, 0 .25rem .5rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.32);border:1px solid hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%))}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-color-picker .ql-picker-options{padding:var(--pep-spacing-xs, .25rem) var(--pep-spacing-sm, .5rem);width:140px}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-color-picker .ql-picker-options:focus{outline:unset!important}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-color-picker .ql-picker-options .ql-picker-item:focus{outline:unset!important}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-expanded{box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);position:relative}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-expanded:not(.keep-background-on-focus){background:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%))}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-expanded:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;top:0;bottom:0;left:0;right:0;border-radius:inherit;border:1px solid hsl(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%))}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:hsl(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%))}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:hsl(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%))}quill-editor ::ng-deep .ql-toolbar .ql-formats .ql-picker.ql-expanded .ql-picker-label{border:unset}quill-editor ::ng-deep .ql-toolbar .vertical-separator{border-color:hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.24)}@media (max-width: 568px){quill-editor ::ng-deep .ql-toolbar .ql-list{display:none}}@media (max-width: 599px){quill-editor ::ng-deep .ql-toolbar .ql-italic,quill-editor ::ng-deep .ql-toolbar .ql-underline{display:none}}@media (max-width: 460px){quill-editor ::ng-deep .ql-toolbar .ql-italic,quill-editor ::ng-deep .ql-toolbar .ql-image,quill-editor ::ng-deep .ql-toolbar .ql-underline,quill-editor ::ng-deep .ql-toolbar .ql-list,quill-editor ::ng-deep .ql-toolbar .ql-header{display:none}}quill-editor ::ng-deep .ql-container{height:16rem;border:unset;border-top:1px solid hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.24)!important}quill-editor ::ng-deep .ql-container .ql-editor{padding:var(--pep-spacing-sm, .5rem) 0}quill-editor ::ng-deep .ql-container .ql-editor.ql-blank:before{right:0;left:0}quill-editor ::ng-deep .ql-container .ql-tooltip.ql-flip{left:0!important}\n"] }]
|