@alauda/ui 7.2.1-beta.2 → 7.2.1-beta.21

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.
@@ -1,6 +1,6 @@
1
1
  import { CdkAccordion, CdkAccordionItem, CdkAccordionModule } from '@angular/cdk/accordion';
2
2
  import * as i0 from '@angular/core';
3
- import { Component, ViewEncapsulation, ChangeDetectionStrategy, SkipSelf, Optional, Input, HostBinding, Injectable, Pipe, booleanAttribute, TemplateRef, Inject, NgModule, Directive, ContentChild, EventEmitter, Output, ElementRef, ContentChildren, ChangeDetectorRef, ViewChild, HostListener, Host, forwardRef, InjectionToken, isDevMode, numberAttribute, Injector, Type, ViewContainerRef, ViewChildren } from '@angular/core';
3
+ import { Component, ViewEncapsulation, ChangeDetectionStrategy, SkipSelf, Optional, Input, HostBinding, Injectable, Pipe, booleanAttribute, TemplateRef, Inject, NgModule, Directive, ContentChild, EventEmitter, Output, ElementRef, ContentChildren, ChangeDetectorRef, forwardRef, ViewChild, HostListener, Host, InjectionToken, isDevMode, numberAttribute, Injector, Type, ViewContainerRef, ViewChildren } from '@angular/core';
4
4
  import { DOCUMENT, NgIf, NgClass, CommonModule, NgTemplateOutlet, NgFor, AsyncPipe, DecimalPipe, NgStyle, DatePipe, NgComponentOutlet, NgSwitch, NgSwitchCase, NgSwitchDefault } from '@angular/common';
5
5
  import { ReplaySubject, distinctUntilChanged, Subject, takeUntil, Observable, share, startWith, map, filter, take, merge, fromEvent, combineLatest, debounceTime, switchMap, of, EMPTY, tap, BehaviorSubject, withLatestFrom, delay, first, throttleTime, firstValueFrom, NEVER, observeOn, animationFrameScheduler, repeat, takeWhile, endWith, Subscription } from 'rxjs';
6
6
  import * as i1 from '@angular/common/http';
@@ -1222,13 +1222,16 @@ class SuggestionComponent {
1222
1222
  this.focused = false;
1223
1223
  this.cdr.markForCheck();
1224
1224
  }
1225
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: SuggestionComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: AutocompleteComponent }], target: i0.ɵɵFactoryTarget.Component });
1225
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: SuggestionComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: forwardRef(() => AutocompleteComponent) }], target: i0.ɵɵFactoryTarget.Component });
1226
1226
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "16.2.3", type: SuggestionComponent, isStandalone: true, selector: "aui-suggestion", inputs: { value: "value", disabled: ["disabled", "disabled", coerceAttrBoolean] }, viewQueries: [{ propertyName: "elRef", first: true, predicate: ["elRef"], descendants: true, static: true }], ngImport: i0, template: "<div\n #elRef\n [hidden]=\"!(visible$ | async)\"\n [class]=\"bem.block('medium')\"\n [class.isDisabled]=\"disabled\"\n [class.isSelected]=\"selected$ | async\"\n [class.isFocused]=\"focused\"\n (click)=\"onClick()\"\n>\n <ng-content></ng-content>\n</div>\n", styles: [".aui-suggestion{padding:0 var(--aui-inline-padding-xs);color:rgb(var(--aui-color-main-text));font-weight:var(--aui-font-weight-normal);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.aui-suggestion--large{padding:calc((var(--aui-inline-height-l) - var(--aui-line-height-l)) / 2);line-height:var(--aui-line-height-l);font-size:var(--aui-font-size-l)}.aui-suggestion--medium{padding:calc((var(--aui-inline-height-m) - var(--aui-line-height-m)) / 2);line-height:var(--aui-line-height-m);font-size:var(--aui-font-size-m)}.aui-suggestion--small{padding:calc((var(--aui-inline-height-s) - var(--aui-line-height-m)) / 2);line-height:var(--aui-line-height-m);font-size:var(--aui-font-size-m)}.aui-suggestion--mini{padding:calc((var(--aui-inline-height-xs) - var(--aui-line-height-s)) / 2);line-height:var(--aui-line-height-s);font-size:var(--aui-font-size-s)}.aui-suggestion:not(.isMulti).isSelected{color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6))}.aui-suggestion:hover,.aui-suggestion.isFocused{background-color:rgb(var(--aui-color-p-6))}.aui-suggestion.isDisabled{color:rgb(var(--aui-color-n-6));cursor:not-allowed}.aui-suggestion__pointer{display:inline-flex;justify-content:center;align-items:center;flex-shrink:0;width:var(--aui-icon-size-m);height:var(--aui-icon-size-m);margin-right:var(--aui-spacing-m);border-radius:var(--aui-border-radius-m);border:1px solid rgb(var(--aui-color-n-7));color:#fff;background-color:rgb(var(--aui-color-main-bg));position:relative;vertical-align:middle;transition:all .3s ease}.aui-suggestion.cdk-keyboard-focused .aui-suggestion__pointer{border-color:rgb(var(--aui-color-primary))}:root .aui-suggestion.cdk-keyboard-focused .aui-suggestion__pointer{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.16)}html[aui-theme-mode=light] .aui-suggestion.cdk-keyboard-focused .aui-suggestion__pointer{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.16)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-suggestion.cdk-keyboard-focused .aui-suggestion__pointer{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.3)}}html[aui-theme-mode=dark] .aui-suggestion.cdk-keyboard-focused .aui-suggestion__pointer{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.3)}.aui-suggestion.isSelected .aui-suggestion__pointer{border-color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-primary))}.aui-suggestion.isIndeterminate .aui-suggestion__pointer{border-color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-main-bg))}.aui-suggestion.isIndeterminate .aui-suggestion__pointer:before{content:\"\";display:block;width:8px;height:8px;border-radius:1px;background-color:rgb(var(--aui-color-primary))}.aui-suggestion.isSelected.isDisabled .aui-suggestion__pointer{border-color:rgb(var(--aui-color-p-4));background-color:rgb(var(--aui-color-p-4))}.aui-suggestion.isDisabled .aui-suggestion__label{cursor:not-allowed}.aui-suggestion.isDisabled .aui-suggestion__pointer{border-color:rgb(var(--aui-color-n-7));background-color:rgb(var(--aui-color-n-8))}.aui-suggestion:not(.isDisabled):hover .aui-suggestion__pointer,.aui-suggestion:not(.isDisabled).isFocused .aui-suggestion__pointer{border-color:rgb(var(--aui-color-primary))}.aui-suggestion__divider{display:block;width:100%;height:1px;background-color:rgb(var(--aui-color-divider))}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
1227
1227
  }
