@micropermit/client-angular 0.1.8 → 0.2.5

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.
@@ -0,0 +1,141 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ import { Directive, forwardRef, Input } from '@angular/core';
6
+ import { FormGroup, NG_ASYNC_VALIDATORS } from '@angular/forms';
7
+ import { timer } from 'rxjs';
8
+ import { map, switchMap } from 'rxjs/operators';
9
+ import { CallableLink } from '../links/callablelink';
10
+ export class MicroLinkValidateDirective {
11
+ constructor() {
12
+ this.UNSET = "";
13
+ this.microLinkValidateField = null;
14
+ this.microLinkValidateValue = this.UNSET;
15
+ this.microLinkValidateDebounce = 500;
16
+ }
17
+ /**
18
+ * @param {?} control
19
+ * @return {?}
20
+ */
21
+ validate(control) {
22
+ return timer(this.microLinkValidateDebounce).pipe(switchMap((/**
23
+ * @return {?}
24
+ */
25
+ () => {
26
+ /** @type {?} */
27
+ let validateValue = this.microLinkValidateValue;
28
+ if (validateValue === this.UNSET) {
29
+ validateValue = control.value;
30
+ }
31
+ /** @type {?} */
32
+ let obj = {};
33
+ if (this.microLinkValidateField) {
34
+ obj[this.microLinkValidateField] = validateValue;
35
+ }
36
+ else {
37
+ obj = validateValue;
38
+ }
39
+ return this.microLinkValidate.callWithObs(obj, null).pipe(map((/**
40
+ * @param {?} validationRes
41
+ * @return {?}
42
+ */
43
+ validationRes => {
44
+ /** @type {?} */
45
+ let hasErrors = false;
46
+ if (this.microLinkValidateField) {
47
+ if (validationRes[this.microLinkValidateField] != null) {
48
+ hasErrors = true;
49
+ }
50
+ }
51
+ else {
52
+ for (let key in validationRes) {
53
+ if (validationRes[key] != null) {
54
+ hasErrors = true;
55
+ }
56
+ }
57
+ }
58
+ if (hasErrors) {
59
+ this.result = validationRes;
60
+ return {
61
+ validateMicroLink: this.result
62
+ };
63
+ }
64
+ else {
65
+ this.result = null;
66
+ return null;
67
+ }
68
+ })));
69
+ })));
70
+ }
71
+ /**
72
+ * @param {?} control
73
+ * @return {?}
74
+ */
75
+ getControlName(control) {
76
+ /** @type {?} */
77
+ let controlName = null;
78
+ /** @type {?} */
79
+ let parent = control.parent;
80
+ // only such parent, which is FormGroup, has a dictionary
81
+ // with control-names as a key and a form-control as a value
82
+ if (parent instanceof FormGroup) {
83
+ // now we will iterate those keys (i.e. names of controls)
84
+ Object.keys(parent.controls).forEach((/**
85
+ * @param {?} name
86
+ * @return {?}
87
+ */
88
+ (name) => {
89
+ // and compare the passed control and
90
+ // a child control of a parent - with provided name (we iterate them all)
91
+ if (control === parent.controls[name]) {
92
+ // both are same: control passed to Validator
93
+ // and this child - are the same references
94
+ controlName = name;
95
+ }
96
+ }));
97
+ }
98
+ // we either found a name or simply return null
99
+ return controlName;
100
+ }
101
+ }
102
+ MicroLinkValidateDirective.decorators = [
103
+ { type: Directive, args: [{
104
+ selector: '[microLinkValidate]',
105
+ providers: [
106
+ {
107
+ provide: NG_ASYNC_VALIDATORS,
108
+ useExisting: forwardRef((/**
109
+ * @return {?}
110
+ */
111
+ () => MicroLinkValidateDirective)),
112
+ multi: true
113
+ }
114
+ ],
115
+ exportAs: 'microValidator'
116
+ },] }
117
+ ];
118
+ MicroLinkValidateDirective.propDecorators = {
119
+ microLinkValidate: [{ type: Input }],
120
+ microLinkValidateField: [{ type: Input }],
121
+ microLinkValidateValue: [{ type: Input }],
122
+ microLinkValidateDebounce: [{ type: Input }]
123
+ };
124
+ if (false) {
125
+ /**
126
+ * @type {?}
127
+ * @private
128
+ */
129
+ MicroLinkValidateDirective.prototype.UNSET;
130
+ /** @type {?} */
131
+ MicroLinkValidateDirective.prototype.microLinkValidate;
132
+ /** @type {?} */
133
+ MicroLinkValidateDirective.prototype.microLinkValidateField;
134
+ /** @type {?} */
135
+ MicroLinkValidateDirective.prototype.microLinkValidateValue;
136
+ /** @type {?} */
137
+ MicroLinkValidateDirective.prototype.microLinkValidateDebounce;
138
+ /** @type {?} */
139
+ MicroLinkValidateDirective.prototype.result;
140
+ }
141
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm8tbGluay12YWxpZGF0ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AbWljcm9wZXJtaXQvY2xpZW50LWFuZ3VsYXIvIiwic291cmNlcyI6WyJsaWIvZGlyZWN0aXZlcy9taWNyby1saW5rLXZhbGlkYXRlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFFSCxTQUFTLEVBQ1QsbUJBQW1CLEVBR3RCLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFhLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUMsR0FBRyxFQUFFLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQWFuRCxNQUFNLE9BQU8sMEJBQTBCO0lBWHZDO1FBYVksVUFBSyxHQUFHLEVBQUUsQ0FBQTtRQU1sQiwyQkFBc0IsR0FBVyxJQUFJLENBQUE7UUFHckMsMkJBQXNCLEdBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQTtRQUd4Qyw4QkFBeUIsR0FBRyxHQUFHLENBQUM7SUF3RXBDLENBQUM7Ozs7O0lBbkVHLFFBQVEsQ0FBQyxPQUF3QjtRQUM3QixPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMseUJBQXlCLENBQUMsQ0FBQyxJQUFJLENBQzdDLFNBQVM7OztRQUFDLEdBQUcsRUFBRTs7Z0JBQ1AsYUFBYSxHQUFHLElBQUksQ0FBQyxzQkFBc0I7WUFDL0MsSUFBSSxhQUFhLEtBQUssSUFBSSxDQUFDLEtBQUssRUFBRTtnQkFDOUIsYUFBYSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUE7YUFDaEM7O2dCQUVHLEdBQUcsR0FBRyxFQUFFO1lBQ1osSUFBSSxJQUFJLENBQUMsc0JBQXNCLEVBQUU7Z0JBQzdCLEdBQUcsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsR0FBRyxhQUFhLENBQUE7YUFDbkQ7aUJBQU07Z0JBQ0gsR0FBRyxHQUFHLGFBQWEsQ0FBQTthQUN0QjtZQUVELE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUNyRCxHQUFHOzs7O1lBQUMsYUFBYSxDQUFDLEVBQUU7O29CQUNaLFNBQVMsR0FBRyxLQUFLO2dCQUNyQixJQUFJLElBQUksQ0FBQyxzQkFBc0IsRUFBRTtvQkFDN0IsSUFBSSxhQUFhLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksSUFBSSxFQUFFO3dCQUNwRCxTQUFTLEdBQUcsSUFBSSxDQUFBO3FCQUNuQjtpQkFDSjtxQkFBTTtvQkFDSCxLQUFLLElBQUksR0FBRyxJQUFJLGFBQWEsRUFBRTt3QkFDM0IsSUFBSSxhQUFhLENBQUMsR0FBRyxDQUFDLElBQUksSUFBSSxFQUFFOzRCQUM1QixTQUFTLEdBQUcsSUFBSSxDQUFBO3lCQUNuQjtxQkFDSjtpQkFDSjtnQkFDRCxJQUFJLFNBQVMsRUFBRTtvQkFDWCxJQUFJLENBQUMsTUFBTSxHQUFHLGFBQWEsQ0FBQTtvQkFDM0IsT0FBTzt3QkFDSCxpQkFBaUIsRUFBRSxJQUFJLENBQUMsTUFBTTtxQkFDakMsQ0FBQTtpQkFFSjtxQkFBTTtvQkFDSCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQTtvQkFDbEIsT0FBTyxJQUFJLENBQUE7aUJBQ2Q7WUFDTCxDQUFDLEVBQUMsQ0FDTCxDQUFBO1FBQ0wsQ0FBQyxFQUFDLENBQ0wsQ0FBQTtJQUNMLENBQUM7Ozs7O0lBRUQsY0FBYyxDQUFDLE9BQXdCOztZQUMvQixXQUFXLEdBQUcsSUFBSTs7WUFDbEIsTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNO1FBRTNCLHlEQUF5RDtRQUN6RCw0REFBNEQ7UUFDNUQsSUFBSSxNQUFNLFlBQVksU0FBUyxFQUFFO1lBQzdCLDBEQUEwRDtZQUMxRCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxPQUFPOzs7O1lBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtnQkFDMUMscUNBQXFDO2dCQUNyQyx5RUFBeUU7Z0JBQ3pFLElBQUksT0FBTyxLQUFLLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUU7b0JBQ25DLDZDQUE2QztvQkFDN0MsNENBQTRDO29CQUM1QyxXQUFXLEdBQUcsSUFBSSxDQUFDO2lCQUN0QjtZQUNMLENBQUMsRUFBQyxDQUFDO1NBQ047UUFDRCwrQ0FBK0M7UUFDL0MsT0FBTyxXQUFXLENBQUM7SUFDdkIsQ0FBQzs7O1lBL0ZKLFNBQVMsU0FBQztnQkFDUCxRQUFRLEVBQUUscUJBQXFCO2dCQUMvQixTQUFTLEVBQUU7b0JBQ1A7d0JBQ0ksT0FBTyxFQUFFLG1CQUFtQjt3QkFDNUIsV0FBVyxFQUFFLFVBQVU7Ozt3QkFBQyxHQUFHLEVBQUUsQ0FBQywwQkFBMEIsRUFBQzt3QkFDekQsS0FBSyxFQUFFLElBQUk7cUJBQ2Q7aUJBQ0o7Z0JBQ0QsUUFBUSxFQUFFLGdCQUFnQjthQUM3Qjs7O2dDQUtJLEtBQUs7cUNBR0wsS0FBSztxQ0FHTCxLQUFLO3dDQUdMLEtBQUs7Ozs7Ozs7SUFYTiwyQ0FBa0I7O0lBRWxCLHVEQUNvQzs7SUFFcEMsNERBQ3FDOztJQUVyQyw0REFDd0M7O0lBRXhDLCtEQUNnQzs7SUFFaEMsNENBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIGZvcndhcmRSZWYsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQWJzdHJhY3RDb250cm9sLFxuICAgIEZvcm1Hcm91cCxcbiAgICBOR19BU1lOQ19WQUxJREFUT1JTLFxuICAgIFZhbGlkYXRpb25FcnJvcnMsXG4gICAgVmFsaWRhdG9yXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgdGltZXJ9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXAsIHN3aXRjaE1hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtDYWxsYWJsZUxpbmt9IGZyb20gJy4uL2xpbmtzL2NhbGxhYmxlbGluayc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW21pY3JvTGlua1ZhbGlkYXRlXScsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE5HX0FTWU5DX1ZBTElEQVRPUlMsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBNaWNyb0xpbmtWYWxpZGF0ZURpcmVjdGl2ZSksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICB9XG4gICAgXSxcbiAgICBleHBvcnRBczogJ21pY3JvVmFsaWRhdG9yJ1xufSlcbmV4cG9ydCBjbGFzcyBNaWNyb0xpbmtWYWxpZGF0ZURpcmVjdGl2ZSBpbXBsZW1lbnRzIFZhbGlkYXRvciB7XG5cbiAgICBwcml2YXRlIFVOU0VUID0gXCJcIlxuXG4gICAgQElucHV0KClcbiAgICBtaWNyb0xpbmtWYWxpZGF0ZTogQ2FsbGFibGVMaW5rPGFueT5cblxuICAgIEBJbnB1dCgpXG4gICAgbWljcm9MaW5rVmFsaWRhdGVGaWVsZDogc3RyaW5nID0gbnVsbFxuXG4gICAgQElucHV0KClcbiAgICBtaWNyb0xpbmtWYWxpZGF0ZVZhbHVlOiBhbnkgPSB0aGlzLlVOU0VUXG5cbiAgICBASW5wdXQoKVxuICAgIG1pY3JvTGlua1ZhbGlkYXRlRGVib3VuY2UgPSA1MDA7XG5cbiAgICBwdWJsaWMgcmVzdWx0OmFueTtcblxuXG4gICAgdmFsaWRhdGUoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogT2JzZXJ2YWJsZTxWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbD4ge1xuICAgICAgICByZXR1cm4gdGltZXIodGhpcy5taWNyb0xpbmtWYWxpZGF0ZURlYm91bmNlKS5waXBlKFxuICAgICAgICAgICAgc3dpdGNoTWFwKCgpID0+IHtcbiAgICAgICAgICAgICAgICBsZXQgdmFsaWRhdGVWYWx1ZSA9IHRoaXMubWljcm9MaW5rVmFsaWRhdGVWYWx1ZVxuICAgICAgICAgICAgICAgIGlmICh2YWxpZGF0ZVZhbHVlID09PSB0aGlzLlVOU0VUKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhbGlkYXRlVmFsdWUgPSBjb250cm9sLnZhbHVlXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgbGV0IG9iaiA9IHt9XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMubWljcm9MaW5rVmFsaWRhdGVGaWVsZCkge1xuICAgICAgICAgICAgICAgICAgICBvYmpbdGhpcy5taWNyb0xpbmtWYWxpZGF0ZUZpZWxkXSA9IHZhbGlkYXRlVmFsdWVcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBvYmogPSB2YWxpZGF0ZVZhbHVlXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMubWljcm9MaW5rVmFsaWRhdGUuY2FsbFdpdGhPYnMob2JqLCBudWxsKS5waXBlKFxuICAgICAgICAgICAgICAgICAgICBtYXAodmFsaWRhdGlvblJlcyA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgaGFzRXJyb3JzID0gZmFsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLm1pY3JvTGlua1ZhbGlkYXRlRmllbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodmFsaWRhdGlvblJlc1t0aGlzLm1pY3JvTGlua1ZhbGlkYXRlRmllbGRdICE9IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFzRXJyb3JzID0gdHJ1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChsZXQga2V5IGluIHZhbGlkYXRpb25SZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHZhbGlkYXRpb25SZXNba2V5XSAhPSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXNFcnJvcnMgPSB0cnVlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaGFzRXJyb3JzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZXN1bHQgPSB2YWxpZGF0aW9uUmVzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsaWRhdGVNaWNyb0xpbms6IHRoaXMucmVzdWx0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVzdWx0ID0gbnVsbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgfSlcbiAgICAgICAgKVxuICAgIH1cblxuICAgIGdldENvbnRyb2xOYW1lKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCkge1xuICAgICAgICBsZXQgY29udHJvbE5hbWUgPSBudWxsO1xuICAgICAgICBsZXQgcGFyZW50ID0gY29udHJvbC5wYXJlbnQ7XG5cbiAgICAgICAgLy8gb25seSBzdWNoIHBhcmVudCwgd2hpY2ggaXMgRm9ybUdyb3VwLCBoYXMgYSBkaWN0aW9uYXJ5XG4gICAgICAgIC8vIHdpdGggY29udHJvbC1uYW1lcyBhcyBhIGtleSBhbmQgYSBmb3JtLWNvbnRyb2wgYXMgYSB2YWx1ZVxuICAgICAgICBpZiAocGFyZW50IGluc3RhbmNlb2YgRm9ybUdyb3VwKSB7XG4gICAgICAgICAgICAvLyBub3cgd2Ugd2lsbCBpdGVyYXRlIHRob3NlIGtleXMgKGkuZS4gbmFtZXMgb2YgY29udHJvbHMpXG4gICAgICAgICAgICBPYmplY3Qua2V5cyhwYXJlbnQuY29udHJvbHMpLmZvckVhY2goKG5hbWUpID0+IHtcbiAgICAgICAgICAgICAgICAvLyBhbmQgY29tcGFyZSB0aGUgcGFzc2VkIGNvbnRyb2wgYW5kXG4gICAgICAgICAgICAgICAgLy8gYSBjaGlsZCBjb250cm9sIG9mIGEgcGFyZW50IC0gd2l0aCBwcm92aWRlZCBuYW1lICh3ZSBpdGVyYXRlIHRoZW0gYWxsKVxuICAgICAgICAgICAgICAgIGlmIChjb250cm9sID09PSBwYXJlbnQuY29udHJvbHNbbmFtZV0pIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gYm90aCBhcmUgc2FtZTogY29udHJvbCBwYXNzZWQgdG8gVmFsaWRhdG9yXG4gICAgICAgICAgICAgICAgICAgIC8vICBhbmQgdGhpcyBjaGlsZCAtIGFyZSB0aGUgc2FtZSByZWZlcmVuY2VzXG4gICAgICAgICAgICAgICAgICAgIGNvbnRyb2xOYW1lID0gbmFtZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICAvLyB3ZSBlaXRoZXIgZm91bmQgYSBuYW1lIG9yIHNpbXBseSByZXR1cm4gbnVsbFxuICAgICAgICByZXR1cm4gY29udHJvbE5hbWU7XG4gICAgfVxuXG59XG4iXX0=
@@ -176,7 +176,7 @@ export class LinkFieldPagingSupport {
176
176
  reflectChanges() {
177
177
  /** @type {?} */
178
178
  const lastRow = this.lastRow();
179
- if (lastRow) {
179
+ if (lastRow && lastRow.__meta) {
180
180
  this.loadedCompletely = lastRow.__meta.nextPage == null;
181
181
  }
182
182
  else {
@@ -315,4 +315,4 @@ if (false) {
315
315
  /** @type {?} */
316
316
  SortInfo.prototype.dir;
317
317
  }
318
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay1maWVsZC1wYWdpbmctc3VwcG9ydC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BtaWNyb3Blcm1pdC9jbGllbnQtYW5ndWxhci8iLCJzb3VyY2VzIjpbImxpYi9saW5rLWZpZWxkLXBhZ2luZy1zdXBwb3J0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFLQSxNQUFNLE9BQU8sc0JBQXNCOzs7Ozs7SUFFL0IsWUFDWSxRQUFrQyxFQUNsQyxpQkFBb0MsRUFDckMsWUFBb0IsR0FBRztRQUZ0QixhQUFRLEdBQVIsUUFBUSxDQUEwQjtRQUNsQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3JDLGNBQVMsR0FBVCxTQUFTLENBQWM7UUFJMUIsVUFBSyxHQUFlLElBQUksQ0FBQztRQUUxQixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUN6QixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLFVBQUssR0FBVSxJQUFJLENBQUM7UUFDcEIsd0JBQW1CLEdBQWlCLElBQUksQ0FBQztRQXNDekMsb0JBQWU7OztRQUFHLEdBQUcsRUFBRTtZQUMzQixJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNCLENBQUMsRUFBQztJQWhERixDQUFDOzs7O0lBYUQsSUFBSSxJQUFJO1FBQ0osSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDakIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1NBQ3ZCO1FBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3RCLENBQUM7Ozs7Ozs7SUFFTSxNQUFNLENBQUMsSUFBSSxDQUNkLFFBQWtDLEVBQ2xDLGlCQUFvQyxFQUNwQyxZQUFvQixHQUFHO1FBRXZCLE9BQU8sSUFBSSxzQkFBc0IsQ0FBQyxRQUFRLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDOUUsQ0FBQzs7Ozs7O0lBRU0sU0FBUyxDQUFDLEtBQWlCLEVBQUUsZUFB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bEIsSUFBSSxJQUFJLENBQUMsbUJBQW1CLEVBQUU7WUFDMUIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUM7U0FDbkM7SUFDTCxDQUFDO0NBQ0o7Ozs7OztJQWpMRyx1Q0FBaUM7O0lBRWpDLDJDQUF5Qjs7Ozs7SUFDekIsa0RBQWlDOzs7OztJQUNqQywyQ0FBMEI7Ozs7O0lBQzFCLHVDQUE0Qjs7Ozs7SUFDNUIscURBQWlEOztJQUVqRCxvREFBaUQ7O0lBQ2pELG1EQUF1RDs7Ozs7SUFtQ3ZELGlEQUVFOzs7OztJQXBERSwwQ0FBMEM7Ozs7O0lBQzFDLG1EQUE0Qzs7SUFDNUMsMkNBQThCOztBQXVMdEMsTUFBTSxPQUFPLFFBQVE7Ozs7O0lBQ2pCLFlBQW1CLEtBQWEsRUFBUyxHQUFXO1FBQWpDLFVBQUssR0FBTCxLQUFLLENBQVE7UUFBUyxRQUFHLEdBQUgsR0FBRyxDQUFRO1FBQ2hELElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEtBQUssS0FBSyxJQUFJLElBQUksQ0FBQyxHQUFHLEtBQUssTUFBTSxDQUFDLEVBQUU7WUFDOUMsTUFBTSxLQUFLLENBQUMscUNBQXFDLENBQUMsQ0FBQztTQUN0RDtJQUNMLENBQUM7Q0FDSjs7O0lBTmUseUJBQW9COztJQUFFLHVCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0b3JSZWZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtMaW5rRmllbGR9IGZyb20gJy4vbGlua3MvbGlua2ZpZWxkJztcbmltcG9ydCB7TWljcm9PYmplY3R9IGZyb20gJy4vbWljcm9vYmplY3QnO1xuXG5leHBvcnQgY2xhc3MgTGlua0ZpZWxkUGFnaW5nU3VwcG9ydCB7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBwYWdlTGluazogTGlua0ZpZWxkPE1pY3JvT2JqZWN0W10+LFxuICAgICAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHVibGljIHBhZ2VMaW1pdDogbnVtYmVyID0gMjAwXG4gICAgKSB7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzb3J0czogU29ydEluZm9bXSA9IG51bGw7XG5cbiAgICBwdWJsaWMgaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBsb2FkZWRDb21wbGV0ZWx5ID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBoYXNMb2FkZWQgPSBmYWxzZTtcbiAgICBwcml2YXRlIF9yb3dzOiBhbnlbXSA9IG51bGw7XG4gICAgcHJpdmF0ZSBsb2FkaW5nU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gPSBudWxsO1xuXG4gICAgcHVibGljIHJvd3NDaGFuZ2VDYWxsYmFjazogKHJvd3M6IGFueVtdKSA9PiB2b2lkO1xuICAgIHB1YmxpYyBpc0xvYWRpbmdDYWxsYmFjazogKGlzTG9hZGluZzogYm9vbGVhbikgPT4gdm9pZDtcblxuICAgIGdldCByb3dzKCk6IGFueVtdIHtcbiAgICAgICAgaWYgKCF0aGlzLmhhc0xvYWRlZCkge1xuICAgICAgICAgICAgdGhpcy5sb2FkTmV4dFBhZ2UoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5fcm93cztcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGZyb20oXG4gICAgICAgIHBhZ2VMaW5rOiBMaW5rRmllbGQ8TWljcm9PYmplY3RbXT4sXG4gICAgICAgIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcGFnZUxpbWl0OiBudW1iZXIgPSAyMDBcbiAgICApOiBMaW5rRmllbGRQYWdpbmdTdXBwb3J0IHtcbiAgICAgICAgcmV0dXJuIG5ldyBMaW5rRmllbGRQYWdpbmdTdXBwb3J0KHBhZ2VMaW5rLCBjaGFuZ2VEZXRlY3RvclJlZiwgcGFnZUxpbWl0KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXBwbHlTb3J0KHNvcnRzOiBTb3J0SW5mb1tdLCBleHRlcm5hbFNvcnRpbmcgPSB0cnVlKSB7XG4gICAgICAgIHRoaXMuaGFzTG9hZGVkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuc29ydHMgPSBudWxsO1xuICAgICAgICB0aGlzLl9yb3dzID0gbnVsbDtcblxuICAgICAgICBpZiAoZXh0ZXJuYWxTb3J0aW5nKSB7XG4gICAgICAgICAgICB0aGlzLnNvcnRzID0gc29ydHM7XG4gICAgICAgICAgICB0aGlzLmxvYWROZXh0UGFnZSgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmxvYWRlZENvbXBsZXRlbHkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmxvYWROZXh0UGFnZShudWxsKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIHByaXZhdGUgbG9hZGluZ0NhbGxiYWNrID0gKCkgPT4ge1xuICAgICAgICB0aGlzLnNldExvYWRpbmcoZmFsc2UpO1xuICAgIH07XG5cbiAgICBwdWJsaWMgbG9hZE5leHRQYWdlKHBhZ2VTaXplOiBudW1iZXIgPSB0aGlzLnBhZ2VMaW1pdCwgcmVzdWx0Q2FsbGJhY2s6ICgocGFnZTogYW55W10sIGFsbDogYW55W10pID0+IHZvaWQpID0gbnVsbCkge1xuICAgICAgICBpZiAodGhpcy5wYWdlTGluayAmJiAhdGhpcy5pc0xvYWRpbmcpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmxvYWRpbmdTdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICAgICAgICB0aGlzLmxvYWRpbmdTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgICAgICB0aGlzLmxvYWRpbmdTdWJzY3JpcHRpb24gPSBudWxsO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLmhhc0xvYWRlZCA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLmxvYWRlZENvbXBsZXRlbHkgPSBmYWxzZTtcbiAgICAgICAgICAgIGlmICh0aGlzLl9yb3dzID09IG51bGwpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldExvYWRpbmcodHJ1ZSk7XG5cbiAgICAgICAgICAgICAgICBjb25zdCByZXFPcHRpb25zOiBhbnkgPSB7fTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5zb3J0cyAhPSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlcU9wdGlvbnMuc29ydGluZyA9IHRoaXMuc29ydHM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChwYWdlU2l6ZSAhPSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlcU9wdGlvbnMucGFnZVNpemUgPSBwYWdlU2l6ZTtcbiAgICAgICAgICAgICAgICB9XG5cblxuICAgICAgICAgICAgICAgIHRoaXMubG9hZGluZ1N1YnNjcmlwdGlvbiA9IHRoaXMucGFnZUxpbmsuaW5pdFdpdGhPYnMobnVsbCwgcmVxT3B0aW9ucykuc3Vic2NyaWJlKChmaXJzdFBhZ2UpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRSb3dzKGZpcnN0UGFnZSwgcmVzdWx0Q2FsbGJhY2spO1xuICAgICAgICAgICAgICAgIH0sIHRoaXMubG9hZGluZ0NhbGxiYWNrLCB0aGlzLmxvYWRpbmdDYWxsYmFjayk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnN0IGxhc3RSb3cgPSB0aGlzLmxhc3RSb3coKTtcbiAgICAgICAgICAgICAgICBpZiAobGFzdFJvdykge1xuICAgICAgICAgICAgICAgICAgICBpZiAobGFzdFJvdy5fX21ldGEubmV4dFBhZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCByZXFPcHRpb25zID0gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChwYWdlU2l6ZSAhPSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxT3B0aW9ucyA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFnZVNpemU6IHBhZ2VTaXplXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbmV4dFBhZ2VPYnM6IE9ic2VydmFibGU8TWljcm9PYmplY3RbXT4gPSBsYXN0Um93Ll9fbWV0YS5uZXh0UGFnZS5pbml0V2l0aE9icyhudWxsLCByZXFPcHRpb25zKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChuZXh0UGFnZU9icykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0TG9hZGluZyh0cnVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmxvYWRpbmdTdWJzY3JpcHRpb24gPSBuZXh0UGFnZU9icy5zdWJzY3JpYmUoKG5leHRQYWdlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0Um93cyhuZXh0UGFnZSwgcmVzdWx0Q2FsbGJhY2spO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIHRoaXMubG9hZGluZ0NhbGxiYWNrLCB0aGlzLmxvYWRpbmdDYWxsYmFjayk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAoIXRoaXMucGFnZUxpbmspIHtcbiAgICAgICAgICAgIHRoaXMuY2xlYXJSb3dzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgbG9hZEV2ZXJ5dGhpbmcoKSB7XG4gICAgICAgIHRoaXMubG9hZE5leHRQYWdlKG51bGwpO1xuICAgIH1cblxuICAgIHByaXZhdGUgbGFzdFJvdygpOiBNaWNyb09iamVjdCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yb3dzW3RoaXMuX3Jvd3MubGVuZ3RoIC0gMV07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRSb3dzKGFkZGl0aW9uYWxQYWdlOiBhbnlbXSwgbG9hZENhbGxiYWNrOiAoKHBhZ2U6IGFueVtdLCBhbGw6IGFueVtdKSA9PiB2b2lkKSkge1xuICAgICAgICBpZiAodGhpcy5fcm93cykge1xuICAgICAgICAgICAgdGhpcy5fcm93cyA9IFsuLi50aGlzLnJvd3MsIC4uLmFkZGl0aW9uYWxQYWdlXTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX3Jvd3MgPSBhZGRpdGlvbmFsUGFnZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAobG9hZENhbGxiYWNrKSB7XG4gICAgICAgICAgICBsb2FkQ2FsbGJhY2soYWRkaXRpb25hbFBhZ2UsIHRoaXMuX3Jvd3MpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMucmVmbGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNsZWFyUm93cygpIHtcbiAgICAgICAgaWYgKHRoaXMuX3Jvd3MgIT0gbnVsbCkge1xuICAgICAgICAgICAgdGhpcy5fcm93cyA9IG51bGw7XG4gICAgICAgICAgICB0aGlzLnJlZmxlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHJlZmxlY3RDaGFuZ2VzKCkge1xuICAgICAgICBjb25zdCBsYXN0Um93ID0gdGhpcy5sYXN0Um93KCk7XG4gICAgICAgIGlmIChsYXN0Um93KSB7XG4gICAgICAgICAgICB0aGlzLmxvYWRlZENvbXBsZXRlbHkgPSBsYXN0Um93Ll9fbWV0YS5uZXh0UGFnZSA9PSBudWxsO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5sb2FkZWRDb21wbGV0ZWx5ID0gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5yb3dzQ2hhbmdlQ2FsbGJhY2spIHtcbiAgICAgICAgICAgIHRoaXMucm93c0NoYW5nZUNhbGxiYWNrKHRoaXMuX3Jvd3MpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0TG9hZGluZyhpc0xvYWRpbmc6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBpc0xvYWRpbmc7XG4gICAgICAgIGlmICh0aGlzLmlzTG9hZGluZ0NhbGxiYWNrKSB7XG4gICAgICAgICAgICB0aGlzLmlzTG9hZGluZ0NhbGxiYWNrKHRoaXMuaXNMb2FkaW5nKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZGlzcG9zZSgpIHtcbiAgICAgICAgdGhpcy5yb3dzQ2hhbmdlQ2FsbGJhY2sgPSBudWxsO1xuICAgICAgICB0aGlzLmlzTG9hZGluZ0NhbGxiYWNrID0gbnVsbDtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0UGFnZUxpbmsocGFnZUxpbms6IExpbmtGaWVsZDxNaWNyb09iamVjdFtdPikge1xuICAgICAgICB0aGlzLmNsZWFyU3RhdGUoKTtcbiAgICAgICAgdGhpcy5wYWdlTGluayA9IHBhZ2VMaW5rO1xuICAgICAgICB0aGlzLmxvYWROZXh0UGFnZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBoYXNMb2FkZWRDb21wbGV0ZWx5KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5sb2FkZWRDb21wbGV0ZWx5O1xuICAgIH1cblxuICAgIHB1YmxpYyBpbml0KHJvd3NDaGFuZ2VDYWxsYmFjazogKHJvd3M6IGFueVtdKSA9PiB2b2lkLCBpc0xvYWRpbmdDYWxsYmFjazogKChpc0xvYWRpbmc6IGJvb2xlYW4pID0+IHZvaWQpID0gbnVsbCkge1xuICAgICAgICB0aGlzLnJvd3NDaGFuZ2VDYWxsYmFjayA9IHJvd3NDaGFuZ2VDYWxsYmFjaztcbiAgICAgICAgdGhpcy5pc0xvYWRpbmdDYWxsYmFjayA9IGlzTG9hZGluZ0NhbGxiYWNrO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2xlYXJTdGF0ZSgpIHtcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5sb2FkZWRDb21wbGV0ZWx5ID0gZmFsc2U7XG4gICAgICAgIHRoaXMuaGFzTG9hZGVkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuX3Jvd3MgPSBudWxsO1xuICAgICAgICBpZiAodGhpcy5sb2FkaW5nU3Vic2NyaXB0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLmxvYWRpbmdTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgIHRoaXMubG9hZGluZ1N1YnNjcmlwdGlvbiA9IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBTb3J0SW5mbyB7XG4gICAgY29uc3RydWN0b3IocHVibGljIGZpZWxkOiBzdHJpbmcsIHB1YmxpYyBkaXI6IHN0cmluZykge1xuICAgICAgICB0aGlzLmRpciA9IGRpci50b1VwcGVyQ2FzZSgpO1xuICAgICAgICBpZiAoISh0aGlzLmRpciA9PT0gJ0FTQycgfHwgdGhpcy5kaXIgPT09ICdERVNDJykpIHtcbiAgICAgICAgICAgIHRocm93IEVycm9yKCdkaXIgY2FuIG9ubHkgYmUgXFwnQVNDXFwnIG9yIFxcJ0RFU0NcXCcnKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
318
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay1maWVsZC1wYWdpbmctc3VwcG9ydC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BtaWNyb3Blcm1pdC9jbGllbnQtYW5ndWxhci8iLCJzb3VyY2VzIjpbImxpYi9saW5rLWZpZWxkLXBhZ2luZy1zdXBwb3J0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFLQSxNQUFNLE9BQU8sc0JBQXNCOzs7Ozs7SUFFL0IsWUFDWSxRQUFrQyxFQUNsQyxpQkFBb0MsRUFDckMsWUFBb0IsR0FBRztRQUZ0QixhQUFRLEdBQVIsUUFBUSxDQUEwQjtRQUNsQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3JDLGNBQVMsR0FBVCxTQUFTLENBQWM7UUFJMUIsVUFBSyxHQUFlLElBQUksQ0FBQztRQUUxQixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUN6QixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLFVBQUssR0FBVSxJQUFJLENBQUM7UUFDcEIsd0JBQW1CLEdBQWlCLElBQUksQ0FBQztRQXNDekMsb0JBQWU7OztRQUFHLEdBQUcsRUFBRTtZQUMzQixJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNCLENBQUMsRUFBQztJQWhERixDQUFDOzs7O0lBYUQsSUFBSSxJQUFJO1FBQ0osSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDakIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1NBQ3ZCO1FBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3RCLENBQUM7Ozs7Ozs7SUFFTSxNQUFNLENBQUMsSUFBSSxDQUNkLFFBQWtDLEVBQ2xDLGlCQUFvQyxFQUNwQyxZQUFvQixHQUFHO1FBRXZCLE9BQU8sSUFBSSxzQkFBc0IsQ0FBQyxRQUFRLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDOUUsQ0FBQzs7Ozs7O0lBRU0sU0FBUyxDQUFDLEtBQWlCLEVBQUUsZUFB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QUssR0FBRyxJQUFJLENBQUM7UUFDbEIsSUFBSSxJQUFJLENBQUMsbUJBQW1CLEVBQUU7WUFDMUIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUM7U0FDbkM7SUFDTCxDQUFDO0NBQ0o7Ozs7OztJQWpMRyx1Q0FBaUM7O0lBRWpDLDJDQUF5Qjs7Ozs7SUFDekIsa0RBQWlDOzs7OztJQUNqQywyQ0FBMEI7Ozs7O0lBQzFCLHVDQUE0Qjs7Ozs7SUFDNUIscURBQWlEOztJQUVqRCxvREFBaUQ7O0lBQ2pELG1EQUF1RDs7Ozs7SUFtQ3ZELGlEQUVFOzs7OztJQXBERSwwQ0FBMEM7Ozs7O0lBQzFDLG1EQUE0Qzs7SUFDNUMsMkNBQThCOztBQXVMdEMsTUFBTSxPQUFPLFFBQVE7Ozs7O0lBQ2pCLFlBQW1CLEtBQWEsRUFBUyxHQUFXO1FBQWpDLFVBQUssR0FBTCxLQUFLLENBQVE7UUFBUyxRQUFHLEdBQUgsR0FBRyxDQUFRO1FBQ2hELElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEtBQUssS0FBSyxJQUFJLElBQUksQ0FBQyxHQUFHLEtBQUssTUFBTSxDQUFDLEVBQUU7WUFDOUMsTUFBTSxLQUFLLENBQUMscUNBQXFDLENBQUMsQ0FBQztTQUN0RDtJQUNMLENBQUM7Q0FDSjs7O0lBTmUseUJBQW9COztJQUFFLHVCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0b3JSZWZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtMaW5rRmllbGR9IGZyb20gJy4vbGlua3MvbGlua2ZpZWxkJztcbmltcG9ydCB7TWljcm9PYmplY3R9IGZyb20gJy4vbWljcm9vYmplY3QnO1xuXG5leHBvcnQgY2xhc3MgTGlua0ZpZWxkUGFnaW5nU3VwcG9ydCB7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBwYWdlTGluazogTGlua0ZpZWxkPE1pY3JvT2JqZWN0W10+LFxuICAgICAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHVibGljIHBhZ2VMaW1pdDogbnVtYmVyID0gMjAwXG4gICAgKSB7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzb3J0czogU29ydEluZm9bXSA9IG51bGw7XG5cbiAgICBwdWJsaWMgaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBsb2FkZWRDb21wbGV0ZWx5ID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBoYXNMb2FkZWQgPSBmYWxzZTtcbiAgICBwcml2YXRlIF9yb3dzOiBhbnlbXSA9IG51bGw7XG4gICAgcHJpdmF0ZSBsb2FkaW5nU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gPSBudWxsO1xuXG4gICAgcHVibGljIHJvd3NDaGFuZ2VDYWxsYmFjazogKHJvd3M6IGFueVtdKSA9PiB2b2lkO1xuICAgIHB1YmxpYyBpc0xvYWRpbmdDYWxsYmFjazogKGlzTG9hZGluZzogYm9vbGVhbikgPT4gdm9pZDtcblxuICAgIGdldCByb3dzKCk6IGFueVtdIHtcbiAgICAgICAgaWYgKCF0aGlzLmhhc0xvYWRlZCkge1xuICAgICAgICAgICAgdGhpcy5sb2FkTmV4dFBhZ2UoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcy5fcm93cztcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGZyb20oXG4gICAgICAgIHBhZ2VMaW5rOiBMaW5rRmllbGQ8TWljcm9PYmplY3RbXT4sXG4gICAgICAgIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcGFnZUxpbWl0OiBudW1iZXIgPSAyMDBcbiAgICApOiBMaW5rRmllbGRQYWdpbmdTdXBwb3J0IHtcbiAgICAgICAgcmV0dXJuIG5ldyBMaW5rRmllbGRQYWdpbmdTdXBwb3J0KHBhZ2VMaW5rLCBjaGFuZ2VEZXRlY3RvclJlZiwgcGFnZUxpbWl0KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXBwbHlTb3J0KHNvcnRzOiBTb3J0SW5mb1tdLCBleHRlcm5hbFNvcnRpbmcgPSB0cnVlKSB7XG4gICAgICAgIHRoaXMuaGFzTG9hZGVkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuc29ydHMgPSBudWxsO1xuICAgICAgICB0aGlzLl9yb3dzID0gbnVsbDtcblxuICAgICAgICBpZiAoZXh0ZXJuYWxTb3J0aW5nKSB7XG4gICAgICAgICAgICB0aGlzLnNvcnRzID0gc29ydHM7XG4gICAgICAgICAgICB0aGlzLmxvYWROZXh0UGFnZSgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmxvYWRlZENvbXBsZXRlbHkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmxvYWROZXh0UGFnZShudWxsKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIHByaXZhdGUgbG9hZGluZ0NhbGxiYWNrID0gKCkgPT4ge1xuICAgICAgICB0aGlzLnNldExvYWRpbmcoZmFsc2UpO1xuICAgIH07XG5cbiAgICBwdWJsaWMgbG9hZE5leHRQYWdlKHBhZ2VTaXplOiBudW1iZXIgPSB0aGlzLnBhZ2VMaW1pdCwgcmVzdWx0Q2FsbGJhY2s6ICgocGFnZTogYW55W10sIGFsbDogYW55W10pID0+IHZvaWQpID0gbnVsbCkge1xuICAgICAgICBpZiAodGhpcy5wYWdlTGluayAmJiAhdGhpcy5pc0xvYWRpbmcpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmxvYWRpbmdTdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICAgICAgICB0aGlzLmxvYWRpbmdTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgICAgICB0aGlzLmxvYWRpbmdTdWJzY3JpcHRpb24gPSBudWxsO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLmhhc0xvYWRlZCA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLmxvYWRlZENvbXBsZXRlbHkgPSBmYWxzZTtcbiAgICAgICAgICAgIGlmICh0aGlzLl9yb3dzID09IG51bGwpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldExvYWRpbmcodHJ1ZSk7XG5cbiAgICAgICAgICAgICAgICBjb25zdCByZXFPcHRpb25zOiBhbnkgPSB7fTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5zb3J0cyAhPSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlcU9wdGlvbnMuc29ydGluZyA9IHRoaXMuc29ydHM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChwYWdlU2l6ZSAhPSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICAgIHJlcU9wdGlvbnMucGFnZVNpemUgPSBwYWdlU2l6ZTtcbiAgICAgICAgICAgICAgICB9XG5cblxuICAgICAgICAgICAgICAgIHRoaXMubG9hZGluZ1N1YnNjcmlwdGlvbiA9IHRoaXMucGFnZUxpbmsuaW5pdFdpdGhPYnMobnVsbCwgcmVxT3B0aW9ucykuc3Vic2NyaWJlKChmaXJzdFBhZ2UpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRSb3dzKGZpcnN0UGFnZSwgcmVzdWx0Q2FsbGJhY2spO1xuICAgICAgICAgICAgICAgIH0sIHRoaXMubG9hZGluZ0NhbGxiYWNrLCB0aGlzLmxvYWRpbmdDYWxsYmFjayk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnN0IGxhc3RSb3cgPSB0aGlzLmxhc3RSb3coKTtcbiAgICAgICAgICAgICAgICBpZiAobGFzdFJvdykge1xuICAgICAgICAgICAgICAgICAgICBpZiAobGFzdFJvdy5fX21ldGEubmV4dFBhZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCByZXFPcHRpb25zID0gbnVsbDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChwYWdlU2l6ZSAhPSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxT3B0aW9ucyA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFnZVNpemU6IHBhZ2VTaXplXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgbmV4dFBhZ2VPYnM6IE9ic2VydmFibGU8TWljcm9PYmplY3RbXT4gPSBsYXN0Um93Ll9fbWV0YS5uZXh0UGFnZS5pbml0V2l0aE9icyhudWxsLCByZXFPcHRpb25zKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChuZXh0UGFnZU9icykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0TG9hZGluZyh0cnVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmxvYWRpbmdTdWJzY3JpcHRpb24gPSBuZXh0UGFnZU9icy5zdWJzY3JpYmUoKG5leHRQYWdlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0Um93cyhuZXh0UGFnZSwgcmVzdWx0Q2FsbGJhY2spO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIHRoaXMubG9hZGluZ0NhbGxiYWNrLCB0aGlzLmxvYWRpbmdDYWxsYmFjayk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAoIXRoaXMucGFnZUxpbmspIHtcbiAgICAgICAgICAgIHRoaXMuY2xlYXJSb3dzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgbG9hZEV2ZXJ5dGhpbmcoKSB7XG4gICAgICAgIHRoaXMubG9hZE5leHRQYWdlKG51bGwpO1xuICAgIH1cblxuICAgIHByaXZhdGUgbGFzdFJvdygpOiBNaWNyb09iamVjdCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yb3dzW3RoaXMuX3Jvd3MubGVuZ3RoIC0gMV07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRSb3dzKGFkZGl0aW9uYWxQYWdlOiBhbnlbXSwgbG9hZENhbGxiYWNrOiAoKHBhZ2U6IGFueVtdLCBhbGw6IGFueVtdKSA9PiB2b2lkKSkge1xuICAgICAgICBpZiAodGhpcy5fcm93cykge1xuICAgICAgICAgICAgdGhpcy5fcm93cyA9IFsuLi50aGlzLnJvd3MsIC4uLmFkZGl0aW9uYWxQYWdlXTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX3Jvd3MgPSBhZGRpdGlvbmFsUGFnZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAobG9hZENhbGxiYWNrKSB7XG4gICAgICAgICAgICBsb2FkQ2FsbGJhY2soYWRkaXRpb25hbFBhZ2UsIHRoaXMuX3Jvd3MpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMucmVmbGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNsZWFyUm93cygpIHtcbiAgICAgICAgaWYgKHRoaXMuX3Jvd3MgIT0gbnVsbCkge1xuICAgICAgICAgICAgdGhpcy5fcm93cyA9IG51bGw7XG4gICAgICAgICAgICB0aGlzLnJlZmxlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHJlZmxlY3RDaGFuZ2VzKCkge1xuICAgICAgICBjb25zdCBsYXN0Um93ID0gdGhpcy5sYXN0Um93KCk7XG4gICAgICAgIGlmIChsYXN0Um93ICYmIGxhc3RSb3cuX19tZXRhKSB7XG4gICAgICAgICAgICB0aGlzLmxvYWRlZENvbXBsZXRlbHkgPSBsYXN0Um93Ll9fbWV0YS5uZXh0UGFnZSA9PSBudWxsO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5sb2FkZWRDb21wbGV0ZWx5ID0gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5yb3dzQ2hhbmdlQ2FsbGJhY2spIHtcbiAgICAgICAgICAgIHRoaXMucm93c0NoYW5nZUNhbGxiYWNrKHRoaXMuX3Jvd3MpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0TG9hZGluZyhpc0xvYWRpbmc6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBpc0xvYWRpbmc7XG4gICAgICAgIGlmICh0aGlzLmlzTG9hZGluZ0NhbGxiYWNrKSB7XG4gICAgICAgICAgICB0aGlzLmlzTG9hZGluZ0NhbGxiYWNrKHRoaXMuaXNMb2FkaW5nKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZGlzcG9zZSgpIHtcbiAgICAgICAgdGhpcy5yb3dzQ2hhbmdlQ2FsbGJhY2sgPSBudWxsO1xuICAgICAgICB0aGlzLmlzTG9hZGluZ0NhbGxiYWNrID0gbnVsbDtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0UGFnZUxpbmsocGFnZUxpbms6IExpbmtGaWVsZDxNaWNyb09iamVjdFtdPikge1xuICAgICAgICB0aGlzLmNsZWFyU3RhdGUoKTtcbiAgICAgICAgdGhpcy5wYWdlTGluayA9IHBhZ2VMaW5rO1xuICAgICAgICB0aGlzLmxvYWROZXh0UGFnZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBoYXNMb2FkZWRDb21wbGV0ZWx5KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5sb2FkZWRDb21wbGV0ZWx5O1xuICAgIH1cblxuICAgIHB1YmxpYyBpbml0KHJvd3NDaGFuZ2VDYWxsYmFjazogKHJvd3M6IGFueVtdKSA9PiB2b2lkLCBpc0xvYWRpbmdDYWxsYmFjazogKChpc0xvYWRpbmc6IGJvb2xlYW4pID0+IHZvaWQpID0gbnVsbCkge1xuICAgICAgICB0aGlzLnJvd3NDaGFuZ2VDYWxsYmFjayA9IHJvd3NDaGFuZ2VDYWxsYmFjaztcbiAgICAgICAgdGhpcy5pc0xvYWRpbmdDYWxsYmFjayA9IGlzTG9hZGluZ0NhbGxiYWNrO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2xlYXJTdGF0ZSgpIHtcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5sb2FkZWRDb21wbGV0ZWx5ID0gZmFsc2U7XG4gICAgICAgIHRoaXMuaGFzTG9hZGVkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuX3Jvd3MgPSBudWxsO1xuICAgICAgICBpZiAodGhpcy5sb2FkaW5nU3Vic2NyaXB0aW9uKSB7XG4gICAgICAgICAgICB0aGlzLmxvYWRpbmdTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgIHRoaXMubG9hZGluZ1N1YnNjcmlwdGlvbiA9IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBTb3J0SW5mbyB7XG4gICAgY29uc3RydWN0b3IocHVibGljIGZpZWxkOiBzdHJpbmcsIHB1YmxpYyBkaXI6IHN0cmluZykge1xuICAgICAgICB0aGlzLmRpciA9IGRpci50b1VwcGVyQ2FzZSgpO1xuICAgICAgICBpZiAoISh0aGlzLmRpciA9PT0gJ0FTQycgfHwgdGhpcy5kaXIgPT09ICdERVNDJykpIHtcbiAgICAgICAgICAgIHRocm93IEVycm9yKCdkaXIgY2FuIG9ubHkgYmUgXFwnQVNDXFwnIG9yIFxcJ0RFU0NcXCcnKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
@@ -10,6 +10,7 @@ import { MicroClient } from './microclient.service';
10
10
  import { HttpClientModule } from '@angular/common/http';
11
11
  import { CallLinkDirective } from './directives/call-link.directive';
12
12
  import { MicroClientErrorIndicatorComponent } from './components/errorindicator.component';
13
+ import { MicroLinkValidateDirective } from './directives/micro-link-validate.directive';
13
14
  export class MicroClientModule {
14
15
  /**
15
16
  * @return {?}
@@ -37,15 +38,17 @@ MicroClientModule.decorators = [
37
38
  LinkFieldDirective,
38
39
  CallLinkDirective,
39
40
  MicroClientLoadingIndicatorComponent,
40
- MicroClientErrorIndicatorComponent
41
+ MicroClientErrorIndicatorComponent,
42
+ MicroLinkValidateDirective
41
43
  ],
42
44
  exports: [
43
45
  LinkFieldPipe,
44
46
  LinkFieldDirective,
45
47
  CallLinkDirective,
46
48
  MicroClientErrorIndicatorComponent,
47
- MicroClientLoadingIndicatorComponent
49
+ MicroClientLoadingIndicatorComponent,
50
+ MicroLinkValidateDirective
48
51
  ]
49
52
  },] }
50
53
  ];
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm9jbGllbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG1pY3JvcGVybWl0L2NsaWVudC1hbmd1bGFyLyIsInNvdXJjZXMiOlsibGliL21pY3JvY2xpZW50Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFzQixRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDNUQsT0FBTyxFQUFDLG9DQUFvQyxFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDN0YsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ3BFLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUMsa0NBQWtDLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQXlCekYsTUFBTSxPQUFPLGlCQUFpQjs7OztJQUMxQixNQUFNLENBQUMsYUFBYTtRQUNoQixPQUFPO1lBQ0gsUUFBUSxFQUFFLGlCQUFpQjtZQUMzQixTQUFTLEVBQUU7Z0JBQ1AsV0FBVzthQUNkO1NBQ0osQ0FBQztJQUNOLENBQUM7OztZQS9CSixRQUFRLFNBQUM7Z0JBQ04sZUFBZSxFQUFFO29CQUNiLG9DQUFvQztvQkFDcEMsa0NBQWtDO2lCQUNyQztnQkFDRCxPQUFPLEVBQUU7b0JBQ0wsZ0JBQWdCO2lCQUNuQjtnQkFDRCxZQUFZLEVBQUU7b0JBQ1YsYUFBYTtvQkFDYixrQkFBa0I7b0JBQ2xCLGlCQUFpQjtvQkFDakIsb0NBQW9DO29CQUNwQyxrQ0FBa0M7aUJBQ3JDO2dCQUNELE9BQU8sRUFBRTtvQkFDTCxhQUFhO29CQUNiLGtCQUFrQjtvQkFDbEIsaUJBQWlCO29CQUNqQixrQ0FBa0M7b0JBQ2xDLG9DQUFvQztpQkFDdkM7YUFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtNaWNyb0NsaWVudExvYWRpbmdJbmRpY2F0b3JDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9sb2FkaW5naW5kaWNhdG9yLmNvbXBvbmVudCc7XG5pbXBvcnQge0xpbmtGaWVsZFBpcGV9IGZyb20gJy4vcGlwZXMvbGlua2ZpZWxkLnBpcGUnO1xuaW1wb3J0IHtMaW5rRmllbGREaXJlY3RpdmV9IGZyb20gJy4vZGlyZWN0aXZlcy9saW5rZmllbGQuZGlyZWN0aXZlJztcbmltcG9ydCB7TWljcm9DbGllbnR9IGZyb20gJy4vbWljcm9jbGllbnQuc2VydmljZSc7XG5pbXBvcnQge0h0dHBDbGllbnRNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7Q2FsbExpbmtEaXJlY3RpdmV9IGZyb20gJy4vZGlyZWN0aXZlcy9jYWxsLWxpbmsuZGlyZWN0aXZlJztcbmltcG9ydCB7TWljcm9DbGllbnRFcnJvckluZGljYXRvckNvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL2Vycm9yaW5kaWNhdG9yLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gICAgZW50cnlDb21wb25lbnRzOiBbXG4gICAgICAgIE1pY3JvQ2xpZW50TG9hZGluZ0luZGljYXRvckNvbXBvbmVudCxcbiAgICAgICAgTWljcm9DbGllbnRFcnJvckluZGljYXRvckNvbXBvbmVudFxuICAgIF0sXG4gICAgaW1wb3J0czogW1xuICAgICAgICBIdHRwQ2xpZW50TW9kdWxlXG4gICAgXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgICAgTGlua0ZpZWxkUGlwZSxcbiAgICAgICAgTGlua0ZpZWxkRGlyZWN0aXZlLFxuICAgICAgICBDYWxsTGlua0RpcmVjdGl2ZSxcbiAgICAgICAgTWljcm9DbGllbnRMb2FkaW5nSW5kaWNhdG9yQ29tcG9uZW50LFxuICAgICAgICBNaWNyb0NsaWVudEVycm9ySW5kaWNhdG9yQ29tcG9uZW50XG4gICAgXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIExpbmtGaWVsZFBpcGUsXG4gICAgICAgIExpbmtGaWVsZERpcmVjdGl2ZSxcbiAgICAgICAgQ2FsbExpbmtEaXJlY3RpdmUsXG4gICAgICAgIE1pY3JvQ2xpZW50RXJyb3JJbmRpY2F0b3JDb21wb25lbnQsXG4gICAgICAgIE1pY3JvQ2xpZW50TG9hZGluZ0luZGljYXRvckNvbXBvbmVudFxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgTWljcm9DbGllbnRNb2R1bGUge1xuICAgIHN0YXRpYyBmb3JDbGllbnRSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnMge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbmdNb2R1bGU6IE1pY3JvQ2xpZW50TW9kdWxlLFxuICAgICAgICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgICAgICAgICAgTWljcm9DbGllbnRcbiAgICAgICAgICAgIF1cbiAgICAgICAgfTtcbiAgICB9XG59XG4iXX0=
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm9jbGllbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG1pY3JvcGVybWl0L2NsaWVudC1hbmd1bGFyLyIsInNvdXJjZXMiOlsibGliL21pY3JvY2xpZW50Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFzQixRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDNUQsT0FBTyxFQUFDLG9DQUFvQyxFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDN0YsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ3BFLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUMsa0NBQWtDLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUN6RixPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQztBQTJCdEYsTUFBTSxPQUFPLGlCQUFpQjs7OztJQUMxQixNQUFNLENBQUMsYUFBYTtRQUNoQixPQUFPO1lBQ0gsUUFBUSxFQUFFLGlCQUFpQjtZQUMzQixTQUFTLEVBQUU7Z0JBQ1AsV0FBVzthQUNkO1NBQ0osQ0FBQztJQUNOLENBQUM7OztZQWpDSixRQUFRLFNBQUM7Z0JBQ04sZUFBZSxFQUFFO29CQUNiLG9DQUFvQztvQkFDcEMsa0NBQWtDO2lCQUNyQztnQkFDRCxPQUFPLEVBQUU7b0JBQ0wsZ0JBQWdCO2lCQUNuQjtnQkFDRCxZQUFZLEVBQUU7b0JBQ1YsYUFBYTtvQkFDYixrQkFBa0I7b0JBQ2xCLGlCQUFpQjtvQkFDakIsb0NBQW9DO29CQUNwQyxrQ0FBa0M7b0JBQ2xDLDBCQUEwQjtpQkFDN0I7Z0JBQ0QsT0FBTyxFQUFFO29CQUNMLGFBQWE7b0JBQ2Isa0JBQWtCO29CQUNsQixpQkFBaUI7b0JBQ2pCLGtDQUFrQztvQkFDbEMsb0NBQW9DO29CQUNwQywwQkFBMEI7aUJBQzdCO2FBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge01vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TWljcm9DbGllbnRMb2FkaW5nSW5kaWNhdG9yQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvbG9hZGluZ2luZGljYXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHtMaW5rRmllbGRQaXBlfSBmcm9tICcuL3BpcGVzL2xpbmtmaWVsZC5waXBlJztcbmltcG9ydCB7TGlua0ZpZWxkRGlyZWN0aXZlfSBmcm9tICcuL2RpcmVjdGl2ZXMvbGlua2ZpZWxkLmRpcmVjdGl2ZSc7XG5pbXBvcnQge01pY3JvQ2xpZW50fSBmcm9tICcuL21pY3JvY2xpZW50LnNlcnZpY2UnO1xuaW1wb3J0IHtIdHRwQ2xpZW50TW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQge0NhbGxMaW5rRGlyZWN0aXZlfSBmcm9tICcuL2RpcmVjdGl2ZXMvY2FsbC1saW5rLmRpcmVjdGl2ZSc7XG5pbXBvcnQge01pY3JvQ2xpZW50RXJyb3JJbmRpY2F0b3JDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9lcnJvcmluZGljYXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHtNaWNyb0xpbmtWYWxpZGF0ZURpcmVjdGl2ZX0gZnJvbSAnLi9kaXJlY3RpdmVzL21pY3JvLWxpbmstdmFsaWRhdGUuZGlyZWN0aXZlJztcblxuQE5nTW9kdWxlKHtcbiAgICBlbnRyeUNvbXBvbmVudHM6IFtcbiAgICAgICAgTWljcm9DbGllbnRMb2FkaW5nSW5kaWNhdG9yQ29tcG9uZW50LFxuICAgICAgICBNaWNyb0NsaWVudEVycm9ySW5kaWNhdG9yQ29tcG9uZW50XG4gICAgXSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIEh0dHBDbGllbnRNb2R1bGVcbiAgICBdLFxuICAgIGRlY2xhcmF0aW9uczogW1xuICAgICAgICBMaW5rRmllbGRQaXBlLFxuICAgICAgICBMaW5rRmllbGREaXJlY3RpdmUsXG4gICAgICAgIENhbGxMaW5rRGlyZWN0aXZlLFxuICAgICAgICBNaWNyb0NsaWVudExvYWRpbmdJbmRpY2F0b3JDb21wb25lbnQsXG4gICAgICAgIE1pY3JvQ2xpZW50RXJyb3JJbmRpY2F0b3JDb21wb25lbnQsXG4gICAgICAgIE1pY3JvTGlua1ZhbGlkYXRlRGlyZWN0aXZlXG4gICAgXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIExpbmtGaWVsZFBpcGUsXG4gICAgICAgIExpbmtGaWVsZERpcmVjdGl2ZSxcbiAgICAgICAgQ2FsbExpbmtEaXJlY3RpdmUsXG4gICAgICAgIE1pY3JvQ2xpZW50RXJyb3JJbmRpY2F0b3JDb21wb25lbnQsXG4gICAgICAgIE1pY3JvQ2xpZW50TG9hZGluZ0luZGljYXRvckNvbXBvbmVudCxcbiAgICAgICAgTWljcm9MaW5rVmFsaWRhdGVEaXJlY3RpdmVcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIE1pY3JvQ2xpZW50TW9kdWxlIHtcbiAgICBzdGF0aWMgZm9yQ2xpZW50Um9vdCgpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPE1pY3JvQ2xpZW50TW9kdWxlPiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBuZ01vZHVsZTogTWljcm9DbGllbnRNb2R1bGUsXG4gICAgICAgICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgICAgICAgICBNaWNyb0NsaWVudFxuICAgICAgICAgICAgXVxuICAgICAgICB9O1xuICAgIH1cbn1cbiJdfQ==
@@ -5,5 +5,5 @@
5
5
  /**
6
6
  * Generated bundle index. Do not edit.
7
7
  */
8
- export { MicroClient, MicroClientLoadError, MicroError, MicroObject, MicroObjectMetadata, MicroClientModule, ParamUtils, LinkFieldPagingSupport, SortInfo, MicroClientLoadingIndicatorComponent, MicroClientErrorIndicatorComponent, CallLinkDirective, CallStatus, CallState, LinkFieldDirective, LinkFieldContext, CallableLink, LinkSerializer, LinkField, MockLinkField, LinkFieldPipe } from './public_api';
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm9wZXJtaXQtY2xpZW50LWFuZ3VsYXIuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AbWljcm9wZXJtaXQvY2xpZW50LWFuZ3VsYXIvIiwic291cmNlcyI6WyJtaWNyb3Blcm1pdC1jbGllbnQtYW5ndWxhci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsa1lBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuIl19
8
+ export { MicroClient, MicroClientLoadError, MicroError, MicroObject, MicroObjectMetadata, MicroClientModule, ParamUtils, LinkFieldPagingSupport, SortInfo, MicroClientLoadingIndicatorComponent, MicroClientErrorIndicatorComponent, CallLinkDirective, CallStatus, CallState, LinkFieldDirective, LinkFieldContext, MicroLinkValidateDirective, CallableLink, LinkSerializer, LinkField, MockLinkField, LinkFieldPipe } from './public_api';
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm9wZXJtaXQtY2xpZW50LWFuZ3VsYXIuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AbWljcm9wZXJtaXQvY2xpZW50LWFuZ3VsYXIvIiwic291cmNlcyI6WyJtaWNyb3Blcm1pdC1jbGllbnQtYW5ndWxhci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsOFpBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuIl19
@@ -15,8 +15,9 @@ export { MicroClientLoadingIndicatorComponent } from './lib/components/loadingin
15
15
  export { MicroClientErrorIndicatorComponent } from './lib/components/errorindicator.component';
16
16
  export { CallLinkDirective, CallStatus, CallState } from './lib/directives/call-link.directive';
17
17
  export { LinkFieldDirective, LinkFieldContext } from './lib/directives/linkfield.directive';
18
+ export { MicroLinkValidateDirective } from './lib/directives/micro-link-validate.directive';
18
19
  export { CallableLink, LinkSerializer } from './lib/links/callablelink';
19
20
  export { LinkField } from './lib/links/linkfield';
20
21
  export { MockLinkField } from './lib/links/mock-linkfield';
21
22
  export { LinkFieldPipe } from './lib/pipes/linkfield.pipe';
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BtaWNyb3Blcm1pdC9jbGllbnQtYW5ndWxhci8iLCJzb3VyY2VzIjpbInB1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUdBLGtEQUFjLDJCQUEyQixDQUFDO0FBQzFDLDJCQUFjLHdCQUF3QixDQUFDO0FBRXZDLGlEQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGtDQUFjLDBCQUEwQixDQUFDO0FBQ3pDLDJCQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGlEQUFjLGlDQUFpQyxDQUFDO0FBRWhELHFEQUFjLDZDQUE2QyxDQUFDO0FBQzVELG1EQUFjLDJDQUEyQyxDQUFDO0FBRTFELHlEQUFjLHNDQUFzQyxDQUFDO0FBQ3JELHFEQUFjLHNDQUFzQyxDQUFDO0FBRXJELDZDQUFjLDBCQUEwQixDQUFDO0FBQ3pDLDBCQUFjLHVCQUF1QixDQUFDO0FBQ3RDLDhCQUFjLDRCQUE0QixDQUFDO0FBRTNDLDhCQUFjLDRCQUE0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBtaWNyb3Blcm1pdFxuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9taWNyb2NsaWVudC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Vycm9yL21pY3JvZXJyb3InO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9taWNyb29iamVjdCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9taWNyb2NsaWVudC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGFyYW11dGlscyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9saW5rLWZpZWxkLXBhZ2luZy1zdXBwb3J0JztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9sb2FkaW5naW5kaWNhdG9yLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Vycm9yaW5kaWNhdG9yLmNvbXBvbmVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvY2FsbC1saW5rLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2xpbmtmaWVsZC5kaXJlY3RpdmUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9saW5rcy9jYWxsYWJsZWxpbmsnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbGlua3MvbGlua2ZpZWxkJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xpbmtzL21vY2stbGlua2ZpZWxkJztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvbGlua2ZpZWxkLnBpcGUnO1xuXG5cbiJdfQ==
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BtaWNyb3Blcm1pdC9jbGllbnQtYW5ndWxhci8iLCJzb3VyY2VzIjpbInB1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUdBLGtEQUFjLDJCQUEyQixDQUFDO0FBQzFDLDJCQUFjLHdCQUF3QixDQUFDO0FBRXZDLGlEQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGtDQUFjLDBCQUEwQixDQUFDO0FBQ3pDLDJCQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGlEQUFjLGlDQUFpQyxDQUFDO0FBRWhELHFEQUFjLDZDQUE2QyxDQUFDO0FBQzVELG1EQUFjLDJDQUEyQyxDQUFDO0FBRTFELHlEQUFjLHNDQUFzQyxDQUFDO0FBQ3JELHFEQUFjLHNDQUFzQyxDQUFDO0FBQ3JELDJDQUFjLGdEQUFnRCxDQUFDO0FBRS9ELDZDQUFjLDBCQUEwQixDQUFDO0FBQ3pDLDBCQUFjLHVCQUF1QixDQUFDO0FBQ3RDLDhCQUFjLDRCQUE0QixDQUFDO0FBRTNDLDhCQUFjLDRCQUE0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBtaWNyb3Blcm1pdFxuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9taWNyb2NsaWVudC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Vycm9yL21pY3JvZXJyb3InO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9taWNyb29iamVjdCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9taWNyb2NsaWVudC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGFyYW11dGlscyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9saW5rLWZpZWxkLXBhZ2luZy1zdXBwb3J0JztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9sb2FkaW5naW5kaWNhdG9yLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Vycm9yaW5kaWNhdG9yLmNvbXBvbmVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvY2FsbC1saW5rLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2xpbmtmaWVsZC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9taWNyby1saW5rLXZhbGlkYXRlLmRpcmVjdGl2ZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2xpbmtzL2NhbGxhYmxlbGluayc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9saW5rcy9saW5rZmllbGQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbGlua3MvbW9jay1saW5rZmllbGQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy9saW5rZmllbGQucGlwZSc7XG5cblxuIl19
@@ -0,0 +1,152 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ import { Directive, forwardRef, Input } from '@angular/core';
6
+ import { FormGroup, NG_ASYNC_VALIDATORS } from '@angular/forms';
7
+ import { timer } from 'rxjs';
8
+ import { map, switchMap } from 'rxjs/operators';
9
+ import { CallableLink } from '../links/callablelink';
10
+ var MicroLinkValidateDirective = /** @class */ (function () {
11
+ function MicroLinkValidateDirective() {
12
+ this.UNSET = "";
13
+ this.microLinkValidateField = null;
14
+ this.microLinkValidateValue = this.UNSET;
15
+ this.microLinkValidateDebounce = 500;
16
+ }
17
+ /**
18
+ * @param {?} control
19
+ * @return {?}
20
+ */
21
+ MicroLinkValidateDirective.prototype.validate = /**
22
+ * @param {?} control
23
+ * @return {?}
24
+ */
25
+ function (control) {
26
+ var _this = this;
27
+ return timer(this.microLinkValidateDebounce).pipe(switchMap((/**
28
+ * @return {?}
29
+ */
30
+ function () {
31
+ /** @type {?} */
32
+ var validateValue = _this.microLinkValidateValue;
33
+ if (validateValue === _this.UNSET) {
34
+ validateValue = control.value;
35
+ }
36
+ /** @type {?} */
37
+ var obj = {};
38
+ if (_this.microLinkValidateField) {
39
+ obj[_this.microLinkValidateField] = validateValue;
40
+ }
41
+ else {
42
+ obj = validateValue;
43
+ }
44
+ return _this.microLinkValidate.callWithObs(obj, null).pipe(map((/**
45
+ * @param {?} validationRes
46
+ * @return {?}
47
+ */
48
+ function (validationRes) {
49
+ /** @type {?} */
50
+ var hasErrors = false;
51
+ if (_this.microLinkValidateField) {
52
+ if (validationRes[_this.microLinkValidateField] != null) {
53
+ hasErrors = true;
54
+ }
55
+ }
56
+ else {
57
+ for (var key in validationRes) {
58
+ if (validationRes[key] != null) {
59
+ hasErrors = true;
60
+ }
61
+ }
62
+ }
63
+ if (hasErrors) {
64
+ _this.result = validationRes;
65
+ return {
66
+ validateMicroLink: _this.result
67
+ };
68
+ }
69
+ else {
70
+ _this.result = null;
71
+ return null;
72
+ }
73
+ })));
74
+ })));
75
+ };
76
+ /**
77
+ * @param {?} control
78
+ * @return {?}
79
+ */
80
+ MicroLinkValidateDirective.prototype.getControlName = /**
81
+ * @param {?} control
82
+ * @return {?}
83
+ */
84
+ function (control) {
85
+ /** @type {?} */
86
+ var controlName = null;
87
+ /** @type {?} */
88
+ var parent = control.parent;
89
+ // only such parent, which is FormGroup, has a dictionary
90
+ // with control-names as a key and a form-control as a value
91
+ if (parent instanceof FormGroup) {
92
+ // now we will iterate those keys (i.e. names of controls)
93
+ Object.keys(parent.controls).forEach((/**
94
+ * @param {?} name
95
+ * @return {?}
96
+ */
97
+ function (name) {
98
+ // and compare the passed control and
99
+ // a child control of a parent - with provided name (we iterate them all)
100
+ if (control === parent.controls[name]) {
101
+ // both are same: control passed to Validator
102
+ // and this child - are the same references
103
+ controlName = name;
104
+ }
105
+ }));
106
+ }
107
+ // we either found a name or simply return null
108
+ return controlName;
109
+ };
110
+ MicroLinkValidateDirective.decorators = [
111
+ { type: Directive, args: [{
112
+ selector: '[microLinkValidate]',
113
+ providers: [
114
+ {
115
+ provide: NG_ASYNC_VALIDATORS,
116
+ useExisting: forwardRef((/**
117
+ * @return {?}
118
+ */
119
+ function () { return MicroLinkValidateDirective; })),
120
+ multi: true
121
+ }
122
+ ],
123
+ exportAs: 'microValidator'
124
+ },] }
125
+ ];
126
+ MicroLinkValidateDirective.propDecorators = {
127
+ microLinkValidate: [{ type: Input }],
128
+ microLinkValidateField: [{ type: Input }],
129
+ microLinkValidateValue: [{ type: Input }],
130
+ microLinkValidateDebounce: [{ type: Input }]
131
+ };
132
+ return MicroLinkValidateDirective;
133
+ }());
134
+ export { MicroLinkValidateDirective };
135
+ if (false) {
136
+ /**
137
+ * @type {?}
138
+ * @private
139
+ */
140
+ MicroLinkValidateDirective.prototype.UNSET;
141
+ /** @type {?} */
142
+ MicroLinkValidateDirective.prototype.microLinkValidate;
143
+ /** @type {?} */
144
+ MicroLinkValidateDirective.prototype.microLinkValidateField;
145
+ /** @type {?} */
146
+ MicroLinkValidateDirective.prototype.microLinkValidateValue;
147
+ /** @type {?} */
148
+ MicroLinkValidateDirective.prototype.microLinkValidateDebounce;
149
+ /** @type {?} */
150
+ MicroLinkValidateDirective.prototype.result;
151
+ }
152
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm8tbGluay12YWxpZGF0ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AbWljcm9wZXJtaXQvY2xpZW50LWFuZ3VsYXIvIiwic291cmNlcyI6WyJsaWIvZGlyZWN0aXZlcy9taWNyby1saW5rLXZhbGlkYXRlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFFSCxTQUFTLEVBQ1QsbUJBQW1CLEVBR3RCLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFhLEtBQUssRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUMsR0FBRyxFQUFFLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUVuRDtJQUFBO1FBYVksVUFBSyxHQUFHLEVBQUUsQ0FBQTtRQU1sQiwyQkFBc0IsR0FBVyxJQUFJLENBQUE7UUFHckMsMkJBQXNCLEdBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQTtRQUd4Qyw4QkFBeUIsR0FBRyxHQUFHLENBQUM7SUF3RXBDLENBQUM7Ozs7O0lBbkVHLDZDQUFROzs7O0lBQVIsVUFBUyxPQUF3QjtRQUFqQyxpQkEyQ0M7UUExQ0csT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLENBQUMsSUFBSSxDQUM3QyxTQUFTOzs7UUFBQzs7Z0JBQ0YsYUFBYSxHQUFHLEtBQUksQ0FBQyxzQkFBc0I7WUFDL0MsSUFBSSxhQUFhLEtBQUssS0FBSSxDQUFDLEtBQUssRUFBRTtnQkFDOUIsYUFBYSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUE7YUFDaEM7O2dCQUVHLEdBQUcsR0FBRyxFQUFFO1lBQ1osSUFBSSxLQUFJLENBQUMsc0JBQXNCLEVBQUU7Z0JBQzdCLEdBQUcsQ0FBQyxLQUFJLENBQUMsc0JBQXNCLENBQUMsR0FBRyxhQUFhLENBQUE7YUFDbkQ7aUJBQU07Z0JBQ0gsR0FBRyxHQUFHLGFBQWEsQ0FBQTthQUN0QjtZQUVELE9BQU8sS0FBSSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUNyRCxHQUFHOzs7O1lBQUMsVUFBQSxhQUFhOztvQkFDVCxTQUFTLEdBQUcsS0FBSztnQkFDckIsSUFBSSxLQUFJLENBQUMsc0JBQXNCLEVBQUU7b0JBQzdCLElBQUksYUFBYSxDQUFDLEtBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLElBQUksRUFBRTt3QkFDcEQsU0FBUyxHQUFHLElBQUksQ0FBQTtxQkFDbkI7aUJBQ0o7cUJBQU07b0JBQ0gsS0FBSyxJQUFJLEdBQUcsSUFBSSxhQUFhLEVBQUU7d0JBQzNCLElBQUksYUFBYSxDQUFDLEdBQUcsQ0FBQyxJQUFJLElBQUksRUFBRTs0QkFDNUIsU0FBUyxHQUFHLElBQUksQ0FBQTt5QkFDbkI7cUJBQ0o7aUJBQ0o7Z0JBQ0QsSUFBSSxTQUFTLEVBQUU7b0JBQ1gsS0FBSSxDQUFDLE1BQU0sR0FBRyxhQUFhLENBQUE7b0JBQzNCLE9BQU87d0JBQ0gsaUJBQWlCLEVBQUUsS0FBSSxDQUFDLE1BQU07cUJBQ2pDLENBQUE7aUJBRUo7cUJBQU07b0JBQ0gsS0FBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUE7b0JBQ2xCLE9BQU8sSUFBSSxDQUFBO2lCQUNkO1lBQ0wsQ0FBQyxFQUFDLENBQ0wsQ0FBQTtRQUNMLENBQUMsRUFBQyxDQUNMLENBQUE7SUFDTCxDQUFDOzs7OztJQUVELG1EQUFjOzs7O0lBQWQsVUFBZSxPQUF3Qjs7WUFDL0IsV0FBVyxHQUFHLElBQUk7O1lBQ2xCLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTTtRQUUzQix5REFBeUQ7UUFDekQsNERBQTREO1FBQzVELElBQUksTUFBTSxZQUFZLFNBQVMsRUFBRTtZQUM3QiwwREFBMEQ7WUFDMUQsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTzs7OztZQUFDLFVBQUMsSUFBSTtnQkFDdEMscUNBQXFDO2dCQUNyQyx5RUFBeUU7Z0JBQ3pFLElBQUksT0FBTyxLQUFLLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUU7b0JBQ25DLDZDQUE2QztvQkFDN0MsNENBQTRDO29CQUM1QyxXQUFXLEdBQUcsSUFBSSxDQUFDO2lCQUN0QjtZQUNMLENBQUMsRUFBQyxDQUFDO1NBQ047UUFDRCwrQ0FBK0M7UUFDL0MsT0FBTyxXQUFXLENBQUM7SUFDdkIsQ0FBQzs7Z0JBL0ZKLFNBQVMsU0FBQztvQkFDUCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixTQUFTLEVBQUU7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLG1CQUFtQjs0QkFDNUIsV0FBVyxFQUFFLFVBQVU7Ozs0QkFBQyxjQUFNLE9BQUEsMEJBQTBCLEVBQTFCLENBQTBCLEVBQUM7NEJBQ3pELEtBQUssRUFBRSxJQUFJO3lCQUNkO3FCQUNKO29CQUNELFFBQVEsRUFBRSxnQkFBZ0I7aUJBQzdCOzs7b0NBS0ksS0FBSzt5Q0FHTCxLQUFLO3lDQUdMLEtBQUs7NENBR0wsS0FBSzs7SUF5RVYsaUNBQUM7Q0FBQSxBQWpHRCxJQWlHQztTQXRGWSwwQkFBMEI7Ozs7OztJQUVuQywyQ0FBa0I7O0lBRWxCLHVEQUNvQzs7SUFFcEMsNERBQ3FDOztJQUVyQyw0REFDd0M7O0lBRXhDLCtEQUNnQzs7SUFFaEMsNENBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIGZvcndhcmRSZWYsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQWJzdHJhY3RDb250cm9sLFxuICAgIEZvcm1Hcm91cCxcbiAgICBOR19BU1lOQ19WQUxJREFUT1JTLFxuICAgIFZhbGlkYXRpb25FcnJvcnMsXG4gICAgVmFsaWRhdG9yXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgdGltZXJ9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXAsIHN3aXRjaE1hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtDYWxsYWJsZUxpbmt9IGZyb20gJy4uL2xpbmtzL2NhbGxhYmxlbGluayc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW21pY3JvTGlua1ZhbGlkYXRlXScsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE5HX0FTWU5DX1ZBTElEQVRPUlMsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBNaWNyb0xpbmtWYWxpZGF0ZURpcmVjdGl2ZSksXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICB9XG4gICAgXSxcbiAgICBleHBvcnRBczogJ21pY3JvVmFsaWRhdG9yJ1xufSlcbmV4cG9ydCBjbGFzcyBNaWNyb0xpbmtWYWxpZGF0ZURpcmVjdGl2ZSBpbXBsZW1lbnRzIFZhbGlkYXRvciB7XG5cbiAgICBwcml2YXRlIFVOU0VUID0gXCJcIlxuXG4gICAgQElucHV0KClcbiAgICBtaWNyb0xpbmtWYWxpZGF0ZTogQ2FsbGFibGVMaW5rPGFueT5cblxuICAgIEBJbnB1dCgpXG4gICAgbWljcm9MaW5rVmFsaWRhdGVGaWVsZDogc3RyaW5nID0gbnVsbFxuXG4gICAgQElucHV0KClcbiAgICBtaWNyb0xpbmtWYWxpZGF0ZVZhbHVlOiBhbnkgPSB0aGlzLlVOU0VUXG5cbiAgICBASW5wdXQoKVxuICAgIG1pY3JvTGlua1ZhbGlkYXRlRGVib3VuY2UgPSA1MDA7XG5cbiAgICBwdWJsaWMgcmVzdWx0OmFueTtcblxuXG4gICAgdmFsaWRhdGUoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogT2JzZXJ2YWJsZTxWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbD4ge1xuICAgICAgICByZXR1cm4gdGltZXIodGhpcy5taWNyb0xpbmtWYWxpZGF0ZURlYm91bmNlKS5waXBlKFxuICAgICAgICAgICAgc3dpdGNoTWFwKCgpID0+IHtcbiAgICAgICAgICAgICAgICBsZXQgdmFsaWRhdGVWYWx1ZSA9IHRoaXMubWljcm9MaW5rVmFsaWRhdGVWYWx1ZVxuICAgICAgICAgICAgICAgIGlmICh2YWxpZGF0ZVZhbHVlID09PSB0aGlzLlVOU0VUKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhbGlkYXRlVmFsdWUgPSBjb250cm9sLnZhbHVlXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgbGV0IG9iaiA9IHt9XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMubWljcm9MaW5rVmFsaWRhdGVGaWVsZCkge1xuICAgICAgICAgICAgICAgICAgICBvYmpbdGhpcy5taWNyb0xpbmtWYWxpZGF0ZUZpZWxkXSA9IHZhbGlkYXRlVmFsdWVcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBvYmogPSB2YWxpZGF0ZVZhbHVlXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMubWljcm9MaW5rVmFsaWRhdGUuY2FsbFdpdGhPYnMob2JqLCBudWxsKS5waXBlKFxuICAgICAgICAgICAgICAgICAgICBtYXAodmFsaWRhdGlvblJlcyA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgaGFzRXJyb3JzID0gZmFsc2VcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLm1pY3JvTGlua1ZhbGlkYXRlRmllbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodmFsaWRhdGlvblJlc1t0aGlzLm1pY3JvTGlua1ZhbGlkYXRlRmllbGRdICE9IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFzRXJyb3JzID0gdHJ1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIChsZXQga2V5IGluIHZhbGlkYXRpb25SZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHZhbGlkYXRpb25SZXNba2V5XSAhPSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXNFcnJvcnMgPSB0cnVlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaGFzRXJyb3JzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZXN1bHQgPSB2YWxpZGF0aW9uUmVzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsaWRhdGVNaWNyb0xpbms6IHRoaXMucmVzdWx0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVzdWx0ID0gbnVsbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgfSlcbiAgICAgICAgKVxuICAgIH1cblxuICAgIGdldENvbnRyb2xOYW1lKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCkge1xuICAgICAgICBsZXQgY29udHJvbE5hbWUgPSBudWxsO1xuICAgICAgICBsZXQgcGFyZW50ID0gY29udHJvbC5wYXJlbnQ7XG5cbiAgICAgICAgLy8gb25seSBzdWNoIHBhcmVudCwgd2hpY2ggaXMgRm9ybUdyb3VwLCBoYXMgYSBkaWN0aW9uYXJ5XG4gICAgICAgIC8vIHdpdGggY29udHJvbC1uYW1lcyBhcyBhIGtleSBhbmQgYSBmb3JtLWNvbnRyb2wgYXMgYSB2YWx1ZVxuICAgICAgICBpZiAocGFyZW50IGluc3RhbmNlb2YgRm9ybUdyb3VwKSB7XG4gICAgICAgICAgICAvLyBub3cgd2Ugd2lsbCBpdGVyYXRlIHRob3NlIGtleXMgKGkuZS4gbmFtZXMgb2YgY29udHJvbHMpXG4gICAgICAgICAgICBPYmplY3Qua2V5cyhwYXJlbnQuY29udHJvbHMpLmZvckVhY2goKG5hbWUpID0+IHtcbiAgICAgICAgICAgICAgICAvLyBhbmQgY29tcGFyZSB0aGUgcGFzc2VkIGNvbnRyb2wgYW5kXG4gICAgICAgICAgICAgICAgLy8gYSBjaGlsZCBjb250cm9sIG9mIGEgcGFyZW50IC0gd2l0aCBwcm92aWRlZCBuYW1lICh3ZSBpdGVyYXRlIHRoZW0gYWxsKVxuICAgICAgICAgICAgICAgIGlmIChjb250cm9sID09PSBwYXJlbnQuY29udHJvbHNbbmFtZV0pIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gYm90aCBhcmUgc2FtZTogY29udHJvbCBwYXNzZWQgdG8gVmFsaWRhdG9yXG4gICAgICAgICAgICAgICAgICAgIC8vICBhbmQgdGhpcyBjaGlsZCAtIGFyZSB0aGUgc2FtZSByZWZlcmVuY2VzXG4gICAgICAgICAgICAgICAgICAgIGNvbnRyb2xOYW1lID0gbmFtZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICAvLyB3ZSBlaXRoZXIgZm91bmQgYSBuYW1lIG9yIHNpbXBseSByZXR1cm4gbnVsbFxuICAgICAgICByZXR1cm4gY29udHJvbE5hbWU7XG4gICAgfVxuXG59XG4iXX0=
@@ -220,7 +220,7 @@ var LinkFieldPagingSupport = /** @class */ (function () {
220
220
  function () {
221
221
  /** @type {?} */
222
222
  var lastRow = this.lastRow();
223
- if (lastRow) {
223
+ if (lastRow && lastRow.__meta) {
224
224
  this.loadedCompletely = lastRow.__meta.nextPage == null;
225
225
  }
226
226
  else {
@@ -384,4 +384,4 @@ if (false) {
384
384
  /** @type {?} */
385
385
  SortInfo.prototype.dir;
386
386
  }
387
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay1maWVsZC1wYWdpbmctc3VwcG9ydC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BtaWNyb3Blcm1pdC9jbGllbnQtYW5ndWxhci8iLCJzb3VyY2VzIjpbImxpYi9saW5rLWZpZWxkLXBhZ2luZy1zdXBwb3J0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBS0E7SUFFSSxnQ0FDWSxRQUFrQyxFQUNsQyxpQkFBb0MsRUFDckMsU0FBdUI7UUFIbEMsaUJBS0M7UUFGVSwwQkFBQSxFQUFBLGVBQXVCO1FBRnRCLGFBQVEsR0FBUixRQUFRLENBQTBCO1FBQ2xDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDckMsY0FBUyxHQUFULFNBQVMsQ0FBYztRQUkxQixVQUFLLEdBQWUsSUFBSSxDQUFDO1FBRTFCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDakIscUJBQWdCLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDbEIsVUFBSyxHQUFVLElBQUksQ0FBQztRQUNwQix3QkFBbUIsR0FBaUIsSUFBSSxDQUFDO1FBc0N6QyxvQkFBZTs7O1FBQUc7WUFDdEIsS0FBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQixDQUFDLEVBQUM7SUFoREYsQ0FBQztJQWFELHNCQUFJLHdDQUFJOzs7O1FBQVI7WUFDSSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRTtnQkFDakIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO2FBQ3ZCO1lBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ3RCLENBQUM7OztPQUFBOzs7Ozs7O0lBRWEsMkJBQUk7Ozs7OztJQUFsQixVQUNJLFFBQWtDLEVBQ2xDLGlCQUFvQyxFQUNwQyxTQUF1QjtRQUF2QiwwQkFBQSxFQUFBLGVBQXVCO1FBRXZCLE9BQU8sSUFBSSxzQkFBc0IsQ0FBQyxRQUFRLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDOUUsQ0FBQzs7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dUJBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge09ic2VydmFibGUsIFN1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0xpbmtGaWVsZH0gZnJvbSAnLi9saW5rcy9saW5rZmllbGQnO1xuaW1wb3J0IHtNaWNyb09iamVjdH0gZnJvbSAnLi9taWNyb29iamVjdCc7XG5cbmV4cG9ydCBjbGFzcyBMaW5rRmllbGRQYWdpbmdTdXBwb3J0IHtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHBhZ2VMaW5rOiBMaW5rRmllbGQ8TWljcm9PYmplY3RbXT4sXG4gICAgICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBwdWJsaWMgcGFnZUxpbWl0OiBudW1iZXIgPSAyMDBcbiAgICApIHtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNvcnRzOiBTb3J0SW5mb1tdID0gbnVsbDtcblxuICAgIHB1YmxpYyBpc0xvYWRpbmcgPSBmYWxzZTtcbiAgICBwcml2YXRlIGxvYWRlZENvbXBsZXRlbHkgPSBmYWxzZTtcbiAgICBwcml2YXRlIGhhc0xvYWRlZCA9IGZhbHNlO1xuICAgIHByaXZhdGUgX3Jvd3M6IGFueVtdID0gbnVsbDtcbiAgICBwcml2YXRlIGxvYWRpbmdTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbiA9IG51bGw7XG5cbiAgICBwdWJsaWMgcm93c0NoYW5nZUNhbGxiYWNrOiAocm93czogYW55W10pID0+IHZvaWQ7XG4gICAgcHVibGljIGlzTG9hZGluZ0NhbGxiYWNrOiAoaXNMb2FkaW5nOiBib29sZWFuKSA9PiB2b2lkO1xuXG4gICAgZ2V0IHJvd3MoKTogYW55W10ge1xuICAgICAgICBpZiAoIXRoaXMuaGFzTG9hZGVkKSB7XG4gICAgICAgICAgICB0aGlzLmxvYWROZXh0UGFnZSgpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLl9yb3dzO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZnJvbShcbiAgICAgICAgcGFnZUxpbms6IExpbmtGaWVsZDxNaWNyb09iamVjdFtdPixcbiAgICAgICAgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBwYWdlTGltaXQ6IG51bWJlciA9IDIwMFxuICAgICk6IExpbmtGaWVsZFBhZ2luZ1N1cHBvcnQge1xuICAgICAgICByZXR1cm4gbmV3IExpbmtGaWVsZFBhZ2luZ1N1cHBvcnQocGFnZUxpbmssIGNoYW5nZURldGVjdG9yUmVmLCBwYWdlTGltaXQpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhcHBseVNvcnQoc29ydHM6IFNvcnRJbmZvW10sIGV4dGVybmFsU29ydGluZyA9IHRydWUpIHtcbiAgICAgICAgdGhpcy5oYXNMb2FkZWQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5zb3J0cyA9IG51bGw7XG4gICAgICAgIHRoaXMuX3Jvd3MgPSBudWxsO1xuXG4gICAgICAgIGlmIChleHRlcm5hbFNvcnRpbmcpIHtcbiAgICAgICAgICAgIHRoaXMuc29ydHMgPSBzb3J0cztcbiAgICAgICAgICAgIHRoaXMubG9hZE5leHRQYWdlKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAoIXRoaXMubG9hZGVkQ29tcGxldGVseSkge1xuICAgICAgICAgICAgICAgIHRoaXMubG9hZE5leHRQYWdlKG51bGwpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgcHJpdmF0ZSBsb2FkaW5nQ2FsbGJhY2sgPSAoKSA9PiB7XG4gICAgICAgIHRoaXMuc2V0TG9hZGluZyhmYWxzZSk7XG4gICAgfTtcblxuICAgIHB1YmxpYyBsb2FkTmV4dFBhZ2UocGFnZVNpemU6IG51bWJlciA9IHRoaXMucGFnZUxpbWl0LCByZXN1bHRDYWxsYmFjazogKChwYWdlOiBhbnlbXSwgYWxsOiBhbnlbXSkgPT4gdm9pZCkgPSBudWxsKSB7XG4gICAgICAgIGlmICh0aGlzLnBhZ2VMaW5rICYmICF0aGlzLmlzTG9hZGluZykge1xuICAgICAgICAgICAgaWYgKHRoaXMubG9hZGluZ1N1YnNjcmlwdGlvbikge1xuICAgICAgICAgICAgICAgIHRoaXMubG9hZGluZ1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgICAgIHRoaXMubG9hZGluZ1N1YnNjcmlwdGlvbiA9IG51bGw7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuaGFzTG9hZGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMubG9hZGVkQ29tcGxldGVseSA9IGZhbHNlO1xuICAgICAgICAgICAgaWYgKHRoaXMuX3Jvd3MgPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2V0TG9hZGluZyh0cnVlKTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IHJlcU9wdGlvbnM6IGFueSA9IHt9O1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLnNvcnRzICE9IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVxT3B0aW9ucy5zb3J0aW5nID0gdGhpcy5zb3J0cztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHBhZ2VTaXplICE9IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVxT3B0aW9ucy5wYWdlU2l6ZSA9IHBhZ2VTaXplO1xuICAgICAgICAgICAgICAgIH1cblxuXG4gICAgICAgICAgICAgICAgdGhpcy5sb2FkaW5nU3Vic2NyaXB0aW9uID0gdGhpcy5wYWdlTGluay5pbml0V2l0aE9icyhudWxsLCByZXFPcHRpb25zKS5zdWJzY3JpYmUoKGZpcnN0UGFnZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNldFJvd3MoZmlyc3RQYWdlLCByZXN1bHRDYWxsYmFjayk7XG4gICAgICAgICAgICAgICAgfSwgdGhpcy5sb2FkaW5nQ2FsbGJhY2ssIHRoaXMubG9hZGluZ0NhbGxiYWNrKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbGFzdFJvdyA9IHRoaXMubGFzdFJvdygpO1xuICAgICAgICAgICAgICAgIGlmIChsYXN0Um93KSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChsYXN0Um93Ll9fbWV0YS5uZXh0UGFnZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHJlcU9wdGlvbnMgPSBudWxsO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHBhZ2VTaXplICE9IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXFPcHRpb25zID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWdlU2l6ZTogcGFnZVNpemVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXh0UGFnZU9iczogT2JzZXJ2YWJsZTxNaWNyb09iamVjdFtdPiA9IGxhc3RSb3cuX19tZXRhLm5leHRQYWdlLmluaXRXaXRoT2JzKG51bGwsIHJlcU9wdGlvbnMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG5leHRQYWdlT2JzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRMb2FkaW5nKHRydWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubG9hZGluZ1N1YnNjcmlwdGlvbiA9IG5leHRQYWdlT2JzLnN1YnNjcmliZSgobmV4dFBhZ2UpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRSb3dzKG5leHRQYWdlLCByZXN1bHRDYWxsYmFjayk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgdGhpcy5sb2FkaW5nQ2FsbGJhY2ssIHRoaXMubG9hZGluZ0NhbGxiYWNrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmICghdGhpcy5wYWdlTGluaykge1xuICAgICAgICAgICAgdGhpcy5jbGVhclJvd3MoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBsb2FkRXZlcnl0aGluZygpIHtcbiAgICAgICAgdGhpcy5sb2FkTmV4dFBhZ2UobnVsbCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBsYXN0Um93KCk6IE1pY3JvT2JqZWN0IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Jvd3NbdGhpcy5fcm93cy5sZW5ndGggLSAxXTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldFJvd3MoYWRkaXRpb25hbFBhZ2U6IGFueVtdLCBsb2FkQ2FsbGJhY2s6ICgocGFnZTogYW55W10sIGFsbDogYW55W10pID0+IHZvaWQpKSB7XG4gICAgICAgIGlmICh0aGlzLl9yb3dzKSB7XG4gICAgICAgICAgICB0aGlzLl9yb3dzID0gWy4uLnRoaXMucm93cywgLi4uYWRkaXRpb25hbFBhZ2VdO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fcm93cyA9IGFkZGl0aW9uYWxQYWdlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChsb2FkQ2FsbGJhY2spIHtcbiAgICAgICAgICAgIGxvYWRDYWxsYmFjayhhZGRpdGlvbmFsUGFnZSwgdGhpcy5fcm93cyk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5yZWZsZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2xlYXJSb3dzKCkge1xuICAgICAgICBpZiAodGhpcy5fcm93cyAhPSBudWxsKSB7XG4gICAgICAgICAgICB0aGlzLl9yb3dzID0gbnVsbDtcbiAgICAgICAgICAgIHRoaXMucmVmbGVjdENoYW5nZXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgcmVmbGVjdENoYW5nZXMoKSB7XG4gICAgICAgIGNvbnN0IGxhc3RSb3cgPSB0aGlzLmxhc3RSb3coKTtcbiAgICAgICAgaWYgKGxhc3RSb3cpIHtcbiAgICAgICAgICAgIHRoaXMubG9hZGVkQ29tcGxldGVseSA9IGxhc3RSb3cuX19tZXRhLm5leHRQYWdlID09IG51bGw7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmxvYWRlZENvbXBsZXRlbHkgPSBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLnJvd3NDaGFuZ2VDYWxsYmFjaykge1xuICAgICAgICAgICAgdGhpcy5yb3dzQ2hhbmdlQ2FsbGJhY2sodGhpcy5fcm93cyk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRMb2FkaW5nKGlzTG9hZGluZzogYm9vbGVhbikge1xuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGlzTG9hZGluZztcbiAgICAgICAgaWYgKHRoaXMuaXNMb2FkaW5nQ2FsbGJhY2spIHtcbiAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nQ2FsbGJhY2sodGhpcy5pc0xvYWRpbmcpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBkaXNwb3NlKCkge1xuICAgICAgICB0aGlzLnJvd3NDaGFuZ2VDYWxsYmFjayA9IG51bGw7XG4gICAgICAgIHRoaXMuaXNMb2FkaW5nQ2FsbGJhY2sgPSBudWxsO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXRQYWdlTGluayhwYWdlTGluazogTGlua0ZpZWxkPE1pY3JvT2JqZWN0W10+KSB7XG4gICAgICAgIHRoaXMuY2xlYXJTdGF0ZSgpO1xuICAgICAgICB0aGlzLnBhZ2VMaW5rID0gcGFnZUxpbms7XG4gICAgICAgIHRoaXMubG9hZE5leHRQYWdlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGhhc0xvYWRlZENvbXBsZXRlbHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmxvYWRlZENvbXBsZXRlbHk7XG4gICAgfVxuXG4gICAgcHVibGljIGluaXQocm93c0NoYW5nZUNhbGxiYWNrOiAocm93czogYW55W10pID0+IHZvaWQsIGlzTG9hZGluZ0NhbGxiYWNrOiAoKGlzTG9hZGluZzogYm9vbGVhbikgPT4gdm9pZCkgPSBudWxsKSB7XG4gICAgICAgIHRoaXMucm93c0NoYW5nZUNhbGxiYWNrID0gcm93c0NoYW5nZUNhbGxiYWNrO1xuICAgICAgICB0aGlzLmlzTG9hZGluZ0NhbGxiYWNrID0gaXNMb2FkaW5nQ2FsbGJhY2s7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjbGVhclN0YXRlKCkge1xuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICB0aGlzLmxvYWRlZENvbXBsZXRlbHkgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5oYXNMb2FkZWQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5fcm93cyA9IG51bGw7XG4gICAgICAgIGlmICh0aGlzLmxvYWRpbmdTdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICAgIHRoaXMubG9hZGluZ1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgdGhpcy5sb2FkaW5nU3Vic2NyaXB0aW9uID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIFNvcnRJbmZvIHtcbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgZmllbGQ6IHN0cmluZywgcHVibGljIGRpcjogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuZGlyID0gZGlyLnRvVXBwZXJDYXNlKCk7XG4gICAgICAgIGlmICghKHRoaXMuZGlyID09PSAnQVNDJyB8fCB0aGlzLmRpciA9PT0gJ0RFU0MnKSkge1xuICAgICAgICAgICAgdGhyb3cgRXJyb3IoJ2RpciBjYW4gb25seSBiZSBcXCdBU0NcXCcgb3IgXFwnREVTQ1xcJycpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
387
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay1maWVsZC1wYWdpbmctc3VwcG9ydC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BtaWNyb3Blcm1pdC9jbGllbnQtYW5ndWxhci8iLCJzb3VyY2VzIjpbImxpYi9saW5rLWZpZWxkLXBhZ2luZy1zdXBwb3J0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBS0E7SUFFSSxnQ0FDWSxRQUFrQyxFQUNsQyxpQkFBb0MsRUFDckMsU0FBdUI7UUFIbEMsaUJBS0M7UUFGVSwwQkFBQSxFQUFBLGVBQXVCO1FBRnRCLGFBQVEsR0FBUixRQUFRLENBQTBCO1FBQ2xDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDckMsY0FBUyxHQUFULFNBQVMsQ0FBYztRQUkxQixVQUFLLEdBQWUsSUFBSSxDQUFDO1FBRTFCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDakIscUJBQWdCLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDbEIsVUFBSyxHQUFVLElBQUksQ0FBQztRQUNwQix3QkFBbUIsR0FBaUIsSUFBSSxDQUFDO1FBc0N6QyxvQkFBZTs7O1FBQUc7WUFDdEIsS0FBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQixDQUFDLEVBQUM7SUFoREYsQ0FBQztJQWFELHNCQUFJLHdDQUFJOzs7O1FBQVI7WUFDSSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRTtnQkFDakIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO2FBQ3ZCO1lBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ3RCLENBQUM7OztPQUFBOzs7Ozs7O0lBRWEsMkJBQUk7Ozs7OztJQUFsQixVQUNJLFFBQWtDLEVBQ2xDLGlCQUFvQyxFQUNwQyxTQUF1QjtRQUF2QiwwQkFBQSxFQUFBLGVBQXVCO1FBRXZCLE9BQU8sSUFBSSxzQkFBc0IsQ0FBQyxRQUFRLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDOUUsQ0FBQzs7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Ozs7SUFOZSx5QkFBb0I7O0lBQUUsdUJBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge09ic2VydmFibGUsIFN1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0xpbmtGaWVsZH0gZnJvbSAnLi9saW5rcy9saW5rZmllbGQnO1xuaW1wb3J0IHtNaWNyb09iamVjdH0gZnJvbSAnLi9taWNyb29iamVjdCc7XG5cbmV4cG9ydCBjbGFzcyBMaW5rRmllbGRQYWdpbmdTdXBwb3J0IHtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHBhZ2VMaW5rOiBMaW5rRmllbGQ8TWljcm9PYmplY3RbXT4sXG4gICAgICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBwdWJsaWMgcGFnZUxpbWl0OiBudW1iZXIgPSAyMDBcbiAgICApIHtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNvcnRzOiBTb3J0SW5mb1tdID0gbnVsbDtcblxuICAgIHB1YmxpYyBpc0xvYWRpbmcgPSBmYWxzZTtcbiAgICBwcml2YXRlIGxvYWRlZENvbXBsZXRlbHkgPSBmYWxzZTtcbiAgICBwcml2YXRlIGhhc0xvYWRlZCA9IGZhbHNlO1xuICAgIHByaXZhdGUgX3Jvd3M6IGFueVtdID0gbnVsbDtcbiAgICBwcml2YXRlIGxvYWRpbmdTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbiA9IG51bGw7XG5cbiAgICBwdWJsaWMgcm93c0NoYW5nZUNhbGxiYWNrOiAocm93czogYW55W10pID0+IHZvaWQ7XG4gICAgcHVibGljIGlzTG9hZGluZ0NhbGxiYWNrOiAoaXNMb2FkaW5nOiBib29sZWFuKSA9PiB2b2lkO1xuXG4gICAgZ2V0IHJvd3MoKTogYW55W10ge1xuICAgICAgICBpZiAoIXRoaXMuaGFzTG9hZGVkKSB7XG4gICAgICAgICAgICB0aGlzLmxvYWROZXh0UGFnZSgpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLl9yb3dzO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZnJvbShcbiAgICAgICAgcGFnZUxpbms6IExpbmtGaWVsZDxNaWNyb09iamVjdFtdPixcbiAgICAgICAgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBwYWdlTGltaXQ6IG51bWJlciA9IDIwMFxuICAgICk6IExpbmtGaWVsZFBhZ2luZ1N1cHBvcnQge1xuICAgICAgICByZXR1cm4gbmV3IExpbmtGaWVsZFBhZ2luZ1N1cHBvcnQocGFnZUxpbmssIGNoYW5nZURldGVjdG9yUmVmLCBwYWdlTGltaXQpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhcHBseVNvcnQoc29ydHM6IFNvcnRJbmZvW10sIGV4dGVybmFsU29ydGluZyA9IHRydWUpIHtcbiAgICAgICAgdGhpcy5oYXNMb2FkZWQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5zb3J0cyA9IG51bGw7XG4gICAgICAgIHRoaXMuX3Jvd3MgPSBudWxsO1xuXG4gICAgICAgIGlmIChleHRlcm5hbFNvcnRpbmcpIHtcbiAgICAgICAgICAgIHRoaXMuc29ydHMgPSBzb3J0cztcbiAgICAgICAgICAgIHRoaXMubG9hZE5leHRQYWdlKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAoIXRoaXMubG9hZGVkQ29tcGxldGVseSkge1xuICAgICAgICAgICAgICAgIHRoaXMubG9hZE5leHRQYWdlKG51bGwpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgcHJpdmF0ZSBsb2FkaW5nQ2FsbGJhY2sgPSAoKSA9PiB7XG4gICAgICAgIHRoaXMuc2V0TG9hZGluZyhmYWxzZSk7XG4gICAgfTtcblxuICAgIHB1YmxpYyBsb2FkTmV4dFBhZ2UocGFnZVNpemU6IG51bWJlciA9IHRoaXMucGFnZUxpbWl0LCByZXN1bHRDYWxsYmFjazogKChwYWdlOiBhbnlbXSwgYWxsOiBhbnlbXSkgPT4gdm9pZCkgPSBudWxsKSB7XG4gICAgICAgIGlmICh0aGlzLnBhZ2VMaW5rICYmICF0aGlzLmlzTG9hZGluZykge1xuICAgICAgICAgICAgaWYgKHRoaXMubG9hZGluZ1N1YnNjcmlwdGlvbikge1xuICAgICAgICAgICAgICAgIHRoaXMubG9hZGluZ1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgICAgIHRoaXMubG9hZGluZ1N1YnNjcmlwdGlvbiA9IG51bGw7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuaGFzTG9hZGVkID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMubG9hZGVkQ29tcGxldGVseSA9IGZhbHNlO1xuICAgICAgICAgICAgaWYgKHRoaXMuX3Jvd3MgPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2V0TG9hZGluZyh0cnVlKTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IHJlcU9wdGlvbnM6IGFueSA9IHt9O1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLnNvcnRzICE9IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVxT3B0aW9ucy5zb3J0aW5nID0gdGhpcy5zb3J0cztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHBhZ2VTaXplICE9IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgcmVxT3B0aW9ucy5wYWdlU2l6ZSA9IHBhZ2VTaXplO1xuICAgICAgICAgICAgICAgIH1cblxuXG4gICAgICAgICAgICAgICAgdGhpcy5sb2FkaW5nU3Vic2NyaXB0aW9uID0gdGhpcy5wYWdlTGluay5pbml0V2l0aE9icyhudWxsLCByZXFPcHRpb25zKS5zdWJzY3JpYmUoKGZpcnN0UGFnZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNldFJvd3MoZmlyc3RQYWdlLCByZXN1bHRDYWxsYmFjayk7XG4gICAgICAgICAgICAgICAgfSwgdGhpcy5sb2FkaW5nQ2FsbGJhY2ssIHRoaXMubG9hZGluZ0NhbGxiYWNrKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbGFzdFJvdyA9IHRoaXMubGFzdFJvdygpO1xuICAgICAgICAgICAgICAgIGlmIChsYXN0Um93KSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChsYXN0Um93Ll9fbWV0YS5uZXh0UGFnZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHJlcU9wdGlvbnMgPSBudWxsO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHBhZ2VTaXplICE9IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXFPcHRpb25zID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWdlU2l6ZTogcGFnZVNpemVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXh0UGFnZU9iczogT2JzZXJ2YWJsZTxNaWNyb09iamVjdFtdPiA9IGxhc3RSb3cuX19tZXRhLm5leHRQYWdlLmluaXRXaXRoT2JzKG51bGwsIHJlcU9wdGlvbnMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG5leHRQYWdlT2JzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRMb2FkaW5nKHRydWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubG9hZGluZ1N1YnNjcmlwdGlvbiA9IG5leHRQYWdlT2JzLnN1YnNjcmliZSgobmV4dFBhZ2UpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRSb3dzKG5leHRQYWdlLCByZXN1bHRDYWxsYmFjayk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgdGhpcy5sb2FkaW5nQ2FsbGJhY2ssIHRoaXMubG9hZGluZ0NhbGxiYWNrKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmICghdGhpcy5wYWdlTGluaykge1xuICAgICAgICAgICAgdGhpcy5jbGVhclJvd3MoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBsb2FkRXZlcnl0aGluZygpIHtcbiAgICAgICAgdGhpcy5sb2FkTmV4dFBhZ2UobnVsbCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBsYXN0Um93KCk6IE1pY3JvT2JqZWN0IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Jvd3NbdGhpcy5fcm93cy5sZW5ndGggLSAxXTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldFJvd3MoYWRkaXRpb25hbFBhZ2U6IGFueVtdLCBsb2FkQ2FsbGJhY2s6ICgocGFnZTogYW55W10sIGFsbDogYW55W10pID0+IHZvaWQpKSB7XG4gICAgICAgIGlmICh0aGlzLl9yb3dzKSB7XG4gICAgICAgICAgICB0aGlzLl9yb3dzID0gWy4uLnRoaXMucm93cywgLi4uYWRkaXRpb25hbFBhZ2VdO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fcm93cyA9IGFkZGl0aW9uYWxQYWdlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChsb2FkQ2FsbGJhY2spIHtcbiAgICAgICAgICAgIGxvYWRDYWxsYmFjayhhZGRpdGlvbmFsUGFnZSwgdGhpcy5fcm93cyk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5yZWZsZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIHByaXZhdGUgY2xlYXJSb3dzKCkge1xuICAgICAgICBpZiAodGhpcy5fcm93cyAhPSBudWxsKSB7XG4gICAgICAgICAgICB0aGlzLl9yb3dzID0gbnVsbDtcbiAgICAgICAgICAgIHRoaXMucmVmbGVjdENoYW5nZXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgcmVmbGVjdENoYW5nZXMoKSB7XG4gICAgICAgIGNvbnN0IGxhc3RSb3cgPSB0aGlzLmxhc3RSb3coKTtcbiAgICAgICAgaWYgKGxhc3RSb3cgJiYgbGFzdFJvdy5fX21ldGEpIHtcbiAgICAgICAgICAgIHRoaXMubG9hZGVkQ29tcGxldGVseSA9IGxhc3RSb3cuX19tZXRhLm5leHRQYWdlID09IG51bGw7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmxvYWRlZENvbXBsZXRlbHkgPSBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLnJvd3NDaGFuZ2VDYWxsYmFjaykge1xuICAgICAgICAgICAgdGhpcy5yb3dzQ2hhbmdlQ2FsbGJhY2sodGhpcy5fcm93cyk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRMb2FkaW5nKGlzTG9hZGluZzogYm9vbGVhbikge1xuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGlzTG9hZGluZztcbiAgICAgICAgaWYgKHRoaXMuaXNMb2FkaW5nQ2FsbGJhY2spIHtcbiAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nQ2FsbGJhY2sodGhpcy5pc0xvYWRpbmcpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBkaXNwb3NlKCkge1xuICAgICAgICB0aGlzLnJvd3NDaGFuZ2VDYWxsYmFjayA9IG51bGw7XG4gICAgICAgIHRoaXMuaXNMb2FkaW5nQ2FsbGJhY2sgPSBudWxsO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXRQYWdlTGluayhwYWdlTGluazogTGlua0ZpZWxkPE1pY3JvT2JqZWN0W10+KSB7XG4gICAgICAgIHRoaXMuY2xlYXJTdGF0ZSgpO1xuICAgICAgICB0aGlzLnBhZ2VMaW5rID0gcGFnZUxpbms7XG4gICAgICAgIHRoaXMubG9hZE5leHRQYWdlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGhhc0xvYWRlZENvbXBsZXRlbHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmxvYWRlZENvbXBsZXRlbHk7XG4gICAgfVxuXG4gICAgcHVibGljIGluaXQocm93c0NoYW5nZUNhbGxiYWNrOiAocm93czogYW55W10pID0+IHZvaWQsIGlzTG9hZGluZ0NhbGxiYWNrOiAoKGlzTG9hZGluZzogYm9vbGVhbikgPT4gdm9pZCkgPSBudWxsKSB7XG4gICAgICAgIHRoaXMucm93c0NoYW5nZUNhbGxiYWNrID0gcm93c0NoYW5nZUNhbGxiYWNrO1xuICAgICAgICB0aGlzLmlzTG9hZGluZ0NhbGxiYWNrID0gaXNMb2FkaW5nQ2FsbGJhY2s7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjbGVhclN0YXRlKCkge1xuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICB0aGlzLmxvYWRlZENvbXBsZXRlbHkgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5oYXNMb2FkZWQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5fcm93cyA9IG51bGw7XG4gICAgICAgIGlmICh0aGlzLmxvYWRpbmdTdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICAgIHRoaXMubG9hZGluZ1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgdGhpcy5sb2FkaW5nU3Vic2NyaXB0aW9uID0gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIFNvcnRJbmZvIHtcbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgZmllbGQ6IHN0cmluZywgcHVibGljIGRpcjogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuZGlyID0gZGlyLnRvVXBwZXJDYXNlKCk7XG4gICAgICAgIGlmICghKHRoaXMuZGlyID09PSAnQVNDJyB8fCB0aGlzLmRpciA9PT0gJ0RFU0MnKSkge1xuICAgICAgICAgICAgdGhyb3cgRXJyb3IoJ2RpciBjYW4gb25seSBiZSBcXCdBU0NcXCcgb3IgXFwnREVTQ1xcJycpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
@@ -10,6 +10,7 @@ import { MicroClient } from './microclient.service';
10
10
  import { HttpClientModule } from '@angular/common/http';
11
11
  import { CallLinkDirective } from './directives/call-link.directive';
12
12
  import { MicroClientErrorIndicatorComponent } from './components/errorindicator.component';
13
+ import { MicroLinkValidateDirective } from './directives/micro-link-validate.directive';
13
14
  var MicroClientModule = /** @class */ (function () {
14
15
  function MicroClientModule() {
15
16
  }
@@ -41,18 +42,20 @@ var MicroClientModule = /** @class */ (function () {
41
42
  LinkFieldDirective,
42
43
  CallLinkDirective,
43
44
  MicroClientLoadingIndicatorComponent,
44
- MicroClientErrorIndicatorComponent
45
+ MicroClientErrorIndicatorComponent,
46
+ MicroLinkValidateDirective
45
47
  ],
46
48
  exports: [
47
49
  LinkFieldPipe,
48
50
  LinkFieldDirective,
49
51
  CallLinkDirective,
50
52
  MicroClientErrorIndicatorComponent,
51
- MicroClientLoadingIndicatorComponent
53
+ MicroClientLoadingIndicatorComponent,
54
+ MicroLinkValidateDirective
52
55
  ]
53
56
  },] }
54
57
  ];
55
58
  return MicroClientModule;
56
59
  }());
57
60
  export { MicroClientModule };
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm9jbGllbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG1pY3JvcGVybWl0L2NsaWVudC1hbmd1bGFyLyIsInNvdXJjZXMiOlsibGliL21pY3JvY2xpZW50Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFzQixRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDNUQsT0FBTyxFQUFDLG9DQUFvQyxFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDN0YsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ3BFLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUMsa0NBQWtDLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUV6RjtJQUFBO0lBZ0NBLENBQUM7Ozs7SUFSVSwrQkFBYTs7O0lBQXBCO1FBQ0ksT0FBTztZQUNILFFBQVEsRUFBRSxpQkFBaUI7WUFDM0IsU0FBUyxFQUFFO2dCQUNQLFdBQVc7YUFDZDtTQUNKLENBQUM7SUFDTixDQUFDOztnQkEvQkosUUFBUSxTQUFDO29CQUNOLGVBQWUsRUFBRTt3QkFDYixvQ0FBb0M7d0JBQ3BDLGtDQUFrQztxQkFDckM7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLGdCQUFnQjtxQkFDbkI7b0JBQ0QsWUFBWSxFQUFFO3dCQUNWLGFBQWE7d0JBQ2Isa0JBQWtCO3dCQUNsQixpQkFBaUI7d0JBQ2pCLG9DQUFvQzt3QkFDcEMsa0NBQWtDO3FCQUNyQztvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsYUFBYTt3QkFDYixrQkFBa0I7d0JBQ2xCLGlCQUFpQjt3QkFDakIsa0NBQWtDO3dCQUNsQyxvQ0FBb0M7cUJBQ3ZDO2lCQUNKOztJQVVELHdCQUFDO0NBQUEsQUFoQ0QsSUFnQ0M7U0FUWSxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge01vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TWljcm9DbGllbnRMb2FkaW5nSW5kaWNhdG9yQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvbG9hZGluZ2luZGljYXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHtMaW5rRmllbGRQaXBlfSBmcm9tICcuL3BpcGVzL2xpbmtmaWVsZC5waXBlJztcbmltcG9ydCB7TGlua0ZpZWxkRGlyZWN0aXZlfSBmcm9tICcuL2RpcmVjdGl2ZXMvbGlua2ZpZWxkLmRpcmVjdGl2ZSc7XG5pbXBvcnQge01pY3JvQ2xpZW50fSBmcm9tICcuL21pY3JvY2xpZW50LnNlcnZpY2UnO1xuaW1wb3J0IHtIdHRwQ2xpZW50TW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQge0NhbGxMaW5rRGlyZWN0aXZlfSBmcm9tICcuL2RpcmVjdGl2ZXMvY2FsbC1saW5rLmRpcmVjdGl2ZSc7XG5pbXBvcnQge01pY3JvQ2xpZW50RXJyb3JJbmRpY2F0b3JDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9lcnJvcmluZGljYXRvci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGVudHJ5Q29tcG9uZW50czogW1xuICAgICAgICBNaWNyb0NsaWVudExvYWRpbmdJbmRpY2F0b3JDb21wb25lbnQsXG4gICAgICAgIE1pY3JvQ2xpZW50RXJyb3JJbmRpY2F0b3JDb21wb25lbnRcbiAgICBdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgSHR0cENsaWVudE1vZHVsZVxuICAgIF0sXG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIExpbmtGaWVsZFBpcGUsXG4gICAgICAgIExpbmtGaWVsZERpcmVjdGl2ZSxcbiAgICAgICAgQ2FsbExpbmtEaXJlY3RpdmUsXG4gICAgICAgIE1pY3JvQ2xpZW50TG9hZGluZ0luZGljYXRvckNvbXBvbmVudCxcbiAgICAgICAgTWljcm9DbGllbnRFcnJvckluZGljYXRvckNvbXBvbmVudFxuICAgIF0sXG4gICAgZXhwb3J0czogW1xuICAgICAgICBMaW5rRmllbGRQaXBlLFxuICAgICAgICBMaW5rRmllbGREaXJlY3RpdmUsXG4gICAgICAgIENhbGxMaW5rRGlyZWN0aXZlLFxuICAgICAgICBNaWNyb0NsaWVudEVycm9ySW5kaWNhdG9yQ29tcG9uZW50LFxuICAgICAgICBNaWNyb0NsaWVudExvYWRpbmdJbmRpY2F0b3JDb21wb25lbnRcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIE1pY3JvQ2xpZW50TW9kdWxlIHtcbiAgICBzdGF0aWMgZm9yQ2xpZW50Um9vdCgpOiBNb2R1bGVXaXRoUHJvdmlkZXJzIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG5nTW9kdWxlOiBNaWNyb0NsaWVudE1vZHVsZSxcbiAgICAgICAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICAgICAgICAgIE1pY3JvQ2xpZW50XG4gICAgICAgICAgICBdXG4gICAgICAgIH07XG4gICAgfVxufVxuIl19
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm9jbGllbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG1pY3JvcGVybWl0L2NsaWVudC1hbmd1bGFyLyIsInNvdXJjZXMiOlsibGliL21pY3JvY2xpZW50Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFzQixRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDNUQsT0FBTyxFQUFDLG9DQUFvQyxFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDN0YsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ3BFLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUMsa0NBQWtDLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUN6RixPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSw0Q0FBNEMsQ0FBQztBQUV0RjtJQUFBO0lBa0NBLENBQUM7Ozs7SUFSVSwrQkFBYTs7O0lBQXBCO1FBQ0ksT0FBTztZQUNILFFBQVEsRUFBRSxpQkFBaUI7WUFDM0IsU0FBUyxFQUFFO2dCQUNQLFdBQVc7YUFDZDtTQUNKLENBQUM7SUFDTixDQUFDOztnQkFqQ0osUUFBUSxTQUFDO29CQUNOLGVBQWUsRUFBRTt3QkFDYixvQ0FBb0M7d0JBQ3BDLGtDQUFrQztxQkFDckM7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLGdCQUFnQjtxQkFDbkI7b0JBQ0QsWUFBWSxFQUFFO3dCQUNWLGFBQWE7d0JBQ2Isa0JBQWtCO3dCQUNsQixpQkFBaUI7d0JBQ2pCLG9DQUFvQzt3QkFDcEMsa0NBQWtDO3dCQUNsQywwQkFBMEI7cUJBQzdCO29CQUNELE9BQU8sRUFBRTt3QkFDTCxhQUFhO3dCQUNiLGtCQUFrQjt3QkFDbEIsaUJBQWlCO3dCQUNqQixrQ0FBa0M7d0JBQ2xDLG9DQUFvQzt3QkFDcEMsMEJBQTBCO3FCQUM3QjtpQkFDSjs7SUFVRCx3QkFBQztDQUFBLEFBbENELElBa0NDO1NBVFksaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge01pY3JvQ2xpZW50TG9hZGluZ0luZGljYXRvckNvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL2xvYWRpbmdpbmRpY2F0b3IuY29tcG9uZW50JztcbmltcG9ydCB7TGlua0ZpZWxkUGlwZX0gZnJvbSAnLi9waXBlcy9saW5rZmllbGQucGlwZSc7XG5pbXBvcnQge0xpbmtGaWVsZERpcmVjdGl2ZX0gZnJvbSAnLi9kaXJlY3RpdmVzL2xpbmtmaWVsZC5kaXJlY3RpdmUnO1xuaW1wb3J0IHtNaWNyb0NsaWVudH0gZnJvbSAnLi9taWNyb2NsaWVudC5zZXJ2aWNlJztcbmltcG9ydCB7SHR0cENsaWVudE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtDYWxsTGlua0RpcmVjdGl2ZX0gZnJvbSAnLi9kaXJlY3RpdmVzL2NhbGwtbGluay5kaXJlY3RpdmUnO1xuaW1wb3J0IHtNaWNyb0NsaWVudEVycm9ySW5kaWNhdG9yQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvZXJyb3JpbmRpY2F0b3IuY29tcG9uZW50JztcbmltcG9ydCB7TWljcm9MaW5rVmFsaWRhdGVEaXJlY3RpdmV9IGZyb20gJy4vZGlyZWN0aXZlcy9taWNyby1saW5rLXZhbGlkYXRlLmRpcmVjdGl2ZSc7XG5cbkBOZ01vZHVsZSh7XG4gICAgZW50cnlDb21wb25lbnRzOiBbXG4gICAgICAgIE1pY3JvQ2xpZW50TG9hZGluZ0luZGljYXRvckNvbXBvbmVudCxcbiAgICAgICAgTWljcm9DbGllbnRFcnJvckluZGljYXRvckNvbXBvbmVudFxuICAgIF0sXG4gICAgaW1wb3J0czogW1xuICAgICAgICBIdHRwQ2xpZW50TW9kdWxlXG4gICAgXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgICAgTGlua0ZpZWxkUGlwZSxcbiAgICAgICAgTGlua0ZpZWxkRGlyZWN0aXZlLFxuICAgICAgICBDYWxsTGlua0RpcmVjdGl2ZSxcbiAgICAgICAgTWljcm9DbGllbnRMb2FkaW5nSW5kaWNhdG9yQ29tcG9uZW50LFxuICAgICAgICBNaWNyb0NsaWVudEVycm9ySW5kaWNhdG9yQ29tcG9uZW50LFxuICAgICAgICBNaWNyb0xpbmtWYWxpZGF0ZURpcmVjdGl2ZVxuICAgIF0sXG4gICAgZXhwb3J0czogW1xuICAgICAgICBMaW5rRmllbGRQaXBlLFxuICAgICAgICBMaW5rRmllbGREaXJlY3RpdmUsXG4gICAgICAgIENhbGxMaW5rRGlyZWN0aXZlLFxuICAgICAgICBNaWNyb0NsaWVudEVycm9ySW5kaWNhdG9yQ29tcG9uZW50LFxuICAgICAgICBNaWNyb0NsaWVudExvYWRpbmdJbmRpY2F0b3JDb21wb25lbnQsXG4gICAgICAgIE1pY3JvTGlua1ZhbGlkYXRlRGlyZWN0aXZlXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBNaWNyb0NsaWVudE1vZHVsZSB7XG4gICAgc3RhdGljIGZvckNsaWVudFJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxNaWNyb0NsaWVudE1vZHVsZT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbmdNb2R1bGU6IE1pY3JvQ2xpZW50TW9kdWxlLFxuICAgICAgICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgICAgICAgICAgTWljcm9DbGllbnRcbiAgICAgICAgICAgIF1cbiAgICAgICAgfTtcbiAgICB9XG59XG4iXX0=
@@ -5,5 +5,5 @@
5
5
  /**
6
6
  * Generated bundle index. Do not edit.
7
7
  */
8
- export { MicroClient, MicroClientLoadError, MicroError, MicroObject, MicroObjectMetadata, MicroClientModule, ParamUtils, LinkFieldPagingSupport, SortInfo, MicroClientLoadingIndicatorComponent, MicroClientErrorIndicatorComponent, CallLinkDirective, CallStatus, CallState, LinkFieldDirective, LinkFieldContext, CallableLink, LinkSerializer, LinkField, MockLinkField, LinkFieldPipe } from './public_api';
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm9wZXJtaXQtY2xpZW50LWFuZ3VsYXIuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AbWljcm9wZXJtaXQvY2xpZW50LWFuZ3VsYXIvIiwic291cmNlcyI6WyJtaWNyb3Blcm1pdC1jbGllbnQtYW5ndWxhci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsa1lBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuIl19
8
+ export { MicroClient, MicroClientLoadError, MicroError, MicroObject, MicroObjectMetadata, MicroClientModule, ParamUtils, LinkFieldPagingSupport, SortInfo, MicroClientLoadingIndicatorComponent, MicroClientErrorIndicatorComponent, CallLinkDirective, CallStatus, CallState, LinkFieldDirective, LinkFieldContext, MicroLinkValidateDirective, CallableLink, LinkSerializer, LinkField, MockLinkField, LinkFieldPipe } from './public_api';
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm9wZXJtaXQtY2xpZW50LWFuZ3VsYXIuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AbWljcm9wZXJtaXQvY2xpZW50LWFuZ3VsYXIvIiwic291cmNlcyI6WyJtaWNyb3Blcm1pdC1jbGllbnQtYW5ndWxhci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsOFpBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuIl19