@dereekb/dbx-web 9.23.17 → 9.23.19
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/calendar/esm2020/lib/calendar.base.component.mjs +20 -10
- package/calendar/esm2020/lib/calendar.store.mjs +70 -12
- package/calendar/fesm2015/dereekb-dbx-web-calendar.mjs +91 -23
- package/calendar/fesm2015/dereekb-dbx-web-calendar.mjs.map +1 -1
- package/calendar/fesm2020/dereekb-dbx-web-calendar.mjs +91 -23
- package/calendar/fesm2020/dereekb-dbx-web-calendar.mjs.map +1 -1
- package/calendar/lib/calendar.base.component.d.ts +7 -1
- package/calendar/lib/calendar.store.d.ts +53 -4
- package/calendar/package.json +2 -2
- package/esm2020/calendar/lib/calendar.base.component.mjs +20 -10
- package/esm2020/calendar/lib/calendar.store.mjs +70 -12
- package/esm2020/lib/layout/text/address.component.mjs +6 -5
- package/esm2020/lib/layout/text/detail.block.component.mjs +3 -3
- package/esm2020/lib/router/layout/anchor/anchor.component.mjs +15 -3
- package/esm2020/mapbox/lib/index.mjs +4 -1
- package/esm2020/mapbox/lib/mapbox.injection.component.mjs +32 -0
- package/esm2020/mapbox/lib/mapbox.injection.store.mjs +39 -0
- package/esm2020/mapbox/lib/mapbox.injection.store.provide.mjs +52 -0
- package/esm2020/mapbox/lib/mapbox.marker.component.mjs +6 -6
- package/esm2020/mapbox/lib/mapbox.marker.mjs +1 -1
- package/esm2020/mapbox/lib/mapbox.module.mjs +5 -1
- package/fesm2015/dereekb-dbx-web-calendar.mjs +91 -23
- package/fesm2015/dereekb-dbx-web-calendar.mjs.map +1 -1
- package/fesm2015/dereekb-dbx-web-mapbox.mjs +122 -9
- package/fesm2015/dereekb-dbx-web-mapbox.mjs.map +1 -1
- package/fesm2015/dereekb-dbx-web.mjs +22 -7
- package/fesm2015/dereekb-dbx-web.mjs.map +1 -1
- package/fesm2020/dereekb-dbx-web-calendar.mjs +91 -23
- package/fesm2020/dereekb-dbx-web-calendar.mjs.map +1 -1
- package/fesm2020/dereekb-dbx-web-mapbox.mjs +118 -8
- package/fesm2020/dereekb-dbx-web-mapbox.mjs.map +1 -1
- package/fesm2020/dereekb-dbx-web.mjs +20 -7
- package/fesm2020/dereekb-dbx-web.mjs.map +1 -1
- package/lib/extension/calendar/_calendar.scss +5 -3
- package/lib/extension/calendar/style/_variables.scss +4 -0
- package/lib/extension/calendar/style/month/calendar-month-view.scss +2 -0
- package/lib/extension/calendar/style/week/calendar-week-view.scss +5 -0
- package/lib/layout/flex/_flex.scss +2 -1
- package/lib/router/layout/anchor/anchor.component.d.ts +2 -0
- package/mapbox/esm2020/lib/index.mjs +4 -1
- package/mapbox/esm2020/lib/mapbox.injection.component.mjs +32 -0
- package/mapbox/esm2020/lib/mapbox.injection.store.mjs +39 -0
- package/mapbox/esm2020/lib/mapbox.injection.store.provide.mjs +52 -0
- package/mapbox/esm2020/lib/mapbox.marker.component.mjs +6 -6
- package/mapbox/esm2020/lib/mapbox.marker.mjs +1 -1
- package/mapbox/esm2020/lib/mapbox.module.mjs +5 -1
- package/mapbox/fesm2015/dereekb-dbx-web-mapbox.mjs +122 -9
- package/mapbox/fesm2015/dereekb-dbx-web-mapbox.mjs.map +1 -1
- package/mapbox/fesm2020/dereekb-dbx-web-mapbox.mjs +118 -8
- package/mapbox/fesm2020/dereekb-dbx-web-mapbox.mjs.map +1 -1
- package/mapbox/lib/index.d.ts +3 -0
- package/mapbox/lib/mapbox.injection.component.d.ts +16 -0
- package/mapbox/lib/mapbox.injection.store.d.ts +45 -0
- package/mapbox/lib/mapbox.injection.store.provide.d.ts +24 -0
- package/mapbox/lib/mapbox.marker.component.d.ts +3 -2
- package/mapbox/lib/mapbox.marker.d.ts +3 -2
- package/mapbox/lib/mapbox.module.d.ts +14 -13
- package/mapbox/package.json +3 -3
- package/package.json +3 -3
- package/table/package.json +3 -3
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { map, shareReplay } from 'rxjs';
|
|
2
|
+
import { Injectable } from '@angular/core';
|
|
3
|
+
import { ComponentStore } from '@ngrx/component-store';
|
|
4
|
+
import { distinctUntilMapHasDifferentKeys } from '@dereekb/rxjs';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
/**
|
|
7
|
+
* Store used for storing injectable content into the map.
|
|
8
|
+
*/
|
|
9
|
+
export class DbxMapboxInjectionStore extends ComponentStore {
|
|
10
|
+
constructor() {
|
|
11
|
+
super({
|
|
12
|
+
map: new Map()
|
|
13
|
+
});
|
|
14
|
+
this.map$ = this.state$.pipe(map((x) => x.map), distinctUntilMapHasDifferentKeys(), shareReplay(1));
|
|
15
|
+
this.allInjectionConfigs$ = this.map$.pipe(map((x) => Array.from(x.values())), shareReplay(1));
|
|
16
|
+
// MARK: State Changes
|
|
17
|
+
this.addInjectionConfig = this.updater(updateDbxMapboxMapInjectionStoreStateWithInjectionConfig);
|
|
18
|
+
this.removeInjectionConfigWithKey = this.updater(updateDbxMapboxMapInjectionStoreStateWithRemovedKey);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
DbxMapboxInjectionStore.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxMapboxInjectionStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
22
|
+
DbxMapboxInjectionStore.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxMapboxInjectionStore });
|
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxMapboxInjectionStore, decorators: [{
|
|
24
|
+
type: Injectable
|
|
25
|
+
}], ctorParameters: function () { return []; } });
|
|
26
|
+
export function updateDbxMapboxMapInjectionStoreStateWithInjectionConfig(state, config) {
|
|
27
|
+
const map = new Map(state.map).set(config.key, config);
|
|
28
|
+
return { ...state, map };
|
|
29
|
+
}
|
|
30
|
+
export function updateDbxMapboxMapInjectionStoreStateWithRemovedKey(state, key) {
|
|
31
|
+
// only create a new state if the key is going to get removed
|
|
32
|
+
if (state.map.has(key)) {
|
|
33
|
+
const map = new Map(state.map);
|
|
34
|
+
map.delete(key);
|
|
35
|
+
state = { ...state, map };
|
|
36
|
+
}
|
|
37
|
+
return state;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwYm94LmluamVjdGlvbi5zdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvbWFwYm94L3NyYy9saWIvbWFwYm94LmluamVjdGlvbi5zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsR0FBRyxFQUFjLFdBQVcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNwRCxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBRXRELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZ0NBQWdDLEVBQTJCLE1BQU0sZUFBZSxDQUFDOztBQThCMUY7O0dBRUc7QUFFSCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsY0FBK0M7SUFDMUY7UUFDRSxLQUFLLENBQUM7WUFDSixHQUFHLEVBQUUsSUFBSSxHQUFHLEVBQW1EO1NBQ2hFLENBQUMsQ0FBQztRQUdJLFNBQUksR0FBcUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ2hHLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUNqQixnQ0FBZ0MsRUFBRSxFQUNsQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztRQUVPLHlCQUFvQixHQUEyQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FDcEYsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLEVBQ2xDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO1FBRUYsc0JBQXNCO1FBQ2IsdUJBQWtCLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyx3REFBd0QsQ0FBQyxDQUFDO1FBQzVGLGlDQUE0QixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsbURBQW1ELENBQUMsQ0FBQztJQWYxRyxDQUFDOztxSEFMVSx1QkFBdUI7eUhBQXZCLHVCQUF1Qjs0RkFBdkIsdUJBQXVCO2tCQURuQyxVQUFVOztBQXdCWCxNQUFNLFVBQVUsd0RBQXdELENBQUMsS0FBc0MsRUFBRSxNQUFnQztJQUMvSSxNQUFNLEdBQUcsR0FBRyxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDdkQsT0FBTyxFQUFFLEdBQUcsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDO0FBQzNCLENBQUM7QUFFRCxNQUFNLFVBQVUsbURBQW1ELENBQUMsS0FBc0MsRUFBRSxHQUEwQjtJQUNwSSw2REFBNkQ7SUFDN0QsSUFBSSxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRTtRQUN0QixNQUFNLEdBQUcsR0FBRyxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDL0IsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNoQixLQUFLLEdBQUcsRUFBRSxHQUFHLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQztLQUMzQjtJQUVELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1hcCwgT2JzZXJ2YWJsZSwgc2hhcmVSZXBsYXkgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEluamVjdGFibGUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGJ4SW5qZWN0aW9uQXJyYXlFbnRyeSwgRGJ4SW5qZWN0aW9uQ29tcG9uZW50Q29uZmlnLCBEYnhJbmplY3Rpb25Db21wb25lbnRDb25maWdXaXRob3V0SW5qZWN0b3IgfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBDb21wb25lbnRTdG9yZSB9IGZyb20gJ0BuZ3J4L2NvbXBvbmVudC1zdG9yZSc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsTWFwSGFzRGlmZmVyZW50S2V5cywgT2JzZXJ2YWJsZU9yVmFsdWVHZXR0ZXIgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcblxuZXhwb3J0IHR5cGUgRGJ4TWFwYm94SW5qZWN0aW9uS2V5ID0gc3RyaW5nO1xuXG5leHBvcnQgaW50ZXJmYWNlIERieE1hcGJveEluamVjdGlvbkNvbmZpZyB7XG4gIC8qKlxuICAgKiBVbmlxdWUga2V5IHRoYXQgaWRlbnRpZmllcyB0aGlzIGNvbmZpZyBzcGVjaWZpY2FsbHkuXG4gICAqXG4gICAqIEtleXMgc2hvdWxkIGFsbCBiZSB1bmlxdWUuIFRoZSBzeXN0ZW0gZG9lcyBub3QgZXhwZWN0IGR1cGxpY2F0ZSBrZXlzLiBNb2RpZmljYXRpb25zIHRvIGluamVjdGlvbkNvbmZpZyBzaG91bGQgb2NjdXIgdGhyb3VnaCB0aGUgb2JzZXJ2YWJsZSB2YWx1ZS5cbiAgICovXG4gIHJlYWRvbmx5IGtleTogRGJ4TWFwYm94SW5qZWN0aW9uS2V5O1xuICAvKipcbiAgICogQXJiaXRyYXJ5IGluamVjdGlvbiB0eXBlLiBJcyB1c2VkIGZvciBmaWx0ZXJpbmcgb24gY29uZmlndXJhdGlvbnMuXG4gICAqL1xuICByZWFkb25seSB0eXBlPzogc3RyaW5nO1xuICAvKipcbiAgICogSW5qZWN0aW9uIGNvbmZpZ3VyYXRpb24uIFRoZSBpbmplY3RvciBpcyBkaXNhbGxvd2VkLCBhcyB0aGUgcGFyZW50IGluamVjdG9yIG11c3QgaW5jbHVkZSB0aGUgbWFwYm94IGNvbXBvbmVudC5cbiAgICovXG4gIHJlYWRvbmx5IGluamVjdGlvbkNvbmZpZzogT2JzZXJ2YWJsZU9yVmFsdWVHZXR0ZXI8RGJ4SW5qZWN0aW9uQ29tcG9uZW50Q29uZmlnV2l0aG91dEluamVjdG9yPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEYnhNYXBib3hNYXBJbmplY3Rpb25TdG9yZVN0YXRlIHtcbiAgLyoqXG4gICAqIEN1cnJlbnQgbWFwIG9mIGluamVjdGlvbiBrZXlzIGFuZCBjb25maWd1cmF0aW9ucy5cbiAgICovXG4gIHJlYWRvbmx5IG1hcDogTWFwPERieE1hcGJveEluamVjdGlvbktleSwgRGJ4TWFwYm94SW5qZWN0aW9uQ29uZmlnPjtcblxuICAvLyBUT0RPOiBBZGQgZmlsdGVycyBmb3Igc2hvd2luZy9oaWRpbmcgZWxlbWVudHMgb2YgZGlmZmVyZW50IHR5cGVzLlxufVxuXG4vKipcbiAqIFN0b3JlIHVzZWQgZm9yIHN0b3JpbmcgaW5qZWN0YWJsZSBjb250ZW50IGludG8gdGhlIG1hcC5cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIERieE1hcGJveEluamVjdGlvblN0b3JlIGV4dGVuZHMgQ29tcG9uZW50U3RvcmU8RGJ4TWFwYm94TWFwSW5qZWN0aW9uU3RvcmVTdGF0ZT4gaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcih7XG4gICAgICBtYXA6IG5ldyBNYXA8RGJ4TWFwYm94SW5qZWN0aW9uS2V5LCBEYnhNYXBib3hJbmplY3Rpb25Db25maWc+KClcbiAgICB9KTtcbiAgfVxuXG4gIHJlYWRvbmx5IG1hcCQ6IE9ic2VydmFibGU8TWFwPERieE1hcGJveEluamVjdGlvbktleSwgRGJ4TWFwYm94SW5qZWN0aW9uQ29uZmlnPj4gPSB0aGlzLnN0YXRlJC5waXBlKFxuICAgIG1hcCgoeCkgPT4geC5tYXApLFxuICAgIGRpc3RpbmN0VW50aWxNYXBIYXNEaWZmZXJlbnRLZXlzKCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBhbGxJbmplY3Rpb25Db25maWdzJDogT2JzZXJ2YWJsZTxEYnhNYXBib3hJbmplY3Rpb25Db25maWdbXT4gPSB0aGlzLm1hcCQucGlwZShcbiAgICBtYXAoKHgpID0+IEFycmF5LmZyb20oeC52YWx1ZXMoKSkpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgLy8gTUFSSzogU3RhdGUgQ2hhbmdlc1xuICByZWFkb25seSBhZGRJbmplY3Rpb25Db25maWcgPSB0aGlzLnVwZGF0ZXIodXBkYXRlRGJ4TWFwYm94TWFwSW5qZWN0aW9uU3RvcmVTdGF0ZVdpdGhJbmplY3Rpb25Db25maWcpO1xuICByZWFkb25seSByZW1vdmVJbmplY3Rpb25Db25maWdXaXRoS2V5ID0gdGhpcy51cGRhdGVyKHVwZGF0ZURieE1hcGJveE1hcEluamVjdGlvblN0b3JlU3RhdGVXaXRoUmVtb3ZlZEtleSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1cGRhdGVEYnhNYXBib3hNYXBJbmplY3Rpb25TdG9yZVN0YXRlV2l0aEluamVjdGlvbkNvbmZpZyhzdGF0ZTogRGJ4TWFwYm94TWFwSW5qZWN0aW9uU3RvcmVTdGF0ZSwgY29uZmlnOiBEYnhNYXBib3hJbmplY3Rpb25Db25maWcpIHtcbiAgY29uc3QgbWFwID0gbmV3IE1hcChzdGF0ZS5tYXApLnNldChjb25maWcua2V5LCBjb25maWcpO1xuICByZXR1cm4geyAuLi5zdGF0ZSwgbWFwIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1cGRhdGVEYnhNYXBib3hNYXBJbmplY3Rpb25TdG9yZVN0YXRlV2l0aFJlbW92ZWRLZXkoc3RhdGU6IERieE1hcGJveE1hcEluamVjdGlvblN0b3JlU3RhdGUsIGtleTogRGJ4TWFwYm94SW5qZWN0aW9uS2V5KSB7XG4gIC8vIG9ubHkgY3JlYXRlIGEgbmV3IHN0YXRlIGlmIHRoZSBrZXkgaXMgZ29pbmcgdG8gZ2V0IHJlbW92ZWRcbiAgaWYgKHN0YXRlLm1hcC5oYXMoa2V5KSkge1xuICAgIGNvbnN0IG1hcCA9IG5ldyBNYXAoc3RhdGUubWFwKTtcbiAgICBtYXAuZGVsZXRlKGtleSk7XG4gICAgc3RhdGUgPSB7IC4uLnN0YXRlLCBtYXAgfTtcbiAgfVxuXG4gIHJldHVybiBzdGF0ZTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { Directive, Injectable, Injector, Optional, SkipSelf } from '@angular/core';
|
|
2
|
+
import { DbxMapboxInjectionStore } from './mapbox.injection.store';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "./mapbox.injection.store";
|
|
5
|
+
/**
|
|
6
|
+
* Token used by provideMapboxInjectionStoreIfDoesNotExist() to prevent injecting a parent DbxMapboxInjectionStore into the child view.
|
|
7
|
+
*/
|
|
8
|
+
export class DbxMapboxInjectionStoreProviderBlock {
|
|
9
|
+
constructor(dbxMapboxInjectionStore) {
|
|
10
|
+
this.dbxMapboxInjectionStore = dbxMapboxInjectionStore;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
DbxMapboxInjectionStoreProviderBlock.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxMapboxInjectionStoreProviderBlock, deps: [{ token: i1.DbxMapboxInjectionStore, skipSelf: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
14
|
+
DbxMapboxInjectionStoreProviderBlock.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxMapboxInjectionStoreProviderBlock });
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxMapboxInjectionStoreProviderBlock, decorators: [{
|
|
16
|
+
type: Injectable
|
|
17
|
+
}], ctorParameters: function () { return [{ type: i1.DbxMapboxInjectionStore, decorators: [{
|
|
18
|
+
type: SkipSelf
|
|
19
|
+
}] }]; } });
|
|
20
|
+
export class DbxMapboxInjectionStoreInjectionBlockDirective {
|
|
21
|
+
}
|
|
22
|
+
DbxMapboxInjectionStoreInjectionBlockDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxMapboxInjectionStoreInjectionBlockDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
23
|
+
DbxMapboxInjectionStoreInjectionBlockDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: DbxMapboxInjectionStoreInjectionBlockDirective, selector: "[dbxMapboxInjectionStoreParentBlocker]", providers: [DbxMapboxInjectionStoreProviderBlock], ngImport: i0 });
|
|
24
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxMapboxInjectionStoreInjectionBlockDirective, decorators: [{
|
|
25
|
+
type: Directive,
|
|
26
|
+
args: [{
|
|
27
|
+
selector: '[dbxMapboxInjectionStoreParentBlocker]',
|
|
28
|
+
providers: [DbxMapboxInjectionStoreProviderBlock]
|
|
29
|
+
}]
|
|
30
|
+
}] });
|
|
31
|
+
/**
|
|
32
|
+
* Creates a Provider that initializes a new DbxMapboxInjectionStore if a parent does not exist.
|
|
33
|
+
*
|
|
34
|
+
* If a DbxMapboxInjectionStoreInjectionBlock is available in the context, and references the same dbxMapboxInjectionStore that is attempting to be injected, a new DbxMapboxInjectionStore is created.
|
|
35
|
+
*
|
|
36
|
+
* @returns
|
|
37
|
+
*/
|
|
38
|
+
export function provideMapboxInjectionStoreIfParentIsUnavailable() {
|
|
39
|
+
return {
|
|
40
|
+
provide: DbxMapboxInjectionStore,
|
|
41
|
+
useFactory: (parentInjector, dbxMapboxInjectionStoreInjectionBlock, dbxMapboxInjectionStore) => {
|
|
42
|
+
if (!dbxMapboxInjectionStore || (dbxMapboxInjectionStore && dbxMapboxInjectionStoreInjectionBlock != null && dbxMapboxInjectionStoreInjectionBlock.dbxMapboxInjectionStore === dbxMapboxInjectionStore)) {
|
|
43
|
+
// create a new dbxMapboxInjectionStore to use
|
|
44
|
+
const injector = Injector.create({ providers: [{ provide: DbxMapboxInjectionStore }], parent: parentInjector });
|
|
45
|
+
dbxMapboxInjectionStore = injector.get(DbxMapboxInjectionStore);
|
|
46
|
+
}
|
|
47
|
+
return dbxMapboxInjectionStore;
|
|
48
|
+
},
|
|
49
|
+
deps: [Injector, [new Optional(), DbxMapboxInjectionStoreProviderBlock], [new Optional(), new SkipSelf(), DbxMapboxInjectionStore]]
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwYm94LmluamVjdGlvbi5zdG9yZS5wcm92aWRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LXdlYi9tYXBib3gvc3JjL2xpYi9tYXBib3guaW5qZWN0aW9uLnN0b3JlLnByb3ZpZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBWSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMEJBQTBCLENBQUM7OztBQUVuRTs7R0FFRztBQUVILE1BQU0sT0FBTyxvQ0FBb0M7SUFDL0MsWUFBaUMsdUJBQWdEO1FBQWhELDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBeUI7SUFBRyxDQUFDOztrSUFEMUUsb0NBQW9DO3NJQUFwQyxvQ0FBb0M7NEZBQXBDLG9DQUFvQztrQkFEaEQsVUFBVTs7MEJBRUksUUFBUTs7QUFPdkIsTUFBTSxPQUFPLDhDQUE4Qzs7NElBQTlDLDhDQUE4QztnSUFBOUMsOENBQThDLGlFQUY5QyxDQUFDLG9DQUFvQyxDQUFDOzRGQUV0Qyw4Q0FBOEM7a0JBSjFELFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHdDQUF3QztvQkFDbEQsU0FBUyxFQUFFLENBQUMsb0NBQW9DLENBQUM7aUJBQ2xEOztBQUdEOzs7Ozs7R0FNRztBQUNILE1BQU0sVUFBVSxnREFBZ0Q7SUFDOUQsT0FBTztRQUNMLE9BQU8sRUFBRSx1QkFBdUI7UUFDaEMsVUFBVSxFQUFFLENBQUMsY0FBd0IsRUFBRSxxQ0FBNEUsRUFBRSx1QkFBaUQsRUFBRSxFQUFFO1lBQ3hLLElBQUksQ0FBQyx1QkFBdUIsSUFBSSxDQUFDLHVCQUF1QixJQUFJLHFDQUFxQyxJQUFJLElBQUksSUFBSSxxQ0FBcUMsQ0FBQyx1QkFBdUIsS0FBSyx1QkFBdUIsQ0FBQyxFQUFFO2dCQUN2TSw4Q0FBOEM7Z0JBQzlDLE1BQU0sUUFBUSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxDQUFDLENBQUM7Z0JBQ2hILHVCQUF1QixHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsdUJBQXVCLENBQUMsQ0FBQzthQUNqRTtZQUVELE9BQU8sdUJBQXVCLENBQUM7UUFDakMsQ0FBQztRQUNELElBQUksRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLElBQUksUUFBUSxFQUFFLEVBQUUsb0NBQW9DLENBQUMsRUFBRSxDQUFDLElBQUksUUFBUSxFQUFFLEVBQUUsSUFBSSxRQUFRLEVBQUUsRUFBRSx1QkFBdUIsQ0FBQyxDQUFDO0tBQ3BJLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBJbmplY3RhYmxlLCBJbmplY3RvciwgT3B0aW9uYWwsIFByb3ZpZGVyLCBTa2lwU2VsZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGJ4TWFwYm94SW5qZWN0aW9uU3RvcmUgfSBmcm9tICcuL21hcGJveC5pbmplY3Rpb24uc3RvcmUnO1xuXG4vKipcbiAqIFRva2VuIHVzZWQgYnkgcHJvdmlkZU1hcGJveEluamVjdGlvblN0b3JlSWZEb2VzTm90RXhpc3QoKSB0byBwcmV2ZW50IGluamVjdGluZyBhIHBhcmVudCBEYnhNYXBib3hJbmplY3Rpb25TdG9yZSBpbnRvIHRoZSBjaGlsZCB2aWV3LlxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRGJ4TWFwYm94SW5qZWN0aW9uU3RvcmVQcm92aWRlckJsb2NrIHtcbiAgY29uc3RydWN0b3IoQFNraXBTZWxmKCkgcmVhZG9ubHkgZGJ4TWFwYm94SW5qZWN0aW9uU3RvcmU6IERieE1hcGJveEluamVjdGlvblN0b3JlKSB7fVxufVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZGJ4TWFwYm94SW5qZWN0aW9uU3RvcmVQYXJlbnRCbG9ja2VyXScsXG4gIHByb3ZpZGVyczogW0RieE1hcGJveEluamVjdGlvblN0b3JlUHJvdmlkZXJCbG9ja11cbn0pXG5leHBvcnQgY2xhc3MgRGJ4TWFwYm94SW5qZWN0aW9uU3RvcmVJbmplY3Rpb25CbG9ja0RpcmVjdGl2ZSB7fVxuXG4vKipcbiAqIENyZWF0ZXMgYSBQcm92aWRlciB0aGF0IGluaXRpYWxpemVzIGEgbmV3IERieE1hcGJveEluamVjdGlvblN0b3JlIGlmIGEgcGFyZW50IGRvZXMgbm90IGV4aXN0LlxuICpcbiAqIElmIGEgRGJ4TWFwYm94SW5qZWN0aW9uU3RvcmVJbmplY3Rpb25CbG9jayBpcyBhdmFpbGFibGUgaW4gdGhlIGNvbnRleHQsIGFuZCByZWZlcmVuY2VzIHRoZSBzYW1lIGRieE1hcGJveEluamVjdGlvblN0b3JlIHRoYXQgaXMgYXR0ZW1wdGluZyB0byBiZSBpbmplY3RlZCwgYSBuZXcgRGJ4TWFwYm94SW5qZWN0aW9uU3RvcmUgaXMgY3JlYXRlZC5cbiAqXG4gKiBAcmV0dXJuc1xuICovXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZU1hcGJveEluamVjdGlvblN0b3JlSWZQYXJlbnRJc1VuYXZhaWxhYmxlKCk6IFByb3ZpZGVyIHtcbiAgcmV0dXJuIHtcbiAgICBwcm92aWRlOiBEYnhNYXBib3hJbmplY3Rpb25TdG9yZSxcbiAgICB1c2VGYWN0b3J5OiAocGFyZW50SW5qZWN0b3I6IEluamVjdG9yLCBkYnhNYXBib3hJbmplY3Rpb25TdG9yZUluamVjdGlvbkJsb2NrPzogRGJ4TWFwYm94SW5qZWN0aW9uU3RvcmVQcm92aWRlckJsb2NrLCBkYnhNYXBib3hJbmplY3Rpb25TdG9yZT86IERieE1hcGJveEluamVjdGlvblN0b3JlKSA9PiB7XG4gICAgICBpZiAoIWRieE1hcGJveEluamVjdGlvblN0b3JlIHx8IChkYnhNYXBib3hJbmplY3Rpb25TdG9yZSAmJiBkYnhNYXBib3hJbmplY3Rpb25TdG9yZUluamVjdGlvbkJsb2NrICE9IG51bGwgJiYgZGJ4TWFwYm94SW5qZWN0aW9uU3RvcmVJbmplY3Rpb25CbG9jay5kYnhNYXBib3hJbmplY3Rpb25TdG9yZSA9PT0gZGJ4TWFwYm94SW5qZWN0aW9uU3RvcmUpKSB7XG4gICAgICAgIC8vIGNyZWF0ZSBhIG5ldyBkYnhNYXBib3hJbmplY3Rpb25TdG9yZSB0byB1c2VcbiAgICAgICAgY29uc3QgaW5qZWN0b3IgPSBJbmplY3Rvci5jcmVhdGUoeyBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IERieE1hcGJveEluamVjdGlvblN0b3JlIH1dLCBwYXJlbnQ6IHBhcmVudEluamVjdG9yIH0pO1xuICAgICAgICBkYnhNYXBib3hJbmplY3Rpb25TdG9yZSA9IGluamVjdG9yLmdldChEYnhNYXBib3hJbmplY3Rpb25TdG9yZSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBkYnhNYXBib3hJbmplY3Rpb25TdG9yZTtcbiAgICB9LFxuICAgIGRlcHM6IFtJbmplY3RvciwgW25ldyBPcHRpb25hbCgpLCBEYnhNYXBib3hJbmplY3Rpb25TdG9yZVByb3ZpZGVyQmxvY2tdLCBbbmV3IE9wdGlvbmFsKCksIG5ldyBTa2lwU2VsZigpLCBEYnhNYXBib3hJbmplY3Rpb25TdG9yZV1dXG4gIH07XG59XG4iXX0=
|
|
@@ -76,11 +76,11 @@ export class DbxMapboxMarkerComponent {
|
|
|
76
76
|
return style;
|
|
77
77
|
}
|
|
78
78
|
get presentation() {
|
|
79
|
-
return this._marker
|
|
79
|
+
return this._marker?.presentation ?? 'normal';
|
|
80
80
|
}
|
|
81
81
|
get presentationClasses() {
|
|
82
82
|
const presentation = this.presentation;
|
|
83
|
-
const markerClasses = this._marker
|
|
83
|
+
const markerClasses = this._marker?.markerClasses;
|
|
84
84
|
let cssClasses = '';
|
|
85
85
|
switch (presentation) {
|
|
86
86
|
case 'chip':
|
|
@@ -95,7 +95,7 @@ export class DbxMapboxMarkerComponent {
|
|
|
95
95
|
cssClasses += ' dbx-mapbox-marker-no-icon';
|
|
96
96
|
}
|
|
97
97
|
if (markerClasses) {
|
|
98
|
-
cssClasses += markerClasses
|
|
98
|
+
cssClasses += ` markerClasses`;
|
|
99
99
|
}
|
|
100
100
|
return cssClasses;
|
|
101
101
|
}
|
|
@@ -106,7 +106,7 @@ export class DbxMapboxMarkerComponent {
|
|
|
106
106
|
DbxMapboxMarkerComponent._latLngPoint = latLngPointFunction({ wrap: true });
|
|
107
107
|
DbxMapboxMarkerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxMapboxMarkerComponent, deps: [{ token: i1.DbxMapboxChangeService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
108
108
|
DbxMapboxMarkerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DbxMapboxMarkerComponent, selector: "dbx-mapbox-marker", inputs: { marker: "marker" }, ngImport: i0, template: `
|
|
109
|
-
<mgl-marker [lngLat]="latLng">
|
|
109
|
+
<mgl-marker *ngIf="marker" [lngLat]="latLng">
|
|
110
110
|
<dbx-anchor [anchor]="anchor">
|
|
111
111
|
<div class="dbx-mapbox-marker" [ngClass]="presentationClasses">
|
|
112
112
|
<div class="dbx-mapbox-marker-icon-content" [ngStyle]="style">
|
|
@@ -120,7 +120,7 @@ DbxMapboxMarkerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0
|
|
|
120
120
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxMapboxMarkerComponent, decorators: [{
|
|
121
121
|
type: Component,
|
|
122
122
|
args: [{ selector: 'dbx-mapbox-marker', template: `
|
|
123
|
-
<mgl-marker [lngLat]="latLng">
|
|
123
|
+
<mgl-marker *ngIf="marker" [lngLat]="latLng">
|
|
124
124
|
<dbx-anchor [anchor]="anchor">
|
|
125
125
|
<div class="dbx-mapbox-marker" [ngClass]="presentationClasses">
|
|
126
126
|
<div class="dbx-mapbox-marker-icon-content" [ngStyle]="style">
|
|
@@ -136,4 +136,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
136
136
|
}] }]; }, propDecorators: { marker: [{
|
|
137
137
|
type: Input
|
|
138
138
|
}] } });
|
|
139
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
139
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwYm94Lm1hcmtlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL21hcGJveC9zcmMvbGliL21hcGJveC5tYXJrZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFhLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsbUJBQW1CLEVBQVMsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7Ozs7QUFvQmpFLE1BQU0sT0FBTyx3QkFBd0I7SUFLbkMsWUFBeUMsdUJBQWdEO1FBQWhELDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBeUI7SUFBRyxDQUFDO0lBRTdGLElBQ0ksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBRUQsSUFBSSxNQUFNLENBQUMsTUFBOEI7UUFDdkMsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7SUFDeEIsQ0FBQztJQUVELElBQUksTUFBTTtRQUNSLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDO1FBQ25DLE9BQU8sS0FBSyxDQUFDLENBQUMsQ0FBQyx3QkFBd0IsQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUMxRSxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQztJQUM1QixDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ1AsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ2QsSUFBSSxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBRWYsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLElBQUksUUFBUSxDQUFDO1FBRTVDLFFBQVEsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUN6QixLQUFLLFFBQVE7Z0JBQ1gsSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRLEVBQUU7b0JBQzVCLEtBQUssR0FBRyxJQUFJLENBQUM7aUJBQ2Q7cUJBQU07b0JBQ0wsUUFBUSxJQUFJLEVBQUU7d0JBQ1osS0FBSyxPQUFPOzRCQUNWLEtBQUssR0FBRyxFQUFFLENBQUM7NEJBQ1gsTUFBTTt3QkFDUixLQUFLLFFBQVE7NEJBQ1gsS0FBSyxHQUFHLEVBQUUsQ0FBQzs0QkFDWCxNQUFNO3dCQUNSLEtBQUssT0FBTzs0QkFDVixLQUFLLEdBQUcsRUFBRSxDQUFDOzRCQUNYLE1BQU07d0JBQ1IsS0FBSyxNQUFNOzRCQUNULEtBQUssR0FBRyxFQUFFLENBQUM7NEJBQ1gsTUFBTSxHQUFHLEVBQUUsQ0FBQzs0QkFDWixNQUFNO3FCQUNUO29CQUNELE1BQU07aUJBQ1A7Z0JBQ0QsTUFBTTtTQUNUO1FBRUQsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNYLE1BQU0sR0FBRyxLQUFLLENBQUM7U0FDaEI7UUFFRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQztRQUN2QyxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxVQUFVLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFFN0gsTUFBTSxLQUFLLEdBQVE7WUFDakIsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUs7WUFDdEIsa0JBQWtCLEVBQUUsS0FBSztTQUMxQixDQUFDO1FBRUYsSUFBSSxLQUFLLElBQUksTUFBTSxFQUFFO1lBQ25CLEtBQUssQ0FBQyxLQUFLLEdBQUcsS0FBSyxHQUFHLElBQUksQ0FBQztZQUMzQixLQUFLLENBQUMsTUFBTSxHQUFHLE1BQU0sR0FBRyxJQUFJLENBQUM7WUFDN0IsS0FBSyxDQUFDLFdBQVcsQ0FBQyxHQUFHLEtBQUssR0FBRyxJQUFJLENBQUM7U0FDbkM7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsWUFBWSxJQUFJLFFBQVEsQ0FBQztJQUNoRCxDQUFDO0lBRUQsSUFBSSxtQkFBbUI7UUFDckIsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUN2QyxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQztRQUVsRCxJQUFJLFVBQVUsR0FBVyxFQUFFLENBQUM7UUFFNUIsUUFBUSxZQUFZLEVBQUU7WUFDcEIsS0FBSyxNQUFNLENBQUM7WUFDWixLQUFLLFlBQVk7Z0JBQ2YsVUFBVSxHQUFHLDBEQUEwRCxDQUFDO2dCQUV4RSxJQUFJLFlBQVksS0FBSyxZQUFZLEVBQUU7b0JBQ2pDLFVBQVUsSUFBSSxpQkFBaUIsQ0FBQztpQkFDakM7Z0JBRUQsTUFBTTtTQUNUO1FBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDZCxVQUFVLElBQUksNEJBQTRCLENBQUM7U0FDNUM7UUFFRCxJQUFJLGFBQWEsRUFBRTtZQUNqQixVQUFVLElBQUksZ0JBQWdCLENBQUM7U0FDaEM7UUFFRCxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyx1QkFBdUIsRUFBRSxtQkFBbUIsRUFBRSxDQUFDO0lBQ3RELENBQUM7O0FBdkhjLHFDQUFZLEdBQUcsbUJBQW1CLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztzSEFEdkQsd0JBQXdCOzBHQUF4Qix3QkFBd0IsdUZBZnpCOzs7Ozs7Ozs7OztHQVdUOzRGQUlVLHdCQUF3QjtrQkFqQnBDLFNBQVM7K0JBQ0UsbUJBQW1CLFlBQ25COzs7Ozs7Ozs7OztHQVdULG1CQUVnQix1QkFBdUIsQ0FBQyxNQUFNOzswQkFPbEMsUUFBUTs0Q0FHakIsTUFBTTtzQkFEVCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIE9uRGVzdHJveSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGdldFZhbHVlRnJvbUdldHRlciwgbGF0TG5nUG9pbnRGdW5jdGlvbiwgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IERieE1hcGJveENoYW5nZVNlcnZpY2UgfSBmcm9tICcuL21hcGJveC5jaGFuZ2Uuc2VydmljZSc7XG5pbXBvcnQgeyBEYnhNYXBib3hNYXJrZXIgfSBmcm9tICcuL21hcGJveC5tYXJrZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdkYngtbWFwYm94LW1hcmtlcicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG1nbC1tYXJrZXIgKm5nSWY9XCJtYXJrZXJcIiBbbG5nTGF0XT1cImxhdExuZ1wiPlxuICAgICAgPGRieC1hbmNob3IgW2FuY2hvcl09XCJhbmNob3JcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImRieC1tYXBib3gtbWFya2VyXCIgW25nQ2xhc3NdPVwicHJlc2VudGF0aW9uQ2xhc3Nlc1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJkYngtbWFwYm94LW1hcmtlci1pY29uLWNvbnRlbnRcIiBbbmdTdHlsZV09XCJzdHlsZVwiPlxuICAgICAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiaWNvblwiPnt7IGljb24gfX08L21hdC1pY29uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJkYngtbWFwYm94LW1hcmtlci1sYWJlbCBkYngtb3V0bGluZWQtdGV4dFwiICpuZ0lmPVwibGFiZWxcIj57eyBsYWJlbCB9fTwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGJ4LWFuY2hvcj5cbiAgICA8L21nbC1tYXJrZXI+XG4gIGAsXG4gIHN0eWxlVXJsczogWycuL21hcGJveC5tYXJrZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRGJ4TWFwYm94TWFya2VyQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBzdGF0aWMgX2xhdExuZ1BvaW50ID0gbGF0TG5nUG9pbnRGdW5jdGlvbih7IHdyYXA6IHRydWUgfSk7XG5cbiAgcHJpdmF0ZSBfbWFya2VyOiBNYXliZTxEYnhNYXBib3hNYXJrZXI+O1xuXG4gIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIHByaXZhdGUgcmVhZG9ubHkgX2RieE1hcGJveENoYW5nZVNlcnZpY2U/OiBEYnhNYXBib3hDaGFuZ2VTZXJ2aWNlKSB7fVxuXG4gIEBJbnB1dCgpXG4gIGdldCBtYXJrZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuX21hcmtlcjtcbiAgfVxuXG4gIHNldCBtYXJrZXIobWFya2VyOiBNYXliZTxEYnhNYXBib3hNYXJrZXI+KSB7XG4gICAgdGhpcy5fbWFya2VyID0gbWFya2VyO1xuICB9XG5cbiAgZ2V0IGxhdExuZygpIHtcbiAgICBjb25zdCBpbnB1dCA9IHRoaXMuX21hcmtlcj8ubGF0TG5nO1xuICAgIHJldHVybiBpbnB1dCA/IERieE1hcGJveE1hcmtlckNvbXBvbmVudC5fbGF0TG5nUG9pbnQoaW5wdXQpIDogdW5kZWZpbmVkO1xuICB9XG5cbiAgZ2V0IGFuY2hvcigpIHtcbiAgICByZXR1cm4gdGhpcy5fbWFya2VyPy5hbmNob3I7XG4gIH1cblxuICBnZXQgbGFiZWwoKSB7XG4gICAgcmV0dXJuIHRoaXMuX21hcmtlcj8ubGFiZWw7XG4gIH1cblxuICBnZXQgaWNvbigpIHtcbiAgICByZXR1cm4gdGhpcy5fbWFya2VyPy5pY29uO1xuICB9XG5cbiAgZ2V0IHN0eWxlKCkge1xuICAgIGxldCB3aWR0aCA9IDA7XG4gICAgbGV0IGhlaWdodCA9IDA7XG5cbiAgICBjb25zdCBzaXplID0gdGhpcy5fbWFya2VyPy5zaXplIHx8ICdtZWRpdW0nO1xuXG4gICAgc3dpdGNoICh0aGlzLnByZXNlbnRhdGlvbikge1xuICAgICAgY2FzZSAnbm9ybWFsJzpcbiAgICAgICAgaWYgKHR5cGVvZiBzaXplID09PSAnbnVtYmVyJykge1xuICAgICAgICAgIHdpZHRoID0gc2l6ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBzd2l0Y2ggKHNpemUpIHtcbiAgICAgICAgICAgIGNhc2UgJ3NtYWxsJzpcbiAgICAgICAgICAgICAgd2lkdGggPSAxODtcbiAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdtZWRpdW0nOlxuICAgICAgICAgICAgICB3aWR0aCA9IDI0O1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ2xhcmdlJzpcbiAgICAgICAgICAgICAgd2lkdGggPSAzMjtcbiAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICd0YWxsJzpcbiAgICAgICAgICAgICAgd2lkdGggPSAyNDtcbiAgICAgICAgICAgICAgaGVpZ2h0ID0gMzI7XG4gICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICBpZiAoIWhlaWdodCkge1xuICAgICAgaGVpZ2h0ID0gd2lkdGg7XG4gICAgfVxuXG4gICAgY29uc3QgaW1hZ2VJbnB1dCA9IHRoaXMuX21hcmtlcj8uaW1hZ2U7XG4gICAgY29uc3QgaW1hZ2UgPSBpbWFnZUlucHV0ID8gKHR5cGVvZiBpbWFnZUlucHV0ID09PSAnc3RyaW5nJyA/IGltYWdlSW5wdXQgOiBnZXRWYWx1ZUZyb21HZXR0ZXIoaW1hZ2VJbnB1dCwgd2lkdGgpKSA6IHVuZGVmaW5lZDtcblxuICAgIGNvbnN0IHN0eWxlOiBhbnkgPSB7XG4gICAgICAuLi50aGlzLl9tYXJrZXI/LnN0eWxlLFxuICAgICAgJ2JhY2tncm91bmQtaW1hZ2UnOiBpbWFnZVxuICAgIH07XG5cbiAgICBpZiAod2lkdGggJiYgaGVpZ2h0KSB7XG4gICAgICBzdHlsZS53aWR0aCA9IHdpZHRoICsgJ3B4JztcbiAgICAgIHN0eWxlLmhlaWdodCA9IGhlaWdodCArICdweCc7XG4gICAgICBzdHlsZVsnZm9udC1zaXplJ10gPSB3aWR0aCArICdweCc7XG4gICAgfVxuXG4gICAgcmV0dXJuIHN0eWxlO1xuICB9XG5cbiAgZ2V0IHByZXNlbnRhdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5fbWFya2VyPy5wcmVzZW50YXRpb24gPz8gJ25vcm1hbCc7XG4gIH1cblxuICBnZXQgcHJlc2VudGF0aW9uQ2xhc3NlcygpIHtcbiAgICBjb25zdCBwcmVzZW50YXRpb24gPSB0aGlzLnByZXNlbnRhdGlvbjtcbiAgICBjb25zdCBtYXJrZXJDbGFzc2VzID0gdGhpcy5fbWFya2VyPy5tYXJrZXJDbGFzc2VzO1xuXG4gICAgbGV0IGNzc0NsYXNzZXM6IHN0cmluZyA9ICcnO1xuXG4gICAgc3dpdGNoIChwcmVzZW50YXRpb24pIHtcbiAgICAgIGNhc2UgJ2NoaXAnOlxuICAgICAgY2FzZSAnY2hpcC1zbWFsbCc6XG4gICAgICAgIGNzc0NsYXNzZXMgPSAnZGJ4LW1hcGJveC1tYXJrZXItY2hpcCBkYngtY2hpcCBtYXQtc3RhbmRhcmQtY2hpcCBkYngtYmcnO1xuXG4gICAgICAgIGlmIChwcmVzZW50YXRpb24gPT09ICdjaGlwLXNtYWxsJykge1xuICAgICAgICAgIGNzc0NsYXNzZXMgKz0gJyBkYngtY2hpcC1zbWFsbCc7XG4gICAgICAgIH1cblxuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuaWNvbikge1xuICAgICAgY3NzQ2xhc3NlcyArPSAnIGRieC1tYXBib3gtbWFya2VyLW5vLWljb24nO1xuICAgIH1cblxuICAgIGlmIChtYXJrZXJDbGFzc2VzKSB7XG4gICAgICBjc3NDbGFzc2VzICs9IGAgbWFya2VyQ2xhc3Nlc2A7XG4gICAgfVxuXG4gICAgcmV0dXJuIGNzc0NsYXNzZXM7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9kYnhNYXBib3hDaGFuZ2VTZXJ2aWNlPy5lbWl0TWFya2VyRGVzdHJveWVkKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -13,4 +13,4 @@ export function dbxMapboxColoredDotStyle(background, color) {
|
|
|
13
13
|
'border-radius': '50%'
|
|
14
14
|
};
|
|
15
15
|
}
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwYm94Lm1hcmtlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvbWFwYm94L3NyYy9saWIvbWFwYm94Lm1hcmtlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEwREE7Ozs7OztHQU1HO0FBQ0gsTUFBTSxVQUFVLHdCQUF3QixDQUFDLFVBQWtCLEVBQUUsS0FBYztJQUN6RSxPQUFPO1FBQ0wsVUFBVTtRQUNWLE9BQU8sRUFBRSxLQUFLO1FBQ2QsS0FBSyxFQUFFLEtBQUssSUFBSSxVQUFVLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsU0FBUztRQUNoRCxlQUFlLEVBQUUsS0FBSztLQUN2QixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENsaWNrYWJsZUFuY2hvciB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcbmltcG9ydCB7IFBpeGVscywgRmFjdG9yeVdpdGhSZXF1aXJlZElucHV0LCBMYXRMbmdJbnB1dFJlZiwgVW5pcXVlTW9kZWwgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcblxuLyoqXG4gKiBEYnhNYXBib3hNYXJrZXJTaXplLiBOdW1iZXJzIGFyZSBjb252ZXJ0ZWQgdG8gcGl4ZWxzLlxuICovXG5leHBvcnQgdHlwZSBEYnhNYXBib3hNYXJrZXJTaXplID0gJ3NtYWxsJyB8ICdtZWRpdW0nIHwgJ2xhcmdlJyB8ICd0YWxsJyB8IFBpeGVscztcblxuLyoqXG4gKiBQcmVzZW50YXRpb24gc3R5bGUuXG4gKlxuICogLSBub3JtYWw6IFRleHQgdW5kZXIgZG90IHdpdGggb3B0aW9uYWwgaWNvbiB3aXRoaW4gZG90XG4gKiAtIGNoaXA6IFwiZGJ4LWNoaXBcIi1saWtlIHByZXNlbnRhdGlvblxuICovXG5leHBvcnQgdHlwZSBEYnhNYXBib3hNYXJrZXJQcmVzZW50YXRpb24gPSAnbm9ybWFsJyB8ICdjaGlwJyB8ICdjaGlwLXNtYWxsJztcblxuZXhwb3J0IGludGVyZmFjZSBEYnhNYXBib3hNYXJrZXJEaXNwbGF5Q29uZmlnIHtcbiAgLyoqXG4gICAqIFByZXNlbnRhdGlvbiBzdHlsZS4gRGVmYXVsdHMgdG8gXCJub3JtYWxcIlxuICAgKi9cbiAgcHJlc2VudGF0aW9uPzogRGJ4TWFwYm94TWFya2VyUHJlc2VudGF0aW9uO1xuICAvKipcbiAgICogQWRkaXRpb25hbCBjbGFzc2VzIHRvIGFkZCB0byB0aGUgbWFya2VyLlxuICAgKi9cbiAgbWFya2VyQ2xhc3Nlcz86IHN0cmluZztcbiAgLyoqXG4gICAqIGljb25cbiAgICovXG4gIGljb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBsYWJlbFxuICAgKi9cbiAgbGFiZWw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBJbWFnZSBVUkxcbiAgICovXG4gIGltYWdlPzogc3RyaW5nIHwgRmFjdG9yeVdpdGhSZXF1aXJlZElucHV0PHN0cmluZywgUGl4ZWxzPjtcbiAgLyoqXG4gICAqIFNpemUgb2YgdGhlIG1hcmtlci5cbiAgICovXG4gIHNpemU/OiBEYnhNYXBib3hNYXJrZXJTaXplO1xuICAvKipcbiAgICogQW5jaG9yXG4gICAqL1xuICBhbmNob3I/OiBDbGlja2FibGVBbmNob3I7XG4gIC8qKlxuICAgKiBBZGRpdGlvbmFsIGNvbnRlbnQgc3R5bGluZ1xuICAgKi9cbiAgc3R5bGU/OiBvYmplY3Q7XG59XG5cbmV4cG9ydCB0eXBlIERieE1hcGJveE1hcmtlciA9IFVuaXF1ZU1vZGVsICYgTGF0TG5nSW5wdXRSZWYgJiBEYnhNYXBib3hNYXJrZXJEaXNwbGF5Q29uZmlnO1xuXG4vKipcbiAqIE1hcEZ1bmN0aW9uIHRoYXQgY29udmVydHMgdGhlIGlucHV0IGRhdGEgdG8gYSBEYnhNYXBib3hNYXJrZXIuXG4gKi9cbmV4cG9ydCB0eXBlIERieE1hcGJveE1hcmtlckZhY3Rvcnk8VD4gPSAodmFsdWU6IFQsIGluZGV4OiBudW1iZXIpID0+IERieE1hcGJveE1hcmtlcjtcblxuLyoqXG4gKiBDcmVhdGVzIHRoZSBzdHlsaW5nIGZvciByZW5kZXJpbmcgYSBkb3QuXG4gKlxuICogQHBhcmFtIGJhY2tncm91bmRcbiAqIEBwYXJhbSBjb2xvclxuICogQHJldHVybnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRieE1hcGJveENvbG9yZWREb3RTdHlsZShiYWNrZ3JvdW5kOiBzdHJpbmcsIGNvbG9yPzogc3RyaW5nKSB7XG4gIHJldHVybiB7XG4gICAgYmFja2dyb3VuZCxcbiAgICBwYWRkaW5nOiAnMnB4JyxcbiAgICBjb2xvcjogY29sb3IgPz8gYmFja2dyb3VuZCA/ICd3aGl0ZScgOiB1bmRlZmluZWQsXG4gICAgJ2JvcmRlci1yYWRpdXMnOiAnNTAlJ1xuICB9O1xufVxuIl19
|
|
@@ -15,12 +15,14 @@ import { DbxMapboxMarkerComponent } from './mapbox.marker.component';
|
|
|
15
15
|
import { NgxMapboxGLModule } from 'ngx-mapbox-gl';
|
|
16
16
|
import { DbxRouterAnchorModule } from '@dereekb/dbx-web';
|
|
17
17
|
import { DbxMapboxMarkersComponent } from './mapbox.markers.component';
|
|
18
|
+
import { DbxMapboxInjectionComponent } from './mapbox.injection.component';
|
|
18
19
|
import * as i0 from "@angular/core";
|
|
19
20
|
const declarations = [
|
|
20
21
|
//
|
|
21
22
|
DbxMapboxMapDirective,
|
|
22
23
|
DbxMapboxLayoutComponent,
|
|
23
24
|
DbxMapboxLayoutDrawerComponent,
|
|
25
|
+
DbxMapboxInjectionComponent,
|
|
24
26
|
DbxMapboxMenuComponent,
|
|
25
27
|
DbxMapboxMarkerComponent,
|
|
26
28
|
DbxMapboxMarkersComponent,
|
|
@@ -45,6 +47,7 @@ DbxMapboxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version
|
|
|
45
47
|
DbxMapboxMapDirective,
|
|
46
48
|
DbxMapboxLayoutComponent,
|
|
47
49
|
DbxMapboxLayoutDrawerComponent,
|
|
50
|
+
DbxMapboxInjectionComponent,
|
|
48
51
|
DbxMapboxMenuComponent,
|
|
49
52
|
DbxMapboxMarkerComponent,
|
|
50
53
|
DbxMapboxMarkersComponent,
|
|
@@ -62,6 +65,7 @@ DbxMapboxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version
|
|
|
62
65
|
DbxMapboxMapDirective,
|
|
63
66
|
DbxMapboxLayoutComponent,
|
|
64
67
|
DbxMapboxLayoutDrawerComponent,
|
|
68
|
+
DbxMapboxInjectionComponent,
|
|
65
69
|
DbxMapboxMenuComponent,
|
|
66
70
|
DbxMapboxMarkerComponent,
|
|
67
71
|
DbxMapboxMarkersComponent,
|
|
@@ -94,4 +98,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
94
98
|
exports: declarations
|
|
95
99
|
}]
|
|
96
100
|
}] });
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwYm94Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvbWFwYm94L3NyYy9saWIvbWFwYm94Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDckUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ25ELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDaEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDakUsT0FBTyxFQUFFLHdDQUF3QyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbEYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDckUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3pELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOztBQUUzRSxNQUFNLFlBQVksR0FBRztJQUNuQixFQUFFO0lBQ0YscUJBQXFCO0lBQ3JCLHdCQUF3QjtJQUN4Qiw4QkFBOEI7SUFDOUIsMkJBQTJCO0lBQzNCLHNCQUFzQjtJQUN0Qix3QkFBd0I7SUFDeEIseUJBQXlCO0lBQ3pCLHdDQUF3QztDQUN6QyxDQUFDO0FBaUJGLE1BQU0sT0FBTyxlQUFlO0lBQzFCLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBdUI7UUFDcEMsT0FBTztZQUNMLFFBQVEsRUFBRSxlQUFlO1lBQ3pCLFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxPQUFPLEVBQUUsZUFBZTtvQkFDeEIsUUFBUSxFQUFFLE1BQU07aUJBQ2pCO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQzs7NkdBWFUsZUFBZTs4R0FBZixlQUFlO1FBMUIxQixFQUFFO1FBQ0YscUJBQXFCO1FBQ3JCLHdCQUF3QjtRQUN4Qiw4QkFBOEI7UUFDOUIsMkJBQTJCO1FBQzNCLHNCQUFzQjtRQUN0Qix3QkFBd0I7UUFDeEIseUJBQXlCO1FBQ3pCLHdDQUF3QztRQUt0QyxFQUFFO1FBQ0YsWUFBWTtRQUNaLGdCQUFnQjtRQUNoQiwyQkFBMkI7UUFDM0IsZUFBZTtRQUNmLGFBQWE7UUFDYix3QkFBd0I7UUFDeEIscUJBQXFCO1FBQ3JCLGlCQUFpQjtRQXJCbkIsRUFBRTtRQUNGLHFCQUFxQjtRQUNyQix3QkFBd0I7UUFDeEIsOEJBQThCO1FBQzlCLDJCQUEyQjtRQUMzQixzQkFBc0I7UUFDdEIsd0JBQXdCO1FBQ3hCLHlCQUF5QjtRQUN6Qix3Q0FBd0M7OEdBa0I3QixlQUFlO1FBYnhCLEVBQUU7UUFDRixZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLDJCQUEyQjtRQUMzQixlQUFlO1FBQ2YsYUFBYTtRQUNiLHdCQUF3QjtRQUN4QixxQkFBcUI7UUFDckIsaUJBQWlCOzRGQUtSLGVBQWU7a0JBZjNCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLEVBQUU7d0JBQ0YsWUFBWTt3QkFDWixnQkFBZ0I7d0JBQ2hCLDJCQUEyQjt3QkFDM0IsZUFBZTt3QkFDZixhQUFhO3dCQUNiLHdCQUF3Qjt3QkFDeEIscUJBQXFCO3dCQUNyQixpQkFBaUI7cUJBQ2xCO29CQUNELFlBQVk7b0JBQ1osT0FBTyxFQUFFLFlBQVk7aUJBQ3RCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEYnhNYXBib3hNYXBEaXJlY3RpdmUgfSBmcm9tICcuL21hcGJveC5zdG9yZS5tYXAuZGlyZWN0aXZlJztcbmltcG9ydCB7IERieE1hcGJveENvbmZpZyB9IGZyb20gJy4vbWFwYm94LnNlcnZpY2UnO1xuaW1wb3J0IHsgRGJ4TWFwYm94TGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi9tYXBib3gubGF5b3V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNYXRTaWRlbmF2TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2lkZW5hdic7XG5pbXBvcnQgeyBEYnhNYXBib3hMYXlvdXREcmF3ZXJDb21wb25lbnQgfSBmcm9tICcuL21hcGJveC5sYXlvdXQuZHJhd2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEYnhJbmplY3Rpb25Db21wb25lbnRNb2R1bGUgfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgQW5ndWxhclJlc2l6ZUV2ZW50TW9kdWxlIH0gZnJvbSAnYW5ndWxhci1yZXNpemUtZXZlbnQnO1xuaW1wb3J0IHsgRGJ4TWFwYm94TWVudUNvbXBvbmVudCB9IGZyb20gJy4vbWFwYm94Lm1lbnUuY29tcG9uZW50JztcbmltcG9ydCB7IERieE1hcGJveE1hcFN0b3JlSW5qZWN0aW9uQmxvY2tEaXJlY3RpdmUgfSBmcm9tICcuL21hcGJveC5zdG9yZS5wcm92aWRlJztcbmltcG9ydCB7IERieE1hcGJveE1hcmtlckNvbXBvbmVudCB9IGZyb20gJy4vbWFwYm94Lm1hcmtlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmd4TWFwYm94R0xNb2R1bGUgfSBmcm9tICduZ3gtbWFwYm94LWdsJztcbmltcG9ydCB7IERieFJvdXRlckFuY2hvck1vZHVsZSB9IGZyb20gJ0BkZXJlZWtiL2RieC13ZWInO1xuaW1wb3J0IHsgRGJ4TWFwYm94TWFya2Vyc0NvbXBvbmVudCB9IGZyb20gJy4vbWFwYm94Lm1hcmtlcnMuY29tcG9uZW50JztcbmltcG9ydCB7IERieE1hcGJveEluamVjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vbWFwYm94LmluamVjdGlvbi5jb21wb25lbnQnO1xuXG5jb25zdCBkZWNsYXJhdGlvbnMgPSBbXG4gIC8vXG4gIERieE1hcGJveE1hcERpcmVjdGl2ZSxcbiAgRGJ4TWFwYm94TGF5b3V0Q29tcG9uZW50LFxuICBEYnhNYXBib3hMYXlvdXREcmF3ZXJDb21wb25lbnQsXG4gIERieE1hcGJveEluamVjdGlvbkNvbXBvbmVudCxcbiAgRGJ4TWFwYm94TWVudUNvbXBvbmVudCxcbiAgRGJ4TWFwYm94TWFya2VyQ29tcG9uZW50LFxuICBEYnhNYXBib3hNYXJrZXJzQ29tcG9uZW50LFxuICBEYnhNYXBib3hNYXBTdG9yZUluamVjdGlvbkJsb2NrRGlyZWN0aXZlXG5dO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgLy9cbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTWF0U2lkZW5hdk1vZHVsZSxcbiAgICBEYnhJbmplY3Rpb25Db21wb25lbnRNb2R1bGUsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgQW5ndWxhclJlc2l6ZUV2ZW50TW9kdWxlLFxuICAgIERieFJvdXRlckFuY2hvck1vZHVsZSxcbiAgICBOZ3hNYXBib3hHTE1vZHVsZVxuICBdLFxuICBkZWNsYXJhdGlvbnMsXG4gIGV4cG9ydHM6IGRlY2xhcmF0aW9uc1xufSlcbmV4cG9ydCBjbGFzcyBEYnhNYXBib3hNb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdChjb25maWc6IERieE1hcGJveENvbmZpZyk6IE1vZHVsZVdpdGhQcm92aWRlcnM8RGJ4TWFwYm94TW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBEYnhNYXBib3hNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IERieE1hcGJveENvbmZpZyxcbiAgICAgICAgICB1c2VWYWx1ZTogY29uZmlnXG4gICAgICAgIH1cbiAgICAgIF1cbiAgICB9O1xuICB9XG59XG4iXX0=
|
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { Injectable, Component, EventEmitter, Output, NgModule } from '@angular/core';
|
|
3
|
-
import { startOfDay, endOfDay, startOfWeek, endOfWeek, startOfMonth, endOfMonth, differenceInDays,
|
|
4
|
-
import { distinctUntilChanged, switchMap, first, tap, map, shareReplay, withLatestFrom } from 'rxjs';
|
|
5
|
-
import { formatToTimeAndDurationString, sortDateRangeStartAscendingCompareFunction, isDateInDateRange } from '@dereekb/date';
|
|
3
|
+
import { startOfDay, endOfDay, startOfWeek, endOfWeek, startOfMonth, endOfMonth, differenceInDays, isBefore, isAfter, addDays, isSameDay, isSameMonth } from 'date-fns';
|
|
4
|
+
import { distinctUntilChanged, switchMap, first, tap, map, shareReplay, combineLatest, withLatestFrom } from 'rxjs';
|
|
5
|
+
import { formatToTimeAndDurationString, sortDateRangeStartAscendingCompareFunction, isDateInDateRange, isSameDateRange, isSameDateDay, isFullDateRange, clampDateToDateRange } from '@dereekb/date';
|
|
6
6
|
import { ComponentStore } from '@ngrx/component-store';
|
|
7
|
-
import * as i2
|
|
7
|
+
import * as i2 from '@angular/common';
|
|
8
8
|
import { CommonModule } from '@angular/common';
|
|
9
9
|
import * as i3$1 from '@angular/material/button-toggle';
|
|
10
10
|
import { MatButtonToggleModule } from '@angular/material/button-toggle';
|
|
11
11
|
import * as i4$1 from 'angular-calendar';
|
|
12
12
|
import { CalendarModule, CalendarDayModule, CalendarWeekModule, DateAdapter } from 'angular-calendar';
|
|
13
|
-
import * as
|
|
14
|
-
import * as
|
|
13
|
+
import * as i7 from '@angular/flex-layout/extended';
|
|
14
|
+
import * as i3 from '@angular/material/icon';
|
|
15
15
|
import { MatIconModule } from '@angular/material/icon';
|
|
16
|
-
import * as
|
|
16
|
+
import * as i4 from '@angular/material/button';
|
|
17
17
|
import { MatButtonModule } from '@angular/material/button';
|
|
18
|
-
import * as
|
|
18
|
+
import * as i5 from '@dereekb/dbx-web';
|
|
19
19
|
import { DbxButtonModule, DbxPopoverInteractionModule } from '@dereekb/dbx-web';
|
|
20
|
-
import * as
|
|
20
|
+
import * as i6 from '@angular/flex-layout/flex';
|
|
21
21
|
import { adapterFactory } from 'angular-calendar/date-adapters/date-fns';
|
|
22
22
|
import { FlexLayoutModule } from '@angular/flex-layout';
|
|
23
23
|
|
|
@@ -55,7 +55,7 @@ var CalendarDisplayType;
|
|
|
55
55
|
CalendarDisplayType["DAY"] = "day";
|
|
56
56
|
})(CalendarDisplayType || (CalendarDisplayType = {}));
|
|
57
57
|
function visibleDateRangeForCalendarState(calendarState) {
|
|
58
|
-
const { type, date } = calendarState;
|
|
58
|
+
const { navigationRangeLimit, type, date } = calendarState;
|
|
59
59
|
let start;
|
|
60
60
|
let end;
|
|
61
61
|
let distance;
|
|
@@ -76,12 +76,15 @@ function visibleDateRangeForCalendarState(calendarState) {
|
|
|
76
76
|
distance = 1;
|
|
77
77
|
break;
|
|
78
78
|
}
|
|
79
|
-
|
|
79
|
+
const isMinDateVisible = (navigationRangeLimit === null || navigationRangeLimit === void 0 ? void 0 : navigationRangeLimit.start) != null ? isBefore(start, navigationRangeLimit.start) : false;
|
|
80
|
+
const isMaxDateVisible = (navigationRangeLimit === null || navigationRangeLimit === void 0 ? void 0 : navigationRangeLimit.end) != null ? isAfter(end, navigationRangeLimit.end) : false;
|
|
80
81
|
return {
|
|
81
82
|
type,
|
|
82
83
|
start,
|
|
83
84
|
end,
|
|
84
|
-
distance
|
|
85
|
+
distance,
|
|
86
|
+
isMinDateVisible,
|
|
87
|
+
isMaxDateVisible
|
|
85
88
|
};
|
|
86
89
|
}
|
|
87
90
|
const distinctUntilDateOrTypeOrEventsChanged = distinctUntilChanged((a, b) => (a === null || a === void 0 ? void 0 : a.date) === (b === null || b === void 0 ? void 0 : b.date) && (a === null || a === void 0 ? void 0 : a.type) === (b === null || b === void 0 ? void 0 : b.type) && (a === null || a === void 0 ? void 0 : a.events) === (b === null || b === void 0 ? void 0 : b.events));
|
|
@@ -89,22 +92,42 @@ class DbxCalendarStore extends ComponentStore {
|
|
|
89
92
|
constructor() {
|
|
90
93
|
super({
|
|
91
94
|
type: CalendarDisplayType.MONTH,
|
|
95
|
+
showTodayButton: true,
|
|
92
96
|
date: new Date(),
|
|
93
97
|
dateTappedTwice: false,
|
|
94
98
|
events: []
|
|
95
99
|
});
|
|
96
100
|
// MARK: Effects
|
|
101
|
+
this.tapFirstPage = this.effect((input) => {
|
|
102
|
+
return input.pipe(switchMap(() => this.minNavigationDate$.pipe(first(), tap((x) => {
|
|
103
|
+
if (x) {
|
|
104
|
+
this.tapDay(x);
|
|
105
|
+
}
|
|
106
|
+
}))));
|
|
107
|
+
});
|
|
97
108
|
this.tapNext = this.effect((input) => {
|
|
98
|
-
return input.pipe(switchMap(() => this.visibleDateRange$.pipe(first(), tap(({ end }) => {
|
|
99
|
-
|
|
109
|
+
return input.pipe(switchMap(() => this.visibleDateRange$.pipe(first(), tap(({ end, isMaxDateVisible }) => {
|
|
110
|
+
if (!isMaxDateVisible) {
|
|
111
|
+
this.tapDay(addDays(end, 1));
|
|
112
|
+
}
|
|
100
113
|
}))));
|
|
101
114
|
});
|
|
102
115
|
this.tapPrevious = this.effect((input) => {
|
|
103
|
-
return input.pipe(switchMap(() => this.visibleDateRange$.pipe(first(), tap(({ start }) => {
|
|
104
|
-
|
|
116
|
+
return input.pipe(switchMap(() => this.visibleDateRange$.pipe(first(), tap(({ start, isMinDateVisible }) => {
|
|
117
|
+
if (!isMinDateVisible) {
|
|
118
|
+
this.tapDay(addDays(start, -1));
|
|
119
|
+
}
|
|
120
|
+
}))));
|
|
121
|
+
});
|
|
122
|
+
this.tapLastPage = this.effect((input) => {
|
|
123
|
+
return input.pipe(switchMap(() => this.maxNavigationDate$.pipe(first(), tap((x) => {
|
|
124
|
+
if (x) {
|
|
125
|
+
this.tapDay(x);
|
|
126
|
+
}
|
|
105
127
|
}))));
|
|
106
128
|
});
|
|
107
129
|
// MARK: Accessors
|
|
130
|
+
this.showTodayButton$ = this.state$.pipe(map((x) => x.showTodayButton), distinctUntilChanged(), shareReplay());
|
|
108
131
|
this.date$ = this.state$.pipe(map((x) => x.date));
|
|
109
132
|
this.dateTappedTwice$ = this.state$.pipe(map((x) => x.dateTappedTwice));
|
|
110
133
|
this.events$ = this.state$.pipe(map((x) => x.events));
|
|
@@ -126,15 +149,23 @@ class DbxCalendarStore extends ComponentStore {
|
|
|
126
149
|
return false; // Type changed, date range changed.
|
|
127
150
|
}
|
|
128
151
|
}), shareReplay(1));
|
|
129
|
-
this.isLookingAtToday$ = this.visibleDateRange$.pipe(map((x) => isDateInDateRange(new Date(),
|
|
152
|
+
this.isLookingAtToday$ = this.visibleDateRange$.pipe(map((x) => isDateInDateRange(new Date(), x)), distinctUntilChanged(), shareReplay(1));
|
|
153
|
+
this.isLookingAtMinimumDate$ = this.visibleDateRange$.pipe(map((x) => x.isMinDateVisible), distinctUntilChanged(), shareReplay(1));
|
|
154
|
+
this.isLookingAtMaximumDate$ = this.visibleDateRange$.pipe(map((x) => x.isMaxDateVisible), distinctUntilChanged(), shareReplay(1));
|
|
130
155
|
this.displayType$ = this.state$.pipe(map((x) => x.type), distinctUntilChanged((a, b) => a === b), shareReplay(1));
|
|
156
|
+
this.navigationRangeLimit$ = this.state$.pipe(map((x) => x.navigationRangeLimit), distinctUntilChanged(isSameDateRange), shareReplay(1));
|
|
157
|
+
this.minNavigationDate$ = this.navigationRangeLimit$.pipe(map((x) => x === null || x === void 0 ? void 0 : x.start), distinctUntilChanged(isSameDateDay), shareReplay(1));
|
|
158
|
+
this.maxNavigationDate$ = this.navigationRangeLimit$.pipe(map((x) => x === null || x === void 0 ? void 0 : x.end), distinctUntilChanged(isSameDateDay), shareReplay(1));
|
|
159
|
+
this.isTodayInNavigationRangeLimit$ = this.navigationRangeLimit$.pipe(map((x) => isDateInDateRange(new Date(), x !== null && x !== void 0 ? x : {})), distinctUntilChanged(), shareReplay(1));
|
|
160
|
+
this.canJumpToToday$ = combineLatest([this.isLookingAtToday$, this.isTodayInNavigationRangeLimit$]).pipe(map(([isLookingAtToday, isTodayInNavigationRangeLimit]) => !isLookingAtToday && isTodayInNavigationRangeLimit), distinctUntilChanged(), shareReplay(1));
|
|
161
|
+
this.canShowPageButtons$ = this.state$.pipe(map((x) => x.showPageButtons && x.navigationRangeLimit && isFullDateRange(x.navigationRangeLimit)), distinctUntilChanged(), shareReplay(1));
|
|
131
162
|
// MARK: State Changes
|
|
132
163
|
/**
|
|
133
164
|
* Tap a day.
|
|
134
165
|
*
|
|
135
166
|
* - If the same day is presented, dateTappedTwice is flipped.
|
|
136
167
|
*/
|
|
137
|
-
this.tapDay = this.updater((state, date) => (
|
|
168
|
+
this.tapDay = this.updater((state, date) => updateCalendarStateWithTappedDate(state, date));
|
|
138
169
|
/**
|
|
139
170
|
* Set all events on the calendar.
|
|
140
171
|
*/
|
|
@@ -143,6 +174,12 @@ class DbxCalendarStore extends ComponentStore {
|
|
|
143
174
|
* Set all events on the calendar.
|
|
144
175
|
*/
|
|
145
176
|
this.setDisplayType = this.updater((state, type) => (Object.assign(Object.assign({}, state), { type })));
|
|
177
|
+
/**
|
|
178
|
+
* Sets the navigation limit.
|
|
179
|
+
*/
|
|
180
|
+
this.setNavigationRangeLimit = this.updater((state, navigationRangeLimit) => updateCalendarStateWithNavigationRangeLimit(state, navigationRangeLimit));
|
|
181
|
+
this.setShowTodayButton = this.updater((state, showTodayButton) => (Object.assign(Object.assign({}, state), { showTodayButton: showTodayButton != null ? showTodayButton : true })));
|
|
182
|
+
this.setShowPageButtons = this.updater((state, showPageButtons) => (Object.assign(Object.assign({}, state), { showPageButtons: showPageButtons != null ? showPageButtons : false })));
|
|
146
183
|
}
|
|
147
184
|
}
|
|
148
185
|
DbxCalendarStore.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxCalendarStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
@@ -150,12 +187,37 @@ DbxCalendarStore.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", ver
|
|
|
150
187
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxCalendarStore, decorators: [{
|
|
151
188
|
type: Injectable
|
|
152
189
|
}], ctorParameters: function () { return []; } });
|
|
190
|
+
function updateCalendarStateWithTappedDate(state, date) {
|
|
191
|
+
// only update the date if it is different
|
|
192
|
+
if (!isSameDateDay(state.date, date)) {
|
|
193
|
+
// Only update the date if it is within the date range
|
|
194
|
+
if (!state.navigationRangeLimit || isDateInDateRange(date, state.navigationRangeLimit)) {
|
|
195
|
+
state = Object.assign(Object.assign({}, state), { date, dateTappedTwice: isSameDay(date, state.date) ? !state.dateTappedTwice : false });
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
return state;
|
|
199
|
+
}
|
|
200
|
+
function updateCalendarStateWithNavigationRangeLimit(state, navigationRangeLimit) {
|
|
201
|
+
const { date } = state;
|
|
202
|
+
// cap the date if it doesn't fall within the range.
|
|
203
|
+
if (navigationRangeLimit && !isDateInDateRange(date, navigationRangeLimit)) {
|
|
204
|
+
const clampedDate = clampDateToDateRange(date, navigationRangeLimit);
|
|
205
|
+
return Object.assign(Object.assign({}, state), { date: clampedDate, navigationRangeLimit });
|
|
206
|
+
}
|
|
207
|
+
else {
|
|
208
|
+
return Object.assign(Object.assign({}, state), { navigationRangeLimit });
|
|
209
|
+
}
|
|
210
|
+
}
|
|
153
211
|
|
|
154
212
|
class DbxCalendarBaseComponent {
|
|
155
213
|
constructor(calendarStore) {
|
|
156
214
|
this.calendarStore = calendarStore;
|
|
157
215
|
this.viewDate$ = this.calendarStore.date$;
|
|
158
|
-
this.
|
|
216
|
+
this.showTodayButton$ = this.calendarStore.showTodayButton$;
|
|
217
|
+
this.canJumpToToday$ = this.calendarStore.canJumpToToday$;
|
|
218
|
+
this.isLookingAtMinimumDate$ = this.calendarStore.isLookingAtMinimumDate$;
|
|
219
|
+
this.isLookingAtMaximumDate$ = this.calendarStore.isLookingAtMaximumDate$;
|
|
220
|
+
this.showPageButtons$ = this.calendarStore.canShowPageButtons$;
|
|
159
221
|
this.activeDayIsOpen$ = this.calendarStore.eventsForDateState$.pipe(withLatestFrom(this.calendarStore.date$), map(([x, date]) => {
|
|
160
222
|
if (x.events.length && isSameMonth(x.date, date)) {
|
|
161
223
|
return !x.dateTappedTwice;
|
|
@@ -167,21 +229,27 @@ class DbxCalendarBaseComponent {
|
|
|
167
229
|
todayClicked() {
|
|
168
230
|
this.calendarStore.tapDay(new Date());
|
|
169
231
|
}
|
|
232
|
+
firstPageButtonClicked() {
|
|
233
|
+
this.calendarStore.tapFirstPage();
|
|
234
|
+
}
|
|
170
235
|
nextButtonClicked() {
|
|
171
236
|
this.calendarStore.tapNext();
|
|
172
237
|
}
|
|
173
238
|
previousButtonClicked() {
|
|
174
239
|
this.calendarStore.tapPrevious();
|
|
175
240
|
}
|
|
241
|
+
lastPageButtonClicked() {
|
|
242
|
+
this.calendarStore.tapLastPage();
|
|
243
|
+
}
|
|
176
244
|
typeToggleChanged(event) {
|
|
177
245
|
this.calendarStore.setDisplayType(event.value);
|
|
178
246
|
}
|
|
179
247
|
}
|
|
180
248
|
DbxCalendarBaseComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxCalendarBaseComponent, deps: [{ token: DbxCalendarStore }], target: i0.ɵɵFactoryTarget.Component });
|
|
181
|
-
DbxCalendarBaseComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DbxCalendarBaseComponent, selector: "dbx-calendar-base", ngImport: i0, template: "<div class=\"dbx-calendar\">\n <h3 class=\"dbx-calendar-title\">{{ (viewDate$ | async)! | calendarDate: (displayType$ | async) + 'ViewTitle':'en' }}</h3>\n <div class=\"dbx-calendar-header\">\n <div class=\"dbx-calendar-controls\" fxLayout=\"row\" fxLayout.xs=\"column\" ngClass.xs=\"dbx-calendar-controls-compact\">\n <span class=\"dbx-calendar-controls-left\" fxFlex=\"nogrow\">\n <button mat-stroked-button [disabled]=\"
|
|
249
|
+
DbxCalendarBaseComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DbxCalendarBaseComponent, selector: "dbx-calendar-base", ngImport: i0, template: "<div class=\"dbx-calendar\">\n <h3 class=\"dbx-calendar-title\">{{ (viewDate$ | async)! | calendarDate: (displayType$ | async) + 'ViewTitle':'en' }}</h3>\n <div class=\"dbx-calendar-header\">\n <div class=\"dbx-calendar-controls\" fxLayout=\"row\" fxLayout.xs=\"column\" ngClass.xs=\"dbx-calendar-controls-compact\">\n <span class=\"dbx-calendar-controls-left\" fxFlex=\"nogrow\">\n <button *ngIf=\"showTodayButton$ | async\" mat-stroked-button [disabled]=\"!(canJumpToToday$ | async)\" (click)=\"todayClicked()\">Today</button>\n <dbx-button-spacer></dbx-button-spacer>\n <div class=\"d-iblock\">\n <button *ngIf=\"showPageButtons$ | async\" mat-icon-button [disabled]=\"isLookingAtMinimumDate$ | async\" aria-label=\"first page button\" (click)=\"firstPageButtonClicked()\">\n <mat-icon>first_page</mat-icon>\n </button>\n <button mat-icon-button [disabled]=\"isLookingAtMinimumDate$ | async\" [attr.aria-label]=\"'Previous ' + (displayType$ | async) + ' button'\" (click)=\"previousButtonClicked()\">\n <mat-icon>navigate_before</mat-icon>\n </button>\n <button mat-icon-button [disabled]=\"isLookingAtMaximumDate$ | async\" [attr.aria-label]=\"'Next' + (displayType$ | async)! + ' button'\" (click)=\"nextButtonClicked()\">\n <mat-icon>navigate_next</mat-icon>\n </button>\n <button *ngIf=\"showPageButtons$ | async\" mat-icon-button [disabled]=\"isLookingAtMaximumDate$ | async\" aria-label=\"last page button\" (click)=\"lastPageButtonClicked()\">\n <mat-icon>last_page</mat-icon>\n </button>\n </div>\n </span>\n <span class=\"spacer\"></span>\n <span class=\"dbx-calendar-controls-right\" fxFlex=\"nogrow\">\n <ng-content select=\"[controls]\"></ng-content>\n </span>\n </div>\n </div>\n <ng-content></ng-content>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { 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: "directive", type: i5.DbxButtonSpacerDirective, selector: "dbx-button-spacer,[dbxButtonSpacer]" }, { kind: "directive", type: i6.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i6.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i7.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i4$1.ɵCalendarDatePipe, name: "calendarDate" }] });
|
|
182
250
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxCalendarBaseComponent, decorators: [{
|
|
183
251
|
type: Component,
|
|
184
|
-
args: [{ selector: 'dbx-calendar-base', template: "<div class=\"dbx-calendar\">\n <h3 class=\"dbx-calendar-title\">{{ (viewDate$ | async)! | calendarDate: (displayType$ | async) + 'ViewTitle':'en' }}</h3>\n <div class=\"dbx-calendar-header\">\n <div class=\"dbx-calendar-controls\" fxLayout=\"row\" fxLayout.xs=\"column\" ngClass.xs=\"dbx-calendar-controls-compact\">\n <span class=\"dbx-calendar-controls-left\" fxFlex=\"nogrow\">\n <button mat-stroked-button [disabled]=\"
|
|
252
|
+
args: [{ selector: 'dbx-calendar-base', template: "<div class=\"dbx-calendar\">\n <h3 class=\"dbx-calendar-title\">{{ (viewDate$ | async)! | calendarDate: (displayType$ | async) + 'ViewTitle':'en' }}</h3>\n <div class=\"dbx-calendar-header\">\n <div class=\"dbx-calendar-controls\" fxLayout=\"row\" fxLayout.xs=\"column\" ngClass.xs=\"dbx-calendar-controls-compact\">\n <span class=\"dbx-calendar-controls-left\" fxFlex=\"nogrow\">\n <button *ngIf=\"showTodayButton$ | async\" mat-stroked-button [disabled]=\"!(canJumpToToday$ | async)\" (click)=\"todayClicked()\">Today</button>\n <dbx-button-spacer></dbx-button-spacer>\n <div class=\"d-iblock\">\n <button *ngIf=\"showPageButtons$ | async\" mat-icon-button [disabled]=\"isLookingAtMinimumDate$ | async\" aria-label=\"first page button\" (click)=\"firstPageButtonClicked()\">\n <mat-icon>first_page</mat-icon>\n </button>\n <button mat-icon-button [disabled]=\"isLookingAtMinimumDate$ | async\" [attr.aria-label]=\"'Previous ' + (displayType$ | async) + ' button'\" (click)=\"previousButtonClicked()\">\n <mat-icon>navigate_before</mat-icon>\n </button>\n <button mat-icon-button [disabled]=\"isLookingAtMaximumDate$ | async\" [attr.aria-label]=\"'Next' + (displayType$ | async)! + ' button'\" (click)=\"nextButtonClicked()\">\n <mat-icon>navigate_next</mat-icon>\n </button>\n <button *ngIf=\"showPageButtons$ | async\" mat-icon-button [disabled]=\"isLookingAtMaximumDate$ | async\" aria-label=\"last page button\" (click)=\"lastPageButtonClicked()\">\n <mat-icon>last_page</mat-icon>\n </button>\n </div>\n </span>\n <span class=\"spacer\"></span>\n <span class=\"dbx-calendar-controls-right\" fxFlex=\"nogrow\">\n <ng-content select=\"[controls]\"></ng-content>\n </span>\n </div>\n </div>\n <ng-content></ng-content>\n</div>\n" }]
|
|
185
253
|
}], ctorParameters: function () { return [{ type: DbxCalendarStore }]; } });
|
|
186
254
|
|
|
187
255
|
class DbxCalendarComponent {
|
|
@@ -221,7 +289,7 @@ class DbxCalendarComponent {
|
|
|
221
289
|
}
|
|
222
290
|
}
|
|
223
291
|
DbxCalendarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxCalendarComponent, deps: [{ token: DbxCalendarStore }], target: i0.ɵɵFactoryTarget.Component });
|
|
224
|
-
DbxCalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DbxCalendarComponent, selector: "dbx-calendar", outputs: { clickEvent: "clickEvent" }, ngImport: i0, template: "<dbx-calendar-base>\n <ng-container controls>\n <mat-button-toggle-group name=\"calendarDisplayStyle\" [value]=\"(displayType$ | async)!\" (change)=\"typeToggleChanged($event)\" aria-label=\"Display Style\">\n <mat-button-toggle value=\"month\">Month</mat-button-toggle>\n <mat-button-toggle value=\"week\">Week</mat-button-toggle>\n <mat-button-toggle value=\"day\">Day</mat-button-toggle>\n </mat-button-toggle-group>\n </ng-container>\n <div class=\"dbx-calendar-content\" [ngClass]=\"'dbx-calendar-content-' + (displayType$ | async)!\" [ngSwitch]=\"displayType$ | async\">\n <mwl-calendar-month-view *ngSwitchCase=\"'month'\" [viewDate]=\"(viewDate$ | async)!\" [events]=\"(events$ | async)!\" [activeDayIsOpen]=\"(activeDayIsOpen$ | async)!\" (dayClicked)=\"dayClicked($event.day)\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-month-view>\n <mwl-calendar-week-view *ngSwitchCase=\"'week'\" [viewDate]=\"(viewDate$ | async)!\" [events]=\"(events$ | async)!\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-week-view>\n <mwl-calendar-day-view *ngSwitchCase=\"'day'\" [viewDate]=\"(viewDate$ | async)!\" [events]=\"(events$ | async)!\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-day-view>\n </div>\n</dbx-calendar-base>\n", dependencies: [{ kind: "directive", type: i2
|
|
292
|
+
DbxCalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DbxCalendarComponent, selector: "dbx-calendar", outputs: { clickEvent: "clickEvent" }, ngImport: i0, template: "<dbx-calendar-base>\n <ng-container controls>\n <mat-button-toggle-group name=\"calendarDisplayStyle\" [value]=\"(displayType$ | async)!\" (change)=\"typeToggleChanged($event)\" aria-label=\"Display Style\">\n <mat-button-toggle value=\"month\">Month</mat-button-toggle>\n <mat-button-toggle value=\"week\">Week</mat-button-toggle>\n <mat-button-toggle value=\"day\">Day</mat-button-toggle>\n </mat-button-toggle-group>\n </ng-container>\n <div class=\"dbx-calendar-content\" [ngClass]=\"'dbx-calendar-content-' + (displayType$ | async)!\" [ngSwitch]=\"displayType$ | async\">\n <mwl-calendar-month-view *ngSwitchCase=\"'month'\" [viewDate]=\"(viewDate$ | async)!\" [events]=\"(events$ | async)!\" [activeDayIsOpen]=\"(activeDayIsOpen$ | async)!\" (dayClicked)=\"dayClicked($event.day)\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-month-view>\n <mwl-calendar-week-view *ngSwitchCase=\"'week'\" [viewDate]=\"(viewDate$ | async)!\" [events]=\"(events$ | async)!\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-week-view>\n <mwl-calendar-day-view *ngSwitchCase=\"'day'\" [viewDate]=\"(viewDate$ | async)!\" [events]=\"(events$ | async)!\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-day-view>\n </div>\n</dbx-calendar-base>\n", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i3$1.MatButtonToggleGroup, selector: "mat-button-toggle-group", inputs: ["appearance", "name", "vertical", "value", "multiple", "disabled"], outputs: ["valueChange", "change"], exportAs: ["matButtonToggleGroup"] }, { kind: "component", type: i3$1.MatButtonToggle, selector: "mat-button-toggle", inputs: ["disableRipple", "aria-label", "aria-labelledby", "id", "name", "value", "tabIndex", "appearance", "checked", "disabled"], outputs: ["change"], exportAs: ["matButtonToggle"] }, { kind: "component", type: i4$1.CalendarMonthViewComponent, selector: "mwl-calendar-month-view", inputs: ["viewDate", "events", "excludeDays", "activeDayIsOpen", "activeDay", "refresh", "locale", "tooltipPlacement", "tooltipTemplate", "tooltipAppendToBody", "tooltipDelay", "weekStartsOn", "headerTemplate", "cellTemplate", "openDayEventsTemplate", "eventTitleTemplate", "eventActionsTemplate", "weekendDays"], outputs: ["beforeViewRender", "dayClicked", "eventClicked", "columnHeaderClicked", "eventTimesChanged"] }, { kind: "component", type: i4$1.CalendarWeekViewComponent, selector: "mwl-calendar-week-view", inputs: ["viewDate", "events", "excludeDays", "refresh", "locale", "tooltipPlacement", "tooltipTemplate", "tooltipAppendToBody", "tooltipDelay", "weekStartsOn", "headerTemplate", "eventTemplate", "eventTitleTemplate", "eventActionsTemplate", "precision", "weekendDays", "snapDraggedEvents", "hourSegments", "hourDuration", "hourSegmentHeight", "minimumEventHeight", "dayStartHour", "dayStartMinute", "dayEndHour", "dayEndMinute", "hourSegmentTemplate", "eventSnapSize", "allDayEventsLabelTemplate", "daysInWeek", "currentTimeMarkerTemplate", "validateEventTimesChanged"], outputs: ["dayHeaderClicked", "eventClicked", "eventTimesChanged", "beforeViewRender", "hourSegmentClicked"] }, { kind: "component", type: i4$1.CalendarDayViewComponent, selector: "mwl-calendar-day-view", inputs: ["viewDate", "events", "hourSegments", "hourSegmentHeight", "hourDuration", "minimumEventHeight", "dayStartHour", "dayStartMinute", "dayEndHour", "dayEndMinute", "refresh", "locale", "eventSnapSize", "tooltipPlacement", "tooltipTemplate", "tooltipAppendToBody", "tooltipDelay", "hourSegmentTemplate", "eventTemplate", "eventTitleTemplate", "eventActionsTemplate", "snapDraggedEvents", "allDayEventsLabelTemplate", "currentTimeMarkerTemplate", "validateEventTimesChanged"], outputs: ["eventClicked", "hourSegmentClicked", "eventTimesChanged", "beforeViewRender"] }, { kind: "directive", type: i7.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "component", type: DbxCalendarBaseComponent, selector: "dbx-calendar-base" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] });
|
|
225
293
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxCalendarComponent, decorators: [{
|
|
226
294
|
type: Component,
|
|
227
295
|
args: [{ selector: 'dbx-calendar', template: "<dbx-calendar-base>\n <ng-container controls>\n <mat-button-toggle-group name=\"calendarDisplayStyle\" [value]=\"(displayType$ | async)!\" (change)=\"typeToggleChanged($event)\" aria-label=\"Display Style\">\n <mat-button-toggle value=\"month\">Month</mat-button-toggle>\n <mat-button-toggle value=\"week\">Week</mat-button-toggle>\n <mat-button-toggle value=\"day\">Day</mat-button-toggle>\n </mat-button-toggle-group>\n </ng-container>\n <div class=\"dbx-calendar-content\" [ngClass]=\"'dbx-calendar-content-' + (displayType$ | async)!\" [ngSwitch]=\"displayType$ | async\">\n <mwl-calendar-month-view *ngSwitchCase=\"'month'\" [viewDate]=\"(viewDate$ | async)!\" [events]=\"(events$ | async)!\" [activeDayIsOpen]=\"(activeDayIsOpen$ | async)!\" (dayClicked)=\"dayClicked($event.day)\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-month-view>\n <mwl-calendar-week-view *ngSwitchCase=\"'week'\" [viewDate]=\"(viewDate$ | async)!\" [events]=\"(events$ | async)!\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-week-view>\n <mwl-calendar-day-view *ngSwitchCase=\"'day'\" [viewDate]=\"(viewDate$ | async)!\" [events]=\"(events$ | async)!\" (eventClicked)=\"eventClicked('Clicked', $event.event)\"></mwl-calendar-day-view>\n </div>\n</dbx-calendar-base>\n" }]
|
|
@@ -311,5 +379,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
|
|
|
311
379
|
* Generated bundle index. Do not edit.
|
|
312
380
|
*/
|
|
313
381
|
|
|
314
|
-
export { CalendarDisplayType, DbxCalendarBaseComponent, DbxCalendarComponent, DbxCalendarModule, DbxCalendarRootModule, DbxCalendarStore, prepareAndSortCalendarEvents, visibleDateRangeForCalendarState };
|
|
382
|
+
export { CalendarDisplayType, DbxCalendarBaseComponent, DbxCalendarComponent, DbxCalendarModule, DbxCalendarRootModule, DbxCalendarStore, prepareAndSortCalendarEvents, updateCalendarStateWithNavigationRangeLimit, updateCalendarStateWithTappedDate, visibleDateRangeForCalendarState };
|
|
315
383
|
//# sourceMappingURL=dereekb-dbx-web-calendar.mjs.map
|