@dereekb/dbx-web 9.5.4 → 9.5.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/mapbox/lib/mapbox.layout.component.mjs +2 -2
- package/fesm2015/dereekb-dbx-web-mapbox.mjs +2 -2
- package/fesm2015/dereekb-dbx-web-mapbox.mjs.map +1 -1
- package/fesm2020/dereekb-dbx-web-mapbox.mjs +2 -2
- package/fesm2020/dereekb-dbx-web-mapbox.mjs.map +1 -1
- package/mapbox/esm2020/lib/mapbox.layout.component.mjs +2 -2
- package/mapbox/fesm2015/dereekb-dbx-web-mapbox.mjs +2 -2
- package/mapbox/fesm2015/dereekb-dbx-web-mapbox.mjs.map +1 -1
- package/mapbox/fesm2020/dereekb-dbx-web-mapbox.mjs +2 -2
- package/mapbox/fesm2020/dereekb-dbx-web-mapbox.mjs.map +1 -1
- package/mapbox/package.json +3 -3
- package/package.json +3 -3
|
@@ -112,10 +112,10 @@ export class DbxMapboxLayoutComponent extends SubscriptionObject {
|
|
|
112
112
|
}
|
|
113
113
|
}
|
|
114
114
|
DbxMapboxLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: DbxMapboxLayoutComponent, deps: [{ token: i1.DbxMapboxMapStore }], target: i0.ɵɵFactoryTarget.Component });
|
|
115
|
-
DbxMapboxLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.2", type: DbxMapboxLayoutComponent, selector: "dbx-mapbox-layout", inputs: { side: "side", opened: "opened", drawerColor: "drawerColor" }, viewQueries: [{ propertyName: "container", first: true, predicate: MatDrawerContainer, descendants: true }, { propertyName: "content", first: true, predicate: ["content"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-drawer-container class=\"dbx-mapbox-layout-container\" [ngClass]=\"(drawerClasses$ | async) || ''\" [hasBackdrop]=\"false\">\n <mat-drawer class=\"dbx-mapbox-layout-drawer\" #drawer [opened]=\"opened$ | async\" mode=\"push\" [position]=\"(position$ | async) || 'end'\">\n <div class=\"dbx-mapbox-layout-drawer-content\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <ng-content select=\"[drawer]\"></ng-content>\n <dbx-mapbox-layout-drawer></dbx-mapbox-layout-drawer>\n </div>\n </mat-drawer>\n <mat-drawer-content #content class=\"dbx-mapbox-layout-content\" (resized)=\"onResized($event)\">\n <button mat-icon-button (click)=\"toggleDrawer()\" class=\"dbx-mapbox-layout-drawer-button\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <mat-icon>{{ buttonIcon$ | async }}</mat-icon>\n </button>\n <ng-content></ng-content>\n </mat-drawer-content>\n</mat-drawer-container>\n", styles: [".dbx-mapbox-layout-container{height:100%;max-width:100%}.dbx-mapbox-layout-container .mat-drawer-container{height:100%}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer-content{height:100%;width:100%;overflow:hidden}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{position:absolute;z-index:2;top:40%;border:none;display:flex;overflow:hidden}.left-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{left:0;border-radius:0 20px 20px 0}.right-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{right:0;border-radius:20px 0 0 20px}.has-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.has-drawer-content.open-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.no-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:0px}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button mat-icon{padding-left:8px}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i3.MatDrawer, selector: "mat-drawer", inputs: ["position", "mode", "disableClose", "autoFocus", "opened"], outputs: ["openedChange", "opened", "openedStart", "closed", "closedStart", "positionChanged"], exportAs: ["matDrawer"] }, { kind: "component", type: i3.MatDrawerContainer, selector: "mat-drawer-container", inputs: ["autosize", "hasBackdrop"], outputs: ["backdropClick"], exportAs: ["matDrawerContainer"] }, { kind: "component", type: i3.MatDrawerContent, selector: "mat-drawer-content" }, { kind: "component", type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i6.ResizedDirective, selector: "[resized]", outputs: ["resized"] }, { kind: "component", type: i7.DbxMapboxLayoutDrawerComponent, selector: "dbx-mapbox-layout-drawer" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] });
|
|
115
|
+
DbxMapboxLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.2", type: DbxMapboxLayoutComponent, selector: "dbx-mapbox-layout", inputs: { side: "side", opened: "opened", drawerColor: "drawerColor" }, viewQueries: [{ propertyName: "container", first: true, predicate: MatDrawerContainer, descendants: true }, { propertyName: "content", first: true, predicate: ["content"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-drawer-container class=\"dbx-mapbox-layout-container\" [ngClass]=\"(drawerClasses$ | async) || ''\" [hasBackdrop]=\"false\">\n <mat-drawer class=\"dbx-mapbox-layout-drawer\" #drawer [opened]=\"opened$ | async\" mode=\"push\" [position]=\"(position$ | async) || 'end'\">\n <div class=\"dbx-mapbox-layout-drawer-content\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <ng-content select=\"[drawer]\"></ng-content>\n <dbx-mapbox-layout-drawer></dbx-mapbox-layout-drawer>\n </div>\n </mat-drawer>\n <mat-drawer-content #content class=\"dbx-mapbox-layout-content\" (resized)=\"onResized($event)\">\n <button mat-icon-button (click)=\"toggleDrawer()\" class=\"dbx-mapbox-layout-drawer-button\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <mat-icon>{{ buttonIcon$ | async }}</mat-icon>\n </button>\n <ng-content></ng-content>\n </mat-drawer-content>\n</mat-drawer-container>\n", styles: [".dbx-mapbox-layout-container{height:100%;max-width:100%}.dbx-mapbox-layout-container .mat-drawer-container{height:100%}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer{max-width:calc(100% - var(--dbx-mapbox-min-width-var, 60px))}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer-content{height:100%;width:100%;overflow:hidden}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{position:absolute;z-index:2;top:40%;border:none;display:flex;overflow:hidden}.left-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{left:0;border-radius:0 20px 20px 0}.right-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{right:0;border-radius:20px 0 0 20px}.has-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.has-drawer-content.open-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.no-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:0px}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button mat-icon{padding-left:8px}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i3.MatDrawer, selector: "mat-drawer", inputs: ["position", "mode", "disableClose", "autoFocus", "opened"], outputs: ["openedChange", "opened", "openedStart", "closed", "closedStart", "positionChanged"], exportAs: ["matDrawer"] }, { kind: "component", type: i3.MatDrawerContainer, selector: "mat-drawer-container", inputs: ["autosize", "hasBackdrop"], outputs: ["backdropClick"], exportAs: ["matDrawerContainer"] }, { kind: "component", type: i3.MatDrawerContent, selector: "mat-drawer-content" }, { kind: "component", type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i6.ResizedDirective, selector: "[resized]", outputs: ["resized"] }, { kind: "component", type: i7.DbxMapboxLayoutDrawerComponent, selector: "dbx-mapbox-layout-drawer" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] });
|
|
116
116
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: DbxMapboxLayoutComponent, decorators: [{
|
|
117
117
|
type: Component,
|
|
118
|
-
args: [{ selector: 'dbx-mapbox-layout', template: "<mat-drawer-container class=\"dbx-mapbox-layout-container\" [ngClass]=\"(drawerClasses$ | async) || ''\" [hasBackdrop]=\"false\">\n <mat-drawer class=\"dbx-mapbox-layout-drawer\" #drawer [opened]=\"opened$ | async\" mode=\"push\" [position]=\"(position$ | async) || 'end'\">\n <div class=\"dbx-mapbox-layout-drawer-content\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <ng-content select=\"[drawer]\"></ng-content>\n <dbx-mapbox-layout-drawer></dbx-mapbox-layout-drawer>\n </div>\n </mat-drawer>\n <mat-drawer-content #content class=\"dbx-mapbox-layout-content\" (resized)=\"onResized($event)\">\n <button mat-icon-button (click)=\"toggleDrawer()\" class=\"dbx-mapbox-layout-drawer-button\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <mat-icon>{{ buttonIcon$ | async }}</mat-icon>\n </button>\n <ng-content></ng-content>\n </mat-drawer-content>\n</mat-drawer-container>\n", styles: [".dbx-mapbox-layout-container{height:100%;max-width:100%}.dbx-mapbox-layout-container .mat-drawer-container{height:100%}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer-content{height:100%;width:100%;overflow:hidden}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{position:absolute;z-index:2;top:40%;border:none;display:flex;overflow:hidden}.left-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{left:0;border-radius:0 20px 20px 0}.right-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{right:0;border-radius:20px 0 0 20px}.has-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.has-drawer-content.open-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.no-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:0px}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button mat-icon{padding-left:8px}\n"] }]
|
|
118
|
+
args: [{ selector: 'dbx-mapbox-layout', template: "<mat-drawer-container class=\"dbx-mapbox-layout-container\" [ngClass]=\"(drawerClasses$ | async) || ''\" [hasBackdrop]=\"false\">\n <mat-drawer class=\"dbx-mapbox-layout-drawer\" #drawer [opened]=\"opened$ | async\" mode=\"push\" [position]=\"(position$ | async) || 'end'\">\n <div class=\"dbx-mapbox-layout-drawer-content\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <ng-content select=\"[drawer]\"></ng-content>\n <dbx-mapbox-layout-drawer></dbx-mapbox-layout-drawer>\n </div>\n </mat-drawer>\n <mat-drawer-content #content class=\"dbx-mapbox-layout-content\" (resized)=\"onResized($event)\">\n <button mat-icon-button (click)=\"toggleDrawer()\" class=\"dbx-mapbox-layout-drawer-button\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <mat-icon>{{ buttonIcon$ | async }}</mat-icon>\n </button>\n <ng-content></ng-content>\n </mat-drawer-content>\n</mat-drawer-container>\n", styles: [".dbx-mapbox-layout-container{height:100%;max-width:100%}.dbx-mapbox-layout-container .mat-drawer-container{height:100%}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer{max-width:calc(100% - var(--dbx-mapbox-min-width-var, 60px))}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer-content{height:100%;width:100%;overflow:hidden}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{position:absolute;z-index:2;top:40%;border:none;display:flex;overflow:hidden}.left-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{left:0;border-radius:0 20px 20px 0}.right-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{right:0;border-radius:20px 0 0 20px}.has-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.has-drawer-content.open-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.no-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:0px}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button mat-icon{padding-left:8px}\n"] }]
|
|
119
119
|
}], ctorParameters: function () { return [{ type: i1.DbxMapboxMapStore }]; }, propDecorators: { container: [{
|
|
120
120
|
type: ViewChild,
|
|
121
121
|
args: [MatDrawerContainer]
|
|
@@ -537,10 +537,10 @@ class DbxMapboxLayoutComponent extends SubscriptionObject {
|
|
|
537
537
|
}
|
|
538
538
|
}
|
|
539
539
|
DbxMapboxLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: DbxMapboxLayoutComponent, deps: [{ token: DbxMapboxMapStore }], target: i0.ɵɵFactoryTarget.Component });
|
|
540
|
-
DbxMapboxLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.2", type: DbxMapboxLayoutComponent, selector: "dbx-mapbox-layout", inputs: { side: "side", opened: "opened", drawerColor: "drawerColor" }, viewQueries: [{ propertyName: "container", first: true, predicate: MatDrawerContainer, descendants: true }, { propertyName: "content", first: true, predicate: ["content"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-drawer-container class=\"dbx-mapbox-layout-container\" [ngClass]=\"(drawerClasses$ | async) || ''\" [hasBackdrop]=\"false\">\n <mat-drawer class=\"dbx-mapbox-layout-drawer\" #drawer [opened]=\"opened$ | async\" mode=\"push\" [position]=\"(position$ | async) || 'end'\">\n <div class=\"dbx-mapbox-layout-drawer-content\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <ng-content select=\"[drawer]\"></ng-content>\n <dbx-mapbox-layout-drawer></dbx-mapbox-layout-drawer>\n </div>\n </mat-drawer>\n <mat-drawer-content #content class=\"dbx-mapbox-layout-content\" (resized)=\"onResized($event)\">\n <button mat-icon-button (click)=\"toggleDrawer()\" class=\"dbx-mapbox-layout-drawer-button\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <mat-icon>{{ buttonIcon$ | async }}</mat-icon>\n </button>\n <ng-content></ng-content>\n </mat-drawer-content>\n</mat-drawer-container>\n", styles: [".dbx-mapbox-layout-container{height:100%;max-width:100%}.dbx-mapbox-layout-container .mat-drawer-container{height:100%}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer-content{height:100%;width:100%;overflow:hidden}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{position:absolute;z-index:2;top:40%;border:none;display:flex;overflow:hidden}.left-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{left:0;border-radius:0 20px 20px 0}.right-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{right:0;border-radius:20px 0 0 20px}.has-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.has-drawer-content.open-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.no-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:0px}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button mat-icon{padding-left:8px}\n"], dependencies: [{ kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i3.MatDrawer, selector: "mat-drawer", inputs: ["position", "mode", "disableClose", "autoFocus", "opened"], outputs: ["openedChange", "opened", "openedStart", "closed", "closedStart", "positionChanged"], exportAs: ["matDrawer"] }, { kind: "component", type: i3.MatDrawerContainer, selector: "mat-drawer-container", inputs: ["autosize", "hasBackdrop"], outputs: ["backdropClick"], exportAs: ["matDrawerContainer"] }, { kind: "component", type: i3.MatDrawerContent, selector: "mat-drawer-content" }, { kind: "component", type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i6.ResizedDirective, selector: "[resized]", outputs: ["resized"] }, { kind: "component", type: DbxMapboxLayoutDrawerComponent, selector: "dbx-mapbox-layout-drawer" }, { kind: "pipe", type: i2$1.AsyncPipe, name: "async" }] });
|
|
540
|
+
DbxMapboxLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.2", type: DbxMapboxLayoutComponent, selector: "dbx-mapbox-layout", inputs: { side: "side", opened: "opened", drawerColor: "drawerColor" }, viewQueries: [{ propertyName: "container", first: true, predicate: MatDrawerContainer, descendants: true }, { propertyName: "content", first: true, predicate: ["content"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-drawer-container class=\"dbx-mapbox-layout-container\" [ngClass]=\"(drawerClasses$ | async) || ''\" [hasBackdrop]=\"false\">\n <mat-drawer class=\"dbx-mapbox-layout-drawer\" #drawer [opened]=\"opened$ | async\" mode=\"push\" [position]=\"(position$ | async) || 'end'\">\n <div class=\"dbx-mapbox-layout-drawer-content\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <ng-content select=\"[drawer]\"></ng-content>\n <dbx-mapbox-layout-drawer></dbx-mapbox-layout-drawer>\n </div>\n </mat-drawer>\n <mat-drawer-content #content class=\"dbx-mapbox-layout-content\" (resized)=\"onResized($event)\">\n <button mat-icon-button (click)=\"toggleDrawer()\" class=\"dbx-mapbox-layout-drawer-button\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <mat-icon>{{ buttonIcon$ | async }}</mat-icon>\n </button>\n <ng-content></ng-content>\n </mat-drawer-content>\n</mat-drawer-container>\n", styles: [".dbx-mapbox-layout-container{height:100%;max-width:100%}.dbx-mapbox-layout-container .mat-drawer-container{height:100%}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer{max-width:calc(100% - var(--dbx-mapbox-min-width-var, 60px))}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer-content{height:100%;width:100%;overflow:hidden}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{position:absolute;z-index:2;top:40%;border:none;display:flex;overflow:hidden}.left-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{left:0;border-radius:0 20px 20px 0}.right-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{right:0;border-radius:20px 0 0 20px}.has-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.has-drawer-content.open-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.no-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:0px}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button mat-icon{padding-left:8px}\n"], dependencies: [{ kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i3.MatDrawer, selector: "mat-drawer", inputs: ["position", "mode", "disableClose", "autoFocus", "opened"], outputs: ["openedChange", "opened", "openedStart", "closed", "closedStart", "positionChanged"], exportAs: ["matDrawer"] }, { kind: "component", type: i3.MatDrawerContainer, selector: "mat-drawer-container", inputs: ["autosize", "hasBackdrop"], outputs: ["backdropClick"], exportAs: ["matDrawerContainer"] }, { kind: "component", type: i3.MatDrawerContent, selector: "mat-drawer-content" }, { kind: "component", type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i6.ResizedDirective, selector: "[resized]", outputs: ["resized"] }, { kind: "component", type: DbxMapboxLayoutDrawerComponent, selector: "dbx-mapbox-layout-drawer" }, { kind: "pipe", type: i2$1.AsyncPipe, name: "async" }] });
|
|
541
541
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: DbxMapboxLayoutComponent, decorators: [{
|
|
542
542
|
type: Component,
|
|
543
|
-
args: [{ selector: 'dbx-mapbox-layout', template: "<mat-drawer-container class=\"dbx-mapbox-layout-container\" [ngClass]=\"(drawerClasses$ | async) || ''\" [hasBackdrop]=\"false\">\n <mat-drawer class=\"dbx-mapbox-layout-drawer\" #drawer [opened]=\"opened$ | async\" mode=\"push\" [position]=\"(position$ | async) || 'end'\">\n <div class=\"dbx-mapbox-layout-drawer-content\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <ng-content select=\"[drawer]\"></ng-content>\n <dbx-mapbox-layout-drawer></dbx-mapbox-layout-drawer>\n </div>\n </mat-drawer>\n <mat-drawer-content #content class=\"dbx-mapbox-layout-content\" (resized)=\"onResized($event)\">\n <button mat-icon-button (click)=\"toggleDrawer()\" class=\"dbx-mapbox-layout-drawer-button\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <mat-icon>{{ buttonIcon$ | async }}</mat-icon>\n </button>\n <ng-content></ng-content>\n </mat-drawer-content>\n</mat-drawer-container>\n", styles: [".dbx-mapbox-layout-container{height:100%;max-width:100%}.dbx-mapbox-layout-container .mat-drawer-container{height:100%}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer-content{height:100%;width:100%;overflow:hidden}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{position:absolute;z-index:2;top:40%;border:none;display:flex;overflow:hidden}.left-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{left:0;border-radius:0 20px 20px 0}.right-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{right:0;border-radius:20px 0 0 20px}.has-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.has-drawer-content.open-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.no-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:0px}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button mat-icon{padding-left:8px}\n"] }]
|
|
543
|
+
args: [{ selector: 'dbx-mapbox-layout', template: "<mat-drawer-container class=\"dbx-mapbox-layout-container\" [ngClass]=\"(drawerClasses$ | async) || ''\" [hasBackdrop]=\"false\">\n <mat-drawer class=\"dbx-mapbox-layout-drawer\" #drawer [opened]=\"opened$ | async\" mode=\"push\" [position]=\"(position$ | async) || 'end'\">\n <div class=\"dbx-mapbox-layout-drawer-content\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <ng-content select=\"[drawer]\"></ng-content>\n <dbx-mapbox-layout-drawer></dbx-mapbox-layout-drawer>\n </div>\n </mat-drawer>\n <mat-drawer-content #content class=\"dbx-mapbox-layout-content\" (resized)=\"onResized($event)\">\n <button mat-icon-button (click)=\"toggleDrawer()\" class=\"dbx-mapbox-layout-drawer-button\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <mat-icon>{{ buttonIcon$ | async }}</mat-icon>\n </button>\n <ng-content></ng-content>\n </mat-drawer-content>\n</mat-drawer-container>\n", styles: [".dbx-mapbox-layout-container{height:100%;max-width:100%}.dbx-mapbox-layout-container .mat-drawer-container{height:100%}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer{max-width:calc(100% - var(--dbx-mapbox-min-width-var, 60px))}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer-content{height:100%;width:100%;overflow:hidden}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{position:absolute;z-index:2;top:40%;border:none;display:flex;overflow:hidden}.left-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{left:0;border-radius:0 20px 20px 0}.right-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{right:0;border-radius:20px 0 0 20px}.has-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.has-drawer-content.open-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.no-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:0px}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button mat-icon{padding-left:8px}\n"] }]
|
|
544
544
|
}], ctorParameters: function () { return [{ type: DbxMapboxMapStore }]; }, propDecorators: { container: [{
|
|
545
545
|
type: ViewChild,
|
|
546
546
|
args: [MatDrawerContainer]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dereekb-dbx-web-mapbox.mjs","sources":["../../../../packages/dbx-web/mapbox/src/lib/mapbox.service.ts","../../../../packages/dbx-web/mapbox/src/lib/mapbox.store.ts","../../../../packages/dbx-web/mapbox/src/lib/mapbox.store.map.directive.ts","../../../../packages/dbx-web/mapbox/src/lib/mapbox.layout.drawer.component.ts","../../../../packages/dbx-web/mapbox/src/lib/mapbox.layout.drawer.component.html","../../../../packages/dbx-web/mapbox/src/lib/mapbox.layout.component.ts","../../../../packages/dbx-web/mapbox/src/lib/mapbox.layout.component.html","../../../../packages/dbx-web/mapbox/src/lib/mapbox.menu.component.ts","../../../../packages/dbx-web/mapbox/src/lib/mapbox.module.ts","../../../../packages/dbx-web/mapbox/src/lib/mapbox.ts","../../../../packages/dbx-web/mapbox/src/dereekb-dbx-web-mapbox.ts"],"sourcesContent":["import { Injectable, Optional } from '@angular/core';\nimport { LatLngPointInput, Milliseconds } from '@dereekb/util';\nimport { MapboxOptions } from 'mapbox-gl';\nimport { KnownMapboxStyle, MapboxZoomLevel } from './mapbox';\n\nexport class DbxMapboxConfig {\n readonly defaultStyle?: MapboxOptions['style'];\n readonly defaultZoom?: MapboxZoomLevel;\n readonly defaultCenter?: LatLngPointInput;\n readonly defaultStoreRefreshPeriod?: number;\n}\n\nexport const DEFAULT_MAPBOX_STYLE: KnownMapboxStyle = 'mapbox://styles/mapbox/streets-v11';\nexport const DEFAULT_MAPBOX_CENTER: LatLngPointInput = [30.2690138665, -97.7408297965];\nexport const DEFAULT_MAPBOX_ZOOM: MapboxZoomLevel = 12;\nexport const DEFAULT_MAPBOX_MAP_STORE_TIMER_REFRESH_PERIOD: Milliseconds = 200;\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DbxMapboxService {\n private readonly _config: DbxMapboxConfig;\n\n constructor(@Optional() config: DbxMapboxConfig) {\n this._config = config ?? {};\n }\n\n get defaultStyle() {\n return this._config.defaultStyle ?? DEFAULT_MAPBOX_STYLE;\n }\n\n get defaultZoom(): MapboxZoomLevel {\n return this._config.defaultZoom ?? DEFAULT_MAPBOX_ZOOM;\n }\n\n get defaultCenter(): LatLngPointInput {\n return this._config.defaultCenter ?? DEFAULT_MAPBOX_CENTER;\n }\n\n get mapboxMapStoreTimerRefreshPeriod(): number {\n return this._config.defaultStoreRefreshPeriod ?? DEFAULT_MAPBOX_MAP_STORE_TIMER_REFRESH_PERIOD;\n }\n}\n","import { cleanup, filterMaybe, onTrueToFalse } from '@dereekb/rxjs';\nimport { Inject, Injectable, OnDestroy } from '@angular/core';\nimport { isSameLatLngBound, isSameLatLngPoint, IsWithinLatLngBoundFunction, isWithinLatLngBoundFunction, LatLngBound, latLngBoundFunction, LatLngPointInput, LatLngPoint, latLngPointFunction, Maybe, OverlapsLatLngBoundFunction, overlapsLatLngBoundFunction, diffLatLngBoundPoints, latLngBoundCenterPoint, addLatLngPoints } from '@dereekb/util';\nimport { ComponentStore } from '@ngrx/component-store';\nimport { MapService } from 'ngx-mapbox-gl';\nimport { defaultIfEmpty, distinctUntilChanged, filter, map, shareReplay, switchMap, tap, NEVER, Observable, of, Subscription, startWith, interval, first, combineLatest } from 'rxjs';\nimport * as MapboxGl from 'mapbox-gl';\nimport { DbxMapboxClickEvent, KnownMapboxStyle, MapboxBearing, MapboxEaseTo, MapboxFitBounds, MapboxFlyTo, MapboxJumpTo, MapboxResetNorth, MapboxResetNorthPitch, MapboxRotateTo, MapboxSnapToNorth, MapboxStyleConfig, MapboxZoomLevel } from './mapbox';\nimport { DbxMapboxService } from './mapbox.service';\nimport { DbxInjectionComponentConfig } from '@dereekb/dbx-core';\n\nexport type MapboxMapLifecycleState = 'init' | 'load' | 'render' | 'idle';\nexport type MapboxMapMoveState = 'init' | 'idle' | 'moving';\nexport type MapboxMapZoomState = 'init' | 'idle' | 'zooming';\nexport type MapboxMapRotateState = 'init' | 'idle' | 'rotating';\n\nexport interface StringMapboxListenerPair {\n type: string;\n listener: (ev: MapboxGl.EventData) => void;\n}\n\nexport interface TypedMapboxListenerPair<T extends keyof MapboxGl.MapEventType> {\n type: T;\n listener: (ev: MapboxGl.MapEventType[T] & MapboxGl.EventData) => void;\n}\n\nexport interface DbxMapboxMarginCalculationSizing {\n leftMargin: number;\n rightMargin: number;\n fullWidth: number;\n}\n\nexport interface DbxMapboxStoreState {\n /**\n * Current MapService being utilized.\n */\n mapService?: Maybe<MapService>;\n lifecycleState: MapboxMapLifecycleState;\n moveState: MapboxMapMoveState;\n zoomState: MapboxMapZoomState;\n rotateState: MapboxMapRotateState;\n /**\n * Latest click event\n */\n clickEvent?: Maybe<DbxMapboxClickEvent>;\n /**\n * Latest double-click event\n */\n doubleClickEvent?: Maybe<DbxMapboxClickEvent>;\n /**\n * Latest contextmenu event.\n */\n rightClickEvent?: Maybe<DbxMapboxClickEvent>;\n /**\n * Whether or not to retain content between resets.\n *\n * True by default.\n */\n retainContent: boolean;\n /**\n * Custom content configuration.\n */\n content?: Maybe<DbxInjectionComponentConfig<unknown>>;\n /**\n * Latest error\n */\n error?: Maybe<Error>;\n}\n\n/**\n * Store used for retrieving information.\n */\n@Injectable()\nexport class DbxMapboxMapStore extends ComponentStore<DbxMapboxStoreState> implements OnDestroy {\n private latLngPoint = latLngPointFunction();\n private latLngBound = latLngBoundFunction();\n\n constructor(@Inject(DbxMapboxService) private readonly dbxMapboxService: DbxMapboxService) {\n super({\n lifecycleState: 'init',\n moveState: 'init',\n zoomState: 'init',\n rotateState: 'init',\n retainContent: true\n });\n }\n\n // MARK: Effects\n readonly setMapService = this.effect((input: Observable<Maybe<MapService>>) => {\n return input.pipe(\n switchMap((service: Maybe<MapService>) => {\n this._setMapService(service);\n\n if (!service) {\n return NEVER;\n } else {\n return service.mapLoaded$.pipe(\n defaultIfEmpty(undefined),\n map(() => {\n this._setLifecycleState('idle');\n this._setMoveState('idle');\n this._setZoomState('idle');\n this._setRotateState('idle');\n\n const map = service.mapInstance;\n\n const listenerPairs: StringMapboxListenerPair[] = [];\n\n function addListener<T extends keyof MapboxGl.MapEventType>(type: T, listener: (ev: MapboxGl.MapEventType[T] & MapboxGl.EventData) => void) {\n map.on(type, listener);\n listenerPairs.push({ type, listener } as StringMapboxListenerPair);\n }\n\n addListener('idle', () => this._setLifecycleState('idle'));\n addListener('render', () => this._setLifecycleState('render'));\n addListener('error', (x) => {\n this._setError(x.error);\n });\n\n addListener('movestart', () => this._setMoveState('moving'));\n addListener('moveend', () => this._setMoveState('idle'));\n\n addListener('zoomstart', () => this._setZoomState('zooming'));\n addListener('zoomend', () => this._setZoomState('idle'));\n\n addListener('rotatestart', () => this._setRotateState('rotating'));\n addListener('rotateend', () => this._setRotateState('idle'));\n\n addListener('click', (x) => this._setClickEvent(x));\n addListener('dblclick', (x) => this._setDoubleClickEvent(x));\n addListener('contextmenu', (x) => this._setRightClickEvent(x));\n\n const subs: Subscription[] = [];\n\n return {\n service,\n listenerPairs,\n subs\n };\n })\n );\n }\n }),\n cleanup(({ service, listenerPairs, subs }) => {\n const map = service.mapInstance;\n\n if (map) {\n listenerPairs.forEach((x) => {\n map.off(x.type, x.listener);\n });\n }\n\n subs.forEach((sub) => sub.unsubscribe());\n })\n );\n });\n\n readonly setStyle = this.effect((input: Observable<MapboxStyleConfig | KnownMapboxStyle | string>) => {\n return input.pipe(\n switchMap((style) => {\n return this.mapInstance$.pipe(\n tap((map) => {\n if (typeof style === 'string') {\n map.setStyle(style);\n } else {\n map.setStyle(style.style, style.options);\n }\n })\n );\n })\n );\n });\n\n readonly setCenter = this.effect((input: Observable<LatLngPointInput>) => {\n return input.pipe(\n switchMap((center: LatLngPointInput) => {\n const centerPoint = this.latLngPoint(center);\n return this.mapInstance$.pipe(tap((map) => map.setCenter(centerPoint)));\n })\n );\n });\n\n readonly setZoom = this.effect((input: Observable<MapboxZoomLevel>) => {\n return input.pipe(\n switchMap((zoom: MapboxZoomLevel) => {\n return this.mapInstance$.pipe(tap((map) => map.setZoom(zoom)));\n })\n );\n });\n\n readonly setMinZoom = this.effect((input: Observable<MapboxZoomLevel>) => {\n return input.pipe(\n switchMap((zoom: MapboxZoomLevel) => {\n return this.mapInstance$.pipe(tap((map) => map.setMinZoom(zoom)));\n })\n );\n });\n\n readonly setMaxZoom = this.effect((input: Observable<MapboxZoomLevel>) => {\n return input.pipe(\n switchMap((zoom: MapboxZoomLevel) => {\n return this.mapInstance$.pipe(tap((map) => map.setMaxZoom(zoom)));\n })\n );\n });\n\n readonly setPitch = this.effect((input: Observable<number>) => {\n return input.pipe(\n switchMap((pitch) => {\n return this.mapInstance$.pipe(tap((map) => map.setPitch(pitch)));\n })\n );\n });\n\n readonly setMinPitch = this.effect((input: Observable<number>) => {\n return input.pipe(\n switchMap((pitch: number) => {\n return this.mapInstance$.pipe(tap((map) => map.setMinPitch(pitch)));\n })\n );\n });\n\n readonly setMaxPitch = this.effect((input: Observable<number>) => {\n return input.pipe(\n switchMap((pitch: number) => {\n return this.mapInstance$.pipe(tap((map) => map.setMaxPitch(pitch)));\n })\n );\n });\n\n readonly setBearing = this.effect((input: Observable<number>) => {\n return input.pipe(\n switchMap((bearing) => {\n return this.mapInstance$.pipe(tap((map) => map.setBearing(bearing)));\n })\n );\n });\n\n readonly rotateTo = this.effect((input: Observable<MapboxBearing | MapboxRotateTo>) => {\n return input.pipe(\n switchMap((rotateInput: MapboxBearing | MapboxRotateTo) => {\n const rotate: MapboxRotateTo = typeof rotateInput === 'number' ? { bearing: rotateInput } : rotateInput;\n return this.mapInstance$.pipe(tap((map) => map.rotateTo(rotate.bearing, rotate.options, rotate?.eventData)));\n })\n );\n });\n\n readonly resetNorth = this.effect((input: Observable<Maybe<MapboxResetNorth> | void>) => {\n return input.pipe(\n switchMap((reset: Maybe<MapboxResetNorth> | void) => {\n return this.mapInstance$.pipe(tap((map) => map.resetNorth(reset?.options, reset?.eventData)));\n })\n );\n });\n\n readonly resetNorthPitch = this.effect((input: Observable<Maybe<MapboxResetNorthPitch> | void>) => {\n return input.pipe(\n switchMap((reset: Maybe<MapboxResetNorthPitch> | void) => {\n return this.mapInstance$.pipe(tap((map) => map.resetNorthPitch(reset?.options, reset?.eventData)));\n })\n );\n });\n\n readonly snapToNorth = this.effect((input: Observable<Maybe<MapboxSnapToNorth> | void>) => {\n return input.pipe(\n switchMap((snap: Maybe<MapboxSnapToNorth> | void) => {\n return this.mapInstance$.pipe(tap((map) => map.snapToNorth(snap?.options, snap?.eventData)));\n })\n );\n });\n\n readonly fitBounds = this.effect((input: Observable<MapboxFitBounds>) => {\n return input.pipe(\n switchMap((x) => {\n const bound = this.latLngBound(x.bounds);\n return this.mapInstance$.pipe(tap((map) => map.fitBounds(new MapboxGl.LngLatBounds(bound.sw, bound.ne), x.options, x.eventData)));\n })\n );\n });\n\n readonly jumpTo = this.effect((input: Observable<MapboxJumpTo>) => {\n return input.pipe(\n switchMap((x) => {\n const inputCenter = x.center ?? x.to?.center;\n const center = inputCenter ? this.latLngPoint(inputCenter) : undefined;\n return this.mapInstance$.pipe(tap((map) => map.jumpTo({ ...x.to, center }, x.eventData)));\n })\n );\n });\n\n readonly easeTo = this.effect((input: Observable<MapboxEaseTo>) => {\n return input.pipe(\n switchMap((x) => {\n const inputCenter = x.center ?? x.to?.center;\n const center = inputCenter ? this.latLngPoint(inputCenter) : undefined;\n return this.mapInstance$.pipe(tap((map) => map.easeTo({ ...x.to, center }, x.eventData)));\n })\n );\n });\n\n readonly flyTo = this.effect((input: Observable<MapboxFlyTo>) => {\n return input.pipe(\n switchMap((x) => {\n const inputCenter = x.center ?? x.to?.center;\n const center = inputCenter ? this.latLngPoint(inputCenter) : undefined;\n return this.mapInstance$.pipe(tap((map) => map.flyTo({ ...x.to, center }, x.eventData)));\n })\n );\n });\n\n readonly resetPitchAndBearing = this.effect((input: Observable<void>) => {\n return input.pipe(\n switchMap(() => {\n return this.mapInstance$.pipe(\n tap((map) => {\n map.setPitch(0);\n map.setBearing(0);\n })\n );\n })\n );\n });\n\n // MARK: Accessors\n get timerRefreshPeriod() {\n return this.dbxMapboxService.mapboxMapStoreTimerRefreshPeriod;\n }\n\n movingTimer(period = this.timerRefreshPeriod) {\n return this.moveState$.pipe(\n switchMap((x) => {\n if (x === 'moving') {\n return interval(period);\n } else {\n return of(0);\n }\n }),\n shareReplay()\n );\n }\n\n lifecycleRenderTimer(period = this.timerRefreshPeriod) {\n return this.lifecycleState$.pipe(\n switchMap((x) => {\n if (x === 'render') {\n return interval(period);\n } else {\n return of(0);\n }\n }),\n shareReplay()\n );\n }\n\n atNextIdle(): Observable<boolean> {\n return this.moveState$.pipe(\n map((x) => x === 'idle'),\n first()\n );\n }\n\n calculateNextCenterWithOffset(inputOffset: LatLngPointInput): Observable<LatLngPoint> {\n const offset = this.latLngPoint(inputOffset);\n\n return this.atNextIdle().pipe(\n switchMap(() =>\n this.center$.pipe(\n first(),\n map((center) => {\n const newCenter = {\n lat: offset.lat + center.lat,\n lng: offset.lng + center.lng\n };\n return newCenter;\n })\n )\n )\n );\n }\n\n calculateNextCenterOffsetWithScreenMarginChange(sizing: DbxMapboxMarginCalculationSizing): Observable<LatLngPoint> {\n return this.atNextIdle().pipe(\n switchMap(() =>\n this.bound$.pipe(\n (first(),\n map((bounds) => {\n const diff = diffLatLngBoundPoints(bounds);\n const center = latLngBoundCenterPoint(bounds);\n\n const offsetWidth = sizing.leftMargin + sizing.rightMargin; // 300 + 0\n const newWidth = sizing.fullWidth - offsetWidth; // 1000 - 300 - 0\n const newWidthRatio = newWidth / sizing.fullWidth; // 700 / 1000\n const newCenterLongitudeWidth = diff.lng * newWidthRatio; // 70% offset\n\n const effectiveOffset: LatLngPoint = {\n lat: 0,\n lng: newCenterLongitudeWidth / 2\n };\n\n const newCenter = addLatLngPoints(bounds.sw, effectiveOffset);\n newCenter.lat = center.lat; // retain center position\n\n // console.log({ sizing, bounds, effectiveOffset, newWidth, offsetWidth, diff, center, newCenter });\n\n return newCenter;\n }))\n )\n )\n );\n }\n\n readonly currentMapService$ = this.state$.pipe(\n map((x) => x.mapService),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly mapService$ = this.currentMapService$.pipe(filterMaybe());\n\n readonly currentMapInstance$: Observable<Maybe<MapboxGl.Map>> = this.currentMapService$.pipe(\n switchMap((currentMapService: Maybe<MapService>) => {\n if (currentMapService) {\n return currentMapService.mapLoaded$.pipe(\n defaultIfEmpty(undefined),\n map(() => currentMapService.mapInstance)\n );\n } else {\n return of(undefined);\n }\n }),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly mapInstance$ = this.currentMapInstance$.pipe(filterMaybe());\n\n readonly moveState$ = this.state$.pipe(\n map((x) => x.moveState),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly lifecycleState$ = this.state$.pipe(\n map((x) => x.lifecycleState),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly zoomState$ = this.state$.pipe(\n map((x) => x.zoomState),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly rotateState$ = this.state$.pipe(\n map((x) => x.rotateState),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly isInitialized$ = this.currentMapInstance$.pipe(\n switchMap((x) => {\n if (!x) {\n return of(false);\n } else {\n return combineLatest([this.moveState$.pipe(map((x) => x === 'idle')), this.lifecycleState$.pipe(map((x) => x === 'idle'))]).pipe(\n filter(([m, l]) => m && l),\n first(),\n map(() => true)\n );\n }\n }),\n shareReplay(1)\n );\n\n readonly whenInitialized$ = this.isInitialized$.pipe(\n filter((x) => true),\n shareReplay(1)\n );\n\n readonly isRendering$ = this.whenInitialized$.pipe(\n switchMap(() =>\n this.lifecycleState$.pipe(\n map((x) => x === 'render'),\n distinctUntilChanged(),\n shareReplay()\n )\n )\n );\n\n readonly isMoving$ = this.whenInitialized$.pipe(\n switchMap(() =>\n this.moveState$.pipe(\n map((x) => x === 'moving'),\n distinctUntilChanged(),\n shareReplay()\n )\n )\n );\n\n readonly isZooming$ = this.whenInitialized$.pipe(\n switchMap(() =>\n this.zoomState$.pipe(\n map((x) => x === 'zooming'),\n distinctUntilChanged(),\n shareReplay()\n )\n )\n );\n\n readonly isRotating$ = this.whenInitialized$.pipe(\n switchMap(() =>\n this.rotateState$.pipe(\n map((x) => x === 'rotating'),\n distinctUntilChanged(),\n shareReplay()\n )\n )\n );\n\n private readonly _movingTimer = this.movingTimer();\n private readonly _renderingTimer = this.lifecycleRenderTimer();\n\n readonly centerNow$: Observable<LatLngPoint> = this.whenInitialized$.pipe(\n switchMap(() =>\n this.mapInstance$.pipe(\n switchMap((x) => this._movingTimer.pipe(map(() => this.latLngPoint(x.getCenter())))),\n shareReplay(1)\n )\n )\n );\n\n readonly center$: Observable<LatLngPoint> = this.whenInitialized$.pipe(\n switchMap(() => {\n return this.isMoving$.pipe(\n onTrueToFalse(),\n startWith(undefined),\n switchMap(() => this.centerNow$.pipe(first())),\n distinctUntilChanged(isSameLatLngPoint),\n shareReplay(1)\n );\n })\n );\n\n readonly boundNow$: Observable<LatLngBound> = this.whenInitialized$.pipe(\n switchMap(() =>\n this.mapInstance$.pipe(\n switchMap((x) =>\n this._renderingTimer.pipe(\n map(() => {\n const bound = x.getBounds();\n return this.latLngBound([bound.getSouthWest(), bound.getNorthEast()]);\n })\n )\n ),\n shareReplay(1)\n )\n )\n );\n\n readonly bound$: Observable<LatLngBound> = this.whenInitialized$.pipe(\n switchMap(() => {\n return this.isRendering$.pipe(\n onTrueToFalse(),\n startWith(undefined),\n switchMap((x) => this.boundNow$.pipe(first())),\n distinctUntilChanged(isSameLatLngBound),\n shareReplay(1)\n );\n })\n );\n\n readonly isWithinBoundFunction$: Observable<IsWithinLatLngBoundFunction> = this.bound$.pipe(\n map((x) => isWithinLatLngBoundFunction(x)),\n shareReplay(1)\n );\n\n readonly overlapsBoundFunction$: Observable<OverlapsLatLngBoundFunction> = this.bound$.pipe(\n map((x) => overlapsLatLngBoundFunction(x)),\n shareReplay(1)\n );\n\n readonly zoomNow$: Observable<MapboxZoomLevel> = this.whenInitialized$.pipe(\n switchMap(() =>\n this.mapInstance$.pipe(\n switchMap((x) => this._renderingTimer.pipe(map(() => x.getZoom() as MapboxZoomLevel))),\n shareReplay(1)\n )\n )\n );\n\n readonly zoom$: Observable<MapboxZoomLevel> = this.whenInitialized$.pipe(\n switchMap(() => {\n return this.isZooming$.pipe(\n onTrueToFalse(),\n startWith(undefined),\n switchMap((x) => this.zoomNow$.pipe(first())),\n distinctUntilChanged(),\n shareReplay(1)\n );\n })\n );\n\n readonly pitchNow$ = this.whenInitialized$.pipe(\n switchMap(() =>\n this.mapInstance$.pipe(\n switchMap((x) => this._movingTimer.pipe(map(() => x.getPitch()))),\n shareReplay(1)\n )\n )\n );\n\n readonly pitch$ = this.whenInitialized$.pipe(\n switchMap(() => {\n return this.isRotating$.pipe(\n onTrueToFalse(),\n startWith(undefined),\n switchMap((x) => this.pitchNow$.pipe(first())),\n distinctUntilChanged(),\n shareReplay(1)\n );\n })\n );\n\n readonly bearingNow$ = this.whenInitialized$.pipe(\n switchMap(() =>\n this.mapInstance$.pipe(\n switchMap((x) => this._movingTimer.pipe(map(() => x.getBearing()))),\n shareReplay(1)\n )\n )\n );\n\n readonly bearing$ = this.whenInitialized$.pipe(\n switchMap(() => {\n return this.isRotating$.pipe(\n onTrueToFalse(),\n startWith(undefined),\n switchMap((x) => this.bearingNow$.pipe(first())),\n distinctUntilChanged(),\n shareReplay(1)\n );\n })\n );\n\n readonly content$ = this.state$.pipe(\n map((x) => x.content),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly hasContent$ = this.content$.pipe(map(Boolean));\n\n readonly clickEvent$ = this.state$.pipe(\n map((x) => x.clickEvent),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly doubleClickEvent$ = this.state$.pipe(\n map((x) => x.doubleClickEvent),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly rightClickEvent$ = this.state$.pipe(\n map((x) => x.rightClickEvent),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n // MARK: State Changes\n private readonly _setMapService = this.updater((state, mapService: Maybe<MapService>) => ({ mapService, moveState: 'init', lifecycleState: 'init', zoomState: 'init', rotateState: 'init', retainContent: state.retainContent, content: state.retainContent ? state.content : undefined }));\n private readonly _setLifecycleState = this.updater((state, lifecycleState: MapboxMapLifecycleState) => ({ ...state, lifecycleState }));\n private readonly _setMoveState = this.updater((state, moveState: MapboxMapMoveState) => ({ ...state, moveState }));\n private readonly _setZoomState = this.updater((state, zoomState: MapboxMapZoomState) => ({ ...state, zoomState }));\n private readonly _setRotateState = this.updater((state, rotateState: MapboxMapRotateState) => ({ ...state, rotateState }));\n\n private readonly _setClickEvent = this.updater((state, clickEvent: DbxMapboxClickEvent) => ({ ...state, clickEvent }));\n private readonly _setDoubleClickEvent = this.updater((state, doubleClickEvent: DbxMapboxClickEvent) => ({ ...state, doubleClickEvent }));\n private readonly _setRightClickEvent = this.updater((state, rightClickEvent: DbxMapboxClickEvent) => ({ ...state, rightClickEvent }));\n\n private readonly _setError = this.updater((state, error: Error) => ({ ...state, error }));\n\n readonly clearContent = this.updater((state) => ({ ...state, content: undefined }));\n readonly setContent = this.updater((state, content: Maybe<DbxInjectionComponentConfig<unknown>>) => ({ ...state, content }));\n}\n","import { DbxMapboxService } from './mapbox.service';\nimport { DbxMapboxMapStore } from './mapbox.store';\nimport { Directive, Host, OnInit, Optional } from '@angular/core';\nimport { MapComponent, MapService } from 'ngx-mapbox-gl';\nimport { latLngPoint } from '@dereekb/util';\n\n/**\n * Directive that configures a MapComponent with content from DbxMapboxService. Connects a host MapService to a parent DbxMapboxMapStore if available.\n */\n@Directive({\n selector: '[dbxMapboxMap]'\n})\nexport class DbxMapboxMapDirective implements OnInit {\n constructor(\n //\n @Host() readonly mapService: MapService,\n @Host() readonly mapboxMap: MapComponent,\n readonly dbxMapboxService: DbxMapboxService,\n @Optional() readonly dbxMapboxMapStore: DbxMapboxMapStore\n ) {}\n\n ngOnInit(): void {\n // style must be provided first before the map will load.\n this.mapboxMap.style = this.dbxMapboxService.defaultStyle;\n this.mapboxMap.zoom = [this.dbxMapboxService.defaultZoom];\n this.mapboxMap.center = latLngPoint(this.dbxMapboxService.defaultCenter);\n\n if (this.dbxMapboxMapStore) {\n this.dbxMapboxMapStore.setMapService(this.mapService);\n }\n }\n}\n","import { Component } from '@angular/core';\nimport { DbxMapboxMapStore } from './mapbox.store';\n\n/**\n * Content drawer that connects with DbxMapboxMapStore to\n */\n@Component({\n selector: 'dbx-mapbox-layout-drawer',\n templateUrl: './mapbox.layout.drawer.component.html',\n host: {\n class: 'dbx-mapbox-layout-drawer'\n }\n})\nexport class DbxMapboxLayoutDrawerComponent {\n readonly config$ = this.dbxMapboxMapStore.content$;\n\n constructor(readonly dbxMapboxMapStore: DbxMapboxMapStore) {}\n}\n","<div>\n <dbx-injection [config]=\"config$ | async\"></dbx-injection>\n</div>\n","import { skip, switchMap, first, startWith, shareReplay, throttleTime, map, distinctUntilChanged, BehaviorSubject, combineLatest, Subject, Observable } from 'rxjs';\nimport { Component, ElementRef, Input, OnDestroy, OnInit, ViewChild } from '@angular/core';\nimport { DbxMapboxMapStore } from './mapbox.store';\nimport { Maybe } from '@dereekb/util';\nimport { dbxColorBackground, DbxThemeColor } from '@dereekb/dbx-web';\nimport { ResizedEvent } from 'angular-resize-event';\nimport { SubscriptionObject } from '@dereekb/rxjs';\nimport { MatDrawerContainer } from '@angular/material/sidenav';\nimport { MapboxEaseTo } from './mapbox';\n\nexport type DbxMapboxLayoutSide = 'left' | 'right';\n\n/**\n * Responsive component meant to split a left and right column.\n *\n * The left column is smaller than the right column, which contains the primary content.\n *\n * Requires a TwoColumnsContextStore to be provided.\n */\n@Component({\n selector: 'dbx-mapbox-layout',\n templateUrl: './mapbox.layout.component.html',\n styleUrls: ['./mapbox.layout.component.scss']\n})\nexport class DbxMapboxLayoutComponent extends SubscriptionObject implements OnInit, OnDestroy {\n @ViewChild(MatDrawerContainer)\n readonly container!: MatDrawerContainer;\n\n @ViewChild('content', { read: ElementRef, static: true })\n readonly content!: ElementRef;\n\n private _resized = new Subject<void>();\n private _updateMargins = new Subject<void>();\n private _side = new BehaviorSubject<DbxMapboxLayoutSide>('right');\n private _openToggle = new BehaviorSubject<boolean>(true);\n private _color = new BehaviorSubject<Maybe<DbxThemeColor>>(undefined);\n private _toggleSub = new SubscriptionObject();\n\n readonly side$ = this._side.pipe(distinctUntilChanged(), shareReplay(1));\n\n readonly opened$ = combineLatest([this.dbxMapboxMapStore.hasContent$, this._openToggle]).pipe(\n map(([hasContent, open]) => hasContent && open),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly position$: Observable<'start' | 'end'> = this.side$.pipe(\n map((x) => (x === 'right' ? 'end' : 'start')),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly drawerClasses$ = combineLatest([this.side$, this.dbxMapboxMapStore.hasContent$, this.opened$]).pipe(\n //\n map(([side, hasContent, open]) => (hasContent ? 'has-drawer-content' : 'no-drawer-content') + ` ${side}-drawer ` + (open ? 'open-drawer' : '')),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly drawerButtonClasses$ = combineLatest([this.dbxMapboxMapStore.hasContent$, this._color]).pipe(\n //\n map(([hasContent, color]) => dbxColorBackground(color)),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly buttonIcon$: Observable<string> = combineLatest([this.side$, this.opened$]).pipe(\n map(([side, opened]) => {\n let icons = ['chevron_right', 'chevron_left'];\n\n if (side === 'left') {\n icons = icons.reverse();\n }\n\n return opened ? icons[0] : icons[1];\n })\n );\n\n constructor(readonly dbxMapboxMapStore: DbxMapboxMapStore) {\n super();\n }\n\n ngOnInit(): void {\n this.subscription = (\n this.side$.pipe(\n switchMap(() =>\n this._resized.pipe(\n throttleTime(100, undefined, { leading: true, trailing: true }),\n map(() => 'r'),\n startWith('s')\n )\n )\n ) as Observable<'s' | 'r'>\n ).subscribe((reason) => {\n this.dbxMapboxMapStore.mapInstance$.subscribe((x) => {\n x.resize();\n\n // side changed\n if (reason === 's') {\n setTimeout(() => {\n this._updateMargins.next();\n });\n }\n });\n });\n\n this._toggleSub.subscription = combineLatest([this.opened$.pipe(distinctUntilChanged(), skip(1)), this._updateMargins]).subscribe(([opened]) => {\n let { right } = this.container._contentMargins;\n\n this.container.updateContentMargins();\n\n setTimeout(() => {\n const flip = opened ? 1 : -1;\n\n if (opened) {\n right = this.container._contentMargins.right;\n }\n\n right = (right || 0) * flip;\n\n const element: HTMLElement = this.content.nativeElement;\n const width = element.clientWidth;\n\n const easeTo: Observable<MapboxEaseTo> = this.dbxMapboxMapStore\n .calculateNextCenterOffsetWithScreenMarginChange({\n leftMargin: 0,\n rightMargin: right,\n fullWidth: width\n })\n .pipe(\n first(),\n map((center) => ({ to: { center, duration: 3200, essential: false } } as MapboxEaseTo))\n );\n\n this.dbxMapboxMapStore.easeTo(easeTo);\n });\n });\n }\n\n ngOnDestroy(): void {\n this._resized.complete();\n this._updateMargins.complete();\n this._side.complete();\n this._openToggle.complete();\n this._color.complete();\n this._toggleSub.destroy();\n }\n\n toggleDrawer(open?: boolean) {\n if (open == null) {\n open = !this._openToggle.value;\n }\n\n this._openToggle.next(open);\n }\n\n @Input()\n set side(side: Maybe<DbxMapboxLayoutSide>) {\n if (side != null) {\n this._side.next(side);\n }\n }\n\n @Input()\n set opened(opened: Maybe<boolean>) {\n if (opened != null) {\n this._openToggle.next(opened);\n }\n }\n\n @Input()\n set drawerColor(color: Maybe<DbxThemeColor>) {\n this._color.next(color);\n }\n\n onResized(event: ResizedEvent): void {\n this._resized.next();\n }\n}\n","<mat-drawer-container class=\"dbx-mapbox-layout-container\" [ngClass]=\"(drawerClasses$ | async) || ''\" [hasBackdrop]=\"false\">\n <mat-drawer class=\"dbx-mapbox-layout-drawer\" #drawer [opened]=\"opened$ | async\" mode=\"push\" [position]=\"(position$ | async) || 'end'\">\n <div class=\"dbx-mapbox-layout-drawer-content\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <ng-content select=\"[drawer]\"></ng-content>\n <dbx-mapbox-layout-drawer></dbx-mapbox-layout-drawer>\n </div>\n </mat-drawer>\n <mat-drawer-content #content class=\"dbx-mapbox-layout-content\" (resized)=\"onResized($event)\">\n <button mat-icon-button (click)=\"toggleDrawer()\" class=\"dbx-mapbox-layout-drawer-button\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <mat-icon>{{ buttonIcon$ | async }}</mat-icon>\n </button>\n <ng-content></ng-content>\n </mat-drawer-content>\n</mat-drawer-container>\n","import { SubscriptionObject } from '@dereekb/rxjs';\nimport { filter, switchMap, BehaviorSubject, of } from 'rxjs';\nimport { DbxMapboxService } from './mapbox.service';\nimport { DbxMapboxMapStore } from './mapbox.store';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, Directive, Host, HostListener, Input, OnInit, Optional, OnDestroy, NgZone } from '@angular/core';\nimport { MapComponent, MapService } from 'ngx-mapbox-gl';\nimport { Vector, latLngPoint, Maybe, DestroyFunction, DestroyFunctionObject } from '@dereekb/util';\nimport { MatMenu, MatMenuTrigger } from '@angular/material/menu';\nimport { AbstractSubscriptionDirective, safeMarkForCheck } from '@dereekb/dbx-core';\nimport { disableRightClickInCdkBackdrop } from '@dereekb/dbx-web';\n\n/**\n * Directive that connects a host MatMenuTrigger to a DbxMapboxMapStore and listens for right-clicks on the map.\n *\n * The map dissapears if the mouse scrolls anywhere else on the map.\n */\n@Component({\n selector: 'dbx-mapbox-menu',\n template: '',\n host: {\n style: 'visibility: hidden; position: fixed',\n '[style.top]': 'pos.y',\n '[style.left]': 'pos.x'\n },\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DbxMapboxMenuComponent extends AbstractSubscriptionDirective implements OnInit, OnDestroy {\n private _pos = { x: `0`, y: `0` };\n private _active = new BehaviorSubject<boolean>(true);\n\n private _menuCloseSub = new SubscriptionObject();\n private _preventRightClick = new DestroyFunctionObject();\n\n get pos() {\n return this._pos;\n }\n\n constructor(readonly dbxMapboxMapStore: DbxMapboxMapStore, @Host() readonly matMenuTrigger: MatMenuTrigger, readonly ngZone: NgZone, readonly cdRef: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n this.sub = this._active\n .pipe(\n switchMap((active) => {\n if (active) {\n return this.dbxMapboxMapStore.rightClickEvent$;\n } else {\n return of();\n }\n }),\n filter(Boolean)\n )\n .subscribe((event) => {\n const menu = this.matMenuTrigger.menu;\n const buttonEvent = event.originalEvent;\n\n if (menu && buttonEvent) {\n buttonEvent.preventDefault();\n\n // update position of this component for menu to open at\n this._pos = {\n x: `${buttonEvent.x}px`,\n y: `${buttonEvent.y}px`\n };\n\n safeMarkForCheck(this.cdRef);\n\n // open menu\n this.ngZone.run(() => this.matMenuTrigger.openMenu());\n\n // prevent right clicks in the cdkOverlay while the menu is open\n this._preventRightClick.destroy = disableRightClickInCdkBackdrop(undefined, () => {\n this.ngZone.run(() => this.matMenuTrigger.closeMenu());\n });\n }\n });\n\n this._menuCloseSub.subscription = this.matMenuTrigger.menuClosed.subscribe(() => {\n // destroy prevention when the menu is closed.\n this._preventRightClick.destroy();\n });\n }\n\n override ngOnDestroy(): void {\n super.ngOnDestroy();\n this._active.complete();\n this._preventRightClick.destroy();\n this._menuCloseSub.destroy();\n\n if (this.matMenuTrigger) {\n this.matMenuTrigger.closeMenu();\n }\n }\n\n @Input('dbxMapboxMenu')\n set active(active: Maybe<boolean>) {\n this._active.next(active ?? true);\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DbxMapboxMapDirective } from './mapbox.store.map.directive';\nimport { DbxMapboxConfig } from './mapbox.service';\nimport { DbxMapboxLayoutComponent } from './mapbox.layout.component';\nimport { MatSidenavModule } from '@angular/material/sidenav';\nimport { DbxMapboxLayoutDrawerComponent } from './mapbox.layout.drawer.component';\nimport { DbxInjectionComponentModule } from '@dereekb/dbx-core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { AngularResizeEventModule } from 'angular-resize-event';\nimport { DbxMapboxMenuComponent } from './mapbox.menu.component';\n\nconst declarations = [\n //\n DbxMapboxMapDirective,\n DbxMapboxLayoutComponent,\n DbxMapboxLayoutDrawerComponent,\n DbxMapboxMenuComponent\n];\n\n@NgModule({\n imports: [\n //\n CommonModule,\n MatSidenavModule,\n DbxInjectionComponentModule,\n MatButtonModule,\n MatIconModule,\n AngularResizeEventModule\n ],\n declarations,\n exports: declarations\n})\nexport class DbxMapboxModule {\n static forRoot(config: DbxMapboxConfig): ModuleWithProviders<DbxMapboxModule> {\n return {\n ngModule: DbxMapboxModule,\n providers: [\n {\n provide: DbxMapboxConfig,\n useValue: config\n }\n ]\n };\n }\n}\n","import { LatLngPointInput, LatLngBoundInput } from '@dereekb/util';\nimport * as MapboxGl from 'mapbox-gl';\n\nexport type KnownMapboxStyle = 'mapbox://styles/mapbox/streets-v11' | 'mapbox://styles/mapbox/outdoors-v11' | 'mapbox://styles/mapbox/light-v10' | 'mapbox://styles/mapbox/dark-v10' | 'mapbox://styles/mapbox/satellite-v9' | 'mapbox://styles/mapbox/satellite-streets-v11' | 'mapbox://styles/mapbox/navigation-day-v1' | 'mapbox://styles/mapbox/navigation-night-v1';\n\nexport const KNOWN_MAPBOX_STYLES: KnownMapboxStyle[] = [\n //\n 'mapbox://styles/mapbox/streets-v11',\n 'mapbox://styles/mapbox/outdoors-v11',\n 'mapbox://styles/mapbox/light-v10',\n 'mapbox://styles/mapbox/dark-v10',\n 'mapbox://styles/mapbox/satellite-v9',\n 'mapbox://styles/mapbox/satellite-streets-v11',\n 'mapbox://styles/mapbox/navigation-day-v1',\n 'mapbox://styles/mapbox/navigation-night-v1'\n];\n\nexport type MapboxZoomLevel = number;\nexport type MapboxPitch = number;\nexport type MapboxBearing = number;\n\nexport type DbxMapboxClickEvent = MapboxGl.MapMouseEvent & MapboxGl.EventData;\n\nexport interface MapboxStyleConfig {\n style: MapboxGl.Style | string;\n options?: {\n diff?: boolean | undefined;\n localIdeographFontFamily?: string | undefined;\n };\n}\n\nexport interface MapboxFitBounds {\n bounds: LatLngBoundInput;\n options?: mapboxgl.FitBoundsOptions;\n eventData?: mapboxgl.EventData;\n}\n\nexport interface MapboxJumpToPositionOptions extends Omit<MapboxGl.CameraOptions, 'center'> {\n center: LatLngPointInput;\n}\n\nexport interface MapboxJumpTo {\n center?: LatLngPointInput;\n to?: MapboxJumpToPositionOptions;\n eventData?: mapboxgl.EventData;\n}\n\nexport interface MapboxEaseToPositionOptions extends Omit<MapboxGl.EaseToOptions, 'center'>, MapboxJumpToPositionOptions {}\n\nexport interface MapboxEaseTo {\n center?: LatLngPointInput;\n to?: MapboxEaseToPositionOptions;\n eventData?: mapboxgl.EventData;\n}\n\nexport interface MapboxFlyToPositionOptions extends Omit<MapboxGl.FlyToOptions, 'center'>, MapboxJumpToPositionOptions {}\n\nexport interface MapboxFlyTo {\n center?: LatLngPointInput;\n to?: MapboxFlyToPositionOptions;\n eventData?: mapboxgl.EventData;\n}\n\nexport interface MapboxRotateTo {\n bearing: MapboxBearing;\n options?: mapboxgl.AnimationOptions;\n eventData?: mapboxgl.EventData;\n}\n\nexport interface MapboxResetNorth {\n options?: mapboxgl.AnimationOptions;\n eventData?: mapboxgl.EventData;\n}\n\nexport interface MapboxResetNorthPitch {\n options?: mapboxgl.AnimationOptions;\n eventData?: mapboxgl.EventData;\n}\n\nexport interface MapboxSnapToNorth {\n options?: mapboxgl.AnimationOptions;\n eventData?: mapboxgl.EventData;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.DbxMapboxService","i3.DbxMapboxMapStore","i1.DbxMapboxMapStore","i3","i2","i7.DbxMapboxLayoutDrawerComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dereekb-dbx-web-mapbox.mjs","sources":["../../../../packages/dbx-web/mapbox/src/lib/mapbox.service.ts","../../../../packages/dbx-web/mapbox/src/lib/mapbox.store.ts","../../../../packages/dbx-web/mapbox/src/lib/mapbox.store.map.directive.ts","../../../../packages/dbx-web/mapbox/src/lib/mapbox.layout.drawer.component.ts","../../../../packages/dbx-web/mapbox/src/lib/mapbox.layout.drawer.component.html","../../../../packages/dbx-web/mapbox/src/lib/mapbox.layout.component.ts","../../../../packages/dbx-web/mapbox/src/lib/mapbox.layout.component.html","../../../../packages/dbx-web/mapbox/src/lib/mapbox.menu.component.ts","../../../../packages/dbx-web/mapbox/src/lib/mapbox.module.ts","../../../../packages/dbx-web/mapbox/src/lib/mapbox.ts","../../../../packages/dbx-web/mapbox/src/dereekb-dbx-web-mapbox.ts"],"sourcesContent":["import { Injectable, Optional } from '@angular/core';\nimport { LatLngPointInput, Milliseconds } from '@dereekb/util';\nimport { MapboxOptions } from 'mapbox-gl';\nimport { KnownMapboxStyle, MapboxZoomLevel } from './mapbox';\n\nexport class DbxMapboxConfig {\n readonly defaultStyle?: MapboxOptions['style'];\n readonly defaultZoom?: MapboxZoomLevel;\n readonly defaultCenter?: LatLngPointInput;\n readonly defaultStoreRefreshPeriod?: number;\n}\n\nexport const DEFAULT_MAPBOX_STYLE: KnownMapboxStyle = 'mapbox://styles/mapbox/streets-v11';\nexport const DEFAULT_MAPBOX_CENTER: LatLngPointInput = [30.2690138665, -97.7408297965];\nexport const DEFAULT_MAPBOX_ZOOM: MapboxZoomLevel = 12;\nexport const DEFAULT_MAPBOX_MAP_STORE_TIMER_REFRESH_PERIOD: Milliseconds = 200;\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DbxMapboxService {\n private readonly _config: DbxMapboxConfig;\n\n constructor(@Optional() config: DbxMapboxConfig) {\n this._config = config ?? {};\n }\n\n get defaultStyle() {\n return this._config.defaultStyle ?? DEFAULT_MAPBOX_STYLE;\n }\n\n get defaultZoom(): MapboxZoomLevel {\n return this._config.defaultZoom ?? DEFAULT_MAPBOX_ZOOM;\n }\n\n get defaultCenter(): LatLngPointInput {\n return this._config.defaultCenter ?? DEFAULT_MAPBOX_CENTER;\n }\n\n get mapboxMapStoreTimerRefreshPeriod(): number {\n return this._config.defaultStoreRefreshPeriod ?? DEFAULT_MAPBOX_MAP_STORE_TIMER_REFRESH_PERIOD;\n }\n}\n","import { cleanup, filterMaybe, onTrueToFalse } from '@dereekb/rxjs';\nimport { Inject, Injectable, OnDestroy } from '@angular/core';\nimport { isSameLatLngBound, isSameLatLngPoint, IsWithinLatLngBoundFunction, isWithinLatLngBoundFunction, LatLngBound, latLngBoundFunction, LatLngPointInput, LatLngPoint, latLngPointFunction, Maybe, OverlapsLatLngBoundFunction, overlapsLatLngBoundFunction, diffLatLngBoundPoints, latLngBoundCenterPoint, addLatLngPoints } from '@dereekb/util';\nimport { ComponentStore } from '@ngrx/component-store';\nimport { MapService } from 'ngx-mapbox-gl';\nimport { defaultIfEmpty, distinctUntilChanged, filter, map, shareReplay, switchMap, tap, NEVER, Observable, of, Subscription, startWith, interval, first, combineLatest } from 'rxjs';\nimport * as MapboxGl from 'mapbox-gl';\nimport { DbxMapboxClickEvent, KnownMapboxStyle, MapboxBearing, MapboxEaseTo, MapboxFitBounds, MapboxFlyTo, MapboxJumpTo, MapboxResetNorth, MapboxResetNorthPitch, MapboxRotateTo, MapboxSnapToNorth, MapboxStyleConfig, MapboxZoomLevel } from './mapbox';\nimport { DbxMapboxService } from './mapbox.service';\nimport { DbxInjectionComponentConfig } from '@dereekb/dbx-core';\n\nexport type MapboxMapLifecycleState = 'init' | 'load' | 'render' | 'idle';\nexport type MapboxMapMoveState = 'init' | 'idle' | 'moving';\nexport type MapboxMapZoomState = 'init' | 'idle' | 'zooming';\nexport type MapboxMapRotateState = 'init' | 'idle' | 'rotating';\n\nexport interface StringMapboxListenerPair {\n type: string;\n listener: (ev: MapboxGl.EventData) => void;\n}\n\nexport interface TypedMapboxListenerPair<T extends keyof MapboxGl.MapEventType> {\n type: T;\n listener: (ev: MapboxGl.MapEventType[T] & MapboxGl.EventData) => void;\n}\n\nexport interface DbxMapboxMarginCalculationSizing {\n leftMargin: number;\n rightMargin: number;\n fullWidth: number;\n}\n\nexport interface DbxMapboxStoreState {\n /**\n * Current MapService being utilized.\n */\n mapService?: Maybe<MapService>;\n lifecycleState: MapboxMapLifecycleState;\n moveState: MapboxMapMoveState;\n zoomState: MapboxMapZoomState;\n rotateState: MapboxMapRotateState;\n /**\n * Latest click event\n */\n clickEvent?: Maybe<DbxMapboxClickEvent>;\n /**\n * Latest double-click event\n */\n doubleClickEvent?: Maybe<DbxMapboxClickEvent>;\n /**\n * Latest contextmenu event.\n */\n rightClickEvent?: Maybe<DbxMapboxClickEvent>;\n /**\n * Whether or not to retain content between resets.\n *\n * True by default.\n */\n retainContent: boolean;\n /**\n * Custom content configuration.\n */\n content?: Maybe<DbxInjectionComponentConfig<unknown>>;\n /**\n * Latest error\n */\n error?: Maybe<Error>;\n}\n\n/**\n * Store used for retrieving information.\n */\n@Injectable()\nexport class DbxMapboxMapStore extends ComponentStore<DbxMapboxStoreState> implements OnDestroy {\n private latLngPoint = latLngPointFunction();\n private latLngBound = latLngBoundFunction();\n\n constructor(@Inject(DbxMapboxService) private readonly dbxMapboxService: DbxMapboxService) {\n super({\n lifecycleState: 'init',\n moveState: 'init',\n zoomState: 'init',\n rotateState: 'init',\n retainContent: true\n });\n }\n\n // MARK: Effects\n readonly setMapService = this.effect((input: Observable<Maybe<MapService>>) => {\n return input.pipe(\n switchMap((service: Maybe<MapService>) => {\n this._setMapService(service);\n\n if (!service) {\n return NEVER;\n } else {\n return service.mapLoaded$.pipe(\n defaultIfEmpty(undefined),\n map(() => {\n this._setLifecycleState('idle');\n this._setMoveState('idle');\n this._setZoomState('idle');\n this._setRotateState('idle');\n\n const map = service.mapInstance;\n\n const listenerPairs: StringMapboxListenerPair[] = [];\n\n function addListener<T extends keyof MapboxGl.MapEventType>(type: T, listener: (ev: MapboxGl.MapEventType[T] & MapboxGl.EventData) => void) {\n map.on(type, listener);\n listenerPairs.push({ type, listener } as StringMapboxListenerPair);\n }\n\n addListener('idle', () => this._setLifecycleState('idle'));\n addListener('render', () => this._setLifecycleState('render'));\n addListener('error', (x) => {\n this._setError(x.error);\n });\n\n addListener('movestart', () => this._setMoveState('moving'));\n addListener('moveend', () => this._setMoveState('idle'));\n\n addListener('zoomstart', () => this._setZoomState('zooming'));\n addListener('zoomend', () => this._setZoomState('idle'));\n\n addListener('rotatestart', () => this._setRotateState('rotating'));\n addListener('rotateend', () => this._setRotateState('idle'));\n\n addListener('click', (x) => this._setClickEvent(x));\n addListener('dblclick', (x) => this._setDoubleClickEvent(x));\n addListener('contextmenu', (x) => this._setRightClickEvent(x));\n\n const subs: Subscription[] = [];\n\n return {\n service,\n listenerPairs,\n subs\n };\n })\n );\n }\n }),\n cleanup(({ service, listenerPairs, subs }) => {\n const map = service.mapInstance;\n\n if (map) {\n listenerPairs.forEach((x) => {\n map.off(x.type, x.listener);\n });\n }\n\n subs.forEach((sub) => sub.unsubscribe());\n })\n );\n });\n\n readonly setStyle = this.effect((input: Observable<MapboxStyleConfig | KnownMapboxStyle | string>) => {\n return input.pipe(\n switchMap((style) => {\n return this.mapInstance$.pipe(\n tap((map) => {\n if (typeof style === 'string') {\n map.setStyle(style);\n } else {\n map.setStyle(style.style, style.options);\n }\n })\n );\n })\n );\n });\n\n readonly setCenter = this.effect((input: Observable<LatLngPointInput>) => {\n return input.pipe(\n switchMap((center: LatLngPointInput) => {\n const centerPoint = this.latLngPoint(center);\n return this.mapInstance$.pipe(tap((map) => map.setCenter(centerPoint)));\n })\n );\n });\n\n readonly setZoom = this.effect((input: Observable<MapboxZoomLevel>) => {\n return input.pipe(\n switchMap((zoom: MapboxZoomLevel) => {\n return this.mapInstance$.pipe(tap((map) => map.setZoom(zoom)));\n })\n );\n });\n\n readonly setMinZoom = this.effect((input: Observable<MapboxZoomLevel>) => {\n return input.pipe(\n switchMap((zoom: MapboxZoomLevel) => {\n return this.mapInstance$.pipe(tap((map) => map.setMinZoom(zoom)));\n })\n );\n });\n\n readonly setMaxZoom = this.effect((input: Observable<MapboxZoomLevel>) => {\n return input.pipe(\n switchMap((zoom: MapboxZoomLevel) => {\n return this.mapInstance$.pipe(tap((map) => map.setMaxZoom(zoom)));\n })\n );\n });\n\n readonly setPitch = this.effect((input: Observable<number>) => {\n return input.pipe(\n switchMap((pitch) => {\n return this.mapInstance$.pipe(tap((map) => map.setPitch(pitch)));\n })\n );\n });\n\n readonly setMinPitch = this.effect((input: Observable<number>) => {\n return input.pipe(\n switchMap((pitch: number) => {\n return this.mapInstance$.pipe(tap((map) => map.setMinPitch(pitch)));\n })\n );\n });\n\n readonly setMaxPitch = this.effect((input: Observable<number>) => {\n return input.pipe(\n switchMap((pitch: number) => {\n return this.mapInstance$.pipe(tap((map) => map.setMaxPitch(pitch)));\n })\n );\n });\n\n readonly setBearing = this.effect((input: Observable<number>) => {\n return input.pipe(\n switchMap((bearing) => {\n return this.mapInstance$.pipe(tap((map) => map.setBearing(bearing)));\n })\n );\n });\n\n readonly rotateTo = this.effect((input: Observable<MapboxBearing | MapboxRotateTo>) => {\n return input.pipe(\n switchMap((rotateInput: MapboxBearing | MapboxRotateTo) => {\n const rotate: MapboxRotateTo = typeof rotateInput === 'number' ? { bearing: rotateInput } : rotateInput;\n return this.mapInstance$.pipe(tap((map) => map.rotateTo(rotate.bearing, rotate.options, rotate?.eventData)));\n })\n );\n });\n\n readonly resetNorth = this.effect((input: Observable<Maybe<MapboxResetNorth> | void>) => {\n return input.pipe(\n switchMap((reset: Maybe<MapboxResetNorth> | void) => {\n return this.mapInstance$.pipe(tap((map) => map.resetNorth(reset?.options, reset?.eventData)));\n })\n );\n });\n\n readonly resetNorthPitch = this.effect((input: Observable<Maybe<MapboxResetNorthPitch> | void>) => {\n return input.pipe(\n switchMap((reset: Maybe<MapboxResetNorthPitch> | void) => {\n return this.mapInstance$.pipe(tap((map) => map.resetNorthPitch(reset?.options, reset?.eventData)));\n })\n );\n });\n\n readonly snapToNorth = this.effect((input: Observable<Maybe<MapboxSnapToNorth> | void>) => {\n return input.pipe(\n switchMap((snap: Maybe<MapboxSnapToNorth> | void) => {\n return this.mapInstance$.pipe(tap((map) => map.snapToNorth(snap?.options, snap?.eventData)));\n })\n );\n });\n\n readonly fitBounds = this.effect((input: Observable<MapboxFitBounds>) => {\n return input.pipe(\n switchMap((x) => {\n const bound = this.latLngBound(x.bounds);\n return this.mapInstance$.pipe(tap((map) => map.fitBounds(new MapboxGl.LngLatBounds(bound.sw, bound.ne), x.options, x.eventData)));\n })\n );\n });\n\n readonly jumpTo = this.effect((input: Observable<MapboxJumpTo>) => {\n return input.pipe(\n switchMap((x) => {\n const inputCenter = x.center ?? x.to?.center;\n const center = inputCenter ? this.latLngPoint(inputCenter) : undefined;\n return this.mapInstance$.pipe(tap((map) => map.jumpTo({ ...x.to, center }, x.eventData)));\n })\n );\n });\n\n readonly easeTo = this.effect((input: Observable<MapboxEaseTo>) => {\n return input.pipe(\n switchMap((x) => {\n const inputCenter = x.center ?? x.to?.center;\n const center = inputCenter ? this.latLngPoint(inputCenter) : undefined;\n return this.mapInstance$.pipe(tap((map) => map.easeTo({ ...x.to, center }, x.eventData)));\n })\n );\n });\n\n readonly flyTo = this.effect((input: Observable<MapboxFlyTo>) => {\n return input.pipe(\n switchMap((x) => {\n const inputCenter = x.center ?? x.to?.center;\n const center = inputCenter ? this.latLngPoint(inputCenter) : undefined;\n return this.mapInstance$.pipe(tap((map) => map.flyTo({ ...x.to, center }, x.eventData)));\n })\n );\n });\n\n readonly resetPitchAndBearing = this.effect((input: Observable<void>) => {\n return input.pipe(\n switchMap(() => {\n return this.mapInstance$.pipe(\n tap((map) => {\n map.setPitch(0);\n map.setBearing(0);\n })\n );\n })\n );\n });\n\n // MARK: Accessors\n get timerRefreshPeriod() {\n return this.dbxMapboxService.mapboxMapStoreTimerRefreshPeriod;\n }\n\n movingTimer(period = this.timerRefreshPeriod) {\n return this.moveState$.pipe(\n switchMap((x) => {\n if (x === 'moving') {\n return interval(period);\n } else {\n return of(0);\n }\n }),\n shareReplay()\n );\n }\n\n lifecycleRenderTimer(period = this.timerRefreshPeriod) {\n return this.lifecycleState$.pipe(\n switchMap((x) => {\n if (x === 'render') {\n return interval(period);\n } else {\n return of(0);\n }\n }),\n shareReplay()\n );\n }\n\n atNextIdle(): Observable<boolean> {\n return this.moveState$.pipe(\n map((x) => x === 'idle'),\n first()\n );\n }\n\n calculateNextCenterWithOffset(inputOffset: LatLngPointInput): Observable<LatLngPoint> {\n const offset = this.latLngPoint(inputOffset);\n\n return this.atNextIdle().pipe(\n switchMap(() =>\n this.center$.pipe(\n first(),\n map((center) => {\n const newCenter = {\n lat: offset.lat + center.lat,\n lng: offset.lng + center.lng\n };\n return newCenter;\n })\n )\n )\n );\n }\n\n calculateNextCenterOffsetWithScreenMarginChange(sizing: DbxMapboxMarginCalculationSizing): Observable<LatLngPoint> {\n return this.atNextIdle().pipe(\n switchMap(() =>\n this.bound$.pipe(\n (first(),\n map((bounds) => {\n const diff = diffLatLngBoundPoints(bounds);\n const center = latLngBoundCenterPoint(bounds);\n\n const offsetWidth = sizing.leftMargin + sizing.rightMargin; // 300 + 0\n const newWidth = sizing.fullWidth - offsetWidth; // 1000 - 300 - 0\n const newWidthRatio = newWidth / sizing.fullWidth; // 700 / 1000\n const newCenterLongitudeWidth = diff.lng * newWidthRatio; // 70% offset\n\n const effectiveOffset: LatLngPoint = {\n lat: 0,\n lng: newCenterLongitudeWidth / 2\n };\n\n const newCenter = addLatLngPoints(bounds.sw, effectiveOffset);\n newCenter.lat = center.lat; // retain center position\n\n // console.log({ sizing, bounds, effectiveOffset, newWidth, offsetWidth, diff, center, newCenter });\n\n return newCenter;\n }))\n )\n )\n );\n }\n\n readonly currentMapService$ = this.state$.pipe(\n map((x) => x.mapService),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly mapService$ = this.currentMapService$.pipe(filterMaybe());\n\n readonly currentMapInstance$: Observable<Maybe<MapboxGl.Map>> = this.currentMapService$.pipe(\n switchMap((currentMapService: Maybe<MapService>) => {\n if (currentMapService) {\n return currentMapService.mapLoaded$.pipe(\n defaultIfEmpty(undefined),\n map(() => currentMapService.mapInstance)\n );\n } else {\n return of(undefined);\n }\n }),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly mapInstance$ = this.currentMapInstance$.pipe(filterMaybe());\n\n readonly moveState$ = this.state$.pipe(\n map((x) => x.moveState),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly lifecycleState$ = this.state$.pipe(\n map((x) => x.lifecycleState),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly zoomState$ = this.state$.pipe(\n map((x) => x.zoomState),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly rotateState$ = this.state$.pipe(\n map((x) => x.rotateState),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly isInitialized$ = this.currentMapInstance$.pipe(\n switchMap((x) => {\n if (!x) {\n return of(false);\n } else {\n return combineLatest([this.moveState$.pipe(map((x) => x === 'idle')), this.lifecycleState$.pipe(map((x) => x === 'idle'))]).pipe(\n filter(([m, l]) => m && l),\n first(),\n map(() => true)\n );\n }\n }),\n shareReplay(1)\n );\n\n readonly whenInitialized$ = this.isInitialized$.pipe(\n filter((x) => true),\n shareReplay(1)\n );\n\n readonly isRendering$ = this.whenInitialized$.pipe(\n switchMap(() =>\n this.lifecycleState$.pipe(\n map((x) => x === 'render'),\n distinctUntilChanged(),\n shareReplay()\n )\n )\n );\n\n readonly isMoving$ = this.whenInitialized$.pipe(\n switchMap(() =>\n this.moveState$.pipe(\n map((x) => x === 'moving'),\n distinctUntilChanged(),\n shareReplay()\n )\n )\n );\n\n readonly isZooming$ = this.whenInitialized$.pipe(\n switchMap(() =>\n this.zoomState$.pipe(\n map((x) => x === 'zooming'),\n distinctUntilChanged(),\n shareReplay()\n )\n )\n );\n\n readonly isRotating$ = this.whenInitialized$.pipe(\n switchMap(() =>\n this.rotateState$.pipe(\n map((x) => x === 'rotating'),\n distinctUntilChanged(),\n shareReplay()\n )\n )\n );\n\n private readonly _movingTimer = this.movingTimer();\n private readonly _renderingTimer = this.lifecycleRenderTimer();\n\n readonly centerNow$: Observable<LatLngPoint> = this.whenInitialized$.pipe(\n switchMap(() =>\n this.mapInstance$.pipe(\n switchMap((x) => this._movingTimer.pipe(map(() => this.latLngPoint(x.getCenter())))),\n shareReplay(1)\n )\n )\n );\n\n readonly center$: Observable<LatLngPoint> = this.whenInitialized$.pipe(\n switchMap(() => {\n return this.isMoving$.pipe(\n onTrueToFalse(),\n startWith(undefined),\n switchMap(() => this.centerNow$.pipe(first())),\n distinctUntilChanged(isSameLatLngPoint),\n shareReplay(1)\n );\n })\n );\n\n readonly boundNow$: Observable<LatLngBound> = this.whenInitialized$.pipe(\n switchMap(() =>\n this.mapInstance$.pipe(\n switchMap((x) =>\n this._renderingTimer.pipe(\n map(() => {\n const bound = x.getBounds();\n return this.latLngBound([bound.getSouthWest(), bound.getNorthEast()]);\n })\n )\n ),\n shareReplay(1)\n )\n )\n );\n\n readonly bound$: Observable<LatLngBound> = this.whenInitialized$.pipe(\n switchMap(() => {\n return this.isRendering$.pipe(\n onTrueToFalse(),\n startWith(undefined),\n switchMap((x) => this.boundNow$.pipe(first())),\n distinctUntilChanged(isSameLatLngBound),\n shareReplay(1)\n );\n })\n );\n\n readonly isWithinBoundFunction$: Observable<IsWithinLatLngBoundFunction> = this.bound$.pipe(\n map((x) => isWithinLatLngBoundFunction(x)),\n shareReplay(1)\n );\n\n readonly overlapsBoundFunction$: Observable<OverlapsLatLngBoundFunction> = this.bound$.pipe(\n map((x) => overlapsLatLngBoundFunction(x)),\n shareReplay(1)\n );\n\n readonly zoomNow$: Observable<MapboxZoomLevel> = this.whenInitialized$.pipe(\n switchMap(() =>\n this.mapInstance$.pipe(\n switchMap((x) => this._renderingTimer.pipe(map(() => x.getZoom() as MapboxZoomLevel))),\n shareReplay(1)\n )\n )\n );\n\n readonly zoom$: Observable<MapboxZoomLevel> = this.whenInitialized$.pipe(\n switchMap(() => {\n return this.isZooming$.pipe(\n onTrueToFalse(),\n startWith(undefined),\n switchMap((x) => this.zoomNow$.pipe(first())),\n distinctUntilChanged(),\n shareReplay(1)\n );\n })\n );\n\n readonly pitchNow$ = this.whenInitialized$.pipe(\n switchMap(() =>\n this.mapInstance$.pipe(\n switchMap((x) => this._movingTimer.pipe(map(() => x.getPitch()))),\n shareReplay(1)\n )\n )\n );\n\n readonly pitch$ = this.whenInitialized$.pipe(\n switchMap(() => {\n return this.isRotating$.pipe(\n onTrueToFalse(),\n startWith(undefined),\n switchMap((x) => this.pitchNow$.pipe(first())),\n distinctUntilChanged(),\n shareReplay(1)\n );\n })\n );\n\n readonly bearingNow$ = this.whenInitialized$.pipe(\n switchMap(() =>\n this.mapInstance$.pipe(\n switchMap((x) => this._movingTimer.pipe(map(() => x.getBearing()))),\n shareReplay(1)\n )\n )\n );\n\n readonly bearing$ = this.whenInitialized$.pipe(\n switchMap(() => {\n return this.isRotating$.pipe(\n onTrueToFalse(),\n startWith(undefined),\n switchMap((x) => this.bearingNow$.pipe(first())),\n distinctUntilChanged(),\n shareReplay(1)\n );\n })\n );\n\n readonly content$ = this.state$.pipe(\n map((x) => x.content),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly hasContent$ = this.content$.pipe(map(Boolean));\n\n readonly clickEvent$ = this.state$.pipe(\n map((x) => x.clickEvent),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly doubleClickEvent$ = this.state$.pipe(\n map((x) => x.doubleClickEvent),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly rightClickEvent$ = this.state$.pipe(\n map((x) => x.rightClickEvent),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n // MARK: State Changes\n private readonly _setMapService = this.updater((state, mapService: Maybe<MapService>) => ({ mapService, moveState: 'init', lifecycleState: 'init', zoomState: 'init', rotateState: 'init', retainContent: state.retainContent, content: state.retainContent ? state.content : undefined }));\n private readonly _setLifecycleState = this.updater((state, lifecycleState: MapboxMapLifecycleState) => ({ ...state, lifecycleState }));\n private readonly _setMoveState = this.updater((state, moveState: MapboxMapMoveState) => ({ ...state, moveState }));\n private readonly _setZoomState = this.updater((state, zoomState: MapboxMapZoomState) => ({ ...state, zoomState }));\n private readonly _setRotateState = this.updater((state, rotateState: MapboxMapRotateState) => ({ ...state, rotateState }));\n\n private readonly _setClickEvent = this.updater((state, clickEvent: DbxMapboxClickEvent) => ({ ...state, clickEvent }));\n private readonly _setDoubleClickEvent = this.updater((state, doubleClickEvent: DbxMapboxClickEvent) => ({ ...state, doubleClickEvent }));\n private readonly _setRightClickEvent = this.updater((state, rightClickEvent: DbxMapboxClickEvent) => ({ ...state, rightClickEvent }));\n\n private readonly _setError = this.updater((state, error: Error) => ({ ...state, error }));\n\n readonly clearContent = this.updater((state) => ({ ...state, content: undefined }));\n readonly setContent = this.updater((state, content: Maybe<DbxInjectionComponentConfig<unknown>>) => ({ ...state, content }));\n}\n","import { DbxMapboxService } from './mapbox.service';\nimport { DbxMapboxMapStore } from './mapbox.store';\nimport { Directive, Host, OnInit, Optional } from '@angular/core';\nimport { MapComponent, MapService } from 'ngx-mapbox-gl';\nimport { latLngPoint } from '@dereekb/util';\n\n/**\n * Directive that configures a MapComponent with content from DbxMapboxService. Connects a host MapService to a parent DbxMapboxMapStore if available.\n */\n@Directive({\n selector: '[dbxMapboxMap]'\n})\nexport class DbxMapboxMapDirective implements OnInit {\n constructor(\n //\n @Host() readonly mapService: MapService,\n @Host() readonly mapboxMap: MapComponent,\n readonly dbxMapboxService: DbxMapboxService,\n @Optional() readonly dbxMapboxMapStore: DbxMapboxMapStore\n ) {}\n\n ngOnInit(): void {\n // style must be provided first before the map will load.\n this.mapboxMap.style = this.dbxMapboxService.defaultStyle;\n this.mapboxMap.zoom = [this.dbxMapboxService.defaultZoom];\n this.mapboxMap.center = latLngPoint(this.dbxMapboxService.defaultCenter);\n\n if (this.dbxMapboxMapStore) {\n this.dbxMapboxMapStore.setMapService(this.mapService);\n }\n }\n}\n","import { Component } from '@angular/core';\nimport { DbxMapboxMapStore } from './mapbox.store';\n\n/**\n * Content drawer that connects with DbxMapboxMapStore to\n */\n@Component({\n selector: 'dbx-mapbox-layout-drawer',\n templateUrl: './mapbox.layout.drawer.component.html',\n host: {\n class: 'dbx-mapbox-layout-drawer'\n }\n})\nexport class DbxMapboxLayoutDrawerComponent {\n readonly config$ = this.dbxMapboxMapStore.content$;\n\n constructor(readonly dbxMapboxMapStore: DbxMapboxMapStore) {}\n}\n","<div>\n <dbx-injection [config]=\"config$ | async\"></dbx-injection>\n</div>\n","import { skip, switchMap, first, startWith, shareReplay, throttleTime, map, distinctUntilChanged, BehaviorSubject, combineLatest, Subject, Observable } from 'rxjs';\nimport { Component, ElementRef, Input, OnDestroy, OnInit, ViewChild } from '@angular/core';\nimport { DbxMapboxMapStore } from './mapbox.store';\nimport { Maybe } from '@dereekb/util';\nimport { dbxColorBackground, DbxThemeColor } from '@dereekb/dbx-web';\nimport { ResizedEvent } from 'angular-resize-event';\nimport { SubscriptionObject } from '@dereekb/rxjs';\nimport { MatDrawerContainer } from '@angular/material/sidenav';\nimport { MapboxEaseTo } from './mapbox';\n\nexport type DbxMapboxLayoutSide = 'left' | 'right';\n\n/**\n * Responsive component meant to split a left and right column.\n *\n * The left column is smaller than the right column, which contains the primary content.\n *\n * Requires a TwoColumnsContextStore to be provided.\n */\n@Component({\n selector: 'dbx-mapbox-layout',\n templateUrl: './mapbox.layout.component.html',\n styleUrls: ['./mapbox.layout.component.scss']\n})\nexport class DbxMapboxLayoutComponent extends SubscriptionObject implements OnInit, OnDestroy {\n @ViewChild(MatDrawerContainer)\n readonly container!: MatDrawerContainer;\n\n @ViewChild('content', { read: ElementRef, static: true })\n readonly content!: ElementRef;\n\n private _resized = new Subject<void>();\n private _updateMargins = new Subject<void>();\n private _side = new BehaviorSubject<DbxMapboxLayoutSide>('right');\n private _openToggle = new BehaviorSubject<boolean>(true);\n private _color = new BehaviorSubject<Maybe<DbxThemeColor>>(undefined);\n private _toggleSub = new SubscriptionObject();\n\n readonly side$ = this._side.pipe(distinctUntilChanged(), shareReplay(1));\n\n readonly opened$ = combineLatest([this.dbxMapboxMapStore.hasContent$, this._openToggle]).pipe(\n map(([hasContent, open]) => hasContent && open),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly position$: Observable<'start' | 'end'> = this.side$.pipe(\n map((x) => (x === 'right' ? 'end' : 'start')),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly drawerClasses$ = combineLatest([this.side$, this.dbxMapboxMapStore.hasContent$, this.opened$]).pipe(\n //\n map(([side, hasContent, open]) => (hasContent ? 'has-drawer-content' : 'no-drawer-content') + ` ${side}-drawer ` + (open ? 'open-drawer' : '')),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly drawerButtonClasses$ = combineLatest([this.dbxMapboxMapStore.hasContent$, this._color]).pipe(\n //\n map(([hasContent, color]) => dbxColorBackground(color)),\n distinctUntilChanged(),\n shareReplay(1)\n );\n\n readonly buttonIcon$: Observable<string> = combineLatest([this.side$, this.opened$]).pipe(\n map(([side, opened]) => {\n let icons = ['chevron_right', 'chevron_left'];\n\n if (side === 'left') {\n icons = icons.reverse();\n }\n\n return opened ? icons[0] : icons[1];\n })\n );\n\n constructor(readonly dbxMapboxMapStore: DbxMapboxMapStore) {\n super();\n }\n\n ngOnInit(): void {\n this.subscription = (\n this.side$.pipe(\n switchMap(() =>\n this._resized.pipe(\n throttleTime(100, undefined, { leading: true, trailing: true }),\n map(() => 'r'),\n startWith('s')\n )\n )\n ) as Observable<'s' | 'r'>\n ).subscribe((reason) => {\n this.dbxMapboxMapStore.mapInstance$.subscribe((x) => {\n x.resize();\n\n // side changed\n if (reason === 's') {\n setTimeout(() => {\n this._updateMargins.next();\n });\n }\n });\n });\n\n this._toggleSub.subscription = combineLatest([this.opened$.pipe(distinctUntilChanged(), skip(1)), this._updateMargins]).subscribe(([opened]) => {\n let { right } = this.container._contentMargins;\n\n this.container.updateContentMargins();\n\n setTimeout(() => {\n const flip = opened ? 1 : -1;\n\n if (opened) {\n right = this.container._contentMargins.right;\n }\n\n right = (right || 0) * flip;\n\n const element: HTMLElement = this.content.nativeElement;\n const width = element.clientWidth;\n\n const easeTo: Observable<MapboxEaseTo> = this.dbxMapboxMapStore\n .calculateNextCenterOffsetWithScreenMarginChange({\n leftMargin: 0,\n rightMargin: right,\n fullWidth: width\n })\n .pipe(\n first(),\n map((center) => ({ to: { center, duration: 3200, essential: false } } as MapboxEaseTo))\n );\n\n this.dbxMapboxMapStore.easeTo(easeTo);\n });\n });\n }\n\n ngOnDestroy(): void {\n this._resized.complete();\n this._updateMargins.complete();\n this._side.complete();\n this._openToggle.complete();\n this._color.complete();\n this._toggleSub.destroy();\n }\n\n toggleDrawer(open?: boolean) {\n if (open == null) {\n open = !this._openToggle.value;\n }\n\n this._openToggle.next(open);\n }\n\n @Input()\n set side(side: Maybe<DbxMapboxLayoutSide>) {\n if (side != null) {\n this._side.next(side);\n }\n }\n\n @Input()\n set opened(opened: Maybe<boolean>) {\n if (opened != null) {\n this._openToggle.next(opened);\n }\n }\n\n @Input()\n set drawerColor(color: Maybe<DbxThemeColor>) {\n this._color.next(color);\n }\n\n onResized(event: ResizedEvent): void {\n this._resized.next();\n }\n}\n","<mat-drawer-container class=\"dbx-mapbox-layout-container\" [ngClass]=\"(drawerClasses$ | async) || ''\" [hasBackdrop]=\"false\">\n <mat-drawer class=\"dbx-mapbox-layout-drawer\" #drawer [opened]=\"opened$ | async\" mode=\"push\" [position]=\"(position$ | async) || 'end'\">\n <div class=\"dbx-mapbox-layout-drawer-content\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <ng-content select=\"[drawer]\"></ng-content>\n <dbx-mapbox-layout-drawer></dbx-mapbox-layout-drawer>\n </div>\n </mat-drawer>\n <mat-drawer-content #content class=\"dbx-mapbox-layout-content\" (resized)=\"onResized($event)\">\n <button mat-icon-button (click)=\"toggleDrawer()\" class=\"dbx-mapbox-layout-drawer-button\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <mat-icon>{{ buttonIcon$ | async }}</mat-icon>\n </button>\n <ng-content></ng-content>\n </mat-drawer-content>\n</mat-drawer-container>\n","import { SubscriptionObject } from '@dereekb/rxjs';\nimport { filter, switchMap, BehaviorSubject, of } from 'rxjs';\nimport { DbxMapboxService } from './mapbox.service';\nimport { DbxMapboxMapStore } from './mapbox.store';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, Directive, Host, HostListener, Input, OnInit, Optional, OnDestroy, NgZone } from '@angular/core';\nimport { MapComponent, MapService } from 'ngx-mapbox-gl';\nimport { Vector, latLngPoint, Maybe, DestroyFunction, DestroyFunctionObject } from '@dereekb/util';\nimport { MatMenu, MatMenuTrigger } from '@angular/material/menu';\nimport { AbstractSubscriptionDirective, safeMarkForCheck } from '@dereekb/dbx-core';\nimport { disableRightClickInCdkBackdrop } from '@dereekb/dbx-web';\n\n/**\n * Directive that connects a host MatMenuTrigger to a DbxMapboxMapStore and listens for right-clicks on the map.\n *\n * The map dissapears if the mouse scrolls anywhere else on the map.\n */\n@Component({\n selector: 'dbx-mapbox-menu',\n template: '',\n host: {\n style: 'visibility: hidden; position: fixed',\n '[style.top]': 'pos.y',\n '[style.left]': 'pos.x'\n },\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DbxMapboxMenuComponent extends AbstractSubscriptionDirective implements OnInit, OnDestroy {\n private _pos = { x: `0`, y: `0` };\n private _active = new BehaviorSubject<boolean>(true);\n\n private _menuCloseSub = new SubscriptionObject();\n private _preventRightClick = new DestroyFunctionObject();\n\n get pos() {\n return this._pos;\n }\n\n constructor(readonly dbxMapboxMapStore: DbxMapboxMapStore, @Host() readonly matMenuTrigger: MatMenuTrigger, readonly ngZone: NgZone, readonly cdRef: ChangeDetectorRef) {\n super();\n }\n\n ngOnInit(): void {\n this.sub = this._active\n .pipe(\n switchMap((active) => {\n if (active) {\n return this.dbxMapboxMapStore.rightClickEvent$;\n } else {\n return of();\n }\n }),\n filter(Boolean)\n )\n .subscribe((event) => {\n const menu = this.matMenuTrigger.menu;\n const buttonEvent = event.originalEvent;\n\n if (menu && buttonEvent) {\n buttonEvent.preventDefault();\n\n // update position of this component for menu to open at\n this._pos = {\n x: `${buttonEvent.x}px`,\n y: `${buttonEvent.y}px`\n };\n\n safeMarkForCheck(this.cdRef);\n\n // open menu\n this.ngZone.run(() => this.matMenuTrigger.openMenu());\n\n // prevent right clicks in the cdkOverlay while the menu is open\n this._preventRightClick.destroy = disableRightClickInCdkBackdrop(undefined, () => {\n this.ngZone.run(() => this.matMenuTrigger.closeMenu());\n });\n }\n });\n\n this._menuCloseSub.subscription = this.matMenuTrigger.menuClosed.subscribe(() => {\n // destroy prevention when the menu is closed.\n this._preventRightClick.destroy();\n });\n }\n\n override ngOnDestroy(): void {\n super.ngOnDestroy();\n this._active.complete();\n this._preventRightClick.destroy();\n this._menuCloseSub.destroy();\n\n if (this.matMenuTrigger) {\n this.matMenuTrigger.closeMenu();\n }\n }\n\n @Input('dbxMapboxMenu')\n set active(active: Maybe<boolean>) {\n this._active.next(active ?? true);\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DbxMapboxMapDirective } from './mapbox.store.map.directive';\nimport { DbxMapboxConfig } from './mapbox.service';\nimport { DbxMapboxLayoutComponent } from './mapbox.layout.component';\nimport { MatSidenavModule } from '@angular/material/sidenav';\nimport { DbxMapboxLayoutDrawerComponent } from './mapbox.layout.drawer.component';\nimport { DbxInjectionComponentModule } from '@dereekb/dbx-core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { AngularResizeEventModule } from 'angular-resize-event';\nimport { DbxMapboxMenuComponent } from './mapbox.menu.component';\n\nconst declarations = [\n //\n DbxMapboxMapDirective,\n DbxMapboxLayoutComponent,\n DbxMapboxLayoutDrawerComponent,\n DbxMapboxMenuComponent\n];\n\n@NgModule({\n imports: [\n //\n CommonModule,\n MatSidenavModule,\n DbxInjectionComponentModule,\n MatButtonModule,\n MatIconModule,\n AngularResizeEventModule\n ],\n declarations,\n exports: declarations\n})\nexport class DbxMapboxModule {\n static forRoot(config: DbxMapboxConfig): ModuleWithProviders<DbxMapboxModule> {\n return {\n ngModule: DbxMapboxModule,\n providers: [\n {\n provide: DbxMapboxConfig,\n useValue: config\n }\n ]\n };\n }\n}\n","import { LatLngPointInput, LatLngBoundInput } from '@dereekb/util';\nimport * as MapboxGl from 'mapbox-gl';\n\nexport type KnownMapboxStyle = 'mapbox://styles/mapbox/streets-v11' | 'mapbox://styles/mapbox/outdoors-v11' | 'mapbox://styles/mapbox/light-v10' | 'mapbox://styles/mapbox/dark-v10' | 'mapbox://styles/mapbox/satellite-v9' | 'mapbox://styles/mapbox/satellite-streets-v11' | 'mapbox://styles/mapbox/navigation-day-v1' | 'mapbox://styles/mapbox/navigation-night-v1';\n\nexport const KNOWN_MAPBOX_STYLES: KnownMapboxStyle[] = [\n //\n 'mapbox://styles/mapbox/streets-v11',\n 'mapbox://styles/mapbox/outdoors-v11',\n 'mapbox://styles/mapbox/light-v10',\n 'mapbox://styles/mapbox/dark-v10',\n 'mapbox://styles/mapbox/satellite-v9',\n 'mapbox://styles/mapbox/satellite-streets-v11',\n 'mapbox://styles/mapbox/navigation-day-v1',\n 'mapbox://styles/mapbox/navigation-night-v1'\n];\n\nexport type MapboxZoomLevel = number;\nexport type MapboxPitch = number;\nexport type MapboxBearing = number;\n\nexport type DbxMapboxClickEvent = MapboxGl.MapMouseEvent & MapboxGl.EventData;\n\nexport interface MapboxStyleConfig {\n style: MapboxGl.Style | string;\n options?: {\n diff?: boolean | undefined;\n localIdeographFontFamily?: string | undefined;\n };\n}\n\nexport interface MapboxFitBounds {\n bounds: LatLngBoundInput;\n options?: mapboxgl.FitBoundsOptions;\n eventData?: mapboxgl.EventData;\n}\n\nexport interface MapboxJumpToPositionOptions extends Omit<MapboxGl.CameraOptions, 'center'> {\n center: LatLngPointInput;\n}\n\nexport interface MapboxJumpTo {\n center?: LatLngPointInput;\n to?: MapboxJumpToPositionOptions;\n eventData?: mapboxgl.EventData;\n}\n\nexport interface MapboxEaseToPositionOptions extends Omit<MapboxGl.EaseToOptions, 'center'>, MapboxJumpToPositionOptions {}\n\nexport interface MapboxEaseTo {\n center?: LatLngPointInput;\n to?: MapboxEaseToPositionOptions;\n eventData?: mapboxgl.EventData;\n}\n\nexport interface MapboxFlyToPositionOptions extends Omit<MapboxGl.FlyToOptions, 'center'>, MapboxJumpToPositionOptions {}\n\nexport interface MapboxFlyTo {\n center?: LatLngPointInput;\n to?: MapboxFlyToPositionOptions;\n eventData?: mapboxgl.EventData;\n}\n\nexport interface MapboxRotateTo {\n bearing: MapboxBearing;\n options?: mapboxgl.AnimationOptions;\n eventData?: mapboxgl.EventData;\n}\n\nexport interface MapboxResetNorth {\n options?: mapboxgl.AnimationOptions;\n eventData?: mapboxgl.EventData;\n}\n\nexport interface MapboxResetNorthPitch {\n options?: mapboxgl.AnimationOptions;\n eventData?: mapboxgl.EventData;\n}\n\nexport interface MapboxSnapToNorth {\n options?: mapboxgl.AnimationOptions;\n eventData?: mapboxgl.EventData;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.DbxMapboxService","i3.DbxMapboxMapStore","i1.DbxMapboxMapStore","i3","i2","i7.DbxMapboxLayoutDrawerComponent"],"mappings":"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"}
|
|
@@ -524,10 +524,10 @@ class DbxMapboxLayoutComponent extends SubscriptionObject {
|
|
|
524
524
|
}
|
|
525
525
|
}
|
|
526
526
|
DbxMapboxLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: DbxMapboxLayoutComponent, deps: [{ token: DbxMapboxMapStore }], target: i0.ɵɵFactoryTarget.Component });
|
|
527
|
-
DbxMapboxLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.2", type: DbxMapboxLayoutComponent, selector: "dbx-mapbox-layout", inputs: { side: "side", opened: "opened", drawerColor: "drawerColor" }, viewQueries: [{ propertyName: "container", first: true, predicate: MatDrawerContainer, descendants: true }, { propertyName: "content", first: true, predicate: ["content"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-drawer-container class=\"dbx-mapbox-layout-container\" [ngClass]=\"(drawerClasses$ | async) || ''\" [hasBackdrop]=\"false\">\n <mat-drawer class=\"dbx-mapbox-layout-drawer\" #drawer [opened]=\"opened$ | async\" mode=\"push\" [position]=\"(position$ | async) || 'end'\">\n <div class=\"dbx-mapbox-layout-drawer-content\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <ng-content select=\"[drawer]\"></ng-content>\n <dbx-mapbox-layout-drawer></dbx-mapbox-layout-drawer>\n </div>\n </mat-drawer>\n <mat-drawer-content #content class=\"dbx-mapbox-layout-content\" (resized)=\"onResized($event)\">\n <button mat-icon-button (click)=\"toggleDrawer()\" class=\"dbx-mapbox-layout-drawer-button\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <mat-icon>{{ buttonIcon$ | async }}</mat-icon>\n </button>\n <ng-content></ng-content>\n </mat-drawer-content>\n</mat-drawer-container>\n", styles: [".dbx-mapbox-layout-container{height:100%;max-width:100%}.dbx-mapbox-layout-container .mat-drawer-container{height:100%}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer-content{height:100%;width:100%;overflow:hidden}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{position:absolute;z-index:2;top:40%;border:none;display:flex;overflow:hidden}.left-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{left:0;border-radius:0 20px 20px 0}.right-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{right:0;border-radius:20px 0 0 20px}.has-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.has-drawer-content.open-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.no-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:0px}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button mat-icon{padding-left:8px}\n"], dependencies: [{ kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i3.MatDrawer, selector: "mat-drawer", inputs: ["position", "mode", "disableClose", "autoFocus", "opened"], outputs: ["openedChange", "opened", "openedStart", "closed", "closedStart", "positionChanged"], exportAs: ["matDrawer"] }, { kind: "component", type: i3.MatDrawerContainer, selector: "mat-drawer-container", inputs: ["autosize", "hasBackdrop"], outputs: ["backdropClick"], exportAs: ["matDrawerContainer"] }, { kind: "component", type: i3.MatDrawerContent, selector: "mat-drawer-content" }, { kind: "component", type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i6.ResizedDirective, selector: "[resized]", outputs: ["resized"] }, { kind: "component", type: DbxMapboxLayoutDrawerComponent, selector: "dbx-mapbox-layout-drawer" }, { kind: "pipe", type: i2$1.AsyncPipe, name: "async" }] });
|
|
527
|
+
DbxMapboxLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.2", type: DbxMapboxLayoutComponent, selector: "dbx-mapbox-layout", inputs: { side: "side", opened: "opened", drawerColor: "drawerColor" }, viewQueries: [{ propertyName: "container", first: true, predicate: MatDrawerContainer, descendants: true }, { propertyName: "content", first: true, predicate: ["content"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-drawer-container class=\"dbx-mapbox-layout-container\" [ngClass]=\"(drawerClasses$ | async) || ''\" [hasBackdrop]=\"false\">\n <mat-drawer class=\"dbx-mapbox-layout-drawer\" #drawer [opened]=\"opened$ | async\" mode=\"push\" [position]=\"(position$ | async) || 'end'\">\n <div class=\"dbx-mapbox-layout-drawer-content\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <ng-content select=\"[drawer]\"></ng-content>\n <dbx-mapbox-layout-drawer></dbx-mapbox-layout-drawer>\n </div>\n </mat-drawer>\n <mat-drawer-content #content class=\"dbx-mapbox-layout-content\" (resized)=\"onResized($event)\">\n <button mat-icon-button (click)=\"toggleDrawer()\" class=\"dbx-mapbox-layout-drawer-button\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <mat-icon>{{ buttonIcon$ | async }}</mat-icon>\n </button>\n <ng-content></ng-content>\n </mat-drawer-content>\n</mat-drawer-container>\n", styles: [".dbx-mapbox-layout-container{height:100%;max-width:100%}.dbx-mapbox-layout-container .mat-drawer-container{height:100%}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer{max-width:calc(100% - var(--dbx-mapbox-min-width-var, 60px))}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer-content{height:100%;width:100%;overflow:hidden}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{position:absolute;z-index:2;top:40%;border:none;display:flex;overflow:hidden}.left-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{left:0;border-radius:0 20px 20px 0}.right-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{right:0;border-radius:20px 0 0 20px}.has-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.has-drawer-content.open-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.no-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:0px}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button mat-icon{padding-left:8px}\n"], dependencies: [{ kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i3.MatDrawer, selector: "mat-drawer", inputs: ["position", "mode", "disableClose", "autoFocus", "opened"], outputs: ["openedChange", "opened", "openedStart", "closed", "closedStart", "positionChanged"], exportAs: ["matDrawer"] }, { kind: "component", type: i3.MatDrawerContainer, selector: "mat-drawer-container", inputs: ["autosize", "hasBackdrop"], outputs: ["backdropClick"], exportAs: ["matDrawerContainer"] }, { kind: "component", type: i3.MatDrawerContent, selector: "mat-drawer-content" }, { kind: "component", type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i6.ResizedDirective, selector: "[resized]", outputs: ["resized"] }, { kind: "component", type: DbxMapboxLayoutDrawerComponent, selector: "dbx-mapbox-layout-drawer" }, { kind: "pipe", type: i2$1.AsyncPipe, name: "async" }] });
|
|
528
528
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: DbxMapboxLayoutComponent, decorators: [{
|
|
529
529
|
type: Component,
|
|
530
|
-
args: [{ selector: 'dbx-mapbox-layout', template: "<mat-drawer-container class=\"dbx-mapbox-layout-container\" [ngClass]=\"(drawerClasses$ | async) || ''\" [hasBackdrop]=\"false\">\n <mat-drawer class=\"dbx-mapbox-layout-drawer\" #drawer [opened]=\"opened$ | async\" mode=\"push\" [position]=\"(position$ | async) || 'end'\">\n <div class=\"dbx-mapbox-layout-drawer-content\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <ng-content select=\"[drawer]\"></ng-content>\n <dbx-mapbox-layout-drawer></dbx-mapbox-layout-drawer>\n </div>\n </mat-drawer>\n <mat-drawer-content #content class=\"dbx-mapbox-layout-content\" (resized)=\"onResized($event)\">\n <button mat-icon-button (click)=\"toggleDrawer()\" class=\"dbx-mapbox-layout-drawer-button\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <mat-icon>{{ buttonIcon$ | async }}</mat-icon>\n </button>\n <ng-content></ng-content>\n </mat-drawer-content>\n</mat-drawer-container>\n", styles: [".dbx-mapbox-layout-container{height:100%;max-width:100%}.dbx-mapbox-layout-container .mat-drawer-container{height:100%}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer-content{height:100%;width:100%;overflow:hidden}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{position:absolute;z-index:2;top:40%;border:none;display:flex;overflow:hidden}.left-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{left:0;border-radius:0 20px 20px 0}.right-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{right:0;border-radius:20px 0 0 20px}.has-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.has-drawer-content.open-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.no-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:0px}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button mat-icon{padding-left:8px}\n"] }]
|
|
530
|
+
args: [{ selector: 'dbx-mapbox-layout', template: "<mat-drawer-container class=\"dbx-mapbox-layout-container\" [ngClass]=\"(drawerClasses$ | async) || ''\" [hasBackdrop]=\"false\">\n <mat-drawer class=\"dbx-mapbox-layout-drawer\" #drawer [opened]=\"opened$ | async\" mode=\"push\" [position]=\"(position$ | async) || 'end'\">\n <div class=\"dbx-mapbox-layout-drawer-content\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <ng-content select=\"[drawer]\"></ng-content>\n <dbx-mapbox-layout-drawer></dbx-mapbox-layout-drawer>\n </div>\n </mat-drawer>\n <mat-drawer-content #content class=\"dbx-mapbox-layout-content\" (resized)=\"onResized($event)\">\n <button mat-icon-button (click)=\"toggleDrawer()\" class=\"dbx-mapbox-layout-drawer-button\" [ngClass]=\"(drawerButtonClasses$ | async) || ''\">\n <mat-icon>{{ buttonIcon$ | async }}</mat-icon>\n </button>\n <ng-content></ng-content>\n </mat-drawer-content>\n</mat-drawer-container>\n", styles: [".dbx-mapbox-layout-container{height:100%;max-width:100%}.dbx-mapbox-layout-container .mat-drawer-container{height:100%}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer{max-width:calc(100% - var(--dbx-mapbox-min-width-var, 60px))}.dbx-mapbox-layout-container .dbx-mapbox-layout-drawer-content{height:100%;width:100%;overflow:hidden}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{position:absolute;z-index:2;top:40%;border:none;display:flex;overflow:hidden}.left-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{left:0;border-radius:0 20px 20px 0}.right-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{right:0;border-radius:20px 0 0 20px}.has-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.has-drawer-content.open-drawer .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:35px}.no-drawer-content .dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button{width:0px}.dbx-mapbox-layout-content>.dbx-mapbox-layout-drawer-button mat-icon{padding-left:8px}\n"] }]
|
|
531
531
|
}], ctorParameters: function () { return [{ type: DbxMapboxMapStore }]; }, propDecorators: { container: [{
|
|
532
532
|
type: ViewChild,
|
|
533
533
|
args: [MatDrawerContainer]
|