@lucca-front/ng 19.2.5 → 19.3.0-rc.2

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 (151) hide show
  1. package/breadcrumbs/breadcrumbs-link.directive.d.ts +7 -0
  2. package/breadcrumbs/breadcrumbs.component.d.ts +13 -0
  3. package/breadcrumbs/breadcrumbs.translate.d.ts +7 -0
  4. package/breadcrumbs/index.d.ts +5 -0
  5. package/breadcrumbs/public-api.d.ts +1 -0
  6. package/breadcrumbs/translations.d.ts +26 -0
  7. package/core-select/input/select-input.component.d.ts +3 -2
  8. package/core-select/user/user-option.component.d.ts +1 -0
  9. package/core-select/user/users.directive.d.ts +13 -3
  10. package/dialog/dialog-routing/dialog-routing.component.d.ts +3 -1
  11. package/dialog/dialog-routing/dialog-routing.models.d.ts +6 -2
  12. package/dialog/dialog-routing/dialog-routing.utils.d.ts +1 -0
  13. package/dialog/dialog-routing/outlet-component-instance.directive.d.ts +9 -0
  14. package/empty-state/empty-state-page/empty-state-page.component.d.ts +2 -1
  15. package/establishment/select/input/establishment-select-input.component.d.ts +1 -1
  16. package/fesm2022/lucca-front-ng-breadcrumbs.mjs +91 -0
  17. package/fesm2022/lucca-front-ng-breadcrumbs.mjs.map +1 -0
  18. package/fesm2022/lucca-front-ng-button.mjs +2 -2
  19. package/fesm2022/lucca-front-ng-button.mjs.map +1 -1
  20. package/fesm2022/lucca-front-ng-callout.mjs +4 -4
  21. package/fesm2022/lucca-front-ng-callout.mjs.map +1 -1
  22. package/fesm2022/lucca-front-ng-core-select-user.mjs +42 -11
  23. package/fesm2022/lucca-front-ng-core-select-user.mjs.map +1 -1
  24. package/fesm2022/lucca-front-ng-core-select.mjs +2 -2
  25. package/fesm2022/lucca-front-ng-core-select.mjs.map +1 -1
  26. package/fesm2022/lucca-front-ng-date2.mjs +9 -6
  27. package/fesm2022/lucca-front-ng-date2.mjs.map +1 -1
  28. package/fesm2022/lucca-front-ng-department.mjs.map +1 -1
  29. package/fesm2022/lucca-front-ng-dialog.mjs +77 -12
  30. package/fesm2022/lucca-front-ng-dialog.mjs.map +1 -1
  31. package/fesm2022/lucca-front-ng-divider.mjs +2 -2
  32. package/fesm2022/lucca-front-ng-divider.mjs.map +1 -1
  33. package/fesm2022/lucca-front-ng-dropdown.mjs +2 -3
  34. package/fesm2022/lucca-front-ng-dropdown.mjs.map +1 -1
  35. package/fesm2022/lucca-front-ng-empty-state.mjs +4 -2
  36. package/fesm2022/lucca-front-ng-empty-state.mjs.map +1 -1
  37. package/fesm2022/lucca-front-ng-establishment.mjs +1 -2
  38. package/fesm2022/lucca-front-ng-establishment.mjs.map +1 -1
  39. package/fesm2022/lucca-front-ng-filter-pills.mjs +4 -4
  40. package/fesm2022/lucca-front-ng-filter-pills.mjs.map +1 -1
  41. package/fesm2022/lucca-front-ng-footer.mjs +34 -0
  42. package/fesm2022/lucca-front-ng-footer.mjs.map +1 -0
  43. package/fesm2022/lucca-front-ng-form-field.mjs +2 -2
  44. package/fesm2022/lucca-front-ng-form-field.mjs.map +1 -1
  45. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs +1060 -0
  46. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs.map +1 -0
  47. package/fesm2022/lucca-front-ng-forms.mjs +5 -8
  48. package/fesm2022/lucca-front-ng-forms.mjs.map +1 -1
  49. package/fesm2022/lucca-front-ng-highlight-data.mjs +82 -0
  50. package/fesm2022/lucca-front-ng-highlight-data.mjs.map +1 -0
  51. package/fesm2022/lucca-front-ng-horizontal-navigation.mjs +60 -0
  52. package/fesm2022/lucca-front-ng-horizontal-navigation.mjs.map +1 -0
  53. package/fesm2022/lucca-front-ng-icon.mjs +2 -2
  54. package/fesm2022/lucca-front-ng-icon.mjs.map +1 -1
  55. package/fesm2022/lucca-front-ng-modal.mjs.map +1 -1
  56. package/fesm2022/lucca-front-ng-multi-select.mjs +4 -4
  57. package/fesm2022/lucca-front-ng-multi-select.mjs.map +1 -1
  58. package/fesm2022/lucca-front-ng-new-badge.mjs +2 -2
  59. package/fesm2022/lucca-front-ng-new-badge.mjs.map +1 -1
  60. package/fesm2022/lucca-front-ng-page-header.mjs +28 -0
  61. package/fesm2022/lucca-front-ng-page-header.mjs.map +1 -0
  62. package/fesm2022/lucca-front-ng-plg-push.mjs +2 -2
  63. package/fesm2022/lucca-front-ng-plg-push.mjs.map +1 -1
  64. package/fesm2022/lucca-front-ng-popover.mjs +0 -2
  65. package/fesm2022/lucca-front-ng-popover.mjs.map +1 -1
  66. package/fesm2022/lucca-front-ng-popover2.mjs +2 -2
  67. package/fesm2022/lucca-front-ng-popover2.mjs.map +1 -1
  68. package/fesm2022/lucca-front-ng-popup-employee.mjs +4 -8
  69. package/fesm2022/lucca-front-ng-popup-employee.mjs.map +1 -1
  70. package/fesm2022/lucca-front-ng-qualification.mjs +5 -37
  71. package/fesm2022/lucca-front-ng-qualification.mjs.map +1 -1
  72. package/fesm2022/lucca-front-ng-read-more.mjs +134 -0
  73. package/fesm2022/lucca-front-ng-read-more.mjs.map +1 -0
  74. package/fesm2022/lucca-front-ng-sidepanel.mjs +5 -21
  75. package/fesm2022/lucca-front-ng-sidepanel.mjs.map +1 -1
  76. package/fesm2022/lucca-front-ng-simple-select-api.mjs +2 -7
  77. package/fesm2022/lucca-front-ng-simple-select-api.mjs.map +1 -1
  78. package/fesm2022/lucca-front-ng-simple-select.mjs +2 -2
  79. package/fesm2022/lucca-front-ng-simple-select.mjs.map +1 -1
  80. package/fesm2022/lucca-front-ng-skeleton.mjs +10 -10
  81. package/fesm2022/lucca-front-ng-skeleton.mjs.map +1 -1
  82. package/fesm2022/lucca-front-ng-tag.mjs +2 -2
  83. package/fesm2022/lucca-front-ng-tag.mjs.map +1 -1
  84. package/footer/footer.component.d.ts +13 -0
  85. package/footer/index.d.ts +5 -0
  86. package/footer/public-api.d.ts +1 -0
  87. package/forms/rich-text-input/formatters/html-formatter.d.ts +8 -0
  88. package/forms/rich-text-input/formatters/index.d.ts +3 -0
  89. package/forms/rich-text-input/formatters/markdown-formatter.d.ts +11 -0
  90. package/forms/rich-text-input/formatters/rich-text-formatter.d.ts +7 -0
  91. package/forms/rich-text-input/index.d.ts +5 -0
  92. package/forms/rich-text-input/plugins/clear-format/clear-format.command.d.ts +3 -0
  93. package/forms/rich-text-input/plugins/clear-format/clear-format.component.d.ts +18 -0
  94. package/forms/rich-text-input/plugins/clear-format/index.d.ts +1 -0
  95. package/forms/rich-text-input/plugins/headings/headings.command.d.ts +4 -0
  96. package/forms/rich-text-input/plugins/headings/headings.component.d.ts +24 -0
  97. package/forms/rich-text-input/plugins/headings/index.d.ts +1 -0
  98. package/forms/rich-text-input/plugins/link/index.d.ts +1 -0
  99. package/forms/rich-text-input/plugins/link/link-dialog/index.d.ts +1 -0
  100. package/forms/rich-text-input/plugins/link/link-dialog/link-dialog.component.d.ts +14 -0
  101. package/forms/rich-text-input/plugins/link/link.command.d.ts +4 -0
  102. package/forms/rich-text-input/plugins/link/link.component.d.ts +20 -0
  103. package/forms/rich-text-input/plugins/list-format/index.d.ts +1 -0
  104. package/forms/rich-text-input/plugins/list-format/list-format.command.d.ts +5 -0
  105. package/forms/rich-text-input/plugins/list-format/list-format.component.d.ts +23 -0
  106. package/forms/rich-text-input/plugins/list-format/list-style-toolbar.component.d.ts +15 -0
  107. package/forms/rich-text-input/plugins/text-style/index.d.ts +2 -0
  108. package/forms/rich-text-input/plugins/text-style/text-style-toolbar.component.d.ts +11 -0
  109. package/forms/rich-text-input/plugins/text-style/text-style.command.d.ts +2 -0
  110. package/forms/rich-text-input/plugins/text-style/text-style.component.d.ts +22 -0
  111. package/forms/rich-text-input/plugins/toolbar/index.d.ts +1 -0
  112. package/forms/rich-text-input/plugins/toolbar/toolbar.component.d.ts +11 -0
  113. package/forms/rich-text-input/public-api.d.ts +8 -0
  114. package/forms/rich-text-input/rich-text-input.component.d.ts +36 -0
  115. package/forms/rich-text-input/rich-text-input.translate.d.ts +27 -0
  116. package/forms/rich-text-input/translations.d.ts +186 -0
  117. package/forms/rich-text-input/utils/index.d.ts +1 -0
  118. package/forms/rich-text-input/utils/lexical.utils.d.ts +18 -0
  119. package/forms/textarea-input/textarea-input.component.d.ts +2 -1
  120. package/highlight-data/highlight-data.component.d.ts +32 -0
  121. package/highlight-data/index.d.ts +5 -0
  122. package/highlight-data/public-api.d.ts +1 -0
  123. package/horizontal-navigation/horizontal-navigation-link.directive.d.ts +7 -0
  124. package/horizontal-navigation/horizontal-navigation.component.d.ts +14 -0
  125. package/horizontal-navigation/index.d.ts +5 -0
  126. package/horizontal-navigation/public-api.d.ts +2 -0
  127. package/modal/modal-config.model.d.ts +0 -4
  128. package/package.json +64 -27
  129. package/page-header/index.d.ts +5 -0
  130. package/page-header/page-header.component.d.ts +11 -0
  131. package/page-header/public-api.d.ts +1 -0
  132. package/popup-employee/card/panel/user-popover-panel.component.d.ts +1 -1
  133. package/qualification/qualification.module.d.ts +2 -2
  134. package/qualification/select/index.d.ts +0 -1
  135. package/qualification/select/input/index.d.ts +0 -1
  136. package/read-more/index.d.ts +5 -0
  137. package/read-more/public-api.d.ts +1 -0
  138. package/read-more/read-more.component.d.ts +26 -0
  139. package/read-more/read-more.translate.d.ts +8 -0
  140. package/read-more/translations.d.ts +34 -0
  141. package/schematics/action-icon/migration.js +1 -1
  142. package/schematics/lib/angular-component-ast.js +2 -2
  143. package/schematics/lib/angular-template.js +2 -2
  144. package/schematics/lib/scss-ast.js +0 -1
  145. package/schematics/lu-select/index.js +2 -2
  146. package/sidepanel/sidepanel.model.d.ts +2 -32
  147. package/sidepanel/sidepanel.service.d.ts +4 -4
  148. package/simple-select/api/public-api.d.ts +0 -1
  149. package/qualification/select/input/qualification-select-input.module.d.ts +0 -10
  150. package/qualification/select/qualification-select.module.d.ts +0 -10
  151. package/simple-select/api/api-v3.directive.d.ts +0 -5
