@acorex/components 19.15.0-next.26 → 19.15.0-next.28
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/accordion/lib/accordion-group/accordion-group.component.d.ts +2 -3
- package/action-sheet/index.d.ts +0 -1
- package/fesm2022/acorex-components-accordion.mjs +6 -7
- package/fesm2022/acorex-components-accordion.mjs.map +1 -1
- package/fesm2022/acorex-components-action-sheet.mjs +1 -18
- package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
- package/fesm2022/acorex-components-file-explorer.mjs +1 -1
- package/fesm2022/acorex-components-file-explorer.mjs.map +1 -1
- package/fesm2022/acorex-components-tree-view.mjs +4 -3
- package/fesm2022/acorex-components-tree-view.mjs.map +1 -1
- package/package.json +1 -1
- package/tree-view/lib/tree-view.component.d.ts +2 -1
- package/action-sheet/lib/action-sheet.component.stories.d.ts +0 -7
@@ -4,10 +4,9 @@ export declare class AXAccordionGroupComponent {
|
|
4
4
|
#private;
|
5
5
|
private accordionGroup;
|
6
6
|
accordion: import("@angular/core").InputSignal<boolean>;
|
7
|
-
activeIndex: import("@angular/core").
|
7
|
+
activeIndex: import("@angular/core").ModelSignal<number | number[]>;
|
8
8
|
look: import("@angular/core").InputSignal<string>;
|
9
|
-
activeIndexChange: import("@angular/core").OutputEmitterRef<number>;
|
10
9
|
private get __hostClass();
|
11
10
|
static ɵfac: i0.ɵɵFactoryDeclaration<AXAccordionGroupComponent, never>;
|
12
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AXAccordionGroupComponent, "ax-accordion-group", never, { "accordion": { "alias": "accordion"; "required": false; "isSignal": true; }; "activeIndex": { "alias": "activeIndex"; "required": false; "isSignal": true; }; "look": { "alias": "look"; "required": false; "isSignal": true; }; }, { "
|
11
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AXAccordionGroupComponent, "ax-accordion-group", never, { "accordion": { "alias": "accordion"; "required": false; "isSignal": true; }; "activeIndex": { "alias": "activeIndex"; "required": false; "isSignal": true; }; "look": { "alias": "look"; "required": false; "isSignal": true; }; }, { "activeIndex": "activeIndexChange"; }, never, ["ax-accordion-item"], true, [{ directive: typeof i1.AXAccordionGroupDirective; inputs: {}; outputs: {}; }]>;
|
13
12
|
}
|
package/action-sheet/index.d.ts
CHANGED
@@ -6,18 +6,17 @@ import { AXLoadingModule } from '@acorex/components/loading';
|
|
6
6
|
import * as i3 from '@angular/common';
|
7
7
|
import { CommonModule } from '@angular/common';
|
8
8
|
import * as i0 from '@angular/core';
|
9
|
-
import { inject, input,
|
9
|
+
import { inject, input, model, afterNextRender, effect, HostBinding, ViewEncapsulation, ChangeDetectionStrategy, Component, output, NgModule } from '@angular/core';
|
10
10
|
|
11
11
|
class AXAccordionGroupComponent {
|
12
12
|
constructor() {
|
13
13
|
this.accordionGroup = inject(AXAccordionGroupDirective);
|
14
14
|
this.accordion = input(true);
|
15
|
-
this.activeIndex =
|
15
|
+
this.activeIndex = model([]);
|
16
16
|
this.look = input('solid');
|
17
|
-
this.activeIndexChange = output();
|
18
17
|
this.#init = afterNextRender(() => {
|
19
|
-
this.accordionGroup.
|
20
|
-
this.
|
18
|
+
this.accordionGroup.activeIndex.subscribe((index) => {
|
19
|
+
this.activeIndex.set(index);
|
21
20
|
});
|
22
21
|
});
|
23
22
|
this.#eff = effect(() => {
|
@@ -31,7 +30,7 @@ class AXAccordionGroupComponent {
|
|
31
30
|
return `ax-${this.look()}`;
|
32
31
|
}
|
33
32
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: AXAccordionGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
34
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.14", type: AXAccordionGroupComponent, isStandalone: true, selector: "ax-accordion-group", inputs: { accordion: { classPropertyName: "accordion", publicName: "accordion", isSignal: true, isRequired: false, transformFunction: null }, activeIndex: { classPropertyName: "activeIndex", publicName: "activeIndex", isSignal: true, isRequired: false, transformFunction: null }, look: { classPropertyName: "look", publicName: "look", isSignal: true, isRequired: false, transformFunction: null } }, outputs: {
|
33
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.14", type: AXAccordionGroupComponent, isStandalone: true, selector: "ax-accordion-group", inputs: { accordion: { classPropertyName: "accordion", publicName: "accordion", isSignal: true, isRequired: false, transformFunction: null }, activeIndex: { classPropertyName: "activeIndex", publicName: "activeIndex", isSignal: true, isRequired: false, transformFunction: null }, look: { classPropertyName: "look", publicName: "look", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { activeIndex: "activeIndexChange" }, host: { properties: { "class": "this.__hostClass" } }, providers: [
|
35
34
|
{
|
36
35
|
provide: MXLookableComponent,
|
37
36
|
useExisting: AXAccordionGroupComponent,
|
@@ -68,7 +67,7 @@ class AXAccordionItemComponent {
|
|
68
67
|
this.onClick = output();
|
69
68
|
this.isCollapsedChange = output();
|
70
69
|
this.#init = afterNextRender(() => {
|
71
|
-
this.accordionItem.
|
70
|
+
this.accordionItem.isCollapsed.subscribe((isCollapsed) => {
|
72
71
|
this.isCollapsed.set(isCollapsed);
|
73
72
|
this.isCollapsedChange.emit(isCollapsed);
|
74
73
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-components-accordion.mjs","sources":["../../../../packages/components/accordion/src/lib/accordion-group/accordion-group.component.ts","../../../../packages/components/accordion/src/lib/accordion-item/accordion-item.component.ts","../../../../packages/components/accordion/src/lib/accordion-item/accordion-item.component.html","../../../../packages/components/accordion/src/lib/accordion.module.ts","../../../../packages/components/accordion/src/acorex-components-accordion.ts"],"sourcesContent":["import { AXAccordionGroupDirective } from '@acorex/cdk/accordion';\nimport { AXComponent, MXLookableComponent } from '@acorex/cdk/common';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { CommonModule } from '@angular/common';\nimport {\n afterNextRender,\n ChangeDetectionStrategy,\n Component,\n effect,\n HostBinding,\n inject,\n input,\n output,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n selector: 'ax-accordion-group',\n styleUrl: './accordion-group.component.scss',\n imports: [AXLoadingModule, CommonModule],\n hostDirectives: [AXAccordionGroupDirective],\n template: `<ng-content select=\"ax-accordion-item\"></ng-content>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n {\n provide: MXLookableComponent,\n useExisting: AXAccordionGroupComponent,\n },\n { provide: AXComponent, useExisting: AXAccordionGroupComponent },\n ],\n})\nexport class AXAccordionGroupComponent {\n private accordionGroup = inject(AXAccordionGroupDirective);\n accordion = input(true);\n activeIndex = input(null);\n look = input('solid');\n activeIndexChange = output<number>();\n\n #init = afterNextRender(() => {\n this.accordionGroup.activeIndexChange.subscribe((index) => {\n this.activeIndexChange.emit(index);\n });\n });\n\n #eff = effect(() => {\n this.accordionGroup.accordion.set(this.accordion());\n this.accordionGroup.activeIndex.set(this.activeIndex());\n });\n\n @HostBinding('class')\n private get __hostClass(): string {\n return `ax-${this.look()}`;\n }\n}\n","import {\n AXAccordionItemContentDirective,\n AXAccordionItemDirective,\n AXAccordionItemHeaderDirective,\n} from '@acorex/cdk/accordion';\nimport { AXClickEvent } from '@acorex/cdk/common';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { CommonModule } from '@angular/common';\nimport {\n afterNextRender,\n ChangeDetectionStrategy,\n Component,\n HostBinding,\n inject,\n input,\n model,\n output,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXAccordionGroupComponent } from '../accordion-group/accordion-group.component';\n\n@Component({\n selector: 'ax-accordion-item',\n templateUrl: './accordion-item.component.html',\n styleUrl: './accordion-item.component.scss',\n imports: [AXLoadingModule, CommonModule, AXAccordionItemHeaderDirective, AXAccordionItemContentDirective],\n hostDirectives: [AXAccordionItemDirective],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AXAccordionItemComponent {\n showHeader = input(true);\n isCollapsed = model(true);\n icon = input('');\n caption = input('');\n isLoading = input(false);\n headerTemplate = input(null);\n look = input('solid');\n disabled = input(false);\n private accordionItem = inject(AXAccordionItemDirective);\n private parent = inject(AXAccordionGroupComponent);\n\n onClick = output<AXClickEvent>();\n isCollapsedChange = output<boolean>();\n\n #init = afterNextRender(() => {\n this.accordionItem.collapse.subscribe((isCollapsed) => {\n this.isCollapsed.set(isCollapsed);\n this.isCollapsedChange.emit(isCollapsed);\n });\n this.accordionItem.onClick.subscribe((e) => {\n this.onClick.emit(e);\n });\n });\n\n @HostBinding('class')\n get __hostClass(): string[] {\n return [\n `${this.disabled() ? 'ax-state-disabled' : ''}`,\n `ax-${this.parent?.look() ? this.parent.look() : this.look()}`,\n ];\n }\n}\n","@if (showHeader()) {\n <div axAccordionItemHeader class=\"ax-accordion-header\">\n @if (headerTemplate()) {\n <div class=\"ax-accordion-custom-header-container\">\n <ng-container\n [ngTemplateOutlet]=\"headerTemplate()\"\n [ngTemplateOutletContext]=\"{ $implicit: { caption: caption(), isCollapsed: isCollapsed() } }\"\n ></ng-container>\n </div>\n } @else {\n <div class=\"ax-accordion-header-container\">\n <div class=\"ax-accordion-header-start\">\n <span class=\"ax-accordion-header-icon\" [class]=\"icon()\"> </span>\n <span>\n {{ caption() }}\n </span>\n </div>\n <div class=\"ax-accordion-header-end\">\n @if (isLoading()) {\n <ax-loading></ax-loading>\n } @else {\n <span\n class=\"ax-icon ax-icon-chevron-left ax-accordion-arrow\"\n [ngClass]=\"{ '-rotation-90': isCollapsed(), 'rotation-90': !isCollapsed() }\"\n ></span>\n }\n </div>\n </div>\n }\n </div>\n}\n\n<div axAccordionItemContent class=\"ax-accordion-body\">\n <div class=\"ax-accordion-body-content\">\n <ng-content></ng-content>\n </div>\n</div>\n","import { NgModule } from '@angular/core';\nimport { AXAccordionGroupComponent } from './accordion-group/accordion-group.component';\nimport { AXAccordionItemComponent } from './accordion-item/accordion-item.component';\n\nconst COMPONENT = [AXAccordionItemComponent, AXAccordionGroupComponent];\nconst MODULES = [];\n\n@NgModule({\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXAccordionModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"acorex-components-accordion.mjs","sources":["../../../../packages/components/accordion/src/lib/accordion-group/accordion-group.component.ts","../../../../packages/components/accordion/src/lib/accordion-item/accordion-item.component.ts","../../../../packages/components/accordion/src/lib/accordion-item/accordion-item.component.html","../../../../packages/components/accordion/src/lib/accordion.module.ts","../../../../packages/components/accordion/src/acorex-components-accordion.ts"],"sourcesContent":["import { AXAccordionGroupDirective } from '@acorex/cdk/accordion';\nimport { AXComponent, MXLookableComponent } from '@acorex/cdk/common';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { CommonModule } from '@angular/common';\nimport {\n afterNextRender,\n ChangeDetectionStrategy,\n Component,\n effect,\n HostBinding,\n inject,\n input,\n model,\n ViewEncapsulation,\n} from '@angular/core';\n\n@Component({\n selector: 'ax-accordion-group',\n styleUrl: './accordion-group.component.scss',\n imports: [AXLoadingModule, CommonModule],\n hostDirectives: [AXAccordionGroupDirective],\n template: `<ng-content select=\"ax-accordion-item\"></ng-content>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n {\n provide: MXLookableComponent,\n useExisting: AXAccordionGroupComponent,\n },\n { provide: AXComponent, useExisting: AXAccordionGroupComponent },\n ],\n})\nexport class AXAccordionGroupComponent {\n private accordionGroup = inject(AXAccordionGroupDirective);\n accordion = input(true);\n activeIndex = model<number | number[]>([]);\n look = input('solid');\n\n #init = afterNextRender(() => {\n this.accordionGroup.activeIndex.subscribe((index) => {\n this.activeIndex.set(index);\n });\n });\n\n #eff = effect(() => {\n this.accordionGroup.accordion.set(this.accordion());\n this.accordionGroup.activeIndex.set(this.activeIndex());\n });\n\n @HostBinding('class')\n private get __hostClass(): string {\n return `ax-${this.look()}`;\n }\n}\n","import {\n AXAccordionItemContentDirective,\n AXAccordionItemDirective,\n AXAccordionItemHeaderDirective,\n} from '@acorex/cdk/accordion';\nimport { AXClickEvent } from '@acorex/cdk/common';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { CommonModule } from '@angular/common';\nimport {\n afterNextRender,\n ChangeDetectionStrategy,\n Component,\n HostBinding,\n inject,\n input,\n model,\n output,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXAccordionGroupComponent } from '../accordion-group/accordion-group.component';\n\n@Component({\n selector: 'ax-accordion-item',\n templateUrl: './accordion-item.component.html',\n styleUrl: './accordion-item.component.scss',\n imports: [AXLoadingModule, CommonModule, AXAccordionItemHeaderDirective, AXAccordionItemContentDirective],\n hostDirectives: [AXAccordionItemDirective],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AXAccordionItemComponent {\n showHeader = input(true);\n isCollapsed = model(true);\n icon = input('');\n caption = input('');\n isLoading = input(false);\n headerTemplate = input(null);\n look = input('solid');\n disabled = input(false);\n private accordionItem = inject(AXAccordionItemDirective);\n private parent = inject(AXAccordionGroupComponent);\n\n onClick = output<AXClickEvent>();\n isCollapsedChange = output<boolean>();\n\n #init = afterNextRender(() => {\n this.accordionItem.isCollapsed.subscribe((isCollapsed) => {\n this.isCollapsed.set(isCollapsed);\n this.isCollapsedChange.emit(isCollapsed);\n });\n this.accordionItem.onClick.subscribe((e) => {\n this.onClick.emit(e);\n });\n });\n\n @HostBinding('class')\n get __hostClass(): string[] {\n return [\n `${this.disabled() ? 'ax-state-disabled' : ''}`,\n `ax-${this.parent?.look() ? this.parent.look() : this.look()}`,\n ];\n }\n}\n","@if (showHeader()) {\n <div axAccordionItemHeader class=\"ax-accordion-header\">\n @if (headerTemplate()) {\n <div class=\"ax-accordion-custom-header-container\">\n <ng-container\n [ngTemplateOutlet]=\"headerTemplate()\"\n [ngTemplateOutletContext]=\"{ $implicit: { caption: caption(), isCollapsed: isCollapsed() } }\"\n ></ng-container>\n </div>\n } @else {\n <div class=\"ax-accordion-header-container\">\n <div class=\"ax-accordion-header-start\">\n <span class=\"ax-accordion-header-icon\" [class]=\"icon()\"> </span>\n <span>\n {{ caption() }}\n </span>\n </div>\n <div class=\"ax-accordion-header-end\">\n @if (isLoading()) {\n <ax-loading></ax-loading>\n } @else {\n <span\n class=\"ax-icon ax-icon-chevron-left ax-accordion-arrow\"\n [ngClass]=\"{ '-rotation-90': isCollapsed(), 'rotation-90': !isCollapsed() }\"\n ></span>\n }\n </div>\n </div>\n }\n </div>\n}\n\n<div axAccordionItemContent class=\"ax-accordion-body\">\n <div class=\"ax-accordion-body-content\">\n <ng-content></ng-content>\n </div>\n</div>\n","import { NgModule } from '@angular/core';\nimport { AXAccordionGroupComponent } from './accordion-group/accordion-group.component';\nimport { AXAccordionItemComponent } from './accordion-item/accordion-item.component';\n\nconst COMPONENT = [AXAccordionItemComponent, AXAccordionGroupComponent];\nconst MODULES = [];\n\n@NgModule({\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXAccordionModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
@@ -9,8 +9,6 @@ import * as i0 from '@angular/core';
|
|
9
9
|
import { inject, Injectable, PLATFORM_ID, Renderer2, signal, TemplateRef, HostListener, Inject, ViewEncapsulation, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
|
10
10
|
import { GlobalPositionStrategy } from '@angular/cdk/overlay';
|
11
11
|
import { Subject, BehaviorSubject } from 'rxjs';
|
12
|
-
import { expect } from '@storybook/jest';
|
13
|
-
import { within } from '@storybook/testing-library';
|
14
12
|
import { AXButtonModule } from '@acorex/components/button';
|
15
13
|
import { A11yModule } from '@angular/cdk/a11y';
|
16
14
|
import { DragDropModule } from '@angular/cdk/drag-drop';
|
@@ -327,21 +325,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
|
|
327
325
|
args: ['keydown.escape']
|
328
326
|
}] } });
|
329
327
|
|
330
|
-
const meta = {
|
331
|
-
component: AXActionSheetComponent,
|
332
|
-
title: 'AXActionSheetComponent',
|
333
|
-
};
|
334
|
-
const Primary = {
|
335
|
-
args: {},
|
336
|
-
};
|
337
|
-
const Heading = {
|
338
|
-
args: {},
|
339
|
-
play: async ({ canvasElement }) => {
|
340
|
-
const canvas = within(canvasElement);
|
341
|
-
expect(canvas.getByText(/action-sheet works!/gi)).toBeTruthy();
|
342
|
-
},
|
343
|
-
};
|
344
|
-
|
345
328
|
const MODULES = [
|
346
329
|
AXCommonModule,
|
347
330
|
DragDropModule,
|
@@ -386,5 +369,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
|
|
386
369
|
* Generated bundle index. Do not edit.
|
387
370
|
*/
|
388
371
|
|
389
|
-
export { AXActionSheetComponent, AXActionSheetModule, AXActionSheetService
|
372
|
+
export { AXActionSheetComponent, AXActionSheetModule, AXActionSheetService };
|
390
373
|
//# sourceMappingURL=acorex-components-action-sheet.mjs.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-components-action-sheet.mjs","sources":["../../../../packages/components/action-sheet/src/lib/action-sheet.service.ts","../../../../packages/components/action-sheet/src/lib/action-sheet.component.ts","../../../../packages/components/action-sheet/src/lib/action-sheet.component.html","../../../../packages/components/action-sheet/src/lib/action-sheet.component.stories.ts","../../../../packages/components/action-sheet/src/lib/action-sheet.module.ts","../../../../packages/components/action-sheet/src/acorex-components-action-sheet.ts"],"sourcesContent":["import { Dialog } from '@angular/cdk/dialog';\nimport { GlobalPositionStrategy } from '@angular/cdk/overlay';\nimport { Injectable, inject } from '@angular/core';\nimport { BehaviorSubject, Subject } from 'rxjs';\nimport { AXActionSheetConfig, AXActionSheetEvent } from './action-sheet.class';\nimport { AXActionSheetComponent } from './action-sheet.component';\n\nexport interface AXActionSheetDialogRef {\n close: (e?) => void;\n closed: Subject<any>;\n}\n\n@Injectable()\nexport class AXActionSheetService {\n private dialog: Dialog = inject(Dialog);\n private readonly actionSheetEvent = new Subject<AXActionSheetEvent>();\n actionSheetEvent$ = this.actionSheetEvent.asObservable();\n\n open(config: AXActionSheetConfig, isUserInteraction = true): Promise<AXActionSheetDialogRef> {\n const defaultConfig: AXActionSheetConfig = {\n title: 'action-sheet.title',\n closeButton: true,\n closeOnBackdropClick: true,\n header: true,\n };\n config = Object.assign(defaultConfig, config);\n\n const dialogRef = this.dialog.open(AXActionSheetComponent, {\n data: config,\n autoFocus: 'first-tabbable',\n restoreFocus: true,\n role: 'dialog',\n ariaModal: true,\n closeOnNavigation: true,\n closeOnDestroy: true,\n hasBackdrop: true,\n panelClass: ['ax-action-sheet-panel'],\n disableClose: true,\n positionStrategy: new GlobalPositionStrategy().centerHorizontally().bottom(),\n });\n\n this.actionSheetEvent.next({\n dialogRef,\n data: { state: 'open' },\n isUserInteraction,\n });\n\n if (config.closeOnBackdropClick) {\n dialogRef.backdropClick.subscribe(() => {\n const componentInstance = dialogRef.componentInstance;\n if (componentInstance) {\n componentInstance.close();\n }\n });\n }\n const promise = new Promise<AXActionSheetDialogRef>((resolve) => {\n const closed = new BehaviorSubject<any>(null);\n const axDialogRef: AXActionSheetDialogRef = {\n close: (e) => {\n dialogRef.close(e);\n },\n closed,\n };\n dialogRef.closed.subscribe((c: any) => {\n if (c?.data) {\n closed.next({ data: c.data });\n } else {\n closed.next({});\n }\n });\n if (resolve) {\n resolve(axDialogRef);\n }\n });\n return promise;\n }\n\n setActionSheetEventState(event: AXActionSheetEvent) {\n this.actionSheetEvent.next(event);\n }\n}\n","import {\n AXClosableComponent,\n AXComponent,\n AXComponentCloseEvent,\n AXFocusableComponent,\n MXBaseComponent,\n} from '@acorex/cdk/common';\nimport { AXDecoratorCloseButtonComponent, AXDecoratorGenericComponent } from '@acorex/components/decorators';\nimport { AXTranslatorPipe } from '@acorex/core/translation';\nimport { DIALOG_DATA, DialogRef } from '@angular/cdk/dialog';\nimport {\n CdkPortalOutlet,\n CdkPortalOutletAttachedRef,\n ComponentPortal,\n Portal,\n TemplatePortal,\n} from '@angular/cdk/portal';\nimport { AsyncPipe, DOCUMENT, isPlatformBrowser } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ComponentRef,\n HostListener,\n inject,\n Inject,\n OnDestroy,\n OnInit,\n PLATFORM_ID,\n Renderer2,\n signal,\n TemplateRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXActionSheetConfig, AXActionSheetItem } from './action-sheet.class';\nimport { AXActionSheetService } from './action-sheet.service';\n\n/**\n * A component for displaying an action sheet, which is a menu that slides up from the bottom of the screen.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-action-sheet',\n templateUrl: './action-sheet.component.html',\n styleUrls: ['./action-sheet.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n { provide: AXComponent, useExisting: AXActionSheetComponent },\n {\n provide: AXClosableComponent,\n useExisting: AXActionSheetComponent,\n },\n {\n provide: AXFocusableComponent,\n useExisting: AXActionSheetComponent,\n },\n ],\n imports: [AXDecoratorGenericComponent, AXDecoratorCloseButtonComponent, CdkPortalOutlet, AXTranslatorPipe, AsyncPipe],\n})\nexport class AXActionSheetComponent extends MXBaseComponent implements OnInit, OnDestroy {\n private document = inject(DOCUMENT);\n private platformID = inject(PLATFORM_ID);\n private renderer = inject(Renderer2);\n private actionSheetService = inject(AXActionSheetService);\n\n private onMouseMoveListenerFn = () => undefined;\n private onMouseUpListenerFn = () => undefined;\n private onTouchMoveListenerFn = () => undefined;\n private onTouchUpListenerFn = () => undefined;\n\n private isDragging = signal(false);\n private curserOffset = signal(0);\n private actionSheetHeight = signal(0);\n private isActionSheetHeightSet = signal(false);\n private transitionDuration = signal(300);\n\n /**\n * @ignore\n */\n protected _selectedPortal: Portal<any>;\n\n /**\n * @ignore\n */\n private _componentRef: unknown;\n\n /**\n * @ignore\n */\n constructor(\n @Inject(DIALOG_DATA)\n protected data: AXActionSheetConfig,\n private dialogRef: DialogRef<AXComponentCloseEvent>,\n ) {\n super();\n }\n\n /**\n * @ignore\n */\n override ngOnInit(): void {\n super.ngOnInit();\n if (this.data.content) {\n if (this.data.content instanceof TemplateRef) {\n this._selectedPortal = new TemplatePortal(this.data.content, this.getViewContainer(), {\n $implicit: this.data,\n ref: this,\n });\n this.cdr.markForCheck();\n } else if (typeof this.data.content === 'function') {\n this._selectedPortal = new ComponentPortal(this.data.content);\n this.cdr.markForCheck();\n }\n }\n if (isPlatformBrowser(this.platformID) && this.data.draggable) {\n this.onMouseMoveListenerFn = this.renderer.listen(this.document, 'mousemove', (e) => {\n if (this.isDragging()) {\n e.preventDefault();\n this.getHostElement().style.height = `${this.heightCalculator(e.clientY) + this.curserOffset()}px`;\n }\n });\n this.onTouchMoveListenerFn = this.renderer.listen(this.document, 'touchmove', (e) => {\n if (this.isDragging()) {\n e.preventDefault();\n this.getHostElement().style.height = `${this.heightCalculator(e.touches[0].clientY) + this.curserOffset()}px`;\n }\n });\n this.onMouseUpListenerFn = this.renderer.listen(this.document, 'mouseup', (e) => {\n if (this.isDragging()) {\n this.isDragging.set(false);\n this.actionSheetService.setActionSheetEventState({\n nativeEvent: e,\n data: { state: 'dragEnd' },\n isUserInteraction: true,\n dialogRef: this.dialogRef,\n });\n this.handleUp();\n }\n });\n this.onTouchUpListenerFn = this.renderer.listen(this.document, 'touchend', (e) => {\n if (this.isDragging()) {\n this.isDragging.set(false);\n this.actionSheetService.setActionSheetEventState({\n nativeEvent: e,\n data: { state: 'dragEnd' },\n isUserInteraction: true,\n dialogRef: this.dialogRef,\n });\n this.handleUp();\n }\n });\n }\n }\n\n ngOnDestroy(): void {\n this.onMouseMoveListenerFn();\n this.onMouseUpListenerFn();\n this.onTouchMoveListenerFn();\n this.onTouchUpListenerFn();\n }\n\n protected handleMouseDown(e: MouseEvent) {\n if (!this.data.draggable || e.button !== 0) return;\n e.preventDefault();\n this.actionSheetService.setActionSheetEventState({\n nativeEvent: e,\n data: { state: 'dragStart' },\n isUserInteraction: true,\n dialogRef: this.dialogRef,\n });\n this.handleDown(e.clientY);\n }\n\n protected handleTouchDown(e: TouchEvent) {\n if (!this.data.draggable || (e.target as HTMLElement).className.includes('close')) return;\n e.preventDefault();\n this.actionSheetService.setActionSheetEventState({\n nativeEvent: e,\n data: { state: 'dragStart' },\n isUserInteraction: true,\n dialogRef: this.dialogRef,\n });\n this.handleDown(e.touches[0].clientY);\n }\n\n private handleDown(clientY: number) {\n this.isDragging.set(true);\n this.getHostElement().style.transitionDuration = '0ms';\n\n if (isPlatformBrowser(this.platformID)) {\n this.curserOffset.set(\n clientY - (this.document.documentElement.clientHeight - this.getHostElement().clientHeight),\n );\n }\n\n if (!this.isActionSheetHeightSet()) {\n this.actionSheetHeight.set(this.getHostElement().clientHeight);\n this.isActionSheetHeightSet.set(true);\n }\n }\n\n private handleUp() {\n this.getHostElement().style.transitionDuration = `${this.transitionDuration()}ms`;\n this.document.body.parentElement.style.overscrollBehaviorY = 'auto';\n\n if (this.getHostElement().clientHeight < this.actionSheetHeight() / 2) {\n this.close(null);\n return;\n }\n if (\n this.getHostElement().clientHeight >\n (this.document.documentElement.clientHeight + this.actionSheetHeight()) / 2 &&\n this.data.dragUp\n ) {\n this.getHostElement().style.height = '100vh';\n this.actionSheetService.setActionSheetEventState({\n data: { state: 'fullScreen' },\n isUserInteraction: true,\n dialogRef: this.dialogRef,\n });\n this.document.body.parentElement.style.overscrollBehaviorY = 'contain';\n return;\n }\n this.getHostElement().style.height = this.actionSheetHeight() + 'px';\n this.actionSheetService.setActionSheetEventState({\n data: { state: 'normalSize' },\n isUserInteraction: true,\n dialogRef: this.dialogRef,\n });\n return;\n }\n\n private heightCalculator(clientY: number): number {\n if (this.data.dragUp) {\n return this.document.documentElement.clientHeight - clientY;\n }\n if (clientY >= this.document.documentElement.clientHeight - this.actionSheetHeight()) {\n return this.document.documentElement.clientHeight - clientY;\n }\n return (\n this.actionSheetHeight() + (this.document.documentElement.clientHeight - clientY - this.actionSheetHeight()) / 10\n );\n }\n\n protected handleAttched(ref: CdkPortalOutletAttachedRef) {\n ref = ref as ComponentRef<any>;\n if (ref.instance) {\n this._componentRef = ref.instance;\n Object.assign(this._componentRef, this.data);\n Object.assign(this._componentRef, { _isPopup: true });\n if (ref.instance.onClosed) {\n ref.instance.onClosed.subscribe((e: AXComponentCloseEvent) => {\n this.close(e);\n });\n }\n }\n }\n\n onItemClick(item: AXActionSheetItem) {\n this.close(item);\n if (item?.onClick) item.onClick();\n }\n\n close(e = null, isUserInteraction = true) {\n this.getHostElement().style.height = `${this.getHostElement().clientHeight}px`;\n setTimeout(() => {\n this.getHostElement().style.height = '0vh';\n });\n setTimeout(() => {\n this.actionSheetService.setActionSheetEventState({\n data: { state: 'close' },\n isUserInteraction,\n dialogRef: this.dialogRef,\n });\n this.dialogRef.close({\n component: this._componentRef,\n htmlElement: this.getHostElement(),\n data: e,\n });\n }, this.transitionDuration());\n }\n\n /**\n * @ignore\n */\n @HostListener('keydown.escape')\n protected onKeydownHandler() {\n const focusedOrHasFocused = this.getHostElement().matches(':focus-within');\n if (this.data.closeButton && focusedOrHasFocused) {\n this.close(null);\n }\n }\n}\n","@if (data.draggable) {\n <div (mousedown)=\"handleMouseDown($event)\" (touchstart)=\"handleTouchDown($event)\" class=\"ax-drag-handle-container\">\n <div class=\"ax-drag-handle\"></div>\n </div>\n}\n@if (data.header) {\n <ax-header\n [class.draggable-header]=\"data.draggable\"\n (mousedown)=\"data.draggable ? handleMouseDown($event) : null\"\n (touchstart)=\"data.draggable ? handleTouchDown($event) : null\"\n >\n <ax-prefix>\n <ax-title>{{ data.title | translate | async }}</ax-title>\n\n @if (data.subTitle) {\n <ax-subtitle>\n {{ data.subTitle }}\n </ax-subtitle>\n }\n </ax-prefix>\n @if (data.closeButton) {\n <ax-suffix>\n <ax-close-button></ax-close-button>\n </ax-suffix>\n }\n </ax-header>\n}\n@if (this.data.content) {\n <div class=\"ax-custom-template-container\">\n <ng-template [cdkPortalOutlet]=\"_selectedPortal\" (attached)=\"handleAttched($event)\"></ng-template>\n </div>\n}\n\n<div class=\"ax-action-list ax-action-list-vertical\">\n @for (item of data.items; let i = $index; track i) {\n @if (item.group?.title) {\n <ax-title>{{ item.group?.title }}</ax-title>\n }\n <div class=\"ax-action-item ax-{{ item.color || 'default' }}\" [class.ax-state-disabled]=\"item.disabled\" [tabindex]=\"i\" (click)=\"onItemClick(item)\">\n <div class=\"ax-action-item-prefix\">\n @if (item.icon) {\n <span class=\"ax-item-icon\" [class]=\"item.icon\"></span>\n }\n <ax-text>{{ item.text | translate | async }}</ax-text>\n </div>\n <div class=\"ax-action-item-suffix\"></div>\n </div>\n @if (item.break) {\n <ax-divider></ax-divider>\n }\n }\n</div>\n","import type { Meta, StoryObj } from '@storybook/angular';\nimport { expect } from '@storybook/jest';\nimport { within } from '@storybook/testing-library';\nimport { AXActionSheetComponent } from './action-sheet.component';\n\nconst meta: Meta<AXActionSheetComponent> = {\n component: AXActionSheetComponent,\n title: 'AXActionSheetComponent',\n};\nexport default meta;\ntype Story = StoryObj<AXActionSheetComponent>;\n\nexport const Primary: Story = {\n args: {},\n};\n\nexport const Heading: Story = {\n args: {},\n play: async ({ canvasElement }) => {\n const canvas = within(canvasElement);\n expect(canvas.getByText(/action-sheet works!/gi)).toBeTruthy();\n },\n};\n","import { AXButtonModule } from '@acorex/components/button';\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { DragDropModule } from '@angular/cdk/drag-drop';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { NgModule } from '@angular/core';\n\nimport { AXCommonModule } from '@acorex/cdk/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { DialogModule } from '@angular/cdk/dialog';\nimport { AsyncPipe } from '@angular/common';\nimport { AXActionSheetComponent } from './action-sheet.component';\nimport { AXActionSheetService } from './action-sheet.service';\n\nconst MODULES = [\n AXCommonModule,\n DragDropModule,\n A11yModule,\n AXButtonModule,\n PortalModule,\n AXDecoratorModule,\n AXTranslationModule,\n DialogModule,\n AsyncPipe,\n];\n\n@NgModule({\n imports: [...MODULES, AXActionSheetComponent],\n exports: [AXActionSheetComponent],\n providers: [AXActionSheetService],\n})\nexport class AXActionSheetModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"acorex-components-action-sheet.mjs","sources":["../../../../packages/components/action-sheet/src/lib/action-sheet.service.ts","../../../../packages/components/action-sheet/src/lib/action-sheet.component.ts","../../../../packages/components/action-sheet/src/lib/action-sheet.component.html","../../../../packages/components/action-sheet/src/lib/action-sheet.module.ts","../../../../packages/components/action-sheet/src/acorex-components-action-sheet.ts"],"sourcesContent":["import { Dialog } from '@angular/cdk/dialog';\nimport { GlobalPositionStrategy } from '@angular/cdk/overlay';\nimport { Injectable, inject } from '@angular/core';\nimport { BehaviorSubject, Subject } from 'rxjs';\nimport { AXActionSheetConfig, AXActionSheetEvent } from './action-sheet.class';\nimport { AXActionSheetComponent } from './action-sheet.component';\n\nexport interface AXActionSheetDialogRef {\n close: (e?) => void;\n closed: Subject<any>;\n}\n\n@Injectable()\nexport class AXActionSheetService {\n private dialog: Dialog = inject(Dialog);\n private readonly actionSheetEvent = new Subject<AXActionSheetEvent>();\n actionSheetEvent$ = this.actionSheetEvent.asObservable();\n\n open(config: AXActionSheetConfig, isUserInteraction = true): Promise<AXActionSheetDialogRef> {\n const defaultConfig: AXActionSheetConfig = {\n title: 'action-sheet.title',\n closeButton: true,\n closeOnBackdropClick: true,\n header: true,\n };\n config = Object.assign(defaultConfig, config);\n\n const dialogRef = this.dialog.open(AXActionSheetComponent, {\n data: config,\n autoFocus: 'first-tabbable',\n restoreFocus: true,\n role: 'dialog',\n ariaModal: true,\n closeOnNavigation: true,\n closeOnDestroy: true,\n hasBackdrop: true,\n panelClass: ['ax-action-sheet-panel'],\n disableClose: true,\n positionStrategy: new GlobalPositionStrategy().centerHorizontally().bottom(),\n });\n\n this.actionSheetEvent.next({\n dialogRef,\n data: { state: 'open' },\n isUserInteraction,\n });\n\n if (config.closeOnBackdropClick) {\n dialogRef.backdropClick.subscribe(() => {\n const componentInstance = dialogRef.componentInstance;\n if (componentInstance) {\n componentInstance.close();\n }\n });\n }\n const promise = new Promise<AXActionSheetDialogRef>((resolve) => {\n const closed = new BehaviorSubject<any>(null);\n const axDialogRef: AXActionSheetDialogRef = {\n close: (e) => {\n dialogRef.close(e);\n },\n closed,\n };\n dialogRef.closed.subscribe((c: any) => {\n if (c?.data) {\n closed.next({ data: c.data });\n } else {\n closed.next({});\n }\n });\n if (resolve) {\n resolve(axDialogRef);\n }\n });\n return promise;\n }\n\n setActionSheetEventState(event: AXActionSheetEvent) {\n this.actionSheetEvent.next(event);\n }\n}\n","import {\n AXClosableComponent,\n AXComponent,\n AXComponentCloseEvent,\n AXFocusableComponent,\n MXBaseComponent,\n} from '@acorex/cdk/common';\nimport { AXDecoratorCloseButtonComponent, AXDecoratorGenericComponent } from '@acorex/components/decorators';\nimport { AXTranslatorPipe } from '@acorex/core/translation';\nimport { DIALOG_DATA, DialogRef } from '@angular/cdk/dialog';\nimport {\n CdkPortalOutlet,\n CdkPortalOutletAttachedRef,\n ComponentPortal,\n Portal,\n TemplatePortal,\n} from '@angular/cdk/portal';\nimport { AsyncPipe, DOCUMENT, isPlatformBrowser } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ComponentRef,\n HostListener,\n inject,\n Inject,\n OnDestroy,\n OnInit,\n PLATFORM_ID,\n Renderer2,\n signal,\n TemplateRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXActionSheetConfig, AXActionSheetItem } from './action-sheet.class';\nimport { AXActionSheetService } from './action-sheet.service';\n\n/**\n * A component for displaying an action sheet, which is a menu that slides up from the bottom of the screen.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-action-sheet',\n templateUrl: './action-sheet.component.html',\n styleUrls: ['./action-sheet.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n { provide: AXComponent, useExisting: AXActionSheetComponent },\n {\n provide: AXClosableComponent,\n useExisting: AXActionSheetComponent,\n },\n {\n provide: AXFocusableComponent,\n useExisting: AXActionSheetComponent,\n },\n ],\n imports: [AXDecoratorGenericComponent, AXDecoratorCloseButtonComponent, CdkPortalOutlet, AXTranslatorPipe, AsyncPipe],\n})\nexport class AXActionSheetComponent extends MXBaseComponent implements OnInit, OnDestroy {\n private document = inject(DOCUMENT);\n private platformID = inject(PLATFORM_ID);\n private renderer = inject(Renderer2);\n private actionSheetService = inject(AXActionSheetService);\n\n private onMouseMoveListenerFn = () => undefined;\n private onMouseUpListenerFn = () => undefined;\n private onTouchMoveListenerFn = () => undefined;\n private onTouchUpListenerFn = () => undefined;\n\n private isDragging = signal(false);\n private curserOffset = signal(0);\n private actionSheetHeight = signal(0);\n private isActionSheetHeightSet = signal(false);\n private transitionDuration = signal(300);\n\n /**\n * @ignore\n */\n protected _selectedPortal: Portal<any>;\n\n /**\n * @ignore\n */\n private _componentRef: unknown;\n\n /**\n * @ignore\n */\n constructor(\n @Inject(DIALOG_DATA)\n protected data: AXActionSheetConfig,\n private dialogRef: DialogRef<AXComponentCloseEvent>,\n ) {\n super();\n }\n\n /**\n * @ignore\n */\n override ngOnInit(): void {\n super.ngOnInit();\n if (this.data.content) {\n if (this.data.content instanceof TemplateRef) {\n this._selectedPortal = new TemplatePortal(this.data.content, this.getViewContainer(), {\n $implicit: this.data,\n ref: this,\n });\n this.cdr.markForCheck();\n } else if (typeof this.data.content === 'function') {\n this._selectedPortal = new ComponentPortal(this.data.content);\n this.cdr.markForCheck();\n }\n }\n if (isPlatformBrowser(this.platformID) && this.data.draggable) {\n this.onMouseMoveListenerFn = this.renderer.listen(this.document, 'mousemove', (e) => {\n if (this.isDragging()) {\n e.preventDefault();\n this.getHostElement().style.height = `${this.heightCalculator(e.clientY) + this.curserOffset()}px`;\n }\n });\n this.onTouchMoveListenerFn = this.renderer.listen(this.document, 'touchmove', (e) => {\n if (this.isDragging()) {\n e.preventDefault();\n this.getHostElement().style.height = `${this.heightCalculator(e.touches[0].clientY) + this.curserOffset()}px`;\n }\n });\n this.onMouseUpListenerFn = this.renderer.listen(this.document, 'mouseup', (e) => {\n if (this.isDragging()) {\n this.isDragging.set(false);\n this.actionSheetService.setActionSheetEventState({\n nativeEvent: e,\n data: { state: 'dragEnd' },\n isUserInteraction: true,\n dialogRef: this.dialogRef,\n });\n this.handleUp();\n }\n });\n this.onTouchUpListenerFn = this.renderer.listen(this.document, 'touchend', (e) => {\n if (this.isDragging()) {\n this.isDragging.set(false);\n this.actionSheetService.setActionSheetEventState({\n nativeEvent: e,\n data: { state: 'dragEnd' },\n isUserInteraction: true,\n dialogRef: this.dialogRef,\n });\n this.handleUp();\n }\n });\n }\n }\n\n ngOnDestroy(): void {\n this.onMouseMoveListenerFn();\n this.onMouseUpListenerFn();\n this.onTouchMoveListenerFn();\n this.onTouchUpListenerFn();\n }\n\n protected handleMouseDown(e: MouseEvent) {\n if (!this.data.draggable || e.button !== 0) return;\n e.preventDefault();\n this.actionSheetService.setActionSheetEventState({\n nativeEvent: e,\n data: { state: 'dragStart' },\n isUserInteraction: true,\n dialogRef: this.dialogRef,\n });\n this.handleDown(e.clientY);\n }\n\n protected handleTouchDown(e: TouchEvent) {\n if (!this.data.draggable || (e.target as HTMLElement).className.includes('close')) return;\n e.preventDefault();\n this.actionSheetService.setActionSheetEventState({\n nativeEvent: e,\n data: { state: 'dragStart' },\n isUserInteraction: true,\n dialogRef: this.dialogRef,\n });\n this.handleDown(e.touches[0].clientY);\n }\n\n private handleDown(clientY: number) {\n this.isDragging.set(true);\n this.getHostElement().style.transitionDuration = '0ms';\n\n if (isPlatformBrowser(this.platformID)) {\n this.curserOffset.set(\n clientY - (this.document.documentElement.clientHeight - this.getHostElement().clientHeight),\n );\n }\n\n if (!this.isActionSheetHeightSet()) {\n this.actionSheetHeight.set(this.getHostElement().clientHeight);\n this.isActionSheetHeightSet.set(true);\n }\n }\n\n private handleUp() {\n this.getHostElement().style.transitionDuration = `${this.transitionDuration()}ms`;\n this.document.body.parentElement.style.overscrollBehaviorY = 'auto';\n\n if (this.getHostElement().clientHeight < this.actionSheetHeight() / 2) {\n this.close(null);\n return;\n }\n if (\n this.getHostElement().clientHeight >\n (this.document.documentElement.clientHeight + this.actionSheetHeight()) / 2 &&\n this.data.dragUp\n ) {\n this.getHostElement().style.height = '100vh';\n this.actionSheetService.setActionSheetEventState({\n data: { state: 'fullScreen' },\n isUserInteraction: true,\n dialogRef: this.dialogRef,\n });\n this.document.body.parentElement.style.overscrollBehaviorY = 'contain';\n return;\n }\n this.getHostElement().style.height = this.actionSheetHeight() + 'px';\n this.actionSheetService.setActionSheetEventState({\n data: { state: 'normalSize' },\n isUserInteraction: true,\n dialogRef: this.dialogRef,\n });\n return;\n }\n\n private heightCalculator(clientY: number): number {\n if (this.data.dragUp) {\n return this.document.documentElement.clientHeight - clientY;\n }\n if (clientY >= this.document.documentElement.clientHeight - this.actionSheetHeight()) {\n return this.document.documentElement.clientHeight - clientY;\n }\n return (\n this.actionSheetHeight() + (this.document.documentElement.clientHeight - clientY - this.actionSheetHeight()) / 10\n );\n }\n\n protected handleAttched(ref: CdkPortalOutletAttachedRef) {\n ref = ref as ComponentRef<any>;\n if (ref.instance) {\n this._componentRef = ref.instance;\n Object.assign(this._componentRef, this.data);\n Object.assign(this._componentRef, { _isPopup: true });\n if (ref.instance.onClosed) {\n ref.instance.onClosed.subscribe((e: AXComponentCloseEvent) => {\n this.close(e);\n });\n }\n }\n }\n\n onItemClick(item: AXActionSheetItem) {\n this.close(item);\n if (item?.onClick) item.onClick();\n }\n\n close(e = null, isUserInteraction = true) {\n this.getHostElement().style.height = `${this.getHostElement().clientHeight}px`;\n setTimeout(() => {\n this.getHostElement().style.height = '0vh';\n });\n setTimeout(() => {\n this.actionSheetService.setActionSheetEventState({\n data: { state: 'close' },\n isUserInteraction,\n dialogRef: this.dialogRef,\n });\n this.dialogRef.close({\n component: this._componentRef,\n htmlElement: this.getHostElement(),\n data: e,\n });\n }, this.transitionDuration());\n }\n\n /**\n * @ignore\n */\n @HostListener('keydown.escape')\n protected onKeydownHandler() {\n const focusedOrHasFocused = this.getHostElement().matches(':focus-within');\n if (this.data.closeButton && focusedOrHasFocused) {\n this.close(null);\n }\n }\n}\n","@if (data.draggable) {\n <div (mousedown)=\"handleMouseDown($event)\" (touchstart)=\"handleTouchDown($event)\" class=\"ax-drag-handle-container\">\n <div class=\"ax-drag-handle\"></div>\n </div>\n}\n@if (data.header) {\n <ax-header\n [class.draggable-header]=\"data.draggable\"\n (mousedown)=\"data.draggable ? handleMouseDown($event) : null\"\n (touchstart)=\"data.draggable ? handleTouchDown($event) : null\"\n >\n <ax-prefix>\n <ax-title>{{ data.title | translate | async }}</ax-title>\n\n @if (data.subTitle) {\n <ax-subtitle>\n {{ data.subTitle }}\n </ax-subtitle>\n }\n </ax-prefix>\n @if (data.closeButton) {\n <ax-suffix>\n <ax-close-button></ax-close-button>\n </ax-suffix>\n }\n </ax-header>\n}\n@if (this.data.content) {\n <div class=\"ax-custom-template-container\">\n <ng-template [cdkPortalOutlet]=\"_selectedPortal\" (attached)=\"handleAttched($event)\"></ng-template>\n </div>\n}\n\n<div class=\"ax-action-list ax-action-list-vertical\">\n @for (item of data.items; let i = $index; track i) {\n @if (item.group?.title) {\n <ax-title>{{ item.group?.title }}</ax-title>\n }\n <div class=\"ax-action-item ax-{{ item.color || 'default' }}\" [class.ax-state-disabled]=\"item.disabled\" [tabindex]=\"i\" (click)=\"onItemClick(item)\">\n <div class=\"ax-action-item-prefix\">\n @if (item.icon) {\n <span class=\"ax-item-icon\" [class]=\"item.icon\"></span>\n }\n <ax-text>{{ item.text | translate | async }}</ax-text>\n </div>\n <div class=\"ax-action-item-suffix\"></div>\n </div>\n @if (item.break) {\n <ax-divider></ax-divider>\n }\n }\n</div>\n","import { AXButtonModule } from '@acorex/components/button';\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { DragDropModule } from '@angular/cdk/drag-drop';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { NgModule } from '@angular/core';\n\nimport { AXCommonModule } from '@acorex/cdk/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { DialogModule } from '@angular/cdk/dialog';\nimport { AsyncPipe } from '@angular/common';\nimport { AXActionSheetComponent } from './action-sheet.component';\nimport { AXActionSheetService } from './action-sheet.service';\n\nconst MODULES = [\n AXCommonModule,\n DragDropModule,\n A11yModule,\n AXButtonModule,\n PortalModule,\n AXDecoratorModule,\n AXTranslationModule,\n DialogModule,\n AsyncPipe,\n];\n\n@NgModule({\n imports: [...MODULES, AXActionSheetComponent],\n exports: [AXActionSheetComponent],\n providers: [AXActionSheetService],\n})\nexport class AXActionSheetModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;MAaa,oBAAoB,CAAA;AADjC,IAAA,WAAA,GAAA;AAEU,QAAA,IAAA,CAAA,MAAM,GAAW,MAAM,CAAC,MAAM,CAAC;AACtB,QAAA,IAAA,CAAA,gBAAgB,GAAG,IAAI,OAAO,EAAsB;AACrE,QAAA,IAAA,CAAA,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE;AAgEzD;AA9DC,IAAA,IAAI,CAAC,MAA2B,EAAE,iBAAiB,GAAG,IAAI,EAAA;AACxD,QAAA,MAAM,aAAa,GAAwB;AACzC,YAAA,KAAK,EAAE,oBAAoB;AAC3B,YAAA,WAAW,EAAE,IAAI;AACjB,YAAA,oBAAoB,EAAE,IAAI;AAC1B,YAAA,MAAM,EAAE,IAAI;SACb;QACD,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC;QAE7C,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sBAAsB,EAAE;AACzD,YAAA,IAAI,EAAE,MAAM;AACZ,YAAA,SAAS,EAAE,gBAAgB;AAC3B,YAAA,YAAY,EAAE,IAAI;AAClB,YAAA,IAAI,EAAE,QAAQ;AACd,YAAA,SAAS,EAAE,IAAI;AACf,YAAA,iBAAiB,EAAE,IAAI;AACvB,YAAA,cAAc,EAAE,IAAI;AACpB,YAAA,WAAW,EAAE,IAAI;YACjB,UAAU,EAAE,CAAC,uBAAuB,CAAC;AACrC,YAAA,YAAY,EAAE,IAAI;YAClB,gBAAgB,EAAE,IAAI,sBAAsB,EAAE,CAAC,kBAAkB,EAAE,CAAC,MAAM,EAAE;AAC7E,SAAA,CAAC;AAEF,QAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;YACzB,SAAS;AACT,YAAA,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;YACvB,iBAAiB;AAClB,SAAA,CAAC;AAEF,QAAA,IAAI,MAAM,CAAC,oBAAoB,EAAE;AAC/B,YAAA,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,MAAK;AACrC,gBAAA,MAAM,iBAAiB,GAAG,SAAS,CAAC,iBAAiB;gBACrD,IAAI,iBAAiB,EAAE;oBACrB,iBAAiB,CAAC,KAAK,EAAE;;AAE7B,aAAC,CAAC;;QAEJ,MAAM,OAAO,GAAG,IAAI,OAAO,CAAyB,CAAC,OAAO,KAAI;AAC9D,YAAA,MAAM,MAAM,GAAG,IAAI,eAAe,CAAM,IAAI,CAAC;AAC7C,YAAA,MAAM,WAAW,GAA2B;AAC1C,gBAAA,KAAK,EAAE,CAAC,CAAC,KAAI;AACX,oBAAA,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;iBACnB;gBACD,MAAM;aACP;YACD,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAM,KAAI;AACpC,gBAAA,IAAI,CAAC,EAAE,IAAI,EAAE;oBACX,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;;qBACxB;AACL,oBAAA,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;;AAEnB,aAAC,CAAC;YACF,IAAI,OAAO,EAAE;gBACX,OAAO,CAAC,WAAW,CAAC;;AAExB,SAAC,CAAC;AACF,QAAA,OAAO,OAAO;;AAGhB,IAAA,wBAAwB,CAAC,KAAyB,EAAA;AAChD,QAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC;;+GAjExB,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;mHAApB,oBAAoB,EAAA,CAAA,CAAA;;4FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBADhC;;;ACwBD;;;;AAIG;AAoBG,MAAO,sBAAuB,SAAQ,eAAe,CAAA;AA2BzD;;AAEG;IACH,WAEY,CAAA,IAAyB,EAC3B,SAA2C,EAAA;AAEnD,QAAA,KAAK,EAAE;QAHG,IAAI,CAAA,IAAA,GAAJ,IAAI;QACN,IAAS,CAAA,SAAA,GAAT,SAAS;AAhCX,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AAC3B,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC;AAChC,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC;AAC5B,QAAA,IAAA,CAAA,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC;AAEjD,QAAA,IAAA,CAAA,qBAAqB,GAAG,MAAM,SAAS;AACvC,QAAA,IAAA,CAAA,mBAAmB,GAAG,MAAM,SAAS;AACrC,QAAA,IAAA,CAAA,qBAAqB,GAAG,MAAM,SAAS;AACvC,QAAA,IAAA,CAAA,mBAAmB,GAAG,MAAM,SAAS;AAErC,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC;AAC1B,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC;AACxB,QAAA,IAAA,CAAA,iBAAiB,GAAG,MAAM,CAAC,CAAC,CAAC;AAC7B,QAAA,IAAA,CAAA,sBAAsB,GAAG,MAAM,CAAC,KAAK,CAAC;AACtC,QAAA,IAAA,CAAA,kBAAkB,GAAG,MAAM,CAAC,GAAG,CAAC;;AAuBxC;;AAEG;IACM,QAAQ,GAAA;QACf,KAAK,CAAC,QAAQ,EAAE;AAChB,QAAA,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACrB,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,YAAY,WAAW,EAAE;AAC5C,gBAAA,IAAI,CAAC,eAAe,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,EAAE;oBACpF,SAAS,EAAE,IAAI,CAAC,IAAI;AACpB,oBAAA,GAAG,EAAE,IAAI;AACV,iBAAA,CAAC;AACF,gBAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE;;iBAClB,IAAI,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,KAAK,UAAU,EAAE;AAClD,gBAAA,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;AAC7D,gBAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE;;;AAG3B,QAAA,IAAI,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;AAC7D,YAAA,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC,KAAI;AAClF,gBAAA,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;oBACrB,CAAC,CAAC,cAAc,EAAE;oBAClB,IAAI,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAA,EAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,YAAY,EAAE,CAAA,EAAA,CAAI;;AAEtG,aAAC,CAAC;AACF,YAAA,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC,KAAI;AAClF,gBAAA,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;oBACrB,CAAC,CAAC,cAAc,EAAE;AAClB,oBAAA,IAAI,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAG,EAAA,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,YAAY,EAAE,CAAA,EAAA,CAAI;;AAEjH,aAAC,CAAC;AACF,YAAA,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC,KAAI;AAC9E,gBAAA,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;AACrB,oBAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC;AAC1B,oBAAA,IAAI,CAAC,kBAAkB,CAAC,wBAAwB,CAAC;AAC/C,wBAAA,WAAW,EAAE,CAAC;AACd,wBAAA,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE;AAC1B,wBAAA,iBAAiB,EAAE,IAAI;wBACvB,SAAS,EAAE,IAAI,CAAC,SAAS;AAC1B,qBAAA,CAAC;oBACF,IAAI,CAAC,QAAQ,EAAE;;AAEnB,aAAC,CAAC;AACF,YAAA,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC,KAAI;AAC/E,gBAAA,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;AACrB,oBAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC;AAC1B,oBAAA,IAAI,CAAC,kBAAkB,CAAC,wBAAwB,CAAC;AAC/C,wBAAA,WAAW,EAAE,CAAC;AACd,wBAAA,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE;AAC1B,wBAAA,iBAAiB,EAAE,IAAI;wBACvB,SAAS,EAAE,IAAI,CAAC,SAAS;AAC1B,qBAAA,CAAC;oBACF,IAAI,CAAC,QAAQ,EAAE;;AAEnB,aAAC,CAAC;;;IAIN,WAAW,GAAA;QACT,IAAI,CAAC,qBAAqB,EAAE;QAC5B,IAAI,CAAC,mBAAmB,EAAE;QAC1B,IAAI,CAAC,qBAAqB,EAAE;QAC5B,IAAI,CAAC,mBAAmB,EAAE;;AAGlB,IAAA,eAAe,CAAC,CAAa,EAAA;QACrC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;YAAE;QAC5C,CAAC,CAAC,cAAc,EAAE;AAClB,QAAA,IAAI,CAAC,kBAAkB,CAAC,wBAAwB,CAAC;AAC/C,YAAA,WAAW,EAAE,CAAC;AACd,YAAA,IAAI,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE;AAC5B,YAAA,iBAAiB,EAAE,IAAI;YACvB,SAAS,EAAE,IAAI,CAAC,SAAS;AAC1B,SAAA,CAAC;AACF,QAAA,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC;;AAGlB,IAAA,eAAe,CAAC,CAAa,EAAA;AACrC,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,IAAK,CAAC,CAAC,MAAsB,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC;YAAE;QACnF,CAAC,CAAC,cAAc,EAAE;AAClB,QAAA,IAAI,CAAC,kBAAkB,CAAC,wBAAwB,CAAC;AAC/C,YAAA,WAAW,EAAE,CAAC;AACd,YAAA,IAAI,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE;AAC5B,YAAA,iBAAiB,EAAE,IAAI;YACvB,SAAS,EAAE,IAAI,CAAC,SAAS;AAC1B,SAAA,CAAC;AACF,QAAA,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;;AAG/B,IAAA,UAAU,CAAC,OAAe,EAAA;AAChC,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,kBAAkB,GAAG,KAAK;AAEtD,QAAA,IAAI,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YACtC,IAAI,CAAC,YAAY,CAAC,GAAG,CACnB,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,YAAY,CAAC,CAC5F;;AAGH,QAAA,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,EAAE;AAClC,YAAA,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,YAAY,CAAC;AAC9D,YAAA,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC;;;IAIjC,QAAQ,GAAA;AACd,QAAA,IAAI,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,kBAAkB,GAAG,CAAA,EAAG,IAAI,CAAC,kBAAkB,EAAE,IAAI;AACjF,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,mBAAmB,GAAG,MAAM;AAEnE,QAAA,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,EAAE,GAAG,CAAC,EAAE;AACrE,YAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;YAChB;;AAEF,QAAA,IACE,IAAI,CAAC,cAAc,EAAE,CAAC,YAAY;AAChC,YAAA,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC;AAC7E,YAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAChB;YACA,IAAI,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO;AAC5C,YAAA,IAAI,CAAC,kBAAkB,CAAC,wBAAwB,CAAC;AAC/C,gBAAA,IAAI,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE;AAC7B,gBAAA,iBAAiB,EAAE,IAAI;gBACvB,SAAS,EAAE,IAAI,CAAC,SAAS;AAC1B,aAAA,CAAC;AACF,YAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,mBAAmB,GAAG,SAAS;YACtE;;AAEF,QAAA,IAAI,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,iBAAiB,EAAE,GAAG,IAAI;AACpE,QAAA,IAAI,CAAC,kBAAkB,CAAC,wBAAwB,CAAC;AAC/C,YAAA,IAAI,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE;AAC7B,YAAA,iBAAiB,EAAE,IAAI;YACvB,SAAS,EAAE,IAAI,CAAC,SAAS;AAC1B,SAAA,CAAC;QACF;;AAGM,IAAA,gBAAgB,CAAC,OAAe,EAAA;AACtC,QAAA,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YACpB,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,YAAY,GAAG,OAAO;;AAE7D,QAAA,IAAI,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,YAAY,GAAG,IAAI,CAAC,iBAAiB,EAAE,EAAE;YACpF,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,YAAY,GAAG,OAAO;;QAE7D,QACE,IAAI,CAAC,iBAAiB,EAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,YAAY,GAAG,OAAO,GAAG,IAAI,CAAC,iBAAiB,EAAE,IAAI,EAAE;;AAI3G,IAAA,aAAa,CAAC,GAA+B,EAAA;QACrD,GAAG,GAAG,GAAwB;AAC9B,QAAA,IAAI,GAAG,CAAC,QAAQ,EAAE;AAChB,YAAA,IAAI,CAAC,aAAa,GAAG,GAAG,CAAC,QAAQ;YACjC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC;AAC5C,YAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AACrD,YAAA,IAAI,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE;gBACzB,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAwB,KAAI;AAC3D,oBAAA,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;AACf,iBAAC,CAAC;;;;AAKR,IAAA,WAAW,CAAC,IAAuB,EAAA;AACjC,QAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;QAChB,IAAI,IAAI,EAAE,OAAO;YAAE,IAAI,CAAC,OAAO,EAAE;;AAGnC,IAAA,KAAK,CAAC,CAAC,GAAG,IAAI,EAAE,iBAAiB,GAAG,IAAI,EAAA;AACtC,QAAA,IAAI,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAG,EAAA,IAAI,CAAC,cAAc,EAAE,CAAC,YAAY,IAAI;QAC9E,UAAU,CAAC,MAAK;YACd,IAAI,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK;AAC5C,SAAC,CAAC;QACF,UAAU,CAAC,MAAK;AACd,YAAA,IAAI,CAAC,kBAAkB,CAAC,wBAAwB,CAAC;AAC/C,gBAAA,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;gBACxB,iBAAiB;gBACjB,SAAS,EAAE,IAAI,CAAC,SAAS;AAC1B,aAAA,CAAC;AACF,YAAA,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;gBACnB,SAAS,EAAE,IAAI,CAAC,aAAa;AAC7B,gBAAA,WAAW,EAAE,IAAI,CAAC,cAAc,EAAE;AAClC,gBAAA,IAAI,EAAE,CAAC;AACR,aAAA,CAAC;AACJ,SAAC,EAAE,IAAI,CAAC,kBAAkB,EAAE,CAAC;;AAG/B;;AAEG;IAEO,gBAAgB,GAAA;QACxB,MAAM,mBAAmB,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC;QAC1E,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,mBAAmB,EAAE;AAChD,YAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;;;AAtOT,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,kBA+BvB,WAAW,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AA/BV,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,sBAAsB,EAbtB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,gBAAA,EAAA,oBAAA,EAAA,EAAA,EAAA,SAAA,EAAA;AACT,YAAA,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,sBAAsB,EAAE;AAC7D,YAAA;AACE,gBAAA,OAAO,EAAE,mBAAmB;AAC5B,gBAAA,WAAW,EAAE,sBAAsB;AACpC,aAAA;AACD,YAAA;AACE,gBAAA,OAAO,EAAE,oBAAoB;AAC7B,gBAAA,WAAW,EAAE,sBAAsB;AACpC,aAAA;SACF,ECzDH,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,2rDAoDA,EDMY,MAAA,EAAA,CAAA,ghJAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,2BAA2B,EAAE,QAAA,EAAA,8IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,+BAA+B,0FAAE,eAAe,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAE,gBAAgB,EAAA,IAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAE,SAAS,EAAA,IAAA,EAAA,OAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FAEzG,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAnBlC,SAAS;+BACE,iBAAiB,EAAA,eAAA,EAGV,uBAAuB,CAAC,MAAM,iBAChC,iBAAiB,CAAC,IAAI,EAC1B,SAAA,EAAA;AACT,wBAAA,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,wBAAwB,EAAE;AAC7D,wBAAA;AACE,4BAAA,OAAO,EAAE,mBAAmB;AAC5B,4BAAA,WAAW,EAAwB,sBAAA;AACpC,yBAAA;AACD,wBAAA;AACE,4BAAA,OAAO,EAAE,oBAAoB;AAC7B,4BAAA,WAAW,EAAwB,sBAAA;AACpC,yBAAA;qBACF,EACQ,OAAA,EAAA,CAAC,2BAA2B,EAAE,+BAA+B,EAAE,eAAe,EAAE,gBAAgB,EAAE,SAAS,CAAC,EAAA,QAAA,EAAA,2rDAAA,EAAA,MAAA,EAAA,CAAA,ghJAAA,CAAA,EAAA;;0BAiClH,MAAM;2BAAC,WAAW;iEAoMX,gBAAgB,EAAA,CAAA;sBADzB,YAAY;uBAAC,gBAAgB;;;AEhRhC,MAAM,OAAO,GAAG;IACd,cAAc;IACd,cAAc;IACd,UAAU;IACV,cAAc;IACd,YAAY;IACZ,iBAAiB;IACjB,mBAAmB;IACnB,YAAY;IACZ,SAAS;CACV;MAOY,mBAAmB,CAAA;+GAAnB,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAnB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,YAhB9B,cAAc;YACd,cAAc;YACd,UAAU;YACV,cAAc;YACd,YAAY;YACZ,iBAAiB;YACjB,mBAAmB;YACnB,YAAY;YACZ,SAAS,EAIa,sBAAsB,CAAA,EAAA,OAAA,EAAA,CAClC,sBAAsB,CAAA,EAAA,CAAA,CAAA;AAGrB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,EAFnB,SAAA,EAAA,CAAC,oBAAoB,CAAC,YAdjC,cAAc;YACd,cAAc;YACd,UAAU;YACV,cAAc;YACd,YAAY;YACZ,iBAAiB;YACjB,mBAAmB;AACnB,YAAA,YAAY,EAKU,sBAAsB,CAAA,EAAA,CAAA,CAAA;;4FAIjC,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAL/B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,CAAC,GAAG,OAAO,EAAE,sBAAsB,CAAC;oBAC7C,OAAO,EAAE,CAAC,sBAAsB,CAAC;oBACjC,SAAS,EAAE,CAAC,oBAAoB,CAAC;AAClC,iBAAA;;;AC9BD;;AAEG;;;;"}
|
@@ -188,7 +188,7 @@ class AXFileExplorerTreeComponent {
|
|
188
188
|
this.internalService.dbClickHandler(e.data, false);
|
189
189
|
}
|
190
190
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: AXFileExplorerTreeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
191
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.2.14", type: AXFileExplorerTreeComponent, isStandalone: true, selector: "ax-file-explorer-tree", providers: [{ provide: AXComponent, useExisting: AXFileExplorerTreeComponent }], viewQueries: [{ propertyName: "drawer", first: true, predicate: AXDrawerComponent, descendants: true, isSignal: true }, { propertyName: "treeView", first: true, predicate: AXTreeViewComponent, descendants: true, isSignal: true }], ngImport: i0, template: "<ax-drawer-container\n [ngClass]=\"this.internalService.treeViewState() && 'ax-file-explore-drawer-border'\"\n [ngStyle]=\"this.internalService.treeViewState() ? { width: 'fit-content' } : { width: 0 }\"\n>\n <ax-drawer location=\"start\" mode=\"push\">\n <ax-content>\n <ax-tree-view\n (onCollapsedChanged)=\"openFolderOnViewHandler($event)\"\n [showCheckbox]=\"false\"\n hasChildField=\"hasChild\"\n [items]=\"internalService.dataCallBack()\"\n ></ax-tree-view>\n </ax-content>\n </ax-drawer>\n</ax-drawer-container>\n", styles: ["ax-file-explorer-tree .ax-file-explore-drawer-border{border-inline-end:1px solid rgba(var(--ax-sys-color-border-lightest-surface))}ax-file-explorer-tree ax-drawer-container{height:auto}ax-file-explorer-tree ax-drawer-container ax-drawer ax-content{padding:.5rem;overflow-x:hidden}ax-file-explorer-tree ax-drawer-container ax-drawer ax-text{white-space:nowrap;padding-inline-end:1rem}\n"], dependencies: [{ kind: "component", type: AXDrawerContainerComponent, selector: "ax-drawer-container" }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: AXDrawerComponent, selector: "ax-drawer", inputs: ["location", "showBackdrop", "mode", "closeOthers", "collapsed"], outputs: ["locationChange", "modeChange", "collapsedChange"] }, { kind: "component", type: AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "component", type: AXTreeViewComponent, selector: "ax-tree-view", inputs: ["items", "showCheckbox", "selectionMode", "selectionBehavior", "selectionScope", "focusNodeEnabled", "valueField", "textField", "visibleField", "disableField", "hasChildField", "selectedField", "expandedField", "tooltipField", "childrenField", "activeField", "indeterminateField", "parentField", "iconField", "toggleIcons", "look", "itemTemplate", "emptyTemplate", "expandOn"], outputs: ["onSelectionChanged", "onItemSelectedChanged", "onNodeClick", "onCollapsedChanged", "onNodedbClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
191
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.2.14", type: AXFileExplorerTreeComponent, isStandalone: true, selector: "ax-file-explorer-tree", providers: [{ provide: AXComponent, useExisting: AXFileExplorerTreeComponent }], viewQueries: [{ propertyName: "drawer", first: true, predicate: AXDrawerComponent, descendants: true, isSignal: true }, { propertyName: "treeView", first: true, predicate: AXTreeViewComponent, descendants: true, isSignal: true }], ngImport: i0, template: "<ax-drawer-container\n [ngClass]=\"this.internalService.treeViewState() && 'ax-file-explore-drawer-border'\"\n [ngStyle]=\"this.internalService.treeViewState() ? { width: 'fit-content' } : { width: 0 }\"\n>\n <ax-drawer location=\"start\" mode=\"push\">\n <ax-content>\n <ax-tree-view\n (onCollapsedChanged)=\"openFolderOnViewHandler($event)\"\n [showCheckbox]=\"false\"\n hasChildField=\"hasChild\"\n [items]=\"internalService.dataCallBack()\"\n ></ax-tree-view>\n </ax-content>\n </ax-drawer>\n</ax-drawer-container>\n", styles: ["ax-file-explorer-tree .ax-file-explore-drawer-border{border-inline-end:1px solid rgba(var(--ax-sys-color-border-lightest-surface))}ax-file-explorer-tree ax-drawer-container{height:auto}ax-file-explorer-tree ax-drawer-container ax-drawer ax-content{padding:.5rem;overflow-x:hidden}ax-file-explorer-tree ax-drawer-container ax-drawer ax-text{white-space:nowrap;padding-inline-end:1rem}\n"], dependencies: [{ kind: "component", type: AXDrawerContainerComponent, selector: "ax-drawer-container" }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: AXDrawerComponent, selector: "ax-drawer", inputs: ["location", "showBackdrop", "mode", "closeOthers", "collapsed"], outputs: ["locationChange", "modeChange", "collapsedChange"] }, { kind: "component", type: AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "component", type: AXTreeViewComponent, selector: "ax-tree-view", inputs: ["items", "showCheckbox", "hasCheckboxField", "selectionMode", "selectionBehavior", "selectionScope", "focusNodeEnabled", "valueField", "textField", "visibleField", "disableField", "hasChildField", "selectedField", "expandedField", "tooltipField", "childrenField", "activeField", "indeterminateField", "parentField", "iconField", "toggleIcons", "look", "itemTemplate", "emptyTemplate", "expandOn"], outputs: ["onSelectionChanged", "onItemSelectedChanged", "onNodeClick", "onCollapsedChanged", "onNodedbClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
192
192
|
}
|
193
193
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: AXFileExplorerTreeComponent, decorators: [{
|
194
194
|
type: Component,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-components-file-explorer.mjs","sources":["../../../../packages/components/file-explorer/src/lib/file-explorer-internal.service.ts","../../../../packages/components/file-explorer/src/lib/file-explorer.service.ts","../../../../packages/components/file-explorer/src/lib/file-explorer-container/file-explorer-container.component.ts","../../../../packages/components/file-explorer/src/lib/file-explorer-container/file-explorer-container.component.html","../../../../packages/components/file-explorer/src/lib/file-explorer-header/file-explorer-header.component.ts","../../../../packages/components/file-explorer/src/lib/file-explorer-header/file-explorer-header.component.html","../../../../packages/components/file-explorer/src/lib/file-explorer-item/file-explorer-item.component.ts","../../../../packages/components/file-explorer/src/lib/file-explorer-item/file-explorer-item.component.html","../../../../packages/components/file-explorer/src/lib/file-explorer-tree/file-explorer-tree.component.ts","../../../../packages/components/file-explorer/src/lib/file-explorer-tree/file-explorer-tree.component.html","../../../../packages/components/file-explorer/src/lib/file-explorer-view/file-explorer-view.component.ts","../../../../packages/components/file-explorer/src/lib/file-explorer-view/file-explorer-view.component.html","../../../../packages/components/file-explorer/src/lib/file-explorer.module.ts","../../../../packages/components/file-explorer/src/acorex-components-file-explorer.ts"],"sourcesContent":["import { AXTreeViewComponent } from '@acorex/components/tree-view';\nimport { Injectable, signal } from '@angular/core';\nimport { AXFileExplorerSchema, ViewModeType } from './file-explorer-types';\n\n@Injectable()\nexport class AXFileExplorerInternalService {\n viewMode = signal<ViewModeType>('ax-large-icon');\n treeViewState = signal(false);\n allData = signal<AXFileExplorerSchema[]>([]);\n showData = signal<AXFileExplorerSchema[]>([]);\n breadcrumbsData = signal(['root']);\n activeFolderId = signal<string | number>(null);\n dataCallBack = signal<(selectedItemId?: string | number, sortBy?: 'name' | 'date' | 'type') => any>(null);\n treeViewInstant = signal<AXTreeViewComponent>(null);\n clickedItems = new Set();\n\n findItemInNestedArray(array: any[], predicate: (item: any) => boolean) {\n for (const item of array) {\n if (predicate(item)) {\n return item;\n }\n if (item.children) {\n const found = this.findItemInNestedArray(item.children, predicate);\n if (found) return found;\n }\n }\n return null;\n }\n\n async dbClickHandler(item?: AXFileExplorerSchema, isTreeViewClicked = true) {\n if (item.extension) return;\n if (!item?.id) return;\n\n if (isTreeViewClicked) {\n this.treeViewInstant().executeOnTreeNode(item, 'active', true);\n this.treeViewInstant().executeOnTreeNode(item, 'expand', true);\n }\n\n this.activeFolderId.set(item.id);\n const clickedItem = this.findItemInNestedArray(this.allData(), (e) => e.id === item.id);\n this.breadcrumbsData.update((prev) => [...prev, clickedItem.text]);\n let canPass = true;\n this.clickedItems.forEach((e) => {\n if (e === item.id) canPass = false;\n });\n this.clickedItems.add(item.id);\n if (!canPass) return;\n const newChild = await this.dataCallBack()(item.id);\n this.allData.update((prev) => {\n const copy = [...prev];\n const find = this.findItemInNestedArray(copy, (e) => e.id === item.id);\n find.children = newChild;\n return copy;\n });\n }\n}\n","import { inject, Injectable } from '@angular/core';\nimport { AXFileExplorerInternalService } from './file-explorer-internal.service';\nimport { ViewModeType } from './file-explorer-types';\n\n@Injectable()\nexport class AXFileExplorerService {\n private internalService = inject(AXFileExplorerInternalService);\n\n backButtonHandler() {\n this.internalService.breadcrumbsData.update((prev) => {\n const copy = [...prev];\n if (copy.length !== 1) copy.pop();\n return copy;\n });\n\n const parentId = this.internalService.showData()[0].parentId;\n const parent = this.internalService.findItemInNestedArray(\n this.internalService.allData(),\n (item) => item.id === parentId,\n );\n if (parent?.parentId) {\n this.internalService.activeFolderId.set(parent.parentId);\n } else {\n this.internalService.activeFolderId.set(null);\n }\n\n this.internalService.treeViewInstant().executeOnTreeNode(parent, 'active', false);\n }\n\n menuToggleHandler() {\n this.internalService.treeViewState.update((prev) => !prev);\n }\n\n changeViewHandler(v: ViewModeType) {\n this.internalService.viewMode.set(v);\n }\n\n async sortItemHandler(sort: 'name' | 'date' | 'type') {\n await this.internalService.dataCallBack()(this.internalService.activeFolderId(), sort);\n }\n}\n","import { AXComponent } from '@acorex/cdk/common';\nimport { Component, ViewEncapsulation } from '@angular/core';\nimport { AXFileExplorerInternalService } from '../file-explorer-internal.service';\nimport { AXFileExplorerService } from '../file-explorer.service';\n\n@Component({\n selector: 'ax-file-explorer-container',\n templateUrl: './file-explorer-container.component.html',\n styleUrls: ['./file-explorer-container.component.scss'],\n encapsulation: ViewEncapsulation.None,\n providers: [\n AXFileExplorerService,\n AXFileExplorerInternalService,\n { provide: AXComponent, useExisting: AXFileExplorerContainerComponent },\n ],\n})\nexport class AXFileExplorerContainerComponent {}\n","<ng-content select=\"ax-file-explorer-tree\"></ng-content>\n<ng-content select=\"ax-file-explorer-view\"></ng-content>\n","import { AXComponent } from '@acorex/cdk/common';\nimport { AXBreadCrumbsComponent, AXBreadCrumbsItemComponent } from '@acorex/components/breadcrumbs';\nimport { AXButtonComponent } from '@acorex/components/button';\nimport { AXDecoratorGenericComponent, AXDecoratorIconComponent } from '@acorex/components/decorators';\nimport { AXMenuComponent, AXMenuItemComponent } from '@acorex/components/menu';\nimport { AXToolBarComponent } from '@acorex/components/toolbar';\nimport { NgIf } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject, ViewEncapsulation } from '@angular/core';\nimport { AXFileExplorerInternalService } from '../file-explorer-internal.service';\nimport { AXFileExplorerService } from '../file-explorer.service';\n\n@Component({\n selector: 'ax-file-explorer-header',\n templateUrl: './file-explorer-header.component.html',\n styleUrls: ['./file-explorer-header.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n AXToolBarComponent,\n AXDecoratorGenericComponent,\n AXButtonComponent,\n AXDecoratorIconComponent,\n AXBreadCrumbsComponent,\n NgIf,\n AXBreadCrumbsItemComponent,\n AXMenuComponent,\n AXMenuItemComponent,\n ],\n providers: [{ provide: AXComponent, useExisting: AXFileExplorerHeaderComponent }],\n})\nexport class AXFileExplorerHeaderComponent {\n protected service = inject(AXFileExplorerService);\n protected internalService = inject(AXFileExplorerInternalService);\n}\n","<ax-toolbar>\n <ax-prefix>\n <ax-button (onClick)=\"service.menuToggleHandler()\" look=\"blank\">\n <ax-icon class=\"ax-icon ax-icon-menu\"></ax-icon>\n </ax-button>\n\n <ax-divider></ax-divider>\n\n <ax-button (onClick)=\"service.backButtonHandler()\" look=\"blank\">\n <ax-icon class=\"ax-icon ax-icon-up-folder\"></ax-icon>\n </ax-button>\n\n <ax-divider></ax-divider>\n\n <ax-breadcrumbs>\n <ng-template *ngIf=\"false\" #divider> '|' </ng-template>\n @for (item of internalService.breadcrumbsData(); track item; let idx = $last) {\n <ax-breadcrumbs-item [active]=\"idx\">\n <ax-text>{{ item }}</ax-text>\n </ax-breadcrumbs-item>\n }\n </ax-breadcrumbs>\n </ax-prefix>\n\n <ax-suffix>\n <ax-menu openOn=\"click\" [hasArrow]=\"false\">\n <ax-menu-item>\n <ax-text>View</ax-text>\n\n <ax-menu-item (onClick)=\"service.changeViewHandler('ax-large-icon')\">\n <ax-text>Large</ax-text>\n </ax-menu-item>\n\n <ax-menu-item (onClick)=\"service.changeViewHandler('ax-small-icon')\">\n <ax-text>Small</ax-text>\n </ax-menu-item>\n\n <ax-menu-item (onClick)=\"service.changeViewHandler('ax-list-icon')\">\n <ax-text>List</ax-text>\n </ax-menu-item>\n </ax-menu-item>\n </ax-menu>\n\n <ax-divider></ax-divider>\n\n <ax-menu openOn=\"click\" [hasArrow]=\"false\">\n <ax-menu-item>\n <ax-prefix>\n <ax-icon class=\"ax-icon ax-icon-sort\"></ax-icon>\n </ax-prefix>\n <ax-menu-item (onClick)=\"service.sortItemHandler('name')\"> <ax-text>Name</ax-text> </ax-menu-item>\n <ax-menu-item (onClick)=\"service.sortItemHandler('date')\"> <ax-text>Date</ax-text> </ax-menu-item>\n <ax-menu-item (onClick)=\"service.sortItemHandler('type')\"> <ax-text>Type</ax-text> </ax-menu-item>\n </ax-menu-item>\n </ax-menu>\n </ax-suffix>\n</ax-toolbar>\n","import { AXComponent, MXBaseComponent } from '@acorex/cdk/common';\nimport { AXDecoratorGenericComponent, AXDecoratorIconComponent } from '@acorex/components/decorators';\nimport { NgClass } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, input, output, ViewEncapsulation } from '@angular/core';\nimport { AXFileExplorerSchema, ViewModeType } from '../file-explorer-types';\n\n@Component({\n selector: 'ax-file-explorer-item',\n templateUrl: './file-explorer-item.component.html',\n styleUrls: ['./file-explorer-item.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AXDecoratorIconComponent, AXDecoratorGenericComponent, NgClass],\n providers: [{ provide: AXComponent, useExisting: AXFileExplorerItemComponent }],\n})\nexport class AXFileExplorerItemComponent extends MXBaseComponent {\n data = input<AXFileExplorerSchema>();\n dbClick = output();\n viewMode = input<ViewModeType>();\n\n protected dbClickHandler() {\n this.dbClick.emit();\n }\n\n // protected fileExtensionPreviewHandler(extension: string) {\n // switch (extension) {\n // case '':\n // return this.sanitizer\n // .bypassSecurityTrustHtml(`<svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n // <path fill=\"none\" d=\"M18 10L13 10\" stroke-linecap=\"round\"/>\n // <path fill=\"none\" d=\"M10 3H16.5C16.9644 3 17.1966 3 17.3916 3.02567C18.7378 3.2029 19.7971 4.26222 19.9743 5.60842C20 5.80337 20 6.03558 20 6.5\" />\n // <path fill=\"none\" d=\"M2 6.94975C2 6.06722 2 5.62595 2.06935 5.25839C2.37464 3.64031 3.64031 2.37464 5.25839 2.06935C5.62595 2 6.06722 2 6.94975 2C7.33642 2 7.52976 2 7.71557 2.01738C8.51665 2.09229 9.27652 2.40704 9.89594 2.92051C10.0396 3.03961 10.1763 3.17633 10.4497 3.44975L11 4C11.8158 4.81578 12.2237 5.22367 12.7121 5.49543C12.9804 5.64471 13.2651 5.7626 13.5604 5.84678C14.0979 6 14.6747 6 15.8284 6H16.2021C18.8345 6 20.1506 6 21.0062 6.76946C21.0849 6.84024 21.1598 6.91514 21.2305 6.99383C22 7.84935 22 9.16554 22 11.7979V14C22 17.7712 22 19.6569 20.8284 20.8284C19.6569 22 17.7712 22 14 22H10C6.22876 22 4.34315 22 3.17157 20.8284C2 19.6569 2 17.7712 2 14V6.94975Z\" />\n // </svg>`);\n // break;\n // case 'jpg':\n // case 'png':\n // case 'jpeg':\n // return this.sanitizer\n // .bypassSecurityTrustHtml(`<svg viewBox=\"-0.5 0 25 25\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n // <path\n // d=\"M21 22H3C2.72 22 2.5 21.6517 2.5 21.2083V3.79167C2.5 3.34833 2.72 3 3 3H21C21.28 3 21.5 3.34833 21.5 3.79167V21.2083C21.5 21.6517 21.28 22 21 22Z\"\n // stroke-miterlimit=\"10\"\n // stroke-linecap=\"round\"\n // stroke-linejoin=\"round\"\n // />\n // <path\n // d=\"M4.5 19.1875L9.66 12.6875C9.86 12.4375 10.24 12.4375 10.44 12.6875L15.6 19.1875\"\n // stroke-miterlimit=\"10\"\n // stroke-linecap=\"round\"\n // stroke-linejoin=\"round\"\n // />\n // <path\n // d=\"M16.2 16.6975L16.4599 16.3275C16.6599 16.0775 17.0399 16.0775 17.2399 16.3275L19.4999 19.1875\"\n // stroke-miterlimit=\"10\"\n // stroke-linecap=\"round\"\n // stroke-linejoin=\"round\"\n // />\n // <path\n // d=\"M17.2046 9.54315C17.2046 10.4294 16.4862 11.1478 15.6 11.1478C14.7138 11.1478 13.9954 10.4294 13.9954 9.54315C13.9954 8.65695 14.7138 7.93854 15.6 7.93854C16.4862 7.93854 17.2046 8.65695 17.2046 9.54315Z\"\n // />\n // </svg>`);\n // break;\n // case 'mp3':\n // case 'wav':\n // return this.sanitizer\n // .bypassSecurityTrustHtml(`<svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n // <path\n // fill-rule=\"evenodd\"\n // clip-rule=\"evenodd\"\n // d=\"M10 1C9.73478 1 9.48043 1.10536 9.29289 1.29289L3.29289 7.29289C3.10536 7.48043 3 7.73478 3 8V20C3 21.6569 4.34315 23 6 23H7C7.55228 23 8 22.5523 8 22C8 21.4477 7.55228 21 7 21H6C5.44772 21 5 20.5523 5 20V9H10C10.5523 9 11 8.55228 11 8V3H18C18.5523 3 19 3.44772 19 4V7C19 7.55228 19.4477 8 20 8C20.5523 8 21 7.55228 21 7V4C21 2.34315 19.6569 1 18 1H10ZM9 7H6.41421L9 4.41421V7ZM12.5 24C13.8807 24 15 22.8807 15 21.5V12.8673L20 12.153V18.05C19.8384 18.0172 19.6712 18 19.5 18C18.1193 18 17 19.1193 17 20.5C17 21.8807 18.1193 23 19.5 23C20.8807 23 22 21.8807 22 20.5V11C22 10.7101 21.8742 10.4345 21.6552 10.2445C21.4362 10.0546 21.1456 9.96905 20.8586 10.0101L13.8586 11.0101C13.3659 11.0804 13 11.5023 13 12V19.05C12.8384 19.0172 12.6712 19 12.5 19C11.1193 19 10 20.1193 10 21.5C10 22.8807 11.1193 24 12.5 24Z\"\n // />\n // </svg>`);\n // default:\n // return this.sanitizer\n // .bypassSecurityTrustHtml(`<svg viewBox=\"0 0 32 32\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\">\n // <path\n // d=\"M26.731 9.902c-0.005-0.035-0.011-0.066-0.019-0.095l0.001 0.005c-0.031-0.134-0.094-0.249-0.182-0.342l0 0-8-8c-0.092-0.087-0.207-0.15-0.335-0.181l-0.005-0.001c-0.027-0.008-0.059-0.014-0.092-0.019l-0.003-0c-0.026-0.007-0.059-0.014-0.092-0.019l-0.004-0h-12c-0.414 0-0.75 0.336-0.75 0.75v0 28c0 0.414 0.336 0.75 0.75 0.75h20c0.414-0 0.75-0.336 0.75-0.75v0-20c-0.005-0.038-0.012-0.071-0.020-0.103l0.001 0.005zM24.189 9.25h-5.439v-5.439zM6.75 29.25v-26.5h10.5v7.25c0 0.414 0.336 0.75 0.75 0.75h7.25v18.5z\"\n // ></path>\n // </svg>`);\n // }\n // }\n}\n","@if (viewMode() === 'ax-list-icon') {\n <div class=\"ax-list-icon\" (dblclick)=\"dbClickHandler()\">\n <div class=\"ax-thumb-file\">\n <ax-icon [icon]=\"data().icon\"></ax-icon>\n <ax-text>{{ data().text }}</ax-text>\n </div>\n\n @if (data().extension) {\n <ax-text>\n {{ data().size }}\n </ax-text>\n }\n\n <ax-text>\n {{ data().description }}\n </ax-text>\n\n <ax-text>\n {{ data().lastModify }}\n </ax-text>\n </div>\n} @else {\n <div [ngClass]=\"viewMode()\" (dblclick)=\"dbClickHandler()\">\n <ax-icon [icon]=\"data().icon\"></ax-icon>\n <ax-text>{{ data().text }}</ax-text>\n </div>\n}\n","import { AXComponent } from '@acorex/cdk/common';\nimport { AXDecoratorGenericComponent } from '@acorex/components/decorators';\nimport { AXDrawerComponent, AXDrawerContainerComponent } from '@acorex/components/drawer';\nimport { AXTreeItemClickBaseEvent, AXTreeViewComponent } from '@acorex/components/tree-view';\nimport { NgClass, NgStyle } from '@angular/common';\nimport {\n afterNextRender,\n ChangeDetectionStrategy,\n Component,\n effect,\n inject,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXFileExplorerInternalService } from '../file-explorer-internal.service';\n\n@Component({\n selector: 'ax-file-explorer-tree',\n templateUrl: './file-explorer-tree.component.html',\n styleUrls: ['./file-explorer-tree.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n AXDrawerContainerComponent,\n NgClass,\n NgStyle,\n AXDrawerComponent,\n AXDecoratorGenericComponent,\n AXTreeViewComponent,\n ],\n providers: [{ provide: AXComponent, useExisting: AXFileExplorerTreeComponent }],\n})\nexport class AXFileExplorerTreeComponent {\n protected internalService = inject(AXFileExplorerInternalService);\n protected drawer = viewChild(AXDrawerComponent);\n protected treeView = viewChild(AXTreeViewComponent);\n\n #effect = effect(() => {\n if (this.internalService.treeViewState()) {\n this.drawer().open();\n } else {\n this.drawer().close();\n }\n });\n\n #init = afterNextRender(() => {\n this.internalService.treeViewInstant.set(this.treeView());\n });\n\n protected openFolderOnViewHandler(e: AXTreeItemClickBaseEvent) {\n this.internalService.dbClickHandler(e.data, false);\n }\n}\n","<ax-drawer-container\n [ngClass]=\"this.internalService.treeViewState() && 'ax-file-explore-drawer-border'\"\n [ngStyle]=\"this.internalService.treeViewState() ? { width: 'fit-content' } : { width: 0 }\"\n>\n <ax-drawer location=\"start\" mode=\"push\">\n <ax-content>\n <ax-tree-view\n (onCollapsedChanged)=\"openFolderOnViewHandler($event)\"\n [showCheckbox]=\"false\"\n hasChildField=\"hasChild\"\n [items]=\"internalService.dataCallBack()\"\n ></ax-tree-view>\n </ax-content>\n </ax-drawer>\n</ax-drawer-container>\n","import { AXComponent } from '@acorex/cdk/common';\nimport {\n AXContextMenuComponent,\n AXContextMenuItemsClickEvent,\n AXContextMenuOpeningEvent,\n AXMenuItem,\n} from '@acorex/components/menu';\nimport { NgClass } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, effect, inject, input, viewChild, ViewEncapsulation } from '@angular/core';\nimport { AXFileExplorerInternalService } from '../file-explorer-internal.service';\nimport { AXFileExplorerItemComponent } from '../file-explorer-item/file-explorer-item.component';\n\n@Component({\n selector: 'ax-file-explorer-view',\n templateUrl: './file-explorer-view.component.html',\n styleUrls: ['./file-explorer-view.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgClass, AXFileExplorerItemComponent, AXContextMenuComponent],\n providers: [{ provide: AXComponent, useExisting: AXFileExplorerViewComponent }],\n})\nexport class AXFileExplorerViewComponent {\n dataCallBack = input.required<(selectedItemId?: string | number, sortBy?: 'name' | 'date' | 'type') => any>();\n\n protected contextMenu = viewChild(AXContextMenuComponent);\n protected internalService = inject(AXFileExplorerInternalService);\n\n #init = effect(() => {\n this.setInitialAllData();\n this.internalService.dataCallBack.set(this.dataCallBack());\n });\n\n #effect2 = effect(() => {\n if (this.internalService.activeFolderId()) {\n const result = this.internalService.findItemInNestedArray(\n this.internalService.allData(),\n (item) => item.id === this.internalService.activeFolderId(),\n );\n this.internalService.showData.set(result.children);\n } else {\n this.internalService.showData.set(this.internalService.allData());\n }\n setTimeout(() => {\n this.contextMenu().refresh();\n });\n });\n\n protected async setInitialAllData() {\n const rootData = await this.dataCallBack()();\n this.internalService.allData.set(rootData);\n }\n\n protected handleContextMenuOpening(e: AXContextMenuOpeningEvent) {\n const target = e.targetElement['__axContext__'] as AXFileExplorerItemComponent;\n\n const items: AXMenuItem[] = [{ text: 'open', data: target }, { text: 'delete', data: target } as AXMenuItem];\n e.items.push(...items);\n\n // if (items.length) {\n // e.items.push(...items);\n // } else {\n // e.canceled = true;\n // }\n }\n\n protected handleContextMenuItemClick(e: AXContextMenuItemsClickEvent) {\n this.internalService.dbClickHandler(e.item.data.data());\n }\n}\n","<ng-content select=\"ax-file-explorer-header\"></ng-content>\n\n<div [ngClass]=\"internalService.viewMode()\" class=\"ax-file-container\">\n @for (item of internalService.showData(); track item.id) {\n <ax-file-explorer-item\n id=\"ax-file-explore-item-ref\"\n (dbClick)=\"internalService.dbClickHandler(item)\"\n [data]=\"item\"\n [viewMode]=\"internalService.viewMode()\"\n ></ax-file-explorer-item>\n }\n</div>\n<ax-context-menu\n target=\"#ax-file-explore-item-ref\"\n orientation=\"vertical\"\n (onOpening)=\"handleContextMenuOpening($event)\"\n (onItemClick)=\"handleContextMenuItemClick($event)\"\n>\n</ax-context-menu>\n","import { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDrawerModule } from '@acorex/components/drawer';\nimport { AXMenuModule } from '@acorex/components/menu';\nimport { AXToolBarModule } from '@acorex/components/toolbar';\nimport { AXTreeViewModule } from '@acorex/components/tree-view';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AXFileExplorerContainerComponent } from './file-explorer-container/file-explorer-container.component';\nimport { AXFileExplorerHeaderComponent } from './file-explorer-header/file-explorer-header.component';\nimport { AXFileExplorerItemComponent } from './file-explorer-item/file-explorer-item.component';\nimport { AXFileExplorerTreeComponent } from './file-explorer-tree/file-explorer-tree.component';\nimport { AXFileExplorerViewComponent } from './file-explorer-view/file-explorer-view.component';\n\nconst COMPONENT = [\n AXFileExplorerContainerComponent,\n AXFileExplorerViewComponent,\n AXFileExplorerItemComponent,\n AXFileExplorerHeaderComponent,\n AXFileExplorerTreeComponent,\n];\n\nconst MODULES = [\n AXDecoratorModule,\n AXButtonModule,\n AXBreadcrumbsModule,\n CommonModule,\n AXToolBarModule,\n AXMenuModule,\n AXDrawerModule,\n AXTreeViewModule,\n];\n\n@NgModule({\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXFileExplorerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"acorex-components-file-explorer.mjs","sources":["../../../../packages/components/file-explorer/src/lib/file-explorer-internal.service.ts","../../../../packages/components/file-explorer/src/lib/file-explorer.service.ts","../../../../packages/components/file-explorer/src/lib/file-explorer-container/file-explorer-container.component.ts","../../../../packages/components/file-explorer/src/lib/file-explorer-container/file-explorer-container.component.html","../../../../packages/components/file-explorer/src/lib/file-explorer-header/file-explorer-header.component.ts","../../../../packages/components/file-explorer/src/lib/file-explorer-header/file-explorer-header.component.html","../../../../packages/components/file-explorer/src/lib/file-explorer-item/file-explorer-item.component.ts","../../../../packages/components/file-explorer/src/lib/file-explorer-item/file-explorer-item.component.html","../../../../packages/components/file-explorer/src/lib/file-explorer-tree/file-explorer-tree.component.ts","../../../../packages/components/file-explorer/src/lib/file-explorer-tree/file-explorer-tree.component.html","../../../../packages/components/file-explorer/src/lib/file-explorer-view/file-explorer-view.component.ts","../../../../packages/components/file-explorer/src/lib/file-explorer-view/file-explorer-view.component.html","../../../../packages/components/file-explorer/src/lib/file-explorer.module.ts","../../../../packages/components/file-explorer/src/acorex-components-file-explorer.ts"],"sourcesContent":["import { AXTreeViewComponent } from '@acorex/components/tree-view';\nimport { Injectable, signal } from '@angular/core';\nimport { AXFileExplorerSchema, ViewModeType } from './file-explorer-types';\n\n@Injectable()\nexport class AXFileExplorerInternalService {\n viewMode = signal<ViewModeType>('ax-large-icon');\n treeViewState = signal(false);\n allData = signal<AXFileExplorerSchema[]>([]);\n showData = signal<AXFileExplorerSchema[]>([]);\n breadcrumbsData = signal(['root']);\n activeFolderId = signal<string | number>(null);\n dataCallBack = signal<(selectedItemId?: string | number, sortBy?: 'name' | 'date' | 'type') => any>(null);\n treeViewInstant = signal<AXTreeViewComponent>(null);\n clickedItems = new Set();\n\n findItemInNestedArray(array: any[], predicate: (item: any) => boolean) {\n for (const item of array) {\n if (predicate(item)) {\n return item;\n }\n if (item.children) {\n const found = this.findItemInNestedArray(item.children, predicate);\n if (found) return found;\n }\n }\n return null;\n }\n\n async dbClickHandler(item?: AXFileExplorerSchema, isTreeViewClicked = true) {\n if (item.extension) return;\n if (!item?.id) return;\n\n if (isTreeViewClicked) {\n this.treeViewInstant().executeOnTreeNode(item, 'active', true);\n this.treeViewInstant().executeOnTreeNode(item, 'expand', true);\n }\n\n this.activeFolderId.set(item.id);\n const clickedItem = this.findItemInNestedArray(this.allData(), (e) => e.id === item.id);\n this.breadcrumbsData.update((prev) => [...prev, clickedItem.text]);\n let canPass = true;\n this.clickedItems.forEach((e) => {\n if (e === item.id) canPass = false;\n });\n this.clickedItems.add(item.id);\n if (!canPass) return;\n const newChild = await this.dataCallBack()(item.id);\n this.allData.update((prev) => {\n const copy = [...prev];\n const find = this.findItemInNestedArray(copy, (e) => e.id === item.id);\n find.children = newChild;\n return copy;\n });\n }\n}\n","import { inject, Injectable } from '@angular/core';\nimport { AXFileExplorerInternalService } from './file-explorer-internal.service';\nimport { ViewModeType } from './file-explorer-types';\n\n@Injectable()\nexport class AXFileExplorerService {\n private internalService = inject(AXFileExplorerInternalService);\n\n backButtonHandler() {\n this.internalService.breadcrumbsData.update((prev) => {\n const copy = [...prev];\n if (copy.length !== 1) copy.pop();\n return copy;\n });\n\n const parentId = this.internalService.showData()[0].parentId;\n const parent = this.internalService.findItemInNestedArray(\n this.internalService.allData(),\n (item) => item.id === parentId,\n );\n if (parent?.parentId) {\n this.internalService.activeFolderId.set(parent.parentId);\n } else {\n this.internalService.activeFolderId.set(null);\n }\n\n this.internalService.treeViewInstant().executeOnTreeNode(parent, 'active', false);\n }\n\n menuToggleHandler() {\n this.internalService.treeViewState.update((prev) => !prev);\n }\n\n changeViewHandler(v: ViewModeType) {\n this.internalService.viewMode.set(v);\n }\n\n async sortItemHandler(sort: 'name' | 'date' | 'type') {\n await this.internalService.dataCallBack()(this.internalService.activeFolderId(), sort);\n }\n}\n","import { AXComponent } from '@acorex/cdk/common';\nimport { Component, ViewEncapsulation } from '@angular/core';\nimport { AXFileExplorerInternalService } from '../file-explorer-internal.service';\nimport { AXFileExplorerService } from '../file-explorer.service';\n\n@Component({\n selector: 'ax-file-explorer-container',\n templateUrl: './file-explorer-container.component.html',\n styleUrls: ['./file-explorer-container.component.scss'],\n encapsulation: ViewEncapsulation.None,\n providers: [\n AXFileExplorerService,\n AXFileExplorerInternalService,\n { provide: AXComponent, useExisting: AXFileExplorerContainerComponent },\n ],\n})\nexport class AXFileExplorerContainerComponent {}\n","<ng-content select=\"ax-file-explorer-tree\"></ng-content>\n<ng-content select=\"ax-file-explorer-view\"></ng-content>\n","import { AXComponent } from '@acorex/cdk/common';\nimport { AXBreadCrumbsComponent, AXBreadCrumbsItemComponent } from '@acorex/components/breadcrumbs';\nimport { AXButtonComponent } from '@acorex/components/button';\nimport { AXDecoratorGenericComponent, AXDecoratorIconComponent } from '@acorex/components/decorators';\nimport { AXMenuComponent, AXMenuItemComponent } from '@acorex/components/menu';\nimport { AXToolBarComponent } from '@acorex/components/toolbar';\nimport { NgIf } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject, ViewEncapsulation } from '@angular/core';\nimport { AXFileExplorerInternalService } from '../file-explorer-internal.service';\nimport { AXFileExplorerService } from '../file-explorer.service';\n\n@Component({\n selector: 'ax-file-explorer-header',\n templateUrl: './file-explorer-header.component.html',\n styleUrls: ['./file-explorer-header.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n AXToolBarComponent,\n AXDecoratorGenericComponent,\n AXButtonComponent,\n AXDecoratorIconComponent,\n AXBreadCrumbsComponent,\n NgIf,\n AXBreadCrumbsItemComponent,\n AXMenuComponent,\n AXMenuItemComponent,\n ],\n providers: [{ provide: AXComponent, useExisting: AXFileExplorerHeaderComponent }],\n})\nexport class AXFileExplorerHeaderComponent {\n protected service = inject(AXFileExplorerService);\n protected internalService = inject(AXFileExplorerInternalService);\n}\n","<ax-toolbar>\n <ax-prefix>\n <ax-button (onClick)=\"service.menuToggleHandler()\" look=\"blank\">\n <ax-icon class=\"ax-icon ax-icon-menu\"></ax-icon>\n </ax-button>\n\n <ax-divider></ax-divider>\n\n <ax-button (onClick)=\"service.backButtonHandler()\" look=\"blank\">\n <ax-icon class=\"ax-icon ax-icon-up-folder\"></ax-icon>\n </ax-button>\n\n <ax-divider></ax-divider>\n\n <ax-breadcrumbs>\n <ng-template *ngIf=\"false\" #divider> '|' </ng-template>\n @for (item of internalService.breadcrumbsData(); track item; let idx = $last) {\n <ax-breadcrumbs-item [active]=\"idx\">\n <ax-text>{{ item }}</ax-text>\n </ax-breadcrumbs-item>\n }\n </ax-breadcrumbs>\n </ax-prefix>\n\n <ax-suffix>\n <ax-menu openOn=\"click\" [hasArrow]=\"false\">\n <ax-menu-item>\n <ax-text>View</ax-text>\n\n <ax-menu-item (onClick)=\"service.changeViewHandler('ax-large-icon')\">\n <ax-text>Large</ax-text>\n </ax-menu-item>\n\n <ax-menu-item (onClick)=\"service.changeViewHandler('ax-small-icon')\">\n <ax-text>Small</ax-text>\n </ax-menu-item>\n\n <ax-menu-item (onClick)=\"service.changeViewHandler('ax-list-icon')\">\n <ax-text>List</ax-text>\n </ax-menu-item>\n </ax-menu-item>\n </ax-menu>\n\n <ax-divider></ax-divider>\n\n <ax-menu openOn=\"click\" [hasArrow]=\"false\">\n <ax-menu-item>\n <ax-prefix>\n <ax-icon class=\"ax-icon ax-icon-sort\"></ax-icon>\n </ax-prefix>\n <ax-menu-item (onClick)=\"service.sortItemHandler('name')\"> <ax-text>Name</ax-text> </ax-menu-item>\n <ax-menu-item (onClick)=\"service.sortItemHandler('date')\"> <ax-text>Date</ax-text> </ax-menu-item>\n <ax-menu-item (onClick)=\"service.sortItemHandler('type')\"> <ax-text>Type</ax-text> </ax-menu-item>\n </ax-menu-item>\n </ax-menu>\n </ax-suffix>\n</ax-toolbar>\n","import { AXComponent, MXBaseComponent } from '@acorex/cdk/common';\nimport { AXDecoratorGenericComponent, AXDecoratorIconComponent } from '@acorex/components/decorators';\nimport { NgClass } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, input, output, ViewEncapsulation } from '@angular/core';\nimport { AXFileExplorerSchema, ViewModeType } from '../file-explorer-types';\n\n@Component({\n selector: 'ax-file-explorer-item',\n templateUrl: './file-explorer-item.component.html',\n styleUrls: ['./file-explorer-item.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AXDecoratorIconComponent, AXDecoratorGenericComponent, NgClass],\n providers: [{ provide: AXComponent, useExisting: AXFileExplorerItemComponent }],\n})\nexport class AXFileExplorerItemComponent extends MXBaseComponent {\n data = input<AXFileExplorerSchema>();\n dbClick = output();\n viewMode = input<ViewModeType>();\n\n protected dbClickHandler() {\n this.dbClick.emit();\n }\n\n // protected fileExtensionPreviewHandler(extension: string) {\n // switch (extension) {\n // case '':\n // return this.sanitizer\n // .bypassSecurityTrustHtml(`<svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n // <path fill=\"none\" d=\"M18 10L13 10\" stroke-linecap=\"round\"/>\n // <path fill=\"none\" d=\"M10 3H16.5C16.9644 3 17.1966 3 17.3916 3.02567C18.7378 3.2029 19.7971 4.26222 19.9743 5.60842C20 5.80337 20 6.03558 20 6.5\" />\n // <path fill=\"none\" d=\"M2 6.94975C2 6.06722 2 5.62595 2.06935 5.25839C2.37464 3.64031 3.64031 2.37464 5.25839 2.06935C5.62595 2 6.06722 2 6.94975 2C7.33642 2 7.52976 2 7.71557 2.01738C8.51665 2.09229 9.27652 2.40704 9.89594 2.92051C10.0396 3.03961 10.1763 3.17633 10.4497 3.44975L11 4C11.8158 4.81578 12.2237 5.22367 12.7121 5.49543C12.9804 5.64471 13.2651 5.7626 13.5604 5.84678C14.0979 6 14.6747 6 15.8284 6H16.2021C18.8345 6 20.1506 6 21.0062 6.76946C21.0849 6.84024 21.1598 6.91514 21.2305 6.99383C22 7.84935 22 9.16554 22 11.7979V14C22 17.7712 22 19.6569 20.8284 20.8284C19.6569 22 17.7712 22 14 22H10C6.22876 22 4.34315 22 3.17157 20.8284C2 19.6569 2 17.7712 2 14V6.94975Z\" />\n // </svg>`);\n // break;\n // case 'jpg':\n // case 'png':\n // case 'jpeg':\n // return this.sanitizer\n // .bypassSecurityTrustHtml(`<svg viewBox=\"-0.5 0 25 25\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n // <path\n // d=\"M21 22H3C2.72 22 2.5 21.6517 2.5 21.2083V3.79167C2.5 3.34833 2.72 3 3 3H21C21.28 3 21.5 3.34833 21.5 3.79167V21.2083C21.5 21.6517 21.28 22 21 22Z\"\n // stroke-miterlimit=\"10\"\n // stroke-linecap=\"round\"\n // stroke-linejoin=\"round\"\n // />\n // <path\n // d=\"M4.5 19.1875L9.66 12.6875C9.86 12.4375 10.24 12.4375 10.44 12.6875L15.6 19.1875\"\n // stroke-miterlimit=\"10\"\n // stroke-linecap=\"round\"\n // stroke-linejoin=\"round\"\n // />\n // <path\n // d=\"M16.2 16.6975L16.4599 16.3275C16.6599 16.0775 17.0399 16.0775 17.2399 16.3275L19.4999 19.1875\"\n // stroke-miterlimit=\"10\"\n // stroke-linecap=\"round\"\n // stroke-linejoin=\"round\"\n // />\n // <path\n // d=\"M17.2046 9.54315C17.2046 10.4294 16.4862 11.1478 15.6 11.1478C14.7138 11.1478 13.9954 10.4294 13.9954 9.54315C13.9954 8.65695 14.7138 7.93854 15.6 7.93854C16.4862 7.93854 17.2046 8.65695 17.2046 9.54315Z\"\n // />\n // </svg>`);\n // break;\n // case 'mp3':\n // case 'wav':\n // return this.sanitizer\n // .bypassSecurityTrustHtml(`<svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n // <path\n // fill-rule=\"evenodd\"\n // clip-rule=\"evenodd\"\n // d=\"M10 1C9.73478 1 9.48043 1.10536 9.29289 1.29289L3.29289 7.29289C3.10536 7.48043 3 7.73478 3 8V20C3 21.6569 4.34315 23 6 23H7C7.55228 23 8 22.5523 8 22C8 21.4477 7.55228 21 7 21H6C5.44772 21 5 20.5523 5 20V9H10C10.5523 9 11 8.55228 11 8V3H18C18.5523 3 19 3.44772 19 4V7C19 7.55228 19.4477 8 20 8C20.5523 8 21 7.55228 21 7V4C21 2.34315 19.6569 1 18 1H10ZM9 7H6.41421L9 4.41421V7ZM12.5 24C13.8807 24 15 22.8807 15 21.5V12.8673L20 12.153V18.05C19.8384 18.0172 19.6712 18 19.5 18C18.1193 18 17 19.1193 17 20.5C17 21.8807 18.1193 23 19.5 23C20.8807 23 22 21.8807 22 20.5V11C22 10.7101 21.8742 10.4345 21.6552 10.2445C21.4362 10.0546 21.1456 9.96905 20.8586 10.0101L13.8586 11.0101C13.3659 11.0804 13 11.5023 13 12V19.05C12.8384 19.0172 12.6712 19 12.5 19C11.1193 19 10 20.1193 10 21.5C10 22.8807 11.1193 24 12.5 24Z\"\n // />\n // </svg>`);\n // default:\n // return this.sanitizer\n // .bypassSecurityTrustHtml(`<svg viewBox=\"0 0 32 32\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\">\n // <path\n // d=\"M26.731 9.902c-0.005-0.035-0.011-0.066-0.019-0.095l0.001 0.005c-0.031-0.134-0.094-0.249-0.182-0.342l0 0-8-8c-0.092-0.087-0.207-0.15-0.335-0.181l-0.005-0.001c-0.027-0.008-0.059-0.014-0.092-0.019l-0.003-0c-0.026-0.007-0.059-0.014-0.092-0.019l-0.004-0h-12c-0.414 0-0.75 0.336-0.75 0.75v0 28c0 0.414 0.336 0.75 0.75 0.75h20c0.414-0 0.75-0.336 0.75-0.75v0-20c-0.005-0.038-0.012-0.071-0.020-0.103l0.001 0.005zM24.189 9.25h-5.439v-5.439zM6.75 29.25v-26.5h10.5v7.25c0 0.414 0.336 0.75 0.75 0.75h7.25v18.5z\"\n // ></path>\n // </svg>`);\n // }\n // }\n}\n","@if (viewMode() === 'ax-list-icon') {\n <div class=\"ax-list-icon\" (dblclick)=\"dbClickHandler()\">\n <div class=\"ax-thumb-file\">\n <ax-icon [icon]=\"data().icon\"></ax-icon>\n <ax-text>{{ data().text }}</ax-text>\n </div>\n\n @if (data().extension) {\n <ax-text>\n {{ data().size }}\n </ax-text>\n }\n\n <ax-text>\n {{ data().description }}\n </ax-text>\n\n <ax-text>\n {{ data().lastModify }}\n </ax-text>\n </div>\n} @else {\n <div [ngClass]=\"viewMode()\" (dblclick)=\"dbClickHandler()\">\n <ax-icon [icon]=\"data().icon\"></ax-icon>\n <ax-text>{{ data().text }}</ax-text>\n </div>\n}\n","import { AXComponent } from '@acorex/cdk/common';\nimport { AXDecoratorGenericComponent } from '@acorex/components/decorators';\nimport { AXDrawerComponent, AXDrawerContainerComponent } from '@acorex/components/drawer';\nimport { AXTreeItemClickBaseEvent, AXTreeViewComponent } from '@acorex/components/tree-view';\nimport { NgClass, NgStyle } from '@angular/common';\nimport {\n afterNextRender,\n ChangeDetectionStrategy,\n Component,\n effect,\n inject,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXFileExplorerInternalService } from '../file-explorer-internal.service';\n\n@Component({\n selector: 'ax-file-explorer-tree',\n templateUrl: './file-explorer-tree.component.html',\n styleUrls: ['./file-explorer-tree.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n AXDrawerContainerComponent,\n NgClass,\n NgStyle,\n AXDrawerComponent,\n AXDecoratorGenericComponent,\n AXTreeViewComponent,\n ],\n providers: [{ provide: AXComponent, useExisting: AXFileExplorerTreeComponent }],\n})\nexport class AXFileExplorerTreeComponent {\n protected internalService = inject(AXFileExplorerInternalService);\n protected drawer = viewChild(AXDrawerComponent);\n protected treeView = viewChild(AXTreeViewComponent);\n\n #effect = effect(() => {\n if (this.internalService.treeViewState()) {\n this.drawer().open();\n } else {\n this.drawer().close();\n }\n });\n\n #init = afterNextRender(() => {\n this.internalService.treeViewInstant.set(this.treeView());\n });\n\n protected openFolderOnViewHandler(e: AXTreeItemClickBaseEvent) {\n this.internalService.dbClickHandler(e.data, false);\n }\n}\n","<ax-drawer-container\n [ngClass]=\"this.internalService.treeViewState() && 'ax-file-explore-drawer-border'\"\n [ngStyle]=\"this.internalService.treeViewState() ? { width: 'fit-content' } : { width: 0 }\"\n>\n <ax-drawer location=\"start\" mode=\"push\">\n <ax-content>\n <ax-tree-view\n (onCollapsedChanged)=\"openFolderOnViewHandler($event)\"\n [showCheckbox]=\"false\"\n hasChildField=\"hasChild\"\n [items]=\"internalService.dataCallBack()\"\n ></ax-tree-view>\n </ax-content>\n </ax-drawer>\n</ax-drawer-container>\n","import { AXComponent } from '@acorex/cdk/common';\nimport {\n AXContextMenuComponent,\n AXContextMenuItemsClickEvent,\n AXContextMenuOpeningEvent,\n AXMenuItem,\n} from '@acorex/components/menu';\nimport { NgClass } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, effect, inject, input, viewChild, ViewEncapsulation } from '@angular/core';\nimport { AXFileExplorerInternalService } from '../file-explorer-internal.service';\nimport { AXFileExplorerItemComponent } from '../file-explorer-item/file-explorer-item.component';\n\n@Component({\n selector: 'ax-file-explorer-view',\n templateUrl: './file-explorer-view.component.html',\n styleUrls: ['./file-explorer-view.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgClass, AXFileExplorerItemComponent, AXContextMenuComponent],\n providers: [{ provide: AXComponent, useExisting: AXFileExplorerViewComponent }],\n})\nexport class AXFileExplorerViewComponent {\n dataCallBack = input.required<(selectedItemId?: string | number, sortBy?: 'name' | 'date' | 'type') => any>();\n\n protected contextMenu = viewChild(AXContextMenuComponent);\n protected internalService = inject(AXFileExplorerInternalService);\n\n #init = effect(() => {\n this.setInitialAllData();\n this.internalService.dataCallBack.set(this.dataCallBack());\n });\n\n #effect2 = effect(() => {\n if (this.internalService.activeFolderId()) {\n const result = this.internalService.findItemInNestedArray(\n this.internalService.allData(),\n (item) => item.id === this.internalService.activeFolderId(),\n );\n this.internalService.showData.set(result.children);\n } else {\n this.internalService.showData.set(this.internalService.allData());\n }\n setTimeout(() => {\n this.contextMenu().refresh();\n });\n });\n\n protected async setInitialAllData() {\n const rootData = await this.dataCallBack()();\n this.internalService.allData.set(rootData);\n }\n\n protected handleContextMenuOpening(e: AXContextMenuOpeningEvent) {\n const target = e.targetElement['__axContext__'] as AXFileExplorerItemComponent;\n\n const items: AXMenuItem[] = [{ text: 'open', data: target }, { text: 'delete', data: target } as AXMenuItem];\n e.items.push(...items);\n\n // if (items.length) {\n // e.items.push(...items);\n // } else {\n // e.canceled = true;\n // }\n }\n\n protected handleContextMenuItemClick(e: AXContextMenuItemsClickEvent) {\n this.internalService.dbClickHandler(e.item.data.data());\n }\n}\n","<ng-content select=\"ax-file-explorer-header\"></ng-content>\n\n<div [ngClass]=\"internalService.viewMode()\" class=\"ax-file-container\">\n @for (item of internalService.showData(); track item.id) {\n <ax-file-explorer-item\n id=\"ax-file-explore-item-ref\"\n (dbClick)=\"internalService.dbClickHandler(item)\"\n [data]=\"item\"\n [viewMode]=\"internalService.viewMode()\"\n ></ax-file-explorer-item>\n }\n</div>\n<ax-context-menu\n target=\"#ax-file-explore-item-ref\"\n orientation=\"vertical\"\n (onOpening)=\"handleContextMenuOpening($event)\"\n (onItemClick)=\"handleContextMenuItemClick($event)\"\n>\n</ax-context-menu>\n","import { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDrawerModule } from '@acorex/components/drawer';\nimport { AXMenuModule } from '@acorex/components/menu';\nimport { AXToolBarModule } from '@acorex/components/toolbar';\nimport { AXTreeViewModule } from '@acorex/components/tree-view';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AXFileExplorerContainerComponent } from './file-explorer-container/file-explorer-container.component';\nimport { AXFileExplorerHeaderComponent } from './file-explorer-header/file-explorer-header.component';\nimport { AXFileExplorerItemComponent } from './file-explorer-item/file-explorer-item.component';\nimport { AXFileExplorerTreeComponent } from './file-explorer-tree/file-explorer-tree.component';\nimport { AXFileExplorerViewComponent } from './file-explorer-view/file-explorer-view.component';\n\nconst COMPONENT = [\n AXFileExplorerContainerComponent,\n AXFileExplorerViewComponent,\n AXFileExplorerItemComponent,\n AXFileExplorerHeaderComponent,\n AXFileExplorerTreeComponent,\n];\n\nconst MODULES = [\n AXDecoratorModule,\n AXButtonModule,\n AXBreadcrumbsModule,\n CommonModule,\n AXToolBarModule,\n AXMenuModule,\n AXDrawerModule,\n AXTreeViewModule,\n];\n\n@NgModule({\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXFileExplorerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
@@ -119,6 +119,7 @@ class AXTreeViewComponent extends NXComponent {
|
|
119
119
|
this.itemsSignal = signal([]);
|
120
120
|
this.items = input();
|
121
121
|
this.showCheckbox = input(true);
|
122
|
+
this.hasCheckboxField = input('hasCheckbox');
|
122
123
|
this.selectionMode = input('single');
|
123
124
|
this.selectionBehavior = input();
|
124
125
|
this.selectionScope = input('all');
|
@@ -435,10 +436,10 @@ class AXTreeViewComponent extends NXComponent {
|
|
435
436
|
}
|
436
437
|
}
|
437
438
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: AXTreeViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
438
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.14", type: AXTreeViewComponent, isStandalone: true, selector: "ax-tree-view", inputs: { items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, showCheckbox: { classPropertyName: "showCheckbox", publicName: "showCheckbox", isSignal: true, isRequired: false, transformFunction: null }, selectionMode: { classPropertyName: "selectionMode", publicName: "selectionMode", isSignal: true, isRequired: false, transformFunction: null }, selectionBehavior: { classPropertyName: "selectionBehavior", publicName: "selectionBehavior", isSignal: true, isRequired: false, transformFunction: null }, selectionScope: { classPropertyName: "selectionScope", publicName: "selectionScope", isSignal: true, isRequired: false, transformFunction: null }, focusNodeEnabled: { classPropertyName: "focusNodeEnabled", publicName: "focusNodeEnabled", isSignal: true, isRequired: false, transformFunction: null }, valueField: { classPropertyName: "valueField", publicName: "valueField", isSignal: true, isRequired: false, transformFunction: null }, textField: { classPropertyName: "textField", publicName: "textField", isSignal: true, isRequired: false, transformFunction: null }, visibleField: { classPropertyName: "visibleField", publicName: "visibleField", isSignal: true, isRequired: false, transformFunction: null }, disableField: { classPropertyName: "disableField", publicName: "disableField", isSignal: true, isRequired: false, transformFunction: null }, hasChildField: { classPropertyName: "hasChildField", publicName: "hasChildField", isSignal: true, isRequired: false, transformFunction: null }, selectedField: { classPropertyName: "selectedField", publicName: "selectedField", isSignal: true, isRequired: false, transformFunction: null }, expandedField: { classPropertyName: "expandedField", publicName: "expandedField", isSignal: true, isRequired: false, transformFunction: null }, tooltipField: { classPropertyName: "tooltipField", publicName: "tooltipField", isSignal: true, isRequired: false, transformFunction: null }, childrenField: { classPropertyName: "childrenField", publicName: "childrenField", isSignal: true, isRequired: false, transformFunction: null }, activeField: { classPropertyName: "activeField", publicName: "activeField", isSignal: true, isRequired: false, transformFunction: null }, indeterminateField: { classPropertyName: "indeterminateField", publicName: "indeterminateField", isSignal: true, isRequired: false, transformFunction: null }, parentField: { classPropertyName: "parentField", publicName: "parentField", isSignal: true, isRequired: false, transformFunction: null }, iconField: { classPropertyName: "iconField", publicName: "iconField", isSignal: true, isRequired: false, transformFunction: null }, toggleIcons: { classPropertyName: "toggleIcons", publicName: "toggleIcons", isSignal: true, isRequired: false, transformFunction: null }, look: { classPropertyName: "look", publicName: "look", isSignal: true, isRequired: false, transformFunction: null }, itemTemplate: { classPropertyName: "itemTemplate", publicName: "itemTemplate", isSignal: false, isRequired: false, transformFunction: null }, emptyTemplate: { classPropertyName: "emptyTemplate", publicName: "emptyTemplate", isSignal: false, isRequired: false, transformFunction: null }, expandOn: { classPropertyName: "expandOn", publicName: "expandOn", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onSelectionChanged: "onSelectionChanged", onItemSelectedChanged: "onItemSelectedChanged", onNodeClick: "onNodeClick", onCollapsedChanged: "onCollapsedChanged", onNodedbClick: "onNodedbClick" }, host: { properties: { "class": "this.__hostClass" } }, providers: [
|
439
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.14", type: AXTreeViewComponent, isStandalone: true, selector: "ax-tree-view", inputs: { items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, showCheckbox: { classPropertyName: "showCheckbox", publicName: "showCheckbox", isSignal: true, isRequired: false, transformFunction: null }, hasCheckboxField: { classPropertyName: "hasCheckboxField", publicName: "hasCheckboxField", isSignal: true, isRequired: false, transformFunction: null }, selectionMode: { classPropertyName: "selectionMode", publicName: "selectionMode", isSignal: true, isRequired: false, transformFunction: null }, selectionBehavior: { classPropertyName: "selectionBehavior", publicName: "selectionBehavior", isSignal: true, isRequired: false, transformFunction: null }, selectionScope: { classPropertyName: "selectionScope", publicName: "selectionScope", isSignal: true, isRequired: false, transformFunction: null }, focusNodeEnabled: { classPropertyName: "focusNodeEnabled", publicName: "focusNodeEnabled", isSignal: true, isRequired: false, transformFunction: null }, valueField: { classPropertyName: "valueField", publicName: "valueField", isSignal: true, isRequired: false, transformFunction: null }, textField: { classPropertyName: "textField", publicName: "textField", isSignal: true, isRequired: false, transformFunction: null }, visibleField: { classPropertyName: "visibleField", publicName: "visibleField", isSignal: true, isRequired: false, transformFunction: null }, disableField: { classPropertyName: "disableField", publicName: "disableField", isSignal: true, isRequired: false, transformFunction: null }, hasChildField: { classPropertyName: "hasChildField", publicName: "hasChildField", isSignal: true, isRequired: false, transformFunction: null }, selectedField: { classPropertyName: "selectedField", publicName: "selectedField", isSignal: true, isRequired: false, transformFunction: null }, expandedField: { classPropertyName: "expandedField", publicName: "expandedField", isSignal: true, isRequired: false, transformFunction: null }, tooltipField: { classPropertyName: "tooltipField", publicName: "tooltipField", isSignal: true, isRequired: false, transformFunction: null }, childrenField: { classPropertyName: "childrenField", publicName: "childrenField", isSignal: true, isRequired: false, transformFunction: null }, activeField: { classPropertyName: "activeField", publicName: "activeField", isSignal: true, isRequired: false, transformFunction: null }, indeterminateField: { classPropertyName: "indeterminateField", publicName: "indeterminateField", isSignal: true, isRequired: false, transformFunction: null }, parentField: { classPropertyName: "parentField", publicName: "parentField", isSignal: true, isRequired: false, transformFunction: null }, iconField: { classPropertyName: "iconField", publicName: "iconField", isSignal: true, isRequired: false, transformFunction: null }, toggleIcons: { classPropertyName: "toggleIcons", publicName: "toggleIcons", isSignal: true, isRequired: false, transformFunction: null }, look: { classPropertyName: "look", publicName: "look", isSignal: true, isRequired: false, transformFunction: null }, itemTemplate: { classPropertyName: "itemTemplate", publicName: "itemTemplate", isSignal: false, isRequired: false, transformFunction: null }, emptyTemplate: { classPropertyName: "emptyTemplate", publicName: "emptyTemplate", isSignal: false, isRequired: false, transformFunction: null }, expandOn: { classPropertyName: "expandOn", publicName: "expandOn", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onSelectionChanged: "onSelectionChanged", onItemSelectedChanged: "onItemSelectedChanged", onNodeClick: "onNodeClick", onCollapsedChanged: "onCollapsedChanged", onNodedbClick: "onNodedbClick" }, host: { properties: { "class": "this.__hostClass" } }, providers: [
|
439
440
|
{ provide: AXComponent, useExisting: AXTreeViewComponent },
|
440
441
|
{ provide: AXTreeViewBase, useExisting: AXTreeViewComponent },
|
441
|
-
], usesInheritance: true, ngImport: i0, template: "@if (resolvedItems?.length) {\n @for (node of resolvedItems; track $index) {\n <ng-container [ngTemplateOutlet]=\"recursion\" [ngTemplateOutletContext]=\"{ $implicit: node }\"></ng-container>\n }\n} @else {\n <ng-container *ngTemplateOutlet=\"emptyTemplate || empty\"></ng-container>\n}\n\n<ng-template #recursion let-item>\n @if (item[visibleField()] !== false) {\n <ax-tree-view-item\n [item]=\"item\"\n [isExpanded]=\"item[expandedField()]\"\n [(isActive)]=\"item[activeField()]\"\n [isLoading]=\"isNodeLoading(item[valueField()])\"\n [executorChanges]=\"executorChanges()\"\n >\n @if (\n (
|
442
|
+
], usesInheritance: true, ngImport: i0, template: "@if (resolvedItems?.length) {\n @for (node of resolvedItems; track $index) {\n <ng-container [ngTemplateOutlet]=\"recursion\" [ngTemplateOutletContext]=\"{ $implicit: node }\"></ng-container>\n }\n} @else {\n <ng-container *ngTemplateOutlet=\"emptyTemplate || empty\"></ng-container>\n}\n\n<ng-template #recursion let-item>\n @if (item[visibleField()] !== false) {\n <ax-tree-view-item\n [item]=\"item\"\n [isExpanded]=\"item[expandedField()]\"\n [(isActive)]=\"item[activeField()]\"\n [isLoading]=\"isNodeLoading(item[valueField()])\"\n [executorChanges]=\"executorChanges()\"\n >\n @if (\n (showCheckbox() && selectionScope() === 'all' && item[hasCheckboxField()]) ||\n (showCheckbox() &&\n selectionScope() === 'parent' &&\n item[childrenField()]?.length &&\n item[hasCheckboxField()]) ||\n (showCheckbox() &&\n selectionScope() === 'children' &&\n !item[childrenField()]?.length &&\n item[hasCheckboxField()])\n ) {\n <ax-check-box\n [disabled]=\"item[disableField()]\"\n [indeterminate]=\"item[indeterminateField()]\"\n [(ngModel)]=\"item[selectedField()]\"\n (onValueChanged)=\"handleNodeSelectionClick($event, item)\"\n ></ax-check-box>\n }\n <ax-prefix>\n @if (item[iconField()]) {\n <ax-icon [icon]=\"item[iconField()]\"></ax-icon>\n } @else {\n <i></i>\n }\n </ax-prefix>\n @if (item[textField()]) {\n <ax-text>{{ item[textField()] }}</ax-text>\n }\n\n <ax-suffix></ax-suffix>\n @for (child of item?.[childrenField()]; track $index) {\n <ng-container [ngTemplateOutlet]=\"recursion\" [ngTemplateOutletContext]=\"{ $implicit: child }\"></ng-container>\n }\n </ax-tree-view-item>\n }\n</ng-template>\n\n<ng-template #empty>\n {{ 'no-result-found' | translate | async }}\n</ng-template>\n", styles: ["ax-tree-view{--ax-comp-tree-view-arrow-size: .875rem;--ax-comp-tree-view-text-size: .875rem;--ax-comp-tree-view-active-bg-color: var(--ax-sys-color-primary-surface);--ax-comp-tree-view-active-text-color: var(--ax-sys-color-on-primary-surface);--ax-comp-tree-view-hover-bg-color: var(--ax-sys-color-dark-surface);--ax-comp-tree-view-indicator-size: 2px}ax-tree-view.ax-look-with-line ax-tree-view-item{position:relative}ax-tree-view.ax-look-with-line ax-tree-view-item:before{content:\"\";position:absolute;top:0;inset-inline-start:.625rem;width:1px;height:100%;background-color:#ccc}ax-tree-view.ax-look-with-line ax-tree-view-item .ax-tree-view-container{padding-inline-start:1.25rem}ax-tree-view.ax-look-with-line ax-tree-view-item .ax-tree-view-container .ax-tree-view-icon-container{padding:.25rem}ax-tree-view ax-tree-view-item ax-check-box{margin-inline-start:.5rem}ax-tree-view ax-tree-view-item .ax-tree-view-container{display:flex;align-items:center;margin-bottom:.125rem;cursor:pointer}ax-tree-view ax-tree-view-item .ax-tree-view-container ax-text{font-size:var(--ax-comp-tree-view-text-size)}ax-tree-view ax-tree-view-item .ax-tree-view-container .ax-checkbox-end-side{display:none!important}ax-tree-view ax-tree-view-item .ax-tree-view-container .ax-tree-view-arrow{font-size:var(--ax-comp-tree-view-arrow-size)!important}ax-tree-view ax-tree-view-item .ax-tree-view-container ax-suffix:empty{display:none}ax-tree-view ax-tree-view-item .ax-tree-view-container .ax-tree-view-icon-container{width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center}ax-tree-view ax-tree-view-item .ax-tree-view-container .ax-tree-view-icon-container.placeholder-icon{visibility:hidden}ax-tree-view ax-tree-view-item .ax-tree-view-container .ax-tree-view-items{display:flex;align-items:center}ax-tree-view ax-tree-view-item .ax-tree-view-container .ax-tree-view-items .ax-tree-view-items-prefix{display:flex;align-items:center;gap:.5rem;padding:.25rem .5rem;border-radius:.25rem;overflow-x:auto;margin-inline-start:.25rem}ax-tree-view ax-tree-view-item .ax-tree-view-container .ax-tree-view-items .ax-tree-view-items-prefix.noselect-tree-view{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}ax-tree-view ax-tree-view-item .ax-tree-view-container .ax-tree-view-items .ax-tree-view-items-prefix.ax-state-tree-view-active{background-color:rgba(var(--ax-comp-tree-view-active-bg-color));color:rgba(var(--ax-comp-tree-view-active-text-color))}ax-tree-view ax-tree-view-item .ax-tree-view-container .ax-tree-view-items .ax-tree-view-items-prefix:hover:not(.ax-state-tree-view-active){background-color:rgba(var(--ax-comp-tree-view-hover-bg-color))}ax-tree-view ax-tree-view-item .ax-tree-view-child{padding-inline-start:1rem}ax-tree-view ax-tree-view-item .ax-state-disabled{cursor:not-allowed!important;opacity:.5!important}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: AXTreeViewItemComponent, selector: "ax-tree-view-item", inputs: ["item", "isExpanded", "isActive", "isLoading", "executorChanges"], outputs: ["isExpandedChange", "isActiveChange"] }, { kind: "component", type: AXCheckBoxComponent, selector: "ax-check-box", inputs: ["disabled", "tabIndex", "readonly", "color", "value", "name", "id", "checked", "indeterminate"], outputs: ["onBlur", "onFocus", "valueChange", "onValueChanged"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "component", type: AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
442
443
|
}
|
443
444
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: AXTreeViewComponent, decorators: [{
|
444
445
|
type: Component,
|
@@ -454,7 +455,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
|
|
454
455
|
], providers: [
|
455
456
|
{ provide: AXComponent, useExisting: AXTreeViewComponent },
|
456
457
|
{ provide: AXTreeViewBase, useExisting: AXTreeViewComponent },
|
457
|
-
], template: "@if (resolvedItems?.length) {\n @for (node of resolvedItems; track $index) {\n <ng-container [ngTemplateOutlet]=\"recursion\" [ngTemplateOutletContext]=\"{ $implicit: node }\"></ng-container>\n }\n} @else {\n <ng-container *ngTemplateOutlet=\"emptyTemplate || empty\"></ng-container>\n}\n\n<ng-template #recursion let-item>\n @if (item[visibleField()] !== false) {\n <ax-tree-view-item\n [item]=\"item\"\n [isExpanded]=\"item[expandedField()]\"\n [(isActive)]=\"item[activeField()]\"\n [isLoading]=\"isNodeLoading(item[valueField()])\"\n [executorChanges]=\"executorChanges()\"\n >\n @if (\n (
|
458
|
+
], template: "@if (resolvedItems?.length) {\n @for (node of resolvedItems; track $index) {\n <ng-container [ngTemplateOutlet]=\"recursion\" [ngTemplateOutletContext]=\"{ $implicit: node }\"></ng-container>\n }\n} @else {\n <ng-container *ngTemplateOutlet=\"emptyTemplate || empty\"></ng-container>\n}\n\n<ng-template #recursion let-item>\n @if (item[visibleField()] !== false) {\n <ax-tree-view-item\n [item]=\"item\"\n [isExpanded]=\"item[expandedField()]\"\n [(isActive)]=\"item[activeField()]\"\n [isLoading]=\"isNodeLoading(item[valueField()])\"\n [executorChanges]=\"executorChanges()\"\n >\n @if (\n (showCheckbox() && selectionScope() === 'all' && item[hasCheckboxField()]) ||\n (showCheckbox() &&\n selectionScope() === 'parent' &&\n item[childrenField()]?.length &&\n item[hasCheckboxField()]) ||\n (showCheckbox() &&\n selectionScope() === 'children' &&\n !item[childrenField()]?.length &&\n item[hasCheckboxField()])\n ) {\n <ax-check-box\n [disabled]=\"item[disableField()]\"\n [indeterminate]=\"item[indeterminateField()]\"\n [(ngModel)]=\"item[selectedField()]\"\n (onValueChanged)=\"handleNodeSelectionClick($event, item)\"\n ></ax-check-box>\n }\n <ax-prefix>\n @if (item[iconField()]) {\n <ax-icon [icon]=\"item[iconField()]\"></ax-icon>\n } @else {\n <i></i>\n }\n </ax-prefix>\n @if (item[textField()]) {\n <ax-text>{{ item[textField()] }}</ax-text>\n }\n\n <ax-suffix></ax-suffix>\n @for (child of item?.[childrenField()]; track $index) {\n <ng-container [ngTemplateOutlet]=\"recursion\" [ngTemplateOutletContext]=\"{ $implicit: child }\"></ng-container>\n }\n </ax-tree-view-item>\n }\n</ng-template>\n\n<ng-template #empty>\n {{ 'no-result-found' | translate | async }}\n</ng-template>\n", styles: ["ax-tree-view{--ax-comp-tree-view-arrow-size: .875rem;--ax-comp-tree-view-text-size: .875rem;--ax-comp-tree-view-active-bg-color: var(--ax-sys-color-primary-surface);--ax-comp-tree-view-active-text-color: var(--ax-sys-color-on-primary-surface);--ax-comp-tree-view-hover-bg-color: var(--ax-sys-color-dark-surface);--ax-comp-tree-view-indicator-size: 2px}ax-tree-view.ax-look-with-line ax-tree-view-item{position:relative}ax-tree-view.ax-look-with-line ax-tree-view-item:before{content:\"\";position:absolute;top:0;inset-inline-start:.625rem;width:1px;height:100%;background-color:#ccc}ax-tree-view.ax-look-with-line ax-tree-view-item .ax-tree-view-container{padding-inline-start:1.25rem}ax-tree-view.ax-look-with-line ax-tree-view-item .ax-tree-view-container .ax-tree-view-icon-container{padding:.25rem}ax-tree-view ax-tree-view-item ax-check-box{margin-inline-start:.5rem}ax-tree-view ax-tree-view-item .ax-tree-view-container{display:flex;align-items:center;margin-bottom:.125rem;cursor:pointer}ax-tree-view ax-tree-view-item .ax-tree-view-container ax-text{font-size:var(--ax-comp-tree-view-text-size)}ax-tree-view ax-tree-view-item .ax-tree-view-container .ax-checkbox-end-side{display:none!important}ax-tree-view ax-tree-view-item .ax-tree-view-container .ax-tree-view-arrow{font-size:var(--ax-comp-tree-view-arrow-size)!important}ax-tree-view ax-tree-view-item .ax-tree-view-container ax-suffix:empty{display:none}ax-tree-view ax-tree-view-item .ax-tree-view-container .ax-tree-view-icon-container{width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center}ax-tree-view ax-tree-view-item .ax-tree-view-container .ax-tree-view-icon-container.placeholder-icon{visibility:hidden}ax-tree-view ax-tree-view-item .ax-tree-view-container .ax-tree-view-items{display:flex;align-items:center}ax-tree-view ax-tree-view-item .ax-tree-view-container .ax-tree-view-items .ax-tree-view-items-prefix{display:flex;align-items:center;gap:.5rem;padding:.25rem .5rem;border-radius:.25rem;overflow-x:auto;margin-inline-start:.25rem}ax-tree-view ax-tree-view-item .ax-tree-view-container .ax-tree-view-items .ax-tree-view-items-prefix.noselect-tree-view{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}ax-tree-view ax-tree-view-item .ax-tree-view-container .ax-tree-view-items .ax-tree-view-items-prefix.ax-state-tree-view-active{background-color:rgba(var(--ax-comp-tree-view-active-bg-color));color:rgba(var(--ax-comp-tree-view-active-text-color))}ax-tree-view ax-tree-view-item .ax-tree-view-container .ax-tree-view-items .ax-tree-view-items-prefix:hover:not(.ax-state-tree-view-active){background-color:rgba(var(--ax-comp-tree-view-hover-bg-color))}ax-tree-view ax-tree-view-item .ax-tree-view-child{padding-inline-start:1rem}ax-tree-view ax-tree-view-item .ax-state-disabled{cursor:not-allowed!important;opacity:.5!important}\n"] }]
|
458
459
|
}], propDecorators: { __hostClass: [{
|
459
460
|
type: HostBinding,
|
460
461
|
args: ['class']
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-components-tree-view.mjs","sources":["../../../../packages/components/tree-view/src/lib/tree-view.class.ts","../../../../packages/components/tree-view/src/lib/tree-view-item.component.ts","../../../../packages/components/tree-view/src/lib/tree-view-item.component.html","../../../../packages/components/tree-view/src/lib/tree-view.component.ts","../../../../packages/components/tree-view/src/lib/tree-view.component.html","../../../../packages/components/tree-view/src/lib/tree-view.component.module.ts","../../../../packages/components/tree-view/src/acorex-components-tree-view.ts"],"sourcesContent":["import { AXClickEvent } from '@acorex/cdk/common';\nimport { EventEmitter } from '@angular/core';\n\nexport class AXTreeItemClickBaseEvent extends AXClickEvent {\n nativeElement: any;\n}\n\nexport type AXTreeViewSelectionBehavior = 'autoExpand' | 'cascade' | 'indeterminate';\n\nexport type AXTreeViewExpandBehavior = 'click' | 'dbClick' | 'defult';\n\nexport type AXTreeViewOperationMethod = 'expand' | 'active' | 'visible' | 'disabled';\n\nexport type AXTreeViewLook = 'with-line' | 'defult';\n\nexport type AXTreeViewSelectionScope = 'all' | 'parent' | 'children';\n\nexport abstract class AXTreeViewBase {\n abstract getChildren(item: unknown): unknown[];\n\n abstract hasChildren(item: unknown): boolean;\n\n abstract itemTemplate: any;\n\n // Field accessors\n abstract disableField(): string;\n abstract childrenField(): string;\n abstract valueField(): string;\n abstract activeField(): string;\n abstract hasChildField(): string;\n abstract tooltipField(): string;\n\n // Behavior methods\n abstract expandOn(): AXTreeViewExpandBehavior;\n abstract focusNodeEnabled(): boolean;\n abstract toggleIcons(): { expanded: string; collapsed: string } | null;\n\n // Data management\n abstract itemsPromise: boolean;\n abstract itemsSignal(): unknown[];\n abstract fetchData(item: unknown): void;\n abstract setNodeLoading(value: unknown, loading: boolean): void;\n abstract handleUnActiveNode(items: unknown[]): void;\n\n // Event emitters\n abstract onCollapsedChanged: EventEmitter<{ component: any; data: unknown; nativeElement: any }>;\n abstract onNodeClick: EventEmitter<{ component: any; data: unknown; nativeElement: any }>;\n abstract onNodedbClick: EventEmitter<{ component: any; data: unknown; nativeElement: any }>;\n}\n","import { AXComponent, NXComponent } from '@acorex/cdk/common';\nimport { AXLoadingComponent } from '@acorex/components/loading';\nimport { AXTooltipDirective } from '@acorex/components/tooltip';\nimport { AXPlatform } from '@acorex/core/platform';\nimport { animate, state, style, transition, trigger } from '@angular/animations';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject, input, model, ViewEncapsulation } from '@angular/core';\nimport { AXTreeViewBase, AXTreeViewOperationMethod } from './tree-view.class';\n\n@Component({\n selector: 'ax-tree-view-item',\n templateUrl: 'tree-view-item.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [\n trigger('collapseExpand', [\n state(\n 'collapsed',\n style({\n height: '0',\n overflow: 'hidden',\n opacity: 0,\n }),\n ),\n state(\n 'expanded',\n style({\n height: '*',\n overflow: 'hidden',\n opacity: 1,\n }),\n ),\n transition('collapsed <=> expanded', [animate('300ms ease-in-out')]),\n ]),\n ],\n imports: [CommonModule, AXLoadingComponent, AXTooltipDirective],\n providers: [{ provide: AXComponent, useExisting: AXTreeViewItemComponent }],\n})\nexport class AXTreeViewItemComponent extends NXComponent {\n constructor() {\n super();\n }\n\n treeView = inject(AXTreeViewBase);\n\n item = input<unknown>();\n\n isExpanded = model<boolean>(false);\n\n isActive = model<boolean>(false);\n\n isLoading = input<boolean>(false);\n\n executorChanges = input<AXTreeViewOperationMethod>();\n\n protected platformService = inject(AXPlatform);\n\n protected arrowIcon = computed(() => {\n const baseClasses = 'ax-tree-view-arrow ax-icon ax-icon-solid';\n const toggleIcons = this.treeView.toggleIcons();\n\n if (toggleIcons) {\n return this.isExpanded() ? `${baseClasses} ${toggleIcons.expanded}` : `${baseClasses} ${toggleIcons.collapsed}`;\n }\n\n if (this.isExpanded()) {\n return `${baseClasses} ax-icon-chevron-down`;\n }\n\n return this.platformService.isRtl()\n ? `${baseClasses} ax-icon-chevron-left`\n : `${baseClasses} ax-icon-chevron-right`;\n });\n\n protected handleArrowNodeClick() {\n if (this.item()[this.treeView.disableField()] || this.isLoading() || this.treeView.expandOn() === 'dbClick') {\n return;\n }\n\n this.isExpanded.set(!this.isExpanded());\n\n if (this.treeView.itemsPromise && this.isExpanded() && !this.item()[this.treeView.childrenField()]?.length) {\n this.treeView.fetchData(this.item());\n this.treeView.setNodeLoading(this.item()[this.treeView.valueField()], true);\n }\n\n this.treeView.onCollapsedChanged.emit({ component: this, data: this.item(), nativeElement: this.nativeElement });\n }\n\n protected handleTextClick(item: unknown) {\n if (this.item()[this.treeView.disableField()]) {\n return;\n }\n if (this.treeView.focusNodeEnabled()) {\n this.treeView.handleUnActiveNode(this.treeView.itemsSignal());\n this.item()[this.treeView.activeField()] = true;\n }\n this.treeView.onNodeClick.emit({ component: this, data: item, nativeElement: this.nativeElement });\n }\n\n protected handleTextDbClick(item: unknown) {\n if (item[this.treeView.disableField()] || this.treeView.expandOn() === 'click') {\n return;\n }\n if (item?.[this.treeView.childrenField()] || item[this.treeView.hasChildField()]) {\n this.isExpanded.set(!this.isExpanded());\n\n if (this.treeView.itemsPromise && this.isExpanded()) {\n this.treeView.fetchData(this.item());\n this.treeView.setNodeLoading(this.item()[this.treeView.valueField()], true);\n }\n }\n this.treeView.onNodedbClick.emit({ component: this, data: item, nativeElement: this.nativeElement });\n }\n}\n","<div class=\"ax-tree-view-container\">\n @if (\n (item()[this.treeView.childrenField()]?.length && !isLoading()) ||\n (item()[treeView.hasChildField()] && !isLoading())\n ) {\n <div class=\"ax-tree-view-icon-container\" (click)=\"handleArrowNodeClick()\">\n <i [class.ax-state-disabled]=\"item()[treeView.disableField()]\" class=\"{{ arrowIcon() }}\"></i>\n </div>\n } @else if (isLoading()) {\n <ax-loading></ax-loading>\n } @else {\n <div class=\"ax-tree-view-icon-container placeholder-icon\"></div>\n }\n\n <div class=\"ax-tree-view-items\">\n <ng-content select=\"ax-check-box\"></ng-content>\n <div\n [class.ax-state-disabled]=\"item()[treeView.disableField()]\"\n [axTooltip]=\"item()[treeView.tooltipField()]\"\n axTooltipPlacement=\"end-bottom\"\n (click)=\"handleTextClick(item())\"\n (dblclick)=\"handleTextDbClick(item())\"\n class=\"ax-tree-view-items-prefix noselect-tree-view\"\n [class.ax-state-tree-view-active]=\"item()[treeView.activeField()]\"\n >\n @if (treeView.itemTemplate) {\n <ng-container *ngTemplateOutlet=\"treeView.itemTemplate; context: { $implicit: item() }\"></ng-container>\n } @else {\n <ng-content select=\"ax-prefix\"></ng-content>\n <ng-content select=\"ax-text\"></ng-content>\n <ng-content select=\"ax-suffix\"></ng-content>\n }\n </div>\n </div>\n</div>\n\n<div class=\"ax-tree-view-child\" [@collapseExpand]=\"isExpanded() ? 'expanded' : 'collapsed'\">\n <ng-content></ng-content>\n</div>\n","import { AXComponent, AXExpandToggleIcons, AXValueChangedEvent, NXComponent } from '@acorex/cdk/common';\nimport { AXCheckBoxComponent } from '@acorex/components/check-box';\nimport { AXDecoratorGenericComponent, AXDecoratorIconComponent } from '@acorex/components/decorators';\nimport { AXPlatform } from '@acorex/core/platform';\nimport { AXTranslatorPipe } from '@acorex/core/translation';\nimport { AsyncPipe, NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n effect,\n HostBinding,\n inject,\n Input,\n input,\n output,\n signal,\n TemplateRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXTreeViewItemComponent } from './tree-view-item.component';\nimport {\n AXTreeItemClickBaseEvent,\n AXTreeViewBase,\n AXTreeViewExpandBehavior,\n AXTreeViewLook,\n AXTreeViewOperationMethod,\n AXTreeViewSelectionBehavior,\n AXTreeViewSelectionScope,\n} from './tree-view.class';\n\n@Component({\n selector: 'ax-tree-view',\n templateUrl: 'tree-view.component.html',\n styleUrls: ['tree-view.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n NgTemplateOutlet,\n AXTreeViewItemComponent,\n AXCheckBoxComponent,\n FormsModule,\n AXDecoratorGenericComponent,\n AXDecoratorIconComponent,\n AXTranslatorPipe,\n AsyncPipe,\n ],\n providers: [\n { provide: AXComponent, useExisting: AXTreeViewComponent },\n { provide: AXTreeViewBase, useExisting: AXTreeViewComponent },\n ],\n})\nexport class AXTreeViewComponent extends NXComponent {\n /** @ignore */\n @HostBinding('class')\n private get __hostClass(): string[] {\n return [`ax-look-${this.look()}`];\n }\n\n itemsSignal = signal<unknown[]>([]);\n\n itemsPromise: any;\n\n items = input<unknown[] | ((selectedItemId?: string | number) => unknown[] | Promise<unknown[]>)>();\n\n protected get resolvedItems() {\n return this.itemsSignal();\n }\n\n showCheckbox = input<boolean>(true);\n\n selectionMode = input<'single' | 'multiple'>('single');\n\n selectionBehavior = input<AXTreeViewSelectionBehavior>();\n\n selectionScope = input<AXTreeViewSelectionScope>('all');\n\n focusNodeEnabled = input<boolean>(true);\n\n valueField = input('id');\n\n textField = input('text');\n\n visibleField = input('visible');\n\n disableField = input('disabled');\n\n hasChildField = input('hasChild');\n\n selectedField = input('selected');\n\n expandedField = input('expanded');\n\n tooltipField = input('tooltip');\n\n childrenField = input('children');\n\n activeField = input('active');\n\n indeterminateField = input('indeterminate');\n\n parentField = input('parentId');\n\n iconField = input<string>('icon');\n\n toggleIcons = input<AXExpandToggleIcons>();\n\n onSelectionChanged = output<AXTreeItemClickBaseEvent>();\n\n onItemSelectedChanged = output<AXTreeItemClickBaseEvent>();\n\n onNodeClick = output<AXTreeItemClickBaseEvent>();\n\n onCollapsedChanged = output<AXTreeItemClickBaseEvent>();\n\n onNodedbClick = output<AXTreeItemClickBaseEvent>();\n\n executorChanges = signal<AXTreeViewOperationMethod>(null);\n\n look = input<AXTreeViewLook>('defult');\n\n @Input() itemTemplate?: TemplateRef<unknown>;\n\n @Input() emptyTemplate?: TemplateRef<unknown>;\n\n protected platformService = inject(AXPlatform);\n\n #effect = effect(() => {\n const itemsInput = this.items();\n\n if (typeof itemsInput === 'function') {\n const result = itemsInput();\n if (result instanceof Promise) {\n this.itemsPromise = (options) => itemsInput(options);\n this.fetchData();\n } else {\n this.itemsSignal.set(result);\n this.itemsPromise = null;\n }\n } else {\n this.itemsSignal.set(itemsInput);\n this.itemsPromise = null;\n }\n });\n\n expandOn = input<AXTreeViewExpandBehavior>('defult');\n\n protected handleNodeSelectionClick(event: AXValueChangedEvent, item: unknown) {\n if (item[this.disableField()] || this.isNodeLoading(item[this.valueField()])) {\n return;\n }\n\n if (this.selectionMode() === 'single' && event.isUserInteraction) {\n this.handleUnSelectNode(this.itemsSignal());\n }\n\n if (event.isUserInteraction) {\n item[this.selectedField()] = event.value;\n\n if (event.value !== null) {\n switch (this.selectionBehavior()) {\n case 'autoExpand':\n if (event.value) {\n if (this.itemsPromise && item[this.hasChildField()] && !item?.[this.childrenField()]?.length) {\n this.fetchData(item);\n this.setNodeLoading(item[this.valueField()], true);\n }\n this.toggleExpand(item);\n }\n break;\n case 'cascade':\n this.expandAndToggleSelection(item, event.value);\n break;\n case 'indeterminate':\n if (item?.[this.childrenField()]?.length) {\n this.applySelectionToChildren(item, event.value, item[this.valueField()]);\n }\n this.updateParentSelection(item, event.value);\n break;\n default:\n break;\n }\n }\n\n this.onItemSelectedChanged.emit({\n component: this,\n data: item,\n nativeElement: this.nativeElement,\n });\n\n const result: unknown[] = this.findSelectedNodes(this.itemsSignal());\n\n this.onSelectionChanged.emit({\n component: this,\n data: result,\n nativeElement: this.nativeElement,\n });\n }\n }\n\n /**\n *\n * auto expand\n *\n */\n private toggleExpand(item: unknown) {\n if (!item[this.expandedField()]) {\n item[this.expandedField()] = true;\n }\n }\n\n /**\n *\n * expand and change value parent change\n *\n */\n\n private async expandAndToggleSelection(item: unknown, selected: boolean) {\n if (this.itemsPromise && item[this.hasChildField()] && !item?.[this.childrenField()]?.length) {\n await this.fetchData(item);\n await this.setNodeLoading(item[this.valueField()], true);\n }\n this.toggleExpand(item);\n\n if (item[this.childrenField()]?.length) {\n this.applySelectionToChildren(item, selected, item[this.valueField()]);\n }\n }\n\n private applySelectionToChildren(item: unknown, isSelected: boolean, parentId?: number | string) {\n item[this.childrenField()].forEach(async (child) => {\n if (\n this.itemsPromise &&\n child[this.hasChildField()] &&\n !child?.[this.childrenField()]?.length &&\n this.selectionBehavior() === 'cascade'\n ) {\n await this.fetchData(child);\n await this.setNodeLoading(child[this.valueField()], true);\n this.toggleExpand(child);\n }\n child[this.parentField()] = parentId;\n child[this.selectedField()] = isSelected;\n if (child[this.childrenField()]?.length) {\n this.applySelectionToChildren(child, isSelected, child[this.valueField()]);\n }\n });\n }\n\n /**\n *\n * indeterminate logic\n *\n */\n\n private updateParentSelection(item: unknown, selected: boolean) {\n item[this.selectedField()] = selected;\n\n let parent = this.findParent(item, this.itemsSignal());\n\n while ((parent && parent[this.selectedField()] != false) || (parent && item[this.selectedField()])) {\n const allSelected = parent?.[this.childrenField()]?.every((child) => child[this.selectedField()]);\n\n const someSelected = parent?.[this.childrenField()]?.some(\n (child) => child[this.selectedField()] || child[this.indeterminateField()],\n );\n\n if (!allSelected && !someSelected) {\n parent[this.selectedField()] = false;\n parent[this.indeterminateField()] = null;\n } else if (!allSelected) {\n parent[this.indeterminateField()] = true;\n parent[this.selectedField()] = null;\n } else if (allSelected) {\n parent[this.selectedField()] = true;\n parent[this.indeterminateField()] = false;\n } else {\n parent[this.indeterminateField()] = false;\n parent[this.selectedField()] = true;\n }\n\n parent = this.findParent(parent, this.itemsSignal());\n }\n }\n\n private findParent(item: unknown, nodes: unknown[]) {\n for (const node of nodes) {\n if (node[this.childrenField()]?.includes(item)) {\n return node;\n } else if (node[this.childrenField()]) {\n const parent = this.findParent(item, node[this.childrenField()]);\n if (parent) return parent;\n }\n }\n return null;\n }\n\n /**\n *\n * find node selected true for emit Selections\n *\n */\n\n private findSelectedNodes(nodes: unknown[]): unknown[] {\n let selectedNodes: unknown[] = [];\n\n nodes.forEach((node) => {\n if (node[this.selectedField()]) {\n selectedNodes.push(node);\n }\n\n if (node[this.childrenField()]) {\n selectedNodes = selectedNodes.concat(this.findSelectedNodes(node[this.childrenField()]));\n }\n });\n\n return selectedNodes;\n }\n\n /**\n *\n * find for emit Selections single mode\n *\n */\n\n private handleUnSelectNode(items: unknown[]) {\n items.forEach((child) => {\n child[this.selectedField()] = false;\n if (child?.[this.childrenField()]?.length) {\n this.handleUnSelectNode(child[this.childrenField()]);\n }\n });\n }\n\n /**\n *\n * lazy load logic\n *\n */\n\n fetchData(selectedNode?: unknown) {\n this.itemsPromise(selectedNode?.[this.valueField()])\n .then((data: unknown[]) => {\n if (Array.isArray(data)) {\n if (selectedNode?.[this.valueField()]) {\n this.findNode(selectedNode[this.valueField()], data, this.itemsSignal());\n } else {\n this.itemsSignal.set(data);\n }\n }\n })\n .finally(() => {\n this.setNodeLoading(selectedNode?.[this.valueField()], false);\n });\n }\n\n private findNode(parentId: number | string, _children: unknown[], source: unknown[]) {\n if (source.length) {\n source.forEach((element) => {\n if (element[this.valueField()] == parentId) {\n if (this.selectionBehavior() === 'indeterminate' && element[this.selectedField()]) {\n _children.forEach((child) => (child[this.selectedField()] = true));\n }\n element[this.childrenField()] = _children;\n } else {\n if (element?.[this.childrenField()]) this.findNode(parentId, _children, element[this.childrenField()]);\n }\n });\n }\n }\n\n /**\n *\n * emit when arrow click\n *\n */\n\n protected handleNodeExpandClick(node: AXTreeItemClickBaseEvent) {\n const selectedNode = node.data;\n if (this.itemsPromise && node.data[this.expandedField()] && !node?.data[this.childrenField()]?.length) {\n this.fetchData(selectedNode);\n this.setNodeLoading(selectedNode[this.valueField()], true);\n }\n this.onCollapsedChanged.emit({ component: this, data: node.data, nativeElement: this.nativeElement });\n }\n\n handleUnActiveNode(unActiveSource: unknown[]) {\n unActiveSource.forEach((child) => {\n child[this.activeField()] = false;\n if (child?.[this.childrenField()]?.length) {\n this.handleUnActiveNode(child[this.childrenField()]);\n }\n });\n }\n\n private loadingState = signal<Record<string | number, boolean>>({});\n\n protected isNodeLoading(nodeId: string | number): boolean {\n return this.loadingState()[nodeId] || false;\n }\n\n setNodeLoading(nodeId: string | number, isLoading: boolean): void {\n this.loadingState.update((state) => ({\n ...state,\n [nodeId]: isLoading,\n }));\n }\n\n public executeOnTreeNode(node: unknown, operation: AXTreeViewOperationMethod, value: boolean) {\n switch (operation) {\n case 'active':\n node[this.activeField()] = value;\n break;\n case 'expand':\n node[this.expandedField()] = true;\n if (this.itemsPromise && node[this.hasChildField()] && !node[this.childrenField()]?.length) {\n this.handleNodeExpandClick({ data: node, nativeElement: this.nativeElement, component: this });\n }\n\n break;\n case 'visible':\n node[this.visibleField()] = value;\n\n break;\n case 'disabled':\n node[this.disableField()] = value;\n break;\n default:\n break;\n }\n /**\n *\n * for detect changes treeviewitem\n *\n */\n\n this.executorChanges.set(operation);\n }\n\n refresh() {\n if (this.itemsPromise) {\n this.fetchData();\n }\n }\n}\n","@if (resolvedItems?.length) {\n @for (node of resolvedItems; track $index) {\n <ng-container [ngTemplateOutlet]=\"recursion\" [ngTemplateOutletContext]=\"{ $implicit: node }\"></ng-container>\n }\n} @else {\n <ng-container *ngTemplateOutlet=\"emptyTemplate || empty\"></ng-container>\n}\n\n<ng-template #recursion let-item>\n @if (item[visibleField()] !== false) {\n <ax-tree-view-item\n [item]=\"item\"\n [isExpanded]=\"item[expandedField()]\"\n [(isActive)]=\"item[activeField()]\"\n [isLoading]=\"isNodeLoading(item[valueField()])\"\n [executorChanges]=\"executorChanges()\"\n >\n @if (\n (this.showCheckbox() && selectionScope() === 'all') ||\n (this.showCheckbox() && selectionScope() === 'parent' && item[childrenField()]?.length) ||\n (this.showCheckbox() && selectionScope() === 'children' && !item[childrenField()]?.length)\n ) {\n <ax-check-box\n [disabled]=\"item[disableField()]\"\n [indeterminate]=\"item[indeterminateField()]\"\n [(ngModel)]=\"item[selectedField()]\"\n (onValueChanged)=\"handleNodeSelectionClick($event, item)\"\n ></ax-check-box>\n }\n <ax-prefix>\n @if (item[iconField()]) {\n <ax-icon [icon]=\"item[iconField()]\"></ax-icon>\n } @else {\n <i></i>\n }\n </ax-prefix>\n @if (item[textField()]) {\n <ax-text>{{ item[textField()] }}</ax-text>\n }\n\n <ax-suffix></ax-suffix>\n @for (child of item?.[childrenField()]; track $index) {\n <ng-container [ngTemplateOutlet]=\"recursion\" [ngTemplateOutletContext]=\"{ $implicit: child }\"></ng-container>\n }\n </ax-tree-view-item>\n }\n</ng-template>\n\n<ng-template #empty>\n {{ 'no-result-found' | translate | async }}\n</ng-template>\n","import { AXCommonModule } from '@acorex/cdk/common';\nimport { AXCheckBoxModule } from '@acorex/components/check-box';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXTooltipModule } from '@acorex/components/tooltip';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXTreeViewItemComponent } from './tree-view-item.component';\nimport { AXTreeViewComponent } from './tree-view.component';\n\nconst COMPONENT = [AXTreeViewComponent, AXTreeViewItemComponent];\nconst MODULES = [\n CommonModule,\n AXCommonModule,\n AXDecoratorModule,\n AXCheckBoxModule,\n AXFormModule,\n FormsModule,\n AXTooltipModule,\n AXLoadingModule,\n];\n@NgModule({\n imports: [...COMPONENT, ...MODULES],\n exports: [...COMPONENT],\n})\nexport class AXTreeViewModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"acorex-components-tree-view.mjs","sources":["../../../../packages/components/tree-view/src/lib/tree-view.class.ts","../../../../packages/components/tree-view/src/lib/tree-view-item.component.ts","../../../../packages/components/tree-view/src/lib/tree-view-item.component.html","../../../../packages/components/tree-view/src/lib/tree-view.component.ts","../../../../packages/components/tree-view/src/lib/tree-view.component.html","../../../../packages/components/tree-view/src/lib/tree-view.component.module.ts","../../../../packages/components/tree-view/src/acorex-components-tree-view.ts"],"sourcesContent":["import { AXClickEvent } from '@acorex/cdk/common';\nimport { EventEmitter } from '@angular/core';\n\nexport class AXTreeItemClickBaseEvent extends AXClickEvent {\n nativeElement: any;\n}\n\nexport type AXTreeViewSelectionBehavior = 'autoExpand' | 'cascade' | 'indeterminate';\n\nexport type AXTreeViewExpandBehavior = 'click' | 'dbClick' | 'defult';\n\nexport type AXTreeViewOperationMethod = 'expand' | 'active' | 'visible' | 'disabled';\n\nexport type AXTreeViewLook = 'with-line' | 'defult';\n\nexport type AXTreeViewSelectionScope = 'all' | 'parent' | 'children';\n\nexport abstract class AXTreeViewBase {\n abstract getChildren(item: unknown): unknown[];\n\n abstract hasChildren(item: unknown): boolean;\n\n abstract itemTemplate: any;\n\n // Field accessors\n abstract disableField(): string;\n abstract childrenField(): string;\n abstract valueField(): string;\n abstract activeField(): string;\n abstract hasChildField(): string;\n abstract tooltipField(): string;\n\n // Behavior methods\n abstract expandOn(): AXTreeViewExpandBehavior;\n abstract focusNodeEnabled(): boolean;\n abstract toggleIcons(): { expanded: string; collapsed: string } | null;\n\n // Data management\n abstract itemsPromise: boolean;\n abstract itemsSignal(): unknown[];\n abstract fetchData(item: unknown): void;\n abstract setNodeLoading(value: unknown, loading: boolean): void;\n abstract handleUnActiveNode(items: unknown[]): void;\n\n // Event emitters\n abstract onCollapsedChanged: EventEmitter<{ component: any; data: unknown; nativeElement: any }>;\n abstract onNodeClick: EventEmitter<{ component: any; data: unknown; nativeElement: any }>;\n abstract onNodedbClick: EventEmitter<{ component: any; data: unknown; nativeElement: any }>;\n}\n","import { AXComponent, NXComponent } from '@acorex/cdk/common';\nimport { AXLoadingComponent } from '@acorex/components/loading';\nimport { AXTooltipDirective } from '@acorex/components/tooltip';\nimport { AXPlatform } from '@acorex/core/platform';\nimport { animate, state, style, transition, trigger } from '@angular/animations';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, inject, input, model, ViewEncapsulation } from '@angular/core';\nimport { AXTreeViewBase, AXTreeViewOperationMethod } from './tree-view.class';\n\n@Component({\n selector: 'ax-tree-view-item',\n templateUrl: 'tree-view-item.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: [\n trigger('collapseExpand', [\n state(\n 'collapsed',\n style({\n height: '0',\n overflow: 'hidden',\n opacity: 0,\n }),\n ),\n state(\n 'expanded',\n style({\n height: '*',\n overflow: 'hidden',\n opacity: 1,\n }),\n ),\n transition('collapsed <=> expanded', [animate('300ms ease-in-out')]),\n ]),\n ],\n imports: [CommonModule, AXLoadingComponent, AXTooltipDirective],\n providers: [{ provide: AXComponent, useExisting: AXTreeViewItemComponent }],\n})\nexport class AXTreeViewItemComponent extends NXComponent {\n constructor() {\n super();\n }\n\n treeView = inject(AXTreeViewBase);\n\n item = input<unknown>();\n\n isExpanded = model<boolean>(false);\n\n isActive = model<boolean>(false);\n\n isLoading = input<boolean>(false);\n\n executorChanges = input<AXTreeViewOperationMethod>();\n\n protected platformService = inject(AXPlatform);\n\n protected arrowIcon = computed(() => {\n const baseClasses = 'ax-tree-view-arrow ax-icon ax-icon-solid';\n const toggleIcons = this.treeView.toggleIcons();\n\n if (toggleIcons) {\n return this.isExpanded() ? `${baseClasses} ${toggleIcons.expanded}` : `${baseClasses} ${toggleIcons.collapsed}`;\n }\n\n if (this.isExpanded()) {\n return `${baseClasses} ax-icon-chevron-down`;\n }\n\n return this.platformService.isRtl()\n ? `${baseClasses} ax-icon-chevron-left`\n : `${baseClasses} ax-icon-chevron-right`;\n });\n\n protected handleArrowNodeClick() {\n if (this.item()[this.treeView.disableField()] || this.isLoading() || this.treeView.expandOn() === 'dbClick') {\n return;\n }\n\n this.isExpanded.set(!this.isExpanded());\n\n if (this.treeView.itemsPromise && this.isExpanded() && !this.item()[this.treeView.childrenField()]?.length) {\n this.treeView.fetchData(this.item());\n this.treeView.setNodeLoading(this.item()[this.treeView.valueField()], true);\n }\n\n this.treeView.onCollapsedChanged.emit({ component: this, data: this.item(), nativeElement: this.nativeElement });\n }\n\n protected handleTextClick(item: unknown) {\n if (this.item()[this.treeView.disableField()]) {\n return;\n }\n if (this.treeView.focusNodeEnabled()) {\n this.treeView.handleUnActiveNode(this.treeView.itemsSignal());\n this.item()[this.treeView.activeField()] = true;\n }\n this.treeView.onNodeClick.emit({ component: this, data: item, nativeElement: this.nativeElement });\n }\n\n protected handleTextDbClick(item: unknown) {\n if (item[this.treeView.disableField()] || this.treeView.expandOn() === 'click') {\n return;\n }\n if (item?.[this.treeView.childrenField()] || item[this.treeView.hasChildField()]) {\n this.isExpanded.set(!this.isExpanded());\n\n if (this.treeView.itemsPromise && this.isExpanded()) {\n this.treeView.fetchData(this.item());\n this.treeView.setNodeLoading(this.item()[this.treeView.valueField()], true);\n }\n }\n this.treeView.onNodedbClick.emit({ component: this, data: item, nativeElement: this.nativeElement });\n }\n}\n","<div class=\"ax-tree-view-container\">\n @if (\n (item()[this.treeView.childrenField()]?.length && !isLoading()) ||\n (item()[treeView.hasChildField()] && !isLoading())\n ) {\n <div class=\"ax-tree-view-icon-container\" (click)=\"handleArrowNodeClick()\">\n <i [class.ax-state-disabled]=\"item()[treeView.disableField()]\" class=\"{{ arrowIcon() }}\"></i>\n </div>\n } @else if (isLoading()) {\n <ax-loading></ax-loading>\n } @else {\n <div class=\"ax-tree-view-icon-container placeholder-icon\"></div>\n }\n\n <div class=\"ax-tree-view-items\">\n <ng-content select=\"ax-check-box\"></ng-content>\n <div\n [class.ax-state-disabled]=\"item()[treeView.disableField()]\"\n [axTooltip]=\"item()[treeView.tooltipField()]\"\n axTooltipPlacement=\"end-bottom\"\n (click)=\"handleTextClick(item())\"\n (dblclick)=\"handleTextDbClick(item())\"\n class=\"ax-tree-view-items-prefix noselect-tree-view\"\n [class.ax-state-tree-view-active]=\"item()[treeView.activeField()]\"\n >\n @if (treeView.itemTemplate) {\n <ng-container *ngTemplateOutlet=\"treeView.itemTemplate; context: { $implicit: item() }\"></ng-container>\n } @else {\n <ng-content select=\"ax-prefix\"></ng-content>\n <ng-content select=\"ax-text\"></ng-content>\n <ng-content select=\"ax-suffix\"></ng-content>\n }\n </div>\n </div>\n</div>\n\n<div class=\"ax-tree-view-child\" [@collapseExpand]=\"isExpanded() ? 'expanded' : 'collapsed'\">\n <ng-content></ng-content>\n</div>\n","import { AXComponent, AXExpandToggleIcons, AXValueChangedEvent, NXComponent } from '@acorex/cdk/common';\nimport { AXCheckBoxComponent } from '@acorex/components/check-box';\nimport { AXDecoratorGenericComponent, AXDecoratorIconComponent } from '@acorex/components/decorators';\nimport { AXPlatform } from '@acorex/core/platform';\nimport { AXTranslatorPipe } from '@acorex/core/translation';\nimport { AsyncPipe, NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n effect,\n HostBinding,\n inject,\n Input,\n input,\n output,\n signal,\n TemplateRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXTreeViewItemComponent } from './tree-view-item.component';\nimport {\n AXTreeItemClickBaseEvent,\n AXTreeViewBase,\n AXTreeViewExpandBehavior,\n AXTreeViewLook,\n AXTreeViewOperationMethod,\n AXTreeViewSelectionBehavior,\n AXTreeViewSelectionScope,\n} from './tree-view.class';\n\n@Component({\n selector: 'ax-tree-view',\n templateUrl: 'tree-view.component.html',\n styleUrls: ['tree-view.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n NgTemplateOutlet,\n AXTreeViewItemComponent,\n AXCheckBoxComponent,\n FormsModule,\n AXDecoratorGenericComponent,\n AXDecoratorIconComponent,\n AXTranslatorPipe,\n AsyncPipe,\n ],\n providers: [\n { provide: AXComponent, useExisting: AXTreeViewComponent },\n { provide: AXTreeViewBase, useExisting: AXTreeViewComponent },\n ],\n})\nexport class AXTreeViewComponent extends NXComponent {\n /** @ignore */\n @HostBinding('class')\n private get __hostClass(): string[] {\n return [`ax-look-${this.look()}`];\n }\n\n itemsSignal = signal<unknown[]>([]);\n\n itemsPromise: any;\n\n items = input<unknown[] | ((selectedItemId?: string | number) => unknown[] | Promise<unknown[]>)>();\n\n protected get resolvedItems() {\n return this.itemsSignal();\n }\n\n showCheckbox = input(true);\n\n hasCheckboxField = input('hasCheckbox');\n\n selectionMode = input<'single' | 'multiple'>('single');\n\n selectionBehavior = input<AXTreeViewSelectionBehavior>();\n\n selectionScope = input<AXTreeViewSelectionScope>('all');\n\n focusNodeEnabled = input(true);\n\n valueField = input('id');\n\n textField = input('text');\n\n visibleField = input('visible');\n\n disableField = input('disabled');\n\n hasChildField = input('hasChild');\n\n selectedField = input('selected');\n\n expandedField = input('expanded');\n\n tooltipField = input('tooltip');\n\n childrenField = input('children');\n\n activeField = input('active');\n\n indeterminateField = input('indeterminate');\n\n parentField = input('parentId');\n\n iconField = input('icon');\n\n toggleIcons = input<AXExpandToggleIcons>();\n\n onSelectionChanged = output<AXTreeItemClickBaseEvent>();\n\n onItemSelectedChanged = output<AXTreeItemClickBaseEvent>();\n\n onNodeClick = output<AXTreeItemClickBaseEvent>();\n\n onCollapsedChanged = output<AXTreeItemClickBaseEvent>();\n\n onNodedbClick = output<AXTreeItemClickBaseEvent>();\n\n executorChanges = signal<AXTreeViewOperationMethod>(null);\n\n look = input<AXTreeViewLook>('defult');\n\n @Input() itemTemplate?: TemplateRef<unknown>;\n\n @Input() emptyTemplate?: TemplateRef<unknown>;\n\n protected platformService = inject(AXPlatform);\n\n #effect = effect(() => {\n const itemsInput = this.items();\n\n if (typeof itemsInput === 'function') {\n const result = itemsInput();\n if (result instanceof Promise) {\n this.itemsPromise = (options) => itemsInput(options);\n this.fetchData();\n } else {\n this.itemsSignal.set(result);\n this.itemsPromise = null;\n }\n } else {\n this.itemsSignal.set(itemsInput);\n this.itemsPromise = null;\n }\n });\n\n expandOn = input<AXTreeViewExpandBehavior>('defult');\n\n protected handleNodeSelectionClick(event: AXValueChangedEvent, item: unknown) {\n if (item[this.disableField()] || this.isNodeLoading(item[this.valueField()])) {\n return;\n }\n\n if (this.selectionMode() === 'single' && event.isUserInteraction) {\n this.handleUnSelectNode(this.itemsSignal());\n }\n\n if (event.isUserInteraction) {\n item[this.selectedField()] = event.value;\n\n if (event.value !== null) {\n switch (this.selectionBehavior()) {\n case 'autoExpand':\n if (event.value) {\n if (this.itemsPromise && item[this.hasChildField()] && !item?.[this.childrenField()]?.length) {\n this.fetchData(item);\n this.setNodeLoading(item[this.valueField()], true);\n }\n this.toggleExpand(item);\n }\n break;\n case 'cascade':\n this.expandAndToggleSelection(item, event.value);\n break;\n case 'indeterminate':\n if (item?.[this.childrenField()]?.length) {\n this.applySelectionToChildren(item, event.value, item[this.valueField()]);\n }\n this.updateParentSelection(item, event.value);\n break;\n default:\n break;\n }\n }\n\n this.onItemSelectedChanged.emit({\n component: this,\n data: item,\n nativeElement: this.nativeElement,\n });\n\n const result: unknown[] = this.findSelectedNodes(this.itemsSignal());\n\n this.onSelectionChanged.emit({\n component: this,\n data: result,\n nativeElement: this.nativeElement,\n });\n }\n }\n\n /**\n *\n * auto expand\n *\n */\n private toggleExpand(item: unknown) {\n if (!item[this.expandedField()]) {\n item[this.expandedField()] = true;\n }\n }\n\n /**\n *\n * expand and change value parent change\n *\n */\n\n private async expandAndToggleSelection(item: unknown, selected: boolean) {\n if (this.itemsPromise && item[this.hasChildField()] && !item?.[this.childrenField()]?.length) {\n await this.fetchData(item);\n await this.setNodeLoading(item[this.valueField()], true);\n }\n this.toggleExpand(item);\n\n if (item[this.childrenField()]?.length) {\n this.applySelectionToChildren(item, selected, item[this.valueField()]);\n }\n }\n\n private applySelectionToChildren(item: unknown, isSelected: boolean, parentId?: number | string) {\n item[this.childrenField()].forEach(async (child) => {\n if (\n this.itemsPromise &&\n child[this.hasChildField()] &&\n !child?.[this.childrenField()]?.length &&\n this.selectionBehavior() === 'cascade'\n ) {\n await this.fetchData(child);\n await this.setNodeLoading(child[this.valueField()], true);\n this.toggleExpand(child);\n }\n child[this.parentField()] = parentId;\n child[this.selectedField()] = isSelected;\n if (child[this.childrenField()]?.length) {\n this.applySelectionToChildren(child, isSelected, child[this.valueField()]);\n }\n });\n }\n\n /**\n *\n * indeterminate logic\n *\n */\n\n private updateParentSelection(item: unknown, selected: boolean) {\n item[this.selectedField()] = selected;\n\n let parent = this.findParent(item, this.itemsSignal());\n\n while ((parent && parent[this.selectedField()] != false) || (parent && item[this.selectedField()])) {\n const allSelected = parent?.[this.childrenField()]?.every((child) => child[this.selectedField()]);\n\n const someSelected = parent?.[this.childrenField()]?.some(\n (child) => child[this.selectedField()] || child[this.indeterminateField()],\n );\n\n if (!allSelected && !someSelected) {\n parent[this.selectedField()] = false;\n parent[this.indeterminateField()] = null;\n } else if (!allSelected) {\n parent[this.indeterminateField()] = true;\n parent[this.selectedField()] = null;\n } else if (allSelected) {\n parent[this.selectedField()] = true;\n parent[this.indeterminateField()] = false;\n } else {\n parent[this.indeterminateField()] = false;\n parent[this.selectedField()] = true;\n }\n\n parent = this.findParent(parent, this.itemsSignal());\n }\n }\n\n private findParent(item: unknown, nodes: unknown[]) {\n for (const node of nodes) {\n if (node[this.childrenField()]?.includes(item)) {\n return node;\n } else if (node[this.childrenField()]) {\n const parent = this.findParent(item, node[this.childrenField()]);\n if (parent) return parent;\n }\n }\n return null;\n }\n\n /**\n *\n * find node selected true for emit Selections\n *\n */\n\n private findSelectedNodes(nodes: unknown[]): unknown[] {\n let selectedNodes: unknown[] = [];\n\n nodes.forEach((node) => {\n if (node[this.selectedField()]) {\n selectedNodes.push(node);\n }\n\n if (node[this.childrenField()]) {\n selectedNodes = selectedNodes.concat(this.findSelectedNodes(node[this.childrenField()]));\n }\n });\n\n return selectedNodes;\n }\n\n /**\n *\n * find for emit Selections single mode\n *\n */\n\n private handleUnSelectNode(items: unknown[]) {\n items.forEach((child) => {\n child[this.selectedField()] = false;\n if (child?.[this.childrenField()]?.length) {\n this.handleUnSelectNode(child[this.childrenField()]);\n }\n });\n }\n\n /**\n *\n * lazy load logic\n *\n */\n\n fetchData(selectedNode?: unknown) {\n this.itemsPromise(selectedNode?.[this.valueField()])\n .then((data: unknown[]) => {\n if (Array.isArray(data)) {\n if (selectedNode?.[this.valueField()]) {\n this.findNode(selectedNode[this.valueField()], data, this.itemsSignal());\n } else {\n this.itemsSignal.set(data);\n }\n }\n })\n .finally(() => {\n this.setNodeLoading(selectedNode?.[this.valueField()], false);\n });\n }\n\n private findNode(parentId: number | string, _children: unknown[], source: unknown[]) {\n if (source.length) {\n source.forEach((element) => {\n if (element[this.valueField()] == parentId) {\n if (this.selectionBehavior() === 'indeterminate' && element[this.selectedField()]) {\n _children.forEach((child) => (child[this.selectedField()] = true));\n }\n element[this.childrenField()] = _children;\n } else {\n if (element?.[this.childrenField()]) this.findNode(parentId, _children, element[this.childrenField()]);\n }\n });\n }\n }\n\n /**\n *\n * emit when arrow click\n *\n */\n\n protected handleNodeExpandClick(node: AXTreeItemClickBaseEvent) {\n const selectedNode = node.data;\n if (this.itemsPromise && node.data[this.expandedField()] && !node?.data[this.childrenField()]?.length) {\n this.fetchData(selectedNode);\n this.setNodeLoading(selectedNode[this.valueField()], true);\n }\n this.onCollapsedChanged.emit({ component: this, data: node.data, nativeElement: this.nativeElement });\n }\n\n handleUnActiveNode(unActiveSource: unknown[]) {\n unActiveSource.forEach((child) => {\n child[this.activeField()] = false;\n if (child?.[this.childrenField()]?.length) {\n this.handleUnActiveNode(child[this.childrenField()]);\n }\n });\n }\n\n private loadingState = signal<Record<string | number, boolean>>({});\n\n protected isNodeLoading(nodeId: string | number): boolean {\n return this.loadingState()[nodeId] || false;\n }\n\n setNodeLoading(nodeId: string | number, isLoading: boolean): void {\n this.loadingState.update((state) => ({\n ...state,\n [nodeId]: isLoading,\n }));\n }\n\n public executeOnTreeNode(node: unknown, operation: AXTreeViewOperationMethod, value: boolean) {\n switch (operation) {\n case 'active':\n node[this.activeField()] = value;\n break;\n case 'expand':\n node[this.expandedField()] = true;\n if (this.itemsPromise && node[this.hasChildField()] && !node[this.childrenField()]?.length) {\n this.handleNodeExpandClick({ data: node, nativeElement: this.nativeElement, component: this });\n }\n\n break;\n case 'visible':\n node[this.visibleField()] = value;\n\n break;\n case 'disabled':\n node[this.disableField()] = value;\n break;\n default:\n break;\n }\n /**\n *\n * for detect changes treeviewitem\n *\n */\n\n this.executorChanges.set(operation);\n }\n\n refresh() {\n if (this.itemsPromise) {\n this.fetchData();\n }\n }\n}\n","@if (resolvedItems?.length) {\n @for (node of resolvedItems; track $index) {\n <ng-container [ngTemplateOutlet]=\"recursion\" [ngTemplateOutletContext]=\"{ $implicit: node }\"></ng-container>\n }\n} @else {\n <ng-container *ngTemplateOutlet=\"emptyTemplate || empty\"></ng-container>\n}\n\n<ng-template #recursion let-item>\n @if (item[visibleField()] !== false) {\n <ax-tree-view-item\n [item]=\"item\"\n [isExpanded]=\"item[expandedField()]\"\n [(isActive)]=\"item[activeField()]\"\n [isLoading]=\"isNodeLoading(item[valueField()])\"\n [executorChanges]=\"executorChanges()\"\n >\n @if (\n (showCheckbox() && selectionScope() === 'all' && item[hasCheckboxField()]) ||\n (showCheckbox() &&\n selectionScope() === 'parent' &&\n item[childrenField()]?.length &&\n item[hasCheckboxField()]) ||\n (showCheckbox() &&\n selectionScope() === 'children' &&\n !item[childrenField()]?.length &&\n item[hasCheckboxField()])\n ) {\n <ax-check-box\n [disabled]=\"item[disableField()]\"\n [indeterminate]=\"item[indeterminateField()]\"\n [(ngModel)]=\"item[selectedField()]\"\n (onValueChanged)=\"handleNodeSelectionClick($event, item)\"\n ></ax-check-box>\n }\n <ax-prefix>\n @if (item[iconField()]) {\n <ax-icon [icon]=\"item[iconField()]\"></ax-icon>\n } @else {\n <i></i>\n }\n </ax-prefix>\n @if (item[textField()]) {\n <ax-text>{{ item[textField()] }}</ax-text>\n }\n\n <ax-suffix></ax-suffix>\n @for (child of item?.[childrenField()]; track $index) {\n <ng-container [ngTemplateOutlet]=\"recursion\" [ngTemplateOutletContext]=\"{ $implicit: child }\"></ng-container>\n }\n </ax-tree-view-item>\n }\n</ng-template>\n\n<ng-template #empty>\n {{ 'no-result-found' | translate | async }}\n</ng-template>\n","import { AXCommonModule } from '@acorex/cdk/common';\nimport { AXCheckBoxModule } from '@acorex/components/check-box';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXTooltipModule } from '@acorex/components/tooltip';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXTreeViewItemComponent } from './tree-view-item.component';\nimport { AXTreeViewComponent } from './tree-view.component';\n\nconst COMPONENT = [AXTreeViewComponent, AXTreeViewItemComponent];\nconst MODULES = [\n CommonModule,\n AXCommonModule,\n AXDecoratorModule,\n AXCheckBoxModule,\n AXFormModule,\n FormsModule,\n AXTooltipModule,\n AXLoadingModule,\n];\n@NgModule({\n imports: [...COMPONENT, ...MODULES],\n exports: [...COMPONENT],\n})\nexport class AXTreeViewModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
|
package/package.json
CHANGED
@@ -12,6 +12,7 @@ export declare class AXTreeViewComponent extends NXComponent {
|
|
12
12
|
items: import("@angular/core").InputSignal<unknown[] | ((selectedItemId?: string | number) => unknown[] | Promise<unknown[]>)>;
|
13
13
|
protected get resolvedItems(): unknown[];
|
14
14
|
showCheckbox: import("@angular/core").InputSignal<boolean>;
|
15
|
+
hasCheckboxField: import("@angular/core").InputSignal<string>;
|
15
16
|
selectionMode: import("@angular/core").InputSignal<"single" | "multiple">;
|
16
17
|
selectionBehavior: import("@angular/core").InputSignal<AXTreeViewSelectionBehavior>;
|
17
18
|
selectionScope: import("@angular/core").InputSignal<AXTreeViewSelectionScope>;
|
@@ -94,5 +95,5 @@ export declare class AXTreeViewComponent extends NXComponent {
|
|
94
95
|
executeOnTreeNode(node: unknown, operation: AXTreeViewOperationMethod, value: boolean): void;
|
95
96
|
refresh(): void;
|
96
97
|
static ɵfac: i0.ɵɵFactoryDeclaration<AXTreeViewComponent, never>;
|
97
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AXTreeViewComponent, "ax-tree-view", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "showCheckbox": { "alias": "showCheckbox"; "required": false; "isSignal": true; }; "selectionMode": { "alias": "selectionMode"; "required": false; "isSignal": true; }; "selectionBehavior": { "alias": "selectionBehavior"; "required": false; "isSignal": true; }; "selectionScope": { "alias": "selectionScope"; "required": false; "isSignal": true; }; "focusNodeEnabled": { "alias": "focusNodeEnabled"; "required": false; "isSignal": true; }; "valueField": { "alias": "valueField"; "required": false; "isSignal": true; }; "textField": { "alias": "textField"; "required": false; "isSignal": true; }; "visibleField": { "alias": "visibleField"; "required": false; "isSignal": true; }; "disableField": { "alias": "disableField"; "required": false; "isSignal": true; }; "hasChildField": { "alias": "hasChildField"; "required": false; "isSignal": true; }; "selectedField": { "alias": "selectedField"; "required": false; "isSignal": true; }; "expandedField": { "alias": "expandedField"; "required": false; "isSignal": true; }; "tooltipField": { "alias": "tooltipField"; "required": false; "isSignal": true; }; "childrenField": { "alias": "childrenField"; "required": false; "isSignal": true; }; "activeField": { "alias": "activeField"; "required": false; "isSignal": true; }; "indeterminateField": { "alias": "indeterminateField"; "required": false; "isSignal": true; }; "parentField": { "alias": "parentField"; "required": false; "isSignal": true; }; "iconField": { "alias": "iconField"; "required": false; "isSignal": true; }; "toggleIcons": { "alias": "toggleIcons"; "required": false; "isSignal": true; }; "look": { "alias": "look"; "required": false; "isSignal": true; }; "itemTemplate": { "alias": "itemTemplate"; "required": false; }; "emptyTemplate": { "alias": "emptyTemplate"; "required": false; }; "expandOn": { "alias": "expandOn"; "required": false; "isSignal": true; }; }, { "onSelectionChanged": "onSelectionChanged"; "onItemSelectedChanged": "onItemSelectedChanged"; "onNodeClick": "onNodeClick"; "onCollapsedChanged": "onCollapsedChanged"; "onNodedbClick": "onNodedbClick"; }, never, never, true, never>;
|
98
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AXTreeViewComponent, "ax-tree-view", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "showCheckbox": { "alias": "showCheckbox"; "required": false; "isSignal": true; }; "hasCheckboxField": { "alias": "hasCheckboxField"; "required": false; "isSignal": true; }; "selectionMode": { "alias": "selectionMode"; "required": false; "isSignal": true; }; "selectionBehavior": { "alias": "selectionBehavior"; "required": false; "isSignal": true; }; "selectionScope": { "alias": "selectionScope"; "required": false; "isSignal": true; }; "focusNodeEnabled": { "alias": "focusNodeEnabled"; "required": false; "isSignal": true; }; "valueField": { "alias": "valueField"; "required": false; "isSignal": true; }; "textField": { "alias": "textField"; "required": false; "isSignal": true; }; "visibleField": { "alias": "visibleField"; "required": false; "isSignal": true; }; "disableField": { "alias": "disableField"; "required": false; "isSignal": true; }; "hasChildField": { "alias": "hasChildField"; "required": false; "isSignal": true; }; "selectedField": { "alias": "selectedField"; "required": false; "isSignal": true; }; "expandedField": { "alias": "expandedField"; "required": false; "isSignal": true; }; "tooltipField": { "alias": "tooltipField"; "required": false; "isSignal": true; }; "childrenField": { "alias": "childrenField"; "required": false; "isSignal": true; }; "activeField": { "alias": "activeField"; "required": false; "isSignal": true; }; "indeterminateField": { "alias": "indeterminateField"; "required": false; "isSignal": true; }; "parentField": { "alias": "parentField"; "required": false; "isSignal": true; }; "iconField": { "alias": "iconField"; "required": false; "isSignal": true; }; "toggleIcons": { "alias": "toggleIcons"; "required": false; "isSignal": true; }; "look": { "alias": "look"; "required": false; "isSignal": true; }; "itemTemplate": { "alias": "itemTemplate"; "required": false; }; "emptyTemplate": { "alias": "emptyTemplate"; "required": false; }; "expandOn": { "alias": "expandOn"; "required": false; "isSignal": true; }; }, { "onSelectionChanged": "onSelectionChanged"; "onItemSelectedChanged": "onItemSelectedChanged"; "onNodeClick": "onNodeClick"; "onCollapsedChanged": "onCollapsedChanged"; "onNodedbClick": "onNodedbClick"; }, never, never, true, never>;
|
98
99
|
}
|
@@ -1,7 +0,0 @@
|
|
1
|
-
import type { Meta, StoryObj } from '@storybook/angular';
|
2
|
-
import { AXActionSheetComponent } from './action-sheet.component';
|
3
|
-
declare const meta: Meta<AXActionSheetComponent>;
|
4
|
-
export default meta;
|
5
|
-
type Story = StoryObj<AXActionSheetComponent>;
|
6
|
-
export declare const Primary: Story;
|
7
|
-
export declare const Heading: Story;
|