@clr/angular 18.2.2 → 18.4.0

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 (112) hide show
  1. package/fesm2022/clr-angular-accordion.mjs +28 -28
  2. package/fesm2022/clr-angular-accordion.mjs.map +1 -1
  3. package/fesm2022/clr-angular-button.mjs +27 -27
  4. package/fesm2022/clr-angular-button.mjs.map +1 -1
  5. package/fesm2022/clr-angular-card.mjs +417 -0
  6. package/fesm2022/clr-angular-card.mjs.map +1 -0
  7. package/fesm2022/clr-angular-collapsible-panel.mjs +6 -6
  8. package/fesm2022/clr-angular-collapsible-panel.mjs.map +1 -1
  9. package/fesm2022/clr-angular-data-datagrid.mjs +1578 -415
  10. package/fesm2022/clr-angular-data-datagrid.mjs.map +1 -1
  11. package/fesm2022/clr-angular-data-stack-view.mjs +23 -23
  12. package/fesm2022/clr-angular-data-stack-view.mjs.map +1 -1
  13. package/fesm2022/clr-angular-data-tree-view.mjs +283 -48
  14. package/fesm2022/clr-angular-data-tree-view.mjs.map +1 -1
  15. package/fesm2022/clr-angular-data.mjs +4 -4
  16. package/fesm2022/clr-angular-data.mjs.map +1 -1
  17. package/fesm2022/clr-angular-emphasis-alert.mjs +26 -26
  18. package/fesm2022/clr-angular-emphasis-alert.mjs.map +1 -1
  19. package/fesm2022/clr-angular-emphasis-badge.mjs +3 -3
  20. package/fesm2022/clr-angular-emphasis-badge.mjs.map +1 -1
  21. package/fesm2022/clr-angular-emphasis-label.mjs +3 -3
  22. package/fesm2022/clr-angular-emphasis-label.mjs.map +1 -1
  23. package/fesm2022/clr-angular-emphasis.mjs +4 -4
  24. package/fesm2022/clr-angular-emphasis.mjs.map +1 -1
  25. package/fesm2022/clr-angular-forms-checkbox.mjs +23 -14
  26. package/fesm2022/clr-angular-forms-checkbox.mjs.map +1 -1
  27. package/fesm2022/clr-angular-forms-combobox.mjs +35 -35
  28. package/fesm2022/clr-angular-forms-combobox.mjs.map +1 -1
  29. package/fesm2022/clr-angular-forms-common.mjs +69 -69
  30. package/fesm2022/clr-angular-forms-common.mjs.map +1 -1
  31. package/fesm2022/clr-angular-forms-datalist.mjs +17 -17
  32. package/fesm2022/clr-angular-forms-datalist.mjs.map +1 -1
  33. package/fesm2022/clr-angular-forms-datepicker.mjs +73 -73
  34. package/fesm2022/clr-angular-forms-datepicker.mjs.map +1 -1
  35. package/fesm2022/clr-angular-forms-file-input.mjs +36 -36
  36. package/fesm2022/clr-angular-forms-file-input.mjs.map +1 -1
  37. package/fesm2022/clr-angular-forms-input.mjs +10 -10
  38. package/fesm2022/clr-angular-forms-input.mjs.map +1 -1
  39. package/fesm2022/clr-angular-forms-number-input.mjs +12 -12
  40. package/fesm2022/clr-angular-forms-number-input.mjs.map +1 -1
  41. package/fesm2022/clr-angular-forms-password.mjs +11 -11
  42. package/fesm2022/clr-angular-forms-password.mjs.map +1 -1
  43. package/fesm2022/clr-angular-forms-radio.mjs +17 -24
  44. package/fesm2022/clr-angular-forms-radio.mjs.map +1 -1
  45. package/fesm2022/clr-angular-forms-range.mjs +10 -10
  46. package/fesm2022/clr-angular-forms-range.mjs.map +1 -1
  47. package/fesm2022/clr-angular-forms-select.mjs +10 -10
  48. package/fesm2022/clr-angular-forms-select.mjs.map +1 -1
  49. package/fesm2022/clr-angular-forms-textarea.mjs +10 -10
  50. package/fesm2022/clr-angular-forms-textarea.mjs.map +1 -1
  51. package/fesm2022/clr-angular-forms.mjs +4 -4
  52. package/fesm2022/clr-angular-forms.mjs.map +1 -1
  53. package/fesm2022/clr-angular-icon.mjs +101 -47
  54. package/fesm2022/clr-angular-icon.mjs.map +1 -1
  55. package/fesm2022/clr-angular-layout-breadcrumbs.mjs +10 -10
  56. package/fesm2022/clr-angular-layout-breadcrumbs.mjs.map +1 -1
  57. package/fesm2022/clr-angular-layout-main-container.mjs +7 -7
  58. package/fesm2022/clr-angular-layout-main-container.mjs.map +1 -1
  59. package/fesm2022/clr-angular-layout-nav.mjs +22 -22
  60. package/fesm2022/clr-angular-layout-nav.mjs.map +1 -1
  61. package/fesm2022/clr-angular-layout-tabs.mjs +35 -35
  62. package/fesm2022/clr-angular-layout-tabs.mjs.map +1 -1
  63. package/fesm2022/clr-angular-layout-vertical-nav.mjs +31 -31
  64. package/fesm2022/clr-angular-layout-vertical-nav.mjs.map +1 -1
  65. package/fesm2022/clr-angular-layout.mjs +4 -4
  66. package/fesm2022/clr-angular-layout.mjs.map +1 -1
  67. package/fesm2022/clr-angular-modal.mjs +29 -27
  68. package/fesm2022/clr-angular-modal.mjs.map +1 -1
  69. package/fesm2022/clr-angular-popover-common.mjs +70 -35
  70. package/fesm2022/clr-angular-popover-common.mjs.map +1 -1
  71. package/fesm2022/clr-angular-popover-dropdown.mjs +63 -26
  72. package/fesm2022/clr-angular-popover-dropdown.mjs.map +1 -1
  73. package/fesm2022/clr-angular-popover-signpost.mjs +27 -25
  74. package/fesm2022/clr-angular-popover-signpost.mjs.map +1 -1
  75. package/fesm2022/clr-angular-popover-tooltip.mjs +19 -19
  76. package/fesm2022/clr-angular-popover-tooltip.mjs.map +1 -1
  77. package/fesm2022/clr-angular-popover.mjs +4 -4
  78. package/fesm2022/clr-angular-popover.mjs.map +1 -1
  79. package/fesm2022/clr-angular-progress-progress-bars.mjs +7 -7
  80. package/fesm2022/clr-angular-progress-progress-bars.mjs.map +1 -1
  81. package/fesm2022/clr-angular-progress-spinner.mjs +7 -7
  82. package/fesm2022/clr-angular-progress-spinner.mjs.map +1 -1
  83. package/fesm2022/clr-angular-stepper.mjs +31 -31
  84. package/fesm2022/clr-angular-stepper.mjs.map +1 -1
  85. package/fesm2022/clr-angular-timeline.mjs +24 -24
  86. package/fesm2022/clr-angular-timeline.mjs.map +1 -1
  87. package/fesm2022/clr-angular-utils-conditional.mjs +16 -16
  88. package/fesm2022/clr-angular-utils-conditional.mjs.map +1 -1
  89. package/fesm2022/clr-angular-utils-loading.mjs +7 -7
  90. package/fesm2022/clr-angular-utils-loading.mjs.map +1 -1
  91. package/fesm2022/clr-angular-utils.mjs +149 -150
  92. package/fesm2022/clr-angular-utils.mjs.map +1 -1
  93. package/fesm2022/clr-angular-wizard.mjs +51 -51
  94. package/fesm2022/clr-angular-wizard.mjs.map +1 -1
  95. package/fesm2022/clr-angular.mjs +9 -4
  96. package/fesm2022/clr-angular.mjs.map +1 -1
  97. package/package.json +9 -5
  98. package/types/clr-angular-card.d.ts +110 -0
  99. package/types/clr-angular-data-datagrid.d.ts +427 -57
  100. package/types/clr-angular-data-tree-view.d.ts +126 -88
  101. package/types/clr-angular-forms-checkbox.d.ts +3 -0
  102. package/types/clr-angular-forms-datepicker.d.ts +1 -1
  103. package/types/clr-angular-forms-file-input.d.ts +1 -1
  104. package/types/clr-angular-forms-radio.d.ts +1 -2
  105. package/types/clr-angular-icon.d.ts +22 -2
  106. package/types/clr-angular-popover-common.d.ts +6 -0
  107. package/types/clr-angular-popover-dropdown.d.ts +33 -4
  108. package/types/clr-angular-utils.d.ts +61 -20
  109. package/types/clr-angular.d.ts +8 -6
  110. package/schematics/vitest.config.d.ts +0 -2
  111. package/schematics/vitest.config.js +0 -17
  112. package/schematics/vitest.config.js.map +0 -1
