@sd-angular/core 1.2.45 → 1.2.46
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/sd-angular-core-input-number.umd.js +1 -2
- package/bundles/sd-angular-core-input-number.umd.js.map +1 -1
- package/bundles/sd-angular-core-input-number.umd.min.js +1 -1
- package/bundles/sd-angular-core-input-number.umd.min.js.map +1 -1
- package/esm2015/input-number/src/lib/input-number.component.js +2 -3
- package/fesm2015/sd-angular-core-input-number.js +1 -2
- package/fesm2015/sd-angular-core-input-number.js.map +1 -1
- package/package.json +1 -1
- package/{sd-angular-core-1.2.45.tgz → sd-angular-core-1.2.46.tgz} +0 -0
|
@@ -429,7 +429,6 @@
|
|
|
429
429
|
__classPrivateFieldGet(_this, _checkValue).call(_this, event, event.key);
|
|
430
430
|
};
|
|
431
431
|
_checkValue.set(this, function (event, nextKey) {
|
|
432
|
-
console.log(event, nextKey);
|
|
433
432
|
var current = event.target.value;
|
|
434
433
|
// if(this.#max === +current.toString().replace(/\./g, '').replace(/,/g, '.')){
|
|
435
434
|
// event.preventDefault();
|
|
@@ -680,7 +679,7 @@
|
|
|
680
679
|
return;
|
|
681
680
|
}
|
|
682
681
|
var value = __classPrivateFieldGet(_this, _toNumber).call(_this, val);
|
|
683
|
-
if (
|
|
682
|
+
if (isNaN(val)) {
|
|
684
683
|
if ((__classPrivateFieldGet(_this, _min) || __classPrivateFieldGet(_this, _min) === 0) && value < __classPrivateFieldGet(_this, _min)) {
|
|
685
684
|
value = __classPrivateFieldGet(_this, _min);
|
|
686
685
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sd-angular-core-input-number.umd.js","sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/input-number/src/lib/input-number.component.ts","../../../../projects/sd-core/input-number/src/lib/input-number.module.ts","../../../../projects/sd-core/input-number/src/public-api.ts","../../../../projects/sd-core/input-number/sd-angular-core-input-number.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import {\r\n Component,\r\n Input,\r\n ViewChild,\r\n Output,\r\n EventEmitter,\r\n ChangeDetectorRef,\r\n OnDestroy,\r\n AfterViewInit,\r\n ElementRef,\r\n OnInit,\r\n ContentChild,\r\n ChangeDetectionStrategy,\r\n HostListener,\r\n Inject,\r\n SimpleChanges,\r\n Optional\r\n} from '@angular/core';\r\nimport { AbstractControl, NgForm, ValidatorFn, Validators, AsyncValidatorFn, FormGroup, FormControl, FormGroupDirective } from '@angular/forms';\r\nimport * as uuid from 'uuid';\r\nimport { Subscription } from 'rxjs';\r\nimport { SdFormControl, SdSuffixDirective } from '@sd-angular/core/common';\r\nimport { SdViewDefDirective } from '@sd-angular/core/common';\r\nimport { FORM_CONFIG } from '@sd-angular/core/common';\r\nimport { IFormConfiguration } from '@sd-angular/core/common';\r\nimport { MatFormFieldAppearance } from '@angular/material/form-field';\r\nimport { ErrorStateMatcher } from '@angular/material/core';\r\nimport { SdLabelDefDirective } from '@sd-angular/core/common';\r\nclass SdInputNumberErrotStateMatcher implements ErrorStateMatcher {\r\n constructor(private formControl: FormControl) { }\r\n isErrorState(control: FormControl | null, form: FormGroupDirective | NgForm | null): boolean {\r\n const isSubmitted = form && form.submitted;\r\n return !!(this.formControl?.invalid && (this.formControl?.dirty || this.formControl?.touched || isSubmitted));\r\n }\r\n}\r\n@Component({\r\n selector: 'sd-input-number',\r\n templateUrl: './input-number.component.html',\r\n styleUrls: ['./input-number.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class SdInputNumber implements OnDestroy, OnInit, AfterViewInit {\r\n id = `I${uuid.v4()}`;\r\n #name = uuid.v4();\r\n #regexDecimal: string\r\n @Input() set name(val: string) {\r\n if (val) {\r\n this.#name = val;\r\n }\r\n }\r\n @Input() size: 'sm' | 'lg';\r\n #form: FormGroup;\r\n @Input() set form(val: NgForm | FormGroup) {\r\n if (val) {\r\n if (val instanceof NgForm) {\r\n this.#form = val.form;\r\n } else {\r\n this.#form = val;\r\n }\r\n }\r\n }\r\n @Input() label: string;\r\n @Input() placeholder: string;\r\n disableErrorMessage = false;\r\n @Input('disableErrorMessage') set _disableErrorMessage(val: boolean | '') {\r\n this.disableErrorMessage = (val === '') || val;\r\n }\r\n #blurOnEnter = false;\r\n @Input('blurOnEnter') set _blurOnEnter(val: boolean | '') {\r\n this.#blurOnEnter = (val === '') || val;\r\n }\r\n @Input() set model(value: any) {\r\n if (this.formControl.value !== value) {\r\n console.log(value);\r\n this.formControl.setValue(value, {\r\n emitEvent: false\r\n });\r\n if (value || value === 0) {\r\n const val = value.toString().replace(/\\./g, ',');\r\n this.inputControl.setValue(this.#getValueWithFormat(val), {\r\n emitEvent: false\r\n });\r\n } else {\r\n this.inputControl.setValue('', {\r\n emitEvent: false\r\n });\r\n }\r\n }\r\n }\r\n @Output() modelChange = new EventEmitter();\r\n\r\n // Validator\r\n isRequired = false;\r\n @Input() set required(val: boolean | '') {\r\n this.isRequired = (val === '') || val;\r\n this.#updateValidator();\r\n }\r\n @Input() type: 'negative' | 'positive'; //negative: chỉ nhập số âm, positive: chỉ số dương\r\n @Input() precision: number = 3; //số chữ số thập phân \r\n\r\n isReadonly = false;\r\n @Input() set readonly(val: boolean | '') {\r\n this.isReadonly = (val === '') || val;\r\n }\r\n\r\n #min: number;\r\n @Input() set min(val: number) {\r\n this.#min = val;\r\n }\r\n\r\n #max: number;\r\n @Input() set max(val: number) {\r\n this.#max = val;\r\n }\r\n\r\n #validator: (value: any) => string | Promise<string>;\r\n @Input() set validator(validator: (value: any) => string | Promise<string>) {\r\n this.#validator = validator;\r\n this.#updateValidator();\r\n }\r\n\r\n @Input() set disabled(val: boolean | '') {\r\n val = (val === '') || val;\r\n if (val) {\r\n this.inputControl.disable();\r\n this.formControl.disable();\r\n } else {\r\n this.inputControl.enable();\r\n this.formControl.enable();\r\n }\r\n }\r\n @Input() appearance: MatFormFieldAppearance;\r\n\r\n @Output() sdChange = new EventEmitter<any>();\r\n @Output() sdFocus = new EventEmitter<any>();\r\n @Output() sdFocusForceBlur = new EventEmitter<any>();\r\n @Output() keyupEnter = new EventEmitter();\r\n\r\n @ViewChild('control') control: ElementRef;\r\n formControl = new SdFormControl();\r\n inputControl = new SdFormControl();\r\n #subscription = new Subscription();\r\n matcher = new SdInputNumberErrotStateMatcher(this.formControl);\r\n\r\n @ContentChild(SdViewDefDirective) sdView: SdViewDefDirective;\r\n @ContentChild(SdSuffixDirective) sdSuffix: SdSuffixDirective;\r\n @ContentChild(SdLabelDefDirective) sdLabelDef: SdLabelDefDirective;\r\n isFocused = false;\r\n constructor(\r\n private ref: ChangeDetectorRef,\r\n @Inject(FORM_CONFIG) @Optional() private formConfig: IFormConfiguration) {\r\n }\r\n\r\n ngOnInit() {\r\n this.appearance = this.appearance || this.formConfig?.appearance;\r\n this.#subscription.add(this.inputControl.touchChanges.subscribe(() => {\r\n this.formControl.markAsTouched();\r\n this.ref.markForCheck();\r\n }));\r\n this.#subscription.add(this.formControl.sdChanges.subscribe(() => {\r\n this.ref.markForCheck();\r\n }));\r\n this.#subscription.add(this.inputControl.sdChanges.subscribe(() => {\r\n this.ref.markForCheck();\r\n }));\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (changes?.type?.previousValue != changes?.type?.currentValue || changes?.precision?.previousValue != changes?.precision?.currentValue) {\r\n this.#regexDecimal = `(([0-9]+(\\\\.[0-9])?)+(\\\\,[0-9]{0,${this.precision}}){0,1})$`;\r\n if (this.precision == 0) {\r\n this.#regexDecimal = `(([0-9]+(\\\\.[0-9])?)+)$`;\r\n }\r\n if (this.type == 'negative') {\r\n this.#regexDecimal = `[-]${this.#regexDecimal}`;\r\n }\r\n if (!this.type) {\r\n this.#regexDecimal = `[-]?${this.#regexDecimal}`;\r\n }\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.#subscription.add(this.inputControl.valueChanges.subscribe(() => {\r\n const val = this.inputControl.value;\r\n if (!val) {\r\n this.#onChange(undefined);\r\n return;\r\n }\r\n let value = this.#toNumber(val);\r\n if (value !== NaN) {\r\n if ((this.#min || this.#min === 0) && value < this.#min) {\r\n value = this.#min;\r\n }\r\n if ((this.#max || this.#max === 0) && value > this.#max) {\r\n value = this.#max;\r\n }\r\n this.inputControl.setValue(Number.toVNCurrency(value), {\r\n emitEvent: false\r\n });\r\n this.#onChange(value);\r\n }\r\n }));\r\n this.#form?.addControl(this.#name, this.formControl);\r\n this.ref.detectChanges();\r\n }\r\n\r\n #getValueWithFormat = (value: string) => {\r\n const arrayNext = value.split(',');\r\n if (arrayNext.length >= 2) {\r\n return `${this.#formatNumber(arrayNext[0])},${arrayNext[1]}`;\r\n }\r\n return this.#formatNumber(value);\r\n }\r\n\r\n #formatNumber = (text: any) => {\r\n return Number.toVNCurrency((text?.toString() || '').replace(/\\./g, ''));\r\n // const arrs: string[] = (text?.toString() || '').replace(/\\./g, '').split('');\r\n // return arrs.reverse().reduce((acc, num, index) => {\r\n // return num + (num !== '-' && index && !(index % 3) ? '.' : '') + acc;\r\n // }, '');\r\n }\r\n\r\n #toNumber = (text: any) => +((text?.toString() || '').replace(/\\./g, '').replace(/,/g, '.'));\r\n\r\n ngOnDestroy() {\r\n this.#form?.removeControl(this.#name);\r\n this.#subscription.unsubscribe();\r\n }\r\n\r\n reValidate = () => {\r\n this.formControl.updateValueAndValidity();\r\n }\r\n\r\n #updateValidator = () => {\r\n this.formControl.clearValidators();\r\n this.formControl.clearAsyncValidators();\r\n const validators: ValidatorFn[] = [];\r\n const asyncValidators: AsyncValidatorFn[] = [];\r\n if (this.isRequired) {\r\n validators.push(Validators.required);\r\n }\r\n if (this.#validator) {\r\n asyncValidators.push(this.#customValidator(this.#validator));\r\n }\r\n this.formControl.setValidators(validators);\r\n this.formControl.setAsyncValidators(asyncValidators);\r\n this.formControl.updateValueAndValidity();\r\n }\r\n\r\n #onChange = (value: any) => {\r\n this.formControl.setValue(value);\r\n this.modelChange.emit(value);\r\n this.sdChange.emit(value);\r\n }\r\n\r\n onKeyupEnter = () => {\r\n const val: string = (this.inputControl.value ?? '').toString();\r\n if (val.length > val.trim().length) {\r\n this.inputControl.setValue(val.trim());\r\n }\r\n this.keyupEnter.emit(this.inputControl.value);\r\n if (this.#blurOnEnter) {\r\n this.blur();\r\n }\r\n }\r\n\r\n onKeydown = (event: KeyboardEvent) => {\r\n if (event.ctrlKey && event.key == 'v') {\r\n this.#checkValue(event, '');\r\n return;\r\n }\r\n const key = event.keyCode || event.charCode;\r\n if (key == 8 || key == 46 || key == 37 || key == 39 || key == 35 || key == 36 || key == 9) {\r\n return;\r\n }\r\n if (event.ctrlKey && (event.key == 'c' || event.key == 'x' || event.key == 'a')) {\r\n return;\r\n }\r\n if (event.shiftKey && key == 9) {\r\n return;\r\n }\r\n this.#checkValue(event, event.key);\r\n }\r\n\r\n onPaste(event: ClipboardEvent) {\r\n const nextKey = event.clipboardData.getData('text');\r\n this.#checkValue(event, nextKey)\r\n }\r\n\r\n #checkValue = (event, nextKey) => {\r\n console.log(event, nextKey);\r\n const current: string = event.target.value;\r\n // if(this.#max === +current.toString().replace(/\\./g, '').replace(/,/g, '.')){\r\n // event.preventDefault();\r\n // return;\r\n // }\r\n const curval_arr = current.split(\"\");\r\n curval_arr.splice(event.target.selectionStart, (event.target.selectionEnd - event.target.selectionStart), nextKey);\r\n const newval = curval_arr.join(\"\");\r\n if (this.type !== 'positive' && newval === '-') {\r\n return;\r\n }\r\n const regExp: RegExp = new RegExp(`^${this.#regexDecimal}`, 'g');\r\n if (newval && !String(newval).match(regExp)) {\r\n event.preventDefault();\r\n return;\r\n }\r\n const value = (newval.toString().replace(/\\./g, '').replace(/,/g, '.'));\r\n if ((this.#max || this.#max === 0) && +value > this.#max) {\r\n setTimeout(() => {\r\n this.inputControl.setValue(this.#getValueWithFormat(this.#max.toString().replace(/\\./g, ',')));\r\n }, 10);\r\n event.preventDefault();\r\n }\r\n }\r\n\r\n onFocus = () => {\r\n this.isFocused = true;\r\n this.sdFocus.emit();\r\n if (this.sdFocusForceBlur.observers?.length > 0) {\r\n this.blur();\r\n this.sdFocusForceBlur.emit();\r\n }\r\n }\r\n\r\n onBlur = () => {\r\n this.isFocused = false;\r\n let val: string = (this.inputControl.value ?? '').toString();\r\n const arrayValue = val.split(',');\r\n if (arrayValue.length >= 2 && arrayValue[1] == '') {\r\n this.inputControl.setValue(this.#formatNumber(arrayValue[0]));\r\n return;\r\n }\r\n if (val.length > val.trim().length) {\r\n this.inputControl.setValue(val.trim());\r\n }\r\n }\r\n\r\n onClick = () => {\r\n if (this.sdView?.templateRef) {\r\n if (!this.formControl.disabled && !this.isFocused) {\r\n this.focus();\r\n }\r\n }\r\n }\r\n\r\n blur = () => {\r\n this.isFocused = false;\r\n this.control?.nativeElement?.blur();\r\n }\r\n\r\n focus = () => {\r\n this.isFocused = true;\r\n setTimeout(() => {\r\n this.control?.nativeElement?.focus();\r\n }, 100);\r\n }\r\n\r\n #customValidator = (func: (value: any) => string | Promise<string>): AsyncValidatorFn => {\r\n return async (c: AbstractControl): Promise<{ [key: string]: any } | null> => {\r\n const value = c.value || null;\r\n if (func && typeof (func) === 'function') {\r\n const result = func(value);\r\n if (result instanceof Promise) {\r\n const message = await result;\r\n if (message) {\r\n return {\r\n customValidator: message\r\n };\r\n }\r\n return null;\r\n }\r\n if (result) {\r\n return {\r\n customValidator: result\r\n };\r\n }\r\n return null;\r\n }\r\n return null;\r\n };\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdInputNumber } from './input-number.component';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { SdTranslateModule } from '@sd-angular/core/translate';\r\nimport { SdCommonModule } from '@sd-angular/core/common';\r\nimport { SdPopoverModule } from '@sd-angular/core/popover';\r\n\r\n@NgModule({\r\n declarations: [SdInputNumber],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatIconModule,\r\n MatTooltipModule,\r\n SdTranslateModule,\r\n SdCommonModule,\r\n SdPopoverModule,\r\n MatButtonModule\r\n ],\r\n exports: [\r\n SdInputNumber\r\n ]\r\n})\r\nexport class SdInputNumberModule { }\r\n","/*\r\n * Public API Surface of superdev-angular-core\r\n */\r\n\r\nexport * from './lib/input-number.module';\r\nexport * from './lib/input-number.component';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["uuid.v4","EventEmitter","SdFormControl","Subscription","Validators","NgForm","Component","ChangeDetectionStrategy","ChangeDetectorRef","Inject","FORM_CONFIG","Optional","Input","Output","ViewChild","ContentChild","SdViewDefDirective","SdSuffixDirective","SdLabelDefDirective","NgModule","CommonModule","FormsModule","ReactiveFormsModule","MatFormFieldModule","MatInputModule","MatIconModule","MatTooltipModule","SdTranslateModule","SdCommonModule","SdPopoverModule","MatButtonModule"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sd-angular-core-input-number.umd.js","sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/input-number/src/lib/input-number.component.ts","../../../../projects/sd-core/input-number/src/lib/input-number.module.ts","../../../../projects/sd-core/input-number/src/public-api.ts","../../../../projects/sd-core/input-number/sd-angular-core-input-number.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import {\r\n Component,\r\n Input,\r\n ViewChild,\r\n Output,\r\n EventEmitter,\r\n ChangeDetectorRef,\r\n OnDestroy,\r\n AfterViewInit,\r\n ElementRef,\r\n OnInit,\r\n ContentChild,\r\n ChangeDetectionStrategy,\r\n HostListener,\r\n Inject,\r\n SimpleChanges,\r\n Optional\r\n} from '@angular/core';\r\nimport { AbstractControl, NgForm, ValidatorFn, Validators, AsyncValidatorFn, FormGroup, FormControl, FormGroupDirective } from '@angular/forms';\r\nimport * as uuid from 'uuid';\r\nimport { Subscription } from 'rxjs';\r\nimport { SdFormControl, SdSuffixDirective } from '@sd-angular/core/common';\r\nimport { SdViewDefDirective } from '@sd-angular/core/common';\r\nimport { FORM_CONFIG } from '@sd-angular/core/common';\r\nimport { IFormConfiguration } from '@sd-angular/core/common';\r\nimport { MatFormFieldAppearance } from '@angular/material/form-field';\r\nimport { ErrorStateMatcher } from '@angular/material/core';\r\nimport { SdLabelDefDirective } from '@sd-angular/core/common';\r\nclass SdInputNumberErrotStateMatcher implements ErrorStateMatcher {\r\n constructor(private formControl: FormControl) { }\r\n isErrorState(control: FormControl | null, form: FormGroupDirective | NgForm | null): boolean {\r\n const isSubmitted = form && form.submitted;\r\n return !!(this.formControl?.invalid && (this.formControl?.dirty || this.formControl?.touched || isSubmitted));\r\n }\r\n}\r\n@Component({\r\n selector: 'sd-input-number',\r\n templateUrl: './input-number.component.html',\r\n styleUrls: ['./input-number.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class SdInputNumber implements OnDestroy, OnInit, AfterViewInit {\r\n id = `I${uuid.v4()}`;\r\n #name = uuid.v4();\r\n #regexDecimal: string\r\n @Input() set name(val: string) {\r\n if (val) {\r\n this.#name = val;\r\n }\r\n }\r\n @Input() size: 'sm' | 'lg';\r\n #form: FormGroup;\r\n @Input() set form(val: NgForm | FormGroup) {\r\n if (val) {\r\n if (val instanceof NgForm) {\r\n this.#form = val.form;\r\n } else {\r\n this.#form = val;\r\n }\r\n }\r\n }\r\n @Input() label: string;\r\n @Input() placeholder: string;\r\n disableErrorMessage = false;\r\n @Input('disableErrorMessage') set _disableErrorMessage(val: boolean | '') {\r\n this.disableErrorMessage = (val === '') || val;\r\n }\r\n #blurOnEnter = false;\r\n @Input('blurOnEnter') set _blurOnEnter(val: boolean | '') {\r\n this.#blurOnEnter = (val === '') || val;\r\n }\r\n @Input() set model(value: any) {\r\n if (this.formControl.value !== value) {\r\n console.log(value);\r\n this.formControl.setValue(value, {\r\n emitEvent: false\r\n });\r\n if (value || value === 0) {\r\n const val = value.toString().replace(/\\./g, ',');\r\n this.inputControl.setValue(this.#getValueWithFormat(val), {\r\n emitEvent: false\r\n });\r\n } else {\r\n this.inputControl.setValue('', {\r\n emitEvent: false\r\n });\r\n }\r\n }\r\n }\r\n @Output() modelChange = new EventEmitter();\r\n\r\n // Validator\r\n isRequired = false;\r\n @Input() set required(val: boolean | '') {\r\n this.isRequired = (val === '') || val;\r\n this.#updateValidator();\r\n }\r\n @Input() type: 'negative' | 'positive'; //negative: chỉ nhập số âm, positive: chỉ số dương\r\n @Input() precision: number = 3; //số chữ số thập phân \r\n\r\n isReadonly = false;\r\n @Input() set readonly(val: boolean | '') {\r\n this.isReadonly = (val === '') || val;\r\n }\r\n\r\n #min: number;\r\n @Input() set min(val: number) {\r\n this.#min = val;\r\n }\r\n\r\n #max: number;\r\n @Input() set max(val: number) {\r\n this.#max = val;\r\n }\r\n\r\n #validator: (value: any) => string | Promise<string>;\r\n @Input() set validator(validator: (value: any) => string | Promise<string>) {\r\n this.#validator = validator;\r\n this.#updateValidator();\r\n }\r\n\r\n @Input() set disabled(val: boolean | '') {\r\n val = (val === '') || val;\r\n if (val) {\r\n this.inputControl.disable();\r\n this.formControl.disable();\r\n } else {\r\n this.inputControl.enable();\r\n this.formControl.enable();\r\n }\r\n }\r\n @Input() appearance: MatFormFieldAppearance;\r\n\r\n @Output() sdChange = new EventEmitter<any>();\r\n @Output() sdFocus = new EventEmitter<any>();\r\n @Output() sdFocusForceBlur = new EventEmitter<any>();\r\n @Output() keyupEnter = new EventEmitter();\r\n\r\n @ViewChild('control') control: ElementRef;\r\n formControl = new SdFormControl();\r\n inputControl = new SdFormControl();\r\n #subscription = new Subscription();\r\n matcher = new SdInputNumberErrotStateMatcher(this.formControl);\r\n\r\n @ContentChild(SdViewDefDirective) sdView: SdViewDefDirective;\r\n @ContentChild(SdSuffixDirective) sdSuffix: SdSuffixDirective;\r\n @ContentChild(SdLabelDefDirective) sdLabelDef: SdLabelDefDirective;\r\n isFocused = false;\r\n constructor(\r\n private ref: ChangeDetectorRef,\r\n @Inject(FORM_CONFIG) @Optional() private formConfig: IFormConfiguration) {\r\n }\r\n\r\n ngOnInit() {\r\n this.appearance = this.appearance || this.formConfig?.appearance;\r\n this.#subscription.add(this.inputControl.touchChanges.subscribe(() => {\r\n this.formControl.markAsTouched();\r\n this.ref.markForCheck();\r\n }));\r\n this.#subscription.add(this.formControl.sdChanges.subscribe(() => {\r\n this.ref.markForCheck();\r\n }));\r\n this.#subscription.add(this.inputControl.sdChanges.subscribe(() => {\r\n this.ref.markForCheck();\r\n }));\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (changes?.type?.previousValue != changes?.type?.currentValue || changes?.precision?.previousValue != changes?.precision?.currentValue) {\r\n this.#regexDecimal = `(([0-9]+(\\\\.[0-9])?)+(\\\\,[0-9]{0,${this.precision}}){0,1})$`;\r\n if (this.precision == 0) {\r\n this.#regexDecimal = `(([0-9]+(\\\\.[0-9])?)+)$`;\r\n }\r\n if (this.type == 'negative') {\r\n this.#regexDecimal = `[-]${this.#regexDecimal}`;\r\n }\r\n if (!this.type) {\r\n this.#regexDecimal = `[-]?${this.#regexDecimal}`;\r\n }\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.#subscription.add(this.inputControl.valueChanges.subscribe(() => {\r\n const val = this.inputControl.value;\r\n if (!val) {\r\n this.#onChange(undefined);\r\n return;\r\n }\r\n let value = this.#toNumber(val);\r\n if (isNaN(val)) {\r\n if ((this.#min || this.#min === 0) && value < this.#min) {\r\n value = this.#min;\r\n }\r\n if ((this.#max || this.#max === 0) && value > this.#max) {\r\n value = this.#max;\r\n }\r\n this.inputControl.setValue(Number.toVNCurrency(value), {\r\n emitEvent: false\r\n });\r\n this.#onChange(value);\r\n }\r\n }));\r\n this.#form?.addControl(this.#name, this.formControl);\r\n this.ref.detectChanges();\r\n }\r\n\r\n #getValueWithFormat = (value: string) => {\r\n const arrayNext = value.split(',');\r\n if (arrayNext.length >= 2) {\r\n return `${this.#formatNumber(arrayNext[0])},${arrayNext[1]}`;\r\n }\r\n return this.#formatNumber(value);\r\n }\r\n\r\n #formatNumber = (text: any) => {\r\n return Number.toVNCurrency((text?.toString() || '').replace(/\\./g, ''));\r\n // const arrs: string[] = (text?.toString() || '').replace(/\\./g, '').split('');\r\n // return arrs.reverse().reduce((acc, num, index) => {\r\n // return num + (num !== '-' && index && !(index % 3) ? '.' : '') + acc;\r\n // }, '');\r\n }\r\n\r\n #toNumber = (text: any) => +((text?.toString() || '').replace(/\\./g, '').replace(/,/g, '.'));\r\n\r\n ngOnDestroy() {\r\n this.#form?.removeControl(this.#name);\r\n this.#subscription.unsubscribe();\r\n }\r\n\r\n reValidate = () => {\r\n this.formControl.updateValueAndValidity();\r\n }\r\n\r\n #updateValidator = () => {\r\n this.formControl.clearValidators();\r\n this.formControl.clearAsyncValidators();\r\n const validators: ValidatorFn[] = [];\r\n const asyncValidators: AsyncValidatorFn[] = [];\r\n if (this.isRequired) {\r\n validators.push(Validators.required);\r\n }\r\n if (this.#validator) {\r\n asyncValidators.push(this.#customValidator(this.#validator));\r\n }\r\n this.formControl.setValidators(validators);\r\n this.formControl.setAsyncValidators(asyncValidators);\r\n this.formControl.updateValueAndValidity();\r\n }\r\n\r\n #onChange = (value: any) => {\r\n this.formControl.setValue(value);\r\n this.modelChange.emit(value);\r\n this.sdChange.emit(value);\r\n }\r\n\r\n onKeyupEnter = () => {\r\n const val: string = (this.inputControl.value ?? '').toString();\r\n if (val.length > val.trim().length) {\r\n this.inputControl.setValue(val.trim());\r\n }\r\n this.keyupEnter.emit(this.inputControl.value);\r\n if (this.#blurOnEnter) {\r\n this.blur();\r\n }\r\n }\r\n\r\n onKeydown = (event: KeyboardEvent) => {\r\n if (event.ctrlKey && event.key == 'v') {\r\n this.#checkValue(event, '');\r\n return;\r\n }\r\n const key = event.keyCode || event.charCode;\r\n if (key == 8 || key == 46 || key == 37 || key == 39 || key == 35 || key == 36 || key == 9) {\r\n return;\r\n }\r\n if (event.ctrlKey && (event.key == 'c' || event.key == 'x' || event.key == 'a')) {\r\n return;\r\n }\r\n if (event.shiftKey && key == 9) {\r\n return;\r\n }\r\n this.#checkValue(event, event.key);\r\n }\r\n\r\n onPaste(event: ClipboardEvent) {\r\n const nextKey = event.clipboardData.getData('text');\r\n this.#checkValue(event, nextKey)\r\n }\r\n\r\n #checkValue = (event, nextKey) => {\r\n const current: string = event.target.value;\r\n // if(this.#max === +current.toString().replace(/\\./g, '').replace(/,/g, '.')){\r\n // event.preventDefault();\r\n // return;\r\n // }\r\n const curval_arr = current.split(\"\");\r\n curval_arr.splice(event.target.selectionStart, (event.target.selectionEnd - event.target.selectionStart), nextKey);\r\n const newval = curval_arr.join(\"\");\r\n if (this.type !== 'positive' && newval === '-') {\r\n return;\r\n }\r\n const regExp: RegExp = new RegExp(`^${this.#regexDecimal}`, 'g');\r\n if (newval && !String(newval).match(regExp)) {\r\n event.preventDefault();\r\n return;\r\n }\r\n const value = (newval.toString().replace(/\\./g, '').replace(/,/g, '.'));\r\n if ((this.#max || this.#max === 0) && +value > this.#max) {\r\n setTimeout(() => {\r\n this.inputControl.setValue(this.#getValueWithFormat(this.#max.toString().replace(/\\./g, ',')));\r\n }, 10);\r\n event.preventDefault();\r\n }\r\n }\r\n\r\n onFocus = () => {\r\n this.isFocused = true;\r\n this.sdFocus.emit();\r\n if (this.sdFocusForceBlur.observers?.length > 0) {\r\n this.blur();\r\n this.sdFocusForceBlur.emit();\r\n }\r\n }\r\n\r\n onBlur = () => {\r\n this.isFocused = false;\r\n let val: string = (this.inputControl.value ?? '').toString();\r\n const arrayValue = val.split(',');\r\n if (arrayValue.length >= 2 && arrayValue[1] == '') {\r\n this.inputControl.setValue(this.#formatNumber(arrayValue[0]));\r\n return;\r\n }\r\n if (val.length > val.trim().length) {\r\n this.inputControl.setValue(val.trim());\r\n }\r\n }\r\n\r\n onClick = () => {\r\n if (this.sdView?.templateRef) {\r\n if (!this.formControl.disabled && !this.isFocused) {\r\n this.focus();\r\n }\r\n }\r\n }\r\n\r\n blur = () => {\r\n this.isFocused = false;\r\n this.control?.nativeElement?.blur();\r\n }\r\n\r\n focus = () => {\r\n this.isFocused = true;\r\n setTimeout(() => {\r\n this.control?.nativeElement?.focus();\r\n }, 100);\r\n }\r\n\r\n #customValidator = (func: (value: any) => string | Promise<string>): AsyncValidatorFn => {\r\n return async (c: AbstractControl): Promise<{ [key: string]: any } | null> => {\r\n const value = c.value || null;\r\n if (func && typeof (func) === 'function') {\r\n const result = func(value);\r\n if (result instanceof Promise) {\r\n const message = await result;\r\n if (message) {\r\n return {\r\n customValidator: message\r\n };\r\n }\r\n return null;\r\n }\r\n if (result) {\r\n return {\r\n customValidator: result\r\n };\r\n }\r\n return null;\r\n }\r\n return null;\r\n };\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdInputNumber } from './input-number.component';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { SdTranslateModule } from '@sd-angular/core/translate';\r\nimport { SdCommonModule } from '@sd-angular/core/common';\r\nimport { SdPopoverModule } from '@sd-angular/core/popover';\r\n\r\n@NgModule({\r\n declarations: [SdInputNumber],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatIconModule,\r\n MatTooltipModule,\r\n SdTranslateModule,\r\n SdCommonModule,\r\n SdPopoverModule,\r\n MatButtonModule\r\n ],\r\n exports: [\r\n SdInputNumber\r\n ]\r\n})\r\nexport class SdInputNumberModule { }\r\n","/*\r\n * Public API Surface of superdev-angular-core\r\n */\r\n\r\nexport * from './lib/input-number.module';\r\nexport * from './lib/input-number.component';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["uuid.v4","EventEmitter","SdFormControl","Subscription","Validators","NgForm","Component","ChangeDetectionStrategy","ChangeDetectorRef","Inject","FORM_CONFIG","Optional","Input","Output","ViewChild","ContentChild","SdViewDefDirective","SdSuffixDirective","SdLabelDefDirective","NgModule","CommonModule","FormsModule","ReactiveFormsModule","MatFormFieldModule","MatInputModule","MatIconModule","MatTooltipModule","SdTranslateModule","SdCommonModule","SdPopoverModule","MatButtonModule"],"mappings":"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"}
|
|
@@ -12,5 +12,5 @@
|
|
|
12
12
|
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
13
13
|
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
14
14
|
PERFORMANCE OF THIS SOFTWARE.
|
|
15
|
-
***************************************************************************** */function m(e,t,r,n){return new(r||(r=Promise))((function(o,i){function a(e){try{s(n.next(e))}catch(e){i(e)}}function l(e){try{s(n.throw(e))}catch(e){i(e)}}function s(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,l)}s((n=n.apply(e,t||[])).next())}))}function h(e,t){var r,n,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;a;)try{if(r=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,n=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],n=0}finally{r=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,l])}}}Object.create;var g,v,b,y,C,w,k,M,E,I,V,x,F,O,S;Object.create;function q(e,t,r,n){if("a"===r&&!n)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===r?n:"a"===r?n.call(e):n?n.value:t.get(e)}function P(e,t,r,n,o){if("m"===n)throw new TypeError("Private method is not writable");if("a"===n&&!o)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!o:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===n?o.call(e,r):o?o.value=r:t.set(e,r),r}var j=function(){function e(e){this.formControl=e}return e.prototype.isErrorState=function(e,t){var r,n,o,i=t&&t.submitted;return!(!(null===(r=this.formControl)||void 0===r?void 0:r.invalid)||!((null===(n=this.formControl)||void 0===n?void 0:n.dirty)||(null===(o=this.formControl)||void 0===o?void 0:o.touched)||i))},e}(),T=function(){function e(e,r){var l=this;this.ref=e,this.formConfig=r,this.id="I"+o.v4(),g.set(this,o.v4()),v.set(this,void 0),b.set(this,void 0),this.disableErrorMessage=!1,y.set(this,!1),this.modelChange=new t.EventEmitter,this.isRequired=!1,this.precision=3,this.isReadonly=!1,C.set(this,void 0),w.set(this,void 0),k.set(this,void 0),this.sdChange=new t.EventEmitter,this.sdFocus=new t.EventEmitter,this.sdFocusForceBlur=new t.EventEmitter,this.keyupEnter=new t.EventEmitter,this.formControl=new a.SdFormControl,this.inputControl=new a.SdFormControl,M.set(this,new i.Subscription),this.matcher=new j(this.formControl),this.isFocused=!1,E.set(this,(function(e){var t=e.split(",");return t.length>=2?q(l,I).call(l,t[0])+","+t[1]:q(l,I).call(l,e)})),I.set(this,(function(e){return Number.toVNCurrency(((null==e?void 0:e.toString())||"").replace(/\./g,""))})),V.set(this,(function(e){return+((null==e?void 0:e.toString())||"").replace(/\./g,"").replace(/,/g,".")})),this.reValidate=function(){l.formControl.updateValueAndValidity()},x.set(this,(function(){l.formControl.clearValidators(),l.formControl.clearAsyncValidators();var e=[],t=[];l.isRequired&&e.push(n.Validators.required),q(l,k)&&t.push(q(l,S).call(l,q(l,k))),l.formControl.setValidators(e),l.formControl.setAsyncValidators(t),l.formControl.updateValueAndValidity()})),F.set(this,(function(e){l.formControl.setValue(e),l.modelChange.emit(e),l.sdChange.emit(e)})),this.onKeyupEnter=function(){var e,t=(null!==(e=l.inputControl.value)&&void 0!==e?e:"").toString();t.length>t.trim().length&&l.inputControl.setValue(t.trim()),l.keyupEnter.emit(l.inputControl.value),q(l,y)&&l.blur()},this.onKeydown=function(e){if(e.ctrlKey&&"v"==e.key)q(l,O).call(l,e,"");else{var t=e.keyCode||e.charCode;8!=t&&46!=t&&37!=t&&39!=t&&35!=t&&36!=t&&9!=t&&(!e.ctrlKey||"c"!=e.key&&"x"!=e.key&&"a"!=e.key)&&(e.shiftKey&&9==t||q(l,O).call(l,e,e.key))}},O.set(this,(function(e,t){console.log(e,t);var r=e.target.value.split("");r.splice(e.target.selectionStart,e.target.selectionEnd-e.target.selectionStart,t);var n=r.join("");if("positive"===l.type||"-"!==n){var o=new RegExp("^"+q(l,v),"g");if(!n||String(n).match(o)){var i=n.toString().replace(/\./g,"").replace(/,/g,".");(q(l,w)||0===q(l,w))&&+i>q(l,w)&&(setTimeout((function(){l.inputControl.setValue(q(l,E).call(l,q(l,w).toString().replace(/\./g,",")))}),10),e.preventDefault())}else e.preventDefault()}})),this.onFocus=function(){var e;l.isFocused=!0,l.sdFocus.emit(),(null===(e=l.sdFocusForceBlur.observers)||void 0===e?void 0:e.length)>0&&(l.blur(),l.sdFocusForceBlur.emit())},this.onBlur=function(){var e;l.isFocused=!1;var t=(null!==(e=l.inputControl.value)&&void 0!==e?e:"").toString(),r=t.split(",");r.length>=2&&""==r[1]?l.inputControl.setValue(q(l,I).call(l,r[0])):t.length>t.trim().length&&l.inputControl.setValue(t.trim())},this.onClick=function(){var e;(null===(e=l.sdView)||void 0===e?void 0:e.templateRef)&&(l.formControl.disabled||l.isFocused||l.focus())},this.blur=function(){var e,t;l.isFocused=!1,null===(t=null===(e=l.control)||void 0===e?void 0:e.nativeElement)||void 0===t||t.blur()},this.focus=function(){l.isFocused=!0,setTimeout((function(){var e,t;null===(t=null===(e=l.control)||void 0===e?void 0:e.nativeElement)||void 0===t||t.focus()}),100)},S.set(this,(function(e){return function(t){return m(l,void 0,void 0,(function(){var r,n,o;return h(this,(function(i){switch(i.label){case 0:return r=t.value||null,e&&"function"==typeof e?(n=e(r))instanceof Promise?[4,n]:[3,2]:[3,3];case 1:return(o=i.sent())?[2,{customValidator:o}]:[2,null];case 2:return n?[2,{customValidator:n}]:[2,null];case 3:return[2,null]}}))}))}}))}return Object.defineProperty(e.prototype,"name",{set:function(e){e&&P(this,g,e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"form",{set:function(e){e&&(e instanceof n.NgForm?P(this,b,e.form):P(this,b,e))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"_disableErrorMessage",{set:function(e){this.disableErrorMessage=""===e||e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"_blurOnEnter",{set:function(e){P(this,y,""===e||e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"model",{set:function(e){if(this.formControl.value!==e)if(console.log(e),this.formControl.setValue(e,{emitEvent:!1}),e||0===e){var t=e.toString().replace(/\./g,",");this.inputControl.setValue(q(this,E).call(this,t),{emitEvent:!1})}else this.inputControl.setValue("",{emitEvent:!1})},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"required",{set:function(e){this.isRequired=""===e||e,q(this,x).call(this)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"readonly",{set:function(e){this.isReadonly=""===e||e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"min",{set:function(e){P(this,C,e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"max",{set:function(e){P(this,w,e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"validator",{set:function(e){P(this,k,e),q(this,x).call(this)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"disabled",{set:function(e){(e=""===e||e)?(this.inputControl.disable(),this.formControl.disable()):(this.inputControl.enable(),this.formControl.enable())},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){var e,t=this;this.appearance=this.appearance||(null===(e=this.formConfig)||void 0===e?void 0:e.appearance),q(this,M).add(this.inputControl.touchChanges.subscribe((function(){t.formControl.markAsTouched(),t.ref.markForCheck()}))),q(this,M).add(this.formControl.sdChanges.subscribe((function(){t.ref.markForCheck()}))),q(this,M).add(this.inputControl.sdChanges.subscribe((function(){t.ref.markForCheck()})))},e.prototype.ngOnChanges=function(e){var t,r,n,o;(null===(t=null==e?void 0:e.type)||void 0===t?void 0:t.previousValue)==(null===(r=null==e?void 0:e.type)||void 0===r?void 0:r.currentValue)&&(null===(n=null==e?void 0:e.precision)||void 0===n?void 0:n.previousValue)==(null===(o=null==e?void 0:e.precision)||void 0===o?void 0:o.currentValue)||(P(this,v,"(([0-9]+(\\.[0-9])?)+(\\,[0-9]{0,"+this.precision+"}){0,1})$"),0==this.precision&&P(this,v,"(([0-9]+(\\.[0-9])?)+)$"),"negative"==this.type&&P(this,v,"[-]"+q(this,v)),this.type||P(this,v,"[-]?"+q(this,v)))},e.prototype.ngAfterViewInit=function(){var e,t=this;q(this,M).add(this.inputControl.valueChanges.subscribe((function(){var e=t.inputControl.value;if(e){var r=q(t,V).call(t,e);NaN!==r&&((q(t,C)||0===q(t,C))&&r<q(t,C)&&(r=q(t,C)),(q(t,w)||0===q(t,w))&&r>q(t,w)&&(r=q(t,w)),t.inputControl.setValue(Number.toVNCurrency(r),{emitEvent:!1}),q(t,F).call(t,r))}else q(t,F).call(t,void 0)}))),null===(e=q(this,b))||void 0===e||e.addControl(q(this,g),this.formControl),this.ref.detectChanges()},e.prototype.ngOnDestroy=function(){var e;null===(e=q(this,b))||void 0===e||e.removeControl(q(this,g)),q(this,M).unsubscribe()},e.prototype.onPaste=function(e){var t=e.clipboardData.getData("text");q(this,O).call(this,e,t)},e}();g=new WeakMap,v=new WeakMap,b=new WeakMap,y=new WeakMap,C=new WeakMap,w=new WeakMap,k=new WeakMap,M=new WeakMap,E=new WeakMap,I=new WeakMap,V=new WeakMap,x=new WeakMap,F=new WeakMap,O=new WeakMap,S=new WeakMap,T.decorators=[{type:t.Component,args:[{selector:"sd-input-number",template:'<label *ngIf="!appearance && label && !sdLabelDef?.templateRef" class="d-block mb-0 T14M">{{label}} <span class="text-danger mb-2"\r\n *ngIf="isRequired">*</span></label>\r\n<ng-container *ngIf="sdLabelDef?.templateRef" matSuffix>\r\n <ng-container *ngTemplateOutlet="sdLabelDef.templateRef">\r\n </ng-container>\r\n</ng-container>\r\n<div class="d-flex align-items-center" [class.sd-view]="sdView?.templateRef" [class.c-focused]="isFocused"\r\n [class.c-disabled]="formControl.disabled" (click)="onClick()">\r\n <ng-container *ngIf="sdView?.templateRef && !isFocused; else default">\r\n <ng-container *ngTemplateOutlet="sdView.templateRef;context: { value: formControl.value }">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #default>\r\n <mat-form-field class="sd-md" [ngClass]="{ \'sd-sm\': size === \'sm\', \'no-padding-wrapper\': disableErrorMessage}"\r\n [appearance]="appearance || \'outline\'">\r\n <mat-label *ngIf="appearance && label">{{label}}</mat-label>\r\n <input [id]="id" [formControl]="inputControl" #control matInput\r\n [placeholder]="placeholder || (appearance ? label : \'\')" [errorStateMatcher]="matcher"\r\n (keyup.enter)="onKeyupEnter()" (focus)="onFocus()" (blur)="onBlur()" (keydown)="onKeydown($event)"\r\n [required]="isRequired" [readonly]="isReadonly" [autocomplete]="id" (paste)="onPaste($event)" autocorrect="off"\r\n [sdPopoverTriggerFor]="null" [sdPopoverDisabled]="!disableErrorMessage || formControl.valid">\r\n <ng-container *ngIf="sdSuffix?.templateRef" matSuffix>\r\n <ng-container *ngTemplateOutlet="sdSuffix.templateRef">\r\n </ng-container>\r\n </ng-container>\r\n <mat-error *ngIf="formControl?.errors?.required">\r\n <ng-container *ngIf="!disableErrorMessage">{{ "This field is required" | sdTranslate }}</ng-container>\r\n </mat-error>\r\n <mat-error *ngIf="formControl.errors?.customValidator">\r\n <ng-container *ngIf="!disableErrorMessage">{{formControl.errors?.customValidator}}</ng-container>\r\n </mat-error>\r\n </mat-form-field>\r\n </ng-template>\r\n</div>\r\n\x3c!-- <sd-popover #error="sdPopover" type="danger" width="300px">\r\n <span *ngIf="formControl.errors?.required">\r\n {{ "This field is required" | sdTranslate }}\r\n </span>\r\n <span *ngIf="formControl.errors?.customValidator">\r\n {{formControl.errors?.customValidator}}\r\n </span>\r\n</sd-popover> --\x3e',changeDetection:t.ChangeDetectionStrategy.OnPush,styles:[":host ::ng-deep .mat-form-field.sd-form-tooltip{width:calc(100% - 30px)}:host ::ng-deep .mat-form-field.no-padding-wrapper .mat-form-field-wrapper{padding-bottom:0}:host ::ng-deep .mat-form-field.mat-form-field-appearance-outline.mat-form-field-disabled .mat-form-field-outline{background:#f6f6f6;color:#e9e9e9}:host ::ng-deep .mat-form-field input.mat-input-element:disabled{color:#4d4d4d!important}:host ::ng-deep .mat-form-field .mat-placeholder-required{color:#f82c13}.sd-view:not(.c-focused):not(.c-disabled):hover{background-color:#ebecf0}.sd-tooltip{display:inline-block;margin:auto;text-align:center;width:30px}:host{display:block;padding-top:5px}.sd-md:hover .btn-copy{visibility:visible}.btn-copy{background:#e9e9e9!important;font-size:12px;line-height:26px!important;margin-bottom:3px;visibility:hidden}"]}]}],T.ctorParameters=function(){return[{type:t.ChangeDetectorRef},{type:void 0,decorators:[{type:t.Inject,args:[a.FORM_CONFIG]},{type:t.Optional}]}]},T.propDecorators={name:[{type:t.Input}],size:[{type:t.Input}],form:[{type:t.Input}],label:[{type:t.Input}],placeholder:[{type:t.Input}],_disableErrorMessage:[{type:t.Input,args:["disableErrorMessage"]}],_blurOnEnter:[{type:t.Input,args:["blurOnEnter"]}],model:[{type:t.Input}],modelChange:[{type:t.Output}],required:[{type:t.Input}],type:[{type:t.Input}],precision:[{type:t.Input}],readonly:[{type:t.Input}],min:[{type:t.Input}],max:[{type:t.Input}],validator:[{type:t.Input}],disabled:[{type:t.Input}],appearance:[{type:t.Input}],sdChange:[{type:t.Output}],sdFocus:[{type:t.Output}],sdFocusForceBlur:[{type:t.Output}],keyupEnter:[{type:t.Output}],control:[{type:t.ViewChild,args:["control"]}],sdView:[{type:t.ContentChild,args:[a.SdViewDefDirective]}],sdSuffix:[{type:t.ContentChild,args:[a.SdSuffixDirective]}],sdLabelDef:[{type:t.ContentChild,args:[a.SdLabelDefDirective]}]};var R=function(){};R.decorators=[{type:t.NgModule,args:[{declarations:[T],imports:[r.CommonModule,n.FormsModule,n.ReactiveFormsModule,l.MatFormFieldModule,s.MatInputModule,c.MatIconModule,d.MatTooltipModule,p.SdTranslateModule,a.SdCommonModule,f.SdPopoverModule,u.MatButtonModule],exports:[T]}]}],e.SdInputNumber=T,e.SdInputNumberModule=R,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
15
|
+
***************************************************************************** */function m(e,t,r,n){return new(r||(r=Promise))((function(o,i){function a(e){try{s(n.next(e))}catch(e){i(e)}}function l(e){try{s(n.throw(e))}catch(e){i(e)}}function s(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,l)}s((n=n.apply(e,t||[])).next())}))}function h(e,t){var r,n,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;a;)try{if(r=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,n=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],n=0}finally{r=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,l])}}}Object.create;var g,v,b,y,C,w,k,M,E,I,V,x,F,O,S;Object.create;function q(e,t,r,n){if("a"===r&&!n)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===r?n:"a"===r?n.call(e):n?n.value:t.get(e)}function P(e,t,r,n,o){if("m"===n)throw new TypeError("Private method is not writable");if("a"===n&&!o)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!o:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===n?o.call(e,r):o?o.value=r:t.set(e,r),r}var j=function(){function e(e){this.formControl=e}return e.prototype.isErrorState=function(e,t){var r,n,o,i=t&&t.submitted;return!(!(null===(r=this.formControl)||void 0===r?void 0:r.invalid)||!((null===(n=this.formControl)||void 0===n?void 0:n.dirty)||(null===(o=this.formControl)||void 0===o?void 0:o.touched)||i))},e}(),T=function(){function e(e,r){var l=this;this.ref=e,this.formConfig=r,this.id="I"+o.v4(),g.set(this,o.v4()),v.set(this,void 0),b.set(this,void 0),this.disableErrorMessage=!1,y.set(this,!1),this.modelChange=new t.EventEmitter,this.isRequired=!1,this.precision=3,this.isReadonly=!1,C.set(this,void 0),w.set(this,void 0),k.set(this,void 0),this.sdChange=new t.EventEmitter,this.sdFocus=new t.EventEmitter,this.sdFocusForceBlur=new t.EventEmitter,this.keyupEnter=new t.EventEmitter,this.formControl=new a.SdFormControl,this.inputControl=new a.SdFormControl,M.set(this,new i.Subscription),this.matcher=new j(this.formControl),this.isFocused=!1,E.set(this,(function(e){var t=e.split(",");return t.length>=2?q(l,I).call(l,t[0])+","+t[1]:q(l,I).call(l,e)})),I.set(this,(function(e){return Number.toVNCurrency(((null==e?void 0:e.toString())||"").replace(/\./g,""))})),V.set(this,(function(e){return+((null==e?void 0:e.toString())||"").replace(/\./g,"").replace(/,/g,".")})),this.reValidate=function(){l.formControl.updateValueAndValidity()},x.set(this,(function(){l.formControl.clearValidators(),l.formControl.clearAsyncValidators();var e=[],t=[];l.isRequired&&e.push(n.Validators.required),q(l,k)&&t.push(q(l,S).call(l,q(l,k))),l.formControl.setValidators(e),l.formControl.setAsyncValidators(t),l.formControl.updateValueAndValidity()})),F.set(this,(function(e){l.formControl.setValue(e),l.modelChange.emit(e),l.sdChange.emit(e)})),this.onKeyupEnter=function(){var e,t=(null!==(e=l.inputControl.value)&&void 0!==e?e:"").toString();t.length>t.trim().length&&l.inputControl.setValue(t.trim()),l.keyupEnter.emit(l.inputControl.value),q(l,y)&&l.blur()},this.onKeydown=function(e){if(e.ctrlKey&&"v"==e.key)q(l,O).call(l,e,"");else{var t=e.keyCode||e.charCode;8!=t&&46!=t&&37!=t&&39!=t&&35!=t&&36!=t&&9!=t&&(!e.ctrlKey||"c"!=e.key&&"x"!=e.key&&"a"!=e.key)&&(e.shiftKey&&9==t||q(l,O).call(l,e,e.key))}},O.set(this,(function(e,t){var r=e.target.value.split("");r.splice(e.target.selectionStart,e.target.selectionEnd-e.target.selectionStart,t);var n=r.join("");if("positive"===l.type||"-"!==n){var o=new RegExp("^"+q(l,v),"g");if(!n||String(n).match(o)){var i=n.toString().replace(/\./g,"").replace(/,/g,".");(q(l,w)||0===q(l,w))&&+i>q(l,w)&&(setTimeout((function(){l.inputControl.setValue(q(l,E).call(l,q(l,w).toString().replace(/\./g,",")))}),10),e.preventDefault())}else e.preventDefault()}})),this.onFocus=function(){var e;l.isFocused=!0,l.sdFocus.emit(),(null===(e=l.sdFocusForceBlur.observers)||void 0===e?void 0:e.length)>0&&(l.blur(),l.sdFocusForceBlur.emit())},this.onBlur=function(){var e;l.isFocused=!1;var t=(null!==(e=l.inputControl.value)&&void 0!==e?e:"").toString(),r=t.split(",");r.length>=2&&""==r[1]?l.inputControl.setValue(q(l,I).call(l,r[0])):t.length>t.trim().length&&l.inputControl.setValue(t.trim())},this.onClick=function(){var e;(null===(e=l.sdView)||void 0===e?void 0:e.templateRef)&&(l.formControl.disabled||l.isFocused||l.focus())},this.blur=function(){var e,t;l.isFocused=!1,null===(t=null===(e=l.control)||void 0===e?void 0:e.nativeElement)||void 0===t||t.blur()},this.focus=function(){l.isFocused=!0,setTimeout((function(){var e,t;null===(t=null===(e=l.control)||void 0===e?void 0:e.nativeElement)||void 0===t||t.focus()}),100)},S.set(this,(function(e){return function(t){return m(l,void 0,void 0,(function(){var r,n,o;return h(this,(function(i){switch(i.label){case 0:return r=t.value||null,e&&"function"==typeof e?(n=e(r))instanceof Promise?[4,n]:[3,2]:[3,3];case 1:return(o=i.sent())?[2,{customValidator:o}]:[2,null];case 2:return n?[2,{customValidator:n}]:[2,null];case 3:return[2,null]}}))}))}}))}return Object.defineProperty(e.prototype,"name",{set:function(e){e&&P(this,g,e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"form",{set:function(e){e&&(e instanceof n.NgForm?P(this,b,e.form):P(this,b,e))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"_disableErrorMessage",{set:function(e){this.disableErrorMessage=""===e||e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"_blurOnEnter",{set:function(e){P(this,y,""===e||e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"model",{set:function(e){if(this.formControl.value!==e)if(console.log(e),this.formControl.setValue(e,{emitEvent:!1}),e||0===e){var t=e.toString().replace(/\./g,",");this.inputControl.setValue(q(this,E).call(this,t),{emitEvent:!1})}else this.inputControl.setValue("",{emitEvent:!1})},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"required",{set:function(e){this.isRequired=""===e||e,q(this,x).call(this)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"readonly",{set:function(e){this.isReadonly=""===e||e},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"min",{set:function(e){P(this,C,e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"max",{set:function(e){P(this,w,e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"validator",{set:function(e){P(this,k,e),q(this,x).call(this)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"disabled",{set:function(e){(e=""===e||e)?(this.inputControl.disable(),this.formControl.disable()):(this.inputControl.enable(),this.formControl.enable())},enumerable:!1,configurable:!0}),e.prototype.ngOnInit=function(){var e,t=this;this.appearance=this.appearance||(null===(e=this.formConfig)||void 0===e?void 0:e.appearance),q(this,M).add(this.inputControl.touchChanges.subscribe((function(){t.formControl.markAsTouched(),t.ref.markForCheck()}))),q(this,M).add(this.formControl.sdChanges.subscribe((function(){t.ref.markForCheck()}))),q(this,M).add(this.inputControl.sdChanges.subscribe((function(){t.ref.markForCheck()})))},e.prototype.ngOnChanges=function(e){var t,r,n,o;(null===(t=null==e?void 0:e.type)||void 0===t?void 0:t.previousValue)==(null===(r=null==e?void 0:e.type)||void 0===r?void 0:r.currentValue)&&(null===(n=null==e?void 0:e.precision)||void 0===n?void 0:n.previousValue)==(null===(o=null==e?void 0:e.precision)||void 0===o?void 0:o.currentValue)||(P(this,v,"(([0-9]+(\\.[0-9])?)+(\\,[0-9]{0,"+this.precision+"}){0,1})$"),0==this.precision&&P(this,v,"(([0-9]+(\\.[0-9])?)+)$"),"negative"==this.type&&P(this,v,"[-]"+q(this,v)),this.type||P(this,v,"[-]?"+q(this,v)))},e.prototype.ngAfterViewInit=function(){var e,t=this;q(this,M).add(this.inputControl.valueChanges.subscribe((function(){var e=t.inputControl.value;if(e){var r=q(t,V).call(t,e);isNaN(e)&&((q(t,C)||0===q(t,C))&&r<q(t,C)&&(r=q(t,C)),(q(t,w)||0===q(t,w))&&r>q(t,w)&&(r=q(t,w)),t.inputControl.setValue(Number.toVNCurrency(r),{emitEvent:!1}),q(t,F).call(t,r))}else q(t,F).call(t,void 0)}))),null===(e=q(this,b))||void 0===e||e.addControl(q(this,g),this.formControl),this.ref.detectChanges()},e.prototype.ngOnDestroy=function(){var e;null===(e=q(this,b))||void 0===e||e.removeControl(q(this,g)),q(this,M).unsubscribe()},e.prototype.onPaste=function(e){var t=e.clipboardData.getData("text");q(this,O).call(this,e,t)},e}();g=new WeakMap,v=new WeakMap,b=new WeakMap,y=new WeakMap,C=new WeakMap,w=new WeakMap,k=new WeakMap,M=new WeakMap,E=new WeakMap,I=new WeakMap,V=new WeakMap,x=new WeakMap,F=new WeakMap,O=new WeakMap,S=new WeakMap,T.decorators=[{type:t.Component,args:[{selector:"sd-input-number",template:'<label *ngIf="!appearance && label && !sdLabelDef?.templateRef" class="d-block mb-0 T14M">{{label}} <span class="text-danger mb-2"\r\n *ngIf="isRequired">*</span></label>\r\n<ng-container *ngIf="sdLabelDef?.templateRef" matSuffix>\r\n <ng-container *ngTemplateOutlet="sdLabelDef.templateRef">\r\n </ng-container>\r\n</ng-container>\r\n<div class="d-flex align-items-center" [class.sd-view]="sdView?.templateRef" [class.c-focused]="isFocused"\r\n [class.c-disabled]="formControl.disabled" (click)="onClick()">\r\n <ng-container *ngIf="sdView?.templateRef && !isFocused; else default">\r\n <ng-container *ngTemplateOutlet="sdView.templateRef;context: { value: formControl.value }">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #default>\r\n <mat-form-field class="sd-md" [ngClass]="{ \'sd-sm\': size === \'sm\', \'no-padding-wrapper\': disableErrorMessage}"\r\n [appearance]="appearance || \'outline\'">\r\n <mat-label *ngIf="appearance && label">{{label}}</mat-label>\r\n <input [id]="id" [formControl]="inputControl" #control matInput\r\n [placeholder]="placeholder || (appearance ? label : \'\')" [errorStateMatcher]="matcher"\r\n (keyup.enter)="onKeyupEnter()" (focus)="onFocus()" (blur)="onBlur()" (keydown)="onKeydown($event)"\r\n [required]="isRequired" [readonly]="isReadonly" [autocomplete]="id" (paste)="onPaste($event)" autocorrect="off"\r\n [sdPopoverTriggerFor]="null" [sdPopoverDisabled]="!disableErrorMessage || formControl.valid">\r\n <ng-container *ngIf="sdSuffix?.templateRef" matSuffix>\r\n <ng-container *ngTemplateOutlet="sdSuffix.templateRef">\r\n </ng-container>\r\n </ng-container>\r\n <mat-error *ngIf="formControl?.errors?.required">\r\n <ng-container *ngIf="!disableErrorMessage">{{ "This field is required" | sdTranslate }}</ng-container>\r\n </mat-error>\r\n <mat-error *ngIf="formControl.errors?.customValidator">\r\n <ng-container *ngIf="!disableErrorMessage">{{formControl.errors?.customValidator}}</ng-container>\r\n </mat-error>\r\n </mat-form-field>\r\n </ng-template>\r\n</div>\r\n\x3c!-- <sd-popover #error="sdPopover" type="danger" width="300px">\r\n <span *ngIf="formControl.errors?.required">\r\n {{ "This field is required" | sdTranslate }}\r\n </span>\r\n <span *ngIf="formControl.errors?.customValidator">\r\n {{formControl.errors?.customValidator}}\r\n </span>\r\n</sd-popover> --\x3e',changeDetection:t.ChangeDetectionStrategy.OnPush,styles:[":host ::ng-deep .mat-form-field.sd-form-tooltip{width:calc(100% - 30px)}:host ::ng-deep .mat-form-field.no-padding-wrapper .mat-form-field-wrapper{padding-bottom:0}:host ::ng-deep .mat-form-field.mat-form-field-appearance-outline.mat-form-field-disabled .mat-form-field-outline{background:#f6f6f6;color:#e9e9e9}:host ::ng-deep .mat-form-field input.mat-input-element:disabled{color:#4d4d4d!important}:host ::ng-deep .mat-form-field .mat-placeholder-required{color:#f82c13}.sd-view:not(.c-focused):not(.c-disabled):hover{background-color:#ebecf0}.sd-tooltip{display:inline-block;margin:auto;text-align:center;width:30px}:host{display:block;padding-top:5px}.sd-md:hover .btn-copy{visibility:visible}.btn-copy{background:#e9e9e9!important;font-size:12px;line-height:26px!important;margin-bottom:3px;visibility:hidden}"]}]}],T.ctorParameters=function(){return[{type:t.ChangeDetectorRef},{type:void 0,decorators:[{type:t.Inject,args:[a.FORM_CONFIG]},{type:t.Optional}]}]},T.propDecorators={name:[{type:t.Input}],size:[{type:t.Input}],form:[{type:t.Input}],label:[{type:t.Input}],placeholder:[{type:t.Input}],_disableErrorMessage:[{type:t.Input,args:["disableErrorMessage"]}],_blurOnEnter:[{type:t.Input,args:["blurOnEnter"]}],model:[{type:t.Input}],modelChange:[{type:t.Output}],required:[{type:t.Input}],type:[{type:t.Input}],precision:[{type:t.Input}],readonly:[{type:t.Input}],min:[{type:t.Input}],max:[{type:t.Input}],validator:[{type:t.Input}],disabled:[{type:t.Input}],appearance:[{type:t.Input}],sdChange:[{type:t.Output}],sdFocus:[{type:t.Output}],sdFocusForceBlur:[{type:t.Output}],keyupEnter:[{type:t.Output}],control:[{type:t.ViewChild,args:["control"]}],sdView:[{type:t.ContentChild,args:[a.SdViewDefDirective]}],sdSuffix:[{type:t.ContentChild,args:[a.SdSuffixDirective]}],sdLabelDef:[{type:t.ContentChild,args:[a.SdLabelDefDirective]}]};var R=function(){};R.decorators=[{type:t.NgModule,args:[{declarations:[T],imports:[r.CommonModule,n.FormsModule,n.ReactiveFormsModule,l.MatFormFieldModule,s.MatInputModule,c.MatIconModule,d.MatTooltipModule,p.SdTranslateModule,a.SdCommonModule,f.SdPopoverModule,u.MatButtonModule],exports:[T]}]}],e.SdInputNumber=T,e.SdInputNumberModule=R,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
16
16
|
//# sourceMappingURL=sd-angular-core-input-number.umd.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/input-number/src/lib/input-number.component.ts","../../../../projects/sd-core/input-number/src/lib/input-number.module.ts"],"names":["__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","apply","__generator","body","f","y","t","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","this","n","v","op","TypeError","call","pop","length","push","Object","create","__classPrivateFieldGet","receiver","state","kind","has","get","__classPrivateFieldSet","set","SdInputNumberErrotStateMatcher","formControl","prototype","isErrorState","control","form","isSubmitted","submitted","_a","invalid","_b","dirty","_c","touched","SdInputNumber","ref","formConfig","_this","id","uuid.v4","_name","_regexDecimal","_form","disableErrorMessage","_blurOnEnter_1","modelChange","EventEmitter","isRequired","precision","isReadonly","_min","_max","_validator","sdChange","sdFocus","sdFocusForceBlur","keyupEnter","SdFormControl","inputControl","_subscription","Subscription","matcher","isFocused","_getValueWithFormat","arrayNext","split","_formatNumber","text","Number","toVNCurrency","toString","replace","_toNumber","reValidate","updateValueAndValidity","_updateValidator","clearValidators","clearAsyncValidators","validators","asyncValidators","Validators","required","_customValidator","setValidators","setAsyncValidators","_onChange","setValue","emit","onKeyupEnter","val","trim","blur","onKeydown","event","ctrlKey","key","_checkValue","keyCode","charCode","shiftKey","nextKey","console","log","curval_arr","target","splice","selectionStart","selectionEnd","newval","join","type","regExp","RegExp","String","match","setTimeout","preventDefault","onFocus","observers","onBlur","arrayValue","onClick","sdView","templateRef","disabled","focus","nativeElement","func","c","message","_e","customValidator","defineProperty","NgForm","emitEvent","validator","disable","enable","ngOnInit","appearance","add","touchChanges","subscribe","markAsTouched","markForCheck","sdChanges","ngOnChanges","changes","previousValue","currentValue","_d","ngAfterViewInit","valueChanges","NaN","undefined","addControl","detectChanges","ngOnDestroy","removeControl","unsubscribe","onPaste","clipboardData","getData","Component","args","selector","template","changeDetection","ChangeDetectionStrategy","OnPush","ChangeDetectorRef","Inject","FORM_CONFIG","Optional","Input","Output","ViewChild","ContentChild","SdViewDefDirective","SdSuffixDirective","SdLabelDefDirective","NgModule","declarations","imports","CommonModule","FormsModule","ReactiveFormsModule","MatFormFieldModule","MatInputModule","MatIconModule","MatTooltipModule","SdTranslateModule","SdCommonModule","SdPopoverModule","MatButtonModule","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import {\r\n Component,\r\n Input,\r\n ViewChild,\r\n Output,\r\n EventEmitter,\r\n ChangeDetectorRef,\r\n OnDestroy,\r\n AfterViewInit,\r\n ElementRef,\r\n OnInit,\r\n ContentChild,\r\n ChangeDetectionStrategy,\r\n HostListener,\r\n Inject,\r\n SimpleChanges,\r\n Optional\r\n} from '@angular/core';\r\nimport { AbstractControl, NgForm, ValidatorFn, Validators, AsyncValidatorFn, FormGroup, FormControl, FormGroupDirective } from '@angular/forms';\r\nimport * as uuid from 'uuid';\r\nimport { Subscription } from 'rxjs';\r\nimport { SdFormControl, SdSuffixDirective } from '@sd-angular/core/common';\r\nimport { SdViewDefDirective } from '@sd-angular/core/common';\r\nimport { FORM_CONFIG } from '@sd-angular/core/common';\r\nimport { IFormConfiguration } from '@sd-angular/core/common';\r\nimport { MatFormFieldAppearance } from '@angular/material/form-field';\r\nimport { ErrorStateMatcher } from '@angular/material/core';\r\nimport { SdLabelDefDirective } from '@sd-angular/core/common';\r\nclass SdInputNumberErrotStateMatcher implements ErrorStateMatcher {\r\n constructor(private formControl: FormControl) { }\r\n isErrorState(control: FormControl | null, form: FormGroupDirective | NgForm | null): boolean {\r\n const isSubmitted = form && form.submitted;\r\n return !!(this.formControl?.invalid && (this.formControl?.dirty || this.formControl?.touched || isSubmitted));\r\n }\r\n}\r\n@Component({\r\n selector: 'sd-input-number',\r\n templateUrl: './input-number.component.html',\r\n styleUrls: ['./input-number.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class SdInputNumber implements OnDestroy, OnInit, AfterViewInit {\r\n id = `I${uuid.v4()}`;\r\n #name = uuid.v4();\r\n #regexDecimal: string\r\n @Input() set name(val: string) {\r\n if (val) {\r\n this.#name = val;\r\n }\r\n }\r\n @Input() size: 'sm' | 'lg';\r\n #form: FormGroup;\r\n @Input() set form(val: NgForm | FormGroup) {\r\n if (val) {\r\n if (val instanceof NgForm) {\r\n this.#form = val.form;\r\n } else {\r\n this.#form = val;\r\n }\r\n }\r\n }\r\n @Input() label: string;\r\n @Input() placeholder: string;\r\n disableErrorMessage = false;\r\n @Input('disableErrorMessage') set _disableErrorMessage(val: boolean | '') {\r\n this.disableErrorMessage = (val === '') || val;\r\n }\r\n #blurOnEnter = false;\r\n @Input('blurOnEnter') set _blurOnEnter(val: boolean | '') {\r\n this.#blurOnEnter = (val === '') || val;\r\n }\r\n @Input() set model(value: any) {\r\n if (this.formControl.value !== value) {\r\n console.log(value);\r\n this.formControl.setValue(value, {\r\n emitEvent: false\r\n });\r\n if (value || value === 0) {\r\n const val = value.toString().replace(/\\./g, ',');\r\n this.inputControl.setValue(this.#getValueWithFormat(val), {\r\n emitEvent: false\r\n });\r\n } else {\r\n this.inputControl.setValue('', {\r\n emitEvent: false\r\n });\r\n }\r\n }\r\n }\r\n @Output() modelChange = new EventEmitter();\r\n\r\n // Validator\r\n isRequired = false;\r\n @Input() set required(val: boolean | '') {\r\n this.isRequired = (val === '') || val;\r\n this.#updateValidator();\r\n }\r\n @Input() type: 'negative' | 'positive'; //negative: chỉ nhập số âm, positive: chỉ số dương\r\n @Input() precision: number = 3; //số chữ số thập phân \r\n\r\n isReadonly = false;\r\n @Input() set readonly(val: boolean | '') {\r\n this.isReadonly = (val === '') || val;\r\n }\r\n\r\n #min: number;\r\n @Input() set min(val: number) {\r\n this.#min = val;\r\n }\r\n\r\n #max: number;\r\n @Input() set max(val: number) {\r\n this.#max = val;\r\n }\r\n\r\n #validator: (value: any) => string | Promise<string>;\r\n @Input() set validator(validator: (value: any) => string | Promise<string>) {\r\n this.#validator = validator;\r\n this.#updateValidator();\r\n }\r\n\r\n @Input() set disabled(val: boolean | '') {\r\n val = (val === '') || val;\r\n if (val) {\r\n this.inputControl.disable();\r\n this.formControl.disable();\r\n } else {\r\n this.inputControl.enable();\r\n this.formControl.enable();\r\n }\r\n }\r\n @Input() appearance: MatFormFieldAppearance;\r\n\r\n @Output() sdChange = new EventEmitter<any>();\r\n @Output() sdFocus = new EventEmitter<any>();\r\n @Output() sdFocusForceBlur = new EventEmitter<any>();\r\n @Output() keyupEnter = new EventEmitter();\r\n\r\n @ViewChild('control') control: ElementRef;\r\n formControl = new SdFormControl();\r\n inputControl = new SdFormControl();\r\n #subscription = new Subscription();\r\n matcher = new SdInputNumberErrotStateMatcher(this.formControl);\r\n\r\n @ContentChild(SdViewDefDirective) sdView: SdViewDefDirective;\r\n @ContentChild(SdSuffixDirective) sdSuffix: SdSuffixDirective;\r\n @ContentChild(SdLabelDefDirective) sdLabelDef: SdLabelDefDirective;\r\n isFocused = false;\r\n constructor(\r\n private ref: ChangeDetectorRef,\r\n @Inject(FORM_CONFIG) @Optional() private formConfig: IFormConfiguration) {\r\n }\r\n\r\n ngOnInit() {\r\n this.appearance = this.appearance || this.formConfig?.appearance;\r\n this.#subscription.add(this.inputControl.touchChanges.subscribe(() => {\r\n this.formControl.markAsTouched();\r\n this.ref.markForCheck();\r\n }));\r\n this.#subscription.add(this.formControl.sdChanges.subscribe(() => {\r\n this.ref.markForCheck();\r\n }));\r\n this.#subscription.add(this.inputControl.sdChanges.subscribe(() => {\r\n this.ref.markForCheck();\r\n }));\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (changes?.type?.previousValue != changes?.type?.currentValue || changes?.precision?.previousValue != changes?.precision?.currentValue) {\r\n this.#regexDecimal = `(([0-9]+(\\\\.[0-9])?)+(\\\\,[0-9]{0,${this.precision}}){0,1})$`;\r\n if (this.precision == 0) {\r\n this.#regexDecimal = `(([0-9]+(\\\\.[0-9])?)+)$`;\r\n }\r\n if (this.type == 'negative') {\r\n this.#regexDecimal = `[-]${this.#regexDecimal}`;\r\n }\r\n if (!this.type) {\r\n this.#regexDecimal = `[-]?${this.#regexDecimal}`;\r\n }\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.#subscription.add(this.inputControl.valueChanges.subscribe(() => {\r\n const val = this.inputControl.value;\r\n if (!val) {\r\n this.#onChange(undefined);\r\n return;\r\n }\r\n let value = this.#toNumber(val);\r\n if (value !== NaN) {\r\n if ((this.#min || this.#min === 0) && value < this.#min) {\r\n value = this.#min;\r\n }\r\n if ((this.#max || this.#max === 0) && value > this.#max) {\r\n value = this.#max;\r\n }\r\n this.inputControl.setValue(Number.toVNCurrency(value), {\r\n emitEvent: false\r\n });\r\n this.#onChange(value);\r\n }\r\n }));\r\n this.#form?.addControl(this.#name, this.formControl);\r\n this.ref.detectChanges();\r\n }\r\n\r\n #getValueWithFormat = (value: string) => {\r\n const arrayNext = value.split(',');\r\n if (arrayNext.length >= 2) {\r\n return `${this.#formatNumber(arrayNext[0])},${arrayNext[1]}`;\r\n }\r\n return this.#formatNumber(value);\r\n }\r\n\r\n #formatNumber = (text: any) => {\r\n return Number.toVNCurrency((text?.toString() || '').replace(/\\./g, ''));\r\n // const arrs: string[] = (text?.toString() || '').replace(/\\./g, '').split('');\r\n // return arrs.reverse().reduce((acc, num, index) => {\r\n // return num + (num !== '-' && index && !(index % 3) ? '.' : '') + acc;\r\n // }, '');\r\n }\r\n\r\n #toNumber = (text: any) => +((text?.toString() || '').replace(/\\./g, '').replace(/,/g, '.'));\r\n\r\n ngOnDestroy() {\r\n this.#form?.removeControl(this.#name);\r\n this.#subscription.unsubscribe();\r\n }\r\n\r\n reValidate = () => {\r\n this.formControl.updateValueAndValidity();\r\n }\r\n\r\n #updateValidator = () => {\r\n this.formControl.clearValidators();\r\n this.formControl.clearAsyncValidators();\r\n const validators: ValidatorFn[] = [];\r\n const asyncValidators: AsyncValidatorFn[] = [];\r\n if (this.isRequired) {\r\n validators.push(Validators.required);\r\n }\r\n if (this.#validator) {\r\n asyncValidators.push(this.#customValidator(this.#validator));\r\n }\r\n this.formControl.setValidators(validators);\r\n this.formControl.setAsyncValidators(asyncValidators);\r\n this.formControl.updateValueAndValidity();\r\n }\r\n\r\n #onChange = (value: any) => {\r\n this.formControl.setValue(value);\r\n this.modelChange.emit(value);\r\n this.sdChange.emit(value);\r\n }\r\n\r\n onKeyupEnter = () => {\r\n const val: string = (this.inputControl.value ?? '').toString();\r\n if (val.length > val.trim().length) {\r\n this.inputControl.setValue(val.trim());\r\n }\r\n this.keyupEnter.emit(this.inputControl.value);\r\n if (this.#blurOnEnter) {\r\n this.blur();\r\n }\r\n }\r\n\r\n onKeydown = (event: KeyboardEvent) => {\r\n if (event.ctrlKey && event.key == 'v') {\r\n this.#checkValue(event, '');\r\n return;\r\n }\r\n const key = event.keyCode || event.charCode;\r\n if (key == 8 || key == 46 || key == 37 || key == 39 || key == 35 || key == 36 || key == 9) {\r\n return;\r\n }\r\n if (event.ctrlKey && (event.key == 'c' || event.key == 'x' || event.key == 'a')) {\r\n return;\r\n }\r\n if (event.shiftKey && key == 9) {\r\n return;\r\n }\r\n this.#checkValue(event, event.key);\r\n }\r\n\r\n onPaste(event: ClipboardEvent) {\r\n const nextKey = event.clipboardData.getData('text');\r\n this.#checkValue(event, nextKey)\r\n }\r\n\r\n #checkValue = (event, nextKey) => {\r\n console.log(event, nextKey);\r\n const current: string = event.target.value;\r\n // if(this.#max === +current.toString().replace(/\\./g, '').replace(/,/g, '.')){\r\n // event.preventDefault();\r\n // return;\r\n // }\r\n const curval_arr = current.split(\"\");\r\n curval_arr.splice(event.target.selectionStart, (event.target.selectionEnd - event.target.selectionStart), nextKey);\r\n const newval = curval_arr.join(\"\");\r\n if (this.type !== 'positive' && newval === '-') {\r\n return;\r\n }\r\n const regExp: RegExp = new RegExp(`^${this.#regexDecimal}`, 'g');\r\n if (newval && !String(newval).match(regExp)) {\r\n event.preventDefault();\r\n return;\r\n }\r\n const value = (newval.toString().replace(/\\./g, '').replace(/,/g, '.'));\r\n if ((this.#max || this.#max === 0) && +value > this.#max) {\r\n setTimeout(() => {\r\n this.inputControl.setValue(this.#getValueWithFormat(this.#max.toString().replace(/\\./g, ',')));\r\n }, 10);\r\n event.preventDefault();\r\n }\r\n }\r\n\r\n onFocus = () => {\r\n this.isFocused = true;\r\n this.sdFocus.emit();\r\n if (this.sdFocusForceBlur.observers?.length > 0) {\r\n this.blur();\r\n this.sdFocusForceBlur.emit();\r\n }\r\n }\r\n\r\n onBlur = () => {\r\n this.isFocused = false;\r\n let val: string = (this.inputControl.value ?? '').toString();\r\n const arrayValue = val.split(',');\r\n if (arrayValue.length >= 2 && arrayValue[1] == '') {\r\n this.inputControl.setValue(this.#formatNumber(arrayValue[0]));\r\n return;\r\n }\r\n if (val.length > val.trim().length) {\r\n this.inputControl.setValue(val.trim());\r\n }\r\n }\r\n\r\n onClick = () => {\r\n if (this.sdView?.templateRef) {\r\n if (!this.formControl.disabled && !this.isFocused) {\r\n this.focus();\r\n }\r\n }\r\n }\r\n\r\n blur = () => {\r\n this.isFocused = false;\r\n this.control?.nativeElement?.blur();\r\n }\r\n\r\n focus = () => {\r\n this.isFocused = true;\r\n setTimeout(() => {\r\n this.control?.nativeElement?.focus();\r\n }, 100);\r\n }\r\n\r\n #customValidator = (func: (value: any) => string | Promise<string>): AsyncValidatorFn => {\r\n return async (c: AbstractControl): Promise<{ [key: string]: any } | null> => {\r\n const value = c.value || null;\r\n if (func && typeof (func) === 'function') {\r\n const result = func(value);\r\n if (result instanceof Promise) {\r\n const message = await result;\r\n if (message) {\r\n return {\r\n customValidator: message\r\n };\r\n }\r\n return null;\r\n }\r\n if (result) {\r\n return {\r\n customValidator: result\r\n };\r\n }\r\n return null;\r\n }\r\n return null;\r\n };\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdInputNumber } from './input-number.component';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { SdTranslateModule } from '@sd-angular/core/translate';\r\nimport { SdCommonModule } from '@sd-angular/core/common';\r\nimport { SdPopoverModule } from '@sd-angular/core/popover';\r\n\r\n@NgModule({\r\n declarations: [SdInputNumber],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatIconModule,\r\n MatTooltipModule,\r\n SdTranslateModule,\r\n SdCommonModule,\r\n SdPopoverModule,\r\n MatButtonModule\r\n ],\r\n exports: [\r\n SdInputNumber\r\n ]\r\n})\r\nexport class SdInputNumberModule { }\r\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/input-number/src/lib/input-number.component.ts","../../../../projects/sd-core/input-number/src/lib/input-number.module.ts"],"names":["__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","then","apply","__generator","body","f","y","t","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","this","n","v","op","TypeError","call","pop","length","push","Object","create","__classPrivateFieldGet","receiver","state","kind","has","get","__classPrivateFieldSet","set","SdInputNumberErrotStateMatcher","formControl","prototype","isErrorState","control","form","isSubmitted","submitted","_a","invalid","_b","dirty","_c","touched","SdInputNumber","ref","formConfig","_this","id","uuid.v4","_name","_regexDecimal","_form","disableErrorMessage","_blurOnEnter_1","modelChange","EventEmitter","isRequired","precision","isReadonly","_min","_max","_validator","sdChange","sdFocus","sdFocusForceBlur","keyupEnter","SdFormControl","inputControl","_subscription","Subscription","matcher","isFocused","_getValueWithFormat","arrayNext","split","_formatNumber","text","Number","toVNCurrency","toString","replace","_toNumber","reValidate","updateValueAndValidity","_updateValidator","clearValidators","clearAsyncValidators","validators","asyncValidators","Validators","required","_customValidator","setValidators","setAsyncValidators","_onChange","setValue","emit","onKeyupEnter","val","trim","blur","onKeydown","event","ctrlKey","key","_checkValue","keyCode","charCode","shiftKey","nextKey","curval_arr","target","splice","selectionStart","selectionEnd","newval","join","type","regExp","RegExp","String","match","setTimeout","preventDefault","onFocus","observers","onBlur","arrayValue","onClick","sdView","templateRef","disabled","focus","nativeElement","func","c","message","_e","customValidator","defineProperty","NgForm","console","log","emitEvent","validator","disable","enable","ngOnInit","appearance","add","touchChanges","subscribe","markAsTouched","markForCheck","sdChanges","ngOnChanges","changes","previousValue","currentValue","_d","ngAfterViewInit","valueChanges","isNaN","undefined","addControl","detectChanges","ngOnDestroy","removeControl","unsubscribe","onPaste","clipboardData","getData","Component","args","selector","template","changeDetection","ChangeDetectionStrategy","OnPush","ChangeDetectorRef","Inject","FORM_CONFIG","Optional","Input","Output","ViewChild","ContentChild","SdViewDefDirective","SdSuffixDirective","SdLabelDefDirective","NgModule","declarations","imports","CommonModule","FormsModule","ReactiveFormsModule","MatFormFieldModule","MatInputModule","MatIconModule","MatTooltipModule","SdTranslateModule","SdCommonModule","SdPopoverModule","MatButtonModule","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import {\r\n Component,\r\n Input,\r\n ViewChild,\r\n Output,\r\n EventEmitter,\r\n ChangeDetectorRef,\r\n OnDestroy,\r\n AfterViewInit,\r\n ElementRef,\r\n OnInit,\r\n ContentChild,\r\n ChangeDetectionStrategy,\r\n HostListener,\r\n Inject,\r\n SimpleChanges,\r\n Optional\r\n} from '@angular/core';\r\nimport { AbstractControl, NgForm, ValidatorFn, Validators, AsyncValidatorFn, FormGroup, FormControl, FormGroupDirective } from '@angular/forms';\r\nimport * as uuid from 'uuid';\r\nimport { Subscription } from 'rxjs';\r\nimport { SdFormControl, SdSuffixDirective } from '@sd-angular/core/common';\r\nimport { SdViewDefDirective } from '@sd-angular/core/common';\r\nimport { FORM_CONFIG } from '@sd-angular/core/common';\r\nimport { IFormConfiguration } from '@sd-angular/core/common';\r\nimport { MatFormFieldAppearance } from '@angular/material/form-field';\r\nimport { ErrorStateMatcher } from '@angular/material/core';\r\nimport { SdLabelDefDirective } from '@sd-angular/core/common';\r\nclass SdInputNumberErrotStateMatcher implements ErrorStateMatcher {\r\n constructor(private formControl: FormControl) { }\r\n isErrorState(control: FormControl | null, form: FormGroupDirective | NgForm | null): boolean {\r\n const isSubmitted = form && form.submitted;\r\n return !!(this.formControl?.invalid && (this.formControl?.dirty || this.formControl?.touched || isSubmitted));\r\n }\r\n}\r\n@Component({\r\n selector: 'sd-input-number',\r\n templateUrl: './input-number.component.html',\r\n styleUrls: ['./input-number.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class SdInputNumber implements OnDestroy, OnInit, AfterViewInit {\r\n id = `I${uuid.v4()}`;\r\n #name = uuid.v4();\r\n #regexDecimal: string\r\n @Input() set name(val: string) {\r\n if (val) {\r\n this.#name = val;\r\n }\r\n }\r\n @Input() size: 'sm' | 'lg';\r\n #form: FormGroup;\r\n @Input() set form(val: NgForm | FormGroup) {\r\n if (val) {\r\n if (val instanceof NgForm) {\r\n this.#form = val.form;\r\n } else {\r\n this.#form = val;\r\n }\r\n }\r\n }\r\n @Input() label: string;\r\n @Input() placeholder: string;\r\n disableErrorMessage = false;\r\n @Input('disableErrorMessage') set _disableErrorMessage(val: boolean | '') {\r\n this.disableErrorMessage = (val === '') || val;\r\n }\r\n #blurOnEnter = false;\r\n @Input('blurOnEnter') set _blurOnEnter(val: boolean | '') {\r\n this.#blurOnEnter = (val === '') || val;\r\n }\r\n @Input() set model(value: any) {\r\n if (this.formControl.value !== value) {\r\n console.log(value);\r\n this.formControl.setValue(value, {\r\n emitEvent: false\r\n });\r\n if (value || value === 0) {\r\n const val = value.toString().replace(/\\./g, ',');\r\n this.inputControl.setValue(this.#getValueWithFormat(val), {\r\n emitEvent: false\r\n });\r\n } else {\r\n this.inputControl.setValue('', {\r\n emitEvent: false\r\n });\r\n }\r\n }\r\n }\r\n @Output() modelChange = new EventEmitter();\r\n\r\n // Validator\r\n isRequired = false;\r\n @Input() set required(val: boolean | '') {\r\n this.isRequired = (val === '') || val;\r\n this.#updateValidator();\r\n }\r\n @Input() type: 'negative' | 'positive'; //negative: chỉ nhập số âm, positive: chỉ số dương\r\n @Input() precision: number = 3; //số chữ số thập phân \r\n\r\n isReadonly = false;\r\n @Input() set readonly(val: boolean | '') {\r\n this.isReadonly = (val === '') || val;\r\n }\r\n\r\n #min: number;\r\n @Input() set min(val: number) {\r\n this.#min = val;\r\n }\r\n\r\n #max: number;\r\n @Input() set max(val: number) {\r\n this.#max = val;\r\n }\r\n\r\n #validator: (value: any) => string | Promise<string>;\r\n @Input() set validator(validator: (value: any) => string | Promise<string>) {\r\n this.#validator = validator;\r\n this.#updateValidator();\r\n }\r\n\r\n @Input() set disabled(val: boolean | '') {\r\n val = (val === '') || val;\r\n if (val) {\r\n this.inputControl.disable();\r\n this.formControl.disable();\r\n } else {\r\n this.inputControl.enable();\r\n this.formControl.enable();\r\n }\r\n }\r\n @Input() appearance: MatFormFieldAppearance;\r\n\r\n @Output() sdChange = new EventEmitter<any>();\r\n @Output() sdFocus = new EventEmitter<any>();\r\n @Output() sdFocusForceBlur = new EventEmitter<any>();\r\n @Output() keyupEnter = new EventEmitter();\r\n\r\n @ViewChild('control') control: ElementRef;\r\n formControl = new SdFormControl();\r\n inputControl = new SdFormControl();\r\n #subscription = new Subscription();\r\n matcher = new SdInputNumberErrotStateMatcher(this.formControl);\r\n\r\n @ContentChild(SdViewDefDirective) sdView: SdViewDefDirective;\r\n @ContentChild(SdSuffixDirective) sdSuffix: SdSuffixDirective;\r\n @ContentChild(SdLabelDefDirective) sdLabelDef: SdLabelDefDirective;\r\n isFocused = false;\r\n constructor(\r\n private ref: ChangeDetectorRef,\r\n @Inject(FORM_CONFIG) @Optional() private formConfig: IFormConfiguration) {\r\n }\r\n\r\n ngOnInit() {\r\n this.appearance = this.appearance || this.formConfig?.appearance;\r\n this.#subscription.add(this.inputControl.touchChanges.subscribe(() => {\r\n this.formControl.markAsTouched();\r\n this.ref.markForCheck();\r\n }));\r\n this.#subscription.add(this.formControl.sdChanges.subscribe(() => {\r\n this.ref.markForCheck();\r\n }));\r\n this.#subscription.add(this.inputControl.sdChanges.subscribe(() => {\r\n this.ref.markForCheck();\r\n }));\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (changes?.type?.previousValue != changes?.type?.currentValue || changes?.precision?.previousValue != changes?.precision?.currentValue) {\r\n this.#regexDecimal = `(([0-9]+(\\\\.[0-9])?)+(\\\\,[0-9]{0,${this.precision}}){0,1})$`;\r\n if (this.precision == 0) {\r\n this.#regexDecimal = `(([0-9]+(\\\\.[0-9])?)+)$`;\r\n }\r\n if (this.type == 'negative') {\r\n this.#regexDecimal = `[-]${this.#regexDecimal}`;\r\n }\r\n if (!this.type) {\r\n this.#regexDecimal = `[-]?${this.#regexDecimal}`;\r\n }\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.#subscription.add(this.inputControl.valueChanges.subscribe(() => {\r\n const val = this.inputControl.value;\r\n if (!val) {\r\n this.#onChange(undefined);\r\n return;\r\n }\r\n let value = this.#toNumber(val);\r\n if (isNaN(val)) {\r\n if ((this.#min || this.#min === 0) && value < this.#min) {\r\n value = this.#min;\r\n }\r\n if ((this.#max || this.#max === 0) && value > this.#max) {\r\n value = this.#max;\r\n }\r\n this.inputControl.setValue(Number.toVNCurrency(value), {\r\n emitEvent: false\r\n });\r\n this.#onChange(value);\r\n }\r\n }));\r\n this.#form?.addControl(this.#name, this.formControl);\r\n this.ref.detectChanges();\r\n }\r\n\r\n #getValueWithFormat = (value: string) => {\r\n const arrayNext = value.split(',');\r\n if (arrayNext.length >= 2) {\r\n return `${this.#formatNumber(arrayNext[0])},${arrayNext[1]}`;\r\n }\r\n return this.#formatNumber(value);\r\n }\r\n\r\n #formatNumber = (text: any) => {\r\n return Number.toVNCurrency((text?.toString() || '').replace(/\\./g, ''));\r\n // const arrs: string[] = (text?.toString() || '').replace(/\\./g, '').split('');\r\n // return arrs.reverse().reduce((acc, num, index) => {\r\n // return num + (num !== '-' && index && !(index % 3) ? '.' : '') + acc;\r\n // }, '');\r\n }\r\n\r\n #toNumber = (text: any) => +((text?.toString() || '').replace(/\\./g, '').replace(/,/g, '.'));\r\n\r\n ngOnDestroy() {\r\n this.#form?.removeControl(this.#name);\r\n this.#subscription.unsubscribe();\r\n }\r\n\r\n reValidate = () => {\r\n this.formControl.updateValueAndValidity();\r\n }\r\n\r\n #updateValidator = () => {\r\n this.formControl.clearValidators();\r\n this.formControl.clearAsyncValidators();\r\n const validators: ValidatorFn[] = [];\r\n const asyncValidators: AsyncValidatorFn[] = [];\r\n if (this.isRequired) {\r\n validators.push(Validators.required);\r\n }\r\n if (this.#validator) {\r\n asyncValidators.push(this.#customValidator(this.#validator));\r\n }\r\n this.formControl.setValidators(validators);\r\n this.formControl.setAsyncValidators(asyncValidators);\r\n this.formControl.updateValueAndValidity();\r\n }\r\n\r\n #onChange = (value: any) => {\r\n this.formControl.setValue(value);\r\n this.modelChange.emit(value);\r\n this.sdChange.emit(value);\r\n }\r\n\r\n onKeyupEnter = () => {\r\n const val: string = (this.inputControl.value ?? '').toString();\r\n if (val.length > val.trim().length) {\r\n this.inputControl.setValue(val.trim());\r\n }\r\n this.keyupEnter.emit(this.inputControl.value);\r\n if (this.#blurOnEnter) {\r\n this.blur();\r\n }\r\n }\r\n\r\n onKeydown = (event: KeyboardEvent) => {\r\n if (event.ctrlKey && event.key == 'v') {\r\n this.#checkValue(event, '');\r\n return;\r\n }\r\n const key = event.keyCode || event.charCode;\r\n if (key == 8 || key == 46 || key == 37 || key == 39 || key == 35 || key == 36 || key == 9) {\r\n return;\r\n }\r\n if (event.ctrlKey && (event.key == 'c' || event.key == 'x' || event.key == 'a')) {\r\n return;\r\n }\r\n if (event.shiftKey && key == 9) {\r\n return;\r\n }\r\n this.#checkValue(event, event.key);\r\n }\r\n\r\n onPaste(event: ClipboardEvent) {\r\n const nextKey = event.clipboardData.getData('text');\r\n this.#checkValue(event, nextKey)\r\n }\r\n\r\n #checkValue = (event, nextKey) => {\r\n const current: string = event.target.value;\r\n // if(this.#max === +current.toString().replace(/\\./g, '').replace(/,/g, '.')){\r\n // event.preventDefault();\r\n // return;\r\n // }\r\n const curval_arr = current.split(\"\");\r\n curval_arr.splice(event.target.selectionStart, (event.target.selectionEnd - event.target.selectionStart), nextKey);\r\n const newval = curval_arr.join(\"\");\r\n if (this.type !== 'positive' && newval === '-') {\r\n return;\r\n }\r\n const regExp: RegExp = new RegExp(`^${this.#regexDecimal}`, 'g');\r\n if (newval && !String(newval).match(regExp)) {\r\n event.preventDefault();\r\n return;\r\n }\r\n const value = (newval.toString().replace(/\\./g, '').replace(/,/g, '.'));\r\n if ((this.#max || this.#max === 0) && +value > this.#max) {\r\n setTimeout(() => {\r\n this.inputControl.setValue(this.#getValueWithFormat(this.#max.toString().replace(/\\./g, ',')));\r\n }, 10);\r\n event.preventDefault();\r\n }\r\n }\r\n\r\n onFocus = () => {\r\n this.isFocused = true;\r\n this.sdFocus.emit();\r\n if (this.sdFocusForceBlur.observers?.length > 0) {\r\n this.blur();\r\n this.sdFocusForceBlur.emit();\r\n }\r\n }\r\n\r\n onBlur = () => {\r\n this.isFocused = false;\r\n let val: string = (this.inputControl.value ?? '').toString();\r\n const arrayValue = val.split(',');\r\n if (arrayValue.length >= 2 && arrayValue[1] == '') {\r\n this.inputControl.setValue(this.#formatNumber(arrayValue[0]));\r\n return;\r\n }\r\n if (val.length > val.trim().length) {\r\n this.inputControl.setValue(val.trim());\r\n }\r\n }\r\n\r\n onClick = () => {\r\n if (this.sdView?.templateRef) {\r\n if (!this.formControl.disabled && !this.isFocused) {\r\n this.focus();\r\n }\r\n }\r\n }\r\n\r\n blur = () => {\r\n this.isFocused = false;\r\n this.control?.nativeElement?.blur();\r\n }\r\n\r\n focus = () => {\r\n this.isFocused = true;\r\n setTimeout(() => {\r\n this.control?.nativeElement?.focus();\r\n }, 100);\r\n }\r\n\r\n #customValidator = (func: (value: any) => string | Promise<string>): AsyncValidatorFn => {\r\n return async (c: AbstractControl): Promise<{ [key: string]: any } | null> => {\r\n const value = c.value || null;\r\n if (func && typeof (func) === 'function') {\r\n const result = func(value);\r\n if (result instanceof Promise) {\r\n const message = await result;\r\n if (message) {\r\n return {\r\n customValidator: message\r\n };\r\n }\r\n return null;\r\n }\r\n if (result) {\r\n return {\r\n customValidator: result\r\n };\r\n }\r\n return null;\r\n }\r\n return null;\r\n };\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdInputNumber } from './input-number.component';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { SdTranslateModule } from '@sd-angular/core/translate';\r\nimport { SdCommonModule } from '@sd-angular/core/common';\r\nimport { SdPopoverModule } from '@sd-angular/core/popover';\r\n\r\n@NgModule({\r\n declarations: [SdInputNumber],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatIconModule,\r\n MatTooltipModule,\r\n SdTranslateModule,\r\n SdCommonModule,\r\n SdPopoverModule,\r\n MatButtonModule\r\n ],\r\n exports: [\r\n SdInputNumber\r\n ]\r\n})\r\nexport class SdInputNumberModule { }\r\n"]}
|
|
@@ -112,7 +112,6 @@ export class SdInputNumber {
|
|
|
112
112
|
__classPrivateFieldGet(this, _checkValue).call(this, event, event.key);
|
|
113
113
|
};
|
|
114
114
|
_checkValue.set(this, (event, nextKey) => {
|
|
115
|
-
console.log(event, nextKey);
|
|
116
115
|
const current = event.target.value;
|
|
117
116
|
// if(this.#max === +current.toString().replace(/\./g, '').replace(/,/g, '.')){
|
|
118
117
|
// event.preventDefault();
|
|
@@ -310,7 +309,7 @@ export class SdInputNumber {
|
|
|
310
309
|
return;
|
|
311
310
|
}
|
|
312
311
|
let value = __classPrivateFieldGet(this, _toNumber).call(this, val);
|
|
313
|
-
if (
|
|
312
|
+
if (isNaN(val)) {
|
|
314
313
|
if ((__classPrivateFieldGet(this, _min) || __classPrivateFieldGet(this, _min) === 0) && value < __classPrivateFieldGet(this, _min)) {
|
|
315
314
|
value = __classPrivateFieldGet(this, _min);
|
|
316
315
|
}
|
|
@@ -377,4 +376,4 @@ SdInputNumber.propDecorators = {
|
|
|
377
376
|
sdSuffix: [{ type: ContentChild, args: [SdSuffixDirective,] }],
|
|
378
377
|
sdLabelDef: [{ type: ContentChild, args: [SdLabelDefDirective,] }]
|
|
379
378
|
};
|
|
380
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtbnVtYmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTVfb25lbW91bnQvRG9jdW1lbnRzL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvaW5wdXQtbnVtYmVyLyIsInNvdXJjZXMiOlsic3JjL2xpYi9pbnB1dC1udW1iZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBQ0wsU0FBUyxFQUNULE1BQU0sRUFDTixZQUFZLEVBQ1osaUJBQWlCLEVBS2pCLFlBQVksRUFDWix1QkFBdUIsRUFFdkIsTUFBTSxFQUVOLFFBQVEsRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQW1CLE1BQU0sRUFBZSxVQUFVLEVBQWdFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEosT0FBTyxLQUFLLElBQUksTUFBTSxNQUFNLENBQUM7QUFDN0IsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNwQyxPQUFPLEVBQUUsYUFBYSxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDM0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBSXRELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE1BQU0sOEJBQThCO0lBQ2xDLFlBQW9CLFdBQXdCO1FBQXhCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO0lBQUksQ0FBQztJQUNqRCxZQUFZLENBQUMsT0FBMkIsRUFBRSxJQUF3Qzs7UUFDaEYsTUFBTSxXQUFXLEdBQUcsSUFBSSxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDM0MsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFBLElBQUksQ0FBQyxXQUFXLDBDQUFFLE9BQU8sS0FBSSxDQUFDLE9B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QkFNbkIsWUFBWSxTQUFDLGtCQUFrQjt1QkFDL0IsWUFBWSxTQUFDLGlCQUFpQjt5QkFDOUIsWUFBWSxTQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIElucHV0LFxyXG4gIFZpZXdDaGlsZCxcclxuICBPdXRwdXQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIE9uRGVzdHJveSxcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgT25Jbml0LFxyXG4gIENvbnRlbnRDaGlsZCxcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBIb3N0TGlzdGVuZXIsXHJcbiAgSW5qZWN0LFxyXG4gIFNpbXBsZUNoYW5nZXMsXHJcbiAgT3B0aW9uYWxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBOZ0Zvcm0sIFZhbGlkYXRvckZuLCBWYWxpZGF0b3JzLCBBc3luY1ZhbGlkYXRvckZuLCBGb3JtR3JvdXAsIEZvcm1Db250cm9sLCBGb3JtR3JvdXBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCAqIGFzIHV1aWQgZnJvbSAndXVpZCc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBTZEZvcm1Db250cm9sLCBTZFN1ZmZpeERpcmVjdGl2ZSB9IGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvY29tbW9uJztcclxuaW1wb3J0IHsgU2RWaWV3RGVmRGlyZWN0aXZlIH0gZnJvbSAnQHNkLWFuZ3VsYXIvY29yZS9jb21tb24nO1xyXG5pbXBvcnQgeyBGT1JNX0NPTkZJRyB9IGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvY29tbW9uJztcclxuaW1wb3J0IHsgSUZvcm1Db25maWd1cmF0aW9uIH0gZnJvbSAnQHNkLWFuZ3VsYXIvY29yZS9jb21tb24nO1xyXG5pbXBvcnQgeyBNYXRGb3JtRmllbGRBcHBlYXJhbmNlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XHJcbmltcG9ydCB7IEVycm9yU3RhdGVNYXRjaGVyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XHJcbmltcG9ydCB7IFNkTGFiZWxEZWZEaXJlY3RpdmUgfSBmcm9tICdAc2QtYW5ndWxhci9jb3JlL2NvbW1vbic7XHJcbmNsYXNzIFNkSW5wdXROdW1iZXJFcnJvdFN0YXRlTWF0Y2hlciBpbXBsZW1lbnRzIEVycm9yU3RhdGVNYXRjaGVyIHtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZvcm1Db250cm9sOiBGb3JtQ29udHJvbCkgeyB9XHJcbiAgaXNFcnJvclN0YXRlKGNvbnRyb2w6IEZvcm1Db250cm9sIHwgbnVsbCwgZm9ybTogRm9ybUdyb3VwRGlyZWN0aXZlIHwgTmdGb3JtIHwgbnVsbCk6IGJvb2xlYW4ge1xyXG4gICAgY29uc3QgaXNTdWJtaXR0ZWQgPSBmb3JtICYmIGZvcm0uc3VibWl0dGVkO1xyXG4gICAgcmV0dXJuICEhKHRoaXMuZm9ybUNvbnRyb2w/LmludmFsaWQgJiYgKHRoaXMuZm9ybUNvbnRyb2w/LmRpcnR5IHx8IHRoaXMuZm9ybUNvbnRyb2w/LnRvdWNoZWQgfHwgaXNTdWJtaXR0ZWQpKTtcclxuICB9XHJcbn1cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzZC1pbnB1dC1udW1iZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnB1dC1udW1iZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2lucHV0LW51bWJlci5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZElucHV0TnVtYmVyIGltcGxlbWVudHMgT25EZXN0cm95LCBPbkluaXQsIEFmdGVyVmlld0luaXQge1xyXG4gIGlkID0gYEkke3V1aWQudjQoKX1gO1xyXG4gICNuYW1lID0gdXVpZC52NCgpO1xyXG4gICNyZWdleERlY2ltYWw6IHN0cmluZ1xyXG4gIEBJbnB1dCgpIHNldCBuYW1lKHZhbDogc3RyaW5nKSB7XHJcbiAgICBpZiAodmFsKSB7XHJcbiAgICAgIHRoaXMuI25hbWUgPSB2YWw7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBJbnB1dCgpIHNpemU6ICdzbScgfCAnbGcnO1xyXG4gICNmb3JtOiBGb3JtR3JvdXA7XHJcbiAgQElucHV0KCkgc2V0IGZvcm0odmFsOiBOZ0Zvcm0gfCBGb3JtR3JvdXApIHtcclxuICAgIGlmICh2YWwpIHtcclxuICAgICAgaWYgKHZhbCBpbnN0YW5jZW9mIE5nRm9ybSkge1xyXG4gICAgICAgIHRoaXMuI2Zvcm0gPSB2YWwuZm9ybTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLiNmb3JtID0gdmFsO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBJbnB1dCgpIGxhYmVsOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgcGxhY2Vob2xkZXI6IHN0cmluZztcclxuICBkaXNhYmxlRXJyb3JNZXNzYWdlID0gZmFsc2U7XHJcbiAgQElucHV0KCdkaXNhYmxlRXJyb3JNZXNzYWdlJykgc2V0IF9kaXNhYmxlRXJyb3JNZXNzYWdlKHZhbDogYm9vbGVhbiB8ICcnKSB7XHJcbiAgICB0aGlzLmRpc2FibGVFcnJvck1lc3NhZ2UgPSAodmFsID09PSAnJykgfHwgdmFsO1xyXG4gIH1cclxuICAjYmx1ck9uRW50ZXIgPSBmYWxzZTtcclxuICBASW5wdXQoJ2JsdXJPbkVudGVyJykgc2V0IF9ibHVyT25FbnRlcih2YWw6IGJvb2xlYW4gfCAnJykge1xyXG4gICAgdGhpcy4jYmx1ck9uRW50ZXIgPSAodmFsID09PSAnJykgfHwgdmFsO1xyXG4gIH1cclxuICBASW5wdXQoKSBzZXQgbW9kZWwodmFsdWU6IGFueSkge1xyXG4gICAgaWYgKHRoaXMuZm9ybUNvbnRyb2wudmFsdWUgIT09IHZhbHVlKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKHZhbHVlKTtcclxuICAgICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWx1ZSh2YWx1ZSwge1xyXG4gICAgICAgIGVtaXRFdmVudDogZmFsc2VcclxuICAgICAgfSk7XHJcbiAgICAgIGlmICh2YWx1ZSB8fCB2YWx1ZSA9PT0gMCkge1xyXG4gICAgICAgIGNvbnN0IHZhbCA9IHZhbHVlLnRvU3RyaW5nKCkucmVwbGFjZSgvXFwuL2csICcsJyk7XHJcbiAgICAgICAgdGhpcy5pbnB1dENvbnRyb2wuc2V0VmFsdWUodGhpcy4jZ2V0VmFsdWVXaXRoRm9ybWF0KHZhbCksIHtcclxuICAgICAgICAgIGVtaXRFdmVudDogZmFsc2VcclxuICAgICAgICB9KTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLmlucHV0Q29udHJvbC5zZXRWYWx1ZSgnJywge1xyXG4gICAgICAgICAgZW1pdEV2ZW50OiBmYWxzZVxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBPdXRwdXQoKSBtb2RlbENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgLy8gVmFsaWRhdG9yXHJcbiAgaXNSZXF1aXJlZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNldCByZXF1aXJlZCh2YWw6IGJvb2xlYW4gfCAnJykge1xyXG4gICAgdGhpcy5pc1JlcXVpcmVkID0gKHZhbCA9PT0gJycpIHx8IHZhbDtcclxuICAgIHRoaXMuI3VwZGF0ZVZhbGlkYXRvcigpO1xyXG4gIH1cclxuICBASW5wdXQoKSB0eXBlOiAnbmVnYXRpdmUnIHwgJ3Bvc2l0aXZlJzsgLy9uZWdhdGl2ZTogY2jhu4kgbmjhuq1wIHPhu5Egw6JtLCBwb3NpdGl2ZTogY2jhu4kgc+G7kSBkxrDGoW5nXHJcbiAgQElucHV0KCkgcHJlY2lzaW9uOiBudW1iZXIgPSAzOyAvL3Phu5EgY2jhu68gc+G7kSB0aOG6rXAgcGjDom4gXHJcblxyXG4gIGlzUmVhZG9ubHkgPSBmYWxzZTtcclxuICBASW5wdXQoKSBzZXQgcmVhZG9ubHkodmFsOiBib29sZWFuIHwgJycpIHtcclxuICAgIHRoaXMuaXNSZWFkb25seSA9ICh2YWwgPT09ICcnKSB8fCB2YWw7XHJcbiAgfVxyXG5cclxuICAjbWluOiBudW1iZXI7XHJcbiAgQElucHV0KCkgc2V0IG1pbih2YWw6IG51bWJlcikge1xyXG4gICAgdGhpcy4jbWluID0gdmFsO1xyXG4gIH1cclxuXHJcbiAgI21heDogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIHNldCBtYXgodmFsOiBudW1iZXIpIHtcclxuICAgIHRoaXMuI21heCA9IHZhbDtcclxuICB9XHJcblxyXG4gICN2YWxpZGF0b3I6ICh2YWx1ZTogYW55KSA9PiBzdHJpbmcgfCBQcm9taXNlPHN0cmluZz47XHJcbiAgQElucHV0KCkgc2V0IHZhbGlkYXRvcih2YWxpZGF0b3I6ICh2YWx1ZTogYW55KSA9PiBzdHJpbmcgfCBQcm9taXNlPHN0cmluZz4pIHtcclxuICAgIHRoaXMuI3ZhbGlkYXRvciA9IHZhbGlkYXRvcjtcclxuICAgIHRoaXMuI3VwZGF0ZVZhbGlkYXRvcigpO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KCkgc2V0IGRpc2FibGVkKHZhbDogYm9vbGVhbiB8ICcnKSB7XHJcbiAgICB2YWwgPSAodmFsID09PSAnJykgfHwgdmFsO1xyXG4gICAgaWYgKHZhbCkge1xyXG4gICAgICB0aGlzLmlucHV0Q29udHJvbC5kaXNhYmxlKCk7XHJcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2wuZGlzYWJsZSgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5pbnB1dENvbnRyb2wuZW5hYmxlKCk7XHJcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2wuZW5hYmxlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBJbnB1dCgpIGFwcGVhcmFuY2U6IE1hdEZvcm1GaWVsZEFwcGVhcmFuY2U7XHJcblxyXG4gIEBPdXRwdXQoKSBzZENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKSBzZEZvY3VzID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQE91dHB1dCgpIHNkRm9jdXNGb3JjZUJsdXIgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAT3V0cHV0KCkga2V5dXBFbnRlciA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQFZpZXdDaGlsZCgnY29udHJvbCcpIGNvbnRyb2w6IEVsZW1lbnRSZWY7XHJcbiAgZm9ybUNvbnRyb2wgPSBuZXcgU2RGb3JtQ29udHJvbCgpO1xyXG4gIGlucHV0Q29udHJvbCA9IG5ldyBTZEZvcm1Db250cm9sKCk7XHJcbiAgI3N1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcclxuICBtYXRjaGVyID0gbmV3IFNkSW5wdXROdW1iZXJFcnJvdFN0YXRlTWF0Y2hlcih0aGlzLmZvcm1Db250cm9sKTtcclxuXHJcbiAgQENvbnRlbnRDaGlsZChTZFZpZXdEZWZEaXJlY3RpdmUpIHNkVmlldzogU2RWaWV3RGVmRGlyZWN0aXZlO1xyXG4gIEBDb250ZW50Q2hpbGQoU2RTdWZmaXhEaXJlY3RpdmUpIHNkU3VmZml4OiBTZFN1ZmZpeERpcmVjdGl2ZTtcclxuICBAQ29udGVudENoaWxkKFNkTGFiZWxEZWZEaXJlY3RpdmUpIHNkTGFiZWxEZWY6IFNkTGFiZWxEZWZEaXJlY3RpdmU7XHJcbiAgaXNGb2N1c2VkID0gZmFsc2U7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBASW5qZWN0KEZPUk1fQ09ORklHKSBAT3B0aW9uYWwoKSBwcml2YXRlIGZvcm1Db25maWc6IElGb3JtQ29uZmlndXJhdGlvbikge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmFwcGVhcmFuY2UgPSB0aGlzLmFwcGVhcmFuY2UgfHwgdGhpcy5mb3JtQ29uZmlnPy5hcHBlYXJhbmNlO1xyXG4gICAgdGhpcy4jc3Vic2NyaXB0aW9uLmFkZCh0aGlzLmlucHV0Q29udHJvbC50b3VjaENoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgdGhpcy5mb3JtQ29udHJvbC5tYXJrQXNUb3VjaGVkKCk7XHJcbiAgICAgIHRoaXMucmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgfSkpO1xyXG4gICAgdGhpcy4jc3Vic2NyaXB0aW9uLmFkZCh0aGlzLmZvcm1Db250cm9sLnNkQ2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICB0aGlzLnJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICAgIH0pKTtcclxuICAgIHRoaXMuI3N1YnNjcmlwdGlvbi5hZGQodGhpcy5pbnB1dENvbnRyb2wuc2RDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIHRoaXMucmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgfSkpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xyXG4gICAgaWYgKGNoYW5nZXM/LnR5cGU/LnByZXZpb3VzVmFsdWUgIT0gY2hhbmdlcz8udHlwZT8uY3VycmVudFZhbHVlIHx8IGNoYW5nZXM/LnByZWNpc2lvbj8ucHJldmlvdXNWYWx1ZSAhPSBjaGFuZ2VzPy5wcmVjaXNpb24/LmN1cnJlbnRWYWx1ZSkge1xyXG4gICAgICB0aGlzLiNyZWdleERlY2ltYWwgPSBgKChbMC05XSsoXFxcXC5bMC05XSk/KSsoXFxcXCxbMC05XXswLCR7dGhpcy5wcmVjaXNpb259fSl7MCwxfSkkYDtcclxuICAgICAgaWYgKHRoaXMucHJlY2lzaW9uID09IDApIHtcclxuICAgICAgICB0aGlzLiNyZWdleERlY2ltYWwgPSBgKChbMC05XSsoXFxcXC5bMC05XSk/KSspJGA7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMudHlwZSA9PSAnbmVnYXRpdmUnKSB7XHJcbiAgICAgICAgdGhpcy4jcmVnZXhEZWNpbWFsID0gYFstXSR7dGhpcy4jcmVnZXhEZWNpbWFsfWA7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKCF0aGlzLnR5cGUpIHtcclxuICAgICAgICB0aGlzLiNyZWdleERlY2ltYWwgPSBgWy1dPyR7dGhpcy4jcmVnZXhEZWNpbWFsfWA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIHRoaXMuI3N1YnNjcmlwdGlvbi5hZGQodGhpcy5pbnB1dENvbnRyb2wudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIGNvbnN0IHZhbCA9IHRoaXMuaW5wdXRDb250cm9sLnZhbHVlO1xyXG4gICAgICBpZiAoIXZhbCkge1xyXG4gICAgICAgIHRoaXMuI29uQ2hhbmdlKHVuZGVmaW5lZCk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGxldCB2YWx1ZSA9IHRoaXMuI3RvTnVtYmVyKHZhbCk7XHJcbiAgICAgIGlmICh2YWx1ZSAhPT0gTmFOKSB7XHJcbiAgICAgICAgaWYgKCh0aGlzLiNtaW4gfHwgdGhpcy4jbWluID09PSAwKSAmJiB2YWx1ZSA8IHRoaXMuI21pbikge1xyXG4gICAgICAgICAgdmFsdWUgPSB0aGlzLiNtaW47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICgodGhpcy4jbWF4IHx8IHRoaXMuI21heCA9PT0gMCkgJiYgdmFsdWUgPiB0aGlzLiNtYXgpIHtcclxuICAgICAgICAgIHZhbHVlID0gdGhpcy4jbWF4O1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmlucHV0Q29udHJvbC5zZXRWYWx1ZShOdW1iZXIudG9WTkN1cnJlbmN5KHZhbHVlKSwge1xyXG4gICAgICAgICAgZW1pdEV2ZW50OiBmYWxzZVxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMuI29uQ2hhbmdlKHZhbHVlKTtcclxuICAgICAgfVxyXG4gICAgfSkpO1xyXG4gICAgdGhpcy4jZm9ybT8uYWRkQ29udHJvbCh0aGlzLiNuYW1lLCB0aGlzLmZvcm1Db250cm9sKTtcclxuICAgIHRoaXMucmVmLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gICNnZXRWYWx1ZVdpdGhGb3JtYXQgPSAodmFsdWU6IHN0cmluZykgPT4ge1xyXG4gICAgY29uc3QgYXJyYXlOZXh0ID0gdmFsdWUuc3BsaXQoJywnKTtcclxuICAgIGlmIChhcnJheU5leHQubGVuZ3RoID49IDIpIHtcclxuICAgICAgcmV0dXJuIGAke3RoaXMuI2Zvcm1hdE51bWJlcihhcnJheU5leHRbMF0pfSwke2FycmF5TmV4dFsxXX1gO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXMuI2Zvcm1hdE51bWJlcih2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICAjZm9ybWF0TnVtYmVyID0gKHRleHQ6IGFueSkgPT4ge1xyXG4gICAgcmV0dXJuIE51bWJlci50b1ZOQ3VycmVuY3koKHRleHQ/LnRvU3RyaW5nKCkgfHwgJycpLnJlcGxhY2UoL1xcLi9nLCAnJykpO1xyXG4gICAgLy8gY29uc3QgYXJyczogc3RyaW5nW10gPSAodGV4dD8udG9TdHJpbmcoKSB8fCAnJykucmVwbGFjZSgvXFwuL2csICcnKS5zcGxpdCgnJyk7XHJcbiAgICAvLyByZXR1cm4gYXJycy5yZXZlcnNlKCkucmVkdWNlKChhY2MsIG51bSwgaW5kZXgpID0+IHtcclxuICAgIC8vICAgcmV0dXJuIG51bSArIChudW0gIT09ICctJyAmJiBpbmRleCAmJiAhKGluZGV4ICUgMykgPyAnLicgOiAnJykgKyBhY2M7XHJcbiAgICAvLyB9LCAnJyk7XHJcbiAgfVxyXG5cclxuICAjdG9OdW1iZXIgPSAodGV4dDogYW55KSA9PiArKCh0ZXh0Py50b1N0cmluZygpIHx8ICcnKS5yZXBsYWNlKC9cXC4vZywgJycpLnJlcGxhY2UoLywvZywgJy4nKSk7XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy4jZm9ybT8ucmVtb3ZlQ29udHJvbCh0aGlzLiNuYW1lKTtcclxuICAgIHRoaXMuI3N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgcmVWYWxpZGF0ZSA9ICgpID0+IHtcclxuICAgIHRoaXMuZm9ybUNvbnRyb2wudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gIH1cclxuXHJcbiAgI3VwZGF0ZVZhbGlkYXRvciA9ICgpID0+IHtcclxuICAgIHRoaXMuZm9ybUNvbnRyb2wuY2xlYXJWYWxpZGF0b3JzKCk7XHJcbiAgICB0aGlzLmZvcm1Db250cm9sLmNsZWFyQXN5bmNWYWxpZGF0b3JzKCk7XHJcbiAgICBjb25zdCB2YWxpZGF0b3JzOiBWYWxpZGF0b3JGbltdID0gW107XHJcbiAgICBjb25zdCBhc3luY1ZhbGlkYXRvcnM6IEFzeW5jVmFsaWRhdG9yRm5bXSA9IFtdO1xyXG4gICAgaWYgKHRoaXMuaXNSZXF1aXJlZCkge1xyXG4gICAgICB2YWxpZGF0b3JzLnB1c2goVmFsaWRhdG9ycy5yZXF1aXJlZCk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy4jdmFsaWRhdG9yKSB7XHJcbiAgICAgIGFzeW5jVmFsaWRhdG9ycy5wdXNoKHRoaXMuI2N1c3RvbVZhbGlkYXRvcih0aGlzLiN2YWxpZGF0b3IpKTtcclxuICAgIH1cclxuICAgIHRoaXMuZm9ybUNvbnRyb2wuc2V0VmFsaWRhdG9ycyh2YWxpZGF0b3JzKTtcclxuICAgIHRoaXMuZm9ybUNvbnRyb2wuc2V0QXN5bmNWYWxpZGF0b3JzKGFzeW5jVmFsaWRhdG9ycyk7XHJcbiAgICB0aGlzLmZvcm1Db250cm9sLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuICB9XHJcblxyXG4gICNvbkNoYW5nZSA9ICh2YWx1ZTogYW55KSA9PiB7XHJcbiAgICB0aGlzLmZvcm1Db250cm9sLnNldFZhbHVlKHZhbHVlKTtcclxuICAgIHRoaXMubW9kZWxDaGFuZ2UuZW1pdCh2YWx1ZSk7XHJcbiAgICB0aGlzLnNkQ2hhbmdlLmVtaXQodmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgb25LZXl1cEVudGVyID0gKCkgPT4ge1xyXG4gICAgY29uc3QgdmFsOiBzdHJpbmcgPSAodGhpcy5pbnB1dENvbnRyb2wudmFsdWUgPz8gJycpLnRvU3RyaW5nKCk7XHJcbiAgICBpZiAodmFsLmxlbmd0aCA+IHZhbC50cmltKCkubGVuZ3RoKSB7XHJcbiAgICAgIHRoaXMuaW5wdXRDb250cm9sLnNldFZhbHVlKHZhbC50cmltKCkpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5rZXl1cEVudGVyLmVtaXQodGhpcy5pbnB1dENvbnRyb2wudmFsdWUpO1xyXG4gICAgaWYgKHRoaXMuI2JsdXJPbkVudGVyKSB7XHJcbiAgICAgIHRoaXMuYmx1cigpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25LZXlkb3duID0gKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB7XHJcbiAgICBpZiAoZXZlbnQuY3RybEtleSAmJiBldmVudC5rZXkgPT0gJ3YnKSB7XHJcbiAgICAgIHRoaXMuI2NoZWNrVmFsdWUoZXZlbnQsICcnKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgY29uc3Qga2V5ID0gZXZlbnQua2V5Q29kZSB8fCBldmVudC5jaGFyQ29kZTtcclxuICAgIGlmIChrZXkgPT0gOCB8fCBrZXkgPT0gNDYgfHwga2V5ID09IDM3IHx8IGtleSA9PSAzOSB8fCBrZXkgPT0gMzUgfHwga2V5ID09IDM2IHx8IGtleSA9PSA5KSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGlmIChldmVudC5jdHJsS2V5ICYmIChldmVudC5rZXkgPT0gJ2MnIHx8IGV2ZW50LmtleSA9PSAneCcgfHwgZXZlbnQua2V5ID09ICdhJykpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgaWYgKGV2ZW50LnNoaWZ0S2V5ICYmIGtleSA9PSA5KSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMuI2NoZWNrVmFsdWUoZXZlbnQsIGV2ZW50LmtleSk7XHJcbiAgfVxyXG5cclxuICBvblBhc3RlKGV2ZW50OiBDbGlwYm9hcmRFdmVudCkge1xyXG4gICAgY29uc3QgbmV4dEtleSA9IGV2ZW50LmNsaXBib2FyZERhdGEuZ2V0RGF0YSgndGV4dCcpO1xyXG4gICAgdGhpcy4jY2hlY2tWYWx1ZShldmVudCwgbmV4dEtleSlcclxuICB9XHJcblxyXG4gICNjaGVja1ZhbHVlID0gKGV2ZW50LCBuZXh0S2V5KSA9PiB7XHJcbiAgICBjb25zb2xlLmxvZyhldmVudCwgbmV4dEtleSk7XHJcbiAgICBjb25zdCBjdXJyZW50OiBzdHJpbmcgPSBldmVudC50YXJnZXQudmFsdWU7XHJcbiAgICAvLyBpZih0aGlzLiNtYXggPT09ICtjdXJyZW50LnRvU3RyaW5nKCkucmVwbGFjZSgvXFwuL2csICcnKS5yZXBsYWNlKC8sL2csICcuJykpe1xyXG4gICAgLy8gICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgLy8gICByZXR1cm47XHJcbiAgICAvLyB9XHJcbiAgICBjb25zdCBjdXJ2YWxfYXJyID0gY3VycmVudC5zcGxpdChcIlwiKTtcclxuICAgIGN1cnZhbF9hcnIuc3BsaWNlKGV2ZW50LnRhcmdldC5zZWxlY3Rpb25TdGFydCwgKGV2ZW50LnRhcmdldC5zZWxlY3Rpb25FbmQgLSBldmVudC50YXJnZXQuc2VsZWN0aW9uU3RhcnQpLCBuZXh0S2V5KTtcclxuICAgIGNvbnN0IG5ld3ZhbCA9IGN1cnZhbF9hcnIuam9pbihcIlwiKTtcclxuICAgIGlmICh0aGlzLnR5cGUgIT09ICdwb3NpdGl2ZScgJiYgbmV3dmFsID09PSAnLScpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgY29uc3QgcmVnRXhwOiBSZWdFeHAgPSBuZXcgUmVnRXhwKGBeJHt0aGlzLiNyZWdleERlY2ltYWx9YCwgJ2cnKTtcclxuICAgIGlmIChuZXd2YWwgJiYgIVN0cmluZyhuZXd2YWwpLm1hdGNoKHJlZ0V4cCkpIHtcclxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgY29uc3QgdmFsdWUgPSAobmV3dmFsLnRvU3RyaW5nKCkucmVwbGFjZSgvXFwuL2csICcnKS5yZXBsYWNlKC8sL2csICcuJykpO1xyXG4gICAgaWYgKCh0aGlzLiNtYXggfHwgdGhpcy4jbWF4ID09PSAwKSAmJiArdmFsdWUgPiB0aGlzLiNtYXgpIHtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5pbnB1dENvbnRyb2wuc2V0VmFsdWUodGhpcy4jZ2V0VmFsdWVXaXRoRm9ybWF0KHRoaXMuI21heC50b1N0cmluZygpLnJlcGxhY2UoL1xcLi9nLCAnLCcpKSk7XHJcbiAgICAgIH0sIDEwKTtcclxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uRm9jdXMgPSAoKSA9PiB7XHJcbiAgICB0aGlzLmlzRm9jdXNlZCA9IHRydWU7XHJcbiAgICB0aGlzLnNkRm9jdXMuZW1pdCgpO1xyXG4gICAgaWYgKHRoaXMuc2RGb2N1c0ZvcmNlQmx1ci5vYnNlcnZlcnM/Lmxlbmd0aCA+IDApIHtcclxuICAgICAgdGhpcy5ibHVyKCk7XHJcbiAgICAgIHRoaXMuc2RGb2N1c0ZvcmNlQmx1ci5lbWl0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkJsdXIgPSAoKSA9PiB7XHJcbiAgICB0aGlzLmlzRm9jdXNlZCA9IGZhbHNlO1xyXG4gICAgbGV0IHZhbDogc3RyaW5nID0gKHRoaXMuaW5wdXRDb250cm9sLnZhbHVlID8/ICcnKS50b1N0cmluZygpO1xyXG4gICAgY29uc3QgYXJyYXlWYWx1ZSA9IHZhbC5zcGxpdCgnLCcpO1xyXG4gICAgaWYgKGFycmF5VmFsdWUubGVuZ3RoID49IDIgJiYgYXJyYXlWYWx1ZVsxXSA9PSAnJykge1xyXG4gICAgICB0aGlzLmlucHV0Q29udHJvbC5zZXRWYWx1ZSh0aGlzLiNmb3JtYXROdW1iZXIoYXJyYXlWYWx1ZVswXSkpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBpZiAodmFsLmxlbmd0aCA+IHZhbC50cmltKCkubGVuZ3RoKSB7XHJcbiAgICAgIHRoaXMuaW5wdXRDb250cm9sLnNldFZhbHVlKHZhbC50cmltKCkpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25DbGljayA9ICgpID0+IHtcclxuICAgIGlmICh0aGlzLnNkVmlldz8udGVtcGxhdGVSZWYpIHtcclxuICAgICAgaWYgKCF0aGlzLmZvcm1Db250cm9sLmRpc2FibGVkICYmICF0aGlzLmlzRm9jdXNlZCkge1xyXG4gICAgICAgIHRoaXMuZm9jdXMoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYmx1ciA9ICgpID0+IHtcclxuICAgIHRoaXMuaXNGb2N1c2VkID0gZmFsc2U7XHJcbiAgICB0aGlzLmNvbnRyb2w/Lm5hdGl2ZUVsZW1lbnQ/LmJsdXIoKTtcclxuICB9XHJcblxyXG4gIGZvY3VzID0gKCkgPT4ge1xyXG4gICAgdGhpcy5pc0ZvY3VzZWQgPSB0cnVlO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuY29udHJvbD8ubmF0aXZlRWxlbWVudD8uZm9jdXMoKTtcclxuICAgIH0sIDEwMCk7XHJcbiAgfVxyXG5cclxuICAjY3VzdG9tVmFsaWRhdG9yID0gKGZ1bmM6ICh2YWx1ZTogYW55KSA9PiBzdHJpbmcgfCBQcm9taXNlPHN0cmluZz4pOiBBc3luY1ZhbGlkYXRvckZuID0+IHtcclxuICAgIHJldHVybiBhc3luYyAoYzogQWJzdHJhY3RDb250cm9sKTogUHJvbWlzZTx7IFtrZXk6IHN0cmluZ106IGFueSB9IHwgbnVsbD4gPT4ge1xyXG4gICAgICBjb25zdCB2YWx1ZSA9IGMudmFsdWUgfHwgbnVsbDtcclxuICAgICAgaWYgKGZ1bmMgJiYgdHlwZW9mIChmdW5jKSA9PT0gJ2Z1bmN0aW9uJykge1xyXG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IGZ1bmModmFsdWUpO1xyXG4gICAgICAgIGlmIChyZXN1bHQgaW5zdGFuY2VvZiBQcm9taXNlKSB7XHJcbiAgICAgICAgICBjb25zdCBtZXNzYWdlID0gYXdhaXQgcmVzdWx0O1xyXG4gICAgICAgICAgaWYgKG1lc3NhZ2UpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICBjdXN0b21WYWxpZGF0b3I6IG1lc3NhZ2VcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBjdXN0b21WYWxpZGF0b3I6IHJlc3VsdFxyXG4gICAgICAgICAgfTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbn1cclxuIl19
|
|
379
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtbnVtYmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTVfb25lbW91bnQvRG9jdW1lbnRzL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvaW5wdXQtbnVtYmVyLyIsInNvdXJjZXMiOlsic3JjL2xpYi9pbnB1dC1udW1iZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBQ0wsU0FBUyxFQUNULE1BQU0sRUFDTixZQUFZLEVBQ1osaUJBQWlCLEVBS2pCLFlBQVksRUFDWix1QkFBdUIsRUFFdkIsTUFBTSxFQUVOLFFBQVEsRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQW1CLE1BQU0sRUFBZSxVQUFVLEVBQWdFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEosT0FBTyxLQUFLLElBQUksTUFBTSxNQUFNLENBQUM7QUFDN0IsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNwQyxPQUFPLEVBQUUsYUFBYSxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDM0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBSXRELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE1BQU0sOEJBQThCO0lBQ2xDLFlBQW9CLFdBQXdCO1FBQXhCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO0lBQUksQ0FBQztJQUNqRCxZQUFZLENBQUMsT0FBMkIsRUFBRSxJQUF3Qzs7UUFDaEYsTUFBTSxXQUFXLEdBQUcsSUFBSSxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDM0MsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFBLElBQUksQ0FBQyxXQUFXLDBDQUFFLE9BQU8sS0FBSSxDQUFDLE9B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eUJBQzlCLFlBQVksU0FBQyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBJbnB1dCxcclxuICBWaWV3Q2hpbGQsXHJcbiAgT3V0cHV0LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBPbkRlc3Ryb3ksXHJcbiAgQWZ0ZXJWaWV3SW5pdCxcclxuICBFbGVtZW50UmVmLFxyXG4gIE9uSW5pdCxcclxuICBDb250ZW50Q2hpbGQsXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgSG9zdExpc3RlbmVyLFxyXG4gIEluamVjdCxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIE9wdGlvbmFsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgTmdGb3JtLCBWYWxpZGF0b3JGbiwgVmFsaWRhdG9ycywgQXN5bmNWYWxpZGF0b3JGbiwgRm9ybUdyb3VwLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgKiBhcyB1dWlkIGZyb20gJ3V1aWQnO1xyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgU2RGb3JtQ29udHJvbCwgU2RTdWZmaXhEaXJlY3RpdmUgfSBmcm9tICdAc2QtYW5ndWxhci9jb3JlL2NvbW1vbic7XHJcbmltcG9ydCB7IFNkVmlld0RlZkRpcmVjdGl2ZSB9IGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvY29tbW9uJztcclxuaW1wb3J0IHsgRk9STV9DT05GSUcgfSBmcm9tICdAc2QtYW5ndWxhci9jb3JlL2NvbW1vbic7XHJcbmltcG9ydCB7IElGb3JtQ29uZmlndXJhdGlvbiB9IGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvY29tbW9uJztcclxuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkQXBwZWFyYW5jZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xyXG5pbXBvcnQgeyBFcnJvclN0YXRlTWF0Y2hlciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xyXG5pbXBvcnQgeyBTZExhYmVsRGVmRGlyZWN0aXZlIH0gZnJvbSAnQHNkLWFuZ3VsYXIvY29yZS9jb21tb24nO1xyXG5jbGFzcyBTZElucHV0TnVtYmVyRXJyb3RTdGF0ZU1hdGNoZXIgaW1wbGVtZW50cyBFcnJvclN0YXRlTWF0Y2hlciB7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBmb3JtQ29udHJvbDogRm9ybUNvbnRyb2wpIHsgfVxyXG4gIGlzRXJyb3JTdGF0ZShjb250cm9sOiBGb3JtQ29udHJvbCB8IG51bGwsIGZvcm06IEZvcm1Hcm91cERpcmVjdGl2ZSB8IE5nRm9ybSB8IG51bGwpOiBib29sZWFuIHtcclxuICAgIGNvbnN0IGlzU3VibWl0dGVkID0gZm9ybSAmJiBmb3JtLnN1Ym1pdHRlZDtcclxuICAgIHJldHVybiAhISh0aGlzLmZvcm1Db250cm9sPy5pbnZhbGlkICYmICh0aGlzLmZvcm1Db250cm9sPy5kaXJ0eSB8fCB0aGlzLmZvcm1Db250cm9sPy50b3VjaGVkIHx8IGlzU3VibWl0dGVkKSk7XHJcbiAgfVxyXG59XHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2QtaW5wdXQtbnVtYmVyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQtbnVtYmVyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9pbnB1dC1udW1iZXIuY29tcG9uZW50LnNjc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2RJbnB1dE51bWJlciBpbXBsZW1lbnRzIE9uRGVzdHJveSwgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcclxuICBpZCA9IGBJJHt1dWlkLnY0KCl9YDtcclxuICAjbmFtZSA9IHV1aWQudjQoKTtcclxuICAjcmVnZXhEZWNpbWFsOiBzdHJpbmdcclxuICBASW5wdXQoKSBzZXQgbmFtZSh2YWw6IHN0cmluZykge1xyXG4gICAgaWYgKHZhbCkge1xyXG4gICAgICB0aGlzLiNuYW1lID0gdmFsO1xyXG4gICAgfVxyXG4gIH1cclxuICBASW5wdXQoKSBzaXplOiAnc20nIHwgJ2xnJztcclxuICAjZm9ybTogRm9ybUdyb3VwO1xyXG4gIEBJbnB1dCgpIHNldCBmb3JtKHZhbDogTmdGb3JtIHwgRm9ybUdyb3VwKSB7XHJcbiAgICBpZiAodmFsKSB7XHJcbiAgICAgIGlmICh2YWwgaW5zdGFuY2VvZiBOZ0Zvcm0pIHtcclxuICAgICAgICB0aGlzLiNmb3JtID0gdmFsLmZvcm07XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy4jZm9ybSA9IHZhbDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBASW5wdXQoKSBsYWJlbDogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmc7XHJcbiAgZGlzYWJsZUVycm9yTWVzc2FnZSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgnZGlzYWJsZUVycm9yTWVzc2FnZScpIHNldCBfZGlzYWJsZUVycm9yTWVzc2FnZSh2YWw6IGJvb2xlYW4gfCAnJykge1xyXG4gICAgdGhpcy5kaXNhYmxlRXJyb3JNZXNzYWdlID0gKHZhbCA9PT0gJycpIHx8IHZhbDtcclxuICB9XHJcbiAgI2JsdXJPbkVudGVyID0gZmFsc2U7XHJcbiAgQElucHV0KCdibHVyT25FbnRlcicpIHNldCBfYmx1ck9uRW50ZXIodmFsOiBib29sZWFuIHwgJycpIHtcclxuICAgIHRoaXMuI2JsdXJPbkVudGVyID0gKHZhbCA9PT0gJycpIHx8IHZhbDtcclxuICB9XHJcbiAgQElucHV0KCkgc2V0IG1vZGVsKHZhbHVlOiBhbnkpIHtcclxuICAgIGlmICh0aGlzLmZvcm1Db250cm9sLnZhbHVlICE9PSB2YWx1ZSkge1xyXG4gICAgICBjb25zb2xlLmxvZyh2YWx1ZSk7XHJcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2wuc2V0VmFsdWUodmFsdWUsIHtcclxuICAgICAgICBlbWl0RXZlbnQ6IGZhbHNlXHJcbiAgICAgIH0pO1xyXG4gICAgICBpZiAodmFsdWUgfHwgdmFsdWUgPT09IDApIHtcclxuICAgICAgICBjb25zdCB2YWwgPSB2YWx1ZS50b1N0cmluZygpLnJlcGxhY2UoL1xcLi9nLCAnLCcpO1xyXG4gICAgICAgIHRoaXMuaW5wdXRDb250cm9sLnNldFZhbHVlKHRoaXMuI2dldFZhbHVlV2l0aEZvcm1hdCh2YWwpLCB7XHJcbiAgICAgICAgICBlbWl0RXZlbnQ6IGZhbHNlXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5pbnB1dENvbnRyb2wuc2V0VmFsdWUoJycsIHtcclxuICAgICAgICAgIGVtaXRFdmVudDogZmFsc2VcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBAT3V0cHV0KCkgbW9kZWxDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIC8vIFZhbGlkYXRvclxyXG4gIGlzUmVxdWlyZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBzZXQgcmVxdWlyZWQodmFsOiBib29sZWFuIHwgJycpIHtcclxuICAgIHRoaXMuaXNSZXF1aXJlZCA9ICh2YWwgPT09ICcnKSB8fCB2YWw7XHJcbiAgICB0aGlzLiN1cGRhdGVWYWxpZGF0b3IoKTtcclxuICB9XHJcbiAgQElucHV0KCkgdHlwZTogJ25lZ2F0aXZlJyB8ICdwb3NpdGl2ZSc7IC8vbmVnYXRpdmU6IGNo4buJIG5o4bqtcCBz4buRIMOibSwgcG9zaXRpdmU6IGNo4buJIHPhu5EgZMawxqFuZ1xyXG4gIEBJbnB1dCgpIHByZWNpc2lvbjogbnVtYmVyID0gMzsgLy9z4buRIGNo4buvIHPhu5EgdGjhuq1wIHBow6JuIFxyXG5cclxuICBpc1JlYWRvbmx5ID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc2V0IHJlYWRvbmx5KHZhbDogYm9vbGVhbiB8ICcnKSB7XHJcbiAgICB0aGlzLmlzUmVhZG9ubHkgPSAodmFsID09PSAnJykgfHwgdmFsO1xyXG4gIH1cclxuXHJcbiAgI21pbjogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIHNldCBtaW4odmFsOiBudW1iZXIpIHtcclxuICAgIHRoaXMuI21pbiA9IHZhbDtcclxuICB9XHJcblxyXG4gICNtYXg6IG51bWJlcjtcclxuICBASW5wdXQoKSBzZXQgbWF4KHZhbDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLiNtYXggPSB2YWw7XHJcbiAgfVxyXG5cclxuICAjdmFsaWRhdG9yOiAodmFsdWU6IGFueSkgPT4gc3RyaW5nIHwgUHJvbWlzZTxzdHJpbmc+O1xyXG4gIEBJbnB1dCgpIHNldCB2YWxpZGF0b3IodmFsaWRhdG9yOiAodmFsdWU6IGFueSkgPT4gc3RyaW5nIHwgUHJvbWlzZTxzdHJpbmc+KSB7XHJcbiAgICB0aGlzLiN2YWxpZGF0b3IgPSB2YWxpZGF0b3I7XHJcbiAgICB0aGlzLiN1cGRhdGVWYWxpZGF0b3IoKTtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpIHNldCBkaXNhYmxlZCh2YWw6IGJvb2xlYW4gfCAnJykge1xyXG4gICAgdmFsID0gKHZhbCA9PT0gJycpIHx8IHZhbDtcclxuICAgIGlmICh2YWwpIHtcclxuICAgICAgdGhpcy5pbnB1dENvbnRyb2wuZGlzYWJsZSgpO1xyXG4gICAgICB0aGlzLmZvcm1Db250cm9sLmRpc2FibGUoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuaW5wdXRDb250cm9sLmVuYWJsZSgpO1xyXG4gICAgICB0aGlzLmZvcm1Db250cm9sLmVuYWJsZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuICBASW5wdXQoKSBhcHBlYXJhbmNlOiBNYXRGb3JtRmllbGRBcHBlYXJhbmNlO1xyXG5cclxuICBAT3V0cHV0KCkgc2RDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAT3V0cHV0KCkgc2RGb2N1cyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKSBzZEZvY3VzRm9yY2VCbHVyID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQE91dHB1dCgpIGtleXVwRW50ZXIgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2NvbnRyb2wnKSBjb250cm9sOiBFbGVtZW50UmVmO1xyXG4gIGZvcm1Db250cm9sID0gbmV3IFNkRm9ybUNvbnRyb2woKTtcclxuICBpbnB1dENvbnRyb2wgPSBuZXcgU2RGb3JtQ29udHJvbCgpO1xyXG4gICNzdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKCk7XHJcbiAgbWF0Y2hlciA9IG5ldyBTZElucHV0TnVtYmVyRXJyb3RTdGF0ZU1hdGNoZXIodGhpcy5mb3JtQ29udHJvbCk7XHJcblxyXG4gIEBDb250ZW50Q2hpbGQoU2RWaWV3RGVmRGlyZWN0aXZlKSBzZFZpZXc6IFNkVmlld0RlZkRpcmVjdGl2ZTtcclxuICBAQ29udGVudENoaWxkKFNkU3VmZml4RGlyZWN0aXZlKSBzZFN1ZmZpeDogU2RTdWZmaXhEaXJlY3RpdmU7XHJcbiAgQENvbnRlbnRDaGlsZChTZExhYmVsRGVmRGlyZWN0aXZlKSBzZExhYmVsRGVmOiBTZExhYmVsRGVmRGlyZWN0aXZlO1xyXG4gIGlzRm9jdXNlZCA9IGZhbHNlO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByZWY6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgQEluamVjdChGT1JNX0NPTkZJRykgQE9wdGlvbmFsKCkgcHJpdmF0ZSBmb3JtQ29uZmlnOiBJRm9ybUNvbmZpZ3VyYXRpb24pIHtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5hcHBlYXJhbmNlID0gdGhpcy5hcHBlYXJhbmNlIHx8IHRoaXMuZm9ybUNvbmZpZz8uYXBwZWFyYW5jZTtcclxuICAgIHRoaXMuI3N1YnNjcmlwdGlvbi5hZGQodGhpcy5pbnB1dENvbnRyb2wudG91Y2hDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2wubWFya0FzVG91Y2hlZCgpO1xyXG4gICAgICB0aGlzLnJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICAgIH0pKTtcclxuICAgIHRoaXMuI3N1YnNjcmlwdGlvbi5hZGQodGhpcy5mb3JtQ29udHJvbC5zZENoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgdGhpcy5yZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICB9KSk7XHJcbiAgICB0aGlzLiNzdWJzY3JpcHRpb24uYWRkKHRoaXMuaW5wdXRDb250cm9sLnNkQ2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICB0aGlzLnJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICAgIH0pKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcclxuICAgIGlmIChjaGFuZ2VzPy50eXBlPy5wcmV2aW91c1ZhbHVlICE9IGNoYW5nZXM/LnR5cGU/LmN1cnJlbnRWYWx1ZSB8fCBjaGFuZ2VzPy5wcmVjaXNpb24/LnByZXZpb3VzVmFsdWUgIT0gY2hhbmdlcz8ucHJlY2lzaW9uPy5jdXJyZW50VmFsdWUpIHtcclxuICAgICAgdGhpcy4jcmVnZXhEZWNpbWFsID0gYCgoWzAtOV0rKFxcXFwuWzAtOV0pPykrKFxcXFwsWzAtOV17MCwke3RoaXMucHJlY2lzaW9ufX0pezAsMX0pJGA7XHJcbiAgICAgIGlmICh0aGlzLnByZWNpc2lvbiA9PSAwKSB7XHJcbiAgICAgICAgdGhpcy4jcmVnZXhEZWNpbWFsID0gYCgoWzAtOV0rKFxcXFwuWzAtOV0pPykrKSRgO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLnR5cGUgPT0gJ25lZ2F0aXZlJykge1xyXG4gICAgICAgIHRoaXMuI3JlZ2V4RGVjaW1hbCA9IGBbLV0ke3RoaXMuI3JlZ2V4RGVjaW1hbH1gO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICghdGhpcy50eXBlKSB7XHJcbiAgICAgICAgdGhpcy4jcmVnZXhEZWNpbWFsID0gYFstXT8ke3RoaXMuI3JlZ2V4RGVjaW1hbH1gO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICB0aGlzLiNzdWJzY3JpcHRpb24uYWRkKHRoaXMuaW5wdXRDb250cm9sLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICBjb25zdCB2YWwgPSB0aGlzLmlucHV0Q29udHJvbC52YWx1ZTtcclxuICAgICAgaWYgKCF2YWwpIHtcclxuICAgICAgICB0aGlzLiNvbkNoYW5nZSh1bmRlZmluZWQpO1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgICBsZXQgdmFsdWUgPSB0aGlzLiN0b051bWJlcih2YWwpO1xyXG4gICAgICBpZiAoaXNOYU4odmFsKSkge1xyXG4gICAgICAgIGlmICgodGhpcy4jbWluIHx8IHRoaXMuI21pbiA9PT0gMCkgJiYgdmFsdWUgPCB0aGlzLiNtaW4pIHtcclxuICAgICAgICAgIHZhbHVlID0gdGhpcy4jbWluO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoKHRoaXMuI21heCB8fCB0aGlzLiNtYXggPT09IDApICYmIHZhbHVlID4gdGhpcy4jbWF4KSB7XHJcbiAgICAgICAgICB2YWx1ZSA9IHRoaXMuI21heDtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5pbnB1dENvbnRyb2wuc2V0VmFsdWUoTnVtYmVyLnRvVk5DdXJyZW5jeSh2YWx1ZSksIHtcclxuICAgICAgICAgIGVtaXRFdmVudDogZmFsc2VcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLiNvbkNoYW5nZSh2YWx1ZSk7XHJcbiAgICAgIH1cclxuICAgIH0pKTtcclxuICAgIHRoaXMuI2Zvcm0/LmFkZENvbnRyb2wodGhpcy4jbmFtZSwgdGhpcy5mb3JtQ29udHJvbCk7XHJcbiAgICB0aGlzLnJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG5cclxuICAjZ2V0VmFsdWVXaXRoRm9ybWF0ID0gKHZhbHVlOiBzdHJpbmcpID0+IHtcclxuICAgIGNvbnN0IGFycmF5TmV4dCA9IHZhbHVlLnNwbGl0KCcsJyk7XHJcbiAgICBpZiAoYXJyYXlOZXh0Lmxlbmd0aCA+PSAyKSB7XHJcbiAgICAgIHJldHVybiBgJHt0aGlzLiNmb3JtYXROdW1iZXIoYXJyYXlOZXh0WzBdKX0sJHthcnJheU5leHRbMV19YDtcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLiNmb3JtYXROdW1iZXIodmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgI2Zvcm1hdE51bWJlciA9ICh0ZXh0OiBhbnkpID0+IHtcclxuICAgIHJldHVybiBOdW1iZXIudG9WTkN1cnJlbmN5KCh0ZXh0Py50b1N0cmluZygpIHx8ICcnKS5yZXBsYWNlKC9cXC4vZywgJycpKTtcclxuICAgIC8vIGNvbnN0IGFycnM6IHN0cmluZ1tdID0gKHRleHQ/LnRvU3RyaW5nKCkgfHwgJycpLnJlcGxhY2UoL1xcLi9nLCAnJykuc3BsaXQoJycpO1xyXG4gICAgLy8gcmV0dXJuIGFycnMucmV2ZXJzZSgpLnJlZHVjZSgoYWNjLCBudW0sIGluZGV4KSA9PiB7XHJcbiAgICAvLyAgIHJldHVybiBudW0gKyAobnVtICE9PSAnLScgJiYgaW5kZXggJiYgIShpbmRleCAlIDMpID8gJy4nIDogJycpICsgYWNjO1xyXG4gICAgLy8gfSwgJycpO1xyXG4gIH1cclxuXHJcbiAgI3RvTnVtYmVyID0gKHRleHQ6IGFueSkgPT4gKygodGV4dD8udG9TdHJpbmcoKSB8fCAnJykucmVwbGFjZSgvXFwuL2csICcnKS5yZXBsYWNlKC8sL2csICcuJykpO1xyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMuI2Zvcm0/LnJlbW92ZUNvbnRyb2wodGhpcy4jbmFtZSk7XHJcbiAgICB0aGlzLiNzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIHJlVmFsaWRhdGUgPSAoKSA9PiB7XHJcbiAgICB0aGlzLmZvcm1Db250cm9sLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuICB9XHJcblxyXG4gICN1cGRhdGVWYWxpZGF0b3IgPSAoKSA9PiB7XHJcbiAgICB0aGlzLmZvcm1Db250cm9sLmNsZWFyVmFsaWRhdG9ycygpO1xyXG4gICAgdGhpcy5mb3JtQ29udHJvbC5jbGVhckFzeW5jVmFsaWRhdG9ycygpO1xyXG4gICAgY29uc3QgdmFsaWRhdG9yczogVmFsaWRhdG9yRm5bXSA9IFtdO1xyXG4gICAgY29uc3QgYXN5bmNWYWxpZGF0b3JzOiBBc3luY1ZhbGlkYXRvckZuW10gPSBbXTtcclxuICAgIGlmICh0aGlzLmlzUmVxdWlyZWQpIHtcclxuICAgICAgdmFsaWRhdG9ycy5wdXNoKFZhbGlkYXRvcnMucmVxdWlyZWQpO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuI3ZhbGlkYXRvcikge1xyXG4gICAgICBhc3luY1ZhbGlkYXRvcnMucHVzaCh0aGlzLiNjdXN0b21WYWxpZGF0b3IodGhpcy4jdmFsaWRhdG9yKSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmZvcm1Db250cm9sLnNldFZhbGlkYXRvcnModmFsaWRhdG9ycyk7XHJcbiAgICB0aGlzLmZvcm1Db250cm9sLnNldEFzeW5jVmFsaWRhdG9ycyhhc3luY1ZhbGlkYXRvcnMpO1xyXG4gICAgdGhpcy5mb3JtQ29udHJvbC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgfVxyXG5cclxuICAjb25DaGFuZ2UgPSAodmFsdWU6IGFueSkgPT4ge1xyXG4gICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWx1ZSh2YWx1ZSk7XHJcbiAgICB0aGlzLm1vZGVsQ2hhbmdlLmVtaXQodmFsdWUpO1xyXG4gICAgdGhpcy5zZENoYW5nZS5lbWl0KHZhbHVlKTtcclxuICB9XHJcblxyXG4gIG9uS2V5dXBFbnRlciA9ICgpID0+IHtcclxuICAgIGNvbnN0IHZhbDogc3RyaW5nID0gKHRoaXMuaW5wdXRDb250cm9sLnZhbHVlID8/ICcnKS50b1N0cmluZygpO1xyXG4gICAgaWYgKHZhbC5sZW5ndGggPiB2YWwudHJpbSgpLmxlbmd0aCkge1xyXG4gICAgICB0aGlzLmlucHV0Q29udHJvbC5zZXRWYWx1ZSh2YWwudHJpbSgpKTtcclxuICAgIH1cclxuICAgIHRoaXMua2V5dXBFbnRlci5lbWl0KHRoaXMuaW5wdXRDb250cm9sLnZhbHVlKTtcclxuICAgIGlmICh0aGlzLiNibHVyT25FbnRlcikge1xyXG4gICAgICB0aGlzLmJsdXIoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uS2V5ZG93biA9IChldmVudDogS2V5Ym9hcmRFdmVudCkgPT4ge1xyXG4gICAgaWYgKGV2ZW50LmN0cmxLZXkgJiYgZXZlbnQua2V5ID09ICd2Jykge1xyXG4gICAgICB0aGlzLiNjaGVja1ZhbHVlKGV2ZW50LCAnJyk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGNvbnN0IGtleSA9IGV2ZW50LmtleUNvZGUgfHwgZXZlbnQuY2hhckNvZGU7XHJcbiAgICBpZiAoa2V5ID09IDggfHwga2V5ID09IDQ2IHx8IGtleSA9PSAzNyB8fCBrZXkgPT0gMzkgfHwga2V5ID09IDM1IHx8IGtleSA9PSAzNiB8fCBrZXkgPT0gOSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBpZiAoZXZlbnQuY3RybEtleSAmJiAoZXZlbnQua2V5ID09ICdjJyB8fCBldmVudC5rZXkgPT0gJ3gnIHx8IGV2ZW50LmtleSA9PSAnYScpKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGlmIChldmVudC5zaGlmdEtleSAmJiBrZXkgPT0gOSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLiNjaGVja1ZhbHVlKGV2ZW50LCBldmVudC5rZXkpO1xyXG4gIH1cclxuXHJcbiAgb25QYXN0ZShldmVudDogQ2xpcGJvYXJkRXZlbnQpIHtcclxuICAgIGNvbnN0IG5leHRLZXkgPSBldmVudC5jbGlwYm9hcmREYXRhLmdldERhdGEoJ3RleHQnKTtcclxuICAgIHRoaXMuI2NoZWNrVmFsdWUoZXZlbnQsIG5leHRLZXkpXHJcbiAgfVxyXG5cclxuICAjY2hlY2tWYWx1ZSA9IChldmVudCwgbmV4dEtleSkgPT4ge1xyXG4gICAgY29uc3QgY3VycmVudDogc3RyaW5nID0gZXZlbnQudGFyZ2V0LnZhbHVlO1xyXG4gICAgLy8gaWYodGhpcy4jbWF4ID09PSArY3VycmVudC50b1N0cmluZygpLnJlcGxhY2UoL1xcLi9nLCAnJykucmVwbGFjZSgvLC9nLCAnLicpKXtcclxuICAgIC8vICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIC8vICAgcmV0dXJuO1xyXG4gICAgLy8gfVxyXG4gICAgY29uc3QgY3VydmFsX2FyciA9IGN1cnJlbnQuc3BsaXQoXCJcIik7XHJcbiAgICBjdXJ2YWxfYXJyLnNwbGljZShldmVudC50YXJnZXQuc2VsZWN0aW9uU3RhcnQsIChldmVudC50YXJnZXQuc2VsZWN0aW9uRW5kIC0gZXZlbnQudGFyZ2V0LnNlbGVjdGlvblN0YXJ0KSwgbmV4dEtleSk7XHJcbiAgICBjb25zdCBuZXd2YWwgPSBjdXJ2YWxfYXJyLmpvaW4oXCJcIik7XHJcbiAgICBpZiAodGhpcy50eXBlICE9PSAncG9zaXRpdmUnICYmIG5ld3ZhbCA9PT0gJy0nKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGNvbnN0IHJlZ0V4cDogUmVnRXhwID0gbmV3IFJlZ0V4cChgXiR7dGhpcy4jcmVnZXhEZWNpbWFsfWAsICdnJyk7XHJcbiAgICBpZiAobmV3dmFsICYmICFTdHJpbmcobmV3dmFsKS5tYXRjaChyZWdFeHApKSB7XHJcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGNvbnN0IHZhbHVlID0gKG5ld3ZhbC50b1N0cmluZygpLnJlcGxhY2UoL1xcLi9nLCAnJykucmVwbGFjZSgvLC9nLCAnLicpKTtcclxuICAgIGlmICgodGhpcy4jbWF4IHx8IHRoaXMuI21heCA9PT0gMCkgJiYgK3ZhbHVlID4gdGhpcy4jbWF4KSB7XHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuaW5wdXRDb250cm9sLnNldFZhbHVlKHRoaXMuI2dldFZhbHVlV2l0aEZvcm1hdCh0aGlzLiNtYXgudG9TdHJpbmcoKS5yZXBsYWNlKC9cXC4vZywgJywnKSkpO1xyXG4gICAgICB9LCAxMCk7XHJcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkZvY3VzID0gKCkgPT4ge1xyXG4gICAgdGhpcy5pc0ZvY3VzZWQgPSB0cnVlO1xyXG4gICAgdGhpcy5zZEZvY3VzLmVtaXQoKTtcclxuICAgIGlmICh0aGlzLnNkRm9jdXNGb3JjZUJsdXIub2JzZXJ2ZXJzPy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIHRoaXMuYmx1cigpO1xyXG4gICAgICB0aGlzLnNkRm9jdXNGb3JjZUJsdXIuZW1pdCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25CbHVyID0gKCkgPT4ge1xyXG4gICAgdGhpcy5pc0ZvY3VzZWQgPSBmYWxzZTtcclxuICAgIGxldCB2YWw6IHN0cmluZyA9ICh0aGlzLmlucHV0Q29udHJvbC52YWx1ZSA/PyAnJykudG9TdHJpbmcoKTtcclxuICAgIGNvbnN0IGFycmF5VmFsdWUgPSB2YWwuc3BsaXQoJywnKTtcclxuICAgIGlmIChhcnJheVZhbHVlLmxlbmd0aCA+PSAyICYmIGFycmF5VmFsdWVbMV0gPT0gJycpIHtcclxuICAgICAgdGhpcy5pbnB1dENvbnRyb2wuc2V0VmFsdWUodGhpcy4jZm9ybWF0TnVtYmVyKGFycmF5VmFsdWVbMF0pKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgaWYgKHZhbC5sZW5ndGggPiB2YWwudHJpbSgpLmxlbmd0aCkge1xyXG4gICAgICB0aGlzLmlucHV0Q29udHJvbC5zZXRWYWx1ZSh2YWwudHJpbSgpKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uQ2xpY2sgPSAoKSA9PiB7XHJcbiAgICBpZiAodGhpcy5zZFZpZXc/LnRlbXBsYXRlUmVmKSB7XHJcbiAgICAgIGlmICghdGhpcy5mb3JtQ29udHJvbC5kaXNhYmxlZCAmJiAhdGhpcy5pc0ZvY3VzZWQpIHtcclxuICAgICAgICB0aGlzLmZvY3VzKCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGJsdXIgPSAoKSA9PiB7XHJcbiAgICB0aGlzLmlzRm9jdXNlZCA9IGZhbHNlO1xyXG4gICAgdGhpcy5jb250cm9sPy5uYXRpdmVFbGVtZW50Py5ibHVyKCk7XHJcbiAgfVxyXG5cclxuICBmb2N1cyA9ICgpID0+IHtcclxuICAgIHRoaXMuaXNGb2N1c2VkID0gdHJ1ZTtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLmNvbnRyb2w/Lm5hdGl2ZUVsZW1lbnQ/LmZvY3VzKCk7XHJcbiAgICB9LCAxMDApO1xyXG4gIH1cclxuXHJcbiAgI2N1c3RvbVZhbGlkYXRvciA9IChmdW5jOiAodmFsdWU6IGFueSkgPT4gc3RyaW5nIHwgUHJvbWlzZTxzdHJpbmc+KTogQXN5bmNWYWxpZGF0b3JGbiA9PiB7XHJcbiAgICByZXR1cm4gYXN5bmMgKGM6IEFic3RyYWN0Q29udHJvbCk6IFByb21pc2U8eyBba2V5OiBzdHJpbmddOiBhbnkgfSB8IG51bGw+ID0+IHtcclxuICAgICAgY29uc3QgdmFsdWUgPSBjLnZhbHVlIHx8IG51bGw7XHJcbiAgICAgIGlmIChmdW5jICYmIHR5cGVvZiAoZnVuYykgPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgICBjb25zdCByZXN1bHQgPSBmdW5jKHZhbHVlKTtcclxuICAgICAgICBpZiAocmVzdWx0IGluc3RhbmNlb2YgUHJvbWlzZSkge1xyXG4gICAgICAgICAgY29uc3QgbWVzc2FnZSA9IGF3YWl0IHJlc3VsdDtcclxuICAgICAgICAgIGlmIChtZXNzYWdlKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgY3VzdG9tVmFsaWRhdG9yOiBtZXNzYWdlXHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHJlc3VsdCkge1xyXG4gICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgY3VzdG9tVmFsaWRhdG9yOiByZXN1bHRcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
|
|
@@ -118,7 +118,6 @@ class SdInputNumber {
|
|
|
118
118
|
__classPrivateFieldGet(this, _checkValue).call(this, event, event.key);
|
|
119
119
|
};
|
|
120
120
|
_checkValue.set(this, (event, nextKey) => {
|
|
121
|
-
console.log(event, nextKey);
|
|
122
121
|
const current = event.target.value;
|
|
123
122
|
// if(this.#max === +current.toString().replace(/\./g, '').replace(/,/g, '.')){
|
|
124
123
|
// event.preventDefault();
|
|
@@ -316,7 +315,7 @@ class SdInputNumber {
|
|
|
316
315
|
return;
|
|
317
316
|
}
|
|
318
317
|
let value = __classPrivateFieldGet(this, _toNumber).call(this, val);
|
|
319
|
-
if (
|
|
318
|
+
if (isNaN(val)) {
|
|
320
319
|
if ((__classPrivateFieldGet(this, _min) || __classPrivateFieldGet(this, _min) === 0) && value < __classPrivateFieldGet(this, _min)) {
|
|
321
320
|
value = __classPrivateFieldGet(this, _min);
|
|
322
321
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sd-angular-core-input-number.js","sources":["../../../../projects/sd-core/input-number/src/lib/input-number.component.ts","../../../../projects/sd-core/input-number/src/lib/input-number.module.ts","../../../../projects/sd-core/input-number/src/public-api.ts","../../../../projects/sd-core/input-number/sd-angular-core-input-number.ts"],"sourcesContent":["import {\r\n Component,\r\n Input,\r\n ViewChild,\r\n Output,\r\n EventEmitter,\r\n ChangeDetectorRef,\r\n OnDestroy,\r\n AfterViewInit,\r\n ElementRef,\r\n OnInit,\r\n ContentChild,\r\n ChangeDetectionStrategy,\r\n HostListener,\r\n Inject,\r\n SimpleChanges,\r\n Optional\r\n} from '@angular/core';\r\nimport { AbstractControl, NgForm, ValidatorFn, Validators, AsyncValidatorFn, FormGroup, FormControl, FormGroupDirective } from '@angular/forms';\r\nimport * as uuid from 'uuid';\r\nimport { Subscription } from 'rxjs';\r\nimport { SdFormControl, SdSuffixDirective } from '@sd-angular/core/common';\r\nimport { SdViewDefDirective } from '@sd-angular/core/common';\r\nimport { FORM_CONFIG } from '@sd-angular/core/common';\r\nimport { IFormConfiguration } from '@sd-angular/core/common';\r\nimport { MatFormFieldAppearance } from '@angular/material/form-field';\r\nimport { ErrorStateMatcher } from '@angular/material/core';\r\nimport { SdLabelDefDirective } from '@sd-angular/core/common';\r\nclass SdInputNumberErrotStateMatcher implements ErrorStateMatcher {\r\n constructor(private formControl: FormControl) { }\r\n isErrorState(control: FormControl | null, form: FormGroupDirective | NgForm | null): boolean {\r\n const isSubmitted = form && form.submitted;\r\n return !!(this.formControl?.invalid && (this.formControl?.dirty || this.formControl?.touched || isSubmitted));\r\n }\r\n}\r\n@Component({\r\n selector: 'sd-input-number',\r\n templateUrl: './input-number.component.html',\r\n styleUrls: ['./input-number.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class SdInputNumber implements OnDestroy, OnInit, AfterViewInit {\r\n id = `I${uuid.v4()}`;\r\n #name = uuid.v4();\r\n #regexDecimal: string\r\n @Input() set name(val: string) {\r\n if (val) {\r\n this.#name = val;\r\n }\r\n }\r\n @Input() size: 'sm' | 'lg';\r\n #form: FormGroup;\r\n @Input() set form(val: NgForm | FormGroup) {\r\n if (val) {\r\n if (val instanceof NgForm) {\r\n this.#form = val.form;\r\n } else {\r\n this.#form = val;\r\n }\r\n }\r\n }\r\n @Input() label: string;\r\n @Input() placeholder: string;\r\n disableErrorMessage = false;\r\n @Input('disableErrorMessage') set _disableErrorMessage(val: boolean | '') {\r\n this.disableErrorMessage = (val === '') || val;\r\n }\r\n #blurOnEnter = false;\r\n @Input('blurOnEnter') set _blurOnEnter(val: boolean | '') {\r\n this.#blurOnEnter = (val === '') || val;\r\n }\r\n @Input() set model(value: any) {\r\n if (this.formControl.value !== value) {\r\n console.log(value);\r\n this.formControl.setValue(value, {\r\n emitEvent: false\r\n });\r\n if (value || value === 0) {\r\n const val = value.toString().replace(/\\./g, ',');\r\n this.inputControl.setValue(this.#getValueWithFormat(val), {\r\n emitEvent: false\r\n });\r\n } else {\r\n this.inputControl.setValue('', {\r\n emitEvent: false\r\n });\r\n }\r\n }\r\n }\r\n @Output() modelChange = new EventEmitter();\r\n\r\n // Validator\r\n isRequired = false;\r\n @Input() set required(val: boolean | '') {\r\n this.isRequired = (val === '') || val;\r\n this.#updateValidator();\r\n }\r\n @Input() type: 'negative' | 'positive'; //negative: chỉ nhập số âm, positive: chỉ số dương\r\n @Input() precision: number = 3; //số chữ số thập phân \r\n\r\n isReadonly = false;\r\n @Input() set readonly(val: boolean | '') {\r\n this.isReadonly = (val === '') || val;\r\n }\r\n\r\n #min: number;\r\n @Input() set min(val: number) {\r\n this.#min = val;\r\n }\r\n\r\n #max: number;\r\n @Input() set max(val: number) {\r\n this.#max = val;\r\n }\r\n\r\n #validator: (value: any) => string | Promise<string>;\r\n @Input() set validator(validator: (value: any) => string | Promise<string>) {\r\n this.#validator = validator;\r\n this.#updateValidator();\r\n }\r\n\r\n @Input() set disabled(val: boolean | '') {\r\n val = (val === '') || val;\r\n if (val) {\r\n this.inputControl.disable();\r\n this.formControl.disable();\r\n } else {\r\n this.inputControl.enable();\r\n this.formControl.enable();\r\n }\r\n }\r\n @Input() appearance: MatFormFieldAppearance;\r\n\r\n @Output() sdChange = new EventEmitter<any>();\r\n @Output() sdFocus = new EventEmitter<any>();\r\n @Output() sdFocusForceBlur = new EventEmitter<any>();\r\n @Output() keyupEnter = new EventEmitter();\r\n\r\n @ViewChild('control') control: ElementRef;\r\n formControl = new SdFormControl();\r\n inputControl = new SdFormControl();\r\n #subscription = new Subscription();\r\n matcher = new SdInputNumberErrotStateMatcher(this.formControl);\r\n\r\n @ContentChild(SdViewDefDirective) sdView: SdViewDefDirective;\r\n @ContentChild(SdSuffixDirective) sdSuffix: SdSuffixDirective;\r\n @ContentChild(SdLabelDefDirective) sdLabelDef: SdLabelDefDirective;\r\n isFocused = false;\r\n constructor(\r\n private ref: ChangeDetectorRef,\r\n @Inject(FORM_CONFIG) @Optional() private formConfig: IFormConfiguration) {\r\n }\r\n\r\n ngOnInit() {\r\n this.appearance = this.appearance || this.formConfig?.appearance;\r\n this.#subscription.add(this.inputControl.touchChanges.subscribe(() => {\r\n this.formControl.markAsTouched();\r\n this.ref.markForCheck();\r\n }));\r\n this.#subscription.add(this.formControl.sdChanges.subscribe(() => {\r\n this.ref.markForCheck();\r\n }));\r\n this.#subscription.add(this.inputControl.sdChanges.subscribe(() => {\r\n this.ref.markForCheck();\r\n }));\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (changes?.type?.previousValue != changes?.type?.currentValue || changes?.precision?.previousValue != changes?.precision?.currentValue) {\r\n this.#regexDecimal = `(([0-9]+(\\\\.[0-9])?)+(\\\\,[0-9]{0,${this.precision}}){0,1})$`;\r\n if (this.precision == 0) {\r\n this.#regexDecimal = `(([0-9]+(\\\\.[0-9])?)+)$`;\r\n }\r\n if (this.type == 'negative') {\r\n this.#regexDecimal = `[-]${this.#regexDecimal}`;\r\n }\r\n if (!this.type) {\r\n this.#regexDecimal = `[-]?${this.#regexDecimal}`;\r\n }\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.#subscription.add(this.inputControl.valueChanges.subscribe(() => {\r\n const val = this.inputControl.value;\r\n if (!val) {\r\n this.#onChange(undefined);\r\n return;\r\n }\r\n let value = this.#toNumber(val);\r\n if (value !== NaN) {\r\n if ((this.#min || this.#min === 0) && value < this.#min) {\r\n value = this.#min;\r\n }\r\n if ((this.#max || this.#max === 0) && value > this.#max) {\r\n value = this.#max;\r\n }\r\n this.inputControl.setValue(Number.toVNCurrency(value), {\r\n emitEvent: false\r\n });\r\n this.#onChange(value);\r\n }\r\n }));\r\n this.#form?.addControl(this.#name, this.formControl);\r\n this.ref.detectChanges();\r\n }\r\n\r\n #getValueWithFormat = (value: string) => {\r\n const arrayNext = value.split(',');\r\n if (arrayNext.length >= 2) {\r\n return `${this.#formatNumber(arrayNext[0])},${arrayNext[1]}`;\r\n }\r\n return this.#formatNumber(value);\r\n }\r\n\r\n #formatNumber = (text: any) => {\r\n return Number.toVNCurrency((text?.toString() || '').replace(/\\./g, ''));\r\n // const arrs: string[] = (text?.toString() || '').replace(/\\./g, '').split('');\r\n // return arrs.reverse().reduce((acc, num, index) => {\r\n // return num + (num !== '-' && index && !(index % 3) ? '.' : '') + acc;\r\n // }, '');\r\n }\r\n\r\n #toNumber = (text: any) => +((text?.toString() || '').replace(/\\./g, '').replace(/,/g, '.'));\r\n\r\n ngOnDestroy() {\r\n this.#form?.removeControl(this.#name);\r\n this.#subscription.unsubscribe();\r\n }\r\n\r\n reValidate = () => {\r\n this.formControl.updateValueAndValidity();\r\n }\r\n\r\n #updateValidator = () => {\r\n this.formControl.clearValidators();\r\n this.formControl.clearAsyncValidators();\r\n const validators: ValidatorFn[] = [];\r\n const asyncValidators: AsyncValidatorFn[] = [];\r\n if (this.isRequired) {\r\n validators.push(Validators.required);\r\n }\r\n if (this.#validator) {\r\n asyncValidators.push(this.#customValidator(this.#validator));\r\n }\r\n this.formControl.setValidators(validators);\r\n this.formControl.setAsyncValidators(asyncValidators);\r\n this.formControl.updateValueAndValidity();\r\n }\r\n\r\n #onChange = (value: any) => {\r\n this.formControl.setValue(value);\r\n this.modelChange.emit(value);\r\n this.sdChange.emit(value);\r\n }\r\n\r\n onKeyupEnter = () => {\r\n const val: string = (this.inputControl.value ?? '').toString();\r\n if (val.length > val.trim().length) {\r\n this.inputControl.setValue(val.trim());\r\n }\r\n this.keyupEnter.emit(this.inputControl.value);\r\n if (this.#blurOnEnter) {\r\n this.blur();\r\n }\r\n }\r\n\r\n onKeydown = (event: KeyboardEvent) => {\r\n if (event.ctrlKey && event.key == 'v') {\r\n this.#checkValue(event, '');\r\n return;\r\n }\r\n const key = event.keyCode || event.charCode;\r\n if (key == 8 || key == 46 || key == 37 || key == 39 || key == 35 || key == 36 || key == 9) {\r\n return;\r\n }\r\n if (event.ctrlKey && (event.key == 'c' || event.key == 'x' || event.key == 'a')) {\r\n return;\r\n }\r\n if (event.shiftKey && key == 9) {\r\n return;\r\n }\r\n this.#checkValue(event, event.key);\r\n }\r\n\r\n onPaste(event: ClipboardEvent) {\r\n const nextKey = event.clipboardData.getData('text');\r\n this.#checkValue(event, nextKey)\r\n }\r\n\r\n #checkValue = (event, nextKey) => {\r\n console.log(event, nextKey);\r\n const current: string = event.target.value;\r\n // if(this.#max === +current.toString().replace(/\\./g, '').replace(/,/g, '.')){\r\n // event.preventDefault();\r\n // return;\r\n // }\r\n const curval_arr = current.split(\"\");\r\n curval_arr.splice(event.target.selectionStart, (event.target.selectionEnd - event.target.selectionStart), nextKey);\r\n const newval = curval_arr.join(\"\");\r\n if (this.type !== 'positive' && newval === '-') {\r\n return;\r\n }\r\n const regExp: RegExp = new RegExp(`^${this.#regexDecimal}`, 'g');\r\n if (newval && !String(newval).match(regExp)) {\r\n event.preventDefault();\r\n return;\r\n }\r\n const value = (newval.toString().replace(/\\./g, '').replace(/,/g, '.'));\r\n if ((this.#max || this.#max === 0) && +value > this.#max) {\r\n setTimeout(() => {\r\n this.inputControl.setValue(this.#getValueWithFormat(this.#max.toString().replace(/\\./g, ',')));\r\n }, 10);\r\n event.preventDefault();\r\n }\r\n }\r\n\r\n onFocus = () => {\r\n this.isFocused = true;\r\n this.sdFocus.emit();\r\n if (this.sdFocusForceBlur.observers?.length > 0) {\r\n this.blur();\r\n this.sdFocusForceBlur.emit();\r\n }\r\n }\r\n\r\n onBlur = () => {\r\n this.isFocused = false;\r\n let val: string = (this.inputControl.value ?? '').toString();\r\n const arrayValue = val.split(',');\r\n if (arrayValue.length >= 2 && arrayValue[1] == '') {\r\n this.inputControl.setValue(this.#formatNumber(arrayValue[0]));\r\n return;\r\n }\r\n if (val.length > val.trim().length) {\r\n this.inputControl.setValue(val.trim());\r\n }\r\n }\r\n\r\n onClick = () => {\r\n if (this.sdView?.templateRef) {\r\n if (!this.formControl.disabled && !this.isFocused) {\r\n this.focus();\r\n }\r\n }\r\n }\r\n\r\n blur = () => {\r\n this.isFocused = false;\r\n this.control?.nativeElement?.blur();\r\n }\r\n\r\n focus = () => {\r\n this.isFocused = true;\r\n setTimeout(() => {\r\n this.control?.nativeElement?.focus();\r\n }, 100);\r\n }\r\n\r\n #customValidator = (func: (value: any) => string | Promise<string>): AsyncValidatorFn => {\r\n return async (c: AbstractControl): Promise<{ [key: string]: any } | null> => {\r\n const value = c.value || null;\r\n if (func && typeof (func) === 'function') {\r\n const result = func(value);\r\n if (result instanceof Promise) {\r\n const message = await result;\r\n if (message) {\r\n return {\r\n customValidator: message\r\n };\r\n }\r\n return null;\r\n }\r\n if (result) {\r\n return {\r\n customValidator: result\r\n };\r\n }\r\n return null;\r\n }\r\n return null;\r\n };\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdInputNumber } from './input-number.component';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { SdTranslateModule } from '@sd-angular/core/translate';\r\nimport { SdCommonModule } from '@sd-angular/core/common';\r\nimport { SdPopoverModule } from '@sd-angular/core/popover';\r\n\r\n@NgModule({\r\n declarations: [SdInputNumber],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatIconModule,\r\n MatTooltipModule,\r\n SdTranslateModule,\r\n SdCommonModule,\r\n SdPopoverModule,\r\n MatButtonModule\r\n ],\r\n exports: [\r\n SdInputNumber\r\n ]\r\n})\r\nexport class SdInputNumberModule { }\r\n","/*\r\n * Public API Surface of superdev-angular-core\r\n */\r\n\r\nexport * from './lib/input-number.module';\r\nexport * from './lib/input-number.component';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["uuid.v4"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sd-angular-core-input-number.js","sources":["../../../../projects/sd-core/input-number/src/lib/input-number.component.ts","../../../../projects/sd-core/input-number/src/lib/input-number.module.ts","../../../../projects/sd-core/input-number/src/public-api.ts","../../../../projects/sd-core/input-number/sd-angular-core-input-number.ts"],"sourcesContent":["import {\r\n Component,\r\n Input,\r\n ViewChild,\r\n Output,\r\n EventEmitter,\r\n ChangeDetectorRef,\r\n OnDestroy,\r\n AfterViewInit,\r\n ElementRef,\r\n OnInit,\r\n ContentChild,\r\n ChangeDetectionStrategy,\r\n HostListener,\r\n Inject,\r\n SimpleChanges,\r\n Optional\r\n} from '@angular/core';\r\nimport { AbstractControl, NgForm, ValidatorFn, Validators, AsyncValidatorFn, FormGroup, FormControl, FormGroupDirective } from '@angular/forms';\r\nimport * as uuid from 'uuid';\r\nimport { Subscription } from 'rxjs';\r\nimport { SdFormControl, SdSuffixDirective } from '@sd-angular/core/common';\r\nimport { SdViewDefDirective } from '@sd-angular/core/common';\r\nimport { FORM_CONFIG } from '@sd-angular/core/common';\r\nimport { IFormConfiguration } from '@sd-angular/core/common';\r\nimport { MatFormFieldAppearance } from '@angular/material/form-field';\r\nimport { ErrorStateMatcher } from '@angular/material/core';\r\nimport { SdLabelDefDirective } from '@sd-angular/core/common';\r\nclass SdInputNumberErrotStateMatcher implements ErrorStateMatcher {\r\n constructor(private formControl: FormControl) { }\r\n isErrorState(control: FormControl | null, form: FormGroupDirective | NgForm | null): boolean {\r\n const isSubmitted = form && form.submitted;\r\n return !!(this.formControl?.invalid && (this.formControl?.dirty || this.formControl?.touched || isSubmitted));\r\n }\r\n}\r\n@Component({\r\n selector: 'sd-input-number',\r\n templateUrl: './input-number.component.html',\r\n styleUrls: ['./input-number.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class SdInputNumber implements OnDestroy, OnInit, AfterViewInit {\r\n id = `I${uuid.v4()}`;\r\n #name = uuid.v4();\r\n #regexDecimal: string\r\n @Input() set name(val: string) {\r\n if (val) {\r\n this.#name = val;\r\n }\r\n }\r\n @Input() size: 'sm' | 'lg';\r\n #form: FormGroup;\r\n @Input() set form(val: NgForm | FormGroup) {\r\n if (val) {\r\n if (val instanceof NgForm) {\r\n this.#form = val.form;\r\n } else {\r\n this.#form = val;\r\n }\r\n }\r\n }\r\n @Input() label: string;\r\n @Input() placeholder: string;\r\n disableErrorMessage = false;\r\n @Input('disableErrorMessage') set _disableErrorMessage(val: boolean | '') {\r\n this.disableErrorMessage = (val === '') || val;\r\n }\r\n #blurOnEnter = false;\r\n @Input('blurOnEnter') set _blurOnEnter(val: boolean | '') {\r\n this.#blurOnEnter = (val === '') || val;\r\n }\r\n @Input() set model(value: any) {\r\n if (this.formControl.value !== value) {\r\n console.log(value);\r\n this.formControl.setValue(value, {\r\n emitEvent: false\r\n });\r\n if (value || value === 0) {\r\n const val = value.toString().replace(/\\./g, ',');\r\n this.inputControl.setValue(this.#getValueWithFormat(val), {\r\n emitEvent: false\r\n });\r\n } else {\r\n this.inputControl.setValue('', {\r\n emitEvent: false\r\n });\r\n }\r\n }\r\n }\r\n @Output() modelChange = new EventEmitter();\r\n\r\n // Validator\r\n isRequired = false;\r\n @Input() set required(val: boolean | '') {\r\n this.isRequired = (val === '') || val;\r\n this.#updateValidator();\r\n }\r\n @Input() type: 'negative' | 'positive'; //negative: chỉ nhập số âm, positive: chỉ số dương\r\n @Input() precision: number = 3; //số chữ số thập phân \r\n\r\n isReadonly = false;\r\n @Input() set readonly(val: boolean | '') {\r\n this.isReadonly = (val === '') || val;\r\n }\r\n\r\n #min: number;\r\n @Input() set min(val: number) {\r\n this.#min = val;\r\n }\r\n\r\n #max: number;\r\n @Input() set max(val: number) {\r\n this.#max = val;\r\n }\r\n\r\n #validator: (value: any) => string | Promise<string>;\r\n @Input() set validator(validator: (value: any) => string | Promise<string>) {\r\n this.#validator = validator;\r\n this.#updateValidator();\r\n }\r\n\r\n @Input() set disabled(val: boolean | '') {\r\n val = (val === '') || val;\r\n if (val) {\r\n this.inputControl.disable();\r\n this.formControl.disable();\r\n } else {\r\n this.inputControl.enable();\r\n this.formControl.enable();\r\n }\r\n }\r\n @Input() appearance: MatFormFieldAppearance;\r\n\r\n @Output() sdChange = new EventEmitter<any>();\r\n @Output() sdFocus = new EventEmitter<any>();\r\n @Output() sdFocusForceBlur = new EventEmitter<any>();\r\n @Output() keyupEnter = new EventEmitter();\r\n\r\n @ViewChild('control') control: ElementRef;\r\n formControl = new SdFormControl();\r\n inputControl = new SdFormControl();\r\n #subscription = new Subscription();\r\n matcher = new SdInputNumberErrotStateMatcher(this.formControl);\r\n\r\n @ContentChild(SdViewDefDirective) sdView: SdViewDefDirective;\r\n @ContentChild(SdSuffixDirective) sdSuffix: SdSuffixDirective;\r\n @ContentChild(SdLabelDefDirective) sdLabelDef: SdLabelDefDirective;\r\n isFocused = false;\r\n constructor(\r\n private ref: ChangeDetectorRef,\r\n @Inject(FORM_CONFIG) @Optional() private formConfig: IFormConfiguration) {\r\n }\r\n\r\n ngOnInit() {\r\n this.appearance = this.appearance || this.formConfig?.appearance;\r\n this.#subscription.add(this.inputControl.touchChanges.subscribe(() => {\r\n this.formControl.markAsTouched();\r\n this.ref.markForCheck();\r\n }));\r\n this.#subscription.add(this.formControl.sdChanges.subscribe(() => {\r\n this.ref.markForCheck();\r\n }));\r\n this.#subscription.add(this.inputControl.sdChanges.subscribe(() => {\r\n this.ref.markForCheck();\r\n }));\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (changes?.type?.previousValue != changes?.type?.currentValue || changes?.precision?.previousValue != changes?.precision?.currentValue) {\r\n this.#regexDecimal = `(([0-9]+(\\\\.[0-9])?)+(\\\\,[0-9]{0,${this.precision}}){0,1})$`;\r\n if (this.precision == 0) {\r\n this.#regexDecimal = `(([0-9]+(\\\\.[0-9])?)+)$`;\r\n }\r\n if (this.type == 'negative') {\r\n this.#regexDecimal = `[-]${this.#regexDecimal}`;\r\n }\r\n if (!this.type) {\r\n this.#regexDecimal = `[-]?${this.#regexDecimal}`;\r\n }\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.#subscription.add(this.inputControl.valueChanges.subscribe(() => {\r\n const val = this.inputControl.value;\r\n if (!val) {\r\n this.#onChange(undefined);\r\n return;\r\n }\r\n let value = this.#toNumber(val);\r\n if (isNaN(val)) {\r\n if ((this.#min || this.#min === 0) && value < this.#min) {\r\n value = this.#min;\r\n }\r\n if ((this.#max || this.#max === 0) && value > this.#max) {\r\n value = this.#max;\r\n }\r\n this.inputControl.setValue(Number.toVNCurrency(value), {\r\n emitEvent: false\r\n });\r\n this.#onChange(value);\r\n }\r\n }));\r\n this.#form?.addControl(this.#name, this.formControl);\r\n this.ref.detectChanges();\r\n }\r\n\r\n #getValueWithFormat = (value: string) => {\r\n const arrayNext = value.split(',');\r\n if (arrayNext.length >= 2) {\r\n return `${this.#formatNumber(arrayNext[0])},${arrayNext[1]}`;\r\n }\r\n return this.#formatNumber(value);\r\n }\r\n\r\n #formatNumber = (text: any) => {\r\n return Number.toVNCurrency((text?.toString() || '').replace(/\\./g, ''));\r\n // const arrs: string[] = (text?.toString() || '').replace(/\\./g, '').split('');\r\n // return arrs.reverse().reduce((acc, num, index) => {\r\n // return num + (num !== '-' && index && !(index % 3) ? '.' : '') + acc;\r\n // }, '');\r\n }\r\n\r\n #toNumber = (text: any) => +((text?.toString() || '').replace(/\\./g, '').replace(/,/g, '.'));\r\n\r\n ngOnDestroy() {\r\n this.#form?.removeControl(this.#name);\r\n this.#subscription.unsubscribe();\r\n }\r\n\r\n reValidate = () => {\r\n this.formControl.updateValueAndValidity();\r\n }\r\n\r\n #updateValidator = () => {\r\n this.formControl.clearValidators();\r\n this.formControl.clearAsyncValidators();\r\n const validators: ValidatorFn[] = [];\r\n const asyncValidators: AsyncValidatorFn[] = [];\r\n if (this.isRequired) {\r\n validators.push(Validators.required);\r\n }\r\n if (this.#validator) {\r\n asyncValidators.push(this.#customValidator(this.#validator));\r\n }\r\n this.formControl.setValidators(validators);\r\n this.formControl.setAsyncValidators(asyncValidators);\r\n this.formControl.updateValueAndValidity();\r\n }\r\n\r\n #onChange = (value: any) => {\r\n this.formControl.setValue(value);\r\n this.modelChange.emit(value);\r\n this.sdChange.emit(value);\r\n }\r\n\r\n onKeyupEnter = () => {\r\n const val: string = (this.inputControl.value ?? '').toString();\r\n if (val.length > val.trim().length) {\r\n this.inputControl.setValue(val.trim());\r\n }\r\n this.keyupEnter.emit(this.inputControl.value);\r\n if (this.#blurOnEnter) {\r\n this.blur();\r\n }\r\n }\r\n\r\n onKeydown = (event: KeyboardEvent) => {\r\n if (event.ctrlKey && event.key == 'v') {\r\n this.#checkValue(event, '');\r\n return;\r\n }\r\n const key = event.keyCode || event.charCode;\r\n if (key == 8 || key == 46 || key == 37 || key == 39 || key == 35 || key == 36 || key == 9) {\r\n return;\r\n }\r\n if (event.ctrlKey && (event.key == 'c' || event.key == 'x' || event.key == 'a')) {\r\n return;\r\n }\r\n if (event.shiftKey && key == 9) {\r\n return;\r\n }\r\n this.#checkValue(event, event.key);\r\n }\r\n\r\n onPaste(event: ClipboardEvent) {\r\n const nextKey = event.clipboardData.getData('text');\r\n this.#checkValue(event, nextKey)\r\n }\r\n\r\n #checkValue = (event, nextKey) => {\r\n const current: string = event.target.value;\r\n // if(this.#max === +current.toString().replace(/\\./g, '').replace(/,/g, '.')){\r\n // event.preventDefault();\r\n // return;\r\n // }\r\n const curval_arr = current.split(\"\");\r\n curval_arr.splice(event.target.selectionStart, (event.target.selectionEnd - event.target.selectionStart), nextKey);\r\n const newval = curval_arr.join(\"\");\r\n if (this.type !== 'positive' && newval === '-') {\r\n return;\r\n }\r\n const regExp: RegExp = new RegExp(`^${this.#regexDecimal}`, 'g');\r\n if (newval && !String(newval).match(regExp)) {\r\n event.preventDefault();\r\n return;\r\n }\r\n const value = (newval.toString().replace(/\\./g, '').replace(/,/g, '.'));\r\n if ((this.#max || this.#max === 0) && +value > this.#max) {\r\n setTimeout(() => {\r\n this.inputControl.setValue(this.#getValueWithFormat(this.#max.toString().replace(/\\./g, ',')));\r\n }, 10);\r\n event.preventDefault();\r\n }\r\n }\r\n\r\n onFocus = () => {\r\n this.isFocused = true;\r\n this.sdFocus.emit();\r\n if (this.sdFocusForceBlur.observers?.length > 0) {\r\n this.blur();\r\n this.sdFocusForceBlur.emit();\r\n }\r\n }\r\n\r\n onBlur = () => {\r\n this.isFocused = false;\r\n let val: string = (this.inputControl.value ?? '').toString();\r\n const arrayValue = val.split(',');\r\n if (arrayValue.length >= 2 && arrayValue[1] == '') {\r\n this.inputControl.setValue(this.#formatNumber(arrayValue[0]));\r\n return;\r\n }\r\n if (val.length > val.trim().length) {\r\n this.inputControl.setValue(val.trim());\r\n }\r\n }\r\n\r\n onClick = () => {\r\n if (this.sdView?.templateRef) {\r\n if (!this.formControl.disabled && !this.isFocused) {\r\n this.focus();\r\n }\r\n }\r\n }\r\n\r\n blur = () => {\r\n this.isFocused = false;\r\n this.control?.nativeElement?.blur();\r\n }\r\n\r\n focus = () => {\r\n this.isFocused = true;\r\n setTimeout(() => {\r\n this.control?.nativeElement?.focus();\r\n }, 100);\r\n }\r\n\r\n #customValidator = (func: (value: any) => string | Promise<string>): AsyncValidatorFn => {\r\n return async (c: AbstractControl): Promise<{ [key: string]: any } | null> => {\r\n const value = c.value || null;\r\n if (func && typeof (func) === 'function') {\r\n const result = func(value);\r\n if (result instanceof Promise) {\r\n const message = await result;\r\n if (message) {\r\n return {\r\n customValidator: message\r\n };\r\n }\r\n return null;\r\n }\r\n if (result) {\r\n return {\r\n customValidator: result\r\n };\r\n }\r\n return null;\r\n }\r\n return null;\r\n };\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdInputNumber } from './input-number.component';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { SdTranslateModule } from '@sd-angular/core/translate';\r\nimport { SdCommonModule } from '@sd-angular/core/common';\r\nimport { SdPopoverModule } from '@sd-angular/core/popover';\r\n\r\n@NgModule({\r\n declarations: [SdInputNumber],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatIconModule,\r\n MatTooltipModule,\r\n SdTranslateModule,\r\n SdCommonModule,\r\n SdPopoverModule,\r\n MatButtonModule\r\n ],\r\n exports: [\r\n SdInputNumber\r\n ]\r\n})\r\nexport class SdInputNumberModule { }\r\n","/*\r\n * Public API Surface of superdev-angular-core\r\n */\r\n\r\nexport * from './lib/input-number.module';\r\nexport * from './lib/input-number.component';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["uuid.v4"],"mappings":"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"}
|
package/package.json
CHANGED
|
index 4bf426d..d72a005 100644
|
|
|
Binary file
|