@@ -0,0 +1,7 @@
1
+ import { TemplateRef } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class BreadcrumbsLinkDirective {
4
+ template: TemplateRef<any>;
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<BreadcrumbsLinkDirective, never>;
6
+ static ɵdir: i0.ɵɵDirectiveDeclaration<BreadcrumbsLinkDirective, "[luBreadcrumbsLink]", never, {}, {}, never, never, true, never>;
7
+ }
@@ -0,0 +1,13 @@
1
+ import { BreadcrumbsLinkDirective } from './breadcrumbs-link.directive';
2
+ import * as i0 from "@angular/core";
3
+ export declare class BreadcrumbsComponent {
4
+ intl: import("./breadcrumbs.translate").LuBreadcrumbsLabel;
5
+ disableCompact: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
6
+ links: import("@angular/core").Signal<readonly BreadcrumbsLinkDirective[]>;
7
+ isCompact: import("@angular/core").Signal<boolean>;
8
+ id: string;
9
+ get classCompact(): boolean;
10
+ get roleAttr(): string;
11
+ static ɵfac: i0.ɵɵFactoryDeclaration<BreadcrumbsComponent, never>;
12
+ static ɵcmp: i0.ɵɵComponentDeclaration<BreadcrumbsComponent, "lu-breadcrumbs", never, { "disableCompact": { "alias": "disableCompact"; "required": false; "isSignal": true; }; }, {}, ["links"], never, true, never>;
13
+ }
@@ -0,0 +1,7 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ import { LuTranslation } from '@lucca-front/ng/core';
3
+ export declare const LU_BREADCRUMBS_TRANSLATIONS: InjectionToken<LuTranslation<LuBreadcrumbsLabel>>;
4
+ export interface LuBreadcrumbsLabel {
5
+ breadcrumbs: string;
6
+ }
7
+ export declare const luBreadcrumbsTranslations: LuTranslation<LuBreadcrumbsLabel>;
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ /// <amd-module name="@lucca-front/ng/breadcrumbs" />
5
+ export * from './public-api';
@@ -0,0 +1 @@
1
+ export * from './breadcrumbs.component';
@@ -0,0 +1,26 @@
1
+ export declare const Translations: {
2
+ en: {
3
+ breadcrumbs: string;
4
+ };
5
+ de: {
6
+ breadcrumbs: string;
7
+ };
8
+ fr: {
9
+ breadcrumbs: string;
10
+ };
11
+ it: {
12
+ breadcrumbs: string;
13
+ };
14
+ nl: {
15
+ breadcrumbs: string;
16
+ };
17
+ 'nl-BE': {
18
+ breadcrumbs: string;
19
+ };
20
+ es: {
21
+ breadcrumbs: string;
22
+ };
23
+ pt: {
24
+ breadcrumbs: string;
25
+ };
26
+ };
@@ -40,6 +40,7 @@ export declare abstract class ALuSelectInputComponent<TOption, TValue> implement
40
40
  optionComparer: LuOptionComparer<TOption>;
41
41
  optionKey: (option: TOption) => unknown;
42
42
  noClueIcon: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
43
+ inputTabindex: import("@angular/core").InputSignal<number>;
43
44
  protected get isNoClueIconClass(): boolean;
44
45
  optionTpl: import("@angular/core").ModelSignal<Type<unknown> | TemplateRef<LuOptionContext<TOption>>>;
45
46
  valueTpl: import("@angular/core").ModelSignal<Type<unknown> | TemplateRef<LuOptionContext<TOption>>>;
@@ -81,7 +82,7 @@ export declare abstract class ALuSelectInputComponent<TOption, TValue> implement
81
82
  emitAddOption(): void;
82
83
  protected abstract buildPanelRef(): this['panelRef'];
83
84
  protected bindInputToPanelRefEvents(): void;
84
- protected focusInput(): void;
85
+ focusInput(): void;
85
86
  protected emptyClue(): void;
86
87
  closePanel(): void;
87
88
  writeValue(value: TValue): void;
@@ -93,6 +94,6 @@ export declare abstract class ALuSelectInputComponent<TOption, TValue> implement
93
94
  onFilterPillOpened(): void;
94
95
  onFilterPillClosed(): void;
95
96
  static ɵfac: i0.ɵɵFactoryDeclaration<ALuSelectInputComponent<any, any>, never>;
