@alauda/ui 7.0.3 → 7.0.4-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6,6 +6,12 @@ export declare class BackTopComponent {
6
6
  private readonly cdkScrollable;
7
7
  set visibilityHeight(val: number);
8
8
  get visibilityHeight(): number;
9
+ position: {
10
+ left?: string;
11
+ right?: string;
12
+ top?: string;
13
+ bottom?: string;
14
+ };
9
15
  set target(val: TargetType);
10
16
  get target(): TargetType;
11
17
  click: EventEmitter<Event>;
@@ -15,12 +21,12 @@ export declare class BackTopComponent {
15
21
  private _target;
16
22
  private _scrollTarget;
17
23
  constructor(cdkScrollable: CdkScrollable);
18
- isDisplayed$: import("rxjs").Observable<boolean>;
24
+ display$: import("rxjs").Observable<string>;
19
25
  getTargetScrollTop(target: Element | Window): number;
20
26
  handleClick(event: Event): void;
21
27
  scrollToTop(duration: number): void;
22
28
  getTarget(target: TargetType): Element | Window;
23
29
  static ɵfac: i0.ɵɵFactoryDeclaration<BackTopComponent, [{ optional: true; }]>;
24
- static ɵcmp: i0.ɵɵComponentDeclaration<BackTopComponent, "aui-back-top", never, { "visibilityHeight": { "alias": "visibilityHeight"; "required": false; }; "target": { "alias": "target"; "required": false; }; }, { "click": "click"; }, never, never, false, never>;
30
+ static ɵcmp: i0.ɵɵComponentDeclaration<BackTopComponent, "aui-back-top", never, { "visibilityHeight": { "alias": "visibilityHeight"; "required": false; }; "position": { "alias": "position"; "required": false; }; "target": { "alias": "target"; "required": false; }; }, { "click": "click"; }, never, never, false, never>;
25
31
  }
26
32
  export {};
@@ -1,5 +1,5 @@
1
1
  import { ChangeDetectionStrategy, Component, EventEmitter, Input, Optional, Output, ViewEncapsulation, } from '@angular/core';
2
- import { BehaviorSubject, combineLatest, fromEvent, distinctUntilChanged, map, switchMap, throttleTime, } from 'rxjs';
2
+ import { BehaviorSubject, combineLatest, fromEvent, distinctUntilChanged, map, switchMap, throttleTime, startWith, } from 'rxjs';
3
3
  import * as i0 from "@angular/core";
4
4
  import * as i1 from "@angular/cdk/overlay";
5
5
  import * as i2 from "../icon/icon.component";
@@ -14,6 +14,7 @@ export class BackTopComponent {
14
14
  get visibilityHeight() {
15
15
  return this._visibilityHeight;
16
16
  }
17
+ position = { right: '12px', bottom: '12px' };
17
18
  set target(val) {
18
19
  this._target = val;
19
20
  this.target$$.next(val);
@@ -30,10 +31,10 @@ export class BackTopComponent {
30
31
  constructor(cdkScrollable) {
31
32
  this.cdkScrollable = cdkScrollable;
32
33
  }
33
- isDisplayed$ = combineLatest([
34
+ display$ = combineLatest([
34
35
  this.target$$.asObservable().pipe(map(target => this.getTarget(target)), switchMap(target => fromEvent(target, 'scroll').pipe(throttleTime(50, undefined, { leading: true, trailing: true }), map(() => this.getTargetScrollTop(target))))),
35
36
  this.visibilityHeight$$,
36
- ]).pipe(map(([scrollTop, visibilityHeight]) => scrollTop >= visibilityHeight), distinctUntilChanged());
37
+ ]).pipe(map(([scrollTop, visibilityHeight]) => scrollTop >= visibilityHeight), map(visible => (visible ? 'flex' : 'none')), startWith('none'), distinctUntilChanged());
37
38
  getTargetScrollTop(target) {
38
39
  if (target === window) {
39
40
  return document.documentElement.scrollTop;
@@ -67,18 +68,20 @@ export class BackTopComponent {
67
68
  return scrollTarget;
68
69
  }
69
70
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: BackTopComponent, deps: [{ token: i1.CdkScrollable, optional: true }], target: i0.ɵɵFactoryTarget.Component });
70
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", type: BackTopComponent, selector: "aui-back-top", inputs: { visibilityHeight: "visibilityHeight", target: "target" }, outputs: { click: "click" }, ngImport: i0, template: "<div\n class=\"aui-back-top\"\n [class.show]=\"isDisplayed$ | async\"\n>\n <button\n aui-button=\"text\"\n [square]=\"true\"\n [plain]=\"true\"\n (click)=\"handleClick($event)\"\n size=\"small\"\n >\n <aui-icon\n icon=\"arrow_up_to_line\"\n class=\"aui-back-top__icon\"\n ></aui-icon>\n </button>\n</div>\n", styles: [".aui-back-top{position:fixed;right:12px;bottom:12px;display:flex;justify-content:center;align-items:center;height:var(--aui-inline-height-m);width:var(--aui-inline-height-m);border-radius:var(--aui-border-radius-m);overflow:hidden;visibility:hidden;cursor:pointer;background-color:rgb(var(--aui-color-n-10))}:root .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-back-top.show{visibility:visible}\n"], dependencies: [{ kind: "component", type: i2.IconComponent, selector: "aui-icon", inputs: ["icon", "light", "dark", "link", "margin", "size", "color", "background", "backgroundColor"] }, { kind: "component", type: i3.ButtonComponent, selector: "button[aui-button]", inputs: ["aui-button", "size", "plain", "loading", "round", "square"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
71
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", type: BackTopComponent, selector: "aui-back-top", inputs: { visibilityHeight: "visibilityHeight", position: "position", target: "target" }, outputs: { click: "click" }, ngImport: i0, template: "<div\n class=\"aui-back-top\"\n [style.display]=\"display$ | async\"\n [style.position]=\"'fixed'\"\n [style]=\"position\"\n>\n <button\n aui-button=\"text\"\n [square]=\"true\"\n [plain]=\"true\"\n (click)=\"handleClick($event)\"\n size=\"small\"\n >\n <aui-icon\n icon=\"arrow_up_to_line\"\n class=\"aui-back-top__icon\"\n ></aui-icon>\n </button>\n</div>\n", styles: [".aui-back-top{display:flex;justify-content:center;align-items:center;height:var(--aui-inline-height-m);width:var(--aui-inline-height-m);border-radius:var(--aui-border-radius-m);overflow:hidden;cursor:pointer;background-color:rgb(var(--aui-color-n-10))}:root .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}\n"], dependencies: [{ kind: "component", type: i2.IconComponent, selector: "aui-icon", inputs: ["icon", "light", "dark", "link", "margin", "size", "color", "background", "backgroundColor"] }, { kind: "component", type: i3.ButtonComponent, selector: "button[aui-button]", inputs: ["aui-button", "size", "plain", "loading", "round", "square"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
71
72
  }
72
73
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: BackTopComponent, decorators: [{
73
74
  type: Component,
74
- args: [{ selector: 'aui-back-top', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, preserveWhitespaces: false, template: "<div\n class=\"aui-back-top\"\n [class.show]=\"isDisplayed$ | async\"\n>\n <button\n aui-button=\"text\"\n [square]=\"true\"\n [plain]=\"true\"\n (click)=\"handleClick($event)\"\n size=\"small\"\n >\n <aui-icon\n icon=\"arrow_up_to_line\"\n class=\"aui-back-top__icon\"\n ></aui-icon>\n </button>\n</div>\n", styles: [".aui-back-top{position:fixed;right:12px;bottom:12px;display:flex;justify-content:center;align-items:center;height:var(--aui-inline-height-m);width:var(--aui-inline-height-m);border-radius:var(--aui-border-radius-m);overflow:hidden;visibility:hidden;cursor:pointer;background-color:rgb(var(--aui-color-n-10))}:root .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-back-top.show{visibility:visible}\n"] }]
75
+ args: [{ selector: 'aui-back-top', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, preserveWhitespaces: false, template: "<div\n class=\"aui-back-top\"\n [style.display]=\"display$ | async\"\n [style.position]=\"'fixed'\"\n [style]=\"position\"\n>\n <button\n aui-button=\"text\"\n [square]=\"true\"\n [plain]=\"true\"\n (click)=\"handleClick($event)\"\n size=\"small\"\n >\n <aui-icon\n icon=\"arrow_up_to_line\"\n class=\"aui-back-top__icon\"\n ></aui-icon>\n </button>\n</div>\n", styles: [".aui-back-top{display:flex;justify-content:center;align-items:center;height:var(--aui-inline-height-m);width:var(--aui-inline-height-m);border-radius:var(--aui-border-radius-m);overflow:hidden;cursor:pointer;background-color:rgb(var(--aui-color-n-10))}:root .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}\n"] }]
75
76
  }], ctorParameters: function () { return [{ type: i1.CdkScrollable, decorators: [{
76
77
  type: Optional
77
78
  }] }]; }, propDecorators: { visibilityHeight: [{
78
79
  type: Input
80
+ }], position: [{
81
+ type: Input
79
82
  }], target: [{
80
83
  type: Input
81
84
  }], click: [{
82
85
  type: Output
83
86
  }] } });
84
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFjay10b3AuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JhY2stdG9wL2JhY2stdG9wLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uL3NyYy9iYWNrLXRvcC9iYWNrLXRvcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLFFBQVEsRUFDUixNQUFNLEVBQ04saUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxlQUFlLEVBQ2YsYUFBYSxFQUNiLFNBQVMsRUFDVCxvQkFBb0IsRUFDcEIsR0FBRyxFQUNILFNBQVMsRUFDVCxZQUFZLEdBQ2IsTUFBTSxNQUFNLENBQUM7Ozs7OztBQVlkLE1BQU0sT0FBTyxnQkFBZ0I7SUFpQ2M7SUFoQ3pDLElBQ0ksZ0JBQWdCLENBQUMsR0FBVztRQUM5QixJQUFJLENBQUMsaUJBQWlCLEdBQUcsR0FBRyxDQUFDO1FBQzdCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELElBQUksZ0JBQWdCO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUNJLE1BQU0sQ0FBQyxHQUFlO1FBQ3hCLElBQUksQ0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDO1FBQ25CLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUdELEtBQUssR0FBRyxJQUFJLFlBQVksRUFBUyxDQUFDO0lBRTFCLGlCQUFpQixHQUFHLEdBQUcsQ0FBQztJQUNmLFFBQVEsR0FBRyxJQUFJLGVBQWUsQ0FBYSxJQUFJ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Qix3VkFpQkE7OzJGRGFhLGdCQUFnQjtrQkFSNUIsU0FBUzsrQkFDRSxjQUFjLGlCQUdULGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sdUJBQzFCLEtBQUs7OzBCQW1DYixRQUFROzRDQS9CakIsZ0JBQWdCO3NCQURuQixLQUFLO2dCQVdGLE1BQU07c0JBRFQsS0FBSztnQkFXTixLQUFLO3NCQURKLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZGtTY3JvbGxhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3B0aW9uYWwsXG4gIE91dHB1dCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQmVoYXZpb3JTdWJqZWN0LFxuICBjb21iaW5lTGF0ZXN0LFxuICBmcm9tRXZlbnQsXG4gIGRpc3RpbmN0VW50aWxDaGFuZ2VkLFxuICBtYXAsXG4gIHN3aXRjaE1hcCxcbiAgdGhyb3R0bGVUaW1lLFxufSBmcm9tICdyeGpzJztcblxudHlwZSBUYXJnZXRUeXBlID0gRWxlbWVudCB8IFdpbmRvdyB8IHN0cmluZztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXVpLWJhY2stdG9wJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2JhY2stdG9wLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYmFjay10b3AuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByZXNlcnZlV2hpdGVzcGFjZXM6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBCYWNrVG9wQ29tcG9uZW50IHtcbiAgQElucHV0KClcbiAgc2V0IHZpc2liaWxpdHlIZWlnaHQodmFsOiBudW1iZXIpIHtcbiAgICB0aGlzLl92aXNpYmlsaXR5SGVpZ2h0ID0gdmFsO1xuICAgIHRoaXMudmlzaWJpbGl0eUhlaWdodCQkLm5leHQodmFsKTtcbiAgfVxuXG4gIGdldCB2aXNpYmlsaXR5SGVpZ2h0KCkge1xuICAgIHJldHVybiB0aGlzLl92aXNpYmlsaXR5SGVpZ2h0O1xuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IHRhcmdldCh2YWw6IFRhcmdldFR5cGUpIHtcbiAgICB0aGlzLl90YXJnZXQgPSB2YWw7XG4gICAgdGhpcy50YXJnZXQkJC5uZXh0KHZhbCk7XG4gIH1cblxuICBnZXQgdGFyZ2V0KCkge1xuICAgIHJldHVybiB0aGlzLl90YXJnZXQ7XG4gIH1cblxuICBAT3V0cHV0KClcbiAgY2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPEV2ZW50PigpO1xuXG4gIHByaXZhdGUgX3Zpc2liaWxpdHlIZWlnaHQgPSA0MDA7XG4gIHByaXZhdGUgcmVhZG9ubHkgdGFyZ2V0JCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRhcmdldFR5cGU+KHRoaXMudGFyZ2V0KTtcbiAgcHJpdmF0ZSByZWFkb25seSB2aXNpYmlsaXR5SGVpZ2h0JCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4oXG4gICAgdGhpcy52aXNpYmlsaXR5SGVpZ2h0LFxuICApO1xuXG4gIHByaXZhdGUgX3RhcmdldDogVGFyZ2V0VHlwZTtcbiAgcHJpdmF0ZSBfc2Nyb2xsVGFyZ2V0OiBFbGVtZW50IHwgV2luZG93O1xuXG4gIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIHByaXZhdGUgcmVhZG9ubHkgY2RrU2Nyb2xsYWJsZTogQ2RrU2Nyb2xsYWJsZSkge31cblxuICBpc0Rpc3BsYXllZCQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICB0aGlzLnRhcmdldCQkLmFzT2JzZXJ2YWJsZSgpLnBpcGUoXG4gICAgICBtYXAodGFyZ2V0ID0+IHRoaXMuZ2V0VGFyZ2V0KHRhcmdldCkpLFxuICAgICAgc3dpdGNoTWFwKHRhcmdldCA9PlxuICAgICAgICBmcm9tRXZlbnQodGFyZ2V0LCAnc2Nyb2xsJykucGlwZShcbiAgICAgICAgICAvLyB1c2UgZGVmYXVsdCBzY2hlZHVsZXJcbiAgICAgICAgICB0aHJvdHRsZVRpbWUoNTAsIHVuZGVmaW5lZCwgeyBsZWFkaW5nOiB0cnVlLCB0cmFpbGluZzogdHJ1ZSB9KSxcbiAgICAgICAgICBtYXAoKCkgPT4gdGhpcy5nZXRUYXJnZXRTY3JvbGxUb3AodGFyZ2V0KSksXG4gICAgICAgICksXG4gICAgICApLFxuICAgICksXG4gICAgdGhpcy52aXNpYmlsaXR5SGVpZ2h0JCQsXG4gIF0pLnBpcGUoXG4gICAgbWFwKChbc2Nyb2xsVG9wLCB2aXNpYmlsaXR5SGVpZ2h0XSkgPT4gc2Nyb2xsVG9wID49IHZpc2liaWxpdHlIZWlnaHQpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICk7XG5cbiAgZ2V0VGFyZ2V0U2Nyb2xsVG9wKHRhcmdldDogRWxlbWVudCB8IFdpbmRvdykge1xuICAgIGlmICh0YXJnZXQgPT09IHdpbmRvdykge1xuICAgICAgcmV0dXJuIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3A7XG4gICAgfVxuICAgIHJldHVybiAodGFyZ2V0IGFzIEhUTUxFbGVtZW50KS5zY3JvbGxUb3A7XG4gIH1cblxuICBoYW5kbGVDbGljayhldmVudDogRXZlbnQpIHtcbiAgICB0aGlzLnNjcm9sbFRvVG9wKDIwMCk7XG4gICAgdGhpcy5jbGljay5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIHNjcm9sbFRvVG9wKGR1cmF0aW9uOiBudW1iZXIpIHtcbiAgICBjb25zdCBzdGFydEhlaWdodCA9IHRoaXMuZ2V0VGFyZ2V0U2Nyb2xsVG9wKHRoaXMuX3Njcm9sbFRhcmdldCk7XG4gICAgbGV0IHN0YXJ0VGltZTogbnVtYmVyO1xuXG4gICAgY29uc3Qgc2Nyb2xsU3RlcCA9ICh0aW1lc3RhbXA6IG51bWJlcikgPT4ge1xuICAgICAgaWYgKCFzdGFydFRpbWUpIHtcbiAgICAgICAgc3RhcnRUaW1lID0gdGltZXN0YW1wO1xuICAgICAgfVxuICAgICAgY29uc3Qgc2Nyb2xsSGVpZ2h0ID0gTWF0aC5tYXgoXG4gICAgICAgIHN0YXJ0SGVpZ2h0IC0gKCh0aW1lc3RhbXAgLSBzdGFydFRpbWUpIC8gZHVyYXRpb24pICogc3RhcnRIZWlnaHQsXG4gICAgICAgIDAsXG4gICAgICApO1xuXG4gICAgICB0aGlzLl9zY3JvbGxUYXJnZXQuc2Nyb2xsVG8oMCwgc2Nyb2xsSGVpZ2h0KTtcbiAgICAgIGlmIChzY3JvbGxIZWlnaHQpIHtcbiAgICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKHNjcm9sbFN0ZXApO1xuICAgICAgfVxuICAgIH07XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKHNjcm9sbFN0ZXApO1xuICB9XG5cbiAgZ2V0VGFyZ2V0KHRhcmdldDogVGFyZ2V0VHlwZSk6IEVsZW1lbnQgfCBXaW5kb3cge1xuICAgIGNvbnN0IHNjcm9sbFRhcmdldCA9XG4gICAgICAodHlwZW9mIHRhcmdldCA9PT0gJ3N0cmluZycgPyBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHRhcmdldCkgOiB0YXJnZXQpIHx8XG4gICAgICB0aGlzLmNka1Njcm9sbGFibGU/LmdldEVsZW1lbnRSZWYoKS5uYXRpdmVFbGVtZW50IHx8XG4gICAgICB3aW5kb3c7XG4gICAgdGhpcy5fc2Nyb2xsVGFyZ2V0ID0gc2Nyb2xsVGFyZ2V0O1xuICAgIHJldHVybiBzY3JvbGxUYXJnZXQ7XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJhdWktYmFjay10b3BcIlxuICBbY2xhc3Muc2hvd109XCJpc0Rpc3BsYXllZCQgfCBhc3luY1wiXG4+XG4gIDxidXR0b25cbiAgICBhdWktYnV0dG9uPVwidGV4dFwiXG4gICAgW3NxdWFyZV09XCJ0cnVlXCJcbiAgICBbcGxhaW5dPVwidHJ1ZVwiXG4gICAgKGNsaWNrKT1cImhhbmRsZUNsaWNrKCRldmVudClcIlxuICAgIHNpemU9XCJzbWFsbFwiXG4gID5cbiAgICA8YXVpLWljb25cbiAgICAgIGljb249XCJhcnJvd191cF90b19saW5lXCJcbiAgICAgIGNsYXNzPVwiYXVpLWJhY2stdG9wX19pY29uXCJcbiAgICA+PC9hdWktaWNvbj5cbiAgPC9idXR0b24+XG48L2Rpdj5cbiJdfQ==
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFjay10b3AuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JhY2stdG9wL2JhY2stdG9wLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uL3NyYy9iYWNrLXRvcC9iYWNrLXRvcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLFFBQVEsRUFDUixNQUFNLEVBQ04saUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxlQUFlLEVBQ2YsYUFBYSxFQUNiLFNBQVMsRUFDVCxvQkFBb0IsRUFDcEIsR0FBRyxFQUNILFNBQVMsRUFDVCxZQUFZLEVBQ1osU0FBUyxHQUNWLE1BQU0sTUFBTSxDQUFDOzs7Ozs7QUFZZCxNQUFNLE9BQU8sZ0JBQWdCO0lBeUNjO0lBeEN6QyxJQUNJLGdCQUFnQixDQUFDLEdBQVc7UUFDOUIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEdBQUcsQ0FBQztRQUM3QixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxJQUFJLGdCQUFnQjtRQUNsQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztJQUNoQyxDQUFDO0lBR0QsUUFBUSxHQUtKLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLENBQUM7SUFFdEMsSUFDSSxNQUFNLENBQUMsR0FBZTtRQUN4QixJQUFJLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQztRQUNuQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFHRCxLQUFLLEdBQUcsSUFBSSxZ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TUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztZQUN0RSxJQUFJLENBQUMsYUFBYSxFQUFFLGFBQWEsRUFBRSxDQUFDLGFBQWE7WUFDakQsTUFBTSxDQUFDO1FBQ1QsSUFBSSxDQUFDLGFBQWEsR0FBRyxZQUFZLENBQUM7UUFDbEMsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQzt1R0F0R1UsZ0JBQWdCOzJGQUFoQixnQkFBZ0IsMktDL0I3QiwrWUFtQkE7OzJGRFlhLGdCQUFnQjtrQkFSNUIsU0FBUzsrQkFDRSxjQUFjLGlCQUdULGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sdUJBQzFCLEtBQUs7OzBCQTJDYixRQUFROzRDQXZDakIsZ0JBQWdCO3NCQURuQixLQUFLO2dCQVdOLFFBQVE7c0JBRFAsS0FBSztnQkFTRixNQUFNO3NCQURULEtBQUs7Z0JBV04sS0FBSztzQkFESixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2RrU2Nyb2xsYWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9wdGlvbmFsLFxuICBPdXRwdXQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEJlaGF2aW9yU3ViamVjdCxcbiAgY29tYmluZUxhdGVzdCxcbiAgZnJvbUV2ZW50LFxuICBkaXN0aW5jdFVudGlsQ2hhbmdlZCxcbiAgbWFwLFxuICBzd2l0Y2hNYXAsXG4gIHRocm90dGxlVGltZSxcbiAgc3RhcnRXaXRoLFxufSBmcm9tICdyeGpzJztcblxudHlwZSBUYXJnZXRUeXBlID0gRWxlbWVudCB8IFdpbmRvdyB8IHN0cmluZztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXVpLWJhY2stdG9wJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2JhY2stdG9wLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYmFjay10b3AuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByZXNlcnZlV2hpdGVzcGFjZXM6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBCYWNrVG9wQ29tcG9uZW50IHtcbiAgQElucHV0KClcbiAgc2V0IHZpc2liaWxpdHlIZWlnaHQodmFsOiBudW1iZXIpIHtcbiAgICB0aGlzLl92aXNpYmlsaXR5SGVpZ2h0ID0gdmFsO1xuICAgIHRoaXMudmlzaWJpbGl0eUhlaWdodCQkLm5leHQodmFsKTtcbiAgfVxuXG4gIGdldCB2aXNpYmlsaXR5SGVpZ2h0KCkge1xuICAgIHJldHVybiB0aGlzLl92aXNpYmlsaXR5SGVpZ2h0O1xuICB9XG5cbiAgQElucHV0KClcbiAgcG9zaXRpb246IHtcbiAgICBsZWZ0Pzogc3RyaW5nO1xuICAgIHJpZ2h0Pzogc3RyaW5nO1xuICAgIHRvcD86IHN0cmluZztcbiAgICBib3R0b20/OiBzdHJpbmc7XG4gIH0gPSB7IHJpZ2h0OiAnMTJweCcsIGJvdHRvbTogJzEycHgnIH07XG5cbiAgQElucHV0KClcbiAgc2V0IHRhcmdldCh2YWw6IFRhcmdldFR5cGUpIHtcbiAgICB0aGlzLl90YXJnZXQgPSB2YWw7XG4gICAgdGhpcy50YXJnZXQkJC5uZXh0KHZhbCk7XG4gIH1cblxuICBnZXQgdGFyZ2V0KCkge1xuICAgIHJldHVybiB0aGlzLl90YXJnZXQ7XG4gIH1cblxuICBAT3V0cHV0KClcbiAgY2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPEV2ZW50PigpO1xuXG4gIHByaXZhdGUgX3Zpc2liaWxpdHlIZWlnaHQgPSA0MDA7XG4gIHByaXZhdGUgcmVhZG9ubHkgdGFyZ2V0JCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRhcmdldFR5cGU+KHRoaXMudGFyZ2V0KTtcbiAgcHJpdmF0ZSByZWFkb25seSB2aXNpYmlsaXR5SGVpZ2h0JCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4oXG4gICAgdGhpcy52aXNpYmlsaXR5SGVpZ2h0LFxuICApO1xuXG4gIHByaXZhdGUgX3RhcmdldDogVGFyZ2V0VHlwZTtcbiAgcHJpdmF0ZSBfc2Nyb2xsVGFyZ2V0OiBFbGVtZW50IHwgV2luZG93O1xuXG4gIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIHByaXZhdGUgcmVhZG9ubHkgY2RrU2Nyb2xsYWJsZTogQ2RrU2Nyb2xsYWJsZSkge31cblxuICBkaXNwbGF5JCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgIHRoaXMudGFyZ2V0JCQuYXNPYnNlcnZhYmxlKCkucGlwZShcbiAgICAgIG1hcCh0YXJnZXQgPT4gdGhpcy5nZXRUYXJnZXQodGFyZ2V0KSksXG4gICAgICBzd2l0Y2hNYXAodGFyZ2V0ID0+XG4gICAgICAgIGZyb21FdmVudCh0YXJnZXQsICdzY3JvbGwnKS5waXBlKFxuICAgICAgICAgIC8vIHVzZSBkZWZhdWx0IHNjaGVkdWxlclxuICAgICAgICAgIHRocm90dGxlVGltZSg1MCwgdW5kZWZpbmVkLCB7IGxlYWRpbmc6IHRydWUsIHRyYWlsaW5nOiB0cnVlIH0pLFxuICAgICAgICAgIG1hcCgoKSA9PiB0aGlzLmdldFRhcmdldFNjcm9sbFRvcCh0YXJnZXQpKSxcbiAgICAgICAgKSxcbiAgICAgICksXG4gICAgKSxcbiAgICB0aGlzLnZpc2liaWxpdHlIZWlnaHQkJCxcbiAgXSkucGlwZShcbiAgICBtYXAoKFtzY3JvbGxUb3AsIHZpc2liaWxpdHlIZWlnaHRdKSA9PiBzY3JvbGxUb3AgPj0gdmlzaWJpbGl0eUhlaWdodCksXG4gICAgbWFwKHZpc2libGUgPT4gKHZpc2libGUgPyAnZmxleCcgOiAnbm9uZScpKSxcbiAgICBzdGFydFdpdGgoJ25vbmUnKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICApO1xuXG4gIGdldFRhcmdldFNjcm9sbFRvcCh0YXJnZXQ6IEVsZW1lbnQgfCBXaW5kb3cpIHtcbiAgICBpZiAodGFyZ2V0ID09PSB3aW5kb3cpIHtcbiAgICAgIHJldHVybiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsVG9wO1xuICAgIH1cbiAgICByZXR1cm4gKHRhcmdldCBhcyBIVE1MRWxlbWVudCkuc2Nyb2xsVG9wO1xuICB9XG5cbiAgaGFuZGxlQ2xpY2soZXZlbnQ6IEV2ZW50KSB7XG4gICAgdGhpcy5zY3JvbGxUb1RvcCgyMDApO1xuICAgIHRoaXMuY2xpY2suZW1pdChldmVudCk7XG4gIH1cblxuICBzY3JvbGxUb1RvcChkdXJhdGlvbjogbnVtYmVyKSB7XG4gICAgY29uc3Qgc3RhcnRIZWlnaHQgPSB0aGlzLmdldFRhcmdldFNjcm9sbFRvcCh0aGlzLl9zY3JvbGxUYXJnZXQpO1xuICAgIGxldCBzdGFydFRpbWU6IG51bWJlcjtcblxuICAgIGNvbnN0IHNjcm9sbFN0ZXAgPSAodGltZXN0YW1wOiBudW1iZXIpID0+IHtcbiAgICAgIGlmICghc3RhcnRUaW1lKSB7XG4gICAgICAgIHN0YXJ0VGltZSA9IHRpbWVzdGFtcDtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHNjcm9sbEhlaWdodCA9IE1hdGgubWF4KFxuICAgICAgICBzdGFydEhlaWdodCAtICgodGltZXN0YW1wIC0gc3RhcnRUaW1lKSAvIGR1cmF0aW9uKSAqIHN0YXJ0SGVpZ2h0LFxuICAgICAgICAwLFxuICAgICAgKTtcblxuICAgICAgdGhpcy5fc2Nyb2xsVGFyZ2V0LnNjcm9sbFRvKDAsIHNjcm9sbEhlaWdodCk7XG4gICAgICBpZiAoc2Nyb2xsSGVpZ2h0KSB7XG4gICAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZShzY3JvbGxTdGVwKTtcbiAgICAgIH1cbiAgICB9O1xuICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZShzY3JvbGxTdGVwKTtcbiAgfVxuXG4gIGdldFRhcmdldCh0YXJnZXQ6IFRhcmdldFR5cGUpOiBFbGVtZW50IHwgV2luZG93IHtcbiAgICBjb25zdCBzY3JvbGxUYXJnZXQgPVxuICAgICAgKHR5cGVvZiB0YXJnZXQgPT09ICdzdHJpbmcnID8gZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih0YXJnZXQpIDogdGFyZ2V0KSB8fFxuICAgICAgdGhpcy5jZGtTY3JvbGxhYmxlPy5nZXRFbGVtZW50UmVmKCkubmF0aXZlRWxlbWVudCB8fFxuICAgICAgd2luZG93O1xuICAgIHRoaXMuX3Njcm9sbFRhcmdldCA9IHNjcm9sbFRhcmdldDtcbiAgICByZXR1cm4gc2Nyb2xsVGFyZ2V0O1xuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwiYXVpLWJhY2stdG9wXCJcbiAgW3N0eWxlLmRpc3BsYXldPVwiZGlzcGxheSQgfCBhc3luY1wiXG4gIFtzdHlsZS5wb3NpdGlvbl09XCInZml4ZWQnXCJcbiAgW3N0eWxlXT1cInBvc2l0aW9uXCJcbj5cbiAgPGJ1dHRvblxuICAgIGF1aS1idXR0b249XCJ0ZXh0XCJcbiAgICBbc3F1YXJlXT1cInRydWVcIlxuICAgIFtwbGFpbl09XCJ0cnVlXCJcbiAgICAoY2xpY2spPVwiaGFuZGxlQ2xpY2soJGV2ZW50KVwiXG4gICAgc2l6ZT1cInNtYWxsXCJcbiAgPlxuICAgIDxhdWktaWNvblxuICAgICAgaWNvbj1cImFycm93X3VwX3RvX2xpbmVcIlxuICAgICAgY2xhc3M9XCJhdWktYmFjay10b3BfX2ljb25cIlxuICAgID48L2F1aS1pY29uPlxuICA8L2J1dHRvbj5cbjwvZGl2PlxuIl19
@@ -2335,6 +2335,7 @@ class BackTopComponent {
2335
2335
  get visibilityHeight() {
2336
2336
  return this._visibilityHeight;
2337
2337
  }
2338
+ position = { right: '12px', bottom: '12px' };
2338
2339
  set target(val) {
2339
2340
  this._target = val;
2340
2341
  this.target$$.next(val);
@@ -2351,10 +2352,10 @@ class BackTopComponent {
2351
2352
  constructor(cdkScrollable) {
2352
2353
  this.cdkScrollable = cdkScrollable;
2353
2354
  }
2354
- isDisplayed$ = combineLatest([
2355
+ display$ = combineLatest([
2355
2356
  this.target$$.asObservable().pipe(map(target => this.getTarget(target)), switchMap(target => fromEvent(target, 'scroll').pipe(throttleTime(50, undefined, { leading: true, trailing: true }), map(() => this.getTargetScrollTop(target))))),
2356
2357
  this.visibilityHeight$$,
2357
- ]).pipe(map(([scrollTop, visibilityHeight]) => scrollTop >= visibilityHeight), distinctUntilChanged());
2358
+ ]).pipe(map(([scrollTop, visibilityHeight]) => scrollTop >= visibilityHeight), map(visible => (visible ? 'flex' : 'none')), startWith('none'), distinctUntilChanged());
2358
2359
  getTargetScrollTop(target) {
2359
2360
  if (target === window) {
2360
2361
  return document.documentElement.scrollTop;
@@ -2388,15 +2389,17 @@ class BackTopComponent {
2388
2389
  return scrollTarget;
2389
2390
  }
2390
2391
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: BackTopComponent, deps: [{ token: i1$3.CdkScrollable, optional: true }], target: i0.ɵɵFactoryTarget.Component });
2391
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", type: BackTopComponent, selector: "aui-back-top", inputs: { visibilityHeight: "visibilityHeight", target: "target" }, outputs: { click: "click" }, ngImport: i0, template: "<div\n class=\"aui-back-top\"\n [class.show]=\"isDisplayed$ | async\"\n>\n <button\n aui-button=\"text\"\n [square]=\"true\"\n [plain]=\"true\"\n (click)=\"handleClick($event)\"\n size=\"small\"\n >\n <aui-icon\n icon=\"arrow_up_to_line\"\n class=\"aui-back-top__icon\"\n ></aui-icon>\n </button>\n</div>\n", styles: [".aui-back-top{position:fixed;right:12px;bottom:12px;display:flex;justify-content:center;align-items:center;height:var(--aui-inline-height-m);width:var(--aui-inline-height-m);border-radius:var(--aui-border-radius-m);overflow:hidden;visibility:hidden;cursor:pointer;background-color:rgb(var(--aui-color-n-10))}:root .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-back-top.show{visibility:visible}\n"], dependencies: [{ kind: "component", type: IconComponent, selector: "aui-icon", inputs: ["icon", "light", "dark", "link", "margin", "size", "color", "background", "backgroundColor"] }, { kind: "component", type: ButtonComponent, selector: "button[aui-button]", inputs: ["aui-button", "size", "plain", "loading", "round", "square"] }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
2392
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", type: BackTopComponent, selector: "aui-back-top", inputs: { visibilityHeight: "visibilityHeight", position: "position", target: "target" }, outputs: { click: "click" }, ngImport: i0, template: "<div\n class=\"aui-back-top\"\n [style.display]=\"display$ | async\"\n [style.position]=\"'fixed'\"\n [style]=\"position\"\n>\n <button\n aui-button=\"text\"\n [square]=\"true\"\n [plain]=\"true\"\n (click)=\"handleClick($event)\"\n size=\"small\"\n >\n <aui-icon\n icon=\"arrow_up_to_line\"\n class=\"aui-back-top__icon\"\n ></aui-icon>\n </button>\n</div>\n", styles: [".aui-back-top{display:flex;justify-content:center;align-items:center;height:var(--aui-inline-height-m);width:var(--aui-inline-height-m);border-radius:var(--aui-border-radius-m);overflow:hidden;cursor:pointer;background-color:rgb(var(--aui-color-n-10))}:root .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}\n"], dependencies: [{ kind: "component", type: IconComponent, selector: "aui-icon", inputs: ["icon", "light", "dark", "link", "margin", "size", "color", "background", "backgroundColor"] }, { kind: "component", type: ButtonComponent, selector: "button[aui-button]", inputs: ["aui-button", "size", "plain", "loading", "round", "square"] }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
2392
2393
  }
2393
2394
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: BackTopComponent, decorators: [{
2394
2395
  type: Component,
2395
- args: [{ selector: 'aui-back-top', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, preserveWhitespaces: false, template: "<div\n class=\"aui-back-top\"\n [class.show]=\"isDisplayed$ | async\"\n>\n <button\n aui-button=\"text\"\n [square]=\"true\"\n [plain]=\"true\"\n (click)=\"handleClick($event)\"\n size=\"small\"\n >\n <aui-icon\n icon=\"arrow_up_to_line\"\n class=\"aui-back-top__icon\"\n ></aui-icon>\n </button>\n</div>\n", styles: [".aui-back-top{position:fixed;right:12px;bottom:12px;display:flex;justify-content:center;align-items:center;height:var(--aui-inline-height-m);width:var(--aui-inline-height-m);border-radius:var(--aui-border-radius-m);overflow:hidden;visibility:hidden;cursor:pointer;background-color:rgb(var(--aui-color-n-10))}:root .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}.aui-back-top.show{visibility:visible}\n"] }]
2396
+ args: [{ selector: 'aui-back-top', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, preserveWhitespaces: false, template: "<div\n class=\"aui-back-top\"\n [style.display]=\"display$ | async\"\n [style.position]=\"'fixed'\"\n [style]=\"position\"\n>\n <button\n aui-button=\"text\"\n [square]=\"true\"\n [plain]=\"true\"\n (click)=\"handleClick($event)\"\n size=\"small\"\n >\n <aui-icon\n icon=\"arrow_up_to_line\"\n class=\"aui-back-top__icon\"\n ></aui-icon>\n </button>\n</div>\n", styles: [".aui-back-top{display:flex;justify-content:center;align-items:center;height:var(--aui-inline-height-m);width:var(--aui-inline-height-m);border-radius:var(--aui-border-radius-m);overflow:hidden;cursor:pointer;background-color:rgb(var(--aui-color-n-10))}:root .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}html[aui-theme-mode=light] .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.2)}@media (prefers-color-scheme: dark){html[aui-theme-mode=system] .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}}html[aui-theme-mode=dark] .aui-back-top{box-shadow:0 2px 8px 0 rgba(var(--aui-color-origin-shadow),.75)}\n"] }]
2396
2397
  }], ctorParameters: function () { return [{ type: i1$3.CdkScrollable, decorators: [{
2397
2398
  type: Optional
2398
2399
  }] }]; }, propDecorators: { visibilityHeight: [{
2399
2400
  type: Input
2401
+ }], position: [{
2402
+ type: Input
2400
2403
  }], target: [{
2401
2404
  type: Input
2402
2405
  }], click: [{