1228
1228
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: SuggestionComponent, decorators: [{
1229
1229
  type: Component,
1230
1230
  args: [{ selector: 'aui-suggestion', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, preserveWhitespaces: false, standalone: true, imports: [AsyncPipe], template: "<div\n #elRef\n [hidden]=\"!(visible$ | async)\"\n [class]=\"bem.block('medium')\"\n [class.isDisabled]=\"disabled\"\n [class.isSelected]=\"selected$ | async\"\n [class.isFocused]=\"focused\"\n (click)=\"onClick()\"\n>\n <ng-content></ng-content>\n</div>\n", styles: [".aui-suggestion{padding:0 var(--aui-inline-padding-xs);color:rgb(var(--aui-color-main-text));font-weight:var(--aui-font-weight-normal);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.aui-suggestion--large{padding:calc((var(--aui-inline-height-l) - var(--aui-line-height-l)) / 2);line-height:var(--aui-line-height-l);font-size:var(--aui-font-size-l)}.aui-suggestion--medium{padding:calc((var(--aui-inline-height-m) - var(--aui-line-height-m)) / 2);line-height:var(--aui-line-height-m);font-size:var(--aui-font-size-m)}.aui-suggestion--small{padding:calc((var(--aui-inline-height-s) - var(--aui-line-height-m)) / 2);line-height:var(--aui-line-height-m);font-size:var(--aui-font-size-m)}.aui-suggestion--mini{padding:calc((var(--aui-inline-height-xs) - var(--aui-line-height-s)) / 2);line-height:var(--aui-line-height-s);font-size:var(--aui-font-size-s)}.aui-suggestion:not(.isMulti).isSelected{color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6))}.aui-suggestion:hover,.aui-suggestion.isFocused{background-color:rgb(var(--aui-color-p-6))}.aui-suggestion.isDisabled{color:rgb(var(--aui-color-n-6));cursor:not-allowed}.aui-suggestion__pointer{display:inline-flex;justify-content:center;align-items:center;flex-shrink:0;width:var(--aui-icon-size-m);height:var(--aui-icon-size-m);margin-right:var(--aui-spacing-m);border-radius:var(--aui-border-radius-m);border:1px solid rgb(var(--aui-color-n-7));color:#fff;background-color:rgb(var(--aui-color-main-bg));position:relative;vertical-align:middle;transition:all .3s ease}.aui-suggestion.cdk-keyboard-focused .aui-suggestion__pointer{border-color:rgb(var(--aui-color-primary))}:root .aui-suggestion.cdk-keyboard-focused .aui-suggestion__pointer{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.16)}html[aui-theme-mode=light] .aui-suggestion.cdk-keyboard-focused .aui-suggestion__pointer{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.16)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-suggestion.cdk-keyboard-focused .aui-suggestion__pointer{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.3)}}html[aui-theme-mode=dark] .aui-suggestion.cdk-keyboard-focused .aui-suggestion__pointer{box-shadow:0 0 0 2px rgba(var(--aui-color-primary),.3)}.aui-suggestion.isSelected .aui-suggestion__pointer{border-color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-primary))}.aui-suggestion.isIndeterminate .aui-suggestion__pointer{border-color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-main-bg))}.aui-suggestion.isIndeterminate .aui-suggestion__pointer:before{content:\"\";display:block;width:8px;height:8px;border-radius:1px;background-color:rgb(var(--aui-color-primary))}.aui-suggestion.isSelected.isDisabled .aui-suggestion__pointer{border-color:rgb(var(--aui-color-p-4));background-color:rgb(var(--aui-color-p-4))}.aui-suggestion.isDisabled .aui-suggestion__label{cursor:not-allowed}.aui-suggestion.isDisabled .aui-suggestion__pointer{border-color:rgb(var(--aui-color-n-7));background-color:rgb(var(--aui-color-n-8))}.aui-suggestion:not(.isDisabled):hover .aui-suggestion__pointer,.aui-suggestion:not(.isDisabled).isFocused .aui-suggestion__pointer{border-color:rgb(var(--aui-color-primary))}.aui-suggestion__divider{display:block;width:100%;height:1px;background-color:rgb(var(--aui-color-divider))}\n"] }]
1231
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: AutocompleteComponent }]; }, propDecorators: { value: [{
1231
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: AutocompleteComponent, decorators: [{
1232
+ type: Inject,
1233
+ args: [forwardRef(() => AutocompleteComponent)]
1234
+ }] }]; }, propDecorators: { value: [{
1232
1235
  type: Input
1233
1236
  }], disabled: [{
1234
1237
  type: Input,
@@ -1303,10 +1306,10 @@ var TimingFunction;
1303
1306
  TimingFunction["easeInOut"] = "cubic-bezier(0.38, 0, 0.24, 1)";
1304
1307
  })(TimingFunction || (TimingFunction = {}));
1305
1308
 
1306
- const duration = '160ms';
1309
+ const duration$1 = '160ms';
1307
1310
  const scale = [
1308
1311
  transition('scale-hide => scale-show, void => scale-show', [
1309
- animate(`${duration} ${TimingFunction.easeOut}`, keyframes([
1312
+ animate(`${duration$1} ${TimingFunction.easeOut}`, keyframes([
1310
1313
  style({
1311
1314
  opacity: 0,
1312
1315
  transform: 'scale(0)',
@@ -1318,7 +1321,7 @@ const scale = [
1318
1321
  ])),
1319
1322
  ]),
1320
1323
  transition('scale-show => scale-hide, scale-show => void', [
1321
- animate(`${duration} ${TimingFunction.easeInOut}`, keyframes([
1324
+ animate(`${duration$1} ${TimingFunction.easeInOut}`, keyframes([
1322
1325
  style({
1323
1326
  opacity: 1,
1324
1327
  transform: 'scale(1)',
@@ -1332,7 +1335,7 @@ const scale = [
1332
1335
  ];
1333
1336
  const scaleY = [
1334
1337
  transition('scaleY-hide => scaleY-show, void => scaleY-show', [
1335
- animate(`${duration} ${TimingFunction.easeOut}`, keyframes([
1338
+ animate(`${duration$1} ${TimingFunction.easeOut}`, keyframes([
1336
1339
  style({
1337
1340
  opacity: 0,
1338
1341
  transform: 'scaleY(0)',
@@ -1344,7 +1347,7 @@ const scaleY = [
1344
1347
  ])),
1345
1348
  ]),
1346
1349
  transition('scaleY-show => scaleY-hide, scaleY-show => void', [
1347
- animate(`${duration} ${TimingFunction.easeInOut}`, keyframes([
1350
+ animate(`${duration$1} ${TimingFunction.easeInOut}`, keyframes([
1348
1351
  style({
1349
1352
  opacity: 1,
1350
1353
  transform: 'scaleY(1)',
@@ -6763,15 +6766,292 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImpor
6763
6766
  }]
6764
6767
  }] });
6765
6768
 
6766
- var DrawerSize;
6767
- (function (DrawerSize) {
6768
- DrawerSize["Small"] = "small";
6769
- DrawerSize["Medium"] = "medium";
6770
- DrawerSize["Big"] = "big";
6771
- })(DrawerSize || (DrawerSize = {}));
6769
+ const DrawerSize = {
6770
+ Small: 'small',
6771
+ Medium: 'medium',
6772
+ Big: 'big',
6773
+ };
6774
+
6775
+ const DATA = new InjectionToken('drawer-data');
6776
+ const SIZE_MAPPER = {
6777
+ [DrawerSize.Small]: 400,
6778
+ [DrawerSize.Medium]: 600,
6779
+ [DrawerSize.Big]: 800,
6780
+ };
6781
+ const DRAWER_OVERLAY_BACKDROP_CLASS = 'aui-drawer-mask';
6782
+ const duration = '300ms';
6783
+ class DrawerInternalComponent {
6784
+ injector;
6785
+ bodyPortalOutlet;
6786
+ mask;
6787
+ animationStep$ = new Subject();
6788
+ options;
6789
+ showHide$$ = new BehaviorSubject('hide');
6790
+ maskVisible$ = new Subject();
6791
+ get drawerClasses() {
6792
+ return {
6793
+ 'aui-drawer': true,
6794
+ hasDivider: this.options.divider,
6795
+ ...(this.options.drawerClass
6796
+ ? { [this.options.drawerClass]: true }
6797
+ : null),
6798
+ };
6799
+ }
6800
+ get width() {
6801
+ return handlePixel(this.options.width || SIZE_MAPPER[this.options.size || DrawerSize.Medium]);
6802
+ }
6803
+ isTemplateRef = isTemplateRef;
6804
+ constructor(injector) {
6805
+ this.injector = injector;
6806
+ }
6807
+ ngAfterViewInit() {
6808
+ this.attachBodyContent();
6809
+ }
6810
+ attachBodyContent() {
6811
+ this.bodyPortalOutlet?.dispose();
6812
+ const content = this.options.content;
6813
+ if (!(content instanceof Type)) {
6814
+ return;
6815
+ }
6816
+ const componentPortal = new ComponentPortal(content, null, Injector.create({
6817
+ providers: [
6818
+ {
6819
+ provide: DATA,
6820
+ useValue: this.options.contentParams,
6821
+ },
6822
+ ],
6823
+ parent: this.injector,
6824
+ }));
6825
+ const componentRef = this.bodyPortalOutlet?.attachComponentPortal(componentPortal);
6826
+ Object.assign(componentRef.instance, this.options.contentParams);
6827
+ componentRef.changeDetectorRef.detectChanges();
6828
+ }
6829
+ onAnimation(event) {
6830
+ const { phaseName, toState } = event;
6831
+ if (!['show', 'hide'].includes(toState)) {
6832
+ return;
6833
+ }
6834
+ const step = [
6835
+ toState,
6836
+ phaseName.charAt(0).toUpperCase() + phaseName.slice(1),
6837
+ ].join('');
6838
+ this.animationStep$.next(step);
6839
+ const backdropElement = this.mask?.nativeElement;
6840
+ if (!backdropElement) {
6841
+ return;
6842
+ }
6843
+ const enters = [
6844
+ `${DRAWER_OVERLAY_BACKDROP_CLASS}-enter`,
6845
+ `${DRAWER_OVERLAY_BACKDROP_CLASS}-enter-active`,
6846
+ ];
6847
+ const leaves = [
6848
+ `${DRAWER_OVERLAY_BACKDROP_CLASS}-leave`,
6849
+ `${DRAWER_OVERLAY_BACKDROP_CLASS}-leave-active`,
6850
+ ];
6851
+ switch (step) {
6852
+ case 'showStart': {
6853
+ backdropElement.classList.add(...enters);
6854
+ this.maskVisible$.next(true);
6855
+ break;
6856
+ }
6857
+ case 'hideStart': {
6858
+ backdropElement.classList.add(...leaves);
6859
+ break;
6860
+ }
6861
+ case 'showDone': {
6862
+ backdropElement.classList.remove(...enters);
6863
+ break;
6864
+ }
6865
+ case 'hideDone': {
6866
+ this.maskVisible$.next(false);
6867
+ backdropElement.classList.remove(...leaves);
6868
+ break;
6869
+ }
6870
+ }
6871
+ }
6872
+ show() {
6873
+ this.showHide$$.next('show');
6874
+ }
6875
+ hide() {
6876
+ this.showHide$$.next('hide');
6877
+ }
6878
+ maskClick() {
6879
+ if (this.options.maskClosable) {
6880
+ this.hide();
6881
+ }
6882
+ }
6883
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: DrawerInternalComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
6884
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.3", type: DrawerInternalComponent, isStandalone: true, selector: "ng-component", viewQueries: [{ propertyName: "bodyPortalOutlet", first: true, predicate: CdkPortalOutlet, descendants: true }, { propertyName: "mask", first: true, predicate: ["mask"], descendants: true }], ngImport: i0, template: "<div\n #mask\n class=\"aui-drawer-mask\"\n *ngIf=\"options.mask\"\n [class.isOpen]=\"maskVisible$ | async\"\n (click)=\"maskClick()\"\n></div>\n<div\n [style.marginTop]=\"options.offsetY\"\n [ngClass]=\"drawerClasses\"\n [@showHide]=\"showHide$$ | async\"\n (@showHide.start)=\"onAnimation($event)\"\n (@showHide.done)=\"onAnimation($event)\"\n [style.width]=\"width\"\n>\n <div class=\"aui-drawer__content\">\n <div class=\"aui-drawer__body-wrapper\">\n <div class=\"aui-drawer__header\">\n <div class=\"aui-drawer__title\">\n <ng-container\n *ngIf=\"isTemplateRef(options.title); else normal\"\n [ngTemplateOutlet]=\"options.title\"\n [ngTemplateOutletContext]=\"options.contentParams\"\n ></ng-container>\n <ng-template #normal>\n {{ options.title }}\n </ng-template>\n </div>\n <aui-icon\n *ngIf=\"options.showClose\"\n class=\"aui-drawer__close\"\n icon=\"xmark\"\n (click)=\"hide()\"\n ></aui-icon>\n </div>\n\n <div\n class=\"aui-drawer__body\"\n cdkScrollable\n >\n <ng-template cdkPortalOutlet></ng-template>\n <ng-container\n *ngIf=\"isTemplateRef(options.content)\"\n [ngTemplateOutlet]=\"options.content\"\n [ngTemplateOutletContext]=\"options.contentParams\"\n >\n </ng-container>\n </div>\n\n <div\n *ngIf=\"options.footer\"\n class=\"aui-drawer__footer\"\n >\n <ng-container\n *ngIf=\"isTemplateRef(options.footer); else normal\"\n [ngTemplateOutlet]=\"options.footer\"\n [ngTemplateOutletContext]=\"options.contentParams\"\n ></ng-container>\n <ng-template #normal>\n {{ options.footer }}\n </ng-template>\n </div>\n </div>\n </div>\n</div>\n", styles: ["@keyframes aui-fade-in{0%{opacity:0}to{opacity:1}}@keyframes aui-fade-out{0%{opacity:1}to{opacity:0}}@keyframes aui-zoom-in{0%{transform:scale(.2);opacity:0}to{transform:scale(1);opacity:1}}@keyframes aui-zoom-out{0%{transform:scale(1)}to{transform:scale(.2);opacity:0}}.aui-drawer-mask{position:absolute;top:0;left:0;width:100%;height:0}:root .aui-drawer-mask{background-color:rgba(var(--aui-color-origin-shadow),.4)}html[aui-theme-mode=light] .aui-drawer-mask{background-color:rgba(var(--aui-color-origin-shadow),.4)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-drawer-mask{background-color:rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-drawer-mask{background-color:rgba(var(--aui-color-origin-shadow),.75)}.aui-drawer-mask.isOpen{height:100%}.aui-drawer-mask-enter,.aui-drawer-mask-leave{animation-duration:.3s;animation-fill-mode:both;animation-play-state:paused}.aui-drawer-mask-enter.aui-drawer-mask-enter-active,.aui-drawer-mask-leave.aui-drawer-mask-leave-active{animation-play-state:running;pointer-events:none}.aui-drawer-mask-enter.aui-drawer-mask-enter-active{animation-name:aui-fade-in}.aui-drawer-mask-leave.aui-drawer-mask-leave-active{animation-name:aui-fade-out}.aui-drawer-mask-enter{opacity:0;animation-timing-function:linear}.aui-drawer-mask-leave{animation-timing-function:linear}.aui-drawer{position:fixed;top:0;bottom:0;right:0;z-index:9999;font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);font-weight:var(--aui-font-weight-normal);color:rgb(var(--aui-color-main-text))}.aui-drawer__content{background-color:rgb(var(--aui-color-n-10));position:absolute;height:100%;right:0;width:100%}:root .aui-drawer__content{box-shadow:-2px 0 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-drawer__content{box-shadow:-2px 0 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-drawer__content{box-shadow:-2px 0 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-drawer__content{box-shadow:-2px 0 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-drawer__header{padding:20px;display:flex;flex-shrink:0;justify-content:space-between}.aui-drawer__title{flex:1;font-size:var(--aui-font-size-xxl);line-height:var(--aui-line-height-xxl);font-weight:var(--aui-font-weight-bolder);color:rgb(var(--aui-color-main-text));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aui-drawer__close{z-index:10;flex-shrink:0;margin-top:2px;margin-left:var(--aui-spacing-xl);display:flex;justify-content:center;align-items:center;width:24px;height:24px;font-size:var(--aui-icon-size-l);color:rgb(var(--aui-color-secondary-text));border-radius:var(--aui-border-radius-m);cursor:pointer}.aui-drawer__close:hover{color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6))}.aui-drawer__close:active{color:rgb(var(--aui-color-p-0));background-color:rgb(var(--aui-color-p-5))}.aui-drawer__body-wrapper{width:100%;height:100%;display:flex;flex-flow:column nowrap;position:relative;z-index:1}.aui-drawer__body{padding:0 20px;overflow:hidden;overflow-y:auto;height:100%}.aui-drawer__footer{padding:20px}.aui-drawer.hasDivider .aui-drawer__header{padding-bottom:16px;border-bottom:1px solid rgb(var(--aui-color-n-8))}.aui-drawer.hasDivider .aui-drawer__body{padding:16px 20px}.aui-drawer.hasDivider .aui-drawer__footer{padding-top:16px;border-top:1px solid rgb(var(--aui-color-n-8))}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconComponent, selector: "aui-icon", inputs: ["icon", "light", "dark", "link", "margin", "size", "color", "background", "backgroundColor"] }, { kind: "directive", type: CdkScrollable$1, selector: "[cdk-scrollable], [cdkScrollable]" }, { kind: "ngmodule", type: PortalModule }, { kind: "directive", type: i1$4.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], animations: [
6885
+ trigger('showHide', [
6886
+ state('show', style({
6887
+ opacity: 1,
6888
+ transform: 'translateX(0)',
6889
+ })),
6890
+ state('hide, void', style({
6891
+ opacity: 0,
6892
+ transform: 'translateX(100%)',
6893
+ })),
6894
+ transition('hide => show, void => show', [
6895
+ animate(`${duration} ${TimingFunction.easeOut}`),
6896
+ ]),
6897
+ transition('show => hide, show => void', [
6898
+ animate(`${duration} ${TimingFunction.easeInOut}`),
6899
+ ]),
6900
+ ]),
6901
+ ], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
6902
+ }
6903
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: DrawerInternalComponent, decorators: [{
6904
+ type: Component,
6905
+ args: [{ encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
6906
+ NgIf,
6907
+ NgClass,
6908
+ NgStyle,
6909
+ NgTemplateOutlet,
6910
+ IconComponent,
6911
+ CdkScrollable$1,
6912
+ PortalModule,
6913
+ AsyncPipe,
6914
+ ], animations: [
6915
+ trigger('showHide', [
6916
+ state('show', style({
6917
+ opacity: 1,
6918
+ transform: 'translateX(0)',
6919
+ })),
6920
+ state('hide, void', style({
6921
+ opacity: 0,
6922
+ transform: 'translateX(100%)',
6923
+ })),
6924
+ transition('hide => show, void => show', [
6925
+ animate(`${duration} ${TimingFunction.easeOut}`),
6926
+ ]),
6927
+ transition('show => hide, show => void', [
6928
+ animate(`${duration} ${TimingFunction.easeInOut}`),
6929
+ ]),
6930
+ ]),
6931
+ ], template: "<div\n #mask\n class=\"aui-drawer-mask\"\n *ngIf=\"options.mask\"\n [class.isOpen]=\"maskVisible$ | async\"\n (click)=\"maskClick()\"\n></div>\n<div\n [style.marginTop]=\"options.offsetY\"\n [ngClass]=\"drawerClasses\"\n [@showHide]=\"showHide$$ | async\"\n (@showHide.start)=\"onAnimation($event)\"\n (@showHide.done)=\"onAnimation($event)\"\n [style.width]=\"width\"\n>\n <div class=\"aui-drawer__content\">\n <div class=\"aui-drawer__body-wrapper\">\n <div class=\"aui-drawer__header\">\n <div class=\"aui-drawer__title\">\n <ng-container\n *ngIf=\"isTemplateRef(options.title); else normal\"\n [ngTemplateOutlet]=\"options.title\"\n [ngTemplateOutletContext]=\"options.contentParams\"\n ></ng-container>\n <ng-template #normal>\n {{ options.title }}\n </ng-template>\n </div>\n <aui-icon\n *ngIf=\"options.showClose\"\n class=\"aui-drawer__close\"\n icon=\"xmark\"\n (click)=\"hide()\"\n ></aui-icon>\n </div>\n\n <div\n class=\"aui-drawer__body\"\n cdkScrollable\n >\n <ng-template cdkPortalOutlet></ng-template>\n <ng-container\n *ngIf=\"isTemplateRef(options.content)\"\n [ngTemplateOutlet]=\"options.content\"\n [ngTemplateOutletContext]=\"options.contentParams\"\n >\n </ng-container>\n </div>\n\n <div\n *ngIf=\"options.footer\"\n class=\"aui-drawer__footer\"\n >\n <ng-container\n *ngIf=\"isTemplateRef(options.footer); else normal\"\n [ngTemplateOutlet]=\"options.footer\"\n [ngTemplateOutletContext]=\"options.contentParams\"\n ></ng-container>\n <ng-template #normal>\n {{ options.footer }}\n </ng-template>\n </div>\n </div>\n </div>\n</div>\n", styles: ["@keyframes aui-fade-in{0%{opacity:0}to{opacity:1}}@keyframes aui-fade-out{0%{opacity:1}to{opacity:0}}@keyframes aui-zoom-in{0%{transform:scale(.2);opacity:0}to{transform:scale(1);opacity:1}}@keyframes aui-zoom-out{0%{transform:scale(1)}to{transform:scale(.2);opacity:0}}.aui-drawer-mask{position:absolute;top:0;left:0;width:100%;height:0}:root .aui-drawer-mask{background-color:rgba(var(--aui-color-origin-shadow),.4)}html[aui-theme-mode=light] .aui-drawer-mask{background-color:rgba(var(--aui-color-origin-shadow),.4)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-drawer-mask{background-color:rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-drawer-mask{background-color:rgba(var(--aui-color-origin-shadow),.75)}.aui-drawer-mask.isOpen{height:100%}.aui-drawer-mask-enter,.aui-drawer-mask-leave{animation-duration:.3s;animation-fill-mode:both;animation-play-state:paused}.aui-drawer-mask-enter.aui-drawer-mask-enter-active,.aui-drawer-mask-leave.aui-drawer-mask-leave-active{animation-play-state:running;pointer-events:none}.aui-drawer-mask-enter.aui-drawer-mask-enter-active{animation-name:aui-fade-in}.aui-drawer-mask-leave.aui-drawer-mask-leave-active{animation-name:aui-fade-out}.aui-drawer-mask-enter{opacity:0;animation-timing-function:linear}.aui-drawer-mask-leave{animation-timing-function:linear}.aui-drawer{position:fixed;top:0;bottom:0;right:0;z-index:9999;font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);font-weight:var(--aui-font-weight-normal);color:rgb(var(--aui-color-main-text))}.aui-drawer__content{background-color:rgb(var(--aui-color-n-10));position:absolute;height:100%;right:0;width:100%}:root .aui-drawer__content{box-shadow:-2px 0 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-drawer__content{box-shadow:-2px 0 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-drawer__content{box-shadow:-2px 0 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-drawer__content{box-shadow:-2px 0 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-drawer__header{padding:20px;display:flex;flex-shrink:0;justify-content:space-between}.aui-drawer__title{flex:1;font-size:var(--aui-font-size-xxl);line-height:var(--aui-line-height-xxl);font-weight:var(--aui-font-weight-bolder);color:rgb(var(--aui-color-main-text));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aui-drawer__close{z-index:10;flex-shrink:0;margin-top:2px;margin-left:var(--aui-spacing-xl);display:flex;justify-content:center;align-items:center;width:24px;height:24px;font-size:var(--aui-icon-size-l);color:rgb(var(--aui-color-secondary-text));border-radius:var(--aui-border-radius-m);cursor:pointer}.aui-drawer__close:hover{color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6))}.aui-drawer__close:active{color:rgb(var(--aui-color-p-0));background-color:rgb(var(--aui-color-p-5))}.aui-drawer__body-wrapper{width:100%;height:100%;display:flex;flex-flow:column nowrap;position:relative;z-index:1}.aui-drawer__body{padding:0 20px;overflow:hidden;overflow-y:auto;height:100%}.aui-drawer__footer{padding:20px}.aui-drawer.hasDivider .aui-drawer__header{padding-bottom:16px;border-bottom:1px solid rgb(var(--aui-color-n-8))}.aui-drawer.hasDivider .aui-drawer__body{padding:16px 20px}.aui-drawer.hasDivider .aui-drawer__footer{padding-top:16px;border-top:1px solid rgb(var(--aui-color-n-8))}\n"] }]
6932
+ }], ctorParameters: function () { return [{ type: i0.Injector }]; }, propDecorators: { bodyPortalOutlet: [{
6933
+ type: ViewChild,
6934
+ args: [CdkPortalOutlet, { static: false }]
6935
+ }], mask: [{
6936
+ type: ViewChild,
6937
+ args: ['mask']
6938
+ }] } });
6939
+
6772
6940
  class DrawerRef {
6941
+ drawerInstance;
6942
+ result;
6943
+ afterOpen$ = new Subject();
6944
+ afterClosed$ = new Subject();
6945
+ get afterOpen() {
6946
+ return this.afterOpen$.asObservable();
6947
+ }
6948
+ get afterClosed() {
6949
+ return this.afterClosed$.asObservable();
6950
+ }
6951
+ constructor(drawerInstance) {
6952
+ this.drawerInstance = drawerInstance;
6953
+ this.drawerInstance.animationStep$
6954
+ .pipe(filter(step => step === 'hideDone'))
6955
+ .subscribe(() => {
6956
+ this.afterClosed$.next(this.result);
6957
+ this.afterClosed$.complete();
6958
+ });
6959
+ }
6960
+ open() {
6961
+ this.drawerInstance.show();
6962
+ }
6963
+ close(result) {
6964
+ this.result = result;
6965
+ this.drawerInstance.hide();
6966
+ }
6773
6967
  }
6774
6968
 
6969
+ const DRAWER_OVERLAY_CLASS = 'aui-drawer-overlay';
6970
+ class DrawerService {
6971
+ overlay;
6972
+ overlayRef;
6973
+ options;
6974
+ drawerRef;
6975
+ invisible$ = new Subject();
6976
+ drawerInternalComponentRef;
6977
+ constructor(overlay) {
6978
+ this.overlay = overlay;
6979
+ }
6980
+ open(options) {
6981
+ this.updateOptions(options);
6982
+ this.createOverlay();
6983
+ this.createDrawer();
6984
+ this.drawerRef = new DrawerRef(this.drawerInternalComponentRef.instance);
6985
+ this.drawerRef.open();
6986
+ return this.drawerRef;
6987
+ }
6988
+ updateOptions(options) {
6989
+ this.options = options;
6990
+ }
6991
+ createOverlay() {
6992
+ if (!this.overlayRef) {
6993
+ this.overlayRef = this.overlay.create(this.getOverlayConfig());
6994
+ }
6995
+ this.overlayRef
6996
+ .outsidePointerEvents()
6997
+ .pipe(takeUntil(this.invisible$))
6998
+ .subscribe(event => {
6999
+ if (this.overlayRef &&
7000
+ this.options.hideOnClickOutside &&
7001
+ event.target instanceof Node &&
7002
+ !this.overlayRef.hostElement?.parentNode?.contains(event.target)) {
7003
+ event.stopPropagation();
7004
+ event.preventDefault();
7005
+ this.drawerRef.close();
7006
+ }
7007
+ });
7008
+ this.overlayRef.getConfig().scrollStrategy.enable();
7009
+ if (this.options.mask) {
7010
+ fromEvent(window, 'resize')
7011
+ .pipe(debounceTime(100), filter(() => document.documentElement.scrollHeight > window.innerHeight), takeUntil(this.invisible$))
7012
+ .subscribe(() => {
7013
+ this.overlayRef.getConfig().scrollStrategy.enable();
7014
+ });
7015
+ }
7016
+ }
7017
+ createDrawer() {
7018
+ if (this.drawerInternalComponentRef) {
7019
+ return;
7020
+ }
7021
+ const drawerInternalComponentRef = this.overlayRef.attach(new ComponentPortal((DrawerInternalComponent)));
7022
+ drawerInternalComponentRef.instance.options = this.options;
7023
+ drawerInternalComponentRef.instance.animationStep$.subscribe(step => {
7024
+ if (step === 'hideDone') {
7025
+ this.invisible$.next();
7026
+ this.overlayRef?.getConfig().scrollStrategy.disable();
7027
+ }
7028
+ });
7029
+ this.drawerInternalComponentRef = drawerInternalComponentRef;
7030
+ }
7031
+ getOverlayConfig() {
7032
+ return new OverlayConfig({
7033
+ panelClass: DRAWER_OVERLAY_CLASS,
7034
+ positionStrategy: this.overlay.position().global(),
7035
+ scrollStrategy: this.options.mask
7036
+ ? this.overlay.scrollStrategies.block()
7037
+ : this.overlay.scrollStrategies.noop(),
7038
+ });
7039
+ }
7040
+ ngOnDestroy() {
7041
+ this.invisible$.next();
7042
+ if (this.overlayRef) {
7043
+ this.overlayRef.getConfig().scrollStrategy.disable();
7044
+ this.overlayRef.dispose();
7045
+ this.overlayRef = null;
7046
+ }
7047
+ }
7048
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: DrawerService, deps: [{ token: i1$2.Overlay }], target: i0.ɵɵFactoryTarget.Injectable });
7049
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: DrawerService });
7050
+ }
7051
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: DrawerService, decorators: [{
7052
+ type: Injectable
7053
+ }], ctorParameters: function () { return [{ type: i1$2.Overlay }]; } });
7054
+
6775
7055
  class DrawerHeaderDirective {
6776
7056
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: DrawerHeaderDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
6777
7057
  static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.3", type: DrawerHeaderDirective, isStandalone: true, selector: "[auiDrawerHeader]", ngImport: i0 });
@@ -6806,18 +7086,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImpor
6806
7086
  }]
6807
7087
  }] });
6808
7088
 
6809
- const DATA = new InjectionToken('drawer-data');
6810
- const DRAWER_OVERLAY_CLASS = 'aui-drawer-overlay';
6811
- const SIZE_MAPPER = {
6812
- [DrawerSize.Small]: 400,
6813
- [DrawerSize.Medium]: 600,
6814
- [DrawerSize.Big]: 800,
6815
- };
6816
- class DrawerComponent extends DrawerRef {
6817
- viewContainerRef;
6818
- overlay;
6819
- injector;
6820
- cdr;
7089
+ class DrawerComponent {
7090
+ drawerService;
6821
7091
  title;
6822
7092
  footer;
6823
7093
  size = DrawerSize.Medium;
@@ -6830,188 +7100,49 @@ class DrawerComponent extends DrawerRef {
6830
7100
  mask;
6831
7101
  maskClosable;
6832
7102
  divider = true;
6833
- _value = SIZE_MAPPER[DrawerSize.Medium];
6834
- set width(value) {
6835
- this._value = value;
6836
- }
6837
- get width() {
6838
- return this._value;
6839
- }
6840
- get drawerClasses() {
6841
- return {
6842
- 'aui-drawer': true,
6843
- hasDivider: this.divider,
6844
- ...(this.drawerClass ? { [this.drawerClass]: true } : null),
6845
- };
6846
- }
6847
- afterClosed$ = new Subject();
6848
- get afterClosed() {
6849
- return this.afterClosed$.asObservable();
6850
- }
6851
- afterOpen$ = new Subject();
6852
- get afterOpen() {
6853
- return this.afterOpen$.asObservable();
6854
- }
6855
- drawerViewInit = new EventEmitter();
7103
+ width;
7104
+ contentParams;
6856
7105
  close = new EventEmitter();
6857
- drawerTemplate;
6858
- bodyPortalOutlet;
6859
7106
  titleTemplate;
6860
- contentTemplate;
7107
+ contentTemplateOrComponent;
6861
7108
  footerTemplate;
6862
- onDestroy$ = new Subject();
6863
- isTemplateRef = isTemplateRef;
6864
- componentInstance = null;
6865
- contentParams;
6866
- overlayRef;
6867
- portal;
6868
- templateContext = {};
6869
- get transform() {
6870
- return `translateX(${this.visible ? 0 : '100%'})`;
6871
- }
6872
- constructor(viewContainerRef, overlay, injector, cdr) {
6873
- super();
6874
- this.viewContainerRef = viewContainerRef;
6875
- this.overlay = overlay;
6876
- this.injector = injector;
6877
- this.cdr = cdr;
6878
- }
6879
- ngOnInit() {
6880
- this.attachOverlay();
6881
- this.updateBodyOverflow();
6882
- this.templateContext = { $implicit: this.contentParams };
6883
- if (this.mask) {
6884
- fromEvent(window, 'resize')
6885
- .pipe(debounceTime(100), filter(() => document.documentElement.scrollHeight > window.innerHeight), takeUntil(this.onDestroy$))
6886
- .subscribe(() => {
6887
- this.overlayRef.getConfig().scrollStrategy.enable();
6888
- });
6889
- }
6890
- this.cdr.detectChanges();
7109
+ drawerRef;
7110
+ constructor(drawerService) {
7111
+ this.drawerService = drawerService;
6891
7112
  }
6892
7113
  ngOnChanges(changes) {
6893
7114
  const { visible } = changes;
6894
7115
  if (visible) {
6895
7116
  const value = visible.currentValue;
6896
7117
  if (value) {
6897
- this.open();
7118
+ this.drawerRef = this.drawerService.open(this);
7119
+ this.drawerRef.afterClosed.pipe(first()).subscribe(res => {
7120
+ this.close.emit(res);
7121
+ });
6898
7122
  }
6899
7123
  else if (!visible.firstChange) {
6900
- this.dispose();
7124
+ this.drawerRef.close();
6901
7125
  }
6902
7126
  }
6903
7127
  }
6904
7128
  ngAfterViewInit() {
6905
- this.attachBodyContent();
6906
- setTimeout(() => {
6907
- this.drawerViewInit.emit();
6908
- }, 0);
6909
- }
6910
- attachOverlay() {
6911
- if (!this.overlayRef) {
6912
- this.portal = new TemplatePortal(this.drawerTemplate, this.viewContainerRef);
6913
- this.overlayRef = this.overlay.create(this.getOverlayConfig());
6914
- }
6915
- if (this.overlayRef) {
6916
- this.overlayRef.attach(this.portal);
6917
- this.overlayRef
6918
- .outsidePointerEvents()
6919
- .pipe(takeUntil(this.onDestroy$))
6920
- .subscribe(event => {
6921
- if (this.visible &&
6922
- this.hideOnClickOutside &&
6923
- event.target instanceof Node &&
6924
- !this.overlayRef.hostElement?.parentNode?.contains(event.target)) {
6925
- event.stopPropagation();
6926
- event.preventDefault();
6927
- this.dispose();
6928
- }
6929
- });
6930
- }
6931
- }
6932
- getOverlayConfig() {
6933
- return new OverlayConfig({
6934
- panelClass: DRAWER_OVERLAY_CLASS,
6935
- positionStrategy: this.overlay.position().global(),
6936
- scrollStrategy: this.mask
6937
- ? this.overlay.scrollStrategies.block()
6938
- : this.overlay.scrollStrategies.noop(),
6939
- });
6940
- }
6941
- attachBodyContent() {
6942
- this.bodyPortalOutlet?.dispose();
6943
- const content = this.content || this.contentTemplate;
6944
- if (content instanceof Type) {
6945
- const componentPortal = new ComponentPortal(content, null, Injector.create({
6946
- providers: [
6947
- {
6948
- provide: DATA,
6949
- useValue: this.contentParams,
6950
- },
6951
- ],
6952
- parent: this.injector,
6953
- }));
6954
- const componentRef = this.bodyPortalOutlet?.attachComponentPortal(componentPortal);
6955
- this.componentInstance = componentRef.instance;
6956
- Object.assign(componentRef.instance, this.contentParams);
6957
- componentRef.changeDetectorRef.detectChanges();
6958
- }
6959
- }
6960
- updateBodyOverflow() {
6961
- if (this.overlayRef) {
6962
- if (this.visible) {
6963
- this.overlayRef.getConfig().scrollStrategy.enable();
6964
- }
6965
- else {
6966
- this.overlayRef.getConfig().scrollStrategy.disable();
6967
- }
6968
- }
6969
- }
6970
- open() {
6971
- this.visible = true;
6972
- this.afterOpen$.next();
6973
- this.afterOpen$.complete();
6974
- this.updateBodyOverflow();
6975
- this.cdr.markForCheck();
6976
- }
6977
- dispose(result = null) {
6978
- this.visible = false;
6979
- this.close.emit();
6980
- this.afterClosed$.next(result);
6981
- this.afterClosed$.complete();
6982
- this.updateBodyOverflow();
6983
- this.cdr.markForCheck();
7129
+ this.title = this.title || this.titleTemplate;
7130
+ this.content = this.content || this.contentTemplateOrComponent;
7131
+ this.footer = this.footer || this.footerTemplate;
6984
7132
  }
6985
- disposeOverlay() {
6986
- if (this.overlayRef) {
6987
- this.overlayRef.dispose();
6988
- }
6989
- this.overlayRef = null;
6990
- }
6991
- maskClick() {
6992
- if (this.maskClosable && this.mask) {
6993
- this.dispose();
6994
- }
6995
- }
6996
- ngOnDestroy() {
6997
- this.onDestroy$.next();
6998
- this.disposeOverlay();
6999
- }
7000
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: DrawerComponent, deps: [{ token: i0.ViewContainerRef }, { token: i1$2.Overlay }, { token: i0.Injector }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
7001
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.3", type: DrawerComponent, isStandalone: true, selector: "aui-drawer", inputs: { title: "title", footer: "footer", size: "size", offsetY: "offsetY", visible: "visible", content: "content", hideOnClickOutside: "hideOnClickOutside", showClose: "showClose", drawerClass: "drawerClass", mask: "mask", maskClosable: "maskClosable", divider: "divider", width: "width" }, outputs: { drawerViewInit: "drawerViewInit", close: "close" }, queries: [{ propertyName: "titleTemplate", first: true, predicate: DrawerHeaderDirective, descendants: true, read: TemplateRef }, { propertyName: "contentTemplate", first: true, predicate: DrawerContentDirective, descendants: true, read: TemplateRef }, { propertyName: "footerTemplate", first: true, predicate: DrawerFooterDirective, descendants: true, read: TemplateRef }], viewQueries: [{ propertyName: "drawerTemplate", first: true, predicate: ["drawerTemplate"], descendants: true, static: true }, { propertyName: "bodyPortalOutlet", first: true, predicate: CdkPortalOutlet, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-template #drawerTemplate>\n <div\n *ngIf=\"mask\"\n class=\"aui-drawer-mask\"\n [class.isOpen]=\"visible\"\n (click)=\"maskClick()\"\n ></div>\n <div\n [style.marginTop]=\"offsetY\"\n [ngClass]=\"drawerClasses\"\n [class.isOpen]=\"visible\"\n [ngStyle]=\"{\n transform: transform,\n width: width + 'px'\n }\"\n >\n <div class=\"aui-drawer__content\">\n <div class=\"aui-drawer__body-wrapper\">\n <div class=\"aui-drawer__header\">\n <div class=\"aui-drawer__title\">\n <ng-container\n *ngIf=\"!isTemplateRef(title || titleTemplate); else elseTemplate\"\n >\n {{ title }}\n </ng-container>\n <ng-template #elseTemplate>\n <ng-container\n *ngIf=\"title || titleTemplate\"\n [ngTemplateOutlet]=\"$any(title || titleTemplate)\"\n [ngTemplateOutletContext]=\"templateContext\"\n ></ng-container>\n </ng-template>\n </div>\n <aui-icon\n *ngIf=\"showClose\"\n class=\"aui-drawer__close\"\n icon=\"xmark\"\n (click)=\"dispose()\"\n ></aui-icon>\n </div>\n\n <div\n class=\"aui-drawer__body\"\n cdkScrollable\n >\n <ng-template cdkPortalOutlet></ng-template>\n <ng-container *ngIf=\"isTemplateRef(content || contentTemplate)\">\n <ng-container\n *ngTemplateOutlet=\"\n $any(content || contentTemplate);\n context: templateContext\n \"\n >\n </ng-container>\n </ng-container>\n </div>\n\n <div\n *ngIf=\"footer || footerTemplate\"\n class=\"aui-drawer__footer\"\n >\n <ng-container\n *ngIf=\"!isTemplateRef(footer || footerTemplate); else elseTemplate\"\n >\n {{ footer }}\n </ng-container>\n <ng-template #elseTemplate>\n <ng-container\n *ngIf=\"footer || footerTemplate\"\n [ngTemplateOutlet]=\"$any(footer || footerTemplate)\"\n [ngTemplateOutletContext]=\"templateContext\"\n ></ng-container>\n </ng-template>\n </div>\n </div>\n </div>\n </div>\n</ng-template>\n", styles: [".aui-drawer-mask{position:absolute;top:0;left:0;width:100%;height:0}:root .aui-drawer-mask{background-color:rgba(var(--aui-color-origin-shadow),.4)}html[aui-theme-mode=light] .aui-drawer-mask{background-color:rgba(var(--aui-color-origin-shadow),.4)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-drawer-mask{background-color:rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-drawer-mask{background-color:rgba(var(--aui-color-origin-shadow),.75)}.aui-drawer-mask.isOpen{height:100%}.aui-drawer{position:fixed;top:0;bottom:0;right:0;z-index:9999;transition:transform .3s,opacity .3s,box-shaow .3s;font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);font-weight:var(--aui-font-weight-normal);color:rgb(var(--aui-color-main-text))}:root .aui-drawer.isOpen .aui-drawer__content{box-shadow:-2px 0 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-drawer.isOpen .aui-drawer__content{box-shadow:-2px 0 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-drawer.isOpen .aui-drawer__content{box-shadow:-2px 0 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-drawer.isOpen .aui-drawer__content{box-shadow:-2px 0 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-drawer__content{background-color:rgb(var(--aui-color-n-10));position:absolute;height:100%;right:0;width:100%}.aui-drawer__header{padding:20px;display:flex;flex-shrink:0;justify-content:space-between}.aui-drawer__title{flex:1;font-size:var(--aui-font-size-xxl);line-height:var(--aui-line-height-xxl);font-weight:var(--aui-font-weight-bolder);color:rgb(var(--aui-color-main-text));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aui-drawer__close{z-index:10;flex-shrink:0;margin-top:2px;margin-left:var(--aui-spacing-xl);display:flex;justify-content:center;align-items:center;width:24px;height:24px;font-size:var(--aui-icon-size-l);color:rgb(var(--aui-color-secondary-text));border-radius:var(--aui-border-radius-m);cursor:pointer}.aui-drawer__close:hover{color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6))}.aui-drawer__close:active{color:rgb(var(--aui-color-p-0));background-color:rgb(var(--aui-color-p-5))}.aui-drawer__body-wrapper{width:100%;height:100%;display:flex;flex-flow:column nowrap;position:relative;z-index:1}.aui-drawer__body{padding:0 20px;overflow:hidden;overflow-y:auto;height:100%}.aui-drawer__footer{padding:20px}.aui-drawer.hasDivider .aui-drawer__header{padding-bottom:16px;border-bottom:1px solid rgb(var(--aui-color-n-8))}.aui-drawer.hasDivider .aui-drawer__body{padding:16px 20px}.aui-drawer.hasDivider .aui-drawer__footer{padding-top:16px;border-top:1px solid rgb(var(--aui-color-n-8))}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: IconComponent, selector: "aui-icon", inputs: ["icon", "light", "dark", "link", "margin", "size", "color", "background", "backgroundColor"] }, { kind: "directive", type: CdkScrollable$1, selector: "[cdk-scrollable], [cdkScrollable]" }, { kind: "ngmodule", type: PortalModule }, { kind: "directive", type: i1$4.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
7133
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: DrawerComponent, deps: [{ token: DrawerService }], target: i0.ɵɵFactoryTarget.Component });
7134
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.3", type: DrawerComponent, isStandalone: true, selector: "aui-drawer", inputs: { title: "title", footer: "footer", size: "size", offsetY: "offsetY", visible: "visible", content: "content", hideOnClickOutside: "hideOnClickOutside", showClose: "showClose", drawerClass: "drawerClass", mask: "mask", maskClosable: "maskClosable", divider: "divider", width: "width", contentParams: "contentParams" }, outputs: { close: "close" }, providers: [DrawerService], queries: [{ propertyName: "titleTemplate", first: true, predicate: DrawerHeaderDirective, descendants: true, read: TemplateRef }, { propertyName: "contentTemplateOrComponent", first: true, predicate: DrawerContentDirective, descendants: true, read: TemplateRef }, { propertyName: "footerTemplate", first: true, predicate: DrawerFooterDirective, descendants: true, read: TemplateRef }], usesOnChanges: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
7002
7135
  }
7003
7136
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: DrawerComponent, decorators: [{
7004
7137
  type: Component,
7005
- args: [{ selector: 'aui-drawer', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
7006
- NgIf,
7007
- NgClass,
7008
- NgStyle,
7009
- NgTemplateOutlet,
7010
- IconComponent,
7011
- CdkScrollable$1,
7012
- PortalModule,
7013
- ], template: "<ng-template #drawerTemplate>\n <div\n *ngIf=\"mask\"\n class=\"aui-drawer-mask\"\n [class.isOpen]=\"visible\"\n (click)=\"maskClick()\"\n ></div>\n <div\n [style.marginTop]=\"offsetY\"\n [ngClass]=\"drawerClasses\"\n [class.isOpen]=\"visible\"\n [ngStyle]=\"{\n transform: transform,\n width: width + 'px'\n }\"\n >\n <div class=\"aui-drawer__content\">\n <div class=\"aui-drawer__body-wrapper\">\n <div class=\"aui-drawer__header\">\n <div class=\"aui-drawer__title\">\n <ng-container\n *ngIf=\"!isTemplateRef(title || titleTemplate); else elseTemplate\"\n >\n {{ title }}\n </ng-container>\n <ng-template #elseTemplate>\n <ng-container\n *ngIf=\"title || titleTemplate\"\n [ngTemplateOutlet]=\"$any(title || titleTemplate)\"\n [ngTemplateOutletContext]=\"templateContext\"\n ></ng-container>\n </ng-template>\n </div>\n <aui-icon\n *ngIf=\"showClose\"\n class=\"aui-drawer__close\"\n icon=\"xmark\"\n (click)=\"dispose()\"\n ></aui-icon>\n </div>\n\n <div\n class=\"aui-drawer__body\"\n cdkScrollable\n >\n <ng-template cdkPortalOutlet></ng-template>\n <ng-container *ngIf=\"isTemplateRef(content || contentTemplate)\">\n <ng-container\n *ngTemplateOutlet=\"\n $any(content || contentTemplate);\n context: templateContext\n \"\n >\n </ng-container>\n </ng-container>\n </div>\n\n <div\n *ngIf=\"footer || footerTemplate\"\n class=\"aui-drawer__footer\"\n >\n <ng-container\n *ngIf=\"!isTemplateRef(footer || footerTemplate); else elseTemplate\"\n >\n {{ footer }}\n </ng-container>\n <ng-template #elseTemplate>\n <ng-container\n *ngIf=\"footer || footerTemplate\"\n [ngTemplateOutlet]=\"$any(footer || footerTemplate)\"\n [ngTemplateOutletContext]=\"templateContext\"\n ></ng-container>\n </ng-template>\n </div>\n </div>\n </div>\n </div>\n</ng-template>\n", styles: [".aui-drawer-mask{position:absolute;top:0;left:0;width:100%;height:0}:root .aui-drawer-mask{background-color:rgba(var(--aui-color-origin-shadow),.4)}html[aui-theme-mode=light] .aui-drawer-mask{background-color:rgba(var(--aui-color-origin-shadow),.4)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-drawer-mask{background-color:rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-drawer-mask{background-color:rgba(var(--aui-color-origin-shadow),.75)}.aui-drawer-mask.isOpen{height:100%}.aui-drawer{position:fixed;top:0;bottom:0;right:0;z-index:9999;transition:transform .3s,opacity .3s,box-shaow .3s;font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);font-weight:var(--aui-font-weight-normal);color:rgb(var(--aui-color-main-text))}:root .aui-drawer.isOpen .aui-drawer__content{box-shadow:-2px 0 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-drawer.isOpen .aui-drawer__content{box-shadow:-2px 0 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-drawer.isOpen .aui-drawer__content{box-shadow:-2px 0 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-drawer.isOpen .aui-drawer__content{box-shadow:-2px 0 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-drawer__content{background-color:rgb(var(--aui-color-n-10));position:absolute;height:100%;right:0;width:100%}.aui-drawer__header{padding:20px;display:flex;flex-shrink:0;justify-content:space-between}.aui-drawer__title{flex:1;font-size:var(--aui-font-size-xxl);line-height:var(--aui-line-height-xxl);font-weight:var(--aui-font-weight-bolder);color:rgb(var(--aui-color-main-text));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aui-drawer__close{z-index:10;flex-shrink:0;margin-top:2px;margin-left:var(--aui-spacing-xl);display:flex;justify-content:center;align-items:center;width:24px;height:24px;font-size:var(--aui-icon-size-l);color:rgb(var(--aui-color-secondary-text));border-radius:var(--aui-border-radius-m);cursor:pointer}.aui-drawer__close:hover{color:rgb(var(--aui-color-primary));background-color:rgb(var(--aui-color-p-6))}.aui-drawer__close:active{color:rgb(var(--aui-color-p-0));background-color:rgb(var(--aui-color-p-5))}.aui-drawer__body-wrapper{width:100%;height:100%;display:flex;flex-flow:column nowrap;position:relative;z-index:1}.aui-drawer__body{padding:0 20px;overflow:hidden;overflow-y:auto;height:100%}.aui-drawer__footer{padding:20px}.aui-drawer.hasDivider .aui-drawer__header{padding-bottom:16px;border-bottom:1px solid rgb(var(--aui-color-n-8))}.aui-drawer.hasDivider .aui-drawer__body{padding:16px 20px}.aui-drawer.hasDivider .aui-drawer__footer{padding-top:16px;border-top:1px solid rgb(var(--aui-color-n-8))}\n"] }]
7014
- }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }, { type: i1$2.Overlay }, { type: i0.Injector }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { title: [{
7138
+ args: [{
7139
+ selector: 'aui-drawer',
7140
+ template: '<ng-content></ng-content>',
7141
+ changeDetection: ChangeDetectionStrategy.OnPush,
7142
+ standalone: true,
7143
+ providers: [DrawerService],
7144
+ }]
7145
+ }], ctorParameters: function () { return [{ type: DrawerService }]; }, propDecorators: { title: [{
7015
7146
  type: Input
7016
7147
  }], footer: [{
7017
7148
  type: Input
@@ -7037,20 +7168,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImpor
7037
7168
  type: Input
7038
7169
  }], width: [{
7039
7170
  type: Input
7040
- }], drawerViewInit: [{
7041
- type: Output
7171
+ }], contentParams: [{
7172
+ type: Input
7042
7173
  }], close: [{
7043
7174
  type: Output
7044
- }], drawerTemplate: [{
7045
- type: ViewChild,
7046
- args: ['drawerTemplate', { static: true }]
7047
- }], bodyPortalOutlet: [{
7048
- type: ViewChild,
7049
- args: [CdkPortalOutlet, { static: false }]
7050
7175
  }], titleTemplate: [{
7051
7176
  type: ContentChild,
7052
7177
  args: [DrawerHeaderDirective, { read: TemplateRef }]
7053
- }], contentTemplate: [{
7178
+ }], contentTemplateOrComponent: [{
7054
7179
  type: ContentChild,
7055
7180
  args: [DrawerContentDirective, { read: TemplateRef }]
7056
7181
  }], footerTemplate: [{
@@ -7058,47 +7183,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImpor
7058
7183
  args: [DrawerFooterDirective, { read: TemplateRef }]
7059
7184
  }] } });
7060
7185
 
7061
- class DrawerService {
7062
- overlay;
7063
- drawerRef;
7064
- overlayRef;
7065
- unsubscribe$ = new Subject();
7066
- constructor(overlay) {
7067
- this.overlay = overlay;
7068
- }
7069
- open(options) {
7070
- this.drawerRef?.instance?.dispose();
7071
- this.createDrawer();
7072
- this.updateOptions(options);
7073
- return this.drawerRef?.instance;
7074
- }
7075
- updateOptions(options) {
7076
- Object.assign(this.drawerRef.instance, options);
7077
- }
7078
- createDrawer() {
7079
- this.overlayRef = this.overlay.create();
7080
- this.drawerRef = this.overlayRef.attach(new ComponentPortal(DrawerComponent));
7081
- this.drawerRef.instance.drawerViewInit
7082
- .pipe(takeUntil(this.unsubscribe$))
7083
- .subscribe(() => {
7084
- this.drawerRef.instance.open();
7085
- });
7086
- this.drawerRef.instance.afterClosed
7087
- .pipe(takeUntil(this.unsubscribe$))
7088
- .subscribe(() => {
7089
- this.overlayRef.dispose();
7090
- this.drawerRef = null;
7091
- this.unsubscribe$.next();
7092
- this.unsubscribe$.complete();
7093
- });
7094
- }
7095
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: DrawerService, deps: [{ token: i1$2.Overlay }], target: i0.ɵɵFactoryTarget.Injectable });
7096
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: DrawerService });
7097
- }
7098
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: DrawerService, decorators: [{
7099
- type: Injectable
7100
- }], ctorParameters: function () { return [{ type: i1$2.Overlay }]; } });
7101
-
7102
7186
  const COMMON = [
7103
7187
  DrawerComponent,
7104
7188
  DrawerHeaderDirective,
@@ -7114,7 +7198,7 @@ class DrawerModule {
7114
7198
  DrawerHeaderDirective,
7115
7199
  DrawerContentDirective,
7116
7200
  DrawerFooterDirective] });
7117
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: DrawerModule, providers: [DrawerService], imports: [CommonModule, IconModule, OverlayModule, PortalModule, DrawerComponent] });
7201
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: DrawerModule, providers: [DrawerService], imports: [CommonModule, IconModule, OverlayModule, PortalModule] });
7118
7202
  }
7119
7203
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: DrawerModule, decorators: [{
7120
7204
  type: NgModule,
@@ -12354,5 +12438,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImpor
12354
12438
  }]
12355
12439
  }] });