96
- static ɵdir: i0.ɵɵDirectiveDeclaration<ALuSelectInputComponent<any, any>, never, never, { "placeholder": { "alias": "placeholder"; "required": false; }; "clearable": { "alias": "clearable"; "required": false; }; "addOptionLabel": { "alias": "addOptionLabel"; "required": false; }; "addOptionStrategy": { "alias": "addOptionStrategy"; "required": false; }; "overlayConfig": { "alias": "overlayConfig"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "options": { "alias": "options"; "required": false; }; "optionComparer": { "alias": "optionComparer"; "required": false; }; "optionKey": { "alias": "optionKey"; "required": false; }; "noClueIcon": { "alias": "noClueIcon"; "required": false; "isSignal": true; }; "optionTpl": { "alias": "optionTpl"; "required": false; "isSignal": true; }; "valueTpl": { "alias": "valueTpl"; "required": false; "isSignal": true; }; "panelHeaderTpl": { "alias": "panelHeaderTpl"; "required": false; "isSignal": true; }; }, { "optionTpl": "optionTplChange"; "valueTpl": "valueTplChange"; "panelHeaderTpl": "panelHeaderTplChange"; "clueChange": "clueChange"; "nextPage": "nextPage"; "previousPage": "previousPage"; "addOption": "addOption"; }, never, never, true, never>;
97
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ALuSelectInputComponent<any, any>, never, never, { "placeholder": { "alias": "placeholder"; "required": false; }; "clearable": { "alias": "clearable"; "required": false; }; "addOptionLabel": { "alias": "addOptionLabel"; "required": false; }; "addOptionStrategy": { "alias": "addOptionStrategy"; "required": false; }; "overlayConfig": { "alias": "overlayConfig"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "options": { "alias": "options"; "required": false; }; "optionComparer": { "alias": "optionComparer"; "required": false; }; "optionKey": { "alias": "optionKey"; "required": false; }; "noClueIcon": { "alias": "noClueIcon"; "required": false; "isSignal": true; }; "inputTabindex": { "alias": "inputTabindex"; "required": false; "isSignal": true; }; "optionTpl": { "alias": "optionTpl"; "required": false; "isSignal": true; }; "valueTpl": { "alias": "valueTpl"; "required": false; "isSignal": true; }; "panelHeaderTpl": { "alias": "panelHeaderTpl"; "required": false; "isSignal": true; }; }, { "optionTpl": "optionTplChange"; "valueTpl": "valueTplChange"; "panelHeaderTpl": "panelHeaderTplChange"; "clueChange": "clueChange"; "nextPage": "nextPage"; "previousPage": "previousPage"; "addOption": "addOption"; }, never, never, true, never>;
97
98
  static ngAcceptInputType_clearable: unknown;
98
99
  }
@@ -7,6 +7,7 @@ export declare class LuUserOptionComponent {
7
7
  protected userDirective: LuCoreSelectUsersDirective<any>;
8
8
  protected intl: import("./user.translate").LuCoreSelectUserTranslations;
9
9
  protected hasEmptyClue$: import("rxjs").Observable<boolean>;
10
+ protected customUserOptionTpl: import("@angular/core").ModelSignal<import("@angular/core").Type<unknown> | import("@angular/core").TemplateRef<import("@lucca-front/ng/core-select").LuOptionContext<any>>>;
10
11
  static ɵfac: i0.ɵɵFactoryDeclaration<LuUserOptionComponent, never>;
11
12
  static ɵcmp: i0.ɵɵComponentDeclaration<LuUserOptionComponent, "lu-user-option", never, {}, {}, never, never, true, never>;
12
13
  }
@@ -1,6 +1,6 @@
1
1
  import { HttpClient } from '@angular/common/http';
2
- import { Provider, Type } from '@angular/core';
3
- import { CoreSelectApiTotalCountProvider } from '@lucca-front/ng/core-select';
2
+ import { Provider, TemplateRef, Type } from '@angular/core';
3
+ import { CoreSelectApiTotalCountProvider, LuOptionContext } from '@lucca-front/ng/core-select';
4
4
  import { ALuCoreSelectApiDirective } from '@lucca-front/ng/core-select/api';
5
5
  import { LuDisplayFormat } from '@lucca-front/ng/user';
6
6
  import { Observable } from 'rxjs';
@@ -20,6 +20,7 @@ export declare class LuCoreSelectUsersDirective<T extends LuCoreSelectUser = LuC
20
20
  appInstanceId: import("@angular/core").InputSignal<number>;
21
21
  enableFormerEmployees: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
22
22
  displayMeOption: import("@angular/core").InputSignal<boolean>;
23
+ customUserOptionTpl: import("@angular/core").ModelSignal<TemplateRef<LuOptionContext<T>> | Type<unknown>>;
23
24
  includeFormerEmployees: import("@angular/core").WritableSignal<boolean>;
24
25
  searchDelimiter: import("@angular/core").InputSignal<string>;
25
26
  constructor();
@@ -44,5 +45,14 @@ export declare class LuCoreSelectUsersDirective<T extends LuCoreSelectUser = LuC
44
45
  protected optionComparer: (a: T, b: T) => boolean;
45
46
  protected optionKey: (option: T) => number;
46
47
  static ɵfac: i0.ɵɵFactoryDeclaration<LuCoreSelectUsersDirective<any>, never>;
47
- static ɵdir: i0.ɵɵDirectiveDeclaration<LuCoreSelectUsersDirective<any>, "lu-simple-select[users],lu-multi-select[users]", ["luUsers"], { "displayFormat": { "alias": "displayFormat"; "required": false; "isSignal": true; }; "filters": { "alias": "filters"; "required": false; "isSignal": true; }; "url": { "alias": "url"; "required": false; "isSignal": true; }; "orderBy": { "alias": "orderBy"; "required": false; "isSignal": true; }; "operationIds": { "alias": "operationIds"; "required": false; "isSignal": true; }; "uniqueOperationIds": { "alias": "uniqueOperationIds"; "required": false; "isSignal": true; }; "appInstanceId": { "alias": "appInstanceId"; "required": false; "isSignal": true; }; "enableFormerEmployees": { "alias": "enableFormerEmployees"; "required": false; "isSignal": true; }; "displayMeOption": { "alias": "displayMeOption"; "required": false; "isSignal": true; }; "searchDelimiter": { "alias": "searchDelimiter"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
48
+ static ɵdir: i0.ɵɵDirectiveDeclaration<LuCoreSelectUsersDirective<any>, "lu-simple-select[users],lu-multi-select[users]", ["luUsers"], { "displayFormat": { "alias": "displayFormat"; "required": false; "isSignal": true; }; "filters": { "alias": "filters"; "required": false; "isSignal": true; }; "url": { "alias": "url"; "required": false; "isSignal": true; }; "orderBy": { "alias": "orderBy"; "required": false; "isSignal": true; }; "operationIds": { "alias": "operationIds"; "required": false; "isSignal": true; }; "uniqueOperationIds": { "alias": "uniqueOperationIds"; "required": false; "isSignal": true; }; "appInstanceId": { "alias": "appInstanceId"; "required": false; "isSignal": true; }; "enableFormerEmployees": { "alias": "enableFormerEmployees"; "required": false; "isSignal": true; }; "displayMeOption": { "alias": "displayMeOption"; "required": false; "isSignal": true; }; "customUserOptionTpl": { "alias": "customUserOptionTpl"; "required": false; "isSignal": true; }; "searchDelimiter": { "alias": "searchDelimiter"; "required": false; "isSignal": true; }; }, { "customUserOptionTpl": "customUserOptionTplChange"; }, never, never, true, never>;
49
+ }
50
+ export declare class LuCoreSelectUserOptionDirective<T extends LuCoreSelectUser = LuCoreSelectUser> {
51
+ #private;
52
+ set usersDirective(usersDirective: LuCoreSelectUsersDirective<T>);
53
+ static ngTemplateContextGuard<T extends LuCoreSelectUser>(_dir: LuCoreSelectUserOptionDirective<T>, ctx: unknown): ctx is {
54
+ $implicit: T;
55
+ };
56
+ static ɵfac: i0.ɵɵFactoryDeclaration<LuCoreSelectUserOptionDirective<any>, never>;
57
+ static ɵdir: i0.ɵɵDirectiveDeclaration<LuCoreSelectUserOptionDirective<any>, "[luUserOption]", never, { "usersDirective": { "alias": "luUserOptionUsersRef"; "required": false; }; }, {}, never, never, true, never>;
48
58
  }
@@ -1,16 +1,18 @@
1
1
  import { Injector, OnInit, TemplateRef } from '@angular/core';
2
2
  import { ActivatedRoute, Router } from '@angular/router';
3
+ import { LuDialogConfig } from '../model';
3
4
  import { DialogRouteConfig } from './dialog-routing.models';
4
5
  import * as i0 from "@angular/core";
5
6
  export declare const defaultOnClosedFn: <C>(router?: Router, route?: ActivatedRoute, config?: DialogRouteConfig<C>) => void;
6
7
  export declare class DialogRoutingComponent<C> implements OnInit {
7
8
  #private;
8
9
  readonly injector: Injector;
9
- readonly dialogConfig: import("@angular/core").Signal<import("../model").LuDialogConfig<C>>;
10
+ readonly dialogConfig: import("@angular/core").Signal<LuDialogConfig<C>>;
10
11
  readonly dialogTemplateContent: import("@angular/core").Signal<TemplateRef<C>>;
11
12
  readonly dialogComponentContent: import("@angular/core").Signal<import("@angular/cdk/portal").ComponentType<C>>;
12
13
  protected readonly dialogTemplate: import("@angular/core").Signal<TemplateRef<any>>;
13
14
  readonly customInjector: Injector;
15
+ readonly componentInstance: import("@angular/core").WritableSignal<C>;
14
16
  ngOnInit(): void;
15
17
  static ɵfac: i0.ɵɵFactoryDeclaration<DialogRoutingComponent<any>, never>;
16
18
  static ɵcmp: i0.ɵɵComponentDeclaration<DialogRoutingComponent<any>, "lu-dialog-routing", never, {}, {}, never, never, true, never>;
@@ -1,4 +1,4 @@
1
- import { Route } from '@angular/router';
1
+ import { CanDeactivateFn, Route } from '@angular/router';
2
2
  import { LuDialogConfig, LuDialogResult } from '../model';
3
3
  import { Deferrable } from './dialog-routing.utils';
4
4
  export type DialogRouteConfig<C> = {
@@ -13,4 +13,8 @@ export type DialogRouteConfig<C> = {
13
13
  * This callback is called within injection context, so you can inject services in it.
14
14
  */
15
15
  onDismissed?: () => unknown;
16
- } & Omit<Route, 'component'>;
16
+ /**
17
+ * Override canDeactivate to have a stricter type
18
+ */
19
+ canDeactivate?: CanDeactivateFn<C>[];
20
+ } & Omit<Route, 'component' | 'canDeactivate'>;
@@ -6,6 +6,7 @@ import { LuDialogConfig, LuDialogData } from '../model';
6
6
  import { DialogRouteConfig } from './dialog-routing.models';
7
7
  export type Deferrable<T> = Promise<T> | Observable<T> | T;
8
8
  export declare function deferrableToPromise<T>(deferrable: Promise<T> | Observable<T> | T): Promise<T>;
9
+ export declare function deferrableToObservable<T>(deferrable: Promise<T> | Observable<T> | T): Observable<T>;
9
10
  export declare const DIALOG_ROUTE_CONFIG: InjectionToken<DialogRouteConfig<unknown>>;
10
11
  export declare function createDialogRoute<C>(config: DialogRouteConfig<C>): Route;
11
12
  export type DialogFactoryResultOptions<C> = {
@@ -0,0 +1,9 @@
1
+ import { OnInit } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class OutletComponentInstanceDirective<C> implements OnInit {
4
+ #private;
5
+ instanceCreated: import("@angular/core").OutputEmitterRef<C>;
6
+ ngOnInit(): void;
7
+ static ɵfac: i0.ɵɵFactoryDeclaration<OutletComponentInstanceDirective<any>, never>;
8
+ static ɵdir: i0.ɵɵDirectiveDeclaration<OutletComponentInstanceDirective<any>, "[luOutletComponentInstance]", never, {}, { "instanceCreated": "instanceCreated"; }, never, never, true, never>;
9
+ }
@@ -26,10 +26,11 @@ export declare class EmptyStatePageComponent {
26
26
  * Background color for content (text)
27
27
  */
28
28
  contentBackgroundColor: string;
29
+ slotTop: PortalContent;
29
30
  heading: string;
30
31
  description: PortalContent;
31
32
  hx: Hx;
32
33
  static ɵfac: i0.ɵɵFactoryDeclaration<EmptyStatePageComponent, never>;
33
- static ɵcmp: i0.ɵɵComponentDeclaration<EmptyStatePageComponent, "lu-empty-state-page", never, { "icon": { "alias": "icon"; "required": false; }; "topRightBackground": { "alias": "topRightBackground"; "required": false; }; "topRightForeground": { "alias": "topRightForeground"; "required": false; }; "bottomLeftBackground": { "alias": "bottomLeftBackground"; "required": false; }; "bottomLeftForeground": { "alias": "bottomLeftForeground"; "required": false; }; "contentBackgroundColor": { "alias": "contentBackgroundColor"; "required": false; }; "heading": { "alias": "heading"; "required": false; }; "description": { "alias": "description"; "required": false; }; "hx": { "alias": "hx"; "required": false; }; }, {}, never, ["*"], true, never>;
34
+ static ɵcmp: i0.ɵɵComponentDeclaration<EmptyStatePageComponent, "lu-empty-state-page", never, { "icon": { "alias": "icon"; "required": false; }; "topRightBackground": { "alias": "topRightBackground"; "required": false; }; "topRightForeground": { "alias": "topRightForeground"; "required": false; }; "bottomLeftBackground": { "alias": "bottomLeftBackground"; "required": false; }; "bottomLeftForeground": { "alias": "bottomLeftForeground"; "required": false; }; "contentBackgroundColor": { "alias": "contentBackgroundColor"; "required": false; }; "slotTop": { "alias": "slotTop"; "required": false; }; "heading": { "alias": "heading"; "required": false; }; "description": { "alias": "description"; "required": false; }; "hx": { "alias": "hx"; "required": false; }; }, {}, never, ["*"], true, never>;
34
35
  static ngAcceptInputType_hx: unknown;
35
36
  }
@@ -29,7 +29,7 @@ export declare class LuEstablishmentSelectInputComponent<D extends import('../..
29
29
  constructor(_changeDetectorRef: ChangeDetectorRef, _overlay: Overlay, _elementRef: ElementRef<HTMLElement>, _viewContainerRef: ViewContainerRef, _renderer: Renderer2, customLuService: LuLegalUnitService, defaultLuService: LuLegalUnitService, customEstablishmentService: LuEstablishmentService, defaultEstablishmentService: LuEstablishmentService);
30
30
  ngOnInit(): void;
31
31
  onIsSearchingChanged(isSearching: boolean): void;
32
- trackById(idx: number, item: ILuEstablishment): number;
32
+ trackById(_idx: number, item: ILuEstablishment): number;
33
33
  static ɵfac: i0.ɵɵFactoryDeclaration<LuEstablishmentSelectInputComponent<any, any>, [null, null, null, null, null, { optional: true; }, { self: true; }, { optional: true; }, { self: true; }]>;
34
34
  static ɵcmp: i0.ɵɵComponentDeclaration<LuEstablishmentSelectInputComponent<any, any>, "lu-establishment-select", never, { "filters": { "alias": "filters"; "required": false; }; "appInstanceId": { "alias": "appInstanceId"; "required": false; }; "operations": { "alias": "operations"; "required": false; }; }, {}, never, never, true, never>;
35
35
  }
@@ -0,0 +1,91 @@
1
+ import { NgTemplateOutlet } from '@angular/common';
2
+ import * as i0 from '@angular/core';
3
+ import { inject, TemplateRef, Directive, InjectionToken, input, booleanAttribute, contentChildren, computed, Component, ViewEncapsulation, HostBinding } from '@angular/core';
4
+ import { getIntl } from '@lucca-front/ng/core';
5
+
6
+ class BreadcrumbsLinkDirective {
7
+ constructor() {
8
+ this.template = inject(TemplateRef);
9
+ }
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: BreadcrumbsLinkDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
11
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.3", type: BreadcrumbsLinkDirective, isStandalone: true, selector: "[luBreadcrumbsLink]", ngImport: i0 }); }
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: BreadcrumbsLinkDirective, decorators: [{
14
+ type: Directive,
15
+ args: [{
16
+ selector: '[luBreadcrumbsLink]',
17
+ }]
18
+ }] });
19
+
20
+ const Translations = {
21
+ en: {
22
+ breadcrumbs: 'Breadcrumbs',
23
+ },
24
+ de: {
25
+ breadcrumbs: 'Roter Faden',
26
+ },
27
+ fr: {
28
+ breadcrumbs: 'Fil d’Ariane',
29
+ },
30
+ it: {
31
+ breadcrumbs: 'Controllo di navigazione',
32
+ },
33
+ nl: {
34
+ breadcrumbs: 'Navigatiepad',
35
+ },
36
+ 'nl-BE': {
37
+ breadcrumbs: 'Navigatiepad',
38
+ },
39
+ es: {
40
+ breadcrumbs: 'Hilo de Ariadna',
41
+ },
42
+ pt: {
43
+ breadcrumbs: 'Trilho de navegação',
44
+ },
45
+ };
46
+
47
+ const LU_BREADCRUMBS_TRANSLATIONS = new InjectionToken('LuBreadcrumbsTranslations', {
48
+ factory: () => luBreadcrumbsTranslations,
49
+ });
50
+ const luBreadcrumbsTranslations = Translations;
51
+
52
+ let nextId = 0;
53
+ class BreadcrumbsComponent {
54
+ constructor() {
55
+ this.intl = getIntl(LU_BREADCRUMBS_TRANSLATIONS);
56
+ this.disableCompact = input(false, { transform: booleanAttribute });
57
+ this.links = contentChildren(BreadcrumbsLinkDirective);
58
+ this.isCompact = computed(() => this.links().length <= 2 && !this.disableCompact());
59
+ this.id = `breadcrumbs-title-${nextId++}`;
60
+ }
61
+ get classCompact() {
62
+ return this.isCompact();
63
+ }
64
+ get roleAttr() {
65
+ return this.isCompact() ? 'presentation' : 'nav';
66
+ }
67
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: BreadcrumbsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
68
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.3", type: BreadcrumbsComponent, isStandalone: true, selector: "lu-breadcrumbs", inputs: { disableCompact: { classPropertyName: "disableCompact", publicName: "disableCompact", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.aria-describedby": "this.id", "class.mod-compact": "this.classCompact", "attr.role": "this.roleAttr" }, classAttribute: "breadcrumbs" }, queries: [{ propertyName: "links", predicate: BreadcrumbsLinkDirective, isSignal: true }], ngImport: i0, template: "<p [attr.id]=\"id\" class=\"u-mask\">{{ intl.breadcrumbs }}</p>\n<ol class=\"breadcrumbs-list\">\n\t@for (link of links(); track $index) {\n\t<li class=\"breadcrumbs-list-item\">\n\t\t<ng-container *ngTemplateOutlet=\"link.template\" />\n\t</li>\n\t}\n</ol>\n", styles: ["@charset \"UTF-8\";.breadcrumbs{display:block}.breadcrumbs-list{display:flex;flex-wrap:wrap;list-style-type:none;margin:0;padding:0}.breadcrumbs-list-item{font-size:var(--sizes-S-fontSize);line-height:var(--sizes-S-lineHeight);align-items:center;display:flex}.breadcrumbs-list-item:not(:first-child):before{--icon-content: \"\\e926\";font-weight:400;display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;content:var(--icon-content);-webkit-font-smoothing:antialiased;text-transform:none;color:var(--palettes-neutral-700);font-size:var(--sizes-XS-lineHeight);padding-block:0;padding-inline:var(--pr-t-spacings-50)}.breadcrumbs-list-item-action{color:var(--palettes-neutral-700);transition-duration:var(--commons-animations-durations-fast);transition-property:color;text-decoration:none;background-color:transparent;margin:0;padding:0;border:0;cursor:pointer}.breadcrumbs-list-item-action:hover{color:var(--palettes-neutral-700);text-decoration:underline}.breadcrumbs-list-item-action:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px;border-radius:var(--commons-borderRadius-M)}.breadcrumbs.mod-compact .breadcrumbs-list-item:nth-last-child(2):first-child:last-child,.breadcrumbs.mod-compact .breadcrumbs-list-item:nth-last-child(2):first-child+.breadcrumbs-list-item:last-child{border:0;clip:rect(1px,1px,1px,1px);margin:-1px;overflow:hidden;padding:0;position:absolute;block-size:1px;inline-size:1px;white-space:nowrap;contain:paint}.breadcrumbs.mod-compact .breadcrumbs-list-item:nth-last-child(2):first-child:first-child .breadcrumbs-list-item-action:before,.breadcrumbs.mod-compact .breadcrumbs-list-item:nth-last-child(2):first-child+.breadcrumbs-list-item:first-child .breadcrumbs-list-item-action:before{--icon-content: \"\\e9b4\";font-weight:400;display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;content:var(--icon-content);-webkit-font-smoothing:antialiased;text-transform:none;padding-inline-end:var(--pr-t-spacings-50);font-size:var(--sizes-XS-lineHeight);line-height:var(--sizes-S-lineHeight);text-decoration:none;vertical-align:top}.breadcrumbs-list-item-action.is-active,.breadcrumbs-list-item-action.active,.breadcrumbs-list-item-action[aria-current=page]{font-weight:600;text-decoration:none;cursor:default}.breadcrumbs-list-item-action.is-active:hover,.breadcrumbs-list-item-action.active:hover,.breadcrumbs-list-item-action[aria-current=page]:hover{outline:none}.breadcrumbs-list-item-action.is-active,.breadcrumbs-list-item-action.is-active:hover,.breadcrumbs-list-item-action.is-active:focus-visible,.breadcrumbs-list-item-action.active,.breadcrumbs-list-item-action.active:hover,.breadcrumbs-list-item-action.active:focus-visible,.breadcrumbs-list-item-action[aria-current=page],.breadcrumbs-list-item-action[aria-current=page]:hover,.breadcrumbs-list-item-action[aria-current=page]:focus-visible{outline:none;color:var(--palettes-neutral-700)}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], encapsulation: i0.ViewEncapsulation.None }); }
69
+ }
70
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: BreadcrumbsComponent, decorators: [{
71
+ type: Component,
72
+ args: [{ selector: 'lu-breadcrumbs', standalone: true, encapsulation: ViewEncapsulation.None, imports: [NgTemplateOutlet], host: {
73
+ class: 'breadcrumbs',
74
+ }, template: "<p [attr.id]=\"id\" class=\"u-mask\">{{ intl.breadcrumbs }}</p>\n<ol class=\"breadcrumbs-list\">\n\t@for (link of links(); track $index) {\n\t<li class=\"breadcrumbs-list-item\">\n\t\t<ng-container *ngTemplateOutlet=\"link.template\" />\n\t</li>\n\t}\n</ol>\n", styles: ["@charset \"UTF-8\";.breadcrumbs{display:block}.breadcrumbs-list{display:flex;flex-wrap:wrap;list-style-type:none;margin:0;padding:0}.breadcrumbs-list-item{font-size:var(--sizes-S-fontSize);line-height:var(--sizes-S-lineHeight);align-items:center;display:flex}.breadcrumbs-list-item:not(:first-child):before{--icon-content: \"\\e926\";font-weight:400;display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;content:var(--icon-content);-webkit-font-smoothing:antialiased;text-transform:none;color:var(--palettes-neutral-700);font-size:var(--sizes-XS-lineHeight);padding-block:0;padding-inline:var(--pr-t-spacings-50)}.breadcrumbs-list-item-action{color:var(--palettes-neutral-700);transition-duration:var(--commons-animations-durations-fast);transition-property:color;text-decoration:none;background-color:transparent;margin:0;padding:0;border:0;cursor:pointer}.breadcrumbs-list-item-action:hover{color:var(--palettes-neutral-700);text-decoration:underline}.breadcrumbs-list-item-action:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px;border-radius:var(--commons-borderRadius-M)}.breadcrumbs.mod-compact .breadcrumbs-list-item:nth-last-child(2):first-child:last-child,.breadcrumbs.mod-compact .breadcrumbs-list-item:nth-last-child(2):first-child+.breadcrumbs-list-item:last-child{border:0;clip:rect(1px,1px,1px,1px);margin:-1px;overflow:hidden;padding:0;position:absolute;block-size:1px;inline-size:1px;white-space:nowrap;contain:paint}.breadcrumbs.mod-compact .breadcrumbs-list-item:nth-last-child(2):first-child:first-child .breadcrumbs-list-item-action:before,.breadcrumbs.mod-compact .breadcrumbs-list-item:nth-last-child(2):first-child+.breadcrumbs-list-item:first-child .breadcrumbs-list-item-action:before{--icon-content: \"\\e9b4\";font-weight:400;display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;content:var(--icon-content);-webkit-font-smoothing:antialiased;text-transform:none;padding-inline-end:var(--pr-t-spacings-50);font-size:var(--sizes-XS-lineHeight);line-height:var(--sizes-S-lineHeight);text-decoration:none;vertical-align:top}.breadcrumbs-list-item-action.is-active,.breadcrumbs-list-item-action.active,.breadcrumbs-list-item-action[aria-current=page]{font-weight:600;text-decoration:none;cursor:default}.breadcrumbs-list-item-action.is-active:hover,.breadcrumbs-list-item-action.active:hover,.breadcrumbs-list-item-action[aria-current=page]:hover{outline:none}.breadcrumbs-list-item-action.is-active,.breadcrumbs-list-item-action.is-active:hover,.breadcrumbs-list-item-action.is-active:focus-visible,.breadcrumbs-list-item-action.active,.breadcrumbs-list-item-action.active:hover,.breadcrumbs-list-item-action.active:focus-visible,.breadcrumbs-list-item-action[aria-current=page],.breadcrumbs-list-item-action[aria-current=page]:hover,.breadcrumbs-list-item-action[aria-current=page]:focus-visible{outline:none;color:var(--palettes-neutral-700)}\n"] }]
75
+ }], propDecorators: { id: [{
76
+ type: HostBinding,
77
+ args: ['attr.aria-describedby']
78
+ }], classCompact: [{
79
+ type: HostBinding,
80
+ args: ['class.mod-compact']
81
+ }], roleAttr: [{
82
+ type: HostBinding,
83
+ args: ['attr.role']
84
+ }] } });
85
+
86
+ /**
87
+ * Generated bundle index. Do not edit.
88
+ */
89
+
90
+ export { BreadcrumbsComponent };
91
+ //# sourceMappingURL=lucca-front-ng-breadcrumbs.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lucca-front-ng-breadcrumbs.mjs","sources":["../../../packages/ng/breadcrumbs/breadcrumbs-link.directive.ts","../../../packages/ng/breadcrumbs/translations.ts","../../../packages/ng/breadcrumbs/breadcrumbs.translate.ts","../../../packages/ng/breadcrumbs/breadcrumbs.component.ts","../../../packages/ng/breadcrumbs/breadcrumbs.component.html","../../../packages/ng/breadcrumbs/lucca-front-ng-breadcrumbs.ts"],"sourcesContent":["import { Directive, inject, TemplateRef } from '@angular/core';\n\n@Directive({\n\tselector: '[luBreadcrumbsLink]',\n})\nexport class BreadcrumbsLinkDirective {\n\tpublic template = inject(TemplateRef);\n}\n","export const Translations = {\n\ten: {\n\t\tbreadcrumbs: 'Breadcrumbs',\n\t},\n\tde: {\n\t\tbreadcrumbs: 'Roter Faden',\n\t},\n\tfr: {\n\t\tbreadcrumbs: 'Fil d’Ariane',\n\t},\n\tit: {\n\t\tbreadcrumbs: 'Controllo di navigazione',\n\t},\n\tnl: {\n\t\tbreadcrumbs: 'Navigatiepad',\n\t},\n\t'nl-BE': {\n\t\tbreadcrumbs: 'Navigatiepad',\n\t},\n\tes: {\n\t\tbreadcrumbs: 'Hilo de Ariadna',\n\t},\n\tpt: {\n\t\tbreadcrumbs: 'Trilho de navegação',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_BREADCRUMBS_TRANSLATIONS = new InjectionToken('LuBreadcrumbsTranslations', {\n\tfactory: () => luBreadcrumbsTranslations,\n});\n\nexport interface LuBreadcrumbsLabel {\n\tbreadcrumbs: string;\n}\n\nexport const luBreadcrumbsTranslations: LuTranslation<LuBreadcrumbsLabel> = Translations;\n","import { NgTemplateOutlet } from '@angular/common';\nimport { booleanAttribute, Component, computed, contentChildren, HostBinding, input, ViewEncapsulation } from '@angular/core';\nimport { getIntl } from '@lucca-front/ng/core';\nimport { BreadcrumbsLinkDirective } from './breadcrumbs-link.directive';\nimport { LU_BREADCRUMBS_TRANSLATIONS } from './breadcrumbs.translate';\n\nlet nextId = 0;\n\n@Component({\n\tselector: 'lu-breadcrumbs',\n\tstandalone: true,\n\tstyleUrls: ['./breadcrumbs.component.scss'],\n\ttemplateUrl: './breadcrumbs.component.html',\n\tencapsulation: ViewEncapsulation.None,\n\timports: [NgTemplateOutlet],\n\thost: {\n\t\tclass: 'breadcrumbs',\n\t},\n})\nexport class BreadcrumbsComponent {\n\tintl = getIntl(LU_BREADCRUMBS_TRANSLATIONS);\n\n\tdisableCompact = input(false, { transform: booleanAttribute });\n\n\tlinks = contentChildren(BreadcrumbsLinkDirective);\n\n\tisCompact = computed(() => this.links().length <= 2 && !this.disableCompact());\n\n\t@HostBinding('attr.aria-describedby')\n\tid = `breadcrumbs-title-${nextId++}`;\n\n\t@HostBinding('class.mod-compact')\n\tget classCompact(): boolean {\n\t\treturn this.isCompact();\n\t}\n\n\t@HostBinding('attr.role')\n\tget roleAttr(): string {\n\t\treturn this.isCompact() ? 'presentation' : 'nav';\n\t}\n}\n","<p [attr.id]=\"id\" class=\"u-mask\">{{ intl.breadcrumbs }}</p>\n<ol class=\"breadcrumbs-list\">\n\t@for (link of links(); track $index) {\n\t<li class=\"breadcrumbs-list-item\">\n\t\t<ng-container *ngTemplateOutlet=\"link.template\" />\n\t</li>\n\t}\n</ol>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -54,13 +54,13 @@ class ButtonComponent {
54
54
  this.#luClass.setState(ngClassConfig);
