@lucca-front/ng 22.0.3 → 22.1.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. package/README.md +0 -1
  2. package/fesm2022/lucca-front-ng-activity-feed.mjs +2 -2
  3. package/fesm2022/lucca-front-ng-activity-feed.mjs.map +1 -1
  4. package/fesm2022/lucca-front-ng-approbation-inbox.mjs +1 -1
  5. package/fesm2022/lucca-front-ng-approbation-inbox.mjs.map +1 -1
  6. package/fesm2022/lucca-front-ng-bubble-icon.mjs +2 -2
  7. package/fesm2022/lucca-front-ng-bubble-icon.mjs.map +1 -1
  8. package/fesm2022/lucca-front-ng-callout.mjs +2 -2
  9. package/fesm2022/lucca-front-ng-callout.mjs.map +1 -1
  10. package/fesm2022/lucca-front-ng-core-select-api.mjs +0 -9
  11. package/fesm2022/lucca-front-ng-core-select-api.mjs.map +1 -1
  12. package/fesm2022/lucca-front-ng-core-select-establishment.mjs +9 -32
  13. package/fesm2022/lucca-front-ng-core-select-establishment.mjs.map +1 -1
  14. package/fesm2022/lucca-front-ng-core-select-job-qualification.mjs +0 -11
  15. package/fesm2022/lucca-front-ng-core-select-job-qualification.mjs.map +1 -1
  16. package/fesm2022/lucca-front-ng-core-select-user.mjs +5 -10
  17. package/fesm2022/lucca-front-ng-core-select-user.mjs.map +1 -1
  18. package/fesm2022/lucca-front-ng-core-select.mjs +29 -65
  19. package/fesm2022/lucca-front-ng-core-select.mjs.map +1 -1
  20. package/fesm2022/lucca-front-ng-core.mjs +5 -1
  21. package/fesm2022/lucca-front-ng-core.mjs.map +1 -1
  22. package/fesm2022/lucca-front-ng-data-table.mjs +5 -8
  23. package/fesm2022/lucca-front-ng-data-table.mjs.map +1 -1
  24. package/fesm2022/lucca-front-ng-date2.mjs +41 -9
  25. package/fesm2022/lucca-front-ng-date2.mjs.map +1 -1
  26. package/fesm2022/lucca-front-ng-dialog.mjs +4 -9
  27. package/fesm2022/lucca-front-ng-dialog.mjs.map +1 -1
  28. package/fesm2022/lucca-front-ng-dropdown.mjs +0 -3
  29. package/fesm2022/lucca-front-ng-dropdown.mjs.map +1 -1
  30. package/fesm2022/lucca-front-ng-filter-pills.mjs +0 -27
  31. package/fesm2022/lucca-front-ng-filter-pills.mjs.map +1 -1
  32. package/fesm2022/lucca-front-ng-form-label.mjs +1 -1
  33. package/fesm2022/lucca-front-ng-form-label.mjs.map +1 -1
  34. package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-plain-text.mjs +2 -5
  35. package/fesm2022/lucca-front-ng-forms-rich-text-input-formatters-plain-text.mjs.map +1 -1
  36. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs +24 -56
  37. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs.map +1 -1
  38. package/fesm2022/lucca-front-ng-index-table.mjs +2 -2
  39. package/fesm2022/lucca-front-ng-index-table.mjs.map +1 -1
  40. package/fesm2022/lucca-front-ng-modal.mjs +2 -7
  41. package/fesm2022/lucca-front-ng-modal.mjs.map +1 -1
  42. package/fesm2022/lucca-front-ng-multi-select.mjs +3 -3
  43. package/fesm2022/lucca-front-ng-multi-select.mjs.map +1 -1
  44. package/fesm2022/lucca-front-ng-popover2.mjs +2 -2
  45. package/fesm2022/lucca-front-ng-popover2.mjs.map +1 -1
  46. package/fesm2022/lucca-front-ng-resource-card.mjs +2 -2
  47. package/fesm2022/lucca-front-ng-resource-card.mjs.map +1 -1
  48. package/fesm2022/lucca-front-ng-safe-content.mjs +3 -40
  49. package/fesm2022/lucca-front-ng-safe-content.mjs.map +1 -1
  50. package/package.json +4 -4
  51. package/schematics/collection.json +0 -5
  52. package/schematics/deprecated-resolver/index.js +4 -1
  53. package/schematics/lib/angular-component-ast.js +1 -3
  54. package/schematics/lib/deprecated-mapper.js +10 -2
  55. package/schematics/lib/html-ast.js +0 -26
  56. package/src/components/_listbox.scss +6 -12
  57. package/types/lucca-front-ng-core-select-api.d.ts +0 -11
  58. package/types/lucca-front-ng-core-select-establishment.d.ts +0 -7
  59. package/types/lucca-front-ng-core-select-job-qualification.d.ts +0 -8
  60. package/types/lucca-front-ng-core-select-user.d.ts +0 -6
  61. package/types/lucca-front-ng-core-select.d.ts +0 -13
  62. package/types/lucca-front-ng-core.d.ts +3 -1
  63. package/types/lucca-front-ng-data-table.d.ts +1 -3
  64. package/types/lucca-front-ng-date2.d.ts +6 -2
  65. package/types/lucca-front-ng-forms-rich-text-input.d.ts +2 -3
  66. package/types/lucca-front-ng-safe-content.d.ts +2 -8
  67. package/schematics/file-upload/index.js +0 -22
  68. package/schematics/file-upload/migration.js +0 -230
  69. package/schematics/file-upload/migration.spec.js +0 -56
  70. package/schematics/file-upload/schema.json +0 -23
@@ -41,7 +41,7 @@ class BubbleIconComponent {
41
41
  ...(ngDevMode ? [{ debugName: "direction" }] : /* istanbul ignore next */ []));
42
42
  }
43
43
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: BubbleIconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
44
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.4", type: BubbleIconComponent, isStandalone: true, selector: "lu-bubble-icon", inputs: { icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: true, transformFunction: null }, alt: { classPropertyName: "alt", publicName: "alt", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, palette: { classPropertyName: "palette", publicName: "palette", isSignal: true, isRequired: false, transformFunction: null }, bubbleDirection: { classPropertyName: "bubbleDirection", publicName: "bubbleDirection", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "paletteClass()", "class.mod-left": "direction() === 1", "class.mod-right": "direction() === 2", "class.mod-top": "direction() === 3", "class.mod-bottom": "direction() === 4", "class.mod-XS": "size() === \"XS\"", "class.mod-S": "size() === \"S\"", "class.mod-L": "size() === \"L\"" }, classAttribute: "bubbleIcon" }, ngImport: i0, template: "<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" class=\"bubbleIcon-bubble\">\n\t<path\n\t\tclass=\"bubbleIcon-bubble-pathInline\"\n\t\td=\"M8.02234 5.62248C18.6681.122 39.722-6.44995 39.9931 13.4051c.146 10.9657-1.8566 32.8782-21.3314 24.8746C-1.892 29.8346-5.51213 12.491 8.02234 5.62248\"\n\t/>\n\t<path\n\t\tclass=\"bubbleIcon-bubble-pathBlock\"\n\t\td=\"M2.25264 16.3895C8.11117 6.4042 21.9332-9.59108 32.4637 7.57789c5.8129 9.48391 15.5505 29.55471-4.5465 32.07901C6.70786 42.3228-5.2602 28.9757 2.25264 16.3895\"\n\t/>\n</svg>\n<span class=\"bubbleIcon-icon\">\n\t<lu-icon [icon]=\"icon()\" [alt]=\"alt() ?? undefined\" />\n</span>\n", styles: ["@layer components{.bubbleIcon{--components-bubbleIcon-size: var(--pr-t-spacings-500);--components-bubbleIcon-color: var(--palettes-700, var(--palettes-product-700));--components-bubbleIcon-bubble-path-fill: var(--palettes-100, var(--palettes-product-100));--components-bubbleIcon-bubble-pathBlock-display: none;--components-bubbleIcon-bubble-pathInline-display: inherit;--components-bubbleIcon-bubble-scale: 1;--components-bubbleIcon-icon-insetOffset: 1px;--components-bubbleIcon-icon-insetBlockStart: auto;--components-bubbleIcon-icon-insetBlockEnd: auto;--components-bubbleIcon-icon-insetInlineStart: auto;--components-bubbleIcon-icon-insetInlineEnd: auto;color:var(--components-bubbleIcon-color);inline-size:var(--components-bubbleIcon-size);block-size:var(--components-bubbleIcon-size);display:inline-grid}.bubbleIcon-icon,.bubbleIcon-bubble{grid-column-start:1;grid-row-start:1}.bubbleIcon-bubble{scale:var(--components-bubbleIcon-bubble-scale);inline-size:100%;block-size:100%}.bubbleIcon-bubble-pathBlock,.bubbleIcon-bubble-pathInline{fill:var(--components-bubbleIcon-bubble-path-fill)}.bubbleIcon-bubble-pathBlock{display:var(--components-bubbleIcon-bubble-pathBlock-display)}.bubbleIcon-bubble-pathInline{display:var(--components-bubbleIcon-bubble-pathInline-display)}.bubbleIcon-icon{display:flex;isolation:isolate;position:relative;inset-block-start:var(--components-bubbleIcon-icon-insetBlockStart);inset-block-end:var(--components-bubbleIcon-icon-insetBlockEnd);inset-inline-start:var(--components-bubbleIcon-icon-insetInlineStart);inset-inline-end:var(--components-bubbleIcon-icon-insetInlineEnd)}.bubbleIcon-icon lu-icon,.bubbleIcon-icon .lucca-icon{margin:auto}.bubbleIcon-icon lu-icon .lucca-icon,.bubbleIcon-icon .lucca-icon .lucca-icon{margin:0}}@layer mods{.bubbleIcon.mod-XS{--components-bubbleIcon-size: var(--pr-t-spacings-300)}.bubbleIcon.mod-XS .lucca-icon{--icon-size: 1rem}.bubbleIcon.mod-S{--components-bubbleIcon-size: var(--pr-t-spacings-400)}.bubbleIcon.mod-S .lucca-icon{--icon-size: 1.25rem}.bubbleIcon.mod-L{--components-bubbleIcon-size: var(--pr-t-spacings-600)}.bubbleIcon.mod-L .lucca-icon{--icon-size: 1.75rem}.bubbleIcon.is-success{--palettes-text: var(--palettes-success-text);--palettes-0: var(--palettes-success-0);--palettes-25: var(--palettes-success-25);--palettes-50: var(--palettes-success-50);--palettes-100: var(--palettes-success-100);--palettes-200: var(--palettes-success-200);--palettes-300: var(--palettes-success-300);--palettes-400: var(--palettes-success-400);--palettes-500: var(--palettes-success-500);--palettes-600: var(--palettes-success-600);--palettes-700: var(--palettes-success-700);--palettes-800: var(--palettes-success-800);--palettes-900: var(--palettes-success-900)}.bubbleIcon.is-critical{--palettes-text: var(--palettes-critical-text);--palettes-0: var(--palettes-critical-0);--palettes-25: var(--palettes-critical-25);--palettes-50: var(--palettes-critical-50);--palettes-100: var(--palettes-critical-100);--palettes-200: var(--palettes-critical-200);--palettes-300: var(--palettes-critical-300);--palettes-400: var(--palettes-critical-400);--palettes-500: var(--palettes-critical-500);--palettes-600: var(--palettes-critical-600);--palettes-700: var(--palettes-critical-700);--palettes-800: var(--palettes-critical-800);--palettes-900: var(--palettes-critical-900)}.bubbleIcon.is-warning{--palettes-text: var(--palettes-warning-text);--palettes-0: var(--palettes-warning-0);--palettes-25: var(--palettes-warning-25);--palettes-50: var(--palettes-warning-50);--palettes-100: var(--palettes-warning-100);--palettes-200: var(--palettes-warning-200);--palettes-300: var(--palettes-warning-300);--palettes-400: var(--palettes-warning-400);--palettes-500: var(--palettes-warning-500);--palettes-600: var(--palettes-warning-600);--palettes-700: var(--palettes-warning-700);--palettes-800: var(--palettes-warning-800);--palettes-900: var(--palettes-warning-900)}.bubbleIcon.mod-top{--components-bubbleIcon-icon-insetBlockStart: var(--components-bubbleIcon-icon-insetOffset);--components-bubbleIcon-bubble-pathBlock-display: inherit;--components-bubbleIcon-bubble-pathInline-display: none}.bubbleIcon.mod-bottom{--components-bubbleIcon-icon-insetBlockEnd: var(--components-bubbleIcon-icon-insetOffset);--components-bubbleIcon-bubble-pathBlock-display: inherit;--components-bubbleIcon-bubble-pathInline-display: none;--components-bubbleIcon-bubble-scale: -1 -1}.bubbleIcon.mod-left{--components-bubbleIcon-icon-insetInlineStart: var(--components-bubbleIcon-icon-insetOffset)}.bubbleIcon.mod-right{--components-bubbleIcon-icon-insetInlineEnd: var(--components-bubbleIcon-icon-insetOffset);--components-bubbleIcon-bubble-scale: -1 -1}}\n"], dependencies: [{ kind: "component", type: IconComponent, selector: "lu-icon, pr-icon", inputs: ["icon", "alt", "size", "color", "AI"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
44
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.4", type: BubbleIconComponent, isStandalone: true, selector: "lu-bubble-icon", inputs: { icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: true, transformFunction: null }, alt: { classPropertyName: "alt", publicName: "alt", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, palette: { classPropertyName: "palette", publicName: "palette", isSignal: true, isRequired: false, transformFunction: null }, bubbleDirection: { classPropertyName: "bubbleDirection", publicName: "bubbleDirection", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "paletteClass()", "class.mod-left": "direction() === 1", "class.mod-right": "direction() === 2", "class.mod-top": "direction() === 3", "class.mod-bottom": "direction() === 4", "class.mod-XS": "size() === \"XS\"", "class.mod-S": "size() === \"S\"", "class.mod-L": "size() === \"L\"" }, classAttribute: "bubbleIcon" }, ngImport: i0, template: "<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" class=\"bubbleIcon-bubble\">\n\t<path\n\t\tclass=\"bubbleIcon-bubble-pathInline\"\n\t\td=\"M8.02234 5.62248C18.6681.122 39.722-6.44995 39.9931 13.4051c.146 10.9657-1.8566 32.8782-21.3314 24.8746C-1.892 29.8346-5.51213 12.491 8.02234 5.62248\"\n\t/>\n\t<path\n\t\tclass=\"bubbleIcon-bubble-pathBlock\"\n\t\td=\"M2.25264 16.3895C8.11117 6.4042 21.9332-9.59108 32.4637 7.57789c5.8129 9.48391 15.5505 29.55471-4.5465 32.07901C6.70786 42.3228-5.2602 28.9757 2.25264 16.3895\"\n\t/>\n</svg>\n<span class=\"bubbleIcon-icon\">\n\t<lu-icon [icon]=\"icon()\" [alt]=\"alt() ?? undefined\" />\n</span>\n", styles: ["@layer components{.bubbleIcon{--components-bubbleIcon-size: var(--pr-t-spacings-500);--components-bubbleIcon-color: var(--palettes-700, var(--palettes-product-700));--components-bubbleIcon-bubble-path-fill: var(--palettes-100, var(--palettes-product-100));--components-bubbleIcon-bubble-pathBlock-display: none;--components-bubbleIcon-bubble-pathInline-display: inherit;--components-bubbleIcon-bubble-scale: 1;--components-bubbleIcon-icon-insetOffset: 1px;--components-bubbleIcon-icon-insetBlockStart: auto;--components-bubbleIcon-icon-insetBlockEnd: auto;--components-bubbleIcon-icon-insetInlineStart: auto;--components-bubbleIcon-icon-insetInlineEnd: auto;color:var(--components-bubbleIcon-color);inline-size:var(--components-bubbleIcon-size);block-size:var(--components-bubbleIcon-size);display:inline-grid}.bubbleIcon-icon,.bubbleIcon-bubble{grid-column-start:1;grid-row-start:1}.bubbleIcon-bubble{scale:var(--components-bubbleIcon-bubble-scale);inline-size:100%;block-size:100%}.bubbleIcon-bubble-pathBlock,.bubbleIcon-bubble-pathInline{fill:var(--components-bubbleIcon-bubble-path-fill)}.bubbleIcon-bubble-pathBlock{display:var(--components-bubbleIcon-bubble-pathBlock-display)}.bubbleIcon-bubble-pathInline{display:var(--components-bubbleIcon-bubble-pathInline-display)}.bubbleIcon-icon{display:flex;isolation:isolate;position:relative;inset-block-start:var(--components-bubbleIcon-icon-insetBlockStart);inset-block-end:var(--components-bubbleIcon-icon-insetBlockEnd);inset-inline-start:var(--components-bubbleIcon-icon-insetInlineStart);inset-inline-end:var(--components-bubbleIcon-icon-insetInlineEnd)}.bubbleIcon-icon lu-icon,.bubbleIcon-icon .lucca-icon{margin:auto}.bubbleIcon-icon lu-icon .lucca-icon,.bubbleIcon-icon .lucca-icon .lucca-icon{margin:0}}@layer mods{.bubbleIcon.mod-XS{--components-bubbleIcon-size: var(--pr-t-spacings-300);--icon-size: 1rem}.bubbleIcon.mod-S{--components-bubbleIcon-size: var(--pr-t-spacings-400);--icon-size: 1.25rem}.bubbleIcon.mod-L{--components-bubbleIcon-size: var(--pr-t-spacings-600);--icon-size: 1.75rem}.bubbleIcon.is-success{--palettes-text: var(--palettes-success-text);--palettes-0: var(--palettes-success-0);--palettes-25: var(--palettes-success-25);--palettes-50: var(--palettes-success-50);--palettes-100: var(--palettes-success-100);--palettes-200: var(--palettes-success-200);--palettes-300: var(--palettes-success-300);--palettes-400: var(--palettes-success-400);--palettes-500: var(--palettes-success-500);--palettes-600: var(--palettes-success-600);--palettes-700: var(--palettes-success-700);--palettes-800: var(--palettes-success-800);--palettes-900: var(--palettes-success-900)}.bubbleIcon.is-critical{--palettes-text: var(--palettes-critical-text);--palettes-0: var(--palettes-critical-0);--palettes-25: var(--palettes-critical-25);--palettes-50: var(--palettes-critical-50);--palettes-100: var(--palettes-critical-100);--palettes-200: var(--palettes-critical-200);--palettes-300: var(--palettes-critical-300);--palettes-400: var(--palettes-critical-400);--palettes-500: var(--palettes-critical-500);--palettes-600: var(--palettes-critical-600);--palettes-700: var(--palettes-critical-700);--palettes-800: var(--palettes-critical-800);--palettes-900: var(--palettes-critical-900)}.bubbleIcon.is-warning{--palettes-text: var(--palettes-warning-text);--palettes-0: var(--palettes-warning-0);--palettes-25: var(--palettes-warning-25);--palettes-50: var(--palettes-warning-50);--palettes-100: var(--palettes-warning-100);--palettes-200: var(--palettes-warning-200);--palettes-300: var(--palettes-warning-300);--palettes-400: var(--palettes-warning-400);--palettes-500: var(--palettes-warning-500);--palettes-600: var(--palettes-warning-600);--palettes-700: var(--palettes-warning-700);--palettes-800: var(--palettes-warning-800);--palettes-900: var(--palettes-warning-900)}.bubbleIcon.mod-top{--components-bubbleIcon-icon-insetBlockStart: var(--components-bubbleIcon-icon-insetOffset);--components-bubbleIcon-bubble-pathBlock-display: inherit;--components-bubbleIcon-bubble-pathInline-display: none}.bubbleIcon.mod-bottom{--components-bubbleIcon-icon-insetBlockEnd: var(--components-bubbleIcon-icon-insetOffset);--components-bubbleIcon-bubble-pathBlock-display: inherit;--components-bubbleIcon-bubble-pathInline-display: none;--components-bubbleIcon-bubble-scale: -1 -1}.bubbleIcon.mod-left{--components-bubbleIcon-icon-insetInlineStart: var(--components-bubbleIcon-icon-insetOffset)}.bubbleIcon.mod-right{--components-bubbleIcon-icon-insetInlineEnd: var(--components-bubbleIcon-icon-insetOffset);--components-bubbleIcon-bubble-scale: -1 -1}}\n"], dependencies: [{ kind: "component", type: IconComponent, selector: "lu-icon, pr-icon", inputs: ["icon", "alt", "size", "color", "AI"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
45
45
  }
46
46
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: BubbleIconComponent, decorators: [{
47
47
  type: Component,
@@ -55,7 +55,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImpor
55
55
  '[class.mod-XS]': 'size() === "XS"',
56
56
  '[class.mod-S]': 'size() === "S"',
57
57
  '[class.mod-L]': 'size() === "L"',
58
- }, imports: [IconComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" class=\"bubbleIcon-bubble\">\n\t<path\n\t\tclass=\"bubbleIcon-bubble-pathInline\"\n\t\td=\"M8.02234 5.62248C18.6681.122 39.722-6.44995 39.9931 13.4051c.146 10.9657-1.8566 32.8782-21.3314 24.8746C-1.892 29.8346-5.51213 12.491 8.02234 5.62248\"\n\t/>\n\t<path\n\t\tclass=\"bubbleIcon-bubble-pathBlock\"\n\t\td=\"M2.25264 16.3895C8.11117 6.4042 21.9332-9.59108 32.4637 7.57789c5.8129 9.48391 15.5505 29.55471-4.5465 32.07901C6.70786 42.3228-5.2602 28.9757 2.25264 16.3895\"\n\t/>\n</svg>\n<span class=\"bubbleIcon-icon\">\n\t<lu-icon [icon]=\"icon()\" [alt]=\"alt() ?? undefined\" />\n</span>\n", styles: ["@layer components{.bubbleIcon{--components-bubbleIcon-size: var(--pr-t-spacings-500);--components-bubbleIcon-color: var(--palettes-700, var(--palettes-product-700));--components-bubbleIcon-bubble-path-fill: var(--palettes-100, var(--palettes-product-100));--components-bubbleIcon-bubble-pathBlock-display: none;--components-bubbleIcon-bubble-pathInline-display: inherit;--components-bubbleIcon-bubble-scale: 1;--components-bubbleIcon-icon-insetOffset: 1px;--components-bubbleIcon-icon-insetBlockStart: auto;--components-bubbleIcon-icon-insetBlockEnd: auto;--components-bubbleIcon-icon-insetInlineStart: auto;--components-bubbleIcon-icon-insetInlineEnd: auto;color:var(--components-bubbleIcon-color);inline-size:var(--components-bubbleIcon-size);block-size:var(--components-bubbleIcon-size);display:inline-grid}.bubbleIcon-icon,.bubbleIcon-bubble{grid-column-start:1;grid-row-start:1}.bubbleIcon-bubble{scale:var(--components-bubbleIcon-bubble-scale);inline-size:100%;block-size:100%}.bubbleIcon-bubble-pathBlock,.bubbleIcon-bubble-pathInline{fill:var(--components-bubbleIcon-bubble-path-fill)}.bubbleIcon-bubble-pathBlock{display:var(--components-bubbleIcon-bubble-pathBlock-display)}.bubbleIcon-bubble-pathInline{display:var(--components-bubbleIcon-bubble-pathInline-display)}.bubbleIcon-icon{display:flex;isolation:isolate;position:relative;inset-block-start:var(--components-bubbleIcon-icon-insetBlockStart);inset-block-end:var(--components-bubbleIcon-icon-insetBlockEnd);inset-inline-start:var(--components-bubbleIcon-icon-insetInlineStart);inset-inline-end:var(--components-bubbleIcon-icon-insetInlineEnd)}.bubbleIcon-icon lu-icon,.bubbleIcon-icon .lucca-icon{margin:auto}.bubbleIcon-icon lu-icon .lucca-icon,.bubbleIcon-icon .lucca-icon .lucca-icon{margin:0}}@layer mods{.bubbleIcon.mod-XS{--components-bubbleIcon-size: var(--pr-t-spacings-300)}.bubbleIcon.mod-XS .lucca-icon{--icon-size: 1rem}.bubbleIcon.mod-S{--components-bubbleIcon-size: var(--pr-t-spacings-400)}.bubbleIcon.mod-S .lucca-icon{--icon-size: 1.25rem}.bubbleIcon.mod-L{--components-bubbleIcon-size: var(--pr-t-spacings-600)}.bubbleIcon.mod-L .lucca-icon{--icon-size: 1.75rem}.bubbleIcon.is-success{--palettes-text: var(--palettes-success-text);--palettes-0: var(--palettes-success-0);--palettes-25: var(--palettes-success-25);--palettes-50: var(--palettes-success-50);--palettes-100: var(--palettes-success-100);--palettes-200: var(--palettes-success-200);--palettes-300: var(--palettes-success-300);--palettes-400: var(--palettes-success-400);--palettes-500: var(--palettes-success-500);--palettes-600: var(--palettes-success-600);--palettes-700: var(--palettes-success-700);--palettes-800: var(--palettes-success-800);--palettes-900: var(--palettes-success-900)}.bubbleIcon.is-critical{--palettes-text: var(--palettes-critical-text);--palettes-0: var(--palettes-critical-0);--palettes-25: var(--palettes-critical-25);--palettes-50: var(--palettes-critical-50);--palettes-100: var(--palettes-critical-100);--palettes-200: var(--palettes-critical-200);--palettes-300: var(--palettes-critical-300);--palettes-400: var(--palettes-critical-400);--palettes-500: var(--palettes-critical-500);--palettes-600: var(--palettes-critical-600);--palettes-700: var(--palettes-critical-700);--palettes-800: var(--palettes-critical-800);--palettes-900: var(--palettes-critical-900)}.bubbleIcon.is-warning{--palettes-text: var(--palettes-warning-text);--palettes-0: var(--palettes-warning-0);--palettes-25: var(--palettes-warning-25);--palettes-50: var(--palettes-warning-50);--palettes-100: var(--palettes-warning-100);--palettes-200: var(--palettes-warning-200);--palettes-300: var(--palettes-warning-300);--palettes-400: var(--palettes-warning-400);--palettes-500: var(--palettes-warning-500);--palettes-600: var(--palettes-warning-600);--palettes-700: var(--palettes-warning-700);--palettes-800: var(--palettes-warning-800);--palettes-900: var(--palettes-warning-900)}.bubbleIcon.mod-top{--components-bubbleIcon-icon-insetBlockStart: var(--components-bubbleIcon-icon-insetOffset);--components-bubbleIcon-bubble-pathBlock-display: inherit;--components-bubbleIcon-bubble-pathInline-display: none}.bubbleIcon.mod-bottom{--components-bubbleIcon-icon-insetBlockEnd: var(--components-bubbleIcon-icon-insetOffset);--components-bubbleIcon-bubble-pathBlock-display: inherit;--components-bubbleIcon-bubble-pathInline-display: none;--components-bubbleIcon-bubble-scale: -1 -1}.bubbleIcon.mod-left{--components-bubbleIcon-icon-insetInlineStart: var(--components-bubbleIcon-icon-insetOffset)}.bubbleIcon.mod-right{--components-bubbleIcon-icon-insetInlineEnd: var(--components-bubbleIcon-icon-insetOffset);--components-bubbleIcon-bubble-scale: -1 -1}}\n"] }]
58
+ }, imports: [IconComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" class=\"bubbleIcon-bubble\">\n\t<path\n\t\tclass=\"bubbleIcon-bubble-pathInline\"\n\t\td=\"M8.02234 5.62248C18.6681.122 39.722-6.44995 39.9931 13.4051c.146 10.9657-1.8566 32.8782-21.3314 24.8746C-1.892 29.8346-5.51213 12.491 8.02234 5.62248\"\n\t/>\n\t<path\n\t\tclass=\"bubbleIcon-bubble-pathBlock\"\n\t\td=\"M2.25264 16.3895C8.11117 6.4042 21.9332-9.59108 32.4637 7.57789c5.8129 9.48391 15.5505 29.55471-4.5465 32.07901C6.70786 42.3228-5.2602 28.9757 2.25264 16.3895\"\n\t/>\n</svg>\n<span class=\"bubbleIcon-icon\">\n\t<lu-icon [icon]=\"icon()\" [alt]=\"alt() ?? undefined\" />\n</span>\n", styles: ["@layer components{.bubbleIcon{--components-bubbleIcon-size: var(--pr-t-spacings-500);--components-bubbleIcon-color: var(--palettes-700, var(--palettes-product-700));--components-bubbleIcon-bubble-path-fill: var(--palettes-100, var(--palettes-product-100));--components-bubbleIcon-bubble-pathBlock-display: none;--components-bubbleIcon-bubble-pathInline-display: inherit;--components-bubbleIcon-bubble-scale: 1;--components-bubbleIcon-icon-insetOffset: 1px;--components-bubbleIcon-icon-insetBlockStart: auto;--components-bubbleIcon-icon-insetBlockEnd: auto;--components-bubbleIcon-icon-insetInlineStart: auto;--components-bubbleIcon-icon-insetInlineEnd: auto;color:var(--components-bubbleIcon-color);inline-size:var(--components-bubbleIcon-size);block-size:var(--components-bubbleIcon-size);display:inline-grid}.bubbleIcon-icon,.bubbleIcon-bubble{grid-column-start:1;grid-row-start:1}.bubbleIcon-bubble{scale:var(--components-bubbleIcon-bubble-scale);inline-size:100%;block-size:100%}.bubbleIcon-bubble-pathBlock,.bubbleIcon-bubble-pathInline{fill:var(--components-bubbleIcon-bubble-path-fill)}.bubbleIcon-bubble-pathBlock{display:var(--components-bubbleIcon-bubble-pathBlock-display)}.bubbleIcon-bubble-pathInline{display:var(--components-bubbleIcon-bubble-pathInline-display)}.bubbleIcon-icon{display:flex;isolation:isolate;position:relative;inset-block-start:var(--components-bubbleIcon-icon-insetBlockStart);inset-block-end:var(--components-bubbleIcon-icon-insetBlockEnd);inset-inline-start:var(--components-bubbleIcon-icon-insetInlineStart);inset-inline-end:var(--components-bubbleIcon-icon-insetInlineEnd)}.bubbleIcon-icon lu-icon,.bubbleIcon-icon .lucca-icon{margin:auto}.bubbleIcon-icon lu-icon .lucca-icon,.bubbleIcon-icon .lucca-icon .lucca-icon{margin:0}}@layer mods{.bubbleIcon.mod-XS{--components-bubbleIcon-size: var(--pr-t-spacings-300);--icon-size: 1rem}.bubbleIcon.mod-S{--components-bubbleIcon-size: var(--pr-t-spacings-400);--icon-size: 1.25rem}.bubbleIcon.mod-L{--components-bubbleIcon-size: var(--pr-t-spacings-600);--icon-size: 1.75rem}.bubbleIcon.is-success{--palettes-text: var(--palettes-success-text);--palettes-0: var(--palettes-success-0);--palettes-25: var(--palettes-success-25);--palettes-50: var(--palettes-success-50);--palettes-100: var(--palettes-success-100);--palettes-200: var(--palettes-success-200);--palettes-300: var(--palettes-success-300);--palettes-400: var(--palettes-success-400);--palettes-500: var(--palettes-success-500);--palettes-600: var(--palettes-success-600);--palettes-700: var(--palettes-success-700);--palettes-800: var(--palettes-success-800);--palettes-900: var(--palettes-success-900)}.bubbleIcon.is-critical{--palettes-text: var(--palettes-critical-text);--palettes-0: var(--palettes-critical-0);--palettes-25: var(--palettes-critical-25);--palettes-50: var(--palettes-critical-50);--palettes-100: var(--palettes-critical-100);--palettes-200: var(--palettes-critical-200);--palettes-300: var(--palettes-critical-300);--palettes-400: var(--palettes-critical-400);--palettes-500: var(--palettes-critical-500);--palettes-600: var(--palettes-critical-600);--palettes-700: var(--palettes-critical-700);--palettes-800: var(--palettes-critical-800);--palettes-900: var(--palettes-critical-900)}.bubbleIcon.is-warning{--palettes-text: var(--palettes-warning-text);--palettes-0: var(--palettes-warning-0);--palettes-25: var(--palettes-warning-25);--palettes-50: var(--palettes-warning-50);--palettes-100: var(--palettes-warning-100);--palettes-200: var(--palettes-warning-200);--palettes-300: var(--palettes-warning-300);--palettes-400: var(--palettes-warning-400);--palettes-500: var(--palettes-warning-500);--palettes-600: var(--palettes-warning-600);--palettes-700: var(--palettes-warning-700);--palettes-800: var(--palettes-warning-800);--palettes-900: var(--palettes-warning-900)}.bubbleIcon.mod-top{--components-bubbleIcon-icon-insetBlockStart: var(--components-bubbleIcon-icon-insetOffset);--components-bubbleIcon-bubble-pathBlock-display: inherit;--components-bubbleIcon-bubble-pathInline-display: none}.bubbleIcon.mod-bottom{--components-bubbleIcon-icon-insetBlockEnd: var(--components-bubbleIcon-icon-insetOffset);--components-bubbleIcon-bubble-pathBlock-display: inherit;--components-bubbleIcon-bubble-pathInline-display: none;--components-bubbleIcon-bubble-scale: -1 -1}.bubbleIcon.mod-left{--components-bubbleIcon-icon-insetInlineStart: var(--components-bubbleIcon-icon-insetOffset)}.bubbleIcon.mod-right{--components-bubbleIcon-icon-insetInlineEnd: var(--components-bubbleIcon-icon-insetOffset);--components-bubbleIcon-bubble-scale: -1 -1}}\n"] }]
59
59
  }], propDecorators: { icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: true }] }], alt: [{ type: i0.Input, args: [{ isSignal: true, alias: "alt", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], palette: [{ type: i0.Input, args: [{ isSignal: true, alias: "palette", required: false }] }], bubbleDirection: [{ type: i0.Input, args: [{ isSignal: true, alias: "bubbleDirection", required: false }] }] } });
