@coolon/angular-ui-powerups 16.1.0-aplpha.42 → 16.1.0-aplpha.43

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.
@@ -11,7 +11,6 @@ import { FocusBindingDirective } from './focus-binding.directive';
11
11
  import { GarbageCollectorDirective } from './garbage-collector.directive';
12
12
  import { HighlightTextModelDirective } from './highlight-text-model.directive';
13
13
  import { HighlightPipe } from './highlight.pipe';
14
- import { ResizeObserverDirective } from "./resize-observer.directive";
15
14
  import * as i0 from "@angular/core";
16
15
  export class DirectivesModule {
17
16
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: DirectivesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
@@ -19,8 +18,7 @@ export class DirectivesModule {
19
18
  FocusBindingDirective,
20
19
  HighlightPipe,
21
20
  HighlightTextModelDirective,
22
- GarbageCollectorDirective,
23
- ResizeObserverDirective], imports: [CommonModule,
21
+ GarbageCollectorDirective], imports: [CommonModule,
24
22
  BrowserAnimationsModule,
25
23
  FormsModule,
26
24
  MatInputModule,
@@ -30,8 +28,7 @@ export class DirectivesModule {
30
28
  FocusBindingDirective,
31
29
  HighlightPipe,
32
30
  HighlightTextModelDirective,
33
- GarbageCollectorDirective,
34
- ResizeObserverDirective] });
31
+ GarbageCollectorDirective] });
35
32
  static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: DirectivesModule, imports: [CommonModule,
36
33
  BrowserAnimationsModule,
37
34
  FormsModule,
@@ -48,8 +45,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
48
45
  FocusBindingDirective,
49
46
  HighlightPipe,
50
47
  HighlightTextModelDirective,
51
- GarbageCollectorDirective,
52
- ResizeObserverDirective
48
+ GarbageCollectorDirective
53
49
  ],
54
50
  imports: [
55
51
  CommonModule,
@@ -65,9 +61,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
65
61
  FocusBindingDirective,
66
62
  HighlightPipe,
67
63
  HighlightTextModelDirective,
68
- GarbageCollectorDirective,
69
- ResizeObserverDirective
64
+ GarbageCollectorDirective
70
65
  ]
71
66
  }]
