@rossigee/clarity-angular 18.2.1-fixed.1 → 18.2.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 (180) hide show
  1. package/fesm2022/clr-angular-accordion.mjs +355 -0
  2. package/fesm2022/clr-angular-accordion.mjs.map +1 -0
  3. package/fesm2022/clr-angular-button.mjs +713 -0
  4. package/fesm2022/clr-angular-button.mjs.map +1 -0
  5. package/fesm2022/clr-angular-collapsible-panel.mjs +201 -0
  6. package/fesm2022/clr-angular-collapsible-panel.mjs.map +1 -0
  7. package/fesm2022/clr-angular-data-datagrid.mjs +7635 -0
  8. package/fesm2022/clr-angular-data-datagrid.mjs.map +1 -0
  9. package/fesm2022/clr-angular-data-stack-view.mjs +442 -0
  10. package/fesm2022/clr-angular-data-stack-view.mjs.map +1 -0
  11. package/fesm2022/clr-angular-data-tree-view.mjs +1106 -0
  12. package/fesm2022/clr-angular-data-tree-view.mjs.map +1 -0
  13. package/fesm2022/clr-angular-data.mjs +40 -0
  14. package/fesm2022/clr-angular-data.mjs.map +1 -0
  15. package/fesm2022/clr-angular-emphasis-alert.mjs +624 -0
  16. package/fesm2022/clr-angular-emphasis-alert.mjs.map +1 -0
  17. package/fesm2022/clr-angular-emphasis-badge.mjs +69 -0
  18. package/fesm2022/clr-angular-emphasis-badge.mjs.map +1 -0
  19. package/fesm2022/clr-angular-emphasis-common.mjs +25 -0
  20. package/fesm2022/clr-angular-emphasis-common.mjs.map +1 -0
  21. package/fesm2022/clr-angular-emphasis-label.mjs +105 -0
  22. package/fesm2022/clr-angular-emphasis-label.mjs.map +1 -0
  23. package/fesm2022/clr-angular-emphasis.mjs +41 -0
  24. package/fesm2022/clr-angular-emphasis.mjs.map +1 -0
  25. package/fesm2022/clr-angular-forms-checkbox.mjs +270 -0
  26. package/fesm2022/clr-angular-forms-checkbox.mjs.map +1 -0
  27. package/fesm2022/clr-angular-forms-combobox.mjs +1775 -0
  28. package/fesm2022/clr-angular-forms-combobox.mjs.map +1 -0
  29. package/fesm2022/clr-angular-forms-common.mjs +1251 -0
  30. package/fesm2022/clr-angular-forms-common.mjs.map +1 -0
  31. package/fesm2022/clr-angular-forms-datalist.mjs +263 -0
  32. package/fesm2022/clr-angular-forms-datalist.mjs.map +1 -0
  33. package/fesm2022/clr-angular-forms-datepicker.mjs +3274 -0
  34. package/fesm2022/clr-angular-forms-datepicker.mjs.map +1 -0
  35. package/fesm2022/clr-angular-forms-file-input.mjs +826 -0
  36. package/fesm2022/clr-angular-forms-file-input.mjs.map +1 -0
  37. package/fesm2022/clr-angular-forms-input.mjs +153 -0
  38. package/fesm2022/clr-angular-forms-input.mjs.map +1 -0
  39. package/fesm2022/clr-angular-forms-number-input.mjs +236 -0
  40. package/fesm2022/clr-angular-forms-number-input.mjs.map +1 -0
  41. package/fesm2022/clr-angular-forms-password.mjs +233 -0
  42. package/fesm2022/clr-angular-forms-password.mjs.map +1 -0
  43. package/fesm2022/clr-angular-forms-radio.mjs +231 -0
  44. package/fesm2022/clr-angular-forms-radio.mjs.map +1 -0
  45. package/fesm2022/clr-angular-forms-range.mjs +186 -0
  46. package/fesm2022/clr-angular-forms-range.mjs.map +1 -0
  47. package/fesm2022/clr-angular-forms-select.mjs +153 -0
  48. package/fesm2022/clr-angular-forms-select.mjs.map +1 -0
  49. package/fesm2022/clr-angular-forms-textarea.mjs +136 -0
  50. package/fesm2022/clr-angular-forms-textarea.mjs.map +1 -0
  51. package/fesm2022/clr-angular-forms.mjs +100 -0
  52. package/fesm2022/clr-angular-forms.mjs.map +1 -0
  53. package/fesm2022/clr-angular-icon.mjs +7397 -0
  54. package/fesm2022/clr-angular-icon.mjs.map +1 -0
  55. package/fesm2022/clr-angular-layout-breadcrumbs.mjs +120 -0
  56. package/fesm2022/clr-angular-layout-breadcrumbs.mjs.map +1 -0
  57. package/fesm2022/clr-angular-layout-main-container.mjs +100 -0
  58. package/fesm2022/clr-angular-layout-main-container.mjs.map +1 -0
  59. package/fesm2022/clr-angular-layout-nav.mjs +582 -0
  60. package/fesm2022/clr-angular-layout-nav.mjs.map +1 -0
  61. package/fesm2022/clr-angular-layout-tabs.mjs +807 -0
  62. package/fesm2022/clr-angular-layout-tabs.mjs.map +1 -0
  63. package/fesm2022/clr-angular-layout-vertical-nav.mjs +507 -0
  64. package/fesm2022/clr-angular-layout-vertical-nav.mjs.map +1 -0
  65. package/fesm2022/clr-angular-layout.mjs +44 -0
  66. package/fesm2022/clr-angular-layout.mjs.map +1 -0
  67. package/fesm2022/clr-angular-modal.mjs +617 -0
  68. package/fesm2022/clr-angular-modal.mjs.map +1 -0
  69. package/fesm2022/clr-angular-popover-common.mjs +1082 -0
  70. package/fesm2022/clr-angular-popover-common.mjs.map +1 -0
  71. package/fesm2022/clr-angular-popover-dropdown.mjs +492 -0
  72. package/fesm2022/clr-angular-popover-dropdown.mjs.map +1 -0
  73. package/fesm2022/clr-angular-popover-signpost.mjs +494 -0
  74. package/fesm2022/clr-angular-popover-signpost.mjs.map +1 -0
  75. package/fesm2022/clr-angular-popover-tooltip.mjs +293 -0
  76. package/fesm2022/clr-angular-popover-tooltip.mjs.map +1 -0
  77. package/fesm2022/clr-angular-popover.mjs +41 -0
  78. package/fesm2022/clr-angular-popover.mjs.map +1 -0
  79. package/fesm2022/clr-angular-progress-progress-bars.mjs +217 -0
  80. package/fesm2022/clr-angular-progress-progress-bars.mjs.map +1 -0
  81. package/fesm2022/clr-angular-progress-spinner.mjs +132 -0
  82. package/fesm2022/clr-angular-progress-spinner.mjs.map +1 -0
  83. package/fesm2022/clr-angular-stepper.mjs +694 -0
  84. package/fesm2022/clr-angular-stepper.mjs.map +1 -0
  85. package/fesm2022/clr-angular-timeline.mjs +316 -0
  86. package/fesm2022/clr-angular-timeline.mjs.map +1 -0
  87. package/fesm2022/clr-angular-utils-conditional.mjs +351 -0
  88. package/fesm2022/clr-angular-utils-conditional.mjs.map +1 -0
  89. package/fesm2022/clr-angular-utils-loading.mjs +107 -0
  90. package/fesm2022/clr-angular-utils-loading.mjs.map +1 -0
  91. package/fesm2022/clr-angular-utils.mjs +2079 -0
  92. package/fesm2022/clr-angular-utils.mjs.map +1 -0
  93. package/fesm2022/clr-angular-wizard.mjs +3074 -0
  94. package/fesm2022/clr-angular-wizard.mjs.map +1 -0
  95. package/fesm2022/clr-angular.mjs +2 -2
  96. package/fesm2022/clr-angular.mjs.map +1 -1
  97. package/package.json +7 -5
  98. package/schematics/ng-update/index.d.ts +2 -0
  99. package/schematics/ng-update/index.js +69 -0
  100. package/schematics/ng-update/index.js.map +1 -0
  101. package/schematics/ng-update/migrations/css-migration.d.ts +6 -0
  102. package/schematics/ng-update/migrations/css-migration.js +177 -0
  103. package/schematics/ng-update/migrations/css-migration.js.map +1 -0
  104. package/schematics/ng-update/migrations/import-migration.d.ts +4 -0
  105. package/schematics/ng-update/migrations/import-migration.js +187 -0
  106. package/schematics/ng-update/migrations/import-migration.js.map +1 -0
  107. package/schematics/ng-update/migrations/template-migration.d.ts +6 -0
  108. package/schematics/ng-update/migrations/template-migration.js +261 -0
  109. package/schematics/ng-update/migrations/template-migration.js.map +1 -0
  110. package/schematics/ng-update/replacements/css-replacements.d.ts +17 -0
  111. package/schematics/ng-update/replacements/css-replacements.js +74 -0
  112. package/schematics/ng-update/replacements/css-replacements.js.map +1 -0
  113. package/schematics/ng-update/replacements/import-replacements.d.ts +13 -0
  114. package/schematics/ng-update/replacements/import-replacements.js +108 -0
  115. package/schematics/ng-update/replacements/import-replacements.js.map +1 -0
  116. package/schematics/ng-update/replacements/symbol-replacements.d.ts +12 -0
  117. package/schematics/ng-update/replacements/symbol-replacements.js +67 -0
  118. package/schematics/ng-update/replacements/symbol-replacements.js.map +1 -0
  119. package/schematics/ng-update/replacements/template-replacements.d.ts +19 -0
  120. package/schematics/ng-update/replacements/template-replacements.js +57 -0
  121. package/schematics/ng-update/replacements/template-replacements.js.map +1 -0
  122. package/schematics/ng-update/tests/test-helpers.d.ts +6 -0
  123. package/schematics/ng-update/tests/test-helpers.js +34 -0
  124. package/schematics/ng-update/tests/test-helpers.js.map +1 -0
  125. package/schematics/ng-update/utils/file-visitor.d.ts +8 -0
  126. package/schematics/ng-update/utils/file-visitor.js +44 -0
  127. package/schematics/ng-update/utils/file-visitor.js.map +1 -0
  128. package/schematics/ng-update/utils/regexp-utils.d.ts +16 -0
  129. package/schematics/ng-update/utils/regexp-utils.js +34 -0
  130. package/schematics/ng-update/utils/regexp-utils.js.map +1 -0
  131. package/schematics/vitest.config.d.ts +2 -0
  132. package/schematics/vitest.config.js +17 -0
  133. package/schematics/vitest.config.js.map +1 -0
  134. package/types/clr-angular-accordion.d.ts +100 -0
  135. package/types/clr-angular-button.d.ts +169 -0
  136. package/types/clr-angular-collapsible-panel.d.ts +73 -0
  137. package/types/clr-angular-data-datagrid.d.ts +1843 -0
  138. package/types/clr-angular-data-stack-view.d.ts +87 -0
  139. package/types/clr-angular-data-tree-view.d.ts +229 -0
  140. package/types/clr-angular-data.d.ts +15 -0
  141. package/types/clr-angular-emphasis-alert.d.ts +175 -0
  142. package/types/clr-angular-emphasis-badge.d.ts +25 -0
  143. package/types/clr-angular-emphasis-common.d.ts +6 -0
  144. package/types/clr-angular-emphasis-label.d.ts +29 -0
  145. package/types/clr-angular-emphasis.d.ts +15 -0
  146. package/types/clr-angular-forms-checkbox.d.ts +69 -0
  147. package/types/clr-angular-forms-combobox.d.ts +353 -0
  148. package/types/clr-angular-forms-common.d.ts +339 -0
  149. package/types/clr-angular-forms-datalist.d.ts +59 -0
  150. package/types/clr-angular-forms-datepicker.d.ts +986 -0
  151. package/types/clr-angular-forms-file-input.d.ts +193 -0
  152. package/types/clr-angular-forms-input.d.ts +29 -0
  153. package/types/clr-angular-forms-number-input.d.ts +43 -0
  154. package/types/clr-angular-forms-password.d.ts +52 -0
  155. package/types/clr-angular-forms-radio.d.ts +50 -0
  156. package/types/clr-angular-forms-range.d.ts +37 -0
  157. package/types/clr-angular-forms-select.d.ts +36 -0
  158. package/types/clr-angular-forms-textarea.d.ts +29 -0
  159. package/types/clr-angular-forms.d.ts +36 -0
  160. package/types/clr-angular-icon.d.ts +1498 -0
  161. package/types/clr-angular-layout-breadcrumbs.d.ts +45 -0
  162. package/types/clr-angular-layout-main-container.d.ts +28 -0
  163. package/types/clr-angular-layout-nav.d.ts +142 -0
  164. package/types/clr-angular-layout-tabs.d.ts +158 -0
  165. package/types/clr-angular-layout-vertical-nav.d.ts +128 -0
  166. package/types/clr-angular-layout.d.ts +19 -0
  167. package/types/clr-angular-modal.d.ts +160 -0
  168. package/types/clr-angular-popover-common.d.ts +254 -0
  169. package/types/clr-angular-popover-dropdown.d.ts +123 -0
  170. package/types/clr-angular-popover-signpost.d.ts +157 -0
  171. package/types/clr-angular-popover-tooltip.d.ts +83 -0
  172. package/types/clr-angular-popover.d.ts +16 -0
  173. package/types/clr-angular-progress-progress-bars.d.ts +57 -0
  174. package/types/clr-angular-progress-spinner.d.ts +44 -0
  175. package/types/clr-angular-stepper.d.ts +179 -0
  176. package/types/clr-angular-timeline.d.ts +86 -0
  177. package/types/clr-angular-utils-conditional.d.ts +132 -0
  178. package/types/clr-angular-utils-loading.d.ts +38 -0
  179. package/types/clr-angular-utils.d.ts +913 -0
  180. package/types/clr-angular-wizard.d.ts +1508 -0
