@lucca-front/ng 18.1.3 → 18.1.4

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.
Files changed (41) hide show
  1. package/callout/callout/callout.component.d.ts +4 -1
  2. package/callout/callout-disclosure/callout-disclosure.component.d.ts +3 -0
  3. package/callout/callout-popover/callout-popover.component.d.ts +10 -1
  4. package/empty-state/empty-state-section/empty-state-section.component.d.ts +3 -0
  5. package/esm2022/button/button.component.mjs +4 -4
  6. package/esm2022/callout/callout/callout.component.mjs +11 -5
  7. package/esm2022/callout/callout-disclosure/callout-disclosure.component.mjs +10 -4
  8. package/esm2022/callout/callout-feedback-list/callout-feedback-list.component.mjs +2 -2
  9. package/esm2022/callout/callout-popover/callout-popover.component.mjs +24 -8
  10. package/esm2022/dialog/directives/dialog-open.directive.mjs +2 -2
  11. package/esm2022/empty-state/empty-state-section/empty-state-section.component.mjs +10 -5
  12. package/esm2022/form-field/form-field.component.mjs +39 -11
  13. package/esm2022/forms/radio-group-input/radio/radio.component.mjs +2 -2
  14. package/esm2022/icon/icon.component.mjs +9 -4
  15. package/esm2022/inline-message/inline-message.component.mjs +3 -3
  16. package/esm2022/numeric-badge/numeric-badge.component.mjs +4 -4
  17. package/esm2022/tag/tag.component.mjs +10 -3
  18. package/fesm2022/lucca-front-ng-button.mjs +3 -3
  19. package/fesm2022/lucca-front-ng-button.mjs.map +1 -1
  20. package/fesm2022/lucca-front-ng-callout.mjs +53 -25
  21. package/fesm2022/lucca-front-ng-callout.mjs.map +1 -1
  22. package/fesm2022/lucca-front-ng-dialog.mjs +1 -1
  23. package/fesm2022/lucca-front-ng-dialog.mjs.map +1 -1
  24. package/fesm2022/lucca-front-ng-empty-state.mjs +8 -3
  25. package/fesm2022/lucca-front-ng-empty-state.mjs.map +1 -1
  26. package/fesm2022/lucca-front-ng-form-field.mjs +38 -10
  27. package/fesm2022/lucca-front-ng-form-field.mjs.map +1 -1
  28. package/fesm2022/lucca-front-ng-forms.mjs +1 -1
  29. package/fesm2022/lucca-front-ng-forms.mjs.map +1 -1
  30. package/fesm2022/lucca-front-ng-icon.mjs +8 -3
  31. package/fesm2022/lucca-front-ng-icon.mjs.map +1 -1
  32. package/fesm2022/lucca-front-ng-inline-message.mjs +2 -2
  33. package/fesm2022/lucca-front-ng-inline-message.mjs.map +1 -1
  34. package/fesm2022/lucca-front-ng-numeric-badge.mjs +3 -3
  35. package/fesm2022/lucca-front-ng-numeric-badge.mjs.map +1 -1
  36. package/fesm2022/lucca-front-ng-tag.mjs +9 -2
  37. package/fesm2022/lucca-front-ng-tag.mjs.map +1 -1
  38. package/form-field/form-field.component.d.ts +10 -1
  39. package/icon/icon.component.d.ts +3 -0
  40. package/package.json +37 -37
  41. package/tag/tag.component.d.ts +3 -0
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-dialog.mjs","sources":["../../../packages/ng/dialog/dialog-content/dialog-content.component.ts","../../../packages/ng/dialog/dialog-footer/dialog-footer.component.ts","../../../packages/ng/dialog/model/dialog-ref.ts","../../../packages/ng/dialog/model/dialog-config.ts","../../../packages/ng/dialog/model/injectors.ts","../../../packages/ng/dialog/dialog-header/translations.ts","../../../packages/ng/dialog/dialog-header/dialog-header.translate.ts","../../../packages/ng/dialog/dialog-header/dialog-header.component.ts","../../../packages/ng/dialog/dialog-header/dialog-header.component.html","../../../packages/ng/dialog/dialog.service.ts","../../../packages/ng/dialog/dialog.providers.ts","../../../packages/ng/dialog/dialog/dialog.component.ts","../../../packages/ng/dialog/directives/dialog-close.directive.ts","../../../packages/ng/dialog/directives/dialog-dismiss.directive.ts","../../../packages/ng/dialog/directives/dialog-open.directive.ts","../../../packages/ng/dialog/lucca-front-ng-dialog.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n\tselector: 'lu-dialog-content',\n\tstandalone: true,\n\ttemplate: '<ng-content></ng-content>',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'dialog-inside-content',\n\t},\n})\nexport class DialogContentComponent {}\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n\tselector: 'lu-dialog-footer',\n\tstandalone: true,\n\ttemplate: '<ng-content></ng-content>',\n\tstyleUrl: './dialog-footer.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'dialog-inside-footer footer',\n\t},\n})\nexport class DialogFooterComponent {}\n","import { isObservable, Observable, of, take } from 'rxjs';\nimport { DialogRef } from '@angular/cdk/dialog';\nimport { LuDialogConfig, LuDialogResult } from './dialog-config';\nimport { filter, map } from 'rxjs/operators';\n\nexport const DISMISSED_VALUE = {} as const;\n\nfunction isDismissed(v: unknown): v is typeof DISMISSED_VALUE {\n\treturn v === DISMISSED_VALUE;\n}\n\nexport class LuDialogRef<C = unknown> {\n\t/**\n\t * Instance of the component that's inside the dialog\n\t */\n\tget instance(): C {\n\t\treturn this.cdkRef.componentInstance;\n\t}\n\n\t/**\n\t * Emits when the dialog is closed\n\t *\n\t * Emits either the output of result$ or undefined depending on how it has been closed\n\t */\n\tclosed$: Observable<LuDialogResult<C> | undefined> = this.cdkRef.closed.pipe(map((res): LuDialogResult<C> | undefined => (isDismissed(res) ? undefined : res)));\n\n\t/**\n\t * Emits void when the dialog is dismissed\n\t */\n\tdismissed$: Observable<void> = this.cdkRef.closed.pipe(\n\t\tfilter((res) => res === DISMISSED_VALUE),\n\t\tmap((): void => undefined),\n\t);\n\n\t/**\n\t * Emits the result if it has a value that's not DISMISSED_VALUE\n\t */\n\tresult$: Observable<LuDialogResult<C>> = this.cdkRef.closed.pipe(filter((res): res is LuDialogResult<C> => !isDismissed(res)));\n\n\tconstructor(\n\t\tpublic readonly cdkRef: DialogRef<LuDialogResult<C> | typeof DISMISSED_VALUE, C>,\n\t\tpublic readonly config: LuDialogConfig<C>,\n\t) {}\n\n\tdismiss(): void {\n\t\t// If we can't dismiss this dialog box, just ignore the dismiss call.\n\t\tif (this.config.alert) {\n\t\t\treturn;\n\t\t}\n\t\tconst canClose = this.config.canClose?.(this.instance) ?? true;\n\t\tconst canClose$ = isObservable(canClose) ? canClose : of(canClose);\n\t\tcanClose$.pipe(take(1)).subscribe((close) => {\n\t\t\tif (close) {\n\t\t\t\tthis.cdkRef.close(DISMISSED_VALUE);\n\t\t\t}\n\t\t});\n\t}\n\n\tclose(res: LuDialogResult<C>): void {\n\t\tthis.cdkRef.close(res);\n\t}\n}\n\nexport type LuDialogSelfRef<R> = { dismiss(): void; close(res: R): void };\n","import { TemplateRef } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { ComponentType } from '@angular/cdk/overlay';\nimport { AutoFocusTarget, DialogConfig } from '@angular/cdk/dialog';\n\nconst ɵdialogData = Symbol.for('luDialogData');\nconst ɵdialogResult = Symbol.for('luDialogResult');\n\nexport type ɵDialogDataFlag = { [ɵdialogData]: unknown };\nexport type ɵDialogResultFlag<R> = { [ɵdialogResult]: R };\n\nexport type LuDialogData<T> = {\n\t[K in keyof T]: T[K] extends ɵDialogDataFlag ? Omit<T[K], typeof ɵdialogData> : never;\n}[keyof T];\n\ntype DialogRefProps<C> = { [K in keyof C]: C[K] extends ɵDialogResultFlag<unknown> ? K : never }[keyof C] & keyof C;\nexport type LuDialogResult<C> = DialogRefProps<C> extends never ? void : C[DialogRefProps<C>] extends ɵDialogResultFlag<infer T> ? T : void;\n\ninterface BaseLuDialogConfig<C> {\n\t/**\n\t * The component or template to put inside the dialog container\n\t */\n\tcontent: ComponentType<C> | TemplateRef<C>;\n\n\t/**\n\t * Data to pass to the component, will be required if the component used `injectDialogData` in a field, specifying the data that's needed.\n\t */\n\tdata: LuDialogData<C>;\n\n\t/**\n\t * Should we put a backdrop? Defaults to true\n\t */\n\tmodal?: boolean;\n\n\t/**\n\t * Is this dialog a blocking popup that cannot be dismissed ?\n\t *\n\t * Defaults to false, setting this to true will also remove the close button in the header\n\t * if you're using `lu-dialog-header`.\n\t */\n\talert?: boolean;\n\n\t/**\n\t * Can be used if you don't have a header or aren't using the default one, to set an aria-label\n\t * instead of aria-labelledby on the dialog container\n\t */\n\tariaLabel?: string;\n\n\t/**\n\t * Autofocus target\n\t *\n\t * Defaults to the close button from the header, first-input is added by us to focus the first available input\n\t * or the first input that is contained inside a node that has the `.luDialog-autofocus` class\n\t */\n\tautoFocus?: AutoFocusTarget | 'first-input' | string;\n\n\t/**\n\t * This provides a way to override any of the configuration parameters expected by cdk's `Dialog.open` method.\n\t *\n\t * WARNING: this will take full authority and override with your values no matter what's computed by LuDialogService,\n\t * use with caution.\n\t */\n\tcdkConfigOverride?: DialogConfig<C>;\n\n\t/**\n\t * A hook function to determine if the current dialog can be closed or not, if provided.\n\t *\n\t * @param comp the instance of the component that's inside the dialog box.\n\t */\n\tcanClose?: (comp: C) => boolean | Observable<boolean>;\n\n\t/**\n\t * Determine if the current dialog can be close by a click on backdrop or escape key\n\t */\n\tcanCloseWithBackdrop?: boolean;\n\n\t/**\n\t * The size of the panel used for the dialog\n\t */\n\tsize?: 'XS' | 'S' | 'M' | 'L' | 'XL' | 'fitContent' | `maxContent` | 'fullScreen';\n\n\t/**\n\t * Should it be a modal (default), a drawer? a drawer from bottom?\n\t */\n\tmode?: 'default' | 'drawer' | 'drawer-from-bottom';\n\n\t/**\n\t * Classes to add to the panel\n\t */\n\tpanelClasses?: string[];\n}\n\nexport type LuDialogConfig<T> = LuDialogData<T> extends never ? Omit<BaseLuDialogConfig<T>, 'data'> : BaseLuDialogConfig<T>;\n","import { LuDialogRef, LuDialogSelfRef } from './dialog-ref';\nimport { ɵDialogDataFlag, ɵDialogResultFlag } from './dialog-config';\nimport { inject } from '@angular/core';\nimport { DIALOG_DATA } from '@angular/cdk/dialog';\n\nexport function injectDialogData<TData>(): TData & ɵDialogDataFlag {\n\treturn inject<TData & ɵDialogDataFlag>(DIALOG_DATA);\n}\n\nexport function injectDialogRef<R = void>(): LuDialogSelfRef<R> & ɵDialogResultFlag<R> {\n\treturn inject<LuDialogSelfRef<R>>(LuDialogRef) as LuDialogSelfRef<R> & ɵDialogResultFlag<R>;\n}\n","export const Translations = {\n\ten: {\n\t\tclose: 'Close',\n\t},\n\tde: {\n\t\tclose: 'Schließen',\n\t},\n\tfr: {\n\t\tclose: 'Fermer',\n\t},\n\tit: {\n\t\tclose: 'Chiudere',\n\t},\n\tnl: {\n\t\tclose: 'Sluiten',\n\t},\n\t'nl-BE': {\n\t\tclose: 'Sluiten',\n\t},\n\tes: {\n\t\tclose: 'Cerrar',\n\t},\n\tpt: {\n\t\tclose: 'Fechar',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_DIALOG_HEADER_TRANSLATIONS = new InjectionToken('LuDialogHeaderTranslations', {\n\tfactory: () => luDialogHeaderTranslations,\n});\n\nexport interface LuDialogHeaderTranslations {\n\tclose: string;\n}\n\nexport const luDialogHeaderTranslations: LuTranslation<LuDialogHeaderTranslations> = Translations;\n","import { CdkDialogContainer } from '@angular/cdk/dialog';\nimport { NgIf } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, ElementRef, inject, OnInit, Renderer2, ViewEncapsulation } from '@angular/core';\nimport { ButtonComponent } from '@lucca-front/ng/button';\nimport { getIntl } from '@lucca-front/ng/core';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { LuDialogRef } from '../model';\nimport { LU_DIALOG_HEADER_TRANSLATIONS } from './dialog-header.translate';\n\nlet nextId = 0;\n\n@Component({\n\tselector: 'lu-dialog-header',\n\tstandalone: true,\n\timports: [IconComponent, ButtonComponent, NgIf],\n\ttemplateUrl: './dialog-header.component.html',\n\tstyleUrl: './dialog-header.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'dialog-inside-header',\n\t},\n})\nexport class DialogHeaderComponent implements OnInit {\n\t#ref = inject(LuDialogRef);\n\n\tintl = getIntl(LU_DIALOG_HEADER_TRANSLATIONS);\n\n\tdismissible = !this.#ref.config.alert;\n\n\t#elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\n\t#renderer = inject(Renderer2);\n\n\tclose(): void {\n\t\tthis.#ref.dismiss();\n\t}\n\n\tngOnInit(): void {\n\t\t// Using setTimeout here to make sure this will be handled in the next Cd cycle, not the current one.\n\t\tsetTimeout(() => {\n\t\t\tconst header = this.#elementRef.nativeElement.querySelector('h1');\n\t\t\tconst id = header?.id || `lu-dialog-header-${nextId++}`;\n\t\t\tif (header) {\n\t\t\t\tthis.#renderer.setAttribute(header, 'id', id);\n\t\t\t\tthis.#renderer.addClass(header, 'dialog-inside-header-container-title');\n\t\t\t}\n\t\t\t// TODO change this to _addAriaLabelledBy once cdk is > 17.1\n\t\t\t(this.#ref.cdkRef.containerInstance as CdkDialogContainer)._ariaLabelledByQueue.push(id);\n\t\t});\n\t}\n}\n","<button class=\"dialog-inside-header-button\" type=\"button\" luButton (click)=\"close()\" *ngIf=\"dismissible\">\n\t<lu-icon icon=\"signClose\"></lu-icon>\n\t<span class=\"u-mask\">{{ intl.close }}</span>\n</button>\n\n<div class=\"dialog-inside-header-container\">\n\t<ng-content></ng-content>\n</div>\n","import { inject, Injectable, Injector, Renderer2 } from '@angular/core';\nimport { LuDialogConfig, LuDialogRef, LuDialogResult } from './model';\nimport { Dialog, DialogRef } from '@angular/cdk/dialog';\nimport { isObservable, merge, of, take } from 'rxjs';\nimport { filter, switchMap, takeUntil } from 'rxjs/operators';\nimport { DISMISSED_VALUE } from './model/dialog-ref';\n\n@Injectable()\nexport class LuDialogService {\n\t#cdkDialog = inject(Dialog);\n\n\t#injector = inject(Injector);\n\n\topen<C>(config: LuDialogConfig<C>): LuDialogRef<C> {\n\t\tlet luDialogRef: LuDialogRef<C>;\n\t\tlet modeClasses: string[] = [];\n\t\tswitch (config.mode) {\n\t\t\tcase 'drawer':\n\t\t\t\tmodeClasses = ['mod-drawer'];\n\t\t\t\tbreak;\n\t\t\tcase 'drawer-from-bottom':\n\t\t\t\tmodeClasses = ['mod-drawer', 'mod-fromBottom'];\n\t\t\t\tbreak;\n\t\t}\n\t\tconst cdkRef = this.#cdkDialog.open(config.content, {\n\t\t\tariaModal: config.modal ?? true,\n\t\t\thasBackdrop: config.modal ?? true,\n\t\t\tdata: 'data' in config ? config.data : null,\n\t\t\tdisableClose: true,\n\t\t\tcloseOnDestroy: true,\n\t\t\trole: config.alert ? 'alertdialog' : 'dialog',\n\t\t\trestoreFocus: true,\n\t\t\tbackdropClass: 'dialog_backdrop',\n\t\t\tpanelClass: ['dialog', `mod-${config.size || 'M'}`, ...modeClasses, ...(config.panelClasses || [])],\n\t\t\tariaLabel: config.ariaLabel,\n\t\t\t// If focus is first-input, focus dialog and let the component do the rest\n\t\t\t// Else, just set it to config value or default to first-tabbable\n\t\t\tautoFocus: config.autoFocus === 'first-input' ? 'dialog' : config.autoFocus ?? 'first-tabbable',\n\t\t\ttemplateContext: () => ({ dialogRef: luDialogRef }),\n\t\t\tinjector: this.#injector,\n\t\t\tproviders: (ref: DialogRef<LuDialogResult<C>, C>) => {\n\t\t\t\tluDialogRef = new LuDialogRef(ref, config);\n\t\t\t\treturn [\n\t\t\t\t\t{\n\t\t\t\t\t\tprovide: LuDialogRef,\n\t\t\t\t\t\tuseValue: luDialogRef,\n\t\t\t\t\t},\n\t\t\t\t];\n\t\t\t},\n\t\t\t...(config.cdkConfigOverride || {}),\n\t\t});\n\n\t\tif (cdkRef.componentRef) {\n\t\t\tconst renderer = cdkRef.componentRef.injector.get(Renderer2);\n\t\t\trenderer.setStyle(cdkRef.componentRef.location.nativeElement, 'display', 'contents');\n\t\t}\n\n\t\tif (!config.alert) {\n\t\t\t// Setup close listeners on backdrop click and escape key by ourselves so we can hook the `canClose` method to it.\n\t\t\tmerge(cdkRef.backdropClick, cdkRef.keydownEvents.pipe(filter((e) => e.key === 'Escape' && !e.defaultPrevented)))\n\t\t\t\t.pipe(\n\t\t\t\t\tfilter(() => config.canCloseWithBackdrop ?? true),\n\t\t\t\t\tswitchMap(() => {\n\t\t\t\t\t\tconst canClose = config.canClose?.(cdkRef.componentInstance) ?? true;\n\t\t\t\t\t\tconst canClose$ = isObservable(canClose) ? canClose : of(canClose);\n\t\t\t\t\t\treturn canClose$.pipe(take(1));\n\t\t\t\t\t}),\n\t\t\t\t\ttakeUntil(luDialogRef.closed$),\n\t\t\t\t)\n\t\t\t\t.subscribe((canClose) => {\n\t\t\t\t\tif (canClose) {\n\t\t\t\t\t\tcdkRef.close(DISMISSED_VALUE);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t}\n\t\treturn luDialogRef;\n\t}\n}\n","import { EnvironmentProviders, importProvidersFrom, makeEnvironmentProviders, Provider } from '@angular/core';\nimport { DialogModule } from '@angular/cdk/dialog';\nimport { LuDialogService } from './dialog.service';\n\nexport function configureLuDialog(): EnvironmentProviders {\n\treturn makeEnvironmentProviders([importProvidersFrom(DialogModule)]);\n}\n\nexport function provideLuDialog(): Provider {\n\treturn LuDialogService;\n}\n","import { AfterViewInit, ChangeDetectionStrategy, Component, ElementRef, inject, ViewEncapsulation } from '@angular/core';\nimport { LuDialogRef } from '../model';\n\n@Component({\n\tselector: 'lu-dialog',\n\tstandalone: true,\n\ttemplate: '<ng-content></ng-content>',\n\tstyleUrl: './dialog.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'dialog-inside',\n\t},\n})\nexport class DialogComponent implements AfterViewInit {\n\tpublic readonly dialogRef = inject<LuDialogRef>(LuDialogRef);\n\n\t#htmlElement = inject<ElementRef<HTMLElement>>(ElementRef).nativeElement;\n\n\tclose(): void {\n\t\tthis.dialogRef.close();\n\t}\n\n\tdismiss(): void {\n\t\tthis.dialogRef.dismiss();\n\t}\n\n\tngAfterViewInit(): void {\n\t\tif (this.dialogRef.config.autoFocus === 'first-input' && !this.dialogRef.config.cdkConfigOverride?.autoFocus) {\n\t\t\tconst focusable: HTMLElement =\n\t\t\t\tthis.#htmlElement.querySelector('.luDialog-autofocus .luNativeInput') || this.#htmlElement.querySelector('.luDialog-autofocus') || this.#htmlElement.querySelector('.luNativeInput');\n\t\t\tfocusable?.focus();\n\t\t}\n\t}\n}\n","import { Directive, HostListener, inject } from '@angular/core';\nimport { LuDialogRef } from '../model';\n\n@Directive({\n\tselector: '[luDialogClose]',\n\tstandalone: true,\n})\nexport class DialogCloseDirective {\n\t#ref = inject<LuDialogRef>(LuDialogRef);\n\n\t@HostListener('click')\n\tclose(): void {\n\t\tthis.#ref.close();\n\t}\n}\n","import { Directive, HostListener, inject } from '@angular/core';\nimport { LuDialogRef } from '../model';\n\n@Directive({\n\tselector: '[luDialogDismiss]',\n\tstandalone: true,\n})\nexport class DialogDismissDirective {\n\t#ref = inject<LuDialogRef>(LuDialogRef);\n\n\t@HostListener('click')\n\tclose(): void {\n\t\tthis.#ref.dismiss();\n\t}\n}\n","import { Directive, HostListener, inject, Input, TemplateRef } from '@angular/core';\nimport { LuDialogService } from '../dialog.service';\nimport { LuDialogConfig } from '../model';\nimport { provideLuDialog } from '../dialog.providers';\n\n@Directive({\n\tselector: '[luDialogOpen]',\n\tstandalone: true,\n\tproviders: [provideLuDialog()],\n})\nexport class DialogOpenDirective {\n\t#dialogService = inject(LuDialogService);\n\n\t@Input({\n\t\trequired: true,\n\t\talias: 'luDialogOpen',\n\t})\n\tdialog: TemplateRef<void>;\n\n\t@Input()\n\tluDialogConfig: LuDialogConfig<unknown>;\n\n\t@HostListener('click')\n\tclick(): void {\n\t\tthis.#dialogService.open({\n\t\t\tcontent: this.dialog,\n\t\t\t...this.luDialogConfig,\n\t\t});\n\t}\n}\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-dialog.mjs","sources":["../../../packages/ng/dialog/dialog-content/dialog-content.component.ts","../../../packages/ng/dialog/dialog-footer/dialog-footer.component.ts","../../../packages/ng/dialog/model/dialog-ref.ts","../../../packages/ng/dialog/model/dialog-config.ts","../../../packages/ng/dialog/model/injectors.ts","../../../packages/ng/dialog/dialog-header/translations.ts","../../../packages/ng/dialog/dialog-header/dialog-header.translate.ts","../../../packages/ng/dialog/dialog-header/dialog-header.component.ts","../../../packages/ng/dialog/dialog-header/dialog-header.component.html","../../../packages/ng/dialog/dialog.service.ts","../../../packages/ng/dialog/dialog.providers.ts","../../../packages/ng/dialog/dialog/dialog.component.ts","../../../packages/ng/dialog/directives/dialog-close.directive.ts","../../../packages/ng/dialog/directives/dialog-dismiss.directive.ts","../../../packages/ng/dialog/directives/dialog-open.directive.ts","../../../packages/ng/dialog/lucca-front-ng-dialog.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n\tselector: 'lu-dialog-content',\n\tstandalone: true,\n\ttemplate: '<ng-content></ng-content>',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'dialog-inside-content',\n\t},\n})\nexport class DialogContentComponent {}\n","import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n\tselector: 'lu-dialog-footer',\n\tstandalone: true,\n\ttemplate: '<ng-content></ng-content>',\n\tstyleUrl: './dialog-footer.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'dialog-inside-footer footer',\n\t},\n})\nexport class DialogFooterComponent {}\n","import { isObservable, Observable, of, take } from 'rxjs';\nimport { DialogRef } from '@angular/cdk/dialog';\nimport { LuDialogConfig, LuDialogResult } from './dialog-config';\nimport { filter, map } from 'rxjs/operators';\n\nexport const DISMISSED_VALUE = {} as const;\n\nfunction isDismissed(v: unknown): v is typeof DISMISSED_VALUE {\n\treturn v === DISMISSED_VALUE;\n}\n\nexport class LuDialogRef<C = unknown> {\n\t/**\n\t * Instance of the component that's inside the dialog\n\t */\n\tget instance(): C {\n\t\treturn this.cdkRef.componentInstance;\n\t}\n\n\t/**\n\t * Emits when the dialog is closed\n\t *\n\t * Emits either the output of result$ or undefined depending on how it has been closed\n\t */\n\tclosed$: Observable<LuDialogResult<C> | undefined> = this.cdkRef.closed.pipe(map((res): LuDialogResult<C> | undefined => (isDismissed(res) ? undefined : res)));\n\n\t/**\n\t * Emits void when the dialog is dismissed\n\t */\n\tdismissed$: Observable<void> = this.cdkRef.closed.pipe(\n\t\tfilter((res) => res === DISMISSED_VALUE),\n\t\tmap((): void => undefined),\n\t);\n\n\t/**\n\t * Emits the result if it has a value that's not DISMISSED_VALUE\n\t */\n\tresult$: Observable<LuDialogResult<C>> = this.cdkRef.closed.pipe(filter((res): res is LuDialogResult<C> => !isDismissed(res)));\n\n\tconstructor(\n\t\tpublic readonly cdkRef: DialogRef<LuDialogResult<C> | typeof DISMISSED_VALUE, C>,\n\t\tpublic readonly config: LuDialogConfig<C>,\n\t) {}\n\n\tdismiss(): void {\n\t\t// If we can't dismiss this dialog box, just ignore the dismiss call.\n\t\tif (this.config.alert) {\n\t\t\treturn;\n\t\t}\n\t\tconst canClose = this.config.canClose?.(this.instance) ?? true;\n\t\tconst canClose$ = isObservable(canClose) ? canClose : of(canClose);\n\t\tcanClose$.pipe(take(1)).subscribe((close) => {\n\t\t\tif (close) {\n\t\t\t\tthis.cdkRef.close(DISMISSED_VALUE);\n\t\t\t}\n\t\t});\n\t}\n\n\tclose(res: LuDialogResult<C>): void {\n\t\tthis.cdkRef.close(res);\n\t}\n}\n\nexport type LuDialogSelfRef<R> = { dismiss(): void; close(res: R): void };\n","import { TemplateRef } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { ComponentType } from '@angular/cdk/overlay';\nimport { AutoFocusTarget, DialogConfig } from '@angular/cdk/dialog';\n\nconst ɵdialogData = Symbol.for('luDialogData');\nconst ɵdialogResult = Symbol.for('luDialogResult');\n\nexport type ɵDialogDataFlag = { [ɵdialogData]: unknown };\nexport type ɵDialogResultFlag<R> = { [ɵdialogResult]: R };\n\nexport type LuDialogData<T> = {\n\t[K in keyof T]: T[K] extends ɵDialogDataFlag ? Omit<T[K], typeof ɵdialogData> : never;\n}[keyof T];\n\ntype DialogRefProps<C> = { [K in keyof C]: C[K] extends ɵDialogResultFlag<unknown> ? K : never }[keyof C] & keyof C;\nexport type LuDialogResult<C> = DialogRefProps<C> extends never ? void : C[DialogRefProps<C>] extends ɵDialogResultFlag<infer T> ? T : void;\n\ninterface BaseLuDialogConfig<C> {\n\t/**\n\t * The component or template to put inside the dialog container\n\t */\n\tcontent: ComponentType<C> | TemplateRef<C>;\n\n\t/**\n\t * Data to pass to the component, will be required if the component used `injectDialogData` in a field, specifying the data that's needed.\n\t */\n\tdata: LuDialogData<C>;\n\n\t/**\n\t * Should we put a backdrop? Defaults to true\n\t */\n\tmodal?: boolean;\n\n\t/**\n\t * Is this dialog a blocking popup that cannot be dismissed ?\n\t *\n\t * Defaults to false, setting this to true will also remove the close button in the header\n\t * if you're using `lu-dialog-header`.\n\t */\n\talert?: boolean;\n\n\t/**\n\t * Can be used if you don't have a header or aren't using the default one, to set an aria-label\n\t * instead of aria-labelledby on the dialog container\n\t */\n\tariaLabel?: string;\n\n\t/**\n\t * Autofocus target\n\t *\n\t * Defaults to the close button from the header, first-input is added by us to focus the first available input\n\t * or the first input that is contained inside a node that has the `.luDialog-autofocus` class\n\t */\n\tautoFocus?: AutoFocusTarget | 'first-input' | string;\n\n\t/**\n\t * This provides a way to override any of the configuration parameters expected by cdk's `Dialog.open` method.\n\t *\n\t * WARNING: this will take full authority and override with your values no matter what's computed by LuDialogService,\n\t * use with caution.\n\t */\n\tcdkConfigOverride?: DialogConfig<C>;\n\n\t/**\n\t * A hook function to determine if the current dialog can be closed or not, if provided.\n\t *\n\t * @param comp the instance of the component that's inside the dialog box.\n\t */\n\tcanClose?: (comp: C) => boolean | Observable<boolean>;\n\n\t/**\n\t * Determine if the current dialog can be close by a click on backdrop or escape key\n\t */\n\tcanCloseWithBackdrop?: boolean;\n\n\t/**\n\t * The size of the panel used for the dialog\n\t */\n\tsize?: 'XS' | 'S' | 'M' | 'L' | 'XL' | 'fitContent' | `maxContent` | 'fullScreen';\n\n\t/**\n\t * Should it be a modal (default), a drawer? a drawer from bottom?\n\t */\n\tmode?: 'default' | 'drawer' | 'drawer-from-bottom';\n\n\t/**\n\t * Classes to add to the panel\n\t */\n\tpanelClasses?: string[];\n}\n\nexport type LuDialogConfig<T> = LuDialogData<T> extends never ? Omit<BaseLuDialogConfig<T>, 'data'> : BaseLuDialogConfig<T>;\n","import { LuDialogRef, LuDialogSelfRef } from './dialog-ref';\nimport { ɵDialogDataFlag, ɵDialogResultFlag } from './dialog-config';\nimport { inject } from '@angular/core';\nimport { DIALOG_DATA } from '@angular/cdk/dialog';\n\nexport function injectDialogData<TData>(): TData & ɵDialogDataFlag {\n\treturn inject<TData & ɵDialogDataFlag>(DIALOG_DATA);\n}\n\nexport function injectDialogRef<R = void>(): LuDialogSelfRef<R> & ɵDialogResultFlag<R> {\n\treturn inject<LuDialogSelfRef<R>>(LuDialogRef) as LuDialogSelfRef<R> & ɵDialogResultFlag<R>;\n}\n","export const Translations = {\n\ten: {\n\t\tclose: 'Close',\n\t},\n\tde: {\n\t\tclose: 'Schließen',\n\t},\n\tfr: {\n\t\tclose: 'Fermer',\n\t},\n\tit: {\n\t\tclose: 'Chiudere',\n\t},\n\tnl: {\n\t\tclose: 'Sluiten',\n\t},\n\t'nl-BE': {\n\t\tclose: 'Sluiten',\n\t},\n\tes: {\n\t\tclose: 'Cerrar',\n\t},\n\tpt: {\n\t\tclose: 'Fechar',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_DIALOG_HEADER_TRANSLATIONS = new InjectionToken('LuDialogHeaderTranslations', {\n\tfactory: () => luDialogHeaderTranslations,\n});\n\nexport interface LuDialogHeaderTranslations {\n\tclose: string;\n}\n\nexport const luDialogHeaderTranslations: LuTranslation<LuDialogHeaderTranslations> = Translations;\n","import { CdkDialogContainer } from '@angular/cdk/dialog';\nimport { NgIf } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, ElementRef, inject, OnInit, Renderer2, ViewEncapsulation } from '@angular/core';\nimport { ButtonComponent } from '@lucca-front/ng/button';\nimport { getIntl } from '@lucca-front/ng/core';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { LuDialogRef } from '../model';\nimport { LU_DIALOG_HEADER_TRANSLATIONS } from './dialog-header.translate';\n\nlet nextId = 0;\n\n@Component({\n\tselector: 'lu-dialog-header',\n\tstandalone: true,\n\timports: [IconComponent, ButtonComponent, NgIf],\n\ttemplateUrl: './dialog-header.component.html',\n\tstyleUrl: './dialog-header.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'dialog-inside-header',\n\t},\n})\nexport class DialogHeaderComponent implements OnInit {\n\t#ref = inject(LuDialogRef);\n\n\tintl = getIntl(LU_DIALOG_HEADER_TRANSLATIONS);\n\n\tdismissible = !this.#ref.config.alert;\n\n\t#elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\n\t#renderer = inject(Renderer2);\n\n\tclose(): void {\n\t\tthis.#ref.dismiss();\n\t}\n\n\tngOnInit(): void {\n\t\t// Using setTimeout here to make sure this will be handled in the next Cd cycle, not the current one.\n\t\tsetTimeout(() => {\n\t\t\tconst header = this.#elementRef.nativeElement.querySelector('h1');\n\t\t\tconst id = header?.id || `lu-dialog-header-${nextId++}`;\n\t\t\tif (header) {\n\t\t\t\tthis.#renderer.setAttribute(header, 'id', id);\n\t\t\t\tthis.#renderer.addClass(header, 'dialog-inside-header-container-title');\n\t\t\t}\n\t\t\t// TODO change this to _addAriaLabelledBy once cdk is > 17.1\n\t\t\t(this.#ref.cdkRef.containerInstance as CdkDialogContainer)._ariaLabelledByQueue.push(id);\n\t\t});\n\t}\n}\n","<button class=\"dialog-inside-header-button\" type=\"button\" luButton (click)=\"close()\" *ngIf=\"dismissible\">\n\t<lu-icon icon=\"signClose\"></lu-icon>\n\t<span class=\"u-mask\">{{ intl.close }}</span>\n</button>\n\n<div class=\"dialog-inside-header-container\">\n\t<ng-content></ng-content>\n</div>\n","import { inject, Injectable, Injector, Renderer2 } from '@angular/core';\nimport { LuDialogConfig, LuDialogRef, LuDialogResult } from './model';\nimport { Dialog, DialogRef } from '@angular/cdk/dialog';\nimport { isObservable, merge, of, take } from 'rxjs';\nimport { filter, switchMap, takeUntil } from 'rxjs/operators';\nimport { DISMISSED_VALUE } from './model/dialog-ref';\n\n@Injectable()\nexport class LuDialogService {\n\t#cdkDialog = inject(Dialog);\n\n\t#injector = inject(Injector);\n\n\topen<C>(config: LuDialogConfig<C>): LuDialogRef<C> {\n\t\tlet luDialogRef: LuDialogRef<C>;\n\t\tlet modeClasses: string[] = [];\n\t\tswitch (config.mode) {\n\t\t\tcase 'drawer':\n\t\t\t\tmodeClasses = ['mod-drawer'];\n\t\t\t\tbreak;\n\t\t\tcase 'drawer-from-bottom':\n\t\t\t\tmodeClasses = ['mod-drawer', 'mod-fromBottom'];\n\t\t\t\tbreak;\n\t\t}\n\t\tconst cdkRef = this.#cdkDialog.open(config.content, {\n\t\t\tariaModal: config.modal ?? true,\n\t\t\thasBackdrop: config.modal ?? true,\n\t\t\tdata: 'data' in config ? config.data : null,\n\t\t\tdisableClose: true,\n\t\t\tcloseOnDestroy: true,\n\t\t\trole: config.alert ? 'alertdialog' : 'dialog',\n\t\t\trestoreFocus: true,\n\t\t\tbackdropClass: 'dialog_backdrop',\n\t\t\tpanelClass: ['dialog', `mod-${config.size || 'M'}`, ...modeClasses, ...(config.panelClasses || [])],\n\t\t\tariaLabel: config.ariaLabel,\n\t\t\t// If focus is first-input, focus dialog and let the component do the rest\n\t\t\t// Else, just set it to config value or default to first-tabbable\n\t\t\tautoFocus: config.autoFocus === 'first-input' ? 'dialog' : config.autoFocus ?? 'first-tabbable',\n\t\t\ttemplateContext: () => ({ dialogRef: luDialogRef }),\n\t\t\tinjector: this.#injector,\n\t\t\tproviders: (ref: DialogRef<LuDialogResult<C>, C>) => {\n\t\t\t\tluDialogRef = new LuDialogRef(ref, config);\n\t\t\t\treturn [\n\t\t\t\t\t{\n\t\t\t\t\t\tprovide: LuDialogRef,\n\t\t\t\t\t\tuseValue: luDialogRef,\n\t\t\t\t\t},\n\t\t\t\t];\n\t\t\t},\n\t\t\t...(config.cdkConfigOverride || {}),\n\t\t});\n\n\t\tif (cdkRef.componentRef) {\n\t\t\tconst renderer = cdkRef.componentRef.injector.get(Renderer2);\n\t\t\trenderer.setStyle(cdkRef.componentRef.location.nativeElement, 'display', 'contents');\n\t\t}\n\n\t\tif (!config.alert) {\n\t\t\t// Setup close listeners on backdrop click and escape key by ourselves so we can hook the `canClose` method to it.\n\t\t\tmerge(cdkRef.backdropClick, cdkRef.keydownEvents.pipe(filter((e) => e.key === 'Escape' && !e.defaultPrevented)))\n\t\t\t\t.pipe(\n\t\t\t\t\tfilter(() => config.canCloseWithBackdrop ?? true),\n\t\t\t\t\tswitchMap(() => {\n\t\t\t\t\t\tconst canClose = config.canClose?.(cdkRef.componentInstance) ?? true;\n\t\t\t\t\t\tconst canClose$ = isObservable(canClose) ? canClose : of(canClose);\n\t\t\t\t\t\treturn canClose$.pipe(take(1));\n\t\t\t\t\t}),\n\t\t\t\t\ttakeUntil(luDialogRef.closed$),\n\t\t\t\t)\n\t\t\t\t.subscribe((canClose) => {\n\t\t\t\t\tif (canClose) {\n\t\t\t\t\t\tcdkRef.close(DISMISSED_VALUE);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t}\n\t\treturn luDialogRef;\n\t}\n}\n","import { EnvironmentProviders, importProvidersFrom, makeEnvironmentProviders, Provider } from '@angular/core';\nimport { DialogModule } from '@angular/cdk/dialog';\nimport { LuDialogService } from './dialog.service';\n\nexport function configureLuDialog(): EnvironmentProviders {\n\treturn makeEnvironmentProviders([importProvidersFrom(DialogModule)]);\n}\n\nexport function provideLuDialog(): Provider {\n\treturn LuDialogService;\n}\n","import { AfterViewInit, ChangeDetectionStrategy, Component, ElementRef, inject, ViewEncapsulation } from '@angular/core';\nimport { LuDialogRef } from '../model';\n\n@Component({\n\tselector: 'lu-dialog',\n\tstandalone: true,\n\ttemplate: '<ng-content></ng-content>',\n\tstyleUrl: './dialog.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'dialog-inside',\n\t},\n})\nexport class DialogComponent implements AfterViewInit {\n\tpublic readonly dialogRef = inject<LuDialogRef>(LuDialogRef);\n\n\t#htmlElement = inject<ElementRef<HTMLElement>>(ElementRef).nativeElement;\n\n\tclose(): void {\n\t\tthis.dialogRef.close();\n\t}\n\n\tdismiss(): void {\n\t\tthis.dialogRef.dismiss();\n\t}\n\n\tngAfterViewInit(): void {\n\t\tif (this.dialogRef.config.autoFocus === 'first-input' && !this.dialogRef.config.cdkConfigOverride?.autoFocus) {\n\t\t\tconst focusable: HTMLElement =\n\t\t\t\tthis.#htmlElement.querySelector('.luDialog-autofocus .luNativeInput') || this.#htmlElement.querySelector('.luDialog-autofocus') || this.#htmlElement.querySelector('.luNativeInput');\n\t\t\tfocusable?.focus();\n\t\t}\n\t}\n}\n","import { Directive, HostListener, inject } from '@angular/core';\nimport { LuDialogRef } from '../model';\n\n@Directive({\n\tselector: '[luDialogClose]',\n\tstandalone: true,\n})\nexport class DialogCloseDirective {\n\t#ref = inject<LuDialogRef>(LuDialogRef);\n\n\t@HostListener('click')\n\tclose(): void {\n\t\tthis.#ref.close();\n\t}\n}\n","import { Directive, HostListener, inject } from '@angular/core';\nimport { LuDialogRef } from '../model';\n\n@Directive({\n\tselector: '[luDialogDismiss]',\n\tstandalone: true,\n})\nexport class DialogDismissDirective {\n\t#ref = inject<LuDialogRef>(LuDialogRef);\n\n\t@HostListener('click')\n\tclose(): void {\n\t\tthis.#ref.dismiss();\n\t}\n}\n","import { Directive, HostListener, inject, Input, TemplateRef } from '@angular/core';\nimport { LuDialogService } from '../dialog.service';\nimport { LuDialogConfig } from '../model';\nimport { provideLuDialog } from '../dialog.providers';\n\n@Directive({\n\tselector: '[luDialogOpen]',\n\tstandalone: true,\n\tproviders: [provideLuDialog()],\n})\nexport class DialogOpenDirective {\n\t#dialogService = inject(LuDialogService);\n\n\t@Input({\n\t\trequired: true,\n\t\talias: 'luDialogOpen',\n\t})\n\tdialog: TemplateRef<void>;\n\n\t@Input()\n\tluDialogConfig: LuDialogConfig<unknown>;\n\n\t@HostListener('click')\n\tclick(): void {\n\t\tthis.#dialogService.open({\n\t\t\t...this.luDialogConfig,\n\t\t\tcontent: this.dialog,\n\t\t});\n\t}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { NgIf } from '@angular/common';
1
+ import { NgIf, NgClass } from '@angular/common';
2
2
  import * as i0 from '@angular/core';
3
3
  import { Component, ChangeDetectionStrategy, ViewEncapsulation, Input, booleanAttribute } from '@angular/core';
4
4
  import { PortalDirective } from '@lucca-front/ng/core';
@@ -71,12 +71,17 @@ class EmptyStateSectionComponent {
71
71
  this.center = false;
72
72
  this.hx = 3;
73
73
  }
74
+ get emptyStateClasses() {
75
+ return {
76
+ [`palette-${this.palette}`]: !!this.palette,
77
+ };
78
+ }
74
79
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: EmptyStateSectionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
75
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.0.1", type: EmptyStateSectionComponent, isStandalone: true, selector: "lu-empty-state-section", inputs: { icon: "icon", palette: "palette", center: ["center", "center", booleanAttribute], title: "title", description: "description", hx: "hx" }, ngImport: i0, template: "<section class=\"emptyState\" [class.mod-center]=\"center\" [attr.role]=\"title ? null : 'presentation'\">\n\t<div class=\"emptyState-container\">\n\t\t<div class=\"emptyState-content\">\n\t\t\t<div *ngIf=\"icon\" class=\"emptyState-content-icon palette-{{palette}}\" aria-hidden=\"true\" [innerHtml]=\"icon | luSafeExternalSvg\"></div>\n\t\t\t<div class=\"emptyState-content-text\">\n\t\t\t\t<div role=\"heading\" [attr.aria-level]=\"hx\" class=\"emptyState-content-heading\" *ngIf=\"title\">{{ title }}</div>\n\t\t\t\t<p class=\"emptyState-content-description\" *ngIf=\"description\">\n\t\t\t\t\t<ng-container *luPortal=\"description\"></ng-container>\n\t\t\t\t</p>\n\t\t\t\t<div class=\"emptyState-actions\">\n\t\t\t\t\t<ng-content></ng-content>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</section>\n", styles: [".emptyState{--components-container-max-width: 100rem;--components-container-padding: 3.5rem;--components-emptyState-background-color: var(--pr-t-elevation-surface-default);--components-emptyState-max-width: var(--components-container-max-width);--components-emptyState-illustration-top-right-offset-left: min( calc(100% + 5rem) , calc(var(--components-emptyState-max-width) - 8.5rem));--components-emptyState-illustration-top-right-offset-left-S: min( calc(100% + 3.5rem) , calc(var(--components-emptyState-max-width) - 8.5rem) );--background-left-01: url(https://cdn.lucca.fr/lucca-front/assets/empty-states/poplee/bubbles-bottom-left-01.svg);--foreground-left-01: url(https://cdn.lucca.fr/lucca-front/assets/empty-states/poplee/core-hr-01.svg);--background-right-01: url(https://cdn.lucca.fr/lucca-front/assets/empty-states/poplee/bubbles-top-right-01.svg);--foreground-right-01: url(https://cdn.lucca.fr/lucca-front/assets/empty-states/generic/coffee-01.svg);--components-emptyState-illustration-background-bottom-left: var(--background-left-01);--components-emptyState-illustration-foreground-bottom-left: var(--foreground-left-01);--components-emptyState-illustration-background-top-right: var(--background-right-01);--components-emptyState-illustration-foreground-top-right: var(--foreground-right-01);display:flex;flex-direction:column;flex-grow:1;padding:var(--pr-t-spacings-200)}.emptyState-container{align-items:center;display:flex;flex-grow:1;justify-content:center;max-width:var(--components-emptyState-max-width);padding:0;width:100%}.emptyState-content{border-radius:var(--commons-borderRadius-L);max-width:100%;padding:var(--pr-t-spacings-50);width:calc(25rem + var(--pr-t-spacings-50) * 2)}.emptyState-content-icon{--components-emptyState-icon-background-color: var(--palettes-100, var(--palettes-product-100));--components-emptyState-icon-action-color: var(--palettes-600, var(--palettes-brand-600))}.emptyState-content-text{padding:0 var(--pr-t-spacings-50)}.emptyState-content-heading{margin-top:0;color:var(--palettes-neutral-900);margin-bottom:var(--pr-t-spacings-200);text-rendering:geometricPrecision;text-wrap:pretty;font-weight:var(--components-title-weight, 600);font-size:var(--sizes-fontSize);line-height:var(--sizes-lineHeight);padding-top:var(--sizes-verticalPadding);padding-bottom:var(--sizes-verticalPadding);--sizes-verticalPadding: var(--sizes-L-verticalPadding);--sizes-fontSize: var(--sizes-L-fontSize);--sizes-lineHeight: var(--sizes-L-lineHeight);--components-title-weight: 700;margin-bottom:0}.emptyState-content-description{margin:0}.emptyState-actions{display:flex;flex-wrap:wrap;margin-top:var(--pr-t-spacings-200);gap:var(--pr-t-spacings-100)}.emptyState-actions .button{margin:0}.emptyState.mod-page{background-image:var(--components-emptyState-illustration-foreground-bottom-left),var(--components-emptyState-illustration-background-bottom-left),var(--components-emptyState-illustration-foreground-top-right),var(--components-emptyState-illustration-background-top-right);background-repeat:no-repeat;background-position:bottom left,bottom left,top left var(--components-emptyState-illustration-top-right-offset-left),top left var(--components-emptyState-illustration-top-right-offset-left)}@media not all and (min-width: 50em){.emptyState.mod-page{background-position:bottom left,bottom left,top left var(--components-emptyState-illustration-top-right-offset-left-S),top left var(--components-emptyState-illustration-top-right-offset-left-S);background-size:auto 10.875rem}}.emptyState.mod-page .emptyState-content{background-color:var(--components-emptyState-background-color);box-shadow:0 0 8px 4px var(--components-emptyState-background-color)}.emptyState.mod-page .emptyState-content-heading{--sizes-verticalPadding: var(--sizes-XXL-verticalPadding);--sizes-fontSize: var(--sizes-XXL-fontSize);--sizes-lineHeight: var(--sizes-XXL-lineHeight);--components-title-weight: 900}@media not all and (min-width: 30em){.emptyState.mod-page .emptyState-content-heading{--sizes-verticalPadding: var(--sizes-XL-verticalPadding);--sizes-fontSize: var(--sizes-XL-fontSize);--sizes-lineHeight: var(--sizes-XL-lineHeight);--components-title-weight: 700}}@media not all and (min-width: 30em){.emptyState.mod-page .emptyState-actions .button{flex-basis:100%}}.emptyState.mod-center{text-align:center}.emptyState.mod-center .emptyState-actions{justify-content:center}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: LuSafeExternalSvgPipe, name: "luSafeExternalSvg" }, { kind: "directive", type: PortalDirective, selector: "[luPortal]", inputs: ["luPortal", "luPortalContext"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
80
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.0.1", type: EmptyStateSectionComponent, isStandalone: true, selector: "lu-empty-state-section", inputs: { icon: "icon", palette: "palette", center: ["center", "center", booleanAttribute], title: "title", description: "description", hx: "hx" }, ngImport: i0, template: "<section class=\"emptyState\" [class.mod-center]=\"center\" [attr.role]=\"title ? null : 'presentation'\">\n\t<div class=\"emptyState-container\">\n\t\t<div class=\"emptyState-content\">\n\t\t\t<div\n\t\t\t\t*ngIf=\"icon\"\n\t\t\t\tclass=\"emptyState-content-icon\"\n\t\t\t\t[ngClass]=\"emptyStateClasses\"\n\t\t\t\taria-hidden=\"true\"\n\t\t\t\t[innerHtml]=\"icon | luSafeExternalSvg\"\n\t\t\t></div>\n\t\t\t<div class=\"emptyState-content-text\">\n\t\t\t\t<div role=\"heading\" [attr.aria-level]=\"hx\" class=\"emptyState-content-heading\" *ngIf=\"title\">{{ title }}</div>\n\t\t\t\t<p class=\"emptyState-content-description\" *ngIf=\"description\">\n\t\t\t\t\t<ng-container *luPortal=\"description\"></ng-container>\n\t\t\t\t</p>\n\t\t\t\t<div class=\"emptyState-actions\">\n\t\t\t\t\t<ng-content></ng-content>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</section>\n", styles: [".emptyState{--components-container-max-width: 100rem;--components-container-padding: 3.5rem;--components-emptyState-background-color: var(--pr-t-elevation-surface-default);--components-emptyState-max-width: var(--components-container-max-width);--components-emptyState-illustration-top-right-offset-left: min( calc(100% + 5rem) , calc(var(--components-emptyState-max-width) - 8.5rem));--components-emptyState-illustration-top-right-offset-left-S: min( calc(100% + 3.5rem) , calc(var(--components-emptyState-max-width) - 8.5rem) );--background-left-01: url(https://cdn.lucca.fr/lucca-front/assets/empty-states/poplee/bubbles-bottom-left-01.svg);--foreground-left-01: url(https://cdn.lucca.fr/lucca-front/assets/empty-states/poplee/core-hr-01.svg);--background-right-01: url(https://cdn.lucca.fr/lucca-front/assets/empty-states/poplee/bubbles-top-right-01.svg);--foreground-right-01: url(https://cdn.lucca.fr/lucca-front/assets/empty-states/generic/coffee-01.svg);--components-emptyState-illustration-background-bottom-left: var(--background-left-01);--components-emptyState-illustration-foreground-bottom-left: var(--foreground-left-01);--components-emptyState-illustration-background-top-right: var(--background-right-01);--components-emptyState-illustration-foreground-top-right: var(--foreground-right-01);display:flex;flex-direction:column;flex-grow:1;padding:var(--pr-t-spacings-200)}.emptyState-container{align-items:center;display:flex;flex-grow:1;justify-content:center;max-width:var(--components-emptyState-max-width);padding:0;width:100%}.emptyState-content{border-radius:var(--commons-borderRadius-L);max-width:100%;padding:var(--pr-t-spacings-50);width:calc(25rem + var(--pr-t-spacings-50) * 2)}.emptyState-content-icon{--components-emptyState-icon-background-color: var(--palettes-100, var(--palettes-product-100));--components-emptyState-icon-action-color: var(--palettes-600, var(--palettes-brand-600))}.emptyState-content-text{padding:0 var(--pr-t-spacings-50)}.emptyState-content-heading{margin-top:0;color:var(--palettes-neutral-900);margin-bottom:var(--pr-t-spacings-200);text-rendering:geometricPrecision;text-wrap:pretty;font-weight:var(--components-title-weight, 600);font-size:var(--sizes-fontSize);line-height:var(--sizes-lineHeight);padding-top:var(--sizes-verticalPadding);padding-bottom:var(--sizes-verticalPadding);--sizes-verticalPadding: var(--sizes-L-verticalPadding);--sizes-fontSize: var(--sizes-L-fontSize);--sizes-lineHeight: var(--sizes-L-lineHeight);--components-title-weight: 700;margin-bottom:0}.emptyState-content-description{margin:0}.emptyState-actions{display:flex;flex-wrap:wrap;margin-top:var(--pr-t-spacings-200);gap:var(--pr-t-spacings-100)}.emptyState-actions .button{margin:0}.emptyState.mod-page{background-image:var(--components-emptyState-illustration-foreground-bottom-left),var(--components-emptyState-illustration-background-bottom-left),var(--components-emptyState-illustration-foreground-top-right),var(--components-emptyState-illustration-background-top-right);background-repeat:no-repeat;background-position:bottom left,bottom left,top left var(--components-emptyState-illustration-top-right-offset-left),top left var(--components-emptyState-illustration-top-right-offset-left)}@media not all and (min-width: 50em){.emptyState.mod-page{background-position:bottom left,bottom left,top left var(--components-emptyState-illustration-top-right-offset-left-S),top left var(--components-emptyState-illustration-top-right-offset-left-S);background-size:auto 10.875rem}}.emptyState.mod-page .emptyState-content{background-color:var(--components-emptyState-background-color);box-shadow:0 0 8px 4px var(--components-emptyState-background-color)}.emptyState.mod-page .emptyState-content-heading{--sizes-verticalPadding: var(--sizes-XXL-verticalPadding);--sizes-fontSize: var(--sizes-XXL-fontSize);--sizes-lineHeight: var(--sizes-XXL-lineHeight);--components-title-weight: 900}@media not all and (min-width: 30em){.emptyState.mod-page .emptyState-content-heading{--sizes-verticalPadding: var(--sizes-XL-verticalPadding);--sizes-fontSize: var(--sizes-XL-fontSize);--sizes-lineHeight: var(--sizes-XL-lineHeight);--components-title-weight: 700}}@media not all and (min-width: 30em){.emptyState.mod-page .emptyState-actions .button{flex-basis:100%}}.emptyState.mod-center{text-align:center}.emptyState.mod-center .emptyState-actions{justify-content:center}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: LuSafeExternalSvgPipe, name: "luSafeExternalSvg" }, { kind: "directive", type: PortalDirective, selector: "[luPortal]", inputs: ["luPortal", "luPortalContext"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
76
81
  }
77
82
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: EmptyStateSectionComponent, decorators: [{
78
83
  type: Component,
79
- args: [{ selector: 'lu-empty-state-section', standalone: true, imports: [NgIf, LuSafeExternalSvgPipe, PortalDirective], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<section class=\"emptyState\" [class.mod-center]=\"center\" [attr.role]=\"title ? null : 'presentation'\">\n\t<div class=\"emptyState-container\">\n\t\t<div class=\"emptyState-content\">\n\t\t\t<div *ngIf=\"icon\" class=\"emptyState-content-icon palette-{{palette}}\" aria-hidden=\"true\" [innerHtml]=\"icon | luSafeExternalSvg\"></div>\n\t\t\t<div class=\"emptyState-content-text\">\n\t\t\t\t<div role=\"heading\" [attr.aria-level]=\"hx\" class=\"emptyState-content-heading\" *ngIf=\"title\">{{ title }}</div>\n\t\t\t\t<p class=\"emptyState-content-description\" *ngIf=\"description\">\n\t\t\t\t\t<ng-container *luPortal=\"description\"></ng-container>\n\t\t\t\t</p>\n\t\t\t\t<div class=\"emptyState-actions\">\n\t\t\t\t\t<ng-content></ng-content>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</section>\n", styles: [".emptyState{--components-container-max-width: 100rem;--components-container-padding: 3.5rem;--components-emptyState-background-color: var(--pr-t-elevation-surface-default);--components-emptyState-max-width: var(--components-container-max-width);--components-emptyState-illustration-top-right-offset-left: min( calc(100% + 5rem) , calc(var(--components-emptyState-max-width) - 8.5rem));--components-emptyState-illustration-top-right-offset-left-S: min( calc(100% + 3.5rem) , calc(var(--components-emptyState-max-width) - 8.5rem) );--background-left-01: url(https://cdn.lucca.fr/lucca-front/assets/empty-states/poplee/bubbles-bottom-left-01.svg);--foreground-left-01: url(https://cdn.lucca.fr/lucca-front/assets/empty-states/poplee/core-hr-01.svg);--background-right-01: url(https://cdn.lucca.fr/lucca-front/assets/empty-states/poplee/bubbles-top-right-01.svg);--foreground-right-01: url(https://cdn.lucca.fr/lucca-front/assets/empty-states/generic/coffee-01.svg);--components-emptyState-illustration-background-bottom-left: var(--background-left-01);--components-emptyState-illustration-foreground-bottom-left: var(--foreground-left-01);--components-emptyState-illustration-background-top-right: var(--background-right-01);--components-emptyState-illustration-foreground-top-right: var(--foreground-right-01);display:flex;flex-direction:column;flex-grow:1;padding:var(--pr-t-spacings-200)}.emptyState-container{align-items:center;display:flex;flex-grow:1;justify-content:center;max-width:var(--components-emptyState-max-width);padding:0;width:100%}.emptyState-content{border-radius:var(--commons-borderRadius-L);max-width:100%;padding:var(--pr-t-spacings-50);width:calc(25rem + var(--pr-t-spacings-50) * 2)}.emptyState-content-icon{--components-emptyState-icon-background-color: var(--palettes-100, var(--palettes-product-100));--components-emptyState-icon-action-color: var(--palettes-600, var(--palettes-brand-600))}.emptyState-content-text{padding:0 var(--pr-t-spacings-50)}.emptyState-content-heading{margin-top:0;color:var(--palettes-neutral-900);margin-bottom:var(--pr-t-spacings-200);text-rendering:geometricPrecision;text-wrap:pretty;font-weight:var(--components-title-weight, 600);font-size:var(--sizes-fontSize);line-height:var(--sizes-lineHeight);padding-top:var(--sizes-verticalPadding);padding-bottom:var(--sizes-verticalPadding);--sizes-verticalPadding: var(--sizes-L-verticalPadding);--sizes-fontSize: var(--sizes-L-fontSize);--sizes-lineHeight: var(--sizes-L-lineHeight);--components-title-weight: 700;margin-bottom:0}.emptyState-content-description{margin:0}.emptyState-actions{display:flex;flex-wrap:wrap;margin-top:var(--pr-t-spacings-200);gap:var(--pr-t-spacings-100)}.emptyState-actions .button{margin:0}.emptyState.mod-page{background-image:var(--components-emptyState-illustration-foreground-bottom-left),var(--components-emptyState-illustration-background-bottom-left),var(--components-emptyState-illustration-foreground-top-right),var(--components-emptyState-illustration-background-top-right);background-repeat:no-repeat;background-position:bottom left,bottom left,top left var(--components-emptyState-illustration-top-right-offset-left),top left var(--components-emptyState-illustration-top-right-offset-left)}@media not all and (min-width: 50em){.emptyState.mod-page{background-position:bottom left,bottom left,top left var(--components-emptyState-illustration-top-right-offset-left-S),top left var(--components-emptyState-illustration-top-right-offset-left-S);background-size:auto 10.875rem}}.emptyState.mod-page .emptyState-content{background-color:var(--components-emptyState-background-color);box-shadow:0 0 8px 4px var(--components-emptyState-background-color)}.emptyState.mod-page .emptyState-content-heading{--sizes-verticalPadding: var(--sizes-XXL-verticalPadding);--sizes-fontSize: var(--sizes-XXL-fontSize);--sizes-lineHeight: var(--sizes-XXL-lineHeight);--components-title-weight: 900}@media not all and (min-width: 30em){.emptyState.mod-page .emptyState-content-heading{--sizes-verticalPadding: var(--sizes-XL-verticalPadding);--sizes-fontSize: var(--sizes-XL-fontSize);--sizes-lineHeight: var(--sizes-XL-lineHeight);--components-title-weight: 700}}@media not all and (min-width: 30em){.emptyState.mod-page .emptyState-actions .button{flex-basis:100%}}.emptyState.mod-center{text-align:center}.emptyState.mod-center .emptyState-actions{justify-content:center}\n"] }]
84
+ args: [{ selector: 'lu-empty-state-section', standalone: true, imports: [NgClass, NgIf, LuSafeExternalSvgPipe, PortalDirective], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<section class=\"emptyState\" [class.mod-center]=\"center\" [attr.role]=\"title ? null : 'presentation'\">\n\t<div class=\"emptyState-container\">\n\t\t<div class=\"emptyState-content\">\n\t\t\t<div\n\t\t\t\t*ngIf=\"icon\"\n\t\t\t\tclass=\"emptyState-content-icon\"\n\t\t\t\t[ngClass]=\"emptyStateClasses\"\n\t\t\t\taria-hidden=\"true\"\n\t\t\t\t[innerHtml]=\"icon | luSafeExternalSvg\"\n\t\t\t></div>\n\t\t\t<div class=\"emptyState-content-text\">\n\t\t\t\t<div role=\"heading\" [attr.aria-level]=\"hx\" class=\"emptyState-content-heading\" *ngIf=\"title\">{{ title }}</div>\n\t\t\t\t<p class=\"emptyState-content-description\" *ngIf=\"description\">\n\t\t\t\t\t<ng-container *luPortal=\"description\"></ng-container>\n\t\t\t\t</p>\n\t\t\t\t<div class=\"emptyState-actions\">\n\t\t\t\t\t<ng-content></ng-content>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</section>\n", styles: [".emptyState{--components-container-max-width: 100rem;--components-container-padding: 3.5rem;--components-emptyState-background-color: var(--pr-t-elevation-surface-default);--components-emptyState-max-width: var(--components-container-max-width);--components-emptyState-illustration-top-right-offset-left: min( calc(100% + 5rem) , calc(var(--components-emptyState-max-width) - 8.5rem));--components-emptyState-illustration-top-right-offset-left-S: min( calc(100% + 3.5rem) , calc(var(--components-emptyState-max-width) - 8.5rem) );--background-left-01: url(https://cdn.lucca.fr/lucca-front/assets/empty-states/poplee/bubbles-bottom-left-01.svg);--foreground-left-01: url(https://cdn.lucca.fr/lucca-front/assets/empty-states/poplee/core-hr-01.svg);--background-right-01: url(https://cdn.lucca.fr/lucca-front/assets/empty-states/poplee/bubbles-top-right-01.svg);--foreground-right-01: url(https://cdn.lucca.fr/lucca-front/assets/empty-states/generic/coffee-01.svg);--components-emptyState-illustration-background-bottom-left: var(--background-left-01);--components-emptyState-illustration-foreground-bottom-left: var(--foreground-left-01);--components-emptyState-illustration-background-top-right: var(--background-right-01);--components-emptyState-illustration-foreground-top-right: var(--foreground-right-01);display:flex;flex-direction:column;flex-grow:1;padding:var(--pr-t-spacings-200)}.emptyState-container{align-items:center;display:flex;flex-grow:1;justify-content:center;max-width:var(--components-emptyState-max-width);padding:0;width:100%}.emptyState-content{border-radius:var(--commons-borderRadius-L);max-width:100%;padding:var(--pr-t-spacings-50);width:calc(25rem + var(--pr-t-spacings-50) * 2)}.emptyState-content-icon{--components-emptyState-icon-background-color: var(--palettes-100, var(--palettes-product-100));--components-emptyState-icon-action-color: var(--palettes-600, var(--palettes-brand-600))}.emptyState-content-text{padding:0 var(--pr-t-spacings-50)}.emptyState-content-heading{margin-top:0;color:var(--palettes-neutral-900);margin-bottom:var(--pr-t-spacings-200);text-rendering:geometricPrecision;text-wrap:pretty;font-weight:var(--components-title-weight, 600);font-size:var(--sizes-fontSize);line-height:var(--sizes-lineHeight);padding-top:var(--sizes-verticalPadding);padding-bottom:var(--sizes-verticalPadding);--sizes-verticalPadding: var(--sizes-L-verticalPadding);--sizes-fontSize: var(--sizes-L-fontSize);--sizes-lineHeight: var(--sizes-L-lineHeight);--components-title-weight: 700;margin-bottom:0}.emptyState-content-description{margin:0}.emptyState-actions{display:flex;flex-wrap:wrap;margin-top:var(--pr-t-spacings-200);gap:var(--pr-t-spacings-100)}.emptyState-actions .button{margin:0}.emptyState.mod-page{background-image:var(--components-emptyState-illustration-foreground-bottom-left),var(--components-emptyState-illustration-background-bottom-left),var(--components-emptyState-illustration-foreground-top-right),var(--components-emptyState-illustration-background-top-right);background-repeat:no-repeat;background-position:bottom left,bottom left,top left var(--components-emptyState-illustration-top-right-offset-left),top left var(--components-emptyState-illustration-top-right-offset-left)}@media not all and (min-width: 50em){.emptyState.mod-page{background-position:bottom left,bottom left,top left var(--components-emptyState-illustration-top-right-offset-left-S),top left var(--components-emptyState-illustration-top-right-offset-left-S);background-size:auto 10.875rem}}.emptyState.mod-page .emptyState-content{background-color:var(--components-emptyState-background-color);box-shadow:0 0 8px 4px var(--components-emptyState-background-color)}.emptyState.mod-page .emptyState-content-heading{--sizes-verticalPadding: var(--sizes-XXL-verticalPadding);--sizes-fontSize: var(--sizes-XXL-fontSize);--sizes-lineHeight: var(--sizes-XXL-lineHeight);--components-title-weight: 900}@media not all and (min-width: 30em){.emptyState.mod-page .emptyState-content-heading{--sizes-verticalPadding: var(--sizes-XL-verticalPadding);--sizes-fontSize: var(--sizes-XL-fontSize);--sizes-lineHeight: var(--sizes-XL-lineHeight);--components-title-weight: 700}}@media not all and (min-width: 30em){.emptyState.mod-page .emptyState-actions .button{flex-basis:100%}}.emptyState.mod-center{text-align:center}.emptyState.mod-center .emptyState-actions{justify-content:center}\n"] }]
80
85
  }], propDecorators: { icon: [{
81
86
  type: Input
82
87
  }], palette: [{
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-empty-state.mjs","sources":["../../../packages/ng/empty-state/empty-state-page/empty-state-page.component.ts","../../../packages/ng/empty-state/empty-state-page/empty-state-page.component.html","../../../packages/ng/empty-state/empty-state-section/empty-state-section.component.ts","../../../packages/ng/empty-state/empty-state-section/empty-state-section.component.html","../../../packages/ng/empty-state/lucca-front-ng-empty-state.ts"],"sourcesContent":["import { NgIf } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Input, ViewEncapsulation } from '@angular/core';\nimport { PortalContent, PortalDirective } from '@lucca-front/ng/core';\nimport { LuSafeExternalSvgPipe } from '@lucca-front/ng/safe-content';\n\n@Component({\n\tselector: 'lu-empty-state-page',\n\tstandalone: true,\n\timports: [NgIf, LuSafeExternalSvgPipe, PortalDirective],\n\ttemplateUrl: './empty-state-page.component.html',\n\tstyleUrl: './empty-state-page.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'emptyState-wrapper',\n\t},\n})\nexport class EmptyStatePageComponent {\n\t@Input()\n\n\t/**\n\t * Icon image (URL)\n\t */\n\ticon = null;\n\n\t/**\n\t * Top right background image (URL)\n\t */\n\t@Input()\n\ttopRightBackground = 'https://cdn.lucca.fr/lucca-front/assets/empty-states/poplee/bubbles-top-right-01.svg';\n\n\t/**\n\t * Top right foreground image (URL)\n\t */\n\t@Input()\n\ttopRightForeground = 'https://cdn.lucca.fr/lucca-front/assets/empty-states/generic/coffee-01.svg';\n\n\t/**\n\t * Bottom left background image (URL)\n\t */\n\t@Input()\n\tbottomLeftBackground = 'https://cdn.lucca.fr/lucca-front/assets/empty-states/poplee/bubbles-bottom-left-01.svg';\n\n\t/**\n\t * Bottom left foreground image (URL)\n\t */\n\t@Input()\n\tbottomLeftForeground = 'https://cdn.lucca.fr/lucca-front/assets/empty-states/poplee/core-hr-01.svg';\n\n\t/**\n\t * Background color for content (text)\n\t */\n\t@Input()\n\tcontentBackgroundColor = 'var(--pr-t-elevation-surface-default)';\n\n\t@Input()\n\ttitle: string;\n\n\t@Input()\n\tdescription: PortalContent;\n\n\t@Input()\n\thx: 1 | 2 | 3 | 4 | 5 | 6 = 1;\n}\n","<section\n\tclass=\"emptyState mod-page\"\n\t[attr.role]=\"title ? null : 'presentation'\"\n\t[style.--components-emptyState-background-color]=\"contentBackgroundColor\"\n\tstyle.--components-emptyState-illustration-background-bottom-left=\"url({{bottomLeftBackground}})\"\n\tstyle.--components-emptyState-illustration-foreground-bottom-left=\"url({{bottomLeftForeground}})\"\n\tstyle.--components-emptyState-illustration-background-top-right=\"url({{topRightBackground}})\"\n\tstyle.--components-emptyState-illustration-foreground-top-right=\"url({{topRightForeground}})\"\n>\n\t<div class=\"emptyState-container\">\n\t\t<div class=\"emptyState-content\">\n\t\t\t<div *ngIf=\"icon\" class=\"emptyState-content-icon\" aria-hidden=\"true\" [innerHtml]=\"icon | luSafeExternalSvg\"></div>\n\t\t\t<div class=\"emptyState-content-text\">\n\t\t\t\t<div role=\"heading\" [attr.aria-level]=\"hx\" class=\"emptyState-content-heading\" *ngIf=\"title\">{{ title }}</div>\n\t\t\t\t<p class=\"emptyState-content-description\" *ngIf=\"description\">\n\t\t\t\t\t<ng-container *luPortal=\"description\"></ng-container>\n\t\t\t\t</p>\n\t\t\t\t<div class=\"emptyState-actions\">\n\t\t\t\t\t<ng-content></ng-content>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</section>\n","import { NgIf } from '@angular/common';\nimport { booleanAttribute, ChangeDetectionStrategy, Component, Input, ViewEncapsulation } from '@angular/core';\nimport { Palette, PortalContent, PortalDirective } from '@lucca-front/ng/core';\nimport { LuSafeExternalSvgPipe } from '@lucca-front/ng/safe-content';\n\n@Component({\n\tselector: 'lu-empty-state-section',\n\tstandalone: true,\n\timports: [NgIf, LuSafeExternalSvgPipe, PortalDirective],\n\ttemplateUrl: './empty-state-section.component.html',\n\tstyleUrl: './empty-state-section.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n})\nexport class EmptyStateSectionComponent {\n\t/**\n\t * Icon URL\n\t */\n\t@Input()\n\ticon = 'https://cdn.lucca.fr/lucca-front/assets/empty-states/icons/iconBanknote.svg';\n\n\t@Input()\n\tpalette: Palette = 'none';\n\n\t@Input({\n\t\ttransform: booleanAttribute,\n\t})\n\tcenter = false;\n\n\t@Input()\n\ttitle: string;\n\n\t@Input()\n\tdescription: PortalContent;\n\n\t@Input()\n\thx: 1 | 2 | 3 | 4 | 5 | 6 = 3;\n}\n","<section class=\"emptyState\" [class.mod-center]=\"center\" [attr.role]=\"title ? null : 'presentation'\">\n\t<div class=\"emptyState-container\">\n\t\t<div class=\"emptyState-content\">\n\t\t\t<div *ngIf=\"icon\" class=\"emptyState-content-icon palette-{{palette}}\" aria-hidden=\"true\" [innerHtml]=\"icon | luSafeExternalSvg\"></div>\n\t\t\t<div class=\"emptyState-content-text\">\n\t\t\t\t<div role=\"heading\" [attr.aria-level]=\"hx\" class=\"emptyState-content-heading\" *ngIf=\"title\">{{ title }}</div>\n\t\t\t\t<p class=\"emptyState-content-description\" *ngIf=\"description\">\n\t\t\t\t\t<ng-container *luPortal=\"description\"></ng-container>\n\t\t\t\t</p>\n\t\t\t\t<div class=\"emptyState-actions\">\n\t\t\t\t\t<ng-content></ng-content>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</section>\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-empty-state.mjs","sources":["../../../packages/ng/empty-state/empty-state-page/empty-state-page.component.ts","../../../packages/ng/empty-state/empty-state-page/empty-state-page.component.html","../../../packages/ng/empty-state/empty-state-section/empty-state-section.component.ts","../../../packages/ng/empty-state/empty-state-section/empty-state-section.component.html","../../../packages/ng/empty-state/lucca-front-ng-empty-state.ts"],"sourcesContent":["import { NgIf } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Input, ViewEncapsulation } from '@angular/core';\nimport { PortalContent, PortalDirective } from '@lucca-front/ng/core';\nimport { LuSafeExternalSvgPipe } from '@lucca-front/ng/safe-content';\n\n@Component({\n\tselector: 'lu-empty-state-page',\n\tstandalone: true,\n\timports: [NgIf, LuSafeExternalSvgPipe, PortalDirective],\n\ttemplateUrl: './empty-state-page.component.html',\n\tstyleUrl: './empty-state-page.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'emptyState-wrapper',\n\t},\n})\nexport class EmptyStatePageComponent {\n\t@Input()\n\n\t/**\n\t * Icon image (URL)\n\t */\n\ticon = null;\n\n\t/**\n\t * Top right background image (URL)\n\t */\n\t@Input()\n\ttopRightBackground = 'https://cdn.lucca.fr/lucca-front/assets/empty-states/poplee/bubbles-top-right-01.svg';\n\n\t/**\n\t * Top right foreground image (URL)\n\t */\n\t@Input()\n\ttopRightForeground = 'https://cdn.lucca.fr/lucca-front/assets/empty-states/generic/coffee-01.svg';\n\n\t/**\n\t * Bottom left background image (URL)\n\t */\n\t@Input()\n\tbottomLeftBackground = 'https://cdn.lucca.fr/lucca-front/assets/empty-states/poplee/bubbles-bottom-left-01.svg';\n\n\t/**\n\t * Bottom left foreground image (URL)\n\t */\n\t@Input()\n\tbottomLeftForeground = 'https://cdn.lucca.fr/lucca-front/assets/empty-states/poplee/core-hr-01.svg';\n\n\t/**\n\t * Background color for content (text)\n\t */\n\t@Input()\n\tcontentBackgroundColor = 'var(--pr-t-elevation-surface-default)';\n\n\t@Input()\n\ttitle: string;\n\n\t@Input()\n\tdescription: PortalContent;\n\n\t@Input()\n\thx: 1 | 2 | 3 | 4 | 5 | 6 = 1;\n}\n","<section\n\tclass=\"emptyState mod-page\"\n\t[attr.role]=\"title ? null : 'presentation'\"\n\t[style.--components-emptyState-background-color]=\"contentBackgroundColor\"\n\tstyle.--components-emptyState-illustration-background-bottom-left=\"url({{bottomLeftBackground}})\"\n\tstyle.--components-emptyState-illustration-foreground-bottom-left=\"url({{bottomLeftForeground}})\"\n\tstyle.--components-emptyState-illustration-background-top-right=\"url({{topRightBackground}})\"\n\tstyle.--components-emptyState-illustration-foreground-top-right=\"url({{topRightForeground}})\"\n>\n\t<div class=\"emptyState-container\">\n\t\t<div class=\"emptyState-content\">\n\t\t\t<div *ngIf=\"icon\" class=\"emptyState-content-icon\" aria-hidden=\"true\" [innerHtml]=\"icon | luSafeExternalSvg\"></div>\n\t\t\t<div class=\"emptyState-content-text\">\n\t\t\t\t<div role=\"heading\" [attr.aria-level]=\"hx\" class=\"emptyState-content-heading\" *ngIf=\"title\">{{ title }}</div>\n\t\t\t\t<p class=\"emptyState-content-description\" *ngIf=\"description\">\n\t\t\t\t\t<ng-container *luPortal=\"description\"></ng-container>\n\t\t\t\t</p>\n\t\t\t\t<div class=\"emptyState-actions\">\n\t\t\t\t\t<ng-content></ng-content>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</section>\n","import { NgClass, NgIf } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Input, ViewEncapsulation, booleanAttribute } from '@angular/core';\nimport { Palette, PortalContent, PortalDirective } from '@lucca-front/ng/core';\nimport { LuSafeExternalSvgPipe } from '@lucca-front/ng/safe-content';\n\n@Component({\n\tselector: 'lu-empty-state-section',\n\tstandalone: true,\n\timports: [NgClass, NgIf, LuSafeExternalSvgPipe, PortalDirective],\n\ttemplateUrl: './empty-state-section.component.html',\n\tstyleUrl: './empty-state-section.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n})\nexport class EmptyStateSectionComponent {\n\t/**\n\t * Icon URL\n\t */\n\t@Input()\n\ticon = 'https://cdn.lucca.fr/lucca-front/assets/empty-states/icons/iconBanknote.svg';\n\n\t@Input()\n\tpalette: Palette = 'none';\n\n\t@Input({\n\t\ttransform: booleanAttribute,\n\t})\n\tcenter = false;\n\n\t@Input()\n\ttitle: string;\n\n\t@Input()\n\tdescription: PortalContent;\n\n\t@Input()\n\thx: 1 | 2 | 3 | 4 | 5 | 6 = 3;\n\n\tget emptyStateClasses() {\n\t\treturn {\n\t\t\t[`palette-${this.palette}`]: !!this.palette,\n\t\t};\n\t}\n}\n","<section class=\"emptyState\" [class.mod-center]=\"center\" [attr.role]=\"title ? null : 'presentation'\">\n\t<div class=\"emptyState-container\">\n\t\t<div class=\"emptyState-content\">\n\t\t\t<div\n\t\t\t\t*ngIf=\"icon\"\n\t\t\t\tclass=\"emptyState-content-icon\"\n\t\t\t\t[ngClass]=\"emptyStateClasses\"\n\t\t\t\taria-hidden=\"true\"\n\t\t\t\t[innerHtml]=\"icon | luSafeExternalSvg\"\n\t\t\t></div>\n\t\t\t<div class=\"emptyState-content-text\">\n\t\t\t\t<div role=\"heading\" [attr.aria-level]=\"hx\" class=\"emptyState-content-heading\" *ngIf=\"title\">{{ title }}</div>\n\t\t\t\t<p class=\"emptyState-content-description\" *ngIf=\"description\">\n\t\t\t\t\t<ng-container *luPortal=\"description\"></ng-container>\n\t\t\t\t</p>\n\t\t\t\t<div class=\"emptyState-actions\">\n\t\t\t\t\t<ng-content></ng-content>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</section>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}