myrta-ui 1.1.20 → 1.1.21

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.
Files changed (28) hide show
  1. package/esm2020/lib/components/form/formula-editor/formula-editor.component.mjs +164 -0
  2. package/esm2020/lib/components/form/formula-editor/formula-editor.module.mjs +50 -0
  3. package/esm2020/lib/services/mrx-form-validator/mrx-form-validator.mjs +7 -2
  4. package/esm2020/lib/services/mrx-form-validator/validations/callback.validation.mjs +2 -2
  5. package/esm2020/lib/services/mrx-form-validator/validations/email.validation.mjs +2 -2
  6. package/esm2020/lib/services/mrx-form-validator/validations/max-length.validation.mjs +2 -2
  7. package/esm2020/lib/services/mrx-form-validator/validations/max-value.validation.mjs +2 -2
  8. package/esm2020/lib/services/mrx-form-validator/validations/min-length.validation.mjs +2 -2
  9. package/esm2020/lib/services/mrx-form-validator/validations/min-value.validation.mjs +2 -2
  10. package/esm2020/lib/services/mrx-form-validator/validations/pattern.validation.mjs +2 -2
  11. package/esm2020/lib/services/mrx-form-validator/validations/required.validation.mjs +2 -2
  12. package/esm2020/public-api.mjs +3 -1
  13. package/fesm2015/myrta-ui.mjs +217 -11
  14. package/fesm2015/myrta-ui.mjs.map +1 -1
  15. package/fesm2020/myrta-ui.mjs +213 -11
  16. package/fesm2020/myrta-ui.mjs.map +1 -1
  17. package/lib/components/form/formula-editor/formula-editor.component.d.ts +32 -0
  18. package/lib/components/form/formula-editor/formula-editor.module.d.ts +14 -0
  19. package/lib/services/mrx-form-validator/validations/callback.validation.d.ts +1 -1
  20. package/lib/services/mrx-form-validator/validations/email.validation.d.ts +1 -1
  21. package/lib/services/mrx-form-validator/validations/max-length.validation.d.ts +1 -1
  22. package/lib/services/mrx-form-validator/validations/max-value.validation.d.ts +1 -1
  23. package/lib/services/mrx-form-validator/validations/min-length.validation.d.ts +1 -1
  24. package/lib/services/mrx-form-validator/validations/min-value.validation.d.ts +1 -1
  25. package/lib/services/mrx-form-validator/validations/pattern.validation.d.ts +1 -1
  26. package/lib/services/mrx-form-validator/validations/required.validation.d.ts +1 -1
  27. package/package.json +4 -2
  28. package/public-api.d.ts +2 -0
