@ngageoint/mage.web-core-lib 6.3.0-beta.0
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/README.md +24 -0
- package/common/index.d.ts +6 -0
- package/common/mage-common.module.d.ts +9 -0
- package/common/mage-common.module.d.ts.map +1 -0
- package/common/ngageoint-mage.web-core-lib-common.d.ts.map +1 -0
- package/common/public-api.d.ts +3 -0
- package/common/public-api.d.ts.map +1 -0
- package/common/xhr-img.component.d.ts +59 -0
- package/common/xhr-img.component.d.ts.map +1 -0
- package/esm2020/common/mage-common.module.mjs +25 -0
- package/esm2020/common/ngageoint-mage.web-core-lib-common.mjs +5 -0
- package/esm2020/common/public-api.mjs +3 -0
- package/esm2020/common/xhr-img.component.mjs +104 -0
- package/esm2020/event/event-read.service.mjs +3 -0
- package/esm2020/event/event.model.mjs +2 -0
- package/esm2020/event/ngageoint-mage.web-core-lib-event.mjs +5 -0
- package/esm2020/event/public-api.mjs +3 -0
- package/esm2020/feed/feed.model.mjs +2 -0
- package/esm2020/feed/feed.service.mjs +105 -0
- package/esm2020/feed/ngageoint-mage.web-core-lib-feed.mjs +5 -0
- package/esm2020/feed/public-api.mjs +3 -0
- package/esm2020/mage-core-lib.module.mjs +19 -0
- package/esm2020/ngageoint-mage.web-core-lib.mjs +5 -0
- package/esm2020/paging/ngageoint-mage.web-core-lib-paging.mjs +5 -0
- package/esm2020/paging/paging.cdk-data-source.adapter.mjs +52 -0
- package/esm2020/paging/paging.model.mjs +25 -0
- package/esm2020/paging/public-api.mjs +3 -0
- package/esm2020/plugin/ngageoint-mage.web-core-lib-plugin.mjs +5 -0
- package/esm2020/plugin/plugin.model.mjs +2 -0
- package/esm2020/plugin/public-api.mjs +2 -0
- package/esm2020/public-api.mjs +5 -0
- package/esm2020/static-icon/ngageoint-mage.web-core-lib-static-icon.mjs +5 -0
- package/esm2020/static-icon/public-api.mjs +7 -0
- package/esm2020/static-icon/static-icon-form-field/static-icon-form-field.component.mjs +145 -0
- package/esm2020/static-icon/static-icon-img/static-icon-img.component.mjs +35 -0
- package/esm2020/static-icon/static-icon-select/static-icon-select.component.mjs +52 -0
- package/esm2020/static-icon/static-icon.model.mjs +10 -0
- package/esm2020/static-icon/static-icon.module.mjs +54 -0
- package/esm2020/static-icon/static-icon.service.mjs +82 -0
- package/esm2020/user/ngageoint-mage.web-core-lib-user.mjs +5 -0
- package/esm2020/user/public-api.mjs +5 -0
- package/esm2020/user/user-read.service.mjs +40 -0
- package/esm2020/user/user-select/user-select.component.mjs +159 -0
- package/esm2020/user/user.model.mjs +2 -0
- package/esm2020/user/user.module.mjs +64 -0
- package/event/event-read.service.d.ts +12 -0
- package/event/event-read.service.d.ts.map +1 -0
- package/event/event.model.d.ts +7 -0
- package/event/event.model.d.ts.map +1 -0
- package/event/index.d.ts +6 -0
- package/event/ngageoint-mage.web-core-lib-event.d.ts.map +1 -0
- package/event/public-api.d.ts +3 -0
- package/event/public-api.d.ts.map +1 -0
- package/feed/feed.model.d.ts +84 -0
- package/feed/feed.model.d.ts.map +1 -0
- package/feed/feed.service.d.ts +41 -0
- package/feed/feed.service.d.ts.map +1 -0
- package/feed/index.d.ts +6 -0
- package/feed/ngageoint-mage.web-core-lib-feed.d.ts.map +1 -0
- package/feed/public-api.d.ts +3 -0
- package/feed/public-api.d.ts.map +1 -0
- package/fesm2015/ngageoint-mage.web-core-lib-common.mjs +142 -0
- package/fesm2015/ngageoint-mage.web-core-lib-common.mjs.map +1 -0
- package/fesm2015/ngageoint-mage.web-core-lib-event.mjs +10 -0
- package/fesm2015/ngageoint-mage.web-core-lib-event.mjs.map +1 -0
- package/fesm2015/ngageoint-mage.web-core-lib-feed.mjs +114 -0
- package/fesm2015/ngageoint-mage.web-core-lib-feed.mjs.map +1 -0
- package/fesm2015/ngageoint-mage.web-core-lib-paging.mjs +83 -0
- package/fesm2015/ngageoint-mage.web-core-lib-paging.mjs.map +1 -0
- package/fesm2015/ngageoint-mage.web-core-lib-plugin.mjs +4 -0
- package/fesm2015/ngageoint-mage.web-core-lib-plugin.mjs.map +1 -0
- package/fesm2015/ngageoint-mage.web-core-lib-static-icon.mjs +392 -0
- package/fesm2015/ngageoint-mage.web-core-lib-static-icon.mjs.map +1 -0
- package/fesm2015/ngageoint-mage.web-core-lib-user.mjs +279 -0
- package/fesm2015/ngageoint-mage.web-core-lib-user.mjs.map +1 -0
- package/fesm2015/ngageoint-mage.web-core-lib.mjs +32 -0
- package/fesm2015/ngageoint-mage.web-core-lib.mjs.map +1 -0
- package/fesm2020/ngageoint-mage.web-core-lib-common.mjs +133 -0
- package/fesm2020/ngageoint-mage.web-core-lib-common.mjs.map +1 -0
- package/fesm2020/ngageoint-mage.web-core-lib-event.mjs +10 -0
- package/fesm2020/ngageoint-mage.web-core-lib-event.mjs.map +1 -0
- package/fesm2020/ngageoint-mage.web-core-lib-feed.mjs +112 -0
- package/fesm2020/ngageoint-mage.web-core-lib-feed.mjs.map +1 -0
- package/fesm2020/ngageoint-mage.web-core-lib-paging.mjs +83 -0
- package/fesm2020/ngageoint-mage.web-core-lib-paging.mjs.map +1 -0
- package/fesm2020/ngageoint-mage.web-core-lib-plugin.mjs +4 -0
- package/fesm2020/ngageoint-mage.web-core-lib-plugin.mjs.map +1 -0
- package/fesm2020/ngageoint-mage.web-core-lib-static-icon.mjs +368 -0
- package/fesm2020/ngageoint-mage.web-core-lib-static-icon.mjs.map +1 -0
- package/fesm2020/ngageoint-mage.web-core-lib-user.mjs +262 -0
- package/fesm2020/ngageoint-mage.web-core-lib-user.mjs.map +1 -0
- package/fesm2020/ngageoint-mage.web-core-lib.mjs +30 -0
- package/fesm2020/ngageoint-mage.web-core-lib.mjs.map +1 -0
- package/index.d.ts +6 -0
- package/mage-core-lib.module.d.ts +8 -0
- package/mage-core-lib.module.d.ts.map +1 -0
- package/ngageoint-mage.web-core-lib.d.ts.map +1 -0
- package/package.json +102 -0
- package/paging/index.d.ts +6 -0
- package/paging/ngageoint-mage.web-core-lib-paging.d.ts.map +1 -0
- package/paging/paging.cdk-data-source.adapter.d.ts +21 -0
- package/paging/paging.cdk-data-source.adapter.d.ts.map +1 -0
- package/paging/paging.model.d.ts +28 -0
- package/paging/paging.model.d.ts.map +1 -0
- package/paging/public-api.d.ts +3 -0
- package/paging/public-api.d.ts.map +1 -0
- package/plugin/index.d.ts +6 -0
- package/plugin/ngageoint-mage.web-core-lib-plugin.d.ts.map +1 -0
- package/plugin/plugin.model.d.ts +14 -0
- package/plugin/plugin.model.d.ts.map +1 -0
- package/plugin/public-api.d.ts +2 -0
- package/plugin/public-api.d.ts.map +1 -0
- package/public-api.d.ts +2 -0
- package/public-api.d.ts.map +1 -0
- package/static-icon/index.d.ts +6 -0
- package/static-icon/ngageoint-mage.web-core-lib-static-icon.d.ts.map +1 -0
- package/static-icon/public-api.d.ts +7 -0
- package/static-icon/public-api.d.ts.map +1 -0
- package/static-icon/static-icon-form-field/static-icon-form-field.component.d.ts +32 -0
- package/static-icon/static-icon-form-field/static-icon-form-field.component.d.ts.map +1 -0
- package/static-icon/static-icon-img/static-icon-img.component.d.ts +13 -0
- package/static-icon/static-icon-img/static-icon-img.component.d.ts.map +1 -0
- package/static-icon/static-icon-select/static-icon-select.component.d.ts +22 -0
- package/static-icon/static-icon-select/static-icon-select.component.d.ts.map +1 -0
- package/static-icon/static-icon.model.d.ts +20 -0
- package/static-icon/static-icon.model.d.ts.map +1 -0
- package/static-icon/static-icon.module.d.ts +15 -0
- package/static-icon/static-icon.module.d.ts.map +1 -0
- package/static-icon/static-icon.service.d.ts +21 -0
- package/static-icon/static-icon.service.d.ts.map +1 -0
- package/user/index.d.ts +6 -0
- package/user/ngageoint-mage.web-core-lib-user.d.ts.map +1 -0
- package/user/public-api.d.ts +5 -0
- package/user/public-api.d.ts.map +1 -0
- package/user/user-read.service.d.ts +25 -0
- package/user/user-read.service.d.ts.map +1 -0
- package/user/user-select/user-select.component.d.ts +39 -0
- package/user/user-select/user-select.component.d.ts.map +1 -0
- package/user/user.model.d.ts +86 -0
- package/user/user.model.d.ts.map +1 -0
- package/user/user.module.d.ts +18 -0
- package/user/user.module.d.ts.map +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ngageoint-mage.web-core-lib-static-icon.mjs","sources":["../../../projects/core-lib/static-icon/static-icon.model.ts","../../../projects/core-lib/static-icon/static-icon.service.ts","../../../projects/core-lib/static-icon/static-icon-form-field/static-icon-form-field.component.ts","../../../projects/core-lib/static-icon/static-icon-form-field/static-icon-form-field.component.html","../../../projects/core-lib/static-icon/static-icon-img/static-icon-img.component.ts","../../../projects/core-lib/static-icon/static-icon-select/static-icon-select.component.html","../../../projects/core-lib/static-icon/static-icon-select/static-icon-select.component.ts","../../../projects/core-lib/static-icon/static-icon.module.ts","../../../projects/core-lib/static-icon/ngageoint-mage.web-core-lib-static-icon.ts"],"sourcesContent":["\nexport interface StaticIcon {\n id: string\n sourceUrl: string\n contentPath: string\n title?: string\n summary?: string\n fileName?: string\n tags?: string[]\n}\n\nexport interface RegisteredStaticIconReference {\n id: string\n sourceUrl?: never\n}\n\nexport interface SourceUrlStaticIconReference {\n sourceUrl: string\n id?: never\n}\n\nexport const contentPathOfIcon = (icon?: StaticIcon | RegisteredStaticIconReference | string | null | undefined): string | undefined => {\n if (!icon) {\n return\n }\n if (typeof icon !== 'string') {\n icon = icon.id\n }\n return `/api/icons/${icon}/content`\n}\n\nexport type StaticIconReference = RegisteredStaticIconReference | SourceUrlStaticIconReference\n","import { HttpClient, HttpParams } from '@angular/common/http'\nimport { Injectable } from '@angular/core';\nimport { Observable, throwError } from 'rxjs'\nimport { catchError } from 'rxjs/operators'\nimport { PageOf, PagingParameters } from '@ngageoint/mage.web-core-lib/paging'\nimport { StaticIcon, StaticIconReference } from './static-icon.model'\n\n\nexport interface IconFetch extends PagingParameters {\n searchText?: string\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class StaticIconService {\n\n constructor(private http: HttpClient) { }\n\n fetchIcons(fetch?: IconFetch): Observable<PageOf<StaticIcon>> {\n const now = Date.now()\n const results = new Observable<PageOf<StaticIcon>>(observer => {\n const icons: StaticIcon[] = []\n let remaining = 100\n while (remaining--) {\n const id = now - remaining\n icons.unshift({\n id: String(id),\n title: `Icon ${id}`,\n fileName: `icon-${id}.png`,\n sourceUrl: `https://test.mage/${id}.png`,\n contentPath: `/icons/${id}/content`\n })\n }\n setTimeout(() => {\n observer.next({\n pageSize: 100,\n pageIndex: 0,\n totalCount: 100,\n items: icons\n })\n observer.complete()\n }, 0)\n return {\n unsubscribe() { }\n }\n })\n return results\n }\n\n fetchIconById(id: string): Observable<StaticIcon | null> {\n return this.http.get<StaticIcon>(`/api/icons/${id}`).pipe(\n catchError((err, caught) => {\n // TODO: this is probably better practice to insulate app layer from\n // http errors\n // if (err instanceof HttpErrorResponse) {\n // if (err.status === 404) {\n // return null\n // }\n // }\n return throwError(err)\n })\n )\n }\n\n fetchIconBySourceUrl(url: string): Observable<StaticIcon> {\n return this.http.get<StaticIcon | null>(`/api/icons`, {\n params: new HttpParams().set('source_url', url)\n })\n }\n\n fetchIconByReference(ref: StaticIconReference): Observable<StaticIcon | null> {\n if (ref.id) {\n return this.fetchIconById(ref.id)\n }\n else if (ref.sourceUrl) {\n return this.fetchIconBySourceUrl(ref.sourceUrl)\n }\n throw new Error('no icon id or source url')\n }\n\n registerIconUrl(url: string): Observable<StaticIcon> {\n throw new Error('unimplemented')\n }\n\n uploadIcon(): void {\n throw new Error('unimplemented')\n }\n}\n","import { HttpClient } from '@angular/common/http'\nimport { Component, OnChanges, OnDestroy, SimpleChanges } from '@angular/core'\nimport { AbstractControl, ControlValueAccessor, UntypedFormControl, UntypedFormGroup, NG_VALIDATORS, NG_VALUE_ACCESSOR, ValidationErrors, Validator, Validators } from '@angular/forms'\nimport { DomSanitizer } from '@angular/platform-browser'\nimport { StaticIcon, StaticIconReference } from '../static-icon.model'\nimport { StaticIconService } from '../static-icon.service'\n\n\n@Component({\n selector: 'mage-static-icon-form-field',\n templateUrl: './static-icon-form-field.component.html',\n styleUrls: ['./static-icon-form-field.component.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: StaticIconFormFieldComponent\n },\n {\n provide: NG_VALIDATORS,\n multi: true,\n useExisting: StaticIconFormFieldComponent\n },\n ]\n})\nexport class StaticIconFormFieldComponent implements OnChanges, OnDestroy, ControlValueAccessor, Validator {\n\n iconRef: StaticIconReference = null\n\n form: UntypedFormGroup = new UntypedFormGroup({\n iconRefToken: new UntypedFormControl(null),\n iconRefType: new UntypedFormControl(null, Validators.required)\n })\n icon: StaticIcon | null\n\n private onChange: (iconRef: StaticIconReference) => void = (iconRef: StaticIconReference) => {}\n private onValidatorChange: () => void = () => {}\n private onTouched: () => void = () => {}\n\n constructor(private iconService: StaticIconService, private httpClient: HttpClient, private sanitizer: DomSanitizer) {\n this.form.valueChanges.subscribe((x: IconRefFormValue) => {\n this.iconRef = iconRefForFormValue(x)\n this.onChange(this.iconRef)\n })\n }\n\n registerOnValidatorChange?(fn: () => void): void {\n this.onValidatorChange = fn\n }\n\n ngOnChanges(changes: SimpleChanges) { }\n\n ngOnDestroy() { }\n\n onSelectIcon() { }\n\n writeValue(iconRef: StaticIconReference): void {\n this.iconRef = iconRef\n const formValue = formValueForIconRef(iconRef)\n this.form.setValue(formValue, { emitEvent: false })\n this.resolveIconRef()\n }\n\n registerOnChange(fn: (x: StaticIconReference | null) => void): void {\n this.onChange = fn\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn\n }\n\n setDisabledState?(isDisabled: boolean): void {\n if (isDisabled) {\n this.form.disable()\n }\n else {\n this.form.enable()\n }\n }\n\n validate(control: AbstractControl): ValidationErrors {\n return this.form.errors\n }\n\n private resolveIconRef() {\n if (!this.iconRef) {\n this.icon = null\n return\n }\n this.iconService.fetchIconByReference(this.iconRef).subscribe(x => {\n this.icon = x\n if (!this.icon) {\n return\n }\n })\n }\n}\n\nenum IconRefType {\n Registered = 'id',\n SourceUrl = 'sourceUrl'\n}\n\ntype IconRefFormValue = {\n iconRefToken: string | null\n iconRefType: IconRefType | null\n}\n\nfunction iconRefForFormValue(x: IconRefFormValue): StaticIconReference | null {\n if (!x.iconRefType) {\n return null\n }\n switch (x.iconRefType) {\n case IconRefType.Registered:\n return { [IconRefType.Registered]: x.iconRefToken }\n case IconRefType.SourceUrl:\n return { [IconRefType.SourceUrl]: x.iconRefToken }\n default:\n throw new Error('invalid icon ref type: ' + x.iconRefToken)\n }\n}\n\nfunction formValueForIconRef(x: StaticIconReference | null): IconRefFormValue {\n if (!x) {\n return {\n iconRefType: null,\n iconRefToken: null\n }\n }\n let iconRefType: IconRefType | null = null\n let iconRefToken: string | null = null\n if (x.hasOwnProperty(IconRefType.Registered)) {\n iconRefType = IconRefType.Registered || null\n iconRefToken = x[IconRefType.Registered] || null\n }\n else if (x.hasOwnProperty(IconRefType.SourceUrl)) {\n iconRefType = IconRefType.SourceUrl || null\n iconRefToken = x[IconRefType.SourceUrl] || null\n }\n return {\n iconRefType,\n iconRefToken\n }\n}\n","<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>","import { Component, Input, OnChanges, OnInit, SimpleChanges } from '@angular/core';\nimport { RegisteredStaticIconReference, contentPathOfIcon } from '../static-icon.model'\n\n@Component({\n selector: 'mage-static-icon-img',\n template: `<mage-xhr-img [src]=\"iconPath\"></mage-xhr-img>`,\n})\nexport class StaticIconImgComponent implements OnInit, OnChanges {\n\n @Input()\n iconRef: RegisteredStaticIconReference | string | null\n iconPath: string | null\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.iconRef) {\n if (this.iconRef) {\n this.iconPath = contentPathOfIcon(this.iconRef)\n }\n else {\n this.iconPath = null\n }\n }\n }\n}\n","<div class=\"icon-select\">\n <cdk-virtual-scroll-viewport [itemSize]=\"40\">\n <mat-card *cdkVirtualFor=\"let icon of icons\" class=icon-select-item>\n <mat-card-header>\n <mat-card-title>{{icon.title}}</mat-card-title>\n </mat-card-header>\n <img mat-card-img [src]=\"icon.path\" />\n </mat-card>\n </cdk-virtual-scroll-viewport>\n</div>\n<!--\n <button mat-button class=\"add__button\" type=\"button\" color=\"primary\" (click)=\"file.click()\">\n Upload Icon\n </button>\n <input [hidden]=\"true\" type=\"file\" #file multiple (change)=\"onAttachmentFile($event)\">\n-->","import { Component, OnInit } from '@angular/core'\nimport { PagingParameters, PagingDataSource } from '@ngageoint/mage.web-core-lib/paging'\nimport { StaticIcon } from '../static-icon.model'\nimport { StaticIconService } from '../static-icon.service'\n\nexport interface StaticIconSelectItem {\n id: string\n path: string\n title: string\n fileName: string\n}\n\n@Component({\n selector: 'static-icon-select',\n templateUrl: './static-icon-select.component.html',\n styleUrls: ['./static-icon-select.component.scss']\n})\nexport class StaticIconSelectComponent implements OnInit {\n\n icons: StaticIcon[] | null = null\n dataSource: PagingDataSource<StaticIcon>\n\n constructor(\n private iconService: StaticIconService\n ) {\n this.dataSource = new PagingDataSource<StaticIcon>(250, (paging: PagingParameters) => {\n return this.iconService.fetchIcons(paging)\n })\n }\n\n ngOnInit() {\n this.iconService.fetchIcons().subscribe(x => {\n this.icons = x.items\n })\n }\n\n onBrowseForUploadIcon() {\n throw new Error('unimplemented')\n }\n}\n\n","import { ScrollingModule } from '@angular/cdk/scrolling'\nimport { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms'\nimport { MatCardModule } from '@angular/material/card'\nimport { MageCommonModule } from '@ngageoint/mage.web-core-lib/common'\nimport { StaticIconFormFieldComponent } from './static-icon-form-field/static-icon-form-field.component'\nimport { StaticIconImgComponent } from './static-icon-img/static-icon-img.component'\nimport { StaticIconSelectComponent } from './static-icon-select/static-icon-select.component'\n\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n MatCardModule,\n MageCommonModule,\n ScrollingModule\n ],\n declarations: [\n StaticIconFormFieldComponent,\n StaticIconImgComponent,\n StaticIconSelectComponent,\n ],\n exports: [\n StaticIconFormFieldComponent,\n StaticIconImgComponent,\n StaticIconSelectComponent,\n ]\n})\nexport class StaticIconModule {}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.StaticIconService","i2"],"mappings":"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"}
|
|
@@ -0,0 +1,262 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { Injectable, InjectionToken, forwardRef, Component, ViewChild, NgModule } from '@angular/core';
|
|
3
|
+
import * as i1 from '@angular/common/http';
|
|
4
|
+
import { ScrollingModule } from '@angular/cdk/scrolling';
|
|
5
|
+
import { CommonModule } from '@angular/common';
|
|
6
|
+
import { NG_VALUE_ACCESSOR, FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
7
|
+
import { MatAutocompleteModule } from '@angular/material/autocomplete';
|
|
8
|
+
import { MatDialogModule } from '@angular/material/dialog';
|
|
9
|
+
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
10
|
+
import { MatInputModule } from '@angular/material/input';
|
|
11
|
+
import { MatListModule } from '@angular/material/list';
|
|
12
|
+
import { MatSelectModule } from '@angular/material/select';
|
|
13
|
+
import * as i2 from '@ng-select/ng-select';
|
|
14
|
+
import { NgSelectComponent, NgSelectModule } from '@ng-select/ng-select';
|
|
15
|
+
import { pageForItemIndex } from '@ngageoint/mage.web-core-lib/paging';
|
|
16
|
+
import { Subject } from 'rxjs';
|
|
17
|
+
import { distinctUntilChanged, debounceTime } from 'rxjs/operators';
|
|
18
|
+
|
|
19
|
+
const USER_READ_BASE_URL = '/api/next-users';
|
|
20
|
+
const reqKeys = {
|
|
21
|
+
term: 'term',
|
|
22
|
+
pageSize: 'page_size',
|
|
23
|
+
pageIndex: 'page',
|
|
24
|
+
includeTotalCount: 'total',
|
|
25
|
+
};
|
|
26
|
+
class UserReadService {
|
|
27
|
+
constructor(http) {
|
|
28
|
+
this.http = http;
|
|
29
|
+
}
|
|
30
|
+
search(which) {
|
|
31
|
+
const queryParams = {
|
|
32
|
+
page_size: String(which.pageSize),
|
|
33
|
+
page: String(which.pageIndex),
|
|
34
|
+
};
|
|
35
|
+
if (typeof which.term === 'string') {
|
|
36
|
+
queryParams.term = which.term;
|
|
37
|
+
}
|
|
38
|
+
if (typeof which.includeTotalCount === 'boolean') {
|
|
39
|
+
queryParams.total = which.includeTotalCount ? 'true' : 'false';
|
|
40
|
+
}
|
|
41
|
+
return this.http.get(`${USER_READ_BASE_URL}/search`, {
|
|
42
|
+
params: queryParams
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
UserReadService.ɵfac = function UserReadService_Factory(t) { return new (t || UserReadService)(i0.ɵɵinject(i1.HttpClient)); };
|
|
47
|
+
UserReadService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: UserReadService, factory: UserReadService.ɵfac, providedIn: 'root' });
|
|
48
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(UserReadService, [{
|
|
49
|
+
type: Injectable,
|
|
50
|
+
args: [{
|
|
51
|
+
providedIn: 'root'
|
|
52
|
+
}]
|
|
53
|
+
}], function () { return [{ type: i1.HttpClient }]; }, null); })();
|
|
54
|
+
const USER_READ_SERVICE = new InjectionToken('UserReadService');
|
|
55
|
+
|
|
56
|
+
function UserSelectComponent_ng_template_1_Template(rf, ctx) { if (rf & 1) {
|
|
57
|
+
i0.ɵɵelementStart(0, "small", 3);
|
|
58
|
+
i0.ɵɵtext(1);
|
|
59
|
+
i0.ɵɵelementEnd();
|
|
60
|
+
} if (rf & 2) {
|
|
61
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
62
|
+
i0.ɵɵadvance(1);
|
|
63
|
+
i0.ɵɵtextInterpolate1("", ctx_r0.totalCount, " matching users");
|
|
64
|
+
} }
|
|
65
|
+
function UserSelectComponent_ng_template_2_Template(rf, ctx) { if (rf & 1) {
|
|
66
|
+
i0.ɵɵelementStart(0, "div", 4)(1, "p", 5);
|
|
67
|
+
i0.ɵɵtext(2);
|
|
68
|
+
i0.ɵɵelementEnd();
|
|
69
|
+
i0.ɵɵelementStart(3, "p", 6);
|
|
70
|
+
i0.ɵɵtext(4);
|
|
71
|
+
i0.ɵɵelementEnd();
|
|
72
|
+
i0.ɵɵelementStart(5, "p", 6);
|
|
73
|
+
i0.ɵɵtext(6);
|
|
74
|
+
i0.ɵɵelementEnd()();
|
|
75
|
+
} if (rf & 2) {
|
|
76
|
+
const user_r2 = ctx.item;
|
|
77
|
+
i0.ɵɵadvance(2);
|
|
78
|
+
i0.ɵɵtextInterpolate2("", user_r2.displayName, " (", user_r2.username, ")");
|
|
79
|
+
i0.ɵɵadvance(2);
|
|
80
|
+
i0.ɵɵtextInterpolate(user_r2.email || "[no email]");
|
|
81
|
+
i0.ɵɵadvance(2);
|
|
82
|
+
i0.ɵɵtextInterpolate(user_r2.allPhones || "[no phone]");
|
|
83
|
+
} }
|
|
84
|
+
class UserSelectComponent {
|
|
85
|
+
constructor(userService) {
|
|
86
|
+
this.userService = userService;
|
|
87
|
+
this.baseFindParams = Object.freeze({
|
|
88
|
+
pageSize: 100,
|
|
89
|
+
pageIndex: 0,
|
|
90
|
+
term: null
|
|
91
|
+
});
|
|
92
|
+
this.nextPageScrollThreshold = 15;
|
|
93
|
+
this.searchTermDebounceTime = 500;
|
|
94
|
+
this.trackByUserId = x => x.id;
|
|
95
|
+
this.users = [];
|
|
96
|
+
this.totalCount = 0;
|
|
97
|
+
this.searchTerm$ = new Subject();
|
|
98
|
+
this.currentSearchTerm = null;
|
|
99
|
+
this.currentFetch = null;
|
|
100
|
+
}
|
|
101
|
+
get loading() {
|
|
102
|
+
return !!this.currentFetch && !this.currentFetch.closed;
|
|
103
|
+
}
|
|
104
|
+
ngOnInit() {
|
|
105
|
+
this.searchTerm$.pipe(distinctUntilChanged(), debounceTime(this.searchTermDebounceTime))
|
|
106
|
+
.subscribe(x => {
|
|
107
|
+
this.currentSearchTerm = x;
|
|
108
|
+
this.users = [];
|
|
109
|
+
this.totalCount = 0;
|
|
110
|
+
if (this.currentFetch) {
|
|
111
|
+
this.currentFetch.unsubscribe();
|
|
112
|
+
this.currentFetch = null;
|
|
113
|
+
}
|
|
114
|
+
this.fetchNextPage();
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
ngOnChanges(changes) {
|
|
118
|
+
}
|
|
119
|
+
ngAfterViewInit() {
|
|
120
|
+
}
|
|
121
|
+
writeValue(x) {
|
|
122
|
+
this.userSelect.writeValue(x);
|
|
123
|
+
}
|
|
124
|
+
registerOnChange(fn) {
|
|
125
|
+
this.userSelect.registerOnChange(fn);
|
|
126
|
+
}
|
|
127
|
+
registerOnTouched(fn) {
|
|
128
|
+
this.userSelect.registerOnTouched(fn);
|
|
129
|
+
}
|
|
130
|
+
setDisabledState(isDisabled) {
|
|
131
|
+
this.userSelect.setDisabledState(isDisabled);
|
|
132
|
+
}
|
|
133
|
+
onOpen() {
|
|
134
|
+
if (this.users.length === 0) {
|
|
135
|
+
this.fetchNextPage();
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
onScroll({ end }) {
|
|
139
|
+
if (end < this.users.length - this.nextPageScrollThreshold || this.users.length === this.totalCount) {
|
|
140
|
+
return;
|
|
141
|
+
}
|
|
142
|
+
this.fetchNextPage();
|
|
143
|
+
}
|
|
144
|
+
onScrollToEnd() {
|
|
145
|
+
}
|
|
146
|
+
fetchNextPage() {
|
|
147
|
+
if (this.currentFetch) {
|
|
148
|
+
if (this.currentFetch.closed) {
|
|
149
|
+
this.currentFetch = null;
|
|
150
|
+
}
|
|
151
|
+
else {
|
|
152
|
+
return;
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
const nextPage = pageForItemIndex(this.users.length, this.baseFindParams.pageSize);
|
|
156
|
+
const findParams = {
|
|
157
|
+
...this.baseFindParams,
|
|
158
|
+
pageIndex: nextPage
|
|
159
|
+
};
|
|
160
|
+
if (this.currentSearchTerm) {
|
|
161
|
+
findParams.term = this.currentSearchTerm;
|
|
162
|
+
}
|
|
163
|
+
this.currentFetch = this.userService.search(findParams).subscribe(page => {
|
|
164
|
+
this.users = this.users.concat(page.items);
|
|
165
|
+
if (typeof page.totalCount === 'number') {
|
|
166
|
+
this.totalCount = page.totalCount;
|
|
167
|
+
}
|
|
168
|
+
});
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
UserSelectComponent.ɵfac = function UserSelectComponent_Factory(t) { return new (t || UserSelectComponent)(i0.ɵɵdirectiveInject(UserReadService)); };
|
|
172
|
+
UserSelectComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: UserSelectComponent, selectors: [["mage-user-select"]], viewQuery: function UserSelectComponent_Query(rf, ctx) { if (rf & 1) {
|
|
173
|
+
i0.ɵɵviewQuery(NgSelectComponent, 7);
|
|
174
|
+
} if (rf & 2) {
|
|
175
|
+
let _t;
|
|
176
|
+
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.userSelect = _t.first);
|
|
177
|
+
} }, features: [i0.ɵɵProvidersFeature([
|
|
178
|
+
{
|
|
179
|
+
provide: NG_VALUE_ACCESSOR,
|
|
180
|
+
multi: true,
|
|
181
|
+
useExisting: forwardRef(() => UserSelectComponent)
|
|
182
|
+
}
|
|
183
|
+
]), i0.ɵɵNgOnChangesFeature], decls: 3, vars: 5, consts: [["appendTo", "body", "placeholder", "Choose a user", "bindLabel", "displayName", 3, "items", "typeahead", "virtualScroll", "loading", "trackByFn", "open", "scroll", "scrollToEnd"], ["ng-header-tmp", ""], ["class", "user-option", "ng-option-tmp", ""], [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) {
|
|
184
|
+
i0.ɵɵelementStart(0, "ng-select", 0);
|
|
185
|
+
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(); });
|
|
186
|
+
i0.ɵɵtemplate(1, UserSelectComponent_ng_template_1_Template, 2, 1, "ng-template", 1);
|
|
187
|
+
i0.ɵɵtemplate(2, UserSelectComponent_ng_template_2_Template, 7, 4, "ng-template", 2);
|
|
188
|
+
i0.ɵɵelementEnd();
|
|
189
|
+
} if (rf & 2) {
|
|
190
|
+
i0.ɵɵproperty("items", ctx.users)("typeahead", ctx.searchTerm$)("virtualScroll", true)("loading", ctx.loading)("trackByFn", ctx.trackByUserId);
|
|
191
|
+
} }, 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}"] });
|
|
192
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(UserSelectComponent, [{
|
|
193
|
+
type: Component,
|
|
194
|
+
args: [{ selector: 'mage-user-select', providers: [
|
|
195
|
+
{
|
|
196
|
+
provide: NG_VALUE_ACCESSOR,
|
|
197
|
+
multi: true,
|
|
198
|
+
useExisting: forwardRef(() => UserSelectComponent)
|
|
199
|
+
}
|
|
200
|
+
], 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"] }]
|
|
201
|
+
}], function () { return [{ type: UserReadService }]; }, { userSelect: [{
|
|
202
|
+
type: ViewChild,
|
|
203
|
+
args: [NgSelectComponent, { static: true }]
|
|
204
|
+
}] }); })();
|
|
205
|
+
|
|
206
|
+
class MageUserModule {
|
|
207
|
+
}
|
|
208
|
+
MageUserModule.ɵfac = function MageUserModule_Factory(t) { return new (t || MageUserModule)(); };
|
|
209
|
+
MageUserModule.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: MageUserModule });
|
|
210
|
+
MageUserModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule,
|
|
211
|
+
FormsModule,
|
|
212
|
+
ReactiveFormsModule,
|
|
213
|
+
ScrollingModule,
|
|
214
|
+
MatAutocompleteModule,
|
|
215
|
+
MatDialogModule,
|
|
216
|
+
MatFormFieldModule,
|
|
217
|
+
MatInputModule,
|
|
218
|
+
MatListModule,
|
|
219
|
+
MatSelectModule,
|
|
220
|
+
NgSelectModule] });
|
|
221
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MageUserModule, [{
|
|
222
|
+
type: NgModule,
|
|
223
|
+
args: [{
|
|
224
|
+
imports: [
|
|
225
|
+
CommonModule,
|
|
226
|
+
FormsModule,
|
|
227
|
+
ReactiveFormsModule,
|
|
228
|
+
ScrollingModule,
|
|
229
|
+
MatAutocompleteModule,
|
|
230
|
+
MatDialogModule,
|
|
231
|
+
MatFormFieldModule,
|
|
232
|
+
MatInputModule,
|
|
233
|
+
MatListModule,
|
|
234
|
+
MatSelectModule,
|
|
235
|
+
NgSelectModule,
|
|
236
|
+
],
|
|
237
|
+
declarations: [
|
|
238
|
+
UserSelectComponent
|
|
239
|
+
],
|
|
240
|
+
exports: [
|
|
241
|
+
UserSelectComponent
|
|
242
|
+
]
|
|
243
|
+
}]
|
|
244
|
+
}], null, null); })();
|
|
245
|
+
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(MageUserModule, { declarations: [UserSelectComponent], imports: [CommonModule,
|
|
246
|
+
FormsModule,
|
|
247
|
+
ReactiveFormsModule,
|
|
248
|
+
ScrollingModule,
|
|
249
|
+
MatAutocompleteModule,
|
|
250
|
+
MatDialogModule,
|
|
251
|
+
MatFormFieldModule,
|
|
252
|
+
MatInputModule,
|
|
253
|
+
MatListModule,
|
|
254
|
+
MatSelectModule,
|
|
255
|
+
NgSelectModule], exports: [UserSelectComponent] }); })();
|
|
256
|
+
|
|
257
|
+
/**
|
|
258
|
+
* Generated bundle index. Do not edit.
|
|
259
|
+
*/
|
|
260
|
+
|
|
261
|
+
export { MageUserModule, USER_READ_BASE_URL, USER_READ_SERVICE, UserReadService, UserSelectComponent };
|
|
262
|
+
//# sourceMappingURL=ngageoint-mage.web-core-lib-user.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ngageoint-mage.web-core-lib-user.mjs","sources":["../../../projects/core-lib/user/user-read.service.ts","../../../projects/core-lib/user/user-select/user-select.component.html","../../../projects/core-lib/user/user-select/user-select.component.ts","../../../projects/core-lib/user/user.module.ts","../../../projects/core-lib/user/ngageoint-mage.web-core-lib-user.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http'\nimport { InjectionToken, Injectable } from '@angular/core'\nimport { PageOf, PagingParameters } from '@ngageoint/mage.web-core-lib/paging'\nimport { Observable } from 'rxjs'\nimport { User } from './user.model'\n\nexport const USER_READ_BASE_URL = '/api/next-users'\n\ntype SearchQueryParams = {\n page_size: string,\n page: string,\n term?: string,\n total?: 'true' | 'false'\n}\n\nconst reqKeys: { [SearchParamKey in keyof UserSearchParams]: string } = {\n term: 'term',\n pageSize: 'page_size',\n pageIndex: 'page',\n includeTotalCount: 'total',\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class UserReadService {\n\n constructor(private http: HttpClient) { }\n\n search(which: UserSearchParams): Observable<PageOf<UserSearchResult>> {\n const queryParams: SearchQueryParams = {\n page_size: String(which.pageSize),\n page: String(which.pageIndex),\n }\n if (typeof which.term === 'string') {\n queryParams.term = which.term\n }\n if (typeof which.includeTotalCount === 'boolean') {\n queryParams.total = which.includeTotalCount ? 'true' : 'false'\n }\n return this.http.get<PageOf<UserSearchResult>>(`${USER_READ_BASE_URL}/search`, {\n params: queryParams\n })\n }\n}\n\nexport interface UserSearchParams extends PagingParameters {\n term?: string | null | undefined\n}\n\nexport type UserSearchResult = Pick<User, 'id' | 'username' | 'displayName' | 'email' | 'active' | 'enabled'> & {\n /**\n * A reduction of all the phone numbers to a single string\n */\n allPhones?: string | null | undefined\n}\n\nexport const USER_READ_SERVICE = new InjectionToken<UserReadService>('UserReadService')","<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","import { AfterViewInit, Component, Input, OnChanges, SimpleChanges, ViewChild, forwardRef, OnInit } from '@angular/core'\nimport { ControlValueAccessor, FormControl, NG_VALUE_ACCESSOR } from '@angular/forms'\nimport { NgSelectComponent } from '@ng-select/ng-select'\nimport { User } from '../user.model'\nimport { UserReadService, UserSearchParams, UserSearchResult } from '../user-read.service'\nimport { pageForItemIndex, itemRangeOfPage } from '@ngageoint/mage.web-core-lib/paging'\nimport { Subject, BehaviorSubject, SubscriptionLike, Unsubscribable } from 'rxjs'\nimport { debounceTime, distinctUntilChanged } from 'rxjs/operators'\nimport { X } from '@angular/cdk/keycodes'\n\n@Component({\n selector: 'mage-user-select',\n templateUrl: './user-select.component.html',\n styleUrls: [\n './user-select.component.scss'\n ],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n multi: true,\n useExisting: forwardRef(() => UserSelectComponent)\n }\n ]\n})\nexport class UserSelectComponent implements OnInit, OnChanges, AfterViewInit, ControlValueAccessor {\n\n readonly baseFindParams: Readonly<UserSearchParams> = Object.freeze({\n pageSize: 100,\n pageIndex: 0,\n term: null\n })\n readonly nextPageScrollThreshold = 15\n readonly searchTermDebounceTime = 500\n readonly trackByUserId: (x: User) => User['id'] = x => x.id\n get loading(): boolean {\n return !!this.currentFetch && !this.currentFetch.closed\n }\n\n users: UserSearchResult[] = []\n totalCount = 0\n searchTerm$ = new Subject<string | null>()\n currentSearchTerm: string | null = null\n @ViewChild(NgSelectComponent, { static: true })\n userSelect: NgSelectComponent\n\n private currentFetch: SubscriptionLike | null = null\n\n constructor(private userService: UserReadService) { }\n\n ngOnInit() {\n this.searchTerm$.pipe(\n distinctUntilChanged(),\n debounceTime(this.searchTermDebounceTime),\n )\n .subscribe(x => {\n this.currentSearchTerm = x\n this.users = []\n this.totalCount = 0\n if (this.currentFetch) {\n this.currentFetch.unsubscribe()\n this.currentFetch = null\n }\n this.fetchNextPage()\n })\n }\n\n ngOnChanges(changes: SimpleChanges) {\n }\n\n ngAfterViewInit() {\n }\n\n writeValue(x: User | null): void {\n this.userSelect.writeValue(x)\n }\n\n registerOnChange(fn: (...args: any[]) => any): void {\n this.userSelect.registerOnChange(fn)\n }\n\n registerOnTouched(fn: (...args: any[]) => any): void {\n this.userSelect.registerOnTouched(fn)\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.userSelect.setDisabledState(isDisabled)\n }\n\n onOpen() {\n if (this.users.length === 0) {\n this.fetchNextPage()\n }\n }\n\n onScroll({ end }: { start: number, end: number }) {\n if (end < this.users.length - this.nextPageScrollThreshold || this.users.length === this.totalCount) {\n return\n }\n this.fetchNextPage()\n }\n\n onScrollToEnd() {\n\n }\n\n fetchNextPage() {\n if (this.currentFetch) {\n if (this.currentFetch.closed) {\n this.currentFetch = null\n }\n else {\n return\n }\n }\n const nextPage = pageForItemIndex(this.users.length, this.baseFindParams.pageSize)\n const findParams: UserSearchParams = {\n ...this.baseFindParams,\n pageIndex: nextPage\n }\n if (this.currentSearchTerm) {\n findParams.term = this.currentSearchTerm\n }\n this.currentFetch = this.userService.search(findParams).subscribe(page => {\n this.users = this.users.concat(page.items)\n if (typeof page.totalCount === 'number') {\n this.totalCount = page.totalCount\n }\n })\n }\n}","import { ScrollingModule } from '@angular/cdk/scrolling'\nimport { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms'\nimport { MatAutocompleteModule } from '@angular/material/autocomplete'\nimport { MatDialogModule } from '@angular/material/dialog'\nimport { MatFormFieldModule } from '@angular/material/form-field'\nimport { MatInputModule } from '@angular/material/input'\nimport { MatListModule } from '@angular/material/list'\nimport { MatSelectModule } from '@angular/material/select'\nimport { UserSelectComponent } from './user-select/user-select.component'\nimport { NgSelectModule } from '@ng-select/ng-select'\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n ScrollingModule,\n MatAutocompleteModule,\n MatDialogModule,\n MatFormFieldModule,\n MatInputModule,\n MatListModule,\n MatSelectModule,\n NgSelectModule,\n ],\n declarations: [\n UserSelectComponent\n ],\n exports: [\n UserSelectComponent\n ]\n})\nexport class MageUserModule {\n\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.UserReadService"],"mappings":";;;;;;;;;;;;;;;;;;AAMO,MAAM,kBAAkB,GAAG,kBAAiB;AASnD,MAAM,OAAO,GAA2D;AACtE,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,QAAQ,EAAE,WAAW;AACrB,IAAA,SAAS,EAAE,MAAM;AACjB,IAAA,iBAAiB,EAAE,OAAO;CAC3B,CAAA;MAKY,eAAe,CAAA;AAE1B,IAAA,WAAA,CAAoB,IAAgB,EAAA;QAAhB,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAY;KAAK;AAEzC,IAAA,MAAM,CAAC,KAAuB,EAAA;AAC5B,QAAA,MAAM,WAAW,GAAsB;AACrC,YAAA,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;AACjC,YAAA,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC;SAC9B,CAAA;AACD,QAAA,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE;AAClC,YAAA,WAAW,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAA;AAC9B,SAAA;AACD,QAAA,IAAI,OAAO,KAAK,CAAC,iBAAiB,KAAK,SAAS,EAAE;AAChD,YAAA,WAAW,CAAC,KAAK,GAAG,KAAK,CAAC,iBAAiB,GAAG,MAAM,GAAG,OAAO,CAAA;AAC/D,SAAA;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAA2B,CAAA,EAAG,kBAAkB,CAAA,OAAA,CAAS,EAAE;AAC7E,YAAA,MAAM,EAAE,WAAW;AACpB,SAAA,CAAC,CAAA;KACH;;8EAlBU,eAAe,EAAA,EAAA,CAAA,QAAA,CAAA,EAAA,CAAA,UAAA,CAAA,CAAA,CAAA,EAAA,CAAA;qEAAf,eAAe,EAAA,OAAA,EAAf,eAAe,CAAA,IAAA,EAAA,UAAA,EAFd,MAAM,EAAA,CAAA,CAAA;uFAEP,eAAe,EAAA,CAAA;cAH3B,UAAU;AAAC,QAAA,IAAA,EAAA,CAAA;AACV,gBAAA,UAAU,EAAE,MAAM;AACnB,aAAA,CAAA;;MAiCY,iBAAiB,GAAG,IAAI,cAAc,CAAkB,iBAAiB;;;IC5ClF,EAAoC,CAAA,cAAA,CAAA,CAAA,EAAA,OAAA,EAAA,CAAA,CAAA,CAAA;IAAA,EAA6B,CAAA,MAAA,CAAA,CAAA,CAAA,CAAA;IAAA,EAAQ,CAAA,YAAA,EAAA,CAAA;;;IAArC,EAA6B,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA;IAA7B,EAA6B,CAAA,kBAAA,CAAA,EAAA,EAAA,MAAA,CAAA,UAAA,EAAA,iBAAA,CAAA,CAAA;;;AAGjE,IAAA,EAAA,CAAA,cAAA,CAAA,CAAA,EAAA,KAAA,EAAA,CAAA,CAAyB,CAAA,CAAA,EAAA,GAAA,EAAA,CAAA,CAAA,CAAA;IACc,EAAwC,CAAA,MAAA,CAAA,CAAA,CAAA,CAAA;IAAA,EAAI,CAAA,YAAA,EAAA,CAAA;IACjF,EAAoC,CAAA,cAAA,CAAA,CAAA,EAAA,GAAA,EAAA,CAAA,CAAA,CAAA;IAAA,EAA8B,CAAA,MAAA,CAAA,CAAA,CAAA,CAAA;IAAA,EAAI,CAAA,YAAA,EAAA,CAAA;IACtE,EAAoC,CAAA,cAAA,CAAA,CAAA,EAAA,GAAA,EAAA,CAAA,CAAA,CAAA;IAAA,EAAkC,CAAA,MAAA,CAAA,CAAA,CAAA,CAAA;AAAA,IAAA,EAAA,CAAA,YAAA,EAAI,EAAA,CAAA;;;IAFrC,EAAwC,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA;IAAxC,EAAwC,CAAA,kBAAA,CAAA,EAAA,EAAA,OAAA,CAAA,WAAA,EAAA,IAAA,EAAA,OAAA,CAAA,QAAA,EAAA,GAAA,CAAA,CAAA;IACzC,EAA8B,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA;IAA9B,EAA8B,CAAA,iBAAA,CAAA,OAAA,CAAA,KAAA,IAAA,YAAA,CAAA,CAAA;IAC9B,EAAkC,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA;IAAlC,EAAkC,CAAA,iBAAA,CAAA,OAAA,CAAA,SAAA,IAAA,YAAA,CAAA,CAAA;;MCK/D,mBAAmB,CAAA;AAuB9B,IAAA,WAAA,CAAoB,WAA4B,EAAA;QAA5B,IAAW,CAAA,WAAA,GAAX,WAAW,CAAiB;AArBvC,QAAA,IAAA,CAAA,cAAc,GAA+B,MAAM,CAAC,MAAM,CAAC;AAClE,YAAA,QAAQ,EAAE,GAAG;AACb,YAAA,SAAS,EAAE,CAAC;AACZ,YAAA,IAAI,EAAE,IAAI;AACX,SAAA,CAAC,CAAA;QACO,IAAuB,CAAA,uBAAA,GAAG,EAAE,CAAA;QAC5B,IAAsB,CAAA,sBAAA,GAAG,GAAG,CAAA;QAC5B,IAAa,CAAA,aAAA,GAA4B,CAAC,IAAI,CAAC,CAAC,EAAE,CAAA;QAK3D,IAAK,CAAA,KAAA,GAAuB,EAAE,CAAA;QAC9B,IAAU,CAAA,UAAA,GAAG,CAAC,CAAA;AACd,QAAA,IAAA,CAAA,WAAW,GAAG,IAAI,OAAO,EAAiB,CAAA;QAC1C,IAAiB,CAAA,iBAAA,GAAkB,IAAI,CAAA;QAI/B,IAAY,CAAA,YAAA,GAA4B,IAAI,CAAA;KAEC;AAbrD,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,CAAC,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAA;KACxD;IAaD,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CACnB,oBAAoB,EAAE,EACtB,YAAY,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAC1C;aACA,SAAS,CAAC,CAAC,IAAG;AACb,YAAA,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAA;AAC1B,YAAA,IAAI,CAAC,KAAK,GAAG,EAAE,CAAA;AACf,YAAA,IAAI,CAAC,UAAU,GAAG,CAAC,CAAA;YACnB,IAAI,IAAI,CAAC,YAAY,EAAE;AACrB,gBAAA,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAA;AAC/B,gBAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;AACzB,aAAA;YACD,IAAI,CAAC,aAAa,EAAE,CAAA;AACtB,SAAC,CAAC,CAAA;KACH;AAED,IAAA,WAAW,CAAC,OAAsB,EAAA;KACjC;IAED,eAAe,GAAA;KACd;AAED,IAAA,UAAU,CAAC,CAAc,EAAA;AACvB,QAAA,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;KAC9B;AAED,IAAA,gBAAgB,CAAC,EAA2B,EAAA;AAC1C,QAAA,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAA;KACrC;AAED,IAAA,iBAAiB,CAAC,EAA2B,EAAA;AAC3C,QAAA,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAA;KACtC;AAED,IAAA,gBAAgB,CAAC,UAAmB,EAAA;AAClC,QAAA,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAA;KAC7C;IAED,MAAM,GAAA;AACJ,QAAA,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YAC3B,IAAI,CAAC,aAAa,EAAE,CAAA;AACrB,SAAA;KACF;IAED,QAAQ,CAAC,EAAE,GAAG,EAAkC,EAAA;QAC9C,IAAI,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,uBAAuB,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,UAAU,EAAE;YACnG,OAAM;AACP,SAAA;QACD,IAAI,CAAC,aAAa,EAAE,CAAA;KACrB;IAED,aAAa,GAAA;KAEZ;IAED,aAAa,GAAA;QACX,IAAI,IAAI,CAAC,YAAY,EAAE;AACrB,YAAA,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;AAC5B,gBAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;AACzB,aAAA;AACI,iBAAA;gBACH,OAAM;AACP,aAAA;AACF,SAAA;AACD,QAAA,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAA;AAClF,QAAA,MAAM,UAAU,GAAqB;YACnC,GAAG,IAAI,CAAC,cAAc;AACtB,YAAA,SAAS,EAAE,QAAQ;SACpB,CAAA;QACD,IAAI,IAAI,CAAC,iBAAiB,EAAE;AAC1B,YAAA,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAA;AACzC,SAAA;AACD,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,IAAI,IAAG;AACvE,YAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AAC1C,YAAA,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE;AACvC,gBAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;AAClC,aAAA;AACH,SAAC,CAAC,CAAA;KACH;;sFAxGU,mBAAmB,EAAA,EAAA,CAAA,iBAAA,CAAAA,eAAA,CAAA,CAAA,CAAA,EAAA,CAAA;sEAAnB,mBAAmB,EAAA,SAAA,EAAA,CAAA,CAAA,kBAAA,CAAA,CAAA,EAAA,SAAA,EAAA,SAAA,yBAAA,CAAA,EAAA,EAAA,GAAA,EAAA,EAAA,IAAA,EAAA,GAAA,CAAA,EAAA;uBAkBnB,iBAAiB,EAAA,CAAA,CAAA,CAAA;;;;AA1BjB,KAAA,EAAA,EAAA,QAAA,EAAA,CAAA,EAAA,CAAA,kBAAA,CAAA;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,KAAK,EAAE,IAAI;AACX,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,mBAAmB,CAAC;AACnD,aAAA;AACF,SAAA,CAAA,EAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,CAAA,UAAA,EAAA,MAAA,EAAA,aAAA,EAAA,eAAA,EAAA,WAAA,EAAA,aAAA,EAAA,CAAA,EAAA,OAAA,EAAA,WAAA,EAAA,eAAA,EAAA,SAAA,EAAA,WAAA,EAAA,MAAA,EAAA,QAAA,EAAA,aAAA,CAAA,EAAA,CAAA,eAAA,EAAA,EAAA,CAAA,EAAA,CAAA,OAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,CAAA,CAAA,EAAA,aAAA,CAAA,EAAA,CAAA,CAAA,EAAA,mBAAA,EAAA,SAAA,CAAA,EAAA,CAAA,CAAA,EAAA,mBAAA,EAAA,QAAA,CAAA,CAAA,EAAA,QAAA,EAAA,SAAA,4BAAA,CAAA,EAAA,EAAA,GAAA,EAAA,EAAA,IAAA,EAAA,GAAA,CAAA,EAAA;QDtBH,EAWG,CAAA,cAAA,CAAA,CAAA,EAAA,WAAA,EAAA,CAAA,CAAA,CAAA;AAHD,QAAA,EAAA,CAAA,UAAA,CAAA,MAAA,EAAA,SAAA,sDAAA,GAAA,EAAA,OAAQ,YAAQ,CAAC,EAAA,CAAA,CAAA,QAAA,EAAA,SAAA,wDAAA,CAAA,MAAA,EAAA,EAAA,OACP,oBAAgB,CADT,EAAA,CAAA,CAAA,aAAA,EAAA,SAAA,6DAAA,GAAA,EAAA,OAEF,mBAAe,CAFb,EAAA,CAAA,CAAA;QAIjB,EAEc,CAAA,UAAA,CAAA,CAAA,EAAA,0CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,CAAA,CAAA,CAAA;QACd,EAMc,CAAA,UAAA,CAAA,CAAA,EAAA,0CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,CAAA,CAAA,CAAA;QAChB,EAAY,CAAA,YAAA,EAAA,CAAA;;QAtBD,EAAe,CAAA,UAAA,CAAA,OAAA,EAAA,GAAA,CAAA,KAAA,CAAA,CAAA,WAAA,EAAA,GAAA,CAAA,WAAA,CAAA,CAAA,eAAA,EAAA,IAAA,CAAA,CAAA,SAAA,EAAA,GAAA,CAAA,OAAA,CAAA,CAAA,WAAA,EAAA,GAAA,CAAA,aAAA,CAAA,CAAA;;uFCwBb,mBAAmB,EAAA,CAAA;cAd/B,SAAS;AACE,QAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,kBAAkB,EAKjB,SAAA,EAAA;AACT,oBAAA;AACE,wBAAA,OAAO,EAAE,iBAAiB;AAC1B,wBAAA,KAAK,EAAE,IAAI;AACX,wBAAA,WAAW,EAAE,UAAU,CAAC,yBAAyB,CAAC;AACnD,qBAAA;AACF,iBAAA,EAAA,QAAA,EAAA,m3BAAA,EAAA,MAAA,EAAA,CAAA,0QAAA,CAAA,EAAA,CAAA;+DAqBD,UAAU,EAAA,CAAA;kBADT,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA,iBAAiB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;;;MCRnC,cAAc,CAAA;;4EAAd,cAAc,GAAA,CAAA,EAAA,CAAA;gEAAd,cAAc,EAAA,CAAA,CAAA;oEAnBvB,YAAY;QACZ,WAAW;QACX,mBAAmB;QACnB,eAAe;QACf,qBAAqB;QACrB,eAAe;QACf,kBAAkB;QAClB,cAAc;QACd,aAAa;QACb,eAAe;QACf,cAAc,CAAA,EAAA,CAAA,CAAA;uFASL,cAAc,EAAA,CAAA;cArB1B,QAAQ;AAAC,QAAA,IAAA,EAAA,CAAA;AACR,gBAAA,OAAO,EAAE;oBACP,YAAY;oBACZ,WAAW;oBACX,mBAAmB;oBACnB,eAAe;oBACf,qBAAqB;oBACrB,eAAe;oBACf,kBAAkB;oBAClB,cAAc;oBACd,aAAa;oBACb,eAAe;oBACf,cAAc;AACf,iBAAA;AACD,gBAAA,YAAY,EAAE;oBACZ,mBAAmB;AACpB,iBAAA;AACD,gBAAA,OAAO,EAAE;oBACP,mBAAmB;AACpB,iBAAA;AACF,aAAA,CAAA;;wFACY,cAAc,EAAA,EAAA,YAAA,EAAA,CANvB,mBAAmB,CAAA,EAAA,OAAA,EAAA,CAbnB,YAAY;QACZ,WAAW;QACX,mBAAmB;QACnB,eAAe;QACf,qBAAqB;QACrB,eAAe;QACf,kBAAkB;QAClB,cAAc;QACd,aAAa;QACb,eAAe;AACf,QAAA,cAAc,aAMd,mBAAmB,CAAA,EAAA,CAAA,CAAA,EAAA,GAAA;;AC/BvB;;AAEG;;;;"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { NgModule } from '@angular/core';
|
|
3
|
+
import { CommonModule } from '@angular/common';
|
|
4
|
+
|
|
5
|
+
class MageCoreLibModule {
|
|
6
|
+
}
|
|
7
|
+
MageCoreLibModule.ɵfac = function MageCoreLibModule_Factory(t) { return new (t || MageCoreLibModule)(); };
|
|
8
|
+
MageCoreLibModule.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: MageCoreLibModule });
|
|
9
|
+
MageCoreLibModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule] });
|
|
10
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MageCoreLibModule, [{
|
|
11
|
+
type: NgModule,
|
|
12
|
+
args: [{
|
|
13
|
+
declarations: [],
|
|
14
|
+
imports: [
|
|
15
|
+
CommonModule
|
|
16
|
+
]
|
|
17
|
+
}]
|
|
18
|
+
}], null, null); })();
|
|
19
|
+
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(MageCoreLibModule, { imports: [CommonModule] }); })();
|
|
20
|
+
|
|
21
|
+
/*
|
|
22
|
+
* Public API Surface of core-lib
|
|
23
|
+
*/
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Generated bundle index. Do not edit.
|
|
27
|
+
*/
|
|
28
|
+
|
|
29
|
+
export { MageCoreLibModule };
|
|
30
|
+
//# sourceMappingURL=ngageoint-mage.web-core-lib.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ngageoint-mage.web-core-lib.mjs","sources":["../../../projects/core-lib/src/mage-core-lib.module.ts","../../../projects/core-lib/src/public-api.ts","../../../projects/core-lib/src/ngageoint-mage.web-core-lib.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n\n\n@NgModule({\n declarations: [],\n imports: [\n CommonModule\n ]\n})\nexport class MageCoreLibModule { }\n","/*\n * Public API Surface of core-lib\n */\n\nexport * from './mage-core-lib.module'\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;MAWa,iBAAiB,CAAA;;kFAAjB,iBAAiB,GAAA,CAAA,EAAA,CAAA;mEAAjB,iBAAiB,EAAA,CAAA,CAAA;uEAH1B,YAAY,CAAA,EAAA,CAAA,CAAA;uFAGH,iBAAiB,EAAA,CAAA;cAN7B,QAAQ;AAAC,QAAA,IAAA,EAAA,CAAA;AACR,gBAAA,YAAY,EAAE,EAAE;AAChB,gBAAA,OAAO,EAAE;oBACP,YAAY;AACb,iBAAA;AACF,aAAA,CAAA;;AACY,CAAA,YAAA,EAAA,CAAA,OAAA,SAAA,KAAA,WAAA,IAAA,SAAA,KAAA,EAAA,CAAA,kBAAA,CAAA,iBAAiB,cAH1B,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA,GAAA;;ACRhB;;AAEG;;ACFH;;AAEG;;;;"}
|
package/index.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as i0 from "@angular/core";
|
|
2
|
+
import * as i1 from "@angular/common";
|
|
3
|
+
export declare class MageCoreLibModule {
|
|
4
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<MageCoreLibModule, never>;
|
|
5
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<MageCoreLibModule, never, [typeof i1.CommonModule], never>;
|
|
6
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<MageCoreLibModule>;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=mage-core-lib.module.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mage-core-lib.module.d.ts","sourceRoot":"","sources":["../../projects/core-lib/src/mage-core-lib.module.ts"],"names":[],"mappings":";;AAKA,qBAMa,iBAAiB;yCAAjB,iBAAiB;0CAAjB,iBAAiB;0CAAjB,iBAAiB;CAAI"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ngageoint-mage.web-core-lib.d.ts","sourceRoot":"","sources":["../../projects/core-lib/src/ngageoint-mage.web-core-lib.ts"],"names":[],"mappings":"AAAA;;GAEG;;AAEH,cAAc,cAAc,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@ngageoint/mage.web-core-lib",
|
|
3
|
+
"version": "6.3.0-beta.0",
|
|
4
|
+
"repository": {
|
|
5
|
+
"type": "git",
|
|
6
|
+
"url": "https://github.com/ngageoint/mage-server.git"
|
|
7
|
+
},
|
|
8
|
+
"peerDependencies": {
|
|
9
|
+
"@angular/animations": "^14.2.12",
|
|
10
|
+
"@angular/cdk": "^14.2.7",
|
|
11
|
+
"@angular/common": "^14.2.12",
|
|
12
|
+
"@angular/core": "^14.2.12",
|
|
13
|
+
"@angular/forms": "^14.2.12",
|
|
14
|
+
"@angular/material": "^14.2.7",
|
|
15
|
+
"@angular/platform-browser": "^14.2.12",
|
|
16
|
+
"@ng-select/ng-select": "9.1.0",
|
|
17
|
+
"rxjs": "~7.6.0"
|
|
18
|
+
},
|
|
19
|
+
"dependencies": {
|
|
20
|
+
"@types/geojson": "^7946.0.7",
|
|
21
|
+
"tslib": "^2.0.0"
|
|
22
|
+
},
|
|
23
|
+
"module": "fesm2015/ngageoint-mage.web-core-lib.mjs",
|
|
24
|
+
"es2020": "fesm2020/ngageoint-mage.web-core-lib.mjs",
|
|
25
|
+
"esm2020": "esm2020/ngageoint-mage.web-core-lib.mjs",
|
|
26
|
+
"fesm2020": "fesm2020/ngageoint-mage.web-core-lib.mjs",
|
|
27
|
+
"fesm2015": "fesm2015/ngageoint-mage.web-core-lib.mjs",
|
|
28
|
+
"typings": "index.d.ts",
|
|
29
|
+
"exports": {
|
|
30
|
+
"./package.json": {
|
|
31
|
+
"default": "./package.json"
|
|
32
|
+
},
|
|
33
|
+
".": {
|
|
34
|
+
"types": "./index.d.ts",
|
|
35
|
+
"esm2020": "./esm2020/ngageoint-mage.web-core-lib.mjs",
|
|
36
|
+
"es2020": "./fesm2020/ngageoint-mage.web-core-lib.mjs",
|
|
37
|
+
"es2015": "./fesm2015/ngageoint-mage.web-core-lib.mjs",
|
|
38
|
+
"node": "./fesm2015/ngageoint-mage.web-core-lib.mjs",
|
|
39
|
+
"default": "./fesm2020/ngageoint-mage.web-core-lib.mjs"
|
|
40
|
+
},
|
|
41
|
+
"./common": {
|
|
42
|
+
"types": "./common/index.d.ts",
|
|
43
|
+
"esm2020": "./esm2020/common/ngageoint-mage.web-core-lib-common.mjs",
|
|
44
|
+
"es2020": "./fesm2020/ngageoint-mage.web-core-lib-common.mjs",
|
|
45
|
+
"es2015": "./fesm2015/ngageoint-mage.web-core-lib-common.mjs",
|
|
46
|
+
"node": "./fesm2015/ngageoint-mage.web-core-lib-common.mjs",
|
|
47
|
+
"default": "./fesm2020/ngageoint-mage.web-core-lib-common.mjs"
|
|
48
|
+
},
|
|
49
|
+
"./event": {
|
|
50
|
+
"types": "./event/index.d.ts",
|
|
51
|
+
"esm2020": "./esm2020/event/ngageoint-mage.web-core-lib-event.mjs",
|
|
52
|
+
"es2020": "./fesm2020/ngageoint-mage.web-core-lib-event.mjs",
|
|
53
|
+
"es2015": "./fesm2015/ngageoint-mage.web-core-lib-event.mjs",
|
|
54
|
+
"node": "./fesm2015/ngageoint-mage.web-core-lib-event.mjs",
|
|
55
|
+
"default": "./fesm2020/ngageoint-mage.web-core-lib-event.mjs"
|
|
56
|
+
},
|
|
57
|
+
"./feed": {
|
|
58
|
+
"types": "./feed/index.d.ts",
|
|
59
|
+
"esm2020": "./esm2020/feed/ngageoint-mage.web-core-lib-feed.mjs",
|
|
60
|
+
"es2020": "./fesm2020/ngageoint-mage.web-core-lib-feed.mjs",
|
|
61
|
+
"es2015": "./fesm2015/ngageoint-mage.web-core-lib-feed.mjs",
|
|
62
|
+
"node": "./fesm2015/ngageoint-mage.web-core-lib-feed.mjs",
|
|
63
|
+
"default": "./fesm2020/ngageoint-mage.web-core-lib-feed.mjs"
|
|
64
|
+
},
|
|
65
|
+
"./paging": {
|
|
66
|
+
"types": "./paging/index.d.ts",
|
|
67
|
+
"esm2020": "./esm2020/paging/ngageoint-mage.web-core-lib-paging.mjs",
|
|
68
|
+
"es2020": "./fesm2020/ngageoint-mage.web-core-lib-paging.mjs",
|
|
69
|
+
"es2015": "./fesm2015/ngageoint-mage.web-core-lib-paging.mjs",
|
|
70
|
+
"node": "./fesm2015/ngageoint-mage.web-core-lib-paging.mjs",
|
|
71
|
+
"default": "./fesm2020/ngageoint-mage.web-core-lib-paging.mjs"
|
|
72
|
+
},
|
|
73
|
+
"./plugin": {
|
|
74
|
+
"types": "./plugin/index.d.ts",
|
|
75
|
+
"esm2020": "./esm2020/plugin/ngageoint-mage.web-core-lib-plugin.mjs",
|
|
76
|
+
"es2020": "./fesm2020/ngageoint-mage.web-core-lib-plugin.mjs",
|
|
77
|
+
"es2015": "./fesm2015/ngageoint-mage.web-core-lib-plugin.mjs",
|
|
78
|
+
"node": "./fesm2015/ngageoint-mage.web-core-lib-plugin.mjs",
|
|
79
|
+
"default": "./fesm2020/ngageoint-mage.web-core-lib-plugin.mjs"
|
|
80
|
+
},
|
|
81
|
+
"./static-icon": {
|
|
82
|
+
"types": "./static-icon/index.d.ts",
|
|
83
|
+
"esm2020": "./esm2020/static-icon/ngageoint-mage.web-core-lib-static-icon.mjs",
|
|
84
|
+
"es2020": "./fesm2020/ngageoint-mage.web-core-lib-static-icon.mjs",
|
|
85
|
+
"es2015": "./fesm2015/ngageoint-mage.web-core-lib-static-icon.mjs",
|
|
86
|
+
"node": "./fesm2015/ngageoint-mage.web-core-lib-static-icon.mjs",
|
|
87
|
+
"default": "./fesm2020/ngageoint-mage.web-core-lib-static-icon.mjs"
|
|
88
|
+
},
|
|
89
|
+
"./user": {
|
|
90
|
+
"types": "./user/index.d.ts",
|
|
91
|
+
"esm2020": "./esm2020/user/ngageoint-mage.web-core-lib-user.mjs",
|
|
92
|
+
"es2020": "./fesm2020/ngageoint-mage.web-core-lib-user.mjs",
|
|
93
|
+
"es2015": "./fesm2015/ngageoint-mage.web-core-lib-user.mjs",
|
|
94
|
+
"node": "./fesm2015/ngageoint-mage.web-core-lib-user.mjs",
|
|
95
|
+
"default": "./fesm2020/ngageoint-mage.web-core-lib-user.mjs"
|
|
96
|
+
}
|
|
97
|
+
},
|
|
98
|
+
"sideEffects": false,
|
|
99
|
+
"scripts": {
|
|
100
|
+
"prepublishOnly": "node --eval \"console.error('ERROR: Trying to publish a package that has been compiled by Ivy in full compilation mode. This is not allowed.\\nPlease delete and rebuild the package with Ivy partial compilation mode, before attempting to publish.\\n')\" && exit 1"
|
|
101
|
+
}
|
|
102
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ngageoint-mage.web-core-lib-paging.d.ts","sourceRoot":"","sources":["../../../projects/core-lib/paging/ngageoint-mage.web-core-lib-paging.ts"],"names":[],"mappings":"AAAA;;GAEG;;AAEH,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { CollectionViewer, DataSource } from '@angular/cdk/collections';
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
|
+
import { PageOf, PagingParameters } 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 declare class PagingDataSource<T> extends DataSource<T> {
|
|
9
|
+
private pageSize;
|
|
10
|
+
private fetchPage;
|
|
11
|
+
private data;
|
|
12
|
+
private data$;
|
|
13
|
+
private fetchedPages;
|
|
14
|
+
private subscription;
|
|
15
|
+
constructor(pageSize: number, fetchPage: (paging: PagingParameters) => Observable<PageOf<T>>);
|
|
16
|
+
connect(collectionViewer: CollectionViewer): Observable<T[]>;
|
|
17
|
+
disconnect(): void;
|
|
18
|
+
private pageForItemIndex;
|
|
19
|
+
private fetch;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=paging.cdk-data-source.adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paging.cdk-data-source.adapter.d.ts","sourceRoot":"","sources":["../../../projects/core-lib/paging/paging.cdk-data-source.adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACvE,OAAO,EAAmB,UAAU,EAAgB,MAAM,MAAM,CAAA;AAChE,OAAO,EAAoB,MAAM,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAE3E;;;GAGG;AACH,qBAAa,gBAAgB,CAAC,CAAC,CAAE,SAAQ,UAAU,CAAC,CAAC,CAAC;IAOxC,OAAO,CAAC,QAAQ;IAAU,OAAO,CAAC,SAAS;IALvD,OAAO,CAAC,IAAI,CAAmB;IAC/B,OAAO,CAAC,KAAK,CAA+B;IAC5C,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,YAAY,CAAqB;gBAErB,QAAQ,EAAE,MAAM,EAAU,SAAS,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAI5G,OAAO,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,UAAU,CAAC,CAAC,EAAE,CAAC;IAW5D,UAAU,IAAI,IAAI;IAIlB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,KAAK;CAiBd"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export interface PagingParameters {
|
|
2
|
+
pageSize: number;
|
|
3
|
+
pageIndex: number;
|
|
4
|
+
includeTotalCount?: boolean | null;
|
|
5
|
+
}
|
|
6
|
+
export interface PageOf<T> {
|
|
7
|
+
pageSize: number;
|
|
8
|
+
pageIndex: number;
|
|
9
|
+
totalCount?: number | null;
|
|
10
|
+
next?: PagingParameters | null;
|
|
11
|
+
prev?: PagingParameters | null;
|
|
12
|
+
items: T[];
|
|
13
|
+
}
|
|
14
|
+
export declare const pageForItemIndex: (itemIndex: number, pageSize: number | PagingParameters) => number;
|
|
15
|
+
/**
|
|
16
|
+
* Return the range of item indexes for the given page and page size. The last
|
|
17
|
+
* end portion of the range is exclusive, so when indexing an array the last
|
|
18
|
+
* item of the page would have position `end - 1`. This allows one to pass the
|
|
19
|
+
* values to `Array.slice()`.
|
|
20
|
+
* @param pageIndex
|
|
21
|
+
* @param pageSize
|
|
22
|
+
* @returns
|
|
23
|
+
*/
|
|
24
|
+
export declare const itemRangeOfPage: {
|
|
25
|
+
(pageIndex: number, pageSize: number): [number, number];
|
|
26
|
+
(paging: PagingParameters): any;
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=paging.model.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paging.model.d.ts","sourceRoot":"","sources":["../../../projects/core-lib/paging/paging.model.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,OAAO,GAAG,IAAI,CAAA;CACnC;AAED,MAAM,WAAW,MAAM,CAAC,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,IAAI,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAA;IAC9B,IAAI,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAA;IAC9B,KAAK,EAAE,CAAC,EAAE,CAAA;CACX;AAED,eAAO,MAAM,gBAAgB,cAAe,MAAM,YAAY,MAAM,GAAG,gBAAgB,KAAG,MAKzF,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,eAAe,EAAE;IAC5B,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,CAAE,MAAM,EAAE,MAAM,CAAE,CAAA;IACzD,CAAC,MAAM,EAAE,gBAAgB,OAAC;CAS3B,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"public-api.d.ts","sourceRoot":"","sources":["../../../projects/core-lib/paging/public-api.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,kCAAkC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ngageoint-mage.web-core-lib-plugin.d.ts","sourceRoot":"","sources":["../../../projects/core-lib/plugin/ngageoint-mage.web-core-lib-plugin.ts"],"names":[],"mappings":"AAAA;;GAEG;;AAEH,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Type } from '@angular/core';
|
|
2
|
+
export interface PluginHooks {
|
|
3
|
+
module: Type<unknown>;
|
|
4
|
+
adminTab?: {
|
|
5
|
+
title: string;
|
|
6
|
+
icon?: {
|
|
7
|
+
path: string;
|
|
8
|
+
} | {
|
|
9
|
+
className: string;
|
|
10
|
+
} | null | undefined;
|
|
11
|
+
tabContentComponent: Type<unknown>;
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=plugin.model.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin.model.d.ts","sourceRoot":"","sources":["../../../projects/core-lib/plugin/plugin.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AAEpC,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;IACrB,QAAQ,CAAC,EAAE;QACT,KAAK,EAAE,MAAM,CAAA;QACb,IAAI,CAAC,EAAE;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,GAAG;YAAE,SAAS,EAAE,MAAM,CAAA;SAAE,GAAG,IAAI,GAAG,SAAS,CAAA;QAClE,mBAAmB,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;KACnC,CAAA;CACF"}
|