72
67
  }] });
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlyZWN0aXZlcy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9kaXJlY3RpdmVzL2RpcmVjdGl2ZXMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUNoRSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUM3RSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUNoRSxPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUN4RSxPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUM3RSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFDL0MsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sNkJBQTZCLENBQUM7O0FBOEJwRSxNQUFNLE9BQU8sZ0JBQWdCO3VHQUFoQixnQkFBZ0I7d0dBQWhCLGdCQUFnQixpQkExQnpCLGdCQUFnQjtZQUNoQixxQkFBcUI7WUFDckIsYUFBYTtZQUNiLDJCQUEyQjtZQUMzQix5QkFBeUI7WUFDekIsdUJBQXVCLGFBR3ZCLFlBQVk7WUFDWix1QkFBdUI7WUFDdkIsV0FBVztZQUNYLGNBQWM7WUFDZCxrQkFBa0I7WUFDbEIsZUFBZTtZQUNmLGFBQWEsYUFHYixnQkFBZ0I7WUFDaEIscUJBQXFCO1lBQ3JCLGFBQWE7WUFDYiwyQkFBMkI7WUFDM0IseUJBQXlCO1lBQ3pCLHVCQUF1Qjt3R0FJZCxnQkFBZ0IsWUFsQnpCLFlBQVk7WUFDWix1QkFBdUI7WUFDdkIsV0FBVztZQUNYLGNBQWM7WUFDZCxrQkFBa0I7WUFDbEIsZUFBZTtZQUNmLGFBQWE7OzJGQVlKLGdCQUFnQjtrQkE1QjVCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLGdCQUFnQjt3QkFDaEIscUJBQXFCO3dCQUNyQixhQUFhO3dCQUNiLDJCQUEyQjt3QkFDM0IseUJBQXlCO3dCQUN6Qix1QkFBdUI7cUJBQ3hCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLHVCQUF1Qjt3QkFDdkIsV0FBVzt3QkFDWCxjQUFjO3dCQUNkLGtCQUFrQjt3QkFDbEIsZUFBZTt3QkFDZixhQUFhO3FCQUNkO29CQUNELE9BQU8sRUFBRTt3QkFDUCxnQkFBZ0I7d0JBQ2hCLHFCQUFxQjt3QkFDckIsYUFBYTt3QkFDYiwyQkFBMkI7d0JBQzNCLHlCQUF5Qjt3QkFDekIsdUJBQXVCO3FCQUN4QjtpQkFFRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge01hdEZvcm1GaWVsZE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQge01hdElucHV0TW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQge01hdFNlbGVjdE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0JztcbmltcG9ydCB7TWF0VGFic01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFicyc7XG5pbXBvcnQge0Jyb3dzZXJBbmltYXRpb25zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtDb21tYW5kRGlyZWN0aXZlfSBmcm9tICcuL2NvbW1hbmQuZGlyZWN0aXZlJztcbmltcG9ydCB7Rm9jdXNCaW5kaW5nRGlyZWN0aXZlfSBmcm9tICcuL2ZvY3VzLWJpbmRpbmcuZGlyZWN0aXZlJztcbmltcG9ydCB7R2FyYmFnZUNvbGxlY3RvckRpcmVjdGl2ZX0gZnJvbSAnLi9nYXJiYWdlLWNvbGxlY3Rvci5kaXJlY3RpdmUnO1xuaW1wb3J0IHtIaWdobGlnaHRUZXh0TW9kZWxEaXJlY3RpdmV9IGZyb20gJy4vaGlnaGxpZ2h0LXRleHQtbW9kZWwuZGlyZWN0aXZlJztcbmltcG9ydCB7SGlnaGxpZ2h0UGlwZX0gZnJvbSAnLi9oaWdobGlnaHQucGlwZSc7XG5pbXBvcnQge1Jlc2l6ZU9ic2VydmVyRGlyZWN0aXZlfSBmcm9tIFwiLi9yZXNpemUtb2JzZXJ2ZXIuZGlyZWN0aXZlXCI7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIENvbW1hbmREaXJlY3RpdmUsXG4gICAgRm9jdXNCaW5kaW5nRGlyZWN0aXZlLFxuICAgIEhpZ2hsaWdodFBpcGUsXG4gICAgSGlnaGxpZ2h0VGV4dE1vZGVsRGlyZWN0aXZlLFxuICAgIEdhcmJhZ2VDb2xsZWN0b3JEaXJlY3RpdmUsXG4gICAgUmVzaXplT2JzZXJ2ZXJEaXJlY3RpdmVcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBCcm93c2VyQW5pbWF0aW9uc01vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBNYXRJbnB1dE1vZHVsZSxcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUsXG4gICAgTWF0U2VsZWN0TW9kdWxlLFxuICAgIE1hdFRhYnNNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIENvbW1hbmREaXJlY3RpdmUsXG4gICAgRm9jdXNCaW5kaW5nRGlyZWN0aXZlLFxuICAgIEhpZ2hsaWdodFBpcGUsXG4gICAgSGlnaGxpZ2h0VGV4dE1vZGVsRGlyZWN0aXZlLFxuICAgIEdhcmJhZ2VDb2xsZWN0b3JEaXJlY3RpdmUsXG4gICAgUmVzaXplT2JzZXJ2ZXJEaXJlY3RpdmVcbiAgXVxuXG59KVxuZXhwb3J0IGNsYXNzIERpcmVjdGl2ZXNNb2R1bGUge1xufVxuIl19
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlyZWN0aXZlcy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9kaXJlY3RpdmVzL2RpcmVjdGl2ZXMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUNoRSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUM3RSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUNoRSxPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUN4RSxPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUM3RSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7O0FBNkIvQyxNQUFNLE9BQU8sZ0JBQWdCO3VHQUFoQixnQkFBZ0I7d0dBQWhCLGdCQUFnQixpQkF4QnpCLGdCQUFnQjtZQUNoQixxQkFBcUI7WUFDckIsYUFBYTtZQUNiLDJCQUEyQjtZQUMzQix5QkFBeUIsYUFHekIsWUFBWTtZQUNaLHVCQUF1QjtZQUN2QixXQUFXO1lBQ1gsY0FBYztZQUNkLGtCQUFrQjtZQUNsQixlQUFlO1lBQ2YsYUFBYSxhQUdiLGdCQUFnQjtZQUNoQixxQkFBcUI7WUFDckIsYUFBYTtZQUNiLDJCQUEyQjtZQUMzQix5QkFBeUI7d0dBSWhCLGdCQUFnQixZQWpCekIsWUFBWTtZQUNaLHVCQUF1QjtZQUN2QixXQUFXO1lBQ1gsY0FBYztZQUNkLGtCQUFrQjtZQUNsQixlQUFlO1lBQ2YsYUFBYTs7MkZBV0osZ0JBQWdCO2tCQTFCNUIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osZ0JBQWdCO3dCQUNoQixxQkFBcUI7d0JBQ3JCLGFBQWE7d0JBQ2IsMkJBQTJCO3dCQUMzQix5QkFBeUI7cUJBQzFCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLHVCQUF1Qjt3QkFDdkIsV0FBVzt3QkFDWCxjQUFjO3dCQUNkLGtCQUFrQjt3QkFDbEIsZUFBZTt3QkFDZixhQUFhO3FCQUNkO29CQUNELE9BQU8sRUFBRTt3QkFDUCxnQkFBZ0I7d0JBQ2hCLHFCQUFxQjt3QkFDckIsYUFBYTt3QkFDYiwyQkFBMkI7d0JBQzNCLHlCQUF5QjtxQkFDMUI7aUJBRUYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtGb3Jtc01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtNYXRGb3JtRmllbGRNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHtNYXRJbnB1dE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHtNYXRTZWxlY3RNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdCc7XG5pbXBvcnQge01hdFRhYnNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYnMnO1xuaW1wb3J0IHtCcm93c2VyQW5pbWF0aW9uc01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlci9hbmltYXRpb25zJztcbmltcG9ydCB7Q29tbWFuZERpcmVjdGl2ZX0gZnJvbSAnLi9jb21tYW5kLmRpcmVjdGl2ZSc7XG5pbXBvcnQge0ZvY3VzQmluZGluZ0RpcmVjdGl2ZX0gZnJvbSAnLi9mb2N1cy1iaW5kaW5nLmRpcmVjdGl2ZSc7XG5pbXBvcnQge0dhcmJhZ2VDb2xsZWN0b3JEaXJlY3RpdmV9IGZyb20gJy4vZ2FyYmFnZS1jb2xsZWN0b3IuZGlyZWN0aXZlJztcbmltcG9ydCB7SGlnaGxpZ2h0VGV4dE1vZGVsRGlyZWN0aXZlfSBmcm9tICcuL2hpZ2hsaWdodC10ZXh0LW1vZGVsLmRpcmVjdGl2ZSc7XG5pbXBvcnQge0hpZ2hsaWdodFBpcGV9IGZyb20gJy4vaGlnaGxpZ2h0LnBpcGUnO1xuaW1wb3J0IHtSZXNpemVPYnNlcnZlckRpcmVjdGl2ZX0gZnJvbSBcIi4vcmVzaXplLW9ic2VydmVyLmRpcmVjdGl2ZVwiO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBDb21tYW5kRGlyZWN0aXZlLFxuICAgIEZvY3VzQmluZGluZ0RpcmVjdGl2ZSxcbiAgICBIaWdobGlnaHRQaXBlLFxuICAgIEhpZ2hsaWdodFRleHRNb2RlbERpcmVjdGl2ZSxcbiAgICBHYXJiYWdlQ29sbGVjdG9yRGlyZWN0aXZlXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgQnJvd3NlckFuaW1hdGlvbnNNb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgTWF0SW5wdXRNb2R1bGUsXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgIE1hdFNlbGVjdE1vZHVsZSxcbiAgICBNYXRUYWJzTW9kdWxlXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBDb21tYW5kRGlyZWN0aXZlLFxuICAgIEZvY3VzQmluZGluZ0RpcmVjdGl2ZSxcbiAgICBIaWdobGlnaHRQaXBlLFxuICAgIEhpZ2hsaWdodFRleHRNb2RlbERpcmVjdGl2ZSxcbiAgICBHYXJiYWdlQ29sbGVjdG9yRGlyZWN0aXZlXG4gIF1cblxufSlcbmV4cG9ydCBjbGFzcyBEaXJlY3RpdmVzTW9kdWxlIHtcbn1cbiJdfQ==
@@ -1,4 +1,5 @@
1
1
  import { Directive, ElementRef, EventEmitter, NgZone, Output } from '@angular/core';