55
55
  }
56
56
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
57
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "19.0.3", type: ButtonComponent, isStandalone: true, selector: "button[luButton],a[luButton]", inputs: { size: "size", block: ["block", "block", booleanAttribute], delete: ["delete", "delete", booleanAttribute], palette: "palette", state: "state", luButton: "luButton" }, host: { classAttribute: "button" }, providers: [LuClass], queries: [{ propertyName: "iconComponentRef", first: true, predicate: IconComponent, descendants: true, read: (ElementRef) }], usesOnChanges: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: ["@charset \"UTF-8\";.button{--components-button-font-size: var(--sizes-M-fontSize);--components-button-line-height: var(--sizes-M-lineHeight);--components-button-padding: var(--pr-t-spacings-100) var(--pr-t-spacings-200);--components-button-gap: var(--pr-t-spacings-100);--components-button-opacity: 1;--components-button-cursor: pointer;--components-button-pointerEvents: auto;--components-button-width: auto;--components-button-minWidth: none;--components-button-userSelect: auto;--components-button-boxShadow: none;--components-button-color: var(--palettes-0, var(--palettes-text, var(--palettes-product-0)));--components-button-backgroundColor: var(--palettes-700, var(--palettes-product-700));--icon-size: 1.5rem;background-color:var(--components-button-backgroundColor);box-shadow:var(--components-button-boxShadow);border-radius:var(--commons-borderRadius-M);line-height:var(--components-button-line-height);padding:var(--components-button-padding);transition-property:background-color,color,border-color,box-shadow;transition-duration:var(--commons-animations-durations-fast);inline-size:var(--components-button-width);min-inline-size:var(--components-button-minWidth);font-size:var(--components-button-font-size);gap:var(--components-button-gap);pointer-events:var(--components-button-pointerEvents);-webkit-user-select:var(--components-button-userSelect);user-select:var(--components-button-userSelect);opacity:var(--components-button-opacity);cursor:var(--components-button-cursor);transition-timing-function:ease;font-family:inherit;display:inline-flex;align-items:center;justify-content:center;position:relative;text-decoration:none;vertical-align:middle;white-space:nowrap;text-align:center;font-weight:600;border:0}.button,.button:is(a){color:var(--components-button-color)}.button .lucca-icon{display:block}.button .button-icon{--icon-size: 1.5rem}.button:not(.mod-outlined,.mod-outline) .numericBadge{--components-numericBadge-background: var(--palettes-200, var(--palettes-product-200));--components-numericBadge-color: var(--palettes-800, var(--palettes-product-800))}.button:hover{--components-button-color: var(--palettes-0, var(--palettes-text, var(--palettes-product-0)));--components-button-backgroundColor: var(--palettes-600, var(--palettes-product-600))}.button:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px}.button:active{--components-button-backgroundColor: var(--palettes-800, var(--palettes-product-800))}.button:disabled{--components-button-cursor: default;--components-button-color: var(--palettes-neutral-500);--components-button-backgroundColor: var(--commons-disabled-background);--components-button-pointerEvents: none}.button:disabled .numericBadge{background-color:var(--palettes-neutral-200);color:var(--palettes-neutral-500)}.button.mod-block{--components-button-width: 100%}.button.mod-S{--icon-size: 1.25rem;--components-button-font-size: var(--sizes-S-fontSize);--components-button-line-height: var(--sizes-S-lineHeight);--components-button-padding: var(--pr-t-spacings-75) var(--pr-t-spacings-150);--components-button-gap: var(--pr-t-spacings-75)}.button.mod-S .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: 6px;--components-numericBadge-fontSize: var(--sizes-XS-fontSize);--components-numericBadge-lineHeight: var(--sizes-XS-lineHeight)}.button.mod-XS{--icon-size: 1rem;--components-button-font-size: var(--sizes-XS-fontSize);--components-button-line-height: var(--sizes-XS-lineHeight);--components-button-padding: var(--pr-t-spacings-50) var(--pr-t-spacings-100);--components-button-gap: var(--pr-t-spacings-50)}.button.mod-XS .numericBadge{--components-numericBadge-size: 1rem;--components-numericBadge-borderRadius: var(--commons-borderRadius-M);--components-numericBadge-fontSize: var(--sizes-XS-fontSize);--components-numericBadge-lineHeight: var(--sizes-XS-lineHeight)}.button.mod-outlined:where(:not(.is-success,.is-error)),.button.mod-outline:where(:not(.is-success,.is-error)){--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-boxShadow: 0 0 0 var(--commons-divider-width) var(--palettes-400, var(--palettes-neutral-400))}.button.mod-outlined:where(:not(.is-success,.is-error)):hover,.button.mod-outline:where(:not(.is-success,.is-error)):hover{--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}.button.mod-outlined:where(:not(.is-success,.is-error)):active,.button.mod-outline:where(:not(.is-success,.is-error)):active{--components-button-backgroundColor: var(--palettes-200, var(--palettes-neutral-200))}.button.mod-outlined:where(:not(.is-success,.is-error)):focus-visible,.button.mod-outline:where(:not(.is-success,.is-error)):focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:3px}.button.mod-outlined:where(:not(.is-success,.is-error)):disabled,.button.mod-outline:where(:not(.is-success,.is-error)):disabled{--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-boxShadow: 0 0 0 1px var(--commons-disabled-placeholder);--components-button-color: var(--palettes-neutral-500)}.button.mod-outlined.is-disabled,.button.mod-outlined.disabled,.button.mod-outline.is-disabled,.button.mod-outline.disabled{--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-boxShadow: 0 0 0 1px var(--commons-disabled-placeholder);--components-button-color: var(--palettes-neutral-500)}.button.mod-text:where(:not(.is-success,.is-error)),.button.mod-link:where(:not(.is-success,.is-error)){--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-700, var(--palettes-neutral-700))}.button.mod-text:where(:not(.is-success,.is-error)):hover,.button.mod-text:where(:not(.is-success,.is-error)):focus-visible,.button.mod-link:where(:not(.is-success,.is-error)):hover,.button.mod-link:where(:not(.is-success,.is-error)):focus-visible{--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}.button.mod-text:where(:not(.is-success,.is-error)):active,.button.mod-link:where(:not(.is-success,.is-error)):active{--components-button-backgroundColor: var(--palettes-200, var(--palettes-neutral-200))}.button.mod-text:where(:not(.is-success,.is-error)):disabled,.button.mod-link:where(:not(.is-success,.is-error)):disabled{--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-neutral-500)}.button.mod-text.is-disabled,.button.mod-text.disabled,.button.mod-link.is-disabled,.button.mod-link.disabled{--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-neutral-500)}.button.mod-withIcon{--components-button-padding: var(--pr-t-spacings-100) var(--pr-t-spacings-150)}.button.mod-withIcon.mod-S{--components-button-padding: var(--pr-t-spacings-75) var(--pr-t-spacings-150)}.button.mod-withIcon.mod-XS{--components-button-padding: var(--pr-t-spacings-50) var(--pr-t-spacings-100)}.button.mod-onlyIcon{--components-button-padding: var(--pr-t-spacings-100)}.button.mod-onlyIcon.mod-S{--components-button-padding: var(--pr-t-spacings-75)}.button.mod-onlyIcon.mod-XS{--components-button-padding: var(--pr-t-spacings-50)}.button.mod-delete:hover{--components-button-color: var(--palettes-error-700);--components-button-backgroundColor: var(--palettes-error-100)}.button.mod-delete:active{--components-button-color: var(--palettes-error-700);--components-button-backgroundColor: var(--palettes-error-200)}.button.mod-delete.mod-text:hover,.button.mod-delete.mod-text:focus-visible,.button.mod-delete.mod-link:hover,.button.mod-delete.mod-link:focus-visible{--components-button-color: var(--palettes-error-700);--components-button-backgroundColor: var(--palettes-error-100)}.button.mod-delete.mod-text:active,.button.mod-delete.mod-link:active{--components-button-color: var(--palettes-error-700);--components-button-backgroundColor: var(--palettes-error-200)}.button.mod-delete.mod-outlined:hover,.button.mod-delete.mod-outline:hover{--components-button-boxShadow: 0 0 0 var(--commons-divider-width) var(--palettes-error-400);--components-button-color: var(--palettes-error-700);--components-button-backgroundColor: var(--palettes-error-100)}.button.mod-delete.mod-outlined:focus-visible,.button.mod-delete.mod-outline:focus-visible{--components-button-boxShadow: 0 0 0 var(--commons-divider-width) var(--palettes-error-400);--components-button-color: var(--palettes-error-700)}.button.mod-delete.mod-outlined:active,.button.mod-delete.mod-outline:active{--components-button-color: var(--palettes-error-700);--components-button-backgroundColor: var(--palettes-error-200)}.button.mod-inverted,.button.mod-invert{--components-button-color: var(--palettes-neutral-0)}.button.mod-inverted:hover,.button.mod-inverted:focus-visible,.button.mod-invert:hover,.button.mod-invert:focus-visible{--components-button-color: var(--palettes-neutral-0);--components-button-backgroundColor: var(--palettes-neutral-900)}.button.mod-inverted:active,.button.mod-invert:active{--components-button-backgroundColor: var(--palettes-neutral-700)}.button.mod-more{--components-button-minWidth: 2rem;--components-button-padding: 0}.button.mod-more:before{--icon-content: \"\\e97c\";font-weight:400;display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;content:var(--icon-content);-webkit-font-smoothing:antialiased;text-transform:none;block-size:0;vertical-align:text-top}.button.mod-more.mod-S{--components-button-minWidth: 1.75rem}.button.mod-more.mod-XS{--components-button-minWidth: 1.5rem}.button.is-loading,.button.loading{--components-button-opacity: .4;--components-button-pointerEvents: none;--components-button-color: transparent;--components-button-userSelect: none}.button.is-loading:after,.button.loading:after{content:\"\";inline-size:var(--components-button-font-size);block-size:var(--components-button-font-size);border-radius:var(--commons-borderRadius-full);line-height:.8rem;border-width:var(--commons-loading-borderWidth);inset:0;margin:auto;position:absolute;border-style:solid;animation-name:rotate;animation-duration:var(--commons-loading-speed);animation-timing-function:linear;animation-iteration-count:infinite;border-color:var(--commons-loading-frontground);border-block-start-color:transparent}.button.is-loading.mod-S:after,.button.loading.mod-S:after{content:\"\";inline-size:var(--sizes-S-fontSize);block-size:var(--sizes-S-fontSize);border-radius:var(--commons-borderRadius-full);line-height:.8rem;border-width:var(--commons-loading-borderWidth);inset:0;margin:auto;position:absolute;border-style:solid;animation-name:rotate;animation-duration:var(--commons-loading-speed);animation-timing-function:linear;animation-iteration-count:infinite;border-color:var(--commons-loading-frontground);border-block-start-color:transparent}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.button.is-error,.button.error{--palettes-text: #ffffff;--palettes-0: #ffffff;--palettes-50: #ffebec;--palettes-100: #ffd6d8;--palettes-200: #fdbebe;--palettes-300: #faa3a3;--palettes-400: #fa8989;--palettes-500: #f76e6e;--palettes-600: #f15050;--palettes-700: #da2f2f;--palettes-800: #aa0e0e;--palettes-900: #630303;--components-button-color: transparent;--components-button-pointerEvents: none;--components-button-userSelect: none}.button.is-error:after,.button.error:after{color:var(--palettes-neutral-0);font-size:calc(1.5 * var(--components-button-font-size));block-size:var(--components-button-line-height);inset:0;margin:auto;position:absolute}.button.is-error:after,.button.error:after{--icon-content: \"\\e9bf\";font-weight:400;display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;content:var(--icon-content);-webkit-font-smoothing:antialiased;text-transform:none}.button.is-success,.button.success{--palettes-text: #ffffff;--palettes-0: #ffffff;--palettes-50: #dbfae0;--palettes-100: #bef3c7;--palettes-200: #a2ebaf;--palettes-300: #84e695;--palettes-400: #68d97b;--palettes-500: #57c769;--palettes-600: #39b155;--palettes-700: #279b42;--palettes-800: #0a762e;--palettes-900: #004d20;--components-button-color: transparent;--components-button-pointerEvents: none;--components-button-userSelect: none}.button.is-success:after,.button.success:after{color:var(--palettes-neutral-0);font-size:calc(1.5 * var(--components-button-font-size));block-size:var(--components-button-line-height);inset:0;margin:auto;position:absolute}.button.is-success:after,.button.success:after{--icon-content: \"\\e97d\";font-weight:400;display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;content:var(--icon-content);-webkit-font-smoothing:antialiased;text-transform:none}.button.is-disabled,.button.disabled{--components-button-cursor: default;--components-button-color: var(--palettes-neutral-500);--components-button-backgroundColor: var(--commons-disabled-background);--components-button-pointerEvents: none}.button.is-disabled .numericBadge,.button.disabled .numericBadge{background-color:var(--palettes-neutral-200);color:var(--palettes-neutral-500)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
57
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "19.0.3", type: ButtonComponent, isStandalone: true, selector: "button[luButton],a[luButton]", inputs: { size: "size", block: ["block", "block", booleanAttribute], delete: ["delete", "delete", booleanAttribute], palette: "palette", state: "state", luButton: "luButton" }, host: { classAttribute: "button" }, providers: [LuClass], queries: [{ propertyName: "iconComponentRef", first: true, predicate: IconComponent, descendants: true, read: (ElementRef) }], usesOnChanges: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: ["@charset \"UTF-8\";.button{--components-button-font-size: var(--sizes-M-fontSize);--components-button-line-height: var(--sizes-M-lineHeight);--components-button-padding: var(--pr-t-spacings-100) var(--pr-t-spacings-200);--components-button-gap: var(--pr-t-spacings-100);--components-button-opacity: 1;--components-button-cursor: pointer;--components-button-pointerEvents: auto;--components-button-width: auto;--components-button-minWidth: none;--components-button-userSelect: auto;--components-button-boxShadow: none;--components-button-color: var(--palettes-0, var(--palettes-text, var(--palettes-product-0)));--components-button-backgroundColor: var(--palettes-700, var(--palettes-product-700));--components-button-arrow-transform: none;--icon-size: 1.5rem;background-color:var(--components-button-backgroundColor);box-shadow:var(--components-button-boxShadow);border-radius:var(--commons-borderRadius-M);line-height:var(--components-button-line-height);padding:var(--components-button-padding);transition-property:background-color,color,border-color,box-shadow;transition-duration:var(--commons-animations-durations-fast);inline-size:var(--components-button-width);min-inline-size:var(--components-button-minWidth);font-size:var(--components-button-font-size);gap:var(--components-button-gap);pointer-events:var(--components-button-pointerEvents);-webkit-user-select:var(--components-button-userSelect);user-select:var(--components-button-userSelect);opacity:var(--components-button-opacity);cursor:var(--components-button-cursor);transition-timing-function:ease;font-family:inherit;display:inline-flex;align-items:center;justify-content:center;position:relative;text-decoration:none;vertical-align:middle;text-wrap:balance;text-align:center;font-weight:600;border:0}.button,.button:is(a){color:var(--components-button-color)}.button .lucca-icon{display:block}.button .button-icon{--icon-size: 1.5rem}.button:not(.mod-outlined,.mod-outline) .numericBadge{--components-numericBadge-background: var(--palettes-200, var(--palettes-product-200));--components-numericBadge-color: var(--palettes-800, var(--palettes-product-800))}.button:hover{--components-button-color: var(--palettes-0, var(--palettes-text, var(--palettes-product-0)));--components-button-backgroundColor: var(--palettes-600, var(--palettes-product-600))}.button:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px}.button:active{--components-button-backgroundColor: var(--palettes-800, var(--palettes-product-800))}.button:disabled{--components-button-cursor: default;--components-button-color: var(--palettes-neutral-500);--components-button-backgroundColor: var(--commons-disabled-background);--components-button-pointerEvents: none}.button:disabled .numericBadge{background-color:var(--palettes-neutral-200);color:var(--palettes-neutral-500)}.button.mod-block{--components-button-width: 100%}.button.mod-S{--icon-size: 1.25rem;--components-button-font-size: var(--sizes-S-fontSize);--components-button-line-height: var(--sizes-S-lineHeight);--components-button-padding: var(--pr-t-spacings-75) var(--pr-t-spacings-150);--components-button-gap: var(--pr-t-spacings-75)}.button.mod-S .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: 6px;--components-numericBadge-fontSize: var(--sizes-XS-fontSize);--components-numericBadge-lineHeight: var(--sizes-XS-lineHeight)}.button.mod-XS{--icon-size: 1rem;--components-button-font-size: var(--sizes-XS-fontSize);--components-button-line-height: var(--sizes-XS-lineHeight);--components-button-padding: var(--pr-t-spacings-50) var(--pr-t-spacings-100);--components-button-gap: var(--pr-t-spacings-50)}.button.mod-XS .numericBadge{--components-numericBadge-size: 1rem;--components-numericBadge-borderRadius: var(--commons-borderRadius-M);--components-numericBadge-fontSize: var(--sizes-XS-fontSize);--components-numericBadge-lineHeight: var(--sizes-XS-lineHeight)}.button.mod-disclosure{padding-inline-end:var(--pr-t-spacings-150)}.button.mod-disclosure .icon-arrowChevronBottom{transition-property:transform;transition-duration:var(--commons-animations-durations-fast);transform:var(--components-button-arrow-transform)}.button.mod-disclosure[aria-expanded=true]{--components-button-arrow-transform: rotate(-180deg)}.button.mod-outlined:where(:not(.is-success,.is-error)),.button.mod-outline:where(:not(.is-success,.is-error)){--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-boxShadow: 0 0 0 var(--commons-divider-width) var(--palettes-400, var(--palettes-neutral-400))}.button.mod-outlined:where(:not(.is-success,.is-error)):hover,.button.mod-outline:where(:not(.is-success,.is-error)):hover{--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}.button.mod-outlined:where(:not(.is-success,.is-error)):active,.button.mod-outline:where(:not(.is-success,.is-error)):active{--components-button-backgroundColor: var(--palettes-200, var(--palettes-neutral-200))}.button.mod-outlined:where(:not(.is-success,.is-error)):focus-visible,.button.mod-outline:where(:not(.is-success,.is-error)):focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:3px}.button.mod-outlined:where(:not(.is-success,.is-error)):disabled,.button.mod-outline:where(:not(.is-success,.is-error)):disabled{--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-boxShadow: 0 0 0 1px var(--commons-disabled-placeholder);--components-button-color: var(--palettes-neutral-500)}.button.mod-outlined.is-disabled,.button.mod-outlined.disabled,.button.mod-outline.is-disabled,.button.mod-outline.disabled{--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-boxShadow: 0 0 0 1px var(--commons-disabled-placeholder);--components-button-color: var(--palettes-neutral-500)}.button.mod-text:where(:not(.is-success,.is-error)),.button.mod-link:where(:not(.is-success,.is-error)){--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-700, var(--palettes-neutral-700))}.button.mod-text:where(:not(.is-success,.is-error)):hover,.button.mod-text:where(:not(.is-success,.is-error)):focus-visible,.button.mod-link:where(:not(.is-success,.is-error)):hover,.button.mod-link:where(:not(.is-success,.is-error)):focus-visible{--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}.button.mod-text:where(:not(.is-success,.is-error)):active,.button.mod-link:where(:not(.is-success,.is-error)):active{--components-button-backgroundColor: var(--palettes-200, var(--palettes-neutral-200))}.button.mod-text:where(:not(.is-success,.is-error)):disabled,.button.mod-link:where(:not(.is-success,.is-error)):disabled{--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-neutral-500)}.button.mod-text.is-disabled,.button.mod-text.disabled,.button.mod-link.is-disabled,.button.mod-link.disabled{--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-neutral-500)}.button.mod-withIcon{--components-button-padding: var(--pr-t-spacings-100) var(--pr-t-spacings-150)}.button.mod-withIcon.mod-S{--components-button-padding: var(--pr-t-spacings-75) var(--pr-t-spacings-150)}.button.mod-withIcon.mod-XS{--components-button-padding: var(--pr-t-spacings-50) var(--pr-t-spacings-100)}.button.mod-withIcon.mod-iconOnLeft{padding-inline-start:var(--pr-t-spacings-150)}.button.mod-withIcon.mod-iconOnRight{padding-inline-end:var(--pr-t-spacings-150)}.button.mod-onlyIcon{--components-button-padding: var(--pr-t-spacings-100)}.button.mod-onlyIcon.mod-S{--components-button-padding: var(--pr-t-spacings-75)}.button.mod-onlyIcon.mod-XS{--components-button-padding: var(--pr-t-spacings-50)}.button.mod-delete:hover{--components-button-color: var(--palettes-error-700);--components-button-backgroundColor: var(--palettes-error-100)}.button.mod-delete:active{--components-button-color: var(--palettes-error-700);--components-button-backgroundColor: var(--palettes-error-200)}.button.mod-delete.mod-text:hover,.button.mod-delete.mod-text:focus-visible,.button.mod-delete.mod-link:hover,.button.mod-delete.mod-link:focus-visible{--components-button-color: var(--palettes-error-700);--components-button-backgroundColor: var(--palettes-error-100)}.button.mod-delete.mod-text:active,.button.mod-delete.mod-link:active{--components-button-color: var(--palettes-error-700);--components-button-backgroundColor: var(--palettes-error-200)}.button.mod-delete.mod-outlined:hover,.button.mod-delete.mod-outline:hover{--components-button-boxShadow: 0 0 0 var(--commons-divider-width) var(--palettes-error-400);--components-button-color: var(--palettes-error-700);--components-button-backgroundColor: var(--palettes-error-100)}.button.mod-delete.mod-outlined:focus-visible,.button.mod-delete.mod-outline:focus-visible{--components-button-boxShadow: 0 0 0 var(--commons-divider-width) var(--palettes-error-400);--components-button-color: var(--palettes-error-700)}.button.mod-delete.mod-outlined:active,.button.mod-delete.mod-outline:active{--components-button-color: var(--palettes-error-700);--components-button-backgroundColor: var(--palettes-error-200)}.button.mod-inverted,.button.mod-invert{--components-button-color: var(--palettes-neutral-0)}.button.mod-inverted:hover,.button.mod-inverted:focus-visible,.button.mod-invert:hover,.button.mod-invert:focus-visible{--components-button-color: var(--palettes-neutral-0);--components-button-backgroundColor: var(--palettes-neutral-900)}.button.mod-inverted:active,.button.mod-invert:active{--components-button-backgroundColor: var(--palettes-neutral-700)}.button.mod-more{--components-button-minWidth: 2rem;--components-button-padding: 0}.button.mod-more:before{--icon-content: \"\\e97c\";font-weight:400;display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;content:var(--icon-content);-webkit-font-smoothing:antialiased;text-transform:none;block-size:0;vertical-align:text-top}.button.mod-more.mod-S{--components-button-minWidth: 1.75rem}.button.mod-more.mod-XS{--components-button-minWidth: 1.5rem}.button.is-loading,.button.loading{--components-button-opacity: .4;--components-button-pointerEvents: none;--components-button-color: transparent;--components-button-userSelect: none}.button.is-loading:after,.button.loading:after{content:\"\";inline-size:var(--components-button-font-size);block-size:var(--components-button-font-size);border-radius:var(--commons-borderRadius-full);line-height:.8rem;border-width:var(--commons-loading-borderWidth);inset:0;margin:auto;position:absolute;border-style:solid;animation-name:rotate;animation-duration:var(--commons-loading-speed);animation-timing-function:linear;animation-iteration-count:infinite;border-color:var(--commons-loading-frontground);border-block-start-color:transparent}.button.is-loading.mod-S:after,.button.loading.mod-S:after{content:\"\";inline-size:var(--sizes-S-fontSize);block-size:var(--sizes-S-fontSize);border-radius:var(--commons-borderRadius-full);line-height:.8rem;border-width:var(--commons-loading-borderWidth);inset:0;margin:auto;position:absolute;border-style:solid;animation-name:rotate;animation-duration:var(--commons-loading-speed);animation-timing-function:linear;animation-iteration-count:infinite;border-color:var(--commons-loading-frontground);border-block-start-color:transparent}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.button.is-error,.button.error{--palettes-text: #ffffff;--palettes-0: #ffffff;--palettes-50: #ffebec;--palettes-100: #ffd6d8;--palettes-200: #fdbebe;--palettes-300: #faa3a3;--palettes-400: #fa8989;--palettes-500: #f76e6e;--palettes-600: #f15050;--palettes-700: #da2f2f;--palettes-800: #aa0e0e;--palettes-900: #630303;--components-button-color: transparent;--components-button-pointerEvents: none;--components-button-userSelect: none}.button.is-error:after,.button.error:after{color:var(--palettes-neutral-0);font-size:calc(1.5 * var(--components-button-font-size));block-size:var(--components-button-line-height);inset:0;margin:auto;position:absolute}.button.is-error:after,.button.error:after{--icon-content: \"\\e9bf\";font-weight:400;display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;content:var(--icon-content);-webkit-font-smoothing:antialiased;text-transform:none}.button.is-success,.button.success{--palettes-text: #ffffff;--palettes-0: #ffffff;--palettes-50: #dbfae0;--palettes-100: #bef3c7;--palettes-200: #a2ebaf;--palettes-300: #84e695;--palettes-400: #68d97b;--palettes-500: #57c769;--palettes-600: #39b155;--palettes-700: #279b42;--palettes-800: #0a762e;--palettes-900: #004d20;--components-button-color: transparent;--components-button-pointerEvents: none;--components-button-userSelect: none}.button.is-success:after,.button.success:after{color:var(--palettes-neutral-0);font-size:calc(1.5 * var(--components-button-font-size));block-size:var(--components-button-line-height);inset:0;margin:auto;position:absolute}.button.is-success:after,.button.success:after{--icon-content: \"\\e97d\";font-weight:400;display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;content:var(--icon-content);-webkit-font-smoothing:antialiased;text-transform:none}.button.is-disabled,.button.disabled{--components-button-cursor: default;--components-button-color: var(--palettes-neutral-500);--components-button-backgroundColor: var(--commons-disabled-background);--components-button-pointerEvents: none}.button.is-disabled .numericBadge,.button.disabled .numericBadge{background-color:var(--palettes-neutral-200);color:var(--palettes-neutral-500)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
58
58
  }
59
59
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: ButtonComponent, decorators: [{
60
60
  type: Component,
61
61
  args: [{ selector: 'button[luButton],a[luButton]', standalone: true, providers: [LuClass], template: '<ng-content></ng-content>', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
62
62
  class: 'button',
63
- }, styles: ["@charset \"UTF-8\";.button{--components-button-font-size: var(--sizes-M-fontSize);--components-button-line-height: var(--sizes-M-lineHeight);--components-button-padding: var(--pr-t-spacings-100) var(--pr-t-spacings-200);--components-button-gap: var(--pr-t-spacings-100);--components-button-opacity: 1;--components-button-cursor: pointer;--components-button-pointerEvents: auto;--components-button-width: auto;--components-button-minWidth: none;--components-button-userSelect: auto;--components-button-boxShadow: none;--components-button-color: var(--palettes-0, var(--palettes-text, var(--palettes-product-0)));--components-button-backgroundColor: var(--palettes-700, var(--palettes-product-700));--icon-size: 1.5rem;background-color:var(--components-button-backgroundColor);box-shadow:var(--components-button-boxShadow);border-radius:var(--commons-borderRadius-M);line-height:var(--components-button-line-height);padding:var(--components-button-padding);transition-property:background-color,color,border-color,box-shadow;transition-duration:var(--commons-animations-durations-fast);inline-size:var(--components-button-width);min-inline-size:var(--components-button-minWidth);font-size:var(--components-button-font-size);gap:var(--components-button-gap);pointer-events:var(--components-button-pointerEvents);-webkit-user-select:var(--components-button-userSelect);user-select:var(--components-button-userSelect);opacity:var(--components-button-opacity);cursor:var(--components-button-cursor);transition-timing-function:ease;font-family:inherit;display:inline-flex;align-items:center;justify-content:center;position:relative;text-decoration:none;vertical-align:middle;white-space:nowrap;text-align:center;font-weight:600;border:0}.button,.button:is(a){color:var(--components-button-color)}.button .lucca-icon{display:block}.button .button-icon{--icon-size: 1.5rem}.button:not(.mod-outlined,.mod-outline) .numericBadge{--components-numericBadge-background: var(--palettes-200, var(--palettes-product-200));--components-numericBadge-color: var(--palettes-800, var(--palettes-product-800))}.button:hover{--components-button-color: var(--palettes-0, var(--palettes-text, var(--palettes-product-0)));--components-button-backgroundColor: var(--palettes-600, var(--palettes-product-600))}.button:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px}.button:active{--components-button-backgroundColor: var(--palettes-800, var(--palettes-product-800))}.button:disabled{--components-button-cursor: default;--components-button-color: var(--palettes-neutral-500);--components-button-backgroundColor: var(--commons-disabled-background);--components-button-pointerEvents: none}.button:disabled .numericBadge{background-color:var(--palettes-neutral-200);color:var(--palettes-neutral-500)}.button.mod-block{--components-button-width: 100%}.button.mod-S{--icon-size: 1.25rem;--components-button-font-size: var(--sizes-S-fontSize);--components-button-line-height: var(--sizes-S-lineHeight);--components-button-padding: var(--pr-t-spacings-75) var(--pr-t-spacings-150);--components-button-gap: var(--pr-t-spacings-75)}.button.mod-S .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: 6px;--components-numericBadge-fontSize: var(--sizes-XS-fontSize);--components-numericBadge-lineHeight: var(--sizes-XS-lineHeight)}.button.mod-XS{--icon-size: 1rem;--components-button-font-size: var(--sizes-XS-fontSize);--components-button-line-height: var(--sizes-XS-lineHeight);--components-button-padding: var(--pr-t-spacings-50) var(--pr-t-spacings-100);--components-button-gap: var(--pr-t-spacings-50)}.button.mod-XS .numericBadge{--components-numericBadge-size: 1rem;--components-numericBadge-borderRadius: var(--commons-borderRadius-M);--components-numericBadge-fontSize: var(--sizes-XS-fontSize);--components-numericBadge-lineHeight: var(--sizes-XS-lineHeight)}.button.mod-outlined:where(:not(.is-success,.is-error)),.button.mod-outline:where(:not(.is-success,.is-error)){--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-boxShadow: 0 0 0 var(--commons-divider-width) var(--palettes-400, var(--palettes-neutral-400))}.button.mod-outlined:where(:not(.is-success,.is-error)):hover,.button.mod-outline:where(:not(.is-success,.is-error)):hover{--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}.button.mod-outlined:where(:not(.is-success,.is-error)):active,.button.mod-outline:where(:not(.is-success,.is-error)):active{--components-button-backgroundColor: var(--palettes-200, var(--palettes-neutral-200))}.button.mod-outlined:where(:not(.is-success,.is-error)):focus-visible,.button.mod-outline:where(:not(.is-success,.is-error)):focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:3px}.button.mod-outlined:where(:not(.is-success,.is-error)):disabled,.button.mod-outline:where(:not(.is-success,.is-error)):disabled{--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-boxShadow: 0 0 0 1px var(--commons-disabled-placeholder);--components-button-color: var(--palettes-neutral-500)}.button.mod-outlined.is-disabled,.button.mod-outlined.disabled,.button.mod-outline.is-disabled,.button.mod-outline.disabled{--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-boxShadow: 0 0 0 1px var(--commons-disabled-placeholder);--components-button-color: var(--palettes-neutral-500)}.button.mod-text:where(:not(.is-success,.is-error)),.button.mod-link:where(:not(.is-success,.is-error)){--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-700, var(--palettes-neutral-700))}.button.mod-text:where(:not(.is-success,.is-error)):hover,.button.mod-text:where(:not(.is-success,.is-error)):focus-visible,.button.mod-link:where(:not(.is-success,.is-error)):hover,.button.mod-link:where(:not(.is-success,.is-error)):focus-visible{--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}.button.mod-text:where(:not(.is-success,.is-error)):active,.button.mod-link:where(:not(.is-success,.is-error)):active{--components-button-backgroundColor: var(--palettes-200, var(--palettes-neutral-200))}.button.mod-text:where(:not(.is-success,.is-error)):disabled,.button.mod-link:where(:not(.is-success,.is-error)):disabled{--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-neutral-500)}.button.mod-text.is-disabled,.button.mod-text.disabled,.button.mod-link.is-disabled,.button.mod-link.disabled{--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-neutral-500)}.button.mod-withIcon{--components-button-padding: var(--pr-t-spacings-100) var(--pr-t-spacings-150)}.button.mod-withIcon.mod-S{--components-button-padding: var(--pr-t-spacings-75) var(--pr-t-spacings-150)}.button.mod-withIcon.mod-XS{--components-button-padding: var(--pr-t-spacings-50) var(--pr-t-spacings-100)}.button.mod-onlyIcon{--components-button-padding: var(--pr-t-spacings-100)}.button.mod-onlyIcon.mod-S{--components-button-padding: var(--pr-t-spacings-75)}.button.mod-onlyIcon.mod-XS{--components-button-padding: var(--pr-t-spacings-50)}.button.mod-delete:hover{--components-button-color: var(--palettes-error-700);--components-button-backgroundColor: var(--palettes-error-100)}.button.mod-delete:active{--components-button-color: var(--palettes-error-700);--components-button-backgroundColor: var(--palettes-error-200)}.button.mod-delete.mod-text:hover,.button.mod-delete.mod-text:focus-visible,.button.mod-delete.mod-link:hover,.button.mod-delete.mod-link:focus-visible{--components-button-color: var(--palettes-error-700);--components-button-backgroundColor: var(--palettes-error-100)}.button.mod-delete.mod-text:active,.button.mod-delete.mod-link:active{--components-button-color: var(--palettes-error-700);--components-button-backgroundColor: var(--palettes-error-200)}.button.mod-delete.mod-outlined:hover,.button.mod-delete.mod-outline:hover{--components-button-boxShadow: 0 0 0 var(--commons-divider-width) var(--palettes-error-400);--components-button-color: var(--palettes-error-700);--components-button-backgroundColor: var(--palettes-error-100)}.button.mod-delete.mod-outlined:focus-visible,.button.mod-delete.mod-outline:focus-visible{--components-button-boxShadow: 0 0 0 var(--commons-divider-width) var(--palettes-error-400);--components-button-color: var(--palettes-error-700)}.button.mod-delete.mod-outlined:active,.button.mod-delete.mod-outline:active{--components-button-color: var(--palettes-error-700);--components-button-backgroundColor: var(--palettes-error-200)}.button.mod-inverted,.button.mod-invert{--components-button-color: var(--palettes-neutral-0)}.button.mod-inverted:hover,.button.mod-inverted:focus-visible,.button.mod-invert:hover,.button.mod-invert:focus-visible{--components-button-color: var(--palettes-neutral-0);--components-button-backgroundColor: var(--palettes-neutral-900)}.button.mod-inverted:active,.button.mod-invert:active{--components-button-backgroundColor: var(--palettes-neutral-700)}.button.mod-more{--components-button-minWidth: 2rem;--components-button-padding: 0}.button.mod-more:before{--icon-content: \"\\e97c\";font-weight:400;display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;content:var(--icon-content);-webkit-font-smoothing:antialiased;text-transform:none;block-size:0;vertical-align:text-top}.button.mod-more.mod-S{--components-button-minWidth: 1.75rem}.button.mod-more.mod-XS{--components-button-minWidth: 1.5rem}.button.is-loading,.button.loading{--components-button-opacity: .4;--components-button-pointerEvents: none;--components-button-color: transparent;--components-button-userSelect: none}.button.is-loading:after,.button.loading:after{content:\"\";inline-size:var(--components-button-font-size);block-size:var(--components-button-font-size);border-radius:var(--commons-borderRadius-full);line-height:.8rem;border-width:var(--commons-loading-borderWidth);inset:0;margin:auto;position:absolute;border-style:solid;animation-name:rotate;animation-duration:var(--commons-loading-speed);animation-timing-function:linear;animation-iteration-count:infinite;border-color:var(--commons-loading-frontground);border-block-start-color:transparent}.button.is-loading.mod-S:after,.button.loading.mod-S:after{content:\"\";inline-size:var(--sizes-S-fontSize);block-size:var(--sizes-S-fontSize);border-radius:var(--commons-borderRadius-full);line-height:.8rem;border-width:var(--commons-loading-borderWidth);inset:0;margin:auto;position:absolute;border-style:solid;animation-name:rotate;animation-duration:var(--commons-loading-speed);animation-timing-function:linear;animation-iteration-count:infinite;border-color:var(--commons-loading-frontground);border-block-start-color:transparent}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.button.is-error,.button.error{--palettes-text: #ffffff;--palettes-0: #ffffff;--palettes-50: #ffebec;--palettes-100: #ffd6d8;--palettes-200: #fdbebe;--palettes-300: #faa3a3;--palettes-400: #fa8989;--palettes-500: #f76e6e;--palettes-600: #f15050;--palettes-700: #da2f2f;--palettes-800: #aa0e0e;--palettes-900: #630303;--components-button-color: transparent;--components-button-pointerEvents: none;--components-button-userSelect: none}.button.is-error:after,.button.error:after{color:var(--palettes-neutral-0);font-size:calc(1.5 * var(--components-button-font-size));block-size:var(--components-button-line-height);inset:0;margin:auto;position:absolute}.button.is-error:after,.button.error:after{--icon-content: \"\\e9bf\";font-weight:400;display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;content:var(--icon-content);-webkit-font-smoothing:antialiased;text-transform:none}.button.is-success,.button.success{--palettes-text: #ffffff;--palettes-0: #ffffff;--palettes-50: #dbfae0;--palettes-100: #bef3c7;--palettes-200: #a2ebaf;--palettes-300: #84e695;--palettes-400: #68d97b;--palettes-500: #57c769;--palettes-600: #39b155;--palettes-700: #279b42;--palettes-800: #0a762e;--palettes-900: #004d20;--components-button-color: transparent;--components-button-pointerEvents: none;--components-button-userSelect: none}.button.is-success:after,.button.success:after{color:var(--palettes-neutral-0);font-size:calc(1.5 * var(--components-button-font-size));block-size:var(--components-button-line-height);inset:0;margin:auto;position:absolute}.button.is-success:after,.button.success:after{--icon-content: \"\\e97d\";font-weight:400;display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;content:var(--icon-content);-webkit-font-smoothing:antialiased;text-transform:none}.button.is-disabled,.button.disabled{--components-button-cursor: default;--components-button-color: var(--palettes-neutral-500);--components-button-backgroundColor: var(--commons-disabled-background);--components-button-pointerEvents: none}.button.is-disabled .numericBadge,.button.disabled .numericBadge{background-color:var(--palettes-neutral-200);color:var(--palettes-neutral-500)}\n"] }]
63
+ }, styles: ["@charset \"UTF-8\";.button{--components-button-font-size: var(--sizes-M-fontSize);--components-button-line-height: var(--sizes-M-lineHeight);--components-button-padding: var(--pr-t-spacings-100) var(--pr-t-spacings-200);--components-button-gap: var(--pr-t-spacings-100);--components-button-opacity: 1;--components-button-cursor: pointer;--components-button-pointerEvents: auto;--components-button-width: auto;--components-button-minWidth: none;--components-button-userSelect: auto;--components-button-boxShadow: none;--components-button-color: var(--palettes-0, var(--palettes-text, var(--palettes-product-0)));--components-button-backgroundColor: var(--palettes-700, var(--palettes-product-700));--components-button-arrow-transform: none;--icon-size: 1.5rem;background-color:var(--components-button-backgroundColor);box-shadow:var(--components-button-boxShadow);border-radius:var(--commons-borderRadius-M);line-height:var(--components-button-line-height);padding:var(--components-button-padding);transition-property:background-color,color,border-color,box-shadow;transition-duration:var(--commons-animations-durations-fast);inline-size:var(--components-button-width);min-inline-size:var(--components-button-minWidth);font-size:var(--components-button-font-size);gap:var(--components-button-gap);pointer-events:var(--components-button-pointerEvents);-webkit-user-select:var(--components-button-userSelect);user-select:var(--components-button-userSelect);opacity:var(--components-button-opacity);cursor:var(--components-button-cursor);transition-timing-function:ease;font-family:inherit;display:inline-flex;align-items:center;justify-content:center;position:relative;text-decoration:none;vertical-align:middle;text-wrap:balance;text-align:center;font-weight:600;border:0}.button,.button:is(a){color:var(--components-button-color)}.button .lucca-icon{display:block}.button .button-icon{--icon-size: 1.5rem}.button:not(.mod-outlined,.mod-outline) .numericBadge{--components-numericBadge-background: var(--palettes-200, var(--palettes-product-200));--components-numericBadge-color: var(--palettes-800, var(--palettes-product-800))}.button:hover{--components-button-color: var(--palettes-0, var(--palettes-text, var(--palettes-product-0)));--components-button-backgroundColor: var(--palettes-600, var(--palettes-product-600))}.button:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:2px}.button:active{--components-button-backgroundColor: var(--palettes-800, var(--palettes-product-800))}.button:disabled{--components-button-cursor: default;--components-button-color: var(--palettes-neutral-500);--components-button-backgroundColor: var(--commons-disabled-background);--components-button-pointerEvents: none}.button:disabled .numericBadge{background-color:var(--palettes-neutral-200);color:var(--palettes-neutral-500)}.button.mod-block{--components-button-width: 100%}.button.mod-S{--icon-size: 1.25rem;--components-button-font-size: var(--sizes-S-fontSize);--components-button-line-height: var(--sizes-S-lineHeight);--components-button-padding: var(--pr-t-spacings-75) var(--pr-t-spacings-150);--components-button-gap: var(--pr-t-spacings-75)}.button.mod-S .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: 6px;--components-numericBadge-fontSize: var(--sizes-XS-fontSize);--components-numericBadge-lineHeight: var(--sizes-XS-lineHeight)}.button.mod-XS{--icon-size: 1rem;--components-button-font-size: var(--sizes-XS-fontSize);--components-button-line-height: var(--sizes-XS-lineHeight);--components-button-padding: var(--pr-t-spacings-50) var(--pr-t-spacings-100);--components-button-gap: var(--pr-t-spacings-50)}.button.mod-XS .numericBadge{--components-numericBadge-size: 1rem;--components-numericBadge-borderRadius: var(--commons-borderRadius-M);--components-numericBadge-fontSize: var(--sizes-XS-fontSize);--components-numericBadge-lineHeight: var(--sizes-XS-lineHeight)}.button.mod-disclosure{padding-inline-end:var(--pr-t-spacings-150)}.button.mod-disclosure .icon-arrowChevronBottom{transition-property:transform;transition-duration:var(--commons-animations-durations-fast);transform:var(--components-button-arrow-transform)}.button.mod-disclosure[aria-expanded=true]{--components-button-arrow-transform: rotate(-180deg)}.button.mod-outlined:where(:not(.is-success,.is-error)),.button.mod-outline:where(:not(.is-success,.is-error)){--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-boxShadow: 0 0 0 var(--commons-divider-width) var(--palettes-400, var(--palettes-neutral-400))}.button.mod-outlined:where(:not(.is-success,.is-error)):hover,.button.mod-outline:where(:not(.is-success,.is-error)):hover{--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}.button.mod-outlined:where(:not(.is-success,.is-error)):active,.button.mod-outline:where(:not(.is-success,.is-error)):active{--components-button-backgroundColor: var(--palettes-200, var(--palettes-neutral-200))}.button.mod-outlined:where(:not(.is-success,.is-error)):focus-visible,.button.mod-outline:where(:not(.is-success,.is-error)):focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:3px}.button.mod-outlined:where(:not(.is-success,.is-error)):disabled,.button.mod-outline:where(:not(.is-success,.is-error)):disabled{--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-boxShadow: 0 0 0 1px var(--commons-disabled-placeholder);--components-button-color: var(--palettes-neutral-500)}.button.mod-outlined.is-disabled,.button.mod-outlined.disabled,.button.mod-outline.is-disabled,.button.mod-outline.disabled{--components-button-backgroundColor: var(--palettes-neutral-0);--components-button-boxShadow: 0 0 0 1px var(--commons-disabled-placeholder);--components-button-color: var(--palettes-neutral-500)}.button.mod-text:where(:not(.is-success,.is-error)),.button.mod-link:where(:not(.is-success,.is-error)){--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-700, var(--palettes-neutral-700))}.button.mod-text:where(:not(.is-success,.is-error)):hover,.button.mod-text:where(:not(.is-success,.is-error)):focus-visible,.button.mod-link:where(:not(.is-success,.is-error)):hover,.button.mod-link:where(:not(.is-success,.is-error)):focus-visible{--components-button-color: var(--palettes-700, var(--palettes-neutral-700));--components-button-backgroundColor: var(--palettes-100, var(--palettes-neutral-100))}.button.mod-text:where(:not(.is-success,.is-error)):active,.button.mod-link:where(:not(.is-success,.is-error)):active{--components-button-backgroundColor: var(--palettes-200, var(--palettes-neutral-200))}.button.mod-text:where(:not(.is-success,.is-error)):disabled,.button.mod-link:where(:not(.is-success,.is-error)):disabled{--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-neutral-500)}.button.mod-text.is-disabled,.button.mod-text.disabled,.button.mod-link.is-disabled,.button.mod-link.disabled{--components-button-backgroundColor: transparent;--components-button-color: var(--palettes-neutral-500)}.button.mod-withIcon{--components-button-padding: var(--pr-t-spacings-100) var(--pr-t-spacings-150)}.button.mod-withIcon.mod-S{--components-button-padding: var(--pr-t-spacings-75) var(--pr-t-spacings-150)}.button.mod-withIcon.mod-XS{--components-button-padding: var(--pr-t-spacings-50) var(--pr-t-spacings-100)}.button.mod-withIcon.mod-iconOnLeft{padding-inline-start:var(--pr-t-spacings-150)}.button.mod-withIcon.mod-iconOnRight{padding-inline-end:var(--pr-t-spacings-150)}.button.mod-onlyIcon{--components-button-padding: var(--pr-t-spacings-100)}.button.mod-onlyIcon.mod-S{--components-button-padding: var(--pr-t-spacings-75)}.button.mod-onlyIcon.mod-XS{--components-button-padding: var(--pr-t-spacings-50)}.button.mod-delete:hover{--components-button-color: var(--palettes-error-700);--components-button-backgroundColor: var(--palettes-error-100)}.button.mod-delete:active{--components-button-color: var(--palettes-error-700);--components-button-backgroundColor: var(--palettes-error-200)}.button.mod-delete.mod-text:hover,.button.mod-delete.mod-text:focus-visible,.button.mod-delete.mod-link:hover,.button.mod-delete.mod-link:focus-visible{--components-button-color: var(--palettes-error-700);--components-button-backgroundColor: var(--palettes-error-100)}.button.mod-delete.mod-text:active,.button.mod-delete.mod-link:active{--components-button-color: var(--palettes-error-700);--components-button-backgroundColor: var(--palettes-error-200)}.button.mod-delete.mod-outlined:hover,.button.mod-delete.mod-outline:hover{--components-button-boxShadow: 0 0 0 var(--commons-divider-width) var(--palettes-error-400);--components-button-color: var(--palettes-error-700);--components-button-backgroundColor: var(--palettes-error-100)}.button.mod-delete.mod-outlined:focus-visible,.button.mod-delete.mod-outline:focus-visible{--components-button-boxShadow: 0 0 0 var(--commons-divider-width) var(--palettes-error-400);--components-button-color: var(--palettes-error-700)}.button.mod-delete.mod-outlined:active,.button.mod-delete.mod-outline:active{--components-button-color: var(--palettes-error-700);--components-button-backgroundColor: var(--palettes-error-200)}.button.mod-inverted,.button.mod-invert{--components-button-color: var(--palettes-neutral-0)}.button.mod-inverted:hover,.button.mod-inverted:focus-visible,.button.mod-invert:hover,.button.mod-invert:focus-visible{--components-button-color: var(--palettes-neutral-0);--components-button-backgroundColor: var(--palettes-neutral-900)}.button.mod-inverted:active,.button.mod-invert:active{--components-button-backgroundColor: var(--palettes-neutral-700)}.button.mod-more{--components-button-minWidth: 2rem;--components-button-padding: 0}.button.mod-more:before{--icon-content: \"\\e97c\";font-weight:400;display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;content:var(--icon-content);-webkit-font-smoothing:antialiased;text-transform:none;block-size:0;vertical-align:text-top}.button.mod-more.mod-S{--components-button-minWidth: 1.75rem}.button.mod-more.mod-XS{--components-button-minWidth: 1.5rem}.button.is-loading,.button.loading{--components-button-opacity: .4;--components-button-pointerEvents: none;--components-button-color: transparent;--components-button-userSelect: none}.button.is-loading:after,.button.loading:after{content:\"\";inline-size:var(--components-button-font-size);block-size:var(--components-button-font-size);border-radius:var(--commons-borderRadius-full);line-height:.8rem;border-width:var(--commons-loading-borderWidth);inset:0;margin:auto;position:absolute;border-style:solid;animation-name:rotate;animation-duration:var(--commons-loading-speed);animation-timing-function:linear;animation-iteration-count:infinite;border-color:var(--commons-loading-frontground);border-block-start-color:transparent}.button.is-loading.mod-S:after,.button.loading.mod-S:after{content:\"\";inline-size:var(--sizes-S-fontSize);block-size:var(--sizes-S-fontSize);border-radius:var(--commons-borderRadius-full);line-height:.8rem;border-width:var(--commons-loading-borderWidth);inset:0;margin:auto;position:absolute;border-style:solid;animation-name:rotate;animation-duration:var(--commons-loading-speed);animation-timing-function:linear;animation-iteration-count:infinite;border-color:var(--commons-loading-frontground);border-block-start-color:transparent}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.button.is-error,.button.error{--palettes-text: #ffffff;--palettes-0: #ffffff;--palettes-50: #ffebec;--palettes-100: #ffd6d8;--palettes-200: #fdbebe;--palettes-300: #faa3a3;--palettes-400: #fa8989;--palettes-500: #f76e6e;--palettes-600: #f15050;--palettes-700: #da2f2f;--palettes-800: #aa0e0e;--palettes-900: #630303;--components-button-color: transparent;--components-button-pointerEvents: none;--components-button-userSelect: none}.button.is-error:after,.button.error:after{color:var(--palettes-neutral-0);font-size:calc(1.5 * var(--components-button-font-size));block-size:var(--components-button-line-height);inset:0;margin:auto;position:absolute}.button.is-error:after,.button.error:after{--icon-content: \"\\e9bf\";font-weight:400;display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;content:var(--icon-content);-webkit-font-smoothing:antialiased;text-transform:none}.button.is-success,.button.success{--palettes-text: #ffffff;--palettes-0: #ffffff;--palettes-50: #dbfae0;--palettes-100: #bef3c7;--palettes-200: #a2ebaf;--palettes-300: #84e695;--palettes-400: #68d97b;--palettes-500: #57c769;--palettes-600: #39b155;--palettes-700: #279b42;--palettes-800: #0a762e;--palettes-900: #004d20;--components-button-color: transparent;--components-button-pointerEvents: none;--components-button-userSelect: none}.button.is-success:after,.button.success:after{color:var(--palettes-neutral-0);font-size:calc(1.5 * var(--components-button-font-size));block-size:var(--components-button-line-height);inset:0;margin:auto;position:absolute}.button.is-success:after,.button.success:after{--icon-content: \"\\e97d\";font-weight:400;display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:Lucca icons;content:var(--icon-content);-webkit-font-smoothing:antialiased;text-transform:none}.button.is-disabled,.button.disabled{--components-button-cursor: default;--components-button-color: var(--palettes-neutral-500);--components-button-backgroundColor: var(--commons-disabled-background);--components-button-pointerEvents: none}.button.is-disabled .numericBadge,.button.disabled .numericBadge{background-color:var(--palettes-neutral-200);color:var(--palettes-neutral-500)}\n"] }]
64
64
  }], propDecorators: { size: [{
65
65
  type: Input
66
66
  }], block: [{
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-button.mjs","sources":["../../../packages/ng/button/button.component.ts","../../../packages/ng/button/lucca-front-ng-button.ts"],"sourcesContent":["import { booleanAttribute, ChangeDetectionStrategy, Component, ContentChild, ElementRef, inject, Input, OnChanges, ViewEncapsulation } from '@angular/core';\nimport { LuClass, Palette } from '@lucca-front/ng/core';\nimport { IconComponent } from '@lucca-front/ng/icon';\n\n@Component({\n\t// eslint-disable-next-line @angular-eslint/component-selector\n\tselector: 'button[luButton],a[luButton]',\n\tstandalone: true,\n\tproviders: [LuClass],\n\ttemplate: '<ng-content></ng-content>',\n\tstyleUrls: ['./button.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'button',\n\t},\n})\nexport class ButtonComponent implements OnChanges {\n\t#luClass = inject(LuClass);\n\t#elementRef = inject<ElementRef<HTMLButtonElement>>(ElementRef);\n\n\t@Input()\n\tsize: 'M' | 'S' | 'XS';\n\n\t@Input({\n\t\ttransform: booleanAttribute,\n\t})\n\tblock = false;\n\n\t@Input({\n\t\ttransform: booleanAttribute,\n\t})\n\tdelete = false;\n\n\t@Input()\n\tpalette: Palette = 'none';\n\n\t@Input()\n\tstate: 'default' | 'loading' | 'error' | 'success' = 'default';\n\n\t@Input()\n\t/**\n\t * '' is the default value when you just set the `luButton` directive without a value attached to it.\n\t * We just make this explicit here.\n\t */\n\tluButton: '' | 'outlined' | 'text' | 'text-invert' = '';\n\n\t#iconComponentRef?: ElementRef<HTMLElement>;\n\n\t@ContentChild(IconComponent, { read: ElementRef<HTMLElement> })\n\tset iconComponentRef(ref: ElementRef<HTMLElement>) {\n\t\tthis.#iconComponentRef = ref;\n\t\tthis.updateClasses();\n\t}\n\n\tprivate get iconOnly(): boolean {\n\t\tconst childNodes = Array.from(this.#elementRef?.nativeElement?.childNodes || []);\n\t\tconst noText = childNodes.every(({ nodeName }) => nodeName !== '#text');\n\t\t// ignore icon and comment\n\t\tconst noSpan =\n\t\t\tchildNodes.filter((node: HTMLElement) => {\n\t\t\t\treturn node.nodeName !== '#comment' && node.nodeName.toLowerCase() !== 'lu-icon' && !node?.className?.includes('u-mask');\n\t\t\t}).length == 0;\n\t\treturn !!this.#iconComponentRef && noSpan && noText;\n\t}\n\n\tngOnChanges(): void {\n\t\tthis.updateClasses();\n\t}\n\n\tupdateClasses(): void {\n\t\tconst ngClassConfig = {\n\t\t\t[`mod-${this.size}`]: !!this.size,\n\t\t\t[`mod-block`]: this.block,\n\t\t\t[`palette-${this.palette}`]: !!this.palette,\n\t\t\t[`is-${this.state}`]: !!this.state,\n\t\t\t['mod-onlyIcon']: this.iconOnly,\n\t\t\t['mod-withIcon']: this.#iconComponentRef !== undefined,\n\t\t\t['mod-delete']: this.delete,\n\t\t};\n\n\t\tif (this.luButton !== '') {\n\t\t\tif (this.luButton === 'text-invert') {\n\t\t\t\tngClassConfig['mod-text'] = true;\n\t\t\t\tngClassConfig['mod-invert'] = true;\n\t\t\t} else {\n\t\t\t\tngClassConfig[`mod-${this.luButton}`] = true;\n\t\t\t}\n\t\t}\n\t\tthis.#luClass.setState(ngClassConfig);\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-button.mjs","sources":["../../../packages/ng/button/button.component.ts","../../../packages/ng/button/lucca-front-ng-button.ts"],"sourcesContent":["import { booleanAttribute, ChangeDetectionStrategy, Component, ContentChild, ElementRef, inject, Input, OnChanges, ViewEncapsulation } from '@angular/core';\nimport { LuClass, Palette } from '@lucca-front/ng/core';\nimport { IconComponent } from '@lucca-front/ng/icon';\n\n@Component({\n\t// eslint-disable-next-line @angular-eslint/component-selector\n\tselector: 'button[luButton],a[luButton]',\n\tstandalone: true,\n\tproviders: [LuClass],\n\ttemplate: '<ng-content></ng-content>',\n\tstyleUrls: ['./button.component.scss'],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'button',\n\t},\n})\nexport class ButtonComponent implements OnChanges {\n\t#luClass = inject(LuClass);\n\t#elementRef = inject<ElementRef<HTMLButtonElement>>(ElementRef);\n\n\t@Input()\n\tsize: 'M' | 'S' | 'XS';\n\n\t@Input({\n\t\ttransform: booleanAttribute,\n\t})\n\tblock = false;\n\n\t@Input({\n\t\ttransform: booleanAttribute,\n\t})\n\tdelete = false;\n\n\t@Input()\n\tpalette: Palette = 'none';\n\n\t@Input()\n\tstate: 'default' | 'loading' | 'error' | 'success' = 'default';\n\n\t@Input()\n\t/**\n\t * '' is the default value when you just set the `luButton` directive without a value attached to it.\n\t * We just make this explicit here.\n\t */\n\tluButton: '' | 'outlined' | 'text' | 'text-invert' = '';\n\n\t#iconComponentRef?: ElementRef<HTMLElement>;\n\n\t@ContentChild(IconComponent, { read: ElementRef<HTMLElement> })\n\tset iconComponentRef(ref: ElementRef<HTMLElement>) {\n\t\tthis.#iconComponentRef = ref;\n\t\tthis.updateClasses();\n\t}\n\n\tprivate get iconOnly(): boolean {\n\t\tconst childNodes = Array.from(this.#elementRef?.nativeElement?.childNodes || []);\n\t\tconst noText = childNodes.every(({ nodeName }) => nodeName !== '#text');\n\t\t// ignore icon and comment\n\t\tconst noSpan =\n\t\t\tchildNodes.filter((node: HTMLElement) => {\n\t\t\t\treturn node.nodeName !== '#comment' && node.nodeName.toLowerCase() !== 'lu-icon' && !node?.className?.includes('u-mask');\n\t\t\t}).length == 0;\n\t\treturn !!this.#iconComponentRef && noSpan && noText;\n\t}\n\n\tngOnChanges(): void {\n\t\tthis.updateClasses();\n\t}\n\n\tupdateClasses(): void {\n\t\tconst ngClassConfig = {\n\t\t\t[`mod-${this.size}`]: !!this.size,\n\t\t\t[`mod-block`]: this.block,\n\t\t\t[`palette-${this.palette}`]: !!this.palette,\n\t\t\t[`is-${this.state}`]: !!this.state,\n\t\t\t['mod-onlyIcon']: this.iconOnly,\n\t\t\t['mod-withIcon']: this.#iconComponentRef !== undefined,\n\t\t\t['mod-delete']: this.delete,\n\t\t};\n\n\t\tif (this.luButton !== '') {\n\t\t\tif (this.luButton === 'text-invert') {\n\t\t\t\tngClassConfig['mod-text'] = true;\n\t\t\t\tngClassConfig['mod-invert'] = true;\n\t\t\t} else {\n\t\t\t\tngClassConfig[`mod-${this.luButton}`] = true;\n\t\t\t}\n\t\t}\n\t\tthis.#luClass.setState(ngClassConfig);\n\t}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}