@eui/eds 22.0.0-alpha.17 → 22.0.0-alpha.18

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 (72) hide show
  1. package/docs/changelog.html +10 -0
  2. package/docs/components/EdsLanguageSelectorDialog.html +1 -1
  3. package/docs/js/search/search_index.js +2 -2
  4. package/docs/json/documentation.json +42 -42
  5. package/docs/llms.txt +1 -1
  6. package/docs/properties.html +1 -1
  7. package/fesm2022/eui-eds-charts-eds-chart-legend.mjs +2 -2
  8. package/fesm2022/eui-eds-charts-eds-chart-legend.mjs.map +1 -1
  9. package/fesm2022/eui-eds-eds-accordion.mjs +2 -2
  10. package/fesm2022/eui-eds-eds-accordion.mjs.map +1 -1
  11. package/fesm2022/eui-eds-eds-alert.mjs +2 -2
  12. package/fesm2022/eui-eds-eds-alert.mjs.map +1 -1
  13. package/fesm2022/eui-eds-eds-autocomplete.mjs +2 -2
  14. package/fesm2022/eui-eds-eds-autocomplete.mjs.map +1 -1
  15. package/fesm2022/eui-eds-eds-avatar.mjs +4 -4
  16. package/fesm2022/eui-eds-eds-avatar.mjs.map +1 -1
  17. package/fesm2022/eui-eds-eds-blockquote.mjs +2 -2
  18. package/fesm2022/eui-eds-eds-blockquote.mjs.map +1 -1
  19. package/fesm2022/eui-eds-eds-calendar.mjs +4 -4
  20. package/fesm2022/eui-eds-eds-calendar.mjs.map +1 -1
  21. package/fesm2022/eui-eds-eds-card.mjs +2 -2
  22. package/fesm2022/eui-eds-eds-card.mjs.map +1 -1
  23. package/fesm2022/eui-eds-eds-date-block.mjs +2 -2
  24. package/fesm2022/eui-eds-eds-date-block.mjs.map +1 -1
  25. package/fesm2022/eui-eds-eds-datepicker.mjs +2 -2
  26. package/fesm2022/eui-eds-eds-datepicker.mjs.map +1 -1
  27. package/fesm2022/eui-eds-eds-discussion-thread.mjs +4 -4
  28. package/fesm2022/eui-eds-eds-discussion-thread.mjs.map +1 -1
  29. package/fesm2022/eui-eds-eds-empty-state.mjs +2 -2
  30. package/fesm2022/eui-eds-eds-empty-state.mjs.map +1 -1
  31. package/fesm2022/eui-eds-eds-fieldset.mjs +2 -2
  32. package/fesm2022/eui-eds-eds-fieldset.mjs.map +1 -1
  33. package/fesm2022/eui-eds-eds-file-upload.mjs +2 -2
  34. package/fesm2022/eui-eds-eds-file-upload.mjs.map +1 -1
  35. package/fesm2022/eui-eds-eds-growl.mjs +2 -2
  36. package/fesm2022/eui-eds-eds-growl.mjs.map +1 -1
  37. package/fesm2022/eui-eds-eds-language-selector.mjs +4 -4
  38. package/fesm2022/eui-eds-eds-language-selector.mjs.map +1 -1
  39. package/fesm2022/eui-eds-eds-list.mjs +2 -2
  40. package/fesm2022/eui-eds-eds-list.mjs.map +1 -1
  41. package/fesm2022/eui-eds-eds-menu.mjs +2 -2
  42. package/fesm2022/eui-eds-eds-menu.mjs.map +1 -1
  43. package/fesm2022/eui-eds-eds-multiselect.mjs +2 -2
  44. package/fesm2022/eui-eds-eds-multiselect.mjs.map +1 -1
  45. package/fesm2022/eui-eds-eds-page.mjs +2 -2
  46. package/fesm2022/eui-eds-eds-page.mjs.map +1 -1
  47. package/fesm2022/eui-eds-eds-popover.mjs +2 -2
  48. package/fesm2022/eui-eds-eds-popover.mjs.map +1 -1
  49. package/fesm2022/eui-eds-eds-progress-bar.mjs +2 -2
  50. package/fesm2022/eui-eds-eds-progress-bar.mjs.map +1 -1
  51. package/fesm2022/eui-eds-eds-progress-circle.mjs +2 -2
  52. package/fesm2022/eui-eds-eds-progress-circle.mjs.map +1 -1
  53. package/fesm2022/eui-eds-eds-select.mjs +2 -2
  54. package/fesm2022/eui-eds-eds-select.mjs.map +1 -1
  55. package/fesm2022/eui-eds-eds-shell.mjs +4 -4
  56. package/fesm2022/eui-eds-eds-shell.mjs.map +1 -1
  57. package/fesm2022/eui-eds-eds-table.mjs +2 -2
  58. package/fesm2022/eui-eds-eds-table.mjs.map +1 -1
  59. package/fesm2022/eui-eds-eds-tabs.mjs +2 -2
  60. package/fesm2022/eui-eds-eds-tabs.mjs.map +1 -1
  61. package/fesm2022/eui-eds-eds-timeline.mjs +2 -2
  62. package/fesm2022/eui-eds-eds-timeline.mjs.map +1 -1
  63. package/fesm2022/eui-eds-eds-timepicker.mjs +2 -2
  64. package/fesm2022/eui-eds-eds-timepicker.mjs.map +1 -1
  65. package/fesm2022/eui-eds-eds-user-profile.mjs +2 -2
  66. package/fesm2022/eui-eds-eds-user-profile.mjs.map +1 -1
  67. package/fesm2022/eui-eds-eds-wizard.mjs +2 -2
  68. package/fesm2022/eui-eds-utilities-eds-label.mjs +2 -2
  69. package/fesm2022/eui-eds-utilities-eds-label.mjs.map +1 -1
  70. package/fesm2022/eui-eds-utilities-eds-trend.mjs +2 -2
  71. package/fesm2022/eui-eds-utilities-eds-trend.mjs.map +1 -1
  72. package/package.json +1 -1
package/docs/llms.txt CHANGED
@@ -1,6 +1,6 @@
1
1
  # eui documentation
2
2
 
3
- > Generated by compodoc 2.0.0 at 2026-09-23T15:14:10.875Z, llm-md export.
3
+ > Generated by compodoc 2.0.0 at 2026-09-24T06:09:23.625Z, llm-md export.
4
4
 
5
5
  ## Components
6
6
 
@@ -128,7 +128,7 @@
128
128
  </ol>
129
129
  <ul class="properties-list">
130
130
  <li>
131
- <b>Version</b> : 22.0.0-alpha.17</li>
131
+ <b>Version</b> : 22.0.0-alpha.18</li>
132
132
  </ul>
133
133
 
134
134
 