@@ -0,0 +1,355 @@
1
+ import * as i0 from '@angular/core';
2
+ import { ChangeDetectionStrategy, Component, EventEmitter, ContentChildren, Input, Output, HostBinding, Injectable, Directive, Optional, NgModule } from '@angular/core';
3
+ import { CollapsiblePanel, collapsiblePanelExpandAnimation, CollapsiblePanelGroupModel, CollapsiblePanelService } from '@clr/angular/collapsible-panel';
4
+ import { startWith } from 'rxjs/operators';
5
+ import * as i2$1 from '@clr/angular/utils';
6
+ import { IfExpandService, WillyWonka, OompaLoompa } from '@clr/angular/utils';
7
+ import * as i1 from '@angular/common';
8
+ import { CommonModule } from '@angular/common';
9
+ import * as i2 from '@clr/angular/icon';
10
+ import { ClarityIcons, angleIcon, ClrIcon } from '@clr/angular/icon';
11
+
12
+ /*
13
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
14
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
15
+ * This software is released under MIT license.
16
+ * The full license information can be found in LICENSE in the root directory of this project.
17
+ */
18
+ class ClrAccordionDescription {
19
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: ClrAccordionDescription, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
20
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.3", type: ClrAccordionDescription, isStandalone: false, selector: "clr-accordion-description", host: { properties: { "class.clr-accordion-description": "true" } }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
21
+ }
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: ClrAccordionDescription, decorators: [{
23
+ type: Component,
24
+ args: [{
25
+ selector: 'clr-accordion-description',
26
+ template: `<ng-content></ng-content>`,
27
+ host: { '[class.clr-accordion-description]': 'true' },
28
+ changeDetection: ChangeDetectionStrategy.OnPush,
29
+ standalone: false,
30
+ }]
31
+ }] });
32
+
33
+ /*
34
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
35
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
36
+ * This software is released under MIT license.
37
+ * The full license information can be found in LICENSE in the root directory of this project.
38
+ */
39
+ class ClrAccordionPanel extends CollapsiblePanel {
40
+ constructor() {
41
+ super(...arguments);
42
+ this.disabled = false;
43
+ this.panelOpen = false;
44
+ this.panelOpenChange = new EventEmitter();
45
+ }
46
+ ngOnChanges(changes) {
47
+ this.handlePanelInputChanges(changes);
48
+ }
49
+ getPanelStateClasses(panel) {
50
+ return panel.open ? 'clr-accordion-panel-open' : 'clr-accordion-panel-closed';
51
+ }
52
+ getContentId(id) {
53
+ return `clr-accordion-content-${id}`;
54
+ }
55
+ getHeaderId(id) {
56
+ return `clr-accordion-header-${id}`;
57
+ }
58
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: ClrAccordionPanel, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
59
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.3", type: ClrAccordionPanel, isStandalone: false, selector: "clr-accordion-panel", inputs: { disabled: ["clrAccordionPanelDisabled", "disabled"], panelOpen: ["clrAccordionPanelOpen", "panelOpen"], explicitHeadingLevel: ["clrAccordionPanelHeadingLevel", "explicitHeadingLevel"] }, outputs: { panelOpenChange: "clrAccordionPanelOpenChange" }, host: { properties: { "class.clr-accordion-panel": "true", "class.clr-accordion-panel-disabled": "this.disabled" } }, providers: [IfExpandService], queries: [{ propertyName: "accordionDescription", predicate: ClrAccordionDescription }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<!--\n ~ Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n ~ The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n@if (panel | async; as panel) {\n<div [ngClass]=\"getPanelStateClasses(panel)\">\n <div\n class=\"clr-accordion-header\"\n [attr.role]=\"explicitHeadingLevel ? 'heading' : null\"\n [attr.aria-level]=\"explicitHeadingLevel ? explicitHeadingLevel : null\"\n >\n <button\n type=\"button\"\n class=\"clr-accordion-header-button\"\n (click)=\"togglePanel()\"\n [id]=\"getHeaderId(panel.templateId)\"\n [disabled]=\"panel.disabled\"\n [attr.aria-controls]=\"!panel.disabled && panel.open ? getContentId(panel.templateId) : null\"\n [attr.aria-expanded]=\"panel.open\"\n [class.clr-accordion-header-has-description]=\"(accordionDescription.changes | async)?.length || accordionDescription.length\"\n #headerButton\n >\n <span class=\"clr-accordion-status\">\n <cds-icon shape=\"angle\" direction=\"right\" class=\"clr-accordion-angle\"></cds-icon>\n </span>\n <ng-content select=\"clr-accordion-title\"></ng-content>\n <ng-content select=\"clr-accordion-description\"></ng-content>\n </button>\n </div>\n <div\n @skipInitialRender\n role=\"region\"\n class=\"clr-accordion-content-region\"\n [id]=\"getContentId(panel.templateId)\"\n [attr.aria-hidden]=\"!panel.open\"\n [attr.aria-labelledby]=\"getHeaderId(panel.templateId)\"\n >\n @if (panel.open) {\n <div @toggle (@toggle.done)=\"collapsePanelOnAnimationDone(panel)\" class=\"clr-accordion-content\">\n <div class=\"clr-accordion-inner-content\">\n <ng-content></ng-content>\n </div>\n </div>\n }\n </div>\n</div>\n}\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], animations: collapsiblePanelExpandAnimation, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
60
+ }
61
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: ClrAccordionPanel, decorators: [{
62
+ type: Component,
63
+ args: [{ selector: 'clr-accordion-panel', host: { '[class.clr-accordion-panel]': 'true' }, changeDetection: ChangeDetectionStrategy.OnPush, animations: collapsiblePanelExpandAnimation, providers: [IfExpandService], standalone: false, template: "<!--\n ~ Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n ~ The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n@if (panel | async; as panel) {\n<div [ngClass]=\"getPanelStateClasses(panel)\">\n <div\n class=\"clr-accordion-header\"\n [attr.role]=\"explicitHeadingLevel ? 'heading' : null\"\n [attr.aria-level]=\"explicitHeadingLevel ? explicitHeadingLevel : null\"\n >\n <button\n type=\"button\"\n class=\"clr-accordion-header-button\"\n (click)=\"togglePanel()\"\n [id]=\"getHeaderId(panel.templateId)\"\n [disabled]=\"panel.disabled\"\n [attr.aria-controls]=\"!panel.disabled && panel.open ? getContentId(panel.templateId) : null\"\n [attr.aria-expanded]=\"panel.open\"\n [class.clr-accordion-header-has-description]=\"(accordionDescription.changes | async)?.length || accordionDescription.length\"\n #headerButton\n >\n <span class=\"clr-accordion-status\">\n <cds-icon shape=\"angle\" direction=\"right\" class=\"clr-accordion-angle\"></cds-icon>\n </span>\n <ng-content select=\"clr-accordion-title\"></ng-content>\n <ng-content select=\"clr-accordion-description\"></ng-content>\n </button>\n </div>\n <div\n @skipInitialRender\n role=\"region\"\n class=\"clr-accordion-content-region\"\n [id]=\"getContentId(panel.templateId)\"\n [attr.aria-hidden]=\"!panel.open\"\n [attr.aria-labelledby]=\"getHeaderId(panel.templateId)\"\n >\n @if (panel.open) {\n <div @toggle (@toggle.done)=\"collapsePanelOnAnimationDone(panel)\" class=\"clr-accordion-content\">\n <div class=\"clr-accordion-inner-content\">\n <ng-content></ng-content>\n </div>\n </div>\n }\n </div>\n</div>\n}\n" }]
64
+ }], propDecorators: { disabled: [{
65
+ type: Input,
66
+ args: ['clrAccordionPanelDisabled']
67
+ }, {
68
+ type: HostBinding,
69
+ args: ['class.clr-accordion-panel-disabled']
70
+ }], panelOpen: [{
71
+ type: Input,
72
+ args: ['clrAccordionPanelOpen']
73
+ }], panelOpenChange: [{
74
+ type: Output,
75
+ args: ['clrAccordionPanelOpenChange']
76
+ }], explicitHeadingLevel: [{
77
+ type: Input,
78
+ args: ['clrAccordionPanelHeadingLevel']
79
+ }], accordionDescription: [{
80
+ type: ContentChildren,
81
+ args: [ClrAccordionDescription]
82
+ }] } });
83
+
84
+ /*
85
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
86
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
87
+ * This software is released under MIT license.
88
+ * The full license information can be found in LICENSE in the root directory of this project.
89
+ */
90
+ /**
91
+ * Controls how many panels can be open simultaneously within an accordion.
92
+ */
93
+ var AccordionStrategy;
94
+ (function (AccordionStrategy) {
95
+ /** Only one panel can be open at a time. Opening a panel closes any previously open panel. */
96
+ AccordionStrategy["Single"] = "single";
97
+ /** Multiple panels can be open simultaneously. */
98
+ AccordionStrategy["Multi"] = "multi";
99
+ })(AccordionStrategy || (AccordionStrategy = {}));
100
+
101
+ /*
102
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
103
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
104
+ * This software is released under MIT license.
105
+ * The full license information can be found in LICENSE in the root directory of this project.
106
+ */
107
+ class AccordionModel extends CollapsiblePanelGroupModel {
108
+ constructor() {
109
+ super(...arguments);
110
+ this.strategy = AccordionStrategy.Single;
111
+ }
112
+ setStrategy(strategy) {
113
+ this.strategy = strategy;
114
+ }
115
+ togglePanel(panelId, open) {
116
+ if (!this._panels[panelId]) {
117
+ return;
118
+ }
119
+ const panelIsOpen = this._panels[panelId].open;
120
+ const newOpenState = open !== undefined ? open : !panelIsOpen;
121
+ if (newOpenState && this.strategy === AccordionStrategy.Single) {
122
+ this.closeAllPanels();
123
+ }
124
+ this._panels[panelId].open = newOpenState;
125
+ }
126
+ closeAllPanels() {
127
+ this.panels.forEach(panel => (this._panels[panel.id].open = false));
128
+ }
129
+ }
130
+
131
+ /*
132
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
133
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
134
+ * This software is released under MIT license.
135
+ * The full license information can be found in LICENSE in the root directory of this project.
136
+ */
137
+ class AccordionService extends CollapsiblePanelService {
138
+ constructor() {
139
+ super(...arguments);
140
+ this.panelGroup = new AccordionModel();
141
+ }
142
+ setStrategy(strategy) {
143
+ this.panelGroup.setStrategy(strategy);
144
+ }
145
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AccordionService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
146
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AccordionService }); }
147
+ }
148
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AccordionService, decorators: [{
149
+ type: Injectable
150
+ }] });
151
+
152
+ /*
153
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
154
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
155
+ * This software is released under MIT license.
156
+ * The full license information can be found in LICENSE in the root directory of this project.
157
+ */
158
+ class ClrAccordion {
159
+ constructor(accordionService) {
160
+ this.accordionService = accordionService;
161
+ this.multiPanel = false;
162
+ this.subscriptions = [];
163
+ }
164
+ ngOnInit() {
165
+ this.setAccordionStrategy();
166
+ }
167
+ ngOnChanges(changes) {
168
+ if (changes.multiPanel &&
169
+ !changes.multiPanel.firstChange &&
170
+ changes.multiPanel.currentValue !== changes.multiPanel.previousValue) {
171
+ this.setAccordionStrategy();
172
+ }
173
+ }
174
+ ngAfterViewInit() {
175
+ this.subscriptions.push(this.listenForDOMChanges());
176
+ }
177
+ ngOnDestroy() {
178
+ this.subscriptions.forEach(s => s.unsubscribe());
179
+ }
180
+ setAccordionStrategy() {
181
+ const strategy = this.multiPanel ? AccordionStrategy.Multi : AccordionStrategy.Single;
182
+ this.accordionService.setStrategy(strategy);
183
+ }
184
+ listenForDOMChanges() {
185
+ return this.panels.changes
186
+ .pipe(startWith(this.panels))
187
+ .subscribe((panels) => this.accordionService.updatePanelOrder(panels.toArray().map(p => p.id)));
188
+ }
189
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: ClrAccordion, deps: [{ token: AccordionService }], target: i0.ɵɵFactoryTarget.Component }); }
190
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.3", type: ClrAccordion, isStandalone: false, selector: "clr-accordion", inputs: { multiPanel: ["clrAccordionMultiPanel", "multiPanel"] }, host: { properties: { "class.clr-accordion": "true" } }, providers: [AccordionService, { provide: CollapsiblePanelService, useExisting: AccordionService }], queries: [{ propertyName: "panels", predicate: ClrAccordionPanel }], usesOnChanges: true, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
191
+ }
192
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: ClrAccordion, decorators: [{
193
+ type: Component,
194
+ args: [{
195
+ selector: 'clr-accordion',
196
+ template: `<ng-content></ng-content>`,
197
+ host: { '[class.clr-accordion]': 'true' },
198
+ providers: [AccordionService, { provide: CollapsiblePanelService, useExisting: AccordionService }],
199
+ changeDetection: ChangeDetectionStrategy.OnPush,
200
+ standalone: false,
201
+ }]
202
+ }], ctorParameters: () => [{ type: AccordionService }], propDecorators: { multiPanel: [{
203
+ type: Input,
204
+ args: ['clrAccordionMultiPanel']
205
+ }], panels: [{
206
+ type: ContentChildren,
207
+ args: [ClrAccordionPanel]
208
+ }] } });
209
+
210
+ /*
211
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
212
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
213
+ * This software is released under MIT license.
214
+ * The full license information can be found in LICENSE in the root directory of this project.
215
+ */
216
+ class ClrAccordionTitle {
217
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: ClrAccordionTitle, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
218
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.3", type: ClrAccordionTitle, isStandalone: false, selector: "clr-accordion-title", host: { properties: { "class.clr-accordion-title": "true" } }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
219
+ }
220
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: ClrAccordionTitle, decorators: [{
221
+ type: Component,
222
+ args: [{
223
+ selector: 'clr-accordion-title',
224
+ template: `<ng-content></ng-content>`,
225
+ host: { '[class.clr-accordion-title]': 'true' },
226
+ changeDetection: ChangeDetectionStrategy.OnPush,
227
+ standalone: false,
228
+ }]
229
+ }] });
230
+
231
+ /*
232
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
233
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
234
+ * This software is released under MIT license.
235
+ * The full license information can be found in LICENSE in the root directory of this project.
236
+ */
237
+ class ClrAccordionContent {
238
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: ClrAccordionContent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
239
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.3", type: ClrAccordionContent, isStandalone: false, selector: "clr-accordion-content", ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
240
+ }
241
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: ClrAccordionContent, decorators: [{
242
+ type: Component,
243
+ args: [{
244
+ selector: 'clr-accordion-content',
245
+ template: `<ng-content></ng-content>`,
246
+ changeDetection: ChangeDetectionStrategy.OnPush,
247
+ standalone: false,
248
+ }]
249
+ }] });
250
+
251
+ /*
252
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
253
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
254
+ * This software is released under MIT license.
255
+ * The full license information can be found in LICENSE in the root directory of this project.
256
+ */
257
+ class AccordionWillyWonka extends WillyWonka {
258
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AccordionWillyWonka, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
259
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.3", type: AccordionWillyWonka, isStandalone: false, selector: "clr-accordion", usesInheritance: true, ngImport: i0 }); }
260
+ }
261
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AccordionWillyWonka, decorators: [{
262
+ type: Directive,
263
+ args: [{
264
+ selector: 'clr-accordion',
265
+ standalone: false,
266
+ }]
267
+ }] });
268
+
269
+ /*
270
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
271
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
272
+ * This software is released under MIT license.
273
+ * The full license information can be found in LICENSE in the root directory of this project.
274
+ */
275
+ class AccordionOompaLoompa extends OompaLoompa {
276
+ constructor(cdr, willyWonka, ifExpandService) {
277
+ if (!willyWonka) {
278
+ throw new Error('clr-accordion-panel should only be used inside of clr-accordion');
279
+ }
280
+ super(cdr, willyWonka);
281
+ this.expand = ifExpandService;
282
+ }
283
+ get flavor() {
284
+ return this.expand.expanded;
285
+ }
286
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AccordionOompaLoompa, deps: [{ token: i0.ChangeDetectorRef }, { token: AccordionWillyWonka, optional: true }, { token: i2$1.IfExpandService }], target: i0.ɵɵFactoryTarget.Directive }); }
287
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.3", type: AccordionOompaLoompa, isStandalone: false, selector: "clr-accordion-panel", usesInheritance: true, ngImport: i0 }); }
288
+ }
289
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: AccordionOompaLoompa, decorators: [{
290
+ type: Directive,
291
+ args: [{
292
+ selector: 'clr-accordion-panel',
293
+ standalone: false,
294
+ }]
295
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: AccordionWillyWonka, decorators: [{
296
+ type: Optional
297
+ }] }, { type: i2$1.IfExpandService }] });
298
+
299
+ /*
300
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
301
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
302
+ * This software is released under MIT license.
303
+ * The full license information can be found in LICENSE in the root directory of this project.
304
+ */
305
+ const declarations = [
306
+ ClrAccordion,
307
+ ClrAccordionPanel,
308
+ ClrAccordionTitle,
309
+ ClrAccordionDescription,
310
+ ClrAccordionContent,
311
+ AccordionOompaLoompa,
312
+ AccordionWillyWonka,
313
+ ];
314
+ class ClrAccordionModule {
315
+ constructor() {
316
+ ClarityIcons.addIcons(angleIcon);
317
+ }
318
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: ClrAccordionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
319
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.3", ngImport: i0, type: ClrAccordionModule, declarations: [ClrAccordion,
320
+ ClrAccordionPanel,
321
+ ClrAccordionTitle,
322
+ ClrAccordionDescription,
323
+ ClrAccordionContent,
324
+ AccordionOompaLoompa,
325
+ AccordionWillyWonka], imports: [CommonModule, ClrIcon], exports: [ClrAccordion,
326
+ ClrAccordionPanel,
327
+ ClrAccordionTitle,
328
+ ClrAccordionDescription,
329
+ ClrAccordionContent,
330
+ AccordionOompaLoompa,
331
+ AccordionWillyWonka] }); }
332
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: ClrAccordionModule, imports: [CommonModule, ClrIcon] }); }
333
+ }
334
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: ClrAccordionModule, decorators: [{
335
+ type: NgModule,
336
+ args: [{
337
+ imports: [CommonModule, ClrIcon],
338
+ declarations: [...declarations],
339
+ exports: [...declarations],
340
+ }]
341
+ }], ctorParameters: () => [] });
342
+
343
+ /*
344
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
345
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
346
+ * This software is released under MIT license.
347
+ * The full license information can be found in LICENSE in the root directory of this project.
348
+ */
349
+
350
+ /**
351
+ * Generated bundle index. Do not edit.
352
+ */
353
+
354
+ export { AccordionModel, AccordionOompaLoompa, AccordionService, AccordionStrategy, AccordionWillyWonka, ClrAccordion, ClrAccordionContent, ClrAccordionDescription, ClrAccordionModule, ClrAccordionPanel, ClrAccordionTitle };
355
+ //# sourceMappingURL=clr-angular-accordion.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clr-angular-accordion.mjs","sources":["../../../projects/angular/accordion/accordion-description.ts","../../../projects/angular/accordion/accordion-panel.ts","../../../projects/angular/accordion/accordion-panel.html","../../../projects/angular/accordion/enums/accordion-strategy.enum.ts","../../../projects/angular/accordion/models/accordion.model.ts","../../../projects/angular/accordion/providers/accordion.service.ts","../../../projects/angular/accordion/accordion.ts","../../../projects/angular/accordion/accordion-title.ts","../../../projects/angular/accordion/accordion-content.ts","../../../projects/angular/accordion/chocolate/accordion-willy-wonka.ts","../../../projects/angular/accordion/chocolate/accordion-oompa-loompa.ts","../../../projects/angular/accordion/accordion.module.ts","../../../projects/angular/accordion/index.ts","../../../projects/angular/accordion/clr-angular-accordion.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'clr-accordion-description',\n template: `<ng-content></ng-content>`,\n host: { '[class.clr-accordion-description]': 'true' },\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrAccordionDescription {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n EventEmitter,\n HostBinding,\n Input,\n OnChanges,\n Output,\n QueryList,\n SimpleChanges,\n} from '@angular/core';\nimport {\n CollapsiblePanel,\n collapsiblePanelExpandAnimation,\n CollapsiblePanelModel,\n} from '@clr/angular/collapsible-panel';\nimport { HeadingLevel, IfExpandService } from '@clr/angular/utils';\n\nimport { ClrAccordionDescription } from './accordion-description';\n\n@Component({\n selector: 'clr-accordion-panel',\n templateUrl: './accordion-panel.html',\n host: { '[class.clr-accordion-panel]': 'true' },\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: collapsiblePanelExpandAnimation,\n providers: [IfExpandService],\n standalone: false,\n})\nexport class ClrAccordionPanel extends CollapsiblePanel implements OnChanges {\n @Input('clrAccordionPanelDisabled') @HostBinding('class.clr-accordion-panel-disabled') disabled = false;\n @Input('clrAccordionPanelOpen') override panelOpen = false;\n @Output('clrAccordionPanelOpenChange') override panelOpenChange = new EventEmitter<boolean>();\n\n /**\n * Level of the accordion heading from 1 to 6.\n */\n @Input('clrAccordionPanelHeadingLevel') explicitHeadingLevel: HeadingLevel;\n\n @ContentChildren(ClrAccordionDescription) accordionDescription: QueryList<ClrAccordionDescription>;\n\n ngOnChanges(changes: SimpleChanges) {\n this.handlePanelInputChanges(changes);\n }\n\n getPanelStateClasses(panel: CollapsiblePanelModel) {\n return panel.open ? 'clr-accordion-panel-open' : 'clr-accordion-panel-closed';\n }\n\n getContentId(id: string) {\n return `clr-accordion-content-${id}`;\n }\n\n getHeaderId(id: string) {\n return `clr-accordion-header-${id}`;\n }\n}\n","<!--\n ~ Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n ~ The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n@if (panel | async; as panel) {\n<div [ngClass]=\"getPanelStateClasses(panel)\">\n <div\n class=\"clr-accordion-header\"\n [attr.role]=\"explicitHeadingLevel ? 'heading' : null\"\n [attr.aria-level]=\"explicitHeadingLevel ? explicitHeadingLevel : null\"\n >\n <button\n type=\"button\"\n class=\"clr-accordion-header-button\"\n (click)=\"togglePanel()\"\n [id]=\"getHeaderId(panel.templateId)\"\n [disabled]=\"panel.disabled\"\n [attr.aria-controls]=\"!panel.disabled && panel.open ? getContentId(panel.templateId) : null\"\n [attr.aria-expanded]=\"panel.open\"\n [class.clr-accordion-header-has-description]=\"(accordionDescription.changes | async)?.length || accordionDescription.length\"\n #headerButton\n >\n <span class=\"clr-accordion-status\">\n <cds-icon shape=\"angle\" direction=\"right\" class=\"clr-accordion-angle\"></cds-icon>\n </span>\n <ng-content select=\"clr-accordion-title\"></ng-content>\n <ng-content select=\"clr-accordion-description\"></ng-content>\n </button>\n </div>\n <div\n @skipInitialRender\n role=\"region\"\n class=\"clr-accordion-content-region\"\n [id]=\"getContentId(panel.templateId)\"\n [attr.aria-hidden]=\"!panel.open\"\n [attr.aria-labelledby]=\"getHeaderId(panel.templateId)\"\n >\n @if (panel.open) {\n <div @toggle (@toggle.done)=\"collapsePanelOnAnimationDone(panel)\" class=\"clr-accordion-content\">\n <div class=\"clr-accordion-inner-content\">\n <ng-content></ng-content>\n </div>\n </div>\n }\n </div>\n</div>\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\n/**\n * Controls how many panels can be open simultaneously within an accordion.\n */\nexport enum AccordionStrategy {\n /** Only one panel can be open at a time. Opening a panel closes any previously open panel. */\n Single = 'single',\n /** Multiple panels can be open simultaneously. */\n Multi = 'multi',\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { CollapsiblePanelGroupModel } from '@clr/angular/collapsible-panel';\n\nimport { AccordionStrategy } from '../enums/accordion-strategy.enum';\n\nexport class AccordionModel extends CollapsiblePanelGroupModel {\n private strategy = AccordionStrategy.Single;\n\n setStrategy(strategy: AccordionStrategy) {\n this.strategy = strategy;\n }\n\n override togglePanel(panelId: string, open?: boolean) {\n if (!this._panels[panelId]) {\n return;\n }\n\n const panelIsOpen = this._panels[panelId].open;\n const newOpenState = open !== undefined ? open : !panelIsOpen;\n if (newOpenState && this.strategy === AccordionStrategy.Single) {\n this.closeAllPanels();\n }\n\n this._panels[panelId].open = newOpenState;\n }\n\n private closeAllPanels() {\n this.panels.forEach(panel => (this._panels[panel.id].open = false));\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Injectable } from '@angular/core';\nimport { CollapsiblePanelService } from '@clr/angular/collapsible-panel';\n\nimport { AccordionStrategy } from '../enums/accordion-strategy.enum';\nimport { AccordionModel } from '../models/accordion.model';\n\n@Injectable()\nexport class AccordionService extends CollapsiblePanelService {\n protected override panelGroup = new AccordionModel();\n\n setStrategy(strategy: AccordionStrategy) {\n this.panelGroup.setStrategy(strategy);\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n QueryList,\n SimpleChanges,\n} from '@angular/core';\nimport { CollapsiblePanelService } from '@clr/angular/collapsible-panel';\nimport { Subscription } from 'rxjs';\nimport { startWith } from 'rxjs/operators';\n\nimport { ClrAccordionPanel } from './accordion-panel';\nimport { AccordionStrategy } from './enums/accordion-strategy.enum';\nimport { AccordionService } from './providers/accordion.service';\n\n@Component({\n selector: 'clr-accordion',\n template: `<ng-content></ng-content>`,\n host: { '[class.clr-accordion]': 'true' },\n providers: [AccordionService, { provide: CollapsiblePanelService, useExisting: AccordionService }],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrAccordion implements OnInit, OnChanges, AfterViewInit, OnDestroy {\n @Input('clrAccordionMultiPanel') multiPanel: boolean | string = false;\n @ContentChildren(ClrAccordionPanel) panels: QueryList<ClrAccordionPanel>;\n private subscriptions: Subscription[] = [];\n\n constructor(private accordionService: AccordionService) {}\n\n ngOnInit() {\n this.setAccordionStrategy();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (\n changes.multiPanel &&\n !changes.multiPanel.firstChange &&\n changes.multiPanel.currentValue !== changes.multiPanel.previousValue\n ) {\n this.setAccordionStrategy();\n }\n }\n\n ngAfterViewInit() {\n this.subscriptions.push(this.listenForDOMChanges());\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(s => s.unsubscribe());\n }\n\n private setAccordionStrategy() {\n const strategy = this.multiPanel ? AccordionStrategy.Multi : AccordionStrategy.Single;\n this.accordionService.setStrategy(strategy);\n }\n\n private listenForDOMChanges() {\n return this.panels.changes\n .pipe(startWith(this.panels))\n .subscribe((panels: QueryList<ClrAccordionPanel>) =>\n this.accordionService.updatePanelOrder(panels.toArray().map(p => p.id))\n );\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'clr-accordion-title',\n template: `<ng-content></ng-content>`,\n host: { '[class.clr-accordion-title]': 'true' },\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrAccordionTitle {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'clr-accordion-content',\n template: `<ng-content></ng-content>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrAccordionContent {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Directive } from '@angular/core';\nimport { WillyWonka } from '@clr/angular/utils';\n\n@Directive({\n selector: 'clr-accordion',\n standalone: false,\n})\nexport class AccordionWillyWonka extends WillyWonka {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { ChangeDetectorRef, Directive, Optional } from '@angular/core';\nimport { IfExpandService, OompaLoompa } from '@clr/angular/utils';\n\nimport { AccordionWillyWonka } from './accordion-willy-wonka';\n\n@Directive({\n selector: 'clr-accordion-panel',\n standalone: false,\n})\nexport class AccordionOompaLoompa extends OompaLoompa {\n private expand: IfExpandService;\n\n constructor(cdr: ChangeDetectorRef, @Optional() willyWonka: AccordionWillyWonka, ifExpandService: IfExpandService) {\n if (!willyWonka) {\n throw new Error('clr-accordion-panel should only be used inside of clr-accordion');\n }\n super(cdr, willyWonka);\n this.expand = ifExpandService;\n }\n\n get flavor() {\n return this.expand.expanded;\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { angleIcon, ClarityIcons, ClrIcon } from '@clr/angular/icon';\n\nimport { ClrAccordion } from './accordion';\nimport { ClrAccordionContent } from './accordion-content';\nimport { ClrAccordionDescription } from './accordion-description';\nimport { ClrAccordionPanel } from './accordion-panel';\nimport { ClrAccordionTitle } from './accordion-title';\nimport { AccordionOompaLoompa } from './chocolate/accordion-oompa-loompa';\nimport { AccordionWillyWonka } from './chocolate/accordion-willy-wonka';\n\nconst declarations = [\n ClrAccordion,\n ClrAccordionPanel,\n ClrAccordionTitle,\n ClrAccordionDescription,\n ClrAccordionContent,\n AccordionOompaLoompa,\n AccordionWillyWonka,\n];\n\n@NgModule({\n imports: [CommonModule, ClrIcon],\n declarations: [...declarations],\n exports: [...declarations],\n})\nexport class ClrAccordionModule {\n constructor() {\n ClarityIcons.addIcons(angleIcon);\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nexport * from './accordion';\nexport * from './accordion-panel';\nexport * from './accordion-title';\nexport * from './accordion-content';\nexport * from './accordion-description';\nexport * from './accordion.module';\nexport * from './enums/accordion-strategy.enum';\nexport * from './models/accordion.model';\nexport * from './providers/accordion.service';\nexport * from './chocolate/accordion-willy-wonka';\nexport * from './chocolate/accordion-oompa-loompa';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.AccordionService","i1.AccordionWillyWonka","i2"],"mappings":"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"}