@lucca-front/ng 21.2.1 → 22.0.0-rc.1
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/fesm2022/lucca-front-ng-api.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-callout.mjs +10 -4
- package/fesm2022/lucca-front-ng-callout.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-clear.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-comment.mjs +1 -1
- package/fesm2022/lucca-front-ng-comment.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-core-select-api.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-core-select-department.mjs +7 -5
- package/fesm2022/lucca-front-ng-core-select-department.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-core-select-establishment.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-core-select-job-qualification.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-core-select-occupation-category.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-core-select-user.mjs +16 -11
- package/fesm2022/lucca-front-ng-core-select-user.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-core-select.mjs +46 -18
- package/fesm2022/lucca-front-ng-core-select.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-core.mjs +11 -6
- package/fesm2022/lucca-front-ng-core.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-data-table.mjs +31 -15
- package/fesm2022/lucca-front-ng-data-table.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-date.mjs +10 -6
- package/fesm2022/lucca-front-ng-date.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-date2.mjs +104 -88
- package/fesm2022/lucca-front-ng-date2.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-department.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-dialog.mjs +36 -25
- package/fesm2022/lucca-front-ng-dialog.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-divider.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-empty-state.mjs +5 -4
- package/fesm2022/lucca-front-ng-empty-state.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-establishment.mjs +3 -3
- package/fesm2022/lucca-front-ng-establishment.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-fancy-box.mjs +1 -1
- package/fesm2022/lucca-front-ng-fancy-box.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-file-upload.mjs +5 -3
- package/fesm2022/lucca-front-ng-file-upload.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-filter-pills.mjs +3 -3
- package/fesm2022/lucca-front-ng-filter-pills.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-form-field.mjs +3 -3
- package/fesm2022/lucca-front-ng-form-field.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-formly.mjs +1 -1
- package/fesm2022/lucca-front-ng-formly.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-forms-phone-number-input.mjs +26 -21
- package/fesm2022/lucca-front-ng-forms-phone-number-input.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-html.mjs +15 -13
- package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-html.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-plain-text.mjs +5 -3
- package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-plain-text.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs +26 -19
- package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-forms.mjs +3 -3
- package/fesm2022/lucca-front-ng-forms.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-highlight-data.mjs +1 -1
- package/fesm2022/lucca-front-ng-highlight-data.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-index-table.mjs +5 -5
- package/fesm2022/lucca-front-ng-index-table.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-input.mjs +6 -5
- package/fesm2022/lucca-front-ng-input.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-link.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-mobile-push.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-modal.mjs +5 -5
- package/fesm2022/lucca-front-ng-modal.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-multi-select.mjs +27 -14
- package/fesm2022/lucca-front-ng-multi-select.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-number-format.mjs +9 -8
- package/fesm2022/lucca-front-ng-number-format.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-option.mjs +7 -3
- package/fesm2022/lucca-front-ng-option.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-page-header.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-popover.mjs +6 -2
- package/fesm2022/lucca-front-ng-popover.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-popover2.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-popup.mjs +1 -1
- package/fesm2022/lucca-front-ng-popup.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-progress-bar.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-read-more.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-scroll-box.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-scroll.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-segmented-control-tabs.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-select.mjs +5 -4
- package/fesm2022/lucca-front-ng-select.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-sidepanel.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-simple-select.mjs +11 -8
- package/fesm2022/lucca-front-ng-simple-select.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-skeleton.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-sortable-list.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-time.mjs +2 -2
- package/fesm2022/lucca-front-ng-time.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-title.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-toast.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-tree-select.mjs +11 -10
- package/fesm2022/lucca-front-ng-tree-select.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-user-popover.mjs.map +1 -1
- package/fesm2022/lucca-front-ng-user.mjs +3 -3
- package/fesm2022/lucca-front-ng-user.mjs.map +1 -1
- package/package.json +4 -4
- package/types/lucca-front-ng-api.d.ts +9 -9
- package/types/lucca-front-ng-clear.d.ts +1 -1
- package/types/lucca-front-ng-core-select-api.d.ts +14 -14
- package/types/lucca-front-ng-core-select-department.d.ts +10 -10
- package/types/lucca-front-ng-core-select-establishment.d.ts +12 -12
- package/types/lucca-front-ng-core-select-job-qualification.d.ts +6 -6
- package/types/lucca-front-ng-core-select-occupation-category.d.ts +6 -6
- package/types/lucca-front-ng-core-select-user.d.ts +19 -19
- package/types/lucca-front-ng-core-select.d.ts +53 -53
- package/types/lucca-front-ng-core.d.ts +10 -9
- package/types/lucca-front-ng-data-table.d.ts +40 -40
- package/types/lucca-front-ng-date.d.ts +2 -2
- package/types/lucca-front-ng-date2.d.ts +93 -93
- package/types/lucca-front-ng-department.d.ts +2 -2
- package/types/lucca-front-ng-dialog.d.ts +4 -4
- package/types/lucca-front-ng-divider.d.ts +1 -1
- package/types/lucca-front-ng-establishment.d.ts +9 -9
- package/types/lucca-front-ng-file-upload.d.ts +17 -17
- package/types/lucca-front-ng-filter-pills.d.ts +32 -32
- package/types/lucca-front-ng-form-field.d.ts +8 -8
- package/types/lucca-front-ng-forms-phone-number-input.d.ts +7 -7
- package/types/lucca-front-ng-forms-rich-text-input.d.ts +15 -14
- package/types/lucca-front-ng-forms.d.ts +39 -39
- package/types/lucca-front-ng-index-table.d.ts +39 -39
- package/types/lucca-front-ng-input.d.ts +8 -8
- package/types/lucca-front-ng-link.d.ts +4 -4
- package/types/lucca-front-ng-mobile-push.d.ts +1 -1
- package/types/lucca-front-ng-modal.d.ts +12 -12
- package/types/lucca-front-ng-multi-select.d.ts +24 -24
- package/types/lucca-front-ng-number-format.d.ts +2 -2
- package/types/lucca-front-ng-option.d.ts +18 -18
- package/types/lucca-front-ng-page-header.d.ts +1 -1
- package/types/lucca-front-ng-popover.d.ts +1 -1
- package/types/lucca-front-ng-popover2.d.ts +20 -20
- package/types/lucca-front-ng-popup.d.ts +8 -8
- package/types/lucca-front-ng-progress-bar.d.ts +1 -1
- package/types/lucca-front-ng-read-more.d.ts +6 -6
- package/types/lucca-front-ng-scroll-box.d.ts +3 -3
- package/types/lucca-front-ng-segmented-control-tabs.d.ts +1 -1
- package/types/lucca-front-ng-select.d.ts +12 -12
- package/types/lucca-front-ng-sidepanel.d.ts +1 -1
- package/types/lucca-front-ng-simple-select.d.ts +11 -11
- package/types/lucca-front-ng-skeleton.d.ts +1 -1
- package/types/lucca-front-ng-sortable-list.d.ts +8 -8
- package/types/lucca-front-ng-time.d.ts +17 -17
- package/types/lucca-front-ng-title.d.ts +5 -5
- package/types/lucca-front-ng-toast.d.ts +1 -1
- package/types/lucca-front-ng-tree-select.d.ts +11 -11
- package/types/lucca-front-ng-user-popover.d.ts +6 -6
- package/types/lucca-front-ng-user.d.ts +8 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lucca-front-ng-form-field.mjs","sources":["../../../packages/ng/form-field/form-field.token.ts","../../../packages/ng/form-field/translations.ts","../../../packages/ng/form-field/form-field.translate.ts","../../../packages/ng/form-field/form-field.component.ts","../../../packages/ng/form-field/form-field.component.html","../../../packages/ng/form-field/input-framed/input-framed.token.ts","../../../packages/ng/form-field/input-framed/input-framed.component.ts","../../../packages/ng/form-field/input-framed/input-framed.component.html","../../../packages/ng/form-field/input.directive.ts","../../../packages/ng/form-field/value-presentation/presentation-display.directive.ts","../../../packages/ng/form-field/value-presentation/presentation-display-default.directive.ts","../../../packages/ng/form-field/value-presentation/data-presentation/data-presentation.component.ts","../../../packages/ng/form-field/value-presentation/data-presentation/data-presentation.component.html","../../../packages/ng/form-field/lucca-front-ng-form-field.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { FormFieldComponent } from './form-field.component';\n\nexport const FORM_FIELD_INSTANCE = new InjectionToken<FormFieldComponent>('FORM_FIELD_INSTANCE');\n","export const Translations = {\n\tpt: {\n\t\tcounter: '{{current}} {{max}} A sua publicação tem um comprimento de caracteres, sendo permitido um máximo de caracteres.',\n\t},\n\tes: {\n\t\tcounter: 'Su publicación tiene {{current}} caracteres. Se permite un máximo de {{max}} caracteres.',\n\t},\n\t'nl-BE': {\n\t\tcounter: 'Uw publicatie is {{current}} tekens lang. {{max}} tekens maximaal toegestaan.',\n\t},\n\tnl: {\n\t\tcounter: 'Uw publicatie is {{current}} tekens lang. {{max}} tekens maximaal toegestaan.',\n\t},\n\tit: {\n\t\tcounter: 'La tua pubblicazione è lunga {{current}} caratteri. È consentito un numero di massimo {{max}} caratteri.',\n\t},\n\tde: {\n\t\tcounter: 'Ihr Beitrag ist {{current}} Zeichen lang. Maximal sind {{max}} Zeichen erlaubt.',\n\t},\n\tfr: {\n\t\tcounter: 'Votre publication fait {{current}} caractères de long. {{max}} caractères maximum sont autorisés.',\n\t},\n\ten: {\n\t\tcounter: 'Your message is {{current}} characters long. A maximum of {{max}} characters is allowed.',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_FORM_FIELD_TRANSLATIONS = new InjectionToken('LuFormFieldTranslations', {\n\tfactory: () => luFormFieldTranslations,\n});\n\nexport interface LuFormFieldTranslations {\n\tcounter: string;\n}\n\nexport const luFormFieldTranslations: LuTranslation<LuFormFieldTranslations> = Translations;\n","import { NgTemplateOutlet } from '@angular/common';\nimport {\n\tafterNextRender,\n\tbooleanAttribute,\n\tChangeDetectionStrategy,\n\tComponent,\n\tcomputed,\n\tcontentChildren,\n\tDoCheck,\n\teffect,\n\tforwardRef,\n\tinject,\n\tInjector,\n\tinput,\n\tmodel,\n\tnumberAttribute,\n\tOnDestroy,\n\tRenderer2,\n\tsignal,\n\tTemplateRef,\n\tViewEncapsulation,\n} from '@angular/core';\nimport { AbstractControl, NgControl, ReactiveFormsModule, RequiredValidator, Validators } from '@angular/forms';\nimport { SafeHtml } from '@angular/platform-browser';\nimport { intlInputOptions, LuClass, PortalContent, PortalDirective, ɵeffectWithDeps } from '@lucca-front/ng/core';\nimport { LU_FORM_INSTANCE } from '@lucca-front/ng/form';\nimport { FormLabelComponent } from '@lucca-front/ng/form-label';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { InlineMessageComponent, InlineMessageState } from '@lucca-front/ng/inline-message';\nimport { LuTooltipModule } from '@lucca-front/ng/tooltip';\nimport { BehaviorSubject } from 'rxjs';\nimport { FormFieldSize } from './form-field-size';\nimport { FORM_FIELD_INSTANCE } from './form-field.token';\nimport { LU_FORM_FIELD_TRANSLATIONS } from './form-field.translate';\nimport { InputDirective } from './input.directive';\nimport { INPUT_FRAMED_INSTANCE } from './public-api';\n\nlet nextId = 0;\n\ntype FormFieldWidth = 20 | 30 | 40 | 50 | 60;\n\n@Component({\n\tselector: 'lu-form-field',\n\timports: [NgTemplateOutlet, InlineMessageComponent, LuTooltipModule, ReactiveFormsModule, IconComponent, PortalDirective, FormLabelComponent],\n\ttemplateUrl: './form-field.component.html',\n\tstyleUrl: './form-field.component.scss',\n\tproviders: [\n\t\tLuClass,\n\t\t{\n\t\t\tprovide: FORM_FIELD_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => FormFieldComponent),\n\t\t},\n\t],\n\thost: {\n\t\t'[class.inputFramed-header-field]': 'framed',\n\t},\n\tencapsulation: ViewEncapsulation.None,\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class FormFieldComponent implements OnDestroy, DoCheck {\n\treadonly intl = input(...intlInputOptions(LU_FORM_FIELD_TRANSLATIONS));\n\n\t#luClass = inject(LuClass);\n\t#injector = inject(Injector);\n\t#renderer = inject(Renderer2);\n\tprotected parentForm = inject(LU_FORM_INSTANCE, { optional: true });\n\n\tframed = inject(INPUT_FRAMED_INSTANCE, { optional: true }) !== null;\n\n\treadonly formFieldChildren = contentChildren(FormFieldComponent, { descendants: true });\n\n\treadonly requiredValidators = contentChildren(RequiredValidator, { descendants: true });\n\treadonly ngControls = contentChildren(NgControl, { descendants: true });\n\n\treadonly ignoredRequiredValidators = computed(() => new Set(this.formFieldChildren().flatMap((f) => f.requiredValidators())));\n\treadonly ignoredControls = computed(() => new Set(this.formFieldChildren().flatMap((f) => f.ngControls())));\n\n\treadonly ownRequiredValidators = computed(() => this.requiredValidators().filter((c) => !this.ignoredRequiredValidators().has(c)));\n\treadonly ownControls = computed(() => this.ngControls().filter((c) => !this.ignoredControls().has(c)));\n\n\t#hasInputRequired = signal(false);\n\tforceInputRequired = signal(false);\n\treadonly isInputRequired = computed(() => this.forceInputRequired() || this.#hasInputRequired());\n\n\treadonly label = input.required<PortalContent>();\n\n\t/**\n\t * Hide field label, while keeping it in DOM for screen readers\n\t */\n\treadonly hiddenLabel = input(false, { transform: booleanAttribute });\n\n\trolePresentationLabel = model(false);\n\n\tlabelIsPresentation = computed(() => this.rolePresentationLabel() || this.presentation());\n\n\treadonly inline = input(false, { transform: booleanAttribute });\n\n\treadonly statusControl = input<AbstractControl | null>(null);\n\n\treadonly tooltip = input<string | SafeHtml | null>(null);\n\n\treadonly tag = input<string | null>(null);\n\n\treadonly AI = input(false, { transform: booleanAttribute });\n\treadonly iconAItooltip = input<string | null>(null);\n\treadonly iconAIalt = input<string | null>(null);\n\n\treadonly width = input<FormFieldWidth, FormFieldWidth | `${FormFieldWidth}` | null>(null, {\n\t\ttransform: numberAttribute as (value: FormFieldWidth | `${FormFieldWidth}`) => FormFieldWidth,\n\t});\n\n\t#invalidStatus = signal(false);\n\tinvalidStatus = this.#invalidStatus.asReadonly();\n\n\tinvalid = input<boolean | null, boolean>(null, { transform: booleanAttribute });\n\n\treadonly inlineMessage = input<PortalContent | null>(null);\n\n\t/**\n\t * Inline message for when the control is in error state\n\t */\n\treadonly errorInlineMessage = input<PortalContent | null>(null);\n\n\t/**\n\t * State of the inline message, will be ignored if form state is invalid\n\t */\n\treadonly inlineMessageState = input<InlineMessageState | null>(null);\n\n\treadonly size = input<FormFieldSize | null>(null);\n\n\t/**\n\t * Extra aria-describedby attribute\n\t */\n\treadonly extraDescribedBy = input<string>('');\n\n\treadonly layout = model<'default' | 'checkable' | 'fieldset'>('default');\n\n\t#inputs: InputDirective[] = [];\n\n\t/**\n\t * Max amount of characters allowed, defaults to 0, which means hidden, no maximum\n\t */\n\treadonly counter = input<number>(0);\n\n\treadonly contentLength = signal<number>(0);\n\n\treadonly presentation = input(false, { transform: booleanAttribute });\n\n\treadonly presentationMode = computed(() => this.parentForm?.presentation() || this.presentation());\n\n\treadonly presentationDisplayTpl = signal<TemplateRef<unknown> | null>(null);\n\n\tpublic addInput(input: InputDirective) {\n\t\tthis.#inputs.push(input);\n\t\t/* We have to put this in the next cycle to make sure it'll be applied properly\n\t\t * and that it won't trigger a change detection error\n\t\t */\n\t\tsetTimeout(() => {\n\t\t\tthis.prepareInput();\n\t\t});\n\t}\n\n\tpublic get inputs(): InputDirective[] {\n\t\treturn this.#inputs;\n\t}\n\n\tid = signal<string>('');\n\n\tready$ = new BehaviorSubject<boolean>(false);\n\n\tpublic get ready(): boolean {\n\t\treturn this.ready$.value;\n\t}\n\n\t#ariaLabelledBy: string[] = [];\n\n\tconstructor() {\n\t\tɵeffectWithDeps([this.isInputRequired, this.invalidStatus, this.extraDescribedBy], () => {\n\t\t\tthis.updateAria();\n\t\t});\n\n\t\teffect(() => {\n\t\t\tthis.#luClass.setState({\n\t\t\t\t[`mod-${this.size()}`]: !!this.size(),\n\t\t\t\t'form-field': this.layout() !== 'fieldset' && !this.presentationMode(),\n\t\t\t\t[`mod-width${this.width()}`]: !!this.width(),\n\t\t\t});\n\t\t});\n\t}\n\n\taddLabelledBy(id: string, prepend = false): void {\n\t\tif (prepend) {\n\t\t\tthis.#ariaLabelledBy = [id, ...this.#ariaLabelledBy];\n\t\t} else {\n\t\t\tthis.#ariaLabelledBy = [...this.#ariaLabelledBy, id];\n\t\t}\n\t\tthis.#inputs.forEach((input) => {\n\t\t\tif (!input.standalone) {\n\t\t\t\tthis.#renderer.setAttribute(input.host.nativeElement, 'aria-labelledby', this.#ariaLabelledBy.join(' '));\n\t\t\t}\n\t\t});\n\t}\n\n\tremoveLabelledBy(id: string): void {\n\t\tthis.#ariaLabelledBy = this.#ariaLabelledBy.filter((labelledBy) => labelledBy !== id);\n\t}\n\n\tprepareInput(): void {\n\t\tif (this.#inputs.length === 0) {\n\t\t\tthrow new Error('Missing input for form field, make sure to set `luInput` to your input inside lu-form-field');\n\t\t}\n\t\tthis.inputs\n\t\t\t.filter((input) => !input.standalone)\n\t\t\t.forEach((input) => {\n\t\t\t\tconst inputId = `${input.host.nativeElement.tagName.toLowerCase()}-${++nextId}`;\n\t\t\t\tthis.#renderer.setAttribute(input.host.nativeElement, 'id', inputId);\n\t\t\t});\n\t\t// We're using the id from the first input available\n\t\tthis.id.set(this.#inputs[0].host.nativeElement.id);\n\t\tthis.updateAria();\n\t\tthis.ready$.next(true);\n\t}\n\n\tprivate updateAria(): void {\n\t\tthis.#inputs.forEach((input) => {\n\t\t\tthis.#renderer.setAttribute(input.host.nativeElement, 'aria-invalid', this.invalidStatus()?.toString());\n\t\t\tthis.#renderer.setAttribute(input.host.nativeElement, 'aria-required', this.isInputRequired()?.toString());\n\t\t\tif (!input.standalone) {\n\t\t\t\tlet ariaDescribedBy = `${input.host.nativeElement.id}-message`;\n\t\t\t\tif (this.extraDescribedBy()) {\n\t\t\t\t\tariaDescribedBy += ` ${this.extraDescribedBy()}`;\n\t\t\t\t}\n\t\t\t\tthis.#renderer.setAttribute(input.host.nativeElement, 'aria-describedby', ariaDescribedBy);\n\t\t\t}\n\t\t});\n\t\tif (this.id() && !this.#ariaLabelledBy.includes(`${this.id()}-label`)) {\n\t\t\tthis.addLabelledBy(`${this.id()}-label`);\n\t\t}\n\t}\n\n\tngOnDestroy(): void {\n\t\tthis.ready$.complete();\n\t}\n\n\tngDoCheck(): void {\n\t\tafterNextRender(\n\t\t\t() => {\n\t\t\t\tthis.#hasInputRequired.set(this.#isInputRequired());\n\t\t\t\tthis.#invalidStatus.set(this.#hasInvalidStatus());\n\t\t\t\tthis.contentLength.set((this.#inputs[0]?.host?.nativeElement as HTMLInputElement)?.value?.length ?? 0);\n\t\t\t},\n\t\t\t{\n\t\t\t\tinjector: this.#injector,\n\t\t\t},\n\t\t);\n\t}\n\n\t#isInputRequired(): boolean {\n\t\tconst hasRequiredFormControl = this.ownControls().some((c) => c.control?.hasValidator(Validators.required));\n\t\tconst hasRequiredNgModel = this.ownRequiredValidators().some((c) => booleanAttribute(c.required));\n\t\treturn hasRequiredNgModel || hasRequiredFormControl;\n\t}\n\n\t#hasInvalidStatus(): boolean {\n\t\tconst isInvalidOverride = this.invalid() !== undefined && this.invalid() !== null;\n\t\tif (isInvalidOverride) {\n\t\t\treturn this.invalid();\n\t\t}\n\t\tconst statusControlOverride = this.statusControl();\n\t\tif (statusControlOverride) {\n\t\t\treturn statusControlOverride.invalid && this.ownControls().some((c) => c?.touched);\n\t\t}\n\t\treturn this.ownControls().some((c) => c.invalid && c.touched);\n\t}\n}\n","@if (presentationMode()) {\n\t<dl class=\"presentation\">\n\t\t<ng-container *ngTemplateOutlet=\"inputLayoutTpl\" />\n\t</dl>\n} @else {\n\t<ng-container *ngTemplateOutlet=\"inputLayoutTpl\" />\n}\n\n<ng-template #inputLayoutTpl>\n\t@if (layout() === \"fieldset\" && !presentationMode()) {\n\t\t<fieldset class=\"form-fieldset\" [class.mod-inline]=\"inline()\" [class.mod-S]=\"size() === 'S'\">\n\t\t\t<legend\n\t\t\t\tluFormLabel\n\t\t\t\t[tooltip]=\"tooltip()\"\n\t\t\t\t[tag]=\"tag()\"\n\t\t\t\t[required]=\"isInputRequired()\"\n\t\t\t\t[class.pr-u-mask]=\"hiddenLabel()\"\n\t\t\t\t[attr.aria-hidden]=\"hiddenLabel()\"\n\t\t\t>\n\t\t\t\t<ng-container *luPortal=\"label()\" />\n\t\t\t</legend>\n\t\t\t<ng-container *ngTemplateOutlet=\"projectionTpl\" />\n\t\t\t@if (inlineMessage() || (invalidStatus() ? errorInlineMessage() : false)) {\n\t\t\t\t<lu-inline-message\n\t\t\t\t\tid=\"{{ id() }}-message\"\n\t\t\t\t\t[label]=\"invalidStatus() && errorInlineMessage() ? errorInlineMessage() : inlineMessage()\"\n\t\t\t\t\t[state]=\"invalidStatus() ? 'error' : inlineMessageState()\"\n\t\t\t\t/>\n\t\t\t}\n\t\t</fieldset>\n\t} @else {\n\t\t@if (presentationMode()) {\n\t\t\t<dt class=\"presentation-term\">\n\t\t\t\t<ng-container *luPortal=\"label()\" />\n\t\t\t\t@if (tooltip()) {\n\t\t\t\t\t<lu-icon class=\"presentation-term-info\" icon=\"signHelp\" [alt]=\"'?'\" [luTooltip]=\"tooltip()\" />\n\t\t\t\t}\n\n\t\t\t\t@if (tag()) {\n\t\t\t\t\t<span class=\"formLabel-tag tag\">{{ tag() }}</span>\n\t\t\t\t}\n\t\t\t</dt>\n\n\t\t\t<ng-container *ngTemplateOutlet=\"projectionTpl\" />\n\t\t} @else {\n\t\t\t<label\n\t\t\t\tluFormLabel\n\t\t\t\t[counterStatus]=\"contentLength()\"\n\t\t\t\t[counterMax]=\"counter()\"\n\t\t\t\t[error]=\"invalidStatus()\"\n\t\t\t\t[tag]=\"tag()\"\n\t\t\t\t[tooltip]=\"tooltip()\"\n\t\t\t\t[required]=\"isInputRequired()\"\n\t\t\t\t[counterId]=\"`${id()}-counter`\"\n\t\t\t\t[attr.id]=\"`${id()}-label`\"\n\t\t\t\t[attr.for]=\"id()\"\n\t\t\t\t[attr.role]=\"rolePresentationLabel() ? 'presentation' : null\"\n\t\t\t\t[class.pr-u-mask]=\"hiddenLabel()\"\n\t\t\t\t[class.inputFramed-header-label]=\"framed\"\n\t\t\t>\n\t\t\t\t<span><ng-container *luPortal=\"label()\" /></span>\n\t\t\t</label>\n\t\t\t@if (AI()) {\n\t\t\t\t<div class=\"form-field-contentOptional\">\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"projectionTpl\" />\n\t\t\t\t\t<lu-icon\n\t\t\t\t\t\tclass=\"pr-u-focusVisible pr-u-borderRadiusSmall\"\n\t\t\t\t\t\t[luTooltip]=\"iconAItooltip()\"\n\t\t\t\t\t\tsize=\"S\"\n\t\t\t\t\t\tAI\n\t\t\t\t\t\ticon=\"weatherStars\"\n\t\t\t\t\t\t[alt]=\"iconAIalt()\"\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t} @else {\n\t\t\t\t<ng-container *ngTemplateOutlet=\"projectionTpl\" />\n\t\t\t}\n\t\t\t@if (inlineMessage() || (invalidStatus() ? errorInlineMessage() : false)) {\n\t\t\t\t<lu-inline-message\n\t\t\t\t\tid=\"{{ id() }}-message\"\n\t\t\t\t\t[label]=\"invalidStatus() && errorInlineMessage() ? errorInlineMessage() : inlineMessage()\"\n\t\t\t\t\t[state]=\"invalidStatus() ? 'error' : inlineMessageState()\"\n\t\t\t\t/>\n\t\t\t}\n\t\t}\n\t}\n</ng-template>\n\n<ng-template #projectionTpl>\n\t@if (presentationMode() && presentationDisplayTpl()) {\n\t\t<dd class=\"presentation-definition\">\n\t\t\t<ng-container *ngTemplateOutlet=\"presentationDisplayTpl()\" />\n\t\t</dd>\n\t} @else {\n\t\t<ng-content />\n\t}\n</ng-template>\n","import { InjectionToken } from '@angular/core';\nimport { InputFramedComponent } from './input-framed.component';\n\nexport const INPUT_FRAMED_INSTANCE = new InjectionToken<InputFramedComponent>('INPUT_FRAMED_INSTANCE');\n","import { booleanAttribute, ChangeDetectionStrategy, Component, forwardRef, input, ViewEncapsulation } from '@angular/core';\nimport { PortalContent, PortalDirective } from '@lucca-front/ng/core';\nimport { INPUT_FRAMED_INSTANCE } from './input-framed.token';\n\n@Component({\n\tselector: 'lu-input-framed',\n\timports: [PortalDirective],\n\ttemplateUrl: './input-framed.component.html',\n\tencapsulation: ViewEncapsulation.None,\n\tproviders: [\n\t\t{\n\t\t\tprovide: INPUT_FRAMED_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => InputFramedComponent),\n\t\t},\n\t],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class InputFramedComponent {\n\treadonly framedPortal = input<PortalContent | null>(null);\n\treadonly center = input(false, { transform: booleanAttribute });\n\treadonly size = input<'L' | null>(null);\n}\n","<div class=\"inputFramed\" [class.mod-center]=\"center()\" [class.mod-L]=\"size() === 'L'\">\n\t<div class=\"inputFramed-header\">\n\t\t<div class=\"form-field inputFramed-header-field\">\n\t\t\t<ng-content />\n\t\t</div>\n\t\t<div class=\"inputFramed-header-illustration\"><ng-content select=\"[illustration]\" /></div>\n\t\t<div class=\"inputFramed-header-info\"><ng-content select=\"[info]\" /></div>\n\t</div>\n\t@if (framedPortal()) {\n\t\t<div class=\"inputFramed-content\"><ng-container *luPortal=\"framedPortal()\" /></div>\n\t}\n</div>\n","import { booleanAttribute, Directive, ElementRef, inject, Input, OnInit } from '@angular/core';\nimport { FORM_FIELD_INSTANCE } from './form-field.token';\n\n@Directive({\n\tselector: '[luInput]',\n\thost: {\n\t\t// Used to autofocus in dialog boxes, do not change except if you know what you're doing\n\t\tclass: 'luNativeInput',\n\t},\n})\nexport class InputDirective implements OnInit {\n\tpublic readonly host = inject<ElementRef<HTMLElement>>(ElementRef);\n\n\tpublic readonly formFieldRef = inject(FORM_FIELD_INSTANCE, { optional: true });\n\n\t/**\n\t * Prevents message and label ids from being propagated, useful if the input holds its own message and label (like for radios)\n\t */\n\t@Input({ transform: booleanAttribute, alias: 'luInputStandalone' })\n\tstandalone = false;\n\n\tngOnInit(): void {\n\t\t// If the field is used as standalone, we won't have the ref provided so it'll crash\n\t\tif (this.formFieldRef) {\n\t\t\tthis.formFieldRef.addInput(this);\n\t\t}\n\t}\n}\n","import { Directive, inject, OnInit, signal, TemplateRef, ViewContainerRef } from '@angular/core';\nimport { FormFieldComponent } from '../form-field.component';\n\n@Directive({\n\tselector: '[luPresentationDisplay]',\n})\nexport class PresentationDisplayDirective implements OnInit {\n\t#formFieldRef = inject(FormFieldComponent, { optional: true });\n\n\tpublic readonly templateRef: TemplateRef<unknown> = inject(TemplateRef);\n\n\t#vcr = inject(ViewContainerRef);\n\n\tdefaultDisplay = signal(false);\n\n\tngOnInit() {\n\t\tif (this.#formFieldRef) {\n\t\t\t// If it's default display, we do not override the existing value, this way consumers can override easily without any kind of race condition.\n\t\t\tif (!this.#formFieldRef.presentationDisplayTpl() || !this.defaultDisplay()) {\n\t\t\t\tthis.#formFieldRef.presentationDisplayTpl.set(this.templateRef);\n\t\t\t}\n\t\t}\n\t\tthis.#vcr.clear();\n\t}\n\n\tpublic static ngTemplateContextGuard(_dir: PresentationDisplayDirective, ctx: unknown): ctx is void {\n\t\treturn true;\n\t}\n}\n","import { Directive, inject } from '@angular/core';\nimport { PresentationDisplayDirective } from './presentation-display.directive';\n\n@Directive({\n\tselector: '[luPresentationDisplayDefault]',\n\thostDirectives: [PresentationDisplayDirective],\n})\nexport class ɵPresentationDisplayDefaultDirective {\n\t#displayDirectiveRef = inject(PresentationDisplayDirective);\n\n\tconstructor() {\n\t\tthis.#displayDirectiveRef.defaultDisplay.set(true);\n\t}\n\n\tpublic static ngTemplateContextGuard(_dir: ɵPresentationDisplayDefaultDirective, ctx: unknown): ctx is void {\n\t\treturn true;\n\t}\n}\n","import { booleanAttribute, ChangeDetectionStrategy, Component, input, ViewEncapsulation } from '@angular/core';\nimport { PortalContent, PortalDirective } from '@lucca-front/ng/core';\n\n@Component({\n\tselector: 'lu-data-presentation',\n\timports: [PortalDirective],\n\ttemplateUrl: './data-presentation.component.html',\n\tstyleUrl: './data-presentation.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DataPresentationComponent {\n\treadonly label = input.required<PortalContent>();\n\treadonly noValue = input(false, { transform: booleanAttribute });\n}\n","<dl class=\"presentation\">\n\t<dt class=\"presentation-term\">\n\t\t<ng-container *luPortal=\"label()\" />\n\t</dt>\n\t<dd class=\"presentation-definition\">\n\t\t@if (noValue()) {\n\t\t\t<div aria-hidden=\"true\" data-content-before=\"–\"></div>\n\t\t}\n\t\t<ng-content />\n\t</dd>\n</dl>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["ɵeffectWithDeps","i1.PresentationDisplayDirective"],"mappings":";;;;;;;;;;;;;MAGa,mBAAmB,GAAG,IAAI,cAAc,CAAqB,qBAAqB;;ACHxF,MAAM,YAAY,GAAG;AAC3B,IAAA,EAAE,EAAE;AACH,QAAA,OAAO,EAAE,iHAAiH;AAC1H,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,OAAO,EAAE,0FAA0F;AACnG,KAAA;AACD,IAAA,OAAO,EAAE;AACR,QAAA,OAAO,EAAE,+EAA+E;AACxF,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,OAAO,EAAE,+EAA+E;AACxF,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,OAAO,EAAE,0GAA0G;AACnH,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,OAAO,EAAE,iFAAiF;AAC1F,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,OAAO,EAAE,mGAAmG;AAC5G,KAAA;AACD,IAAA,EAAE,EAAE;AACH,QAAA,OAAO,EAAE,0FAA0F;AACnG,KAAA;CACD;;MCrBY,0BAA0B,GAAG,IAAI,cAAc,CAAC,yBAAyB,EAAE;AACvF,IAAA,OAAO,EAAE,MAAM,uBAAuB;AACtC,CAAA;AAMM,MAAM,uBAAuB,GAA2C;;ACyB/E,IAAI,MAAM,GAAG,CAAC;MAsBD,kBAAkB,CAAA;AAG9B,IAAA,QAAQ;AACR,IAAA,SAAS;AACT,IAAA,SAAS;AAgBT,IAAA,iBAAiB;AA+BjB,IAAA,cAAc;AA0Bd,IAAA,OAAO;AAeA,IAAA,QAAQ,CAAC,KAAqB,EAAA;AACpC,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;AACxB;;AAEG;QACH,UAAU,CAAC,MAAK;YACf,IAAI,CAAC,YAAY,EAAE;AACpB,QAAA,CAAC,CAAC;IACH;AAEA,IAAA,IAAW,MAAM,GAAA;QAChB,OAAO,IAAI,CAAC,OAAO;IACpB;AAMA,IAAA,IAAW,KAAK,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK;IACzB;AAEA,IAAA,eAAe;AAEf,IAAA,WAAA,GAAA;QApHS,IAAA,CAAA,IAAI,GAAG,KAAK,CAAC,GAAG,gBAAgB,CAAC,0BAA0B,CAAC,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAC;AAEtE,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;AAC1B,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC;AAC5B,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QACnB,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,gBAAgB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAEnE,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,qBAAqB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,KAAK,IAAI;QAE1D,IAAA,CAAA,iBAAiB,GAAG,eAAe,CAAC,kBAAkB,8DAAI,WAAW,EAAE,IAAI,EAAA,CAAG;QAE9E,IAAA,CAAA,kBAAkB,GAAG,eAAe,CAAC,iBAAiB,+DAAI,WAAW,EAAE,IAAI,EAAA,CAAG;QAC9E,IAAA,CAAA,UAAU,GAAG,eAAe,CAAC,SAAS,uDAAI,WAAW,EAAE,IAAI,EAAA,CAAG;AAE9D,QAAA,IAAA,CAAA,yBAAyB,GAAG,QAAQ,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,kBAAkB,EAAE,CAAC,CAAC,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,2BAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAC;AACpH,QAAA,IAAA,CAAA,eAAe,GAAG,QAAQ,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,iBAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAC;AAElG,QAAA,IAAA,CAAA,qBAAqB,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,iEAAC;AACzH,QAAA,IAAA,CAAA,WAAW,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,uDAAC;AAEtG,QAAA,IAAA,CAAA,iBAAiB,GAAG,MAAM,CAAC,KAAK,6DAAC;AACjC,QAAA,IAAA,CAAA,kBAAkB,GAAG,MAAM,CAAC,KAAK,8DAAC;AACzB,QAAA,IAAA,CAAA,eAAe,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,kBAAkB,EAAE,IAAI,IAAI,CAAC,iBAAiB,EAAE,2DAAC;AAEvF,QAAA,IAAA,CAAA,KAAK,GAAG,KAAK,CAAC,QAAQ,gDAAiB;AAEhD;;AAEG;QACM,IAAA,CAAA,WAAW,GAAG,KAAK,CAAC,KAAK,wDAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAEpE,QAAA,IAAA,CAAA,qBAAqB,GAAG,KAAK,CAAC,KAAK,iEAAC;AAEpC,QAAA,IAAA,CAAA,mBAAmB,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,qBAAqB,EAAE,IAAI,IAAI,CAAC,YAAY,EAAE,+DAAC;QAEhF,IAAA,CAAA,MAAM,GAAG,KAAK,CAAC,KAAK,mDAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAEtD,QAAA,IAAA,CAAA,aAAa,GAAG,KAAK,CAAyB,IAAI,yDAAC;AAEnD,QAAA,IAAA,CAAA,OAAO,GAAG,KAAK,CAA2B,IAAI,mDAAC;AAE/C,QAAA,IAAA,CAAA,GAAG,GAAG,KAAK,CAAgB,IAAI,+CAAC;QAEhC,IAAA,CAAA,EAAE,GAAG,KAAK,CAAC,KAAK,+CAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAClD,QAAA,IAAA,CAAA,aAAa,GAAG,KAAK,CAAgB,IAAI,yDAAC;AAC1C,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAgB,IAAI,qDAAC;QAEtC,IAAA,CAAA,KAAK,GAAG,KAAK,CAA8D,IAAI,kDACvF,SAAS,EAAE,eAAkF,EAAA,CAC5F;AAEF,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,KAAK,0DAAC;AAC9B,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE;QAEhD,IAAA,CAAA,OAAO,GAAG,KAAK,CAA0B,IAAI,oDAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAEtE,QAAA,IAAA,CAAA,aAAa,GAAG,KAAK,CAAuB,IAAI,yDAAC;AAE1D;;AAEG;AACM,QAAA,IAAA,CAAA,kBAAkB,GAAG,KAAK,CAAuB,IAAI,8DAAC;AAE/D;;AAEG;AACM,QAAA,IAAA,CAAA,kBAAkB,GAAG,KAAK,CAA4B,IAAI,8DAAC;AAE3D,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK,CAAuB,IAAI,gDAAC;AAEjD;;AAEG;AACM,QAAA,IAAA,CAAA,gBAAgB,GAAG,KAAK,CAAS,EAAE,4DAAC;AAEpC,QAAA,IAAA,CAAA,MAAM,GAAG,KAAK,CAAuC,SAAS,kDAAC;QAExE,IAAA,CAAA,OAAO,GAAqB,EAAE;AAE9B;;AAEG;AACM,QAAA,IAAA,CAAA,OAAO,GAAG,KAAK,CAAS,CAAC,mDAAC;AAE1B,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAS,CAAC,yDAAC;QAEjC,IAAA,CAAA,YAAY,GAAG,KAAK,CAAC,KAAK,yDAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAE5D,QAAA,IAAA,CAAA,gBAAgB,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,UAAU,EAAE,YAAY,EAAE,IAAI,IAAI,CAAC,YAAY,EAAE,4DAAC;AAEzF,QAAA,IAAA,CAAA,sBAAsB,GAAG,MAAM,CAA8B,IAAI,kEAAC;AAgB3E,QAAA,IAAA,CAAA,EAAE,GAAG,MAAM,CAAS,EAAE,8CAAC;AAEvB,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,eAAe,CAAU,KAAK,CAAC;QAM5C,IAAA,CAAA,eAAe,GAAa,EAAE;AAG7B,QAAAA,eAAe,CAAC,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,gBAAgB,CAAC,EAAE,MAAK;YACvF,IAAI,CAAC,UAAU,EAAE;AAClB,QAAA,CAAC,CAAC;QAEF,MAAM,CAAC,MAAK;AACX,YAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;AACtB,gBAAA,CAAC,CAAA,IAAA,EAAO,IAAI,CAAC,IAAI,EAAE,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE;AACrC,gBAAA,YAAY,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,UAAU,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;AACtE,gBAAA,CAAC,CAAA,SAAA,EAAY,IAAI,CAAC,KAAK,EAAE,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE;AAC5C,aAAA,CAAC;AACH,QAAA,CAAC,CAAC;IACH;AAEA,IAAA,aAAa,CAAC,EAAU,EAAE,OAAO,GAAG,KAAK,EAAA;QACxC,IAAI,OAAO,EAAE;YACZ,IAAI,CAAC,eAAe,GAAG,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC;QACrD;aAAO;YACN,IAAI,CAAC,eAAe,GAAG,CAAC,GAAG,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;QACrD;QACA,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,KAAI;AAC9B,YAAA,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE;gBACtB,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,iBAAiB,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACzG;AACD,QAAA,CAAC,CAAC;IACH;AAEA,IAAA,gBAAgB,CAAC,EAAU,EAAA;AAC1B,QAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,UAAU,KAAK,UAAU,KAAK,EAAE,CAAC;IACtF;IAEA,YAAY,GAAA;QACX,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;AAC9B,YAAA,MAAM,IAAI,KAAK,CAAC,6FAA6F,CAAC;QAC/G;AACA,QAAA,IAAI,CAAC;aACH,MAAM,CAAC,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,UAAU;AACnC,aAAA,OAAO,CAAC,CAAC,KAAK,KAAI;AAClB,YAAA,MAAM,OAAO,GAAG,CAAA,EAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE;AAC/E,YAAA,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,OAAO,CAAC;AACrE,QAAA,CAAC,CAAC;;AAEH,QAAA,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;QAClD,IAAI,CAAC,UAAU,EAAE;AACjB,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;IACvB;IAEQ,UAAU,GAAA;QACjB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,KAAI;YAC9B,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,EAAE,IAAI,CAAC,aAAa,EAAE,EAAE,QAAQ,EAAE,CAAC;YACvG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,eAAe,EAAE,IAAI,CAAC,eAAe,EAAE,EAAE,QAAQ,EAAE,CAAC;AAC1G,YAAA,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE;gBACtB,IAAI,eAAe,GAAG,CAAA,EAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAA,QAAA,CAAU;AAC9D,gBAAA,IAAI,IAAI,CAAC,gBAAgB,EAAE,EAAE;AAC5B,oBAAA,eAAe,IAAI,CAAA,CAAA,EAAI,IAAI,CAAC,gBAAgB,EAAE,EAAE;gBACjD;AACA,gBAAA,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,kBAAkB,EAAE,eAAe,CAAC;YAC3F;AACD,QAAA,CAAC,CAAC;QACF,IAAI,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAA,EAAG,IAAI,CAAC,EAAE,EAAE,CAAA,MAAA,CAAQ,CAAC,EAAE;YACtE,IAAI,CAAC,aAAa,CAAC,CAAA,EAAG,IAAI,CAAC,EAAE,EAAE,CAAA,MAAA,CAAQ,CAAC;QACzC;IACD;IAEA,WAAW,GAAA;AACV,QAAA,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;IACvB;IAEA,SAAS,GAAA;QACR,eAAe,CACd,MAAK;YACJ,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACnD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACjD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,aAAkC,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,CAAC;AACvG,QAAA,CAAC,EACD;YACC,QAAQ,EAAE,IAAI,CAAC,SAAS;AACxB,SAAA,CACD;IACF;IAEA,gBAAgB,GAAA;QACf,MAAM,sBAAsB,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC3G,MAAM,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,gBAAgB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QACjG,OAAO,kBAAkB,IAAI,sBAAsB;IACpD;IAEA,iBAAiB,GAAA;AAChB,QAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,EAAE,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,EAAE,KAAK,IAAI;QACjF,IAAI,iBAAiB,EAAE;AACtB,YAAA,OAAO,IAAI,CAAC,OAAO,EAAE;QACtB;AACA,QAAA,MAAM,qBAAqB,GAAG,IAAI,CAAC,aAAa,EAAE;QAClD,IAAI,qBAAqB,EAAE;YAC1B,OAAO,qBAAqB,CAAC,OAAO,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;QACnF;QACA,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC;IAC9D;8GAtNY,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,qBAAA,EAAA,EAAA,iBAAA,EAAA,uBAAA,EAAA,UAAA,EAAA,uBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,MAAA,EAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,eAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,GAAA,EAAA,EAAA,iBAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,eAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,eAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,kBAAA,EAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,UAAA,EAAA,oBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,kBAAA,EAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,UAAA,EAAA,oBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,gBAAA,EAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,UAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,MAAA,EAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,qBAAA,EAAA,6BAAA,EAAA,MAAA,EAAA,cAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,gCAAA,EAAA,QAAA,EAAA,EAAA,EAAA,SAAA,EAbnB;YACV,OAAO;AACP,YAAA;AACC,gBAAA,OAAO,EAAE,mBAAmB;AAC5B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,kBAAkB,CAAC;AACjD,aAAA;SACD,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,mBAAA,EAAA,SAAA,EAiB4C,kBAAkB,wFAEjB,iBAAiB,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,YAAA,EAAA,SAAA,EACzB,SAAS,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECxEhD,yxGAiGA,68iEDtDW,gBAAgB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,sBAAsB,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,OAAA,EAAA,MAAA,EAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,eAAe,uUAAE,mBAAmB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,aAAa,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,KAAA,EAAA,MAAA,EAAA,OAAA,EAAA,IAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,eAAe,gGAAE,kBAAkB,EAAA,QAAA,EAAA,yCAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,OAAA,EAAA,SAAA,EAAA,KAAA,EAAA,MAAA,EAAA,eAAA,EAAA,YAAA,EAAA,WAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAgBhI,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAlB9B,SAAS;AACC,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,eAAe,WAChB,CAAC,gBAAgB,EAAE,sBAAsB,EAAE,eAAe,EAAE,mBAAmB,EAAE,aAAa,EAAE,eAAe,EAAE,kBAAkB,CAAC,EAAA,SAAA,EAGlI;wBACV,OAAO;AACP,wBAAA;AACC,4BAAA,OAAO,EAAE,mBAAmB;AAC5B,4BAAA,WAAW,EAAE,UAAU,CAAC,wBAAwB,CAAC;AACjD,yBAAA;qBACD,EAAA,IAAA,EACK;AACL,wBAAA,kCAAkC,EAAE,QAAQ;AAC5C,qBAAA,EAAA,aAAA,EACc,iBAAiB,CAAC,IAAI,EAAA,eAAA,EACpB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,yxGAAA,EAAA,MAAA,EAAA,CAAA,q5iEAAA,CAAA,EAAA;2NAYF,kBAAkB,CAAA,EAAA,EAAA,GAAE,EAAE,WAAW,EAAE,IAAI,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,kBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,UAAA,CAAA,MAExC,iBAAiB,CAAA,EAAA,EAAA,GAAE,EAAE,WAAW,EAAE,IAAI,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,UAAA,CAAA,MAChD,SAAS,QAAE,EAAE,WAAW,EAAE,IAAI,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,aAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,qBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,uBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,6BAAA,CAAA,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,QAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,eAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,OAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,SAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,GAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,KAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,IAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,eAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,SAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,WAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,OAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,SAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,eAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,kBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,oBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,kBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,oBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,gBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,QAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,cAAA,CAAA,EAAA,CAAA,EAAA,OAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,SAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,cAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA;;MErE1D,qBAAqB,GAAG,IAAI,cAAc,CAAuB,uBAAuB;;MCcxF,oBAAoB,CAAA;AAbjC,IAAA,WAAA,GAAA;AAcU,QAAA,IAAA,CAAA,YAAY,GAAG,KAAK,CAAuB,IAAI,wDAAC;QAChD,IAAA,CAAA,MAAM,GAAG,KAAK,CAAC,KAAK,mDAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AACtD,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK,CAAa,IAAI,gDAAC;AACvC,IAAA;8GAJY,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,MAAA,EAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,SAAA,EARrB;AACV,YAAA;AACC,gBAAA,OAAO,EAAE,qBAAqB;AAC9B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,oBAAoB,CAAC;AACnD,aAAA;SACD,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECdF,oiBAYA,4CDNW,eAAe,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,iBAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAWb,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAbhC,SAAS;+BACC,iBAAiB,EAAA,OAAA,EAClB,CAAC,eAAe,CAAC,iBAEX,iBAAiB,CAAC,IAAI,EAAA,SAAA,EAC1B;AACV,wBAAA;AACC,4BAAA,OAAO,EAAE,qBAAqB;AAC9B,4BAAA,WAAW,EAAE,UAAU,CAAC,0BAA0B,CAAC;AACnD,yBAAA;qBACD,EAAA,eAAA,EACgB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,oiBAAA,EAAA;;;MELnC,cAAc,CAAA;AAP3B,IAAA,WAAA,GAAA;AAQiB,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAA0B,UAAU,CAAC;QAElD,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,mBAAmB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAE9E;;AAEG;QAEH,IAAA,CAAA,UAAU,GAAG,KAAK;AAQlB,IAAA;IANA,QAAQ,GAAA;;AAEP,QAAA,IAAI,IAAI,CAAC,YAAY,EAAE;AACtB,YAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC;QACjC;IACD;8GAhBY,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAd,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,cAAc,uGAQN,gBAAgB,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,eAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FARxB,cAAc,EAAA,UAAA,EAAA,CAAA;kBAP1B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,WAAW;AACrB,oBAAA,IAAI,EAAE;;AAEL,wBAAA,KAAK,EAAE,eAAe;AACtB,qBAAA;AACD,iBAAA;;sBASC,KAAK;AAAC,gBAAA,IAAA,EAAA,CAAA,EAAE,SAAS,EAAE,gBAAgB,EAAE,KAAK,EAAE,mBAAmB,EAAE;;;MCZtD,4BAA4B,CAAA;AAHzC,IAAA,WAAA,GAAA;QAIC,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,kBAAkB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAE9C,QAAA,IAAA,CAAA,WAAW,GAAyB,MAAM,CAAC,WAAW,CAAC;AAEvE,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAE/B,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,KAAK,0DAAC;AAe9B,IAAA;AArBA,IAAA,aAAa;AAIb,IAAA,IAAI;IAIJ,QAAQ,GAAA;AACP,QAAA,IAAI,IAAI,CAAC,aAAa,EAAE;;AAEvB,YAAA,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,sBAAsB,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE;gBAC3E,IAAI,CAAC,aAAa,CAAC,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC;YAChE;QACD;AACA,QAAA,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;IAClB;AAEO,IAAA,OAAO,sBAAsB,CAAC,IAAkC,EAAE,GAAY,EAAA;AACpF,QAAA,OAAO,IAAI;IACZ;8GArBY,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAA5B,4BAA4B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAA5B,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBAHxC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,yBAAyB;AACnC,iBAAA;;;MCEY,oCAAoC,CAAA;AAChD,IAAA,oBAAoB,GAAG,MAAM,CAAC,4BAA4B,CAAC;AAE3D,IAAA,WAAA,GAAA;QACC,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC;IACnD;AAEO,IAAA,OAAO,sBAAsB,CAAC,IAA0C,EAAE,GAAY,EAAA;AAC5F,QAAA,OAAO,IAAI;IACZ;8GATY,oCAAoC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAApC,oCAAoC,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gCAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAAC,4BAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAApC,oCAAoC,EAAA,UAAA,EAAA,CAAA;kBAJhD,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,gCAAgC;oBAC1C,cAAc,EAAE,CAAC,4BAA4B,CAAC;AAC9C,iBAAA;;;MCKY,yBAAyB,CAAA;AARtC,IAAA,WAAA,GAAA;AASU,QAAA,IAAA,CAAA,KAAK,GAAG,KAAK,CAAC,QAAQ,gDAAiB;QACvC,IAAA,CAAA,OAAO,GAAG,KAAK,CAAC,KAAK,oDAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAChE,IAAA;8GAHY,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAzB,yBAAyB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECXtC,2SAWA,EAAA,MAAA,EAAA,CAAA,s6BAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDNW,eAAe,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,iBAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAMb,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBARrC,SAAS;+BACC,sBAAsB,EAAA,OAAA,EACvB,CAAC,eAAe,CAAC,EAAA,aAAA,EAGX,iBAAiB,CAAC,IAAI,EAAA,eAAA,EACpB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,2SAAA,EAAA,MAAA,EAAA,CAAA,s6BAAA,CAAA,EAAA;;;AEThD;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"lucca-front-ng-form-field.mjs","sources":["../../../packages/ng/form-field/form-field.token.ts","../../../packages/ng/form-field/translations.ts","../../../packages/ng/form-field/form-field.translate.ts","../../../packages/ng/form-field/form-field.component.ts","../../../packages/ng/form-field/form-field.component.html","../../../packages/ng/form-field/input-framed/input-framed.token.ts","../../../packages/ng/form-field/input-framed/input-framed.component.ts","../../../packages/ng/form-field/input-framed/input-framed.component.html","../../../packages/ng/form-field/input.directive.ts","../../../packages/ng/form-field/value-presentation/presentation-display.directive.ts","../../../packages/ng/form-field/value-presentation/presentation-display-default.directive.ts","../../../packages/ng/form-field/value-presentation/data-presentation/data-presentation.component.ts","../../../packages/ng/form-field/value-presentation/data-presentation/data-presentation.component.html","../../../packages/ng/form-field/lucca-front-ng-form-field.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { FormFieldComponent } from './form-field.component';\n\nexport const FORM_FIELD_INSTANCE = new InjectionToken<FormFieldComponent>('FORM_FIELD_INSTANCE');\n","export const Translations = {\n\tpt: {\n\t\tcounter: '{{current}} {{max}} A sua publicação tem um comprimento de caracteres, sendo permitido um máximo de caracteres.',\n\t},\n\tes: {\n\t\tcounter: 'Su publicación tiene {{current}} caracteres. Se permite un máximo de {{max}} caracteres.',\n\t},\n\t'nl-BE': {\n\t\tcounter: 'Uw publicatie is {{current}} tekens lang. {{max}} tekens maximaal toegestaan.',\n\t},\n\tnl: {\n\t\tcounter: 'Uw publicatie is {{current}} tekens lang. {{max}} tekens maximaal toegestaan.',\n\t},\n\tit: {\n\t\tcounter: 'La tua pubblicazione è lunga {{current}} caratteri. È consentito un numero di massimo {{max}} caratteri.',\n\t},\n\tde: {\n\t\tcounter: 'Ihr Beitrag ist {{current}} Zeichen lang. Maximal sind {{max}} Zeichen erlaubt.',\n\t},\n\tfr: {\n\t\tcounter: 'Votre publication fait {{current}} caractères de long. {{max}} caractères maximum sont autorisés.',\n\t},\n\ten: {\n\t\tcounter: 'Your message is {{current}} characters long. A maximum of {{max}} characters is allowed.',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_FORM_FIELD_TRANSLATIONS = new InjectionToken('LuFormFieldTranslations', {\n\tfactory: () => luFormFieldTranslations,\n});\n\nexport interface LuFormFieldTranslations {\n\tcounter: string;\n}\n\nexport const luFormFieldTranslations: LuTranslation<LuFormFieldTranslations> = Translations;\n","import { NgTemplateOutlet } from '@angular/common';\nimport {\n\tafterNextRender,\n\tbooleanAttribute,\n\tChangeDetectionStrategy,\n\tComponent,\n\tcomputed,\n\tcontentChildren,\n\tDoCheck,\n\teffect,\n\tforwardRef,\n\tinject,\n\tInjector,\n\tinput,\n\tmodel,\n\tnumberAttribute,\n\tOnDestroy,\n\tRenderer2,\n\tsignal,\n\tTemplateRef,\n\tViewEncapsulation,\n} from '@angular/core';\nimport { AbstractControl, NgControl, ReactiveFormsModule, RequiredValidator, Validators } from '@angular/forms';\nimport { SafeHtml } from '@angular/platform-browser';\nimport { intlInputOptions, isNotNil, LuClass, PortalContent, PortalDirective, ɵeffectWithDeps } from '@lucca-front/ng/core';\nimport { LU_FORM_INSTANCE } from '@lucca-front/ng/form';\nimport { FormLabelComponent } from '@lucca-front/ng/form-label';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { InlineMessageComponent, InlineMessageState } from '@lucca-front/ng/inline-message';\nimport { LuTooltipModule } from '@lucca-front/ng/tooltip';\nimport { BehaviorSubject } from 'rxjs';\nimport { FormFieldSize } from './form-field-size';\nimport { FORM_FIELD_INSTANCE } from './form-field.token';\nimport { LU_FORM_FIELD_TRANSLATIONS } from './form-field.translate';\nimport { InputDirective } from './input.directive';\nimport { INPUT_FRAMED_INSTANCE } from './public-api';\n\nlet nextId = 0;\n\ntype FormFieldWidth = 20 | 30 | 40 | 50 | 60;\n\n@Component({\n\tselector: 'lu-form-field',\n\timports: [NgTemplateOutlet, InlineMessageComponent, LuTooltipModule, ReactiveFormsModule, IconComponent, PortalDirective, FormLabelComponent],\n\ttemplateUrl: './form-field.component.html',\n\tstyleUrl: './form-field.component.scss',\n\tproviders: [\n\t\tLuClass,\n\t\t{\n\t\t\tprovide: FORM_FIELD_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => FormFieldComponent),\n\t\t},\n\t],\n\thost: {\n\t\t'[class.inputFramed-header-field]': 'framed',\n\t},\n\tencapsulation: ViewEncapsulation.None,\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class FormFieldComponent implements OnDestroy, DoCheck {\n\treadonly intl = input(...intlInputOptions(LU_FORM_FIELD_TRANSLATIONS));\n\n\t#luClass = inject(LuClass);\n\t#injector = inject(Injector);\n\t#renderer = inject(Renderer2);\n\tprotected parentForm = inject(LU_FORM_INSTANCE, { optional: true });\n\n\treadonly framed = inject(INPUT_FRAMED_INSTANCE, { optional: true }) !== null;\n\n\treadonly formFieldChildren = contentChildren(FormFieldComponent, { descendants: true });\n\n\treadonly requiredValidators = contentChildren(RequiredValidator, { descendants: true });\n\treadonly ngControls = contentChildren(NgControl, { descendants: true });\n\n\treadonly ignoredRequiredValidators = computed(() => new Set(this.formFieldChildren().flatMap((f) => f.requiredValidators())));\n\treadonly ignoredControls = computed(() => new Set(this.formFieldChildren().flatMap((f) => f.ngControls())));\n\n\treadonly ownRequiredValidators = computed(() => this.requiredValidators().filter((c) => !this.ignoredRequiredValidators().has(c)));\n\treadonly ownControls = computed(() => this.ngControls().filter((c) => !this.ignoredControls().has(c)));\n\n\treadonly #hasInputRequired = signal(false);\n\treadonly forceInputRequired = signal(false);\n\treadonly isInputRequired = computed(() => this.forceInputRequired() || this.#hasInputRequired());\n\n\treadonly label = input.required<PortalContent>();\n\n\t/**\n\t * Hide field label, while keeping it in DOM for screen readers\n\t */\n\treadonly hiddenLabel = input(false, { transform: booleanAttribute });\n\n\treadonly rolePresentationLabel = model(false);\n\n\treadonly labelIsPresentation = computed(() => this.rolePresentationLabel() || this.presentation());\n\n\treadonly inline = input(false, { transform: booleanAttribute });\n\n\treadonly statusControl = input<AbstractControl | null>(null);\n\n\treadonly tooltip = input<string | SafeHtml | null>(null);\n\n\treadonly tag = input<string | null>(null);\n\n\treadonly AI = input(false, { transform: booleanAttribute });\n\treadonly iconAItooltip = input<string | null>(null);\n\treadonly iconAIalt = input<string | null>(null);\n\n\treadonly width = input<FormFieldWidth | null, FormFieldWidth | `${FormFieldWidth}` | null>(null, {\n\t\ttransform: numberAttribute as (value: FormFieldWidth | `${FormFieldWidth}`) => FormFieldWidth,\n\t});\n\n\treadonly #invalidStatus = signal(false);\n\tinvalidStatus = this.#invalidStatus.asReadonly();\n\n\treadonly invalid = input<boolean | null, boolean>(null, { transform: booleanAttribute });\n\n\treadonly inlineMessage = input<PortalContent | null>(null);\n\n\t/**\n\t * Inline message for when the control is in error state\n\t */\n\treadonly errorInlineMessage = input<PortalContent | null>(null);\n\n\t/**\n\t * State of the inline message, will be ignored if form state is invalid\n\t */\n\treadonly inlineMessageState = input<InlineMessageState | null>(null);\n\n\treadonly size = input<FormFieldSize | null>(null);\n\n\t/**\n\t * Extra aria-describedby attribute\n\t */\n\treadonly extraDescribedBy = input<string>('');\n\n\treadonly layout = model<'default' | 'checkable' | 'fieldset'>('default');\n\n\t#inputs: InputDirective[] = [];\n\n\t/**\n\t * Max amount of characters allowed, defaults to 0, which means hidden, no maximum\n\t */\n\treadonly counter = input<number>(0);\n\n\treadonly contentLength = signal<number>(0);\n\n\treadonly presentation = input(false, { transform: booleanAttribute });\n\n\treadonly presentationMode = computed(() => this.parentForm?.presentation() || this.presentation());\n\n\treadonly presentationDisplayTpl = signal<TemplateRef<unknown> | null>(null);\n\n\tpublic addInput(input: InputDirective) {\n\t\tthis.#inputs.push(input);\n\t\t/* We have to put this in the next cycle to make sure it'll be applied properly\n\t\t * and that it won't trigger a change detection error\n\t\t */\n\t\tsetTimeout(() => {\n\t\t\tthis.prepareInput();\n\t\t});\n\t}\n\n\tpublic get inputs(): InputDirective[] {\n\t\treturn this.#inputs;\n\t}\n\n\treadonly id = signal<string>('');\n\n\treadonly ready$ = new BehaviorSubject<boolean>(false);\n\n\tpublic get ready(): boolean {\n\t\treturn this.ready$.value;\n\t}\n\n\t#ariaLabelledBy: string[] = [];\n\n\tconstructor() {\n\t\tɵeffectWithDeps([this.isInputRequired, this.invalidStatus, this.extraDescribedBy], () => {\n\t\t\tthis.updateAria();\n\t\t});\n\n\t\teffect(() => {\n\t\t\tthis.#luClass.setState({\n\t\t\t\t[`mod-${this.size()}`]: !!this.size(),\n\t\t\t\t'form-field': this.layout() !== 'fieldset' && !this.presentationMode(),\n\t\t\t\t[`mod-width${this.width()}`]: !!this.width(),\n\t\t\t});\n\t\t});\n\t}\n\n\taddLabelledBy(id: string, prepend = false): void {\n\t\tif (prepend) {\n\t\t\tthis.#ariaLabelledBy = [id, ...this.#ariaLabelledBy];\n\t\t} else {\n\t\t\tthis.#ariaLabelledBy = [...this.#ariaLabelledBy, id];\n\t\t}\n\t\tthis.#inputs.forEach((input) => {\n\t\t\tif (!input.standalone) {\n\t\t\t\tthis.#renderer.setAttribute(input.host.nativeElement, 'aria-labelledby', this.#ariaLabelledBy.join(' '));\n\t\t\t}\n\t\t});\n\t}\n\n\tremoveLabelledBy(id: string): void {\n\t\tthis.#ariaLabelledBy = this.#ariaLabelledBy.filter((labelledBy) => labelledBy !== id);\n\t}\n\n\tprepareInput(): void {\n\t\tif (this.#inputs.length === 0) {\n\t\t\tthrow new Error('Missing input for form field, make sure to set `luInput` to your input inside lu-form-field');\n\t\t}\n\t\tthis.inputs\n\t\t\t.filter((input) => !input.standalone)\n\t\t\t.forEach((input) => {\n\t\t\t\tconst inputId = `${input.host.nativeElement.tagName.toLowerCase()}-${++nextId}`;\n\t\t\t\tthis.#renderer.setAttribute(input.host.nativeElement, 'id', inputId);\n\t\t\t});\n\t\t// We're using the id from the first input available\n\t\tthis.id.set(this.#inputs[0].host.nativeElement.id);\n\t\tthis.updateAria();\n\t\tthis.ready$.next(true);\n\t}\n\n\tprivate updateAria(): void {\n\t\tthis.#inputs.forEach((input) => {\n\t\t\tthis.#renderer.setAttribute(input.host.nativeElement, 'aria-invalid', this.invalidStatus()?.toString());\n\t\t\tthis.#renderer.setAttribute(input.host.nativeElement, 'aria-required', this.isInputRequired()?.toString());\n\t\t\tif (!input.standalone) {\n\t\t\t\tlet ariaDescribedBy = `${input.host.nativeElement.id}-message`;\n\t\t\t\tif (this.extraDescribedBy()) {\n\t\t\t\t\tariaDescribedBy += ` ${this.extraDescribedBy()}`;\n\t\t\t\t}\n\t\t\t\tthis.#renderer.setAttribute(input.host.nativeElement, 'aria-describedby', ariaDescribedBy);\n\t\t\t}\n\t\t});\n\t\tif (this.id() && !this.#ariaLabelledBy.includes(`${this.id()}-label`)) {\n\t\t\tthis.addLabelledBy(`${this.id()}-label`);\n\t\t}\n\t}\n\n\tngOnDestroy(): void {\n\t\tthis.ready$.complete();\n\t}\n\n\tngDoCheck(): void {\n\t\tafterNextRender(\n\t\t\t() => {\n\t\t\t\tthis.#hasInputRequired.set(this.#isInputRequired());\n\t\t\t\tthis.#invalidStatus.set(this.#hasInvalidStatus());\n\t\t\t\tthis.contentLength.set((this.#inputs[0]?.host?.nativeElement as HTMLInputElement)?.value?.length ?? 0);\n\t\t\t},\n\t\t\t{\n\t\t\t\tinjector: this.#injector,\n\t\t\t},\n\t\t);\n\t}\n\n\t#isInputRequired(): boolean {\n\t\tconst hasRequiredFormControl = this.ownControls().some((c) => c.control?.hasValidator(Validators.required));\n\t\tconst hasRequiredNgModel = this.ownRequiredValidators().some((c) => booleanAttribute(c.required));\n\t\treturn hasRequiredNgModel || hasRequiredFormControl;\n\t}\n\n\t#hasInvalidStatus(): boolean {\n\t\tconst isInvalidOverride = isNotNil(this.invalid());\n\t\tif (isInvalidOverride) {\n\t\t\treturn this.invalid() ?? false;\n\t\t}\n\t\tconst statusControlOverride = this.statusControl();\n\t\tif (statusControlOverride) {\n\t\t\treturn statusControlOverride.invalid && this.ownControls().some((c) => c?.touched);\n\t\t}\n\t\treturn this.ownControls().some((c) => c.invalid && c.touched);\n\t}\n}\n","@if (presentationMode()) {\n\t<dl class=\"presentation\">\n\t\t<ng-container *ngTemplateOutlet=\"inputLayoutTpl\" />\n\t</dl>\n} @else {\n\t<ng-container *ngTemplateOutlet=\"inputLayoutTpl\" />\n}\n\n<ng-template #inputLayoutTpl>\n\t@if (layout() === \"fieldset\" && !presentationMode()) {\n\t\t<fieldset class=\"form-fieldset\" [class.mod-inline]=\"inline()\" [class.mod-S]=\"size() === 'S'\">\n\t\t\t<legend\n\t\t\t\tluFormLabel\n\t\t\t\t[tooltip]=\"tooltip()\"\n\t\t\t\t[tag]=\"tag()\"\n\t\t\t\t[required]=\"isInputRequired()\"\n\t\t\t\t[class.pr-u-mask]=\"hiddenLabel()\"\n\t\t\t\t[attr.aria-hidden]=\"hiddenLabel()\"\n\t\t\t>\n\t\t\t\t<ng-container *luPortal=\"label()\" />\n\t\t\t</legend>\n\t\t\t<ng-container *ngTemplateOutlet=\"projectionTpl\" />\n\t\t\t@if (inlineMessage() || (invalidStatus() ? errorInlineMessage() : false)) {\n\t\t\t\t<lu-inline-message\n\t\t\t\t\tid=\"{{ id() }}-message\"\n\t\t\t\t\t[label]=\"invalidStatus() && errorInlineMessage() ? errorInlineMessage() : inlineMessage()\"\n\t\t\t\t\t[state]=\"invalidStatus() ? 'error' : inlineMessageState()\"\n\t\t\t\t/>\n\t\t\t}\n\t\t</fieldset>\n\t} @else {\n\t\t@if (presentationMode()) {\n\t\t\t<dt class=\"presentation-term\">\n\t\t\t\t<ng-container *luPortal=\"label()\" />\n\t\t\t\t@if (tooltip()) {\n\t\t\t\t\t<lu-icon class=\"presentation-term-info\" icon=\"signHelp\" [alt]=\"'?'\" [luTooltip]=\"tooltip()\" />\n\t\t\t\t}\n\n\t\t\t\t@if (tag()) {\n\t\t\t\t\t<span class=\"formLabel-tag tag\">{{ tag() }}</span>\n\t\t\t\t}\n\t\t\t</dt>\n\n\t\t\t<ng-container *ngTemplateOutlet=\"projectionTpl\" />\n\t\t} @else {\n\t\t\t<label\n\t\t\t\tluFormLabel\n\t\t\t\t[counterStatus]=\"contentLength()\"\n\t\t\t\t[counterMax]=\"counter()\"\n\t\t\t\t[error]=\"invalidStatus()\"\n\t\t\t\t[tag]=\"tag()\"\n\t\t\t\t[tooltip]=\"tooltip()\"\n\t\t\t\t[required]=\"isInputRequired()\"\n\t\t\t\t[counterId]=\"`${id()}-counter`\"\n\t\t\t\t[attr.id]=\"`${id()}-label`\"\n\t\t\t\t[attr.for]=\"id()\"\n\t\t\t\t[attr.role]=\"rolePresentationLabel() ? 'presentation' : null\"\n\t\t\t\t[class.pr-u-mask]=\"hiddenLabel()\"\n\t\t\t\t[class.inputFramed-header-label]=\"framed\"\n\t\t\t>\n\t\t\t\t<span><ng-container *luPortal=\"label()\" /></span>\n\t\t\t</label>\n\t\t\t@if (AI()) {\n\t\t\t\t<div class=\"form-field-contentOptional\">\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"projectionTpl\" />\n\t\t\t\t\t<lu-icon\n\t\t\t\t\t\tclass=\"pr-u-focusVisible pr-u-borderRadiusSmall\"\n\t\t\t\t\t\t[luTooltip]=\"iconAItooltip()\"\n\t\t\t\t\t\tsize=\"S\"\n\t\t\t\t\t\tAI\n\t\t\t\t\t\ticon=\"weatherStars\"\n\t\t\t\t\t\t[alt]=\"iconAIalt()\"\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t} @else {\n\t\t\t\t<ng-container *ngTemplateOutlet=\"projectionTpl\" />\n\t\t\t}\n\t\t\t@if (inlineMessage() || (invalidStatus() ? errorInlineMessage() : false)) {\n\t\t\t\t<lu-inline-message\n\t\t\t\t\tid=\"{{ id() }}-message\"\n\t\t\t\t\t[label]=\"invalidStatus() && errorInlineMessage() ? errorInlineMessage() : inlineMessage()\"\n\t\t\t\t\t[state]=\"invalidStatus() ? 'error' : inlineMessageState()\"\n\t\t\t\t/>\n\t\t\t}\n\t\t}\n\t}\n</ng-template>\n\n<ng-template #projectionTpl>\n\t@if (presentationMode() && presentationDisplayTpl()) {\n\t\t<dd class=\"presentation-definition\">\n\t\t\t<ng-container *ngTemplateOutlet=\"presentationDisplayTpl()\" />\n\t\t</dd>\n\t} @else {\n\t\t<ng-content />\n\t}\n</ng-template>\n","import { InjectionToken } from '@angular/core';\nimport { InputFramedComponent } from './input-framed.component';\n\nexport const INPUT_FRAMED_INSTANCE = new InjectionToken<InputFramedComponent>('INPUT_FRAMED_INSTANCE');\n","import { booleanAttribute, ChangeDetectionStrategy, Component, forwardRef, input, ViewEncapsulation } from '@angular/core';\nimport { PortalContent, PortalDirective } from '@lucca-front/ng/core';\nimport { INPUT_FRAMED_INSTANCE } from './input-framed.token';\n\n@Component({\n\tselector: 'lu-input-framed',\n\timports: [PortalDirective],\n\ttemplateUrl: './input-framed.component.html',\n\tencapsulation: ViewEncapsulation.None,\n\tproviders: [\n\t\t{\n\t\t\tprovide: INPUT_FRAMED_INSTANCE,\n\t\t\tuseExisting: forwardRef(() => InputFramedComponent),\n\t\t},\n\t],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class InputFramedComponent {\n\treadonly framedPortal = input<PortalContent | null>(null);\n\treadonly center = input(false, { transform: booleanAttribute });\n\treadonly size = input<'L' | null>(null);\n}\n","<div class=\"inputFramed\" [class.mod-center]=\"center()\" [class.mod-L]=\"size() === 'L'\">\n\t<div class=\"inputFramed-header\">\n\t\t<div class=\"form-field inputFramed-header-field\">\n\t\t\t<ng-content />\n\t\t</div>\n\t\t<div class=\"inputFramed-header-illustration\"><ng-content select=\"[illustration]\" /></div>\n\t\t<div class=\"inputFramed-header-info\"><ng-content select=\"[info]\" /></div>\n\t</div>\n\t@if (framedPortal()) {\n\t\t<div class=\"inputFramed-content\"><ng-container *luPortal=\"framedPortal()\" /></div>\n\t}\n</div>\n","import { booleanAttribute, Directive, ElementRef, inject, Input, OnInit } from '@angular/core';\nimport { FORM_FIELD_INSTANCE } from './form-field.token';\n\n@Directive({\n\tselector: '[luInput]',\n\thost: {\n\t\t// Used to autofocus in dialog boxes, do not change except if you know what you're doing\n\t\tclass: 'luNativeInput',\n\t},\n})\nexport class InputDirective implements OnInit {\n\tpublic readonly host = inject<ElementRef<HTMLElement>>(ElementRef);\n\n\tpublic readonly formFieldRef = inject(FORM_FIELD_INSTANCE, { optional: true });\n\n\t/**\n\t * Prevents message and label ids from being propagated, useful if the input holds its own message and label (like for radios)\n\t */\n\t@Input({ transform: booleanAttribute, alias: 'luInputStandalone' })\n\tstandalone = false;\n\n\tngOnInit(): void {\n\t\t// If the field is used as standalone, we won't have the ref provided so it'll crash\n\t\tif (this.formFieldRef) {\n\t\t\tthis.formFieldRef.addInput(this);\n\t\t}\n\t}\n}\n","import { Directive, inject, OnInit, signal, TemplateRef, ViewContainerRef } from '@angular/core';\nimport { FormFieldComponent } from '../form-field.component';\n\n@Directive({\n\tselector: '[luPresentationDisplay]',\n})\nexport class PresentationDisplayDirective implements OnInit {\n\t#formFieldRef = inject(FormFieldComponent, { optional: true });\n\n\tpublic readonly templateRef: TemplateRef<unknown> = inject(TemplateRef);\n\n\t#vcr = inject(ViewContainerRef);\n\n\treadonly defaultDisplay = signal(false);\n\n\tngOnInit() {\n\t\tif (this.#formFieldRef) {\n\t\t\t// If it's default display, we do not override the existing value, this way consumers can override easily without any kind of race condition.\n\t\t\tif (!this.#formFieldRef.presentationDisplayTpl() || !this.defaultDisplay()) {\n\t\t\t\tthis.#formFieldRef.presentationDisplayTpl.set(this.templateRef);\n\t\t\t}\n\t\t}\n\t\tthis.#vcr.clear();\n\t}\n\n\tpublic static ngTemplateContextGuard(_dir: PresentationDisplayDirective, ctx: unknown): ctx is void {\n\t\treturn true;\n\t}\n}\n","import { Directive, inject } from '@angular/core';\nimport { PresentationDisplayDirective } from './presentation-display.directive';\n\n@Directive({\n\tselector: '[luPresentationDisplayDefault]',\n\thostDirectives: [PresentationDisplayDirective],\n})\nexport class ɵPresentationDisplayDefaultDirective {\n\t#displayDirectiveRef = inject(PresentationDisplayDirective);\n\n\tconstructor() {\n\t\tthis.#displayDirectiveRef.defaultDisplay.set(true);\n\t}\n\n\tpublic static ngTemplateContextGuard(_dir: ɵPresentationDisplayDefaultDirective, ctx: unknown): ctx is void {\n\t\treturn true;\n\t}\n}\n","import { booleanAttribute, ChangeDetectionStrategy, Component, input, ViewEncapsulation } from '@angular/core';\nimport { PortalContent, PortalDirective } from '@lucca-front/ng/core';\n\n@Component({\n\tselector: 'lu-data-presentation',\n\timports: [PortalDirective],\n\ttemplateUrl: './data-presentation.component.html',\n\tstyleUrl: './data-presentation.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DataPresentationComponent {\n\treadonly label = input.required<PortalContent>();\n\treadonly noValue = input(false, { transform: booleanAttribute });\n}\n","<dl class=\"presentation\">\n\t<dt class=\"presentation-term\">\n\t\t<ng-container *luPortal=\"label()\" />\n\t</dt>\n\t<dd class=\"presentation-definition\">\n\t\t@if (noValue()) {\n\t\t\t<div aria-hidden=\"true\" data-content-before=\"–\"></div>\n\t\t}\n\t\t<ng-content />\n\t</dd>\n</dl>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["ɵeffectWithDeps","i1.PresentationDisplayDirective"],"mappings":"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"}
|
|
@@ -254,7 +254,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
|
|
|
254
254
|
type: ViewChild,
|
|
255
255
|
args: ['fieldComponent', { read: ViewContainerRef, static: true }]
|
|
256
256
|
}] } });
|
|
257
|
-
const templateErrorExtension = buildAddWrapperExtension('error', (field) => !!field
|
|
257
|
+
const templateErrorExtension = buildAddWrapperExtension('error', (field) => !!field?.validation);
|
|
258
258
|
|
|
259
259
|
// wrapper component
|
|
260
260
|
class LuFormlyWrapperHelper extends FieldWrapper {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lucca-front-ng-formly.mjs","sources":["../../../packages/ng/formly/types/api.ts","../../../packages/ng/formly/types/api.html","../../../packages/ng/formly/types/checkbox.ts","../../../packages/ng/formly/types/checkbox.html","../../../packages/ng/formly/types/date.ts","../../../packages/ng/formly/types/date.html","../../../packages/ng/formly/types/department.ts","../../../packages/ng/formly/types/department.html","../../../packages/ng/formly/types/establishment.ts","../../../packages/ng/formly/types/establishment.html","../../../packages/ng/formly/types/input.ts","../../../packages/ng/formly/types/input.html","../../../packages/ng/formly/types/radios.ts","../../../packages/ng/formly/types/radios.html","../../../packages/ng/formly/types/select.ts","../../../packages/ng/formly/types/select.html","../../../packages/ng/formly/types/textarea.ts","../../../packages/ng/formly/types/textarea.html","../../../packages/ng/formly/types/user.ts","../../../packages/ng/formly/types/user.html","../../../packages/ng/formly/formly.utils.ts","../../../packages/ng/formly/wrappers/error.ts","../../../packages/ng/formly/wrappers/error.html","../../../packages/ng/formly/wrappers/helper.ts","../../../packages/ng/formly/wrappers/helper.html","../../../packages/ng/formly/wrappers/icon.ts","../../../packages/ng/formly/wrappers/icon.html","../../../packages/ng/formly/wrappers/radiosfield-layout.ts","../../../packages/ng/formly/wrappers/radiosfield-layout.html","../../../packages/ng/formly/wrappers/suffix.ts","../../../packages/ng/formly/wrappers/suffix.html","../../../packages/ng/formly/wrappers/textfield-layout.ts","../../../packages/ng/formly/wrappers/textfield-layout.html","../../../packages/ng/formly/wrappers/checkbox-layout.ts","../../../packages/ng/formly/wrappers/checkbox-layout.html","../../../packages/ng/formly/formly.config.ts","../../../packages/ng/formly/formly.providers.ts","../../../packages/ng/formly/formly.module.ts","../../../packages/ng/formly/lucca-front-ng-formly.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { LuApiSelectInputComponent } from '@lucca-front/ng/api';\nimport { FieldType, FieldTypeConfig, FormlyModule } from '@ngx-formly/core';\n\n@Component({\n\tselector: 'lu-formly-field-api',\n\tstyleUrls: ['formly-field.common.scss', 'select.scss'],\n\ttemplateUrl: './api.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [ReactiveFormsModule, FormlyModule, LuApiSelectInputComponent],\n})\nexport class LuFormlyFieldApi extends FieldType<FieldTypeConfig> {\n\tget _api() {\n\t\treturn this.props['api'] as string;\n\t}\n\tget _filters() {\n\t\treturn (this.props['filters'] || []) as string[];\n\t}\n\tget _orderBy() {\n\t\treturn this.props['orderBy'] as string;\n\t}\n\tget _sort() {\n\t\treturn this.props['sort'] as string;\n\t}\n\tget _standard() {\n\t\treturn (this.props['standard'] || 'v3') as 'v3' | 'v4';\n\t}\n\tfocus() {\n\t\tthis.props['_isFocused'] = true;\n\t}\n\tblur() {\n\t\tthis.props['_isFocused'] = false;\n\t}\n}\n","<lu-api-select\n\tclass=\"textfield-input\"\n\t[formControl]=\"formControl\"\n\t[formlyAttributes]=\"field\"\n\t[multiple]=\"props['multiple']\"\n\t(focus)=\"focus()\"\n\t(blur)=\"blur()\"\n\t[placeholder]=\"props.placeholder\"\n\t[api]=\"_api\"\n\t[filters]=\"_filters\"\n\t[orderBy]=\"_orderBy\"\n\t[sort]=\"_sort\"\n\t[standard]=\"_standard\"\n/>\n<span [attr.for]=\"id\" class=\"textfield-label\">{{ props.label }}</span>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { FieldType, FieldTypeConfig, FormlyModule } from '@ngx-formly/core';\n\n@Component({\n\tselector: 'lu-formly-field-checkbox',\n\tstyleUrl: 'formly-field.common.scss',\n\ttemplateUrl: './checkbox.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [ReactiveFormsModule, FormlyModule],\n})\nexport class LuFormlyFieldCheckbox extends FieldType<FieldTypeConfig> {\n\tfocus() {\n\t\tthis.props['_isFocused'] = true;\n\t}\n\tblur() {\n\t\tthis.props['_isFocused'] = false;\n\t}\n}\n","<label class=\"checkbox\" [class]=\"props['mod']\">\n\t<input\n\t\tclass=\"checkbox-input\"\n\t\ttype=\"checkbox\"\n\t\t[name]=\"props['name']\"\n\t\t[id]=\"id\"\n\t\t[formControl]=\"formControl\"\n\t\t[formlyAttributes]=\"field\"\n\t\t(focus)=\"focus()\"\n\t\t(blur)=\"blur()\"\n\t/>\n\t<span class=\"checkbox-label\">{{ props.label }}</span>\n</label>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { LuDateSelectInputComponent } from '@lucca-front/ng/date';\nimport { FieldType, FieldTypeConfig, FormlyModule } from '@ngx-formly/core';\n\n@Component({\n\tselector: 'lu-formly-field-date',\n\tstyleUrls: ['formly-field.common.scss', 'select.scss'],\n\ttemplateUrl: './date.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [ReactiveFormsModule, FormlyModule, LuDateSelectInputComponent],\n})\nexport class LuFormlyFieldDate extends FieldType<FieldTypeConfig> {\n\tfocus() {\n\t\tthis.props['_isFocused'] = true;\n\t}\n\tblur() {\n\t\tthis.props['_isFocused'] = false;\n\t}\n}\n","<lu-date-select\n\tclass=\"textfield-input\"\n\t[formControl]=\"formControl\"\n\t[formlyAttributes]=\"field\"\n\t(focus)=\"focus()\"\n\t(blur)=\"blur()\"\n\t[placeholder]=\"props.placeholder\"\n\t[min]=\"props.min\"\n\t[max]=\"props.max\"\n/>\n<span class=\"textfield-label\">{{ props.label }}</span>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { LuDepartmentSelectInputComponent } from '@lucca-front/ng/department';\nimport { FieldType, FieldTypeConfig, FormlyModule } from '@ngx-formly/core';\n\n@Component({\n\tselector: 'lu-formly-field-department',\n\tstyleUrls: ['formly-field.common.scss', 'select.scss'],\n\ttemplateUrl: './department.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [ReactiveFormsModule, FormlyModule, LuDepartmentSelectInputComponent],\n})\nexport class LuFormlyFieldDepartment extends FieldType<FieldTypeConfig> {\n\tfocus() {\n\t\tthis.props['_isFocused'] = true;\n\t}\n\tblur() {\n\t\tthis.props['_isFocused'] = false;\n\t}\n}\n","<lu-department-select\n\tclass=\"textfield-input\"\n\t[formControl]=\"formControl\"\n\t[formlyAttributes]=\"field\"\n\t[multiple]=\"props['multiple']\"\n\t(focus)=\"focus()\"\n\t(blur)=\"blur()\"\n\t[placeholder]=\"props.placeholder\"\n\t[filters]=\"props['filters']\"\n\t[appInstanceId]=\"props['appInstanceId']\"\n\t[operations]=\"props['operations']\"\n/>\n<span class=\"textfield-label\">{{ props.label }}</span>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { LuEstablishmentSelectInputComponent } from '@lucca-front/ng/establishment';\nimport { FieldType, FieldTypeConfig, FormlyModule } from '@ngx-formly/core';\n\n@Component({\n\tselector: 'lu-formly-field-establishment',\n\tstyleUrls: ['formly-field.common.scss', 'select.scss'],\n\ttemplateUrl: './establishment.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [ReactiveFormsModule, FormlyModule, LuEstablishmentSelectInputComponent],\n})\nexport class LuFormlyFieldEstablishment extends FieldType<FieldTypeConfig> {\n\tfocus() {\n\t\tthis.props['_isFocused'] = true;\n\t}\n\tblur() {\n\t\tthis.props['_isFocused'] = false;\n\t}\n}\n","<lu-establishment-select\n\tclass=\"textfield-input\"\n\t[formControl]=\"formControl\"\n\t[formlyAttributes]=\"field\"\n\t[multiple]=\"props['multiple']\"\n\t(focus)=\"focus()\"\n\t(blur)=\"blur()\"\n\t[placeholder]=\"props.placeholder\"\n\t[filters]=\"props['filters']\"\n\t[appInstanceId]=\"props['appInstanceId']\"\n\t[operations]=\"props['operations']\"\n/>\n<span class=\"textfield-label\">{{ props.label }}</span>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { LuInputDirective } from '@lucca-front/ng/input';\nimport { FieldType, FieldTypeConfig, FormlyModule } from '@ngx-formly/core';\n\n@Component({\n\tselector: 'lu-formly-field-input',\n\tstyleUrl: 'formly-field.common.scss',\n\ttemplateUrl: './input.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [ReactiveFormsModule, FormlyModule, LuInputDirective],\n})\nexport class LuFormlyFieldInput extends FieldType<FieldTypeConfig> {\n\tget type() {\n\t\treturn this.props.type || 'text';\n\t}\n\tfocus() {\n\t\tthis.props['_isFocused'] = true;\n\t}\n\tblur() {\n\t\tthis.props['_isFocused'] = false;\n\t}\n}\n","@if (type === \"number\") {\n\t<!-- type=\"number\" has to be static in order to have NumberValueAccessor instead of DefaultValueAccessor -->\n\t<input\n\t\ttype=\"number\"\n\t\tclass=\"textfield-input\"\n\t\t[name]=\"props['name']\"\n\t\t[formControl]=\"formControl\"\n\t\t[formlyAttributes]=\"field\"\n\t\tluInput\n\t\t(focus)=\"focus()\"\n\t\t(blur)=\"blur()\"\n\t\t[placeholder]=\"props.placeholder\"\n\t/>\n} @else {\n\t<input\n\t\t[type]=\"type\"\n\t\tclass=\"textfield-input\"\n\t\t[name]=\"props['name']\"\n\t\t[formControl]=\"formControl\"\n\t\t[formlyAttributes]=\"field\"\n\t\tluInput\n\t\t(focus)=\"focus()\"\n\t\t(blur)=\"blur()\"\n\t\t[placeholder]=\"props.placeholder\"\n\t/>\n}\n\n<span class=\"textfield-label\">{{ props.label }}</span>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { FieldType, FieldTypeConfig, FormlyModule } from '@ngx-formly/core';\n\n@Component({\n\tselector: 'lu-formly-field-radios',\n\tstyleUrl: 'formly-field.common.scss',\n\ttemplateUrl: './radios.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [ReactiveFormsModule, FormlyModule],\n})\nexport class LuFormlyFieldRadios extends FieldType<FieldTypeConfig> {\n\tget _options() {\n\t\treturn (this.props.options || []) as { value: unknown; label: unknown }[];\n\t}\n\tfocus() {\n\t\tthis.props['_isFocused'] = true;\n\t}\n\tblur() {\n\t\tthis.props['_isFocused'] = false;\n\t}\n}\n","<legend class=\"radiosfield-label\">{{ props.label }}</legend>\n<div class=\"radiosfield-input\">\n\t@for (option of _options; track $index) {\n\t\t<label class=\"radio\">\n\t\t\t<input\n\t\t\t\tclass=\"radio-input\"\n\t\t\t\ttype=\"radio\"\n\t\t\t\t[name]=\"props['name']\"\n\t\t\t\t[value]=\"option.value\"\n\t\t\t\t[id]=\"id + '_' + $index\"\n\t\t\t\t[formControl]=\"formControl\"\n\t\t\t\t[formlyAttributes]=\"field\"\n\t\t\t/>\n\t\t\t<span class=\"radio-label\">{{ option.label }}</span>\n\t\t</label>\n\t}\n</div>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { ClearComponent } from '@lucca-front/ng/clear';\nimport { LuInputDisplayerDirective } from '@lucca-front/ng/input';\nimport { LuOptionPickerModule } from '@lucca-front/ng/option';\nimport { LuSelectInputComponent } from '@lucca-front/ng/select';\nimport { FieldType, FieldTypeConfig, FormlyModule } from '@ngx-formly/core';\n\n@Component({\n\tselector: 'lu-formly-field-select',\n\tstyleUrls: ['formly-field.common.scss', 'select.scss'],\n\ttemplateUrl: './select.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tstandalone: true,\n\timports: [ReactiveFormsModule, FormlyModule, LuSelectInputComponent, LuOptionPickerModule, LuInputDisplayerDirective, ClearComponent],\n})\nexport class LuFormlyFieldSelect extends FieldType<FieldTypeConfig> {\n\tget _options() {\n\t\treturn (this.props.options || []) as { value: unknown; label: unknown; name: string }[];\n\t}\n\tfocus() {\n\t\tthis.props['_isFocused'] = true;\n\t}\n\tblur() {\n\t\tthis.props['_isFocused'] = false;\n\t}\n}\n","<lu-select\n\tclass=\"textfield-input\"\n\t[formControl]=\"formControl\"\n\t[formlyAttributes]=\"field\"\n\t(focus)=\"focus()\"\n\t(blur)=\"blur()\"\n\t[multiple]=\"props['multiple']\"\n\t[placeholder]=\"props.placeholder\"\n>\n\t<ng-container *luDisplayer=\"let option\">\n\t\t<span [class.chip]=\"props['multiple']\" [class.mod-unkillable]=\"props['multiple']\"\n\t\t\t><span class=\"pr-u-ellipsis\">{{ option.name }}</span></span\n\t\t>\n\t</ng-container>\n\t<lu-option-picker>\n\t\t@for (option of _options; track $index) {\n\t\t\t<lu-option [value]=\"option\"> {{ option.name }} </lu-option>\n\t\t}\n\t</lu-option-picker>\n\t@if (!props.required && !props[\"multiple\"]) {\n\t\t<lu-clear />\n\t}\n</lu-select>\n<span class=\"textfield-label\">{{ props.label }}</span>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { LuInputDirective } from '@lucca-front/ng/input';\nimport { FieldType, FieldTypeConfig, FormlyModule } from '@ngx-formly/core';\n\n@Component({\n\tselector: 'lu-formly-field-input',\n\tstyleUrl: 'formly-field.common.scss',\n\ttemplateUrl: './textarea.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [ReactiveFormsModule, FormlyModule, LuInputDirective],\n})\nexport class LuFormlyFieldTextarea extends FieldType<FieldTypeConfig> {\n\tfocus() {\n\t\tthis.props['_isFocused'] = true;\n\t}\n\tblur() {\n\t\tthis.props['_isFocused'] = false;\n\t}\n}\n","<textarea\n\tclass=\"textfield-input\"\n\t[name]=\"props['name']\"\n\t[formControl]=\"formControl\"\n\t[formlyAttributes]=\"field\"\n\tluInput\n\t(focus)=\"focus()\"\n\t(blur)=\"blur()\"\n\t[placeholder]=\"props.placeholder\"\n></textarea>\n<span class=\"textfield-label\">{{ props.label }}</span>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { LuUserSelectInputComponent } from '@lucca-front/ng/user';\nimport { FieldType, FieldTypeConfig, FormlyModule } from '@ngx-formly/core';\n\n@Component({\n\tselector: 'lu-formly-field-user',\n\tstyleUrls: ['formly-field.common.scss', 'select.scss'],\n\ttemplateUrl: './user.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [ReactiveFormsModule, FormlyModule, LuUserSelectInputComponent],\n})\nexport class LuFormlyFieldUser extends FieldType<FieldTypeConfig> {\n\tfocus() {\n\t\tthis.props['_isFocused'] = true;\n\t}\n\tblur() {\n\t\tthis.props['_isFocused'] = false;\n\t}\n}\n","<lu-user-select\n\tclass=\"textfield-input\"\n\t[formControl]=\"formControl\"\n\t[formlyAttributes]=\"field\"\n\t[multiple]=\"props['multiple']\"\n\t(focus)=\"focus()\"\n\t(blur)=\"blur()\"\n\t[placeholder]=\"props.placeholder\"\n/>\n<span class=\"textfield-label\">{{ props.label }}</span>\n","import { FormlyExtension, FormlyFieldConfig } from '@ngx-formly/core';\n\nexport function buildAddWrapperExtension(wrapperName: string, predicate: (f: FormlyFieldConfig | undefined) => boolean): FormlyExtension {\n\treturn {\n\t\tpostPopulate(field: FormlyFieldConfig) {\n\t\t\tif (predicate(field)) {\n\t\t\t\tfield.wrappers = [...(field.wrappers || []), wrapperName];\n\t\t\t}\n\t\t},\n\t};\n}\n","import { ChangeDetectionStrategy, Component, Input, ViewChild, ViewContainerRef } from '@angular/core';\nimport { FormControl, ReactiveFormsModule } from '@angular/forms';\nimport { FieldTypeConfig, FieldWrapper, FormlyFieldConfig } from '@ngx-formly/core';\nimport { buildAddWrapperExtension } from '../formly.utils';\n\n// component that display the right error message\n@Component({\n\tselector: 'lu-formly-error-message',\n\ttemplate: `\n\t\t@for (message of errorMessages; track $index) {\n\t\t\t<div class=\"textfield-messages-error\">\n\t\t\t\t{{ message }}\n\t\t\t</div>\n\t\t}\n\t`,\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LuFormlyErrorMessage {\n\t@Input() formControl?: FormControl;\n\t@Input() field: FormlyFieldConfig;\n\n\tget errorMessages(): string[] {\n\t\tconst messages: string[] = [];\n\t\tif (this.formControl?.errors) {\n\t\t\tObject.keys(this.formControl.errors).forEach((key) => {\n\t\t\t\tif (this.field.validation?.messages?.[key]) {\n\t\t\t\t\tmessages.push(this.field.validation.messages[key] as string);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t\treturn messages;\n\t}\n}\n\n// wrapper\n@Component({\n\tselector: 'lu-formly-wrapper-error',\n\tstyleUrls: ['flex-layout.scss'],\n\ttemplateUrl: './error.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [ReactiveFormsModule, LuFormlyErrorMessage],\n})\nexport class LuFormlyWrapperError extends FieldWrapper<FieldTypeConfig> {\n\t@ViewChild('fieldComponent', { read: ViewContainerRef, static: true })\n\toverride fieldComponent: ViewContainerRef;\n\n\tget validationId() {\n\t\treturn this.field.id + '-message';\n\t}\n}\n\nexport const templateErrorExtension = buildAddWrapperExtension('error', (field) => !!field.validation);\n","<ng-container #fieldComponent />\n@if (formControl.touched && formControl.invalid) {\n\t<div class=\"textfield-messages\" [id]=\"validationId\">\n\t\t<lu-formly-error-message [formControl]=\"formControl\" [field]=\"field\" />\n\t</div>\n}\n","import { ChangeDetectionStrategy, Component, ViewChild, ViewContainerRef } from '@angular/core';\nimport { FieldWrapper } from '@ngx-formly/core';\nimport { buildAddWrapperExtension } from '../formly.utils';\n\n// wrapper component\n@Component({\n\tselector: 'lu-formly-wrapper-helper',\n\tstyleUrl: 'flex-layout.scss',\n\ttemplateUrl: './helper.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LuFormlyWrapperHelper extends FieldWrapper {\n\t@ViewChild('fieldComponent', { read: ViewContainerRef, static: true })\n\toverride fieldComponent: ViewContainerRef;\n}\n\nexport const templateHelperExtension = buildAddWrapperExtension('helper', (field) => !!field?.props?.['helper']);\n","<ng-container #fieldComponent />\n<div class=\"textfield-messages mod-helper\">\n\t<div class=\"textfield-messages-helper\">{{ props[\"helper\"] }}</div>\n</div>\n","import { ChangeDetectionStrategy, Component, ViewChild, ViewContainerRef } from '@angular/core';\nimport { FieldWrapper } from '@ngx-formly/core';\nimport { buildAddWrapperExtension } from '../formly.utils';\n\n// wrapper component\n@Component({\n\tselector: 'lu-formly-wrapper-suffix',\n\tstyleUrls: ['flex-layout.scss', 'suffixes.common.scss'],\n\ttemplateUrl: './icon.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LuFormlyWrapperIcon extends FieldWrapper {\n\t@ViewChild('fieldComponent', { read: ViewContainerRef, static: true })\n\toverride fieldComponent: ViewContainerRef;\n}\n\nexport const templateIconExtension = buildAddWrapperExtension('icon', (field) => !!field?.props?.['icon']);\n","<ng-container #fieldComponent /><span aria-hidden=\"true\" class=\"textfield-suffix mod-icon lucca-icon\">{{ props[\"icon\"] }}</span>\n","import { ChangeDetectionStrategy, Component, ViewChild, ViewContainerRef } from '@angular/core';\nimport { FieldWrapper } from '@ngx-formly/core';\n\n// wrapper component\n@Component({\n\tselector: 'lu-formly-wrapper-radiosfield-layout',\n\tstyleUrl: 'flex-layout.scss',\n\ttemplateUrl: './radiosfield-layout.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LuFormlyWrapperRadiosfieldLayout extends FieldWrapper {\n\t@ViewChild('fieldComponent', { read: ViewContainerRef, static: true })\n\toverride fieldComponent: ViewContainerRef;\n\n\tget mod() {\n\t\treturn (this.props['mod'] || '') as string;\n\t}\n\n\tget isRequired() {\n\t\treturn !!this.props && !!this.props.required ? 'is-required' : '';\n\t}\n\n\tget isFocused() {\n\t\treturn !!this.props && this.props['_isFocused'] ? 'is-focused' : '';\n\t}\n\n\tget isError() {\n\t\treturn this.formControl.invalid && this.formControl.touched ? 'is-error' : '';\n\t}\n}\n","<div class=\"fieldsetWrapper\">\n\t<fieldset class=\"radiosfield\" [class]=\"[mod, isRequired, isFocused, isError]\">\n\t\t<ng-container #fieldComponent />\n\t</fieldset>\n</div>\n","import { ChangeDetectionStrategy, Component, ViewChild, ViewContainerRef } from '@angular/core';\nimport { FieldWrapper } from '@ngx-formly/core';\nimport { buildAddWrapperExtension } from '../formly.utils';\n\n// wrapper component\n@Component({\n\tselector: 'lu-formly-wrapper-suffix',\n\tstyleUrls: ['flex-layout.scss', 'suffixes.common.scss'],\n\ttemplateUrl: './suffix.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LuFormlyWrapperSuffix extends FieldWrapper {\n\t@ViewChild('fieldComponent', { read: ViewContainerRef, static: true })\n\toverride fieldComponent: ViewContainerRef;\n}\n\nexport const templateSuffixExtension = buildAddWrapperExtension('suffix', (field) => !!field?.props?.['suffix'] && !field?.props?.['icon']);\n","<ng-container #fieldComponent /><span class=\"textfield-suffix\">{{ props[\"suffix\"] }}</span>\n","import { ChangeDetectionStrategy, Component, ViewChild, ViewContainerRef } from '@angular/core';\nimport { FieldWrapper } from '@ngx-formly/core';\n\n// wrapper component\n@Component({\n\tselector: 'lu-formly-wrapper-layout',\n\tstyleUrl: 'flex-layout.scss',\n\ttemplateUrl: './textfield-layout.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LuFormlyWrapperTextfieldLayout extends FieldWrapper {\n\t@ViewChild('fieldComponent', { read: ViewContainerRef, static: true })\n\toverride fieldComponent: ViewContainerRef;\n\n\tget mod() {\n\t\treturn (this.props['mod'] || '') as string;\n\t}\n\n\tget modMultiline() {\n\t\treturn !!this.field && this.field.type === 'textarea' ? 'mod-multiline' : '';\n\t}\n\n\tget modWithSuffix() {\n\t\treturn !!this.props && !!this.props['suffix'] ? 'mod-withSuffix' : '';\n\t}\n\n\tget isRequired() {\n\t\treturn !!this.props && !!this.props.required ? 'is-required' : '';\n\t}\n\n\tget isDisabled() {\n\t\treturn !!this.props && !!this.props.disabled ? 'is-disabled' : '';\n\t}\n\n\tget isFocused() {\n\t\treturn !!this.props && this.props['_isFocused'] ? 'is-focused' : '';\n\t}\n\n\tget isError() {\n\t\treturn this.formControl.invalid && this.formControl.touched ? 'is-error' : '';\n\t}\n}\n","<label class=\"textfield\" [class]=\"[mod, modWithSuffix, modMultiline, isRequired, isFocused, isError, isDisabled]\">\n\t<ng-container #fieldComponent />\n</label>\n","import { ChangeDetectionStrategy, Component, ViewChild, ViewContainerRef } from '@angular/core';\nimport { FieldWrapper } from '@ngx-formly/core';\n\n// wrapper component\n@Component({\n\tselector: 'lu-formly-wrapper-checkbox-layout',\n\tstyleUrl: 'flex-layout.scss',\n\ttemplateUrl: './checkbox-layout.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LuFormlyWrapperCheckboxLayout extends FieldWrapper {\n\t@ViewChild('fieldComponent', { read: ViewContainerRef, static: true })\n\toverride fieldComponent: ViewContainerRef;\n\n\tget mod() {\n\t\treturn (this.props['mod'] || '') as string;\n\t}\n\n\tget isRequired() {\n\t\treturn !!this.props && !!this.props.required ? 'is-required' : '';\n\t}\n\n\tget isFocused() {\n\t\treturn !!this.props && this.props['_isFocused'] ? 'is-focused' : '';\n\t}\n\n\tget isError() {\n\t\treturn this.formControl.invalid && this.formControl.touched ? 'is-error' : '';\n\t}\n}\n","<div class=\"fieldsetWrapper\">\n\t<fieldset class=\"checkboxesfield\" [class]=\"[mod, isRequired, isFocused, isError]\">\n\t\t<ng-container #fieldComponent />\n\t</fieldset>\n</div>\n","import { ConfigOption } from '@ngx-formly/core';\n// inputs\nimport {\n\tLuFormlyFieldApi,\n\tLuFormlyFieldCheckbox,\n\tLuFormlyFieldDate,\n\tLuFormlyFieldDepartment,\n\tLuFormlyFieldEstablishment,\n\tLuFormlyFieldInput,\n\tLuFormlyFieldRadios,\n\tLuFormlyFieldSelect,\n\tLuFormlyFieldTextarea,\n\tLuFormlyFieldUser,\n} from './types/index';\n// wrappers\nimport {\n\tLuFormlyWrapperCheckboxLayout,\n\tLuFormlyWrapperError,\n\tLuFormlyWrapperHelper,\n\tLuFormlyWrapperIcon,\n\tLuFormlyWrapperRadiosfieldLayout,\n\tLuFormlyWrapperSuffix,\n\tLuFormlyWrapperTextfieldLayout,\n\ttemplateErrorExtension,\n\ttemplateHelperExtension,\n\ttemplateIconExtension,\n\ttemplateSuffixExtension,\n} from './wrappers/index';\n\nexport const LU_FORMLY_CONFIG: ConfigOption = {\n\ttypes: [\n\t\t{\n\t\t\tname: 'input',\n\t\t\tcomponent: LuFormlyFieldInput,\n\t\t\twrappers: ['textfield-layout'],\n\t\t},\n\t\t{\n\t\t\tname: 'radio',\n\t\t\tcomponent: LuFormlyFieldRadios,\n\t\t\twrappers: ['radiosfield-layout'],\n\t\t},\n\t\t{\n\t\t\tname: 'checkbox',\n\t\t\tcomponent: LuFormlyFieldCheckbox,\n\t\t\twrappers: ['checkbox-layout'],\n\t\t},\n\t\t{\n\t\t\tname: 'date',\n\t\t\tcomponent: LuFormlyFieldDate,\n\t\t\twrappers: ['textfield-layout'],\n\t\t},\n\t\t{\n\t\t\tname: 'textarea',\n\t\t\tcomponent: LuFormlyFieldTextarea,\n\t\t\twrappers: ['textfield-layout'],\n\t\t},\n\t\t{\n\t\t\tname: 'select',\n\t\t\tcomponent: LuFormlyFieldSelect,\n\t\t\twrappers: ['textfield-layout'],\n\t\t},\n\t\t{\n\t\t\tname: 'user',\n\t\t\tcomponent: LuFormlyFieldUser,\n\t\t\twrappers: ['textfield-layout'],\n\t\t},\n\t\t{\n\t\t\tname: 'api',\n\t\t\tcomponent: LuFormlyFieldApi,\n\t\t\twrappers: ['textfield-layout'],\n\t\t},\n\t\t{\n\t\t\tname: 'department',\n\t\t\tcomponent: LuFormlyFieldDepartment,\n\t\t\twrappers: ['textfield-layout'],\n\t\t},\n\t\t{\n\t\t\tname: 'establishment',\n\t\t\tcomponent: LuFormlyFieldEstablishment,\n\t\t\twrappers: ['textfield-layout'],\n\t\t},\n\t],\n\twrappers: [\n\t\t{ name: 'helper', component: LuFormlyWrapperHelper },\n\t\t{ name: 'checkbox-layout', component: LuFormlyWrapperCheckboxLayout },\n\t\t{ name: 'radiosfield-layout', component: LuFormlyWrapperRadiosfieldLayout },\n\t\t{ name: 'textfield-layout', component: LuFormlyWrapperTextfieldLayout },\n\t\t{ name: 'suffix', component: LuFormlyWrapperSuffix },\n\t\t{ name: 'icon', component: LuFormlyWrapperIcon },\n\t\t{ name: 'error', component: LuFormlyWrapperError },\n\t],\n\textensions: [\n\t\t{ name: 'helper', extension: templateHelperExtension }, // fifth\n\t\t{ name: 'error', extension: templateErrorExtension }, // fourth\n\t\t{ name: 'suffix', extension: templateSuffixExtension }, // third\n\t\t{ name: 'icon', extension: templateIconExtension }, // second\n\t],\n};\n","import { EnvironmentProviders, importProvidersFrom } from '@angular/core';\nimport { FormlyModule } from '@ngx-formly/core';\nimport { LU_FORMLY_CONFIG } from './formly.config';\n\nexport function provideLuFormly(): EnvironmentProviders {\n\treturn importProvidersFrom(FormlyModule.forChild(LU_FORMLY_CONFIG));\n}\n","import { NgModule } from '@angular/core';\nimport { provideLuFormly } from './formly.providers';\n\n/**\n * @deprecated use provideLuFormly() in a lazy loaded route (and stop using formly please)\n * */\n@NgModule({\n\tproviders: [provideLuFormly()],\n})\nexport class LuFormlyModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"lucca-front-ng-formly.mjs","sources":["../../../packages/ng/formly/types/api.ts","../../../packages/ng/formly/types/api.html","../../../packages/ng/formly/types/checkbox.ts","../../../packages/ng/formly/types/checkbox.html","../../../packages/ng/formly/types/date.ts","../../../packages/ng/formly/types/date.html","../../../packages/ng/formly/types/department.ts","../../../packages/ng/formly/types/department.html","../../../packages/ng/formly/types/establishment.ts","../../../packages/ng/formly/types/establishment.html","../../../packages/ng/formly/types/input.ts","../../../packages/ng/formly/types/input.html","../../../packages/ng/formly/types/radios.ts","../../../packages/ng/formly/types/radios.html","../../../packages/ng/formly/types/select.ts","../../../packages/ng/formly/types/select.html","../../../packages/ng/formly/types/textarea.ts","../../../packages/ng/formly/types/textarea.html","../../../packages/ng/formly/types/user.ts","../../../packages/ng/formly/types/user.html","../../../packages/ng/formly/formly.utils.ts","../../../packages/ng/formly/wrappers/error.ts","../../../packages/ng/formly/wrappers/error.html","../../../packages/ng/formly/wrappers/helper.ts","../../../packages/ng/formly/wrappers/helper.html","../../../packages/ng/formly/wrappers/icon.ts","../../../packages/ng/formly/wrappers/icon.html","../../../packages/ng/formly/wrappers/radiosfield-layout.ts","../../../packages/ng/formly/wrappers/radiosfield-layout.html","../../../packages/ng/formly/wrappers/suffix.ts","../../../packages/ng/formly/wrappers/suffix.html","../../../packages/ng/formly/wrappers/textfield-layout.ts","../../../packages/ng/formly/wrappers/textfield-layout.html","../../../packages/ng/formly/wrappers/checkbox-layout.ts","../../../packages/ng/formly/wrappers/checkbox-layout.html","../../../packages/ng/formly/formly.config.ts","../../../packages/ng/formly/formly.providers.ts","../../../packages/ng/formly/formly.module.ts","../../../packages/ng/formly/lucca-front-ng-formly.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { LuApiSelectInputComponent } from '@lucca-front/ng/api';\nimport { FieldType, FieldTypeConfig, FormlyModule } from '@ngx-formly/core';\n\n@Component({\n\tselector: 'lu-formly-field-api',\n\tstyleUrls: ['formly-field.common.scss', 'select.scss'],\n\ttemplateUrl: './api.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [ReactiveFormsModule, FormlyModule, LuApiSelectInputComponent],\n})\nexport class LuFormlyFieldApi extends FieldType<FieldTypeConfig> {\n\tget _api() {\n\t\treturn this.props['api'] as string;\n\t}\n\tget _filters() {\n\t\treturn (this.props['filters'] || []) as string[];\n\t}\n\tget _orderBy() {\n\t\treturn this.props['orderBy'] as string;\n\t}\n\tget _sort() {\n\t\treturn this.props['sort'] as string;\n\t}\n\tget _standard() {\n\t\treturn (this.props['standard'] || 'v3') as 'v3' | 'v4';\n\t}\n\tfocus() {\n\t\tthis.props['_isFocused'] = true;\n\t}\n\tblur() {\n\t\tthis.props['_isFocused'] = false;\n\t}\n}\n","<lu-api-select\n\tclass=\"textfield-input\"\n\t[formControl]=\"formControl\"\n\t[formlyAttributes]=\"field\"\n\t[multiple]=\"props['multiple']\"\n\t(focus)=\"focus()\"\n\t(blur)=\"blur()\"\n\t[placeholder]=\"props.placeholder\"\n\t[api]=\"_api\"\n\t[filters]=\"_filters\"\n\t[orderBy]=\"_orderBy\"\n\t[sort]=\"_sort\"\n\t[standard]=\"_standard\"\n/>\n<span [attr.for]=\"id\" class=\"textfield-label\">{{ props.label }}</span>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { FieldType, FieldTypeConfig, FormlyModule } from '@ngx-formly/core';\n\n@Component({\n\tselector: 'lu-formly-field-checkbox',\n\tstyleUrl: 'formly-field.common.scss',\n\ttemplateUrl: './checkbox.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [ReactiveFormsModule, FormlyModule],\n})\nexport class LuFormlyFieldCheckbox extends FieldType<FieldTypeConfig> {\n\tfocus() {\n\t\tthis.props['_isFocused'] = true;\n\t}\n\tblur() {\n\t\tthis.props['_isFocused'] = false;\n\t}\n}\n","<label class=\"checkbox\" [class]=\"props['mod']\">\n\t<input\n\t\tclass=\"checkbox-input\"\n\t\ttype=\"checkbox\"\n\t\t[name]=\"props['name']\"\n\t\t[id]=\"id\"\n\t\t[formControl]=\"formControl\"\n\t\t[formlyAttributes]=\"field\"\n\t\t(focus)=\"focus()\"\n\t\t(blur)=\"blur()\"\n\t/>\n\t<span class=\"checkbox-label\">{{ props.label }}</span>\n</label>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { LuDateSelectInputComponent } from '@lucca-front/ng/date';\nimport { FieldType, FieldTypeConfig, FormlyModule } from '@ngx-formly/core';\n\n@Component({\n\tselector: 'lu-formly-field-date',\n\tstyleUrls: ['formly-field.common.scss', 'select.scss'],\n\ttemplateUrl: './date.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [ReactiveFormsModule, FormlyModule, LuDateSelectInputComponent],\n})\nexport class LuFormlyFieldDate extends FieldType<FieldTypeConfig> {\n\tfocus() {\n\t\tthis.props['_isFocused'] = true;\n\t}\n\tblur() {\n\t\tthis.props['_isFocused'] = false;\n\t}\n}\n","<lu-date-select\n\tclass=\"textfield-input\"\n\t[formControl]=\"formControl\"\n\t[formlyAttributes]=\"field\"\n\t(focus)=\"focus()\"\n\t(blur)=\"blur()\"\n\t[placeholder]=\"props.placeholder\"\n\t[min]=\"props.min\"\n\t[max]=\"props.max\"\n/>\n<span class=\"textfield-label\">{{ props.label }}</span>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { LuDepartmentSelectInputComponent } from '@lucca-front/ng/department';\nimport { FieldType, FieldTypeConfig, FormlyModule } from '@ngx-formly/core';\n\n@Component({\n\tselector: 'lu-formly-field-department',\n\tstyleUrls: ['formly-field.common.scss', 'select.scss'],\n\ttemplateUrl: './department.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [ReactiveFormsModule, FormlyModule, LuDepartmentSelectInputComponent],\n})\nexport class LuFormlyFieldDepartment extends FieldType<FieldTypeConfig> {\n\tfocus() {\n\t\tthis.props['_isFocused'] = true;\n\t}\n\tblur() {\n\t\tthis.props['_isFocused'] = false;\n\t}\n}\n","<lu-department-select\n\tclass=\"textfield-input\"\n\t[formControl]=\"formControl\"\n\t[formlyAttributes]=\"field\"\n\t[multiple]=\"props['multiple']\"\n\t(focus)=\"focus()\"\n\t(blur)=\"blur()\"\n\t[placeholder]=\"props.placeholder\"\n\t[filters]=\"props['filters']\"\n\t[appInstanceId]=\"props['appInstanceId']\"\n\t[operations]=\"props['operations']\"\n/>\n<span class=\"textfield-label\">{{ props.label }}</span>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { LuEstablishmentSelectInputComponent } from '@lucca-front/ng/establishment';\nimport { FieldType, FieldTypeConfig, FormlyModule } from '@ngx-formly/core';\n\n@Component({\n\tselector: 'lu-formly-field-establishment',\n\tstyleUrls: ['formly-field.common.scss', 'select.scss'],\n\ttemplateUrl: './establishment.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [ReactiveFormsModule, FormlyModule, LuEstablishmentSelectInputComponent],\n})\nexport class LuFormlyFieldEstablishment extends FieldType<FieldTypeConfig> {\n\tfocus() {\n\t\tthis.props['_isFocused'] = true;\n\t}\n\tblur() {\n\t\tthis.props['_isFocused'] = false;\n\t}\n}\n","<lu-establishment-select\n\tclass=\"textfield-input\"\n\t[formControl]=\"formControl\"\n\t[formlyAttributes]=\"field\"\n\t[multiple]=\"props['multiple']\"\n\t(focus)=\"focus()\"\n\t(blur)=\"blur()\"\n\t[placeholder]=\"props.placeholder\"\n\t[filters]=\"props['filters']\"\n\t[appInstanceId]=\"props['appInstanceId']\"\n\t[operations]=\"props['operations']\"\n/>\n<span class=\"textfield-label\">{{ props.label }}</span>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { LuInputDirective } from '@lucca-front/ng/input';\nimport { FieldType, FieldTypeConfig, FormlyModule } from '@ngx-formly/core';\n\n@Component({\n\tselector: 'lu-formly-field-input',\n\tstyleUrl: 'formly-field.common.scss',\n\ttemplateUrl: './input.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [ReactiveFormsModule, FormlyModule, LuInputDirective],\n})\nexport class LuFormlyFieldInput extends FieldType<FieldTypeConfig> {\n\tget type() {\n\t\treturn this.props.type || 'text';\n\t}\n\tfocus() {\n\t\tthis.props['_isFocused'] = true;\n\t}\n\tblur() {\n\t\tthis.props['_isFocused'] = false;\n\t}\n}\n","@if (type === \"number\") {\n\t<!-- type=\"number\" has to be static in order to have NumberValueAccessor instead of DefaultValueAccessor -->\n\t<input\n\t\ttype=\"number\"\n\t\tclass=\"textfield-input\"\n\t\t[name]=\"props['name']\"\n\t\t[formControl]=\"formControl\"\n\t\t[formlyAttributes]=\"field\"\n\t\tluInput\n\t\t(focus)=\"focus()\"\n\t\t(blur)=\"blur()\"\n\t\t[placeholder]=\"props.placeholder\"\n\t/>\n} @else {\n\t<input\n\t\t[type]=\"type\"\n\t\tclass=\"textfield-input\"\n\t\t[name]=\"props['name']\"\n\t\t[formControl]=\"formControl\"\n\t\t[formlyAttributes]=\"field\"\n\t\tluInput\n\t\t(focus)=\"focus()\"\n\t\t(blur)=\"blur()\"\n\t\t[placeholder]=\"props.placeholder\"\n\t/>\n}\n\n<span class=\"textfield-label\">{{ props.label }}</span>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { FieldType, FieldTypeConfig, FormlyModule } from '@ngx-formly/core';\n\n@Component({\n\tselector: 'lu-formly-field-radios',\n\tstyleUrl: 'formly-field.common.scss',\n\ttemplateUrl: './radios.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [ReactiveFormsModule, FormlyModule],\n})\nexport class LuFormlyFieldRadios extends FieldType<FieldTypeConfig> {\n\tget _options() {\n\t\treturn (this.props.options || []) as { value: unknown; label: unknown }[];\n\t}\n\tfocus() {\n\t\tthis.props['_isFocused'] = true;\n\t}\n\tblur() {\n\t\tthis.props['_isFocused'] = false;\n\t}\n}\n","<legend class=\"radiosfield-label\">{{ props.label }}</legend>\n<div class=\"radiosfield-input\">\n\t@for (option of _options; track $index) {\n\t\t<label class=\"radio\">\n\t\t\t<input\n\t\t\t\tclass=\"radio-input\"\n\t\t\t\ttype=\"radio\"\n\t\t\t\t[name]=\"props['name']\"\n\t\t\t\t[value]=\"option.value\"\n\t\t\t\t[id]=\"id + '_' + $index\"\n\t\t\t\t[formControl]=\"formControl\"\n\t\t\t\t[formlyAttributes]=\"field\"\n\t\t\t/>\n\t\t\t<span class=\"radio-label\">{{ option.label }}</span>\n\t\t</label>\n\t}\n</div>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { ClearComponent } from '@lucca-front/ng/clear';\nimport { LuInputDisplayerDirective } from '@lucca-front/ng/input';\nimport { LuOptionPickerModule } from '@lucca-front/ng/option';\nimport { LuSelectInputComponent } from '@lucca-front/ng/select';\nimport { FieldType, FieldTypeConfig, FormlyModule } from '@ngx-formly/core';\n\n@Component({\n\tselector: 'lu-formly-field-select',\n\tstyleUrls: ['formly-field.common.scss', 'select.scss'],\n\ttemplateUrl: './select.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tstandalone: true,\n\timports: [ReactiveFormsModule, FormlyModule, LuSelectInputComponent, LuOptionPickerModule, LuInputDisplayerDirective, ClearComponent],\n})\nexport class LuFormlyFieldSelect extends FieldType<FieldTypeConfig> {\n\tget _options() {\n\t\treturn (this.props.options || []) as { value: unknown; label: unknown; name: string }[];\n\t}\n\tfocus() {\n\t\tthis.props['_isFocused'] = true;\n\t}\n\tblur() {\n\t\tthis.props['_isFocused'] = false;\n\t}\n}\n","<lu-select\n\tclass=\"textfield-input\"\n\t[formControl]=\"formControl\"\n\t[formlyAttributes]=\"field\"\n\t(focus)=\"focus()\"\n\t(blur)=\"blur()\"\n\t[multiple]=\"props['multiple']\"\n\t[placeholder]=\"props.placeholder\"\n>\n\t<ng-container *luDisplayer=\"let option\">\n\t\t<span [class.chip]=\"props['multiple']\" [class.mod-unkillable]=\"props['multiple']\"\n\t\t\t><span class=\"pr-u-ellipsis\">{{ option.name }}</span></span\n\t\t>\n\t</ng-container>\n\t<lu-option-picker>\n\t\t@for (option of _options; track $index) {\n\t\t\t<lu-option [value]=\"option\"> {{ option.name }} </lu-option>\n\t\t}\n\t</lu-option-picker>\n\t@if (!props.required && !props[\"multiple\"]) {\n\t\t<lu-clear />\n\t}\n</lu-select>\n<span class=\"textfield-label\">{{ props.label }}</span>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { LuInputDirective } from '@lucca-front/ng/input';\nimport { FieldType, FieldTypeConfig, FormlyModule } from '@ngx-formly/core';\n\n@Component({\n\tselector: 'lu-formly-field-input',\n\tstyleUrl: 'formly-field.common.scss',\n\ttemplateUrl: './textarea.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [ReactiveFormsModule, FormlyModule, LuInputDirective],\n})\nexport class LuFormlyFieldTextarea extends FieldType<FieldTypeConfig> {\n\tfocus() {\n\t\tthis.props['_isFocused'] = true;\n\t}\n\tblur() {\n\t\tthis.props['_isFocused'] = false;\n\t}\n}\n","<textarea\n\tclass=\"textfield-input\"\n\t[name]=\"props['name']\"\n\t[formControl]=\"formControl\"\n\t[formlyAttributes]=\"field\"\n\tluInput\n\t(focus)=\"focus()\"\n\t(blur)=\"blur()\"\n\t[placeholder]=\"props.placeholder\"\n></textarea>\n<span class=\"textfield-label\">{{ props.label }}</span>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { LuUserSelectInputComponent } from '@lucca-front/ng/user';\nimport { FieldType, FieldTypeConfig, FormlyModule } from '@ngx-formly/core';\n\n@Component({\n\tselector: 'lu-formly-field-user',\n\tstyleUrls: ['formly-field.common.scss', 'select.scss'],\n\ttemplateUrl: './user.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [ReactiveFormsModule, FormlyModule, LuUserSelectInputComponent],\n})\nexport class LuFormlyFieldUser extends FieldType<FieldTypeConfig> {\n\tfocus() {\n\t\tthis.props['_isFocused'] = true;\n\t}\n\tblur() {\n\t\tthis.props['_isFocused'] = false;\n\t}\n}\n","<lu-user-select\n\tclass=\"textfield-input\"\n\t[formControl]=\"formControl\"\n\t[formlyAttributes]=\"field\"\n\t[multiple]=\"props['multiple']\"\n\t(focus)=\"focus()\"\n\t(blur)=\"blur()\"\n\t[placeholder]=\"props.placeholder\"\n/>\n<span class=\"textfield-label\">{{ props.label }}</span>\n","import { FormlyExtension, FormlyFieldConfig } from '@ngx-formly/core';\n\nexport function buildAddWrapperExtension(wrapperName: string, predicate: (f: FormlyFieldConfig | undefined) => boolean): FormlyExtension {\n\treturn {\n\t\tpostPopulate(field: FormlyFieldConfig) {\n\t\t\tif (predicate(field)) {\n\t\t\t\tfield.wrappers = [...(field.wrappers || []), wrapperName];\n\t\t\t}\n\t\t},\n\t};\n}\n","import { ChangeDetectionStrategy, Component, Input, ViewChild, ViewContainerRef } from '@angular/core';\nimport { FormControl, ReactiveFormsModule } from '@angular/forms';\nimport { FieldTypeConfig, FieldWrapper, FormlyFieldConfig } from '@ngx-formly/core';\nimport { buildAddWrapperExtension } from '../formly.utils';\n\n// component that display the right error message\n@Component({\n\tselector: 'lu-formly-error-message',\n\ttemplate: `\n\t\t@for (message of errorMessages; track $index) {\n\t\t\t<div class=\"textfield-messages-error\">\n\t\t\t\t{{ message }}\n\t\t\t</div>\n\t\t}\n\t`,\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LuFormlyErrorMessage {\n\t@Input() formControl?: FormControl;\n\t@Input() field: FormlyFieldConfig;\n\n\tget errorMessages(): string[] {\n\t\tconst messages: string[] = [];\n\t\tif (this.formControl?.errors) {\n\t\t\tObject.keys(this.formControl.errors).forEach((key) => {\n\t\t\t\tif (this.field.validation?.messages?.[key]) {\n\t\t\t\t\tmessages.push(this.field.validation.messages[key] as string);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t\treturn messages;\n\t}\n}\n\n// wrapper\n@Component({\n\tselector: 'lu-formly-wrapper-error',\n\tstyleUrls: ['flex-layout.scss'],\n\ttemplateUrl: './error.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [ReactiveFormsModule, LuFormlyErrorMessage],\n})\nexport class LuFormlyWrapperError extends FieldWrapper<FieldTypeConfig> {\n\t@ViewChild('fieldComponent', { read: ViewContainerRef, static: true })\n\toverride fieldComponent: ViewContainerRef;\n\n\tget validationId() {\n\t\treturn this.field.id + '-message';\n\t}\n}\n\nexport const templateErrorExtension = buildAddWrapperExtension('error', (field) => !!field?.validation);\n","<ng-container #fieldComponent />\n@if (formControl.touched && formControl.invalid) {\n\t<div class=\"textfield-messages\" [id]=\"validationId\">\n\t\t<lu-formly-error-message [formControl]=\"formControl\" [field]=\"field\" />\n\t</div>\n}\n","import { ChangeDetectionStrategy, Component, ViewChild, ViewContainerRef } from '@angular/core';\nimport { FieldWrapper } from '@ngx-formly/core';\nimport { buildAddWrapperExtension } from '../formly.utils';\n\n// wrapper component\n@Component({\n\tselector: 'lu-formly-wrapper-helper',\n\tstyleUrl: 'flex-layout.scss',\n\ttemplateUrl: './helper.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LuFormlyWrapperHelper extends FieldWrapper {\n\t@ViewChild('fieldComponent', { read: ViewContainerRef, static: true })\n\toverride fieldComponent: ViewContainerRef;\n}\n\nexport const templateHelperExtension = buildAddWrapperExtension('helper', (field) => !!field?.props?.['helper']);\n","<ng-container #fieldComponent />\n<div class=\"textfield-messages mod-helper\">\n\t<div class=\"textfield-messages-helper\">{{ props[\"helper\"] }}</div>\n</div>\n","import { ChangeDetectionStrategy, Component, ViewChild, ViewContainerRef } from '@angular/core';\nimport { FieldWrapper } from '@ngx-formly/core';\nimport { buildAddWrapperExtension } from '../formly.utils';\n\n// wrapper component\n@Component({\n\tselector: 'lu-formly-wrapper-suffix',\n\tstyleUrls: ['flex-layout.scss', 'suffixes.common.scss'],\n\ttemplateUrl: './icon.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LuFormlyWrapperIcon extends FieldWrapper {\n\t@ViewChild('fieldComponent', { read: ViewContainerRef, static: true })\n\toverride fieldComponent: ViewContainerRef;\n}\n\nexport const templateIconExtension = buildAddWrapperExtension('icon', (field) => !!field?.props?.['icon']);\n","<ng-container #fieldComponent /><span aria-hidden=\"true\" class=\"textfield-suffix mod-icon lucca-icon\">{{ props[\"icon\"] }}</span>\n","import { ChangeDetectionStrategy, Component, ViewChild, ViewContainerRef } from '@angular/core';\nimport { FieldWrapper } from '@ngx-formly/core';\n\n// wrapper component\n@Component({\n\tselector: 'lu-formly-wrapper-radiosfield-layout',\n\tstyleUrl: 'flex-layout.scss',\n\ttemplateUrl: './radiosfield-layout.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LuFormlyWrapperRadiosfieldLayout extends FieldWrapper {\n\t@ViewChild('fieldComponent', { read: ViewContainerRef, static: true })\n\toverride fieldComponent: ViewContainerRef;\n\n\tget mod() {\n\t\treturn (this.props['mod'] || '') as string;\n\t}\n\n\tget isRequired() {\n\t\treturn !!this.props && !!this.props.required ? 'is-required' : '';\n\t}\n\n\tget isFocused() {\n\t\treturn !!this.props && this.props['_isFocused'] ? 'is-focused' : '';\n\t}\n\n\tget isError() {\n\t\treturn this.formControl.invalid && this.formControl.touched ? 'is-error' : '';\n\t}\n}\n","<div class=\"fieldsetWrapper\">\n\t<fieldset class=\"radiosfield\" [class]=\"[mod, isRequired, isFocused, isError]\">\n\t\t<ng-container #fieldComponent />\n\t</fieldset>\n</div>\n","import { ChangeDetectionStrategy, Component, ViewChild, ViewContainerRef } from '@angular/core';\nimport { FieldWrapper } from '@ngx-formly/core';\nimport { buildAddWrapperExtension } from '../formly.utils';\n\n// wrapper component\n@Component({\n\tselector: 'lu-formly-wrapper-suffix',\n\tstyleUrls: ['flex-layout.scss', 'suffixes.common.scss'],\n\ttemplateUrl: './suffix.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LuFormlyWrapperSuffix extends FieldWrapper {\n\t@ViewChild('fieldComponent', { read: ViewContainerRef, static: true })\n\toverride fieldComponent: ViewContainerRef;\n}\n\nexport const templateSuffixExtension = buildAddWrapperExtension('suffix', (field) => !!field?.props?.['suffix'] && !field?.props?.['icon']);\n","<ng-container #fieldComponent /><span class=\"textfield-suffix\">{{ props[\"suffix\"] }}</span>\n","import { ChangeDetectionStrategy, Component, ViewChild, ViewContainerRef } from '@angular/core';\nimport { FieldWrapper } from '@ngx-formly/core';\n\n// wrapper component\n@Component({\n\tselector: 'lu-formly-wrapper-layout',\n\tstyleUrl: 'flex-layout.scss',\n\ttemplateUrl: './textfield-layout.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LuFormlyWrapperTextfieldLayout extends FieldWrapper {\n\t@ViewChild('fieldComponent', { read: ViewContainerRef, static: true })\n\toverride fieldComponent: ViewContainerRef;\n\n\tget mod() {\n\t\treturn (this.props['mod'] || '') as string;\n\t}\n\n\tget modMultiline() {\n\t\treturn !!this.field && this.field.type === 'textarea' ? 'mod-multiline' : '';\n\t}\n\n\tget modWithSuffix() {\n\t\treturn !!this.props && !!this.props['suffix'] ? 'mod-withSuffix' : '';\n\t}\n\n\tget isRequired() {\n\t\treturn !!this.props && !!this.props.required ? 'is-required' : '';\n\t}\n\n\tget isDisabled() {\n\t\treturn !!this.props && !!this.props.disabled ? 'is-disabled' : '';\n\t}\n\n\tget isFocused() {\n\t\treturn !!this.props && this.props['_isFocused'] ? 'is-focused' : '';\n\t}\n\n\tget isError() {\n\t\treturn this.formControl.invalid && this.formControl.touched ? 'is-error' : '';\n\t}\n}\n","<label class=\"textfield\" [class]=\"[mod, modWithSuffix, modMultiline, isRequired, isFocused, isError, isDisabled]\">\n\t<ng-container #fieldComponent />\n</label>\n","import { ChangeDetectionStrategy, Component, ViewChild, ViewContainerRef } from '@angular/core';\nimport { FieldWrapper } from '@ngx-formly/core';\n\n// wrapper component\n@Component({\n\tselector: 'lu-formly-wrapper-checkbox-layout',\n\tstyleUrl: 'flex-layout.scss',\n\ttemplateUrl: './checkbox-layout.html',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LuFormlyWrapperCheckboxLayout extends FieldWrapper {\n\t@ViewChild('fieldComponent', { read: ViewContainerRef, static: true })\n\toverride fieldComponent: ViewContainerRef;\n\n\tget mod() {\n\t\treturn (this.props['mod'] || '') as string;\n\t}\n\n\tget isRequired() {\n\t\treturn !!this.props && !!this.props.required ? 'is-required' : '';\n\t}\n\n\tget isFocused() {\n\t\treturn !!this.props && this.props['_isFocused'] ? 'is-focused' : '';\n\t}\n\n\tget isError() {\n\t\treturn this.formControl.invalid && this.formControl.touched ? 'is-error' : '';\n\t}\n}\n","<div class=\"fieldsetWrapper\">\n\t<fieldset class=\"checkboxesfield\" [class]=\"[mod, isRequired, isFocused, isError]\">\n\t\t<ng-container #fieldComponent />\n\t</fieldset>\n</div>\n","import { ConfigOption } from '@ngx-formly/core';\n// inputs\nimport {\n\tLuFormlyFieldApi,\n\tLuFormlyFieldCheckbox,\n\tLuFormlyFieldDate,\n\tLuFormlyFieldDepartment,\n\tLuFormlyFieldEstablishment,\n\tLuFormlyFieldInput,\n\tLuFormlyFieldRadios,\n\tLuFormlyFieldSelect,\n\tLuFormlyFieldTextarea,\n\tLuFormlyFieldUser,\n} from './types/index';\n// wrappers\nimport {\n\tLuFormlyWrapperCheckboxLayout,\n\tLuFormlyWrapperError,\n\tLuFormlyWrapperHelper,\n\tLuFormlyWrapperIcon,\n\tLuFormlyWrapperRadiosfieldLayout,\n\tLuFormlyWrapperSuffix,\n\tLuFormlyWrapperTextfieldLayout,\n\ttemplateErrorExtension,\n\ttemplateHelperExtension,\n\ttemplateIconExtension,\n\ttemplateSuffixExtension,\n} from './wrappers/index';\n\nexport const LU_FORMLY_CONFIG: ConfigOption = {\n\ttypes: [\n\t\t{\n\t\t\tname: 'input',\n\t\t\tcomponent: LuFormlyFieldInput,\n\t\t\twrappers: ['textfield-layout'],\n\t\t},\n\t\t{\n\t\t\tname: 'radio',\n\t\t\tcomponent: LuFormlyFieldRadios,\n\t\t\twrappers: ['radiosfield-layout'],\n\t\t},\n\t\t{\n\t\t\tname: 'checkbox',\n\t\t\tcomponent: LuFormlyFieldCheckbox,\n\t\t\twrappers: ['checkbox-layout'],\n\t\t},\n\t\t{\n\t\t\tname: 'date',\n\t\t\tcomponent: LuFormlyFieldDate,\n\t\t\twrappers: ['textfield-layout'],\n\t\t},\n\t\t{\n\t\t\tname: 'textarea',\n\t\t\tcomponent: LuFormlyFieldTextarea,\n\t\t\twrappers: ['textfield-layout'],\n\t\t},\n\t\t{\n\t\t\tname: 'select',\n\t\t\tcomponent: LuFormlyFieldSelect,\n\t\t\twrappers: ['textfield-layout'],\n\t\t},\n\t\t{\n\t\t\tname: 'user',\n\t\t\tcomponent: LuFormlyFieldUser,\n\t\t\twrappers: ['textfield-layout'],\n\t\t},\n\t\t{\n\t\t\tname: 'api',\n\t\t\tcomponent: LuFormlyFieldApi,\n\t\t\twrappers: ['textfield-layout'],\n\t\t},\n\t\t{\n\t\t\tname: 'department',\n\t\t\tcomponent: LuFormlyFieldDepartment,\n\t\t\twrappers: ['textfield-layout'],\n\t\t},\n\t\t{\n\t\t\tname: 'establishment',\n\t\t\tcomponent: LuFormlyFieldEstablishment,\n\t\t\twrappers: ['textfield-layout'],\n\t\t},\n\t],\n\twrappers: [\n\t\t{ name: 'helper', component: LuFormlyWrapperHelper },\n\t\t{ name: 'checkbox-layout', component: LuFormlyWrapperCheckboxLayout },\n\t\t{ name: 'radiosfield-layout', component: LuFormlyWrapperRadiosfieldLayout },\n\t\t{ name: 'textfield-layout', component: LuFormlyWrapperTextfieldLayout },\n\t\t{ name: 'suffix', component: LuFormlyWrapperSuffix },\n\t\t{ name: 'icon', component: LuFormlyWrapperIcon },\n\t\t{ name: 'error', component: LuFormlyWrapperError },\n\t],\n\textensions: [\n\t\t{ name: 'helper', extension: templateHelperExtension }, // fifth\n\t\t{ name: 'error', extension: templateErrorExtension }, // fourth\n\t\t{ name: 'suffix', extension: templateSuffixExtension }, // third\n\t\t{ name: 'icon', extension: templateIconExtension }, // second\n\t],\n};\n","import { EnvironmentProviders, importProvidersFrom } from '@angular/core';\nimport { FormlyModule } from '@ngx-formly/core';\nimport { LU_FORMLY_CONFIG } from './formly.config';\n\nexport function provideLuFormly(): EnvironmentProviders {\n\treturn importProvidersFrom(FormlyModule.forChild(LU_FORMLY_CONFIG));\n}\n","import { NgModule } from '@angular/core';\nimport { provideLuFormly } from './formly.providers';\n\n/**\n * @deprecated use provideLuFormly() in a lazy loaded route (and stop using formly please)\n * */\n@NgModule({\n\tproviders: [provideLuFormly()],\n})\nexport class LuFormlyModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -65,7 +65,7 @@ class PhoneNumberInputComponent {
|
|
|
65
65
|
prefix: getCountryCallingCode(country),
|
|
66
66
|
name: this.#displayNames.of(country),
|
|
67
67
|
}))
|
|
68
|
-
.sort((a, b) => a.name
|
|
68
|
+
.sort((a, b) => (a.name && b.name ? a.name.localeCompare(b.name) : 0));
|
|
69
69
|
this.#prefixEntries = computed(() => {
|
|
70
70
|
const whitelist = this.allowedCountries();
|
|
71
71
|
if (whitelist.length === 0) {
|
|
@@ -86,7 +86,8 @@ class PhoneNumberInputComponent {
|
|
|
86
86
|
this.countryCodeSelected = signal(undefined, ...(ngDevMode ? [{ debugName: "countryCodeSelected" }] : []));
|
|
87
87
|
this.countryCode = computed(() => this.countryCodeSelected() ?? this.defaultCountryCode(), ...(ngDevMode ? [{ debugName: "countryCode" }] : []));
|
|
88
88
|
this.placeholder = computed(() => {
|
|
89
|
-
const
|
|
89
|
+
const countryCode = this.countryCode();
|
|
90
|
+
const exampleNumber = this.noAutoPlaceholder() === false && countryCode ? getExampleNumber(countryCode, examples) : undefined;
|
|
90
91
|
return exampleNumber?.formatNational() ?? '';
|
|
91
92
|
}, ...(ngDevMode ? [{ debugName: "placeholder" }] : []));
|
|
92
93
|
this.displayedNumber = signal(undefined, ...(ngDevMode ? [{ debugName: "displayedNumber" }] : []));
|
|
@@ -142,17 +143,19 @@ class PhoneNumberInputComponent {
|
|
|
142
143
|
updateModel() {
|
|
143
144
|
const displayedNumber = this.displayedNumber();
|
|
144
145
|
const countryCode = this.countryCode();
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
146
|
+
if (displayedNumber) {
|
|
147
|
+
try {
|
|
148
|
+
const { country, number } = tryParsePhoneNumber(displayedNumber, countryCode);
|
|
149
|
+
if (country && country !== countryCode) {
|
|
150
|
+
this.countryCodeSelected.set(country);
|
|
151
|
+
this.countryChange.emit(country);
|
|
152
|
+
}
|
|
153
|
+
this.#onChange?.(number);
|
|
154
|
+
return;
|
|
155
|
+
}
|
|
156
|
+
catch {
|
|
157
|
+
this.#onChange?.(displayedNumber);
|
|
150
158
|
}
|
|
151
|
-
this.#onChange?.(number);
|
|
152
|
-
return;
|
|
153
|
-
}
|
|
154
|
-
catch {
|
|
155
|
-
this.#onChange?.(displayedNumber);
|
|
156
159
|
}
|
|
157
160
|
}
|
|
158
161
|
touched() {
|
|
@@ -161,18 +164,20 @@ class PhoneNumberInputComponent {
|
|
|
161
164
|
formatNationalNumber() {
|
|
162
165
|
const countryCode = this.countryCode();
|
|
163
166
|
const displayedNumber = this.displayedNumber();
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
167
|
+
if (displayedNumber) {
|
|
168
|
+
try {
|
|
169
|
+
const { isValid, nationalNumber } = tryParsePhoneNumber(displayedNumber, countryCode);
|
|
170
|
+
if (isValid) {
|
|
171
|
+
this.displayedNumber.set(nationalNumber);
|
|
172
|
+
}
|
|
173
|
+
else if (countryCode) {
|
|
174
|
+
this.displayedNumber.set(formatIncompletePhoneNumber(displayedNumber, countryCode));
|
|
175
|
+
}
|
|
168
176
|
}
|
|
169
|
-
|
|
170
|
-
|
|
177
|
+
catch {
|
|
178
|
+
// do nothing
|
|
171
179
|
}
|
|
172
180
|
}
|
|
173
|
-
catch {
|
|
174
|
-
// do nothing
|
|
175
|
-
}
|
|
176
181
|
}
|
|
177
182
|
validate(control) {
|
|
178
183
|
return PhoneNumberValidators.validPhoneNumber(control, this.countryCode());
|