@@ -52,7 +52,7 @@ class EdsChartLegendItem {
52
52
  @if (value()) {
53
53
  <span class="eds-chart-legend-item__value">{{ value() }}</span>
54
54
  }
55
- `, isInline: true, styles: [".eui-21 :host{display:inline-flex;align-items:center;gap:var(--eds-sp-3xs);font:var(--eds-f-paragraph-xs);color:var(--eds-c-foreground-subtler)}.eui-21 :host .eds-chart-legend-item__dot{display:inline-block;width:.5rem;height:.5rem;border-radius:var(--eds-br-full);flex-shrink:0}.eui-21 :host .eds-chart-legend-item__label{white-space:nowrap}.eui-21 :host .eds-chart-legend-item__value{font:var(--eds-f-label-s-semi-bold);color:var(--eds-c-foreground-default)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
55
+ `, isInline: true, styles: [".eui-21 :host{display:inline-flex;align-items:center;gap:var(--eds-sp-3xs);font:var(--eds-f-paragraph-xs);color:var(--eds-c-foreground-subtler)}.eui-21 :host .eds-chart-legend-item__dot{display:inline-block;width:.5rem;height:.5rem;border-radius:var(--eds-br-full);flex-shrink:0}.eui-21 :host .eds-chart-legend-item__label{white-space:nowrap}.eui-21 :host .eds-chart-legend-item__value{font:var(--eds-f-label-s-semibold);color:var(--eds-c-foreground-default)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
56
56
  }
57
57
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EdsChartLegendItem, decorators: [{
58
58
  type: Component,
@@ -64,7 +64,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImpor
64
64
  }
65
65
  `, changeDetection: ChangeDetectionStrategy.OnPush, host: {
66
66
  class: 'eds-chart-legend-item',
67
- }, styles: [".eui-21 :host{display:inline-flex;align-items:center;gap:var(--eds-sp-3xs);font:var(--eds-f-paragraph-xs);color:var(--eds-c-foreground-subtler)}.eui-21 :host .eds-chart-legend-item__dot{display:inline-block;width:.5rem;height:.5rem;border-radius:var(--eds-br-full);flex-shrink:0}.eui-21 :host .eds-chart-legend-item__label{white-space:nowrap}.eui-21 :host .eds-chart-legend-item__value{font:var(--eds-f-label-s-semi-bold);color:var(--eds-c-foreground-default)}\n"] }]
67
+ }, styles: [".eui-21 :host{display:inline-flex;align-items:center;gap:var(--eds-sp-3xs);font:var(--eds-f-paragraph-xs);color:var(--eds-c-foreground-subtler)}.eui-21 :host .eds-chart-legend-item__dot{display:inline-block;width:.5rem;height:.5rem;border-radius:var(--eds-br-full);flex-shrink:0}.eui-21 :host .eds-chart-legend-item__label{white-space:nowrap}.eui-21 :host .eds-chart-legend-item__value{font:var(--eds-f-label-s-semibold);color:var(--eds-c-foreground-default)}\n"] }]
68
68
  }], propDecorators: { color: [{ type: i0.Input, args: [{ isSignal: true, alias: "color", required: true }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: true }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }] } });
69
69
 
70
70
  /** Convenience array for importing eds-chart-legend components. */
@@ -1 +1 @@
1
- {"version":3,"file":"eui-eds-charts-eds-chart-legend.mjs","sources":["../../charts/eds-chart-legend/eds-chart-legend.ts","../../charts/eds-chart-legend/eds-chart-legend-item.ts","../../charts/eds-chart-legend/index.ts","../../charts/eds-chart-legend/eui-eds-charts-eds-chart-legend.ts"],"sourcesContent":["import { Component, ChangeDetectionStrategy } from '@angular/core';\n\n/**\n * Horizontal legend row for charts.\n * Contains eds-chart-legend-item children.\n *\n * Usage:\n * ```html\n * <eds-chart-legend>\n * <eds-chart-legend-item color=\"#3b82f6\" label=\"Desktop\" value=\"65%\" />\n * <eds-chart-legend-item color=\"#10b981\" label=\"Mobile\" value=\"25%\" />\n * </eds-chart-legend>\n * ```\n */\n@Component({\n selector: 'eds-chart-legend',\n template: '<ng-content/>',\n styleUrl: './eds-chart-legend.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'eds-chart-legend',\n '[attr.data-e2e]': '\"eds-chart-legend\"',\n },\n})\nexport class EdsChartLegend {}\n","import {\n Component,\n ChangeDetectionStrategy,\n input,\n} from '@angular/core';\n\n/**\n * A single legend item (colored dot + label + optional value).\n *\n * Usage:\n * ```html\n * <eds-chart-legend-item color=\"#10b981\" label=\"Active\" value=\"80%\" />\n * ```\n */\n@Component({\n selector: 'eds-chart-legend-item',\n template: `\n <span class=\"eds-chart-legend-item__dot\" [style.background-color]=\"color()\"></span>\n <span class=\"eds-chart-legend-item__label\">{{ label() }}</span>\n @if (value()) {\n <span class=\"eds-chart-legend-item__value\">{{ value() }}</span>\n }\n `,\n styleUrl: './eds-chart-legend-item.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'eds-chart-legend-item',\n },\n})\nexport class EdsChartLegendItem {\n /** Color of the legend dot (CSS value or token). */\n color = input.required<string>();\n\n /** Text label for this legend entry. */\n label = input.required<string>();\n\n /** Optional value displayed after the label. */\n value = input<string>('');\n}\n","import { EdsChartLegend } from './eds-chart-legend';\nimport { EdsChartLegendItem } from './eds-chart-legend-item';\n\nexport { EdsChartLegend, EdsChartLegendItem };\n\n/** Convenience array for importing eds-chart-legend components. */\nexport const EDS_CHART_LEGEND = [EdsChartLegend, EdsChartLegendItem] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;AAEA;;;;;;;;;;;AAWG;MAWU,cAAc,CAAA;8GAAd,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAd,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,cAAc,mLARb,eAAe,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,qFAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAQhB,cAAc,EAAA,UAAA,EAAA,CAAA;kBAV1B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,kBAAkB,YAClB,eAAe,EAAA,eAAA,EAER,uBAAuB,CAAC,MAAM,EAAA,IAAA,EACzC;AACF,wBAAA,KAAK,EAAE,kBAAkB;AACzB,wBAAA,iBAAiB,EAAE,oBAAoB;AAC1C,qBAAA,EAAA,MAAA,EAAA,CAAA,qFAAA,CAAA,EAAA;;;AChBL;;;;;;;AAOG;MAgBU,kBAAkB,CAAA;AAf/B,IAAA,WAAA,GAAA;;QAiBI,IAAA,CAAA,KAAK,GAAG,KAAK,CAAC,QAAQ;kFAAU;;QAGhC,IAAA,CAAA,KAAK,GAAG,KAAK,CAAC,QAAQ;kFAAU;;QAGhC,IAAA,CAAA,KAAK,GAAG,KAAK,CAAS,EAAE;kFAAC;AAC5B,IAAA;8GATY,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uBAAA,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,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,uBAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAbjB;;;;;;AAMT,IAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,gdAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAOQ,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAf9B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,uBAAuB,EAAA,QAAA,EACvB;;;;;;KAMT,EAAA,eAAA,EAEgB,uBAAuB,CAAC,MAAM,EAAA,IAAA,EACzC;AACF,wBAAA,KAAK,EAAE,uBAAuB;AACjC,qBAAA,EAAA,MAAA,EAAA,CAAA,gdAAA,CAAA,EAAA;;;ACtBL;MACa,gBAAgB,GAAG,CAAC,cAAc,EAAE,kBAAkB;;ACNnE;;AAEG;;;;"}
1
+ {"version":3,"file":"eui-eds-charts-eds-chart-legend.mjs","sources":["../../charts/eds-chart-legend/eds-chart-legend.ts","../../charts/eds-chart-legend/eds-chart-legend-item.ts","../../charts/eds-chart-legend/index.ts","../../charts/eds-chart-legend/eui-eds-charts-eds-chart-legend.ts"],"sourcesContent":["import { Component, ChangeDetectionStrategy } from '@angular/core';\n\n/**\n * Horizontal legend row for charts.\n * Contains eds-chart-legend-item children.\n *\n * Usage:\n * ```html\n * <eds-chart-legend>\n * <eds-chart-legend-item color=\"#3b82f6\" label=\"Desktop\" value=\"65%\" />\n * <eds-chart-legend-item color=\"#10b981\" label=\"Mobile\" value=\"25%\" />\n * </eds-chart-legend>\n * ```\n */\n@Component({\n selector: 'eds-chart-legend',\n template: '<ng-content/>',\n styleUrl: './eds-chart-legend.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'eds-chart-legend',\n '[attr.data-e2e]': '\"eds-chart-legend\"',\n },\n})\nexport class EdsChartLegend {}\n","import {\n Component,\n ChangeDetectionStrategy,\n input,\n} from '@angular/core';\n\n/**\n * A single legend item (colored dot + label + optional value).\n *\n * Usage:\n * ```html\n * <eds-chart-legend-item color=\"#10b981\" label=\"Active\" value=\"80%\" />\n * ```\n */\n@Component({\n selector: 'eds-chart-legend-item',\n template: `\n <span class=\"eds-chart-legend-item__dot\" [style.background-color]=\"color()\"></span>\n <span class=\"eds-chart-legend-item__label\">{{ label() }}</span>\n @if (value()) {\n <span class=\"eds-chart-legend-item__value\">{{ value() }}</span>\n }\n `,\n styleUrl: './eds-chart-legend-item.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'eds-chart-legend-item',\n },\n})\nexport class EdsChartLegendItem {\n /** Color of the legend dot (CSS value or token). */\n color = input.required<string>();\n\n /** Text label for this legend entry. */\n label = input.required<string>();\n\n /** Optional value displayed after the label. */\n value = input<string>('');\n}\n","import { EdsChartLegend } from './eds-chart-legend';\nimport { EdsChartLegendItem } from './eds-chart-legend-item';\n\nexport { EdsChartLegend, EdsChartLegendItem };\n\n/** Convenience array for importing eds-chart-legend components. */\nexport const EDS_CHART_LEGEND = [EdsChartLegend, EdsChartLegendItem] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;AAEA;;;;;;;;;;;AAWG;MAWU,cAAc,CAAA;8GAAd,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAd,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,cAAc,mLARb,eAAe,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,qFAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAQhB,cAAc,EAAA,UAAA,EAAA,CAAA;kBAV1B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,kBAAkB,YAClB,eAAe,EAAA,eAAA,EAER,uBAAuB,CAAC,MAAM,EAAA,IAAA,EACzC;AACF,wBAAA,KAAK,EAAE,kBAAkB;AACzB,wBAAA,iBAAiB,EAAE,oBAAoB;AAC1C,qBAAA,EAAA,MAAA,EAAA,CAAA,qFAAA,CAAA,EAAA;;;AChBL;;;;;;;AAOG;MAgBU,kBAAkB,CAAA;AAf/B,IAAA,WAAA,GAAA;;QAiBI,IAAA,CAAA,KAAK,GAAG,KAAK,CAAC,QAAQ;kFAAU;;QAGhC,IAAA,CAAA,KAAK,GAAG,KAAK,CAAC,QAAQ;kFAAU;;QAGhC,IAAA,CAAA,KAAK,GAAG,KAAK,CAAS,EAAE;kFAAC;AAC5B,IAAA;8GATY,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uBAAA,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,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,uBAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAbjB;;;;;;AAMT,IAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,+cAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAOQ,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAf9B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,uBAAuB,EAAA,QAAA,EACvB;;;;;;KAMT,EAAA,eAAA,EAEgB,uBAAuB,CAAC,MAAM,EAAA,IAAA,EACzC;AACF,wBAAA,KAAK,EAAE,uBAAuB;AACjC,qBAAA,EAAA,MAAA,EAAA,CAAA,+cAAA,CAAA,EAAA;;;ACtBL;MACa,gBAAgB,GAAG,CAAC,cAAc,EAAE,kBAAkB;;ACNnE;;AAEG;;;;"}
@@ -84,7 +84,7 @@ class EdsAccordionItem {
84
84
  event.stopPropagation();
85
85
  }
86
86
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EdsAccordionItem, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
87
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.2", type: EdsAccordionItem, isStandalone: true, selector: "eds-accordion-item", inputs: { size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, headingLevel: { classPropertyName: "headingLevel", publicName: "headingLevel", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { toggleItem: "toggleItem" }, host: { properties: { "attr.size": "size()", "attr.disabled": "disabled() || null", "attr.data-e2e": "\"eds-accordion-item\"" }, classAttribute: "eds-accordion-item" }, hostDirectives: [{ directive: i1.CdkAccordionItem, inputs: ["expanded", "isExpanded"] }], ngImport: i0, template: "<div [attr.role]=\"'heading'\" [attr.aria-level]=\"headingLevel()\">\n <button\n class=\"eds-accordion-item__header\"\n type=\"button\"\n [id]=\"headerId\"\n [attr.aria-expanded]=\"accItem.expanded\"\n [attr.aria-controls]=\"panelId\"\n [disabled]=\"disabled()\"\n (click)=\"onToggle($event)\">\n <ng-content select=\"eds-accordion-item-header\"/>\n <span class=\"eds-accordion-item__header-icon\" [class.eds-accordion-item__header-icon--rotated]=\"accItem.expanded\">\n <eds-icon icon=\"caret-down:core\" size=\"s\"/>\n </span>\n </button>\n</div>\n<div\n [id]=\"panelId\"\n role=\"region\"\n [attr.aria-labelledby]=\"headerId\"\n class=\"eds-accordion-item__body\"\n [class.eds-accordion-item__body--collapsed]=\"!accItem.expanded\">\n <div class=\"eds-accordion-item__body-inner\">\n <ng-content/>\n </div>\n</div>\n", styles: [":host{display:flex;flex-direction:column;width:100%;border-bottom:var(--eds-bw-xs) solid var(--eds-c-border-divider);overflow:clip}:host [role=heading]{margin:0;padding:0;font:inherit}:host .eds-accordion-item__header{display:flex;align-items:center;width:100%;padding:var(--eds-sp-m) var(--eds-sp-l);outline:none;background-color:transparent;border:var(--eds-bw-none);text-align:start;cursor:pointer;font:var(--eds-f-label-m-semi-bold);color:var(--eds-c-foreground)}:host .eds-accordion-item__header:focus-visible{outline:var(--eds-bw-xs) solid var(--eds-c-border-focus);outline-offset:calc(-1 * var(--eds-sp-4xs));border-radius:var(--eds-br-xs)}:host .eds-accordion-item__header:hover:not(:disabled){background-color:var(--eds-c-surface-elevation-sunken)}:host .eds-accordion-item__header-icon{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;padding-left:var(--eds-sp-m)}:host .eds-accordion-item__header-icon>*{display:inline-flex;transition:transform .2s ease}:host .eds-accordion-item__header-icon--rotated>*{transform:rotate(180deg)}:host .eds-accordion-item__body{display:grid;grid-template-rows:1fr;transition:grid-template-rows .2s ease;overflow:hidden}:host .eds-accordion-item__body-inner{min-height:0;overflow:hidden;padding:var(--eds-sp-xs) var(--eds-sp-l) var(--eds-sp-l) var(--eds-sp-l);font:var(--eds-f-paragraph-m)}:host .eds-accordion-item__body--collapsed{grid-template-rows:0fr}:host .eds-accordion-item__body--collapsed .eds-accordion-item__body-inner{padding-top:0;padding-bottom:0}:host([size=s]) .eds-accordion-item__header{padding-top:var(--eds-sp-xs);padding-bottom:var(--eds-sp-xs);font:var(--eds-f-label-s-semi-bold)}:host([size=s]) .eds-accordion-item__body-inner{padding-bottom:var(--eds-sp-s);font:var(--eds-f-paragraph-s)}:host([size=l]) .eds-accordion-item__header{padding-top:var(--eds-sp-l);padding-bottom:var(--eds-sp-l);font:var(--eds-f-label-l-semi-bold)}:host([disabled]){pointer-events:none;opacity:var(--eds-op-40)}\n"], dependencies: [{ kind: "component", type: i2.EdsIcon, selector: "eds-icon, span[edsIcon]", inputs: ["icon", "set", "color", "size", "ariaLabel", "ariaHidden", "rounded", "isLoading"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
87
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.2", type: EdsAccordionItem, isStandalone: true, selector: "eds-accordion-item", inputs: { size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, headingLevel: { classPropertyName: "headingLevel", publicName: "headingLevel", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { toggleItem: "toggleItem" }, host: { properties: { "attr.size": "size()", "attr.disabled": "disabled() || null", "attr.data-e2e": "\"eds-accordion-item\"" }, classAttribute: "eds-accordion-item" }, hostDirectives: [{ directive: i1.CdkAccordionItem, inputs: ["expanded", "isExpanded"] }], ngImport: i0, template: "<div [attr.role]=\"'heading'\" [attr.aria-level]=\"headingLevel()\">\n <button\n class=\"eds-accordion-item__header\"\n type=\"button\"\n [id]=\"headerId\"\n [attr.aria-expanded]=\"accItem.expanded\"\n [attr.aria-controls]=\"panelId\"\n [disabled]=\"disabled()\"\n (click)=\"onToggle($event)\">\n <ng-content select=\"eds-accordion-item-header\"/>\n <span class=\"eds-accordion-item__header-icon\" [class.eds-accordion-item__header-icon--rotated]=\"accItem.expanded\">\n <eds-icon icon=\"caret-down:core\" size=\"s\"/>\n </span>\n </button>\n</div>\n<div\n [id]=\"panelId\"\n role=\"region\"\n [attr.aria-labelledby]=\"headerId\"\n class=\"eds-accordion-item__body\"\n [class.eds-accordion-item__body--collapsed]=\"!accItem.expanded\">\n <div class=\"eds-accordion-item__body-inner\">\n <ng-content/>\n </div>\n</div>\n", styles: [":host{display:flex;flex-direction:column;width:100%;border-bottom:var(--eds-bw-xs) solid var(--eds-c-border-divider);overflow:clip}:host [role=heading]{margin:0;padding:0;font:inherit}:host .eds-accordion-item__header{display:flex;align-items:center;width:100%;padding:var(--eds-sp-m) var(--eds-sp-l);outline:none;background-color:transparent;border:var(--eds-bw-none);text-align:start;cursor:pointer;font:var(--eds-f-label-m-semibold);color:var(--eds-c-foreground)}:host .eds-accordion-item__header:focus-visible{outline:var(--eds-bw-xs) solid var(--eds-c-border-focus);outline-offset:calc(-1 * var(--eds-sp-4xs));border-radius:var(--eds-br-xs)}:host .eds-accordion-item__header:hover:not(:disabled){background-color:var(--eds-c-surface-elevation-sunken)}:host .eds-accordion-item__header-icon{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;padding-left:var(--eds-sp-m)}:host .eds-accordion-item__header-icon>*{display:inline-flex;transition:transform .2s ease}:host .eds-accordion-item__header-icon--rotated>*{transform:rotate(180deg)}:host .eds-accordion-item__body{display:grid;grid-template-rows:1fr;transition:grid-template-rows .2s ease;overflow:hidden}:host .eds-accordion-item__body-inner{min-height:0;overflow:hidden;padding:var(--eds-sp-xs) var(--eds-sp-l) var(--eds-sp-l) var(--eds-sp-l);font:var(--eds-f-paragraph-m)}:host .eds-accordion-item__body--collapsed{grid-template-rows:0fr}:host .eds-accordion-item__body--collapsed .eds-accordion-item__body-inner{padding-top:0;padding-bottom:0}:host([size=s]) .eds-accordion-item__header{padding-top:var(--eds-sp-xs);padding-bottom:var(--eds-sp-xs);font:var(--eds-f-label-s-semibold)}:host([size=s]) .eds-accordion-item__body-inner{padding-bottom:var(--eds-sp-s);font:var(--eds-f-paragraph-s)}:host([size=l]) .eds-accordion-item__header{padding-top:var(--eds-sp-l);padding-bottom:var(--eds-sp-l);font:var(--eds-f-label-l-semibold)}:host([disabled]){pointer-events:none;opacity:var(--eds-op-40)}\n"], dependencies: [{ kind: "component", type: i2.EdsIcon, selector: "eds-icon, span[edsIcon]", inputs: ["icon", "set", "color", "size", "ariaLabel", "ariaHidden", "rounded", "isLoading"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
88
88
  }
89
89
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EdsAccordionItem, decorators: [{
90
90
  type: Component,
@@ -98,7 +98,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImpor
98
98
  '[attr.size]': 'size()',
99
99
  '[attr.disabled]': 'disabled() || null',
100
100
  '[attr.data-e2e]': '"eds-accordion-item"',
101
- }, template: "<div [attr.role]=\"'heading'\" [attr.aria-level]=\"headingLevel()\">\n <button\n class=\"eds-accordion-item__header\"\n type=\"button\"\n [id]=\"headerId\"\n [attr.aria-expanded]=\"accItem.expanded\"\n [attr.aria-controls]=\"panelId\"\n [disabled]=\"disabled()\"\n (click)=\"onToggle($event)\">\n <ng-content select=\"eds-accordion-item-header\"/>\n <span class=\"eds-accordion-item__header-icon\" [class.eds-accordion-item__header-icon--rotated]=\"accItem.expanded\">\n <eds-icon icon=\"caret-down:core\" size=\"s\"/>\n </span>\n </button>\n</div>\n<div\n [id]=\"panelId\"\n role=\"region\"\n [attr.aria-labelledby]=\"headerId\"\n class=\"eds-accordion-item__body\"\n [class.eds-accordion-item__body--collapsed]=\"!accItem.expanded\">\n <div class=\"eds-accordion-item__body-inner\">\n <ng-content/>\n </div>\n</div>\n", styles: [":host{display:flex;flex-direction:column;width:100%;border-bottom:var(--eds-bw-xs) solid var(--eds-c-border-divider);overflow:clip}:host [role=heading]{margin:0;padding:0;font:inherit}:host .eds-accordion-item__header{display:flex;align-items:center;width:100%;padding:var(--eds-sp-m) var(--eds-sp-l);outline:none;background-color:transparent;border:var(--eds-bw-none);text-align:start;cursor:pointer;font:var(--eds-f-label-m-semi-bold);color:var(--eds-c-foreground)}:host .eds-accordion-item__header:focus-visible{outline:var(--eds-bw-xs) solid var(--eds-c-border-focus);outline-offset:calc(-1 * var(--eds-sp-4xs));border-radius:var(--eds-br-xs)}:host .eds-accordion-item__header:hover:not(:disabled){background-color:var(--eds-c-surface-elevation-sunken)}:host .eds-accordion-item__header-icon{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;padding-left:var(--eds-sp-m)}:host .eds-accordion-item__header-icon>*{display:inline-flex;transition:transform .2s ease}:host .eds-accordion-item__header-icon--rotated>*{transform:rotate(180deg)}:host .eds-accordion-item__body{display:grid;grid-template-rows:1fr;transition:grid-template-rows .2s ease;overflow:hidden}:host .eds-accordion-item__body-inner{min-height:0;overflow:hidden;padding:var(--eds-sp-xs) var(--eds-sp-l) var(--eds-sp-l) var(--eds-sp-l);font:var(--eds-f-paragraph-m)}:host .eds-accordion-item__body--collapsed{grid-template-rows:0fr}:host .eds-accordion-item__body--collapsed .eds-accordion-item__body-inner{padding-top:0;padding-bottom:0}:host([size=s]) .eds-accordion-item__header{padding-top:var(--eds-sp-xs);padding-bottom:var(--eds-sp-xs);font:var(--eds-f-label-s-semi-bold)}:host([size=s]) .eds-accordion-item__body-inner{padding-bottom:var(--eds-sp-s);font:var(--eds-f-paragraph-s)}:host([size=l]) .eds-accordion-item__header{padding-top:var(--eds-sp-l);padding-bottom:var(--eds-sp-l);font:var(--eds-f-label-l-semi-bold)}:host([disabled]){pointer-events:none;opacity:var(--eds-op-40)}\n"] }]
101
+ }, template: "<div [attr.role]=\"'heading'\" [attr.aria-level]=\"headingLevel()\">\n <button\n class=\"eds-accordion-item__header\"\n type=\"button\"\n [id]=\"headerId\"\n [attr.aria-expanded]=\"accItem.expanded\"\n [attr.aria-controls]=\"panelId\"\n [disabled]=\"disabled()\"\n (click)=\"onToggle($event)\">\n <ng-content select=\"eds-accordion-item-header\"/>\n <span class=\"eds-accordion-item__header-icon\" [class.eds-accordion-item__header-icon--rotated]=\"accItem.expanded\">\n <eds-icon icon=\"caret-down:core\" size=\"s\"/>\n </span>\n </button>\n</div>\n<div\n [id]=\"panelId\"\n role=\"region\"\n [attr.aria-labelledby]=\"headerId\"\n class=\"eds-accordion-item__body\"\n [class.eds-accordion-item__body--collapsed]=\"!accItem.expanded\">\n <div class=\"eds-accordion-item__body-inner\">\n <ng-content/>\n </div>\n</div>\n", styles: [":host{display:flex;flex-direction:column;width:100%;border-bottom:var(--eds-bw-xs) solid var(--eds-c-border-divider);overflow:clip}:host [role=heading]{margin:0;padding:0;font:inherit}:host .eds-accordion-item__header{display:flex;align-items:center;width:100%;padding:var(--eds-sp-m) var(--eds-sp-l);outline:none;background-color:transparent;border:var(--eds-bw-none);text-align:start;cursor:pointer;font:var(--eds-f-label-m-semibold);color:var(--eds-c-foreground)}:host .eds-accordion-item__header:focus-visible{outline:var(--eds-bw-xs) solid var(--eds-c-border-focus);outline-offset:calc(-1 * var(--eds-sp-4xs));border-radius:var(--eds-br-xs)}:host .eds-accordion-item__header:hover:not(:disabled){background-color:var(--eds-c-surface-elevation-sunken)}:host .eds-accordion-item__header-icon{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;padding-left:var(--eds-sp-m)}:host .eds-accordion-item__header-icon>*{display:inline-flex;transition:transform .2s ease}:host .eds-accordion-item__header-icon--rotated>*{transform:rotate(180deg)}:host .eds-accordion-item__body{display:grid;grid-template-rows:1fr;transition:grid-template-rows .2s ease;overflow:hidden}:host .eds-accordion-item__body-inner{min-height:0;overflow:hidden;padding:var(--eds-sp-xs) var(--eds-sp-l) var(--eds-sp-l) var(--eds-sp-l);font:var(--eds-f-paragraph-m)}:host .eds-accordion-item__body--collapsed{grid-template-rows:0fr}:host .eds-accordion-item__body--collapsed .eds-accordion-item__body-inner{padding-top:0;padding-bottom:0}:host([size=s]) .eds-accordion-item__header{padding-top:var(--eds-sp-xs);padding-bottom:var(--eds-sp-xs);font:var(--eds-f-label-s-semibold)}:host([size=s]) .eds-accordion-item__body-inner{padding-bottom:var(--eds-sp-s);font:var(--eds-f-paragraph-s)}:host([size=l]) .eds-accordion-item__header{padding-top:var(--eds-sp-l);padding-bottom:var(--eds-sp-l);font:var(--eds-f-label-l-semibold)}:host([disabled]){pointer-events:none;opacity:var(--eds-op-40)}\n"] }]
102
102
  }], propDecorators: { size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], headingLevel: [{ type: i0.Input, args: [{ isSignal: true, alias: "headingLevel", required: false }] }], toggleItem: [{ type: i0.Output, args: ["toggleItem"] }] } });
