@ngageoint/mage.web-core-lib 6.6.1 → 6.6.3
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/angular-cli/builders/fesm-amd.js +64 -36
- package/angular-cli/builders/fesm-amd.js.map +1 -1
- package/angular-cli/schematics/plugin-library/index.js.map +1 -1
- package/common/xhr-img.component.d.ts +1 -1
- package/{esm2020 → esm2022}/common/mage-common.module.mjs +5 -5
- package/esm2022/common/xhr-img.component.mjs +105 -0
- package/esm2022/feed/feed.service.mjs +105 -0
- package/{esm2020 → esm2022}/mage-core-lib.module.mjs +5 -5
- package/esm2022/paging/paging.cdk-data-source.adapter.mjs +52 -0
- package/esm2022/paging/paging.model.mjs +25 -0
- package/esm2022/static-icon/static-icon-form-field/static-icon-form-field.component.mjs +146 -0
- package/esm2022/static-icon/static-icon-img/static-icon-img.component.mjs +36 -0
- package/{esm2020 → esm2022}/static-icon/static-icon-select/static-icon-select.component.mjs +16 -15
- package/esm2022/static-icon/static-icon.model.mjs +10 -0
- package/esm2022/static-icon/static-icon.module.mjs +54 -0
- package/esm2022/static-icon/static-icon.service.mjs +82 -0
- package/esm2022/user/user-read.service.mjs +34 -0
- package/esm2022/user/user-select/user-select.component.mjs +159 -0
- package/esm2022/user/user.module.mjs +64 -0
- package/feed/feed.model.d.ts +3 -3
- package/feed/feed.model.d.ts.map +1 -1
- package/{fesm2020 → fesm2022}/ngageoint-mage.web-core-lib-common.mjs +21 -20
- package/{fesm2020 → fesm2022}/ngageoint-mage.web-core-lib-common.mjs.map +1 -1
- package/{fesm2020 → fesm2022}/ngageoint-mage.web-core-lib-feed.mjs +4 -4
- package/{fesm2015 → fesm2022}/ngageoint-mage.web-core-lib-feed.mjs.map +1 -1
- package/{fesm2020 → fesm2022}/ngageoint-mage.web-core-lib-paging.mjs.map +1 -1
- package/{fesm2020 → fesm2022}/ngageoint-mage.web-core-lib-static-icon.mjs +61 -58
- package/fesm2022/ngageoint-mage.web-core-lib-static-icon.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/ngageoint-mage.web-core-lib-user.mjs +45 -45
- package/fesm2022/ngageoint-mage.web-core-lib-user.mjs.map +1 -0
- package/{fesm2020 → fesm2022}/ngageoint-mage.web-core-lib.mjs +4 -4
- package/{fesm2015 → fesm2022}/ngageoint-mage.web-core-lib.mjs.map +1 -1
- package/package.json +26 -46
- package/static-icon/static-icon-form-field/static-icon-form-field.component.d.ts +1 -1
- package/static-icon/static-icon-img/static-icon-img.component.d.ts +1 -1
- package/static-icon/static-icon-select/static-icon-select.component.d.ts +1 -1
- package/static-icon/static-icon.model.d.ts +1 -1
- package/static-icon/static-icon.model.d.ts.map +1 -1
- package/user/user-read.service.d.ts +1 -1
- package/user/user-read.service.d.ts.map +1 -1
- package/user/user-select/user-select.component.d.ts +1 -1
- package/angular-cli/README.md +0 -30
- package/esm2020/common/xhr-img.component.mjs +0 -104
- package/esm2020/feed/feed.service.mjs +0 -105
- package/esm2020/paging/paging.cdk-data-source.adapter.mjs +0 -52
- package/esm2020/paging/paging.model.mjs +0 -25
- package/esm2020/static-icon/static-icon-form-field/static-icon-form-field.component.mjs +0 -145
- package/esm2020/static-icon/static-icon-img/static-icon-img.component.mjs +0 -35
- package/esm2020/static-icon/static-icon.model.mjs +0 -10
- package/esm2020/static-icon/static-icon.module.mjs +0 -54
- package/esm2020/static-icon/static-icon.service.mjs +0 -82
- package/esm2020/user/user-read.service.mjs +0 -34
- package/esm2020/user/user-select/user-select.component.mjs +0 -159
- package/esm2020/user/user.module.mjs +0 -64
- package/fesm2015/ngageoint-mage.web-core-lib-common.mjs +0 -142
- package/fesm2015/ngageoint-mage.web-core-lib-common.mjs.map +0 -1
- package/fesm2015/ngageoint-mage.web-core-lib-feed.mjs +0 -114
- package/fesm2015/ngageoint-mage.web-core-lib-paging.mjs.map +0 -1
- package/fesm2015/ngageoint-mage.web-core-lib-static-icon.mjs +0 -392
- package/fesm2015/ngageoint-mage.web-core-lib-static-icon.mjs.map +0 -1
- package/fesm2015/ngageoint-mage.web-core-lib-user.mjs +0 -273
- package/fesm2015/ngageoint-mage.web-core-lib-user.mjs.map +0 -1
- package/fesm2015/ngageoint-mage.web-core-lib.mjs +0 -32
- package/fesm2020/ngageoint-mage.web-core-lib-event.mjs +0 -10
- package/fesm2020/ngageoint-mage.web-core-lib-event.mjs.map +0 -1
- package/fesm2020/ngageoint-mage.web-core-lib-feed.mjs.map +0 -1
- package/fesm2020/ngageoint-mage.web-core-lib-paging.mjs +0 -83
- package/fesm2020/ngageoint-mage.web-core-lib-plugin.mjs +0 -4
- package/fesm2020/ngageoint-mage.web-core-lib-plugin.mjs.map +0 -1
- package/fesm2020/ngageoint-mage.web-core-lib-static-icon.mjs.map +0 -1
- package/fesm2020/ngageoint-mage.web-core-lib-user.mjs.map +0 -1
- package/fesm2020/ngageoint-mage.web-core-lib.mjs.map +0 -1
- /package/{esm2020 → esm2022}/common/ngageoint-mage.web-core-lib-common.mjs +0 -0
- /package/{esm2020 → esm2022}/common/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/event/event-read.service.mjs +0 -0
- /package/{esm2020 → esm2022}/event/event.model.mjs +0 -0
- /package/{esm2020 → esm2022}/event/ngageoint-mage.web-core-lib-event.mjs +0 -0
- /package/{esm2020 → esm2022}/event/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/feed/feed.model.mjs +0 -0
- /package/{esm2020 → esm2022}/feed/ngageoint-mage.web-core-lib-feed.mjs +0 -0
- /package/{esm2020 → esm2022}/feed/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/ngageoint-mage.web-core-lib.mjs +0 -0
- /package/{esm2020 → esm2022}/paging/ngageoint-mage.web-core-lib-paging.mjs +0 -0
- /package/{esm2020 → esm2022}/paging/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/plugin/ngageoint-mage.web-core-lib-plugin.mjs +0 -0
- /package/{esm2020 → esm2022}/plugin/plugin.model.mjs +0 -0
- /package/{esm2020 → esm2022}/plugin/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/static-icon/ngageoint-mage.web-core-lib-static-icon.mjs +0 -0
- /package/{esm2020 → esm2022}/static-icon/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/user/ngageoint-mage.web-core-lib-user.mjs +0 -0
- /package/{esm2020 → esm2022}/user/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/user/user.model.mjs +0 -0
- /package/{fesm2015 → fesm2022}/ngageoint-mage.web-core-lib-event.mjs +0 -0
- /package/{fesm2015 → fesm2022}/ngageoint-mage.web-core-lib-event.mjs.map +0 -0
- /package/{fesm2015 → fesm2022}/ngageoint-mage.web-core-lib-paging.mjs +0 -0
- /package/{fesm2015 → fesm2022}/ngageoint-mage.web-core-lib-plugin.mjs +0 -0
- /package/{fesm2015 → fesm2022}/ngageoint-mage.web-core-lib-plugin.mjs.map +0 -0
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import { Component, ViewChild, forwardRef } from '@angular/core';
|
|
2
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import { NgSelectComponent } from '@ng-select/ng-select';
|
|
4
|
+
import { pageForItemIndex } from '@ngageoint/mage.web-core-lib/paging';
|
|
5
|
+
import { Subject } from 'rxjs';
|
|
6
|
+
import { debounceTime, distinctUntilChanged } from 'rxjs/operators';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "../user-read.service";
|
|
9
|
+
import * as i2 from "@ng-select/ng-select";
|
|
10
|
+
function UserSelectComponent_ng_template_1_Template(rf, ctx) { if (rf & 1) {
|
|
11
|
+
i0.ɵɵelementStart(0, "small", 3);
|
|
12
|
+
i0.ɵɵtext(1);
|
|
13
|
+
i0.ɵɵelementEnd();
|
|
14
|
+
} if (rf & 2) {
|
|
15
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
16
|
+
i0.ɵɵadvance();
|
|
17
|
+
i0.ɵɵtextInterpolate1("", ctx_r0.totalCount, " matching users");
|
|
18
|
+
} }
|
|
19
|
+
function UserSelectComponent_ng_template_2_Template(rf, ctx) { if (rf & 1) {
|
|
20
|
+
i0.ɵɵelementStart(0, "div", 4)(1, "p", 5);
|
|
21
|
+
i0.ɵɵtext(2);
|
|
22
|
+
i0.ɵɵelementEnd();
|
|
23
|
+
i0.ɵɵelementStart(3, "p", 6);
|
|
24
|
+
i0.ɵɵtext(4);
|
|
25
|
+
i0.ɵɵelementEnd();
|
|
26
|
+
i0.ɵɵelementStart(5, "p", 6);
|
|
27
|
+
i0.ɵɵtext(6);
|
|
28
|
+
i0.ɵɵelementEnd()();
|
|
29
|
+
} if (rf & 2) {
|
|
30
|
+
const user_r2 = ctx.item;
|
|
31
|
+
i0.ɵɵadvance(2);
|
|
32
|
+
i0.ɵɵtextInterpolate2("", user_r2.displayName, " (", user_r2.username, ")");
|
|
33
|
+
i0.ɵɵadvance(2);
|
|
34
|
+
i0.ɵɵtextInterpolate(user_r2.email || "[no email]");
|
|
35
|
+
i0.ɵɵadvance(2);
|
|
36
|
+
i0.ɵɵtextInterpolate(user_r2.allPhones || "[no phone]");
|
|
37
|
+
} }
|
|
38
|
+
export class UserSelectComponent {
|
|
39
|
+
get loading() {
|
|
40
|
+
return !!this.currentFetch && !this.currentFetch.closed;
|
|
41
|
+
}
|
|
42
|
+
constructor(userService) {
|
|
43
|
+
this.userService = userService;
|
|
44
|
+
this.baseFindParams = Object.freeze({
|
|
45
|
+
pageSize: 100,
|
|
46
|
+
pageIndex: 0,
|
|
47
|
+
term: null
|
|
48
|
+
});
|
|
49
|
+
this.nextPageScrollThreshold = 15;
|
|
50
|
+
this.searchTermDebounceTime = 500;
|
|
51
|
+
this.trackByUserId = x => x.id;
|
|
52
|
+
this.users = [];
|
|
53
|
+
this.totalCount = 0;
|
|
54
|
+
this.searchTerm$ = new Subject();
|
|
55
|
+
this.currentSearchTerm = null;
|
|
56
|
+
this.currentFetch = null;
|
|
57
|
+
}
|
|
58
|
+
ngOnInit() {
|
|
59
|
+
this.searchTerm$.pipe(distinctUntilChanged(), debounceTime(this.searchTermDebounceTime))
|
|
60
|
+
.subscribe(x => {
|
|
61
|
+
this.currentSearchTerm = x;
|
|
62
|
+
this.users = [];
|
|
63
|
+
this.totalCount = 0;
|
|
64
|
+
if (this.currentFetch) {
|
|
65
|
+
this.currentFetch.unsubscribe();
|
|
66
|
+
this.currentFetch = null;
|
|
67
|
+
}
|
|
68
|
+
this.fetchNextPage();
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
ngOnChanges(changes) {
|
|
72
|
+
}
|
|
73
|
+
ngAfterViewInit() {
|
|
74
|
+
}
|
|
75
|
+
writeValue(x) {
|
|
76
|
+
this.userSelect.writeValue(x);
|
|
77
|
+
}
|
|
78
|
+
registerOnChange(fn) {
|
|
79
|
+
this.userSelect.registerOnChange(fn);
|
|
80
|
+
}
|
|
81
|
+
registerOnTouched(fn) {
|
|
82
|
+
this.userSelect.registerOnTouched(fn);
|
|
83
|
+
}
|
|
84
|
+
setDisabledState(isDisabled) {
|
|
85
|
+
this.userSelect.setDisabledState(isDisabled);
|
|
86
|
+
}
|
|
87
|
+
onOpen() {
|
|
88
|
+
if (this.users.length === 0) {
|
|
89
|
+
this.fetchNextPage();
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
onScroll({ end }) {
|
|
93
|
+
if (end < this.users.length - this.nextPageScrollThreshold || this.users.length === this.totalCount) {
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
this.fetchNextPage();
|
|
97
|
+
}
|
|
98
|
+
onScrollToEnd() {
|
|
99
|
+
}
|
|
100
|
+
fetchNextPage() {
|
|
101
|
+
if (this.currentFetch) {
|
|
102
|
+
if (this.currentFetch.closed) {
|
|
103
|
+
this.currentFetch = null;
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
const nextPage = pageForItemIndex(this.users.length, this.baseFindParams.pageSize);
|
|
110
|
+
const findParams = {
|
|
111
|
+
...this.baseFindParams,
|
|
112
|
+
pageIndex: nextPage
|
|
113
|
+
};
|
|
114
|
+
if (this.currentSearchTerm) {
|
|
115
|
+
findParams.term = this.currentSearchTerm;
|
|
116
|
+
}
|
|
117
|
+
this.currentFetch = this.userService.search(findParams).subscribe(page => {
|
|
118
|
+
this.users = this.users.concat(page.items);
|
|
119
|
+
if (typeof page.totalCount === 'number') {
|
|
120
|
+
this.totalCount = page.totalCount;
|
|
121
|
+
}
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
static { this.ɵfac = function UserSelectComponent_Factory(t) { return new (t || UserSelectComponent)(i0.ɵɵdirectiveInject(i1.UserReadService)); }; }
|
|
125
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UserSelectComponent, selectors: [["mage-user-select"]], viewQuery: function UserSelectComponent_Query(rf, ctx) { if (rf & 1) {
|
|
126
|
+
i0.ɵɵviewQuery(NgSelectComponent, 7);
|
|
127
|
+
} if (rf & 2) {
|
|
128
|
+
let _t;
|
|
129
|
+
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.userSelect = _t.first);
|
|
130
|
+
} }, features: [i0.ɵɵProvidersFeature([
|
|
131
|
+
{
|
|
132
|
+
provide: NG_VALUE_ACCESSOR,
|
|
133
|
+
multi: true,
|
|
134
|
+
useExisting: forwardRef(() => UserSelectComponent)
|
|
135
|
+
}
|
|
136
|
+
]), i0.ɵɵNgOnChangesFeature], decls: 3, vars: 5, consts: [["appendTo", "body", "placeholder", "Choose a user", "bindLabel", "displayName", 3, "open", "scroll", "scrollToEnd", "items", "typeahead", "virtualScroll", "loading", "trackByFn"], ["ng-header-tmp", ""], ["ng-option-tmp", "", 1, "user-option"], [1, "form-text", "text-muted"], [1, "user-option"], [1, "user-option__line", "primary"], [1, "user-option__line", "detail"]], template: function UserSelectComponent_Template(rf, ctx) { if (rf & 1) {
|
|
137
|
+
i0.ɵɵelementStart(0, "ng-select", 0);
|
|
138
|
+
i0.ɵɵlistener("open", function UserSelectComponent_Template_ng_select_open_0_listener() { return ctx.onOpen(); })("scroll", function UserSelectComponent_Template_ng_select_scroll_0_listener($event) { return ctx.onScroll($event); })("scrollToEnd", function UserSelectComponent_Template_ng_select_scrollToEnd_0_listener() { return ctx.onScrollToEnd(); });
|
|
139
|
+
i0.ɵɵtemplate(1, UserSelectComponent_ng_template_1_Template, 2, 1, "ng-template", 1)(2, UserSelectComponent_ng_template_2_Template, 7, 4, "ng-template", 2);
|
|
140
|
+
i0.ɵɵelementEnd();
|
|
141
|
+
} if (rf & 2) {
|
|
142
|
+
i0.ɵɵproperty("items", ctx.users)("typeahead", ctx.searchTerm$)("virtualScroll", true)("loading", ctx.loading)("trackByFn", ctx.trackByUserId);
|
|
143
|
+
} }, dependencies: [i2.NgSelectComponent, i2.NgOptionTemplateDirective, i2.NgHeaderTemplateDirective], styles: [".user-option[_ngcontent-%COMP%]{margin:.85em 0}.user-option[_ngcontent-%COMP%] > .user-option__line[_ngcontent-%COMP%]{margin:0 0 .6em;padding:0;line-height:1em;overflow:hidden;text-overflow:ellipsis}.user-option[_ngcontent-%COMP%] > .user-option__line.primary[_ngcontent-%COMP%]{font-size:1em}.user-option[_ngcontent-%COMP%] > .user-option__line.detail[_ngcontent-%COMP%]{font-size:.85em;opacity:.75}"] }); }
|
|
144
|
+
}
|
|
145
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(UserSelectComponent, [{
|
|
146
|
+
type: Component,
|
|
147
|
+
args: [{ selector: 'mage-user-select', providers: [
|
|
148
|
+
{
|
|
149
|
+
provide: NG_VALUE_ACCESSOR,
|
|
150
|
+
multi: true,
|
|
151
|
+
useExisting: forwardRef(() => UserSelectComponent)
|
|
152
|
+
}
|
|
153
|
+
], template: "<ng-select [items]=\"users\"\n [typeahead]=\"searchTerm$\"\n [virtualScroll]=\"true\"\n [loading]=\"loading\"\n [trackByFn]=\"trackByUserId\"\n appendTo=\"body\"\n placeholder=\"Choose a user\"\n bindLabel=\"displayName\"\n (open)=\"onOpen()\"\n (scroll)=\"onScroll($event)\"\n (scrollToEnd)=\"onScrollToEnd()\"\n >\n <ng-template ng-header-tmp>\n <small class=\"form-text text-muted\">{{totalCount}} matching users</small>\n </ng-template>\n <ng-template class=\"user-option\" ng-option-tmp let-user=\"item\" let-index=\"index\">\n <div class=\"user-option\">\n <p class=\"user-option__line primary\">{{user.displayName}} ({{user.username}})</p>\n <p class=\"user-option__line detail\">{{user.email || '[no email]'}}</p>\n <p class=\"user-option__line detail\">{{user.allPhones || '[no phone]'}}</p>\n </div>\n </ng-template>\n</ng-select>\n", styles: [".user-option{margin:.85em 0}.user-option>.user-option__line{margin:0 0 .6em;padding:0;line-height:1em;overflow:hidden;text-overflow:ellipsis}.user-option>.user-option__line.primary{font-size:1em}.user-option>.user-option__line.detail{font-size:.85em;opacity:.75}\n"] }]
|
|
154
|
+
}], () => [{ type: i1.UserReadService }], { userSelect: [{
|
|
155
|
+
type: ViewChild,
|
|
156
|
+
args: [NgSelectComponent, { static: true }]
|
|
157
|
+
}] }); })();
|
|
158
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UserSelectComponent, { className: "UserSelectComponent", filePath: "user-select/user-select.component.ts", lineNumber: 25 }); })();
|
|
159
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS1saWIvdXNlci91c2VyLXNlbGVjdC91c2VyLXNlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWxpYi91c2VyL3VzZXItc2VsZWN0L3VzZXItc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFtQyxTQUFTLEVBQUUsVUFBVSxFQUFVLE1BQU0sZUFBZSxDQUFBO0FBQ3hILE9BQU8sRUFBcUMsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUNyRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUd4RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQW1CLE1BQU0scUNBQXFDLENBQUE7QUFDdkYsT0FBTyxFQUFFLE9BQU8sRUFBcUQsTUFBTSxNQUFNLENBQUE7QUFDakYsT0FBTyxFQUFFLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdCQUFnQixDQUFBOzs7OztJQ00vRCxnQ0FBb0M7SUFBQSxZQUE2QjtJQUFBLGlCQUFROzs7SUFBckMsY0FBNkI7SUFBN0IsK0RBQTZCOzs7SUFJL0QsQUFERiw4QkFBeUIsV0FDYztJQUFBLFlBQXdDO0lBQUEsaUJBQUk7SUFDakYsNEJBQW9DO0lBQUEsWUFBOEI7SUFBQSxpQkFBSTtJQUN0RSw0QkFBb0M7SUFBQSxZQUFrQztJQUN4RSxBQUR3RSxpQkFBSSxFQUN0RTs7O0lBSGlDLGVBQXdDO0lBQXhDLDJFQUF3QztJQUN6QyxlQUE4QjtJQUE5QixtREFBOEI7SUFDOUIsZUFBa0M7SUFBbEMsdURBQWtDOztBREs1RSxNQUFNLE9BQU8sbUJBQW1CO0lBVTlCLElBQUksT0FBTztRQUNULE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLElB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RDtZQU9uRixpQkFBWTs7WUFsQlYsQUFEQSxBQURBLEFBREEsQUFEUyxpQ0FBZSw4QkFDQyx1QkFDSCx3QkFDSCxnQ0FDUTs7O2lGRG9CaEIsbUJBQW1CO2NBZC9CLFNBQVM7MkJBQ0Usa0JBQWtCLGFBS2pCO29CQUNUO3dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7d0JBQzFCLEtBQUssRUFBRSxJQUFJO3dCQUNYLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLG9CQUFvQixDQUFDO3FCQUNuRDtpQkFDRjtnREFxQkQsVUFBVTtrQkFEVCxTQUFTO21CQUFDLGlCQUFpQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTs7a0ZBbEJuQyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIElucHV0LCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMsIFZpZXdDaGlsZCwgZm9yd2FyZFJlZiwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBGb3JtQ29udHJvbCwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcbmltcG9ydCB7IE5nU2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnQG5nLXNlbGVjdC9uZy1zZWxlY3QnXG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi4vdXNlci5tb2RlbCdcbmltcG9ydCB7IFVzZXJSZWFkU2VydmljZSwgVXNlclNlYXJjaFBhcmFtcywgVXNlclNlYXJjaFJlc3VsdCB9IGZyb20gJy4uL3VzZXItcmVhZC5zZXJ2aWNlJ1xuaW1wb3J0IHsgcGFnZUZvckl0ZW1JbmRleCwgaXRlbVJhbmdlT2ZQYWdlIH0gZnJvbSAnQG5nYWdlb2ludC9tYWdlLndlYi1jb3JlLWxpYi9wYWdpbmcnXG5pbXBvcnQgeyBTdWJqZWN0LCBCZWhhdmlvclN1YmplY3QsIFN1YnNjcmlwdGlvbkxpa2UsIFVuc3Vic2NyaWJhYmxlIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZGlzdGluY3RVbnRpbENoYW5nZWQgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcbmltcG9ydCB7IFggfSBmcm9tICdAYW5ndWxhci9jZGsva2V5Y29kZXMnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21hZ2UtdXNlci1zZWxlY3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vdXNlci1zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFtcbiAgICAnLi91c2VyLXNlbGVjdC5jb21wb25lbnQuc2NzcydcbiAgXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFVzZXJTZWxlY3RDb21wb25lbnQpXG4gICAgfVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFVzZXJTZWxlY3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCwgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuXG4gIHJlYWRvbmx5IGJhc2VGaW5kUGFyYW1zOiBSZWFkb25seTxVc2VyU2VhcmNoUGFyYW1zPiA9IE9iamVjdC5mcmVlemUoe1xuICAgIHBhZ2VTaXplOiAxMDAsXG4gICAgcGFnZUluZGV4OiAwLFxuICAgIHRlcm06IG51bGxcbiAgfSlcbiAgcmVhZG9ubHkgbmV4dFBhZ2VTY3JvbGxUaHJlc2hvbGQgPSAxNVxuICByZWFkb25seSBzZWFyY2hUZXJtRGVib3VuY2VUaW1lID0gNTAwXG4gIHJlYWRvbmx5IHRyYWNrQnlVc2VySWQ6ICh4OiBVc2VyKSA9PiBVc2VyWydpZCddID0geCA9PiB4LmlkXG4gIGdldCBsb2FkaW5nKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuY3VycmVudEZldGNoICYmICF0aGlzLmN1cnJlbnRGZXRjaC5jbG9zZWRcbiAgfVxuXG4gIHVzZXJzOiBVc2VyU2VhcmNoUmVzdWx0W10gPSBbXVxuICB0b3RhbENvdW50ID0gMFxuICBzZWFyY2hUZXJtJCA9IG5ldyBTdWJqZWN0PHN0cmluZyB8IG51bGw+KClcbiAgY3VycmVudFNlYXJjaFRlcm06IHN0cmluZyB8IG51bGwgPSBudWxsXG4gIEBWaWV3Q2hpbGQoTmdTZWxlY3RDb21wb25lbnQsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHVzZXJTZWxlY3Q6IE5nU2VsZWN0Q29tcG9uZW50XG5cbiAgcHJpdmF0ZSBjdXJyZW50RmV0Y2g6IFN1YnNjcmlwdGlvbkxpa2UgfCBudWxsID0gbnVsbFxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdXNlclNlcnZpY2U6IFVzZXJSZWFkU2VydmljZSkgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5zZWFyY2hUZXJtJC5waXBlKFxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgIGRlYm91bmNlVGltZSh0aGlzLnNlYXJjaFRlcm1EZWJvdW5jZVRpbWUpLFxuICAgIClcbiAgICAuc3Vic2NyaWJlKHggPT4ge1xuICAgICAgdGhpcy5jdXJyZW50U2VhcmNoVGVybSA9IHhcbiAgICAgIHRoaXMudXNlcnMgPSBbXVxuICAgICAgdGhpcy50b3RhbENvdW50ID0gMFxuICAgICAgaWYgKHRoaXMuY3VycmVudEZldGNoKSB7XG4gICAgICAgIHRoaXMuY3VycmVudEZldGNoLnVuc3Vic2NyaWJlKClcbiAgICAgICAgdGhpcy5jdXJyZW50RmV0Y2ggPSBudWxsXG4gICAgICB9XG4gICAgICB0aGlzLmZldGNoTmV4dFBhZ2UoKVxuICAgIH0pXG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gIH1cblxuICB3cml0ZVZhbHVlKHg6IFVzZXIgfCBudWxsKTogdm9pZCB7XG4gICAgdGhpcy51c2VyU2VsZWN0LndyaXRlVmFsdWUoeClcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICguLi5hcmdzOiBhbnlbXSkgPT4gYW55KTogdm9pZCB7XG4gICAgdGhpcy51c2VyU2VsZWN0LnJlZ2lzdGVyT25DaGFuZ2UoZm4pXG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogKC4uLmFyZ3M6IGFueVtdKSA9PiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnVzZXJTZWxlY3QucmVnaXN0ZXJPblRvdWNoZWQoZm4pXG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLnVzZXJTZWxlY3Quc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkKVxuICB9XG5cbiAgb25PcGVuKCkge1xuICAgIGlmICh0aGlzLnVzZXJzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5mZXRjaE5leHRQYWdlKClcbiAgICB9XG4gIH1cblxuICBvblNjcm9sbCh7IGVuZCB9OiB7IHN0YXJ0OiBudW1iZXIsIGVuZDogbnVtYmVyIH0pIHtcbiAgICBpZiAoZW5kIDwgdGhpcy51c2Vycy5sZW5ndGggLSB0aGlzLm5leHRQYWdlU2Nyb2xsVGhyZXNob2xkIHx8IHRoaXMudXNlcnMubGVuZ3RoID09PSB0aGlzLnRvdGFsQ291bnQpIHtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICB0aGlzLmZldGNoTmV4dFBhZ2UoKVxuICB9XG5cbiAgb25TY3JvbGxUb0VuZCgpIHtcblxuICB9XG5cbiAgZmV0Y2hOZXh0UGFnZSgpIHtcbiAgICBpZiAodGhpcy5jdXJyZW50RmV0Y2gpIHtcbiAgICAgIGlmICh0aGlzLmN1cnJlbnRGZXRjaC5jbG9zZWQpIHtcbiAgICAgICAgdGhpcy5jdXJyZW50RmV0Y2ggPSBudWxsXG4gICAgICB9XG4gICAgICBlbHNlIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG4gICAgfVxuICAgIGNvbnN0IG5leHRQYWdlID0gcGFnZUZvckl0ZW1JbmRleCh0aGlzLnVzZXJzLmxlbmd0aCwgdGhpcy5iYXNlRmluZFBhcmFtcy5wYWdlU2l6ZSlcbiAgICBjb25zdCBmaW5kUGFyYW1zOiBVc2VyU2VhcmNoUGFyYW1zID0ge1xuICAgICAgLi4udGhpcy5iYXNlRmluZFBhcmFtcyxcbiAgICAgIHBhZ2VJbmRleDogbmV4dFBhZ2VcbiAgICB9XG4gICAgaWYgKHRoaXMuY3VycmVudFNlYXJjaFRlcm0pIHtcbiAgICAgIGZpbmRQYXJhbXMudGVybSA9IHRoaXMuY3VycmVudFNlYXJjaFRlcm1cbiAgICB9XG4gICAgdGhpcy5jdXJyZW50RmV0Y2ggPSB0aGlzLnVzZXJTZXJ2aWNlLnNlYXJjaChmaW5kUGFyYW1zKS5zdWJzY3JpYmUocGFnZSA9PiB7XG4gICAgICB0aGlzLnVzZXJzID0gdGhpcy51c2Vycy5jb25jYXQocGFnZS5pdGVtcylcbiAgICAgIGlmICh0eXBlb2YgcGFnZS50b3RhbENvdW50ID09PSAnbnVtYmVyJykge1xuICAgICAgICB0aGlzLnRvdGFsQ291bnQgPSBwYWdlLnRvdGFsQ291bnRcbiAgICAgIH1cbiAgICB9KVxuICB9XG59IiwiPG5nLXNlbGVjdCBbaXRlbXNdPVwidXNlcnNcIlxuICBbdHlwZWFoZWFkXT1cInNlYXJjaFRlcm0kXCJcbiAgW3ZpcnR1YWxTY3JvbGxdPVwidHJ1ZVwiXG4gIFtsb2FkaW5nXT1cImxvYWRpbmdcIlxuICBbdHJhY2tCeUZuXT1cInRyYWNrQnlVc2VySWRcIlxuICBhcHBlbmRUbz1cImJvZHlcIlxuICBwbGFjZWhvbGRlcj1cIkNob29zZSBhIHVzZXJcIlxuICBiaW5kTGFiZWw9XCJkaXNwbGF5TmFtZVwiXG4gIChvcGVuKT1cIm9uT3BlbigpXCJcbiAgKHNjcm9sbCk9XCJvblNjcm9sbCgkZXZlbnQpXCJcbiAgKHNjcm9sbFRvRW5kKT1cIm9uU2Nyb2xsVG9FbmQoKVwiXG4gID5cbiAgPG5nLXRlbXBsYXRlIG5nLWhlYWRlci10bXA+XG4gICAgPHNtYWxsIGNsYXNzPVwiZm9ybS10ZXh0IHRleHQtbXV0ZWRcIj57e3RvdGFsQ291bnR9fSBtYXRjaGluZyB1c2Vyczwvc21hbGw+XG4gIDwvbmctdGVtcGxhdGU+XG4gIDxuZy10ZW1wbGF0ZSBjbGFzcz1cInVzZXItb3B0aW9uXCIgbmctb3B0aW9uLXRtcCBsZXQtdXNlcj1cIml0ZW1cIiBsZXQtaW5kZXg9XCJpbmRleFwiPlxuICAgIDxkaXYgY2xhc3M9XCJ1c2VyLW9wdGlvblwiPlxuICAgICAgPHAgY2xhc3M9XCJ1c2VyLW9wdGlvbl9fbGluZSBwcmltYXJ5XCI+e3t1c2VyLmRpc3BsYXlOYW1lfX0gKHt7dXNlci51c2VybmFtZX19KTwvcD5cbiAgICAgIDxwIGNsYXNzPVwidXNlci1vcHRpb25fX2xpbmUgZGV0YWlsXCI+e3t1c2VyLmVtYWlsIHx8ICdbbm8gZW1haWxdJ319PC9wPlxuICAgICAgPHAgY2xhc3M9XCJ1c2VyLW9wdGlvbl9fbGluZSBkZXRhaWxcIj57e3VzZXIuYWxsUGhvbmVzIHx8ICdbbm8gcGhvbmVdJ319PC9wPlxuICAgIDwvZGl2PlxuICA8L25nLXRlbXBsYXRlPlxuPC9uZy1zZWxlY3Q+XG4iXX0=
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { ScrollingModule } from '@angular/cdk/scrolling';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { NgModule } from '@angular/core';
|
|
4
|
+
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
5
|
+
import { MatAutocompleteModule as MatAutocompleteModule } from '@angular/material/autocomplete';
|
|
6
|
+
import { MatDialogModule as MatDialogModule } from '@angular/material/dialog';
|
|
7
|
+
import { MatFormFieldModule as MatFormFieldModule } from '@angular/material/form-field';
|
|
8
|
+
import { MatInputModule as MatInputModule } from '@angular/material/input';
|
|
9
|
+
import { MatListModule as MatListModule } from '@angular/material/list';
|
|
10
|
+
import { MatSelectModule as MatSelectModule } from '@angular/material/select';
|
|
11
|
+
import { UserSelectComponent } from './user-select/user-select.component';
|
|
12
|
+
import { NgSelectModule } from '@ng-select/ng-select';
|
|
13
|
+
import * as i0 from "@angular/core";
|
|
14
|
+
export class MageUserModule {
|
|
15
|
+
static { this.ɵfac = function MageUserModule_Factory(t) { return new (t || MageUserModule)(); }; }
|
|
16
|
+
static { this.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: MageUserModule }); }
|
|
17
|
+
static { this.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule,
|
|
18
|
+
FormsModule,
|
|
19
|
+
ReactiveFormsModule,
|
|
20
|
+
ScrollingModule,
|
|
21
|
+
MatAutocompleteModule,
|
|
22
|
+
MatDialogModule,
|
|
23
|
+
MatFormFieldModule,
|
|
24
|
+
MatInputModule,
|
|
25
|
+
MatListModule,
|
|
26
|
+
MatSelectModule,
|
|
27
|
+
NgSelectModule] }); }
|
|
28
|
+
}
|
|
29
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MageUserModule, [{
|
|
30
|
+
type: NgModule,
|
|
31
|
+
args: [{
|
|
32
|
+
imports: [
|
|
33
|
+
CommonModule,
|
|
34
|
+
FormsModule,
|
|
35
|
+
ReactiveFormsModule,
|
|
36
|
+
ScrollingModule,
|
|
37
|
+
MatAutocompleteModule,
|
|
38
|
+
MatDialogModule,
|
|
39
|
+
MatFormFieldModule,
|
|
40
|
+
MatInputModule,
|
|
41
|
+
MatListModule,
|
|
42
|
+
MatSelectModule,
|
|
43
|
+
NgSelectModule,
|
|
44
|
+
],
|
|
45
|
+
declarations: [
|
|
46
|
+
UserSelectComponent
|
|
47
|
+
],
|
|
48
|
+
exports: [
|
|
49
|
+
UserSelectComponent
|
|
50
|
+
]
|
|
51
|
+
}]
|
|
52
|
+
}], null, null); })();
|
|
53
|
+
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(MageUserModule, { declarations: [UserSelectComponent], imports: [CommonModule,
|
|
54
|
+
FormsModule,
|
|
55
|
+
ReactiveFormsModule,
|
|
56
|
+
ScrollingModule,
|
|
57
|
+
MatAutocompleteModule,
|
|
58
|
+
MatDialogModule,
|
|
59
|
+
MatFormFieldModule,
|
|
60
|
+
MatInputModule,
|
|
61
|
+
MatListModule,
|
|
62
|
+
MatSelectModule,
|
|
63
|
+
NgSelectModule], exports: [UserSelectComponent] }); })();
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWxpYi91c2VyL3VzZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUN4RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN4QyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDakUsT0FBTyxFQUFFLHFCQUFxQixJQUFJLHFCQUFxQixFQUFFLE1BQU0sZ0NBQWdDLENBQUE7QUFDL0YsT0FBTyxFQUFFLGVBQWUsSUFBSSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUM3RSxPQUFPLEVBQUUsa0JBQWtCLElBQUksa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQTtBQUN2RixPQUFPLEVBQUUsY0FBYyxJQUFJLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFBO0FBQzFFLE9BQU8sRUFBRSxhQUFhLElBQUksYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDdkUsT0FBTyxFQUFFLGVBQWUsSUFBSSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUM3RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQTtBQUN6RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUE7O0FBdUJyRCxNQUFNLE9BQU8sY0FBYzsrRUFBZCxjQUFjO21FQUFkLGNBQWM7dUVBbkJ2QixZQUFZO1lBQ1osV0FBVztZQUNYLG1CQUFtQjtZQUNuQixlQUFlO1lBQ2YscUJBQXFCO1lBQ3JCLGVBQWU7WUFDZixrQkFBa0I7WUFDbEIsY0FBYztZQUNkLGFBQWE7WUFDYixlQUFlO1lBQ2YsY0FBYzs7aUZBU0wsY0FBYztjQXJCMUIsUUFBUTtlQUFDO2dCQUNSLE9BQU8sRUFBRTtvQkFDUCxZQUFZO29CQUNaLFdBQVc7b0JBQ1gsbUJBQW1CO29CQUNuQixlQUFlO29CQUNmLHFCQUFxQjtvQkFDckIsZUFBZTtvQkFDZixrQkFBa0I7b0JBQ2xCLGNBQWM7b0JBQ2QsYUFBYTtvQkFDYixlQUFlO29CQUNmLGNBQWM7aUJBQ2Y7Z0JBQ0QsWUFBWSxFQUFFO29CQUNaLG1CQUFtQjtpQkFDcEI7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLG1CQUFtQjtpQkFDcEI7YUFDRjs7d0ZBQ1ksY0FBYyxtQkFOdkIsbUJBQW1CLGFBYm5CLFlBQVk7UUFDWixXQUFXO1FBQ1gsbUJBQW1CO1FBQ25CLGVBQWU7UUFDZixxQkFBcUI7UUFDckIsZUFBZTtRQUNmLGtCQUFrQjtRQUNsQixjQUFjO1FBQ2QsYUFBYTtRQUNiLGVBQWU7UUFDZixjQUFjLGFBTWQsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2Nyb2xsaW5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Njcm9sbGluZydcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbidcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5pbXBvcnQgeyBNYXRBdXRvY29tcGxldGVNb2R1bGUgYXMgTWF0QXV0b2NvbXBsZXRlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJ1xuaW1wb3J0IHsgTWF0RGlhbG9nTW9kdWxlIGFzIE1hdERpYWxvZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZydcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSBhcyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJ1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgYXMgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCdcbmltcG9ydCB7IE1hdExpc3RNb2R1bGUgYXMgTWF0TGlzdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2xpc3QnXG5pbXBvcnQgeyBNYXRTZWxlY3RNb2R1bGUgYXMgTWF0U2VsZWN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0J1xuaW1wb3J0IHsgVXNlclNlbGVjdENvbXBvbmVudCB9IGZyb20gJy4vdXNlci1zZWxlY3QvdXNlci1zZWxlY3QuY29tcG9uZW50J1xuaW1wb3J0IHsgTmdTZWxlY3RNb2R1bGUgfSBmcm9tICdAbmctc2VsZWN0L25nLXNlbGVjdCdcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIFNjcm9sbGluZ01vZHVsZSxcbiAgICBNYXRBdXRvY29tcGxldGVNb2R1bGUsXG4gICAgTWF0RGlhbG9nTW9kdWxlLFxuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcbiAgICBNYXRJbnB1dE1vZHVsZSxcbiAgICBNYXRMaXN0TW9kdWxlLFxuICAgIE1hdFNlbGVjdE1vZHVsZSxcbiAgICBOZ1NlbGVjdE1vZHVsZSxcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgVXNlclNlbGVjdENvbXBvbmVudFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgVXNlclNlbGVjdENvbXBvbmVudFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIE1hZ2VVc2VyTW9kdWxlIHtcblxufSJdfQ==
|
package/feed/feed.model.d.ts
CHANGED
|
@@ -24,7 +24,7 @@ export interface MapStyle {
|
|
|
24
24
|
export interface RegisteredMapStyle {
|
|
25
25
|
icon?: RegisteredStaticIconReference;
|
|
26
26
|
}
|
|
27
|
-
export
|
|
27
|
+
export type StyledFeature = Feature & {
|
|
28
28
|
style: MapStyle;
|
|
29
29
|
};
|
|
30
30
|
export interface FeedContent {
|
|
@@ -65,7 +65,7 @@ export interface FeedTopic {
|
|
|
65
65
|
itemPropertiesSchema?: any;
|
|
66
66
|
mapStyle?: MapStyle;
|
|
67
67
|
}
|
|
68
|
-
export
|
|
68
|
+
export type FeedExpanded = Omit<Feed, 'service' | 'topic'> & {
|
|
69
69
|
service: Service;
|
|
70
70
|
topic: FeedTopic;
|
|
71
71
|
};
|
|
@@ -78,7 +78,7 @@ export interface FeedPreview {
|
|
|
78
78
|
feed: Feed;
|
|
79
79
|
content?: FeedContent;
|
|
80
80
|
}
|
|
81
|
-
export
|
|
81
|
+
export type FeedPost = Partial<Omit<Feed, 'service' | 'topic' | 'icon'>> & Pick<Feed, 'service' | 'topic'> & {
|
|
82
82
|
icon?: StaticIconReference;
|
|
83
83
|
};
|
|
84
84
|
//# sourceMappingURL=feed.model.d.ts.map
|
package/feed/feed.model.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feed.model.d.ts","sourceRoot":"","sources":["../../../projects/core-lib/feed/feed.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AACrD,OAAO,EAAE,6BAA6B,EAAE,4BAA4B,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAA;AAE3I,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,6BAA6B,CAAC;IACrC,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAC9B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,cAAc,CAAC,EAAE,GAAG,CAAC;IACrB,oBAAoB,CAAC,EAAE,GAAG,CAAC;IAC3B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,oBAAoB,CAAC,EAAE,GAAG,CAAC;CAC5B;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,CAAC,EAAE,4BAA4B,CAAA;CACpC;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,6BAA6B,CAAC;CACtC;AAED,
|
|
1
|
+
{"version":3,"file":"feed.model.d.ts","sourceRoot":"","sources":["../../../projects/core-lib/feed/feed.model.ts"],"names":[],"mappings":"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"}
|
|
@@ -74,21 +74,21 @@ class XhrImgComponent {
|
|
|
74
74
|
}
|
|
75
75
|
this.blobUrl = null;
|
|
76
76
|
}
|
|
77
|
+
static { this.ɵfac = function XhrImgComponent_Factory(t) { return new (t || XhrImgComponent)(i0.ɵɵdirectiveInject(OBJECT_URL_SERVICE), i0.ɵɵdirectiveInject(i1.HttpClient), i0.ɵɵdirectiveInject(i2.DomSanitizer)); }; }
|
|
78
|
+
static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: XhrImgComponent, selectors: [["mage-xhr-img"]], inputs: { sourceUrl: [i0.ɵɵInputFlags.None, "src", "sourceUrl"] }, features: [i0.ɵɵProvidersFeature([
|
|
79
|
+
{
|
|
80
|
+
provide: OBJECT_URL_SERVICE,
|
|
81
|
+
useValue: URL
|
|
82
|
+
}
|
|
83
|
+
]), i0.ɵɵNgOnChangesFeature], decls: 1, vars: 1, consts: [[3, "load"]], template: function XhrImgComponent_Template(rf, ctx) { if (rf & 1) {
|
|
84
|
+
i0.ɵɵelementStart(0, "img", 0);
|
|
85
|
+
i0.ɵɵlistener("load", function XhrImgComponent_Template_img_load_0_listener() { return ctx.onImgLoad(); });
|
|
86
|
+
i0.ɵɵelementEnd();
|
|
87
|
+
} if (rf & 2) {
|
|
88
|
+
i0.ɵɵattribute("src", ctx.safeBlobUrl, i0.ɵɵsanitizeUrl);
|
|
89
|
+
} }, styles: ["img[_ngcontent-%COMP%]{height:100%;width:100%}"] }); }
|
|
77
90
|
}
|
|
78
|
-
|
|
79
|
-
XhrImgComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: XhrImgComponent, selectors: [["mage-xhr-img"]], inputs: { sourceUrl: ["src", "sourceUrl"] }, features: [i0.ɵɵProvidersFeature([
|
|
80
|
-
{
|
|
81
|
-
provide: OBJECT_URL_SERVICE,
|
|
82
|
-
useValue: URL
|
|
83
|
-
}
|
|
84
|
-
]), i0.ɵɵNgOnChangesFeature], decls: 1, vars: 1, consts: [[3, "load"]], template: function XhrImgComponent_Template(rf, ctx) { if (rf & 1) {
|
|
85
|
-
i0.ɵɵelementStart(0, "img", 0);
|
|
86
|
-
i0.ɵɵlistener("load", function XhrImgComponent_Template_img_load_0_listener() { return ctx.onImgLoad(); });
|
|
87
|
-
i0.ɵɵelementEnd();
|
|
88
|
-
} if (rf & 2) {
|
|
89
|
-
i0.ɵɵattribute("src", ctx.safeBlobUrl, i0.ɵɵsanitizeUrl);
|
|
90
|
-
} }, styles: ["img[_ngcontent-%COMP%]{height:100%;width:100%}"] });
|
|
91
|
-
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(XhrImgComponent, [{
|
|
91
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(XhrImgComponent, [{
|
|
92
92
|
type: Component,
|
|
93
93
|
args: [{ selector: `${selector}`, template: `<img [attr.src]="safeBlobUrl" (load)="onImgLoad()"/>`, providers: [
|
|
94
94
|
{
|
|
@@ -96,20 +96,21 @@ XhrImgComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: XhrImgCompo
|
|
|
96
96
|
useValue: URL
|
|
97
97
|
}
|
|
98
98
|
], styles: ["img{height:100%;width:100%}\n"] }]
|
|
99
|
-
}],
|
|
99
|
+
}], () => [{ type: undefined, decorators: [{
|
|
100
100
|
type: Inject,
|
|
101
101
|
args: [OBJECT_URL_SERVICE]
|
|
102
|
-
}] }, { type: i1.HttpClient }, { type: i2.DomSanitizer }]
|
|
102
|
+
}] }, { type: i1.HttpClient }, { type: i2.DomSanitizer }], { sourceUrl: [{
|
|
103
103
|
type: Input,
|
|
104
104
|
args: ['src']
|
|
105
105
|
}] }); })();
|
|
106
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(XhrImgComponent, { className: "XhrImgComponent", filePath: "xhr-img.component.ts", lineNumber: 58 }); })();
|
|
106
107
|
|
|
107
108
|
class MageCommonModule {
|
|
109
|
+
static { this.ɵfac = function MageCommonModule_Factory(t) { return new (t || MageCommonModule)(); }; }
|
|
110
|
+
static { this.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: MageCommonModule }); }
|
|
111
|
+
static { this.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule] }); }
|
|
108
112
|
}
|
|
109
|
-
|
|
110
|
-
MageCommonModule.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: MageCommonModule });
|
|
111
|
-
MageCommonModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule] });
|
|
112
|
-
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MageCommonModule, [{
|
|
113
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MageCommonModule, [{
|
|
113
114
|
type: NgModule,
|
|
114
115
|
args: [{
|
|
115
116
|
imports: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngageoint-mage.web-core-lib-common.mjs","sources":["../../../projects/core-lib/common/xhr-img.component.ts","../../../projects/core-lib/common/mage-common.module.ts","../../../projects/core-lib/common/ngageoint-mage.web-core-lib-common.ts"],"sourcesContent":["import { Component, Inject, InjectionToken, Input, OnChanges, OnDestroy, SimpleChanges } from '@angular/core'\nimport { HttpClient } from '@angular/common/http'\nimport { DomSanitizer, SafeUrl } from '@angular/platform-browser'\nimport { Subscription } from 'rxjs'\n\nconst selector = 'mage-xhr-img'\n\n/**\n * This is a simple interface that includes the [methods](https://www.w3.org/TR/FileAPI/#creating-revoking)\n * from the [URL API](https://developer.mozilla.org/en-US/docs/Web/API/URL) for\n * managing blob URLs. This allows a service to be injected into\n * `XhrImgComponent` and overridden for testing.\n */\nexport interface ObjectUrlService {\n createObjectURL: (typeof URL)['createObjectURL']\n revokeObjectURL: (typeof URL)['revokeObjectURL']\n}\nexport const OBJECT_URL_SERVICE = new InjectionToken<ObjectUrlService>(`${selector}.objectUrlService`)\n\n/**\n * This component allows fetching images by `XMLHttpRequest` rather than the\n * browser's native mechanism. These image requests are subject to HTTP\n * interceptors that can add authorization headers to the request instead of\n * using cache-defeating URL query parameters to set an auth token. Applying\n * headers to the browser's native `img` requests is impossible, so a query\n * parameter is necessary for authorization, but adding the parameter to the\n * URL effectively bypasses the browser's caching mechanism when the auth token\n * changes for images that\n * should otherwise be subject to caching.\n *\n * The catch to fetching images by XHR is the response must be fetched as a\n * `Blob`. The user then gets a browser-specific URL for the blob by\n * `URL.createObjectURL(blob)`, which can then be assigned to the `src`\n * attribute of an `img` tag. These blob URLs must then be \"revoked\" by\n * `URL.revokeObjectURL(url)` in order to reclaim object URL's associated\n * resources. See [Mozilla's docs](https://developer.mozilla.org/en-US/docs/Web/API/File/Using_files_from_web_applications#example_using_object_urls_to_display_images)\n * on the subject.\n *\n * To use the component, simply add the tag to a template and bind the `src`\n * attribute to the source URL of the desired image.\n * ```\n * <mage-xhr-img [src]=\"someComponent.imageUrlRequiresAuth\"></mage-xhr-img>\n * ```\n * The component encapsulates the logic of creating and releasing the object\n * URLs for the image data, preventing memory leaks.\n */\n@Component({\n selector: `${selector}`,\n template: `<img [attr.src]=\"safeBlobUrl\" (load)=\"onImgLoad()\"/>`,\n styles: [ `img { height: 100%; width: 100% }` ],\n providers: [\n {\n provide: OBJECT_URL_SERVICE,\n useValue: URL\n }\n ]\n})\nexport class XhrImgComponent implements OnChanges, OnDestroy {\n\n @Input('src')\n sourceUrl: string | null = null\n safeBlobUrl: SafeUrl | null = null\n\n private blobUrl: string\n private subscription: Subscription\n\n constructor(@Inject(OBJECT_URL_SERVICE) private objectUrlService: ObjectUrlService, private webClient: HttpClient, private sanitizer: DomSanitizer) {}\n\n ngOnChanges(changes: SimpleChanges): void {\n if (!changes.sourceUrl) {\n return\n }\n if (changes.sourceUrl.isFirstChange() && !this.sourceUrl) {\n return\n }\n this.disposeCurrent()\n if (!this.sourceUrl) {\n return\n }\n this.subscription = this.webClient.get(this.sourceUrl, { responseType: 'blob' })\n .subscribe(x => {\n this.objectUrlService.revokeObjectURL(this.blobUrl)\n this.blobUrl = this.objectUrlService.createObjectURL(x)\n this.safeBlobUrl = this.sanitizer.bypassSecurityTrustUrl(this.blobUrl)\n })\n }\n\n ngOnDestroy(): void {\n this.disposeCurrent()\n }\n\n onImgLoad(): void {\n this.disposeCurrent()\n }\n\n private disposeCurrent(): void {\n if (this.blobUrl) {\n this.objectUrlService.revokeObjectURL(this.blobUrl)\n }\n if (this.subscription) {\n this.subscription.unsubscribe()\n }\n this.blobUrl = null\n }\n}","import { NgModule } from '@angular/core'\nimport { XhrImgComponent } from './xhr-img.component'\nimport { CommonModule } from '@angular/common'\n\n@NgModule({\n imports: [\n CommonModule\n ],\n declarations: [\n XhrImgComponent\n ],\n exports: [\n XhrImgComponent\n ]\n})\nexport class MageCommonModule {}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;AAKA,MAAM,QAAQ,GAAG,cAAc
|
|
1
|
+
{"version":3,"file":"ngageoint-mage.web-core-lib-common.mjs","sources":["../../../projects/core-lib/common/xhr-img.component.ts","../../../projects/core-lib/common/mage-common.module.ts","../../../projects/core-lib/common/ngageoint-mage.web-core-lib-common.ts"],"sourcesContent":["import { Component, Inject, InjectionToken, Input, OnChanges, OnDestroy, SimpleChanges } from '@angular/core'\nimport { HttpClient } from '@angular/common/http'\nimport { DomSanitizer, SafeUrl } from '@angular/platform-browser'\nimport { Subscription } from 'rxjs'\n\nconst selector = 'mage-xhr-img'\n\n/**\n * This is a simple interface that includes the [methods](https://www.w3.org/TR/FileAPI/#creating-revoking)\n * from the [URL API](https://developer.mozilla.org/en-US/docs/Web/API/URL) for\n * managing blob URLs. This allows a service to be injected into\n * `XhrImgComponent` and overridden for testing.\n */\nexport interface ObjectUrlService {\n createObjectURL: (typeof URL)['createObjectURL']\n revokeObjectURL: (typeof URL)['revokeObjectURL']\n}\nexport const OBJECT_URL_SERVICE = new InjectionToken<ObjectUrlService>(`${selector}.objectUrlService`)\n\n/**\n * This component allows fetching images by `XMLHttpRequest` rather than the\n * browser's native mechanism. These image requests are subject to HTTP\n * interceptors that can add authorization headers to the request instead of\n * using cache-defeating URL query parameters to set an auth token. Applying\n * headers to the browser's native `img` requests is impossible, so a query\n * parameter is necessary for authorization, but adding the parameter to the\n * URL effectively bypasses the browser's caching mechanism when the auth token\n * changes for images that\n * should otherwise be subject to caching.\n *\n * The catch to fetching images by XHR is the response must be fetched as a\n * `Blob`. The user then gets a browser-specific URL for the blob by\n * `URL.createObjectURL(blob)`, which can then be assigned to the `src`\n * attribute of an `img` tag. These blob URLs must then be \"revoked\" by\n * `URL.revokeObjectURL(url)` in order to reclaim object URL's associated\n * resources. See [Mozilla's docs](https://developer.mozilla.org/en-US/docs/Web/API/File/Using_files_from_web_applications#example_using_object_urls_to_display_images)\n * on the subject.\n *\n * To use the component, simply add the tag to a template and bind the `src`\n * attribute to the source URL of the desired image.\n * ```\n * <mage-xhr-img [src]=\"someComponent.imageUrlRequiresAuth\"></mage-xhr-img>\n * ```\n * The component encapsulates the logic of creating and releasing the object\n * URLs for the image data, preventing memory leaks.\n */\n@Component({\n selector: `${selector}`,\n template: `<img [attr.src]=\"safeBlobUrl\" (load)=\"onImgLoad()\"/>`,\n styles: [ `img { height: 100%; width: 100% }` ],\n providers: [\n {\n provide: OBJECT_URL_SERVICE,\n useValue: URL\n }\n ]\n})\nexport class XhrImgComponent implements OnChanges, OnDestroy {\n\n @Input('src')\n sourceUrl: string | null = null\n safeBlobUrl: SafeUrl | null = null\n\n private blobUrl: string\n private subscription: Subscription\n\n constructor(@Inject(OBJECT_URL_SERVICE) private objectUrlService: ObjectUrlService, private webClient: HttpClient, private sanitizer: DomSanitizer) {}\n\n ngOnChanges(changes: SimpleChanges): void {\n if (!changes.sourceUrl) {\n return\n }\n if (changes.sourceUrl.isFirstChange() && !this.sourceUrl) {\n return\n }\n this.disposeCurrent()\n if (!this.sourceUrl) {\n return\n }\n this.subscription = this.webClient.get(this.sourceUrl, { responseType: 'blob' })\n .subscribe(x => {\n this.objectUrlService.revokeObjectURL(this.blobUrl)\n this.blobUrl = this.objectUrlService.createObjectURL(x)\n this.safeBlobUrl = this.sanitizer.bypassSecurityTrustUrl(this.blobUrl)\n })\n }\n\n ngOnDestroy(): void {\n this.disposeCurrent()\n }\n\n onImgLoad(): void {\n this.disposeCurrent()\n }\n\n private disposeCurrent(): void {\n if (this.blobUrl) {\n this.objectUrlService.revokeObjectURL(this.blobUrl)\n }\n if (this.subscription) {\n this.subscription.unsubscribe()\n }\n this.blobUrl = null\n }\n}","import { NgModule } from '@angular/core'\nimport { XhrImgComponent } from './xhr-img.component'\nimport { CommonModule } from '@angular/common'\n\n@NgModule({\n imports: [\n CommonModule\n ],\n declarations: [\n XhrImgComponent\n ],\n exports: [\n XhrImgComponent\n ]\n})\nexport class MageCommonModule {}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -94,15 +94,15 @@ class FeedService {
|
|
|
94
94
|
return content;
|
|
95
95
|
}));
|
|
96
96
|
}
|
|
97
|
+
static { this.ɵfac = function FeedService_Factory(t) { return new (t || FeedService)(i0.ɵɵinject(i1.HttpClient)); }; }
|
|
98
|
+
static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: FeedService, factory: FeedService.ɵfac, providedIn: 'root' }); }
|
|
97
99
|
}
|
|
98
|
-
|
|
99
|
-
FeedService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: FeedService, factory: FeedService.ɵfac, providedIn: 'root' });
|
|
100
|
-
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FeedService, [{
|
|
100
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FeedService, [{
|
|
101
101
|
type: Injectable,
|
|
102
102
|
args: [{
|
|
103
103
|
providedIn: 'root'
|
|
104
104
|
}]
|
|
105
|
-
}],
|
|
105
|
+
}], () => [{ type: i1.HttpClient }], null); })();
|
|
106
106
|
|
|
107
107
|
/**
|
|
108
108
|
* Generated bundle index. Do not edit.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngageoint-mage.web-core-lib-feed.mjs","sources":["../../../projects/core-lib/feed/feed.service.ts","../../../projects/core-lib/feed/ngageoint-mage.web-core-lib-feed.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { Feature } from 'geojson'\nimport { BehaviorSubject, Observable, Subject } from 'rxjs'\nimport { map } from 'rxjs/operators'\nimport { Feed, FeedContent, FeedExpanded, FeedPost, FeedPreview, FeedTopic, Service, ServiceType, StyledFeature } from './feed.model'\n\n\nexport interface FeedPreviewOptions {\n skipContentFetch?: boolean\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FeedService {\n\n constructor(private webClient: HttpClient) { }\n\n // TODO: there is probably a better solution than maintaining this map here\n private _feeds = new BehaviorSubject<Array<Feed>>([]);\n readonly feeds$ = this._feeds.asObservable();\n\n private _feedItems = new Map<string, BehaviorSubject<Array<Feature>>>();\n feedItems(feedId: string): Observable<Array<Feature>> {\n return this._feedItems.get(feedId).asObservable();\n }\n\n fetchAllFeeds(): Observable<Array<Feed>> {\n return this.webClient.get<Array<Feed>>('/api/feeds/');\n }\n\n fetchFeed(feedId: string): Observable<FeedExpanded> {\n return this.webClient.get<FeedExpanded>(`/api/feeds/${feedId}`);\n }\n\n fetchService(serviceId: string): Observable<Service> {\n return this.webClient.get<Service>(`/api/feeds/services/${serviceId}`);\n }\n\n createService(service: { title: string, summary?: string, serviceType: string, config: any}): Observable<Service> {\n return this.webClient.post<Service>(`/api/feeds/services`, service);\n }\n\n fetchServices(): Observable<Array<Service>> {\n return this.webClient.get<Array<Service>>(`/api/feeds/services`);\n }\n\n fetchServiceFeeds(serviceId: string): Observable<Array<Feed>> {\n return this.webClient.get<Array<Feed>>(`/api/feeds/services/${serviceId}/feeds`);\n }\n\n fetchServiceType(serviceTypeId: string): Observable<ServiceType> {\n return this.webClient.get<ServiceType>(`/api/feeds/service_types/${serviceTypeId}`);\n }\n\n fetchTopics(serviceId: string): Observable<Array<FeedTopic>> {\n return this.webClient.get<Array<FeedTopic>>(`/api/feeds/services/${serviceId}/topics`);\n }\n\n previewFeed(serviceId: string, topicId: string, feedSpec: Partial<Omit<FeedPost, 'service' | 'topic'>>, opts?: FeedPreviewOptions): Observable<FeedPreview> {\n opts = opts || {}\n const skipContentFetch: boolean = opts.skipContentFetch === true\n return this.webClient.post<FeedPreview>(\n `/api/feeds/services/${serviceId}/topics/${topicId}/feed_preview?skip_content_fetch=${skipContentFetch}`,\n { feed: feedSpec });\n }\n\n fetchTopic(serviceId: string, topicId: string): Observable<FeedTopic> {\n return this.webClient.get<FeedTopic>(`/api/feeds/services/${serviceId}/topics/${topicId}`);\n }\n\n fetchServiceTypes(): Observable<Array<ServiceType>> {\n return this.webClient.get<Array<ServiceType>>(`/api/feeds/service_types`);\n }\n\n createFeed(serviceId: string, topicId: string, feedConfiguration: any): Observable<FeedExpanded> {\n return this.webClient.post<FeedExpanded>(`/api/feeds/services/${serviceId}/topics/${topicId}/feeds`, feedConfiguration);\n }\n\n updateFeed(feed: Partial<Omit<FeedPost, 'id'>> & Pick<Feed, 'id'>): Observable<FeedExpanded> {\n return this.webClient.put<FeedExpanded>(`/api/feeds/${feed.id}`, feed);\n }\n\n deleteFeed(feed: Feed | FeedExpanded): Observable<{}> {\n return this.webClient.delete(`/api/feeds/${feed.id}`, {responseType: 'text'});\n }\n\n deleteService(service: Service): Observable<{}> {\n console.log('delete')\n return this.webClient.delete(`/api/feeds/services/${service.id}`, { responseType: 'text' });\n }\n\n fetchFeeds(eventId: number): Observable<Array<Feed>> {\n const subject = new Subject<Array<Feed>>();\n this.webClient.get<Array<Feed>>(`/api/events/${eventId}/feeds`).subscribe(feeds => {\n feeds.map(feed => {\n feed.id = feed.id.toString();\n return feed;\n });\n\n feeds.forEach(feed => {\n let feedItems = this._feedItems.get(feed.id);\n if (!feedItems) {\n feedItems = new BehaviorSubject<Array<Feature>>([]);\n this._feedItems.set(feed.id, feedItems);\n }\n })\n\n subject.next(feeds);\n this._feeds.next(feeds);\n });\n\n return subject;\n }\n\n fetchFeedItems(event: any, feed: Feed): Observable<FeedContent> {\n const feedItems = this._feedItems.get(feed.id)\n return this.webClient.post<FeedContent>(`/api/events/${event.id}/feeds/${feed.id}/content`, {}).pipe(\n map(content => {\n const features = content.items.features\n features.forEach((feature: StyledFeature) => {\n feature.id = String(feature.id)\n feature.properties = feature.properties || {}\n })\n feedItems.next(features)\n return content\n })\n )\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;MAea,WAAW,CAAA;AAEtB,IAAA,WAAA,CAAoB,SAAqB,EAAA;
|
|
1
|
+
{"version":3,"file":"ngageoint-mage.web-core-lib-feed.mjs","sources":["../../../projects/core-lib/feed/feed.service.ts","../../../projects/core-lib/feed/ngageoint-mage.web-core-lib-feed.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { Feature } from 'geojson'\nimport { BehaviorSubject, Observable, Subject } from 'rxjs'\nimport { map } from 'rxjs/operators'\nimport { Feed, FeedContent, FeedExpanded, FeedPost, FeedPreview, FeedTopic, Service, ServiceType, StyledFeature } from './feed.model'\n\n\nexport interface FeedPreviewOptions {\n skipContentFetch?: boolean\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class FeedService {\n\n constructor(private webClient: HttpClient) { }\n\n // TODO: there is probably a better solution than maintaining this map here\n private _feeds = new BehaviorSubject<Array<Feed>>([]);\n readonly feeds$ = this._feeds.asObservable();\n\n private _feedItems = new Map<string, BehaviorSubject<Array<Feature>>>();\n feedItems(feedId: string): Observable<Array<Feature>> {\n return this._feedItems.get(feedId).asObservable();\n }\n\n fetchAllFeeds(): Observable<Array<Feed>> {\n return this.webClient.get<Array<Feed>>('/api/feeds/');\n }\n\n fetchFeed(feedId: string): Observable<FeedExpanded> {\n return this.webClient.get<FeedExpanded>(`/api/feeds/${feedId}`);\n }\n\n fetchService(serviceId: string): Observable<Service> {\n return this.webClient.get<Service>(`/api/feeds/services/${serviceId}`);\n }\n\n createService(service: { title: string, summary?: string, serviceType: string, config: any}): Observable<Service> {\n return this.webClient.post<Service>(`/api/feeds/services`, service);\n }\n\n fetchServices(): Observable<Array<Service>> {\n return this.webClient.get<Array<Service>>(`/api/feeds/services`);\n }\n\n fetchServiceFeeds(serviceId: string): Observable<Array<Feed>> {\n return this.webClient.get<Array<Feed>>(`/api/feeds/services/${serviceId}/feeds`);\n }\n\n fetchServiceType(serviceTypeId: string): Observable<ServiceType> {\n return this.webClient.get<ServiceType>(`/api/feeds/service_types/${serviceTypeId}`);\n }\n\n fetchTopics(serviceId: string): Observable<Array<FeedTopic>> {\n return this.webClient.get<Array<FeedTopic>>(`/api/feeds/services/${serviceId}/topics`);\n }\n\n previewFeed(serviceId: string, topicId: string, feedSpec: Partial<Omit<FeedPost, 'service' | 'topic'>>, opts?: FeedPreviewOptions): Observable<FeedPreview> {\n opts = opts || {}\n const skipContentFetch: boolean = opts.skipContentFetch === true\n return this.webClient.post<FeedPreview>(\n `/api/feeds/services/${serviceId}/topics/${topicId}/feed_preview?skip_content_fetch=${skipContentFetch}`,\n { feed: feedSpec });\n }\n\n fetchTopic(serviceId: string, topicId: string): Observable<FeedTopic> {\n return this.webClient.get<FeedTopic>(`/api/feeds/services/${serviceId}/topics/${topicId}`);\n }\n\n fetchServiceTypes(): Observable<Array<ServiceType>> {\n return this.webClient.get<Array<ServiceType>>(`/api/feeds/service_types`);\n }\n\n createFeed(serviceId: string, topicId: string, feedConfiguration: any): Observable<FeedExpanded> {\n return this.webClient.post<FeedExpanded>(`/api/feeds/services/${serviceId}/topics/${topicId}/feeds`, feedConfiguration);\n }\n\n updateFeed(feed: Partial<Omit<FeedPost, 'id'>> & Pick<Feed, 'id'>): Observable<FeedExpanded> {\n return this.webClient.put<FeedExpanded>(`/api/feeds/${feed.id}`, feed);\n }\n\n deleteFeed(feed: Feed | FeedExpanded): Observable<{}> {\n return this.webClient.delete(`/api/feeds/${feed.id}`, {responseType: 'text'});\n }\n\n deleteService(service: Service): Observable<{}> {\n console.log('delete')\n return this.webClient.delete(`/api/feeds/services/${service.id}`, { responseType: 'text' });\n }\n\n fetchFeeds(eventId: number): Observable<Array<Feed>> {\n const subject = new Subject<Array<Feed>>();\n this.webClient.get<Array<Feed>>(`/api/events/${eventId}/feeds`).subscribe(feeds => {\n feeds.map(feed => {\n feed.id = feed.id.toString();\n return feed;\n });\n\n feeds.forEach(feed => {\n let feedItems = this._feedItems.get(feed.id);\n if (!feedItems) {\n feedItems = new BehaviorSubject<Array<Feature>>([]);\n this._feedItems.set(feed.id, feedItems);\n }\n })\n\n subject.next(feeds);\n this._feeds.next(feeds);\n });\n\n return subject;\n }\n\n fetchFeedItems(event: any, feed: Feed): Observable<FeedContent> {\n const feedItems = this._feedItems.get(feed.id)\n return this.webClient.post<FeedContent>(`/api/events/${event.id}/feeds/${feed.id}/content`, {}).pipe(\n map(content => {\n const features = content.items.features\n features.forEach((feature: StyledFeature) => {\n feature.id = String(feature.id)\n feature.properties = feature.properties || {}\n })\n feedItems.next(features)\n return content\n })\n )\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngageoint-mage.web-core-lib-paging.mjs","sources":["../../../projects/core-lib/paging/paging.model.ts","../../../projects/core-lib/paging/paging.cdk-data-source.adapter.ts","../../../projects/core-lib/paging/ngageoint-mage.web-core-lib-paging.ts"],"sourcesContent":["\nexport interface PagingParameters {\n pageSize: number,\n pageIndex: number,\n includeTotalCount?: boolean | null\n}\n\nexport interface PageOf<T> {\n pageSize: number,\n pageIndex: number,\n totalCount?: number | null,\n next?: PagingParameters | null\n prev?: PagingParameters | null\n items: T[]\n}\n\nexport const pageForItemIndex = (itemIndex: number, pageSize: number | PagingParameters): number => {\n if (typeof pageSize === 'object') {\n pageSize = pageSize.pageSize\n }\n return Math.floor(itemIndex / pageSize)\n}\n\n/**\n * Return the range of item indexes for the given page and page size. The last\n * end portion of the range is exclusive, so when indexing an array the last\n * item of the page would have position `end - 1`. This allows one to pass the\n * values to `Array.slice()`.\n * @param pageIndex\n * @param pageSize\n * @returns\n */\nexport const itemRangeOfPage: {\n (pageIndex: number, pageSize: number): [ number, number ]\n (paging: PagingParameters)\n} = (pageIndex: number | PagingParameters, pageSize?: number): [ number, number ] => {\n if (typeof pageIndex === 'object') {\n pageSize = pageIndex.pageSize\n pageIndex = pageIndex.pageIndex\n }\n const start = pageSize * pageIndex\n const end = start + pageSize\n return [ start, end ]\n}\n","import { CollectionViewer, DataSource } from '@angular/cdk/collections'\nimport { BehaviorSubject, Observable, Subscription } from 'rxjs'\nimport { pageForItemIndex, PageOf, PagingParameters } from './paging.model'\n\n/**\n * This class is an adaptation from the [Angular Material Guide](https://v8.material.angular.io/cdk/scrolling/overview), _\"Specifying data\" example_, also\n * available on [StackBlitz](https://stackblitz.com/angular/mrbkjagnnra?file=src%2Fapp%2Fcdk-virtual-scroll-data-source-example.ts).\n */\nexport class PagingDataSource<T> extends DataSource<T> {\n\n private data: T[] | null = null\n private data$ = new BehaviorSubject<T[]>([])\n private fetchedPages = new Set<number>()\n private subscription = new Subscription()\n\n constructor(private pageSize: number, private fetchPage: (paging: PagingParameters) => Observable<PageOf<T>>) {\n super()\n }\n\n connect(collectionViewer: CollectionViewer): Observable<readonly T[]> {\n this.subscription.add(collectionViewer.viewChange.subscribe(range => {\n const startPage = this.pageForItemIndex(range.start)\n const endPage = this.pageForItemIndex(range.end - 1)\n for (let page = startPage; page <= endPage; page++) {\n this.fetch(page)\n }\n }))\n return this.data$\n }\n\n disconnect(): void {\n this.subscription.unsubscribe()\n }\n\n private pageForItemIndex(index: number): number {\n return pageForItemIndex(index, this.pageSize)\n }\n\n private fetch(pageIndex: number) {\n if (this.fetchedPages.has(pageIndex)) {\n return\n }\n this.fetchedPages.add(pageIndex)\n const includeTotalCount = !this.data\n this.fetchPage({ pageSize: this.pageSize, pageIndex: pageIndex, includeTotalCount }).subscribe(page => {\n if (!this.data) {\n if (typeof(page.totalCount) !== 'number') {\n throw new Error('data is null and no total count is available to inform allocation')\n }\n this.data = Array.from({ length: page.totalCount })\n }\n this.data.splice(pageIndex * this.pageSize, this.pageSize, ...page.items)\n this.data$.next(this.data)\n })\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;MAgBa,gBAAgB,GAAG,CAAC,SAAiB,EAAE,QAAmC,KAAY;AACjG,IAAA,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;AAChC,QAAA,QAAQ,GAAG,QAAQ,CAAC,QAAQ
|
|
1
|
+
{"version":3,"file":"ngageoint-mage.web-core-lib-paging.mjs","sources":["../../../projects/core-lib/paging/paging.model.ts","../../../projects/core-lib/paging/paging.cdk-data-source.adapter.ts","../../../projects/core-lib/paging/ngageoint-mage.web-core-lib-paging.ts"],"sourcesContent":["\nexport interface PagingParameters {\n pageSize: number,\n pageIndex: number,\n includeTotalCount?: boolean | null\n}\n\nexport interface PageOf<T> {\n pageSize: number,\n pageIndex: number,\n totalCount?: number | null,\n next?: PagingParameters | null\n prev?: PagingParameters | null\n items: T[]\n}\n\nexport const pageForItemIndex = (itemIndex: number, pageSize: number | PagingParameters): number => {\n if (typeof pageSize === 'object') {\n pageSize = pageSize.pageSize\n }\n return Math.floor(itemIndex / pageSize)\n}\n\n/**\n * Return the range of item indexes for the given page and page size. The last\n * end portion of the range is exclusive, so when indexing an array the last\n * item of the page would have position `end - 1`. This allows one to pass the\n * values to `Array.slice()`.\n * @param pageIndex\n * @param pageSize\n * @returns\n */\nexport const itemRangeOfPage: {\n (pageIndex: number, pageSize: number): [ number, number ]\n (paging: PagingParameters)\n} = (pageIndex: number | PagingParameters, pageSize?: number): [ number, number ] => {\n if (typeof pageIndex === 'object') {\n pageSize = pageIndex.pageSize\n pageIndex = pageIndex.pageIndex\n }\n const start = pageSize * pageIndex\n const end = start + pageSize\n return [ start, end ]\n}\n","import { CollectionViewer, DataSource } from '@angular/cdk/collections'\nimport { BehaviorSubject, Observable, Subscription } from 'rxjs'\nimport { pageForItemIndex, PageOf, PagingParameters } from './paging.model'\n\n/**\n * This class is an adaptation from the [Angular Material Guide](https://v8.material.angular.io/cdk/scrolling/overview), _\"Specifying data\" example_, also\n * available on [StackBlitz](https://stackblitz.com/angular/mrbkjagnnra?file=src%2Fapp%2Fcdk-virtual-scroll-data-source-example.ts).\n */\nexport class PagingDataSource<T> extends DataSource<T> {\n\n private data: T[] | null = null\n private data$ = new BehaviorSubject<T[]>([])\n private fetchedPages = new Set<number>()\n private subscription = new Subscription()\n\n constructor(private pageSize: number, private fetchPage: (paging: PagingParameters) => Observable<PageOf<T>>) {\n super()\n }\n\n connect(collectionViewer: CollectionViewer): Observable<readonly T[]> {\n this.subscription.add(collectionViewer.viewChange.subscribe(range => {\n const startPage = this.pageForItemIndex(range.start)\n const endPage = this.pageForItemIndex(range.end - 1)\n for (let page = startPage; page <= endPage; page++) {\n this.fetch(page)\n }\n }))\n return this.data$\n }\n\n disconnect(): void {\n this.subscription.unsubscribe()\n }\n\n private pageForItemIndex(index: number): number {\n return pageForItemIndex(index, this.pageSize)\n }\n\n private fetch(pageIndex: number) {\n if (this.fetchedPages.has(pageIndex)) {\n return\n }\n this.fetchedPages.add(pageIndex)\n const includeTotalCount = !this.data\n this.fetchPage({ pageSize: this.pageSize, pageIndex: pageIndex, includeTotalCount }).subscribe(page => {\n if (!this.data) {\n if (typeof(page.totalCount) !== 'number') {\n throw new Error('data is null and no total count is available to inform allocation')\n }\n this.data = Array.from({ length: page.totalCount })\n }\n this.data.splice(pageIndex * this.pageSize, this.pageSize, ...page.items)\n this.data$.next(this.data)\n })\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|