@recursyve/ngx-material-components 18.0.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/esm2022/index.mjs +14 -0
- package/esm2022/recursyve-ngx-material-components.mjs +5 -0
- package/esm2022/typeahead/async-typeahead.mjs +112 -0
- package/esm2022/typeahead/constants.mjs +3 -0
- package/esm2022/typeahead/index.mjs +5 -0
- package/esm2022/typeahead/provider.mjs +9 -0
- package/esm2022/typeahead/providers/async-typeahead.provider.mjs +3 -0
- package/esm2022/typeahead/providers/async-typeahead.service.mjs +129 -0
- package/esm2022/typeahead/providers/index.mjs +3 -0
- package/esm2022/typeahead/recursyve-ngx-material-components-typeahead.mjs +5 -0
- package/esm2022/typeahead/typeahead-base.mjs +456 -0
- package/esm2022/typeahead/typeahead.mjs +79 -0
- package/fesm2022/recursyve-ngx-material-components-typeahead.mjs +772 -0
- package/fesm2022/recursyve-ngx-material-components-typeahead.mjs.map +1 -0
- package/fesm2022/recursyve-ngx-material-components.mjs +20 -0
- package/fesm2022/recursyve-ngx-material-components.mjs.map +1 -0
- package/index.d.ts +8 -0
- package/package.json +31 -0
- package/typeahead/async-typeahead.d.ts +23 -0
- package/typeahead/constants.d.ts +2 -0
- package/typeahead/index.d.ts +4 -0
- package/typeahead/provider.d.ts +3 -0
- package/typeahead/providers/async-typeahead.provider.d.ts +11 -0
- package/typeahead/providers/async-typeahead.service.d.ts +39 -0
- package/typeahead/providers/index.d.ts +2 -0
- package/typeahead/typeahead-base.d.ts +99 -0
- package/typeahead/typeahead.d.ts +12 -0
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
7
|
+
*/
|
|
8
|
+
// primary entry-point which is empty as of version 9. All components should
|
|
9
|
+
// be imported through their individual entry-points. This file is needed to
|
|
10
|
+
// satisfy the "ng_package" bazel rule which also requires a primary entry-point.
|
|
11
|
+
// Workaround for: https://github.com/microsoft/rushstack/issues/2806.
|
|
12
|
+
// This is a private export that can be removed at any time.
|
|
13
|
+
export const ɵɵtsModuleIndicatorApiExtractorWorkaround = true;
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbWF0ZXJpYWwtY29tcG9uZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFFSCw0RUFBNEU7QUFDNUUsNEVBQTRFO0FBQzVFLGlGQUFpRjtBQUVqRixzRUFBc0U7QUFDdEUsNERBQTREO0FBQzVELE1BQU0sQ0FBQyxNQUFNLHlDQUF5QyxHQUFHLElBQUksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmRldi9saWNlbnNlXG4gKi9cblxuLy8gcHJpbWFyeSBlbnRyeS1wb2ludCB3aGljaCBpcyBlbXB0eSBhcyBvZiB2ZXJzaW9uIDkuIEFsbCBjb21wb25lbnRzIHNob3VsZFxuLy8gYmUgaW1wb3J0ZWQgdGhyb3VnaCB0aGVpciBpbmRpdmlkdWFsIGVudHJ5LXBvaW50cy4gVGhpcyBmaWxlIGlzIG5lZWRlZCB0b1xuLy8gc2F0aXNmeSB0aGUgXCJuZ19wYWNrYWdlXCIgYmF6ZWwgcnVsZSB3aGljaCBhbHNvIHJlcXVpcmVzIGEgcHJpbWFyeSBlbnRyeS1wb2ludC5cblxuLy8gV29ya2Fyb3VuZCBmb3I6IGh0dHBzOi8vZ2l0aHViLmNvbS9taWNyb3NvZnQvcnVzaHN0YWNrL2lzc3Vlcy8yODA2LlxuLy8gVGhpcyBpcyBhIHByaXZhdGUgZXhwb3J0IHRoYXQgY2FuIGJlIHJlbW92ZWQgYXQgYW55IHRpbWUuXG5leHBvcnQgY29uc3QgybXJtXRzTW9kdWxlSW5kaWNhdG9yQXBpRXh0cmFjdG9yV29ya2Fyb3VuZCA9IHRydWU7XG4iXX0=
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './index';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjdXJzeXZlLW5neC1tYXRlcmlhbC1jb21wb25lbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL21hdGVyaWFsLWNvbXBvbmVudHMvcmVjdXJzeXZlLW5neC1tYXRlcmlhbC1jb21wb25lbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { CdkConnectedOverlay, CdkOverlayOrigin } from "@angular/cdk/overlay";
|
|
2
|
+
import { ChangeDetectionStrategy, Component, computed, effect, inject, input, viewChild, ViewEncapsulation } from "@angular/core";
|
|
3
|
+
import { ReactiveFormsModule } from "@angular/forms";
|
|
4
|
+
import { MatIconButton } from "@angular/material/button";
|
|
5
|
+
import { MatOption } from "@angular/material/core";
|
|
6
|
+
import { MatFormField, MatFormFieldControl } from "@angular/material/form-field";
|
|
7
|
+
import { MatInput } from "@angular/material/input";
|
|
8
|
+
import { matSelectAnimations } from "@angular/material/select";
|
|
9
|
+
import { NiceTypeaheadBase } from "./typeahead-base";
|
|
10
|
+
import { NiceTypeaheadService } from "./providers";
|
|
11
|
+
import * as i0 from "@angular/core";
|
|
12
|
+
import * as i1 from "@angular/forms";
|
|
13
|
+
export class NiceAsyncTypeahead extends NiceTypeaheadBase {
|
|
14
|
+
resource = input.required();
|
|
15
|
+
filteredValues = computed(() => this.service.items());
|
|
16
|
+
optionsContainer = viewChild("optionsContainer");
|
|
17
|
+
service = inject(NiceTypeaheadService);
|
|
18
|
+
_compareWith = (o1, o2) => {
|
|
19
|
+
if (!(typeof o1 === "object" && o1 && typeof o2 === "object" && o2)) {
|
|
20
|
+
return o1 === o2;
|
|
21
|
+
}
|
|
22
|
+
if (!("id" in o1) || !("id" in o2)) {
|
|
23
|
+
return o1 === o2;
|
|
24
|
+
}
|
|
25
|
+
return o1.id === o2.id;
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* Infinite scroll internal state
|
|
29
|
+
*/
|
|
30
|
+
scrollThresholdPercent = 0.99;
|
|
31
|
+
lastScrollHeight = 0;
|
|
32
|
+
constructor() {
|
|
33
|
+
super();
|
|
34
|
+
effect(() => this.service.search(this._searchValue()), {
|
|
35
|
+
allowSignalWrites: true
|
|
36
|
+
});
|
|
37
|
+
effect(() => {
|
|
38
|
+
const container = this.optionsContainer();
|
|
39
|
+
if (!container) {
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
container.nativeElement.addEventListener("scroll", this.onScroll.bind(this));
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
ngOnInit() {
|
|
46
|
+
super.ngOnInit();
|
|
47
|
+
this.service.init(this.resource());
|
|
48
|
+
}
|
|
49
|
+
onFocusChanged(isFocused) {
|
|
50
|
+
super.onFocusChanged(isFocused);
|
|
51
|
+
if (isFocused) {
|
|
52
|
+
this._searchControl.patchValue("");
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
formatLabel(item) {
|
|
56
|
+
return this.service.formatLabel(item);
|
|
57
|
+
}
|
|
58
|
+
removeActiveValue() {
|
|
59
|
+
super.removeActiveValue();
|
|
60
|
+
this.service.setActive(null);
|
|
61
|
+
}
|
|
62
|
+
onScroll(event) {
|
|
63
|
+
const target = event.target;
|
|
64
|
+
const threshold = (this.scrollThresholdPercent * 100 * target.scrollHeight) / 100;
|
|
65
|
+
const current = target.scrollTop + target.clientHeight;
|
|
66
|
+
if (this.lastScrollHeight > target.scrollHeight) {
|
|
67
|
+
this.lastScrollHeight = 0;
|
|
68
|
+
}
|
|
69
|
+
if (current > threshold && this.lastScrollHeight < target.scrollHeight) {
|
|
70
|
+
this.service.loadMore();
|
|
71
|
+
this.lastScrollHeight = target.scrollHeight;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NiceAsyncTypeahead, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
75
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: NiceAsyncTypeahead, isStandalone: true, selector: "nice-async-typeahead", inputs: { resource: { classPropertyName: "resource", publicName: "resource", isSignal: true, isRequired: true, transformFunction: null } }, host: { attributes: { "role": "combobox", "aria-haspopup": "listbox" }, listeners: { "keydown": "_handleKeydown($event)", "focus": "onFocusChanged(true)", "blur": "onFocusChanged(false)" }, properties: { "attr.id": "id", "attr.aria-controls": "panelOpen ? id + \"-panel\" : null", "attr.aria-expanded": "panelOpen", "attr.aria-required": "required.toString()", "attr.aria-disabled": "disabled.toString()", "attr.aria-invalid": "errorState", "class.nice-typeahead-disabled": "disabled", "class.nice-typeahead-invalid": "errorState", "class.nice-typeahead-required": "required", "class.nice-typeahead-empty": "empty" }, classAttribute: "nice-typeahead" }, providers: [
|
|
76
|
+
{ provide: MatFormFieldControl, useExisting: NiceAsyncTypeahead },
|
|
77
|
+
NiceTypeaheadService
|
|
78
|
+
], viewQueries: [{ propertyName: "optionsContainer", first: true, predicate: ["optionsContainer"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div\n #fallbackOverlayOrigin=\"cdkOverlayOrigin\"\n class=\"nice-typeahead\"\n cdk-overlay-origin\n>\n <div class=\"nice-typeahead-value\">\n @if (_empty()) {\n <span class=\"nice-typeahead-placeholder mat-mdc-select-min-line\">{{ _placeholder() }}</span>\n } @else {\n <span class=\"nice-typeahead-value-text\">\n <span class=\"mat-mdc-select-min-line\">\n @if (_value(); as activeValue) {\n {{ formatLabel(activeValue) }}\n }\n </span>\n </span>\n }\n </div>\n\n <div class=\"nice-typeahead-suffix\">\n @if (_empty()) {\n <div class=\"mat-mdc-select-arrow\">\n <svg viewBox=\"0 0 24 24\" width=\"24px\" height=\"24px\" focusable=\"false\" aria-hidden=\"true\">\n <path d=\"M7 10l5 5 5-5z\"></path>\n </svg>\n </div>\n } @else {\n <button class=\"nice-typeahead-remove\" mat-icon-button (click)=\"$event.stopPropagation(); removeActiveValue()\">\n <svg viewBox=\"0 -960 960 960\">\n <path d=\"m291-240-51-51 189-189-189-189 51-51 189 189 189-189 51 51-189 189 189 189-51 51-189-189-189 189Z\"/>\n </svg>\n </button>\n }\n </div>\n</div>\n\n<ng-template\n cdk-connected-overlay\n cdkConnectedOverlayLockPosition\n cdkConnectedOverlayHasBackdrop\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n [cdkConnectedOverlayWidth]=\"_overlayWidth\"\n [cdkConnectedOverlayOrigin]=\"_preferredOverlayOrigin || fallbackOverlayOrigin\"\n (attach)=\"_onAttached()\"\n (backdropClick)=\"close()\"\n (detach)=\"close()\"\n>\n <div\n #panel\n role=\"listbox\"\n tabindex=\"-1\"\n class=\"nice-typeahead-panel nice-typeahead--open\"\n [attr.id]=\"id + '-panel'\"\n [@transformPanel]=\"'showing'\"\n (@transformPanel.done)=\"_panelDoneAnimatingStream.next($event.toState)\"\n (keydown)=\"_handleKeydown($event)\"\n (scrollend)=\"_handleScrollEnd()\"\n >\n <div class=\"nice-typeahead-search-input\">\n <mat-form-field appearance=\"outline\" subscriptSizing=\"dynamic\">\n <input\n #input\n class=\"nice-typeahead__input\"\n matInput\n [formControl]=\"_searchControl\"\n >\n </mat-form-field>\n </div>\n\n <div #optionsContainer class=\"nice-typeahead-options\" role=\"presentation\">\n @for (item of filteredValues(); track item) {\n <mat-option [value]=\"item\">\n {{ formatLabel(item) }}\n </mat-option>\n } @empty {\n <mat-option disabled>\n <span class=\"nice-typeahead__no-items\">No items found</span>\n </mat-option>\n }\n </div>\n </div>\n</ng-template>\n", styles: ["nice-typeahead,nice-async-typeahead{display:inline-block;width:100%;outline:none;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;color:var(--mat-select-enabled-trigger-text-color, var(--mat-app-on-surface));font-family:var(--mat-select-trigger-text-font, var(--mat-app-body-large-font));line-height:var(--mat-select-trigger-text-line-height, var(--mat-app-body-large-line-height));font-size:var(--mat-select-trigger-text-size, var(--mat-app-body-large-size));font-weight:var(--mat-select-trigger-text-weight, var(--mat-app-body-large-weight));letter-spacing:var(--mat-select-trigger-text-tracking, var(--mat-app-body-large-tracking))}nice-typeahead .nice-typeahead,nice-async-typeahead .nice-typeahead{width:100%;display:inline-flex;align-items:center;justify-content:space-between;cursor:pointer;position:relative;box-sizing:border-box}nice-typeahead .nice-typeahead-suffix,nice-async-typeahead .nice-typeahead-suffix{height:24px;flex-shrink:0;display:inline-flex;align-items:center;--mdc-icon-button-state-layer-size: 24px}nice-typeahead .nice-typeahead-suffix .nice-typeahead-remove,nice-async-typeahead .nice-typeahead-suffix .nice-typeahead-remove{margin-right:-6px}nice-typeahead .nice-typeahead-value,nice-async-typeahead .nice-typeahead-value{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}nice-typeahead .nice-typeahead-value-text,nice-async-typeahead .nice-typeahead-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}nice-typeahead .mat-mdc-select-min-line:empty:before,nice-async-typeahead .mat-mdc-select-min-line:empty:before{content:\" \";white-space:pre;width:1px;display:inline-block;visibility:hidden}nice-typeahead .nice-typeahead__input,nice-async-typeahead .nice-typeahead__input{border:none;outline:none;box-shadow:none;background:none;padding:0;margin:0;color:inherit}.mat-mdc-form-field-type-nice-typeahead:not(.mat-form-field-disabled) .mat-mdc-text-field-wrapper{cursor:pointer}.mat-mdc-form-field-type-nice-typeahead.mat-form-field-appearance-outline .mdc-notched-outline__notch{max-width:calc(100% - 60px)}div.nice-typeahead-panel{width:100%;outline:0;padding:8px 0;border-radius:4px;box-sizing:border-box;position:static;background-color:var(--mat-select-panel-background-color, var(--mat-app-surface-container))}div.nice-typeahead-panel .nice-typeahead-search-input{padding-left:8px;padding-right:8px;padding-bottom:8px}div.nice-typeahead-panel .nice-typeahead-search-input .mat-mdc-form-field-infix{width:100%}div.nice-typeahead-panel .nice-typeahead-options{overflow:auto;max-height:384px}div.nice-typeahead-panel{box-shadow:var(--mat-select-container-elevation-shadow)}\n"], dependencies: [{ kind: "directive", type: CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "directive", type: CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }], animations: [matSelectAnimations.transformPanel], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
79
|
+
}
|
|
80
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NiceAsyncTypeahead, decorators: [{
|
|
81
|
+
type: Component,
|
|
82
|
+
args: [{ selector: "nice-async-typeahead", standalone: true, imports: [
|
|
83
|
+
CdkOverlayOrigin,
|
|
84
|
+
CdkConnectedOverlay,
|
|
85
|
+
ReactiveFormsModule,
|
|
86
|
+
MatOption,
|
|
87
|
+
MatFormField,
|
|
88
|
+
MatInput,
|
|
89
|
+
MatIconButton
|
|
90
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, animations: [matSelectAnimations.transformPanel], providers: [
|
|
91
|
+
{ provide: MatFormFieldControl, useExisting: NiceAsyncTypeahead },
|
|
92
|
+
NiceTypeaheadService
|
|
93
|
+
], host: {
|
|
94
|
+
"role": "combobox",
|
|
95
|
+
"aria-haspopup": "listbox",
|
|
96
|
+
"class": "nice-typeahead",
|
|
97
|
+
"[attr.id]": "id",
|
|
98
|
+
"[attr.aria-controls]": "panelOpen ? id + \"-panel\" : null",
|
|
99
|
+
"[attr.aria-expanded]": "panelOpen",
|
|
100
|
+
"[attr.aria-required]": "required.toString()",
|
|
101
|
+
"[attr.aria-disabled]": "disabled.toString()",
|
|
102
|
+
"[attr.aria-invalid]": "errorState",
|
|
103
|
+
"[class.nice-typeahead-disabled]": "disabled",
|
|
104
|
+
"[class.nice-typeahead-invalid]": "errorState",
|
|
105
|
+
"[class.nice-typeahead-required]": "required",
|
|
106
|
+
"[class.nice-typeahead-empty]": "empty",
|
|
107
|
+
"(keydown)": "_handleKeydown($event)",
|
|
108
|
+
"(focus)": "onFocusChanged(true)",
|
|
109
|
+
"(blur)": "onFocusChanged(false)"
|
|
110
|
+
}, template: "<div\n #fallbackOverlayOrigin=\"cdkOverlayOrigin\"\n class=\"nice-typeahead\"\n cdk-overlay-origin\n>\n <div class=\"nice-typeahead-value\">\n @if (_empty()) {\n <span class=\"nice-typeahead-placeholder mat-mdc-select-min-line\">{{ _placeholder() }}</span>\n } @else {\n <span class=\"nice-typeahead-value-text\">\n <span class=\"mat-mdc-select-min-line\">\n @if (_value(); as activeValue) {\n {{ formatLabel(activeValue) }}\n }\n </span>\n </span>\n }\n </div>\n\n <div class=\"nice-typeahead-suffix\">\n @if (_empty()) {\n <div class=\"mat-mdc-select-arrow\">\n <svg viewBox=\"0 0 24 24\" width=\"24px\" height=\"24px\" focusable=\"false\" aria-hidden=\"true\">\n <path d=\"M7 10l5 5 5-5z\"></path>\n </svg>\n </div>\n } @else {\n <button class=\"nice-typeahead-remove\" mat-icon-button (click)=\"$event.stopPropagation(); removeActiveValue()\">\n <svg viewBox=\"0 -960 960 960\">\n <path d=\"m291-240-51-51 189-189-189-189 51-51 189 189 189-189 51 51-189 189 189 189-51 51-189-189-189 189Z\"/>\n </svg>\n </button>\n }\n </div>\n</div>\n\n<ng-template\n cdk-connected-overlay\n cdkConnectedOverlayLockPosition\n cdkConnectedOverlayHasBackdrop\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n [cdkConnectedOverlayWidth]=\"_overlayWidth\"\n [cdkConnectedOverlayOrigin]=\"_preferredOverlayOrigin || fallbackOverlayOrigin\"\n (attach)=\"_onAttached()\"\n (backdropClick)=\"close()\"\n (detach)=\"close()\"\n>\n <div\n #panel\n role=\"listbox\"\n tabindex=\"-1\"\n class=\"nice-typeahead-panel nice-typeahead--open\"\n [attr.id]=\"id + '-panel'\"\n [@transformPanel]=\"'showing'\"\n (@transformPanel.done)=\"_panelDoneAnimatingStream.next($event.toState)\"\n (keydown)=\"_handleKeydown($event)\"\n (scrollend)=\"_handleScrollEnd()\"\n >\n <div class=\"nice-typeahead-search-input\">\n <mat-form-field appearance=\"outline\" subscriptSizing=\"dynamic\">\n <input\n #input\n class=\"nice-typeahead__input\"\n matInput\n [formControl]=\"_searchControl\"\n >\n </mat-form-field>\n </div>\n\n <div #optionsContainer class=\"nice-typeahead-options\" role=\"presentation\">\n @for (item of filteredValues(); track item) {\n <mat-option [value]=\"item\">\n {{ formatLabel(item) }}\n </mat-option>\n } @empty {\n <mat-option disabled>\n <span class=\"nice-typeahead__no-items\">No items found</span>\n </mat-option>\n }\n </div>\n </div>\n</ng-template>\n", styles: ["nice-typeahead,nice-async-typeahead{display:inline-block;width:100%;outline:none;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;color:var(--mat-select-enabled-trigger-text-color, var(--mat-app-on-surface));font-family:var(--mat-select-trigger-text-font, var(--mat-app-body-large-font));line-height:var(--mat-select-trigger-text-line-height, var(--mat-app-body-large-line-height));font-size:var(--mat-select-trigger-text-size, var(--mat-app-body-large-size));font-weight:var(--mat-select-trigger-text-weight, var(--mat-app-body-large-weight));letter-spacing:var(--mat-select-trigger-text-tracking, var(--mat-app-body-large-tracking))}nice-typeahead .nice-typeahead,nice-async-typeahead .nice-typeahead{width:100%;display:inline-flex;align-items:center;justify-content:space-between;cursor:pointer;position:relative;box-sizing:border-box}nice-typeahead .nice-typeahead-suffix,nice-async-typeahead .nice-typeahead-suffix{height:24px;flex-shrink:0;display:inline-flex;align-items:center;--mdc-icon-button-state-layer-size: 24px}nice-typeahead .nice-typeahead-suffix .nice-typeahead-remove,nice-async-typeahead .nice-typeahead-suffix .nice-typeahead-remove{margin-right:-6px}nice-typeahead .nice-typeahead-value,nice-async-typeahead .nice-typeahead-value{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}nice-typeahead .nice-typeahead-value-text,nice-async-typeahead .nice-typeahead-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}nice-typeahead .mat-mdc-select-min-line:empty:before,nice-async-typeahead .mat-mdc-select-min-line:empty:before{content:\" \";white-space:pre;width:1px;display:inline-block;visibility:hidden}nice-typeahead .nice-typeahead__input,nice-async-typeahead .nice-typeahead__input{border:none;outline:none;box-shadow:none;background:none;padding:0;margin:0;color:inherit}.mat-mdc-form-field-type-nice-typeahead:not(.mat-form-field-disabled) .mat-mdc-text-field-wrapper{cursor:pointer}.mat-mdc-form-field-type-nice-typeahead.mat-form-field-appearance-outline .mdc-notched-outline__notch{max-width:calc(100% - 60px)}div.nice-typeahead-panel{width:100%;outline:0;padding:8px 0;border-radius:4px;box-sizing:border-box;position:static;background-color:var(--mat-select-panel-background-color, var(--mat-app-surface-container))}div.nice-typeahead-panel .nice-typeahead-search-input{padding-left:8px;padding-right:8px;padding-bottom:8px}div.nice-typeahead-panel .nice-typeahead-search-input .mat-mdc-form-field-infix{width:100%}div.nice-typeahead-panel .nice-typeahead-options{overflow:auto;max-height:384px}div.nice-typeahead-panel{box-shadow:var(--mat-select-container-elevation-shadow)}\n"] }]
|
|
111
|
+
}], ctorParameters: () => [] });
|
|
112
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN5bmMtdHlwZWFoZWFkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL21hdGVyaWFsLWNvbXBvbmVudHMvdHlwZWFoZWFkL2FzeW5jLXR5cGVhaGVhZC50cyIsIi4uLy4uLy4uLy4uL3NyYy9tYXRlcmlhbC1jb21wb25lbnRzL3R5cGVhaGVhZC90eXBlYWhlYWQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM3RSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsTUFBTSxFQUNOLE1BQU0sRUFDTixLQUFLLEVBQ0csU0FBUyxFQUNqQixpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsWUFBWSxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDakYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7O0FBMENuRCxNQUFNLE9BQU8sa0JBQXNCLFNBQVEsaUJBQW9CO0lBQzNDLFFBQVEsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFVLENBQUM7SUFFcEMsY0FBYyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtB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N0MscUJBQXFCLEVBQUUsWUFBWTt3QkFDbkMsaUNBQWlDLEVBQUUsVUFBVTt3QkFDN0MsZ0NBQWdDLEVBQUUsWUFBWTt3QkFDOUMsaUNBQWlDLEVBQUUsVUFBVTt3QkFDN0MsOEJBQThCLEVBQUUsT0FBTzt3QkFDdkMsV0FBVyxFQUFFLHdCQUF3Qjt3QkFDckMsU0FBUyxFQUFFLHNCQUFzQjt3QkFDakMsUUFBUSxFQUFFLHVCQUF1QjtxQkFDcEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDZGtDb25uZWN0ZWRPdmVybGF5LCBDZGtPdmVybGF5T3JpZ2luIH0gZnJvbSBcIkBhbmd1bGFyL2Nkay9vdmVybGF5XCI7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBjb21wdXRlZCxcbiAgICBlZmZlY3QsIEVsZW1lbnRSZWYsXG4gICAgaW5qZWN0LFxuICAgIGlucHV0LFxuICAgIE9uSW5pdCwgdmlld0NoaWxkLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBNYXRJY29uQnV0dG9uIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2J1dHRvblwiO1xuaW1wb3J0IHsgTWF0T3B0aW9uIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2NvcmVcIjtcbmltcG9ydCB7IE1hdEZvcm1GaWVsZCwgTWF0Rm9ybUZpZWxkQ29udHJvbCB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkXCI7XG5pbXBvcnQgeyBNYXRJbnB1dCB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9pbnB1dFwiO1xuaW1wb3J0IHsgbWF0U2VsZWN0QW5pbWF0aW9ucyB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3RcIjtcbmltcG9ydCB7IE5pY2VUeXBlYWhlYWRCYXNlIH0gZnJvbSBcIi4vdHlwZWFoZWFkLWJhc2VcIjtcbmltcG9ydCB7IE5pY2VUeXBlYWhlYWRTZXJ2aWNlIH0gZnJvbSBcIi4vcHJvdmlkZXJzXCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcIm5pY2UtYXN5bmMtdHlwZWFoZWFkXCIsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENka092ZXJsYXlPcmlnaW4sXG4gICAgICAgIENka0Nvbm5lY3RlZE92ZXJsYXksXG4gICAgICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgICAgIE1hdE9wdGlvbixcbiAgICAgICAgTWF0Rm9ybUZpZWxkLFxuICAgICAgICBNYXRJbnB1dCxcbiAgICAgICAgTWF0SWNvbkJ1dHRvblxuICAgIF0sXG4gICAgdGVtcGxhdGVVcmw6IFwiLi90eXBlYWhlYWQuaHRtbFwiLFxuICAgIHN0eWxlVXJsOiBcIi4vdHlwZWFoZWFkLnNjc3NcIixcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGFuaW1hdGlvbnM6IFttYXRTZWxlY3RBbmltYXRpb25zLnRyYW5zZm9ybVBhbmVsXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBNYXRGb3JtRmllbGRDb250cm9sLCB1c2VFeGlzdGluZzogTmljZUFzeW5jVHlwZWFoZWFkIH0sXG4gICAgICAgIE5pY2VUeXBlYWhlYWRTZXJ2aWNlXG4gICAgXSxcbiAgICBob3N0OiB7XG4gICAgICAgIFwicm9sZVwiOiBcImNvbWJvYm94XCIsXG4gICAgICAgIFwiYXJpYS1oYXNwb3B1cFwiOiBcImxpc3Rib3hcIixcbiAgICAgICAgXCJjbGFzc1wiOiBcIm5pY2UtdHlwZWFoZWFkXCIsXG4gICAgICAgIFwiW2F0dHIuaWRdXCI6IFwiaWRcIixcbiAgICAgICAgXCJbYXR0ci5hcmlhLWNvbnRyb2xzXVwiOiBcInBhbmVsT3BlbiA/IGlkICsgXFxcIi1wYW5lbFxcXCIgOiBudWxsXCIsXG4gICAgICAgIFwiW2F0dHIuYXJpYS1leHBhbmRlZF1cIjogXCJwYW5lbE9wZW5cIixcbiAgICAgICAgXCJbYXR0ci5hcmlhLXJlcXVpcmVkXVwiOiBcInJlcXVpcmVkLnRvU3RyaW5nKClcIixcbiAgICAgICAgXCJbYXR0ci5hcmlhLWRpc2FibGVkXVwiOiBcImRpc2FibGVkLnRvU3RyaW5nKClcIixcbiAgICAgICAgXCJbYXR0ci5hcmlhLWludmFsaWRdXCI6IFwiZXJyb3JTdGF0ZVwiLFxuICAgICAgICBcIltjbGFzcy5uaWNlLXR5cGVhaGVhZC1kaXNhYmxlZF1cIjogXCJkaXNhYmxlZFwiLFxuICAgICAgICBcIltjbGFzcy5uaWNlLXR5cGVhaGVhZC1pbnZhbGlkXVwiOiBcImVycm9yU3RhdGVcIixcbiAgICAgICAgXCJbY2xhc3MubmljZS10eXBlYWhlYWQtcmVxdWlyZWRdXCI6IFwicmVxdWlyZWRcIixcbiAgICAgICAgXCJbY2xhc3MubmljZS10eXBlYWhlYWQtZW1wdHldXCI6IFwiZW1wdHlcIixcbiAgICAgICAgXCIoa2V5ZG93bilcIjogXCJfaGFuZGxlS2V5ZG93bigkZXZlbnQpXCIsXG4gICAgICAgIFwiKGZvY3VzKVwiOiBcIm9uRm9jdXNDaGFuZ2VkKHRydWUpXCIsXG4gICAgICAgIFwiKGJsdXIpXCI6IFwib25Gb2N1c0NoYW5nZWQoZmFsc2UpXCJcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIE5pY2VBc3luY1R5cGVhaGVhZDxUPiBleHRlbmRzIE5pY2VUeXBlYWhlYWRCYXNlPFQ+IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBwdWJsaWMgcmVhZG9ubHkgcmVzb3VyY2UgPSBpbnB1dC5yZXF1aXJlZDxzdHJpbmc+KCk7XG5cbiAgICBwdWJsaWMgcmVhZG9ubHkgZmlsdGVyZWRWYWx1ZXMgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnNlcnZpY2UuaXRlbXMoKSk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgb3B0aW9uc0NvbnRhaW5lciA9IHZpZXdDaGlsZDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oXCJvcHRpb25zQ29udGFpbmVyXCIpO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBzZXJ2aWNlID0gaW5qZWN0KE5pY2VUeXBlYWhlYWRTZXJ2aWNlKTtcblxuICAgIHByb3RlY3RlZCBvdmVycmlkZSBfY29tcGFyZVdpdGggPSAobzE6IFQsIG8yOiBUKSA9PiB7XG4gICAgICAgIGlmICghKHR5cGVvZiBvMSA9PT0gXCJvYmplY3RcIiAmJiBvMSAmJiB0eXBlb2YgbzIgPT09IFwib2JqZWN0XCIgJiYgbzIpKSB7XG4gICAgICAgICAgICByZXR1cm4gbzEgPT09IG8yO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCEoXCJpZFwiIGluIG8xKSB8fCAhKFwiaWRcIiBpbiBvMikpIHtcbiAgICAgICAgICAgIHJldHVybiBvMSA9PT0gbzI7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbzEuaWQgPT09IG8yLmlkO1xuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBJbmZpbml0ZSBzY3JvbGwgaW50ZXJuYWwgc3RhdGVcbiAgICAgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IHNjcm9sbFRocmVzaG9sZFBlcmNlbnQgPSAwLjk5O1xuICAgIHByaXZhdGUgbGFzdFNjcm9sbEhlaWdodCA9IDA7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoKTtcblxuICAgICAgICBlZmZlY3QoKCkgPT4gdGhpcy5zZXJ2aWNlLnNlYXJjaCh0aGlzLl9zZWFyY2hWYWx1ZSgpKSwge1xuICAgICAgICAgICAgYWxsb3dTaWduYWxXcml0ZXM6IHRydWVcbiAgICAgICAgfSk7XG5cbiAgICAgICAgZWZmZWN0KCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRhaW5lciA9IHRoaXMub3B0aW9uc0NvbnRhaW5lcigpO1xuICAgICAgICAgICAgaWYgKCFjb250YWluZXIpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnRhaW5lci5uYXRpdmVFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoXCJzY3JvbGxcIiwgdGhpcy5vblNjcm9sbC5iaW5kKHRoaXMpKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIG92ZXJyaWRlIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuXG4gICAgICAgIHRoaXMuc2VydmljZS5pbml0KHRoaXMucmVzb3VyY2UoKSk7XG4gICAgfVxuXG4gICAgcHVibGljIG92ZXJyaWRlIG9uRm9jdXNDaGFuZ2VkKGlzRm9jdXNlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBzdXBlci5vbkZvY3VzQ2hhbmdlZChpc0ZvY3VzZWQpO1xuXG4gICAgICAgIGlmIChpc0ZvY3VzZWQpIHtcbiAgICAgICAgICAgIHRoaXMuX3NlYXJjaENvbnRyb2wucGF0Y2hWYWx1ZShcIlwiKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBvdmVycmlkZSBmb3JtYXRMYWJlbChpdGVtOiBUKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VydmljZS5mb3JtYXRMYWJlbChpdGVtKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb3ZlcnJpZGUgcmVtb3ZlQWN0aXZlVmFsdWUoKSB7XG4gICAgICAgIHN1cGVyLnJlbW92ZUFjdGl2ZVZhbHVlKCk7XG5cbiAgICAgICAgdGhpcy5zZXJ2aWNlLnNldEFjdGl2ZShudWxsKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25TY3JvbGwoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHRhcmdldCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgY29uc3QgdGhyZXNob2xkID0gKHRoaXMuc2Nyb2xsVGhyZXNob2xkUGVyY2VudCAqIDEwMCAqIHRhcmdldC5zY3JvbGxIZWlnaHQpIC8gMTAwO1xuICAgICAgICBjb25zdCBjdXJyZW50ID0gdGFyZ2V0LnNjcm9sbFRvcCArIHRhcmdldC5jbGllbnRIZWlnaHQ7XG5cbiAgICAgICAgaWYgKHRoaXMubGFzdFNjcm9sbEhlaWdodCA+IHRhcmdldC5zY3JvbGxIZWlnaHQpIHtcbiAgICAgICAgICAgIHRoaXMubGFzdFNjcm9sbEhlaWdodCA9IDA7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY3VycmVudCA+IHRocmVzaG9sZCAmJiB0aGlzLmxhc3RTY3JvbGxIZWlnaHQgPCB0YXJnZXQuc2Nyb2xsSGVpZ2h0KSB7XG4gICAgICAgICAgICB0aGlzLnNlcnZpY2UubG9hZE1vcmUoKTtcbiAgICAgICAgICAgIHRoaXMubGFzdFNjcm9sbEhlaWdodCA9IHRhcmdldC5zY3JvbGxIZWlnaHQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2XG4gICAgI2ZhbGxiYWNrT3ZlcmxheU9yaWdpbj1cImNka092ZXJsYXlPcmlnaW5cIlxuICAgIGNsYXNzPVwibmljZS10eXBlYWhlYWRcIlxuICAgIGNkay1vdmVybGF5LW9yaWdpblxuPlxuICAgIDxkaXYgY2xhc3M9XCJuaWNlLXR5cGVhaGVhZC12YWx1ZVwiPlxuICAgICAgICBAaWYgKF9lbXB0eSgpKSB7XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm5pY2UtdHlwZWFoZWFkLXBsYWNlaG9sZGVyIG1hdC1tZGMtc2VsZWN0LW1pbi1saW5lXCI+e3sgX3BsYWNlaG9sZGVyKCkgfX08L3NwYW4+XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJuaWNlLXR5cGVhaGVhZC12YWx1ZS10ZXh0XCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtYXQtbWRjLXNlbGVjdC1taW4tbGluZVwiPlxuICAgICAgICAgICAgICAgICAgICBAaWYgKF92YWx1ZSgpOyBhcyBhY3RpdmVWYWx1ZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAge3sgZm9ybWF0TGFiZWwoYWN0aXZlVmFsdWUpIH19XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJuaWNlLXR5cGVhaGVhZC1zdWZmaXhcIj5cbiAgICAgICAgQGlmIChfZW1wdHkoKSkge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1hdC1tZGMtc2VsZWN0LWFycm93XCI+XG4gICAgICAgICAgICAgICAgPHN2ZyB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgd2lkdGg9XCIyNHB4XCIgaGVpZ2h0PVwiMjRweFwiIGZvY3VzYWJsZT1cImZhbHNlXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+XG4gICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNyAxMGw1IDUgNS01elwiPjwvcGF0aD5cbiAgICAgICAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJuaWNlLXR5cGVhaGVhZC1yZW1vdmVcIiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKTsgcmVtb3ZlQWN0aXZlVmFsdWUoKVwiPlxuICAgICAgICAgICAgICAgIDxzdmcgdmlld0JveD1cIjAgLTk2MCA5NjAgOTYwXCI+XG4gICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJtMjkxLTI0MC01MS01MSAxODktMTg5LTE4OS0xODkgNTEtNTEgMTg5IDE4OSAxODktMTg5IDUxIDUxLTE4OSAxODkgMTg5IDE4OS01MSA1MS0xODktMTg5LTE4OSAxODlaXCIvPlxuICAgICAgICAgICAgICAgIDwvc3ZnPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGVcbiAgICBjZGstY29ubmVjdGVkLW92ZXJsYXlcbiAgICBjZGtDb25uZWN0ZWRPdmVybGF5TG9ja1Bvc2l0aW9uXG4gICAgY2RrQ29ubmVjdGVkT3ZlcmxheUhhc0JhY2tkcm9wXG4gICAgY2RrQ29ubmVjdGVkT3ZlcmxheUJhY2tkcm9wQ2xhc3M9XCJjZGstb3ZlcmxheS10cmFuc3BhcmVudC1iYWNrZHJvcFwiXG4gICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlPcGVuXT1cInBhbmVsT3BlblwiXG4gICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlXaWR0aF09XCJfb3ZlcmxheVdpZHRoXCJcbiAgICBbY2RrQ29ubmVjdGVkT3ZlcmxheU9yaWdpbl09XCJfcHJlZmVycmVkT3ZlcmxheU9yaWdpbiB8fCBmYWxsYmFja092ZXJsYXlPcmlnaW5cIlxuICAgIChhdHRhY2gpPVwiX29uQXR0YWNoZWQoKVwiXG4gICAgKGJhY2tkcm9wQ2xpY2spPVwiY2xvc2UoKVwiXG4gICAgKGRldGFjaCk9XCJjbG9zZSgpXCJcbj5cbiAgICA8ZGl2XG4gICAgICAgICNwYW5lbFxuICAgICAgICByb2xlPVwibGlzdGJveFwiXG4gICAgICAgIHRhYmluZGV4PVwiLTFcIlxuICAgICAgICBjbGFzcz1cIm5pY2UtdHlwZWFoZWFkLXBhbmVsIG5pY2UtdHlwZWFoZWFkLS1vcGVuXCJcbiAgICAgICAgW2F0dHIuaWRdPVwiaWQgKyAnLXBhbmVsJ1wiXG4gICAgICAgIFtAdHJhbnNmb3JtUGFuZWxdPVwiJ3Nob3dpbmcnXCJcbiAgICAgICAgKEB0cmFuc2Zvcm1QYW5lbC5kb25lKT1cIl9wYW5lbERvbmVBbmltYXRpbmdTdHJlYW0ubmV4dCgkZXZlbnQudG9TdGF0ZSlcIlxuICAgICAgICAoa2V5ZG93bik9XCJfaGFuZGxlS2V5ZG93bigkZXZlbnQpXCJcbiAgICAgICAgKHNjcm9sbGVuZCk9XCJfaGFuZGxlU2Nyb2xsRW5kKClcIlxuICAgID5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm5pY2UtdHlwZWFoZWFkLXNlYXJjaC1pbnB1dFwiPlxuICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCIgc3Vic2NyaXB0U2l6aW5nPVwiZHluYW1pY1wiPlxuICAgICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgICAgICAjaW5wdXRcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJuaWNlLXR5cGVhaGVhZF9faW5wdXRcIlxuICAgICAgICAgICAgICAgICAgICBtYXRJbnB1dFxuICAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwiX3NlYXJjaENvbnRyb2xcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgI29wdGlvbnNDb250YWluZXIgY2xhc3M9XCJuaWNlLXR5cGVhaGVhZC1vcHRpb25zXCIgcm9sZT1cInByZXNlbnRhdGlvblwiPlxuICAgICAgICAgICAgQGZvciAoaXRlbSBvZiBmaWx0ZXJlZFZhbHVlcygpOyB0cmFjayBpdGVtKSB7XG4gICAgICAgICAgICAgICAgPG1hdC1vcHRpb24gW3ZhbHVlXT1cIml0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAge3sgZm9ybWF0TGFiZWwoaXRlbSkgfX1cbiAgICAgICAgICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICAgICAgICB9IEBlbXB0eSB7XG4gICAgICAgICAgICAgICAgPG1hdC1vcHRpb24gZGlzYWJsZWQ+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibmljZS10eXBlYWhlYWRfX25vLWl0ZW1zXCI+Tm8gaXRlbXMgZm91bmQ8L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { InjectionToken } from "@angular/core";
|
|
2
|
+
export const NICE_ASYNC_TYPEAHEAD_RESOURCES_PROVIDER = new InjectionToken("nice_async_typeahead_provider");
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL21hdGVyaWFsLWNvbXBvbmVudHMvdHlwZWFoZWFkL2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRS9DLE1BQU0sQ0FBQyxNQUFNLHVDQUF1QyxHQUFHLElBQUksY0FBYyxDQUFDLCtCQUErQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbmV4cG9ydCBjb25zdCBOSUNFX0FTWU5DX1RZUEVBSEVBRF9SRVNPVVJDRVNfUFJPVklERVIgPSBuZXcgSW5qZWN0aW9uVG9rZW4oXCJuaWNlX2FzeW5jX3R5cGVhaGVhZF9wcm92aWRlclwiKTtcbiJdfQ==
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export * from "./providers";
|
|
2
|
+
export * from "./provider";
|
|
3
|
+
export * from "./async-typeahead";
|
|
4
|
+
export * from "./typeahead";
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbWF0ZXJpYWwtY29tcG9uZW50cy90eXBlYWhlYWQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxZQUFZLENBQUM7QUFFM0IsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL3Byb3ZpZGVyc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vcHJvdmlkZXJcIjtcblxuZXhwb3J0ICogZnJvbSBcIi4vYXN5bmMtdHlwZWFoZWFkXCI7XG5leHBvcnQgKiBmcm9tIFwiLi90eXBlYWhlYWRcIjtcbiJdfQ==
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { NICE_ASYNC_TYPEAHEAD_RESOURCES_PROVIDER } from "./constants";
|
|
2
|
+
export function provideAsyncTypeaheadResources(providers) {
|
|
3
|
+
return providers.map((provider) => ({
|
|
4
|
+
provide: NICE_ASYNC_TYPEAHEAD_RESOURCES_PROVIDER,
|
|
5
|
+
useClass: provider,
|
|
6
|
+
multi: true
|
|
7
|
+
}));
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbWF0ZXJpYWwtY29tcG9uZW50cy90eXBlYWhlYWQvcHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHVDQUF1QyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBR3RFLE1BQU0sVUFBVSw4QkFBOEIsQ0FDMUMsU0FBdUU7SUFFdkUsT0FBTyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2hDLE9BQU8sRUFBRSx1Q0FBdUM7UUFDaEQsUUFBUSxFQUFFLFFBQVE7UUFDbEIsS0FBSyxFQUFFLElBQUk7S0FDZCxDQUFDLENBQUMsQ0FBQztBQUNSLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm92aWRlciwgVHlwZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBOSUNFX0FTWU5DX1RZUEVBSEVBRF9SRVNPVVJDRVNfUFJPVklERVIgfSBmcm9tIFwiLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IE5pY2VBc3luY1R5cGVhaGVhZFJlc291cmNlUHJvdmlkZXIgfSBmcm9tIFwiLi9wcm92aWRlcnMvYXN5bmMtdHlwZWFoZWFkLnByb3ZpZGVyXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlQXN5bmNUeXBlYWhlYWRSZXNvdXJjZXMoXG4gICAgcHJvdmlkZXJzOiBUeXBlPE5pY2VBc3luY1R5cGVhaGVhZFJlc291cmNlUHJvdmlkZXI8dW5rbm93biwgdW5rbm93bj4+W11cbik6IFByb3ZpZGVyW10ge1xuICAgIHJldHVybiBwcm92aWRlcnMubWFwKChwcm92aWRlcikgPT4gKHtcbiAgICAgICAgcHJvdmlkZTogTklDRV9BU1lOQ19UWVBFQUhFQURfUkVTT1VSQ0VTX1BST1ZJREVSLFxuICAgICAgICB1c2VDbGFzczogcHJvdmlkZXIsXG4gICAgICAgIG11bHRpOiB0cnVlXG4gICAgfSkpO1xufVxuIl19
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export class NiceAsyncTypeaheadResourceProvider {
|
|
2
|
+
}
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN5bmMtdHlwZWFoZWFkLnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL21hdGVyaWFsLWNvbXBvbmVudHMvdHlwZWFoZWFkL3Byb3ZpZGVycy9hc3luYy10eXBlYWhlYWQucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsTUFBTSxPQUFnQixrQ0FBa0M7Q0FZdkQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcblxuZXhwb3J0IHR5cGUgTmljZUFzeW5jVHlwZWFoZWFkU2VhcmNoUmVzdWx0PFQ+ID0ge1xuICAgIGl0ZW1zOiBUW107XG4gICAgbmV4dFBhZ2U6IG51bWJlciB8IG51bGw7XG59XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBOaWNlQXN5bmNUeXBlYWhlYWRSZXNvdXJjZVByb3ZpZGVyPFQsIElEID0gbnVtYmVyLCBPcHRpb25zID0gb2JqZWN0PiB7XG4gICAgcHVibGljIGFic3RyYWN0IHJlc291cmNlOiBzdHJpbmc7XG5cbiAgICBwdWJsaWMgYWJzdHJhY3Qgc2VhcmNoKFxuICAgICAgICBzZWFyY2hRdWVyeTogc3RyaW5nLFxuICAgICAgICBwYWdlOiBudW1iZXIsXG4gICAgICAgIG9wdGlvbnM/OiBPcHRpb25zXG4gICAgKTogT2JzZXJ2YWJsZTxOaWNlQXN5bmNUeXBlYWhlYWRTZWFyY2hSZXN1bHQ8VD4+O1xuXG4gICAgcHVibGljIGFic3RyYWN0IGdldEJ5SWQoaWQ6IElELCBvcHRpb25zPzogT3B0aW9ucyk6IE9ic2VydmFibGU8VD47XG5cbiAgICBwdWJsaWMgYWJzdHJhY3QgZm9ybWF0KGl0ZW06IFQpOiBzdHJpbmc7XG59XG4iXX0=
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import { computed, DestroyRef, inject, Injectable, signal } from "@angular/core";
|
|
2
|
+
import { takeUntilDestroyed } from "@angular/core/rxjs-interop";
|
|
3
|
+
import { catchError, defer, EMPTY, finalize, map, Subject, switchMap } from "rxjs";
|
|
4
|
+
import { NICE_ASYNC_TYPEAHEAD_RESOURCES_PROVIDER } from "../constants";
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class NiceTypeaheadService {
|
|
7
|
+
resources = inject(NICE_ASYNC_TYPEAHEAD_RESOURCES_PROVIDER, { optional: true }) ?? [];
|
|
8
|
+
destroyRef = inject(DestroyRef);
|
|
9
|
+
fetchResources$ = new Subject();
|
|
10
|
+
fetchActive$ = new Subject();
|
|
11
|
+
resourceProvider = null;
|
|
12
|
+
_items = signal([]);
|
|
13
|
+
_active = signal(null);
|
|
14
|
+
_searchOptions = signal(null);
|
|
15
|
+
_request = signal(null);
|
|
16
|
+
_nextRequest = signal(null);
|
|
17
|
+
_loading = signal(true);
|
|
18
|
+
items = this._items.asReadonly();
|
|
19
|
+
active = this._active.asReadonly();
|
|
20
|
+
loading = this._loading.asReadonly();
|
|
21
|
+
isLastPage = computed(() => !this._nextRequest());
|
|
22
|
+
init(resource) {
|
|
23
|
+
this.fetchResources$.pipe(takeUntilDestroyed(this.destroyRef)).pipe(switchMap((request) => this.fetchResources(request))).subscribe();
|
|
24
|
+
this.fetchActive$.pipe(takeUntilDestroyed(this.destroyRef)).pipe(switchMap((request) => this.fetchActive(request))).subscribe();
|
|
25
|
+
const provider = this.resources.find((resources) => resources.resource === resource);
|
|
26
|
+
if (provider) {
|
|
27
|
+
this.resourceProvider = provider;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
setSearchOptions(options) {
|
|
31
|
+
this._searchOptions.set(options);
|
|
32
|
+
}
|
|
33
|
+
setActive(active) {
|
|
34
|
+
this._active.set(active);
|
|
35
|
+
}
|
|
36
|
+
setActiveFromId(id) {
|
|
37
|
+
this.fetchActive$.next({ id });
|
|
38
|
+
}
|
|
39
|
+
reloadActive() {
|
|
40
|
+
const active = this._active();
|
|
41
|
+
if (!active || !("id" in active)) {
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
if (!(typeof active.id === "number" || typeof active.id === "string")) {
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
this.setActiveFromId(active.id);
|
|
48
|
+
}
|
|
49
|
+
setItems(items) {
|
|
50
|
+
this._items.set(items);
|
|
51
|
+
}
|
|
52
|
+
search(searchQuery) {
|
|
53
|
+
this.fetchResources$.next({
|
|
54
|
+
searchQuery,
|
|
55
|
+
page: 0
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
loadMore() {
|
|
59
|
+
const nextRequest = this._nextRequest();
|
|
60
|
+
if (!nextRequest || this._loading()) {
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
this.fetchResources$.next(nextRequest);
|
|
64
|
+
}
|
|
65
|
+
fetchActive(request) {
|
|
66
|
+
return defer(() => {
|
|
67
|
+
if (!this.resourceProvider) {
|
|
68
|
+
return EMPTY;
|
|
69
|
+
}
|
|
70
|
+
this._loading.set(true);
|
|
71
|
+
const localItem = this._items().find((item) => "id" in item && item.id === request.id);
|
|
72
|
+
if (localItem) {
|
|
73
|
+
this._loading.set(false);
|
|
74
|
+
this._items.set([localItem]);
|
|
75
|
+
this._active.set(localItem);
|
|
76
|
+
return EMPTY;
|
|
77
|
+
}
|
|
78
|
+
return this.resourceProvider.getById(request.id);
|
|
79
|
+
}).pipe(map((item) => {
|
|
80
|
+
this._items.set([item]);
|
|
81
|
+
this._active.set(item);
|
|
82
|
+
}), catchError(() => EMPTY), finalize(() => {
|
|
83
|
+
this._loading.set(false);
|
|
84
|
+
}));
|
|
85
|
+
}
|
|
86
|
+
fetchResources(request) {
|
|
87
|
+
return defer(() => {
|
|
88
|
+
if (!this.resourceProvider) {
|
|
89
|
+
return EMPTY;
|
|
90
|
+
}
|
|
91
|
+
this._loading.set(true);
|
|
92
|
+
this._request.set(request);
|
|
93
|
+
return this.resourceProvider.search(request.searchQuery ?? "", request.page, this._searchOptions() ?? {});
|
|
94
|
+
}).pipe(map((result) => {
|
|
95
|
+
if (request.page === 0) {
|
|
96
|
+
this._items.set(result.items);
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
this._items.set([
|
|
100
|
+
...this._items(),
|
|
101
|
+
...result.items
|
|
102
|
+
]);
|
|
103
|
+
}
|
|
104
|
+
if (result.nextPage) {
|
|
105
|
+
this._nextRequest.set({
|
|
106
|
+
...request,
|
|
107
|
+
page: result.nextPage
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
else {
|
|
111
|
+
this._nextRequest.set(null);
|
|
112
|
+
}
|
|
113
|
+
}), catchError(() => EMPTY), finalize(() => {
|
|
114
|
+
this._loading.set(false);
|
|
115
|
+
}));
|
|
116
|
+
}
|
|
117
|
+
formatLabel(item) {
|
|
118
|
+
if (!this.resourceProvider) {
|
|
119
|
+
return "";
|
|
120
|
+
}
|
|
121
|
+
return this.resourceProvider.format(item);
|
|
122
|
+
}
|
|
123
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NiceTypeaheadService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
124
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NiceTypeaheadService });
|
|
125
|
+
}
|
|
126
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NiceTypeaheadService, decorators: [{
|
|
127
|
+
type: Injectable
|
|
128
|
+
}] });
|
|
129
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN5bmMtdHlwZWFoZWFkLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbWF0ZXJpYWwtY29tcG9uZW50cy90eXBlYWhlYWQvcHJvdmlkZXJzL2FzeW5jLXR5cGVhaGVhZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFjLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0YsT0FBTyxFQUFFLHVDQUF1QyxFQUFFLE1BQU0sY0FBYyxDQUFDOztBQWF2RSxNQUFNLE9BQU8sb0JBQW9CO0lBQ1osU0FBUyxHQUFHLE1BQU0sQ0FDL0IsdUNBQXVDLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQzlELElBQUksRUFBRSxDQUFDO0lBQ1MsVUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUVoQyxlQUFlLEdBQUcsSUFBSSxPQUFPLEVBQTBCLENBQUM7SUFDeEQsWUFBWSxHQUFHLElBQUksT0FBTyxFQUFzQixDQUFDO0lBQzFELGdCQUFnQixHQUFrRSxJQUFJLENBQUM7SUFFOUUsTUFBTSxHQUFHLE1BQU0sQ0FBTSxFQUFFLENBQUMsQ0FBQztJQUN6QixPQUFPLEdBQUcsTUFBTSxDQUFXLElBQUksQ0FBQyxDQUFDO0lBQ2pDLGNBQWMsR0FBRyxNQUFNLENBQWdCLElBQUksQ0FBQyxDQUFDO0lBQzdDLFFBQVEsR0FBRyxNQUFNLENBQWdDLElBQUksQ0FBQyxDQUFDO0lBQ3ZELFlBQVksR0FBRyxNQUFNLENBQWdD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QUMsQ0FBQztZQUNQLENBQUM7aUJBQU0sQ0FBQztnQkFDSixJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNoQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLEVBQ0YsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUN2QixRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ1YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQ0wsQ0FBQztJQUNOLENBQUM7SUFFTSxXQUFXLENBQUMsSUFBTztRQUN0QixJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDekIsT0FBTyxFQUFFLENBQUM7UUFDZCxDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzlDLENBQUM7d0dBekpRLG9CQUFvQjs0R0FBcEIsb0JBQW9COzs0RkFBcEIsb0JBQW9CO2tCQURoQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29tcHV0ZWQsIERlc3Ryb3lSZWYsIGluamVjdCwgSW5qZWN0YWJsZSwgc2lnbmFsIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gXCJAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcFwiO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgZGVmZXIsIEVNUFRZLCBmaW5hbGl6ZSwgbWFwLCBPYnNlcnZhYmxlLCBTdWJqZWN0LCBzd2l0Y2hNYXAgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgTklDRV9BU1lOQ19UWVBFQUhFQURfUkVTT1VSQ0VTX1BST1ZJREVSIH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgTmljZUFzeW5jVHlwZWFoZWFkUmVzb3VyY2VQcm92aWRlciB9IGZyb20gXCIuL2FzeW5jLXR5cGVhaGVhZC5wcm92aWRlclwiO1xuXG5leHBvcnQgdHlwZSBBc3luY1R5cGVhaGVhZFJlcXVlc3RzID0ge1xuICAgIHBhZ2U6IG51bWJlcjtcbiAgICBzZWFyY2hRdWVyeT86IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIEZldGNoQWN0aXZlUmVxdWVzdCA9IHtcbiAgICBpZDogbnVtYmVyIHwgc3RyaW5nO1xufTtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE5pY2VUeXBlYWhlYWRTZXJ2aWNlPFQgZXh0ZW5kcyBvYmplY3Q+IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlc291cmNlcyA9IGluamVjdDxOaWNlQXN5bmNUeXBlYWhlYWRSZXNvdXJjZVByb3ZpZGVyPHVua25vd24+W10+KFxuICAgICAgICBOSUNFX0FTWU5DX1RZUEVBSEVBRF9SRVNPVVJDRVNfUFJPVklERVIsIHsgb3B0aW9uYWw6IHRydWUgfVxuICAgICkgPz8gW107XG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBmZXRjaFJlc291cmNlcyQgPSBuZXcgU3ViamVjdDxBc3luY1R5cGVhaGVhZFJlcXVlc3RzPigpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZmV0Y2hBY3RpdmUkID0gbmV3IFN1YmplY3Q8RmV0Y2hBY3RpdmVSZXF1ZXN0PigpO1xuICAgIHByaXZhdGUgcmVzb3VyY2VQcm92aWRlcjogTmljZUFzeW5jVHlwZWFoZWFkUmVzb3VyY2VQcm92aWRlcjxULCBzdHJpbmcgfCBudW1iZXI+IHwgbnVsbCA9IG51bGw7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9pdGVtcyA9IHNpZ25hbDxUW10+KFtdKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9hY3RpdmUgPSBzaWduYWw8VCB8IG51bGw+KG51bGwpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX3NlYXJjaE9wdGlvbnMgPSBzaWduYWw8b2JqZWN0IHwgbnVsbD4obnVsbCk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBfcmVxdWVzdCA9IHNpZ25hbDxBc3luY1R5cGVhaGVhZFJlcXVlc3RzIHwgbnVsbD4obnVsbCk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBfbmV4dFJlcXVlc3QgPSBzaWduYWw8QXN5bmNUeXBlYWhlYWRSZXF1ZXN0cyB8IG51bGw+KG51bGwpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX2xvYWRpbmcgPSBzaWduYWwodHJ1ZSk7XG5cbiAgICBwdWJsaWMgcmVhZG9ubHkgaXRlbXMgPSB0aGlzLl9pdGVtcy5hc1JlYWRvbmx5KCk7XG4gICAgcHVibGljIHJlYWRvbmx5IGFjdGl2ZSA9IHRoaXMuX2FjdGl2ZS5hc1JlYWRvbmx5KCk7XG4gICAgcHVibGljIHJlYWRvbmx5IGxvYWRpbmcgPSB0aGlzLl9sb2FkaW5nLmFzUmVhZG9ubHkoKTtcbiAgICBwdWJsaWMgcmVhZG9ubHkgaXNMYXN0UGFnZSA9IGNvbXB1dGVkKCgpID0+ICF0aGlzLl9uZXh0UmVxdWVzdCgpKTtcblxuICAgIHB1YmxpYyBpbml0KHJlc291cmNlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5mZXRjaFJlc291cmNlcyQucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSkucGlwZShcbiAgICAgICAgICAgIHN3aXRjaE1hcCgocmVxdWVzdCkgPT4gdGhpcy5mZXRjaFJlc291cmNlcyhyZXF1ZXN0KSlcbiAgICAgICAgKS5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5mZXRjaEFjdGl2ZSQucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSkucGlwZShcbiAgICAgICAgICAgIHN3aXRjaE1hcCgocmVxdWVzdCkgPT4gdGhpcy5mZXRjaEFjdGl2ZShyZXF1ZXN0KSlcbiAgICAgICAgKS5zdWJzY3JpYmUoKTtcblxuICAgICAgICBjb25zdCBwcm92aWRlciA9IHRoaXMucmVzb3VyY2VzLmZpbmQoKHJlc291cmNlcykgPT4gcmVzb3VyY2VzLnJlc291cmNlID09PSByZXNvdXJjZSk7XG4gICAgICAgIGlmIChwcm92aWRlcikge1xuICAgICAgICAgICAgdGhpcy5yZXNvdXJjZVByb3ZpZGVyID0gcHJvdmlkZXIgYXMgTmljZUFzeW5jVHlwZWFoZWFkUmVzb3VyY2VQcm92aWRlcjxUPjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzZXRTZWFyY2hPcHRpb25zKG9wdGlvbnM6IG9iamVjdCB8IG51bGwpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fc2VhcmNoT3B0aW9ucy5zZXQob3B0aW9ucyk7XG4gICAgfVxuXG4gICAgcHVibGljIHNldEFjdGl2ZShhY3RpdmU6IFQgfCBudWxsKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2FjdGl2ZS5zZXQoYWN0aXZlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0QWN0aXZlRnJvbUlkKGlkOiBudW1iZXIgfCBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5mZXRjaEFjdGl2ZSQubmV4dCh7IGlkIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyByZWxvYWRBY3RpdmUoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGFjdGl2ZSA9IHRoaXMuX2FjdGl2ZSgpO1xuICAgICAgICBpZiAoIWFjdGl2ZSB8fCAhKFwiaWRcIiBpbiBhY3RpdmUpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoISh0eXBlb2YgYWN0aXZlLmlkID09PSBcIm51bWJlclwiIHx8IHR5cGVvZiBhY3RpdmUuaWQgPT09IFwic3RyaW5nXCIpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnNldEFjdGl2ZUZyb21JZChhY3RpdmUuaWQpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXRJdGVtcyhpdGVtczogVFtdKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2l0ZW1zLnNldChpdGVtcyk7XG4gICAgfVxuXG4gICAgcHVibGljIHNlYXJjaChzZWFyY2hRdWVyeTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZmV0Y2hSZXNvdXJjZXMkLm5leHQoe1xuICAgICAgICAgICAgc2VhcmNoUXVlcnksXG4gICAgICAgICAgICBwYWdlOiAwXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBsb2FkTW9yZSgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgbmV4dFJlcXVlc3QgPSB0aGlzLl9uZXh0UmVxdWVzdCgpO1xuICAgICAgICBpZiAoIW5leHRSZXF1ZXN0IHx8IHRoaXMuX2xvYWRpbmcoKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5mZXRjaFJlc291cmNlcyQubmV4dChuZXh0UmVxdWVzdCk7XG4gICAgfVxuXG4gICAgcHVibGljIGZldGNoQWN0aXZlKHJlcXVlc3Q6IEZldGNoQWN0aXZlUmVxdWVzdCk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgICAgICByZXR1cm4gZGVmZXIoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKCF0aGlzLnJlc291cmNlUHJvdmlkZXIpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gRU1QVFk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuX2xvYWRpbmcuc2V0KHRydWUpO1xuXG4gICAgICAgICAgICBjb25zdCBsb2NhbEl0ZW0gPSB0aGlzLl9pdGVtcygpLmZpbmQoKGl0ZW0pID0+IFwiaWRcIiBpbiBpdGVtICYmIGl0ZW0uaWQgPT09IHJlcXVlc3QuaWQpO1xuICAgICAgICAgICAgaWYgKGxvY2FsSXRlbSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2xvYWRpbmcuc2V0KGZhbHNlKTtcbiAgICAgICAgICAgICAgICB0aGlzLl9pdGVtcy5zZXQoW2xvY2FsSXRlbV0pO1xuICAgICAgICAgICAgICAgIHRoaXMuX2FjdGl2ZS5zZXQobG9jYWxJdGVtKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gRU1QVFk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiB0aGlzLnJlc291cmNlUHJvdmlkZXIuZ2V0QnlJZChyZXF1ZXN0LmlkKVxuICAgICAgICB9KS5waXBlKFxuICAgICAgICAgICAgbWFwKChpdGVtKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5faXRlbXMuc2V0KFtpdGVtXSk7XG4gICAgICAgICAgICAgICAgdGhpcy5fYWN0aXZlLnNldChpdGVtKTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiBFTVBUWSksXG4gICAgICAgICAgICBmaW5hbGl6ZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5fbG9hZGluZy5zZXQoZmFsc2UpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZmV0Y2hSZXNvdXJjZXMocmVxdWVzdDogQXN5bmNUeXBlYWhlYWRSZXF1ZXN0cyk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgICAgICByZXR1cm4gZGVmZXIoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKCF0aGlzLnJlc291cmNlUHJvdmlkZXIpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gRU1QVFk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuX2xvYWRpbmcuc2V0KHRydWUpO1xuICAgICAgICAgICAgdGhpcy5fcmVxdWVzdC5zZXQocmVxdWVzdCk7XG5cbiAgICAgICAgICAgIHJldHVybiB0aGlzLnJlc291cmNlUHJvdmlkZXIuc2VhcmNoKHJlcXVlc3Quc2VhcmNoUXVlcnkgPz8gXCJcIiwgcmVxdWVzdC5wYWdlLCB0aGlzLl9zZWFyY2hPcHRpb25zKCkgPz8ge30pO1xuICAgICAgICB9KS5waXBlKFxuICAgICAgICAgICAgbWFwKChyZXN1bHQpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAocmVxdWVzdC5wYWdlID09PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2l0ZW1zLnNldChyZXN1bHQuaXRlbXMgYXMgVFtdKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9pdGVtcy5zZXQoW1xuICAgICAgICAgICAgICAgICAgICAgICAgLi4udGhpcy5faXRlbXMoKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIC4uLihyZXN1bHQuaXRlbXMgYXMgVFtdKVxuICAgICAgICAgICAgICAgICAgICBdKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAocmVzdWx0Lm5leHRQYWdlKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX25leHRSZXF1ZXN0LnNldCh7XG4gICAgICAgICAgICAgICAgICAgICAgICAuLi5yZXF1ZXN0LFxuICAgICAgICAgICAgICAgICAgICAgICAgcGFnZTogcmVzdWx0Lm5leHRQYWdlXG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX25leHRSZXF1ZXN0LnNldChudWxsKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIGNhdGNoRXJyb3IoKCkgPT4gRU1QVFkpLFxuICAgICAgICAgICAgZmluYWxpemUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuX2xvYWRpbmcuc2V0KGZhbHNlKTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHVibGljIGZvcm1hdExhYmVsKGl0ZW06IFQpOiBzdHJpbmcge1xuICAgICAgICBpZiAoIXRoaXMucmVzb3VyY2VQcm92aWRlcikge1xuICAgICAgICAgICAgcmV0dXJuIFwiXCI7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5yZXNvdXJjZVByb3ZpZGVyLmZvcm1hdChpdGVtKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from "./async-typeahead.provider";
|
|
2
|
+
export * from "./async-typeahead.service";
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbWF0ZXJpYWwtY29tcG9uZW50cy90eXBlYWhlYWQvcHJvdmlkZXJzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYywyQkFBMkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL2FzeW5jLXR5cGVhaGVhZC5wcm92aWRlclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vYXN5bmMtdHlwZWFoZWFkLnNlcnZpY2VcIjtcbiJdfQ==
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './index';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjdXJzeXZlLW5neC1tYXRlcmlhbC1jb21wb25lbnRzLXR5cGVhaGVhZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9tYXRlcmlhbC1jb21wb25lbnRzL3R5cGVhaGVhZC9yZWN1cnN5dmUtbmd4LW1hdGVyaWFsLWNvbXBvbmVudHMtdHlwZWFoZWFkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
|