2
+ import { MutableValueModel } from '@coolon/pectin';
2
3
  import ResizeObserver from 'resize-observer-polyfill';
3
4
  import { DisposableComponent } from '../components/disposable-component';
4
5
  import { Bounds } from '../components/types/bounds.class';
@@ -7,6 +8,7 @@ export class ResizeObserverDirective extends DisposableComponent {
7
8
  aupOnResize = new EventEmitter();
8
9
  elementRef = this.inject(ElementRef);
9
10
  ngZone = this.inject(NgZone);
11
+ _bounds$ = new MutableValueModel();
10
12
  ngAfterViewInit() {
11
13
  const element = this.elementRef.nativeElement;
12
14
  const ro = new ResizeObserver((entries, observer) => {
@@ -16,18 +18,23 @@ export class ResizeObserverDirective extends DisposableComponent {
16
18
  this.onDispose(() => ro.disconnect());
17
19
  setTimeout(() => this._updateBounds());
18
20
  }
21
+ get bounds$() {
22
+ return this._bounds$.readonly$;
23
+ }
19
24
  _updateBounds() {
20
- this.aupOnResize.emit(Bounds.ofElement(this.elementRef.nativeElement));
25
+ this._bounds$.value = Bounds.ofElement(this.elementRef.nativeElement);
26
+ this.aupOnResize.emit(this._bounds$.value);
21
27
  }
22
28
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ResizeObserverDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
23
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.9", type: ResizeObserverDirective, selector: "[aupOnResize]", outputs: { aupOnResize: "aupOnResize" }, usesInheritance: true, ngImport: i0 });
29
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.9", type: ResizeObserverDirective, isStandalone: true, selector: "[aupOnResize]", outputs: { aupOnResize: "aupOnResize" }, usesInheritance: true, ngImport: i0 });
24
30
  }
25
31
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ResizeObserverDirective, decorators: [{
26
32
  type: Directive,
27
33
  args: [{
28
- selector: "[aupOnResize]"
34
+ selector: "[aupOnResize]",
35
+ standalone: true
29
36
  }]
30
37
  }], propDecorators: { aupOnResize: [{
31
38
  type: Output
32
39
  }] } });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaXplLW9ic2VydmVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL2RpcmVjdGl2ZXMvcmVzaXplLW9ic2VydmVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWdCLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFakcsT0FBTyxjQUFjLE1BQU0sMEJBQTBCLENBQUM7QUFDdEQsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFDdkUsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLGtDQUFrQyxDQUFDOztBQU14RCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsbUJBQW1CO0lBRXBELFdBQVcsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO0lBRWhDLFVBQVUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3JDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBRWhELGVBQWU7UUFDYixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQztRQUM5QyxNQUFNLEVBQUUsR0FBRyxJQUFJLGNBQWMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsRUFBRTtZQUNsRCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQztRQUM5QyxDQUFDLENBQUMsQ0FBQztRQUNILEVBQUUsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDcEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztRQUN0QyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVPLGFBQWE7UUFDbkIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUE7SUFDeEUsQ0FBQzt1R0FuQlUsdUJBQXVCOzJGQUF2Qix1QkFBdUI7OzJGQUF2Qix1QkFBdUI7a0JBSG5DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFDLGVBQWU7aUJBQ3pCOzhCQUdXLFdBQVc7c0JBQXBCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FmdGVyVmlld0luaXQsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBOZ1pvbmUsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0RzbCwgR2FyYmFnZUNvbGxlY3RvciwgTXV0YWJsZVZhbHVlTW9kZWwsIFZhbHVlTW9kZWx9IGZyb20gJ0Bjb29sb24vcGVjdGluJztcbmltcG9ydCBSZXNpemVPYnNlcnZlciBmcm9tICdyZXNpemUtb2JzZXJ2ZXItcG9seWZpbGwnO1xuaW1wb3J0IHtEaXNwb3NhYmxlQ29tcG9uZW50fSBmcm9tICcuLi9jb21wb25lbnRzL2Rpc3Bvc2FibGUtY29tcG9uZW50JztcbmltcG9ydCB7Qm91bmRzfSBmcm9tICcuLi9jb21wb25lbnRzL3R5cGVzL2JvdW5kcy5jbGFzcyc7XG5pbXBvcnQge1BvaW50fSBmcm9tICcuLi9jb21wb25lbnRzL3R5cGVzL3BvaW50LmNsYXNzJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOlwiW2F1cE9uUmVzaXplXVwiXG59KVxuZXhwb3J0IGNsYXNzIFJlc2l6ZU9ic2VydmVyRGlyZWN0aXZlIGV4dGVuZHMgRGlzcG9zYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuXG4gIEBPdXRwdXQoKSBhdXBPblJlc2l6ZSA9IG5ldyBFdmVudEVtaXR0ZXI8Qm91bmRzPigpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBlbGVtZW50UmVmID0gdGhpcy5pbmplY3QoRWxlbWVudFJlZik7XG4gIHByb3RlY3RlZCByZWFkb25seSBuZ1pvbmUgPSB0aGlzLmluamVjdChOZ1pvbmUpO1xuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBjb25zdCBlbGVtZW50ID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgY29uc3Qgcm8gPSBuZXcgUmVzaXplT2JzZXJ2ZXIoKGVudHJpZXMsIG9ic2VydmVyKSA9PiB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4gdGhpcy5fdXBkYXRlQm91bmRzKCkpO1xuICAgIH0pO1xuICAgIHJvLm9ic2VydmUoZWxlbWVudCk7XG4gICAgdGhpcy5vbkRpc3Bvc2UoKCkgPT4gcm8uZGlzY29ubmVjdCgpKTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuX3VwZGF0ZUJvdW5kcygpKTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZUJvdW5kcygpIHtcbiAgICB0aGlzLmF1cE9uUmVzaXplLmVtaXQoQm91bmRzLm9mRWxlbWVudCh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCkpXG4gIH1cblxufVxuIl19
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzaXplLW9ic2VydmVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL2RpcmVjdGl2ZXMvcmVzaXplLW9ic2VydmVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWdCLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDakcsT0FBTyxFQUF3QixpQkFBaUIsRUFBYSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BGLE9BQU8sY0FBYyxNQUFNLDBCQUEwQixDQUFDO0FBQ3RELE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQzs7QUFPeEQsTUFBTSxPQUFPLHVCQUF3QixTQUFRLG1CQUFtQjtJQUVwRCxXQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztJQUVoQyxVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNyQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN4QyxRQUFRLEdBQUcsSUFBSSxpQkFBaUIsRUFBVSxDQUFDO0lBRW5ELGVBQWU7UUFDYixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQztRQUM5QyxNQUFNLEVBQUUsR0FBRyxJQUFJLGNBQWMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsRUFBRTtZQUNsRCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQztRQUM5QyxDQUFDLENBQUMsQ0FBQztRQUNILEVBQUUsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDcEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztRQUN0QyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQVEsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUM7SUFDbEMsQ0FBQztJQUVPLGFBQWE7UUFDbkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxDQUFBO1FBQ3JFLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDNUMsQ0FBQzt1R0F6QlUsdUJBQXVCOzJGQUF2Qix1QkFBdUI7OzJGQUF2Qix1QkFBdUI7a0JBSm5DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFDLGVBQWU7b0JBQ3hCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjs4QkFHVyxXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBZnRlclZpZXdJbml0LCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgTmdab25lLCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtEc2wsIEdhcmJhZ2VDb2xsZWN0b3IsIE11dGFibGVWYWx1ZU1vZGVsLCBWYWx1ZU1vZGVsfSBmcm9tICdAY29vbG9uL3BlY3Rpbic7XG5pbXBvcnQgUmVzaXplT2JzZXJ2ZXIgZnJvbSAncmVzaXplLW9ic2VydmVyLXBvbHlmaWxsJztcbmltcG9ydCB7RGlzcG9zYWJsZUNvbXBvbmVudH0gZnJvbSAnLi4vY29tcG9uZW50cy9kaXNwb3NhYmxlLWNvbXBvbmVudCc7XG5pbXBvcnQge0JvdW5kc30gZnJvbSAnLi4vY29tcG9uZW50cy90eXBlcy9ib3VuZHMuY2xhc3MnO1xuaW1wb3J0IHtQb2ludH0gZnJvbSAnLi4vY29tcG9uZW50cy90eXBlcy9wb2ludC5jbGFzcyc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjpcIlthdXBPblJlc2l6ZV1cIixcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBSZXNpemVPYnNlcnZlckRpcmVjdGl2ZSBleHRlbmRzIERpc3Bvc2FibGVDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcblxuICBAT3V0cHV0KCkgYXVwT25SZXNpemUgPSBuZXcgRXZlbnRFbWl0dGVyPEJvdW5kcz4oKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZWxlbWVudFJlZiA9IHRoaXMuaW5qZWN0KEVsZW1lbnRSZWYpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgbmdab25lID0gdGhpcy5pbmplY3QoTmdab25lKTtcbiAgcHJpdmF0ZSBfYm91bmRzJCA9IG5ldyBNdXRhYmxlVmFsdWVNb2RlbDxCb3VuZHM+KCk7XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICBjb25zdCBybyA9IG5ldyBSZXNpemVPYnNlcnZlcigoZW50cmllcywgb2JzZXJ2ZXIpID0+IHtcbiAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB0aGlzLl91cGRhdGVCb3VuZHMoKSk7XG4gICAgfSk7XG4gICAgcm8ub2JzZXJ2ZShlbGVtZW50KTtcbiAgICB0aGlzLm9uRGlzcG9zZSgoKSA9PiByby5kaXNjb25uZWN0KCkpO1xuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5fdXBkYXRlQm91bmRzKCkpO1xuICB9XG5cbiAgZ2V0IGJvdW5kcyQoKTpWYWx1ZU1vZGVsPEJvdW5kcz4ge1xuICAgIHJldHVybiAgdGhpcy5fYm91bmRzJC5yZWFkb25seSQ7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVCb3VuZHMoKSB7XG4gICAgdGhpcy5fYm91bmRzJC52YWx1ZSA9IEJvdW5kcy5vZkVsZW1lbnQodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpXG4gICAgdGhpcy5hdXBPblJlc2l6ZS5lbWl0KHRoaXMuX2JvdW5kcyQudmFsdWUpXG4gIH1cblxufVxuIl19
@@ -2,7 +2,7 @@ import { ObserversModule } from '@angular/cdk/observers';
2
2
  import * as i1$1 from '@angular/common';
3
3
  import { DOCUMENT, CommonModule } from '@angular/common';
4
4
  import * as i0 from '@angular/core';
5
- import { ElementRef, Directive, Inject, Host, Optional, Input, HostListener, inject, NgZone, Injectable, Pipe, EventEmitter, Output, NgModule, Component, ContentChild, HostBinding, ViewEncapsulation, InjectionToken, ViewChild, ViewChildren, SkipSelf, Self, ContentChildren, ComponentRef, Injector, PLATFORM_ID } from '@angular/core';
5
+ import { ElementRef, Directive, Inject, Host, Optional, Input, HostListener, inject, NgZone, Injectable, Pipe, NgModule, Component, ContentChild, HostBinding, ViewEncapsulation, InjectionToken, ViewChild, ViewChildren, EventEmitter, Output, SkipSelf, Self, ContentChildren, ComponentRef, Injector, PLATFORM_ID } from '@angular/core';
6
6
  import * as i2$4 from '@angular/forms';
7
7
  import { FormsModule } from '@angular/forms';
8
8
  import * as i4$2 from '@angular/material/form-field';
@@ -44,13 +44,13 @@ import { __decorate, __param, __metadata } from 'tslib';
44
44
  import * as i1 from '@angular/platform-browser';
45
45
  import escapeStringRegexp from 'escape-string-regexp';
46
46
  import { isEmpty, isString, isFunction, isNil, isInteger, isObject, isEqual, join, first, uniq, last as last$1, isNumber, isNaN as isNaN$1 } from 'lodash';
47
- import ResizeObserver from 'resize-observer-polyfill';
48
47
  import { marked } from 'marked';
49
48
  import { Memoize } from '@typescript-plus/fast-memoize-decorator';
50
49
  import { Enum } from 'typescript-string-enums';
51
50
  import { lang as lang$1, assert as assert$1, Stringy, Klass, Opts } from '@coolon/typescript-utilities';
52
51
  import * as i5 from '@angular/material/core';
53
52
  import { produce } from 'immer';
53
+ import ResizeObserver from 'resize-observer-polyfill';
54
54
  import { isFunction as isFunction$1, isNil as isNil$1, isEmpty as isEmpty$1, last, findLast } from 'lodash-es';
55
55
  import { generateKeyBetween } from 'fractional-indexing';
56
56
  import * as i5$1 from '@angular/cdk/a11y';
@@ -504,91 +504,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
504
504
  type: Optional
505
505
  }] }]; } });
