@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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"static-icon.model.d.ts","sourceRoot":"","sources":["../../../projects/core-lib/static-icon/static-icon.model.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;CAChB;AAED,MAAM,WAAW,6BAA6B;IAC5C,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,CAAC,EAAE,KAAK,CAAA;CAClB;AAED,MAAM,WAAW,4BAA4B;IAC3C,SAAS,EAAE,MAAM,CAAA;IACjB,EAAE,CAAC,EAAE,KAAK,CAAA;CACX;AAED,eAAO,MAAM,iBAAiB,UAAW,UAAU,GAAG,6BAA6B,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,KAAG,MAAM,GAAG,SAQ1H,CAAA;AAED,
|
|
1
|
+
{"version":3,"file":"static-icon.model.d.ts","sourceRoot":"","sources":["../../../projects/core-lib/static-icon/static-icon.model.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;CAChB;AAED,MAAM,WAAW,6BAA6B;IAC5C,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,CAAC,EAAE,KAAK,CAAA;CAClB;AAED,MAAM,WAAW,4BAA4B;IAC3C,SAAS,EAAE,MAAM,CAAA;IACjB,EAAE,CAAC,EAAE,KAAK,CAAA;CACX;AAED,eAAO,MAAM,iBAAiB,UAAW,UAAU,GAAG,6BAA6B,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,KAAG,MAAM,GAAG,SAQ1H,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG,6BAA6B,GAAG,4BAA4B,CAAA"}
|
|
@@ -15,7 +15,7 @@ export declare class UserReadService {
|
|
|
15
15
|
export interface UserSearchParams extends PagingParameters {
|
|
16
16
|
term?: string | null | undefined;
|
|
17
17
|
}
|
|
18
|
-
export
|
|
18
|
+
export type UserSearchResult = Pick<User, 'id' | 'username' | 'displayName' | 'email' | 'active' | 'enabled'> & {
|
|
19
19
|
/**
|
|
20
20
|
* A reduction of all the phone numbers to a single string
|
|
21
21
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user-read.service.d.ts","sourceRoot":"","sources":["../../../projects/core-lib/user/user-read.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,cAAc,EAAc,MAAM,eAAe,CAAA;AAC1D,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAA;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;;AAEnC,eAAO,MAAM,kBAAkB,oBAAoB,CAAA;AAUnD,qBAGa,eAAe;IAEd,OAAO,CAAC,SAAS;gBAAT,SAAS,EAAE,UAAU;IAEzC,MAAM,CAAC,KAAK,EAAE,gBAAgB,GAAG,UAAU,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;yCAJ1D,eAAe;6CAAf,eAAe;CAmB3B;AAED,MAAM,WAAW,gBAAiB,SAAQ,gBAAgB;IACxD,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;CACjC;AAED,
|
|
1
|
+
{"version":3,"file":"user-read.service.d.ts","sourceRoot":"","sources":["../../../projects/core-lib/user/user-read.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,cAAc,EAAc,MAAM,eAAe,CAAA;AAC1D,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAA;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAA;;AAEnC,eAAO,MAAM,kBAAkB,oBAAoB,CAAA;AAUnD,qBAGa,eAAe;IAEd,OAAO,CAAC,SAAS;gBAAT,SAAS,EAAE,UAAU;IAEzC,MAAM,CAAC,KAAK,EAAE,gBAAgB,GAAG,UAAU,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;yCAJ1D,eAAe;6CAAf,eAAe;CAmB3B;AAED,MAAM,WAAW,gBAAiB,SAAQ,gBAAgB;IACxD,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;CACjC;AAED,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,UAAU,GAAG,aAAa,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC,GAAG;IAC9G;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;CACtC,CAAA;AAED,eAAO,MAAM,iBAAiB,iCAAyD,CAAA"}
|
|
@@ -34,6 +34,6 @@ export declare class UserSelectComponent implements OnInit, OnChanges, AfterView
|
|
|
34
34
|
onScrollToEnd(): void;
|
|
35
35
|
fetchNextPage(): void;
|
|
36
36
|
static ɵfac: i0.ɵɵFactoryDeclaration<UserSelectComponent, never>;
|
|
37
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<UserSelectComponent, "mage-user-select", never, {}, {}, never, never, false>;
|
|
37
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<UserSelectComponent, "mage-user-select", never, {}, {}, never, never, false, never>;
|
|
38
38
|
}
|
|
39
39
|
//# sourceMappingURL=user-select.component.d.ts.map
|
package/angular-cli/README.md
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
# Angular CLI Integration
|
|
2
|
-
|
|
3
|
-
This subfolder of modules contains Angular CLI integrations, including a [schematic]() and
|
|
4
|
-
[builder](), that facilitates creating Mage web plugin bundles.
|
|
5
|
-
|
|
6
|
-
## Background
|
|
7
|
-
Before Angular 13, the Angular [Library](https://angular.dev/tools/libraries/creating-libraries) CLI tools and
|
|
8
|
-
[Angular Package Format](https://docs.google.com/document/d/1CZC2rcpxffTDfRDs6p1cfbmKNLA6x5O-NtkJglDaBVs/preview#heading=h.k0mh3o8u5hx)
|
|
9
|
-
produced a [UMD](https://github.com/umdjs/umd) bundle by default. The UMD bundle was suitable to include in a plugin's
|
|
10
|
-
NPM package and for the core web app to download directly and load with [SystemJS](https://github.com/systemjs/systemjs)
|
|
11
|
-
at runtime to hook the plugin module into the web app. Angular 13, however, eliminated the UMD bundle output from the
|
|
12
|
-
[Angular Package Format](https://angular.dev/tools/libraries/angular-package-format) leaving only ECMAScript Module
|
|
13
|
-
(ESM) outputs, as opposed to a concatenated, resolved bundle. Angular's intention is that libraries are strictly a
|
|
14
|
-
development time construct, with the hosting application left to resolving, bundling, and tree-shaking the library's
|
|
15
|
-
`import` statements. Mage, however, is using Angular libraries differently, creating a bundle that excludes shared
|
|
16
|
-
dependencies the host web app provides, but including dependencies specific to the library, such that the host web app
|
|
17
|
-
can load the library as one chunk dynamically at runtime. While native ESM could be a possibility for Mage in the
|
|
18
|
-
future, a significant amount of evaluation and testing is necessary, and at minimum Mage would require all instances to
|
|
19
|
-
run on HTTP/2 to maximize performance. The major issue would be all the transactions required to load the large number
|
|
20
|
-
of module entry points that Mage, Angular, Angular Material, and others comprise. Whereas a conventional web app can
|
|
21
|
-
provide all the shared entry points by bare module specifier to SystemJS's named registry from a single bundle
|
|
22
|
-
downloaded initially, an ESM app must download each module separately on-demand as the JS engine processes `import`
|
|
23
|
-
statements. Even with HTTP/2 multiplexing, this could be a serious performance hit.
|
|
24
|
-
|
|
25
|
-
## Plugin Library Schematic
|
|
26
|
-
|
|
27
|
-
## AMD Builder
|
|
28
|
-
|
|
29
|
-
## TODO
|
|
30
|
-
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
import { Component, Inject, InjectionToken, Input } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/common/http";
|
|
4
|
-
import * as i2 from "@angular/platform-browser";
|
|
5
|
-
const selector = 'mage-xhr-img';
|
|
6
|
-
export const OBJECT_URL_SERVICE = new InjectionToken(`${selector}.objectUrlService`);
|
|
7
|
-
/**
|
|
8
|
-
* This component allows fetching images by `XMLHttpRequest` rather than the
|
|
9
|
-
* browser's native mechanism. These image requests are subject to HTTP
|
|
10
|
-
* interceptors that can add authorization headers to the request instead of
|
|
11
|
-
* using cache-defeating URL query parameters to set an auth token. Applying
|
|
12
|
-
* headers to the browser's native `img` requests is impossible, so a query
|
|
13
|
-
* parameter is necessary for authorization, but adding the parameter to the
|
|
14
|
-
* URL effectively bypasses the browser's caching mechanism when the auth token
|
|
15
|
-
* changes for images that
|
|
16
|
-
* should otherwise be subject to caching.
|
|
17
|
-
*
|
|
18
|
-
* The catch to fetching images by XHR is the response must be fetched as a
|
|
19
|
-
* `Blob`. The user then gets a browser-specific URL for the blob by
|
|
20
|
-
* `URL.createObjectURL(blob)`, which can then be assigned to the `src`
|
|
21
|
-
* attribute of an `img` tag. These blob URLs must then be "revoked" by
|
|
22
|
-
* `URL.revokeObjectURL(url)` in order to reclaim object URL's associated
|
|
23
|
-
* 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)
|
|
24
|
-
* on the subject.
|
|
25
|
-
*
|
|
26
|
-
* To use the component, simply add the tag to a template and bind the `src`
|
|
27
|
-
* attribute to the source URL of the desired image.
|
|
28
|
-
* ```
|
|
29
|
-
* <mage-xhr-img [src]="someComponent.imageUrlRequiresAuth"></mage-xhr-img>
|
|
30
|
-
* ```
|
|
31
|
-
* The component encapsulates the logic of creating and releasing the object
|
|
32
|
-
* URLs for the image data, preventing memory leaks.
|
|
33
|
-
*/
|
|
34
|
-
export class XhrImgComponent {
|
|
35
|
-
constructor(objectUrlService, webClient, sanitizer) {
|
|
36
|
-
this.objectUrlService = objectUrlService;
|
|
37
|
-
this.webClient = webClient;
|
|
38
|
-
this.sanitizer = sanitizer;
|
|
39
|
-
this.sourceUrl = null;
|
|
40
|
-
this.safeBlobUrl = null;
|
|
41
|
-
}
|
|
42
|
-
ngOnChanges(changes) {
|
|
43
|
-
if (!changes.sourceUrl) {
|
|
44
|
-
return;
|
|
45
|
-
}
|
|
46
|
-
if (changes.sourceUrl.isFirstChange() && !this.sourceUrl) {
|
|
47
|
-
return;
|
|
48
|
-
}
|
|
49
|
-
this.disposeCurrent();
|
|
50
|
-
if (!this.sourceUrl) {
|
|
51
|
-
return;
|
|
52
|
-
}
|
|
53
|
-
this.subscription = this.webClient.get(this.sourceUrl, { responseType: 'blob' })
|
|
54
|
-
.subscribe(x => {
|
|
55
|
-
this.objectUrlService.revokeObjectURL(this.blobUrl);
|
|
56
|
-
this.blobUrl = this.objectUrlService.createObjectURL(x);
|
|
57
|
-
this.safeBlobUrl = this.sanitizer.bypassSecurityTrustUrl(this.blobUrl);
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
ngOnDestroy() {
|
|
61
|
-
this.disposeCurrent();
|
|
62
|
-
}
|
|
63
|
-
onImgLoad() {
|
|
64
|
-
this.disposeCurrent();
|
|
65
|
-
}
|
|
66
|
-
disposeCurrent() {
|
|
67
|
-
if (this.blobUrl) {
|
|
68
|
-
this.objectUrlService.revokeObjectURL(this.blobUrl);
|
|
69
|
-
}
|
|
70
|
-
if (this.subscription) {
|
|
71
|
-
this.subscription.unsubscribe();
|
|
72
|
-
}
|
|
73
|
-
this.blobUrl = null;
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
XhrImgComponent.ɵfac = function XhrImgComponent_Factory(t) { return new (t || XhrImgComponent)(i0.ɵɵdirectiveInject(OBJECT_URL_SERVICE), i0.ɵɵdirectiveInject(i1.HttpClient), i0.ɵɵdirectiveInject(i2.DomSanitizer)); };
|
|
77
|
-
XhrImgComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: XhrImgComponent, selectors: [["mage-xhr-img"]], inputs: { sourceUrl: ["src", "sourceUrl"] }, features: [i0.ɵɵProvidersFeature([
|
|
78
|
-
{
|
|
79
|
-
provide: OBJECT_URL_SERVICE,
|
|
80
|
-
useValue: URL
|
|
81
|
-
}
|
|
82
|
-
]), i0.ɵɵNgOnChangesFeature], decls: 1, vars: 1, consts: [[3, "load"]], template: function XhrImgComponent_Template(rf, ctx) { if (rf & 1) {
|
|
83
|
-
i0.ɵɵelementStart(0, "img", 0);
|
|
84
|
-
i0.ɵɵlistener("load", function XhrImgComponent_Template_img_load_0_listener() { return ctx.onImgLoad(); });
|
|
85
|
-
i0.ɵɵelementEnd();
|
|
86
|
-
} if (rf & 2) {
|
|
87
|
-
i0.ɵɵattribute("src", ctx.safeBlobUrl, i0.ɵɵsanitizeUrl);
|
|
88
|
-
} }, styles: ["img[_ngcontent-%COMP%]{height:100%;width:100%}"] });
|
|
89
|
-
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(XhrImgComponent, [{
|
|
90
|
-
type: Component,
|
|
91
|
-
args: [{ selector: `${selector}`, template: `<img [attr.src]="safeBlobUrl" (load)="onImgLoad()"/>`, providers: [
|
|
92
|
-
{
|
|
93
|
-
provide: OBJECT_URL_SERVICE,
|
|
94
|
-
useValue: URL
|
|
95
|
-
}
|
|
96
|
-
], styles: ["img{height:100%;width:100%}\n"] }]
|
|
97
|
-
}], function () { return [{ type: undefined, decorators: [{
|
|
98
|
-
type: Inject,
|
|
99
|
-
args: [OBJECT_URL_SERVICE]
|
|
100
|
-
}] }, { type: i1.HttpClient }, { type: i2.DomSanitizer }]; }, { sourceUrl: [{
|
|
101
|
-
type: Input,
|
|
102
|
-
args: ['src']
|
|
103
|
-
}] }); })();
|
|
104
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieGhyLWltZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWxpYi9jb21tb24veGhyLWltZy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLEtBQUssRUFBdUMsTUFBTSxlQUFlLENBQUE7Ozs7QUFLN0csTUFBTSxRQUFRLEdBQUcsY0FBYyxDQUFBO0FBWS9CLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLElBQUksY0FBYyxDQUFtQixHQUFHLFFBQVEsbUJBQW1CLENBQUMsQ0FBQTtBQUV0Rzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EwQkc7QUFZSCxNQUFNLE9BQU8sZUFBZTtJQVMxQixZQUFnRCxnQkFBa0MsRUFBVSxTQUFxQixFQUFVLFNBQXVCO1FBQWxHLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFBVSxjQUFTLEdBQVQsU0FBUyxDQUFZO1FBQVUsY0FBUyxHQUFULFNBQVMsQ0FBYztRQU5sSixjQUFTLEdBQWtCLElBQUksQ0FBQTtRQUMvQixnQkFBVyxHQUFtQixJQUFJLENBQUE7SUFLbUgsQ0FBQztJQUV0SixXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUU7WUFDdEIsT0FBTTtTQUNQO1FBQ0QsSUFBSSxPQUFPLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUN4RCxPQUFNO1NBQ1A7UUFDRCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUE7UUFDckIsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDbkIsT0FBTTtTQUNQO1FBQ0QsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxDQUFDO2FBQzdFLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNiLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1lBQ25ELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUN2RCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQ3hFLENBQUMsQ0FBQyxDQUFBO0lBQ04sQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUE7SUFDdkIsQ0FBQztJQUVELFNBQVM7UUFDUCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUE7SUFDdkIsQ0FBQztJQUVPLGNBQWM7UUFDcEIsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2hCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1NBQ3BEO1FBQ0QsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3JCLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUE7U0FDaEM7UUFDRCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQTtJQUNyQixDQUFDOzs4RUE5Q1UsZUFBZSx1QkFTTixrQkFBa0I7a0VBVDNCLGVBQWUsK0dBUGY7WUFDVDtnQkFDRSxPQUFPLEVBQUUsa0JBQWtCO2dCQUMzQixRQUFRLEVBQUUsR0FBRzthQUNkO1NBQ0Y7UUFQVSw4QkFBb0Q7UUFBdEIsdUZBQVEsZUFBVyxJQUFDO1FBQWxELGlCQUFvRDs7UUFBL0Msd0RBQXdCOzt1RkFTN0IsZUFBZTtjQVgzQixTQUFTOzJCQUNFLEdBQUcsUUFBUSxFQUFFLFlBQ2Isc0RBQXNELGFBRXJEO29CQUNUO3dCQUNFLE9BQU8sRUFBRSxrQkFBa0I7d0JBQzNCLFFBQVEsRUFBRSxHQUFHO3FCQUNkO2lCQUNGOztzQkFXWSxNQUFNO3VCQUFDLGtCQUFrQjs0RUFOdEMsU0FBUztrQkFEUixLQUFLO21CQUFDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgSW5qZWN0aW9uVG9rZW4sIElucHV0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnXG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVVcmwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJ1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcydcblxuY29uc3Qgc2VsZWN0b3IgPSAnbWFnZS14aHItaW1nJ1xuXG4vKipcbiAqIFRoaXMgaXMgYSBzaW1wbGUgaW50ZXJmYWNlIHRoYXQgaW5jbHVkZXMgdGhlIFttZXRob2RzXShodHRwczovL3d3dy53My5vcmcvVFIvRmlsZUFQSS8jY3JlYXRpbmctcmV2b2tpbmcpXG4gKiBmcm9tIHRoZSBbVVJMIEFQSV0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL1VSTCkgZm9yXG4gKiBtYW5hZ2luZyBibG9iIFVSTHMuICBUaGlzIGFsbG93cyBhIHNlcnZpY2UgdG8gYmUgaW5qZWN0ZWQgaW50b1xuICogYFhockltZ0NvbXBvbmVudGAgYW5kIG92ZXJyaWRkZW4gZm9yIHRlc3RpbmcuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgT2JqZWN0VXJsU2VydmljZSB7XG4gIGNyZWF0ZU9iamVjdFVSTDogKHR5cGVvZiBVUkwpWydjcmVhdGVPYmplY3RVUkwnXVxuICByZXZva2VPYmplY3RVUkw6ICh0eXBlb2YgVVJMKVsncmV2b2tlT2JqZWN0VVJMJ11cbn1cbmV4cG9ydCBjb25zdCBPQkpFQ1RfVVJMX1NFUlZJQ0UgPSBuZXcgSW5qZWN0aW9uVG9rZW48T2JqZWN0VXJsU2VydmljZT4oYCR7c2VsZWN0b3J9Lm9iamVjdFVybFNlcnZpY2VgKVxuXG4vKipcbiAqIFRoaXMgY29tcG9uZW50IGFsbG93cyBmZXRjaGluZyBpbWFnZXMgYnkgYFhNTEh0dHBSZXF1ZXN0YCByYXRoZXIgdGhhbiB0aGVcbiAqIGJyb3dzZXIncyBuYXRpdmUgbWVjaGFuaXNtLiAgVGhlc2UgaW1hZ2UgcmVxdWVzdHMgYXJlIHN1YmplY3QgdG8gSFRUUFxuICogaW50ZXJjZXB0b3JzIHRoYXQgY2FuIGFkZCBhdXRob3JpemF0aW9uIGhlYWRlcnMgdG8gdGhlIHJlcXVlc3QgaW5zdGVhZCBvZlxuICogdXNpbmcgY2FjaGUtZGVmZWF0aW5nIFVSTCBxdWVyeSBwYXJhbWV0ZXJzIHRvIHNldCBhbiBhdXRoIHRva2VuLiAgQXBwbHlpbmdcbiAqIGhlYWRlcnMgdG8gdGhlIGJyb3dzZXIncyBuYXRpdmUgYGltZ2AgcmVxdWVzdHMgaXMgaW1wb3NzaWJsZSwgc28gYSBxdWVyeVxuICogcGFyYW1ldGVyIGlzIG5lY2Vzc2FyeSBmb3IgYXV0aG9yaXphdGlvbiwgYnV0IGFkZGluZyB0aGUgcGFyYW1ldGVyIHRvIHRoZVxuICogVVJMIGVmZmVjdGl2ZWx5IGJ5cGFzc2VzIHRoZSBicm93c2VyJ3MgY2FjaGluZyBtZWNoYW5pc20gd2hlbiB0aGUgYXV0aCB0b2tlblxuICogY2hhbmdlcyBmb3IgaW1hZ2VzIHRoYXRcbiAqIHNob3VsZCBvdGhlcndpc2UgYmUgc3ViamVjdCB0byBjYWNoaW5nLlxuICpcbiAqIFRoZSBjYXRjaCB0byBmZXRjaGluZyBpbWFnZXMgYnkgWEhSIGlzIHRoZSByZXNwb25zZSBtdXN0IGJlIGZldGNoZWQgYXMgYVxuICogYEJsb2JgLiAgVGhlIHVzZXIgdGhlbiBnZXRzIGEgYnJvd3Nlci1zcGVjaWZpYyBVUkwgZm9yIHRoZSBibG9iIGJ5XG4gKiBgVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKWAsIHdoaWNoIGNhbiB0aGVuIGJlIGFzc2lnbmVkIHRvIHRoZSBgc3JjYFxuICogYXR0cmlidXRlIG9mIGFuIGBpbWdgIHRhZy4gIFRoZXNlIGJsb2IgVVJMcyBtdXN0IHRoZW4gYmUgXCJyZXZva2VkXCIgYnlcbiAqIGBVUkwucmV2b2tlT2JqZWN0VVJMKHVybClgIGluIG9yZGVyIHRvIHJlY2xhaW0gb2JqZWN0IFVSTCdzIGFzc29jaWF0ZWRcbiAqIHJlc291cmNlcy4gIFNlZSBbTW96aWxsYSdzIGRvY3NdKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0FQSS9GaWxlL1VzaW5nX2ZpbGVzX2Zyb21fd2ViX2FwcGxpY2F0aW9ucyNleGFtcGxlX3VzaW5nX29iamVjdF91cmxzX3RvX2Rpc3BsYXlfaW1hZ2VzKVxuICogb24gdGhlIHN1YmplY3QuXG4gKlxuICogVG8gdXNlIHRoZSBjb21wb25lbnQsIHNpbXBseSBhZGQgdGhlIHRhZyB0byBhIHRlbXBsYXRlIGFuZCBiaW5kIHRoZSBgc3JjYFxuICogYXR0cmlidXRlIHRvIHRoZSBzb3VyY2UgVVJMIG9mIHRoZSBkZXNpcmVkIGltYWdlLlxuICogYGBgXG4gKiA8bWFnZS14aHItaW1nIFtzcmNdPVwic29tZUNvbXBvbmVudC5pbWFnZVVybFJlcXVpcmVzQXV0aFwiPjwvbWFnZS14aHItaW1nPlxuICogYGBgXG4gKiBUaGUgY29tcG9uZW50IGVuY2Fwc3VsYXRlcyB0aGUgbG9naWMgb2YgY3JlYXRpbmcgYW5kIHJlbGVhc2luZyB0aGUgb2JqZWN0XG4gKiBVUkxzIGZvciB0aGUgaW1hZ2UgZGF0YSwgcHJldmVudGluZyBtZW1vcnkgbGVha3MuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogYCR7c2VsZWN0b3J9YCxcbiAgdGVtcGxhdGU6IGA8aW1nIFthdHRyLnNyY109XCJzYWZlQmxvYlVybFwiIChsb2FkKT1cIm9uSW1nTG9hZCgpXCIvPmAsXG4gIHN0eWxlczogWyBgaW1nIHsgaGVpZ2h0OiAxMDAlOyB3aWR0aDogMTAwJSB9YCBdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBPQkpFQ1RfVVJMX1NFUlZJQ0UsXG4gICAgICB1c2VWYWx1ZTogVVJMXG4gICAgfVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFhockltZ0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcblxuICBASW5wdXQoJ3NyYycpXG4gIHNvdXJjZVVybDogc3RyaW5nIHwgbnVsbCA9IG51bGxcbiAgc2FmZUJsb2JVcmw6IFNhZmVVcmwgfCBudWxsID0gbnVsbFxuXG4gIHByaXZhdGUgYmxvYlVybDogc3RyaW5nXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb25cblxuICBjb25zdHJ1Y3RvcihASW5qZWN0KE9CSkVDVF9VUkxfU0VSVklDRSkgcHJpdmF0ZSBvYmplY3RVcmxTZXJ2aWNlOiBPYmplY3RVcmxTZXJ2aWNlLCBwcml2YXRlIHdlYkNsaWVudDogSHR0cENsaWVudCwgcHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcikge31cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKCFjaGFuZ2VzLnNvdXJjZVVybCkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIGlmIChjaGFuZ2VzLnNvdXJjZVVybC5pc0ZpcnN0Q2hhbmdlKCkgJiYgIXRoaXMuc291cmNlVXJsKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgdGhpcy5kaXNwb3NlQ3VycmVudCgpXG4gICAgaWYgKCF0aGlzLnNvdXJjZVVybCkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gdGhpcy53ZWJDbGllbnQuZ2V0KHRoaXMuc291cmNlVXJsLCB7IHJlc3BvbnNlVHlwZTogJ2Jsb2InIH0pXG4gICAgICAuc3Vic2NyaWJlKHggPT4ge1xuICAgICAgICB0aGlzLm9iamVjdFVybFNlcnZpY2UucmV2b2tlT2JqZWN0VVJMKHRoaXMuYmxvYlVybClcbiAgICAgICAgdGhpcy5ibG9iVXJsID0gdGhpcy5vYmplY3RVcmxTZXJ2aWNlLmNyZWF0ZU9iamVjdFVSTCh4KVxuICAgICAgICB0aGlzLnNhZmVCbG9iVXJsID0gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFVybCh0aGlzLmJsb2JVcmwpXG4gICAgICB9KVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kaXNwb3NlQ3VycmVudCgpXG4gIH1cblxuICBvbkltZ0xvYWQoKTogdm9pZCB7XG4gICAgdGhpcy5kaXNwb3NlQ3VycmVudCgpXG4gIH1cblxuICBwcml2YXRlIGRpc3Bvc2VDdXJyZW50KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmJsb2JVcmwpIHtcbiAgICAgIHRoaXMub2JqZWN0VXJsU2VydmljZS5yZXZva2VPYmplY3RVUkwodGhpcy5ibG9iVXJsKVxuICAgIH1cbiAgICBpZiAodGhpcy5zdWJzY3JpcHRpb24pIHtcbiAgICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKClcbiAgICB9XG4gICAgdGhpcy5ibG9iVXJsID0gbnVsbFxuICB9XG59Il19
|
|
@@ -1,105 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { BehaviorSubject, Subject } from 'rxjs';
|
|
3
|
-
import { map } from 'rxjs/operators';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/common/http";
|
|
6
|
-
export class FeedService {
|
|
7
|
-
constructor(webClient) {
|
|
8
|
-
this.webClient = webClient;
|
|
9
|
-
// TODO: there is probably a better solution than maintaining this map here
|
|
10
|
-
this._feeds = new BehaviorSubject([]);
|
|
11
|
-
this.feeds$ = this._feeds.asObservable();
|
|
12
|
-
this._feedItems = new Map();
|
|
13
|
-
}
|
|
14
|
-
feedItems(feedId) {
|
|
15
|
-
return this._feedItems.get(feedId).asObservable();
|
|
16
|
-
}
|
|
17
|
-
fetchAllFeeds() {
|
|
18
|
-
return this.webClient.get('/api/feeds/');
|
|
19
|
-
}
|
|
20
|
-
fetchFeed(feedId) {
|
|
21
|
-
return this.webClient.get(`/api/feeds/${feedId}`);
|
|
22
|
-
}
|
|
23
|
-
fetchService(serviceId) {
|
|
24
|
-
return this.webClient.get(`/api/feeds/services/${serviceId}`);
|
|
25
|
-
}
|
|
26
|
-
createService(service) {
|
|
27
|
-
return this.webClient.post(`/api/feeds/services`, service);
|
|
28
|
-
}
|
|
29
|
-
fetchServices() {
|
|
30
|
-
return this.webClient.get(`/api/feeds/services`);
|
|
31
|
-
}
|
|
32
|
-
fetchServiceFeeds(serviceId) {
|
|
33
|
-
return this.webClient.get(`/api/feeds/services/${serviceId}/feeds`);
|
|
34
|
-
}
|
|
35
|
-
fetchServiceType(serviceTypeId) {
|
|
36
|
-
return this.webClient.get(`/api/feeds/service_types/${serviceTypeId}`);
|
|
37
|
-
}
|
|
38
|
-
fetchTopics(serviceId) {
|
|
39
|
-
return this.webClient.get(`/api/feeds/services/${serviceId}/topics`);
|
|
40
|
-
}
|
|
41
|
-
previewFeed(serviceId, topicId, feedSpec, opts) {
|
|
42
|
-
opts = opts || {};
|
|
43
|
-
const skipContentFetch = opts.skipContentFetch === true;
|
|
44
|
-
return this.webClient.post(`/api/feeds/services/${serviceId}/topics/${topicId}/feed_preview?skip_content_fetch=${skipContentFetch}`, { feed: feedSpec });
|
|
45
|
-
}
|
|
46
|
-
fetchTopic(serviceId, topicId) {
|
|
47
|
-
return this.webClient.get(`/api/feeds/services/${serviceId}/topics/${topicId}`);
|
|
48
|
-
}
|
|
49
|
-
fetchServiceTypes() {
|
|
50
|
-
return this.webClient.get(`/api/feeds/service_types`);
|
|
51
|
-
}
|
|
52
|
-
createFeed(serviceId, topicId, feedConfiguration) {
|
|
53
|
-
return this.webClient.post(`/api/feeds/services/${serviceId}/topics/${topicId}/feeds`, feedConfiguration);
|
|
54
|
-
}
|
|
55
|
-
updateFeed(feed) {
|
|
56
|
-
return this.webClient.put(`/api/feeds/${feed.id}`, feed);
|
|
57
|
-
}
|
|
58
|
-
deleteFeed(feed) {
|
|
59
|
-
return this.webClient.delete(`/api/feeds/${feed.id}`, { responseType: 'text' });
|
|
60
|
-
}
|
|
61
|
-
deleteService(service) {
|
|
62
|
-
console.log('delete');
|
|
63
|
-
return this.webClient.delete(`/api/feeds/services/${service.id}`, { responseType: 'text' });
|
|
64
|
-
}
|
|
65
|
-
fetchFeeds(eventId) {
|
|
66
|
-
const subject = new Subject();
|
|
67
|
-
this.webClient.get(`/api/events/${eventId}/feeds`).subscribe(feeds => {
|
|
68
|
-
feeds.map(feed => {
|
|
69
|
-
feed.id = feed.id.toString();
|
|
70
|
-
return feed;
|
|
71
|
-
});
|
|
72
|
-
feeds.forEach(feed => {
|
|
73
|
-
let feedItems = this._feedItems.get(feed.id);
|
|
74
|
-
if (!feedItems) {
|
|
75
|
-
feedItems = new BehaviorSubject([]);
|
|
76
|
-
this._feedItems.set(feed.id, feedItems);
|
|
77
|
-
}
|
|
78
|
-
});
|
|
79
|
-
subject.next(feeds);
|
|
80
|
-
this._feeds.next(feeds);
|
|
81
|
-
});
|
|
82
|
-
return subject;
|
|
83
|
-
}
|
|
84
|
-
fetchFeedItems(event, feed) {
|
|
85
|
-
const feedItems = this._feedItems.get(feed.id);
|
|
86
|
-
return this.webClient.post(`/api/events/${event.id}/feeds/${feed.id}/content`, {}).pipe(map(content => {
|
|
87
|
-
const features = content.items.features;
|
|
88
|
-
features.forEach((feature) => {
|
|
89
|
-
feature.id = String(feature.id);
|
|
90
|
-
feature.properties = feature.properties || {};
|
|
91
|
-
});
|
|
92
|
-
feedItems.next(features);
|
|
93
|
-
return content;
|
|
94
|
-
}));
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
FeedService.ɵfac = function FeedService_Factory(t) { return new (t || FeedService)(i0.ɵɵinject(i1.HttpClient)); };
|
|
98
|
-
FeedService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: FeedService, factory: FeedService.ɵfac, providedIn: 'root' });
|
|
99
|
-
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FeedService, [{
|
|
100
|
-
type: Injectable,
|
|
101
|
-
args: [{
|
|
102
|
-
providedIn: 'root'
|
|
103
|
-
}]
|
|
104
|
-
}], function () { return [{ type: i1.HttpClient }]; }, null); })();
|
|
105
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmVlZC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS1saWIvZmVlZC9mZWVkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsZUFBZSxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUMzRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7OztBQVdwQyxNQUFNLE9BQU8sV0FBVztJQUV0QixZQUFvQixTQUFxQjtRQUFyQixjQUFTLEdBQVQsU0FBUyxDQUFZO1FBRXpDLDJFQUEyRTtRQUNuRSxXQUFNLEdBQUcsSUFBSSxlQUFlLENBQWMsRUFBRSxDQUFDLENBQUM7UUFDN0MsV0FBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFckMsZUFBVSxHQUFHLElBQUksR0FBRyxFQUEyQyxDQUFDO0lBTjNCLENBQUM7SUFPOUMsU0FBUyxDQUFDLE1BQWM7UUFDdEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNwRCxDQUFDO0lBRUQsYUFBYTtRQUNYLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQWMsYUFBYSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVELFNBQVMsQ0FBQyxNQUFjO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQWUsY0FBYyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFRCxZQUFZLENBQUMsU0FBaUI7UUFDNUIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBVSx1QkFBdUIsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBRUQsYUFBYSxDQUFDLE9BQTZFO1FB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RUFBRSxDQUFBO1lBQy9DLENBQUMsQ0FBQyxDQUFBO1lBQ0YsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQTtZQUN4QixPQUFPLE9BQU8sQ0FBQTtRQUNoQixDQUFDLENBQUMsQ0FDSCxDQUFBO0lBQ0gsQ0FBQzs7c0VBbEhVLFdBQVc7aUVBQVgsV0FBVyxXQUFYLFdBQVcsbUJBRlYsTUFBTTt1RkFFUCxXQUFXO2NBSHZCLFVBQVU7ZUFBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGZWF0dXJlIH0gZnJvbSAnZ2VvanNvbidcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcbmltcG9ydCB7IEZlZWQsIEZlZWRDb250ZW50LCBGZWVkRXhwYW5kZWQsIEZlZWRQb3N0LCBGZWVkUHJldmlldywgRmVlZFRvcGljLCBTZXJ2aWNlLCBTZXJ2aWNlVHlwZSwgU3R5bGVkRmVhdHVyZSB9IGZyb20gJy4vZmVlZC5tb2RlbCdcblxuXG5leHBvcnQgaW50ZXJmYWNlIEZlZWRQcmV2aWV3T3B0aW9ucyB7XG4gIHNraXBDb250ZW50RmV0Y2g/OiBib29sZWFuXG59XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEZlZWRTZXJ2aWNlIHtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHdlYkNsaWVudDogSHR0cENsaWVudCkgeyB9XG5cbiAgLy8gVE9ETzogdGhlcmUgaXMgcHJvYmFibHkgYSBiZXR0ZXIgc29sdXRpb24gdGhhbiBtYWludGFpbmluZyB0aGlzIG1hcCBoZXJlXG4gIHByaXZhdGUgX2ZlZWRzID0gbmV3IEJlaGF2aW9yU3ViamVjdDxBcnJheTxGZWVkPj4oW10pO1xuICByZWFkb25seSBmZWVkcyQgPSB0aGlzLl9mZWVkcy5hc09ic2VydmFibGUoKTtcblxuICBwcml2YXRlIF9mZWVkSXRlbXMgPSBuZXcgTWFwPHN0cmluZywgQmVoYXZpb3JTdWJqZWN0PEFycmF5PEZlYXR1cmU+Pj4oKTtcbiAgZmVlZEl0ZW1zKGZlZWRJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxBcnJheTxGZWF0dXJlPj4ge1xuICAgIHJldHVybiB0aGlzLl9mZWVkSXRlbXMuZ2V0KGZlZWRJZCkuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBmZXRjaEFsbEZlZWRzKCk6IE9ic2VydmFibGU8QXJyYXk8RmVlZD4+IHtcbiAgICByZXR1cm4gdGhpcy53ZWJDbGllbnQuZ2V0PEFycmF5PEZlZWQ+PignL2FwaS9mZWVkcy8nKTtcbiAgfVxuXG4gIGZldGNoRmVlZChmZWVkSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8RmVlZEV4cGFuZGVkPiB7XG4gICAgcmV0dXJuIHRoaXMud2ViQ2xpZW50LmdldDxGZWVkRXhwYW5kZWQ+KGAvYXBpL2ZlZWRzLyR7ZmVlZElkfWApO1xuICB9XG5cbiAgZmV0Y2hTZXJ2aWNlKHNlcnZpY2VJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxTZXJ2aWNlPiB7XG4gICAgcmV0dXJuIHRoaXMud2ViQ2xpZW50LmdldDxTZXJ2aWNlPihgL2FwaS9mZWVkcy9zZXJ2aWNlcy8ke3NlcnZpY2VJZH1gKTtcbiAgfVxuXG4gIGNyZWF0ZVNlcnZpY2Uoc2VydmljZTogeyB0aXRsZTogc3RyaW5nLCBzdW1tYXJ5Pzogc3RyaW5nLCBzZXJ2aWNlVHlwZTogc3RyaW5nLCBjb25maWc6IGFueX0pOiBPYnNlcnZhYmxlPFNlcnZpY2U+IHtcbiAgICByZXR1cm4gdGhpcy53ZWJDbGllbnQucG9zdDxTZXJ2aWNlPihgL2FwaS9mZWVkcy9zZXJ2aWNlc2AsIHNlcnZpY2UpO1xuICB9XG5cbiAgZmV0Y2hTZXJ2aWNlcygpOiBPYnNlcnZhYmxlPEFycmF5PFNlcnZpY2U+PiB7XG4gICAgcmV0dXJuIHRoaXMud2ViQ2xpZW50LmdldDxBcnJheTxTZXJ2aWNlPj4oYC9hcGkvZmVlZHMvc2VydmljZXNgKTtcbiAgfVxuXG4gIGZldGNoU2VydmljZUZlZWRzKHNlcnZpY2VJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxBcnJheTxGZWVkPj4ge1xuICAgIHJldHVybiB0aGlzLndlYkNsaWVudC5nZXQ8QXJyYXk8RmVlZD4+KGAvYXBpL2ZlZWRzL3NlcnZpY2VzLyR7c2VydmljZUlkfS9mZWVkc2ApO1xuICB9XG5cbiAgZmV0Y2hTZXJ2aWNlVHlwZShzZXJ2aWNlVHlwZUlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFNlcnZpY2VUeXBlPiB7XG4gICAgcmV0dXJuIHRoaXMud2ViQ2xpZW50LmdldDxTZXJ2aWNlVHlwZT4oYC9hcGkvZmVlZHMvc2VydmljZV90eXBlcy8ke3NlcnZpY2VUeXBlSWR9YCk7XG4gIH1cblxuICBmZXRjaFRvcGljcyhzZXJ2aWNlSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8QXJyYXk8RmVlZFRvcGljPj4ge1xuICAgIHJldHVybiB0aGlzLndlYkNsaWVudC5nZXQ8QXJyYXk8RmVlZFRvcGljPj4oYC9hcGkvZmVlZHMvc2VydmljZXMvJHtzZXJ2aWNlSWR9L3RvcGljc2ApO1xuICB9XG5cbiAgcHJldmlld0ZlZWQoc2VydmljZUlkOiBzdHJpbmcsIHRvcGljSWQ6IHN0cmluZywgZmVlZFNwZWM6IFBhcnRpYWw8T21pdDxGZWVkUG9zdCwgJ3NlcnZpY2UnIHwgJ3RvcGljJz4+LCBvcHRzPzogRmVlZFByZXZpZXdPcHRpb25zKTogT2JzZXJ2YWJsZTxGZWVkUHJldmlldz4ge1xuICAgIG9wdHMgPSBvcHRzIHx8IHt9XG4gICAgY29uc3Qgc2tpcENvbnRlbnRGZXRjaDogYm9vbGVhbiA9IG9wdHMuc2tpcENvbnRlbnRGZXRjaCA9PT0gdHJ1ZVxuICAgIHJldHVybiB0aGlzLndlYkNsaWVudC5wb3N0PEZlZWRQcmV2aWV3PihcbiAgICAgIGAvYXBpL2ZlZWRzL3NlcnZpY2VzLyR7c2VydmljZUlkfS90b3BpY3MvJHt0b3BpY0lkfS9mZWVkX3ByZXZpZXc/c2tpcF9jb250ZW50X2ZldGNoPSR7c2tpcENvbnRlbnRGZXRjaH1gLFxuICAgICAgeyBmZWVkOiBmZWVkU3BlYyB9KTtcbiAgfVxuXG4gIGZldGNoVG9waWMoc2VydmljZUlkOiBzdHJpbmcsIHRvcGljSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8RmVlZFRvcGljPiB7XG4gICAgcmV0dXJuIHRoaXMud2ViQ2xpZW50LmdldDxGZWVkVG9waWM+KGAvYXBpL2ZlZWRzL3NlcnZpY2VzLyR7c2VydmljZUlkfS90b3BpY3MvJHt0b3BpY0lkfWApO1xuICB9XG5cbiAgZmV0Y2hTZXJ2aWNlVHlwZXMoKTogT2JzZXJ2YWJsZTxBcnJheTxTZXJ2aWNlVHlwZT4+IHtcbiAgICByZXR1cm4gdGhpcy53ZWJDbGllbnQuZ2V0PEFycmF5PFNlcnZpY2VUeXBlPj4oYC9hcGkvZmVlZHMvc2VydmljZV90eXBlc2ApO1xuICB9XG5cbiAgY3JlYXRlRmVlZChzZXJ2aWNlSWQ6IHN0cmluZywgdG9waWNJZDogc3RyaW5nLCBmZWVkQ29uZmlndXJhdGlvbjogYW55KTogT2JzZXJ2YWJsZTxGZWVkRXhwYW5kZWQ+IHtcbiAgICByZXR1cm4gdGhpcy53ZWJDbGllbnQucG9zdDxGZWVkRXhwYW5kZWQ+KGAvYXBpL2ZlZWRzL3NlcnZpY2VzLyR7c2VydmljZUlkfS90b3BpY3MvJHt0b3BpY0lkfS9mZWVkc2AsIGZlZWRDb25maWd1cmF0aW9uKTtcbiAgfVxuXG4gIHVwZGF0ZUZlZWQoZmVlZDogUGFydGlhbDxPbWl0PEZlZWRQb3N0LCAnaWQnPj4gJiBQaWNrPEZlZWQsICdpZCc+KTogT2JzZXJ2YWJsZTxGZWVkRXhwYW5kZWQ+IHtcbiAgICByZXR1cm4gdGhpcy53ZWJDbGllbnQucHV0PEZlZWRFeHBhbmRlZD4oYC9hcGkvZmVlZHMvJHtmZWVkLmlkfWAsIGZlZWQpO1xuICB9XG5cbiAgZGVsZXRlRmVlZChmZWVkOiBGZWVkIHwgRmVlZEV4cGFuZGVkKTogT2JzZXJ2YWJsZTx7fT4ge1xuICAgIHJldHVybiB0aGlzLndlYkNsaWVudC5kZWxldGUoYC9hcGkvZmVlZHMvJHtmZWVkLmlkfWAsIHtyZXNwb25zZVR5cGU6ICd0ZXh0J30pO1xuICB9XG5cbiAgZGVsZXRlU2VydmljZShzZXJ2aWNlOiBTZXJ2aWNlKTogT2JzZXJ2YWJsZTx7fT4ge1xuICAgIGNvbnNvbGUubG9nKCdkZWxldGUnKVxuICAgIHJldHVybiB0aGlzLndlYkNsaWVudC5kZWxldGUoYC9hcGkvZmVlZHMvc2VydmljZXMvJHtzZXJ2aWNlLmlkfWAsIHsgcmVzcG9uc2VUeXBlOiAndGV4dCcgfSk7XG4gIH1cblxuICBmZXRjaEZlZWRzKGV2ZW50SWQ6IG51bWJlcik6IE9ic2VydmFibGU8QXJyYXk8RmVlZD4+IHtcbiAgICBjb25zdCBzdWJqZWN0ID0gbmV3IFN1YmplY3Q8QXJyYXk8RmVlZD4+KCk7XG4gICAgdGhpcy53ZWJDbGllbnQuZ2V0PEFycmF5PEZlZWQ+PihgL2FwaS9ldmVudHMvJHtldmVudElkfS9mZWVkc2ApLnN1YnNjcmliZShmZWVkcyA9PiB7XG4gICAgICBmZWVkcy5tYXAoZmVlZCA9PiB7XG4gICAgICAgIGZlZWQuaWQgPSBmZWVkLmlkLnRvU3RyaW5nKCk7XG4gICAgICAgIHJldHVybiBmZWVkO1xuICAgICAgfSk7XG5cbiAgICAgIGZlZWRzLmZvckVhY2goZmVlZCA9PiB7XG4gICAgICAgIGxldCBmZWVkSXRlbXMgPSB0aGlzLl9mZWVkSXRlbXMuZ2V0KGZlZWQuaWQpO1xuICAgICAgICBpZiAoIWZlZWRJdGVtcykge1xuICAgICAgICAgIGZlZWRJdGVtcyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QXJyYXk8RmVhdHVyZT4+KFtdKTtcbiAgICAgICAgICB0aGlzLl9mZWVkSXRlbXMuc2V0KGZlZWQuaWQsIGZlZWRJdGVtcyk7XG4gICAgICAgIH1cbiAgICAgIH0pXG5cbiAgICAgIHN1YmplY3QubmV4dChmZWVkcyk7XG4gICAgICB0aGlzLl9mZWVkcy5uZXh0KGZlZWRzKTtcbiAgICB9KTtcblxuICAgIHJldHVybiBzdWJqZWN0O1xuICB9XG5cbiAgZmV0Y2hGZWVkSXRlbXMoZXZlbnQ6IGFueSwgZmVlZDogRmVlZCk6IE9ic2VydmFibGU8RmVlZENvbnRlbnQ+IHtcbiAgICBjb25zdCBmZWVkSXRlbXMgPSB0aGlzLl9mZWVkSXRlbXMuZ2V0KGZlZWQuaWQpXG4gICAgcmV0dXJuIHRoaXMud2ViQ2xpZW50LnBvc3Q8RmVlZENvbnRlbnQ+KGAvYXBpL2V2ZW50cy8ke2V2ZW50LmlkfS9mZWVkcy8ke2ZlZWQuaWR9L2NvbnRlbnRgLCB7fSkucGlwZShcbiAgICAgIG1hcChjb250ZW50ID0+IHtcbiAgICAgICAgY29uc3QgZmVhdHVyZXMgPSBjb250ZW50Lml0ZW1zLmZlYXR1cmVzXG4gICAgICAgIGZlYXR1cmVzLmZvckVhY2goKGZlYXR1cmU6IFN0eWxlZEZlYXR1cmUpID0+IHtcbiAgICAgICAgICBmZWF0dXJlLmlkID0gU3RyaW5nKGZlYXR1cmUuaWQpXG4gICAgICAgICAgZmVhdHVyZS5wcm9wZXJ0aWVzID0gZmVhdHVyZS5wcm9wZXJ0aWVzIHx8IHt9XG4gICAgICAgIH0pXG4gICAgICAgIGZlZWRJdGVtcy5uZXh0KGZlYXR1cmVzKVxuICAgICAgICByZXR1cm4gY29udGVudFxuICAgICAgfSlcbiAgICApXG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { DataSource } from '@angular/cdk/collections';
|
|
2
|
-
import { BehaviorSubject, Subscription } from 'rxjs';
|
|
3
|
-
import { pageForItemIndex } from './paging.model';
|
|
4
|
-
/**
|
|
5
|
-
* This class is an adaptation from the [Angular Material Guide](https://v8.material.angular.io/cdk/scrolling/overview), _"Specifying data" example_, also
|
|
6
|
-
* available on [StackBlitz](https://stackblitz.com/angular/mrbkjagnnra?file=src%2Fapp%2Fcdk-virtual-scroll-data-source-example.ts).
|
|
7
|
-
*/
|
|
8
|
-
export class PagingDataSource extends DataSource {
|
|
9
|
-
constructor(pageSize, fetchPage) {
|
|
10
|
-
super();
|
|
11
|
-
this.pageSize = pageSize;
|
|
12
|
-
this.fetchPage = fetchPage;
|
|
13
|
-
this.data = null;
|
|
14
|
-
this.data$ = new BehaviorSubject([]);
|
|
15
|
-
this.fetchedPages = new Set();
|
|
16
|
-
this.subscription = new Subscription();
|
|
17
|
-
}
|
|
18
|
-
connect(collectionViewer) {
|
|
19
|
-
this.subscription.add(collectionViewer.viewChange.subscribe(range => {
|
|
20
|
-
const startPage = this.pageForItemIndex(range.start);
|
|
21
|
-
const endPage = this.pageForItemIndex(range.end - 1);
|
|
22
|
-
for (let page = startPage; page <= endPage; page++) {
|
|
23
|
-
this.fetch(page);
|
|
24
|
-
}
|
|
25
|
-
}));
|
|
26
|
-
return this.data$;
|
|
27
|
-
}
|
|
28
|
-
disconnect() {
|
|
29
|
-
this.subscription.unsubscribe();
|
|
30
|
-
}
|
|
31
|
-
pageForItemIndex(index) {
|
|
32
|
-
return pageForItemIndex(index, this.pageSize);
|
|
33
|
-
}
|
|
34
|
-
fetch(pageIndex) {
|
|
35
|
-
if (this.fetchedPages.has(pageIndex)) {
|
|
36
|
-
return;
|
|
37
|
-
}
|
|
38
|
-
this.fetchedPages.add(pageIndex);
|
|
39
|
-
const includeTotalCount = !this.data;
|
|
40
|
-
this.fetchPage({ pageSize: this.pageSize, pageIndex: pageIndex, includeTotalCount }).subscribe(page => {
|
|
41
|
-
if (!this.data) {
|
|
42
|
-
if (typeof (page.totalCount) !== 'number') {
|
|
43
|
-
throw new Error('data is null and no total count is available to inform allocation');
|
|
44
|
-
}
|
|
45
|
-
this.data = Array.from({ length: page.totalCount });
|
|
46
|
-
}
|
|
47
|
-
this.data.splice(pageIndex * this.pageSize, this.pageSize, ...page.items);
|
|
48
|
-
this.data$.next(this.data);
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5nLmNkay1kYXRhLXNvdXJjZS5hZGFwdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS1saWIvcGFnaW5nL3BhZ2luZy5jZGstZGF0YS1zb3VyY2UuYWRhcHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9CLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFBO0FBQ3ZFLE9BQU8sRUFBRSxlQUFlLEVBQWMsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ2hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBNEIsTUFBTSxnQkFBZ0IsQ0FBQTtBQUUzRTs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sZ0JBQW9CLFNBQVEsVUFBYTtJQU9wRCxZQUFvQixRQUFnQixFQUFVLFNBQThEO1FBQzFHLEtBQUssRUFBRSxDQUFBO1FBRFcsYUFBUSxHQUFSLFFBQVEsQ0FBUTtRQUFVLGNBQVMsR0FBVCxTQUFTLENBQXFEO1FBTHBHLFNBQUksR0FBZSxJQUFJLENBQUE7UUFDdkIsVUFBSyxHQUFHLElBQUksZUFBZSxDQUFNLEVBQUUsQ0FBQyxDQUFBO1FBQ3BDLGlCQUFZLEdBQUcsSUFBSSxHQUFHLEVBQVUsQ0FBQTtRQUNoQyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUE7SUFJekMsQ0FBQztJQUVELE9BQU8sQ0FBQyxnQkFBa0M7UUFDeEMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNsRSxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFBO1lBQ3BELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFBO1lBQ3BELEtBQUssSUFBSSxJQUFJLEdBQUcsU0FBUyxFQUFFLElBQUksSUFBSSxPQUFPLEVBQUUsSUFBSSxFQUFFLEVBQUU7Z0JBQ2xELElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUE7YUFDakI7UUFDSCxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQ0gsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFBO0lBQ25CLENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQTtJQUNqQyxDQUFDO0lBRU8sZ0JBQWdCLENBQUMsS0FBYTtRQUNwQyxPQUFPLGdCQUFnQixDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUE7SUFDL0MsQ0FBQztJQUVPLEtBQUssQ0FBQyxTQUFpQjtRQUM3QixJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQ3BDLE9BQU07U0FDUDtRQUNELElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBQ2hDLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFBO1FBQ3BDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDcEcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUU7Z0JBQ2QsSUFBSSxPQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLFFBQVEsRUFBRTtvQkFDeEMsTUFBTSxJQUFJLEtBQUssQ0FBQyxtRUFBbUUsQ0FBQyxDQUFBO2lCQUNyRjtnQkFDRCxJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUE7YUFDcEQ7WUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO1lBQ3pFLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUM1QixDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbGxlY3Rpb25WaWV3ZXIsIERhdGFTb3VyY2UgfSBmcm9tICdAYW5ndWxhci9jZGsvY29sbGVjdGlvbnMnXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBwYWdlRm9ySXRlbUluZGV4LCBQYWdlT2YsIFBhZ2luZ1BhcmFtZXRlcnMgfSBmcm9tICcuL3BhZ2luZy5tb2RlbCdcblxuLyoqXG4gKiBUaGlzIGNsYXNzIGlzIGFuIGFkYXB0YXRpb24gZnJvbSB0aGUgW0FuZ3VsYXIgTWF0ZXJpYWwgR3VpZGVdKGh0dHBzOi8vdjgubWF0ZXJpYWwuYW5ndWxhci5pby9jZGsvc2Nyb2xsaW5nL292ZXJ2aWV3KSwgX1wiU3BlY2lmeWluZyBkYXRhXCIgZXhhbXBsZV8sIGFsc29cbiAqIGF2YWlsYWJsZSBvbiBbU3RhY2tCbGl0el0oaHR0cHM6Ly9zdGFja2JsaXR6LmNvbS9hbmd1bGFyL21yYmtqYWdubnJhP2ZpbGU9c3JjJTJGYXBwJTJGY2RrLXZpcnR1YWwtc2Nyb2xsLWRhdGEtc291cmNlLWV4YW1wbGUudHMpLlxuICovXG5leHBvcnQgY2xhc3MgUGFnaW5nRGF0YVNvdXJjZTxUPiBleHRlbmRzIERhdGFTb3VyY2U8VD4ge1xuXG4gIHByaXZhdGUgZGF0YTogVFtdIHwgbnVsbCA9IG51bGxcbiAgcHJpdmF0ZSBkYXRhJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VFtdPihbXSlcbiAgcHJpdmF0ZSBmZXRjaGVkUGFnZXMgPSBuZXcgU2V0PG51bWJlcj4oKVxuICBwcml2YXRlIHN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcGFnZVNpemU6IG51bWJlciwgcHJpdmF0ZSBmZXRjaFBhZ2U6IChwYWdpbmc6IFBhZ2luZ1BhcmFtZXRlcnMpID0+IE9ic2VydmFibGU8UGFnZU9mPFQ+Pikge1xuICAgIHN1cGVyKClcbiAgfVxuXG4gIGNvbm5lY3QoY29sbGVjdGlvblZpZXdlcjogQ29sbGVjdGlvblZpZXdlcik6IE9ic2VydmFibGU8cmVhZG9ubHkgVFtdPiB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb24uYWRkKGNvbGxlY3Rpb25WaWV3ZXIudmlld0NoYW5nZS5zdWJzY3JpYmUocmFuZ2UgPT4ge1xuICAgICAgY29uc3Qgc3RhcnRQYWdlID0gdGhpcy5wYWdlRm9ySXRlbUluZGV4KHJhbmdlLnN0YXJ0KVxuICAgICAgY29uc3QgZW5kUGFnZSA9IHRoaXMucGFnZUZvckl0ZW1JbmRleChyYW5nZS5lbmQgLSAxKVxuICAgICAgZm9yIChsZXQgcGFnZSA9IHN0YXJ0UGFnZTsgcGFnZSA8PSBlbmRQYWdlOyBwYWdlKyspIHtcbiAgICAgICAgdGhpcy5mZXRjaChwYWdlKVxuICAgICAgfVxuICAgIH0pKVxuICAgIHJldHVybiB0aGlzLmRhdGEkXG4gIH1cblxuICBkaXNjb25uZWN0KCk6IHZvaWQge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKClcbiAgfVxuXG4gIHByaXZhdGUgcGFnZUZvckl0ZW1JbmRleChpbmRleDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gcGFnZUZvckl0ZW1JbmRleChpbmRleCwgdGhpcy5wYWdlU2l6ZSlcbiAgfVxuXG4gIHByaXZhdGUgZmV0Y2gocGFnZUluZGV4OiBudW1iZXIpIHtcbiAgICBpZiAodGhpcy5mZXRjaGVkUGFnZXMuaGFzKHBhZ2VJbmRleCkpIHtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICB0aGlzLmZldGNoZWRQYWdlcy5hZGQocGFnZUluZGV4KVxuICAgIGNvbnN0IGluY2x1ZGVUb3RhbENvdW50ID0gIXRoaXMuZGF0YVxuICAgIHRoaXMuZmV0Y2hQYWdlKHsgcGFnZVNpemU6IHRoaXMucGFnZVNpemUsIHBhZ2VJbmRleDogcGFnZUluZGV4LCBpbmNsdWRlVG90YWxDb3VudCB9KS5zdWJzY3JpYmUocGFnZSA9PiB7XG4gICAgICBpZiAoIXRoaXMuZGF0YSkge1xuICAgICAgICBpZiAodHlwZW9mKHBhZ2UudG90YWxDb3VudCkgIT09ICdudW1iZXInKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdkYXRhIGlzIG51bGwgYW5kIG5vIHRvdGFsIGNvdW50IGlzIGF2YWlsYWJsZSB0byBpbmZvcm0gYWxsb2NhdGlvbicpXG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5kYXRhID0gQXJyYXkuZnJvbSh7IGxlbmd0aDogcGFnZS50b3RhbENvdW50IH0pXG4gICAgICB9XG4gICAgICB0aGlzLmRhdGEuc3BsaWNlKHBhZ2VJbmRleCAqIHRoaXMucGFnZVNpemUsIHRoaXMucGFnZVNpemUsIC4uLnBhZ2UuaXRlbXMpXG4gICAgICB0aGlzLmRhdGEkLm5leHQodGhpcy5kYXRhKVxuICAgIH0pXG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
export const pageForItemIndex = (itemIndex, pageSize) => {
|
|
2
|
-
if (typeof pageSize === 'object') {
|
|
3
|
-
pageSize = pageSize.pageSize;
|
|
4
|
-
}
|
|
5
|
-
return Math.floor(itemIndex / pageSize);
|
|
6
|
-
};
|
|
7
|
-
/**
|
|
8
|
-
* Return the range of item indexes for the given page and page size. The last
|
|
9
|
-
* end portion of the range is exclusive, so when indexing an array the last
|
|
10
|
-
* item of the page would have position `end - 1`. This allows one to pass the
|
|
11
|
-
* values to `Array.slice()`.
|
|
12
|
-
* @param pageIndex
|
|
13
|
-
* @param pageSize
|
|
14
|
-
* @returns
|
|
15
|
-
*/
|
|
16
|
-
export const itemRangeOfPage = (pageIndex, pageSize) => {
|
|
17
|
-
if (typeof pageIndex === 'object') {
|
|
18
|
-
pageSize = pageIndex.pageSize;
|
|
19
|
-
pageIndex = pageIndex.pageIndex;
|
|
20
|
-
}
|
|
21
|
-
const start = pageSize * pageIndex;
|
|
22
|
-
const end = start + pageSize;
|
|
23
|
-
return [start, end];
|
|
24
|
-
};
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5nLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS1saWIvcGFnaW5nL3BhZ2luZy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnQkEsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxTQUFpQixFQUFFLFFBQW1DLEVBQVUsRUFBRTtJQUNqRyxJQUFJLE9BQU8sUUFBUSxLQUFLLFFBQVEsRUFBRTtRQUNoQyxRQUFRLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQTtLQUM3QjtJQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDLENBQUE7QUFDekMsQ0FBQyxDQUFBO0FBRUQ7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBR3hCLENBQUMsU0FBb0MsRUFBRSxRQUFpQixFQUFzQixFQUFFO0lBQ2xGLElBQUksT0FBTyxTQUFTLEtBQUssUUFBUSxFQUFFO1FBQ2pDLFFBQVEsR0FBRyxTQUFTLENBQUMsUUFBUSxDQUFBO1FBQzdCLFNBQVMsR0FBRyxTQUFTLENBQUMsU0FBUyxDQUFBO0tBQ2hDO0lBQ0QsTUFBTSxLQUFLLEdBQUcsUUFBUSxHQUFHLFNBQVMsQ0FBQTtJQUNsQyxNQUFNLEdBQUcsR0FBRyxLQUFLLEdBQUcsUUFBUSxDQUFBO0lBQzVCLE9BQU8sQ0FBRSxLQUFLLEVBQUUsR0FBRyxDQUFFLENBQUE7QUFDdkIsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiXG5leHBvcnQgaW50ZXJmYWNlIFBhZ2luZ1BhcmFtZXRlcnMge1xuICBwYWdlU2l6ZTogbnVtYmVyLFxuICBwYWdlSW5kZXg6IG51bWJlcixcbiAgaW5jbHVkZVRvdGFsQ291bnQ/OiBib29sZWFuIHwgbnVsbFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBhZ2VPZjxUPiB7XG4gIHBhZ2VTaXplOiBudW1iZXIsXG4gIHBhZ2VJbmRleDogbnVtYmVyLFxuICB0b3RhbENvdW50PzogbnVtYmVyIHwgbnVsbCxcbiAgbmV4dD86IFBhZ2luZ1BhcmFtZXRlcnMgfCBudWxsXG4gIHByZXY/OiBQYWdpbmdQYXJhbWV0ZXJzIHwgbnVsbFxuICBpdGVtczogVFtdXG59XG5cbmV4cG9ydCBjb25zdCBwYWdlRm9ySXRlbUluZGV4ID0gKGl0ZW1JbmRleDogbnVtYmVyLCBwYWdlU2l6ZTogbnVtYmVyIHwgUGFnaW5nUGFyYW1ldGVycyk6IG51bWJlciA9PiB7XG4gIGlmICh0eXBlb2YgcGFnZVNpemUgPT09ICdvYmplY3QnKSB7XG4gICAgcGFnZVNpemUgPSBwYWdlU2l6ZS5wYWdlU2l6ZVxuICB9XG4gIHJldHVybiBNYXRoLmZsb29yKGl0ZW1JbmRleCAvIHBhZ2VTaXplKVxufVxuXG4vKipcbiAqIFJldHVybiB0aGUgcmFuZ2Ugb2YgaXRlbSBpbmRleGVzIGZvciB0aGUgZ2l2ZW4gcGFnZSBhbmQgcGFnZSBzaXplLiAgVGhlIGxhc3RcbiAqIGVuZCBwb3J0aW9uIG9mIHRoZSByYW5nZSBpcyBleGNsdXNpdmUsIHNvIHdoZW4gaW5kZXhpbmcgYW4gYXJyYXkgdGhlIGxhc3RcbiAqIGl0ZW0gb2YgdGhlIHBhZ2Ugd291bGQgaGF2ZSBwb3NpdGlvbiBgZW5kIC0gMWAuICBUaGlzIGFsbG93cyBvbmUgdG8gcGFzcyB0aGVcbiAqIHZhbHVlcyB0byBgQXJyYXkuc2xpY2UoKWAuXG4gKiBAcGFyYW0gcGFnZUluZGV4XG4gKiBAcGFyYW0gcGFnZVNpemVcbiAqIEByZXR1cm5zXG4gKi9cbmV4cG9ydCBjb25zdCBpdGVtUmFuZ2VPZlBhZ2U6IHtcbiAgKHBhZ2VJbmRleDogbnVtYmVyLCBwYWdlU2l6ZTogbnVtYmVyKTogWyBudW1iZXIsIG51bWJlciBdXG4gIChwYWdpbmc6IFBhZ2luZ1BhcmFtZXRlcnMpXG59ID0gKHBhZ2VJbmRleDogbnVtYmVyIHwgUGFnaW5nUGFyYW1ldGVycywgcGFnZVNpemU/OiBudW1iZXIpOiBbIG51bWJlciwgbnVtYmVyIF0gPT4ge1xuICBpZiAodHlwZW9mIHBhZ2VJbmRleCA9PT0gJ29iamVjdCcpIHtcbiAgICBwYWdlU2l6ZSA9IHBhZ2VJbmRleC5wYWdlU2l6ZVxuICAgIHBhZ2VJbmRleCA9IHBhZ2VJbmRleC5wYWdlSW5kZXhcbiAgfVxuICBjb25zdCBzdGFydCA9IHBhZ2VTaXplICogcGFnZUluZGV4XG4gIGNvbnN0IGVuZCA9IHN0YXJ0ICsgcGFnZVNpemVcbiAgcmV0dXJuIFsgc3RhcnQsIGVuZCBdXG59XG4iXX0=
|
|
@@ -1,145 +0,0 @@
|
|
|
1
|
-
import { Component } from '@angular/core';
|
|
2
|
-
import { UntypedFormControl, UntypedFormGroup, NG_VALIDATORS, NG_VALUE_ACCESSOR, Validators } from '@angular/forms';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "../static-icon.service";
|
|
5
|
-
import * as i2 from "@angular/common/http";
|
|
6
|
-
import * as i3 from "@angular/platform-browser";
|
|
7
|
-
import * as i4 from "@angular/forms";
|
|
8
|
-
import * as i5 from "@ngageoint/mage.web-core-lib/common";
|
|
9
|
-
export class StaticIconFormFieldComponent {
|
|
10
|
-
constructor(iconService, httpClient, sanitizer) {
|
|
11
|
-
this.iconService = iconService;
|
|
12
|
-
this.httpClient = httpClient;
|
|
13
|
-
this.sanitizer = sanitizer;
|
|
14
|
-
this.iconRef = null;
|
|
15
|
-
this.form = new UntypedFormGroup({
|
|
16
|
-
iconRefToken: new UntypedFormControl(null),
|
|
17
|
-
iconRefType: new UntypedFormControl(null, Validators.required)
|
|
18
|
-
});
|
|
19
|
-
this.onChange = (iconRef) => { };
|
|
20
|
-
this.onValidatorChange = () => { };
|
|
21
|
-
this.onTouched = () => { };
|
|
22
|
-
this.form.valueChanges.subscribe((x) => {
|
|
23
|
-
this.iconRef = iconRefForFormValue(x);
|
|
24
|
-
this.onChange(this.iconRef);
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
registerOnValidatorChange(fn) {
|
|
28
|
-
this.onValidatorChange = fn;
|
|
29
|
-
}
|
|
30
|
-
ngOnChanges(changes) { }
|
|
31
|
-
ngOnDestroy() { }
|
|
32
|
-
onSelectIcon() { }
|
|
33
|
-
writeValue(iconRef) {
|
|
34
|
-
this.iconRef = iconRef;
|
|
35
|
-
const formValue = formValueForIconRef(iconRef);
|
|
36
|
-
this.form.setValue(formValue, { emitEvent: false });
|
|
37
|
-
this.resolveIconRef();
|
|
38
|
-
}
|
|
39
|
-
registerOnChange(fn) {
|
|
40
|
-
this.onChange = fn;
|
|
41
|
-
}
|
|
42
|
-
registerOnTouched(fn) {
|
|
43
|
-
this.onTouched = fn;
|
|
44
|
-
}
|
|
45
|
-
setDisabledState(isDisabled) {
|
|
46
|
-
if (isDisabled) {
|
|
47
|
-
this.form.disable();
|
|
48
|
-
}
|
|
49
|
-
else {
|
|
50
|
-
this.form.enable();
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
validate(control) {
|
|
54
|
-
return this.form.errors;
|
|
55
|
-
}
|
|
56
|
-
resolveIconRef() {
|
|
57
|
-
if (!this.iconRef) {
|
|
58
|
-
this.icon = null;
|
|
59
|
-
return;
|
|
60
|
-
}
|
|
61
|
-
this.iconService.fetchIconByReference(this.iconRef).subscribe(x => {
|
|
62
|
-
this.icon = x;
|
|
63
|
-
if (!this.icon) {
|
|
64
|
-
return;
|
|
65
|
-
}
|
|
66
|
-
});
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
StaticIconFormFieldComponent.ɵfac = function StaticIconFormFieldComponent_Factory(t) { return new (t || StaticIconFormFieldComponent)(i0.ɵɵdirectiveInject(i1.StaticIconService), i0.ɵɵdirectiveInject(i2.HttpClient), i0.ɵɵdirectiveInject(i3.DomSanitizer)); };
|
|
70
|
-
StaticIconFormFieldComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: StaticIconFormFieldComponent, selectors: [["mage-static-icon-form-field"]], features: [i0.ɵɵProvidersFeature([
|
|
71
|
-
{
|
|
72
|
-
provide: NG_VALUE_ACCESSOR,
|
|
73
|
-
multi: true,
|
|
74
|
-
useExisting: StaticIconFormFieldComponent
|
|
75
|
-
},
|
|
76
|
-
{
|
|
77
|
-
provide: NG_VALIDATORS,
|
|
78
|
-
multi: true,
|
|
79
|
-
useExisting: StaticIconFormFieldComponent
|
|
80
|
-
},
|
|
81
|
-
]), i0.ɵɵNgOnChangesFeature], decls: 4, vars: 2, consts: [[3, "formGroup"], [1, "icon-image", 3, "src"], ["type", "hidden", "formControlName", "iconRefType"], ["type", "hidden", "formControlName", "iconRefToken"]], template: function StaticIconFormFieldComponent_Template(rf, ctx) { if (rf & 1) {
|
|
82
|
-
i0.ɵɵelementStart(0, "div", 0);
|
|
83
|
-
i0.ɵɵelement(1, "mage-xhr-img", 1)(2, "input", 2)(3, "input", 3);
|
|
84
|
-
i0.ɵɵelementEnd();
|
|
85
|
-
} if (rf & 2) {
|
|
86
|
-
i0.ɵɵproperty("formGroup", ctx.form);
|
|
87
|
-
i0.ɵɵadvance(1);
|
|
88
|
-
i0.ɵɵproperty("src", ctx.icon == null ? null : ctx.icon.contentPath);
|
|
89
|
-
} }, dependencies: [i4.DefaultValueAccessor, i4.NgControlStatus, i4.NgControlStatusGroup, i4.FormGroupDirective, i4.FormControlName, i5.XhrImgComponent], styles: [".icon-image[_ngcontent-%COMP%]{display:block;height:3em;width:3em}"] });
|
|
90
|
-
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(StaticIconFormFieldComponent, [{
|
|
91
|
-
type: Component,
|
|
92
|
-
args: [{ selector: 'mage-static-icon-form-field', providers: [
|
|
93
|
-
{
|
|
94
|
-
provide: NG_VALUE_ACCESSOR,
|
|
95
|
-
multi: true,
|
|
96
|
-
useExisting: StaticIconFormFieldComponent
|
|
97
|
-
},
|
|
98
|
-
{
|
|
99
|
-
provide: NG_VALIDATORS,
|
|
100
|
-
multi: true,
|
|
101
|
-
useExisting: StaticIconFormFieldComponent
|
|
102
|
-
},
|
|
103
|
-
], template: "<div [formGroup]=\"form\">\n <mage-xhr-img class=\"icon-image\" [src]=\"icon?.contentPath\"></mage-xhr-img>\n <input type=\"hidden\" formControlName=\"iconRefType\"/>\n <input type=\"hidden\" formControlName=\"iconRefToken\"/>\n</div>", styles: [".icon-image{display:block;height:3em;width:3em}\n"] }]
|
|
104
|
-
}], function () { return [{ type: i1.StaticIconService }, { type: i2.HttpClient }, { type: i3.DomSanitizer }]; }, null); })();
|
|
105
|
-
var IconRefType;
|
|
106
|
-
(function (IconRefType) {
|
|
107
|
-
IconRefType["Registered"] = "id";
|
|
108
|
-
IconRefType["SourceUrl"] = "sourceUrl";
|
|
109
|
-
})(IconRefType || (IconRefType = {}));
|
|
110
|
-
function iconRefForFormValue(x) {
|
|
111
|
-
if (!x.iconRefType) {
|
|
112
|
-
return null;
|
|
113
|
-
}
|
|
114
|
-
switch (x.iconRefType) {
|
|
115
|
-
case IconRefType.Registered:
|
|
116
|
-
return { [IconRefType.Registered]: x.iconRefToken };
|
|
117
|
-
case IconRefType.SourceUrl:
|
|
118
|
-
return { [IconRefType.SourceUrl]: x.iconRefToken };
|
|
119
|
-
default:
|
|
120
|
-
throw new Error('invalid icon ref type: ' + x.iconRefToken);
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
function formValueForIconRef(x) {
|
|
124
|
-
if (!x) {
|
|
125
|
-
return {
|
|
126
|
-
iconRefType: null,
|
|
127
|
-
iconRefToken: null
|
|
128
|
-
};
|
|
129
|
-
}
|
|
130
|
-
let iconRefType = null;
|
|
131
|
-
let iconRefToken = null;
|
|
132
|
-
if (x.hasOwnProperty(IconRefType.Registered)) {
|
|
133
|
-
iconRefType = IconRefType.Registered || null;
|
|
134
|
-
iconRefToken = x[IconRefType.Registered] || null;
|
|
135
|
-
}
|
|
136
|
-
else if (x.hasOwnProperty(IconRefType.SourceUrl)) {
|
|
137
|
-
iconRefType = IconRefType.SourceUrl || null;
|
|
138
|
-
iconRefToken = x[IconRefType.SourceUrl] || null;
|
|
139
|
-
}
|
|
140
|
-
return {
|
|
141
|
-
iconRefType,
|
|
142
|
-
iconRefToken
|
|
143
|
-
};
|
|
144
|
-
}
|
|
145
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGljLWljb24tZm9ybS1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWxpYi9zdGF0aWMtaWNvbi9zdGF0aWMtaWNvbi1mb3JtLWZpZWxkL3N0YXRpYy1pY29uLWZvcm0tZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS1saWIvc3RhdGljLWljb24vc3RhdGljLWljb24tZm9ybS1maWVsZC9zdGF0aWMtaWNvbi1mb3JtLWZpZWxkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQXVDLE1BQU0sZUFBZSxDQUFBO0FBQzlFLE9BQU8sRUFBeUMsa0JBQWtCLEVBQUUsZ0JBQWdCLEVBQUUsYUFBYSxFQUFFLGlCQUFpQixFQUErQixVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTs7Ozs7OztBQXVCdkwsTUFBTSxPQUFPLDRCQUE0QjtJQWN2QyxZQUFvQixXQUE4QixFQUFVLFVBQXNCLEVBQVUsU0FBdUI7UUFBL0YsZ0JBQVcsR0FBWCxXQUFXLENBQW1CO1FBQVUsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUFVLGNBQVMsR0FBVCxTQUFTLENBQWM7UUFabkgsWUFBTyxHQUF3QixJQUFJLENBQUE7UUFFbkMsU0FBSSxHQUFxQixJQUFJLGdCQUFnQixDQUFDO1lBQzVDLFlBQVksRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksQ0FBQztZQUMxQyxXQUFXLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztTQUMvRCxDQUFDLENBQUE7UUFHTSxhQUFRLEdBQTJDLENBQUMsT0FBNEIsRUFBRSxFQUFFLEdBQUUsQ0FBQyxDQUFBO1FBQ3ZGLHNCQUFpQixHQUFlLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQTtRQUN4QyxjQUFTLEdBQWUsR0FB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QTtRQUMzQyxZQUFZLEdBQUcsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsSUFBSSxJQUFJLENBQUE7S0FDaEQ7SUFDRCxPQUFPO1FBQ0wsV0FBVztRQUNYLFlBQVk7S0FDYixDQUFBO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCdcbmltcG9ydCB7IENvbXBvbmVudCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBDb250cm9sVmFsdWVBY2Nlc3NvciwgVW50eXBlZEZvcm1Db250cm9sLCBVbnR5cGVkRm9ybUdyb3VwLCBOR19WQUxJREFUT1JTLCBOR19WQUxVRV9BQ0NFU1NPUiwgVmFsaWRhdGlvbkVycm9ycywgVmFsaWRhdG9yLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJ1xuaW1wb3J0IHsgU3RhdGljSWNvbiwgU3RhdGljSWNvblJlZmVyZW5jZSB9IGZyb20gJy4uL3N0YXRpYy1pY29uLm1vZGVsJ1xuaW1wb3J0IHsgU3RhdGljSWNvblNlcnZpY2UgfSBmcm9tICcuLi9zdGF0aWMtaWNvbi5zZXJ2aWNlJ1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21hZ2Utc3RhdGljLWljb24tZm9ybS1maWVsZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9zdGF0aWMtaWNvbi1mb3JtLWZpZWxkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3RhdGljLWljb24tZm9ybS1maWVsZC5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgdXNlRXhpc3Rpbmc6IFN0YXRpY0ljb25Gb3JtRmllbGRDb21wb25lbnRcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgIHVzZUV4aXN0aW5nOiBTdGF0aWNJY29uRm9ybUZpZWxkQ29tcG9uZW50XG4gICAgfSxcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBTdGF0aWNJY29uRm9ybUZpZWxkQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBWYWxpZGF0b3Ige1xuXG4gIGljb25SZWY6IFN0YXRpY0ljb25SZWZlcmVuY2UgPSBudWxsXG5cbiAgZm9ybTogVW50eXBlZEZvcm1Hcm91cCA9IG5ldyBVbnR5cGVkRm9ybUdyb3VwKHtcbiAgICBpY29uUmVmVG9rZW46IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wobnVsbCksXG4gICAgaWNvblJlZlR5cGU6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wobnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZClcbiAgfSlcbiAgaWNvbjogU3RhdGljSWNvbiB8IG51bGxcblxuICBwcml2YXRlIG9uQ2hhbmdlOiAoaWNvblJlZjogU3RhdGljSWNvblJlZmVyZW5jZSkgPT4gdm9pZCA9IChpY29uUmVmOiBTdGF0aWNJY29uUmVmZXJlbmNlKSA9PiB7fVxuICBwcml2YXRlIG9uVmFsaWRhdG9yQ2hhbmdlOiAoKSA9PiB2b2lkID0gKCkgPT4ge31cbiAgcHJpdmF0ZSBvblRvdWNoZWQ6ICgpID0+IHZvaWQgPSAoKSA9PiB7fVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaWNvblNlcnZpY2U6IFN0YXRpY0ljb25TZXJ2aWNlLCBwcml2YXRlIGh0dHBDbGllbnQ6IEh0dHBDbGllbnQsIHByaXZhdGUgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIpIHtcbiAgICB0aGlzLmZvcm0udmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoeDogSWNvblJlZkZvcm1WYWx1ZSkgPT4ge1xuICAgICAgdGhpcy5pY29uUmVmID0gaWNvblJlZkZvckZvcm1WYWx1ZSh4KVxuICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLmljb25SZWYpXG4gICAgfSlcbiAgfVxuXG4gIHJlZ2lzdGVyT25WYWxpZGF0b3JDaGFuZ2U/KGZuOiAoKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vblZhbGlkYXRvckNoYW5nZSA9IGZuXG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7IH1cblxuICBuZ09uRGVzdHJveSgpIHsgfVxuXG4gIG9uU2VsZWN0SWNvbigpIHsgfVxuXG4gIHdyaXRlVmFsdWUoaWNvblJlZjogU3RhdGljSWNvblJlZmVyZW5jZSk6IHZvaWQge1xuICAgIHRoaXMuaWNvblJlZiA9IGljb25SZWZcbiAgICBjb25zdCBmb3JtVmFsdWUgPSBmb3JtVmFsdWVGb3JJY29uUmVmKGljb25SZWYpXG4gICAgdGhpcy5mb3JtLnNldFZhbHVlKGZvcm1WYWx1ZSwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pXG4gICAgdGhpcy5yZXNvbHZlSWNvblJlZigpXG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAoeDogU3RhdGljSWNvblJlZmVyZW5jZSB8IG51bGwpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm5cbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoZWQgPSBmblxuICB9XG5cbiAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmIChpc0Rpc2FibGVkKSB7XG4gICAgICB0aGlzLmZvcm0uZGlzYWJsZSgpXG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgdGhpcy5mb3JtLmVuYWJsZSgpXG4gICAgfVxuICB9XG5cbiAgdmFsaWRhdGUoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB7XG4gICAgcmV0dXJuIHRoaXMuZm9ybS5lcnJvcnNcbiAgfVxuXG4gIHByaXZhdGUgcmVzb2x2ZUljb25SZWYoKSB7XG4gICAgaWYgKCF0aGlzLmljb25SZWYpIHtcbiAgICAgIHRoaXMuaWNvbiA9IG51bGxcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICB0aGlzLmljb25TZXJ2aWNlLmZldGNoSWNvbkJ5UmVmZXJlbmNlKHRoaXMuaWNvblJlZikuc3Vic2NyaWJlKHggPT4ge1xuICAgICAgdGhpcy5pY29uID0geFxuICAgICAgaWYgKCF0aGlzLmljb24pIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG4gICAgfSlcbiAgfVxufVxuXG5lbnVtIEljb25SZWZUeXBlIHtcbiAgUmVnaXN0ZXJlZCA9ICdpZCcsXG4gIFNvdXJjZVVybCA9ICdzb3VyY2VVcmwnXG59XG5cbnR5cGUgSWNvblJlZkZvcm1WYWx1ZSA9IHtcbiAgaWNvblJlZlRva2VuOiBzdHJpbmcgfCBudWxsXG4gIGljb25SZWZUeXBlOiBJY29uUmVmVHlwZSB8IG51bGxcbn1cblxuZnVuY3Rpb24gaWNvblJlZkZvckZvcm1WYWx1ZSh4OiBJY29uUmVmRm9ybVZhbHVlKTogU3RhdGljSWNvblJlZmVyZW5jZSB8IG51bGwge1xuICBpZiAoIXguaWNvblJlZlR5cGUpIHtcbiAgICByZXR1cm4gbnVsbFxuICB9XG4gIHN3aXRjaCAoeC5pY29uUmVmVHlwZSkge1xuICAgIGNhc2UgSWNvblJlZlR5cGUuUmVnaXN0ZXJlZDpcbiAgICAgIHJldHVybiB7IFtJY29uUmVmVHlwZS5SZWdpc3RlcmVkXTogeC5pY29uUmVmVG9rZW4gfVxuICAgIGNhc2UgSWNvblJlZlR5cGUuU291cmNlVXJsOlxuICAgICAgcmV0dXJuIHsgW0ljb25SZWZUeXBlLlNvdXJjZVVybF06IHguaWNvblJlZlRva2VuIH1cbiAgICBkZWZhdWx0OlxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIGljb24gcmVmIHR5cGU6ICcgKyB4Lmljb25SZWZUb2tlbilcbiAgfVxufVxuXG5mdW5jdGlvbiBmb3JtVmFsdWVGb3JJY29uUmVmKHg6IFN0YXRpY0ljb25SZWZlcmVuY2UgfCBudWxsKTogSWNvblJlZkZvcm1WYWx1ZSB7XG4gIGlmICgheCkge1xuICAgIHJldHVybiB7XG4gICAgICBpY29uUmVmVHlwZTogbnVsbCxcbiAgICAgIGljb25SZWZUb2tlbjogbnVsbFxuICAgIH1cbiAgfVxuICBsZXQgaWNvblJlZlR5cGU6IEljb25SZWZUeXBlIHwgbnVsbCA9IG51bGxcbiAgbGV0IGljb25SZWZUb2tlbjogc3RyaW5nIHwgbnVsbCA9IG51bGxcbiAgaWYgKHguaGFzT3duUHJvcGVydHkoSWNvblJlZlR5cGUuUmVnaXN0ZXJlZCkpIHtcbiAgICBpY29uUmVmVHlwZSA9IEljb25SZWZUeXBlLlJlZ2lzdGVyZWQgfHwgbnVsbFxuICAgIGljb25SZWZUb2tlbiA9IHhbSWNvblJlZlR5cGUuUmVnaXN0ZXJlZF0gfHwgbnVsbFxuICB9XG4gIGVsc2UgaWYgKHguaGFzT3duUHJvcGVydHkoSWNvblJlZlR5cGUuU291cmNlVXJsKSkge1xuICAgIGljb25SZWZUeXBlID0gSWNvblJlZlR5cGUuU291cmNlVXJsIHx8IG51bGxcbiAgICBpY29uUmVmVG9rZW4gPSB4W0ljb25SZWZUeXBlLlNvdXJjZVVybF0gfHwgbnVsbFxuICB9XG4gIHJldHVybiB7XG4gICAgaWNvblJlZlR5cGUsXG4gICAgaWNvblJlZlRva2VuXG4gIH1cbn1cbiIsIjxkaXYgW2Zvcm1Hcm91cF09XCJmb3JtXCI+XG4gIDxtYWdlLXhoci1pbWcgY2xhc3M9XCJpY29uLWltYWdlXCIgW3NyY109XCJpY29uPy5jb250ZW50UGF0aFwiPjwvbWFnZS14aHItaW1nPlxuICA8aW5wdXQgdHlwZT1cImhpZGRlblwiIGZvcm1Db250cm9sTmFtZT1cImljb25SZWZUeXBlXCIvPlxuICA8aW5wdXQgdHlwZT1cImhpZGRlblwiIGZvcm1Db250cm9sTmFtZT1cImljb25SZWZUb2tlblwiLz5cbjwvZGl2PiJdfQ==
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import { contentPathOfIcon } from '../static-icon.model';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@ngageoint/mage.web-core-lib/common";
|
|
5
|
-
export class StaticIconImgComponent {
|
|
6
|
-
constructor() { }
|
|
7
|
-
ngOnInit() {
|
|
8
|
-
}
|
|
9
|
-
ngOnChanges(changes) {
|
|
10
|
-
if (changes.iconRef) {
|
|
11
|
-
if (this.iconRef) {
|
|
12
|
-
this.iconPath = contentPathOfIcon(this.iconRef);
|
|
13
|
-
}
|
|
14
|
-
else {
|
|
15
|
-
this.iconPath = null;
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
StaticIconImgComponent.ɵfac = function StaticIconImgComponent_Factory(t) { return new (t || StaticIconImgComponent)(); };
|
|
21
|
-
StaticIconImgComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: StaticIconImgComponent, selectors: [["mage-static-icon-img"]], inputs: { iconRef: "iconRef" }, features: [i0.ɵɵNgOnChangesFeature], decls: 1, vars: 1, consts: [[3, "src"]], template: function StaticIconImgComponent_Template(rf, ctx) { if (rf & 1) {
|
|
22
|
-
i0.ɵɵelement(0, "mage-xhr-img", 0);
|
|
23
|
-
} if (rf & 2) {
|
|
24
|
-
i0.ɵɵproperty("src", ctx.iconPath);
|
|
25
|
-
} }, dependencies: [i1.XhrImgComponent], encapsulation: 2 });
|
|
26
|
-
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(StaticIconImgComponent, [{
|
|
27
|
-
type: Component,
|
|
28
|
-
args: [{
|
|
29
|
-
selector: 'mage-static-icon-img',
|
|
30
|
-
template: `<mage-xhr-img [src]="iconPath"></mage-xhr-img>`,
|
|
31
|
-
}]
|
|
32
|
-
}], function () { return []; }, { iconRef: [{
|
|
33
|
-
type: Input
|
|
34
|
-
}] }); })();
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGljLWljb24taW1nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUtbGliL3N0YXRpYy1pY29uL3N0YXRpYy1pY29uLWltZy9zdGF0aWMtaWNvbi1pbWcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFvQyxNQUFNLGVBQWUsQ0FBQztBQUNuRixPQUFPLEVBQWlDLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUE7OztBQU12RixNQUFNLE9BQU8sc0JBQXNCO0lBTWpDLGdCQUFnQixDQUFDO0lBRWpCLFFBQVE7SUFDUixDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksT0FBTyxDQUFDLE9BQU8sRUFBRTtZQUNuQixJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7Z0JBQ2hCLElBQUksQ0FBQyxRQUFRLEdBQUcsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFBO2FBQ2hEO2lCQUNJO2dCQUNILElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFBO2FBQ3JCO1NBQ0Y7SUFDSCxDQUFDOzs0RkFwQlUsc0JBQXNCO3lFQUF0QixzQkFBc0I7UUFGdEIsa0NBQThDOztRQUFoQyxrQ0FBZ0I7O3VGQUU5QixzQkFBc0I7Y0FKbEMsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSxzQkFBc0I7Z0JBQ2hDLFFBQVEsRUFBRSxnREFBZ0Q7YUFDM0Q7c0NBSUMsT0FBTztrQkFETixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJlZ2lzdGVyZWRTdGF0aWNJY29uUmVmZXJlbmNlLCBjb250ZW50UGF0aE9mSWNvbiB9IGZyb20gJy4uL3N0YXRpYy1pY29uLm1vZGVsJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtYWdlLXN0YXRpYy1pY29uLWltZycsXG4gIHRlbXBsYXRlOiBgPG1hZ2UteGhyLWltZyBbc3JjXT1cImljb25QYXRoXCI+PC9tYWdlLXhoci1pbWc+YCxcbn0pXG5leHBvcnQgY2xhc3MgU3RhdGljSWNvbkltZ0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcblxuICBASW5wdXQoKVxuICBpY29uUmVmOiBSZWdpc3RlcmVkU3RhdGljSWNvblJlZmVyZW5jZSB8IHN0cmluZyB8IG51bGxcbiAgaWNvblBhdGg6IHN0cmluZyB8IG51bGxcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChjaGFuZ2VzLmljb25SZWYpIHtcbiAgICAgIGlmICh0aGlzLmljb25SZWYpIHtcbiAgICAgICAgdGhpcy5pY29uUGF0aCA9IGNvbnRlbnRQYXRoT2ZJY29uKHRoaXMuaWNvblJlZilcbiAgICAgIH1cbiAgICAgIGVsc2Uge1xuICAgICAgICB0aGlzLmljb25QYXRoID0gbnVsbFxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
export const contentPathOfIcon = (icon) => {
|
|
2
|
-
if (!icon) {
|
|
3
|
-
return;
|
|
4
|
-
}
|
|
5
|
-
if (typeof icon !== 'string') {
|
|
6
|
-
icon = icon.id;
|
|
7
|
-
}
|
|
8
|
-
return `/api/icons/${icon}/content`;
|
|
9
|
-
};
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGljLWljb24ubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlLWxpYi9zdGF0aWMtaWNvbi9zdGF0aWMtaWNvbi5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFxQkEsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxJQUE2RSxFQUFzQixFQUFFO0lBQ3JJLElBQUksQ0FBQyxJQUFJLEVBQUU7UUFDVCxPQUFNO0tBQ1A7SUFDRCxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsRUFBRTtRQUM1QixJQUFJLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQTtLQUNmO0lBQ0QsT0FBTyxjQUFjLElBQUksVUFBVSxDQUFBO0FBQ3JDLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbIlxuZXhwb3J0IGludGVyZmFjZSBTdGF0aWNJY29uIHtcbiAgaWQ6IHN0cmluZ1xuICBzb3VyY2VVcmw6IHN0cmluZ1xuICBjb250ZW50UGF0aDogc3RyaW5nXG4gIHRpdGxlPzogc3RyaW5nXG4gIHN1bW1hcnk/OiBzdHJpbmdcbiAgZmlsZU5hbWU/OiBzdHJpbmdcbiAgdGFncz86IHN0cmluZ1tdXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVnaXN0ZXJlZFN0YXRpY0ljb25SZWZlcmVuY2Uge1xuICBpZDogc3RyaW5nXG4gIHNvdXJjZVVybD86IG5ldmVyXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU291cmNlVXJsU3RhdGljSWNvblJlZmVyZW5jZSB7XG4gIHNvdXJjZVVybDogc3RyaW5nXG4gIGlkPzogbmV2ZXJcbn1cblxuZXhwb3J0IGNvbnN0IGNvbnRlbnRQYXRoT2ZJY29uID0gKGljb24/OiBTdGF0aWNJY29uIHwgUmVnaXN0ZXJlZFN0YXRpY0ljb25SZWZlcmVuY2UgfCBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKTogc3RyaW5nIHwgdW5kZWZpbmVkID0+IHtcbiAgaWYgKCFpY29uKSB7XG4gICAgcmV0dXJuXG4gIH1cbiAgaWYgKHR5cGVvZiBpY29uICE9PSAnc3RyaW5nJykge1xuICAgIGljb24gPSBpY29uLmlkXG4gIH1cbiAgcmV0dXJuIGAvYXBpL2ljb25zLyR7aWNvbn0vY29udGVudGBcbn1cblxuZXhwb3J0IHR5cGUgU3RhdGljSWNvblJlZmVyZW5jZSA9IFJlZ2lzdGVyZWRTdGF0aWNJY29uUmVmZXJlbmNlIHwgU291cmNlVXJsU3RhdGljSWNvblJlZmVyZW5jZVxuIl19
|