@@ -0,0 +1,164 @@
1
+ import { Component, forwardRef, Inject, ViewChild, } from '@angular/core';
2
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
+ import Tagify from '@yaireo/tagify';
4
+ import { DOCUMENT } from '@angular/common';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/platform-browser";
7
+ import * as i2 from "@angular/common";
8
+ import * as i3 from "../../../pipes/safe/safe.pipe";
9
+ const whitelist_2 = ['Homer simpson', 'Marge simpson', 'Bart', 'Lisa', 'Maggie', 'Mr. Burns', 'Ned', 'Milhouse', 'Moe'];
10
+ export class FormulaEditorComponent {
11
+ constructor(document, sanitizer) {
12
+ this.document = document;
13
+ this.sanitizer = sanitizer;
14
+ this._whitelist = ['Angular', 'React', 'Vue'];
15
+ this.value = '';
16
+ this.isFocused = false;
17
+ }
18
+ getSanitizedValue() {
19
+ return this.value;
20
+ }
21
+ ngAfterViewInit() {
22
+ if (!this.inputElement?.nativeElement)
23
+ return;
24
+ this._tagify = new Tagify(this.inputElement.nativeElement, {
25
+ mode: 'mix',
26
+ editTags: false,
27
+ enforceWhitelist: false,
28
+ pattern: /@|#/,
29
+ whitelist: ['firstname', 'lastname', 'email', 'company'],
30
+ callbacks: {
31
+ add: (e) => {
32
+ console.log(1);
33
+ console.log(e);
34
+ //
35
+ // let ranges = [];
36
+ // let sel = window.getSelection();
37
+ // if (sel) {
38
+ // for (let i = 0; i < sel.rangeCount; i++) {
39
+ // ranges[i] = sel.getRangeAt(i);
40
+ // }
41
+ // }
42
+ //
43
+ // const textNode = e.detail.tag.nextSibling
44
+ // e.detail.tag.insertAdjacentText('afterend', '\u00A0')
45
+ // document.getSelection()?.getRangeAt(0).setStart(textNode, 0)
46
+ console.log(e.detail.tagify.value);
47
+ console.log(e.detail.tagify.getCleanValue());
48
+ },
49
+ change: (e) => {
50
+ console.log(2);
51
+ console.log(e);
52
+ // const textNode = e.detail.tag.nextSibling
53
+ },
54
+ 'dropdown:select': (e) => {
55
+ console.log(3);
56
+ console.log(e);
57
+ e.detail.tagify.DOM.input.focus();
58
+ }
59
+ },
60
+ });
61
+ this._tagify.on('input', (e) => {
62
+ if (e.detail.textContent.length > 1) {
63
+ this._tagify.dropdown.show(e.detail.value);
64
+ }
65
+ });
66
+ this._tagify.on('add', (e) => {
67
+ e.detail.tagify.DOM.input.focus();
68
+ const textNode = e.detail.tag.nextSibling;
69
+ if (document.getSelection()?.getRangeAt(0)) {
70
+ document.getSelection()?.getRangeAt(0).setStart(textNode, 1);
71
+ }
72
+ });
73
+ // this._tagify.on('focus', (e: any) => {
74
+ // this._tagify.dropdown.show(e.detail.value);
75
+ // })
76
+ }
77
+ ngOnDestroy() {
78
+ }
79
+ registerOnChange(fn) {
80
+ }
81
+ registerOnTouched(fn) {
82
+ }
83
+ writeValue(obj) {
84
+ }
85
+ onInput(event) {
86
+ const target = event.target;
87
+ const content = target.textContent || '';
88
+ const valueArray = content.split(/[ &nbsp;]+/);
89
+ }
90
+ onBlur(event) {
91
+ const target = event.target;
92
+ const content = target.textContent || '';
93
+ const visibleValueArray = content.split(/[\s\u00A0]+/);
94
+ const originalValueArray = [];
95
+ visibleValueArray.forEach((item, index, array) => {
96
+ if (this._whitelist.find(v => v === item)) {
97
+ visibleValueArray[index] = `<div class="tag" title="Eric Cartman" contenteditable="false" tabindex="-1"><div>${item}</div><div></div></div>&nbsp;`;
98
+ originalValueArray.push(`{${item}}`);
99
+ }
100
+ else {
101
+ originalValueArray.push(item);
102
+ }
103
+ });
104
+ this.transformValue(visibleValueArray);
105
+ this.updateValue(originalValueArray);
106
+ // this.isFocused = false
107
+ this.updateSelection(event);
108
+ }
109
+ transformValue(array) {
110
+ this.value = array.join(' ');
111
+ }
112
+ updateValue(array) {
113
+ console.log(array.join(' '));
114
+ }
115
+ updateSelection(event) {
116
+ const selections = window.getSelection();
117
+ console.log(selections);
118
+ const start = selections?.anchorOffset || 0;
119
+ const end = selections?.focusOffset || 0;
120
+ if (start > end) {
121
+ this.selectionStart = end;
122
+ this.selectionEnd = start;
123
+ }
124
+ else {
125
+ this.selectionStart = start;
126
+ this.selectionEnd = end;
127
+ }
128
+ }
129
+ onFocus(event) {
130
+ // this.updateSelection(event)
131
+ this.isFocused = true;
132
+ }
133
+ insertTag(row) {
134
+ if ((this.selectionStart || this.selectionStart === 0) && (this.selectionEnd || this.selectionEnd === 0)) {
135
+ const firstText = this.value.slice(0, this.selectionStart);
136
+ const secondText = this.value.slice(this.selectionEnd);
137
+ this.value = firstText + row + secondText;
138
+ }
139
+ }
140
+ onSelectionChange(event) {
141
+ console.log('asd');
142
+ }
143
+ }
144
+ FormulaEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FormulaEditorComponent, deps: [{ token: DOCUMENT }, { token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
145
+ FormulaEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: FormulaEditorComponent, selector: "mrx-formula-editor", providers: [{
146
+ provide: NG_VALUE_ACCESSOR,
147
+ useExisting: forwardRef(() => FormulaEditorComponent),
148
+ multi: true
149
+ }], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["inputElement"], descendants: true, static: true }], ngImport: i0, template: "<div\n class=\"mrx-formula-editor\"\n>\n <div class=\"mrx-formula-editor__wrapper\">\n <div\n [innerHTML]=\"value | safe\"\n class=\"mrx-formula-editor__box\"\n contenteditable=\"true\"\n tabindex=\"0\" data-placeholder=\"&ZeroWidthSpace;\" aria-placeholder=\"\" role=\"textbox\" autocapitalize=\"false\"\n autocorrect=\"off\" spellcheck=\"false\" aria-autocomplete=\"both\" aria-multiline=\"true\"\n (input)=\"onInput($event)\"\n (blur)=\"onBlur($event)\"\n (focus)=\"onFocus($event)\"\n (selectionchange)=\"onSelectionChange($event)\"\n ></div>\n <!-- <textarea #inputElement name='mix' contenteditable=\"false\">asd[[{\"value\":\"firstname\"}]] [[{\"value\":\"email\"}]] asdasdasd asd[[{\"value\":\"company\"}]]</textarea>-->\n <!-- <input-->\n <!-- autocomplete=\"nope\"-->\n <!-- #inputElement-->\n <!-- [type]=\"'text'\"-->\n <!-- [id]=\"uuid\"-->\n <!-- [ngModel]=\"value\"-->\n <!-- [title]=\"placeholder || ''\"-->\n <!-- [disabled]=\"disabled\"-->\n <!-- [readOnly]=\"readonly\"-->\n <!-- [placeholder]=\"!disabled && placeholder ? placeholder : ''\"-->\n <!-- [mask]=\"mask\"-->\n <!-- [prefix]=\"maskPrefix\"-->\n <!-- [showMaskTyped]=\"showMaskTyped\"-->\n <!-- [dropSpecialCharacters]=\"maskDropSpecialCharacters\"-->\n <!-- [minlength]=\"minlength > 0 && restrictInput ? minlength : null\"-->\n <!-- [maxlength]=\"maxlength > 0 && restrictInput ? maxlength : null\"-->\n <!-- (ngModelChange)=\"updateValue($event)\"-->\n <!-- (blur)=\"onBlur($event)\"-->\n <!-- />-->\n\n <!-- <mrx-chars-left-->\n <!-- *ngIf=\"!disabled && maxlength\"-->\n <!-- [value]=\"value\"-->\n <!-- [maxlength]=\"maxlength\"-->\n <!-- ></mrx-chars-left>-->\n\n <div class=\"mrx-formula-editor__popup\" *ngIf=\"isFocused\">\n <div\n class=\"mrx-formula-editor__popup--row\"\n *ngFor=\"let row of _whitelist\"\n (click)=\"insertTag(row)\"\n >\n {{ row }}\n </div>\n </div>\n </div>\n\n <!-- <mrx-error-message-->\n <!-- *ngIf=\"getInvalid && getInvalidMessage\"-->\n <!-- [invalidMessage]=\"getInvalidMessage\"-->\n <!-- ></mrx-error-message>-->\n\n <!-- <mrx-save-state [id]=\"uuid\" [fields]=\"fields\"></mrx-save-state>-->\n</div>\n", styles: [".mrx-formula-editor{position:relative}.mrx-formula-editor__box{font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height);padding:calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4);border:var(--border-width-default) solid var(--neutral-bg-stroke-default);border-radius:var(--border-radius-1);outline:none;color:var(--neutral-text-primary, #262626);transition:outline-width .2s,border .2s;-webkit-user-modify:read-write;overflow-wrap:break-word;-webkit-line-break:after-white-space}.mrx-formula-editor__box:focus,.mrx-formula-editor__box:active{outline:var(--neutral-bg-island-default) solid var(--border-width-focused)}.mrx-formula-editor__box:hover{border:var(--border-width-default) solid var(--neutral-bg-stroke-hover)}.mrx-formula-editor__box ::ng-deep .tag{display:inline-flex;padding:2px 4px;background-color:#8ad5f4;border-radius:var(--border-radius-1);margin:0 2px;position:relative;z-index:1;cursor:default;-webkit-user-modify:read-only}.mrx-formula-editor__wrapper{position:relative}.mrx-formula-editor__popup{position:absolute;top:52px;width:100%;border:var(--border-width-default) solid var(--neutral-bg-stroke-default);border-radius:var(--border-radius-1);background-color:#fff;max-height:240px;overflow-x:hidden;overflow-y:auto}.mrx-formula-editor__popup--row{min-height:var(--sizing-10);transition:.2s;display:flex;align-items:center;padding:var(--spacing-1) var(--spacing-4);white-space:normal}.mrx-formula-editor__popup--row:hover{cursor:pointer;background-color:var(--Bg2)!important}\n"], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "safe": i3.SafePipe } });
150
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FormulaEditorComponent, decorators: [{
151
+ type: Component,
152
+ args: [{ selector: 'mrx-formula-editor', providers: [{
153
+ provide: NG_VALUE_ACCESSOR,
154
+ useExisting: forwardRef(() => FormulaEditorComponent),
155
+ multi: true
156
+ }], template: "<div\n class=\"mrx-formula-editor\"\n>\n <div class=\"mrx-formula-editor__wrapper\">\n <div\n [innerHTML]=\"value | safe\"\n class=\"mrx-formula-editor__box\"\n contenteditable=\"true\"\n tabindex=\"0\" data-placeholder=\"&ZeroWidthSpace;\" aria-placeholder=\"\" role=\"textbox\" autocapitalize=\"false\"\n autocorrect=\"off\" spellcheck=\"false\" aria-autocomplete=\"both\" aria-multiline=\"true\"\n (input)=\"onInput($event)\"\n (blur)=\"onBlur($event)\"\n (focus)=\"onFocus($event)\"\n (selectionchange)=\"onSelectionChange($event)\"\n ></div>\n <!-- <textarea #inputElement name='mix' contenteditable=\"false\">asd[[{\"value\":\"firstname\"}]] [[{\"value\":\"email\"}]] asdasdasd asd[[{\"value\":\"company\"}]]</textarea>-->\n <!-- <input-->\n <!-- autocomplete=\"nope\"-->\n <!-- #inputElement-->\n <!-- [type]=\"'text'\"-->\n <!-- [id]=\"uuid\"-->\n <!-- [ngModel]=\"value\"-->\n <!-- [title]=\"placeholder || ''\"-->\n <!-- [disabled]=\"disabled\"-->\n <!-- [readOnly]=\"readonly\"-->\n <!-- [placeholder]=\"!disabled && placeholder ? placeholder : ''\"-->\n <!-- [mask]=\"mask\"-->\n <!-- [prefix]=\"maskPrefix\"-->\n <!-- [showMaskTyped]=\"showMaskTyped\"-->\n <!-- [dropSpecialCharacters]=\"maskDropSpecialCharacters\"-->\n <!-- [minlength]=\"minlength > 0 && restrictInput ? minlength : null\"-->\n <!-- [maxlength]=\"maxlength > 0 && restrictInput ? maxlength : null\"-->\n <!-- (ngModelChange)=\"updateValue($event)\"-->\n <!-- (blur)=\"onBlur($event)\"-->\n <!-- />-->\n\n <!-- <mrx-chars-left-->\n <!-- *ngIf=\"!disabled && maxlength\"-->\n <!-- [value]=\"value\"-->\n <!-- [maxlength]=\"maxlength\"-->\n <!-- ></mrx-chars-left>-->\n\n <div class=\"mrx-formula-editor__popup\" *ngIf=\"isFocused\">\n <div\n class=\"mrx-formula-editor__popup--row\"\n *ngFor=\"let row of _whitelist\"\n (click)=\"insertTag(row)\"\n >\n {{ row }}\n </div>\n </div>\n </div>\n\n <!-- <mrx-error-message-->\n <!-- *ngIf=\"getInvalid && getInvalidMessage\"-->\n <!-- [invalidMessage]=\"getInvalidMessage\"-->\n <!-- ></mrx-error-message>-->\n\n <!-- <mrx-save-state [id]=\"uuid\" [fields]=\"fields\"></mrx-save-state>-->\n</div>\n", styles: [".mrx-formula-editor{position:relative}.mrx-formula-editor__box{font-family:var(--body-md-font-family);font-size:var(--body-md-font-size);font-weight:var(--body-md-font-weight);line-height:var(--body-md-line-height);padding:calc(var(--spacing-3) + var(--spacing-half) - var(--border-width-default)) var(--spacing-4);border:var(--border-width-default) solid var(--neutral-bg-stroke-default);border-radius:var(--border-radius-1);outline:none;color:var(--neutral-text-primary, #262626);transition:outline-width .2s,border .2s;-webkit-user-modify:read-write;overflow-wrap:break-word;-webkit-line-break:after-white-space}.mrx-formula-editor__box:focus,.mrx-formula-editor__box:active{outline:var(--neutral-bg-island-default) solid var(--border-width-focused)}.mrx-formula-editor__box:hover{border:var(--border-width-default) solid var(--neutral-bg-stroke-hover)}.mrx-formula-editor__box ::ng-deep .tag{display:inline-flex;padding:2px 4px;background-color:#8ad5f4;border-radius:var(--border-radius-1);margin:0 2px;position:relative;z-index:1;cursor:default;-webkit-user-modify:read-only}.mrx-formula-editor__wrapper{position:relative}.mrx-formula-editor__popup{position:absolute;top:52px;width:100%;border:var(--border-width-default) solid var(--neutral-bg-stroke-default);border-radius:var(--border-radius-1);background-color:#fff;max-height:240px;overflow-x:hidden;overflow-y:auto}.mrx-formula-editor__popup--row{min-height:var(--sizing-10);transition:.2s;display:flex;align-items:center;padding:var(--spacing-1) var(--spacing-4);white-space:normal}.mrx-formula-editor__popup--row:hover{cursor:pointer;background-color:var(--Bg2)!important}\n"] }]
157
+ }], ctorParameters: function () { return [{ type: Document, decorators: [{
158
+ type: Inject,
159
+ args: [DOCUMENT]
160
+ }] }, { type: i1.DomSanitizer }]; }, propDecorators: { inputElement: [{
161
+ type: ViewChild,
162
+ args: ['inputElement', { static: true }]
163
+ }] } });
164
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybXVsYS1lZGl0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vZm9ybXVsYS1lZGl0b3IvZm9ybXVsYS1lZGl0b3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vZm9ybXVsYS1lZGl0b3IvZm9ybXVsYS1lZGl0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxVQUFVLEVBQUUsTUFBTSxFQUNQLFNBQVMsR0FDckIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sTUFBTSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7QUFHM0MsTUFBTSxXQUFXLEdBQUcsQ0FBQyxlQUFlLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO0FBWXhILE1BQU0sT0FBTyxzQkFBc0I7SUFjakMsWUFDNEIsUUFBa0IsRUFDcEMsU0FBdUI7UUFETCxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ3BDLGNBQVMsR0FBVCxTQUFTLENBQWM7UUFmMUIsZUFBVSxHQUFHLENBQUMsU0FBUyxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQTtRQUd4QyxVQUFLLEdBQUcsRUFBRSxDQUFBO1FBQ1YsY0FBUyxHQUFHLEtBQUssQ0FBQTtJQWF4QixDQUFDO0lBVE0saUJBQWlCO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FB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LFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFBO1lBQzFELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQTtZQUV0RCxJQUFJLENBQUMsS0FBSyxHQUFHLFNBQVMsR0FBRyxHQUFHLEdBQUcsVUFBVSxDQUFDO1NBQzNDO0lBQ0gsQ0FBQztJQUVELGlCQUFpQixDQUFDLEtBQVk7UUFDNUIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQixDQUFDOzttSEEvSlUsc0JBQXNCLGtCQWV2QixRQUFRO3VHQWZQLHNCQUFzQiw2Q0FOdEIsQ0FBQztZQUNWLE9BQU8sRUFBRSxpQkFBaUI7WUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztZQUNyRCxLQUFLLEVBQUUsSUFBSTtTQUNaLENBQUMsc0pDckJKLGk0RUE0REE7MkZEckNhLHNCQUFzQjtrQkFWbEMsU0FBUzsrQkFDRSxvQkFBb0IsYUFHbkIsQ0FBQzs0QkFDVixPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSx1QkFBdUIsQ0FBQzs0QkFDckQsS0FBSyxFQUFFLElBQUk7eUJBQ1osQ0FBQzswREFpQm9DLFFBQVE7MEJBQTNDLE1BQU07MkJBQUMsUUFBUTt1RUFGeUIsWUFBWTtzQkFBdEQsU0FBUzt1QkFBQyxjQUFjLEVBQUUsRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ29tcG9uZW50LCBFbGVtZW50UmVmLFxuICBmb3J3YXJkUmVmLCBJbmplY3QsXG4gIE9uRGVzdHJveSwgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCBUYWdpZnkgZnJvbSAnQHlhaXJlby90YWdpZnknO1xuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRG9tU2FuaXRpemVyIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5cbmNvbnN0IHdoaXRlbGlzdF8yID0gWydIb21lciBzaW1wc29uJywgJ01hcmdlIHNpbXBzb24nLCAnQmFydCcsICdMaXNhJywgJ01hZ2dpZScsICdNci4gQnVybnMnLCAnTmVkJywgJ01pbGhvdXNlJywgJ01vZSddO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtcngtZm9ybXVsYS1lZGl0b3InLFxuICB0ZW1wbGF0ZVVybDogJy4vZm9ybXVsYS1lZGl0b3IuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9mb3JtdWxhLWVkaXRvci5jb21wb25lbnQubGVzcyddLFxuICBwcm92aWRlcnM6IFt7XG4gICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRm9ybXVsYUVkaXRvckNvbXBvbmVudCksXG4gICAgbXVsdGk6IHRydWVcbiAgfV1cbn0pXG5leHBvcnQgY2xhc3MgRm9ybXVsYUVkaXRvckNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkRlc3Ryb3kge1xuICBwdWJsaWMgX3doaXRlbGlzdCA9IFsnQW5ndWxhcicsICdSZWFjdCcsICdWdWUnXVxuICBwcml2YXRlIF90YWdpZnkhOiBUYWdpZnlcblxuICBwdWJsaWMgdmFsdWUgPSAnJ1xuICBwdWJsaWMgaXNGb2N1c2VkID0gZmFsc2VcbiAgcHVibGljIHNlbGVjdGlvblN0YXJ0OiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gIHB1YmxpYyBzZWxlY3Rpb25FbmQ6IG51bWJlciB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgZ2V0U2FuaXRpemVkVmFsdWUoKSB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWVcbiAgfVxuXG4gIEBWaWV3Q2hpbGQoJ2lucHV0RWxlbWVudCcsIHtzdGF0aWM6IHRydWV9KSBpbnB1dEVsZW1lbnQhOiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuICBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvY3VtZW50OiBEb2N1bWVudCxcbiAgICBwcml2YXRlIHNhbml0aXplcjogRG9tU2FuaXRpemVyXG4gICkge1xuICB9XG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuaW5wdXRFbGVtZW50Py5uYXRpdmVFbGVtZW50KSByZXR1cm5cblxuICAgIHRoaXMuX3RhZ2lmeSA9IG5ldyBUYWdpZnkodGhpcy5pbnB1dEVsZW1lbnQubmF0aXZlRWxlbWVudCwge1xuICAgICAgbW9kZTogJ21peCcsXG4gICAgICBlZGl0VGFnczogZmFsc2UsXG4gICAgICBlbmZvcmNlV2hpdGVsaXN0OiBmYWxzZSxcbiAgICAgIHBhdHRlcm46IC9AfCMvLFxuICAgICAgd2hpdGVsaXN0OiBbJ2ZpcnN0bmFtZScsICdsYXN0bmFtZScsICdlbWFpbCcsICdjb21wYW55J10sXG4gICAgICBjYWxsYmFja3M6IHtcbiAgICAgICAgYWRkOiAoZTogYW55KSA9PiB7XG4gICAgICAgICAgY29uc29sZS5sb2coMSk7XG4gICAgICAgICAgY29uc29sZS5sb2coZSk7XG4gICAgICAgICAgLy9cbiAgICAgICAgICAvLyBsZXQgcmFuZ2VzID0gW107XG4gICAgICAgICAgLy8gbGV0IHNlbCA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKTtcbiAgICAgICAgICAvLyBpZiAoc2VsKSB7XG4gICAgICAgICAgLy8gICBmb3IgKGxldCBpID0gMDsgaSA8IHNlbC5yYW5nZUNvdW50OyBpKyspIHtcbiAgICAgICAgICAvLyAgICAgcmFuZ2VzW2ldID0gc2VsLmdldFJhbmdlQXQoaSk7XG4gICAgICAgICAgLy8gICB9XG4gICAgICAgICAgLy8gfVxuICAgICAgICAgIC8vXG4gICAgICAgICAgLy8gY29uc3QgdGV4dE5vZGUgPSBlLmRldGFpbC50YWcubmV4dFNpYmxpbmdcbiAgICAgICAgICAvLyBlLmRldGFpbC50YWcuaW5zZXJ0QWRqYWNlbnRUZXh0KCdhZnRlcmVuZCcsICdcXHUwMEEwJylcbiAgICAgICAgICAvLyBkb2N1bWVudC5nZXRTZWxlY3Rpb24oKT8uZ2V0UmFuZ2VBdCgwKS5zZXRTdGFydCh0ZXh0Tm9kZSwgMClcbiAgICAgICAgICBjb25zb2xlLmxvZyhlLmRldGFpbC50YWdpZnkudmFsdWUpO1xuICAgICAgICAgIGNvbnNvbGUubG9nKGUuZGV0YWlsLnRhZ2lmeS5nZXRDbGVhblZhbHVlKCkpO1xuICAgICAgICB9LFxuICAgICAgICBjaGFuZ2U6IChlOiBhbnkpID0+IHtcbiAgICAgICAgICBjb25zb2xlLmxvZygyKTtcbiAgICAgICAgICBjb25zb2xlLmxvZyhlKTtcbiAgICAgICAgICAvLyBjb25zdCB0ZXh0Tm9kZSA9IGUuZGV0YWlsLnRhZy5uZXh0U2libGluZ1xuICAgICAgICB9LFxuICAgICAgICAnZHJvcGRvd246c2VsZWN0JzogKGU6IGFueSkgPT4ge1xuICAgICAgICAgIGNvbnNvbGUubG9nKDMpO1xuICAgICAgICAgIGNvbnNvbGUubG9nKGUpO1xuICAgICAgICAgIGUuZGV0YWlsLnRhZ2lmeS5ET00uaW5wdXQuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICB9KVxuXG4gICAgdGhpcy5fdGFnaWZ5Lm9uKCdpbnB1dCcsIChlOiBhbnkpID0+IHtcbiAgICAgIGlmKGUuZGV0YWlsLnRleHRDb250ZW50Lmxlbmd0aCA+IDEgKSB7XG4gICAgICAgIHRoaXMuX3RhZ2lmeS5kcm9wZG93bi5zaG93KGUuZGV0YWlsLnZhbHVlKTtcbiAgICAgIH1cbiAgICB9KVxuXG4gICAgdGhpcy5fdGFnaWZ5Lm9uKCdhZGQnLCAoZTogYW55KSA9PiB7XG4gICAgICBlLmRldGFpbC50YWdpZnkuRE9NLmlucHV0LmZvY3VzKCk7XG4gICAgICBjb25zdCB0ZXh0Tm9kZSA9IGUuZGV0YWlsLnRhZy5uZXh0U2libGluZztcbiAgICAgIGlmIChkb2N1bWVudC5nZXRTZWxlY3Rpb24oKT8uZ2V0UmFuZ2VBdCgwKSkge1xuICAgICAgICBkb2N1bWVudC5nZXRTZWxlY3Rpb24oKT8uZ2V0UmFuZ2VBdCgwKS5zZXRTdGFydCh0ZXh0Tm9kZSwgMSk7XG4gICAgICB9XG4gICAgfSlcblxuICAgIC8vIHRoaXMuX3RhZ2lmeS5vbignZm9jdXMnLCAoZTogYW55KSA9PiB7XG4gICAgLy8gICB0aGlzLl90YWdpZnkuZHJvcGRvd24uc2hvdyhlLmRldGFpbC52YWx1ZSk7XG4gICAgLy8gfSlcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gIH1cblxuICB3cml0ZVZhbHVlKG9iajogYW55KTogdm9pZCB7XG4gIH1cblxuICBvbklucHV0KGV2ZW50OiBFdmVudCkge1xuICAgIGNvbnN0IHRhcmdldDogSFRNTElucHV0RWxlbWVudCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50XG4gICAgY29uc3QgY29udGVudCA9IHRhcmdldC50ZXh0Q29udGVudCB8fCAnJ1xuICAgIGNvbnN0IHZhbHVlQXJyYXkgPSBjb250ZW50LnNwbGl0KC9bICZuYnNwO10rLylcbiAgfVxuXG4gIG9uQmx1cihldmVudDogRm9jdXNFdmVudCkge1xuICAgIGNvbnN0IHRhcmdldDogSFRNTElucHV0RWxlbWVudCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50XG4gICAgY29uc3QgY29udGVudCA9IHRhcmdldC50ZXh0Q29udGVudCB8fCAnJ1xuICAgIGNvbnN0IHZpc2libGVWYWx1ZUFycmF5ID0gY29udGVudC5zcGxpdCgvW1xcc1xcdTAwQTBdKy8pXG4gICAgY29uc3Qgb3JpZ2luYWxWYWx1ZUFycmF5OiBzdHJpbmdbXSA9IFtdXG5cbiAgICB2aXNpYmxlVmFsdWVBcnJheS5mb3JFYWNoKChpdGVtLCBpbmRleCwgYXJyYXkpID0+IHtcbiAgICAgIGlmICh0aGlzLl93aGl0ZWxpc3QuZmluZCh2ID0+IHYgPT09IGl0ZW0pKSB7XG4gICAgICAgIHZpc2libGVWYWx1ZUFycmF5W2luZGV4XSA9IGA8ZGl2IGNsYXNzPVwidGFnXCIgdGl0bGU9XCJFcmljIENhcnRtYW5cIiBjb250ZW50ZWRpdGFibGU9XCJmYWxzZVwiIHRhYmluZGV4PVwiLTFcIj48ZGl2PiR7aXRlbX08L2Rpdj48ZGl2PjwvZGl2PjwvZGl2PiZuYnNwO2BcbiAgICAgICAgb3JpZ2luYWxWYWx1ZUFycmF5LnB1c2goYHske2l0ZW19fWApXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBvcmlnaW5hbFZhbHVlQXJyYXkucHVzaChpdGVtKVxuICAgICAgfVxuICAgIH0pXG5cbiAgICB0aGlzLnRyYW5zZm9ybVZhbHVlKHZpc2libGVWYWx1ZUFycmF5KVxuICAgIHRoaXMudXBkYXRlVmFsdWUob3JpZ2luYWxWYWx1ZUFycmF5KVxuXG4gICAgLy8gdGhpcy5pc0ZvY3VzZWQgPSBmYWxzZVxuXG4gICAgdGhpcy51cGRhdGVTZWxlY3Rpb24oZXZlbnQpXG4gIH1cblxuICB0cmFuc2Zvcm1WYWx1ZShhcnJheTogc3RyaW5nW10pIHtcbiAgICB0aGlzLnZhbHVlID0gYXJyYXkuam9pbignICcpXG4gIH1cblxuICB1cGRhdGVWYWx1ZShhcnJheTogc3RyaW5nW10pIHtcbiAgICBjb25zb2xlLmxvZyhhcnJheS5qb2luKCcgJykpO1xuICB9XG5cbiAgcHVibGljIHVwZGF0ZVNlbGVjdGlvbihldmVudDogYW55KSB7XG4gICAgY29uc3Qgc2VsZWN0aW9ucyA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKVxuICAgIGNvbnNvbGUubG9nKHNlbGVjdGlvbnMpO1xuICAgIGNvbnN0IHN0YXJ0ID0gc2VsZWN0aW9ucz8uYW5jaG9yT2Zmc2V0IHx8IDA7XG4gICAgY29uc3QgZW5kID0gc2VsZWN0aW9ucz8uZm9jdXNPZmZzZXQgfHwgMDtcblxuICAgIGlmIChzdGFydCA+IGVuZCkge1xuICAgICAgdGhpcy5zZWxlY3Rpb25TdGFydCA9IGVuZDtcbiAgICAgIHRoaXMuc2VsZWN0aW9uRW5kID0gc3RhcnQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2VsZWN0aW9uU3RhcnQgPSBzdGFydDtcbiAgICAgIHRoaXMuc2VsZWN0aW9uRW5kID0gZW5kO1xuICAgIH1cbiAgfVxuXG4gIG9uRm9jdXMoZXZlbnQ6IEZvY3VzRXZlbnQpIHtcbiAgICAvLyB0aGlzLnVwZGF0ZVNlbGVjdGlvbihldmVudClcbiAgICB0aGlzLmlzRm9jdXNlZCA9IHRydWVcbiAgfVxuXG4gIGluc2VydFRhZyhyb3c6IHN0cmluZykge1xuICAgIGlmICgodGhpcy5zZWxlY3Rpb25TdGFydCB8fCB0aGlzLnNlbGVjdGlvblN0YXJ0ID09PSAwKSAmJiAodGhpcy5zZWxlY3Rpb25FbmQgfHwgdGhpcy5zZWxlY3Rpb25FbmQgPT09IDApKSB7XG4gICAgICBjb25zdCBmaXJzdFRleHQgPSB0aGlzLnZhbHVlLnNsaWNlKDAsIHRoaXMuc2VsZWN0aW9uU3RhcnQpXG4gICAgICBjb25zdCBzZWNvbmRUZXh0ID0gdGhpcy52YWx1ZS5zbGljZSh0aGlzLnNlbGVjdGlvbkVuZClcblxuICAgICAgdGhpcy52YWx1ZSA9IGZpcnN0VGV4dCArIHJvdyArIHNlY29uZFRleHQ7XG4gICAgfVxuICB9XG5cbiAgb25TZWxlY3Rpb25DaGFuZ2UoZXZlbnQ6IEV2ZW50KSB7XG4gICAgY29uc29sZS5sb2coJ2FzZCcpO1xuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwibXJ4LWZvcm11bGEtZWRpdG9yXCJcbj5cbiAgPGRpdiBjbGFzcz1cIm1yeC1mb3JtdWxhLWVkaXRvcl9fd3JhcHBlclwiPlxuICAgIDxkaXZcbiAgICAgIFtpbm5lckhUTUxdPVwidmFsdWUgfCBzYWZlXCJcbiAgICAgIGNsYXNzPVwibXJ4LWZvcm11bGEtZWRpdG9yX19ib3hcIlxuICAgICAgY29udGVudGVkaXRhYmxlPVwidHJ1ZVwiXG4gICAgICB0YWJpbmRleD1cIjBcIiBkYXRhLXBsYWNlaG9sZGVyPVwiJlplcm9XaWR0aFNwYWNlO1wiIGFyaWEtcGxhY2Vob2xkZXI9XCJcIiByb2xlPVwidGV4dGJveFwiIGF1dG9jYXBpdGFsaXplPVwiZmFsc2VcIlxuICAgICAgYXV0b2NvcnJlY3Q9XCJvZmZcIiBzcGVsbGNoZWNrPVwiZmFsc2VcIiBhcmlhLWF1dG9jb21wbGV0ZT1cImJvdGhcIiBhcmlhLW11bHRpbGluZT1cInRydWVcIlxuICAgICAgKGlucHV0KT1cIm9uSW5wdXQoJGV2ZW50KVwiXG4gICAgICAoYmx1cik9XCJvbkJsdXIoJGV2ZW50KVwiXG4gICAgICAoZm9jdXMpPVwib25Gb2N1cygkZXZlbnQpXCJcbiAgICAgIChzZWxlY3Rpb25jaGFuZ2UpPVwib25TZWxlY3Rpb25DaGFuZ2UoJGV2ZW50KVwiXG4gICAgPjwvZGl2PlxuICAgIDwhLS0gICAgPHRleHRhcmVhICNpbnB1dEVsZW1lbnQgbmFtZT0nbWl4JyBjb250ZW50ZWRpdGFibGU9XCJmYWxzZVwiPmFzZFtbe1widmFsdWVcIjpcImZpcnN0bmFtZVwifV1dICBbW3tcInZhbHVlXCI6XCJlbWFpbFwifV1dIGFzZGFzZGFzZCBhc2RbW3tcInZhbHVlXCI6XCJjb21wYW55XCJ9XV08L3RleHRhcmVhPi0tPlxuICAgIDwhLS0gICAgPGlucHV0LS0+XG4gICAgPCEtLSAgICAgIGF1dG9jb21wbGV0ZT1cIm5vcGVcIi0tPlxuICAgIDwhLS0gICAgICAjaW5wdXRFbGVtZW50LS0+XG4gICAgPCEtLSAgICAgIFt0eXBlXT1cIid0ZXh0J1wiLS0+XG4gICAgPCEtLSAgICAgIFtpZF09XCJ1dWlkXCItLT5cbiAgICA8IS0tICAgICAgW25nTW9kZWxdPVwidmFsdWVcIi0tPlxuICAgIDwhLS0gICAgICBbdGl0bGVdPVwicGxhY2Vob2xkZXIgfHwgJydcIi0tPlxuICAgIDwhLS0gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIi0tPlxuICAgIDwhLS0gICAgICBbcmVhZE9ubHldPVwicmVhZG9ubHlcIi0tPlxuICAgIDwhLS0gICAgICBbcGxhY2Vob2xkZXJdPVwiIWRpc2FibGVkICYmIHBsYWNlaG9sZGVyID8gcGxhY2Vob2xkZXIgOiAnJ1wiLS0+XG4gICAgPCEtLSAgICAgIFttYXNrXT1cIm1hc2tcIi0tPlxuICAgIDwhLS0gICAgICBbcHJlZml4XT1cIm1hc2tQcmVmaXhcIi0tPlxuICAgIDwhLS0gICAgICBbc2hvd01hc2tUeXBlZF09XCJzaG93TWFza1R5cGVkXCItLT5cbiAgICA8IS0tICAgICAgW2Ryb3BTcGVjaWFsQ2hhcmFjdGVyc109XCJtYXNrRHJvcFNwZWNpYWxDaGFyYWN0ZXJzXCItLT5cbiAgICA8IS0tICAgICAgW21pbmxlbmd0aF09XCJtaW5sZW5ndGggPiAwICYmIHJlc3RyaWN0SW5wdXQgPyBtaW5sZW5ndGggOiBudWxsXCItLT5cbiAgICA8IS0tICAgICAgW21heGxlbmd0aF09XCJtYXhsZW5ndGggPiAwICYmIHJlc3RyaWN0SW5wdXQgPyBtYXhsZW5ndGggOiBudWxsXCItLT5cbiAgICA8IS0tICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidXBkYXRlVmFsdWUoJGV2ZW50KVwiLS0+XG4gICAgPCEtLSAgICAgIChibHVyKT1cIm9uQmx1cigkZXZlbnQpXCItLT5cbiAgICA8IS0tICAgIC8+LS0+XG5cbiAgICA8IS0tICAgIDxtcngtY2hhcnMtbGVmdC0tPlxuICAgIDwhLS0gICAgICAqbmdJZj1cIiFkaXNhYmxlZCAmJiBtYXhsZW5ndGhcIi0tPlxuICAgIDwhLS0gICAgICBbdmFsdWVdPVwidmFsdWVcIi0tPlxuICAgIDwhLS0gICAgICBbbWF4bGVuZ3RoXT1cIm1heGxlbmd0aFwiLS0+XG4gICAgPCEtLSAgICA+PC9tcngtY2hhcnMtbGVmdD4tLT5cblxuICAgIDxkaXYgY2xhc3M9XCJtcngtZm9ybXVsYS1lZGl0b3JfX3BvcHVwXCIgKm5nSWY9XCJpc0ZvY3VzZWRcIj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJtcngtZm9ybXVsYS1lZGl0b3JfX3BvcHVwLS1yb3dcIlxuICAgICAgICAqbmdGb3I9XCJsZXQgcm93IG9mIF93aGl0ZWxpc3RcIlxuICAgICAgICAoY2xpY2spPVwiaW5zZXJ0VGFnKHJvdylcIlxuICAgICAgPlxuICAgICAgICB7eyByb3cgfX1cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8IS0tICA8bXJ4LWVycm9yLW1lc3NhZ2UtLT5cbiAgPCEtLSAgICAqbmdJZj1cImdldEludmFsaWQgJiYgZ2V0SW52YWxpZE1lc3NhZ2VcIi0tPlxuICA8IS0tICAgIFtpbnZhbGlkTWVzc2FnZV09XCJnZXRJbnZhbGlkTWVzc2FnZVwiLS0+XG4gIDwhLS0gID48L21yeC1lcnJvci1tZXNzYWdlPi0tPlxuXG4gIDwhLS0gIDxtcngtc2F2ZS1zdGF0ZSBbaWRdPVwidXVpZFwiIFtmaWVsZHNdPVwiZmllbGRzXCI+PC9tcngtc2F2ZS1zdGF0ZT4tLT5cbjwvZGl2PlxuIl19
@@ -0,0 +1,50 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { FormulaEditorComponent } from './formula-editor.component';
4
+ import { CharsLeftModule } from '../../chars-left/chars-left.module';
5
+ import { ErrorMessageModule } from '../../error-message/error-message.module';
6
+ import { FormsModule } from '@angular/forms';
7
+ import { NgxMaskModule } from 'ngx-mask';
8
+ import { SaveStateModule } from '../../save-state/save-state.module';
9
+ import { SafeModule } from '../../../pipes/safe/safe.module';
10
+ import * as i0 from "@angular/core";
11
+ export class FormulaEditorModule {
12
+ }
13
+ FormulaEditorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FormulaEditorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14
+ FormulaEditorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FormulaEditorModule, declarations: [FormulaEditorComponent], imports: [CommonModule,
15
+ CharsLeftModule,
16
+ ErrorMessageModule,
17
+ FormsModule,
18
+ NgxMaskModule,
19
+ SaveStateModule,
20
+ SafeModule], exports: [FormulaEditorComponent] });
21
+ FormulaEditorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FormulaEditorModule, imports: [[
22
+ CommonModule,
23
+ CharsLeftModule,
24
+ ErrorMessageModule,
25
+ FormsModule,
26
+ NgxMaskModule,
27
+ SaveStateModule,
28
+ SafeModule
29
+ ]] });
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: FormulaEditorModule, decorators: [{
31
+ type: NgModule,
32
+ args: [{
33
+ declarations: [
34
+ FormulaEditorComponent
35
+ ],
36
+ imports: [
37
+ CommonModule,
38
+ CharsLeftModule,
39
+ ErrorMessageModule,
40
+ FormsModule,
41
+ NgxMaskModule,
42
+ SaveStateModule,
43
+ SafeModule
44
+ ],
45
+ exports: [
46
+ FormulaEditorComponent
47
+ ]
48
+ }]
49
+ }] });
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybXVsYS1lZGl0b3IubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0vZm9ybXVsYS1lZGl0b3IvZm9ybXVsYS1lZGl0b3IubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDckUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOztBQXFCN0QsTUFBTSxPQUFPLG1CQUFtQjs7Z0hBQW5CLG1CQUFtQjtpSEFBbkIsbUJBQW1CLGlCQWY1QixzQkFBc0IsYUFHdEIsWUFBWTtRQUNaLGVBQWU7UUFDZixrQkFBa0I7UUFDbEIsV0FBVztRQUNYLGFBQWE7UUFDYixlQUFlO1FBQ2YsVUFBVSxhQUdWLHNCQUFzQjtpSEFHYixtQkFBbUIsWUFickI7WUFDUCxZQUFZO1lBQ1osZUFBZTtZQUNmLGtCQUFrQjtZQUNsQixXQUFXO1lBQ1gsYUFBYTtZQUNiLGVBQWU7WUFDZixVQUFVO1NBQ1g7MkZBS1UsbUJBQW1CO2tCQWpCL0IsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osc0JBQXNCO3FCQUN2QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixlQUFlO3dCQUNmLGtCQUFrQjt3QkFDbEIsV0FBVzt3QkFDWCxhQUFhO3dCQUNiLGVBQWU7d0JBQ2YsVUFBVTtxQkFDWDtvQkFDRCxPQUFPLEVBQUU7d0JBQ1Asc0JBQXNCO3FCQUN2QjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRm9ybXVsYUVkaXRvckNvbXBvbmVudCB9IGZyb20gJy4vZm9ybXVsYS1lZGl0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IENoYXJzTGVmdE1vZHVsZSB9IGZyb20gJy4uLy4uL2NoYXJzLWxlZnQvY2hhcnMtbGVmdC5tb2R1bGUnO1xuaW1wb3J0IHsgRXJyb3JNZXNzYWdlTW9kdWxlIH0gZnJvbSAnLi4vLi4vZXJyb3ItbWVzc2FnZS9lcnJvci1tZXNzYWdlLm1vZHVsZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE5neE1hc2tNb2R1bGUgfSBmcm9tICduZ3gtbWFzayc7XG5pbXBvcnQgeyBTYXZlU3RhdGVNb2R1bGUgfSBmcm9tICcuLi8uLi9zYXZlLXN0YXRlL3NhdmUtc3RhdGUubW9kdWxlJztcbmltcG9ydCB7IFNhZmVNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi9waXBlcy9zYWZlL3NhZmUubW9kdWxlJztcblxuXG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEZvcm11bGFFZGl0b3JDb21wb25lbnRcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBDaGFyc0xlZnRNb2R1bGUsXG4gICAgRXJyb3JNZXNzYWdlTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIE5neE1hc2tNb2R1bGUsXG4gICAgU2F2ZVN0YXRlTW9kdWxlLFxuICAgIFNhZmVNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEZvcm11bGFFZGl0b3JDb21wb25lbnRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBGb3JtdWxhRWRpdG9yTW9kdWxlIHsgfVxuIl19
@@ -55,6 +55,9 @@ export class MrxFormValidator {
55
55
  if (!validateEmptyValue && (value.length === 0)) {
56
56
  return;
57
57
  }
58
+ if (!this._isValid) {
59
+ return;
60
+ }
58
61
  for (let key in validations) {
59
62
  switch (key) {
60
63
  case ValidationTypesEnum.Required:
@@ -175,10 +178,12 @@ export class MrxFormValidator {
175
178
  }
176
179
  isValid() {
177
180
  for (let key in this._validations) {
181
+ if (!this._isValid) {
182
+ return this._isValid;
183
+ }
178
184
  this.errors[key] = null;
179
185
  this.validateField(this._fields[key], key, this._validations[key], true);
180
186
  }
181
- console.log(1, this._isValid);
182
187
  return this._isValid;
183
188
  }
184
189
  // TODO Вырезать в будущем
@@ -204,4 +209,4 @@ export class MrxFormValidator {
204
209
  return this._isValid;
205
210
  }
206
211
  }
207
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXJ4LWZvcm0tdmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9zZXJ2aWNlcy9tcngtZm9ybS12YWxpZGF0b3IvbXJ4LWZvcm0tdmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFHdEMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDOUYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDdkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRXZGLE1BQU0sT0FBTyxnQkFBZ0I7SUFXM0IsWUFBWSxPQUE4QjtRQVZsQyxZQUFPLEdBQVEsRUFBRSxDQUFBO1FBQ2pCLGlCQUFZLEdBQWlCLEVBQUUsQ0FBQTtRQUMvQixZQUFPLEdBQVEsRUFBRSxDQUFBO1FBQ2pCLGFBQVEsR0FBRyxJQUFJLENBQUE7UUFDZixZQUFPLEdBQUcsS0FB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Q0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUE7aUJBQ2hGO1lBQ0gsQ0FBQyxDQUFDLENBQUE7U0FDSDtRQUVELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQTtJQUNoQyxDQUFDO0lBRUQsMEJBQTBCO0lBQ25CLGFBQWE7UUFDbEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUE7UUFFcEIsS0FBSyxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ2pDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUE7U0FDL0U7UUFFRCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUE7SUFDdEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY2xvbmVEZWVwIH0gZnJvbSAnbG9kYXNoLWVzJztcclxuaW1wb3J0IHsgSUZpZWxkcywgSU1lc3NhZ2VzLCBJVmFsaWRhdGlvbnMsIFZhbGlkYXRpb25zVHlwZSB9IGZyb20gJy4vbW9kZWxzL3ZhbGlkYXRpb25zLW9wdGlvbnMubW9kZWwnO1xyXG5pbXBvcnQgeyBGb3JtVmFsaWRhdG9yT3B0aW9ucyB9IGZyb20gJy4vbW9kZWxzL3ZhbGlkYXRpb25zLXNldHRpbmdzLm1vZGVsJztcclxuaW1wb3J0IHsgVmFsaWRhdGlvbk1ldGhvZHNFbnVtLCBWYWxpZGF0aW9uVHlwZXNFbnVtIH0gZnJvbSAnLi9tb2RlbHMvdmFsaWRhdGlvbnMtdHlwZXMubW9kZWwnO1xyXG5pbXBvcnQgeyByZXF1aXJlZFZhbGlkYXRpb24gfSBmcm9tICcuL3ZhbGlkYXRpb25zL3JlcXVpcmVkLnZhbGlkYXRpb24nO1xyXG5pbXBvcnQgeyBlbWFpbFZhbGlkYXRpb24gfSBmcm9tICcuL3ZhbGlkYXRpb25zL2VtYWlsLnZhbGlkYXRpb24nO1xyXG5pbXBvcnQgeyBwYXR0ZXJuVmFsaWRhdGlvbiB9IGZyb20gJy4vdmFsaWRhdGlvbnMvcGF0dGVybi52YWxpZGF0aW9uJztcclxuaW1wb3J0IHsgbWF4TGVuZ3RoVmFsaWRhdGlvbiB9IGZyb20gJy4vdmFsaWRhdGlvbnMvbWF4LWxlbmd0aC52YWxpZGF0aW9uJztcclxuaW1wb3J0IHsgbWluTGVuZ3RoVmFsaWRhdGlvbiB9IGZyb20gJy4vdmFsaWRhdGlvbnMvbWluLWxlbmd0aC52YWxpZGF0aW9uJztcclxuaW1wb3J0IHsgbWluVmFsdWVWYWxpZGF0aW9uIH0gZnJvbSAnLi92YWxpZGF0aW9ucy9taW4tdmFsdWUudmFsaWRhdGlvbic7XHJcbmltcG9ydCB7IG1heFZhbHVlVmFsaWRhdGlvbiB9IGZyb20gJy4vdmFsaWRhdGlvbnMvbWF4LXZhbHVlLnZhbGlkYXRpb24nO1xyXG5pbXBvcnQgeyBjYWxsYmFja1ZhbGlkYXRpb24gfSBmcm9tICcuL3ZhbGlkYXRpb25zL2NhbGxiYWNrLnZhbGlkYXRpb24nO1xyXG5pbXBvcnQgeyBJTlZBTElEX01FU1NBR0VTIH0gZnJvbSAnLi9jb25zdGFudHMvaW52YWxpZC1tZXNzYWdlcyc7XHJcbmltcG9ydCB7IGdldFNvcnRpbmdWYWxpZGF0aW9uc0hlbHBlciB9IGZyb20gJy4vaGVscGVycy9nZXQtc29ydGluZy12YWxpZGF0aW9ucy5oZWxwZXInO1xyXG5cclxuZXhwb3J0IGNsYXNzIE1yeEZvcm1WYWxpZGF0b3Ige1xyXG4gIHByaXZhdGUgX2ZpZWxkczogYW55ID0gW11cclxuICBwcml2YXRlIF92YWxpZGF0aW9uczogSVZhbGlkYXRpb25zID0ge31cclxuICBwcml2YXRlIF9lcnJvcnM6IGFueSA9IHt9XHJcbiAgcHJpdmF0ZSBfaXNWYWxpZCA9IHRydWVcclxuICBwcml2YXRlIF9pc0luaXQgPSBmYWxzZVxyXG4gIHByaXZhdGUgX21vZGVsQ2xvbmU6IElGaWVsZHMgPSB7fVxyXG5cclxuICBwcml2YXRlIF9tZXRob2QgPSAnc3VibWl0J1xyXG4gIHByaXZhdGUgX2ludmFsaWRNZXNzYWdlczogSU1lc3NhZ2VzID0gSU5WQUxJRF9NRVNTQUdFU1xyXG5cclxuICBjb25zdHJ1Y3RvcihvcHRpb25zPzogRm9ybVZhbGlkYXRvck9wdGlvbnMpIHtcclxuICAgIGlmIChvcHRpb25zPy5tZXRob2QpIHtcclxuICAgICAgdGhpcy5fbWV0aG9kID0gb3B0aW9ucy5tZXRob2RcclxuICAgIH1cclxuXHJcbiAgICBpZiAob3B0aW9ucz8ubWVzc2FnZXMpIHtcclxuICAgICAgdGhpcy5faW52YWxpZE1lc3NhZ2VzID0gey4uLnRoaXMuX2ludmFsaWRNZXNzYWdlcywgLi4ub3B0aW9ucy5tZXNzYWdlc31cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZXJyb3JzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2Vycm9yc1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXQgZmllbGRzKGZpZWxkczogYW55KSB7XHJcbiAgICB0aGlzLl9maWVsZHMgPSBPYmplY3QuYXNzaWduKHt9LCBmaWVsZHMpXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldE5hbWVzVXBkYXRlZFByb3BlcnRpZXMob2xkTW9kZWw6IGFueSwgbmV3TW9kZWw6IGFueSk6IHN0cmluZ1tdIHtcclxuICAgIGNvbnN0IG5hbWVzVXBkYXRlZFByb3BlcnRpZXMgPSBbXVxyXG5cclxuICAgIGZvciAobGV0IGtleSBpbiBuZXdNb2RlbCkge1xyXG4gICAgICBzd2l0Y2ggKHRydWUpIHtcclxuICAgICAgICBjYXNlIEFycmF5LmlzQXJyYXkobmV3TW9kZWxba2V5XSk6XHJcbiAgICAgICAgICBpZiAoSlNPTi5zdHJpbmdpZnkobmV3TW9kZWxba2V5XSkgIT09IEpTT04uc3RyaW5naWZ5KG9sZE1vZGVsW2tleV0pKSB7XHJcbiAgICAgICAgICAgIG5hbWVzVXBkYXRlZFByb3BlcnRpZXMucHVzaChrZXkpXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBicmVha1xyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICBpZiAobmV3TW9kZWxba2V5XSAhPT0gb2xkTW9kZWxba2V5XSkge1xyXG4gICAgICAgICAgICBuYW1lc1VwZGF0ZWRQcm9wZXJ0aWVzLnB1c2goa2V5KVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgYnJlYWtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBuYW1lc1VwZGF0ZWRQcm9wZXJ0aWVzXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHZhbGlkYXRlRmllbGQoXHJcbiAgICB2YWx1ZTogc3RyaW5nLFxyXG4gICAgbmFtZTogc3RyaW5nLFxyXG4gICAgdmFsaWRhdGlvbnM6IFZhbGlkYXRpb25zVHlwZSxcclxuICAgIHZhbGlkYXRlRW1wdHlWYWx1ZTogYm9vbGVhbiA9IGZhbHNlLFxyXG4gICAgc2lsZW50OiBib29sZWFuID0gZmFsc2VcclxuICApOiB2b2lkIHtcclxuICAgIGlmICghdmFsaWRhdGVFbXB0eVZhbHVlICYmICh2YWx1ZS5sZW5ndGggPT09IDApKSB7XHJcbiAgICAgIHJldHVyblxyXG4gICAgfVxyXG5cclxuICAgIGZvciAobGV0IGtleSBpbiB2YWxpZGF0aW9ucykge1xyXG4gICAgICBzd2l0Y2ggKGtleSkge1xyXG4gICAgICAgIGNhc2UgVmFsaWRhdGlvblR5cGVzRW51bS5SZXF1aXJlZDpcclxuICAgICAgICAgIGNvbnN0IHJlcXVpcmVkUmVzID0gcmVxdWlyZWRWYWxpZGF0aW9uKFxyXG4gICAgICAgICAgICB2YWx1ZSwgdmFsaWRhdGlvbnMsIGtleSwgdGhpcy5faW52YWxpZE1lc3NhZ2VzXHJcbiAgICAgICAgICApXHJcblxyXG4gICAgICAgICAgdGhpcy5faXNWYWxpZCA9IHJlcXVpcmVkUmVzLmlzVmFsaWRcclxuXHJcbiAgICAgICAgICBpZiAoIXNpbGVudCAmJiAhdGhpcy5fZXJyb3JzW25hbWVdKSB7XHJcbiAgICAgICAgICAgICB0aGlzLl9lcnJvcnNbbmFtZV0gPSByZXF1aXJlZFJlcy5tZXNzYWdlXHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgaWYgKCF0aGlzLl9pc1ZhbGlkKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBicmVha1xyXG4gICAgICAgIGNhc2UgVmFsaWRhdGlvblR5cGVzRW51bS5FbWFpbDpcclxuICAgICAgICAgIGNvbnN0IGVtYWlsUmVzID0gZW1haWxWYWxpZGF0aW9uKFxyXG4gICAgICAgICAgICB2YWx1ZSwgdmFsaWRhdGlvbnMsIGtleSwgdGhpcy5faW52YWxpZE1lc3NhZ2VzXHJcbiAgICAgICAgICApXHJcblxyXG4gICAgICAgICAgdGhpcy5faXNWYWxpZCA9IGVtYWlsUmVzLmlzVmFsaWRcclxuXHJcbiAgICAgICAgICBpZiAoIXNpbGVudCAmJiAhdGhpcy5fZXJyb3JzW25hbWVdKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2Vycm9yc1tuYW1lXSA9IGVtYWlsUmVzLm1lc3NhZ2VcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBpZiAoIXRoaXMuX2lzVmFsaWQpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGJyZWFrXHJcbiAgICAgICAgY2FzZSBWYWxpZGF0aW9uVHlwZXNFbnVtLlBhdHRlcm46XHJcbiAgICAgICAgICBjb25zdCBwYXR0ZXJuUmVzID0gcGF0dGVyblZhbGlkYXRpb24oXHJcbiAgICAgICAgICAgIHZhbHVlLCB2YWxpZGF0aW9ucywga2V5LCB0aGlzLl9pbnZhbGlkTWVzc2FnZXNcclxuICAgICAgICAgIClcclxuXHJcbiAgICAgICAgICB0aGlzLl9pc1ZhbGlkID0gcGF0dGVyblJlcy5pc1ZhbGlkXHJcblxyXG4gICAgICAgICAgaWYgKCFzaWxlbnQgJiYgIXRoaXMuX2Vycm9yc1tuYW1lXSkge1xyXG4gICAgICAgICAgICB0aGlzLl9lcnJvcnNbbmFtZV0gPSBwYXR0ZXJuUmVzLm1lc3NhZ2VcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBpZiAoIXRoaXMuX2lzVmFsaWQpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGJyZWFrXHJcbiAgICAgICAgY2FzZSBWYWxpZGF0aW9uVHlwZXNFbnVtLk1pbkxlbmd0aDpcclxuICAgICAgICAgIGNvbnN0IG1pbkxlbmd0aFJlcyA9IG1pbkxlbmd0aFZhbGlkYXRpb24oXHJcbiAgICAgICAgICAgIHZhbHVlLCB2YWxpZGF0aW9ucywga2V5LCB0aGlzLl9pbnZhbGlkTWVzc2FnZXNcclxuICAgICAgICAgIClcclxuXHJcbiAgICAgICAgICB0aGlzLl9pc1ZhbGlkID0gbWluTGVuZ3RoUmVzLmlzVmFsaWRcclxuXHJcbiAgICAgICAgICBpZiAoIXNpbGVudCAmJiAhdGhpcy5fZXJyb3JzW25hbWVdKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2Vycm9yc1tuYW1lXSA9IG1pbkxlbmd0aFJlcy5tZXNzYWdlXHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgaWYgKCF0aGlzLl9pc1ZhbGlkKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBicmVha1xyXG4gICAgICAgIGNhc2UgVmFsaWRhdGlvblR5cGVzRW51bS5NYXhMZW5ndGg6XHJcbiAgICAgICAgICBjb25zdCBtYXhMZW5ndGhSZXMgPSBtYXhMZW5ndGhWYWxpZGF0aW9uKFxyXG4gICAgICAgICAgICB2YWx1ZSwgdmFsaWRhdGlvbnMsIGtleSwgdGhpcy5faW52YWxpZE1lc3NhZ2VzXHJcbiAgICAgICAgICApXHJcblxyXG4gICAgICAgICAgdGhpcy5faXNWYWxpZCA9IG1heExlbmd0aFJlcy5pc1ZhbGlkXHJcblxyXG4gICAgICAgICAgaWYgKCFzaWxlbnQgJiYgIXRoaXMuX2Vycm9yc1tuYW1lXSkge1xyXG4gICAgICAgICAgICB0aGlzLl9lcnJvcnNbbmFtZV0gPSBtYXhMZW5ndGhSZXMubWVzc2FnZVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGlmICghdGhpcy5faXNWYWxpZCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgYnJlYWtcclxuICAgICAgICBjYXNlIFZhbGlkYXRpb25UeXBlc0VudW0uTWluVmFsdWU6XHJcbiAgICAgICAgICBjb25zdCBtaW5WYWx1ZVJlcyA9IG1pblZhbHVlVmFsaWRhdGlvbihcclxuICAgICAgICAgICAgdmFsdWUsIHZhbGlkYXRpb25zLCBrZXksIHRoaXMuX2ludmFsaWRNZXNzYWdlc1xyXG4gICAgICAgICAgKVxyXG5cclxuICAgICAgICAgIHRoaXMuX2lzVmFsaWQgPSBtaW5WYWx1ZVJlcy5pc1ZhbGlkXHJcblxyXG4gICAgICAgICAgaWYgKCFzaWxlbnQgJiYgIXRoaXMuX2Vycm9yc1tuYW1lXSkge1xyXG4gICAgICAgICAgICB0aGlzLl9lcnJvcnNbbmFtZV0gPSBtaW5WYWx1ZVJlcy5tZXNzYWdlXHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgaWYgKCF0aGlzLl9pc1ZhbGlkKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBicmVha1xyXG4gICAgICAgIGNhc2UgVmFsaWRhdGlvblR5cGVzRW51bS5NYXhWYWx1ZTpcclxuICAgICAgICAgIGNvbnN0IG1heFZhbHVlUmVzID0gbWF4VmFsdWVWYWxpZGF0aW9uKFxyXG4gICAgICAgICAgICB2YWx1ZSwgdmFsaWRhdGlvbnMsIGtleSwgdGhpcy5faW52YWxpZE1lc3NhZ2VzXHJcbiAgICAgICAgICApXHJcblxyXG4gICAgICAgICAgdGhpcy5faXNWYWxpZCA9IG1heFZhbHVlUmVzLmlzVmFsaWRcclxuXHJcbiAgICAgICAgICBpZiAoIXNpbGVudCAmJiAhdGhpcy5fZXJyb3JzW25hbWVdKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2Vycm9yc1tuYW1lXSA9IG1heFZhbHVlUmVzLm1lc3NhZ2VcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBpZiAoIXRoaXMuX2lzVmFsaWQpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGJyZWFrXHJcbiAgICAgICAgY2FzZSBWYWxpZGF0aW9uVHlwZXNFbnVtLkNhbGxiYWNrOlxyXG4gICAgICAgICAgY29uc3QgY2FsbGJhY2tSZXMgPSBjYWxsYmFja1ZhbGlkYXRpb24oXHJcbiAgICAgICAgICAgIHZhbHVlLCB2YWxpZGF0aW9ucywga2V5LCB0aGlzLl9pbnZhbGlkTWVzc2FnZXNcclxuICAgICAgICAgIClcclxuXHJcbiAgICAgICAgICB0aGlzLl9pc1ZhbGlkID0gY2FsbGJhY2tSZXMuaXNWYWxpZFxyXG5cclxuICAgICAgICAgIGlmICghc2lsZW50ICYmICF0aGlzLl9lcnJvcnNbbmFtZV0pIHtcclxuICAgICAgICAgICAgdGhpcy5fZXJyb3JzW25hbWVdID0gY2FsbGJhY2tSZXMubWVzc2FnZVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGlmICghdGhpcy5faXNWYWxpZCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgYnJlYWtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGluaXRGaWVsZHMoZmllbGRzOiBJRmllbGRzLCB2YWxpZGF0aW9uczogSVZhbGlkYXRpb25zKTogdm9pZCB7XHJcbiAgICB0aGlzLmZpZWxkcyA9IGNsb25lRGVlcChmaWVsZHMpXHJcbiAgICB0aGlzLl92YWxpZGF0aW9ucyA9IHZhbGlkYXRpb25zXHJcbiAgICB0aGlzLl9tb2RlbENsb25lID0gY2xvbmVEZWVwKGZpZWxkcylcclxuXHJcbiAgICBmb3IgKGxldCBrZXkgaW4gdmFsaWRhdGlvbnMpIHtcclxuICAgICAgdGhpcy5fdmFsaWRhdGlvbnNba2V5XSA9IGdldFNvcnRpbmdWYWxpZGF0aW9uc0hlbHBlcih2YWxpZGF0aW9uc1trZXldKVxyXG4gICAgICB0aGlzLmVycm9yc1trZXldID0gbnVsbFxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuX2lzSW5pdCA9IHRydWVcclxuICB9XHJcblxyXG4gIHB1YmxpYyBpbml0TW9kZWxDaGFuZ2VkKGZpZWxkczogSUZpZWxkcyk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuX2lzSW5pdCkge1xyXG4gICAgICB0aGlzLl9pc1ZhbGlkID0gdHJ1ZVxyXG4gICAgICB0aGlzLl9tb2RlbENsb25lID0gY2xvbmVEZWVwKGZpZWxkcylcclxuXHJcbiAgICAgIHRoaXMuZ2V0TmFtZXNVcGRhdGVkUHJvcGVydGllcyh0aGlzLl9maWVsZHMsIGZpZWxkcykuZm9yRWFjaCgobmFtZTogc3RyaW5nKSA9PiB7XHJcbiAgICAgICAgdGhpcy5fZXJyb3JzW25hbWVdID0gbnVsbFxyXG5cclxuICAgICAgICBpZiAodGhpcy5fbWV0aG9kID09PSBWYWxpZGF0aW9uTWV0aG9kc0VudW0uSW5wdXQpIHtcclxuICAgICAgICAgIHRoaXMudmFsaWRhdGVGaWVsZChmaWVsZHNbbmFtZV0sIG5hbWUsIHRoaXMuX3ZhbGlkYXRpb25zW25hbWVdLCB0cnVlKVxyXG4gICAgICAgIH1cclxuICAgICAgfSlcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmZpZWxkcyA9IGNsb25lRGVlcChmaWVsZHMpXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaW5pdEZpZWxkQ2hhbmdlZChmaWVsZHM6IElGaWVsZHMsIGZpZWxkTmFtZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5faXNJbml0KSB7XHJcbiAgICAgIHRoaXMuX2lzVmFsaWQgPSB0cnVlXHJcblxyXG4gICAgICBpZiAoZmllbGRzLmhhc093blByb3BlcnR5KGZpZWxkTmFtZSkpIHtcclxuICAgICAgICB0aGlzLl9tb2RlbENsb25lW2ZpZWxkTmFtZV0gPSBmaWVsZHNbZmllbGROYW1lXVxyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLl9lcnJvcnNbZmllbGROYW1lXSA9IG51bGxcclxuICAgICAgdGhpcy52YWxpZGF0ZUZpZWxkKHRoaXMuX21vZGVsQ2xvbmVbZmllbGROYW1lXSwgZmllbGROYW1lLCB0aGlzLl92YWxpZGF0aW9uc1tmaWVsZE5hbWVdLCBmYWxzZSlcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBpc1ZhbGlkKCk6IGJvb2xlYW4ge1xyXG4gICAgZm9yIChsZXQga2V5IGluIHRoaXMuX3ZhbGlkYXRpb25zKSB7XHJcbiAgICAgIHRoaXMuZXJyb3JzW2tleV0gPSBudWxsXHJcbiAgICAgIHRoaXMudmFsaWRhdGVGaWVsZCh0aGlzLl9maWVsZHNba2V5XSwga2V5LCB0aGlzLl92YWxpZGF0aW9uc1trZXldLCB0cnVlKVxyXG4gICAgfVxyXG4gICAgY29uc29sZS5sb2coMSwgdGhpcy5faXNWYWxpZCk7XHJcbiAgICByZXR1cm4gdGhpcy5faXNWYWxpZFxyXG4gIH1cclxuXHJcbiAgLy8gVE9ETyDQktGL0YDQtdC30LDRgtGMINCyINCx0YPQtNGD0YnQtdC8XHJcbiAgcHVibGljIGluaXRNb2RlbENoYW5nZWRGcm9tRmllbGQoZmllbGQ6IGFueSwgZmllbGROYW1lOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLl9pc0luaXQpIHtcclxuICAgICAgdGhpcy5faXNWYWxpZCA9IHRydWVcclxuICAgICAgdGhpcy5fbW9kZWxDbG9uZVtmaWVsZE5hbWVdID0gZmllbGRcclxuXHJcbiAgICAgIHRoaXMuZ2V0TmFtZXNVcGRhdGVkUHJvcGVydGllcyh0aGlzLl9maWVsZHMsIHRoaXMuX21vZGVsQ2xvbmUpLmZvckVhY2goKG5hbWU6IHN0cmluZykgPT4ge1xyXG4gICAgICAgIHRoaXMuX2Vycm9yc1tuYW1lXSA9IG51bGxcclxuXHJcbiAgICAgICAgaWYgKHRoaXMuX21ldGhvZCA9PT0gVmFsaWRhdGlvbk1ldGhvZHNFbnVtLklucHV0KSB7XHJcbiAgICAgICAgICB0aGlzLnZhbGlkYXRlRmllbGQodGhpcy5fbW9kZWxDbG9uZVtuYW1lXSwgbmFtZSwgdGhpcy5fdmFsaWRhdGlvbnNbbmFtZV0sIHRydWUpXHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuZmllbGRzID0gdGhpcy5fbW9kZWxDbG9uZVxyXG4gIH1cclxuXHJcbiAgLy8gVE9ETyDQktGL0YDQtdC30LDRgtGMINCyINCx0YPQtNGD0YnQtdC8XHJcbiAgcHVibGljIGlzSGlkZGVuVmFsaWQoKTogYm9vbGVhbiB7XHJcbiAgICB0aGlzLl9pc1ZhbGlkID0gdHJ1ZVxyXG5cclxuICAgIGZvciAobGV0IGtleSBpbiB0aGlzLl92YWxpZGF0aW9ucykge1xyXG4gICAgICB0aGlzLnZhbGlkYXRlRmllbGQodGhpcy5fZmllbGRzW2tleV0sIGtleSwgdGhpcy5fdmFsaWRhdGlvbnNba2V5XSwgdHJ1ZSwgdHJ1ZSlcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdGhpcy5faXNWYWxpZFxyXG4gIH1cclxufVxyXG4iXX0=
212
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXJ4LWZvcm0tdmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9zZXJ2aWNlcy9tcngtZm9ybS12YWxpZGF0b3IvbXJ4LWZvcm0tdmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFHdEMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDOUYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDdkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRXZGLE1BQU0sT0FBTyxnQkFBZ0I7SUFXM0IsWUFBWSxPQUE4QjtRQVZsQyxZQUFPLEdBQVEsRUFBRSxDQUFBO1FBQ2pCLGlCQUFZLEdBQWlCLEVBQUUsQ0FBQTtRQUMvQixZQUFPLEdBQVEsRUFBRSxDQUFBO1FBQ2pCLGFBQVEsR0FBRyxJQUFJLENBQUE7UUFDZixZQUFPLEdBQUcsS0FB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QUMsYUFBYSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUE7aUJBQ2hGO1lBQ0gsQ0FBQyxDQUFDLENBQUE7U0FDSDtRQUVELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQTtJQUNoQyxDQUFDO0lBRUQsMEJBQTBCO0lBQ25CLGFBQWE7UUFDbEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUE7UUFFcEIsS0FBSyxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ2pDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUE7U0FDL0U7UUFFRCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUE7SUFDdEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY2xvbmVEZWVwIH0gZnJvbSAnbG9kYXNoLWVzJztcclxuaW1wb3J0IHsgSUZpZWxkcywgSU1lc3NhZ2VzLCBJVmFsaWRhdGlvbnMsIFZhbGlkYXRpb25zVHlwZSB9IGZyb20gJy4vbW9kZWxzL3ZhbGlkYXRpb25zLW9wdGlvbnMubW9kZWwnO1xyXG5pbXBvcnQgeyBGb3JtVmFsaWRhdG9yT3B0aW9ucyB9IGZyb20gJy4vbW9kZWxzL3ZhbGlkYXRpb25zLXNldHRpbmdzLm1vZGVsJztcclxuaW1wb3J0IHsgVmFsaWRhdGlvbk1ldGhvZHNFbnVtLCBWYWxpZGF0aW9uVHlwZXNFbnVtIH0gZnJvbSAnLi9tb2RlbHMvdmFsaWRhdGlvbnMtdHlwZXMubW9kZWwnO1xyXG5pbXBvcnQgeyByZXF1aXJlZFZhbGlkYXRpb24gfSBmcm9tICcuL3ZhbGlkYXRpb25zL3JlcXVpcmVkLnZhbGlkYXRpb24nO1xyXG5pbXBvcnQgeyBlbWFpbFZhbGlkYXRpb24gfSBmcm9tICcuL3ZhbGlkYXRpb25zL2VtYWlsLnZhbGlkYXRpb24nO1xyXG5pbXBvcnQgeyBwYXR0ZXJuVmFsaWRhdGlvbiB9IGZyb20gJy4vdmFsaWRhdGlvbnMvcGF0dGVybi52YWxpZGF0aW9uJztcclxuaW1wb3J0IHsgbWF4TGVuZ3RoVmFsaWRhdGlvbiB9IGZyb20gJy4vdmFsaWRhdGlvbnMvbWF4LWxlbmd0aC52YWxpZGF0aW9uJztcclxuaW1wb3J0IHsgbWluTGVuZ3RoVmFsaWRhdGlvbiB9IGZyb20gJy4vdmFsaWRhdGlvbnMvbWluLWxlbmd0aC52YWxpZGF0aW9uJztcclxuaW1wb3J0IHsgbWluVmFsdWVWYWxpZGF0aW9uIH0gZnJvbSAnLi92YWxpZGF0aW9ucy9taW4tdmFsdWUudmFsaWRhdGlvbic7XHJcbmltcG9ydCB7IG1heFZhbHVlVmFsaWRhdGlvbiB9IGZyb20gJy4vdmFsaWRhdGlvbnMvbWF4LXZhbHVlLnZhbGlkYXRpb24nO1xyXG5pbXBvcnQgeyBjYWxsYmFja1ZhbGlkYXRpb24gfSBmcm9tICcuL3ZhbGlkYXRpb25zL2NhbGxiYWNrLnZhbGlkYXRpb24nO1xyXG5pbXBvcnQgeyBJTlZBTElEX01FU1NBR0VTIH0gZnJvbSAnLi9jb25zdGFudHMvaW52YWxpZC1tZXNzYWdlcyc7XHJcbmltcG9ydCB7IGdldFNvcnRpbmdWYWxpZGF0aW9uc0hlbHBlciB9IGZyb20gJy4vaGVscGVycy9nZXQtc29ydGluZy12YWxpZGF0aW9ucy5oZWxwZXInO1xyXG5cclxuZXhwb3J0IGNsYXNzIE1yeEZvcm1WYWxpZGF0b3Ige1xyXG4gIHByaXZhdGUgX2ZpZWxkczogYW55ID0gW11cclxuICBwcml2YXRlIF92YWxpZGF0aW9uczogSVZhbGlkYXRpb25zID0ge31cclxuICBwcml2YXRlIF9lcnJvcnM6IGFueSA9IHt9XHJcbiAgcHJpdmF0ZSBfaXNWYWxpZCA9IHRydWVcclxuICBwcml2YXRlIF9pc0luaXQgPSBmYWxzZVxyXG4gIHByaXZhdGUgX21vZGVsQ2xvbmU6IElGaWVsZHMgPSB7fVxyXG5cclxuICBwcml2YXRlIF9tZXRob2QgPSAnc3VibWl0J1xyXG4gIHByaXZhdGUgX2ludmFsaWRNZXNzYWdlczogSU1lc3NhZ2VzID0gSU5WQUxJRF9NRVNTQUdFU1xyXG5cclxuICBjb25zdHJ1Y3RvcihvcHRpb25zPzogRm9ybVZhbGlkYXRvck9wdGlvbnMpIHtcclxuICAgIGlmIChvcHRpb25zPy5tZXRob2QpIHtcclxuICAgICAgdGhpcy5fbWV0aG9kID0gb3B0aW9ucy5tZXRob2RcclxuICAgIH1cclxuXHJcbiAgICBpZiAob3B0aW9ucz8ubWVzc2FnZXMpIHtcclxuICAgICAgdGhpcy5faW52YWxpZE1lc3NhZ2VzID0gey4uLnRoaXMuX2ludmFsaWRNZXNzYWdlcywgLi4ub3B0aW9ucy5tZXNzYWdlc31cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZXJyb3JzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2Vycm9yc1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXQgZmllbGRzKGZpZWxkczogYW55KSB7XHJcbiAgICB0aGlzLl9maWVsZHMgPSBPYmplY3QuYXNzaWduKHt9LCBmaWVsZHMpXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldE5hbWVzVXBkYXRlZFByb3BlcnRpZXMob2xkTW9kZWw6IGFueSwgbmV3TW9kZWw6IGFueSk6IHN0cmluZ1tdIHtcclxuICAgIGNvbnN0IG5hbWVzVXBkYXRlZFByb3BlcnRpZXMgPSBbXVxyXG5cclxuICAgIGZvciAobGV0IGtleSBpbiBuZXdNb2RlbCkge1xyXG4gICAgICBzd2l0Y2ggKHRydWUpIHtcclxuICAgICAgICBjYXNlIEFycmF5LmlzQXJyYXkobmV3TW9kZWxba2V5XSk6XHJcbiAgICAgICAgICBpZiAoSlNPTi5zdHJpbmdpZnkobmV3TW9kZWxba2V5XSkgIT09IEpTT04uc3RyaW5naWZ5KG9sZE1vZGVsW2tleV0pKSB7XHJcbiAgICAgICAgICAgIG5hbWVzVXBkYXRlZFByb3BlcnRpZXMucHVzaChrZXkpXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBicmVha1xyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICBpZiAobmV3TW9kZWxba2V5XSAhPT0gb2xkTW9kZWxba2V5XSkge1xyXG4gICAgICAgICAgICBuYW1lc1VwZGF0ZWRQcm9wZXJ0aWVzLnB1c2goa2V5KVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgYnJlYWtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBuYW1lc1VwZGF0ZWRQcm9wZXJ0aWVzXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHZhbGlkYXRlRmllbGQoXHJcbiAgICB2YWx1ZTogc3RyaW5nLFxyXG4gICAgbmFtZTogc3RyaW5nLFxyXG4gICAgdmFsaWRhdGlvbnM6IFZhbGlkYXRpb25zVHlwZSxcclxuICAgIHZhbGlkYXRlRW1wdHlWYWx1ZTogYm9vbGVhbiA9IGZhbHNlLFxyXG4gICAgc2lsZW50OiBib29sZWFuID0gZmFsc2VcclxuICApOiB2b2lkIHtcclxuICAgIGlmICghdmFsaWRhdGVFbXB0eVZhbHVlICYmICh2YWx1ZS5sZW5ndGggPT09IDApKSB7XHJcbiAgICAgIHJldHVyblxyXG4gICAgfVxyXG5cclxuICAgIGlmICghdGhpcy5faXNWYWxpZCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgZm9yIChsZXQga2V5IGluIHZhbGlkYXRpb25zKSB7XHJcbiAgICAgIHN3aXRjaCAoa2V5KSB7XHJcbiAgICAgICAgY2FzZSBWYWxpZGF0aW9uVHlwZXNFbnVtLlJlcXVpcmVkOlxyXG4gICAgICAgICAgY29uc3QgcmVxdWlyZWRSZXMgPSByZXF1aXJlZFZhbGlkYXRpb24oXHJcbiAgICAgICAgICAgIHZhbHVlLCB2YWxpZGF0aW9ucywga2V5LCB0aGlzLl9pbnZhbGlkTWVzc2FnZXNcclxuICAgICAgICAgIClcclxuXHJcbiAgICAgICAgICB0aGlzLl9pc1ZhbGlkID0gcmVxdWlyZWRSZXMuaXNWYWxpZFxyXG5cclxuICAgICAgICAgIGlmICghc2lsZW50ICYmICF0aGlzLl9lcnJvcnNbbmFtZV0pIHtcclxuICAgICAgICAgICAgIHRoaXMuX2Vycm9yc1tuYW1lXSA9IHJlcXVpcmVkUmVzLm1lc3NhZ2VcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBpZiAoIXRoaXMuX2lzVmFsaWQpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGJyZWFrXHJcbiAgICAgICAgY2FzZSBWYWxpZGF0aW9uVHlwZXNFbnVtLkVtYWlsOlxyXG4gICAgICAgICAgY29uc3QgZW1haWxSZXMgPSBlbWFpbFZhbGlkYXRpb24oXHJcbiAgICAgICAgICAgIHZhbHVlLCB2YWxpZGF0aW9ucywga2V5LCB0aGlzLl9pbnZhbGlkTWVzc2FnZXNcclxuICAgICAgICAgIClcclxuXHJcbiAgICAgICAgICB0aGlzLl9pc1ZhbGlkID0gZW1haWxSZXMuaXNWYWxpZFxyXG5cclxuICAgICAgICAgIGlmICghc2lsZW50ICYmICF0aGlzLl9lcnJvcnNbbmFtZV0pIHtcclxuICAgICAgICAgICAgdGhpcy5fZXJyb3JzW25hbWVdID0gZW1haWxSZXMubWVzc2FnZVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGlmICghdGhpcy5faXNWYWxpZCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgYnJlYWtcclxuICAgICAgICBjYXNlIFZhbGlkYXRpb25UeXBlc0VudW0uUGF0dGVybjpcclxuICAgICAgICAgIGNvbnN0IHBhdHRlcm5SZXMgPSBwYXR0ZXJuVmFsaWRhdGlvbihcclxuICAgICAgICAgICAgdmFsdWUsIHZhbGlkYXRpb25zLCBrZXksIHRoaXMuX2ludmFsaWRNZXNzYWdlc1xyXG4gICAgICAgICAgKVxyXG5cclxuICAgICAgICAgIHRoaXMuX2lzVmFsaWQgPSBwYXR0ZXJuUmVzLmlzVmFsaWRcclxuXHJcbiAgICAgICAgICBpZiAoIXNpbGVudCAmJiAhdGhpcy5fZXJyb3JzW25hbWVdKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2Vycm9yc1tuYW1lXSA9IHBhdHRlcm5SZXMubWVzc2FnZVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGlmICghdGhpcy5faXNWYWxpZCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgYnJlYWtcclxuICAgICAgICBjYXNlIFZhbGlkYXRpb25UeXBlc0VudW0uTWluTGVuZ3RoOlxyXG4gICAgICAgICAgY29uc3QgbWluTGVuZ3RoUmVzID0gbWluTGVuZ3RoVmFsaWRhdGlvbihcclxuICAgICAgICAgICAgdmFsdWUsIHZhbGlkYXRpb25zLCBrZXksIHRoaXMuX2ludmFsaWRNZXNzYWdlc1xyXG4gICAgICAgICAgKVxyXG5cclxuICAgICAgICAgIHRoaXMuX2lzVmFsaWQgPSBtaW5MZW5ndGhSZXMuaXNWYWxpZFxyXG5cclxuICAgICAgICAgIGlmICghc2lsZW50ICYmICF0aGlzLl9lcnJvcnNbbmFtZV0pIHtcclxuICAgICAgICAgICAgdGhpcy5fZXJyb3JzW25hbWVdID0gbWluTGVuZ3RoUmVzLm1lc3NhZ2VcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBpZiAoIXRoaXMuX2lzVmFsaWQpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGJyZWFrXHJcbiAgICAgICAgY2FzZSBWYWxpZGF0aW9uVHlwZXNFbnVtLk1heExlbmd0aDpcclxuICAgICAgICAgIGNvbnN0IG1heExlbmd0aFJlcyA9IG1heExlbmd0aFZhbGlkYXRpb24oXHJcbiAgICAgICAgICAgIHZhbHVlLCB2YWxpZGF0aW9ucywga2V5LCB0aGlzLl9pbnZhbGlkTWVzc2FnZXNcclxuICAgICAgICAgIClcclxuXHJcbiAgICAgICAgICB0aGlzLl9pc1ZhbGlkID0gbWF4TGVuZ3RoUmVzLmlzVmFsaWRcclxuXHJcbiAgICAgICAgICBpZiAoIXNpbGVudCAmJiAhdGhpcy5fZXJyb3JzW25hbWVdKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2Vycm9yc1tuYW1lXSA9IG1heExlbmd0aFJlcy5tZXNzYWdlXHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgaWYgKCF0aGlzLl9pc1ZhbGlkKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBicmVha1xyXG4gICAgICAgIGNhc2UgVmFsaWRhdGlvblR5cGVzRW51bS5NaW5WYWx1ZTpcclxuICAgICAgICAgIGNvbnN0IG1pblZhbHVlUmVzID0gbWluVmFsdWVWYWxpZGF0aW9uKFxyXG4gICAgICAgICAgICB2YWx1ZSwgdmFsaWRhdGlvbnMsIGtleSwgdGhpcy5faW52YWxpZE1lc3NhZ2VzXHJcbiAgICAgICAgICApXHJcblxyXG4gICAgICAgICAgdGhpcy5faXNWYWxpZCA9IG1pblZhbHVlUmVzLmlzVmFsaWRcclxuXHJcbiAgICAgICAgICBpZiAoIXNpbGVudCAmJiAhdGhpcy5fZXJyb3JzW25hbWVdKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2Vycm9yc1tuYW1lXSA9IG1pblZhbHVlUmVzLm1lc3NhZ2VcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBpZiAoIXRoaXMuX2lzVmFsaWQpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGJyZWFrXHJcbiAgICAgICAgY2FzZSBWYWxpZGF0aW9uVHlwZXNFbnVtLk1heFZhbHVlOlxyXG4gICAgICAgICAgY29uc3QgbWF4VmFsdWVSZXMgPSBtYXhWYWx1ZVZhbGlkYXRpb24oXHJcbiAgICAgICAgICAgIHZhbHVlLCB2YWxpZGF0aW9ucywga2V5LCB0aGlzLl9pbnZhbGlkTWVzc2FnZXNcclxuICAgICAgICAgIClcclxuXHJcbiAgICAgICAgICB0aGlzLl9pc1ZhbGlkID0gbWF4VmFsdWVSZXMuaXNWYWxpZFxyXG5cclxuICAgICAgICAgIGlmICghc2lsZW50ICYmICF0aGlzLl9lcnJvcnNbbmFtZV0pIHtcclxuICAgICAgICAgICAgdGhpcy5fZXJyb3JzW25hbWVdID0gbWF4VmFsdWVSZXMubWVzc2FnZVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIGlmICghdGhpcy5faXNWYWxpZCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgYnJlYWtcclxuICAgICAgICBjYXNlIFZhbGlkYXRpb25UeXBlc0VudW0uQ2FsbGJhY2s6XHJcbiAgICAgICAgICBjb25zdCBjYWxsYmFja1JlcyA9IGNhbGxiYWNrVmFsaWRhdGlvbihcclxuICAgICAgICAgICAgdmFsdWUsIHZhbGlkYXRpb25zLCBrZXksIHRoaXMuX2ludmFsaWRNZXNzYWdlc1xyXG4gICAgICAgICAgKVxyXG5cclxuICAgICAgICAgIHRoaXMuX2lzVmFsaWQgPSBjYWxsYmFja1Jlcy5pc1ZhbGlkXHJcblxyXG4gICAgICAgICAgaWYgKCFzaWxlbnQgJiYgIXRoaXMuX2Vycm9yc1tuYW1lXSkge1xyXG4gICAgICAgICAgICB0aGlzLl9lcnJvcnNbbmFtZV0gPSBjYWxsYmFja1Jlcy5tZXNzYWdlXHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgaWYgKCF0aGlzLl9pc1ZhbGlkKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBicmVha1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaW5pdEZpZWxkcyhmaWVsZHM6IElGaWVsZHMsIHZhbGlkYXRpb25zOiBJVmFsaWRhdGlvbnMpOiB2b2lkIHtcclxuICAgIHRoaXMuZmllbGRzID0gY2xvbmVEZWVwKGZpZWxkcylcclxuICAgIHRoaXMuX3ZhbGlkYXRpb25zID0gdmFsaWRhdGlvbnNcclxuICAgIHRoaXMuX21vZGVsQ2xvbmUgPSBjbG9uZURlZXAoZmllbGRzKVxyXG5cclxuICAgIGZvciAobGV0IGtleSBpbiB2YWxpZGF0aW9ucykge1xyXG4gICAgICB0aGlzLl92YWxpZGF0aW9uc1trZXldID0gZ2V0U29ydGluZ1ZhbGlkYXRpb25zSGVscGVyKHZhbGlkYXRpb25zW2tleV0pXHJcbiAgICAgIHRoaXMuZXJyb3JzW2tleV0gPSBudWxsXHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5faXNJbml0ID0gdHJ1ZVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGluaXRNb2RlbENoYW5nZWQoZmllbGRzOiBJRmllbGRzKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5faXNJbml0KSB7XHJcbiAgICAgIHRoaXMuX2lzVmFsaWQgPSB0cnVlXHJcbiAgICAgIHRoaXMuX21vZGVsQ2xvbmUgPSBjbG9uZURlZXAoZmllbGRzKVxyXG5cclxuICAgICAgdGhpcy5nZXROYW1lc1VwZGF0ZWRQcm9wZXJ0aWVzKHRoaXMuX2ZpZWxkcywgZmllbGRzKS5mb3JFYWNoKChuYW1lOiBzdHJpbmcpID0+IHtcclxuICAgICAgICB0aGlzLl9lcnJvcnNbbmFtZV0gPSBudWxsXHJcblxyXG4gICAgICAgIGlmICh0aGlzLl9tZXRob2QgPT09IFZhbGlkYXRpb25NZXRob2RzRW51bS5JbnB1dCkge1xyXG4gICAgICAgICAgdGhpcy52YWxpZGF0ZUZpZWxkKGZpZWxkc1tuYW1lXSwgbmFtZSwgdGhpcy5fdmFsaWRhdGlvbnNbbmFtZV0sIHRydWUpXHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuZmllbGRzID0gY2xvbmVEZWVwKGZpZWxkcylcclxuICB9XHJcblxyXG4gIHB1YmxpYyBpbml0RmllbGRDaGFuZ2VkKGZpZWxkczogSUZpZWxkcywgZmllbGROYW1lOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLl9pc0luaXQpIHtcclxuICAgICAgdGhpcy5faXNWYWxpZCA9IHRydWVcclxuXHJcbiAgICAgIGlmIChmaWVsZHMuaGFzT3duUHJvcGVydHkoZmllbGROYW1lKSkge1xyXG4gICAgICAgIHRoaXMuX21vZGVsQ2xvbmVbZmllbGROYW1lXSA9IGZpZWxkc1tmaWVsZE5hbWVdXHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuX2Vycm9yc1tmaWVsZE5hbWVdID0gbnVsbFxyXG4gICAgICB0aGlzLnZhbGlkYXRlRmllbGQodGhpcy5fbW9kZWxDbG9uZVtmaWVsZE5hbWVdLCBmaWVsZE5hbWUsIHRoaXMuX3ZhbGlkYXRpb25zW2ZpZWxkTmFtZV0sIGZhbHNlKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGlzVmFsaWQoKTogYm9vbGVhbiB7XHJcbiAgICBmb3IgKGxldCBrZXkgaW4gdGhpcy5fdmFsaWRhdGlvbnMpIHtcclxuICAgICAgaWYgKCF0aGlzLl9pc1ZhbGlkKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzVmFsaWRcclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy5lcnJvcnNba2V5XSA9IG51bGxcclxuICAgICAgdGhpcy52YWxpZGF0ZUZpZWxkKHRoaXMuX2ZpZWxkc1trZXldLCBrZXksIHRoaXMuX3ZhbGlkYXRpb25zW2tleV0sIHRydWUpXHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuX2lzVmFsaWRcclxuICB9XHJcblxyXG4gIC8vIFRPRE8g0JLRi9GA0LXQt9Cw0YLRjCDQsiDQsdGD0LTRg9GJ0LXQvFxyXG4gIHB1YmxpYyBpbml0TW9kZWxDaGFuZ2VkRnJvbUZpZWxkKGZpZWxkOiBhbnksIGZpZWxkTmFtZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5faXNJbml0KSB7XHJcbiAgICAgIHRoaXMuX2lzVmFsaWQgPSB0cnVlXHJcbiAgICAgIHRoaXMuX21vZGVsQ2xvbmVbZmllbGROYW1lXSA9IGZpZWxkXHJcblxyXG4gICAgICB0aGlzLmdldE5hbWVzVXBkYXRlZFByb3BlcnRpZXModGhpcy5fZmllbGRzLCB0aGlzLl9tb2RlbENsb25lKS5mb3JFYWNoKChuYW1lOiBzdHJpbmcpID0+IHtcclxuICAgICAgICB0aGlzLl9lcnJvcnNbbmFtZV0gPSBudWxsXHJcblxyXG4gICAgICAgIGlmICh0aGlzLl9tZXRob2QgPT09IFZhbGlkYXRpb25NZXRob2RzRW51bS5JbnB1dCkge1xyXG4gICAgICAgICAgdGhpcy52YWxpZGF0ZUZpZWxkKHRoaXMuX21vZGVsQ2xvbmVbbmFtZV0sIG5hbWUsIHRoaXMuX3ZhbGlkYXRpb25zW25hbWVdLCB0cnVlKVxyXG4gICAgICAgIH1cclxuICAgICAgfSlcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmZpZWxkcyA9IHRoaXMuX21vZGVsQ2xvbmVcclxuICB9XHJcblxyXG4gIC8vIFRPRE8g0JLRi9GA0LXQt9Cw0YLRjCDQsiDQsdGD0LTRg9GJ0LXQvFxyXG4gIHB1YmxpYyBpc0hpZGRlblZhbGlkKCk6IGJvb2xlYW4ge1xyXG4gICAgdGhpcy5faXNWYWxpZCA9IHRydWVcclxuXHJcbiAgICBmb3IgKGxldCBrZXkgaW4gdGhpcy5fdmFsaWRhdGlvbnMpIHtcclxuICAgICAgdGhpcy52YWxpZGF0ZUZpZWxkKHRoaXMuX2ZpZWxkc1trZXldLCBrZXksIHRoaXMuX3ZhbGlkYXRpb25zW2tleV0sIHRydWUsIHRydWUpXHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuX2lzVmFsaWRcclxuICB9XHJcbn1cclxuIl19
@@ -1,7 +1,7 @@
1
1
  import { ValidationTypesEnum } from '../models/validations-types.model';
2
2
  import { getErrorMessageHelper } from '../helpers/get-error-message.helper';
3
3
  export const callbackValidation = (value, validations, key, invalidMessages) => {
4
- const result = { isValid: true, message: '' };
4
+ const result = { isValid: true, message: null };
5
5
  if (validations[ValidationTypesEnum.Callback] && typeof validations[ValidationTypesEnum.Callback] === 'function') {
6
6
  const validation = validations[ValidationTypesEnum.Callback];
7
7
  const callbackResult = validation(value);
@@ -12,4 +12,4 @@ export const callbackValidation = (value, validations, key, invalidMessages) =>
12
12
  }
13
13
  return result;
14
14
  };
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsbGJhY2sudmFsaWRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvc2VydmljZXMvbXJ4LWZvcm0tdmFsaWRhdG9yL3ZhbGlkYXRpb25zL2NhbGxiYWNrLnZhbGlkYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDeEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFNUUsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsQ0FDaEMsS0FBYSxFQUNiLFdBQTRCLEVBQzVCLEdBQXdCLEVBQ3hCLGVBQTBCLEVBQ1csRUFBRTtJQUV2QyxNQUFNLE1BQU0sR0FBRyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxDQUFBO0lBRTdDLElBQUksV0FBVyxDQUFDLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxJQUFJLE9BQU8sV0FBVyxDQUFDLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxLQUFLLFVBQVUsRUFBRTtRQUNoSCxNQUFNLFVBQVUsR0FBRyxXQUFXLENBQUMsbUJBQW1CLENBQUMsUUFBUSxDQUFhLENBQUE7UUFDeEUsTUFBTSxjQUFjLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBRXhDLElBQUksY0FBYyxLQUFLLElBQUksRUFBRTtZQUMzQixNQUFNLENBQUMsT0FBTyxHQUFHLHFCQUFxQixDQUFDLEdBQUcsRUFBRSxlQUFlLEVBQUUsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFBO1lBQ2xGLE1BQU0sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1NBQ3hCO0tBQ0Y7SUFFRCxPQUFPLE1BQU0sQ0FBQTtBQUNmLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElNZXNzYWdlcywgVmFsaWRhdGlvbnNUeXBlIH0gZnJvbSAnLi4vbW9kZWxzL3ZhbGlkYXRpb25zLW9wdGlvbnMubW9kZWwnO1xyXG5pbXBvcnQgeyBWYWxpZGF0aW9uVHlwZXNFbnVtIH0gZnJvbSAnLi4vbW9kZWxzL3ZhbGlkYXRpb25zLXR5cGVzLm1vZGVsJztcclxuaW1wb3J0IHsgZ2V0RXJyb3JNZXNzYWdlSGVscGVyIH0gZnJvbSAnLi4vaGVscGVycy9nZXQtZXJyb3ItbWVzc2FnZS5oZWxwZXInO1xyXG5cclxuZXhwb3J0IGNvbnN0IGNhbGxiYWNrVmFsaWRhdGlvbiA9IChcclxuICB2YWx1ZTogc3RyaW5nLFxyXG4gIHZhbGlkYXRpb25zOiBWYWxpZGF0aW9uc1R5cGUsXHJcbiAga2V5OiBWYWxpZGF0aW9uVHlwZXNFbnVtLFxyXG4gIGludmFsaWRNZXNzYWdlczogSU1lc3NhZ2VzXHJcbik6IHtpc1ZhbGlkOiBib29sZWFuLCBtZXNzYWdlOiBzdHJpbmd9ID0+IHtcclxuXHJcbiAgY29uc3QgcmVzdWx0ID0geyBpc1ZhbGlkOiB0cnVlLCBtZXNzYWdlOiAnJyB9XHJcblxyXG4gIGlmICh2YWxpZGF0aW9uc1tWYWxpZGF0aW9uVHlwZXNFbnVtLkNhbGxiYWNrXSAmJiB0eXBlb2YgdmFsaWRhdGlvbnNbVmFsaWRhdGlvblR5cGVzRW51bS5DYWxsYmFja10gPT09ICdmdW5jdGlvbicpIHtcclxuICAgIGNvbnN0IHZhbGlkYXRpb24gPSB2YWxpZGF0aW9uc1tWYWxpZGF0aW9uVHlwZXNFbnVtLkNhbGxiYWNrXSBhcyBGdW5jdGlvblxyXG4gICAgY29uc3QgY2FsbGJhY2tSZXN1bHQgPSB2YWxpZGF0aW9uKHZhbHVlKVxyXG5cclxuICAgIGlmIChjYWxsYmFja1Jlc3VsdCAhPT0gbnVsbCkge1xyXG4gICAgICByZXN1bHQubWVzc2FnZSA9IGdldEVycm9yTWVzc2FnZUhlbHBlcihrZXksIGludmFsaWRNZXNzYWdlcywgdmFsaWRhdGlvbnMubWVzc2FnZXMpXHJcbiAgICAgIHJlc3VsdC5pc1ZhbGlkID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZXR1cm4gcmVzdWx0XHJcbn07XHJcbiJdfQ==
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsbGJhY2sudmFsaWRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvc2VydmljZXMvbXJ4LWZvcm0tdmFsaWRhdG9yL3ZhbGlkYXRpb25zL2NhbGxiYWNrLnZhbGlkYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDeEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFNUUsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsQ0FDaEMsS0FBYSxFQUNiLFdBQTRCLEVBQzVCLEdBQXdCLEVBQ3hCLGVBQTBCLEVBQ29CLEVBQUU7SUFFaEQsTUFBTSxNQUFNLEdBQWlELEVBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFDLENBQUM7SUFFNUYsSUFBSSxXQUFXLENBQUMsbUJBQW1CLENBQUMsUUFBUSxDQUFDLElBQUksT0FBTyxXQUFXLENBQUMsbUJBQW1CLENBQUMsUUFBUSxDQUFDLEtBQUssVUFBVSxFQUFFO1FBQ2hILE1BQU0sVUFBVSxHQUFHLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQWEsQ0FBQTtRQUN4RSxNQUFNLGNBQWMsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUE7UUFFeEMsSUFBSSxjQUFjLEtBQUssSUFBSSxFQUFFO1lBQzNCLE1BQU0sQ0FBQyxPQUFPLEdBQUcscUJBQXFCLENBQUMsR0FBRyxFQUFFLGVBQWUsRUFBRSxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUE7WUFDbEYsTUFBTSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7U0FDeEI7S0FDRjtJQUVELE9BQU8sTUFBTSxDQUFBO0FBQ2YsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSU1lc3NhZ2VzLCBWYWxpZGF0aW9uc1R5cGUgfSBmcm9tICcuLi9tb2RlbHMvdmFsaWRhdGlvbnMtb3B0aW9ucy5tb2RlbCc7XHJcbmltcG9ydCB7IFZhbGlkYXRpb25UeXBlc0VudW0gfSBmcm9tICcuLi9tb2RlbHMvdmFsaWRhdGlvbnMtdHlwZXMubW9kZWwnO1xyXG5pbXBvcnQgeyBnZXRFcnJvck1lc3NhZ2VIZWxwZXIgfSBmcm9tICcuLi9oZWxwZXJzL2dldC1lcnJvci1tZXNzYWdlLmhlbHBlcic7XHJcblxyXG5leHBvcnQgY29uc3QgY2FsbGJhY2tWYWxpZGF0aW9uID0gKFxyXG4gIHZhbHVlOiBzdHJpbmcsXHJcbiAgdmFsaWRhdGlvbnM6IFZhbGlkYXRpb25zVHlwZSxcclxuICBrZXk6IFZhbGlkYXRpb25UeXBlc0VudW0sXHJcbiAgaW52YWxpZE1lc3NhZ2VzOiBJTWVzc2FnZXNcclxuKTogeyBpc1ZhbGlkOiBib29sZWFuLCBtZXNzYWdlOiBzdHJpbmcgfCBudWxsIH0gPT4ge1xyXG5cclxuICBjb25zdCByZXN1bHQ6IHsgaXNWYWxpZDogYm9vbGVhbiwgbWVzc2FnZTogc3RyaW5nIHwgbnVsbCB9ID0ge2lzVmFsaWQ6IHRydWUsIG1lc3NhZ2U6IG51bGx9O1xyXG5cclxuICBpZiAodmFsaWRhdGlvbnNbVmFsaWRhdGlvblR5cGVzRW51bS5DYWxsYmFja10gJiYgdHlwZW9mIHZhbGlkYXRpb25zW1ZhbGlkYXRpb25UeXBlc0VudW0uQ2FsbGJhY2tdID09PSAnZnVuY3Rpb24nKSB7XHJcbiAgICBjb25zdCB2YWxpZGF0aW9uID0gdmFsaWRhdGlvbnNbVmFsaWRhdGlvblR5cGVzRW51bS5DYWxsYmFja10gYXMgRnVuY3Rpb25cclxuICAgIGNvbnN0IGNhbGxiYWNrUmVzdWx0ID0gdmFsaWRhdGlvbih2YWx1ZSlcclxuXHJcbiAgICBpZiAoY2FsbGJhY2tSZXN1bHQgIT09IG51bGwpIHtcclxuICAgICAgcmVzdWx0Lm1lc3NhZ2UgPSBnZXRFcnJvck1lc3NhZ2VIZWxwZXIoa2V5LCBpbnZhbGlkTWVzc2FnZXMsIHZhbGlkYXRpb25zLm1lc3NhZ2VzKVxyXG4gICAgICByZXN1bHQuaXNWYWxpZCA9IGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHJlc3VsdFxyXG59O1xyXG4iXX0=
@@ -1,11 +1,11 @@
1
1
  import { getErrorMessageHelper } from '../helpers/get-error-message.helper';
2
2
  export const emailValidation = (value, validations, key, invalidMessages) => {
3
3
  const emailRegExp = /^[a-zA-Z0-9._а-яА-Я-]+@[a-zA-Zа-яА-Я0-9.-]+\.[a-zA-Zа-яА-Я]{2,10}$/;
4
- const result = { isValid: true, message: '' };
4
+ const result = { isValid: true, message: null };
5
5
  if (!emailRegExp.test(value)) {
6
6
  result.message = getErrorMessageHelper(key, invalidMessages, validations.messages);
7
7
  result.isValid = false;
8
8
  }
9
9
  return result;
10
10
  };
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwudmFsaWRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvc2VydmljZXMvbXJ4LWZvcm0tdmFsaWRhdG9yL3ZhbGlkYXRpb25zL2VtYWlsLnZhbGlkYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFNUUsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLENBQzdCLEtBQWEsRUFDYixXQUE0QixFQUM1QixHQUF3QixFQUN4QixlQUEwQixFQUNXLEVBQUU7SUFFdkMsTUFBTSxXQUFXLEdBQUcsb0VBQW9FLENBQUE7SUFDeEYsTUFBTSxNQUFNLEdBQUcsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsQ0FBQTtJQUU3QyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRTtRQUM1QixNQUFNLENBQUMsT0FBTyxHQUFHLHFCQUFxQixDQUFDLEdBQUcsRUFBRSxlQUFlLEVBQUUsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBQ2xGLE1BQU0sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO0tBQ3hCO0lBRUQsT0FBTyxNQUFNLENBQUE7QUFDZixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJTWVzc2FnZXMsIFZhbGlkYXRpb25zVHlwZSB9IGZyb20gJy4uL21vZGVscy92YWxpZGF0aW9ucy1vcHRpb25zLm1vZGVsJztcclxuaW1wb3J0IHsgVmFsaWRhdGlvblR5cGVzRW51bSB9IGZyb20gJy4uL21vZGVscy92YWxpZGF0aW9ucy10eXBlcy5tb2RlbCc7XHJcbmltcG9ydCB7IGdldEVycm9yTWVzc2FnZUhlbHBlciB9IGZyb20gJy4uL2hlbHBlcnMvZ2V0LWVycm9yLW1lc3NhZ2UuaGVscGVyJztcclxuXHJcbmV4cG9ydCBjb25zdCBlbWFpbFZhbGlkYXRpb24gPSAoXHJcbiAgdmFsdWU6IHN0cmluZyxcclxuICB2YWxpZGF0aW9uczogVmFsaWRhdGlvbnNUeXBlLFxyXG4gIGtleTogVmFsaWRhdGlvblR5cGVzRW51bSxcclxuICBpbnZhbGlkTWVzc2FnZXM6IElNZXNzYWdlc1xyXG4pOiB7aXNWYWxpZDogYm9vbGVhbiwgbWVzc2FnZTogc3RyaW5nfSA9PiB7XHJcblxyXG4gIGNvbnN0IGVtYWlsUmVnRXhwID0gL15bYS16QS1aMC05Ll/QsC3Rj9CQLdCvLV0rQFthLXpBLVrQsC3Rj9CQLdCvMC05Li1dK1xcLlthLXpBLVrQsC3Rj9CQLdCvXXsyLDEwfSQvXHJcbiAgY29uc3QgcmVzdWx0ID0geyBpc1ZhbGlkOiB0cnVlLCBtZXNzYWdlOiAnJyB9XHJcblxyXG4gIGlmICghZW1haWxSZWdFeHAudGVzdCh2YWx1ZSkpIHtcclxuICAgIHJlc3VsdC5tZXNzYWdlID0gZ2V0RXJyb3JNZXNzYWdlSGVscGVyKGtleSwgaW52YWxpZE1lc3NhZ2VzLCB2YWxpZGF0aW9ucy5tZXNzYWdlcylcclxuICAgIHJlc3VsdC5pc1ZhbGlkID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gcmVzdWx0XHJcbn07XHJcbiJdfQ==
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwudmFsaWRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvc2VydmljZXMvbXJ4LWZvcm0tdmFsaWRhdG9yL3ZhbGlkYXRpb25zL2VtYWlsLnZhbGlkYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFNUUsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLENBQzdCLEtBQWEsRUFDYixXQUE0QixFQUM1QixHQUF3QixFQUN4QixlQUEwQixFQUNvQixFQUFFO0lBRWhELE1BQU0sV0FBVyxHQUFHLG9FQUFvRSxDQUFBO0lBQ3hGLE1BQU0sTUFBTSxHQUFpRCxFQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBQyxDQUFDO0lBRTVGLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFO1FBQzVCLE1BQU0sQ0FBQyxPQUFPLEdBQUcscUJBQXFCLENBQUMsR0FBRyxFQUFFLGVBQWUsRUFBRSxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUE7UUFDbEYsTUFBTSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7S0FDeEI7SUFFRCxPQUFPLE1BQU0sQ0FBQTtBQUNmLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElNZXNzYWdlcywgVmFsaWRhdGlvbnNUeXBlIH0gZnJvbSAnLi4vbW9kZWxzL3ZhbGlkYXRpb25zLW9wdGlvbnMubW9kZWwnO1xyXG5pbXBvcnQgeyBWYWxpZGF0aW9uVHlwZXNFbnVtIH0gZnJvbSAnLi4vbW9kZWxzL3ZhbGlkYXRpb25zLXR5cGVzLm1vZGVsJztcclxuaW1wb3J0IHsgZ2V0RXJyb3JNZXNzYWdlSGVscGVyIH0gZnJvbSAnLi4vaGVscGVycy9nZXQtZXJyb3ItbWVzc2FnZS5oZWxwZXInO1xyXG5cclxuZXhwb3J0IGNvbnN0IGVtYWlsVmFsaWRhdGlvbiA9IChcclxuICB2YWx1ZTogc3RyaW5nLFxyXG4gIHZhbGlkYXRpb25zOiBWYWxpZGF0aW9uc1R5cGUsXHJcbiAga2V5OiBWYWxpZGF0aW9uVHlwZXNFbnVtLFxyXG4gIGludmFsaWRNZXNzYWdlczogSU1lc3NhZ2VzXHJcbik6IHsgaXNWYWxpZDogYm9vbGVhbiwgbWVzc2FnZTogc3RyaW5nIHwgbnVsbCB9ID0+IHtcclxuXHJcbiAgY29uc3QgZW1haWxSZWdFeHAgPSAvXlthLXpBLVowLTkuX9CwLdGP0JAt0K8tXStAW2EtekEtWtCwLdGP0JAt0K8wLTkuLV0rXFwuW2EtekEtWtCwLdGP0JAt0K9dezIsMTB9JC9cclxuICBjb25zdCByZXN1bHQ6IHsgaXNWYWxpZDogYm9vbGVhbiwgbWVzc2FnZTogc3RyaW5nIHwgbnVsbCB9ID0ge2lzVmFsaWQ6IHRydWUsIG1lc3NhZ2U6IG51bGx9O1xyXG5cclxuICBpZiAoIWVtYWlsUmVnRXhwLnRlc3QodmFsdWUpKSB7XHJcbiAgICByZXN1bHQubWVzc2FnZSA9IGdldEVycm9yTWVzc2FnZUhlbHBlcihrZXksIGludmFsaWRNZXNzYWdlcywgdmFsaWRhdGlvbnMubWVzc2FnZXMpXHJcbiAgICByZXN1bHQuaXNWYWxpZCA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHJlc3VsdFxyXG59O1xyXG4iXX0=
@@ -1,10 +1,10 @@
1
1
  import { getErrorMessageHelper } from '../helpers/get-error-message.helper';
2
2
  export const maxLengthValidation = (value, validations, key, invalidMessages) => {
3
- const result = { isValid: true, message: '' };
3
+ const result = { isValid: true, message: null };
4
4
  if (String(value).length > Number(validations[key])) {
5
5
  result.message = getErrorMessageHelper(key, invalidMessages, validations.messages, Number(validations[key]));
6
6
  result.isValid = false;
7
7
  }
8
8
  return result;
9
9
  };
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF4LWxlbmd0aC52YWxpZGF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9zZXJ2aWNlcy9tcngtZm9ybS12YWxpZGF0b3IvdmFsaWRhdGlvbnMvbWF4LWxlbmd0aC52YWxpZGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRTVFLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBQ2pDLEtBQXdCLEVBQ3hCLFdBQTRCLEVBQzVCLEdBQXdCLEVBQ3hCLGVBQTBCLEVBQ1csRUFBRTtJQUV2QyxNQUFNLE1BQU0sR0FBRyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxDQUFBO0lBRTdDLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUU7UUFDbkQsTUFBTSxDQUFDLE9BQU8sR0FBRyxxQkFBcUIsQ0FBQyxHQUFHLEVBQUUsZUFBZSxFQUFFLFdBQVcsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDNUcsTUFBTSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7S0FDeEI7SUFFRCxPQUFPLE1BQU0sQ0FBQTtBQUNmLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElNZXNzYWdlcywgVmFsaWRhdGlvbnNUeXBlIH0gZnJvbSAnLi4vbW9kZWxzL3ZhbGlkYXRpb25zLW9wdGlvbnMubW9kZWwnO1xyXG5pbXBvcnQgeyBWYWxpZGF0aW9uVHlwZXNFbnVtIH0gZnJvbSAnLi4vbW9kZWxzL3ZhbGlkYXRpb25zLXR5cGVzLm1vZGVsJztcclxuaW1wb3J0IHsgZ2V0RXJyb3JNZXNzYWdlSGVscGVyIH0gZnJvbSAnLi4vaGVscGVycy9nZXQtZXJyb3ItbWVzc2FnZS5oZWxwZXInO1xyXG5cclxuZXhwb3J0IGNvbnN0IG1heExlbmd0aFZhbGlkYXRpb24gPSAoXHJcbiAgdmFsdWU6IHN0cmluZyB8IHN0cmluZ1tdLFxyXG4gIHZhbGlkYXRpb25zOiBWYWxpZGF0aW9uc1R5cGUsXHJcbiAga2V5OiBWYWxpZGF0aW9uVHlwZXNFbnVtLFxyXG4gIGludmFsaWRNZXNzYWdlczogSU1lc3NhZ2VzXHJcbik6IHtpc1ZhbGlkOiBib29sZWFuLCBtZXNzYWdlOiBzdHJpbmd9ID0+IHtcclxuXHJcbiAgY29uc3QgcmVzdWx0ID0geyBpc1ZhbGlkOiB0cnVlLCBtZXNzYWdlOiAnJyB9XHJcblxyXG4gIGlmIChTdHJpbmcodmFsdWUpLmxlbmd0aCA+IE51bWJlcih2YWxpZGF0aW9uc1trZXldKSkge1xyXG4gICAgcmVzdWx0Lm1lc3NhZ2UgPSBnZXRFcnJvck1lc3NhZ2VIZWxwZXIoa2V5LCBpbnZhbGlkTWVzc2FnZXMsIHZhbGlkYXRpb25zLm1lc3NhZ2VzLCBOdW1iZXIodmFsaWRhdGlvbnNba2V5XSkpXHJcbiAgICByZXN1bHQuaXNWYWxpZCA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHJlc3VsdFxyXG59O1xyXG4iXX0=
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF4LWxlbmd0aC52YWxpZGF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9zZXJ2aWNlcy9tcngtZm9ybS12YWxpZGF0b3IvdmFsaWRhdGlvbnMvbWF4LWxlbmd0aC52YWxpZGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRTVFLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBQ2pDLEtBQXdCLEVBQ3hCLFdBQTRCLEVBQzVCLEdBQXdCLEVBQ3hCLGVBQTBCLEVBQ29CLEVBQUU7SUFFaEQsTUFBTSxNQUFNLEdBQWlELEVBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFDLENBQUM7SUFFNUYsSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRTtRQUNuRCxNQUFNLENBQUMsT0FBTyxHQUFHLHFCQUFxQixDQUFDLEdBQUcsRUFBRSxlQUFlLEVBQUUsV0FBVyxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUM1RyxNQUFNLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztLQUN4QjtJQUVELE9BQU8sTUFBTSxDQUFBO0FBQ2YsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSU1lc3NhZ2VzLCBWYWxpZGF0aW9uc1R5cGUgfSBmcm9tICcuLi9tb2RlbHMvdmFsaWRhdGlvbnMtb3B0aW9ucy5tb2RlbCc7XHJcbmltcG9ydCB7IFZhbGlkYXRpb25UeXBlc0VudW0gfSBmcm9tICcuLi9tb2RlbHMvdmFsaWRhdGlvbnMtdHlwZXMubW9kZWwnO1xyXG5pbXBvcnQgeyBnZXRFcnJvck1lc3NhZ2VIZWxwZXIgfSBmcm9tICcuLi9oZWxwZXJzL2dldC1lcnJvci1tZXNzYWdlLmhlbHBlcic7XHJcblxyXG5leHBvcnQgY29uc3QgbWF4TGVuZ3RoVmFsaWRhdGlvbiA9IChcclxuICB2YWx1ZTogc3RyaW5nIHwgc3RyaW5nW10sXHJcbiAgdmFsaWRhdGlvbnM6IFZhbGlkYXRpb25zVHlwZSxcclxuICBrZXk6IFZhbGlkYXRpb25UeXBlc0VudW0sXHJcbiAgaW52YWxpZE1lc3NhZ2VzOiBJTWVzc2FnZXNcclxuKTogeyBpc1ZhbGlkOiBib29sZWFuLCBtZXNzYWdlOiBzdHJpbmcgfCBudWxsIH0gPT4ge1xyXG5cclxuICBjb25zdCByZXN1bHQ6IHsgaXNWYWxpZDogYm9vbGVhbiwgbWVzc2FnZTogc3RyaW5nIHwgbnVsbCB9ID0ge2lzVmFsaWQ6IHRydWUsIG1lc3NhZ2U6IG51bGx9O1xyXG5cclxuICBpZiAoU3RyaW5nKHZhbHVlKS5sZW5ndGggPiBOdW1iZXIodmFsaWRhdGlvbnNba2V5XSkpIHtcclxuICAgIHJlc3VsdC5tZXNzYWdlID0gZ2V0RXJyb3JNZXNzYWdlSGVscGVyKGtleSwgaW52YWxpZE1lc3NhZ2VzLCB2YWxpZGF0aW9ucy5tZXNzYWdlcywgTnVtYmVyKHZhbGlkYXRpb25zW2tleV0pKVxyXG4gICAgcmVzdWx0LmlzVmFsaWQgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIHJldHVybiByZXN1bHRcclxufTtcclxuIl19
@@ -1,10 +1,10 @@
1
1
  import { getErrorMessageHelper } from '../helpers/get-error-message.helper';
2
2
  export const maxValueValidation = (value, validations, key, invalidMessages) => {
3
- const result = { isValid: true, message: '' };
3
+ const result = { isValid: true, message: null };
4
4
  if (parseInt(value) < Number(validations[key])) {
5
5
  result.message = getErrorMessageHelper(key, invalidMessages, validations.messages, Number(validations[key]));
6
6
  result.isValid = false;
7
7
  }
8
8
  return result;
9
9
  };
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF4LXZhbHVlLnZhbGlkYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0YS11aS9zcmMvbGliL3NlcnZpY2VzL21yeC1mb3JtLXZhbGlkYXRvci92YWxpZGF0aW9ucy9tYXgtdmFsdWUudmFsaWRhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUU1RSxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxDQUNoQyxLQUFhLEVBQ2IsV0FBNEIsRUFDNUIsR0FBd0IsRUFDeEIsZUFBMEIsRUFDVyxFQUFFO0lBRXZDLE1BQU0sTUFBTSxHQUFHLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLENBQUE7SUFFN0MsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFO1FBQzlDLE1BQU0sQ0FBQyxPQUFPLEdBQUcscUJBQXFCLENBQUMsR0FBRyxFQUFFLGVBQWUsRUFBRSxXQUFXLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQzVHLE1BQU0sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO0tBQ3hCO0lBRUQsT0FBTyxNQUFNLENBQUE7QUFDZixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJTWVzc2FnZXMsIFZhbGlkYXRpb25zVHlwZSB9IGZyb20gJy4uL21vZGVscy92YWxpZGF0aW9ucy1vcHRpb25zLm1vZGVsJztcclxuaW1wb3J0IHsgVmFsaWRhdGlvblR5cGVzRW51bSB9IGZyb20gJy4uL21vZGVscy92YWxpZGF0aW9ucy10eXBlcy5tb2RlbCc7XHJcbmltcG9ydCB7IGdldEVycm9yTWVzc2FnZUhlbHBlciB9IGZyb20gJy4uL2hlbHBlcnMvZ2V0LWVycm9yLW1lc3NhZ2UuaGVscGVyJztcclxuXHJcbmV4cG9ydCBjb25zdCBtYXhWYWx1ZVZhbGlkYXRpb24gPSAoXHJcbiAgdmFsdWU6IHN0cmluZyxcclxuICB2YWxpZGF0aW9uczogVmFsaWRhdGlvbnNUeXBlLFxyXG4gIGtleTogVmFsaWRhdGlvblR5cGVzRW51bSxcclxuICBpbnZhbGlkTWVzc2FnZXM6IElNZXNzYWdlc1xyXG4pOiB7aXNWYWxpZDogYm9vbGVhbiwgbWVzc2FnZTogc3RyaW5nfSA9PiB7XHJcblxyXG4gIGNvbnN0IHJlc3VsdCA9IHsgaXNWYWxpZDogdHJ1ZSwgbWVzc2FnZTogJycgfVxyXG5cclxuICBpZiAocGFyc2VJbnQodmFsdWUpIDwgTnVtYmVyKHZhbGlkYXRpb25zW2tleV0pKSB7XHJcbiAgICByZXN1bHQubWVzc2FnZSA9IGdldEVycm9yTWVzc2FnZUhlbHBlcihrZXksIGludmFsaWRNZXNzYWdlcywgdmFsaWRhdGlvbnMubWVzc2FnZXMsIE51bWJlcih2YWxpZGF0aW9uc1trZXldKSlcclxuICAgIHJlc3VsdC5pc1ZhbGlkID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gcmVzdWx0XHJcbn07XHJcbiJdfQ==
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF4LXZhbHVlLnZhbGlkYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0YS11aS9zcmMvbGliL3NlcnZpY2VzL21yeC1mb3JtLXZhbGlkYXRvci92YWxpZGF0aW9ucy9tYXgtdmFsdWUudmFsaWRhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUU1RSxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxDQUNoQyxLQUFhLEVBQ2IsV0FBNEIsRUFDNUIsR0FBd0IsRUFDeEIsZUFBMEIsRUFDb0IsRUFBRTtJQUVoRCxNQUFNLE1BQU0sR0FBaUQsRUFBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUMsQ0FBQztJQUU1RixJQUFJLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUU7UUFDOUMsTUFBTSxDQUFDLE9BQU8sR0FBRyxxQkFBcUIsQ0FBQyxHQUFHLEVBQUUsZUFBZSxFQUFFLFdBQVcsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDNUcsTUFBTSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7S0FDeEI7SUFFRCxPQUFPLE1BQU0sQ0FBQTtBQUNmLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElNZXNzYWdlcywgVmFsaWRhdGlvbnNUeXBlIH0gZnJvbSAnLi4vbW9kZWxzL3ZhbGlkYXRpb25zLW9wdGlvbnMubW9kZWwnO1xyXG5pbXBvcnQgeyBWYWxpZGF0aW9uVHlwZXNFbnVtIH0gZnJvbSAnLi4vbW9kZWxzL3ZhbGlkYXRpb25zLXR5cGVzLm1vZGVsJztcclxuaW1wb3J0IHsgZ2V0RXJyb3JNZXNzYWdlSGVscGVyIH0gZnJvbSAnLi4vaGVscGVycy9nZXQtZXJyb3ItbWVzc2FnZS5oZWxwZXInO1xyXG5cclxuZXhwb3J0IGNvbnN0IG1heFZhbHVlVmFsaWRhdGlvbiA9IChcclxuICB2YWx1ZTogc3RyaW5nLFxyXG4gIHZhbGlkYXRpb25zOiBWYWxpZGF0aW9uc1R5cGUsXHJcbiAga2V5OiBWYWxpZGF0aW9uVHlwZXNFbnVtLFxyXG4gIGludmFsaWRNZXNzYWdlczogSU1lc3NhZ2VzXHJcbik6IHsgaXNWYWxpZDogYm9vbGVhbiwgbWVzc2FnZTogc3RyaW5nIHwgbnVsbCB9ID0+IHtcclxuXHJcbiAgY29uc3QgcmVzdWx0OiB7IGlzVmFsaWQ6IGJvb2xlYW4sIG1lc3NhZ2U6IHN0cmluZyB8IG51bGwgfSA9IHtpc1ZhbGlkOiB0cnVlLCBtZXNzYWdlOiBudWxsfTtcclxuXHJcbiAgaWYgKHBhcnNlSW50KHZhbHVlKSA8IE51bWJlcih2YWxpZGF0aW9uc1trZXldKSkge1xyXG4gICAgcmVzdWx0Lm1lc3NhZ2UgPSBnZXRFcnJvck1lc3NhZ2VIZWxwZXIoa2V5LCBpbnZhbGlkTWVzc2FnZXMsIHZhbGlkYXRpb25zLm1lc3NhZ2VzLCBOdW1iZXIodmFsaWRhdGlvbnNba2V5XSkpXHJcbiAgICByZXN1bHQuaXNWYWxpZCA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHJlc3VsdFxyXG59O1xyXG4iXX0=
@@ -1,11 +1,11 @@
1
1
  import { ValidationTypesEnum } from '../models/validations-types.model';
2
2
  import { getErrorMessageHelper } from '../helpers/get-error-message.helper';
3
3
  export const minLengthValidation = (value, validations, key, invalidMessages) => {
4
- const result = { isValid: true, message: '' };
4
+ const result = { isValid: true, message: null };
5
5
  if (String(value).length < Number(validations[key]) && !!validations[ValidationTypesEnum.Required]) {
6
6
  result.message = getErrorMessageHelper(key, invalidMessages, validations.messages, Number(validations[key]));
7
7
  result.isValid = false;
8
8
  }
9
9
  return result;
10
10
  };
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluLWxlbmd0aC52YWxpZGF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9zZXJ2aWNlcy9tcngtZm9ybS12YWxpZGF0b3IvdmFsaWRhdGlvbnMvbWluLWxlbmd0aC52YWxpZGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRTVFLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBQ2pDLEtBQWEsRUFDYixXQUE0QixFQUM1QixHQUF3QixFQUN4QixlQUEwQixFQUNXLEVBQUU7SUFFdkMsTUFBTSxNQUFNLEdBQUcsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsQ0FBQTtJQUU3QyxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxXQUFXLENBQUMsbUJBQW1CLENBQUMsUUFBUSxDQUFDLEVBQUU7UUFDbEcsTUFBTSxDQUFDLE9BQU8sR0FBRyxxQkFBcUIsQ0FBQyxHQUFHLEVBQUUsZUFBZSxFQUFFLFdBQVcsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDNUcsTUFBTSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7S0FDeEI7SUFFRCxPQUFPLE1BQU0sQ0FBQTtBQUNmLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElNZXNzYWdlcywgVmFsaWRhdGlvbnNUeXBlIH0gZnJvbSAnLi4vbW9kZWxzL3ZhbGlkYXRpb25zLW9wdGlvbnMubW9kZWwnO1xyXG5pbXBvcnQgeyBWYWxpZGF0aW9uVHlwZXNFbnVtIH0gZnJvbSAnLi4vbW9kZWxzL3ZhbGlkYXRpb25zLXR5cGVzLm1vZGVsJztcclxuaW1wb3J0IHsgZ2V0RXJyb3JNZXNzYWdlSGVscGVyIH0gZnJvbSAnLi4vaGVscGVycy9nZXQtZXJyb3ItbWVzc2FnZS5oZWxwZXInO1xyXG5cclxuZXhwb3J0IGNvbnN0IG1pbkxlbmd0aFZhbGlkYXRpb24gPSAoXHJcbiAgdmFsdWU6IHN0cmluZyxcclxuICB2YWxpZGF0aW9uczogVmFsaWRhdGlvbnNUeXBlLFxyXG4gIGtleTogVmFsaWRhdGlvblR5cGVzRW51bSxcclxuICBpbnZhbGlkTWVzc2FnZXM6IElNZXNzYWdlc1xyXG4pOiB7aXNWYWxpZDogYm9vbGVhbiwgbWVzc2FnZTogc3RyaW5nfSA9PiB7XHJcblxyXG4gIGNvbnN0IHJlc3VsdCA9IHsgaXNWYWxpZDogdHJ1ZSwgbWVzc2FnZTogJycgfVxyXG5cclxuICBpZiAoU3RyaW5nKHZhbHVlKS5sZW5ndGggPCBOdW1iZXIodmFsaWRhdGlvbnNba2V5XSkgJiYgISF2YWxpZGF0aW9uc1tWYWxpZGF0aW9uVHlwZXNFbnVtLlJlcXVpcmVkXSkge1xyXG4gICAgcmVzdWx0Lm1lc3NhZ2UgPSBnZXRFcnJvck1lc3NhZ2VIZWxwZXIoa2V5LCBpbnZhbGlkTWVzc2FnZXMsIHZhbGlkYXRpb25zLm1lc3NhZ2VzLCBOdW1iZXIodmFsaWRhdGlvbnNba2V5XSkpXHJcbiAgICByZXN1bHQuaXNWYWxpZCA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHJlc3VsdFxyXG59O1xyXG4iXX0=
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluLWxlbmd0aC52YWxpZGF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9zZXJ2aWNlcy9tcngtZm9ybS12YWxpZGF0b3IvdmFsaWRhdGlvbnMvbWluLWxlbmd0aC52YWxpZGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRTVFLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBQ2pDLEtBQWEsRUFDYixXQUE0QixFQUM1QixHQUF3QixFQUN4QixlQUEwQixFQUNvQixFQUFFO0lBRWhELE1BQU0sTUFBTSxHQUFpRCxFQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBQyxDQUFDO0lBRTVGLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsRUFBRTtRQUNsRyxNQUFNLENBQUMsT0FBTyxHQUFHLHFCQUFxQixDQUFDLEdBQUcsRUFBRSxlQUFlLEVBQUUsV0FBVyxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUM1RyxNQUFNLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztLQUN4QjtJQUVELE9BQU8sTUFBTSxDQUFBO0FBQ2YsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSU1lc3NhZ2VzLCBWYWxpZGF0aW9uc1R5cGUgfSBmcm9tICcuLi9tb2RlbHMvdmFsaWRhdGlvbnMtb3B0aW9ucy5tb2RlbCc7XHJcbmltcG9ydCB7IFZhbGlkYXRpb25UeXBlc0VudW0gfSBmcm9tICcuLi9tb2RlbHMvdmFsaWRhdGlvbnMtdHlwZXMubW9kZWwnO1xyXG5pbXBvcnQgeyBnZXRFcnJvck1lc3NhZ2VIZWxwZXIgfSBmcm9tICcuLi9oZWxwZXJzL2dldC1lcnJvci1tZXNzYWdlLmhlbHBlcic7XHJcblxyXG5leHBvcnQgY29uc3QgbWluTGVuZ3RoVmFsaWRhdGlvbiA9IChcclxuICB2YWx1ZTogc3RyaW5nLFxyXG4gIHZhbGlkYXRpb25zOiBWYWxpZGF0aW9uc1R5cGUsXHJcbiAga2V5OiBWYWxpZGF0aW9uVHlwZXNFbnVtLFxyXG4gIGludmFsaWRNZXNzYWdlczogSU1lc3NhZ2VzXHJcbik6IHsgaXNWYWxpZDogYm9vbGVhbiwgbWVzc2FnZTogc3RyaW5nIHwgbnVsbCB9ID0+IHtcclxuXHJcbiAgY29uc3QgcmVzdWx0OiB7IGlzVmFsaWQ6IGJvb2xlYW4sIG1lc3NhZ2U6IHN0cmluZyB8IG51bGwgfSA9IHtpc1ZhbGlkOiB0cnVlLCBtZXNzYWdlOiBudWxsfTtcclxuXHJcbiAgaWYgKFN0cmluZyh2YWx1ZSkubGVuZ3RoIDwgTnVtYmVyKHZhbGlkYXRpb25zW2tleV0pICYmICEhdmFsaWRhdGlvbnNbVmFsaWRhdGlvblR5cGVzRW51bS5SZXF1aXJlZF0pIHtcclxuICAgIHJlc3VsdC5tZXNzYWdlID0gZ2V0RXJyb3JNZXNzYWdlSGVscGVyKGtleSwgaW52YWxpZE1lc3NhZ2VzLCB2YWxpZGF0aW9ucy5tZXNzYWdlcywgTnVtYmVyKHZhbGlkYXRpb25zW2tleV0pKVxyXG4gICAgcmVzdWx0LmlzVmFsaWQgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIHJldHVybiByZXN1bHRcclxufTtcclxuIl19
@@ -1,10 +1,10 @@
1
1
  import { getErrorMessageHelper } from '../helpers/get-error-message.helper';
2
2
  export const minValueValidation = (value, validations, key, invalidMessages) => {
3
- const result = { isValid: true, message: '' };
3
+ const result = { isValid: true, message: null };
4
4
  if (parseInt(value) > Number(validations[key])) {
5
5
  result.message = getErrorMessageHelper(key, invalidMessages, validations.messages, Number(validations[key]));
6
6
  result.isValid = false;
7
7
  }
8
8
  return result;
9
9
  };
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluLXZhbHVlLnZhbGlkYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0YS11aS9zcmMvbGliL3NlcnZpY2VzL21yeC1mb3JtLXZhbGlkYXRvci92YWxpZGF0aW9ucy9taW4tdmFsdWUudmFsaWRhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUU1RSxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxDQUNoQyxLQUFhLEVBQ2IsV0FBNEIsRUFDNUIsR0FBd0IsRUFDeEIsZUFBMEIsRUFDVyxFQUFFO0lBRXZDLE1BQU0sTUFBTSxHQUFHLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLENBQUE7SUFFN0MsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFO1FBQzlDLE1BQU0sQ0FBQyxPQUFPLEdBQUcscUJBQXFCLENBQUMsR0FBRyxFQUFFLGVBQWUsRUFBRSxXQUFXLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQzVHLE1BQU0sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO0tBQ3hCO0lBRUQsT0FBTyxNQUFNLENBQUE7QUFDZixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJTWVzc2FnZXMsIFZhbGlkYXRpb25zVHlwZSB9IGZyb20gJy4uL21vZGVscy92YWxpZGF0aW9ucy1vcHRpb25zLm1vZGVsJztcclxuaW1wb3J0IHsgVmFsaWRhdGlvblR5cGVzRW51bSB9IGZyb20gJy4uL21vZGVscy92YWxpZGF0aW9ucy10eXBlcy5tb2RlbCc7XHJcbmltcG9ydCB7IGdldEVycm9yTWVzc2FnZUhlbHBlciB9IGZyb20gJy4uL2hlbHBlcnMvZ2V0LWVycm9yLW1lc3NhZ2UuaGVscGVyJztcclxuXHJcbmV4cG9ydCBjb25zdCBtaW5WYWx1ZVZhbGlkYXRpb24gPSAoXHJcbiAgdmFsdWU6IHN0cmluZyxcclxuICB2YWxpZGF0aW9uczogVmFsaWRhdGlvbnNUeXBlLFxyXG4gIGtleTogVmFsaWRhdGlvblR5cGVzRW51bSxcclxuICBpbnZhbGlkTWVzc2FnZXM6IElNZXNzYWdlc1xyXG4pOiB7aXNWYWxpZDogYm9vbGVhbiwgbWVzc2FnZTogc3RyaW5nfSA9PiB7XHJcblxyXG4gIGNvbnN0IHJlc3VsdCA9IHsgaXNWYWxpZDogdHJ1ZSwgbWVzc2FnZTogJycgfVxyXG5cclxuICBpZiAocGFyc2VJbnQodmFsdWUpID4gTnVtYmVyKHZhbGlkYXRpb25zW2tleV0pKSB7XHJcbiAgICByZXN1bHQubWVzc2FnZSA9IGdldEVycm9yTWVzc2FnZUhlbHBlcihrZXksIGludmFsaWRNZXNzYWdlcywgdmFsaWRhdGlvbnMubWVzc2FnZXMsIE51bWJlcih2YWxpZGF0aW9uc1trZXldKSlcclxuICAgIHJlc3VsdC5pc1ZhbGlkID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gcmVzdWx0XHJcbn07XHJcbiJdfQ==
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluLXZhbHVlLnZhbGlkYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9teXJ0YS11aS9zcmMvbGliL3NlcnZpY2VzL21yeC1mb3JtLXZhbGlkYXRvci92YWxpZGF0aW9ucy9taW4tdmFsdWUudmFsaWRhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUU1RSxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxDQUNoQyxLQUFhLEVBQ2IsV0FBNEIsRUFDNUIsR0FBd0IsRUFDeEIsZUFBMEIsRUFDb0IsRUFBRTtJQUVoRCxNQUFNLE1BQU0sR0FBaUQsRUFBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUMsQ0FBQztJQUU1RixJQUFJLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUU7UUFDOUMsTUFBTSxDQUFDLE9BQU8sR0FBRyxxQkFBcUIsQ0FBQyxHQUFHLEVBQUUsZUFBZSxFQUFFLFdBQVcsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDNUcsTUFBTSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7S0FDeEI7SUFFRCxPQUFPLE1BQU0sQ0FBQTtBQUNmLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElNZXNzYWdlcywgVmFsaWRhdGlvbnNUeXBlIH0gZnJvbSAnLi4vbW9kZWxzL3ZhbGlkYXRpb25zLW9wdGlvbnMubW9kZWwnO1xyXG5pbXBvcnQgeyBWYWxpZGF0aW9uVHlwZXNFbnVtIH0gZnJvbSAnLi4vbW9kZWxzL3ZhbGlkYXRpb25zLXR5cGVzLm1vZGVsJztcclxuaW1wb3J0IHsgZ2V0RXJyb3JNZXNzYWdlSGVscGVyIH0gZnJvbSAnLi4vaGVscGVycy9nZXQtZXJyb3ItbWVzc2FnZS5oZWxwZXInO1xyXG5cclxuZXhwb3J0IGNvbnN0IG1pblZhbHVlVmFsaWRhdGlvbiA9IChcclxuICB2YWx1ZTogc3RyaW5nLFxyXG4gIHZhbGlkYXRpb25zOiBWYWxpZGF0aW9uc1R5cGUsXHJcbiAga2V5OiBWYWxpZGF0aW9uVHlwZXNFbnVtLFxyXG4gIGludmFsaWRNZXNzYWdlczogSU1lc3NhZ2VzXHJcbik6IHsgaXNWYWxpZDogYm9vbGVhbiwgbWVzc2FnZTogc3RyaW5nIHwgbnVsbCB9ID0+IHtcclxuXHJcbiAgY29uc3QgcmVzdWx0OiB7IGlzVmFsaWQ6IGJvb2xlYW4sIG1lc3NhZ2U6IHN0cmluZyB8IG51bGwgfSA9IHtpc1ZhbGlkOiB0cnVlLCBtZXNzYWdlOiBudWxsfTtcclxuXHJcbiAgaWYgKHBhcnNlSW50KHZhbHVlKSA+IE51bWJlcih2YWxpZGF0aW9uc1trZXldKSkge1xyXG4gICAgcmVzdWx0Lm1lc3NhZ2UgPSBnZXRFcnJvck1lc3NhZ2VIZWxwZXIoa2V5LCBpbnZhbGlkTWVzc2FnZXMsIHZhbGlkYXRpb25zLm1lc3NhZ2VzLCBOdW1iZXIodmFsaWRhdGlvbnNba2V5XSkpXHJcbiAgICByZXN1bHQuaXNWYWxpZCA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHJlc3VsdFxyXG59O1xyXG4iXX0=
@@ -1,11 +1,11 @@
1
1
  import { getErrorMessageHelper } from '../helpers/get-error-message.helper';
2
2
  export const patternValidation = (value, validations, key, invalidMessages) => {
3
3
  const validation = validations[key];
4
- const result = { isValid: true, message: '' };
4
+ const result = { isValid: true, message: null };
5
5
  if (!validation.test(value)) {
6
6
  result.message = getErrorMessageHelper(key, invalidMessages, validations.messages);
7
7
  result.isValid = false;
8
8
  }
9
9
  return result;
10
10
  };
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0dGVybi52YWxpZGF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9zZXJ2aWNlcy9tcngtZm9ybS12YWxpZGF0b3IvdmFsaWRhdGlvbnMvcGF0dGVybi52YWxpZGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRzVFLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLENBQy9CLEtBQWEsRUFDYixXQUE0QixFQUM1QixHQUF3QixFQUN4QixlQUEwQixFQUNXLEVBQUU7SUFFdkMsTUFBTSxVQUFVLEdBQUcsV0FBVyxDQUFDLEdBQUcsQ0FBVyxDQUFBO0lBQzdDLE1BQU0sTUFBTSxHQUFHLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLENBQUE7SUFFN0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDM0IsTUFBTSxDQUFDLE9BQU8sR0FBRyxxQkFBcUIsQ0FBQyxHQUFHLEVBQUUsZUFBZSxFQUFFLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUNsRixNQUFNLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztLQUN4QjtJQUVELE9BQU8sTUFBTSxDQUFBO0FBQ2YsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVmFsaWRhdGlvblR5cGVzRW51bSB9IGZyb20gJy4uL21vZGVscy92YWxpZGF0aW9ucy10eXBlcy5tb2RlbCc7XHJcbmltcG9ydCB7IGdldEVycm9yTWVzc2FnZUhlbHBlciB9IGZyb20gJy4uL2hlbHBlcnMvZ2V0LWVycm9yLW1lc3NhZ2UuaGVscGVyJztcclxuaW1wb3J0IHsgSU1lc3NhZ2VzLCBWYWxpZGF0aW9uc1R5cGUgfSBmcm9tICcuLi9tb2RlbHMvdmFsaWRhdGlvbnMtb3B0aW9ucy5tb2RlbCc7XHJcblxyXG5leHBvcnQgY29uc3QgcGF0dGVyblZhbGlkYXRpb24gPSAoXHJcbiAgdmFsdWU6IHN0cmluZyxcclxuICB2YWxpZGF0aW9uczogVmFsaWRhdGlvbnNUeXBlLFxyXG4gIGtleTogVmFsaWRhdGlvblR5cGVzRW51bSxcclxuICBpbnZhbGlkTWVzc2FnZXM6IElNZXNzYWdlc1xyXG4pOiB7aXNWYWxpZDogYm9vbGVhbiwgbWVzc2FnZTogc3RyaW5nfSA9PiB7XHJcblxyXG4gIGNvbnN0IHZhbGlkYXRpb24gPSB2YWxpZGF0aW9uc1trZXldIGFzIFJlZ0V4cFxyXG4gIGNvbnN0IHJlc3VsdCA9IHsgaXNWYWxpZDogdHJ1ZSwgbWVzc2FnZTogJycgfVxyXG5cclxuICBpZiAoIXZhbGlkYXRpb24udGVzdCh2YWx1ZSkpIHtcclxuICAgIHJlc3VsdC5tZXNzYWdlID0gZ2V0RXJyb3JNZXNzYWdlSGVscGVyKGtleSwgaW52YWxpZE1lc3NhZ2VzLCB2YWxpZGF0aW9ucy5tZXNzYWdlcylcclxuICAgIHJlc3VsdC5pc1ZhbGlkID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gcmVzdWx0XHJcbn07XHJcbiJdfQ==
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0dGVybi52YWxpZGF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXlydGEtdWkvc3JjL2xpYi9zZXJ2aWNlcy9tcngtZm9ybS12YWxpZGF0b3IvdmFsaWRhdGlvbnMvcGF0dGVybi52YWxpZGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRzVFLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLENBQy9CLEtBQWEsRUFDYixXQUE0QixFQUM1QixHQUF3QixFQUN4QixlQUEwQixFQUNvQixFQUFFO0lBRWhELE1BQU0sVUFBVSxHQUFHLFdBQVcsQ0FBQyxHQUFHLENBQVcsQ0FBQTtJQUM3QyxNQUFNLE1BQU0sR0FBaUQsRUFBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUMsQ0FBQztJQUU1RixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRTtRQUMzQixNQUFNLENBQUMsT0FBTyxHQUFHLHFCQUFxQixDQUFDLEdBQUcsRUFBRSxlQUFlLEVBQUUsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBQ2xGLE1BQU0sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO0tBQ3hCO0lBRUQsT0FBTyxNQUFNLENBQUE7QUFDZixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWYWxpZGF0aW9uVHlwZXNFbnVtIH0gZnJvbSAnLi4vbW9kZWxzL3ZhbGlkYXRpb25zLXR5cGVzLm1vZGVsJztcclxuaW1wb3J0IHsgZ2V0RXJyb3JNZXNzYWdlSGVscGVyIH0gZnJvbSAnLi4vaGVscGVycy9nZXQtZXJyb3ItbWVzc2FnZS5oZWxwZXInO1xyXG5pbXBvcnQgeyBJTWVzc2FnZXMsIFZhbGlkYXRpb25zVHlwZSB9IGZyb20gJy4uL21vZGVscy92YWxpZGF0aW9ucy1vcHRpb25zLm1vZGVsJztcclxuXHJcbmV4cG9ydCBjb25zdCBwYXR0ZXJuVmFsaWRhdGlvbiA9IChcclxuICB2YWx1ZTogc3RyaW5nLFxyXG4gIHZhbGlkYXRpb25zOiBWYWxpZGF0aW9uc1R5cGUsXHJcbiAga2V5OiBWYWxpZGF0aW9uVHlwZXNFbnVtLFxyXG4gIGludmFsaWRNZXNzYWdlczogSU1lc3NhZ2VzXHJcbik6IHsgaXNWYWxpZDogYm9vbGVhbiwgbWVzc2FnZTogc3RyaW5nIHwgbnVsbCB9ID0+IHtcclxuXHJcbiAgY29uc3QgdmFsaWRhdGlvbiA9IHZhbGlkYXRpb25zW2tleV0gYXMgUmVnRXhwXHJcbiAgY29uc3QgcmVzdWx0OiB7IGlzVmFsaWQ6IGJvb2xlYW4sIG1lc3NhZ2U6IHN0cmluZyB8IG51bGwgfSA9IHtpc1ZhbGlkOiB0cnVlLCBtZXNzYWdlOiBudWxsfTtcclxuXHJcbiAgaWYgKCF2YWxpZGF0aW9uLnRlc3QodmFsdWUpKSB7XHJcbiAgICByZXN1bHQubWVzc2FnZSA9IGdldEVycm9yTWVzc2FnZUhlbHBlcihrZXksIGludmFsaWRNZXNzYWdlcywgdmFsaWRhdGlvbnMubWVzc2FnZXMpXHJcbiAgICByZXN1bHQuaXNWYWxpZCA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHJlc3VsdFxyXG59O1xyXG4iXX0=
@@ -1,6 +1,6 @@
1
1
  import { getErrorMessageHelper } from '../helpers/get-error-message.helper';
2
2
  export const requiredValidation = (value, validations, key, invalidMessages) => {
3
- const result = { isValid: true, message: '' };
3
+ const result = { isValid: true, message: null };
4
4
  if (Array.isArray(value) && validations.type !== 'single') {
5
5
  value.forEach((field, idx) => {
6
6
  if ((field === '' || field === null || field === undefined)) {
@@ -19,4 +19,4 @@ export const requiredValidation = (value, validations, key, invalidMessages) =>
19
19
  }
20
20
  return result;
21
21
  };
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWlyZWQudmFsaWRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvc2VydmljZXMvbXJ4LWZvcm0tdmFsaWRhdG9yL3ZhbGlkYXRpb25zL3JlcXVpcmVkLnZhbGlkYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFNUUsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsQ0FDaEMsS0FBd0IsRUFDeEIsV0FBNEIsRUFDNUIsR0FBd0IsRUFDeEIsZUFBMEIsRUFDVyxFQUFFO0lBRXZDLE1BQU0sTUFBTSxHQUFHLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLENBQUE7SUFFN0MsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLFdBQVcsQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFO1FBRXpELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUU7WUFDM0IsSUFBSSxDQUFDLEtBQUssS0FBSyxFQUFFLElBQUksS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssU0FBUyxDQUFDLEVBQUU7Z0JBQzNELE1BQU0sQ0FBQyxPQUFPLEdBQUcscUJBQXFCLENBQUMsR0FBRyxFQUFFLGVBQWUsRUFBRSxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUE7Z0JBQ2xGLE1BQU0sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO2FBQ3hCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7S0FFSjtTQUFNLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxXQUFXLENBQUMsSUFBSSxLQUFLLFFBQVEsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtRQUV0RixNQUFNLENBQUMsT0FBTyxHQUFHLHFCQUFxQixDQUFDLEdBQUcsRUFBRSxlQUFlLEVBQUUsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBQ2xGLE1BQU0sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO0tBRXhCO1NBQU0sSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxPQUFPLElBQUksS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssU0FBUyxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxhQUFhLEVBQUU7UUFFeEksTUFBTSxDQUFDLE9BQU8sR0FBRyxxQkFBcUIsQ0FBQyxHQUFHLEVBQUUsZUFBZSxFQUFFLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUNsRixNQUFNLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztLQUV4QjtJQUVELE9BQU8sTUFBTSxDQUFBO0FBQ2YsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSU1lc3NhZ2VzLCBWYWxpZGF0aW9uc1R5cGUgfSBmcm9tICcuLi9tb2RlbHMvdmFsaWRhdGlvbnMtb3B0aW9ucy5tb2RlbCc7XHJcbmltcG9ydCB7IFZhbGlkYXRpb25UeXBlc0VudW0gfSBmcm9tICcuLi9tb2RlbHMvdmFsaWRhdGlvbnMtdHlwZXMubW9kZWwnO1xyXG5pbXBvcnQgeyBnZXRFcnJvck1lc3NhZ2VIZWxwZXIgfSBmcm9tICcuLi9oZWxwZXJzL2dldC1lcnJvci1tZXNzYWdlLmhlbHBlcic7XHJcblxyXG5leHBvcnQgY29uc3QgcmVxdWlyZWRWYWxpZGF0aW9uID0gKFxyXG4gIHZhbHVlOiBzdHJpbmcgfCBzdHJpbmdbXSxcclxuICB2YWxpZGF0aW9uczogVmFsaWRhdGlvbnNUeXBlLFxyXG4gIGtleTogVmFsaWRhdGlvblR5cGVzRW51bSxcclxuICBpbnZhbGlkTWVzc2FnZXM6IElNZXNzYWdlc1xyXG4pOiB7aXNWYWxpZDogYm9vbGVhbiwgbWVzc2FnZTogc3RyaW5nfSA9PiB7XHJcblxyXG4gIGNvbnN0IHJlc3VsdCA9IHsgaXNWYWxpZDogdHJ1ZSwgbWVzc2FnZTogJycgfVxyXG5cclxuICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkgJiYgdmFsaWRhdGlvbnMudHlwZSAhPT0gJ3NpbmdsZScpIHtcclxuXHJcbiAgICB2YWx1ZS5mb3JFYWNoKChmaWVsZCwgaWR4KSA9PiB7XHJcbiAgICAgIGlmICgoZmllbGQgPT09ICcnIHx8IGZpZWxkID09PSBudWxsIHx8IGZpZWxkID09PSB1bmRlZmluZWQpKSB7XHJcbiAgICAgICAgcmVzdWx0Lm1lc3NhZ2UgPSBnZXRFcnJvck1lc3NhZ2VIZWxwZXIoa2V5LCBpbnZhbGlkTWVzc2FnZXMsIHZhbGlkYXRpb25zLm1lc3NhZ2VzKVxyXG4gICAgICAgIHJlc3VsdC5pc1ZhbGlkID0gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpICYmIHZhbGlkYXRpb25zLnR5cGUgPT09ICdzaW5nbGUnICYmIHZhbHVlLmxlbmd0aCA9PT0gMCkge1xyXG5cclxuICAgIHJlc3VsdC5tZXNzYWdlID0gZ2V0RXJyb3JNZXNzYWdlSGVscGVyKGtleSwgaW52YWxpZE1lc3NhZ2VzLCB2YWxpZGF0aW9ucy5tZXNzYWdlcylcclxuICAgIHJlc3VsdC5pc1ZhbGlkID0gZmFsc2U7XHJcblxyXG4gIH0gZWxzZSBpZiAoU3RyaW5nKHZhbHVlKSA9PT0gJycgfHwgU3RyaW5nKHZhbHVlKSA9PT0gJ2ZhbHNlJyB8fCB2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gdW5kZWZpbmVkIHx8IFN0cmluZyh2YWx1ZSkgPT09ICc8cD48YnI+PC9wPicpIHtcclxuXHJcbiAgICByZXN1bHQubWVzc2FnZSA9IGdldEVycm9yTWVzc2FnZUhlbHBlcihrZXksIGludmFsaWRNZXNzYWdlcywgdmFsaWRhdGlvbnMubWVzc2FnZXMpXHJcbiAgICByZXN1bHQuaXNWYWxpZCA9IGZhbHNlO1xyXG5cclxuICB9XHJcblxyXG4gIHJldHVybiByZXN1bHRcclxufTtcclxuIl19
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWlyZWQudmFsaWRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL215cnRhLXVpL3NyYy9saWIvc2VydmljZXMvbXJ4LWZvcm0tdmFsaWRhdG9yL3ZhbGlkYXRpb25zL3JlcXVpcmVkLnZhbGlkYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFNUUsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsQ0FDaEMsS0FBd0IsRUFDeEIsV0FBNEIsRUFDNUIsR0FBd0IsRUFDeEIsZUFBMEIsRUFDb0IsRUFBRTtJQUVoRCxNQUFNLE1BQU0sR0FBaUQsRUFBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUMsQ0FBQztJQUU1RixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksV0FBVyxDQUFDLElBQUksS0FBSyxRQUFRLEVBQUU7UUFFekQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsRUFBRTtZQUMzQixJQUFJLENBQUMsS0FBSyxLQUFLLEVBQUUsSUFBSSxLQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssS0FBSyxTQUFTLENBQUMsRUFBRTtnQkFDM0QsTUFBTSxDQUFDLE9BQU8sR0FBRyxxQkFBcUIsQ0FBQyxHQUFHLEVBQUUsZUFBZSxFQUFFLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDbkYsTUFBTSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7YUFDeEI7UUFDSCxDQUFDLENBQUMsQ0FBQztLQUVKO1NBQU0sSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLFdBQVcsQ0FBQyxJQUFJLEtBQUssUUFBUSxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1FBRXRGLE1BQU0sQ0FBQyxPQUFPLEdBQUcscUJBQXFCLENBQUMsR0FBRyxFQUFFLGVBQWUsRUFBRSxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDbkYsTUFBTSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7S0FFeEI7U0FBTSxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLE9BQU8sSUFBSSxLQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssS0FBSyxTQUFTLElBQUksTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLGFBQWEsRUFBRTtRQUV4SSxNQUFNLENBQUMsT0FBTyxHQUFHLHFCQUFxQixDQUFDLEdBQUcsRUFBRSxlQUFlLEVBQUUsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ25GLE1BQU0sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO0tBRXhCO0lBRUQsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSU1lc3NhZ2VzLCBWYWxpZGF0aW9uc1R5cGUgfSBmcm9tICcuLi9tb2RlbHMvdmFsaWRhdGlvbnMtb3B0aW9ucy5tb2RlbCc7XHJcbmltcG9ydCB7IFZhbGlkYXRpb25UeXBlc0VudW0gfSBmcm9tICcuLi9tb2RlbHMvdmFsaWRhdGlvbnMtdHlwZXMubW9kZWwnO1xyXG5pbXBvcnQgeyBnZXRFcnJvck1lc3NhZ2VIZWxwZXIgfSBmcm9tICcuLi9oZWxwZXJzL2dldC1lcnJvci1tZXNzYWdlLmhlbHBlcic7XHJcblxyXG5leHBvcnQgY29uc3QgcmVxdWlyZWRWYWxpZGF0aW9uID0gKFxyXG4gIHZhbHVlOiBzdHJpbmcgfCBzdHJpbmdbXSxcclxuICB2YWxpZGF0aW9uczogVmFsaWRhdGlvbnNUeXBlLFxyXG4gIGtleTogVmFsaWRhdGlvblR5cGVzRW51bSxcclxuICBpbnZhbGlkTWVzc2FnZXM6IElNZXNzYWdlc1xyXG4pOiB7IGlzVmFsaWQ6IGJvb2xlYW4sIG1lc3NhZ2U6IHN0cmluZyB8IG51bGwgfSA9PiB7XHJcblxyXG4gIGNvbnN0IHJlc3VsdDogeyBpc1ZhbGlkOiBib29sZWFuLCBtZXNzYWdlOiBzdHJpbmcgfCBudWxsIH0gPSB7aXNWYWxpZDogdHJ1ZSwgbWVzc2FnZTogbnVsbH07XHJcblxyXG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSAmJiB2YWxpZGF0aW9ucy50eXBlICE9PSAnc2luZ2xlJykge1xyXG5cclxuICAgIHZhbHVlLmZvckVhY2goKGZpZWxkLCBpZHgpID0+IHtcclxuICAgICAgaWYgKChmaWVsZCA9PT0gJycgfHwgZmllbGQgPT09IG51bGwgfHwgZmllbGQgPT09IHVuZGVmaW5lZCkpIHtcclxuICAgICAgICByZXN1bHQubWVzc2FnZSA9IGdldEVycm9yTWVzc2FnZUhlbHBlcihrZXksIGludmFsaWRNZXNzYWdlcywgdmFsaWRhdGlvbnMubWVzc2FnZXMpO1xyXG4gICAgICAgIHJlc3VsdC5pc1ZhbGlkID0gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpICYmIHZhbGlkYXRpb25zLnR5cGUgPT09ICdzaW5nbGUnICYmIHZhbHVlLmxlbmd0aCA9PT0gMCkge1xyXG5cclxuICAgIHJlc3VsdC5tZXNzYWdlID0gZ2V0RXJyb3JNZXNzYWdlSGVscGVyKGtleSwgaW52YWxpZE1lc3NhZ2VzLCB2YWxpZGF0aW9ucy5tZXNzYWdlcyk7XHJcbiAgICByZXN1bHQuaXNWYWxpZCA9IGZhbHNlO1xyXG5cclxuICB9IGVsc2UgaWYgKFN0cmluZyh2YWx1ZSkgPT09ICcnIHx8IFN0cmluZyh2YWx1ZSkgPT09ICdmYWxzZScgfHwgdmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09IHVuZGVmaW5lZCB8fCBTdHJpbmcodmFsdWUpID09PSAnPHA+PGJyPjwvcD4nKSB7XHJcblxyXG4gICAgcmVzdWx0Lm1lc3NhZ2UgPSBnZXRFcnJvck1lc3NhZ2VIZWxwZXIoa2V5LCBpbnZhbGlkTWVzc2FnZXMsIHZhbGlkYXRpb25zLm1lc3NhZ2VzKTtcclxuICAgIHJlc3VsdC5pc1ZhbGlkID0gZmFsc2U7XHJcblxyXG4gIH1cclxuXHJcbiAgcmV0dXJuIHJlc3VsdDtcclxufTtcclxuIl19