506
506
 
507
- class Dimension {
508
- width;
509
- height;
510
- constructor(width, height) {
511
- this.width = width;
512
- this.height = height;
513
- }
514
- }
515
-
516
- class Point {
517
- x;
518
- y;
519
- static from(data) {
520
- return new Point(data.x, data.y);
521
- }
522
- constructor(x, y) {
523
- this.x = x;
524
- this.y = y;
525
- }
526
- translate(x, y) {
527
- return new Point(this.x + x, this.y + y);
528
- }
529
- }
530
-
531
- class Bounds extends Dimension {
532
- top;
533
- left;
534
- constructor(top, left, width, height) {
535
- super(width, height);
536
- this.top = top;
537
- this.left = left;
538
- }
539
- relativePositionOf(point) {
540
- if (point instanceof MouseEvent) {
541
- return new Point(point.clientX - this.left, point.clientY - this.top);
542
- }
543
- else {
544
- return new Point(point.x - this.left, point.y - this.top);
545
- }
546
- }
547
- }
548
- (function (Bounds) {
549
- function ofElement(element) {
550
- const rect = element.getBoundingClientRect();
551
- return new Bounds(rect.top, rect.left, rect.width, rect.height);
552
- }
553
- Bounds.ofElement = ofElement;
554
- })(Bounds || (Bounds = {}));
555
-
556
- class ResizeObserverDirective extends DisposableComponent {
557
- aupOnResize = new EventEmitter();
558
- elementRef = this.inject(ElementRef);
559
- ngZone = this.inject(NgZone);
560
- ngAfterViewInit() {
561
- const element = this.elementRef.nativeElement;
562
- const ro = new ResizeObserver((entries, observer) => {
563
- this.ngZone.run(() => this._updateBounds());
564
- });
565
- ro.observe(element);
566
- this.onDispose(() => ro.disconnect());
567
- setTimeout(() => this._updateBounds());
568
- }
569
- _updateBounds() {
570
- this.aupOnResize.emit(Bounds.ofElement(this.elementRef.nativeElement));
571
- }
572
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ResizeObserverDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
573
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.9", type: ResizeObserverDirective, selector: "[aupOnResize]", outputs: { aupOnResize: "aupOnResize" }, usesInheritance: true, ngImport: i0 });
574
- }
575
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ResizeObserverDirective, decorators: [{
576
- type: Directive,
577
- args: [{
578
- selector: "[aupOnResize]"
579
- }]
580
- }], propDecorators: { aupOnResize: [{
581
- type: Output
582
- }] } });
583
-
584
507
  class DirectivesModule {
585
508
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: DirectivesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
586
509
  static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.9", ngImport: i0, type: DirectivesModule, declarations: [CommandDirective,
587
510
  FocusBindingDirective,
588
511
  HighlightPipe,
589
512
  HighlightTextModelDirective,
590
- GarbageCollectorDirective,
591
- ResizeObserverDirective], imports: [CommonModule,
513
+ GarbageCollectorDirective], imports: [CommonModule,
592
514
  BrowserAnimationsModule,
593
515
  FormsModule,
594
516
  MatInputModule,
@@ -598,8 +520,7 @@ class DirectivesModule {
598
520
  FocusBindingDirective,
599
521
  HighlightPipe,
600
522
  HighlightTextModelDirective,
601
- GarbageCollectorDirective,
602
- ResizeObserverDirective] });
523
+ GarbageCollectorDirective] });
603
524
  static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: DirectivesModule, imports: [CommonModule,
604
525
  BrowserAnimationsModule,
605
526
  FormsModule,
@@ -616,8 +537,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
616
537
  FocusBindingDirective,
617
538
  HighlightPipe,
618
539
  HighlightTextModelDirective,
619
- GarbageCollectorDirective,
620
- ResizeObserverDirective
540
+ GarbageCollectorDirective
621
541
  ],
