@odx/angular 3.0.0 → 3.1.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.
- package/CHANGELOG.md +7 -0
- package/cdk/expandable/lib/directives/expandable-container.directive.d.ts +20 -0
- package/cdk/expandable/lib/directives/expandable-item.directive.d.ts +10 -6
- package/cdk/expandable/lib/directives/index.d.ts +1 -1
- package/cdk/expandable/lib/expandable.module.d.ts +1 -1
- package/cdk/expandable/lib/expandable.tokens.d.ts +2 -1
- package/cdk/expandable/lib/facade/expandable-container.d.ts +6 -3
- package/cdk/expandable/lib/facade/expandable-item.d.ts +6 -3
- package/components/accordion/lib/accordion.component.d.ts +3 -3
- package/components/accordion/lib/components/accordion-item/accordion-item.component.d.ts +4 -3
- package/components/list/lib/components/expandable-list-item/expandable-list-item.component.d.ts +4 -7
- package/components/list/lib/components/list-item/list-item.component.d.ts +1 -1
- package/components/list/lib/list.component.d.ts +3 -4
- package/components/rich-list/lib/components/rich-list-item/rich-list-item.component.d.ts +4 -3
- package/components/rich-list/lib/rich-list.component.d.ts +3 -4
- package/esm2022/cdk/expandable/lib/directives/expandable-container.directive.mjs +59 -0
- package/esm2022/cdk/expandable/lib/directives/expandable-item.directive.mjs +27 -10
- package/esm2022/cdk/expandable/lib/directives/index.mjs +2 -2
- package/esm2022/cdk/expandable/lib/expandable.tokens.mjs +2 -1
- package/esm2022/cdk/expandable/lib/facade/expandable-container.mjs +1 -1
- package/esm2022/cdk/expandable/lib/facade/expandable-item.mjs +1 -1
- package/esm2022/components/accordion/lib/accordion.component.mjs +9 -11
- package/esm2022/components/accordion/lib/components/accordion-item/accordion-item.component.mjs +17 -17
- package/esm2022/components/list/lib/components/expandable-list-item/expandable-list-item.component.mjs +16 -31
- package/esm2022/components/list/lib/components/list-item/list-item.component.mjs +7 -8
- package/esm2022/components/list/lib/list.component.mjs +11 -15
- package/esm2022/components/rich-list/lib/components/rich-list-item/rich-list-item.component.mjs +17 -17
- package/esm2022/components/rich-list/lib/rich-list.component.mjs +9 -12
- package/fesm2022/odx-angular-cdk-expandable.mjs +84 -57
- package/fesm2022/odx-angular-cdk-expandable.mjs.map +1 -1
- package/fesm2022/odx-angular-components-accordion.mjs +22 -25
- package/fesm2022/odx-angular-components-accordion.mjs.map +1 -1
- package/fesm2022/odx-angular-components-list.mjs +26 -47
- package/fesm2022/odx-angular-components-list.mjs.map +1 -1
- package/fesm2022/odx-angular-components-rich-list.mjs +22 -26
- package/fesm2022/odx-angular-components-rich-list.mjs.map +1 -1
- package/package.json +1 -1
- package/cdk/expandable/lib/directives/extandable-container.directive.d.ts +0 -13
- package/esm2022/cdk/expandable/lib/directives/extandable-container.directive.mjs +0 -50
package/CHANGELOG.md
CHANGED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { OnDestroy, OnInit } from '@angular/core';
|
|
2
|
+
import type { ExpandableContainer, ExpandableItem } from '../facade';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class ExpandableContainerDirective implements ExpandableContainer, OnInit, OnDestroy {
|
|
5
|
+
private readonly expandedItems;
|
|
6
|
+
private readonly parentItem;
|
|
7
|
+
private readonly parentContainer;
|
|
8
|
+
multiple: boolean;
|
|
9
|
+
ngOnInit(): void;
|
|
10
|
+
ngOnDestroy(): void;
|
|
11
|
+
collapseAll(): void;
|
|
12
|
+
collapse(item: ExpandableItem): void;
|
|
13
|
+
expand(item: ExpandableItem): void;
|
|
14
|
+
toggle(item: ExpandableItem, forceState?: boolean): void;
|
|
15
|
+
isExpanded(item: ExpandableItem): boolean;
|
|
16
|
+
hasExpandedItem(): boolean;
|
|
17
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ExpandableContainerDirective, never>;
|
|
18
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<ExpandableContainerDirective, "[odxExpandableContainer]", ["odxExpandableContainer"], { "multiple": { "alias": "multiple"; "required": false; }; }, {}, never, never, true, never>;
|
|
19
|
+
static ngAcceptInputType_multiple: unknown;
|
|
20
|
+
}
|
|
@@ -1,16 +1,20 @@
|
|
|
1
|
-
import { ExpandableItem } from '../facade';
|
|
1
|
+
import type { ExpandableContainer, ExpandableItem } from '../facade';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export declare class ExpandableItemDirective implements ExpandableItem {
|
|
4
|
-
private readonly container;
|
|
5
4
|
private readonly changeDetectorRef;
|
|
5
|
+
private readonly childContainers;
|
|
6
|
+
private readonly container;
|
|
6
7
|
private _expanded;
|
|
7
|
-
|
|
8
|
+
id: string;
|
|
8
9
|
set expanded(value: boolean);
|
|
9
10
|
get expanded(): boolean;
|
|
10
11
|
toggle(forceState?: boolean): void;
|
|
11
|
-
|
|
12
|
-
|
|
12
|
+
expand(): void;
|
|
13
|
+
collapse(): void;
|
|
14
|
+
addChild(container: ExpandableContainer): void;
|
|
15
|
+
removeChild(container: ExpandableContainer): void;
|
|
16
|
+
private closeAllChildren;
|
|
13
17
|
static ɵfac: i0.ɵɵFactoryDeclaration<ExpandableItemDirective, never>;
|
|
14
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<ExpandableItemDirective, "[odxExpandableItem]",
|
|
18
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<ExpandableItemDirective, "[odxExpandableItem]", ["odxExpandableItem"], { "id": { "alias": "id"; "required": false; }; "expanded": { "alias": "expanded"; "required": false; }; }, {}, never, never, true, never>;
|
|
15
19
|
static ngAcceptInputType_expanded: unknown;
|
|
16
20
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from "@angular/core";
|
|
2
|
-
import * as i1 from "./directives/
|
|
2
|
+
import * as i1 from "./directives/expandable-container.directive";
|
|
3
3
|
import * as i2 from "./directives/expandable-item.directive";
|
|
4
4
|
export declare class ExpandableModule {
|
|
5
5
|
static ɵfac: i0.ɵɵFactoryDeclaration<ExpandableModule, never>;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import { InjectionToken } from '@angular/core';
|
|
2
|
-
import { ExpandableContainer } from './facade';
|
|
2
|
+
import { ExpandableContainer, ExpandableItem } from './facade';
|
|
3
3
|
export declare const ODX_EXPANDABLE_CONTAINER: InjectionToken<ExpandableContainer>;
|
|
4
|
+
export declare const ODX_EXPANDABLE_ITEM: InjectionToken<ExpandableItem>;
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { ExpandableItem } from './expandable-item';
|
|
2
2
|
export interface ExpandableContainer {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
multiple: boolean;
|
|
4
|
+
collapseAll(): void;
|
|
5
|
+
collapse(item: ExpandableItem): void;
|
|
6
|
+
expand(item: ExpandableItem): void;
|
|
7
|
+
toggle(item: ExpandableItem): void;
|
|
8
|
+
isExpanded(item: ExpandableItem): boolean;
|
|
6
9
|
hasExpandedItem(): boolean;
|
|
7
10
|
}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
+
import { ExpandableContainer } from './expandable-container';
|
|
1
2
|
export interface ExpandableItem {
|
|
2
|
-
|
|
3
|
+
id: string;
|
|
3
4
|
expanded: boolean;
|
|
4
|
-
|
|
5
|
-
|
|
5
|
+
collapse(): void;
|
|
6
|
+
expand(): void;
|
|
6
7
|
toggle(): void;
|
|
8
|
+
addChild(container: ExpandableContainer): void;
|
|
9
|
+
removeChild(container: ExpandableContainer): void;
|
|
7
10
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { ExpandableContainerDirective } from '@odx/angular/cdk/expandable';
|
|
2
1
|
import * as i0 from "@angular/core";
|
|
3
|
-
|
|
2
|
+
import * as i1 from "@odx/angular/cdk/expandable";
|
|
3
|
+
export declare class AccordionComponent {
|
|
4
4
|
readonly element: import("@angular/core").ElementRef<HTMLElement>;
|
|
5
5
|
static ɵfac: i0.ɵɵFactoryDeclaration<AccordionComponent, never>;
|
|
6
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AccordionComponent, "odx-accordion", never, {}, {}, never, ["odx-accordion-item"], true,
|
|
6
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AccordionComponent, "odx-accordion", never, {}, {}, never, ["odx-accordion-item"], true, [{ directive: typeof i1.ExpandableContainerDirective; inputs: { "multiple": "multiple"; }; outputs: {}; }]>;
|
|
7
7
|
}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { EventEmitter } from '@angular/core';
|
|
2
2
|
import { ExpandableItemDirective } from '@odx/angular/cdk/expandable';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
-
|
|
4
|
+
import * as i1 from "@odx/angular/cdk/expandable";
|
|
5
|
+
export declare class AccordionItemComponent {
|
|
5
6
|
private readonly disabledController;
|
|
7
|
+
protected readonly expandableItem: ExpandableItemDirective;
|
|
6
8
|
readonly element: import("@angular/core").ElementRef<HTMLElement>;
|
|
7
|
-
readonly id: string;
|
|
8
9
|
title?: string | null;
|
|
9
10
|
expandedChange: EventEmitter<boolean>;
|
|
10
11
|
get isDisabled(): boolean;
|
|
@@ -13,5 +14,5 @@ export declare class AccordionItemComponent extends ExpandableItemDirective {
|
|
|
13
14
|
get slotId(): string;
|
|
14
15
|
onAnimationEnd(): void;
|
|
15
16
|
static ɵfac: i0.ɵɵFactoryDeclaration<AccordionItemComponent, never>;
|
|
16
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AccordionItemComponent, "odx-accordion-item", never, { "title": { "alias": "title"; "required": false; }; }, { "expandedChange": "expandedChange"; }, never, ["odx-accordion-item-title", "*"], true,
|
|
17
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AccordionItemComponent, "odx-accordion-item", never, { "title": { "alias": "title"; "required": false; }; }, { "expandedChange": "expandedChange"; }, never, ["odx-accordion-item-title", "*"], true, [{ directive: typeof i1.ExpandableItemDirective; inputs: { "expanded": "expanded"; "id": "id"; }; outputs: {}; }]>;
|
|
17
18
|
}
|
package/components/list/lib/components/expandable-list-item/expandable-list-item.component.d.ts
CHANGED
|
@@ -1,12 +1,9 @@
|
|
|
1
1
|
import { ExpandableItemDirective } from '@odx/angular/cdk/expandable';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
import * as i1 from "@odx/angular/cdk/expandable";
|
|
4
|
+
export declare class ExpandableListItemComponent {
|
|
5
|
+
protected readonly expandableItem: ExpandableItemDirective;
|
|
5
6
|
readonly element: import("@angular/core").ElementRef<HTMLElement>;
|
|
6
|
-
danger: boolean;
|
|
7
|
-
get isDisabled(): boolean;
|
|
8
|
-
get isExpanded(): boolean;
|
|
9
7
|
static ɵfac: i0.ɵɵFactoryDeclaration<ExpandableListItemComponent, never>;
|
|
10
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ExpandableListItemComponent, "odx-expandable-list-item", never, { "
|
|
11
|
-
static ngAcceptInputType_danger: unknown;
|
|
8
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ExpandableListItemComponent, "odx-expandable-list-item", never, {}, {}, never, ["odx-list-item, [odxListItem]", "odx-list"], true, [{ directive: typeof i1.ExpandableItemDirective; inputs: { "expanded": "expanded"; "id": "id"; }; outputs: {}; }]>;
|
|
12
9
|
}
|
|
@@ -5,7 +5,7 @@ export declare class ListItemComponent {
|
|
|
5
5
|
danger: boolean;
|
|
6
6
|
selected: boolean;
|
|
7
7
|
static ɵfac: i0.ɵɵFactoryDeclaration<ListItemComponent, never>;
|
|
8
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ListItemComponent, "[odxListItem]", never, { "danger": { "alias": "danger"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; }, {}, never, ["[odxListPrefix]", "*", "[odxListSuffix]"], true, [{ directive: typeof i1.WithDisabledState; inputs: {}; outputs: {}; }, { directive: typeof i1.WithTabIndex; inputs: {}; outputs: {}; }]>;
|
|
8
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ListItemComponent, "odx-list-item, [odxListItem]", never, { "danger": { "alias": "danger"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; }, {}, never, ["[odxListPrefix], [odxListItemPrefix]", "*", "[odxListSuffix], [odxListItemSuffix]"], true, [{ directive: typeof i1.WithDisabledState; inputs: {}; outputs: {}; }, { directive: typeof i1.WithTabIndex; inputs: {}; outputs: {}; }]>;
|
|
9
9
|
static ngAcceptInputType_danger: unknown;
|
|
10
10
|
static ngAcceptInputType_selected: unknown;
|
|
11
11
|
}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import { ExpandableContainerDirective } from '@odx/angular/cdk/expandable';
|
|
2
1
|
import * as i0 from "@angular/core";
|
|
3
|
-
|
|
2
|
+
import * as i1 from "@odx/angular/cdk/expandable";
|
|
3
|
+
export declare class ListComponent {
|
|
4
4
|
readonly element: import("@angular/core").ElementRef<HTMLElement>;
|
|
5
|
-
constructor();
|
|
6
5
|
static ɵfac: i0.ɵɵFactoryDeclaration<ListComponent, never>;
|
|
7
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ListComponent, "odx-list", never, {}, {}, never, ["[odxListItem], odx-expandable-list-item"], true,
|
|
6
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ListComponent, "odx-list", never, {}, {}, never, ["odx-list, odx-list-item, [odxListItem], odx-expandable-list-item"], true, [{ directive: typeof i1.ExpandableContainerDirective; inputs: { "multiple": "multiple"; }; outputs: {}; }]>;
|
|
8
7
|
}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { EventEmitter } from '@angular/core';
|
|
2
2
|
import { ExpandableItemDirective } from '@odx/angular/cdk/expandable';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
-
|
|
4
|
+
import * as i1 from "@odx/angular/cdk/expandable";
|
|
5
|
+
export declare class RichListItemComponent {
|
|
6
|
+
protected readonly expandableItem: ExpandableItemDirective;
|
|
5
7
|
readonly element: import("@angular/core").ElementRef<HTMLElement>;
|
|
6
|
-
readonly id: string;
|
|
7
8
|
expandedChange: EventEmitter<boolean>;
|
|
8
9
|
get titleId(): string;
|
|
9
10
|
get slotId(): string;
|
|
10
11
|
onAnimationEnd(): void;
|
|
11
12
|
static ɵfac: i0.ɵɵFactoryDeclaration<RichListItemComponent, never>;
|
|
12
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<RichListItemComponent, "odx-rich-list-item", never, {}, { "expandedChange": "expandedChange"; }, never, ["odx-rich-list-item-title", "*"], true,
|
|
13
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<RichListItemComponent, "odx-rich-list-item", never, {}, { "expandedChange": "expandedChange"; }, never, ["odx-rich-list-item-title", "*"], true, [{ directive: typeof i1.ExpandableItemDirective; inputs: { "expanded": "expanded"; "id": "id"; }; outputs: {}; }]>;
|
|
13
14
|
}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import { ExpandableContainerDirective } from '@odx/angular/cdk/expandable';
|
|
2
1
|
import * as i0 from "@angular/core";
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
import * as i1 from "@odx/angular/cdk/expandable";
|
|
3
|
+
export declare class RichListComponent {
|
|
5
4
|
readonly element: import("@angular/core").ElementRef<HTMLElement>;
|
|
6
5
|
static ɵfac: i0.ɵɵFactoryDeclaration<RichListComponent, never>;
|
|
7
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<RichListComponent, "odx-rich-list", never, {}, {}, never, ["odx-rich-list-item"], true,
|
|
6
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<RichListComponent, "odx-rich-list", never, {}, {}, never, ["odx-rich-list-item"], true, [{ directive: typeof i1.ExpandableContainerDirective; inputs: { "multiple": "multiple"; }; outputs: {}; }]>;
|
|
8
7
|
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { booleanAttribute, Directive, inject, Input } from '@angular/core';
|
|
2
|
+
import { ODX_EXPANDABLE_CONTAINER, ODX_EXPANDABLE_ITEM } from '../expandable.tokens';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class ExpandableContainerDirective {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.expandedItems = new Set();
|
|
7
|
+
this.parentItem = inject(ODX_EXPANDABLE_ITEM, { optional: true, skipSelf: true });
|
|
8
|
+
this.parentContainer = inject(ODX_EXPANDABLE_CONTAINER, { optional: true, skipSelf: true });
|
|
9
|
+
this.multiple = this.parentContainer?.multiple ?? false;
|
|
10
|
+
}
|
|
11
|
+
ngOnInit() {
|
|
12
|
+
this.parentItem?.addChild(this);
|
|
13
|
+
}
|
|
14
|
+
ngOnDestroy() {
|
|
15
|
+
this.parentItem?.removeChild(this);
|
|
16
|
+
}
|
|
17
|
+
collapseAll() {
|
|
18
|
+
this.expandedItems.forEach((item) => item.collapse());
|
|
19
|
+
}
|
|
20
|
+
collapse(item) {
|
|
21
|
+
this.expandedItems.delete(item);
|
|
22
|
+
}
|
|
23
|
+
expand(item) {
|
|
24
|
+
if (!this.multiple) {
|
|
25
|
+
this.collapseAll();
|
|
26
|
+
}
|
|
27
|
+
this.expandedItems.add(item);
|
|
28
|
+
}
|
|
29
|
+
toggle(item, forceState) {
|
|
30
|
+
const shouldExpand = forceState ?? !this.isExpanded(item);
|
|
31
|
+
if (shouldExpand) {
|
|
32
|
+
this.expand(item);
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
this.collapse(item);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
isExpanded(item) {
|
|
39
|
+
return this.expandedItems.has(item);
|
|
40
|
+
}
|
|
41
|
+
hasExpandedItem() {
|
|
42
|
+
return this.expandedItems.size > 0;
|
|
43
|
+
}
|
|
44
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ExpandableContainerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
45
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "16.2.12", type: ExpandableContainerDirective, isStandalone: true, selector: "[odxExpandableContainer]", inputs: { multiple: ["multiple", "multiple", booleanAttribute] }, providers: [{ provide: ODX_EXPANDABLE_CONTAINER, useExisting: ExpandableContainerDirective }], exportAs: ["odxExpandableContainer"], ngImport: i0 }); }
|
|
46
|
+
}
|
|
47
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ExpandableContainerDirective, decorators: [{
|
|
48
|
+
type: Directive,
|
|
49
|
+
args: [{
|
|
50
|
+
standalone: true,
|
|
51
|
+
selector: '[odxExpandableContainer]',
|
|
52
|
+
exportAs: 'odxExpandableContainer',
|
|
53
|
+
providers: [{ provide: ODX_EXPANDABLE_CONTAINER, useExisting: ExpandableContainerDirective }],
|
|
54
|
+
}]
|
|
55
|
+
}], propDecorators: { multiple: [{
|
|
56
|
+
type: Input,
|
|
57
|
+
args: [{ transform: booleanAttribute }]
|
|
58
|
+
}] } });
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5kYWJsZS1jb250YWluZXIuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2Nkay9leHBhbmRhYmxlL3NyYy9saWIvZGlyZWN0aXZlcy9leHBhbmRhYmxlLWNvbnRhaW5lci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUM5RixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7QUFTckYsTUFBTSxPQUFPLDRCQUE0QjtJQU56QztRQU9tQixrQkFBYSxHQUFHLElBQUksR0FBRyxFQUFrQixDQUFDO1FBQzFDLGVBQVUsR0FBRyxNQUFNLENBQUMsbUJBQW1CLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzdFLG9CQUFlLEdBQUcsTUFBTSxDQUFDLHdCQUF3QixFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUdqRyxhQUFRLEdBQUcsSUFBSSxDQUFDLGVBQWUsRUFBRSxRQUFRLElBQUksS0FBSyxDQUFDO0tBeUMzRDtJQXZDUSxRQUFRO1FBQ2IsSUFBSSxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLFVBQVUsRUFBRSxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFTSxRQUFRLENBQUMsSUFBb0I7UUFDbEMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxJQUFvQjtRQUNoQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNsQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDcEI7UUFDRCxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRU0sTUFBTSxDQUFDLElBQW9CLEVBQUUsVUFBb0I7UUFDdEQsTUFBTSxZQUFZLEdBQUcsVUFBVSxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxRCxJQUFJLFlBQVksRUFBRTtZQUNoQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ25CO2FBQU07WUFDTCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3JCO0lBQ0gsQ0FBQztJQUVNLFVBQVUsQ0FBQyxJQUFvQjtRQUNwQyxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFTSxlQUFlO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7K0dBOUNVLDRCQUE0QjttR0FBNUIsNEJBQTRCLHlHQUtuQixnQkFBZ0IsZ0JBUHpCLENBQUMsRUFBRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsV0FBVyxFQUFFLDRCQUE0QixFQUFFLENBQUM7OzRGQUVsRiw0QkFBNEI7a0JBTnhDLFNBQVM7bUJBQUM7b0JBQ1QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSwwQkFBMEI7b0JBQ3BDLFFBQVEsRUFBRSx3QkFBd0I7b0JBQ2xDLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLFdBQVcsOEJBQThCLEVBQUUsQ0FBQztpQkFDOUY7OEJBT1EsUUFBUTtzQkFEZCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYm9vbGVhbkF0dHJpYnV0ZSwgRGlyZWN0aXZlLCBpbmplY3QsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT0RYX0VYUEFOREFCTEVfQ09OVEFJTkVSLCBPRFhfRVhQQU5EQUJMRV9JVEVNIH0gZnJvbSAnLi4vZXhwYW5kYWJsZS50b2tlbnMnO1xuaW1wb3J0IHR5cGUgeyBFeHBhbmRhYmxlQ29udGFpbmVyLCBFeHBhbmRhYmxlSXRlbSB9IGZyb20gJy4uL2ZhY2FkZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ1tvZHhFeHBhbmRhYmxlQ29udGFpbmVyXScsXG4gIGV4cG9ydEFzOiAnb2R4RXhwYW5kYWJsZUNvbnRhaW5lcicsXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogT0RYX0VYUEFOREFCTEVfQ09OVEFJTkVSLCB1c2VFeGlzdGluZzogRXhwYW5kYWJsZUNvbnRhaW5lckRpcmVjdGl2ZSB9XSxcbn0pXG5leHBvcnQgY2xhc3MgRXhwYW5kYWJsZUNvbnRhaW5lckRpcmVjdGl2ZSBpbXBsZW1lbnRzIEV4cGFuZGFibGVDb250YWluZXIsIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSByZWFkb25seSBleHBhbmRlZEl0ZW1zID0gbmV3IFNldDxFeHBhbmRhYmxlSXRlbT4oKTtcbiAgcHJpdmF0ZSByZWFkb25seSBwYXJlbnRJdGVtID0gaW5qZWN0KE9EWF9FWFBBTkRBQkxFX0lURU0sIHsgb3B0aW9uYWw6IHRydWUsIHNraXBTZWxmOiB0cnVlIH0pO1xuICBwcml2YXRlIHJlYWRvbmx5IHBhcmVudENvbnRhaW5lciA9IGluamVjdChPRFhfRVhQQU5EQUJMRV9DT05UQUlORVIsIHsgb3B0aW9uYWw6IHRydWUsIHNraXBTZWxmOiB0cnVlIH0pO1xuXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KVxuICBwdWJsaWMgbXVsdGlwbGUgPSB0aGlzLnBhcmVudENvbnRhaW5lcj8ubXVsdGlwbGUgPz8gZmFsc2U7XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMucGFyZW50SXRlbT8uYWRkQ2hpbGQodGhpcyk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5wYXJlbnRJdGVtPy5yZW1vdmVDaGlsZCh0aGlzKTtcbiAgfVxuXG4gIHB1YmxpYyBjb2xsYXBzZUFsbCgpOiB2b2lkIHtcbiAgICB0aGlzLmV4cGFuZGVkSXRlbXMuZm9yRWFjaCgoaXRlbSkgPT4gaXRlbS5jb2xsYXBzZSgpKTtcbiAgfVxuXG4gIHB1YmxpYyBjb2xsYXBzZShpdGVtOiBFeHBhbmRhYmxlSXRlbSk6IHZvaWQge1xuICAgIHRoaXMuZXhwYW5kZWRJdGVtcy5kZWxldGUoaXRlbSk7XG4gIH1cblxuICBwdWJsaWMgZXhwYW5kKGl0ZW06IEV4cGFuZGFibGVJdGVtKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLm11bHRpcGxlKSB7XG4gICAgICB0aGlzLmNvbGxhcHNlQWxsKCk7XG4gICAgfVxuICAgIHRoaXMuZXhwYW5kZWRJdGVtcy5hZGQoaXRlbSk7XG4gIH1cblxuICBwdWJsaWMgdG9nZ2xlKGl0ZW06IEV4cGFuZGFibGVJdGVtLCBmb3JjZVN0YXRlPzogYm9vbGVhbik6IHZvaWQge1xuICAgIGNvbnN0IHNob3VsZEV4cGFuZCA9IGZvcmNlU3RhdGUgPz8gIXRoaXMuaXNFeHBhbmRlZChpdGVtKTtcbiAgICBpZiAoc2hvdWxkRXhwYW5kKSB7XG4gICAgICB0aGlzLmV4cGFuZChpdGVtKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jb2xsYXBzZShpdGVtKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaXNFeHBhbmRlZChpdGVtOiBFeHBhbmRhYmxlSXRlbSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmV4cGFuZGVkSXRlbXMuaGFzKGl0ZW0pO1xuICB9XG5cbiAgcHVibGljIGhhc0V4cGFuZGVkSXRlbSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5leHBhbmRlZEl0ZW1zLnNpemUgPiAwO1xuICB9XG59XG4iXX0=
|
|
@@ -1,47 +1,64 @@
|
|
|
1
1
|
import { booleanAttribute, ChangeDetectorRef, Directive, inject, Input } from '@angular/core';
|
|
2
2
|
import { getUniqueId } from '@odx/angular/utils';
|
|
3
|
-
import { ODX_EXPANDABLE_CONTAINER } from '../expandable.tokens';
|
|
3
|
+
import { ODX_EXPANDABLE_CONTAINER, ODX_EXPANDABLE_ITEM } from '../expandable.tokens';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
export class ExpandableItemDirective {
|
|
6
6
|
constructor() {
|
|
7
|
-
this.container = inject(ODX_EXPANDABLE_CONTAINER, { optional: true, skipSelf: true });
|
|
8
7
|
this.changeDetectorRef = inject(ChangeDetectorRef);
|
|
8
|
+
this.childContainers = new Set();
|
|
9
|
+
this.container = inject(ODX_EXPANDABLE_CONTAINER, { optional: true, skipSelf: true });
|
|
9
10
|
this._expanded = false;
|
|
10
11
|
this.id = getUniqueId('odx-expandable-item');
|
|
11
12
|
}
|
|
12
13
|
set expanded(value) {
|
|
14
|
+
if (this._expanded === value)
|
|
15
|
+
return;
|
|
13
16
|
this._expanded = value;
|
|
14
17
|
if (this._expanded) {
|
|
15
|
-
this.container?.
|
|
18
|
+
this.container?.expand(this);
|
|
16
19
|
}
|
|
17
20
|
else {
|
|
18
|
-
this.
|
|
21
|
+
this.closeAllChildren();
|
|
22
|
+
this.container?.collapse(this);
|
|
19
23
|
}
|
|
20
24
|
this.changeDetectorRef.markForCheck();
|
|
21
25
|
}
|
|
22
26
|
get expanded() {
|
|
23
|
-
return this._expanded;
|
|
27
|
+
return this.container?.isExpanded(this) ?? this._expanded;
|
|
24
28
|
}
|
|
25
29
|
toggle(forceState) {
|
|
26
30
|
this.expanded = forceState ?? !this.expanded;
|
|
27
31
|
}
|
|
28
|
-
|
|
32
|
+
expand() {
|
|
29
33
|
this.toggle(true);
|
|
30
34
|
}
|
|
31
|
-
|
|
35
|
+
collapse() {
|
|
32
36
|
this.toggle(false);
|
|
33
37
|
}
|
|
38
|
+
addChild(container) {
|
|
39
|
+
this.childContainers.add(container);
|
|
40
|
+
}
|
|
41
|
+
removeChild(container) {
|
|
42
|
+
this.childContainers.delete(container);
|
|
43
|
+
}
|
|
44
|
+
closeAllChildren() {
|
|
45
|
+
this.childContainers.forEach((container) => container.collapseAll());
|
|
46
|
+
}
|
|
34
47
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ExpandableItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
35
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "16.2.12", type: ExpandableItemDirective, isStandalone: true, selector: "[odxExpandableItem]", inputs: { expanded: ["expanded", "expanded", booleanAttribute] }, ngImport: i0 }); }
|
|
48
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "16.2.12", type: ExpandableItemDirective, isStandalone: true, selector: "[odxExpandableItem]", inputs: { id: "id", expanded: ["expanded", "expanded", booleanAttribute] }, providers: [{ provide: ODX_EXPANDABLE_ITEM, useExisting: ExpandableItemDirective }], exportAs: ["odxExpandableItem"], ngImport: i0 }); }
|
|
36
49
|
}
|
|
37
50
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ExpandableItemDirective, decorators: [{
|
|
38
51
|
type: Directive,
|
|
39
52
|
args: [{
|
|
40
53
|
standalone: true,
|
|
41
54
|
selector: '[odxExpandableItem]',
|
|
55
|
+
exportAs: 'odxExpandableItem',
|
|
56
|
+
providers: [{ provide: ODX_EXPANDABLE_ITEM, useExisting: ExpandableItemDirective }],
|
|
42
57
|
}]
|
|
43
|
-
}], propDecorators: {
|
|
58
|
+
}], propDecorators: { id: [{
|
|
59
|
+
type: Input
|
|
60
|
+
}], expanded: [{
|
|
44
61
|
type: Input,
|
|
45
62
|
args: [{ transform: booleanAttribute }]
|
|
46
63
|
}] } });
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5kYWJsZS1pdGVtLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jZGsvZXhwYW5kYWJsZS9zcmMvbGliL2RpcmVjdGl2ZXMvZXhwYW5kYWJsZS1pdGVtLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2pELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQVNyRixNQUFNLE9BQU8sdUJBQXVCO0lBTnBDO1FBT21CLHNCQUFpQixHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQzlDLG9CQUFlLEdBQUcsSUFBSSxHQUFHLEVBQXVCLENBQUM7UUFDakQsY0FBUyxHQUFHLE1BQU0sQ0FBQyx3QkFBd0IsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDMUYsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUduQixPQUFFLEdBQUcsV0FBVyxDQUFDLHFCQUFxQixDQUFDLENBQUM7S0F5Q2hEO0lBdkNDLElBQ1csUUFBUSxDQUFDLEtBQWM7UUFDaEMsSUFBSSxJQUFJLENBQUMsU0FBUyxLQUFLLEtBQUs7WUFBRSxPQUFPO1FBQ3JDLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNsQixJQUFJLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM5QjthQUFNO1lBQ0wsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDaEM7UUFDRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUNELElBQVcsUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxTQUFTLEVBQUUsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDNUQsQ0FBQztJQUVNLE1BQU0sQ0FBQyxVQUFvQjtRQUNoQyxJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDL0MsQ0FBQztJQUVNLE1BQU07UUFDWCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRU0sUUFBUSxDQUFDLFNBQThCO1FBQzVDLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFTSxXQUFXLENBQUMsU0FBOEI7UUFDL0MsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVPLGdCQUFnQjtRQUN0QixJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDdkUsQ0FBQzsrR0EvQ1UsdUJBQXVCO21HQUF2Qix1QkFBdUIsOEdBU2QsZ0JBQWdCLGdCQVh6QixDQUFDLEVBQUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFdBQVcsRUFBRSx1QkFBdUIsRUFBRSxDQUFDOzs0RkFFeEUsdUJBQXVCO2tCQU5uQyxTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUscUJBQXFCO29CQUMvQixRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixTQUFTLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxXQUFXLHlCQUF5QixFQUFFLENBQUM7aUJBQ3BGOzhCQVFRLEVBQUU7c0JBRFIsS0FBSztnQkFJSyxRQUFRO3NCQURsQixLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYm9vbGVhbkF0dHJpYnV0ZSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIERpcmVjdGl2ZSwgaW5qZWN0LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZ2V0VW5pcXVlSWQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuaW1wb3J0IHsgT0RYX0VYUEFOREFCTEVfQ09OVEFJTkVSLCBPRFhfRVhQQU5EQUJMRV9JVEVNIH0gZnJvbSAnLi4vZXhwYW5kYWJsZS50b2tlbnMnO1xuaW1wb3J0IHR5cGUgeyBFeHBhbmRhYmxlQ29udGFpbmVyLCBFeHBhbmRhYmxlSXRlbSB9IGZyb20gJy4uL2ZhY2FkZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ1tvZHhFeHBhbmRhYmxlSXRlbV0nLFxuICBleHBvcnRBczogJ29keEV4cGFuZGFibGVJdGVtJyxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBPRFhfRVhQQU5EQUJMRV9JVEVNLCB1c2VFeGlzdGluZzogRXhwYW5kYWJsZUl0ZW1EaXJlY3RpdmUgfV0sXG59KVxuZXhwb3J0IGNsYXNzIEV4cGFuZGFibGVJdGVtRGlyZWN0aXZlIGltcGxlbWVudHMgRXhwYW5kYWJsZUl0ZW0ge1xuICBwcml2YXRlIHJlYWRvbmx5IGNoYW5nZURldGVjdG9yUmVmID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgcHJpdmF0ZSByZWFkb25seSBjaGlsZENvbnRhaW5lcnMgPSBuZXcgU2V0PEV4cGFuZGFibGVDb250YWluZXI+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgY29udGFpbmVyID0gaW5qZWN0KE9EWF9FWFBBTkRBQkxFX0NPTlRBSU5FUiwgeyBvcHRpb25hbDogdHJ1ZSwgc2tpcFNlbGY6IHRydWUgfSk7XG4gIHByaXZhdGUgX2V4cGFuZGVkID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGlkID0gZ2V0VW5pcXVlSWQoJ29keC1leHBhbmRhYmxlLWl0ZW0nKTtcblxuICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSlcbiAgcHVibGljIHNldCBleHBhbmRlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICh0aGlzLl9leHBhbmRlZCA9PT0gdmFsdWUpIHJldHVybjtcbiAgICB0aGlzLl9leHBhbmRlZCA9IHZhbHVlO1xuICAgIGlmICh0aGlzLl9leHBhbmRlZCkge1xuICAgICAgdGhpcy5jb250YWluZXI/LmV4cGFuZCh0aGlzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jbG9zZUFsbENoaWxkcmVuKCk7XG4gICAgICB0aGlzLmNvbnRhaW5lcj8uY29sbGFwc2UodGhpcyk7XG4gICAgfVxuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gIH1cbiAgcHVibGljIGdldCBleHBhbmRlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5jb250YWluZXI/LmlzRXhwYW5kZWQodGhpcykgPz8gdGhpcy5fZXhwYW5kZWQ7XG4gIH1cblxuICBwdWJsaWMgdG9nZ2xlKGZvcmNlU3RhdGU/OiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5leHBhbmRlZCA9IGZvcmNlU3RhdGUgPz8gIXRoaXMuZXhwYW5kZWQ7XG4gIH1cblxuICBwdWJsaWMgZXhwYW5kKCk6IHZvaWQge1xuICAgIHRoaXMudG9nZ2xlKHRydWUpO1xuICB9XG5cbiAgcHVibGljIGNvbGxhcHNlKCk6IHZvaWQge1xuICAgIHRoaXMudG9nZ2xlKGZhbHNlKTtcbiAgfVxuXG4gIHB1YmxpYyBhZGRDaGlsZChjb250YWluZXI6IEV4cGFuZGFibGVDb250YWluZXIpOiB2b2lkIHtcbiAgICB0aGlzLmNoaWxkQ29udGFpbmVycy5hZGQoY29udGFpbmVyKTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVDaGlsZChjb250YWluZXI6IEV4cGFuZGFibGVDb250YWluZXIpOiB2b2lkIHtcbiAgICB0aGlzLmNoaWxkQ29udGFpbmVycy5kZWxldGUoY29udGFpbmVyKTtcbiAgfVxuXG4gIHByaXZhdGUgY2xvc2VBbGxDaGlsZHJlbigpOiB2b2lkIHtcbiAgICB0aGlzLmNoaWxkQ29udGFpbmVycy5mb3JFYWNoKChjb250YWluZXIpID0+IGNvbnRhaW5lci5jb2xsYXBzZUFsbCgpKTtcbiAgfVxufVxuIl19
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
+
export * from './expandable-container.directive';
|
|
1
2
|
export * from './expandable-item.directive';
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY2RrL2V4cGFuZGFibGUvc3JjL2xpYi9kaXJlY3RpdmVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyxrQ0FBa0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZXhwYW5kYWJsZS1pdGVtLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2V4dGFuZGFibGUtY29udGFpbmVyLmRpcmVjdGl2ZSc7XG4iXX0=
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY2RrL2V4cGFuZGFibGUvc3JjL2xpYi9kaXJlY3RpdmVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyw2QkFBNkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZXhwYW5kYWJsZS1jb250YWluZXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZXhwYW5kYWJsZS1pdGVtLmRpcmVjdGl2ZSc7XG4iXX0=
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import { InjectionToken } from '@angular/core';
|
|
2
2
|
export const ODX_EXPANDABLE_CONTAINER = new InjectionToken('@odx/angular/cdk/expandable::ExpandableContainer');
|
|
3
|
-
|
|
3
|
+
export const ODX_EXPANDABLE_ITEM = new InjectionToken('@odx/angular/cdk/expandable::ExpandableItem');
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5kYWJsZS50b2tlbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY2RrL2V4cGFuZGFibGUvc3JjL2xpYi9leHBhbmRhYmxlLnRva2Vucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRy9DLE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLElBQUksY0FBYyxDQUFzQixrREFBa0QsQ0FBQyxDQUFDO0FBQ3BJLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLElBQUksY0FBYyxDQUFpQiw2Q0FBNkMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEV4cGFuZGFibGVDb250YWluZXIsIEV4cGFuZGFibGVJdGVtIH0gZnJvbSAnLi9mYWNhZGUnO1xuXG5leHBvcnQgY29uc3QgT0RYX0VYUEFOREFCTEVfQ09OVEFJTkVSID0gbmV3IEluamVjdGlvblRva2VuPEV4cGFuZGFibGVDb250YWluZXI+KCdAb2R4L2FuZ3VsYXIvY2RrL2V4cGFuZGFibGU6OkV4cGFuZGFibGVDb250YWluZXInKTtcbmV4cG9ydCBjb25zdCBPRFhfRVhQQU5EQUJMRV9JVEVNID0gbmV3IEluamVjdGlvblRva2VuPEV4cGFuZGFibGVJdGVtPignQG9keC9hbmd1bGFyL2Nkay9leHBhbmRhYmxlOjpFeHBhbmRhYmxlSXRlbScpO1xuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5kYWJsZS1jb250YWluZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY2RrL2V4cGFuZGFibGUvc3JjL2xpYi9mYWNhZGUvZXhwYW5kYWJsZS1jb250YWluZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV4cGFuZGFibGVJdGVtIH0gZnJvbSAnLi9leHBhbmRhYmxlLWl0ZW0nO1xuXG5leHBvcnQgaW50ZXJmYWNlIEV4cGFuZGFibGVDb250YWluZXIge1xuICBtdWx0aXBsZTogYm9vbGVhbjtcblxuICBjb2xsYXBzZUFsbCgpOiB2b2lkO1xuICBjb2xsYXBzZShpdGVtOiBFeHBhbmRhYmxlSXRlbSk6IHZvaWQ7XG4gIGV4cGFuZChpdGVtOiBFeHBhbmRhYmxlSXRlbSk6IHZvaWQ7XG4gIHRvZ2dsZShpdGVtOiBFeHBhbmRhYmxlSXRlbSk6IHZvaWQ7XG4gIGlzRXhwYW5kZWQoaXRlbTogRXhwYW5kYWJsZUl0ZW0pOiBib29sZWFuO1xuICBoYXNFeHBhbmRlZEl0ZW0oKTogYm9vbGVhbjtcbn1cbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwYW5kYWJsZS1pdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2Nkay9leHBhbmRhYmxlL3NyYy9saWIvZmFjYWRlL2V4cGFuZGFibGUtaXRlbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXhwYW5kYWJsZUNvbnRhaW5lciB9IGZyb20gJy4vZXhwYW5kYWJsZS1jb250YWluZXInO1xuXG5leHBvcnQgaW50ZXJmYWNlIEV4cGFuZGFibGVJdGVtIHtcbiAgaWQ6IHN0cmluZztcbiAgZXhwYW5kZWQ6IGJvb2xlYW47XG5cbiAgY29sbGFwc2UoKTogdm9pZDtcbiAgZXhwYW5kKCk6IHZvaWQ7XG4gIHRvZ2dsZSgpOiB2b2lkO1xuICBhZGRDaGlsZChjb250YWluZXI6IEV4cGFuZGFibGVDb250YWluZXIpOiB2b2lkO1xuICByZW1vdmVDaGlsZChjb250YWluZXI6IEV4cGFuZGFibGVDb250YWluZXIpOiB2b2lkO1xufVxuIl19
|
|
@@ -1,24 +1,22 @@
|
|
|
1
|
-
var AccordionComponent_1;
|
|
2
1
|
import { __decorate } from "tslib";
|
|
3
|
-
import { ChangeDetectionStrategy, Component,
|
|
4
|
-
import { ExpandableContainerDirective
|
|
2
|
+
import { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';
|
|
3
|
+
import { ExpandableContainerDirective } from '@odx/angular/cdk/expandable';
|
|
5
4
|
import { CSSComponent } from '@odx/angular/internal';
|
|
6
5
|
import { injectElement } from '@odx/angular/utils';
|
|
7
6
|
import * as i0 from "@angular/core";
|
|
8
|
-
|
|
7
|
+
import * as i1 from "@odx/angular/cdk/expandable";
|
|
8
|
+
export let AccordionComponent = class AccordionComponent {
|
|
9
9
|
constructor() {
|
|
10
|
-
super(...arguments);
|
|
11
10
|
this.element = injectElement();
|
|
12
11
|
}
|
|
13
|
-
static {
|
|
14
|
-
static { this.ɵ
|
|
15
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AccordionComponent, isStandalone: true, selector: "odx-accordion", providers: [{ provide: ODX_EXPANDABLE_CONTAINER, useExisting: forwardRef(() => AccordionComponent_1) }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"odx-accordion-item\"></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
12
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AccordionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
13
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AccordionComponent, isStandalone: true, selector: "odx-accordion", hostDirectives: [{ directive: i1.ExpandableContainerDirective, inputs: ["multiple", "multiple"] }], ngImport: i0, template: "<ng-content select=\"odx-accordion-item\"></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
16
14
|
};
|
|
17
|
-
AccordionComponent =
|
|
15
|
+
AccordionComponent = __decorate([
|
|
18
16
|
CSSComponent('accordion')
|
|
19
17
|
], AccordionComponent);
|
|
20
18
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AccordionComponent, decorators: [{
|
|
21
19
|
type: Component,
|
|
22
|
-
args: [{ selector: 'odx-accordion', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None,
|
|
20
|
+
args: [{ selector: 'odx-accordion', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, hostDirectives: [{ directive: ExpandableContainerDirective, inputs: ['multiple'] }], template: "<ng-content select=\"odx-accordion-item\"></ng-content>\n" }]
|
|
23
21
|
}] });
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9jb21wb25lbnRzL2FjY29yZGlvbi9zcmMvbGliL2FjY29yZGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9hY2NvcmRpb24vc3JjL2xpYi9hY2NvcmRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEYsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDM0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7O0FBVzVDLFdBQU0sa0JBQWtCLEdBQXhCLE1BQU0sa0JBQWtCO0lBQXhCO1FBQ1csWUFBTyxHQUFHLGFBQWEsRUFBRSxDQUFDO0tBQzNDOytHQUZZLGtCQUFrQjttR0FBbEIsa0JBQWtCLDZLQ2QvQiwyREFDQTs7QURhYSxrQkFBa0I7SUFUOUIsWUFBWSxDQUFDLFdBQVcsQ0FBQztHQVNiLGtCQUFrQixDQUU5Qjs0RkFGWSxrQkFBa0I7a0JBUjlCLFNBQVM7K0JBQ0UsZUFBZSxjQUViLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSSxrQkFDckIsQ0FBQyxFQUFFLFNBQVMsRUFBRSw0QkFBNEIsRUFBRSxNQUFNLEVBQUUsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEV4cGFuZGFibGVDb250YWluZXJEaXJlY3RpdmUgfSBmcm9tICdAb2R4L2FuZ3VsYXIvY2RrL2V4cGFuZGFibGUnO1xuaW1wb3J0IHsgQ1NTQ29tcG9uZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL2ludGVybmFsJztcbmltcG9ydCB7IGluamVjdEVsZW1lbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvdXRpbHMnO1xuXG5AQ1NTQ29tcG9uZW50KCdhY2NvcmRpb24nKVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnb2R4LWFjY29yZGlvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9hY2NvcmRpb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgaG9zdERpcmVjdGl2ZXM6IFt7IGRpcmVjdGl2ZTogRXhwYW5kYWJsZUNvbnRhaW5lckRpcmVjdGl2ZSwgaW5wdXRzOiBbJ211bHRpcGxlJ10gfV0sXG59KVxuZXhwb3J0IGNsYXNzIEFjY29yZGlvbkNvbXBvbmVudCB7XG4gIHB1YmxpYyByZWFkb25seSBlbGVtZW50ID0gaW5qZWN0RWxlbWVudCgpO1xufVxuIiwiPG5nLWNvbnRlbnQgc2VsZWN0PVwib2R4LWFjY29yZGlvbi1pdGVtXCI+PC9uZy1jb250ZW50PlxuIl19
|
package/esm2022/components/accordion/lib/components/accordion-item/accordion-item.component.mjs
CHANGED
|
@@ -1,56 +1,56 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
2
|
import { transition, trigger, useAnimation } from '@angular/animations';
|
|
3
|
-
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';
|
|
3
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation, inject } from '@angular/core';
|
|
4
4
|
import { CoreModule, DisabledController } from '@odx/angular';
|
|
5
5
|
import { collapse, expand } from '@odx/angular/animations';
|
|
6
6
|
import { A11yModule } from '@odx/angular/cdk/a11y';
|
|
7
7
|
import { ExpandableItemDirective } from '@odx/angular/cdk/expandable';
|
|
8
8
|
import { IconComponent } from '@odx/angular/components/icon';
|
|
9
9
|
import { CSSComponent } from '@odx/angular/internal';
|
|
10
|
-
import {
|
|
10
|
+
import { injectElement } from '@odx/angular/utils';
|
|
11
11
|
import * as i0 from "@angular/core";
|
|
12
|
-
import * as i1 from "@angular/
|
|
13
|
-
import * as i2 from "@
|
|
14
|
-
|
|
12
|
+
import * as i1 from "@odx/angular/cdk/expandable";
|
|
13
|
+
import * as i2 from "@angular/common";
|
|
14
|
+
import * as i3 from "@odx/angular/cdk/a11y";
|
|
15
|
+
export let AccordionItemComponent = class AccordionItemComponent {
|
|
15
16
|
constructor() {
|
|
16
|
-
super(...arguments);
|
|
17
17
|
this.disabledController = DisabledController.inject();
|
|
18
|
+
this.expandableItem = inject(ExpandableItemDirective, { self: true });
|
|
18
19
|
this.element = injectElement();
|
|
19
|
-
this.id = getUniqueId('odx-accordion-item');
|
|
20
20
|
this.expandedChange = new EventEmitter();
|
|
21
21
|
}
|
|
22
22
|
get isDisabled() {
|
|
23
23
|
return !!this.disabledController?.disabled;
|
|
24
24
|
}
|
|
25
25
|
get isExpanded() {
|
|
26
|
-
return !this.isDisabled && this.expanded;
|
|
26
|
+
return !this.isDisabled && this.expandableItem.expanded;
|
|
27
27
|
}
|
|
28
28
|
get titleId() {
|
|
29
|
-
return `${this.id}-title`;
|
|
29
|
+
return `${this.expandableItem.id}-title`;
|
|
30
30
|
}
|
|
31
31
|
get slotId() {
|
|
32
|
-
return `${this.id}-slot`;
|
|
32
|
+
return `${this.expandableItem.id}-slot`;
|
|
33
33
|
}
|
|
34
34
|
onAnimationEnd() {
|
|
35
|
-
this.expandedChange.emit(this.expanded);
|
|
35
|
+
this.expandedChange.emit(this.expandableItem.expanded);
|
|
36
36
|
}
|
|
37
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AccordionItemComponent, deps:
|
|
38
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AccordionItemComponent, isStandalone: true, selector: "odx-accordion-item", inputs: { title: "title" }, outputs: { expandedChange: "expandedChange" }, host: { properties: { "class.is-disabled": "isDisabled", "class.odx-accordion-item--expanded": "isExpanded", "attr.id": "id", "attr.title": "null" } }, providers: [DisabledController.connect()],
|
|
37
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AccordionItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
38
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AccordionItemComponent, isStandalone: true, selector: "odx-accordion-item", inputs: { title: "title" }, outputs: { expandedChange: "expandedChange" }, host: { properties: { "class.is-disabled": "isDisabled", "class.odx-accordion-item--expanded": "isExpanded", "attr.id": "expandableItem.id", "attr.title": "null" } }, providers: [DisabledController.connect()], hostDirectives: [{ directive: i1.ExpandableItemDirective, inputs: ["expanded", "expanded", "id", "id"] }], ngImport: i0, template: "<div\n role=\"button\"\n class=\"odx-accordion-item__panel\"\n [attr.id]=\"titleId\"\n [attr.aria-expanded]=\"isExpanded\"\n [attr.aria-controls]=\"slotId\"\n (odxCdkInteractive)=\"expandableItem.toggle()\"\n>\n <div *ngIf=\"title; else titleTpl\">\n {{ title }}\n </div>\n <ng-template #titleTpl>\n <ng-content select=\"odx-accordion-item-title\"></ng-content>\n </ng-template>\n <odx-icon class=\"odx-accordion-item__icon\" name=\"chevron-down\" iconSet=\"core\"></odx-icon>\n</div>\n<div\n class=\"odx-accordion-item__slot\"\n [attr.id]=\"slotId\"\n [attr.aria-labelledby]=\"titleId\"\n @expandSlotAnimation\n (@expandSlotAnimation.done)=\"onAnimationEnd()\"\n *ngIf=\"isExpanded\"\n>\n <ng-content></ng-content>\n</div>\n", dependencies: [{ kind: "ngmodule", type: A11yModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.InteractiveDirective, selector: "[odxCdkInteractive]", outputs: ["odxCdkInteractive"] }, { kind: "ngmodule", type: CoreModule }, { kind: "component", type: IconComponent, selector: "odx-icon", inputs: ["inline", "size", "name", "iconSet"] }], animations: [trigger('expandSlotAnimation', [transition(':enter', [useAnimation(expand)]), transition(':leave', [useAnimation(collapse)])])], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
39
39
|
};
|
|
40
40
|
AccordionItemComponent = __decorate([
|
|
41
41
|
CSSComponent('accordion-item')
|
|
42
42
|
], AccordionItemComponent);
|
|
43
43
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AccordionItemComponent, decorators: [{
|
|
44
44
|
type: Component,
|
|
45
|
-
args: [{ selector: 'odx-accordion-item', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [A11yModule, CoreModule, IconComponent], providers: [DisabledController.connect()], host: {
|
|
45
|
+
args: [{ selector: 'odx-accordion-item', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [A11yModule, CoreModule, IconComponent], providers: [DisabledController.connect()], hostDirectives: [{ directive: ExpandableItemDirective, inputs: ['expanded', 'id'] }], host: {
|
|
46
46
|
'[class.is-disabled]': 'isDisabled',
|
|
47
47
|
'[class.odx-accordion-item--expanded]': 'isExpanded',
|
|
48
|
-
'[attr.id]': 'id',
|
|
48
|
+
'[attr.id]': 'expandableItem.id',
|
|
49
49
|
'[attr.title]': 'null',
|
|
50
|
-
}, animations: [trigger('expandSlotAnimation', [transition(':enter', [useAnimation(expand)]), transition(':leave', [useAnimation(collapse)])])], template: "<div\n role=\"button\"\n class=\"odx-accordion-item__panel\"\n [attr.id]=\"titleId\"\n [attr.aria-expanded]=\"isExpanded\"\n [attr.aria-controls]=\"slotId\"\n (odxCdkInteractive)=\"toggle()\"\n>\n <div *ngIf=\"title; else titleTpl\">\n {{ title }}\n </div>\n <ng-template #titleTpl>\n <ng-content select=\"odx-accordion-item-title\"></ng-content>\n </ng-template>\n <odx-icon class=\"odx-accordion-item__icon\" name=\"chevron-down\" iconSet=\"core\"></odx-icon>\n</div>\n<div\n class=\"odx-accordion-item__slot\"\n [attr.id]=\"slotId\"\n [attr.aria-labelledby]=\"titleId\"\n @expandSlotAnimation\n (@expandSlotAnimation.done)=\"onAnimationEnd()\"\n *ngIf=\"isExpanded\"\n>\n <ng-content></ng-content>\n</div>\n" }]
|
|
50
|
+
}, animations: [trigger('expandSlotAnimation', [transition(':enter', [useAnimation(expand)]), transition(':leave', [useAnimation(collapse)])])], template: "<div\n role=\"button\"\n class=\"odx-accordion-item__panel\"\n [attr.id]=\"titleId\"\n [attr.aria-expanded]=\"isExpanded\"\n [attr.aria-controls]=\"slotId\"\n (odxCdkInteractive)=\"expandableItem.toggle()\"\n>\n <div *ngIf=\"title; else titleTpl\">\n {{ title }}\n </div>\n <ng-template #titleTpl>\n <ng-content select=\"odx-accordion-item-title\"></ng-content>\n </ng-template>\n <odx-icon class=\"odx-accordion-item__icon\" name=\"chevron-down\" iconSet=\"core\"></odx-icon>\n</div>\n<div\n class=\"odx-accordion-item__slot\"\n [attr.id]=\"slotId\"\n [attr.aria-labelledby]=\"titleId\"\n @expandSlotAnimation\n (@expandSlotAnimation.done)=\"onAnimationEnd()\"\n *ngIf=\"isExpanded\"\n>\n <ng-content></ng-content>\n</div>\n" }]
|
|
51
51
|
}], propDecorators: { title: [{
|
|
52
52
|
type: Input
|
|
53
53
|
}], expandedChange: [{
|
|
54
54
|
type: Output
|
|
55
55
|
}] } });
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL2NvbXBvbmVudHMvYWNjb3JkaW9uL3NyYy9saWIvY29tcG9uZW50cy9hY2NvcmRpb24taXRlbS9hY2NvcmRpb24taXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvY29tcG9uZW50cy9hY2NvcmRpb24vc3JjL2xpYi9jb21wb25lbnRzL2FjY29yZGlvbi1pdGVtL2FjY29yZGlvbi1pdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzSCxPQUFPLEVBQUUsVUFBVSxFQUFFLGtCQUFrQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzlELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ25ELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7OztBQW9CNUMsV0FBTSxzQkFBc0IsR0FBNUIsTUFBTSxzQkFBc0I7SUFBNUI7UUFDWSx1QkFBa0IsR0FBRyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUMvQyxtQkFBYyxHQUFHLE1BQU0sQ0FBQyx1QkFBdUIsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3BFLFlBQU8sR0FBRyxhQUFhLEVBQUUsQ0FBQztRQU1uQyxtQkFBYyxHQUEwQixJQUFJLFlBQVksRUFBRSxDQUFDO0tBcUJuRTtJQW5CQyxJQUFXLFVBQVU7UUFDbkIsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLFFBQVEsQ0FBQztJQUM3QyxDQUFDO0lBRUQsSUFBVyxVQUFVO1FBQ25CLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDO0lBQzFELENBQUM7SUFFRCxJQUFXLE9BQU87UUFDaEIsT0FBTyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsRUFBRSxRQUFRLENBQUM7SUFDM0MsQ0FBQztJQUVELElBQVcsTUFBTTtRQUNmLE9BQU8sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEVBQUUsT0FBTyxDQUFDO0lBQzFDLENBQUM7SUFFTSxjQUFjO1FBQ25CLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDekQsQ0FBQzsrR0E3QlUsc0JBQXNCO21HQUF0QixzQkFBc0IsbVRBVnRCLENBQUMsa0JBQWtCLENBQUMsT0FBTyxFQUFFLENBQUMscUlDbEIzQywrdUJBMEJBLDJDRFRZLFVBQVUseVBBQUUsVUFBVSwrQkFBRSxhQUFhLHNGQVNuQyxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzs7QUFFakksc0JBQXNCO0lBbEJsQyxZQUFZLENBQUMsZ0JBQWdCLENBQUM7R0FrQmxCLHNCQUFzQixDQThCbEM7NEZBOUJZLHNCQUFzQjtrQkFqQmxDLFNBQVM7K0JBQ0Usb0JBQW9CLGNBRWxCLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSSxXQUM1QixDQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUUsYUFBYSxDQUFDLGFBQ3JDLENBQUMsa0JBQWtCLENBQUMsT0FBTyxFQUFFLENBQUMsa0JBQ3pCLENBQUMsRUFBRSxTQUFTLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxFQUFFLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsUUFDOUU7d0JBQ0oscUJBQXFCLEVBQUUsWUFBWTt3QkFDbkMsc0NBQXNDLEVBQUUsWUFBWTt3QkFDcEQsV0FBVyxFQUFFLG1CQUFtQjt3QkFDaEMsY0FBYyxFQUFFLE1BQU07cUJBQ3ZCLGNBQ1csQ0FBQyxPQUFPLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7OEJBUXJJLEtBQUs7c0JBRFgsS0FBSztnQkFJQyxjQUFjO3NCQURwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHJhbnNpdGlvbiwgdHJpZ2dlciwgdXNlQW5pbWF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9uLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvcmVNb2R1bGUsIERpc2FibGVkQ29udHJvbGxlciB9IGZyb20gJ0BvZHgvYW5ndWxhcic7XG5pbXBvcnQgeyBjb2xsYXBzZSwgZXhwYW5kIH0gZnJvbSAnQG9keC9hbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgQTExeU1vZHVsZSB9IGZyb20gJ0BvZHgvYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBFeHBhbmRhYmxlSXRlbURpcmVjdGl2ZSB9IGZyb20gJ0BvZHgvYW5ndWxhci9jZGsvZXhwYW5kYWJsZSc7XG5pbXBvcnQgeyBJY29uQ29tcG9uZW50IH0gZnJvbSAnQG9keC9hbmd1bGFyL2NvbXBvbmVudHMvaWNvbic7XG5pbXBvcnQgeyBDU1NDb21wb25lbnQgfSBmcm9tICdAb2R4L2FuZ3VsYXIvaW50ZXJuYWwnO1xuaW1wb3J0IHsgaW5qZWN0RWxlbWVudCB9IGZyb20gJ0BvZHgvYW5ndWxhci91dGlscyc7XG5cbkBDU1NDb21wb25lbnQoJ2FjY29yZGlvbi1pdGVtJylcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ29keC1hY2NvcmRpb24taXRlbScsXG4gIHRlbXBsYXRlVXJsOiAnLi9hY2NvcmRpb24taXRlbS5jb21wb25lbnQuaHRtbCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBpbXBvcnRzOiBbQTExeU1vZHVsZSwgQ29yZU1vZHVsZSwgSWNvbkNvbXBvbmVudF0sXG4gIHByb3ZpZGVyczogW0Rpc2FibGVkQ29udHJvbGxlci5jb25uZWN0KCldLFxuICBob3N0RGlyZWN0aXZlczogW3sgZGlyZWN0aXZlOiBFeHBhbmRhYmxlSXRlbURpcmVjdGl2ZSwgaW5wdXRzOiBbJ2V4cGFuZGVkJywgJ2lkJ10gfV0sXG4gIGhvc3Q6IHtcbiAgICAnW2NsYXNzLmlzLWRpc2FibGVkXSc6ICdpc0Rpc2FibGVkJyxcbiAgICAnW2NsYXNzLm9keC1hY2NvcmRpb24taXRlbS0tZXhwYW5kZWRdJzogJ2lzRXhwYW5kZWQnLFxuICAgICdbYXR0ci5pZF0nOiAnZXhwYW5kYWJsZUl0ZW0uaWQnLFxuICAgICdbYXR0ci50aXRsZV0nOiAnbnVsbCcsXG4gIH0sXG4gIGFuaW1hdGlvbnM6IFt0cmlnZ2VyKCdleHBhbmRTbG90QW5pbWF0aW9uJywgW3RyYW5zaXRpb24oJzplbnRlcicsIFt1c2VBbmltYXRpb24oZXhwYW5kKV0pLCB0cmFuc2l0aW9uKCc6bGVhdmUnLCBbdXNlQW5pbWF0aW9uKGNvbGxhcHNlKV0pXSldLFxufSlcbmV4cG9ydCBjbGFzcyBBY2NvcmRpb25JdGVtQ29tcG9uZW50IHtcbiAgcHJpdmF0ZSByZWFkb25seSBkaXNhYmxlZENvbnRyb2xsZXIgPSBEaXNhYmxlZENvbnRyb2xsZXIuaW5qZWN0KCk7XG4gIHByb3RlY3RlZCByZWFkb25seSBleHBhbmRhYmxlSXRlbSA9IGluamVjdChFeHBhbmRhYmxlSXRlbURpcmVjdGl2ZSwgeyBzZWxmOiB0cnVlIH0pO1xuICBwdWJsaWMgcmVhZG9ubHkgZWxlbWVudCA9IGluamVjdEVsZW1lbnQoKTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgdGl0bGU/OiBzdHJpbmcgfCBudWxsO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgZXhwYW5kZWRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBwdWJsaWMgZ2V0IGlzRGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5kaXNhYmxlZENvbnRyb2xsZXI/LmRpc2FibGVkO1xuICB9XG5cbiAgcHVibGljIGdldCBpc0V4cGFuZGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy5pc0Rpc2FibGVkICYmIHRoaXMuZXhwYW5kYWJsZUl0ZW0uZXhwYW5kZWQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHRpdGxlSWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYCR7dGhpcy5leHBhbmRhYmxlSXRlbS5pZH0tdGl0bGVgO1xuICB9XG5cbiAgcHVibGljIGdldCBzbG90SWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYCR7dGhpcy5leHBhbmRhYmxlSXRlbS5pZH0tc2xvdGA7XG4gIH1cblxuICBwdWJsaWMgb25BbmltYXRpb25FbmQoKTogdm9pZCB7XG4gICAgdGhpcy5leHBhbmRlZENoYW5nZS5lbWl0KHRoaXMuZXhwYW5kYWJsZUl0ZW0uZXhwYW5kZWQpO1xuICB9XG59XG4iLCI8ZGl2XG4gIHJvbGU9XCJidXR0b25cIlxuICBjbGFzcz1cIm9keC1hY2NvcmRpb24taXRlbV9fcGFuZWxcIlxuICBbYXR0ci5pZF09XCJ0aXRsZUlkXCJcbiAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCJpc0V4cGFuZGVkXCJcbiAgW2F0dHIuYXJpYS1jb250cm9sc109XCJzbG90SWRcIlxuICAob2R4Q2RrSW50ZXJhY3RpdmUpPVwiZXhwYW5kYWJsZUl0ZW0udG9nZ2xlKClcIlxuPlxuICA8ZGl2ICpuZ0lmPVwidGl0bGU7IGVsc2UgdGl0bGVUcGxcIj5cbiAgICB7eyB0aXRsZSB9fVxuICA8L2Rpdj5cbiAgPG5nLXRlbXBsYXRlICN0aXRsZVRwbD5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJvZHgtYWNjb3JkaW9uLWl0ZW0tdGl0bGVcIj48L25nLWNvbnRlbnQ+XG4gIDwvbmctdGVtcGxhdGU+XG4gIDxvZHgtaWNvbiBjbGFzcz1cIm9keC1hY2NvcmRpb24taXRlbV9faWNvblwiIG5hbWU9XCJjaGV2cm9uLWRvd25cIiBpY29uU2V0PVwiY29yZVwiPjwvb2R4LWljb24+XG48L2Rpdj5cbjxkaXZcbiAgY2xhc3M9XCJvZHgtYWNjb3JkaW9uLWl0ZW1fX3Nsb3RcIlxuICBbYXR0ci5pZF09XCJzbG90SWRcIlxuICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwidGl0bGVJZFwiXG4gIEBleHBhbmRTbG90QW5pbWF0aW9uXG4gIChAZXhwYW5kU2xvdEFuaW1hdGlvbi5kb25lKT1cIm9uQW5pbWF0aW9uRW5kKClcIlxuICAqbmdJZj1cImlzRXhwYW5kZWRcIlxuPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2Rpdj5cbiJdfQ==
|