103
103
  /**
104
104
  * Directive for marking the header content of an accordion item.
@@ -1 +1 @@
1
- {"version":3,"file":"eui-eds-eds-accordion.mjs","sources":["../../eds-accordion/eds-accordion.ts","../../eds-accordion/eds-accordion-item.ts","../../eds-accordion/eds-accordion-item.html","../../eds-accordion/index.ts","../../eds-accordion/eui-eds-eds-accordion.ts"],"sourcesContent":["import { CdkAccordion } from '@angular/cdk/accordion';\nimport { Component, ChangeDetectionStrategy } from '@angular/core';\n\n/**\n * Accordion container component that manages a collection of expandable panel items.\n * Built on Angular CDK Accordion for robust expansion state management and accessibility.\n *\n * Implements WAI-ARIA APG Accordion Pattern:\n * - Manages single or multi-expansion modes (isMulti input)\n * - Child items handle their own ARIA attributes (aria-expanded, aria-controls, aria-labelledby)\n *\n * Content is projected via ng-content expecting eds-accordion-item children.\n */\n@Component({\n selector: 'eds-accordion',\n template: '<ng-content/>',\n styleUrl: './eds-accordion.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: CdkAccordion,\n inputs: ['multi: isMulti'],\n },\n ],\n host: {\n class: 'eds-accordion',\n '[attr.data-e2e]': '\"eds-accordion\"',\n },\n})\nexport class EdsAccordion {}\n","import { CdkAccordionItem } from '@angular/cdk/accordion';\nimport {\n Component,\n ChangeDetectionStrategy,\n Directive,\n inject,\n output,\n input,\n booleanAttribute,\n numberAttribute,\n} from '@angular/core';\n\nimport { EDS_ICON } from '@eui/eds/eds-icon';\n\n/**\n * Local narrowed size union — the accordion item's size contract.\n */\nexport type EdsAccordionItemSize = 's' | 'm' | 'l';\n\n/**\n * Individual accordion item component that can be expanded or collapsed.\n * Provides a collapsible panel with header and content sections.\n *\n * Implements WAI-ARIA APG Accordion Pattern:\n * - Header button has aria-expanded reflecting state\n * - Header button has aria-controls pointing to the panel\n * - Panel has role=\"region\" with aria-labelledby pointing to the header\n * - Enter/Space on header toggles expansion\n *\n * Supports size variants via EdsSizeDirective hostDirective.\n */\n@Component({\n selector: 'eds-accordion-item',\n templateUrl: './eds-accordion-item.html',\n styleUrl: './eds-accordion-item.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [...EDS_ICON],\n hostDirectives: [\n {\n directive: CdkAccordionItem,\n inputs: ['expanded: isExpanded'],\n },\n ],\n host: {\n class: 'eds-accordion-item',\n '[attr.size]': 'size()',\n '[attr.disabled]': 'disabled() || null',\n '[attr.data-e2e]': '\"eds-accordion-item\"',\n },\n})\nexport class EdsAccordionItem {\n /**\n * Size of the accordion item.\n * @default 'm'\n */\n size = input<EdsAccordionItemSize>('m');\n\n /**\n * Whether the accordion item is disabled.\n * @default false\n */\n disabled = input(false, { transform: booleanAttribute });\n\n /**\n * The heading level for the accordion header wrapper (2–6).\n * Per WAI-ARIA APG, each accordion header button must be wrapped in a heading\n * with an appropriate aria-level for the page information architecture.\n * @default 3\n */\n headingLevel = input(3, { transform: numberAttribute });\n\n /** Event emitted when the accordion item is toggled. Payload is the expanded state. */\n readonly toggleItem = output<boolean>();\n\n protected accItem = inject(CdkAccordionItem);\n\n /** Unique IDs for ARIA relationships */\n protected headerId = `eds-accordion-header-${crypto.randomUUID().slice(0, 8)}`;\n protected panelId = `eds-accordion-panel-${crypto.randomUUID().slice(0, 8)}`;\n\n /**\n * Handles the toggle event for expanding/collapsing the accordion item.\n */\n onToggle(event: Event): void {\n if (this.disabled()) {\n return;\n }\n this.accItem.toggle();\n this.toggleItem.emit(this.accItem.expanded);\n event.preventDefault();\n event.stopPropagation();\n }\n}\n\n/**\n * Directive for marking the header content of an accordion item.\n * Content projected with this selector is displayed in the clickable header area.\n */\n// eslint-disable-next-line @angular-eslint/directive-selector\n@Directive({ selector: 'eds-accordion-item-header' })\nexport class EdsAccordionItemHeader {}\n","<div [attr.role]=\"'heading'\" [attr.aria-level]=\"headingLevel()\">\n <button\n class=\"eds-accordion-item__header\"\n type=\"button\"\n [id]=\"headerId\"\n [attr.aria-expanded]=\"accItem.expanded\"\n [attr.aria-controls]=\"panelId\"\n [disabled]=\"disabled()\"\n (click)=\"onToggle($event)\">\n <ng-content select=\"eds-accordion-item-header\"/>\n <span class=\"eds-accordion-item__header-icon\" [class.eds-accordion-item__header-icon--rotated]=\"accItem.expanded\">\n <eds-icon icon=\"caret-down:core\" size=\"s\"/>\n </span>\n </button>\n</div>\n<div\n [id]=\"panelId\"\n role=\"region\"\n [attr.aria-labelledby]=\"headerId\"\n class=\"eds-accordion-item__body\"\n [class.eds-accordion-item__body--collapsed]=\"!accItem.expanded\">\n <div class=\"eds-accordion-item__body-inner\">\n <ng-content/>\n </div>\n</div>\n","import { EdsAccordion } from './eds-accordion';\nimport { EdsAccordionItem, EdsAccordionItemHeader } from './eds-accordion-item';\n\nexport { EdsAccordion } from './eds-accordion';\nexport { EdsAccordionItem, EdsAccordionItemHeader } from './eds-accordion-item';\n\n/** Convenience array for importing all eds-accordion components. */\nexport const EDS_ACCORDION = [\n EdsAccordion,\n EdsAccordionItem,\n EdsAccordionItemHeader,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"eui-eds-eds-accordion.mjs","sources":["../../eds-accordion/eds-accordion.ts","../../eds-accordion/eds-accordion-item.ts","../../eds-accordion/eds-accordion-item.html","../../eds-accordion/index.ts","../../eds-accordion/eui-eds-eds-accordion.ts"],"sourcesContent":["import { CdkAccordion } from '@angular/cdk/accordion';\nimport { Component, ChangeDetectionStrategy } from '@angular/core';\n\n/**\n * Accordion container component that manages a collection of expandable panel items.\n * Built on Angular CDK Accordion for robust expansion state management and accessibility.\n *\n * Implements WAI-ARIA APG Accordion Pattern:\n * - Manages single or multi-expansion modes (isMulti input)\n * - Child items handle their own ARIA attributes (aria-expanded, aria-controls, aria-labelledby)\n *\n * Content is projected via ng-content expecting eds-accordion-item children.\n */\n@Component({\n selector: 'eds-accordion',\n template: '<ng-content/>',\n styleUrl: './eds-accordion.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: CdkAccordion,\n inputs: ['multi: isMulti'],\n },\n ],\n host: {\n class: 'eds-accordion',\n '[attr.data-e2e]': '\"eds-accordion\"',\n },\n})\nexport class EdsAccordion {}\n","import { CdkAccordionItem } from '@angular/cdk/accordion';\nimport {\n Component,\n ChangeDetectionStrategy,\n Directive,\n inject,\n output,\n input,\n booleanAttribute,\n numberAttribute,\n} from '@angular/core';\n\nimport { EDS_ICON } from '@eui/eds/eds-icon';\n\n/**\n * Local narrowed size union — the accordion item's size contract.\n */\nexport type EdsAccordionItemSize = 's' | 'm' | 'l';\n\n/**\n * Individual accordion item component that can be expanded or collapsed.\n * Provides a collapsible panel with header and content sections.\n *\n * Implements WAI-ARIA APG Accordion Pattern:\n * - Header button has aria-expanded reflecting state\n * - Header button has aria-controls pointing to the panel\n * - Panel has role=\"region\" with aria-labelledby pointing to the header\n * - Enter/Space on header toggles expansion\n *\n * Supports size variants via EdsSizeDirective hostDirective.\n */\n@Component({\n selector: 'eds-accordion-item',\n templateUrl: './eds-accordion-item.html',\n styleUrl: './eds-accordion-item.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [...EDS_ICON],\n hostDirectives: [\n {\n directive: CdkAccordionItem,\n inputs: ['expanded: isExpanded'],\n },\n ],\n host: {\n class: 'eds-accordion-item',\n '[attr.size]': 'size()',\n '[attr.disabled]': 'disabled() || null',\n '[attr.data-e2e]': '\"eds-accordion-item\"',\n },\n})\nexport class EdsAccordionItem {\n /**\n * Size of the accordion item.\n * @default 'm'\n */\n size = input<EdsAccordionItemSize>('m');\n\n /**\n * Whether the accordion item is disabled.\n * @default false\n */\n disabled = input(false, { transform: booleanAttribute });\n\n /**\n * The heading level for the accordion header wrapper (2–6).\n * Per WAI-ARIA APG, each accordion header button must be wrapped in a heading\n * with an appropriate aria-level for the page information architecture.\n * @default 3\n */\n headingLevel = input(3, { transform: numberAttribute });\n\n /** Event emitted when the accordion item is toggled. Payload is the expanded state. */\n readonly toggleItem = output<boolean>();\n\n protected accItem = inject(CdkAccordionItem);\n\n /** Unique IDs for ARIA relationships */\n protected headerId = `eds-accordion-header-${crypto.randomUUID().slice(0, 8)}`;\n protected panelId = `eds-accordion-panel-${crypto.randomUUID().slice(0, 8)}`;\n\n /**\n * Handles the toggle event for expanding/collapsing the accordion item.\n */\n onToggle(event: Event): void {\n if (this.disabled()) {\n return;\n }\n this.accItem.toggle();\n this.toggleItem.emit(this.accItem.expanded);\n event.preventDefault();\n event.stopPropagation();\n }\n}\n\n/**\n * Directive for marking the header content of an accordion item.\n * Content projected with this selector is displayed in the clickable header area.\n */\n// eslint-disable-next-line @angular-eslint/directive-selector\n@Directive({ selector: 'eds-accordion-item-header' })\nexport class EdsAccordionItemHeader {}\n","<div [attr.role]=\"'heading'\" [attr.aria-level]=\"headingLevel()\">\n <button\n class=\"eds-accordion-item__header\"\n type=\"button\"\n [id]=\"headerId\"\n [attr.aria-expanded]=\"accItem.expanded\"\n [attr.aria-controls]=\"panelId\"\n [disabled]=\"disabled()\"\n (click)=\"onToggle($event)\">\n <ng-content select=\"eds-accordion-item-header\"/>\n <span class=\"eds-accordion-item__header-icon\" [class.eds-accordion-item__header-icon--rotated]=\"accItem.expanded\">\n <eds-icon icon=\"caret-down:core\" size=\"s\"/>\n </span>\n </button>\n</div>\n<div\n [id]=\"panelId\"\n role=\"region\"\n [attr.aria-labelledby]=\"headerId\"\n class=\"eds-accordion-item__body\"\n [class.eds-accordion-item__body--collapsed]=\"!accItem.expanded\">\n <div class=\"eds-accordion-item__body-inner\">\n <ng-content/>\n </div>\n</div>\n","import { EdsAccordion } from './eds-accordion';\nimport { EdsAccordionItem, EdsAccordionItemHeader } from './eds-accordion-item';\n\nexport { EdsAccordion } from './eds-accordion';\nexport { EdsAccordionItem, EdsAccordionItemHeader } from './eds-accordion-item';\n\n/** Convenience array for importing all eds-accordion components. */\nexport const EDS_ACCORDION = [\n EdsAccordion,\n EdsAccordionItem,\n EdsAccordionItemHeader,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -71,11 +71,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImpor
71
71
 
72
72
  class EdsAlertTitle {
73
73
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EdsAlertTitle, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
74
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.1.2", type: EdsAlertTitle, isStandalone: true, selector: "eds-alert-title", ngImport: i0, template: '<ng-content/>', isInline: true, styles: [":host{font:var(--eds-f-paragraph-m-semi-bold)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
74
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.1.2", type: EdsAlertTitle, isStandalone: true, selector: "eds-alert-title", ngImport: i0, template: '<ng-content/>', isInline: true, styles: [":host{font:var(--eds-f-paragraph-m-semibold)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
75
75
  }
76
76
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EdsAlertTitle, decorators: [{
77
77
  type: Component,
78
- args: [{ template: '<ng-content/>', selector: 'eds-alert-title', changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{font:var(--eds-f-paragraph-m-semi-bold)}\n"] }]
78
+ args: [{ template: '<ng-content/>', selector: 'eds-alert-title', changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{font:var(--eds-f-paragraph-m-semibold)}\n"] }]
79
79
  }] });
80
80
 
81
81
  const EDS_ALERT = [
@@ -1 +1 @@
1
- {"version":3,"file":"eui-eds-eds-alert.mjs","sources":["../../eds-alert/eds-alert.ts","../../eds-alert/eds-alert.html","../../eds-alert/eds-alert-title.ts","../../eds-alert/index.ts","../../eds-alert/eui-eds-eds-alert.ts"],"sourcesContent":["import {\n Component,\n ChangeDetectionStrategy,\n input,\n output,\n booleanAttribute,\n model,\n} from '@angular/core';\n\nimport { EDS_ICON_BUTTON } from '@eui/eds/eds-icon-button';\nimport { EDS_ICON_STATE } from '@eui/eds/utilities/eds-icon-state';\n\n/**\n * Local narrowed color union — the alert's color contract.\n */\nexport type EdsAlertColor = 'info' | 'success' | 'warning' | 'critical';\n\n@Component({\n templateUrl: './eds-alert.html',\n selector: 'div[edsAlert], eds-alert',\n styleUrl: './eds-alert.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n ...EDS_ICON_BUTTON,\n ...EDS_ICON_STATE,\n ],\n host: {\n role: 'alert',\n '[attr.color]': 'color()',\n '[attr.hidden]': '!isVisible() || null',\n '[attr.data-e2e]': 'e2eAttr()',\n },\n})\nexport class EdsAlert {\n /**\n * Data attribute value for end-to-end testing identification.\n * Applied as data-e2e attribute on the host element.\n * @default 'eds-alert'\n */\n e2eAttr = input('eds-alert');\n\n /**\n * Semantic color of the alert.\n * @default 'info'\n */\n color = input<EdsAlertColor>('info');\n\n /**\n * Enables a close button allowing users to dismiss the alert.\n * When true, displays a close icon button that hides the alert and emits closeAlert event.\n * @default false\n */\n isCloseable = input(false, { transform: booleanAttribute });\n\n /**\n * Controls the visibility state of the alert.\n * Two-way bindable model that can be programmatically controlled or updated by user dismissal.\n * @default true\n */\n isVisible = model(true);\n\n /**\n * Emitted when the alert is closed via the close button.\n * Payload: boolean - always emits false to indicate alert is hidden\n * Triggered when user clicks the close button (when isCloseable is true).\n */\n closeAlert = output<boolean>();\n\n /**\n * ARIA label for the close button, allowing localization.\n * @default 'Close alert'\n */\n closeAriaLabel = input('Close alert');\n\n /**\n * Hide the alert and emits the `closeAlert` event when the close button is clicked.\n */\n onCloseClick(): void {\n this.isVisible.set(false);\n this.closeAlert.emit(false);\n }\n}\n","<eds-icon-state class=\"eds-alert__icon\" [color]=\"color()\"/>\n\n<div class=\"eds-alert__content\">\n <ng-content select=\"eds-alert-title\"/>\n <ng-content />\n</div>\n\n@if (isCloseable()) {\n <button edsIconButton class=\"eds-alert__close\"\n [ariaLabel]=\"closeAriaLabel()\"\n icon=\"x:core\" rounded size=\"s\" color=\"neutral\"\n (buttonClick)=\"onCloseClick()\">\n </button>\n}\n","import {\n Component,\n ChangeDetectionStrategy,\n} from '@angular/core';\n\n@Component({\n template: '<ng-content/>',\n selector: 'eds-alert-title',\n styleUrl: './eds-alert-title.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EdsAlertTitle {\n}\n","import { EdsAlert } from './eds-alert';\nimport { EdsAlertTitle } from './eds-alert-title';\n\nexport * from './eds-alert';\nexport * from './eds-alert-title';\n\nexport const EDS_ALERT = [\n EdsAlert,\n EdsAlertTitle,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"eui-eds-eds-alert.mjs","sources":["../../eds-alert/eds-alert.ts","../../eds-alert/eds-alert.html","../../eds-alert/eds-alert-title.ts","../../eds-alert/index.ts","../../eds-alert/eui-eds-eds-alert.ts"],"sourcesContent":["import {\n Component,\n ChangeDetectionStrategy,\n input,\n output,\n booleanAttribute,\n model,\n} from '@angular/core';\n\nimport { EDS_ICON_BUTTON } from '@eui/eds/eds-icon-button';\nimport { EDS_ICON_STATE } from '@eui/eds/utilities/eds-icon-state';\n\n/**\n * Local narrowed color union — the alert's color contract.\n */\nexport type EdsAlertColor = 'info' | 'success' | 'warning' | 'critical';\n\n@Component({\n templateUrl: './eds-alert.html',\n selector: 'div[edsAlert], eds-alert',\n styleUrl: './eds-alert.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n ...EDS_ICON_BUTTON,\n ...EDS_ICON_STATE,\n ],\n host: {\n role: 'alert',\n '[attr.color]': 'color()',\n '[attr.hidden]': '!isVisible() || null',\n '[attr.data-e2e]': 'e2eAttr()',\n },\n})\nexport class EdsAlert {\n /**\n * Data attribute value for end-to-end testing identification.\n * Applied as data-e2e attribute on the host element.\n * @default 'eds-alert'\n */\n e2eAttr = input('eds-alert');\n\n /**\n * Semantic color of the alert.\n * @default 'info'\n */\n color = input<EdsAlertColor>('info');\n\n /**\n * Enables a close button allowing users to dismiss the alert.\n * When true, displays a close icon button that hides the alert and emits closeAlert event.\n * @default false\n */\n isCloseable = input(false, { transform: booleanAttribute });\n\n /**\n * Controls the visibility state of the alert.\n * Two-way bindable model that can be programmatically controlled or updated by user dismissal.\n * @default true\n */\n isVisible = model(true);\n\n /**\n * Emitted when the alert is closed via the close button.\n * Payload: boolean - always emits false to indicate alert is hidden\n * Triggered when user clicks the close button (when isCloseable is true).\n */\n closeAlert = output<boolean>();\n\n /**\n * ARIA label for the close button, allowing localization.\n * @default 'Close alert'\n */\n closeAriaLabel = input('Close alert');\n\n /**\n * Hide the alert and emits the `closeAlert` event when the close button is clicked.\n */\n onCloseClick(): void {\n this.isVisible.set(false);\n this.closeAlert.emit(false);\n }\n}\n","<eds-icon-state class=\"eds-alert__icon\" [color]=\"color()\"/>\n\n<div class=\"eds-alert__content\">\n <ng-content select=\"eds-alert-title\"/>\n <ng-content />\n</div>\n\n@if (isCloseable()) {\n <button edsIconButton class=\"eds-alert__close\"\n [ariaLabel]=\"closeAriaLabel()\"\n icon=\"x:core\" rounded size=\"s\" color=\"neutral\"\n (buttonClick)=\"onCloseClick()\">\n </button>\n}\n","import {\n Component,\n ChangeDetectionStrategy,\n} from '@angular/core';\n\n@Component({\n template: '<ng-content/>',\n selector: 'eds-alert-title',\n styleUrl: './eds-alert-title.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EdsAlertTitle {\n}\n","import { EdsAlert } from './eds-alert';\nimport { EdsAlertTitle } from './eds-alert-title';\n\nexport * from './eds-alert';\nexport * from './eds-alert-title';\n\nexport const EDS_ALERT = [\n EdsAlert,\n EdsAlertTitle,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -135,7 +135,7 @@ class EdsAutocompletePanel {
135
135
  this.optionSelected.emit(option);
136
136
  }
137
137
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EdsAutocompletePanel, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
138
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.2", type: EdsAutocompletePanel, isStandalone: true, selector: "eds-autocomplete-panel", inputs: { panelId: { classPropertyName: "panelId", publicName: "panelId", isSignal: true, isRequired: false, transformFunction: null }, isOpen: { classPropertyName: "isOpen", publicName: "isOpen", isSignal: true, isRequired: false, transformFunction: null }, itemSize: { classPropertyName: "itemSize", publicName: "itemSize", isSignal: true, isRequired: false, transformFunction: null }, viewportHeight: { classPropertyName: "viewportHeight", publicName: "viewportHeight", isSignal: true, isRequired: false, transformFunction: null }, groupBy: { classPropertyName: "groupBy", publicName: "groupBy", isSignal: true, isRequired: false, transformFunction: null }, distinctOptionGroups: { classPropertyName: "distinctOptionGroups", publicName: "distinctOptionGroups", isSignal: true, isRequired: false, transformFunction: null }, groupedOptions: { classPropertyName: "groupedOptions", publicName: "groupedOptions", isSignal: true, isRequired: false, transformFunction: null }, autocompleteOptions: { classPropertyName: "autocompleteOptions", publicName: "autocompleteOptions", isSignal: true, isRequired: false, transformFunction: null }, selectedOptionIndex: { classPropertyName: "selectedOptionIndex", publicName: "selectedOptionIndex", isSignal: true, isRequired: false, transformFunction: null }, optionTemplate: { classPropertyName: "optionTemplate", publicName: "optionTemplate", isSignal: true, isRequired: false, transformFunction: null }, optGroupTemplate: { classPropertyName: "optGroupTemplate", publicName: "optGroupTemplate", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { optionSelected: "optionSelected" }, host: { classAttribute: "eds-autocomplete-panel" }, viewQueries: [{ propertyName: "virtualScrolling", first: true, predicate: ["virtualScrolling"], descendants: true, isSignal: true }], ngImport: i0, template: "<div\n [id]=\"panelId()\"\n class=\"eds-autocomplete__panel\"\n role=\"listbox\"\n aria-label=\"Autocomplete panel\">\n <cdk-virtual-scroll-viewport\n #virtualScrolling\n [itemSize]=\"itemSize()\"\n tabindex=\"-1\"\n minBufferPx=\"500\"\n maxBufferPx=\"750\"\n [style.min-height]=\"viewportHeight() + 'px'\">\n @if (groupBy()) {\n @for (distinctOptionGroup of distinctOptionGroups(); track distinctOptionGroup) {\n @if (groupedOptions()[distinctOptionGroup]?.options?.length > 0) {\n <eds-autocomplete-option-group [label]=\"distinctOptionGroup\">\n <div class=\"eds-autocomplete-option-group__label\">\n @if (optGroupTemplate()) {\n <ng-template\n [ngTemplateOutlet]=\"optGroupTemplate()!\"\n [ngTemplateOutletContext]=\"{ $implicit: { label: distinctOptionGroup } }\">\n </ng-template>\n } @else {\n {{ distinctOptionGroup }}\n }\n </div>\n <div class=\"eds-autocomplete-option-group__options\">\n @for (option of groupedOptions()[distinctOptionGroup].options; let j = $index; track option.id ?? j) {\n <eds-autocomplete-option\n isGroupItem\n [optionId]=\"panelId() + '-option-' + (groupedOptions()[distinctOptionGroup].ancestorLength + j)\"\n [isActive]=\"selectedOptionIndex() === groupedOptions()[distinctOptionGroup].ancestorLength + j\"\n [isDisabled]=\"option.isDisabled\"\n (click)=\"onOptionSelected(option)\">\n @if (optionTemplate()) {\n <ng-template\n [ngTemplateOutlet]=\"optionTemplate()!\"\n [ngTemplateOutletContext]=\"{ $implicit: option }\">\n </ng-template>\n } @else {\n @if (option.iconName) {\n <eds-icon [icon]=\"option.iconName\" />\n }\n {{ option.label }}\n }\n </eds-autocomplete-option>\n }\n </div>\n </eds-autocomplete-option-group>\n }\n }\n } @else {\n <eds-autocomplete-option\n *cdkVirtualFor=\"let option of autocompleteOptions(); let i = index; trackBy: trackByFn\"\n [optionId]=\"panelId() + '-option-' + i\"\n [isActive]=\"selectedOptionIndex() === i\"\n [isDisabled]=\"option.isDisabled\"\n (click)=\"onOptionSelected(option)\">\n @if (optionTemplate()) {\n <ng-template\n [ngTemplateOutlet]=\"optionTemplate()!\"\n [ngTemplateOutletContext]=\"{ $implicit: option }\">\n </ng-template>\n } @else {\n @if (option.iconName) {\n <eds-icon [icon]=\"option.iconName\" />\n }\n {{ option.label }}\n }\n </eds-autocomplete-option>\n }\n </cdk-virtual-scroll-viewport>\n</div>\n", styles: [".eui-21 :host{display:block;width:100%}.eui-21 :host .eds-autocomplete__panel{box-shadow:var(--eds-sh-3);background-color:var(--eds-c-surface-elevation);border-radius:var(--eds-br-s);width:100%;overflow:hidden}.eui-21 :host .eds-autocomplete-option-group .eds-autocomplete-option-group__label{align-items:center;cursor:default;display:flex;font:var(--eds-f-label-m-semi-bold);min-height:40px;padding-inline:var(--eds-sp-s);gap:var(--eds-sp-xs)}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: ScrollingModule }, { kind: "directive", type: i1.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: i1.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: i1.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "component", type: EdsAutocompleteOption, selector: "eds-autocomplete-option", inputs: ["optionId", "isActive", "isDisabled", "isGroupItem", "variant"] }, { kind: "component", type: EdsAutocompleteOptionGroup, selector: "eds-autocomplete-option-group", inputs: ["label"] }, { kind: "component", type: i2.EdsIcon, selector: "eds-icon, span[edsIcon]", inputs: ["icon", "set", "color", "size", "ariaLabel", "ariaHidden", "rounded", "isLoading"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
138
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.2", type: EdsAutocompletePanel, isStandalone: true, selector: "eds-autocomplete-panel", inputs: { panelId: { classPropertyName: "panelId", publicName: "panelId", isSignal: true, isRequired: false, transformFunction: null }, isOpen: { classPropertyName: "isOpen", publicName: "isOpen", isSignal: true, isRequired: false, transformFunction: null }, itemSize: { classPropertyName: "itemSize", publicName: "itemSize", isSignal: true, isRequired: false, transformFunction: null }, viewportHeight: { classPropertyName: "viewportHeight", publicName: "viewportHeight", isSignal: true, isRequired: false, transformFunction: null }, groupBy: { classPropertyName: "groupBy", publicName: "groupBy", isSignal: true, isRequired: false, transformFunction: null }, distinctOptionGroups: { classPropertyName: "distinctOptionGroups", publicName: "distinctOptionGroups", isSignal: true, isRequired: false, transformFunction: null }, groupedOptions: { classPropertyName: "groupedOptions", publicName: "groupedOptions", isSignal: true, isRequired: false, transformFunction: null }, autocompleteOptions: { classPropertyName: "autocompleteOptions", publicName: "autocompleteOptions", isSignal: true, isRequired: false, transformFunction: null }, selectedOptionIndex: { classPropertyName: "selectedOptionIndex", publicName: "selectedOptionIndex", isSignal: true, isRequired: false, transformFunction: null }, optionTemplate: { classPropertyName: "optionTemplate", publicName: "optionTemplate", isSignal: true, isRequired: false, transformFunction: null }, optGroupTemplate: { classPropertyName: "optGroupTemplate", publicName: "optGroupTemplate", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { optionSelected: "optionSelected" }, host: { classAttribute: "eds-autocomplete-panel" }, viewQueries: [{ propertyName: "virtualScrolling", first: true, predicate: ["virtualScrolling"], descendants: true, isSignal: true }], ngImport: i0, template: "<div\n [id]=\"panelId()\"\n class=\"eds-autocomplete__panel\"\n role=\"listbox\"\n aria-label=\"Autocomplete panel\">\n <cdk-virtual-scroll-viewport\n #virtualScrolling\n [itemSize]=\"itemSize()\"\n tabindex=\"-1\"\n minBufferPx=\"500\"\n maxBufferPx=\"750\"\n [style.min-height]=\"viewportHeight() + 'px'\">\n @if (groupBy()) {\n @for (distinctOptionGroup of distinctOptionGroups(); track distinctOptionGroup) {\n @if (groupedOptions()[distinctOptionGroup]?.options?.length > 0) {\n <eds-autocomplete-option-group [label]=\"distinctOptionGroup\">\n <div class=\"eds-autocomplete-option-group__label\">\n @if (optGroupTemplate()) {\n <ng-template\n [ngTemplateOutlet]=\"optGroupTemplate()!\"\n [ngTemplateOutletContext]=\"{ $implicit: { label: distinctOptionGroup } }\">\n </ng-template>\n } @else {\n {{ distinctOptionGroup }}\n }\n </div>\n <div class=\"eds-autocomplete-option-group__options\">\n @for (option of groupedOptions()[distinctOptionGroup].options; let j = $index; track option.id ?? j) {\n <eds-autocomplete-option\n isGroupItem\n [optionId]=\"panelId() + '-option-' + (groupedOptions()[distinctOptionGroup].ancestorLength + j)\"\n [isActive]=\"selectedOptionIndex() === groupedOptions()[distinctOptionGroup].ancestorLength + j\"\n [isDisabled]=\"option.isDisabled\"\n (click)=\"onOptionSelected(option)\">\n @if (optionTemplate()) {\n <ng-template\n [ngTemplateOutlet]=\"optionTemplate()!\"\n [ngTemplateOutletContext]=\"{ $implicit: option }\">\n </ng-template>\n } @else {\n @if (option.iconName) {\n <eds-icon [icon]=\"option.iconName\" />\n }\n {{ option.label }}\n }\n </eds-autocomplete-option>\n }\n </div>\n </eds-autocomplete-option-group>\n }\n }\n } @else {\n <eds-autocomplete-option\n *cdkVirtualFor=\"let option of autocompleteOptions(); let i = index; trackBy: trackByFn\"\n [optionId]=\"panelId() + '-option-' + i\"\n [isActive]=\"selectedOptionIndex() === i\"\n [isDisabled]=\"option.isDisabled\"\n (click)=\"onOptionSelected(option)\">\n @if (optionTemplate()) {\n <ng-template\n [ngTemplateOutlet]=\"optionTemplate()!\"\n [ngTemplateOutletContext]=\"{ $implicit: option }\">\n </ng-template>\n } @else {\n @if (option.iconName) {\n <eds-icon [icon]=\"option.iconName\" />\n }\n {{ option.label }}\n }\n </eds-autocomplete-option>\n }\n </cdk-virtual-scroll-viewport>\n</div>\n", styles: [".eui-21 :host{display:block;width:100%}.eui-21 :host .eds-autocomplete__panel{box-shadow:var(--eds-sh-3);background-color:var(--eds-c-surface-elevation);border-radius:var(--eds-br-s);width:100%;overflow:hidden}.eui-21 :host .eds-autocomplete-option-group .eds-autocomplete-option-group__label{align-items:center;cursor:default;display:flex;font:var(--eds-f-label-m-semibold);min-height:40px;padding-inline:var(--eds-sp-s);gap:var(--eds-sp-xs)}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: ScrollingModule }, { kind: "directive", type: i1.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: i1.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: i1.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "component", type: EdsAutocompleteOption, selector: "eds-autocomplete-option", inputs: ["optionId", "isActive", "isDisabled", "isGroupItem", "variant"] }, { kind: "component", type: EdsAutocompleteOptionGroup, selector: "eds-autocomplete-option-group", inputs: ["label"] }, { kind: "component", type: i2.EdsIcon, selector: "eds-icon, span[edsIcon]", inputs: ["icon", "set", "color", "size", "ariaLabel", "ariaHidden", "rounded", "isLoading"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
139
139
  }
140
140
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: EdsAutocompletePanel, decorators: [{
141
141
  type: Component,
@@ -147,7 +147,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImpor
147
147
  ...EDS_ICON,
148
148
  ], host: {
149
149
  class: 'eds-autocomplete-panel',
150
- }, template: "<div\n [id]=\"panelId()\"\n class=\"eds-autocomplete__panel\"\n role=\"listbox\"\n aria-label=\"Autocomplete panel\">\n <cdk-virtual-scroll-viewport\n #virtualScrolling\n [itemSize]=\"itemSize()\"\n tabindex=\"-1\"\n minBufferPx=\"500\"\n maxBufferPx=\"750\"\n [style.min-height]=\"viewportHeight() + 'px'\">\n @if (groupBy()) {\n @for (distinctOptionGroup of distinctOptionGroups(); track distinctOptionGroup) {\n @if (groupedOptions()[distinctOptionGroup]?.options?.length > 0) {\n <eds-autocomplete-option-group [label]=\"distinctOptionGroup\">\n <div class=\"eds-autocomplete-option-group__label\">\n @if (optGroupTemplate()) {\n <ng-template\n [ngTemplateOutlet]=\"optGroupTemplate()!\"\n [ngTemplateOutletContext]=\"{ $implicit: { label: distinctOptionGroup } }\">\n </ng-template>\n } @else {\n {{ distinctOptionGroup }}\n }\n </div>\n <div class=\"eds-autocomplete-option-group__options\">\n @for (option of groupedOptions()[distinctOptionGroup].options; let j = $index; track option.id ?? j) {\n <eds-autocomplete-option\n isGroupItem\n [optionId]=\"panelId() + '-option-' + (groupedOptions()[distinctOptionGroup].ancestorLength + j)\"\n [isActive]=\"selectedOptionIndex() === groupedOptions()[distinctOptionGroup].ancestorLength + j\"\n [isDisabled]=\"option.isDisabled\"\n (click)=\"onOptionSelected(option)\">\n @if (optionTemplate()) {\n <ng-template\n [ngTemplateOutlet]=\"optionTemplate()!\"\n [ngTemplateOutletContext]=\"{ $implicit: option }\">\n </ng-template>\n } @else {\n @if (option.iconName) {\n <eds-icon [icon]=\"option.iconName\" />\n }\n {{ option.label }}\n }\n </eds-autocomplete-option>\n }\n </div>\n </eds-autocomplete-option-group>\n }\n }\n } @else {\n <eds-autocomplete-option\n *cdkVirtualFor=\"let option of autocompleteOptions(); let i = index; trackBy: trackByFn\"\n [optionId]=\"panelId() + '-option-' + i\"\n [isActive]=\"selectedOptionIndex() === i\"\n [isDisabled]=\"option.isDisabled\"\n (click)=\"onOptionSelected(option)\">\n @if (optionTemplate()) {\n <ng-template\n [ngTemplateOutlet]=\"optionTemplate()!\"\n [ngTemplateOutletContext]=\"{ $implicit: option }\">\n </ng-template>\n } @else {\n @if (option.iconName) {\n <eds-icon [icon]=\"option.iconName\" />\n }\n {{ option.label }}\n }\n </eds-autocomplete-option>\n }\n </cdk-virtual-scroll-viewport>\n</div>\n", styles: [".eui-21 :host{display:block;width:100%}.eui-21 :host .eds-autocomplete__panel{box-shadow:var(--eds-sh-3);background-color:var(--eds-c-surface-elevation);border-radius:var(--eds-br-s);width:100%;overflow:hidden}.eui-21 :host .eds-autocomplete-option-group .eds-autocomplete-option-group__label{align-items:center;cursor:default;display:flex;font:var(--eds-f-label-m-semi-bold);min-height:40px;padding-inline:var(--eds-sp-s);gap:var(--eds-sp-xs)}\n"] }]
150
+ }, template: "<div\n [id]=\"panelId()\"\n class=\"eds-autocomplete__panel\"\n role=\"listbox\"\n aria-label=\"Autocomplete panel\">\n <cdk-virtual-scroll-viewport\n #virtualScrolling\n [itemSize]=\"itemSize()\"\n tabindex=\"-1\"\n minBufferPx=\"500\"\n maxBufferPx=\"750\"\n [style.min-height]=\"viewportHeight() + 'px'\">\n @if (groupBy()) {\n @for (distinctOptionGroup of distinctOptionGroups(); track distinctOptionGroup) {\n @if (groupedOptions()[distinctOptionGroup]?.options?.length > 0) {\n <eds-autocomplete-option-group [label]=\"distinctOptionGroup\">\n <div class=\"eds-autocomplete-option-group__label\">\n @if (optGroupTemplate()) {\n <ng-template\n [ngTemplateOutlet]=\"optGroupTemplate()!\"\n [ngTemplateOutletContext]=\"{ $implicit: { label: distinctOptionGroup } }\">\n </ng-template>\n } @else {\n {{ distinctOptionGroup }}\n }\n </div>\n <div class=\"eds-autocomplete-option-group__options\">\n @for (option of groupedOptions()[distinctOptionGroup].options; let j = $index; track option.id ?? j) {\n <eds-autocomplete-option\n isGroupItem\n [optionId]=\"panelId() + '-option-' + (groupedOptions()[distinctOptionGroup].ancestorLength + j)\"\n [isActive]=\"selectedOptionIndex() === groupedOptions()[distinctOptionGroup].ancestorLength + j\"\n [isDisabled]=\"option.isDisabled\"\n (click)=\"onOptionSelected(option)\">\n @if (optionTemplate()) {\n <ng-template\n [ngTemplateOutlet]=\"optionTemplate()!\"\n [ngTemplateOutletContext]=\"{ $implicit: option }\">\n </ng-template>\n } @else {\n @if (option.iconName) {\n <eds-icon [icon]=\"option.iconName\" />\n }\n {{ option.label }}\n }\n </eds-autocomplete-option>\n }\n </div>\n </eds-autocomplete-option-group>\n }\n }\n } @else {\n <eds-autocomplete-option\n *cdkVirtualFor=\"let option of autocompleteOptions(); let i = index; trackBy: trackByFn\"\n [optionId]=\"panelId() + '-option-' + i\"\n [isActive]=\"selectedOptionIndex() === i\"\n [isDisabled]=\"option.isDisabled\"\n (click)=\"onOptionSelected(option)\">\n @if (optionTemplate()) {\n <ng-template\n [ngTemplateOutlet]=\"optionTemplate()!\"\n [ngTemplateOutletContext]=\"{ $implicit: option }\">\n </ng-template>\n } @else {\n @if (option.iconName) {\n <eds-icon [icon]=\"option.iconName\" />\n }\n {{ option.label }}\n }\n </eds-autocomplete-option>\n }\n </cdk-virtual-scroll-viewport>\n</div>\n", styles: [".eui-21 :host{display:block;width:100%}.eui-21 :host .eds-autocomplete__panel{box-shadow:var(--eds-sh-3);background-color:var(--eds-c-surface-elevation);border-radius:var(--eds-br-s);width:100%;overflow:hidden}.eui-21 :host .eds-autocomplete-option-group .eds-autocomplete-option-group__label{align-items:center;cursor:default;display:flex;font:var(--eds-f-label-m-semibold);min-height:40px;padding-inline:var(--eds-sp-s);gap:var(--eds-sp-xs)}\n"] }]
151
151
  }], propDecorators: { virtualScrolling: [{ type: i0.ViewChild, args: ['virtualScrolling', { isSignal: true }] }], panelId: [{ type: i0.Input, args: [{ isSignal: true, alias: "panelId", required: false }] }], isOpen: [{ type: i0.Input, args: [{ isSignal: true, alias: "isOpen", required: false }] }], itemSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "itemSize", required: false }] }], viewportHeight: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewportHeight", required: false }] }], groupBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "groupBy", required: false }] }], distinctOptionGroups: [{ type: i0.Input, args: [{ isSignal: true, alias: "distinctOptionGroups", required: false }] }], groupedOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "groupedOptions", required: false }] }], autocompleteOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "autocompleteOptions", required: false }] }], selectedOptionIndex: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedOptionIndex", required: false }] }], optionTemplate: [{ type: i0.Input, args: [{ isSignal: true, alias: "optionTemplate", required: false }] }], optGroupTemplate: [{ type: i0.Input, args: [{ isSignal: true, alias: "optGroupTemplate", required: false }] }], optionSelected: [{ type: i0.Output, args: ["optionSelected"] }] } });
152
152
 
153
153
  class EdsAutocomplete {