622
542
  imports: [
623
543
  CommonModule,
@@ -633,8 +553,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
633
553
  FocusBindingDirective,
634
554
  HighlightPipe,
635
555
  HighlightTextModelDirective,
636
- GarbageCollectorDirective,
637
- ResizeObserverDirective
556
+ GarbageCollectorDirective
638
557
  ]
639
558
  }]
640
559
  }] });
@@ -3486,6 +3405,55 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
3486
3405
  type: Input
3487
3406
  }] } });
3488
3407
 
3408
+ class Dimension {
3409
+ width;
3410
+ height;
3411
+ constructor(width, height) {
3412
+ this.width = width;
3413
+ this.height = height;
3414
+ }
3415
+ }
3416
+
3417
+ class Point {
3418
+ x;
3419
+ y;
3420
+ static from(data) {
3421
+ return new Point(data.x, data.y);
3422
+ }
3423
+ constructor(x, y) {
3424
+ this.x = x;
3425
+ this.y = y;
3426
+ }
3427
+ translate(x, y) {
3428
+ return new Point(this.x + x, this.y + y);
3429
+ }
3430
+ }
3431
+
3432
+ class Bounds extends Dimension {
3433
+ top;
3434
+ left;
3435
+ constructor(top, left, width, height) {
3436
+ super(width, height);
3437
+ this.top = top;
3438
+ this.left = left;
3439
+ }
3440
+ relativePositionOf(point) {
3441
+ if (point instanceof MouseEvent) {
3442
+ return new Point(point.clientX - this.left, point.clientY - this.top);
3443
+ }
3444
+ else {
3445
+ return new Point(point.x - this.left, point.y - this.top);
3446
+ }
3447
+ }
3448
+ }
3449
+ (function (Bounds) {
3450
+ function ofElement(element) {
3451
+ const rect = element.getBoundingClientRect();
3452
+ return new Bounds(rect.top, rect.left, rect.width, rect.height);
3453
+ }
3454
+ Bounds.ofElement = ofElement;
3455
+ })(Bounds || (Bounds = {}));
3456
+
3489
3457
  class ResizeAwareComponent extends DisposableComponent {
3490
3458
  elementRef = this.inject(ElementRef);
3491
3459
  ngZone = this.inject(NgZone);
@@ -11394,6 +11362,40 @@ const slideDownAndRightOnEnterAnimation = trigger('slideDownAndRightOnEnter', [
11394
11362
  * @file Automatically generated by barrelsby.
11395
11363
  */
11396
11364
 
11365
+ class ResizeObserverDirective extends DisposableComponent {
11366
+ aupOnResize = new EventEmitter();
11367
+ elementRef = this.inject(ElementRef);
11368
+ ngZone = this.inject(NgZone);
11369
+ _bounds$ = new MutableValueModel();
11370
+ ngAfterViewInit() {
11371
+ const element = this.elementRef.nativeElement;
11372
+ const ro = new ResizeObserver((entries, observer) => {
11373
+ this.ngZone.run(() => this._updateBounds());
11374
+ });
11375
+ ro.observe(element);
11376
+ this.onDispose(() => ro.disconnect());
11377
+ setTimeout(() => this._updateBounds());
11378
+ }
11379
+ get bounds$() {
11380
+ return this._bounds$.readonly$;
11381
+ }
11382
+ _updateBounds() {
11383
+ this._bounds$.value = Bounds.ofElement(this.elementRef.nativeElement);
11384
+ this.aupOnResize.emit(this._bounds$.value);
11385
+ }
11386
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ResizeObserverDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
11387
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.9", type: ResizeObserverDirective, isStandalone: true, selector: "[aupOnResize]", outputs: { aupOnResize: "aupOnResize" }, usesInheritance: true, ngImport: i0 });
11388
+ }
11389
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ResizeObserverDirective, decorators: [{
11390
+ type: Directive,
11391
+ args: [{
11392
+ selector: "[aupOnResize]",
11393
+ standalone: true
11394
+ }]
11395
+ }], propDecorators: { aupOnResize: [{
11396
+ type: Output
11397
+ }] } });
11398
+
11397
11399
  /**
11398
11400
  * @file Automatically generated by barrelsby.
11399
11401
  */