60
60
 
61
61
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-bubble-icon.mjs","sources":["../../../packages/ng/bubble-icon/bubble-icon.type.ts","../../../packages/ng/bubble-icon/bubble-icon.component.ts","../../../packages/ng/bubble-icon/bubble-icon.component.html","../../../packages/ng/bubble-icon/lucca-front-ng-bubble-icon.ts"],"sourcesContent":["/**\n * Available BubbleIconComponent Types\n */\n\nexport const BUBBLE_ICON_SIZE = ['XS', 'S', 'M', 'L'] as const;\nexport type BubbleIconSize = (typeof BUBBLE_ICON_SIZE)[number];\n\nexport const BUBBLE_ICON_DIRECTION = ['top', 'bottom', 'left', 'right', 'random'] as const;\nexport type BubbleIconDirection = (typeof BUBBLE_ICON_DIRECTION)[number];\n","import { ChangeDetectionStrategy, Component, computed, input, signal, ViewEncapsulation } from '@angular/core';\nimport { LuccaIcon } from '@lucca-front/icons';\nimport { DecorativePalette, Palette, ProductPalette } from '@lucca-front/ng/core';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { BubbleIconSize } from './bubble-icon.type';\n\n@Component({\n\tselector: 'lu-bubble-icon',\n\ttemplateUrl: './bubble-icon.component.html',\n\tstyleUrl: './bubble-icon.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'bubbleIcon',\n\t\t'[class]': 'paletteClass()',\n\t\t'[class.mod-left]': 'direction() === 1',\n\t\t'[class.mod-right]': 'direction() === 2',\n\t\t'[class.mod-top]': 'direction() === 3',\n\t\t'[class.mod-bottom]': 'direction() === 4',\n\t\t'[class.mod-XS]': 'size() === \"XS\"',\n\t\t'[class.mod-S]': 'size() === \"S\"',\n\t\t'[class.mod-L]': 'size() === \"L\"',\n\t},\n\timports: [IconComponent],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class BubbleIconComponent {\n\treadonly icon = input.required<LuccaIcon>();\n\treadonly alt = input<string | null>(null);\n\treadonly size = input<BubbleIconSize>('M');\n\n\treadonly palette = input<Palette | DecorativePalette | ProductPalette>('product');\n\treadonly paletteClass = computed(() => ({ [`palette-${this.palette()}`]: !!this.palette() }));\n\n\treadonly bubbleDirection = input<'top' | 'bottom' | 'left' | 'right' | 'random'>('random');\n\n\treadonly randomNumber = signal<number>(Math.floor(Math.random() * 4) + 1);\n\n\treadonly direction = computed(() => {\n\t\tswitch (this.bubbleDirection()) {\n\t\t\tcase 'left':\n\t\t\t\treturn 1;\n\t\t\tcase 'right':\n\t\t\t\treturn 2;\n\t\t\tcase 'top':\n\t\t\t\treturn 3;\n\t\t\tcase 'bottom':\n\t\t\t\treturn 4;\n\t\t\tdefault:\n\t\t\t\treturn this.randomNumber();\n\t\t}\n\t});\n}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" class=\"bubbleIcon-bubble\">\n\t<path\n\t\tclass=\"bubbleIcon-bubble-pathInline\"\n\t\td=\"M8.02234 5.62248C18.6681.122 39.722-6.44995 39.9931 13.4051c.146 10.9657-1.8566 32.8782-21.3314 24.8746C-1.892 29.8346-5.51213 12.491 8.02234 5.62248\"\n\t/>\n\t<path\n\t\tclass=\"bubbleIcon-bubble-pathBlock\"\n\t\td=\"M2.25264 16.3895C8.11117 6.4042 21.9332-9.59108 32.4637 7.57789c5.8129 9.48391 15.5505 29.55471-4.5465 32.07901C6.70786 42.3228-5.2602 28.9757 2.25264 16.3895\"\n\t/>\n</svg>\n<span class=\"bubbleIcon-icon\">\n\t<lu-icon [icon]=\"icon()\" [alt]=\"alt() ?? undefined\" />\n</span>\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-bubble-icon.mjs","sources":["../../../packages/ng/bubble-icon/bubble-icon.type.ts","../../../packages/ng/bubble-icon/bubble-icon.component.ts","../../../packages/ng/bubble-icon/bubble-icon.component.html","../../../packages/ng/bubble-icon/lucca-front-ng-bubble-icon.ts"],"sourcesContent":["/**\n * Available BubbleIconComponent Types\n */\n\nexport const BUBBLE_ICON_SIZE = ['XS', 'S', 'M', 'L'] as const;\nexport type BubbleIconSize = (typeof BUBBLE_ICON_SIZE)[number];\n\nexport const BUBBLE_ICON_DIRECTION = ['top', 'bottom', 'left', 'right', 'random'] as const;\nexport type BubbleIconDirection = (typeof BUBBLE_ICON_DIRECTION)[number];\n","import { ChangeDetectionStrategy, Component, computed, input, signal, ViewEncapsulation } from '@angular/core';\nimport { LuccaIcon } from '@lucca-front/icons';\nimport { DecorativePalette, Palette, ProductPalette } from '@lucca-front/ng/core';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { BubbleIconSize } from './bubble-icon.type';\n\n@Component({\n\tselector: 'lu-bubble-icon',\n\ttemplateUrl: './bubble-icon.component.html',\n\tstyleUrl: './bubble-icon.component.scss',\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'bubbleIcon',\n\t\t'[class]': 'paletteClass()',\n\t\t'[class.mod-left]': 'direction() === 1',\n\t\t'[class.mod-right]': 'direction() === 2',\n\t\t'[class.mod-top]': 'direction() === 3',\n\t\t'[class.mod-bottom]': 'direction() === 4',\n\t\t'[class.mod-XS]': 'size() === \"XS\"',\n\t\t'[class.mod-S]': 'size() === \"S\"',\n\t\t'[class.mod-L]': 'size() === \"L\"',\n\t},\n\timports: [IconComponent],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class BubbleIconComponent {\n\treadonly icon = input.required<LuccaIcon>();\n\treadonly alt = input<string | null>(null);\n\treadonly size = input<BubbleIconSize>('M');\n\n\treadonly palette = input<Palette | DecorativePalette | ProductPalette>('product');\n\treadonly paletteClass = computed(() => ({ [`palette-${this.palette()}`]: !!this.palette() }));\n\n\treadonly bubbleDirection = input<'top' | 'bottom' | 'left' | 'right' | 'random'>('random');\n\n\treadonly randomNumber = signal<number>(Math.floor(Math.random() * 4) + 1);\n\n\treadonly direction = computed(() => {\n\t\tswitch (this.bubbleDirection()) {\n\t\t\tcase 'left':\n\t\t\t\treturn 1;\n\t\t\tcase 'right':\n\t\t\t\treturn 2;\n\t\t\tcase 'top':\n\t\t\t\treturn 3;\n\t\t\tcase 'bottom':\n\t\t\t\treturn 4;\n\t\t\tdefault:\n\t\t\t\treturn this.randomNumber();\n\t\t}\n\t});\n}\n","<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"40\" height=\"40\" viewBox=\"0 0 40 40\" class=\"bubbleIcon-bubble\">\n\t<path\n\t\tclass=\"bubbleIcon-bubble-pathInline\"\n\t\td=\"M8.02234 5.62248C18.6681.122 39.722-6.44995 39.9931 13.4051c.146 10.9657-1.8566 32.8782-21.3314 24.8746C-1.892 29.8346-5.51213 12.491 8.02234 5.62248\"\n\t/>\n\t<path\n\t\tclass=\"bubbleIcon-bubble-pathBlock\"\n\t\td=\"M2.25264 16.3895C8.11117 6.4042 21.9332-9.59108 32.4637 7.57789c5.8129 9.48391 15.5505 29.55471-4.5465 32.07901C6.70786 42.3228-5.2602 28.9757 2.25264 16.3895\"\n\t/>\n</svg>\n<span class=\"bubbleIcon-icon\">\n\t<lu-icon [icon]=\"icon()\" [alt]=\"alt() ?? undefined\" />\n</span>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;AAAA;;AAEG;AAEI,MAAM,gBAAgB,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG;AAG7C,MAAM,qBAAqB,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ;;MCkBnE,mBAAmB,CAAA;AAnBhC,IAAA,WAAA,GAAA;QAoBU,IAAA,CAAA,IAAI,GAAG,KAAK,CAAC,QAAQ;iFAAa;QAClC,IAAA,CAAA,GAAG,GAAG,KAAK,CAAgB,IAAI;gFAAC;QAChC,IAAA,CAAA,IAAI,GAAG,KAAK,CAAiB,GAAG;iFAAC;QAEjC,IAAA,CAAA,OAAO,GAAG,KAAK,CAA+C,SAAS;oFAAC;QACxE,IAAA,CAAA,YAAY,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAA,QAAA,EAAW,IAAI,CAAC,OAAO,EAAE,CAAA,CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;yFAAC;QAEpF,IAAA,CAAA,eAAe,GAAG,KAAK,CAAiD,QAAQ;4FAAC;AAEjF,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAS,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC;yFAAC;AAEhE,QAAA,IAAA,CAAA,SAAS,GAAG,QAAQ,CAAC,MAAK;AAClC,YAAA,QAAQ,IAAI,CAAC,eAAe,EAAE;AAC7B,gBAAA,KAAK,MAAM;AACV,oBAAA,OAAO,CAAC;AACT,gBAAA,KAAK,OAAO;AACX,oBAAA,OAAO,CAAC;AACT,gBAAA,KAAK,KAAK;AACT,oBAAA,OAAO,CAAC;AACT,gBAAA,KAAK,QAAQ;AACZ,oBAAA,OAAO,CAAC;AACT,gBAAA;AACC,oBAAA,OAAO,IAAI,CAAC,YAAY,EAAE;;QAE7B,CAAC;sFAAC;AACF,IAAA;8GA1BY,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAnB,mBAAmB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,GAAA,EAAA,EAAA,iBAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,eAAA,EAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,gBAAA,EAAA,gBAAA,EAAA,mBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,eAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,mBAAA,EAAA,cAAA,EAAA,mBAAA,EAAA,aAAA,EAAA,kBAAA,EAAA,aAAA,EAAA,kBAAA,EAAA,EAAA,cAAA,EAAA,YAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECzBhC,4qBAaA,EAAA,MAAA,EAAA,CAAA,mgJAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDSW,aAAa,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,KAAA,EAAA,MAAA,EAAA,OAAA,EAAA,IAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAGX,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAnB/B,SAAS;AACC,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,gBAAgB,EAAA,aAAA,EAGX,iBAAiB,CAAC,IAAI,EAAA,IAAA,EAC/B;AACL,wBAAA,KAAK,EAAE,YAAY;AACnB,wBAAA,SAAS,EAAE,gBAAgB;AAC3B,wBAAA,kBAAkB,EAAE,mBAAmB;AACvC,wBAAA,mBAAmB,EAAE,mBAAmB;AACxC,wBAAA,iBAAiB,EAAE,mBAAmB;AACtC,wBAAA,oBAAoB,EAAE,mBAAmB;AACzC,wBAAA,gBAAgB,EAAE,iBAAiB;AACnC,wBAAA,eAAe,EAAE,gBAAgB;AACjC,wBAAA,eAAe,EAAE,gBAAgB;AACjC,qBAAA,EAAA,OAAA,EACQ,CAAC,aAAa,CAAC,EAAA,eAAA,EACP,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,4qBAAA,EAAA,MAAA,EAAA,CAAA,mgJAAA,CAAA,EAAA;;;AEvBhD;;AAEG;;"}
@@ -416,13 +416,13 @@ class CalloutComponent {
416
416
  ...(ngDevMode ? [{ debugName: "calloutClasses" }] : /* istanbul ignore next */ []));
417
417
  }
418
418
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: CalloutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
419
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.4", type: CalloutComponent, isStandalone: true, selector: "lu-callout", inputs: { intl: { classPropertyName: "intl", publicName: "intl", isSignal: true, isRequired: false, transformFunction: null }, heading: { classPropertyName: "heading", publicName: "heading", isSignal: true, isRequired: false, transformFunction: null }, hx: { classPropertyName: "hx", publicName: "hx", isSignal: true, isRequired: false, transformFunction: null }, palette: { classPropertyName: "palette", publicName: "palette", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, state: { classPropertyName: "state", publicName: "state", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, removable: { classPropertyName: "removable", publicName: "removable", isSignal: true, isRequired: false, transformFunction: null }, removed: { classPropertyName: "removed", publicName: "removed", isSignal: true, isRequired: false, transformFunction: null }, iconAlt: { classPropertyName: "iconAlt", publicName: "iconAlt", isSignal: true, isRequired: false, transformFunction: null }, AI: { classPropertyName: "AI", publicName: "AI", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { removedChange: "removedChange" }, host: { properties: { "attr.hidden": "removedRef() ? \"hidden\" : null" } }, ngImport: i0, template: "@if (!removedRef()) {\n\t<div class=\"callout\" [class]=\"calloutClasses()\" [class.mod-AI]=\"AI()\">\n\t\t@if (state() | luCalloutIcon: icon(); as calloutIcon) {\n\t\t\t<div class=\"callout-icon\">\n\t\t\t\t<lu-icon [icon]=\"calloutIcon\" [alt]=\"iconAlt() ?? undefined\" />\n\t\t\t</div>\n\t\t}\n\t\t<div class=\"callout-content\">\n\t\t\t@if (heading(); as heading) {\n\t\t\t\t<p [attr.role]=\"hx() ? 'heading' : null\" [attr.aria-level]=\"hx() ? hx() : null\" class=\"callout-content-title\">\n\t\t\t\t\t<ng-container *luPortal=\"heading\" />\n\t\t\t\t</p>\n\t\t\t}\n\t\t\t<div class=\"callout-content-description\">\n\t\t\t\t<ng-content />\n\t\t\t</div>\n\t\t</div>\n\t\t@if (removable()) {\n\t\t\t<button type=\"button\" class=\"callout-kill\" (click)=\"removedRef.set(true); removedChange.emit(true)\">\n\t\t\t\t<span class=\"pr-u-mask\">{{ intl().close }}</span>\n\t\t\t</button>\n\t\t}\n\t</div>\n}\n", styles: ["@charset \"UTF-8\";@layer components{.callout{--components-callout-gap: var(--pr-t-spacings-150);--components-callout-display: flex;--components-callout-padding: var(--pr-t-spacings-100) var(--pr-t-spacings-150);--components-callout-font: inherit;--components-callout-kill-size: 1.5rem;--components-callout-boxShadow: 0 0 0 var(--commons-divider-width) var(--palettes-300, var(--palettes-neutral-300));--components-callout-backgroundColor: var(--palettes-50, var(--palettes-neutral-50));--components-callout-content-description-display: block;--components-callout-content-description-action-marginBlockStart: var(--pr-t-spacings-50);--components-callout-content-description-action-marginBlockEnd: 0;--components-callout-content-description-action-paddingBlock: var(--pr-t-spacings-50);--components-callout-fontSize: inherit;--components-callout-lineHeight: inherit;align-items:flex-start;position:relative;border-radius:var(--pr-t-border-radius-default);background-color:var(--components-callout-backgroundColor);color:var(--pr-t-color-text);box-shadow:var(--components-callout-boxShadow);gap:var(--components-callout-gap);padding:var(--components-callout-padding);font:var(--components-callout-font);font-size:var(--components-callout-fontSize);line-height:var(--components-callout-lineHeight)}.callout:not([hidden]){display:var(--components-callout-display)}.callout a,.callout .link{--commons-text-link-color: var(--pr-t-color-text);--commons-text-link-hover: var(--palettes-neutral-900)}.callout-content{flex:1;display:flex;flex-direction:column;gap:var(--pr-t-spacings-50)}.callout-content-title{font-weight:var(--pr-t-font-fontWeight-semibold)}.callout-content-description{display:var(--components-callout-content-description-display);justify-content:space-between;gap:var(--pr-t-spacings-150);align-items:flex-start}.callout-content-description-actions{display:flex;gap:var(--pr-t-spacings-75);margin-block-start:var(--components-callout-content-description-action-marginBlockStart);margin-block-end:var(--components-callout-content-description-action-marginBlockEnd);padding-block:var(--components-callout-content-description-action-paddingBlock);padding-inline:0}.callout-icon{display:inline-flex;color:var(--palettes-700, var(--palettes-neutral-700))}.callout-kill{padding:0;border:0;inline-size:100%;background-color:transparent;color:inherit;text-align:start;display:block;font:inherit;cursor:pointer;color:var(--palettes-neutral-700);text-align:center;transition-duration:var(--commons-animations-durations-fast);transition-property:background-color;block-size:var(--components-callout-kill-size);inline-size:var(--components-callout-kill-size)}.callout-kill:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:2px;border-radius:var(--pr-t-border-radius-small)}.callout-kill:before{--icon-content: \"\\e9bf\";font-weight:var(--pr-t-font-fontWeight-regular);display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:var(--icon-fontFamily);content:var(--icon-content)/\"\";-webkit-font-smoothing:antialiased;text-transform:none;font-size:var(--pr-t-font-body-S-lineHeight)}}@layer mods{.callout.mod-S{--components-callout-padding: var(--pr-t-spacings-75) var(--pr-t-spacings-100);--components-callout-gap: var(--pr-t-spacings-100);--components-callout-font: var(--pr-t-font-body-S);--components-callout-kill-size: 1.25rem}.callout.mod-S .callout-icon{--icon-size: 1.25rem}.callout.mod-S .callout-content-description-actions .button{--icon-size: 1rem;--components-button-font: var(--pr-t-font-body-XS);--components-button-paddingBlock: var(--pr-t-spacings-50);--components-button-paddingInline: var(--pr-t-spacings-75);--components-button-gap: var(--pr-t-spacings-50);--components-button-borderRadius: var(--pr-t-border-radius-small)}.callout.mod-S .callout-content-description-actions .button .numericBadge{--components-numericBadge-size: 1rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS)}.callout.mod-S .callout-content-description-actions .button{--components-button-font-size: var(--pr-t-font-body-XS-fontSize);--components-button-line-height: var(--pr-t-font-body-XS-lineHeight)}.callout.mod-S .callout-content-description-actions .button:after{font-size:var(--pr-t-font-body-XS-lineHeight);block-size:var(--pr-t-font-body-XS-lineHeight)}.callout.mod-S{--components-callout-fontSize: var(--pr-t-font-body-S-fontSize);--components-callout-lineHeight: var(--pr-t-font-body-S-lineHeight)}.callout.mod-AI{--components-callout-boxShadow: var(--pr-t-elevation-shadow-button);--components-callout-backgroundColor: var(--pr-t-elevation-surface-raised)}.callout.mod-AI:before{content:\"\";pointer-events:none;position:absolute;inset:calc(var(--commons-divider-width) * -1);padding:var(--commons-divider-width);background-image:var(--pr-t-color-border-ai);border-radius:calc(var(--pr-t-border-radius-default) + var(--commons-divider-width));-webkit-mask:linear-gradient(var(--palettes-neutral-0)) content-box,linear-gradient(var(--palettes-neutral-0));mask:linear-gradient(var(--palettes-neutral-0)) content-box,linear-gradient(var(--palettes-neutral-0));-webkit-mask-composite:xor;mask-composite:exclude}.callout.mod-AI .callout-icon .lucca-icon{background-image:var(--pr-t-color-icon-ai);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.callout:has(.callout-content-description-actions) .button{--palettes-text: var(--palettes-neutral-text);--palettes-0: var(--palettes-neutral-0);--palettes-25: var(--palettes-neutral-25);--palettes-50: var(--palettes-neutral-50);--palettes-100: var(--palettes-neutral-100);--palettes-200: var(--palettes-neutral-200);--palettes-300: var(--palettes-neutral-300);--palettes-400: var(--palettes-neutral-400);--palettes-500: var(--palettes-neutral-500);--palettes-600: var(--palettes-neutral-600);--palettes-700: var(--palettes-neutral-700);--palettes-800: var(--palettes-neutral-800);--palettes-900: var(--palettes-neutral-900);--icon-size: 1.25rem;--components-button-font: var(--pr-t-font-body-S);--components-button-paddingBlock: var(--pr-t-spacings-75);--components-button-paddingInline: var(--pr-t-spacings-100);--components-button-gap: var(--pr-t-spacings-75)}.callout:has(.callout-content-description-actions) .button .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS)}.callout:has(.callout-content-description-actions) .button{--components-button-font-size: var(--pr-t-font-body-S-fontSize);--components-button-line-height: var(--pr-t-font-body-S-lineHeight)}.callout:has(.callout-content-description-actions) .button:after{font-size:var(--pr-t-font-body-S-lineHeight);block-size:var(--pr-t-font-body-S-lineHeight)}.callout:has(.callout-content-description-actions) .button.mod-outlined:focus-visible,.callout:has(.callout-content-description-actions) .button.mod-ghost:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:3px}.callout:has(.callout-content-description-actions) .button.mod-onlyIcon{--components-button-padding: var(--pr-t-spacings-75)}.callout:has(.callout-content-description-actions.mod-inline){--components-callout-content-description-display: flex;--components-callout-content-description-action-marginBlockStart: 0;--components-callout-content-description-action-paddingBlock: 0}.callout:has(.callout-content-description-actions.mod-inline) .button{--icon-size: 1rem;--components-button-font: var(--pr-t-font-body-XS);--components-button-paddingBlock: var(--pr-t-spacings-50);--components-button-paddingInline: var(--pr-t-spacings-75);--components-button-gap: var(--pr-t-spacings-50);--components-button-borderRadius: var(--pr-t-border-radius-small)}.callout:has(.callout-content-description-actions.mod-inline) .button .numericBadge{--components-numericBadge-size: 1rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS)}.callout:has(.callout-content-description-actions.mod-inline) .button{--components-button-font-size: var(--pr-t-font-body-XS-fontSize);--components-button-line-height: var(--pr-t-font-body-XS-lineHeight)}.callout:has(.callout-content-description-actions.mod-inline) .button:after{font-size:var(--pr-t-font-body-XS-lineHeight);block-size:var(--pr-t-font-body-XS-lineHeight)}.callout:has(.callout-content-description-actions.mod-inline) .button.mod-onlyIcon{--components-button-padding: var(--pr-t-spacings-50)}.callout:has(.callout-content-description-actions.mod-inline).mod-S{--components-callout-content-description-action-marginBlockStart: calc(var(--pr-t-spacings-25) * -1);--components-callout-content-description-action-marginBlockEnd: calc(var(--pr-t-spacings-25) * -1)}}@layer base{lu-callout{display:block}lu-callout[hidden]{display:none}}\n"], dependencies: [{ kind: "directive", type: PortalDirective, selector: "[luPortal]", inputs: ["luPortal", "luPortalContext"] }, { kind: "component", type: IconComponent, selector: "lu-icon, pr-icon", inputs: ["icon", "alt", "size", "color", "AI"] }, { kind: "pipe", type: CalloutIconPipe, name: "luCalloutIcon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
419
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.4", type: CalloutComponent, isStandalone: true, selector: "lu-callout", inputs: { intl: { classPropertyName: "intl", publicName: "intl", isSignal: true, isRequired: false, transformFunction: null }, heading: { classPropertyName: "heading", publicName: "heading", isSignal: true, isRequired: false, transformFunction: null }, hx: { classPropertyName: "hx", publicName: "hx", isSignal: true, isRequired: false, transformFunction: null }, palette: { classPropertyName: "palette", publicName: "palette", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, state: { classPropertyName: "state", publicName: "state", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, removable: { classPropertyName: "removable", publicName: "removable", isSignal: true, isRequired: false, transformFunction: null }, removed: { classPropertyName: "removed", publicName: "removed", isSignal: true, isRequired: false, transformFunction: null }, iconAlt: { classPropertyName: "iconAlt", publicName: "iconAlt", isSignal: true, isRequired: false, transformFunction: null }, AI: { classPropertyName: "AI", publicName: "AI", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { removedChange: "removedChange" }, host: { properties: { "attr.hidden": "removedRef() ? \"hidden\" : null" } }, ngImport: i0, template: "@if (!removedRef()) {\n\t<div class=\"callout\" [class]=\"calloutClasses()\" [class.mod-AI]=\"AI()\">\n\t\t@if (state() | luCalloutIcon: icon(); as calloutIcon) {\n\t\t\t<div class=\"callout-icon\">\n\t\t\t\t<lu-icon [icon]=\"calloutIcon\" [alt]=\"iconAlt() ?? undefined\" />\n\t\t\t</div>\n\t\t}\n\t\t<div class=\"callout-content\">\n\t\t\t@if (heading(); as heading) {\n\t\t\t\t<p [attr.role]=\"hx() ? 'heading' : null\" [attr.aria-level]=\"hx() ? hx() : null\" class=\"callout-content-title\">\n\t\t\t\t\t<ng-container *luPortal=\"heading\" />\n\t\t\t\t</p>\n\t\t\t}\n\t\t\t<div class=\"callout-content-description\">\n\t\t\t\t<ng-content />\n\t\t\t</div>\n\t\t</div>\n\t\t@if (removable()) {\n\t\t\t<button type=\"button\" class=\"callout-kill\" (click)=\"removedRef.set(true); removedChange.emit(true)\">\n\t\t\t\t<span class=\"pr-u-mask\">{{ intl().close }}</span>\n\t\t\t</button>\n\t\t}\n\t</div>\n}\n", styles: ["@charset \"UTF-8\";@layer components{.callout{--components-callout-gap: var(--pr-t-spacings-150);--components-callout-display: flex;--components-callout-padding: var(--pr-t-spacings-100) var(--pr-t-spacings-150);--components-callout-font: inherit;--components-callout-kill-size: 1.5rem;--components-callout-boxShadow: 0 0 0 var(--commons-divider-width) var(--palettes-300, var(--palettes-neutral-300));--components-callout-backgroundColor: var(--palettes-50, var(--palettes-neutral-50));--components-callout-content-description-display: block;--components-callout-content-description-action-marginBlockStart: var(--pr-t-spacings-50);--components-callout-content-description-action-marginBlockEnd: 0;--components-callout-content-description-action-paddingBlock: var(--pr-t-spacings-50);--components-callout-fontSize: inherit;--components-callout-lineHeight: inherit;align-items:flex-start;position:relative;border-radius:var(--pr-t-border-radius-default);background-color:var(--components-callout-backgroundColor);color:var(--pr-t-color-text);box-shadow:var(--components-callout-boxShadow);gap:var(--components-callout-gap);padding:var(--components-callout-padding);font:var(--components-callout-font);font-size:var(--components-callout-fontSize);line-height:var(--components-callout-lineHeight)}.callout:not([hidden]){display:var(--components-callout-display)}.callout a,.callout .link{--commons-text-link-color: var(--pr-t-color-text);--commons-text-link-hover: var(--palettes-neutral-900)}.callout-content{flex:1;display:flex;flex-direction:column;gap:var(--pr-t-spacings-50)}.callout-content-title{font-weight:var(--pr-t-font-fontWeight-semibold)}.callout-content-description{display:var(--components-callout-content-description-display);justify-content:space-between;gap:var(--pr-t-spacings-150);align-items:flex-start}.callout-content-description-actions{display:flex;gap:var(--pr-t-spacings-75);margin-block-start:var(--components-callout-content-description-action-marginBlockStart);margin-block-end:var(--components-callout-content-description-action-marginBlockEnd);padding-block:var(--components-callout-content-description-action-paddingBlock);padding-inline:0}.callout-icon{display:inline-flex;color:var(--palettes-700, var(--palettes-neutral-700))}.callout-kill{padding:0;border:0;inline-size:100%;background-color:transparent;color:inherit;text-align:start;display:block;font:inherit;cursor:pointer;color:var(--palettes-neutral-700);text-align:center;transition-duration:var(--commons-animations-durations-fast);transition-property:background-color;block-size:var(--components-callout-kill-size);inline-size:var(--components-callout-kill-size)}.callout-kill:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:2px;border-radius:var(--pr-t-border-radius-small)}.callout-kill:before{--icon-content: \"\\e9bf\";font-weight:var(--pr-t-font-fontWeight-regular);display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:var(--icon-fontFamily);content:var(--icon-content)/\"\";-webkit-font-smoothing:antialiased;text-transform:none;font-size:var(--pr-t-font-body-S-lineHeight)}}@layer mods{.callout.mod-S{--components-callout-padding: var(--pr-t-spacings-75) var(--pr-t-spacings-100);--components-callout-gap: var(--pr-t-spacings-100);--components-callout-font: var(--pr-t-font-body-S);--components-callout-kill-size: 1.25rem}.callout.mod-S .callout-icon{--icon-size: 1.25rem}.callout.mod-S .callout-content-description-actions .button{--icon-size: 1rem;--components-button-font: var(--pr-t-font-body-XS);--components-button-paddingBlock: var(--pr-t-spacings-50);--components-button-paddingInline: var(--pr-t-spacings-75);--components-button-gap: var(--pr-t-spacings-50);--components-button-borderRadius: var(--pr-t-border-radius-small)}.callout.mod-S .callout-content-description-actions .button .numericBadge{--components-numericBadge-size: 1rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS)}.callout.mod-S .callout-content-description-actions .button{--components-button-font-size: var(--pr-t-font-body-XS-fontSize);--components-button-line-height: var(--pr-t-font-body-XS-lineHeight)}.callout.mod-S .callout-content-description-actions .button:after{font-size:var(--pr-t-font-body-XS-lineHeight);block-size:var(--pr-t-font-body-XS-lineHeight)}.callout.mod-S{--components-callout-fontSize: var(--pr-t-font-body-S-fontSize);--components-callout-lineHeight: var(--pr-t-font-body-S-lineHeight)}.callout.mod-AI{--components-callout-boxShadow: var(--pr-t-elevation-shadow-button);--components-callout-backgroundColor: var(--pr-t-elevation-surface-raised)}.callout.mod-AI:before{content:\"\";pointer-events:none;position:absolute;inset:calc(var(--commons-divider-width) * -1);padding:var(--commons-divider-width);background-image:var(--pr-t-color-border-ai);border-radius:calc(var(--pr-t-border-radius-default) + var(--commons-divider-width));-webkit-mask:linear-gradient(var(--palettes-neutral-0)) content-box,linear-gradient(var(--palettes-neutral-0));mask:linear-gradient(var(--palettes-neutral-0)) content-box,linear-gradient(var(--palettes-neutral-0));-webkit-mask-composite:xor;mask-composite:exclude}.callout.mod-AI .callout-icon .lucca-icon:where(:not(:where(lu-icon,pr-icon) .lucca-icon)){background-image:var(--pr-t-color-icon-ai);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.callout.mod-AI .callout-icon :where(lu-icon,pr-icon) .lucca-icon{fill:url(#lu-icon-ai-gradient)}.callout:has(.callout-content-description-actions) .button{--palettes-text: var(--palettes-neutral-text);--palettes-0: var(--palettes-neutral-0);--palettes-25: var(--palettes-neutral-25);--palettes-50: var(--palettes-neutral-50);--palettes-100: var(--palettes-neutral-100);--palettes-200: var(--palettes-neutral-200);--palettes-300: var(--palettes-neutral-300);--palettes-400: var(--palettes-neutral-400);--palettes-500: var(--palettes-neutral-500);--palettes-600: var(--palettes-neutral-600);--palettes-700: var(--palettes-neutral-700);--palettes-800: var(--palettes-neutral-800);--palettes-900: var(--palettes-neutral-900);--icon-size: 1.25rem;--components-button-font: var(--pr-t-font-body-S);--components-button-paddingBlock: var(--pr-t-spacings-75);--components-button-paddingInline: var(--pr-t-spacings-100);--components-button-gap: var(--pr-t-spacings-75)}.callout:has(.callout-content-description-actions) .button .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS)}.callout:has(.callout-content-description-actions) .button{--components-button-font-size: var(--pr-t-font-body-S-fontSize);--components-button-line-height: var(--pr-t-font-body-S-lineHeight)}.callout:has(.callout-content-description-actions) .button:after{font-size:var(--pr-t-font-body-S-lineHeight);block-size:var(--pr-t-font-body-S-lineHeight)}.callout:has(.callout-content-description-actions) .button.mod-outlined:focus-visible,.callout:has(.callout-content-description-actions) .button.mod-ghost:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:3px}.callout:has(.callout-content-description-actions) .button.mod-onlyIcon{--components-button-padding: var(--pr-t-spacings-75)}.callout:has(.callout-content-description-actions.mod-inline){--components-callout-content-description-display: flex;--components-callout-content-description-action-marginBlockStart: 0;--components-callout-content-description-action-paddingBlock: 0}.callout:has(.callout-content-description-actions.mod-inline) .button{--icon-size: 1rem;--components-button-font: var(--pr-t-font-body-XS);--components-button-paddingBlock: var(--pr-t-spacings-50);--components-button-paddingInline: var(--pr-t-spacings-75);--components-button-gap: var(--pr-t-spacings-50);--components-button-borderRadius: var(--pr-t-border-radius-small)}.callout:has(.callout-content-description-actions.mod-inline) .button .numericBadge{--components-numericBadge-size: 1rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS)}.callout:has(.callout-content-description-actions.mod-inline) .button{--components-button-font-size: var(--pr-t-font-body-XS-fontSize);--components-button-line-height: var(--pr-t-font-body-XS-lineHeight)}.callout:has(.callout-content-description-actions.mod-inline) .button:after{font-size:var(--pr-t-font-body-XS-lineHeight);block-size:var(--pr-t-font-body-XS-lineHeight)}.callout:has(.callout-content-description-actions.mod-inline) .button.mod-onlyIcon{--components-button-padding: var(--pr-t-spacings-50)}.callout:has(.callout-content-description-actions.mod-inline).mod-S{--components-callout-content-description-action-marginBlockStart: calc(var(--pr-t-spacings-25) * -1);--components-callout-content-description-action-marginBlockEnd: calc(var(--pr-t-spacings-25) * -1)}}@layer base{lu-callout{display:block}lu-callout[hidden]{display:none}}\n"], dependencies: [{ kind: "directive", type: PortalDirective, selector: "[luPortal]", inputs: ["luPortal", "luPortalContext"] }, { kind: "component", type: IconComponent, selector: "lu-icon, pr-icon", inputs: ["icon", "alt", "size", "color", "AI"] }, { kind: "pipe", type: CalloutIconPipe, name: "luCalloutIcon" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
420
420
  }
421
421
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: CalloutComponent, decorators: [{
422
422
  type: Component,
423
423
  args: [{ selector: 'lu-callout', imports: [PortalDirective, CalloutIconPipe, IconComponent], host: {
424
424
  '[attr.hidden]': 'removedRef() ? "hidden" : null',
425
- }, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "@if (!removedRef()) {\n\t<div class=\"callout\" [class]=\"calloutClasses()\" [class.mod-AI]=\"AI()\">\n\t\t@if (state() | luCalloutIcon: icon(); as calloutIcon) {\n\t\t\t<div class=\"callout-icon\">\n\t\t\t\t<lu-icon [icon]=\"calloutIcon\" [alt]=\"iconAlt() ?? undefined\" />\n\t\t\t</div>\n\t\t}\n\t\t<div class=\"callout-content\">\n\t\t\t@if (heading(); as heading) {\n\t\t\t\t<p [attr.role]=\"hx() ? 'heading' : null\" [attr.aria-level]=\"hx() ? hx() : null\" class=\"callout-content-title\">\n\t\t\t\t\t<ng-container *luPortal=\"heading\" />\n\t\t\t\t</p>\n\t\t\t}\n\t\t\t<div class=\"callout-content-description\">\n\t\t\t\t<ng-content />\n\t\t\t</div>\n\t\t</div>\n\t\t@if (removable()) {\n\t\t\t<button type=\"button\" class=\"callout-kill\" (click)=\"removedRef.set(true); removedChange.emit(true)\">\n\t\t\t\t<span class=\"pr-u-mask\">{{ intl().close }}</span>\n\t\t\t</button>\n\t\t}\n\t</div>\n}\n", styles: ["@charset \"UTF-8\";@layer components{.callout{--components-callout-gap: var(--pr-t-spacings-150);--components-callout-display: flex;--components-callout-padding: var(--pr-t-spacings-100) var(--pr-t-spacings-150);--components-callout-font: inherit;--components-callout-kill-size: 1.5rem;--components-callout-boxShadow: 0 0 0 var(--commons-divider-width) var(--palettes-300, var(--palettes-neutral-300));--components-callout-backgroundColor: var(--palettes-50, var(--palettes-neutral-50));--components-callout-content-description-display: block;--components-callout-content-description-action-marginBlockStart: var(--pr-t-spacings-50);--components-callout-content-description-action-marginBlockEnd: 0;--components-callout-content-description-action-paddingBlock: var(--pr-t-spacings-50);--components-callout-fontSize: inherit;--components-callout-lineHeight: inherit;align-items:flex-start;position:relative;border-radius:var(--pr-t-border-radius-default);background-color:var(--components-callout-backgroundColor);color:var(--pr-t-color-text);box-shadow:var(--components-callout-boxShadow);gap:var(--components-callout-gap);padding:var(--components-callout-padding);font:var(--components-callout-font);font-size:var(--components-callout-fontSize);line-height:var(--components-callout-lineHeight)}.callout:not([hidden]){display:var(--components-callout-display)}.callout a,.callout .link{--commons-text-link-color: var(--pr-t-color-text);--commons-text-link-hover: var(--palettes-neutral-900)}.callout-content{flex:1;display:flex;flex-direction:column;gap:var(--pr-t-spacings-50)}.callout-content-title{font-weight:var(--pr-t-font-fontWeight-semibold)}.callout-content-description{display:var(--components-callout-content-description-display);justify-content:space-between;gap:var(--pr-t-spacings-150);align-items:flex-start}.callout-content-description-actions{display:flex;gap:var(--pr-t-spacings-75);margin-block-start:var(--components-callout-content-description-action-marginBlockStart);margin-block-end:var(--components-callout-content-description-action-marginBlockEnd);padding-block:var(--components-callout-content-description-action-paddingBlock);padding-inline:0}.callout-icon{display:inline-flex;color:var(--palettes-700, var(--palettes-neutral-700))}.callout-kill{padding:0;border:0;inline-size:100%;background-color:transparent;color:inherit;text-align:start;display:block;font:inherit;cursor:pointer;color:var(--palettes-neutral-700);text-align:center;transition-duration:var(--commons-animations-durations-fast);transition-property:background-color;block-size:var(--components-callout-kill-size);inline-size:var(--components-callout-kill-size)}.callout-kill:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:2px;border-radius:var(--pr-t-border-radius-small)}.callout-kill:before{--icon-content: \"\\e9bf\";font-weight:var(--pr-t-font-fontWeight-regular);display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:var(--icon-fontFamily);content:var(--icon-content)/\"\";-webkit-font-smoothing:antialiased;text-transform:none;font-size:var(--pr-t-font-body-S-lineHeight)}}@layer mods{.callout.mod-S{--components-callout-padding: var(--pr-t-spacings-75) var(--pr-t-spacings-100);--components-callout-gap: var(--pr-t-spacings-100);--components-callout-font: var(--pr-t-font-body-S);--components-callout-kill-size: 1.25rem}.callout.mod-S .callout-icon{--icon-size: 1.25rem}.callout.mod-S .callout-content-description-actions .button{--icon-size: 1rem;--components-button-font: var(--pr-t-font-body-XS);--components-button-paddingBlock: var(--pr-t-spacings-50);--components-button-paddingInline: var(--pr-t-spacings-75);--components-button-gap: var(--pr-t-spacings-50);--components-button-borderRadius: var(--pr-t-border-radius-small)}.callout.mod-S .callout-content-description-actions .button .numericBadge{--components-numericBadge-size: 1rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS)}.callout.mod-S .callout-content-description-actions .button{--components-button-font-size: var(--pr-t-font-body-XS-fontSize);--components-button-line-height: var(--pr-t-font-body-XS-lineHeight)}.callout.mod-S .callout-content-description-actions .button:after{font-size:var(--pr-t-font-body-XS-lineHeight);block-size:var(--pr-t-font-body-XS-lineHeight)}.callout.mod-S{--components-callout-fontSize: var(--pr-t-font-body-S-fontSize);--components-callout-lineHeight: var(--pr-t-font-body-S-lineHeight)}.callout.mod-AI{--components-callout-boxShadow: var(--pr-t-elevation-shadow-button);--components-callout-backgroundColor: var(--pr-t-elevation-surface-raised)}.callout.mod-AI:before{content:\"\";pointer-events:none;position:absolute;inset:calc(var(--commons-divider-width) * -1);padding:var(--commons-divider-width);background-image:var(--pr-t-color-border-ai);border-radius:calc(var(--pr-t-border-radius-default) + var(--commons-divider-width));-webkit-mask:linear-gradient(var(--palettes-neutral-0)) content-box,linear-gradient(var(--palettes-neutral-0));mask:linear-gradient(var(--palettes-neutral-0)) content-box,linear-gradient(var(--palettes-neutral-0));-webkit-mask-composite:xor;mask-composite:exclude}.callout.mod-AI .callout-icon .lucca-icon{background-image:var(--pr-t-color-icon-ai);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.callout:has(.callout-content-description-actions) .button{--palettes-text: var(--palettes-neutral-text);--palettes-0: var(--palettes-neutral-0);--palettes-25: var(--palettes-neutral-25);--palettes-50: var(--palettes-neutral-50);--palettes-100: var(--palettes-neutral-100);--palettes-200: var(--palettes-neutral-200);--palettes-300: var(--palettes-neutral-300);--palettes-400: var(--palettes-neutral-400);--palettes-500: var(--palettes-neutral-500);--palettes-600: var(--palettes-neutral-600);--palettes-700: var(--palettes-neutral-700);--palettes-800: var(--palettes-neutral-800);--palettes-900: var(--palettes-neutral-900);--icon-size: 1.25rem;--components-button-font: var(--pr-t-font-body-S);--components-button-paddingBlock: var(--pr-t-spacings-75);--components-button-paddingInline: var(--pr-t-spacings-100);--components-button-gap: var(--pr-t-spacings-75)}.callout:has(.callout-content-description-actions) .button .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS)}.callout:has(.callout-content-description-actions) .button{--components-button-font-size: var(--pr-t-font-body-S-fontSize);--components-button-line-height: var(--pr-t-font-body-S-lineHeight)}.callout:has(.callout-content-description-actions) .button:after{font-size:var(--pr-t-font-body-S-lineHeight);block-size:var(--pr-t-font-body-S-lineHeight)}.callout:has(.callout-content-description-actions) .button.mod-outlined:focus-visible,.callout:has(.callout-content-description-actions) .button.mod-ghost:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:3px}.callout:has(.callout-content-description-actions) .button.mod-onlyIcon{--components-button-padding: var(--pr-t-spacings-75)}.callout:has(.callout-content-description-actions.mod-inline){--components-callout-content-description-display: flex;--components-callout-content-description-action-marginBlockStart: 0;--components-callout-content-description-action-paddingBlock: 0}.callout:has(.callout-content-description-actions.mod-inline) .button{--icon-size: 1rem;--components-button-font: var(--pr-t-font-body-XS);--components-button-paddingBlock: var(--pr-t-spacings-50);--components-button-paddingInline: var(--pr-t-spacings-75);--components-button-gap: var(--pr-t-spacings-50);--components-button-borderRadius: var(--pr-t-border-radius-small)}.callout:has(.callout-content-description-actions.mod-inline) .button .numericBadge{--components-numericBadge-size: 1rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS)}.callout:has(.callout-content-description-actions.mod-inline) .button{--components-button-font-size: var(--pr-t-font-body-XS-fontSize);--components-button-line-height: var(--pr-t-font-body-XS-lineHeight)}.callout:has(.callout-content-description-actions.mod-inline) .button:after{font-size:var(--pr-t-font-body-XS-lineHeight);block-size:var(--pr-t-font-body-XS-lineHeight)}.callout:has(.callout-content-description-actions.mod-inline) .button.mod-onlyIcon{--components-button-padding: var(--pr-t-spacings-50)}.callout:has(.callout-content-description-actions.mod-inline).mod-S{--components-callout-content-description-action-marginBlockStart: calc(var(--pr-t-spacings-25) * -1);--components-callout-content-description-action-marginBlockEnd: calc(var(--pr-t-spacings-25) * -1)}}@layer base{lu-callout{display:block}lu-callout[hidden]{display:none}}\n"] }]
425
+ }, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "@if (!removedRef()) {\n\t<div class=\"callout\" [class]=\"calloutClasses()\" [class.mod-AI]=\"AI()\">\n\t\t@if (state() | luCalloutIcon: icon(); as calloutIcon) {\n\t\t\t<div class=\"callout-icon\">\n\t\t\t\t<lu-icon [icon]=\"calloutIcon\" [alt]=\"iconAlt() ?? undefined\" />\n\t\t\t</div>\n\t\t}\n\t\t<div class=\"callout-content\">\n\t\t\t@if (heading(); as heading) {\n\t\t\t\t<p [attr.role]=\"hx() ? 'heading' : null\" [attr.aria-level]=\"hx() ? hx() : null\" class=\"callout-content-title\">\n\t\t\t\t\t<ng-container *luPortal=\"heading\" />\n\t\t\t\t</p>\n\t\t\t}\n\t\t\t<div class=\"callout-content-description\">\n\t\t\t\t<ng-content />\n\t\t\t</div>\n\t\t</div>\n\t\t@if (removable()) {\n\t\t\t<button type=\"button\" class=\"callout-kill\" (click)=\"removedRef.set(true); removedChange.emit(true)\">\n\t\t\t\t<span class=\"pr-u-mask\">{{ intl().close }}</span>\n\t\t\t</button>\n\t\t}\n\t</div>\n}\n", styles: ["@charset \"UTF-8\";@layer components{.callout{--components-callout-gap: var(--pr-t-spacings-150);--components-callout-display: flex;--components-callout-padding: var(--pr-t-spacings-100) var(--pr-t-spacings-150);--components-callout-font: inherit;--components-callout-kill-size: 1.5rem;--components-callout-boxShadow: 0 0 0 var(--commons-divider-width) var(--palettes-300, var(--palettes-neutral-300));--components-callout-backgroundColor: var(--palettes-50, var(--palettes-neutral-50));--components-callout-content-description-display: block;--components-callout-content-description-action-marginBlockStart: var(--pr-t-spacings-50);--components-callout-content-description-action-marginBlockEnd: 0;--components-callout-content-description-action-paddingBlock: var(--pr-t-spacings-50);--components-callout-fontSize: inherit;--components-callout-lineHeight: inherit;align-items:flex-start;position:relative;border-radius:var(--pr-t-border-radius-default);background-color:var(--components-callout-backgroundColor);color:var(--pr-t-color-text);box-shadow:var(--components-callout-boxShadow);gap:var(--components-callout-gap);padding:var(--components-callout-padding);font:var(--components-callout-font);font-size:var(--components-callout-fontSize);line-height:var(--components-callout-lineHeight)}.callout:not([hidden]){display:var(--components-callout-display)}.callout a,.callout .link{--commons-text-link-color: var(--pr-t-color-text);--commons-text-link-hover: var(--palettes-neutral-900)}.callout-content{flex:1;display:flex;flex-direction:column;gap:var(--pr-t-spacings-50)}.callout-content-title{font-weight:var(--pr-t-font-fontWeight-semibold)}.callout-content-description{display:var(--components-callout-content-description-display);justify-content:space-between;gap:var(--pr-t-spacings-150);align-items:flex-start}.callout-content-description-actions{display:flex;gap:var(--pr-t-spacings-75);margin-block-start:var(--components-callout-content-description-action-marginBlockStart);margin-block-end:var(--components-callout-content-description-action-marginBlockEnd);padding-block:var(--components-callout-content-description-action-paddingBlock);padding-inline:0}.callout-icon{display:inline-flex;color:var(--palettes-700, var(--palettes-neutral-700))}.callout-kill{padding:0;border:0;inline-size:100%;background-color:transparent;color:inherit;text-align:start;display:block;font:inherit;cursor:pointer;color:var(--palettes-neutral-700);text-align:center;transition-duration:var(--commons-animations-durations-fast);transition-property:background-color;block-size:var(--components-callout-kill-size);inline-size:var(--components-callout-kill-size)}.callout-kill:focus-visible{outline:2px solid var(--palettes-700, var(--palettes-product-700));outline-offset:2px;border-radius:var(--pr-t-border-radius-small)}.callout-kill:before{--icon-content: \"\\e9bf\";font-weight:var(--pr-t-font-fontWeight-regular);display:inline-block;vertical-align:text-bottom;font-style:normal;font-family:var(--icon-fontFamily);content:var(--icon-content)/\"\";-webkit-font-smoothing:antialiased;text-transform:none;font-size:var(--pr-t-font-body-S-lineHeight)}}@layer mods{.callout.mod-S{--components-callout-padding: var(--pr-t-spacings-75) var(--pr-t-spacings-100);--components-callout-gap: var(--pr-t-spacings-100);--components-callout-font: var(--pr-t-font-body-S);--components-callout-kill-size: 1.25rem}.callout.mod-S .callout-icon{--icon-size: 1.25rem}.callout.mod-S .callout-content-description-actions .button{--icon-size: 1rem;--components-button-font: var(--pr-t-font-body-XS);--components-button-paddingBlock: var(--pr-t-spacings-50);--components-button-paddingInline: var(--pr-t-spacings-75);--components-button-gap: var(--pr-t-spacings-50);--components-button-borderRadius: var(--pr-t-border-radius-small)}.callout.mod-S .callout-content-description-actions .button .numericBadge{--components-numericBadge-size: 1rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS)}.callout.mod-S .callout-content-description-actions .button{--components-button-font-size: var(--pr-t-font-body-XS-fontSize);--components-button-line-height: var(--pr-t-font-body-XS-lineHeight)}.callout.mod-S .callout-content-description-actions .button:after{font-size:var(--pr-t-font-body-XS-lineHeight);block-size:var(--pr-t-font-body-XS-lineHeight)}.callout.mod-S{--components-callout-fontSize: var(--pr-t-font-body-S-fontSize);--components-callout-lineHeight: var(--pr-t-font-body-S-lineHeight)}.callout.mod-AI{--components-callout-boxShadow: var(--pr-t-elevation-shadow-button);--components-callout-backgroundColor: var(--pr-t-elevation-surface-raised)}.callout.mod-AI:before{content:\"\";pointer-events:none;position:absolute;inset:calc(var(--commons-divider-width) * -1);padding:var(--commons-divider-width);background-image:var(--pr-t-color-border-ai);border-radius:calc(var(--pr-t-border-radius-default) + var(--commons-divider-width));-webkit-mask:linear-gradient(var(--palettes-neutral-0)) content-box,linear-gradient(var(--palettes-neutral-0));mask:linear-gradient(var(--palettes-neutral-0)) content-box,linear-gradient(var(--palettes-neutral-0));-webkit-mask-composite:xor;mask-composite:exclude}.callout.mod-AI .callout-icon .lucca-icon:where(:not(:where(lu-icon,pr-icon) .lucca-icon)){background-image:var(--pr-t-color-icon-ai);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.callout.mod-AI .callout-icon :where(lu-icon,pr-icon) .lucca-icon{fill:url(#lu-icon-ai-gradient)}.callout:has(.callout-content-description-actions) .button{--palettes-text: var(--palettes-neutral-text);--palettes-0: var(--palettes-neutral-0);--palettes-25: var(--palettes-neutral-25);--palettes-50: var(--palettes-neutral-50);--palettes-100: var(--palettes-neutral-100);--palettes-200: var(--palettes-neutral-200);--palettes-300: var(--palettes-neutral-300);--palettes-400: var(--palettes-neutral-400);--palettes-500: var(--palettes-neutral-500);--palettes-600: var(--palettes-neutral-600);--palettes-700: var(--palettes-neutral-700);--palettes-800: var(--palettes-neutral-800);--palettes-900: var(--palettes-neutral-900);--icon-size: 1.25rem;--components-button-font: var(--pr-t-font-body-S);--components-button-paddingBlock: var(--pr-t-spacings-75);--components-button-paddingInline: var(--pr-t-spacings-100);--components-button-gap: var(--pr-t-spacings-75)}.callout:has(.callout-content-description-actions) .button .numericBadge{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS)}.callout:has(.callout-content-description-actions) .button{--components-button-font-size: var(--pr-t-font-body-S-fontSize);--components-button-line-height: var(--pr-t-font-body-S-lineHeight)}.callout:has(.callout-content-description-actions) .button:after{font-size:var(--pr-t-font-body-S-lineHeight);block-size:var(--pr-t-font-body-S-lineHeight)}.callout:has(.callout-content-description-actions) .button.mod-outlined:focus-visible,.callout:has(.callout-content-description-actions) .button.mod-ghost:focus-visible{outline:2px solid var(--palettes-product-700);outline-offset:3px}.callout:has(.callout-content-description-actions) .button.mod-onlyIcon{--components-button-padding: var(--pr-t-spacings-75)}.callout:has(.callout-content-description-actions.mod-inline){--components-callout-content-description-display: flex;--components-callout-content-description-action-marginBlockStart: 0;--components-callout-content-description-action-paddingBlock: 0}.callout:has(.callout-content-description-actions.mod-inline) .button{--icon-size: 1rem;--components-button-font: var(--pr-t-font-body-XS);--components-button-paddingBlock: var(--pr-t-spacings-50);--components-button-paddingInline: var(--pr-t-spacings-75);--components-button-gap: var(--pr-t-spacings-50);--components-button-borderRadius: var(--pr-t-border-radius-small)}.callout:has(.callout-content-description-actions.mod-inline) .button .numericBadge{--components-numericBadge-size: 1rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS)}.callout:has(.callout-content-description-actions.mod-inline) .button{--components-button-font-size: var(--pr-t-font-body-XS-fontSize);--components-button-line-height: var(--pr-t-font-body-XS-lineHeight)}.callout:has(.callout-content-description-actions.mod-inline) .button:after{font-size:var(--pr-t-font-body-XS-lineHeight);block-size:var(--pr-t-font-body-XS-lineHeight)}.callout:has(.callout-content-description-actions.mod-inline) .button.mod-onlyIcon{--components-button-padding: var(--pr-t-spacings-50)}.callout:has(.callout-content-description-actions.mod-inline).mod-S{--components-callout-content-description-action-marginBlockStart: calc(var(--pr-t-spacings-25) * -1);--components-callout-content-description-action-marginBlockEnd: calc(var(--pr-t-spacings-25) * -1)}}@layer base{lu-callout{display:block}lu-callout[hidden]{display:none}}\n"] }]
426
426
  }], propDecorators: { intl: [{ type: i0.Input, args: [{ isSignal: true, alias: "intl", required: false }] }], heading: [{ type: i0.Input, args: [{ isSignal: true, alias: "heading", required: false }] }], hx: [{ type: i0.Input, args: [{ isSignal: true, alias: "hx", required: false }] }], palette: [{ type: i0.Input, args: [{ isSignal: true, alias: "palette", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], state: [{ type: i0.Input, args: [{ isSignal: true, alias: "state", required: false }] }], icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: false }] }], removable: [{ type: i0.Input, args: [{ isSignal: true, alias: "removable", required: false }] }], removed: [{ type: i0.Input, args: [{ isSignal: true, alias: "removed", required: false }] }], iconAlt: [{ type: i0.Input, args: [{ isSignal: true, alias: "iconAlt", required: false }] }], AI: [{ type: i0.Input, args: [{ isSignal: true, alias: "AI", required: false }] }], removedChange: [{ type: i0.Output, args: ["removedChange"] }] } });