@@ -0,0 +1,417 @@
1
+ import * as i0 from '@angular/core';
2
+ import { EventEmitter, signal, booleanAttribute, Input, Output, ChangeDetectionStrategy, Component, Optional, Directive, NgModule } from '@angular/core';
3
+ import * as i2 from '@clr/angular/utils';
4
+ import { uniqueIdFactory } from '@clr/angular/utils';
5
+ import * as i1 from '@angular/common';
6
+ import { CommonModule } from '@angular/common';
7
+ import * as i3 from '@clr/angular/icon';
8
+ import { ClarityIcons, angleIcon, ClrIcon } from '@clr/angular/icon';
9
+
10
+ /*
11
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
12
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
13
+ * This software is released under MIT license.
14
+ * The full license information can be found in LICENSE in the root directory of this project.
15
+ */
16
+ class ClrCard {
17
+ constructor() {
18
+ this.footerCollapsible = true;
19
+ this.expandedChange = new EventEmitter();
20
+ this.headerContentId = `clr-card-header-content-${uniqueIdFactory()}`;
21
+ this.contentId = `clr-card-content-${uniqueIdFactory()}`;
22
+ this._collapsible = signal(false, ...(ngDevMode ? [{ debugName: "_collapsible" }] : /* istanbul ignore next */ []));
23
+ this._expanded = signal(true, ...(ngDevMode ? [{ debugName: "_expanded" }] : /* istanbul ignore next */ []));
24
+ }
25
+ get collapsible() {
26
+ return this._collapsible();
27
+ }
28
+ set collapsible(value) {
29
+ this._collapsible.set(value);
30
+ }
31
+ get expanded() {
32
+ return this._expanded();
33
+ }
34
+ set expanded(value) {
35
+ this._expanded.set(value);
36
+ }
37
+ /**
38
+ * Toggles the expanded state of a collapsible card and emits `clrCardExpandedChange`.
39
+ * Setting the `clrCardExpanded` input programmatically does not emit.
40
+ */
41
+ toggle() {
42
+ if (!this.collapsible) {
43
+ return;
44
+ }
45
+ this._expanded.set(!this._expanded());
46
+ this.expandedChange.emit(this._expanded());
47
+ }
48
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCard, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
49
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.25", type: ClrCard, isStandalone: false, selector: "clr-card", inputs: { footerCollapsible: ["clrCardFooterCollapsible", "footerCollapsible", booleanAttribute], collapsible: ["clrCardCollapsible", "collapsible", booleanAttribute], expanded: ["clrCardExpanded", "expanded", booleanAttribute] }, outputs: { expandedChange: "clrCardExpandedChange" }, host: { properties: { "class.card": "true", "class.clr-card": "true", "class.card-collapsible": "collapsible", "class.card-collapsed": "collapsible && !expanded" } }, 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<ng-content select=\"clr-card-header\"></ng-content>\n<ng-template #bodyContent>\n <ng-content></ng-content>\n</ng-template>\n<ng-template #footerContent>\n <ng-content select=\"clr-card-footer\"></ng-content>\n</ng-template>\n@if (collapsible) {\n<div\n role=\"region\"\n class=\"card-collapsible-content\"\n [id]=\"contentId\"\n [attr.aria-hidden]=\"!expanded\"\n [attr.inert]=\"!expanded ? '' : null\"\n [attr.aria-labelledby]=\"headerContentId\"\n>\n <div class=\"card-collapsible-inner\">\n <ng-container *ngTemplateOutlet=\"bodyContent\"></ng-container>\n @if (footerCollapsible) {\n <ng-container *ngTemplateOutlet=\"footerContent\"></ng-container>\n }\n </div>\n</div>\n@if (!footerCollapsible) {\n<ng-container *ngTemplateOutlet=\"footerContent\"></ng-container>\n} } @else {\n<ng-container *ngTemplateOutlet=\"bodyContent\"></ng-container>\n<ng-container *ngTemplateOutlet=\"footerContent\"></ng-container>\n}\n", dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
50
+ }
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCard, decorators: [{
52
+ type: Component,
53
+ args: [{ selector: 'clr-card', host: {
54
+ '[class.card]': 'true',
55
+ '[class.clr-card]': 'true',
56
+ '[class.card-collapsible]': 'collapsible',
57
+ '[class.card-collapsed]': 'collapsible && !expanded',
58
+ }, changeDetection: ChangeDetectionStrategy.OnPush, 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<ng-content select=\"clr-card-header\"></ng-content>\n<ng-template #bodyContent>\n <ng-content></ng-content>\n</ng-template>\n<ng-template #footerContent>\n <ng-content select=\"clr-card-footer\"></ng-content>\n</ng-template>\n@if (collapsible) {\n<div\n role=\"region\"\n class=\"card-collapsible-content\"\n [id]=\"contentId\"\n [attr.aria-hidden]=\"!expanded\"\n [attr.inert]=\"!expanded ? '' : null\"\n [attr.aria-labelledby]=\"headerContentId\"\n>\n <div class=\"card-collapsible-inner\">\n <ng-container *ngTemplateOutlet=\"bodyContent\"></ng-container>\n @if (footerCollapsible) {\n <ng-container *ngTemplateOutlet=\"footerContent\"></ng-container>\n }\n </div>\n</div>\n@if (!footerCollapsible) {\n<ng-container *ngTemplateOutlet=\"footerContent\"></ng-container>\n} } @else {\n<ng-container *ngTemplateOutlet=\"bodyContent\"></ng-container>\n<ng-container *ngTemplateOutlet=\"footerContent\"></ng-container>\n}\n" }]
59
+ }], propDecorators: { footerCollapsible: [{
60
+ type: Input,
61
+ args: [{ alias: 'clrCardFooterCollapsible', transform: booleanAttribute }]
62
+ }], expandedChange: [{
63
+ type: Output,
64
+ args: ['clrCardExpandedChange']
65
+ }], collapsible: [{
66
+ type: Input,
67
+ args: [{ alias: 'clrCardCollapsible', transform: booleanAttribute }]
68
+ }], expanded: [{
69
+ type: Input,
70
+ args: [{ alias: 'clrCardExpanded', transform: booleanAttribute }]
71
+ }] } });
72
+
73
+ /*
74
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
75
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
76
+ * This software is released under MIT license.
77
+ * The full license information can be found in LICENSE in the root directory of this project.
78
+ */
79
+ class ClrCardHeader {
80
+ constructor(card, commonStrings) {
81
+ this.card = card;
82
+ this.commonStrings = commonStrings;
83
+ }
84
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardHeader, deps: [{ token: ClrCard, optional: true }, { token: i2.ClrCommonStringsService }], target: i0.ɵɵFactoryTarget.Component }); }
85
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.25", type: ClrCardHeader, isStandalone: false, selector: "clr-card-header", inputs: { explicitHeadingLevel: ["clrHeadingLevel", "explicitHeadingLevel"] }, host: { properties: { "class.card-header": "true", "class.clr-card-header": "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 (card?.collapsible) {\n<button\n type=\"button\"\n class=\"card-header-toggle\"\n (click)=\"card.toggle()\"\n [attr.aria-controls]=\"card.contentId\"\n [attr.aria-expanded]=\"card.expanded\"\n [attr.aria-label]=\"card.expanded ? commonStrings.keys.collapseCardAriaLabel : commonStrings.keys.expandCardAriaLabel\"\n [attr.aria-describedby]=\"card.headerContentId\"\n>\n <cds-icon shape=\"angle\" direction=\"right\" class=\"card-header-icon\"></cds-icon>\n</button>\n}\n<div\n class=\"clr-card-header-content\"\n [attr.id]=\"card?.headerContentId\"\n [attr.role]=\"explicitHeadingLevel ? 'heading' : null\"\n [attr.aria-level]=\"explicitHeadingLevel ? explicitHeadingLevel : null\"\n>\n <ng-content></ng-content>\n</div>\n", dependencies: [{ kind: "component", type: i3.ClrIcon, selector: "clr-icon, cds-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge", "innerOffset"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
86
+ }
87
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardHeader, decorators: [{
88
+ type: Component,
89
+ args: [{ selector: 'clr-card-header', host: {
90
+ '[class.card-header]': 'true',
91
+ '[class.clr-card-header]': 'true',
92
+ }, changeDetection: ChangeDetectionStrategy.OnPush, 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 (card?.collapsible) {\n<button\n type=\"button\"\n class=\"card-header-toggle\"\n (click)=\"card.toggle()\"\n [attr.aria-controls]=\"card.contentId\"\n [attr.aria-expanded]=\"card.expanded\"\n [attr.aria-label]=\"card.expanded ? commonStrings.keys.collapseCardAriaLabel : commonStrings.keys.expandCardAriaLabel\"\n [attr.aria-describedby]=\"card.headerContentId\"\n>\n <cds-icon shape=\"angle\" direction=\"right\" class=\"card-header-icon\"></cds-icon>\n</button>\n}\n<div\n class=\"clr-card-header-content\"\n [attr.id]=\"card?.headerContentId\"\n [attr.role]=\"explicitHeadingLevel ? 'heading' : null\"\n [attr.aria-level]=\"explicitHeadingLevel ? explicitHeadingLevel : null\"\n>\n <ng-content></ng-content>\n</div>\n" }]
93
+ }], ctorParameters: () => [{ type: ClrCard, decorators: [{
94
+ type: Optional
95
+ }] }, { type: i2.ClrCommonStringsService }], propDecorators: { explicitHeadingLevel: [{
96
+ type: Input,
97
+ args: ['clrHeadingLevel']
98
+ }] } });
99
+
100
+ /*
101
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
102
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
103
+ * This software is released under MIT license.
104
+ * The full license information can be found in LICENSE in the root directory of this project.
105
+ */
106
+ class ClrCardBody {
107
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardBody, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
108
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.25", type: ClrCardBody, isStandalone: false, selector: "clr-card-body", host: { properties: { "class.card-block": "true", "class.clr-card-body": "true" } }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
109
+ }
110
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardBody, decorators: [{
111
+ type: Component,
112
+ args: [{
113
+ selector: 'clr-card-body',
114
+ template: `<ng-content></ng-content>`,
115
+ host: { '[class.card-block]': 'true', '[class.clr-card-body]': 'true' },
116
+ changeDetection: ChangeDetectionStrategy.OnPush,
117
+ standalone: false,
118
+ }]
119
+ }] });
120
+
121
+ /*
122
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
123
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
124
+ * This software is released under MIT license.
125
+ * The full license information can be found in LICENSE in the root directory of this project.
126
+ */
127
+ class ClrCardBodyTitle {
128
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardBodyTitle, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
129
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.25", type: ClrCardBodyTitle, isStandalone: false, selector: "clr-card-body-title", inputs: { explicitHeadingLevel: ["clrHeadingLevel", "explicitHeadingLevel"] }, host: { properties: { "class.card-title": "true", "class.clr-card-body-title": "true", "attr.role": "explicitHeadingLevel ? \"heading\" : null", "attr.aria-level": "explicitHeadingLevel ? explicitHeadingLevel : null" } }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
130
+ }
131
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardBodyTitle, decorators: [{
132
+ type: Component,
133
+ args: [{
134
+ selector: 'clr-card-body-title',
135
+ template: `<ng-content></ng-content>`,
136
+ host: {
137
+ '[class.card-title]': 'true',
138
+ '[class.clr-card-body-title]': 'true',
139
+ '[attr.role]': 'explicitHeadingLevel ? "heading" : null',
140
+ '[attr.aria-level]': 'explicitHeadingLevel ? explicitHeadingLevel : null',
141
+ },
142
+ changeDetection: ChangeDetectionStrategy.OnPush,
143
+ standalone: false,
144
+ }]
145
+ }], propDecorators: { explicitHeadingLevel: [{
146
+ type: Input,
147
+ args: ['clrHeadingLevel']
148
+ }] } });
149
+
150
+ /*
151
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
152
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
153
+ * This software is released under MIT license.
154
+ * The full license information can be found in LICENSE in the root directory of this project.
155
+ */
156
+ class ClrCardBodyText {
157
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardBodyText, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
158
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.25", type: ClrCardBodyText, isStandalone: false, selector: "clr-card-body-text", host: { properties: { "class.card-text": "true", "class.clr-card-body-text": "true" } }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
159
+ }
160
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardBodyText, decorators: [{
161
+ type: Component,
162
+ args: [{
163
+ selector: 'clr-card-body-text',
164
+ template: `<ng-content></ng-content>`,
165
+ host: { '[class.card-text]': 'true', '[class.clr-card-body-text]': 'true' },
166
+ changeDetection: ChangeDetectionStrategy.OnPush,
167
+ standalone: false,
168
+ }]
169
+ }] });
170
+
171
+ /*
172
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
173
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
174
+ * This software is released under MIT license.
175
+ * The full license information can be found in LICENSE in the root directory of this project.
176
+ */
177
+ class ClrCardFooter {
178
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardFooter, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
179
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.25", type: ClrCardFooter, isStandalone: false, selector: "clr-card-footer", host: { properties: { "class.card-footer": "true", "class.clr-card-footer": "true" } }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
180
+ }
181
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardFooter, decorators: [{
182
+ type: Component,
183
+ args: [{
184
+ selector: 'clr-card-footer',
185
+ template: `<ng-content></ng-content>`,
186
+ host: { '[class.card-footer]': 'true', '[class.clr-card-footer]': 'true' },
187
+ changeDetection: ChangeDetectionStrategy.OnPush,
188
+ standalone: false,
189
+ }]
190
+ }] });
191
+
192
+ /*
193
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
194
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
195
+ * This software is released under MIT license.
196
+ * The full license information can be found in LICENSE in the root directory of this project.
197
+ */
198
+ class ClrCardImage {
199
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardImage, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
200
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.25", type: ClrCardImage, isStandalone: false, selector: "clr-card-image", host: { properties: { "class.card-img": "true", "class.clr-card-image": "true" } }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
201
+ }
202
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardImage, decorators: [{
203
+ type: Component,
204
+ args: [{
205
+ selector: 'clr-card-image',
206
+ template: `<ng-content></ng-content>`,
207
+ host: { '[class.card-img]': 'true', '[class.clr-card-image]': 'true' },
208
+ changeDetection: ChangeDetectionStrategy.OnPush,
209
+ standalone: false,
210
+ }]
211
+ }] });
212
+
213
+ /*
214
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
215
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
216
+ * This software is released under MIT license.
217
+ * The full license information can be found in LICENSE in the root directory of this project.
218
+ */
219
+ class ClrCardDivider {
220
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardDivider, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
221
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.25", type: ClrCardDivider, isStandalone: false, selector: "clr-card-divider", host: { properties: { "class.card-divider": "true", "class.clr-card-divider": "true" } }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
222
+ }
223
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardDivider, decorators: [{
224
+ type: Component,
225
+ args: [{
226
+ selector: 'clr-card-divider',
227
+ template: `<ng-content></ng-content>`,
228
+ host: { '[class.card-divider]': 'true', '[class.clr-card-divider]': 'true' },
229
+ changeDetection: ChangeDetectionStrategy.OnPush,
230
+ standalone: false,
231
+ }]
232
+ }] });
233
+
234
+ /*
235
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
236
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
237
+ * This software is released under MIT license.
238
+ * The full license information can be found in LICENSE in the root directory of this project.
239
+ */
240
+ class ClrCardMediaBlock {
241
+ constructor() {
242
+ this.clrCardMediaWrap = false;
243
+ }
244
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardMediaBlock, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
245
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "21.2.25", type: ClrCardMediaBlock, isStandalone: false, selector: "clr-card-media-block", inputs: { clrCardMediaWrap: ["clrCardMediaWrap", "clrCardMediaWrap", booleanAttribute] }, host: { properties: { "class.card-media-block": "true", "class.clr-card-media-block": "true", "class.wrap": "clrCardMediaWrap" } }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
246
+ }
247
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardMediaBlock, decorators: [{
248
+ type: Component,
249
+ args: [{
250
+ selector: 'clr-card-media-block',
251
+ template: `<ng-content></ng-content>`,
252
+ host: {
253
+ '[class.card-media-block]': 'true',
254
+ '[class.clr-card-media-block]': 'true',
255
+ '[class.wrap]': 'clrCardMediaWrap',
256
+ },
257
+ changeDetection: ChangeDetectionStrategy.OnPush,
258
+ standalone: false,
259
+ }]
260
+ }], propDecorators: { clrCardMediaWrap: [{
261
+ type: Input,
262
+ args: [{ alias: 'clrCardMediaWrap', transform: booleanAttribute }]
263
+ }] } });
264
+
265
+ /*
266
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
267
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
268
+ * This software is released under MIT license.
269
+ * The full license information can be found in LICENSE in the root directory of this project.
270
+ */
271
+ class ClrCardMediaDescription {
272
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardMediaDescription, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
273
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.25", type: ClrCardMediaDescription, isStandalone: false, selector: "clr-card-media-description", host: { properties: { "class.card-media-description": "true", "class.clr-card-media-description": "true" } }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
274
+ }
275
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardMediaDescription, decorators: [{
276
+ type: Component,
277
+ args: [{
278
+ selector: 'clr-card-media-description',
279
+ template: `<ng-content></ng-content>`,
280
+ host: { '[class.card-media-description]': 'true', '[class.clr-card-media-description]': 'true' },
281
+ changeDetection: ChangeDetectionStrategy.OnPush,
282
+ standalone: false,
283
+ }]
284
+ }] });
285
+
286
+ /*
287
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
288
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
289
+ * This software is released under MIT license.
290
+ * The full license information can be found in LICENSE in the root directory of this project.
291
+ */
292
+ class ClrCardMediaImage {
293
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardMediaImage, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
294
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.25", type: ClrCardMediaImage, isStandalone: false, selector: "img[clrCardMediaImage]", host: { properties: { "class.card-media-image": "true" } }, ngImport: i0 }); }
295
+ }
296
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardMediaImage, decorators: [{
297
+ type: Directive,
298
+ args: [{
299
+ selector: 'img[clrCardMediaImage]',
300
+ host: { '[class.card-media-image]': 'true' },
301
+ standalone: false,
302
+ }]
303
+ }] });
304
+
305
+ /*
306
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
307
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
308
+ * This software is released under MIT license.
309
+ * The full license information can be found in LICENSE in the root directory of this project.
310
+ */
311
+ class ClrCardMediaTitle {
312
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardMediaTitle, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
313
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.25", type: ClrCardMediaTitle, isStandalone: false, selector: "[clrCardMediaTitle]", host: { properties: { "class.card-media-title": "true" } }, ngImport: i0 }); }
314
+ }
315
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardMediaTitle, decorators: [{
316
+ type: Directive,
317
+ args: [{
318
+ selector: '[clrCardMediaTitle]',
319
+ host: { '[class.card-media-title]': 'true' },
320
+ standalone: false,
321
+ }]
322
+ }] });
323
+
324
+ /*
325
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
326
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
327
+ * This software is released under MIT license.
328
+ * The full license information can be found in LICENSE in the root directory of this project.
329
+ */
330
+ class ClrCardMediaText {
331
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardMediaText, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
332
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.25", type: ClrCardMediaText, isStandalone: false, selector: "[clrCardMediaText]", host: { properties: { "class.card-media-text": "true" } }, ngImport: i0 }); }
333
+ }
334
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardMediaText, decorators: [{
335
+ type: Directive,
336
+ args: [{
337
+ selector: '[clrCardMediaText]',
338
+ host: { '[class.card-media-text]': 'true' },
339
+ standalone: false,
340
+ }]
341
+ }] });
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
+ const declarations = [
350
+ ClrCard,
351
+ ClrCardHeader,
352
+ ClrCardBody,
353
+ ClrCardBodyTitle,
354
+ ClrCardBodyText,
355
+ ClrCardFooter,
356
+ ClrCardImage,
357
+ ClrCardDivider,
358
+ ClrCardMediaBlock,
359
+ ClrCardMediaDescription,
360
+ ClrCardMediaImage,
361
+ ClrCardMediaTitle,
362
+ ClrCardMediaText,
363
+ ];
364
+ class ClrCardModule {
365
+ constructor() {
366
+ ClarityIcons.addIcons(angleIcon);
367
+ }
368
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
369
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.25", ngImport: i0, type: ClrCardModule, declarations: [ClrCard,
370
+ ClrCardHeader,
371
+ ClrCardBody,
372
+ ClrCardBodyTitle,
373
+ ClrCardBodyText,
374
+ ClrCardFooter,
375
+ ClrCardImage,
376
+ ClrCardDivider,
377
+ ClrCardMediaBlock,
378
+ ClrCardMediaDescription,
379
+ ClrCardMediaImage,
380
+ ClrCardMediaTitle,
381
+ ClrCardMediaText], imports: [CommonModule, ClrIcon], exports: [ClrCard,
382
+ ClrCardHeader,
383
+ ClrCardBody,
384
+ ClrCardBodyTitle,
385
+ ClrCardBodyText,
386
+ ClrCardFooter,
387
+ ClrCardImage,
388
+ ClrCardDivider,
389
+ ClrCardMediaBlock,
390
+ ClrCardMediaDescription,
391
+ ClrCardMediaImage,
392
+ ClrCardMediaTitle,
393
+ ClrCardMediaText] }); }
394
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardModule, imports: [CommonModule, ClrIcon] }); }
395
+ }
396
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: ClrCardModule, decorators: [{
397
+ type: NgModule,
398
+ args: [{
399
+ imports: [CommonModule, ClrIcon],
400
+ declarations: [...declarations],
401
+ exports: [...declarations],
402
+ }]
403
+ }], ctorParameters: () => [] });
404
+
405
+ /*
406
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
407
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
408
+ * This software is released under MIT license.
409
+ * The full license information can be found in LICENSE in the root directory of this project.
410
+ */
411
+
412
+ /**
413
+ * Generated bundle index. Do not edit.
414
+ */
415
+
416
+ export { ClrCard, ClrCardBody, ClrCardBodyText, ClrCardBodyTitle, ClrCardDivider, ClrCardFooter, ClrCardHeader, ClrCardImage, ClrCardMediaBlock, ClrCardMediaDescription, ClrCardMediaImage, ClrCardMediaText, ClrCardMediaTitle, ClrCardModule };
417
+ //# sourceMappingURL=clr-angular-card.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clr-angular-card.mjs","sources":["../../../projects/angular/card/card.ts","../../../projects/angular/card/card.html","../../../projects/angular/card/card-header.ts","../../../projects/angular/card/card-header.html","../../../projects/angular/card/card-body.ts","../../../projects/angular/card/card-body-title.ts","../../../projects/angular/card/card-body-text.ts","../../../projects/angular/card/card-footer.ts","../../../projects/angular/card/card-image.ts","../../../projects/angular/card/card-divider.ts","../../../projects/angular/card/card-media-block.ts","../../../projects/angular/card/card-media-description.ts","../../../projects/angular/card/card-media-image.directive.ts","../../../projects/angular/card/card-media-title.directive.ts","../../../projects/angular/card/card-media-text.directive.ts","../../../projects/angular/card/card.module.ts","../../../projects/angular/card/index.ts","../../../projects/angular/card/clr-angular-card.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 {\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n signal,\n} from '@angular/core';\nimport { uniqueIdFactory } from '@clr/angular/utils';\n\n@Component({\n selector: 'clr-card',\n templateUrl: './card.html',\n host: {\n '[class.card]': 'true',\n '[class.clr-card]': 'true',\n '[class.card-collapsible]': 'collapsible',\n '[class.card-collapsed]': 'collapsible && !expanded',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrCard {\n @Input({ alias: 'clrCardFooterCollapsible', transform: booleanAttribute }) footerCollapsible = true;\n @Output('clrCardExpandedChange') expandedChange = new EventEmitter<boolean>();\n\n readonly headerContentId = `clr-card-header-content-${uniqueIdFactory()}`;\n readonly contentId = `clr-card-content-${uniqueIdFactory()}`;\n\n private readonly _collapsible = signal(false);\n private readonly _expanded = signal(true);\n\n @Input({ alias: 'clrCardCollapsible', transform: booleanAttribute })\n get collapsible(): boolean {\n return this._collapsible();\n }\n set collapsible(value: boolean) {\n this._collapsible.set(value);\n }\n\n @Input({ alias: 'clrCardExpanded', transform: booleanAttribute })\n get expanded(): boolean {\n return this._expanded();\n }\n set expanded(value: boolean) {\n this._expanded.set(value);\n }\n\n /**\n * Toggles the expanded state of a collapsible card and emits `clrCardExpandedChange`.\n * Setting the `clrCardExpanded` input programmatically does not emit.\n */\n toggle() {\n if (!this.collapsible) {\n return;\n }\n this._expanded.set(!this._expanded());\n this.expandedChange.emit(this._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<ng-content select=\"clr-card-header\"></ng-content>\n<ng-template #bodyContent>\n <ng-content></ng-content>\n</ng-template>\n<ng-template #footerContent>\n <ng-content select=\"clr-card-footer\"></ng-content>\n</ng-template>\n@if (collapsible) {\n<div\n role=\"region\"\n class=\"card-collapsible-content\"\n [id]=\"contentId\"\n [attr.aria-hidden]=\"!expanded\"\n [attr.inert]=\"!expanded ? '' : null\"\n [attr.aria-labelledby]=\"headerContentId\"\n>\n <div class=\"card-collapsible-inner\">\n <ng-container *ngTemplateOutlet=\"bodyContent\"></ng-container>\n @if (footerCollapsible) {\n <ng-container *ngTemplateOutlet=\"footerContent\"></ng-container>\n }\n </div>\n</div>\n@if (!footerCollapsible) {\n<ng-container *ngTemplateOutlet=\"footerContent\"></ng-container>\n} } @else {\n<ng-container *ngTemplateOutlet=\"bodyContent\"></ng-container>\n<ng-container *ngTemplateOutlet=\"footerContent\"></ng-container>\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, Input, Optional } from '@angular/core';\nimport { ClrCommonStringsService, HeadingLevel } from '@clr/angular/utils';\n\nimport { ClrCard } from './card';\n\n@Component({\n selector: 'clr-card-header',\n templateUrl: './card-header.html',\n host: {\n '[class.card-header]': 'true',\n '[class.clr-card-header]': 'true',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrCardHeader {\n /**\n * Level of the card header heading from 1 to 6.\n */\n @Input('clrHeadingLevel') explicitHeadingLevel: HeadingLevel;\n\n constructor(\n @Optional() protected readonly card: ClrCard,\n protected readonly commonStrings: ClrCommonStringsService\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 (card?.collapsible) {\n<button\n type=\"button\"\n class=\"card-header-toggle\"\n (click)=\"card.toggle()\"\n [attr.aria-controls]=\"card.contentId\"\n [attr.aria-expanded]=\"card.expanded\"\n [attr.aria-label]=\"card.expanded ? commonStrings.keys.collapseCardAriaLabel : commonStrings.keys.expandCardAriaLabel\"\n [attr.aria-describedby]=\"card.headerContentId\"\n>\n <cds-icon shape=\"angle\" direction=\"right\" class=\"card-header-icon\"></cds-icon>\n</button>\n}\n<div\n class=\"clr-card-header-content\"\n [attr.id]=\"card?.headerContentId\"\n [attr.role]=\"explicitHeadingLevel ? 'heading' : null\"\n [attr.aria-level]=\"explicitHeadingLevel ? explicitHeadingLevel : null\"\n>\n <ng-content></ng-content>\n</div>\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-card-body',\n template: `<ng-content></ng-content>`,\n host: { '[class.card-block]': 'true', '[class.clr-card-body]': 'true' },\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrCardBody {}\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, Input } from '@angular/core';\nimport { HeadingLevel } from '@clr/angular/utils';\n\n@Component({\n selector: 'clr-card-body-title',\n template: `<ng-content></ng-content>`,\n host: {\n '[class.card-title]': 'true',\n '[class.clr-card-body-title]': 'true',\n '[attr.role]': 'explicitHeadingLevel ? \"heading\" : null',\n '[attr.aria-level]': 'explicitHeadingLevel ? explicitHeadingLevel : null',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrCardBodyTitle {\n /**\n * Level of the card body title heading from 1 to 6.\n */\n @Input('clrHeadingLevel') explicitHeadingLevel: HeadingLevel;\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-card-body-text',\n template: `<ng-content></ng-content>`,\n host: { '[class.card-text]': 'true', '[class.clr-card-body-text]': 'true' },\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrCardBodyText {}\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-card-footer',\n template: `<ng-content></ng-content>`,\n host: { '[class.card-footer]': 'true', '[class.clr-card-footer]': 'true' },\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrCardFooter {}\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-card-image',\n template: `<ng-content></ng-content>`,\n host: { '[class.card-img]': 'true', '[class.clr-card-image]': 'true' },\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrCardImage {}\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-card-divider',\n template: `<ng-content></ng-content>`,\n host: { '[class.card-divider]': 'true', '[class.clr-card-divider]': 'true' },\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrCardDivider {}\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 { booleanAttribute, ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n selector: 'clr-card-media-block',\n template: `<ng-content></ng-content>`,\n host: {\n '[class.card-media-block]': 'true',\n '[class.clr-card-media-block]': 'true',\n '[class.wrap]': 'clrCardMediaWrap',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrCardMediaBlock {\n @Input({ alias: 'clrCardMediaWrap', transform: booleanAttribute }) clrCardMediaWrap = false;\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-card-media-description',\n template: `<ng-content></ng-content>`,\n host: { '[class.card-media-description]': 'true', '[class.clr-card-media-description]': 'true' },\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrCardMediaDescription {}\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';\n\n@Directive({\n selector: 'img[clrCardMediaImage]',\n host: { '[class.card-media-image]': 'true' },\n standalone: false,\n})\nexport class ClrCardMediaImage {}\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';\n\n@Directive({\n selector: '[clrCardMediaTitle]',\n host: { '[class.card-media-title]': 'true' },\n standalone: false,\n})\nexport class ClrCardMediaTitle {}\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';\n\n@Directive({\n selector: '[clrCardMediaText]',\n host: { '[class.card-media-text]': 'true' },\n standalone: false,\n})\nexport class ClrCardMediaText {}\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 { ClrCard } from './card';\nimport { ClrCardBody } from './card-body';\nimport { ClrCardBodyText } from './card-body-text';\nimport { ClrCardBodyTitle } from './card-body-title';\nimport { ClrCardDivider } from './card-divider';\nimport { ClrCardFooter } from './card-footer';\nimport { ClrCardHeader } from './card-header';\nimport { ClrCardImage } from './card-image';\nimport { ClrCardMediaBlock } from './card-media-block';\nimport { ClrCardMediaDescription } from './card-media-description';\nimport { ClrCardMediaImage } from './card-media-image.directive';\nimport { ClrCardMediaText } from './card-media-text.directive';\nimport { ClrCardMediaTitle } from './card-media-title.directive';\n\nconst declarations = [\n ClrCard,\n ClrCardHeader,\n ClrCardBody,\n ClrCardBodyTitle,\n ClrCardBodyText,\n ClrCardFooter,\n ClrCardImage,\n ClrCardDivider,\n ClrCardMediaBlock,\n ClrCardMediaDescription,\n ClrCardMediaImage,\n ClrCardMediaTitle,\n ClrCardMediaText,\n];\n\n@NgModule({\n imports: [CommonModule, ClrIcon],\n declarations: [...declarations],\n exports: [...declarations],\n})\nexport class ClrCardModule {\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 './card';\nexport * from './card-header';\nexport * from './card-body';\nexport * from './card-body-title';\nexport * from './card-body-text';\nexport * from './card-footer';\nexport * from './card-image';\nexport * from './card-divider';\nexport * from './card-media-block';\nexport * from './card-media-description';\nexport * from './card-media-image.directive';\nexport * from './card-media-title.directive';\nexport * from './card-media-text.directive';\nexport * from './card.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.ClrCard"],"mappings":"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"}
@@ -96,10 +96,10 @@ class CollapsiblePanelService {
96
96
  emitUpdatedPanels() {
97
97
  this._panelsChanges.next(this.panelGroup.panels);
98
98
  }
99
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: CollapsiblePanelService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
100
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: CollapsiblePanelService }); }
99
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: CollapsiblePanelService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
100
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: CollapsiblePanelService }); }
101
101
  }