12356
12440
 
12357
- export { ACCORDION_MODULE, ANCHOR_MODULE, AUTOCOMPLETE_MODULE, AccordionComponent, AccordionItemComponent, AccordionItemContentDirective, AccordionItemHeaderDirective, AccordionModule, AnchorComponent, AnchorDirective, AnchorDirectiveChild, AnchorLabelDirective, AnchorModule, AnchorTreeComponent, AuiSelectValidators, AutoCompleteDirective, AutocompleteComponent, AutocompleteModule, AutocompletePlaceholderComponent, AutosizeDirective, BREADCRUMB_MODULE, BackTopComponent, BackTopModule, BaseDialogConfig, BaseTooltip, Bem, BreadcrumbComponent, BreadcrumbItemComponent, BreadcrumbModule, ButtonComponent, ButtonGroupComponent, ButtonModule, ButtonType, CARD_MODULE, CHECKBOX_MODULE, CONTROL_ITEM_HEIGHT, CalendarFooterComponent, CalendarHeaderComponent, CardComponent, CardFooterDirective, CardHeaderDirective, CardModule, CheckTagComponent, CheckboxComponent, CheckboxGroupComponent, CheckboxModule, ColorPickerComponent, ColorPickerModule, CommonFormControl, ComponentSize, ConfirmDialogConfig, ConfirmType, CssVarPipe, CustomAutoCompleteDirective, DATA, DATE, DATE_NAV_RANGES, DATE_TYPES, DAY, DAY_PANEL_COLUMN_COUNT, DAY_PANEL_ROW_COUNT, DIALOG_DATA, DISPLAY_DELAY, DateNavRange, DatePickerComponent, DatePickerModule, DatePickerPanelComponent, DatePickerTriggerComponent, DatePickerType, DateRangePickerPanelComponent, DialogCloseDirective, DialogComponent, DialogConfig, DialogContentComponent, DialogFooterComponent, DialogHeaderComponent, DialogModule, DialogRef, DialogService, DialogSize, DrawerComponent, DrawerContentDirective, DrawerFooterDirective, DrawerHeaderDirective, DrawerModule, DrawerRef, DrawerService, DrawerSize, DropdownActiveDirective, DropdownButtonComponent, DropdownDirective, DropdownModule, FORM_MODULE, FixedSizeTableVirtualScrollDirective, FixedSizeTableVirtualScrollStrategy, FixedSizeVirtualScrollDirective, FormDirective, FormItemAddonDirective, FormItemComponent, FormItemControlDirective, FormItemErrorDirective, FormItemHintDirective, FormItemLabelDirective, FormItemWidth, FormModule, HIDDEN_DELAY, HOUR, HOUR_ITEMS, I18NInterfaceToken, I18nModule, I18nPipe, I18nService, INLINE_ALERT_MODULE, INPUT_ERROR_KEY, INPUT_GROUP_MODULE, IconComponent, IconModule, IconRegisterService, IncludesDirective, InlineAlertComponent, InlineAlertModule, InlineAlertTitleDirective, InlineAlertType, InputAddonAfterDirective, InputAddonBeforeDirective, InputComponent, InputGroupComponent, InputModule, InputPrefixDirective, InputSuffixDirective, LabelPosition, MESSAGE_CONFIG, MESSAGE_DEFAULT_CONFIG, MINUTE, MINUTE_ITEMS, MONTH, MONTH_PANEL_COLUMN_COUNT, MONTH_PANEL_ROW_COUNT, MenuComponent, MenuGroupComponent, MenuGroupTitleDirective, MenuItemComponent, MenuItemType, MessageConfig, MessageModule, MessageService, MessageType, MultiSelectComponent, NOTIFICATION_CONFIG, NOTIFICATION_DEFAULT_CONFIG, NUMBER_INPUT_MODULE, NotificationComponent, NotificationModule, NotificationService, NumberInputComponent, OptionComponent, OptionContentDirective, OptionGroupComponent, OptionGroupTitleDirective, OptionPlaceholderComponent, PaginatorComponent, PaginatorIntl, PaginatorModule, PickerPanelComponent, RadioButtonComponent, RadioComponent, RadioGroupComponent, RadioModule, RadioSize, RangePickerComponent, RgbColorPipe, RgbaColorPipe, SECOND, SECOND_ITEMS, SELECT_MODULE, SORT_MODULE, ScrollingModule, SearchComponent, SectionComponent, SectionTitleDirective, SelectAllStatus, SelectComponent, SelectModule, Side, SortDirective, SortHeaderComponent, SortModule, StatusBarComponent, StatusBarModule, StatusBarSize, StatusType, StepState, StepsComponent, StepsModule, SubmenuComponent, SuggestionComponent, SuggestionGroupComponent, SuggestionGroupTitleDirective, SwitchComponent, SwitchModule, TABLE_MODULE, TABLE_OF_CONTENTS_MODULE, TABS_MODULE, TabBodyComponent, TabBodyPortalDirective, TabChangeEvent, TabComponent, TabContentDirective, TabContextService, TabGroupComponent, TabHeaderActiveIndicatorComponent, TabHeaderAddonDirective, TabHeaderComponent, TabLabelDirective, TabLabelWrapperDirective, TabSize, TabTitleDirective, TabType, TableCellDefDirective, TableCellDirective, TableColumnDefDirective, TableComponent, TableExpandButtonCellComponent, TableExpandPanelCellComponent, TableHeaderCellDefDirective, TableHeaderCellDirective, TableHeaderRowComponent, TableHeaderRowDefDirective, TableModule, TableOfContentsModule, TablePlaceholderDefDirective, TablePlaceholderOutletDirective, TableRowComponent, TableRowDefDirective, TableScrollWrapperDirective, TableScrollableDirective, TabsModule, TagComponent, TagModule, TagType, TagsInputComponent, ThemeModule, ThemePickerPipe, ThemeService, TimePickerComponent, TimePickerControlType, TimePickerModule, TimePickerPanelComponent, TocContainerDirective, TocContentDirective, TocLinkDirective, TooltipActiveDirective, TooltipComponent, TooltipCopyDirective, TooltipCopyIntl, TooltipDirective, TooltipModule, TooltipTrigger, TooltipType, TreeNodeComponent, TreeNodePlaceholderComponent, TreeSelectComponent, TreeSelectModule, VirtualForOfDirective, VirtualScrollViewportComponent, YEAR, YEAR_PANEL_COLUMN_COUNT, YEAR_PANEL_ROW_COUNT, _tableVirtualScrollDirectiveStrategyFactory, buildBem, coerceAttrBoolean, coerceString, cssVar, en, getAnchorTreeItems, getElementOffset, getSortDuplicateSortableIdError, getSortHeaderMissingIdError, getSortHeaderNotContainedWithinSortError, getSortInvalidDirectionError, handlePixel, isNumberValue, isString, isTemplateRef, isTimePickerModel, last, observeMutationOn, observeResizeOn, publishRef, rgbColor, rgbaColor, scrollIntoView, sleep, watchContentExist, zh };
12441
+ export { ACCORDION_MODULE, ANCHOR_MODULE, AUTOCOMPLETE_MODULE, AccordionComponent, AccordionItemComponent, AccordionItemContentDirective, AccordionItemHeaderDirective, AccordionModule, AnchorComponent, AnchorDirective, AnchorDirectiveChild, AnchorLabelDirective, AnchorModule, AnchorTreeComponent, AuiSelectValidators, AutoCompleteDirective, AutocompleteComponent, AutocompleteModule, AutocompletePlaceholderComponent, AutosizeDirective, BREADCRUMB_MODULE, BackTopComponent, BackTopModule, BaseDialogConfig, BaseTooltip, Bem, BreadcrumbComponent, BreadcrumbItemComponent, BreadcrumbModule, ButtonComponent, ButtonGroupComponent, ButtonModule, ButtonType, CARD_MODULE, CHECKBOX_MODULE, CONTROL_ITEM_HEIGHT, CalendarFooterComponent, CalendarHeaderComponent, CardComponent, CardFooterDirective, CardHeaderDirective, CardModule, CheckTagComponent, CheckboxComponent, CheckboxGroupComponent, CheckboxModule, ColorPickerComponent, ColorPickerModule, CommonFormControl, ComponentSize, ConfirmDialogConfig, ConfirmType, CssVarPipe, CustomAutoCompleteDirective, DATE, DATE_NAV_RANGES, DATE_TYPES, DAY, DAY_PANEL_COLUMN_COUNT, DAY_PANEL_ROW_COUNT, DIALOG_DATA, DISPLAY_DELAY, DateNavRange, DatePickerComponent, DatePickerModule, DatePickerPanelComponent, DatePickerTriggerComponent, DatePickerType, DateRangePickerPanelComponent, DialogCloseDirective, DialogComponent, DialogConfig, DialogContentComponent, DialogFooterComponent, DialogHeaderComponent, DialogModule, DialogRef, DialogService, DialogSize, DrawerComponent, DrawerContentDirective, DrawerFooterDirective, DrawerHeaderDirective, DrawerModule, DrawerRef, DrawerService, DrawerSize, DropdownActiveDirective, DropdownButtonComponent, DropdownDirective, DropdownModule, FORM_MODULE, FixedSizeTableVirtualScrollDirective, FixedSizeTableVirtualScrollStrategy, FixedSizeVirtualScrollDirective, FormDirective, FormItemAddonDirective, FormItemComponent, FormItemControlDirective, FormItemErrorDirective, FormItemHintDirective, FormItemLabelDirective, FormItemWidth, FormModule, HIDDEN_DELAY, HOUR, HOUR_ITEMS, I18NInterfaceToken, I18nModule, I18nPipe, I18nService, INLINE_ALERT_MODULE, INPUT_ERROR_KEY, INPUT_GROUP_MODULE, IconComponent, IconModule, IconRegisterService, IncludesDirective, InlineAlertComponent, InlineAlertModule, InlineAlertTitleDirective, InlineAlertType, InputAddonAfterDirective, InputAddonBeforeDirective, InputComponent, InputGroupComponent, InputModule, InputPrefixDirective, InputSuffixDirective, LabelPosition, MESSAGE_CONFIG, MESSAGE_DEFAULT_CONFIG, MINUTE, MINUTE_ITEMS, MONTH, MONTH_PANEL_COLUMN_COUNT, MONTH_PANEL_ROW_COUNT, MenuComponent, MenuGroupComponent, MenuGroupTitleDirective, MenuItemComponent, MenuItemType, MessageConfig, MessageModule, MessageService, MessageType, MultiSelectComponent, NOTIFICATION_CONFIG, NOTIFICATION_DEFAULT_CONFIG, NUMBER_INPUT_MODULE, NotificationComponent, NotificationModule, NotificationService, NumberInputComponent, OptionComponent, OptionContentDirective, OptionGroupComponent, OptionGroupTitleDirective, OptionPlaceholderComponent, PaginatorComponent, PaginatorIntl, PaginatorModule, PickerPanelComponent, RadioButtonComponent, RadioComponent, RadioGroupComponent, RadioModule, RadioSize, RangePickerComponent, RgbColorPipe, RgbaColorPipe, SECOND, SECOND_ITEMS, SELECT_MODULE, SORT_MODULE, ScrollingModule, SearchComponent, SectionComponent, SectionTitleDirective, SelectAllStatus, SelectComponent, SelectModule, Side, SortDirective, SortHeaderComponent, SortModule, StatusBarComponent, StatusBarModule, StatusBarSize, StatusType, StepState, StepsComponent, StepsModule, SubmenuComponent, SuggestionComponent, SuggestionGroupComponent, SuggestionGroupTitleDirective, SwitchComponent, SwitchModule, TABLE_MODULE, TABLE_OF_CONTENTS_MODULE, TABS_MODULE, TabBodyComponent, TabBodyPortalDirective, TabChangeEvent, TabComponent, TabContentDirective, TabContextService, TabGroupComponent, TabHeaderActiveIndicatorComponent, TabHeaderAddonDirective, TabHeaderComponent, TabLabelDirective, TabLabelWrapperDirective, TabSize, TabTitleDirective, TabType, TableCellDefDirective, TableCellDirective, TableColumnDefDirective, TableComponent, TableExpandButtonCellComponent, TableExpandPanelCellComponent, TableHeaderCellDefDirective, TableHeaderCellDirective, TableHeaderRowComponent, TableHeaderRowDefDirective, TableModule, TableOfContentsModule, TablePlaceholderDefDirective, TablePlaceholderOutletDirective, TableRowComponent, TableRowDefDirective, TableScrollWrapperDirective, TableScrollableDirective, TabsModule, TagComponent, TagModule, TagType, TagsInputComponent, ThemeModule, ThemePickerPipe, ThemeService, TimePickerComponent, TimePickerControlType, TimePickerModule, TimePickerPanelComponent, TocContainerDirective, TocContentDirective, TocLinkDirective, TooltipActiveDirective, TooltipComponent, TooltipCopyDirective, TooltipCopyIntl, TooltipDirective, TooltipModule, TooltipTrigger, TooltipType, TreeNodeComponent, TreeNodePlaceholderComponent, TreeSelectComponent, TreeSelectModule, VirtualForOfDirective, VirtualScrollViewportComponent, YEAR, YEAR_PANEL_COLUMN_COUNT, YEAR_PANEL_ROW_COUNT, _tableVirtualScrollDirectiveStrategyFactory, buildBem, coerceAttrBoolean, coerceString, cssVar, en, getAnchorTreeItems, getElementOffset, getSortDuplicateSortableIdError, getSortHeaderMissingIdError, getSortHeaderNotContainedWithinSortError, getSortInvalidDirectionError, handlePixel, isNumberValue, isString, isTemplateRef, isTimePickerModel, last, observeMutationOn, observeResizeOn, publishRef, rgbColor, rgbaColor, scrollIntoView, sleep, watchContentExist, zh };
12358
12442
  //# sourceMappingURL=alauda-ui.mjs.map