427
427
 
428
428
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-callout.mjs","sources":["../../../packages/ng/callout/callout-actions/callout-actions.component.ts","../../../packages/ng/callout/callout.type.ts","../../../packages/ng/callout/callout.utils.ts","../../../packages/ng/callout/callout-icon.pipe.ts","../../../packages/ng/callout/callout-disclosure/callout-disclosure.component.ts","../../../packages/ng/callout/callout-disclosure/callout-disclosure.component.html","../../../packages/ng/callout/callout-feedback-item/callout-feedback-item.component.ts","../../../packages/ng/callout/callout-feedback-item/callout-feedback-item.component.html","../../../packages/ng/callout/callout-feedback-list/callout-feedback-list.component.ts","../../../packages/ng/callout/callout-popover/callout-popover.component.ts","../../../packages/ng/callout/callout-popover/callout-popover.component.html","../../../packages/ng/callout/translations.ts","../../../packages/ng/callout/callout.translate.ts","../../../packages/ng/callout/callout/callout.component.ts","../../../packages/ng/callout/callout/callout.component.html","../../../packages/ng/callout/lucca-front-ng-callout.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, input, ViewEncapsulation } from '@angular/core';\nimport { luBooleanAttribute } from '@lucca-front/ng/core';\n\n@Component({\n\tselector: 'lu-callout-actions',\n\ttemplate: '<ng-content />',\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'callout-content-description-actions',\n\t\t'[class.mod-inline]': 'inline()',\n\t},\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CalloutActionsComponent {\n\treadonly inline = input(false, { transform: luBooleanAttribute });\n}\n","import { LuccaIcon } from '@lucca-front/icons';\nimport { Palette } from '@lucca/prisme/core';\n\n/**\n * Available CalloutComponent Types\n */\n\nexport const CALLOUT_SIZE = ['M', 'S'] as const;\nexport type CalloutSize = (typeof CALLOUT_SIZE)[number];\n\nexport const CALLOUT_POPOVER_SIZE = ['M', 'S', 'XS'] as const;\nexport type CalloutPopoverSize = (typeof CALLOUT_POPOVER_SIZE)[number];\n\nexport const CalloutStates = ['success', 'warning', 'error'] as const;\nexport type CalloutState = (typeof CalloutStates)[number];\n\nexport const CALLOUT_HX = [1, 2, 3, 4, 5, 6] as const;\nexport type CalloutHx = (typeof CALLOUT_HX)[number];\n\nexport const CalloutStateMap: Record<CalloutState, { icon: LuccaIcon; palette: Palette }> = {\n\tsuccess: {\n\t\ticon: 'signSuccess',\n\t\tpalette: 'success',\n\t},\n\twarning: {\n\t\ticon: 'signWarning',\n\t\tpalette: 'warning',\n\t},\n\terror: {\n\t\ticon: 'signError',\n\t\tpalette: 'error',\n\t},\n};\n","import { LuccaIcon } from '@lucca-front/icons';\nimport { Palette } from '@lucca-front/ng/core';\nimport { CalloutState, CalloutStateMap } from './callout.type';\n\n/**\n * Get icon for callout\n *\n * If the icon is defined then it takes priority over the callout state icon\n */\nexport function getCalloutIcon(state: CalloutState | undefined, icon: LuccaIcon | undefined): LuccaIcon | undefined {\n\tif (state) {\n\t\tconst stateMap = CalloutStateMap[state] ?? { icon };\n\t\treturn icon ?? stateMap.icon;\n\t}\n\treturn icon;\n}\n\n/**\n * Get palette for callout\n *\n * If the palette is different from \"none\" then it takes priority over the callout state palette\n */\nexport function getCalloutPalette(state: CalloutState | undefined, palette: Palette): string {\n\tif (state) {\n\t\tconst stateMap = CalloutStateMap[state] ?? { palette };\n\t\treturn palette !== 'none' ? palette : stateMap.palette;\n\t}\n\treturn palette;\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { LuccaIcon } from '@lucca-front/icons';\nimport { CalloutState } from './callout.type';\nimport { getCalloutIcon } from './callout.utils';\n\n/**\n * Get icon for callout\n *\n * If the icon is defined then it takes priority over the callout state icon\n */\n@Pipe({\n\tname: 'luCalloutIcon',\n})\nexport class CalloutIconPipe implements PipeTransform {\n\ttransform(state: CalloutState | undefined, icon: LuccaIcon | undefined): LuccaIcon | undefined {\n\t\treturn getCalloutIcon(state, icon);\n\t}\n}\n","import { ChangeDetectionStrategy, Component, computed, input, output, ViewEncapsulation } from '@angular/core';\nimport { LuccaIcon } from '@lucca-front/icons';\nimport { luBooleanAttribute, Palette, PortalContent, PortalDirective } from '@lucca-front/ng/core';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { CalloutIconPipe } from '../callout-icon.pipe';\nimport { CalloutSize, CalloutState } from '../callout.type';\nimport { getCalloutPalette } from '../callout.utils';\n\n@Component({\n\tselector: 'lu-callout-disclosure',\n\timports: [IconComponent, PortalDirective, CalloutIconPipe],\n\ttemplateUrl: './callout-disclosure.component.html',\n\tstyleUrl: './callout-disclosure.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n})\nexport class CalloutDisclosureComponent {\n\t/**\n\t * The title of the disclosure callout\n\t */\n\treadonly heading = input.required<PortalContent>();\n\n\t/**\n\t * Which icon should we display in the disclosure callout if any?\n\t * Defaults to no icon.\n\t */\n\treadonly icon = input<LuccaIcon>();\n\n\t/**\n\t * Which palette should be used for the entire disclosure callout.\n\t * Defaults to none (inherits parent palette)\n\t */\n\treadonly palette = input<Palette>('none');\n\n\t/**\n\t * Which size should the disclosure callout be? Defaults to medium\n\t */\n\treadonly size = input<CalloutSize>('M');\n\n\t/**\n\t * State is a shorthand to set the icon and the palette to the recommended values for the icon and palette based on\n\t * the provided state.\n\t *\n\t * If one of the icon or palette inputs are filled along with the state input, their values will have the priority over\n\t * state (so setting state to success and palette to warning will make the palette warning)\n\t */\n\treadonly state = input<CalloutState>();\n\n\t/**\n\t * Is the disclosure callout is open by default\n\t */\n\treadonly open = input(false, { transform: luBooleanAttribute });\n\n\t/**\n\t * Emit boolean event when toggle disclosure callout opened\n\t */\n\treadonly openChange = output<boolean>();\n\n\treadonly calloutPalette = computed<string>(() => getCalloutPalette(this.state(), this.palette()));\n\n\treadonly calloutClasses = computed(() => {\n\t\tconst palette = this.calloutPalette();\n\t\treturn {\n\t\t\t[`mod-${this.size()}`]: !!this.size(),\n\t\t\t[`palette-${palette}`]: !!palette,\n\t\t};\n\t});\n\n\tpublic onToggle(event: Event) {\n\t\tif (event.target instanceof HTMLDetailsElement) {\n\t\t\tthis.openChange.emit(event.target.open);\n\t\t}\n\t}\n}\n","@let calloutIcon = state() | luCalloutIcon: icon();\n\n<details\n\tclass=\"calloutDisclosure\"\n\t[class]=\"calloutClasses()\"\n\t[class.mod-iconless]=\"!calloutIcon\"\n\t[open]=\"open()\"\n\t(toggle)=\"onToggle($event)\"\n>\n\t<summary class=\"calloutDisclosure-summary\">\n\t\t@if (calloutIcon) {\n\t\t\t<lu-icon class=\"calloutDisclosure-summary-icon\" [icon]=\"calloutIcon\" />\n\t\t}\n\t\t<span class=\"calloutDisclosure-summary-title\">\n\t\t\t<ng-container *luPortal=\"heading()\" />\n\t\t</span>\n\t\t<lu-icon class=\"calloutDisclosure-summary-chevron\" icon=\"arrowChevronBottom\" />\n\t</summary>\n\t<div class=\"calloutDisclosure-details\">\n\t\t<ng-content />\n\t</div>\n</details>\n","import { ChangeDetectionStrategy, Component, Directive, ViewEncapsulation } from '@angular/core';\n\n@Directive({\n\t// eslint-disable-next-line @angular-eslint/directive-selector\n\tselector: 'lu-feedback-item-description',\n})\nexport class CalloutFeedbackItemDescriptionDirective {}\n\n@Component({\n\tselector: 'li[lu-callout-feedback-item]',\n\ttemplateUrl: './callout-feedback-item.component.html',\n\tstyleUrl: './callout-feedback-item.component.scss',\n\thost: {\n\t\tclass: 'calloutFeedbackList-item',\n\t},\n\tencapsulation: ViewEncapsulation.None,\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CalloutFeedbackItemComponent {}\n","<span class=\"calloutFeedbackList-item-description\">\n\t<ng-content select=\"lu-feedback-item-description\" />\n</span>\n<div class=\"calloutFeedbackList-item-actions\">\n\t<ng-content select=\"[lu-feedback-item-action]\" />\n</div>\n","import { ChangeDetectionStrategy, Component, inject, input, ViewEncapsulation } from '@angular/core';\nimport { LuClass, Palette, ɵeffectWithDeps } from '@lucca-front/ng/core';\nimport { CalloutSize } from '../callout.type';\n\n@Component({\n\tselector: 'ul[lu-callout-feedback-list]',\n\ttemplate: '<ng-content />',\n\tstyleUrl: './callout-feedback-list.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thost: {\n\t\tclass: 'calloutFeedbackList',\n\t},\n\tproviders: [LuClass],\n\tencapsulation: ViewEncapsulation.None,\n})\nexport class CalloutFeedbackListComponent {\n\t#luClass = inject(LuClass);\n\n\t/**\n\t * Which palette should be used for the entire feedback list callout.\n\t * Defaults to none (inherits parent palette)\n\t */\n\treadonly palette = input<Palette>();\n\n\t/**\n\t * Which size should the feedback list callout be? Defaults to medium\n\t */\n\treadonly size = input<CalloutSize>();\n\n\tconstructor() {\n\t\tɵeffectWithDeps([this.palette, this.size], (palette, size) => this.#luClass.setState({ [`palette-${palette}`]: !!palette, [`mod-${size}`]: !!size }));\n\t}\n}\n","import { ConnectionPositionPair } from '@angular/cdk/overlay';\nimport { ChangeDetectionStrategy, Component, computed, contentChildren, input, ViewEncapsulation } from '@angular/core';\nimport { LuccaIcon } from '@lucca-front/icons';\nimport { luBooleanAttribute, luNumberAttribute, Palette, PortalContent, PortalDirective } from '@lucca-front/ng/core';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { PopoverDirective, PopoverPosition } from '@lucca-front/ng/popover2';\nimport { CalloutFeedbackItemComponent } from '../callout-feedback-item/callout-feedback-item.component';\nimport { CalloutIconPipe } from '../callout-icon.pipe';\nimport { CalloutPopoverSize, CalloutState } from '../callout.type';\nimport { getCalloutPalette } from '../callout.utils';\n\n@Component({\n\tselector: 'lu-callout-popover',\n\timports: [IconComponent, PortalDirective, PopoverDirective, CalloutIconPipe],\n\ttemplateUrl: './callout-popover.component.html',\n\tstyleUrl: './callout-popover.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n})\nexport class CalloutPopoverComponent {\n\t/**\n\t * Debounce for the popover to open (mouse will have to be on the element fox openDelay milliseconds for popover to show)\n\t */\n\treadonly openDelay = input(50, { transform: luNumberAttribute });\n\n\t/**\n\t * Debounce for the popover to close (mouse will have to be out of both popover and trigger for closeDelay milliseconds for it to close)\n\t */\n\treadonly closeDelay = input(500, { transform: luNumberAttribute });\n\n\t/**\n\t * Label (visual only) to put inside the button, often used to show just a number\n\t */\n\treadonly buttonLabel = input<string | number>();\n\n\t/**\n\t * Alternative for the button\n\t */\n\treadonly buttonAlt = input<string>('');\n\n\t/**\n\t * Hide callout popover title if there is only one item\n\t */\n\treadonly headingHiddenIfSingleItem = input(false, { transform: luBooleanAttribute });\n\n\treadonly popoverTrigger = input<'click' | 'click+hover' | 'hover+focus'>('click+hover');\n\n\t/**\n\t * Palette for both the button and the popover content\n\t */\n\treadonly palette = input<Palette>('none');\n\n\t/**\n\t * Size for both button and popover content\n\t */\n\treadonly size = input<CalloutPopoverSize>();\n\n\t/**\n\t * Icon shows in button and next to popover's title\n\t */\n\treadonly icon = input<LuccaIcon>();\n\n\t/**\n\t * State is a shorthand to set the icon and the palette to the recommended values for the icon and palette based on\n\t * the provided state.\n\t *\n\t * If one of the icon or palette inputs are filled along with the state input, their values will have the priority over\n\t * state (so setting state to success and palette to warning will make the palette warning)\n\t */\n\treadonly state = input<CalloutState>();\n\n\t/**\n\t * Heading for the details popover\n\t */\n\treadonly heading = input<PortalContent>();\n\n\t/**\n\t * Defines callout popover open position above by default\n\t */\n\treadonly popoverPosition = input<PopoverPosition>('above');\n\n\t/**\n\t * Defines custom callout popover open position override popoverPosition\n\t */\n\treadonly customPopoverPositions = input<ConnectionPositionPair[]>();\n\n\t/**\n\t * Disable callout popover apparition\n\t */\n\treadonly popoverDisabled = input(false, { transform: luBooleanAttribute });\n\n\treadonly feedbackItems = contentChildren(CalloutFeedbackItemComponent, { descendants: true });\n\n\treadonly contentSize = computed<'S' | 'M' | undefined>(() => {\n\t\tconst size = this.size();\n\t\treturn size === 'XS' ? 'S' : size;\n\t});\n\n\treadonly calloutOverlayClasses = computed(() => ({\n\t\t[`mod-${this.contentSize()}`]: !!this.contentSize(),\n\t}));\n\n\treadonly calloutPalette = computed(() => getCalloutPalette(this.state(), this.palette()));\n\n\treadonly calloutClasses = computed(() => {\n\t\tconst palette = this.calloutPalette();\n\t\treturn {\n\t\t\t[`mod-${this.size()}`]: !!this.size(),\n\t\t\t[`palette-${palette}`]: !!palette,\n\t\t};\n\t});\n\n\treadonly calloutOverlayHeadClasses = computed(() => ({\n\t\t[`palette-${this.calloutPalette()}`]: !!this.calloutPalette(),\n\t}));\n}\n","@let calloutIcon = state() | luCalloutIcon: icon();\n\n<button\n\ttype=\"button\"\n\tclass=\"calloutPopover\"\n\t[class]=\"calloutClasses()\"\n\t[luPopover2]=\"overlayContentRef\"\n\t[luPopoverPosition]=\"popoverPosition()\"\n\t[customPositions]=\"customPopoverPositions() ?? null\"\n\t[luPopoverTrigger]=\"popoverTrigger()\"\n\t[luPopoverOpenDelay]=\"openDelay()\"\n\t[luPopoverCloseDelay]=\"closeDelay()\"\n\t[luPopoverDisabled]=\"popoverDisabled()\"\n\t#overlayOriginRef\n>\n\t@if (calloutIcon) {\n\t\t<lu-icon class=\"calloutPopover-icon\" [icon]=\"calloutIcon\" />\n\t}\n\t<span class=\"calloutPopover-content\" aria-hidden=\"true\">{{ buttonLabel() }}</span>\n\t<span class=\"pr-u-mask\">{{ buttonAlt() || buttonLabel() }}</span>\n</button>\n<ng-template #overlayContentRef>\n\t<div class=\"lu-popover-content calloutPopover-overlay\" [class]=\"calloutOverlayClasses()\">\n\t\t@if (calloutIcon) {\n\t\t\t<div class=\"pr-u-flexShrink0\">\n\t\t\t\t<lu-icon class=\"calloutPopover-overlay-icon\" [class]=\"calloutOverlayHeadClasses()\" [icon]=\"calloutIcon\" />\n\t\t\t</div>\n\t\t}\n\t\t<div class=\"pr-u-flexGrow1\">\n\t\t\t@if (heading(); as heading) {\n\t\t\t\t@if (!headingHiddenIfSingleItem() || feedbackItems().length !== 1) {\n\t\t\t\t\t<div class=\"calloutPopover-overlay-head\">\n\t\t\t\t\t\t<strong class=\"calloutPopover-overlay-head-title\">\n\t\t\t\t\t\t\t<ng-container *luPortal=\"heading\" />\n\t\t\t\t\t\t</strong>\n\t\t\t\t\t</div>\n\t\t\t\t}\n\t\t\t}\n\t\t\t<div class=\"calloutPopover-overlay-content\">\n\t\t\t\t<ng-content />\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</ng-template>\n","export const Translations = {\n\tpt: {\n\t\tclose: 'Fechar',\n\t},\n\t'nl-BE': {\n\t\tclose: 'Sluiten',\n\t},\n\tnl: {\n\t\tclose: 'Sluiten',\n\t},\n\tit: {\n\t\tclose: 'Chiudere',\n\t},\n\tde: {\n\t\tclose: 'Schließen',\n\t},\n\tfr: {\n\t\tclose: 'Fermer',\n\t},\n\tes: {\n\t\tclose: 'Cerrar',\n\t},\n\ten: {\n\t\tclose: 'Close',\n\t},\n\tpl: {\n\t\tclose: 'Zamknij',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_CALLOUT_TRANSLATIONS = new InjectionToken('LuCalloutTranslations', {\n\tfactory: () => luCalloutTranslations,\n});\n\nexport interface LuCalloutLabel {\n\tclose: string;\n}\n\nexport const luCalloutTranslations: LuTranslation<LuCalloutLabel> = Translations;\n","import { ChangeDetectionStrategy, Component, computed, input, linkedSignal, output, ViewEncapsulation } from '@angular/core';\nimport { LuccaIcon } from '@lucca-front/icons';\nimport { intlInputOptions, luBooleanAttribute, luNumberAttribute, Palette, PortalContent, PortalDirective } from '@lucca-front/ng/core';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { CalloutIconPipe } from '../callout-icon.pipe';\nimport { LU_CALLOUT_TRANSLATIONS } from '../callout.translate';\nimport { CalloutHx, CalloutSize, CalloutState } from '../callout.type';\nimport { getCalloutPalette } from '../callout.utils';\n\n@Component({\n\tselector: 'lu-callout',\n\timports: [PortalDirective, CalloutIconPipe, IconComponent],\n\ttemplateUrl: './callout.component.html',\n\tstyleUrl: './callout.component.scss',\n\thost: {\n\t\t'[attr.hidden]': 'removedRef() ? \"hidden\" : null',\n\t},\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n})\nexport class CalloutComponent {\n\treadonly intl = input(...intlInputOptions(LU_CALLOUT_TRANSLATIONS));\n\n\t/**\n\t * The title of the callout\n\t */\n\treadonly heading = input<PortalContent>();\n\n\t/**\n\t * Define the aria level of the title\n\t */\n\treadonly hx = input(null, { transform: luNumberAttribute<CalloutHx> });\n\n\t/**\n\t * Which palette should be used for the entire callout.\n\t * Defaults to none (inherits parent palette)\n\t */\n\treadonly palette = input<Palette>('none');\n\n\t/**\n\t * Which size should the callout be? Defaults to medium\n\t */\n\treadonly size = input<CalloutSize>();\n\n\t/**\n\t * State is a shorthand to set the icon and the palette to the recommended values for the icon and palette based on\n\t * the provided state.\n\t *\n\t * If one of the icon or palette inputs are filled along with the state input, their values will have the priority over\n\t * state (so setting state to success and palette to warning will make the palette warning)\n\t */\n\treadonly state = input<CalloutState>();\n\n\t/**\n\t * Which icon should we display in the callout if any?\n\t * Defaults to no icon.\n\t */\n\treadonly icon = input<LuccaIcon>();\n\n\t/**\n\t * Should we display the remove icon?\n\t */\n\treadonly removable = input(false, { transform: luBooleanAttribute });\n\n\t/**\n\t * Is the callout removed? Works with two way binding too.\n\t */\n\treadonly removed = input(false, { transform: luBooleanAttribute });\n\n\t/**\n\t * Defines the icon’s alt attribute used for accessibility\n\t */\n\treadonly iconAlt = input<string | null>(null);\n\n\t/**\n\t * Displayed in AI mode\n\t */\n\treadonly AI = input(false, { transform: luBooleanAttribute });\n\n\t/**\n\t * Emit event when button removed is click\n\t */\n\treadonly removedChange = output<boolean>();\n\n\treadonly removedRef = linkedSignal(() => this.removed());\n\n\treadonly calloutClasses = computed(() => {\n\t\tconst palette = getCalloutPalette(this.state(), this.palette());\n\t\tconst size = this.size();\n\t\tconst AI = this.AI();\n\t\treturn {\n\t\t\t[`mod-${size}`]: !!size,\n\t\t\t[`palette-${palette}`]: !AI && !!palette,\n\t\t};\n\t});\n}\n","@if (!removedRef()) {\n\t<div class=\"callout\" [class]=\"calloutClasses()\" [class.mod-AI]=\"AI()\">\n\t\t@if (state() | luCalloutIcon: icon(); as calloutIcon) {\n\t\t\t<div class=\"callout-icon\">\n\t\t\t\t<lu-icon [icon]=\"calloutIcon\" [alt]=\"iconAlt() ?? undefined\" />\n\t\t\t</div>\n\t\t}\n\t\t<div class=\"callout-content\">\n\t\t\t@if (heading(); as heading) {\n\t\t\t\t<p [attr.role]=\"hx() ? 'heading' : null\" [attr.aria-level]=\"hx() ? hx() : null\" class=\"callout-content-title\">\n\t\t\t\t\t<ng-container *luPortal=\"heading\" />\n\t\t\t\t</p>\n\t\t\t}\n\t\t\t<div class=\"callout-content-description\">\n\t\t\t\t<ng-content />\n\t\t\t</div>\n\t\t</div>\n\t\t@if (removable()) {\n\t\t\t<button type=\"button\" class=\"callout-kill\" (click)=\"removedRef.set(true); removedChange.emit(true)\">\n\t\t\t\t<span class=\"pr-u-mask\">{{ intl().close }}</span>\n\t\t\t</button>\n\t\t}\n\t</div>\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["ɵeffectWithDeps"],"mappings":"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"}
1
+ {"version":3,"file":"lucca-front-ng-callout.mjs","sources":["../../../packages/ng/callout/callout-actions/callout-actions.component.ts","../../../packages/ng/callout/callout.type.ts","../../../packages/ng/callout/callout.utils.ts","../../../packages/ng/callout/callout-icon.pipe.ts","../../../packages/ng/callout/callout-disclosure/callout-disclosure.component.ts","../../../packages/ng/callout/callout-disclosure/callout-disclosure.component.html","../../../packages/ng/callout/callout-feedback-item/callout-feedback-item.component.ts","../../../packages/ng/callout/callout-feedback-item/callout-feedback-item.component.html","../../../packages/ng/callout/callout-feedback-list/callout-feedback-list.component.ts","../../../packages/ng/callout/callout-popover/callout-popover.component.ts","../../../packages/ng/callout/callout-popover/callout-popover.component.html","../../../packages/ng/callout/translations.ts","../../../packages/ng/callout/callout.translate.ts","../../../packages/ng/callout/callout/callout.component.ts","../../../packages/ng/callout/callout/callout.component.html","../../../packages/ng/callout/lucca-front-ng-callout.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, input, ViewEncapsulation } from '@angular/core';\nimport { luBooleanAttribute } from '@lucca-front/ng/core';\n\n@Component({\n\tselector: 'lu-callout-actions',\n\ttemplate: '<ng-content />',\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'callout-content-description-actions',\n\t\t'[class.mod-inline]': 'inline()',\n\t},\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CalloutActionsComponent {\n\treadonly inline = input(false, { transform: luBooleanAttribute });\n}\n","import { LuccaIcon } from '@lucca-front/icons';\nimport { Palette } from '@lucca/prisme/core';\n\n/**\n * Available CalloutComponent Types\n */\n\nexport const CALLOUT_SIZE = ['M', 'S'] as const;\nexport type CalloutSize = (typeof CALLOUT_SIZE)[number];\n\nexport const CALLOUT_POPOVER_SIZE = ['M', 'S', 'XS'] as const;\nexport type CalloutPopoverSize = (typeof CALLOUT_POPOVER_SIZE)[number];\n\nexport const CalloutStates = ['success', 'warning', 'error'] as const;\nexport type CalloutState = (typeof CalloutStates)[number];\n\nexport const CALLOUT_HX = [1, 2, 3, 4, 5, 6] as const;\nexport type CalloutHx = (typeof CALLOUT_HX)[number];\n\nexport const CalloutStateMap: Record<CalloutState, { icon: LuccaIcon; palette: Palette }> = {\n\tsuccess: {\n\t\ticon: 'signSuccess',\n\t\tpalette: 'success',\n\t},\n\twarning: {\n\t\ticon: 'signWarning',\n\t\tpalette: 'warning',\n\t},\n\terror: {\n\t\ticon: 'signError',\n\t\tpalette: 'error',\n\t},\n};\n","import { LuccaIcon } from '@lucca-front/icons';\nimport { Palette } from '@lucca-front/ng/core';\nimport { CalloutState, CalloutStateMap } from './callout.type';\n\n/**\n * Get icon for callout\n *\n * If the icon is defined then it takes priority over the callout state icon\n */\nexport function getCalloutIcon(state: CalloutState | undefined, icon: LuccaIcon | undefined): LuccaIcon | undefined {\n\tif (state) {\n\t\tconst stateMap = CalloutStateMap[state] ?? { icon };\n\t\treturn icon ?? stateMap.icon;\n\t}\n\treturn icon;\n}\n\n/**\n * Get palette for callout\n *\n * If the palette is different from \"none\" then it takes priority over the callout state palette\n */\nexport function getCalloutPalette(state: CalloutState | undefined, palette: Palette): string {\n\tif (state) {\n\t\tconst stateMap = CalloutStateMap[state] ?? { palette };\n\t\treturn palette !== 'none' ? palette : stateMap.palette;\n\t}\n\treturn palette;\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { LuccaIcon } from '@lucca-front/icons';\nimport { CalloutState } from './callout.type';\nimport { getCalloutIcon } from './callout.utils';\n\n/**\n * Get icon for callout\n *\n * If the icon is defined then it takes priority over the callout state icon\n */\n@Pipe({\n\tname: 'luCalloutIcon',\n})\nexport class CalloutIconPipe implements PipeTransform {\n\ttransform(state: CalloutState | undefined, icon: LuccaIcon | undefined): LuccaIcon | undefined {\n\t\treturn getCalloutIcon(state, icon);\n\t}\n}\n","import { ChangeDetectionStrategy, Component, computed, input, output, ViewEncapsulation } from '@angular/core';\nimport { LuccaIcon } from '@lucca-front/icons';\nimport { luBooleanAttribute, Palette, PortalContent, PortalDirective } from '@lucca-front/ng/core';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { CalloutIconPipe } from '../callout-icon.pipe';\nimport { CalloutSize, CalloutState } from '../callout.type';\nimport { getCalloutPalette } from '../callout.utils';\n\n@Component({\n\tselector: 'lu-callout-disclosure',\n\timports: [IconComponent, PortalDirective, CalloutIconPipe],\n\ttemplateUrl: './callout-disclosure.component.html',\n\tstyleUrl: './callout-disclosure.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n})\nexport class CalloutDisclosureComponent {\n\t/**\n\t * The title of the disclosure callout\n\t */\n\treadonly heading = input.required<PortalContent>();\n\n\t/**\n\t * Which icon should we display in the disclosure callout if any?\n\t * Defaults to no icon.\n\t */\n\treadonly icon = input<LuccaIcon>();\n\n\t/**\n\t * Which palette should be used for the entire disclosure callout.\n\t * Defaults to none (inherits parent palette)\n\t */\n\treadonly palette = input<Palette>('none');\n\n\t/**\n\t * Which size should the disclosure callout be? Defaults to medium\n\t */\n\treadonly size = input<CalloutSize>('M');\n\n\t/**\n\t * State is a shorthand to set the icon and the palette to the recommended values for the icon and palette based on\n\t * the provided state.\n\t *\n\t * If one of the icon or palette inputs are filled along with the state input, their values will have the priority over\n\t * state (so setting state to success and palette to warning will make the palette warning)\n\t */\n\treadonly state = input<CalloutState>();\n\n\t/**\n\t * Is the disclosure callout is open by default\n\t */\n\treadonly open = input(false, { transform: luBooleanAttribute });\n\n\t/**\n\t * Emit boolean event when toggle disclosure callout opened\n\t */\n\treadonly openChange = output<boolean>();\n\n\treadonly calloutPalette = computed<string>(() => getCalloutPalette(this.state(), this.palette()));\n\n\treadonly calloutClasses = computed(() => {\n\t\tconst palette = this.calloutPalette();\n\t\treturn {\n\t\t\t[`mod-${this.size()}`]: !!this.size(),\n\t\t\t[`palette-${palette}`]: !!palette,\n\t\t};\n\t});\n\n\tpublic onToggle(event: Event) {\n\t\tif (event.target instanceof HTMLDetailsElement) {\n\t\t\tthis.openChange.emit(event.target.open);\n\t\t}\n\t}\n}\n","@let calloutIcon = state() | luCalloutIcon: icon();\n\n<details\n\tclass=\"calloutDisclosure\"\n\t[class]=\"calloutClasses()\"\n\t[class.mod-iconless]=\"!calloutIcon\"\n\t[open]=\"open()\"\n\t(toggle)=\"onToggle($event)\"\n>\n\t<summary class=\"calloutDisclosure-summary\">\n\t\t@if (calloutIcon) {\n\t\t\t<lu-icon class=\"calloutDisclosure-summary-icon\" [icon]=\"calloutIcon\" />\n\t\t}\n\t\t<span class=\"calloutDisclosure-summary-title\">\n\t\t\t<ng-container *luPortal=\"heading()\" />\n\t\t</span>\n\t\t<lu-icon class=\"calloutDisclosure-summary-chevron\" icon=\"arrowChevronBottom\" />\n\t</summary>\n\t<div class=\"calloutDisclosure-details\">\n\t\t<ng-content />\n\t</div>\n</details>\n","import { ChangeDetectionStrategy, Component, Directive, ViewEncapsulation } from '@angular/core';\n\n@Directive({\n\t// eslint-disable-next-line @angular-eslint/directive-selector\n\tselector: 'lu-feedback-item-description',\n})\nexport class CalloutFeedbackItemDescriptionDirective {}\n\n@Component({\n\tselector: 'li[lu-callout-feedback-item]',\n\ttemplateUrl: './callout-feedback-item.component.html',\n\tstyleUrl: './callout-feedback-item.component.scss',\n\thost: {\n\t\tclass: 'calloutFeedbackList-item',\n\t},\n\tencapsulation: ViewEncapsulation.None,\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CalloutFeedbackItemComponent {}\n","<span class=\"calloutFeedbackList-item-description\">\n\t<ng-content select=\"lu-feedback-item-description\" />\n</span>\n<div class=\"calloutFeedbackList-item-actions\">\n\t<ng-content select=\"[lu-feedback-item-action]\" />\n</div>\n","import { ChangeDetectionStrategy, Component, inject, input, ViewEncapsulation } from '@angular/core';\nimport { LuClass, Palette, ɵeffectWithDeps } from '@lucca-front/ng/core';\nimport { CalloutSize } from '../callout.type';\n\n@Component({\n\tselector: 'ul[lu-callout-feedback-list]',\n\ttemplate: '<ng-content />',\n\tstyleUrl: './callout-feedback-list.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thost: {\n\t\tclass: 'calloutFeedbackList',\n\t},\n\tproviders: [LuClass],\n\tencapsulation: ViewEncapsulation.None,\n})\nexport class CalloutFeedbackListComponent {\n\t#luClass = inject(LuClass);\n\n\t/**\n\t * Which palette should be used for the entire feedback list callout.\n\t * Defaults to none (inherits parent palette)\n\t */\n\treadonly palette = input<Palette>();\n\n\t/**\n\t * Which size should the feedback list callout be? Defaults to medium\n\t */\n\treadonly size = input<CalloutSize>();\n\n\tconstructor() {\n\t\tɵeffectWithDeps([this.palette, this.size], (palette, size) => this.#luClass.setState({ [`palette-${palette}`]: !!palette, [`mod-${size}`]: !!size }));\n\t}\n}\n","import { ConnectionPositionPair } from '@angular/cdk/overlay';\nimport { ChangeDetectionStrategy, Component, computed, contentChildren, input, ViewEncapsulation } from '@angular/core';\nimport { LuccaIcon } from '@lucca-front/icons';\nimport { luBooleanAttribute, luNumberAttribute, Palette, PortalContent, PortalDirective } from '@lucca-front/ng/core';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { PopoverDirective, PopoverPosition } from '@lucca-front/ng/popover2';\nimport { CalloutFeedbackItemComponent } from '../callout-feedback-item/callout-feedback-item.component';\nimport { CalloutIconPipe } from '../callout-icon.pipe';\nimport { CalloutPopoverSize, CalloutState } from '../callout.type';\nimport { getCalloutPalette } from '../callout.utils';\n\n@Component({\n\tselector: 'lu-callout-popover',\n\timports: [IconComponent, PortalDirective, PopoverDirective, CalloutIconPipe],\n\ttemplateUrl: './callout-popover.component.html',\n\tstyleUrl: './callout-popover.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n})\nexport class CalloutPopoverComponent {\n\t/**\n\t * Debounce for the popover to open (mouse will have to be on the element fox openDelay milliseconds for popover to show)\n\t */\n\treadonly openDelay = input(50, { transform: luNumberAttribute });\n\n\t/**\n\t * Debounce for the popover to close (mouse will have to be out of both popover and trigger for closeDelay milliseconds for it to close)\n\t */\n\treadonly closeDelay = input(500, { transform: luNumberAttribute });\n\n\t/**\n\t * Label (visual only) to put inside the button, often used to show just a number\n\t */\n\treadonly buttonLabel = input<string | number>();\n\n\t/**\n\t * Alternative for the button\n\t */\n\treadonly buttonAlt = input<string>('');\n\n\t/**\n\t * Hide callout popover title if there is only one item\n\t */\n\treadonly headingHiddenIfSingleItem = input(false, { transform: luBooleanAttribute });\n\n\treadonly popoverTrigger = input<'click' | 'click+hover' | 'hover+focus'>('click+hover');\n\n\t/**\n\t * Palette for both the button and the popover content\n\t */\n\treadonly palette = input<Palette>('none');\n\n\t/**\n\t * Size for both button and popover content\n\t */\n\treadonly size = input<CalloutPopoverSize>();\n\n\t/**\n\t * Icon shows in button and next to popover's title\n\t */\n\treadonly icon = input<LuccaIcon>();\n\n\t/**\n\t * State is a shorthand to set the icon and the palette to the recommended values for the icon and palette based on\n\t * the provided state.\n\t *\n\t * If one of the icon or palette inputs are filled along with the state input, their values will have the priority over\n\t * state (so setting state to success and palette to warning will make the palette warning)\n\t */\n\treadonly state = input<CalloutState>();\n\n\t/**\n\t * Heading for the details popover\n\t */\n\treadonly heading = input<PortalContent>();\n\n\t/**\n\t * Defines callout popover open position above by default\n\t */\n\treadonly popoverPosition = input<PopoverPosition>('above');\n\n\t/**\n\t * Defines custom callout popover open position override popoverPosition\n\t */\n\treadonly customPopoverPositions = input<ConnectionPositionPair[]>();\n\n\t/**\n\t * Disable callout popover apparition\n\t */\n\treadonly popoverDisabled = input(false, { transform: luBooleanAttribute });\n\n\treadonly feedbackItems = contentChildren(CalloutFeedbackItemComponent, { descendants: true });\n\n\treadonly contentSize = computed<'S' | 'M' | undefined>(() => {\n\t\tconst size = this.size();\n\t\treturn size === 'XS' ? 'S' : size;\n\t});\n\n\treadonly calloutOverlayClasses = computed(() => ({\n\t\t[`mod-${this.contentSize()}`]: !!this.contentSize(),\n\t}));\n\n\treadonly calloutPalette = computed(() => getCalloutPalette(this.state(), this.palette()));\n\n\treadonly calloutClasses = computed(() => {\n\t\tconst palette = this.calloutPalette();\n\t\treturn {\n\t\t\t[`mod-${this.size()}`]: !!this.size(),\n\t\t\t[`palette-${palette}`]: !!palette,\n\t\t};\n\t});\n\n\treadonly calloutOverlayHeadClasses = computed(() => ({\n\t\t[`palette-${this.calloutPalette()}`]: !!this.calloutPalette(),\n\t}));\n}\n","@let calloutIcon = state() | luCalloutIcon: icon();\n\n<button\n\ttype=\"button\"\n\tclass=\"calloutPopover\"\n\t[class]=\"calloutClasses()\"\n\t[luPopover2]=\"overlayContentRef\"\n\t[luPopoverPosition]=\"popoverPosition()\"\n\t[customPositions]=\"customPopoverPositions() ?? null\"\n\t[luPopoverTrigger]=\"popoverTrigger()\"\n\t[luPopoverOpenDelay]=\"openDelay()\"\n\t[luPopoverCloseDelay]=\"closeDelay()\"\n\t[luPopoverDisabled]=\"popoverDisabled()\"\n\t#overlayOriginRef\n>\n\t@if (calloutIcon) {\n\t\t<lu-icon class=\"calloutPopover-icon\" [icon]=\"calloutIcon\" />\n\t}\n\t<span class=\"calloutPopover-content\" aria-hidden=\"true\">{{ buttonLabel() }}</span>\n\t<span class=\"pr-u-mask\">{{ buttonAlt() || buttonLabel() }}</span>\n</button>\n<ng-template #overlayContentRef>\n\t<div class=\"lu-popover-content calloutPopover-overlay\" [class]=\"calloutOverlayClasses()\">\n\t\t@if (calloutIcon) {\n\t\t\t<div class=\"pr-u-flexShrink0\">\n\t\t\t\t<lu-icon class=\"calloutPopover-overlay-icon\" [class]=\"calloutOverlayHeadClasses()\" [icon]=\"calloutIcon\" />\n\t\t\t</div>\n\t\t}\n\t\t<div class=\"pr-u-flexGrow1\">\n\t\t\t@if (heading(); as heading) {\n\t\t\t\t@if (!headingHiddenIfSingleItem() || feedbackItems().length !== 1) {\n\t\t\t\t\t<div class=\"calloutPopover-overlay-head\">\n\t\t\t\t\t\t<strong class=\"calloutPopover-overlay-head-title\">\n\t\t\t\t\t\t\t<ng-container *luPortal=\"heading\" />\n\t\t\t\t\t\t</strong>\n\t\t\t\t\t</div>\n\t\t\t\t}\n\t\t\t}\n\t\t\t<div class=\"calloutPopover-overlay-content\">\n\t\t\t\t<ng-content />\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</ng-template>\n","export const Translations = {\n\tpt: {\n\t\tclose: 'Fechar',\n\t},\n\t'nl-BE': {\n\t\tclose: 'Sluiten',\n\t},\n\tnl: {\n\t\tclose: 'Sluiten',\n\t},\n\tit: {\n\t\tclose: 'Chiudere',\n\t},\n\tde: {\n\t\tclose: 'Schließen',\n\t},\n\tfr: {\n\t\tclose: 'Fermer',\n\t},\n\tes: {\n\t\tclose: 'Cerrar',\n\t},\n\ten: {\n\t\tclose: 'Close',\n\t},\n\tpl: {\n\t\tclose: 'Zamknij',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_CALLOUT_TRANSLATIONS = new InjectionToken('LuCalloutTranslations', {\n\tfactory: () => luCalloutTranslations,\n});\n\nexport interface LuCalloutLabel {\n\tclose: string;\n}\n\nexport const luCalloutTranslations: LuTranslation<LuCalloutLabel> = Translations;\n","import { ChangeDetectionStrategy, Component, computed, input, linkedSignal, output, ViewEncapsulation } from '@angular/core';\nimport { LuccaIcon } from '@lucca-front/icons';\nimport { intlInputOptions, luBooleanAttribute, luNumberAttribute, Palette, PortalContent, PortalDirective } from '@lucca-front/ng/core';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { CalloutIconPipe } from '../callout-icon.pipe';\nimport { LU_CALLOUT_TRANSLATIONS } from '../callout.translate';\nimport { CalloutHx, CalloutSize, CalloutState } from '../callout.type';\nimport { getCalloutPalette } from '../callout.utils';\n\n@Component({\n\tselector: 'lu-callout',\n\timports: [PortalDirective, CalloutIconPipe, IconComponent],\n\ttemplateUrl: './callout.component.html',\n\tstyleUrl: './callout.component.scss',\n\thost: {\n\t\t'[attr.hidden]': 'removedRef() ? \"hidden\" : null',\n\t},\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n})\nexport class CalloutComponent {\n\treadonly intl = input(...intlInputOptions(LU_CALLOUT_TRANSLATIONS));\n\n\t/**\n\t * The title of the callout\n\t */\n\treadonly heading = input<PortalContent>();\n\n\t/**\n\t * Define the aria level of the title\n\t */\n\treadonly hx = input(null, { transform: luNumberAttribute<CalloutHx> });\n\n\t/**\n\t * Which palette should be used for the entire callout.\n\t * Defaults to none (inherits parent palette)\n\t */\n\treadonly palette = input<Palette>('none');\n\n\t/**\n\t * Which size should the callout be? Defaults to medium\n\t */\n\treadonly size = input<CalloutSize>();\n\n\t/**\n\t * State is a shorthand to set the icon and the palette to the recommended values for the icon and palette based on\n\t * the provided state.\n\t *\n\t * If one of the icon or palette inputs are filled along with the state input, their values will have the priority over\n\t * state (so setting state to success and palette to warning will make the palette warning)\n\t */\n\treadonly state = input<CalloutState>();\n\n\t/**\n\t * Which icon should we display in the callout if any?\n\t * Defaults to no icon.\n\t */\n\treadonly icon = input<LuccaIcon>();\n\n\t/**\n\t * Should we display the remove icon?\n\t */\n\treadonly removable = input(false, { transform: luBooleanAttribute });\n\n\t/**\n\t * Is the callout removed? Works with two way binding too.\n\t */\n\treadonly removed = input(false, { transform: luBooleanAttribute });\n\n\t/**\n\t * Defines the icon’s alt attribute used for accessibility\n\t */\n\treadonly iconAlt = input<string | null>(null);\n\n\t/**\n\t * Displayed in AI mode\n\t */\n\treadonly AI = input(false, { transform: luBooleanAttribute });\n\n\t/**\n\t * Emit event when button removed is click\n\t */\n\treadonly removedChange = output<boolean>();\n\n\treadonly removedRef = linkedSignal(() => this.removed());\n\n\treadonly calloutClasses = computed(() => {\n\t\tconst palette = getCalloutPalette(this.state(), this.palette());\n\t\tconst size = this.size();\n\t\tconst AI = this.AI();\n\t\treturn {\n\t\t\t[`mod-${size}`]: !!size,\n\t\t\t[`palette-${palette}`]: !AI && !!palette,\n\t\t};\n\t});\n}\n","@if (!removedRef()) {\n\t<div class=\"callout\" [class]=\"calloutClasses()\" [class.mod-AI]=\"AI()\">\n\t\t@if (state() | luCalloutIcon: icon(); as calloutIcon) {\n\t\t\t<div class=\"callout-icon\">\n\t\t\t\t<lu-icon [icon]=\"calloutIcon\" [alt]=\"iconAlt() ?? undefined\" />\n\t\t\t</div>\n\t\t}\n\t\t<div class=\"callout-content\">\n\t\t\t@if (heading(); as heading) {\n\t\t\t\t<p [attr.role]=\"hx() ? 'heading' : null\" [attr.aria-level]=\"hx() ? hx() : null\" class=\"callout-content-title\">\n\t\t\t\t\t<ng-container *luPortal=\"heading\" />\n\t\t\t\t</p>\n\t\t\t}\n\t\t\t<div class=\"callout-content-description\">\n\t\t\t\t<ng-content />\n\t\t\t</div>\n\t\t</div>\n\t\t@if (removable()) {\n\t\t\t<button type=\"button\" class=\"callout-kill\" (click)=\"removedRef.set(true); removedChange.emit(true)\">\n\t\t\t\t<span class=\"pr-u-mask\">{{ intl().close }}</span>\n\t\t\t</button>\n\t\t}\n\t</div>\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["ɵeffectWithDeps"],"mappings":"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"}
@@ -43,11 +43,9 @@ class ALuCoreSelectApiDirective {
43
43
  });
44
44
  const dataSource = {
45
45
  paramsChange: this.params$,
46
- ...(this.getGroupOptions ? { getGroupOptions: (group) => this.getGroupOptions(group) } : {}),
47
46
  clueDebounceMs: this.debounceDuration,
48
47
  getTotalCount: () => this.totalCount$,
49
48
  reset: () => this.clearLastPageByClue(),
50
- transformOptions: (options) => this.transformOptions(options),
51
49
  getOptions: ({ clue, page }) => {
52
50
  const lastPage = clue === this.#lastClue ? this.#lastPage : undefined;
53
51
  if (lastPage !== undefined && page > lastPage) {
@@ -63,13 +61,6 @@ class ALuCoreSelectApiDirective {
63
61
  };
64
62
  this.select.dataSource.set(dataSource);
65
63
  }
66
- /**
67
- * Post-process the whole list of loaded options (all pages accumulated). Override it for
68
- * decorations that can't be computed page by page, eg. flagging homonyms across pages.
69
- */
70
- transformOptions(options) {
71
- return of(options);
72
- }
73
64
  buildParamsFromClue(clue) {
74
65
  this.currentClue$.next(clue);
75
66
  // Prefer the synchronous signal (always reflects the clue we just set); fall back to the
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-core-select-api.mjs","sources":["../../../packages/ng/core-select/api/api.directive.ts","../../../packages/ng/core-select/api/api-v3.directive.ts","../../../packages/ng/core-select/api/api-v4.directive.ts","../../../packages/ng/core-select/api/lucca-front-ng-core-select-api.ts"],"sourcesContent":["import { Directive, inject, OnDestroy, OnInit, Signal } from '@angular/core';\nimport { ALuSelectInputComponent, coreSelectDefaultOptionComparer, coreSelectDefaultOptionKey, LuOptionComparer, SelectDataSource } from '@lucca-front/ng/core-select';\nimport { BehaviorSubject, catchError, map, Observable, of, Subject, switchMap, take, takeUntil, tap } from 'rxjs';\n\nexport const LU_SELECT_MAGIC_PAGE_SIZE = 20;\nexport const MAGIC_DEBOUNCE_DURATION = 250;\n\n@Directive()\nexport abstract class ALuCoreSelectApiDirective<TOption, TParams = Record<string, string | number | boolean> | null> implements OnDestroy, OnInit {\n\tprotected readonly destroy$ = new Subject<void>();\n\tprotected pageSize = LU_SELECT_MAGIC_PAGE_SIZE;\n\tprotected debounceDuration = MAGIC_DEBOUNCE_DURATION;\n\n\tpublic select = inject<ALuSelectInputComponent<TOption, unknown>>(ALuSelectInputComponent);\n\n\t/**\n\t * Current clue — updated by clueChange$ subscription (keeps select in searchable mode)\n\t * and by direct getOptions calls from the select component.\n\t */\n\tprotected readonly currentClue$ = new BehaviorSubject<string>('');\n\n\t/**\n\t * Clue observable — no debounce (debounce is now handled by the select component).\n\t */\n\tprotected readonly clue$ = this.currentClue$.asObservable();\n\n\t/**\n\t * Create an object that will be used as params for the api call\n\t */\n\tprotected abstract params$: Observable<TParams>;\n\n\t/**\n\t * Optional synchronous view of {@link params$}. When a directive derives its params from signals,\n\t * it should expose them here so {@link buildParamsFromClue} can read the value that reflects the\n\t * clue we just set — reading `params$` (a `toObservable` replay) can otherwise hand back the\n\t * previous clue's params on the non-debounced empty-clue path, leaving searches stuck.\n\t */\n\tprotected readonly paramsSignal?: Signal<TParams>;\n\n\t/**\n\t * Compare two options to know if they are the same. For example, compare by id or by JSON\n\t */\n\tprotected optionComparer: LuOptionComparer<TOption> = (a, b) => this.optionKey(a) === this.optionKey(b);\n\n\t/**\n\t * Return a unique key to identify the option in for-of loops\n\t */\n\tprotected abstract optionKey: (option: TOption) => unknown;\n\n\t/**\n\t * Return the options for the given params and page\n\t */\n\tprotected abstract getOptions(params: TParams, page: number): Observable<TOption[]>;\n\n\t/**\n\t * Return every option of a group, ignoring pagination, so the group \"select all\" acts on the whole\n\t * group and not only on the pages already loaded. Override it in directives that set a grouping;\n\t * left undefined, the panel keeps its default behaviour and toggles the rendered options only.\n\t */\n\tprotected getGroupOptions?: (group: unknown) => Observable<TOption[]>;\n\n\t#lastClue?: string;\n\t#lastPage?: number;\n\n\tpublic ngOnInit(): void {\n\t\tif (this.select.optionComparer() === coreSelectDefaultOptionComparer) {\n\t\t\tthis.select.optionComparer.set(this.optionComparer);\n\t\t}\n\n\t\tif (this.select.optionKey() === coreSelectDefaultOptionKey) {\n\t\t\tthis.select.optionKey.set(this.optionKey);\n\t\t}\n\n\t\t// Subscribe to clueChange$ to (1) keep the select in searchable mode and (2) drive currentClue$\n\t\tthis.select.clueChange$.pipe(takeUntil(this.destroy$)).subscribe((clue) => {\n\t\t\tthis.currentClue$.next(clue);\n\t\t\tthis.clearLastPageByClue();\n\t\t});\n\n\t\tconst dataSource: SelectDataSource<TOption, unknown> = {\n\t\t\tparamsChange: this.params$,\n\t\t\t...(this.getGroupOptions ? { getGroupOptions: (group: unknown) => this.getGroupOptions!(group) } : {}),\n\t\t\tclueDebounceMs: this.debounceDuration,\n\t\t\tgetTotalCount: () => this.totalCount$,\n\t\t\treset: () => this.clearLastPageByClue(),\n\t\t\ttransformOptions: (options) => this.transformOptions(options),\n\t\t\tgetOptions: ({ clue, page }) => {\n\t\t\t\tconst lastPage = clue === this.#lastClue ? this.#lastPage : undefined;\n\t\t\t\tif (lastPage !== undefined && page > lastPage) {\n\t\t\t\t\treturn of([] as readonly TOption[]);\n\t\t\t\t}\n\t\t\t\treturn this.buildParamsFromClue(clue).pipe(\n\t\t\t\t\ttake(1),\n\t\t\t\t\tswitchMap((params) =>\n\t\t\t\t\t\tthis.getOptionsPage(params, page).pipe(\n\t\t\t\t\t\t\ttap(({ isLastPage }) => {\n\t\t\t\t\t\t\t\tif (isLastPage) {\n\t\t\t\t\t\t\t\t\tthis.#lastClue = clue;\n\t\t\t\t\t\t\t\t\tthis.#lastPage = page;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\tmap(({ items }) => items as readonly TOption[]),\n\t\t\t\t\t\t),\n\t\t\t\t\t),\n\t\t\t\t);\n\t\t\t},\n\t\t};\n\n\t\tthis.select.dataSource.set(dataSource);\n\t}\n\n\t/**\n\t * Post-process the whole list of loaded options (all pages accumulated). Override it for\n\t * decorations that can't be computed page by page, eg. flagging homonyms across pages.\n\t */\n\tprotected transformOptions(options: readonly TOption[]): Observable<readonly TOption[]> {\n\t\treturn of(options);\n\t}\n\n\tprotected buildParamsFromClue(clue: string): Observable<TParams> {\n\t\tthis.currentClue$.next(clue);\n\t\t// Prefer the synchronous signal (always reflects the clue we just set); fall back to the\n\t\t// reactive observable for directives that still build their params from observables.\n\t\treturn this.paramsSignal ? of(this.paramsSignal()) : this.params$.pipe(take(1));\n\t}\n\n\tpublic abstract totalCount$: Observable<number>;\n\n\tprotected clearLastPageByClue() {\n\t\tthis.#lastClue = undefined;\n\t\tthis.#lastPage = undefined;\n\t}\n\n\tprotected getOptionsPage(params: TParams, page: number): Observable<{ items: TOption[]; isLastPage: boolean }> {\n\t\treturn this.getOptions(params, page).pipe(\n\t\t\tcatchError(() => of([] as TOption[])),\n\t\t\tmap((items) => ({ items, isLastPage: items.length < this.pageSize })),\n\t\t);\n\t}\n\n\tpublic ngOnDestroy(): void {\n\t\tthis.destroy$.next();\n\t\tthis.destroy$.complete();\n\t}\n}\n","import { HttpClient } from '@angular/common/http';\nimport { Directive, forwardRef, inject, input } from '@angular/core';\nimport { toObservable } from '@angular/core/rxjs-interop';\nimport { ILuApiCollectionResponse, ILuApiItem } from '@lucca-front/ng/api';\nimport { CORE_SELECT_API_TOTAL_COUNT_PROVIDER, CoreSelectApiTotalCountProvider } from '@lucca-front/ng/core-select';\nimport { combineLatest, debounceTime, map, Observable, switchMap, take } from 'rxjs';\nimport { ALuCoreSelectApiDirective } from './api.directive';\n\n@Directive({\n\t// The attribute is already prefixed with \"lu-simple-select\"\n\t// eslint-disable-next-line @angular-eslint/directive-selector\n\tselector: 'lu-simple-select[apiV3],lu-multi-select[apiV3]',\n\tproviders: [\n\t\t{\n\t\t\tprovide: CORE_SELECT_API_TOTAL_COUNT_PROVIDER,\n\t\t\tuseExisting: forwardRef(() => LuCoreSelectApiV3Directive),\n\t\t},\n\t],\n})\nexport class LuCoreSelectApiV3Directive<T extends ILuApiItem> extends ALuCoreSelectApiDirective<T> implements CoreSelectApiTotalCountProvider {\n\tprotected httpClient = inject(HttpClient);\n\n\treadonly apiV3 = input.required<string>();\n\n\treadonly fields = input('id,name');\n\n\treadonly orderBy = input<string | null>('name,asc');\n\n\treadonly filters = input<Record<string, string | number | boolean>>({});\n\n\tprotected readonly url$ = toObservable(this.apiV3);\n\tprotected readonly fields$ = toObservable(this.fields);\n\tprotected readonly orderBy$ = toObservable(this.orderBy);\n\tprotected readonly filters$ = toObservable(this.filters);\n\n\tprotected override params$ = combineLatest([this.fields$, this.filters$, this.orderBy$, this.clue$]).pipe(\n\t\tmap(([fields, filters, orderBy, clue]) => ({\n\t\t\t...filters,\n\t\t\t...(fields ? { fields } : {}),\n\t\t\t...(orderBy ? { orderBy } : {}),\n\t\t\t...(clue ? { name: `like,${clue}` } : {}),\n\t\t})),\n\t);\n\n\tpublic totalCount$ = combineLatest([this.url$, this.filters$]).pipe(\n\t\tdebounceTime(250),\n\t\tswitchMap(([url, params]) =>\n\t\t\tthis.httpClient.get<{ data: { count: number } }>(url, {\n\t\t\t\tparams: {\n\t\t\t\t\t...params,\n\t\t\t\t\tfields: 'collection.count',\n\t\t\t\t},\n\t\t\t}),\n\t\t),\n\t\tmap((res) => res.data?.count ?? 0),\n\t);\n\n\tprotected override getOptions(params: Record<string, string | number | boolean>, page: number): Observable<T[]> {\n\t\treturn this.url$.pipe(\n\t\t\ttake(1),\n\t\t\tswitchMap((url) =>\n\t\t\t\tthis.httpClient.get<ILuApiCollectionResponse<T>>(url, {\n\t\t\t\t\tparams: {\n\t\t\t\t\t\t...params,\n\t\t\t\t\t\tpaging: `${page * this.pageSize},${this.pageSize}`,\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t),\n\t\t\tmap((res) => res.data.items),\n\t\t);\n\t}\n\n\tprotected override optionKey = (option: T) => option.id;\n}\n","import { HttpClient } from '@angular/common/http';\nimport { computed, Directive, forwardRef, inject, input, model } from '@angular/core';\nimport { toObservable, toSignal } from '@angular/core/rxjs-interop';\nimport { ILuApiItem } from '@lucca-front/ng/api';\nimport { applySearchDelimiter, CORE_SELECT_API_TOTAL_COUNT_PROVIDER, CoreSelectApiTotalCountProvider } from '@lucca-front/ng/core-select';\nimport { debounceTime, map, Observable, switchMap } from 'rxjs';\nimport { ALuCoreSelectApiDirective } from './api.directive';\n\n@Directive({\n\t// The attribute is already prefixed with \"lu-simple-select\"\n\t// eslint-disable-next-line @angular-eslint/directive-selector\n\tselector: 'lu-simple-select[apiV4],lu-multi-select[apiV4]',\n\tproviders: [\n\t\t{\n\t\t\tprovide: CORE_SELECT_API_TOTAL_COUNT_PROVIDER,\n\t\t\tuseExisting: forwardRef(() => LuCoreSelectApiV4Directive),\n\t\t},\n\t],\n})\nexport class LuCoreSelectApiV4Directive<T extends ILuApiItem> extends ALuCoreSelectApiDirective<T> implements CoreSelectApiTotalCountProvider {\n\treadonly apiV4 = model.required<string>();\n\treadonly sort = input<string | null>('+name');\n\treadonly filters = input<Record<string, string | number | boolean>>({});\n\treadonly searchDelimiter = input<string>(' ');\n\n\tprotected httpClient = inject(HttpClient);\n\n\tprotected readonly clue = toSignal(this.clue$);\n\n\tprotected override readonly paramsSignal = computed<Record<string, string | number | boolean>>(() => {\n\t\tconst sort = this.sort();\n\t\tconst clue = this.clue();\n\t\tconst searchDelimiter = this.searchDelimiter();\n\t\treturn {\n\t\t\t...this.filters(),\n\t\t\t...(sort ? { sort } : {}),\n\t\t\t...(clue ? { search: applySearchDelimiter(clue, searchDelimiter) } : {}),\n\t\t};\n\t});\n\tprotected override readonly params$: Observable<Record<string, string | number | boolean>> = toObservable(this.paramsSignal);\n\n\tpublic readonly totalCount$ = toObservable(computed(() => ({ url: this.apiV4(), filters: this.filters() }))).pipe(\n\t\tdebounceTime(250),\n\t\tswitchMap(({ url, filters }) =>\n\t\t\tthis.httpClient.get<{ count: number }>(url, {\n\t\t\t\tparams: {\n\t\t\t\t\t...filters,\n\t\t\t\t\t['fields.root']: 'count',\n\t\t\t\t},\n\t\t\t}),\n\t\t),\n\t\tmap((res) => res?.count ?? 0),\n\t);\n\n\tprotected override getOptions(params: Record<string, string | number | boolean>, page: number): Observable<T[]> {\n\t\treturn this.httpClient\n\t\t\t.get<T[] | { items: T[] }>(this.apiV4(), {\n\t\t\t\tparams: {\n\t\t\t\t\t...params,\n\t\t\t\t\tpage: page + 1,\n\t\t\t\t\tlimit: this.pageSize,\n\t\t\t\t},\n\t\t\t})\n\t\t\t.pipe(map((res) => (Array.isArray(res) ? res : res?.items) ?? []));\n\t}\n\n\tprotected override optionKey = (option: T) => option.id;\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-core-select-api.mjs","sources":["../../../packages/ng/core-select/api/api.directive.ts","../../../packages/ng/core-select/api/api-v3.directive.ts","../../../packages/ng/core-select/api/api-v4.directive.ts","../../../packages/ng/core-select/api/lucca-front-ng-core-select-api.ts"],"sourcesContent":["import { Directive, inject, OnDestroy, OnInit, Signal } from '@angular/core';\nimport { ALuSelectInputComponent, coreSelectDefaultOptionComparer, coreSelectDefaultOptionKey, LuOptionComparer, SelectDataSource } from '@lucca-front/ng/core-select';\nimport { BehaviorSubject, catchError, map, Observable, of, Subject, switchMap, take, takeUntil, tap } from 'rxjs';\n\nexport const LU_SELECT_MAGIC_PAGE_SIZE = 20;\nexport const MAGIC_DEBOUNCE_DURATION = 250;\n\n@Directive()\nexport abstract class ALuCoreSelectApiDirective<TOption, TParams = Record<string, string | number | boolean> | null> implements OnDestroy, OnInit {\n\tprotected readonly destroy$ = new Subject<void>();\n\tprotected pageSize = LU_SELECT_MAGIC_PAGE_SIZE;\n\tprotected debounceDuration = MAGIC_DEBOUNCE_DURATION;\n\n\tpublic select = inject<ALuSelectInputComponent<TOption, unknown>>(ALuSelectInputComponent);\n\n\t/**\n\t * Current clue — updated by clueChange$ subscription (keeps select in searchable mode)\n\t * and by direct getOptions calls from the select component.\n\t */\n\tprotected readonly currentClue$ = new BehaviorSubject<string>('');\n\n\t/**\n\t * Clue observable — no debounce (debounce is now handled by the select component).\n\t */\n\tprotected readonly clue$ = this.currentClue$.asObservable();\n\n\t/**\n\t * Create an object that will be used as params for the api call\n\t */\n\tprotected abstract params$: Observable<TParams>;\n\n\t/**\n\t * Optional synchronous view of {@link params$}. When a directive derives its params from signals,\n\t * it should expose them here so {@link buildParamsFromClue} can read the value that reflects the\n\t * clue we just set — reading `params$` (a `toObservable` replay) can otherwise hand back the\n\t * previous clue's params on the non-debounced empty-clue path, leaving searches stuck.\n\t */\n\tprotected readonly paramsSignal?: Signal<TParams>;\n\n\t/**\n\t * Compare two options to know if they are the same. For example, compare by id or by JSON\n\t */\n\tprotected optionComparer: LuOptionComparer<TOption> = (a, b) => this.optionKey(a) === this.optionKey(b);\n\n\t/**\n\t * Return a unique key to identify the option in for-of loops\n\t */\n\tprotected abstract optionKey: (option: TOption) => unknown;\n\n\t/**\n\t * Return the options for the given params and page\n\t */\n\tprotected abstract getOptions(params: TParams, page: number): Observable<TOption[]>;\n\n\t#lastClue?: string;\n\t#lastPage?: number;\n\n\tpublic ngOnInit(): void {\n\t\tif (this.select.optionComparer() === coreSelectDefaultOptionComparer) {\n\t\t\tthis.select.optionComparer.set(this.optionComparer);\n\t\t}\n\n\t\tif (this.select.optionKey() === coreSelectDefaultOptionKey) {\n\t\t\tthis.select.optionKey.set(this.optionKey);\n\t\t}\n\n\t\t// Subscribe to clueChange$ to (1) keep the select in searchable mode and (2) drive currentClue$\n\t\tthis.select.clueChange$.pipe(takeUntil(this.destroy$)).subscribe((clue) => {\n\t\t\tthis.currentClue$.next(clue);\n\t\t\tthis.clearLastPageByClue();\n\t\t});\n\n\t\tconst dataSource: SelectDataSource<TOption> = {\n\t\t\tparamsChange: this.params$,\n\t\t\tclueDebounceMs: this.debounceDuration,\n\t\t\tgetTotalCount: () => this.totalCount$,\n\t\t\treset: () => this.clearLastPageByClue(),\n\t\t\tgetOptions: ({ clue, page }) => {\n\t\t\t\tconst lastPage = clue === this.#lastClue ? this.#lastPage : undefined;\n\t\t\t\tif (lastPage !== undefined && page > lastPage) {\n\t\t\t\t\treturn of([] as readonly TOption[]);\n\t\t\t\t}\n\t\t\t\treturn this.buildParamsFromClue(clue).pipe(\n\t\t\t\t\ttake(1),\n\t\t\t\t\tswitchMap((params) =>\n\t\t\t\t\t\tthis.getOptionsPage(params, page).pipe(\n\t\t\t\t\t\t\ttap(({ isLastPage }) => {\n\t\t\t\t\t\t\t\tif (isLastPage) {\n\t\t\t\t\t\t\t\t\tthis.#lastClue = clue;\n\t\t\t\t\t\t\t\t\tthis.#lastPage = page;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\tmap(({ items }) => items as readonly TOption[]),\n\t\t\t\t\t\t),\n\t\t\t\t\t),\n\t\t\t\t);\n\t\t\t},\n\t\t};\n\n\t\tthis.select.dataSource.set(dataSource);\n\t}\n\n\tprotected buildParamsFromClue(clue: string): Observable<TParams> {\n\t\tthis.currentClue$.next(clue);\n\t\t// Prefer the synchronous signal (always reflects the clue we just set); fall back to the\n\t\t// reactive observable for directives that still build their params from observables.\n\t\treturn this.paramsSignal ? of(this.paramsSignal()) : this.params$.pipe(take(1));\n\t}\n\n\tpublic abstract totalCount$: Observable<number>;\n\n\tprotected clearLastPageByClue() {\n\t\tthis.#lastClue = undefined;\n\t\tthis.#lastPage = undefined;\n\t}\n\n\tprotected getOptionsPage(params: TParams, page: number): Observable<{ items: TOption[]; isLastPage: boolean }> {\n\t\treturn this.getOptions(params, page).pipe(\n\t\t\tcatchError(() => of([] as TOption[])),\n\t\t\tmap((items) => ({ items, isLastPage: items.length < this.pageSize })),\n\t\t);\n\t}\n\n\tpublic ngOnDestroy(): void {\n\t\tthis.destroy$.next();\n\t\tthis.destroy$.complete();\n\t}\n}\n","import { HttpClient } from '@angular/common/http';\nimport { Directive, forwardRef, inject, input } from '@angular/core';\nimport { toObservable } from '@angular/core/rxjs-interop';\nimport { ILuApiCollectionResponse, ILuApiItem } from '@lucca-front/ng/api';\nimport { CORE_SELECT_API_TOTAL_COUNT_PROVIDER, CoreSelectApiTotalCountProvider } from '@lucca-front/ng/core-select';\nimport { combineLatest, debounceTime, map, Observable, switchMap, take } from 'rxjs';\nimport { ALuCoreSelectApiDirective } from './api.directive';\n\n@Directive({\n\t// The attribute is already prefixed with \"lu-simple-select\"\n\t// eslint-disable-next-line @angular-eslint/directive-selector\n\tselector: 'lu-simple-select[apiV3],lu-multi-select[apiV3]',\n\tproviders: [\n\t\t{\n\t\t\tprovide: CORE_SELECT_API_TOTAL_COUNT_PROVIDER,\n\t\t\tuseExisting: forwardRef(() => LuCoreSelectApiV3Directive),\n\t\t},\n\t],\n})\nexport class LuCoreSelectApiV3Directive<T extends ILuApiItem> extends ALuCoreSelectApiDirective<T> implements CoreSelectApiTotalCountProvider {\n\tprotected httpClient = inject(HttpClient);\n\n\treadonly apiV3 = input.required<string>();\n\n\treadonly fields = input('id,name');\n\n\treadonly orderBy = input<string | null>('name,asc');\n\n\treadonly filters = input<Record<string, string | number | boolean>>({});\n\n\tprotected readonly url$ = toObservable(this.apiV3);\n\tprotected readonly fields$ = toObservable(this.fields);\n\tprotected readonly orderBy$ = toObservable(this.orderBy);\n\tprotected readonly filters$ = toObservable(this.filters);\n\n\tprotected override params$ = combineLatest([this.fields$, this.filters$, this.orderBy$, this.clue$]).pipe(\n\t\tmap(([fields, filters, orderBy, clue]) => ({\n\t\t\t...filters,\n\t\t\t...(fields ? { fields } : {}),\n\t\t\t...(orderBy ? { orderBy } : {}),\n\t\t\t...(clue ? { name: `like,${clue}` } : {}),\n\t\t})),\n\t);\n\n\tpublic totalCount$ = combineLatest([this.url$, this.filters$]).pipe(\n\t\tdebounceTime(250),\n\t\tswitchMap(([url, params]) =>\n\t\t\tthis.httpClient.get<{ data: { count: number } }>(url, {\n\t\t\t\tparams: {\n\t\t\t\t\t...params,\n\t\t\t\t\tfields: 'collection.count',\n\t\t\t\t},\n\t\t\t}),\n\t\t),\n\t\tmap((res) => res.data?.count ?? 0),\n\t);\n\n\tprotected override getOptions(params: Record<string, string | number | boolean>, page: number): Observable<T[]> {\n\t\treturn this.url$.pipe(\n\t\t\ttake(1),\n\t\t\tswitchMap((url) =>\n\t\t\t\tthis.httpClient.get<ILuApiCollectionResponse<T>>(url, {\n\t\t\t\t\tparams: {\n\t\t\t\t\t\t...params,\n\t\t\t\t\t\tpaging: `${page * this.pageSize},${this.pageSize}`,\n\t\t\t\t\t},\n\t\t\t\t}),\n\t\t\t),\n\t\t\tmap((res) => res.data.items),\n\t\t);\n\t}\n\n\tprotected override optionKey = (option: T) => option.id;\n}\n","import { HttpClient } from '@angular/common/http';\nimport { computed, Directive, forwardRef, inject, input, model } from '@angular/core';\nimport { toObservable, toSignal } from '@angular/core/rxjs-interop';\nimport { ILuApiItem } from '@lucca-front/ng/api';\nimport { applySearchDelimiter, CORE_SELECT_API_TOTAL_COUNT_PROVIDER, CoreSelectApiTotalCountProvider } from '@lucca-front/ng/core-select';\nimport { debounceTime, map, Observable, switchMap } from 'rxjs';\nimport { ALuCoreSelectApiDirective } from './api.directive';\n\n@Directive({\n\t// The attribute is already prefixed with \"lu-simple-select\"\n\t// eslint-disable-next-line @angular-eslint/directive-selector\n\tselector: 'lu-simple-select[apiV4],lu-multi-select[apiV4]',\n\tproviders: [\n\t\t{\n\t\t\tprovide: CORE_SELECT_API_TOTAL_COUNT_PROVIDER,\n\t\t\tuseExisting: forwardRef(() => LuCoreSelectApiV4Directive),\n\t\t},\n\t],\n})\nexport class LuCoreSelectApiV4Directive<T extends ILuApiItem> extends ALuCoreSelectApiDirective<T> implements CoreSelectApiTotalCountProvider {\n\treadonly apiV4 = model.required<string>();\n\treadonly sort = input<string | null>('+name');\n\treadonly filters = input<Record<string, string | number | boolean>>({});\n\treadonly searchDelimiter = input<string>(' ');\n\n\tprotected httpClient = inject(HttpClient);\n\n\tprotected readonly clue = toSignal(this.clue$);\n\n\tprotected override readonly paramsSignal = computed<Record<string, string | number | boolean>>(() => {\n\t\tconst sort = this.sort();\n\t\tconst clue = this.clue();\n\t\tconst searchDelimiter = this.searchDelimiter();\n\t\treturn {\n\t\t\t...this.filters(),\n\t\t\t...(sort ? { sort } : {}),\n\t\t\t...(clue ? { search: applySearchDelimiter(clue, searchDelimiter) } : {}),\n\t\t};\n\t});\n\tprotected override readonly params$: Observable<Record<string, string | number | boolean>> = toObservable(this.paramsSignal);\n\n\tpublic readonly totalCount$ = toObservable(computed(() => ({ url: this.apiV4(), filters: this.filters() }))).pipe(\n\t\tdebounceTime(250),\n\t\tswitchMap(({ url, filters }) =>\n\t\t\tthis.httpClient.get<{ count: number }>(url, {\n\t\t\t\tparams: {\n\t\t\t\t\t...filters,\n\t\t\t\t\t['fields.root']: 'count',\n\t\t\t\t},\n\t\t\t}),\n\t\t),\n\t\tmap((res) => res?.count ?? 0),\n\t);\n\n\tprotected override getOptions(params: Record<string, string | number | boolean>, page: number): Observable<T[]> {\n\t\treturn this.httpClient\n\t\t\t.get<T[] | { items: T[] }>(this.apiV4(), {\n\t\t\t\tparams: {\n\t\t\t\t\t...params,\n\t\t\t\t\tpage: page + 1,\n\t\t\t\t\tlimit: this.pageSize,\n\t\t\t\t},\n\t\t\t})\n\t\t\t.pipe(map((res) => (Array.isArray(res) ? res : res?.items) ?? []));\n\t}\n\n\tprotected override optionKey = (option: T) => option.id;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;AAIO,MAAM,yBAAyB,GAAG;AAClC,MAAM,uBAAuB,GAAG,GAAG;MAGpB,yBAAyB,CAAA;AAD/C,IAAA,WAAA,GAAA;AAEoB,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,OAAO,EAAQ;QACvC,IAAA,CAAA,QAAQ,GAAG,yBAAyB;QACpC,IAAA,CAAA,gBAAgB,GAAG,uBAAuB;AAE7C,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAA4C,uBAAuB,CAAC;AAE1F;;;AAGG;AACgB,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,eAAe,CAAS,EAAE,CAAC;AAEjE;;AAEG;AACgB,QAAA,IAAA,CAAA,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE;AAe3D;;AAEG;QACO,IAAA,CAAA,cAAc,GAA8B,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;AAqFvG,IAAA;AAzEA,IAAA,SAAS;AACT,IAAA,SAAS;IAEF,QAAQ,GAAA;QACd,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,KAAK,+BAA+B,EAAE;YACrE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC;QACpD;QAEA,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,0BAA0B,EAAE;YAC3D,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;QAC1C;;QAGA,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,KAAI;AACzE,YAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;YAC5B,IAAI,CAAC,mBAAmB,EAAE;AAC3B,QAAA,CAAC,CAAC;AAEF,QAAA,MAAM,UAAU,GAA8B;YAC7C,YAAY,EAAE,IAAI,CAAC,OAAO;YAC1B,cAAc,EAAE,IAAI,CAAC,gBAAgB;AACrC,YAAA,aAAa,EAAE,MAAM,IAAI,CAAC,WAAW;AACrC,YAAA,KAAK,EAAE,MAAM,IAAI,CAAC,mBAAmB,EAAE;YACvC,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAI;AAC9B,gBAAA,MAAM,QAAQ,GAAG,IAAI,KAAK,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,GAAG,SAAS;gBACrE,IAAI,QAAQ,KAAK,SAAS,IAAI,IAAI,GAAG,QAAQ,EAAE;AAC9C,oBAAA,OAAO,EAAE,CAAC,EAAwB,CAAC;gBACpC;AACA,gBAAA,OAAO,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,IAAI,CACzC,IAAI,CAAC,CAAC,CAAC,EACP,SAAS,CAAC,CAAC,MAAM,KAChB,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,IAAI,CACrC,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,KAAI;oBACtB,IAAI,UAAU,EAAE;AACf,wBAAA,IAAI,CAAC,SAAS,GAAG,IAAI;AACrB,wBAAA,IAAI,CAAC,SAAS,GAAG,IAAI;oBACtB;AACD,gBAAA,CAAC,CAAC,EACF,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,KAA2B,CAAC,CAC/C,CACD,CACD;YACF,CAAC;SACD;QAED,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC;IACvC;AAEU,IAAA,mBAAmB,CAAC,IAAY,EAAA;AACzC,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;;;QAG5B,OAAO,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAChF;IAIU,mBAAmB,GAAA;AAC5B,QAAA,IAAI,CAAC,SAAS,GAAG,SAAS;AAC1B,QAAA,IAAI,CAAC,SAAS,GAAG,SAAS;IAC3B;IAEU,cAAc,CAAC,MAAe,EAAE,IAAY,EAAA;QACrD,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,IAAI,CACxC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAe,CAAC,CAAC,EACrC,GAAG,CAAC,CAAC,KAAK,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CACrE;IACF;IAEO,WAAW,GAAA;AACjB,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;AACpB,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;IACzB;8GAtHqB,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAzB,yBAAyB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAzB,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAD9C;;;ACYK,MAAO,0BAAiD,SAAQ,yBAA4B,CAAA;AAXlG,IAAA,WAAA,GAAA;;AAYW,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QAEhC,IAAA,CAAA,KAAK,GAAG,KAAK,CAAC,QAAQ;kFAAU;QAEhC,IAAA,CAAA,MAAM,GAAG,KAAK,CAAC,SAAS;mFAAC;QAEzB,IAAA,CAAA,OAAO,GAAG,KAAK,CAAgB,UAAU;oFAAC;QAE1C,IAAA,CAAA,OAAO,GAAG,KAAK,CAA4C,EAAE;oFAAC;AAEpD,QAAA,IAAA,CAAA,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;AAC/B,QAAA,IAAA,CAAA,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC;AACnC,QAAA,IAAA,CAAA,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC;AACrC,QAAA,IAAA,CAAA,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC;AAErC,QAAA,IAAA,CAAA,OAAO,GAAG,aAAa,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CACxG,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM;AAC1C,YAAA,GAAG,OAAO;AACV,YAAA,IAAI,MAAM,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AAC7B,YAAA,IAAI,OAAO,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;AAC/B,YAAA,IAAI,IAAI,GAAG,EAAE,IAAI,EAAE,CAAA,KAAA,EAAQ,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC;SACzC,CAAC,CAAC,CACH;AAEM,QAAA,IAAA,CAAA,WAAW,GAAG,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAClE,YAAY,CAAC,GAAG,CAAC,EACjB,SAAS,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,KACvB,IAAI,CAAC,UAAU,CAAC,GAAG,CAA8B,GAAG,EAAE;AACrD,YAAA,MAAM,EAAE;AACP,gBAAA,GAAG,MAAM;AACT,gBAAA,MAAM,EAAE,kBAAkB;AAC1B,aAAA;AACD,SAAA,CAAC,CACF,EACD,GAAG,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC,CAClC;QAiBkB,IAAA,CAAA,SAAS,GAAG,CAAC,MAAS,KAAK,MAAM,CAAC,EAAE;AACvD,IAAA;IAhBmB,UAAU,CAAC,MAAiD,EAAE,IAAY,EAAA;QAC5F,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CACpB,IAAI,CAAC,CAAC,CAAC,EACP,SAAS,CAAC,CAAC,GAAG,KACb,IAAI,CAAC,UAAU,CAAC,GAAG,CAA8B,GAAG,EAAE;AACrD,YAAA,MAAM,EAAE;AACP,gBAAA,GAAG,MAAM;gBACT,MAAM,EAAE,CAAA,EAAG,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAA,CAAA,EAAI,IAAI,CAAC,QAAQ,CAAA,CAAE;AAClD,aAAA;AACD,SAAA,CAAC,CACF,EACD,GAAG,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAC5B;IACF;8GAnDY,0BAA0B,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA1B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,0BAA0B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gDAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,MAAA,EAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,SAAA,EAP3B;AACV,YAAA;AACC,gBAAA,OAAO,EAAE,oCAAoC;AAC7C,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,0BAA0B,CAAC;AACzD,aAAA;AACD,SAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAEW,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAXtC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;;;AAGV,oBAAA,QAAQ,EAAE,gDAAgD;AAC1D,oBAAA,SAAS,EAAE;AACV,wBAAA;AACC,4BAAA,OAAO,EAAE,oCAAoC;AAC7C,4BAAA,WAAW,EAAE,UAAU,CAAC,gCAAgC,CAAC;AACzD,yBAAA;AACD,qBAAA;AACD,iBAAA;;;ACCK,MAAO,0BAAiD,SAAQ,yBAA4B,CAAA;AAXlG,IAAA,WAAA,GAAA;;QAYU,IAAA,CAAA,KAAK,GAAG,KAAK,CAAC,QAAQ;kFAAU;QAChC,IAAA,CAAA,IAAI,GAAG,KAAK,CAAgB,OAAO;iFAAC;QACpC,IAAA,CAAA,OAAO,GAAG,KAAK,CAA4C,EAAE;oFAAC;QAC9D,IAAA,CAAA,eAAe,GAAG,KAAK,CAAS,GAAG;4FAAC;AAEnC,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AAEtB,QAAA,IAAA,CAAA,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;AAElB,QAAA,IAAA,CAAA,YAAY,GAAG,QAAQ,CAA4C,MAAK;AACnG,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE;AACxB,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE;AACxB,YAAA,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,EAAE;YAC9C,OAAO;gBACN,GAAG,IAAI,CAAC,OAAO,EAAE;AACjB,gBAAA,IAAI,IAAI,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;AACzB,gBAAA,IAAI,IAAI,GAAG,EAAE,MAAM,EAAE,oBAAoB,CAAC,IAAI,EAAE,eAAe,CAAC,EAAE,GAAG,EAAE,CAAC;aACxE;QACF,CAAC;yFAAC;AAC0B,QAAA,IAAA,CAAA,OAAO,GAA0D,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC;QAE5G,IAAA,CAAA,WAAW,GAAG,YAAY,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAChH,YAAY,CAAC,GAAG,CAAC,EACjB,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,KAC1B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAoB,GAAG,EAAE;AAC3C,YAAA,MAAM,EAAE;AACP,gBAAA,GAAG,OAAO;gBACV,CAAC,aAAa,GAAG,OAAO;AACxB,aAAA;AACD,SAAA,CAAC,CACF,EACD,GAAG,CAAC,CAAC,GAAG,KAAK,GAAG,EAAE,KAAK,IAAI,CAAC,CAAC,CAC7B;QAckB,IAAA,CAAA,SAAS,GAAG,CAAC,MAAS,KAAK,MAAM,CAAC,EAAE;AACvD,IAAA;IAbmB,UAAU,CAAC,MAAiD,EAAE,IAAY,EAAA;QAC5F,OAAO,IAAI,CAAC;AACV,aAAA,GAAG,CAAuB,IAAI,CAAC,KAAK,EAAE,EAAE;AACxC,YAAA,MAAM,EAAE;AACP,gBAAA,GAAG,MAAM;gBACT,IAAI,EAAE,IAAI,GAAG,CAAC;gBACd,KAAK,EAAE,IAAI,CAAC,QAAQ;AACpB,aAAA;SACD;AACA,aAAA,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,EAAE,KAAK,KAAK,EAAE,CAAC,CAAC;IACpE;8GA7CY,0BAA0B,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA1B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,0BAA0B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gDAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,eAAA,EAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,KAAA,EAAA,aAAA,EAAA,EAAA,SAAA,EAP3B;AACV,YAAA;AACC,gBAAA,OAAO,EAAE,oCAAoC;AAC7C,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,0BAA0B,CAAC;AACzD,aAAA;AACD,SAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAEW,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAXtC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;;;AAGV,oBAAA,QAAQ,EAAE,gDAAgD;AAC1D,oBAAA,SAAS,EAAE;AACV,wBAAA;AACC,4BAAA,OAAO,EAAE,oCAAoC;AAC7C,4BAAA,WAAW,EAAE,UAAU,CAAC,gCAAgC,CAAC;AACzD,yBAAA;AACD,qBAAA;AACD,iBAAA;;;AClBD;;AAEG;;"}