102
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: CollapsiblePanelService, decorators: [{
102
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: CollapsiblePanelService, decorators: [{
103
103
  type: Injectable
104
104
  }] });
105
105
 
@@ -158,10 +158,10 @@ class CollapsiblePanel {
158
158
  this.ifExpandService.expanded = true;
159
159
  }
160
160
  }
161
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: CollapsiblePanel, deps: [{ token: CollapsiblePanelService }, { token: i2.IfExpandService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive }); }
162
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.3", type: CollapsiblePanel, isStandalone: true, ngImport: i0 }); }
161
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: CollapsiblePanel, deps: [{ token: CollapsiblePanelService }, { token: i2.IfExpandService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive }); }
162
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.25", type: CollapsiblePanel, isStandalone: true, ngImport: i0 }); }
163
163
  }
164
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.3", ngImport: i0, type: CollapsiblePanel, decorators: [{
164
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.25", ngImport: i0, type: CollapsiblePanel, decorators: [{
165
165
  type: Directive
166
166
  }], ctorParameters: () => [{ type: CollapsiblePanelService }, { type: i2.IfExpandService }, { type: i0.ChangeDetectorRef }] });
167
167
 
@@ -1 +1 @@
1
- {"version":3,"file":"clr-angular-collapsible-panel.mjs","sources":["../../../projects/angular/collapsible-panel/models/collapsible-panel.model.ts","../../../projects/angular/collapsible-panel/providers/collapsible-panel.service.ts","../../../projects/angular/collapsible-panel/collapsible-panel.ts","../../../projects/angular/collapsible-panel/utils/animation.ts","../../../projects/angular/collapsible-panel/index.ts","../../../projects/angular/collapsible-panel/clr-angular-collapsible-panel.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\nlet panelGroupCount = 0;\n\nexport class CollapsiblePanelModel {\n index: number = null;\n disabled = false;\n open = false;\n templateId = `${this.id}-${this.groupId}`;\n constructor(\n public id: string,\n public groupId: number | string\n ) {}\n}\n\nexport class CollapsiblePanelGroupModel {\n protected panelGroupCount = panelGroupCount++;\n protected _panels: { [id: string]: CollapsiblePanelModel } = {};\n\n get panels(): CollapsiblePanelModel[] {\n return Object.keys(this._panels).map(id => this._panels[id]);\n }\n\n updatePanelOrder(ids: string[]) {\n ids.forEach((id, index) => {\n if (this._panels[id]) {\n this._panels[id].index = index;\n }\n });\n this.removeOldPanels(ids);\n }\n\n addPanel(id: string, open = false) {\n this._panels[id] = new CollapsiblePanelModel(id, this.panelGroupCount);\n this._panels[id].open = open;\n }\n\n togglePanel(panelId: string, open?: boolean) {\n if (!this._panels[panelId]) {\n return;\n }\n\n const panelIsOpen = this._panels[panelId].open;\n this._panels[panelId].open = open !== undefined ? open : !panelIsOpen;\n }\n\n disablePanel(panelId: string, disabled: boolean) {\n if (!this._panels[panelId]) {\n return;\n }\n\n this._panels[panelId].disabled = disabled;\n }\n\n private removeOldPanels(ids: string[]) {\n this.panels\n .filter(panel => ids.find(id => id === panel.id) === undefined)\n .forEach(panel => delete this._panels[panel.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\nimport { Injectable } from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\nimport { CollapsiblePanelGroupModel, CollapsiblePanelModel } from '../models/collapsible-panel.model';\n\n@Injectable()\nexport class CollapsiblePanelService {\n protected panelGroup = new CollapsiblePanelGroupModel();\n protected readonly _panelsChanges = new BehaviorSubject(this.panelGroup.panels);\n\n getPanelChanges(panelId: string): Observable<CollapsiblePanelModel> {\n return this._panelsChanges.pipe(map(panels => panels.find(s => s.id === panelId)));\n }\n\n addPanel(panelId: string, open = false) {\n this.panelGroup.addPanel(panelId, open);\n this.emitUpdatedPanels();\n }\n\n togglePanel(panelId: string, open?: boolean) {\n this.panelGroup.togglePanel(panelId, open);\n this.emitUpdatedPanels();\n }\n\n disablePanel(panelId: string, disabled?: boolean) {\n this.panelGroup.disablePanel(panelId, disabled);\n this.emitUpdatedPanels();\n }\n\n updatePanelOrder(ids: string[]) {\n this.panelGroup.updatePanelOrder(ids);\n this.emitUpdatedPanels();\n }\n\n protected emitUpdatedPanels() {\n this._panelsChanges.next(this.panelGroup.panels);\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 { ChangeDetectorRef, Directive, EventEmitter, OnInit, SimpleChanges } from '@angular/core';\nimport { IfExpandService, uniqueIdFactory } from '@clr/angular/utils';\nimport { Observable } from 'rxjs';\nimport { filter, tap } from 'rxjs/operators';\n\nimport { CollapsiblePanelModel } from './models/collapsible-panel.model';\nimport { CollapsiblePanelService } from './providers/collapsible-panel.service';\n\n@Directive()\nexport abstract class CollapsiblePanel implements OnInit {\n panelOpen = false;\n panelOpenChange = new EventEmitter<boolean>();\n\n panel: Observable<CollapsiblePanelModel>;\n\n protected _panelIndex: number;\n private _id = uniqueIdFactory();\n\n constructor(\n protected panelService: CollapsiblePanelService,\n protected ifExpandService: IfExpandService,\n protected cdr: ChangeDetectorRef\n ) {}\n\n get id(): string {\n return this._id;\n }\n set id(value: string) {\n this._id = value;\n }\n\n abstract get disabled(): boolean;\n\n ngOnInit() {\n this.panelService.addPanel(this.id, this.panelOpen);\n this.panelService.disablePanel(this.id, this.disabled);\n this.panel = this.panelService.getPanelChanges(this.id).pipe(\n filter(panel => !!panel),\n tap(panel => this.emitPanelChange(panel))\n );\n }\n\n togglePanel() {\n this.panelService.togglePanel(this.id);\n }\n\n collapsePanelOnAnimationDone(panel: CollapsiblePanelModel) {\n if (!panel.open) {\n this.ifExpandService.expanded = false;\n }\n }\n\n protected handlePanelInputChanges(changes: SimpleChanges) {\n if (this.panel && changes.panelOpen && changes.panelOpen.currentValue !== changes.panelOpen.previousValue) {\n this.panelService.togglePanel(this.id, changes.panelOpen.currentValue);\n }\n\n if (this.panel && changes.disabled && changes.disabled.currentValue !== changes.disabled.previousValue) {\n this.panelService.disablePanel(this.id, changes.disabled.currentValue);\n }\n }\n\n private emitPanelChange(panel: CollapsiblePanelModel) {\n if (panel.index !== this._panelIndex) {\n this._panelIndex = panel.index;\n this.cdr.detectChanges();\n }\n\n if (panel.open !== this.panelOpen) {\n this.panelOpenChange.emit(panel.open);\n this.panelOpen = panel.open;\n }\n\n if (panel.open) {\n this.ifExpandService.expanded = true;\n }\n }\n\n abstract getPanelStateClasses(panel: CollapsiblePanelModel): string;\n abstract getContentId(id: string): string;\n abstract getHeaderId(id: string): string;\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 { animate, style, transition, trigger } from '@angular/animations';\nimport { defaultAnimationTiming } from '@clr/angular/utils';\n\nexport const skipInitialRenderTrigger = trigger('skipInitialRender', [transition(':enter', [])]);\n\nexport const panelExpandTransition = transition('void => *', [\n style({ display: 'block', height: 0 }),\n animate(defaultAnimationTiming, style({ height: '*' })),\n]);\n\nexport const panelCollapseTransition = transition('* => void', [\n style({ display: 'block' }),\n animate(defaultAnimationTiming, style({ height: 0, display: 'none' })),\n]);\n\nexport const collapsiblePanelExpandAnimation = [skipInitialRenderTrigger, trigger('toggle', [panelExpandTransition])];\n\nexport const collapsiblePanelAnimation = [\n skipInitialRenderTrigger,\n trigger('toggle', [panelExpandTransition, panelCollapseTransition]),\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 './collapsible-panel';\nexport * from './models/collapsible-panel.model';\nexport * from './providers/collapsible-panel.service';\nexport * from './utils/animation';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.CollapsiblePanelService"],"mappings":"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"}
1
+ {"version":3,"file":"clr-angular-collapsible-panel.mjs","sources":["../../../projects/angular/collapsible-panel/models/collapsible-panel.model.ts","../../../projects/angular/collapsible-panel/providers/collapsible-panel.service.ts","../../../projects/angular/collapsible-panel/collapsible-panel.ts","../../../projects/angular/collapsible-panel/utils/animation.ts","../../../projects/angular/collapsible-panel/index.ts","../../../projects/angular/collapsible-panel/clr-angular-collapsible-panel.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\nlet panelGroupCount = 0;\n\nexport class CollapsiblePanelModel {\n index: number = null;\n disabled = false;\n open = false;\n templateId = `${this.id}-${this.groupId}`;\n constructor(\n public id: string,\n public groupId: number | string\n ) {}\n}\n\nexport class CollapsiblePanelGroupModel {\n protected panelGroupCount = panelGroupCount++;\n protected _panels: { [id: string]: CollapsiblePanelModel } = {};\n\n get panels(): CollapsiblePanelModel[] {\n return Object.keys(this._panels).map(id => this._panels[id]);\n }\n\n updatePanelOrder(ids: string[]) {\n ids.forEach((id, index) => {\n if (this._panels[id]) {\n this._panels[id].index = index;\n }\n });\n this.removeOldPanels(ids);\n }\n\n addPanel(id: string, open = false) {\n this._panels[id] = new CollapsiblePanelModel(id, this.panelGroupCount);\n this._panels[id].open = open;\n }\n\n togglePanel(panelId: string, open?: boolean) {\n if (!this._panels[panelId]) {\n return;\n }\n\n const panelIsOpen = this._panels[panelId].open;\n this._panels[panelId].open = open !== undefined ? open : !panelIsOpen;\n }\n\n disablePanel(panelId: string, disabled: boolean) {\n if (!this._panels[panelId]) {\n return;\n }\n\n this._panels[panelId].disabled = disabled;\n }\n\n private removeOldPanels(ids: string[]) {\n this.panels\n .filter(panel => ids.find(id => id === panel.id) === undefined)\n .forEach(panel => delete this._panels[panel.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\nimport { Injectable } from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\nimport { CollapsiblePanelGroupModel, CollapsiblePanelModel } from '../models/collapsible-panel.model';\n\n@Injectable()\nexport class CollapsiblePanelService {\n protected panelGroup = new CollapsiblePanelGroupModel();\n protected readonly _panelsChanges = new BehaviorSubject(this.panelGroup.panels);\n\n getPanelChanges(panelId: string): Observable<CollapsiblePanelModel> {\n return this._panelsChanges.pipe(map(panels => panels.find(s => s.id === panelId)));\n }\n\n addPanel(panelId: string, open = false) {\n this.panelGroup.addPanel(panelId, open);\n this.emitUpdatedPanels();\n }\n\n togglePanel(panelId: string, open?: boolean) {\n this.panelGroup.togglePanel(panelId, open);\n this.emitUpdatedPanels();\n }\n\n disablePanel(panelId: string, disabled?: boolean) {\n this.panelGroup.disablePanel(panelId, disabled);\n this.emitUpdatedPanels();\n }\n\n updatePanelOrder(ids: string[]) {\n this.panelGroup.updatePanelOrder(ids);\n this.emitUpdatedPanels();\n }\n\n protected emitUpdatedPanels() {\n this._panelsChanges.next(this.panelGroup.panels);\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 { ChangeDetectorRef, Directive, EventEmitter, OnInit, SimpleChanges } from '@angular/core';\nimport { IfExpandService, uniqueIdFactory } from '@clr/angular/utils';\nimport { Observable } from 'rxjs';\nimport { filter, tap } from 'rxjs/operators';\n\nimport { CollapsiblePanelModel } from './models/collapsible-panel.model';\nimport { CollapsiblePanelService } from './providers/collapsible-panel.service';\n\n@Directive()\nexport abstract class CollapsiblePanel implements OnInit {\n panelOpen = false;\n panelOpenChange = new EventEmitter<boolean>();\n\n panel: Observable<CollapsiblePanelModel>;\n\n protected _panelIndex: number;\n private _id = uniqueIdFactory();\n\n constructor(\n protected panelService: CollapsiblePanelService,\n protected ifExpandService: IfExpandService,\n protected cdr: ChangeDetectorRef\n ) {}\n\n get id(): string {\n return this._id;\n }\n set id(value: string) {\n this._id = value;\n }\n\n abstract get disabled(): boolean;\n\n ngOnInit() {\n this.panelService.addPanel(this.id, this.panelOpen);\n this.panelService.disablePanel(this.id, this.disabled);\n this.panel = this.panelService.getPanelChanges(this.id).pipe(\n filter(panel => !!panel),\n tap(panel => this.emitPanelChange(panel))\n );\n }\n\n togglePanel() {\n this.panelService.togglePanel(this.id);\n }\n\n collapsePanelOnAnimationDone(panel: CollapsiblePanelModel) {\n if (!panel.open) {\n this.ifExpandService.expanded = false;\n }\n }\n\n protected handlePanelInputChanges(changes: SimpleChanges) {\n if (this.panel && changes.panelOpen && changes.panelOpen.currentValue !== changes.panelOpen.previousValue) {\n this.panelService.togglePanel(this.id, changes.panelOpen.currentValue);\n }\n\n if (this.panel && changes.disabled && changes.disabled.currentValue !== changes.disabled.previousValue) {\n this.panelService.disablePanel(this.id, changes.disabled.currentValue);\n }\n }\n\n private emitPanelChange(panel: CollapsiblePanelModel) {\n if (panel.index !== this._panelIndex) {\n this._panelIndex = panel.index;\n this.cdr.detectChanges();\n }\n\n if (panel.open !== this.panelOpen) {\n this.panelOpenChange.emit(panel.open);\n this.panelOpen = panel.open;\n }\n\n if (panel.open) {\n this.ifExpandService.expanded = true;\n }\n }\n\n abstract getPanelStateClasses(panel: CollapsiblePanelModel): string;\n abstract getContentId(id: string): string;\n abstract getHeaderId(id: string): string;\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 { animate, style, transition, trigger } from '@angular/animations';\nimport { defaultAnimationTiming } from '@clr/angular/utils';\n\nexport const skipInitialRenderTrigger = trigger('skipInitialRender', [transition(':enter', [])]);\n\nexport const panelExpandTransition = transition('void => *', [\n style({ display: 'block', height: 0 }),\n animate(defaultAnimationTiming, style({ height: '*' })),\n]);\n\nexport const panelCollapseTransition = transition('* => void', [\n style({ display: 'block' }),\n animate(defaultAnimationTiming, style({ height: 0, display: 'none' })),\n]);\n\nexport const collapsiblePanelExpandAnimation = [skipInitialRenderTrigger, trigger('toggle', [panelExpandTransition])];\n\nexport const collapsiblePanelAnimation = [\n skipInitialRenderTrigger,\n trigger('toggle', [panelExpandTransition, panelCollapseTransition]),\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 './collapsible-panel';\nexport * from './models/collapsible-panel.model';\nexport * from './providers/collapsible-panel.service';\nexport * from './utils/animation';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.CollapsiblePanelService"],"mappings":"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"}