@sd-angular/core 1.2.69 → 1.2.72
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-common.umd.js +6 -1
- package/bundles/sd-angular-core-common.umd.js.map +1 -1
- package/bundles/sd-angular-core-common.umd.min.js +1 -1
- package/bundles/sd-angular-core-common.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-input-number.umd.js +5 -5
- package/bundles/sd-angular-core-input-number.umd.js.map +1 -1
- package/bundles/sd-angular-core-input-number.umd.min.js +2 -2
- package/bundles/sd-angular-core-input-number.umd.min.js.map +1 -1
- package/bundles/sd-angular-core-upload-excel.umd.js +33 -34
- package/bundles/sd-angular-core-upload-excel.umd.js.map +1 -1
- package/bundles/sd-angular-core-upload-excel.umd.min.js +1 -1
- package/bundles/sd-angular-core-upload-excel.umd.min.js.map +1 -1
- package/esm2015/common/src/lib/directives/sd-scroll.directive.js +7 -2
- package/esm2015/input-number/src/lib/input-number.component.js +3 -2
- package/esm2015/upload-excel/src/lib/pipes/column-transform.pipe.js +4 -3
- package/esm2015/upload-excel/src/lib/upload-excel.component.js +9 -11
- package/esm2015/upload-excel/src/lib/upload-excel.model.js +1 -1
- package/fesm2015/sd-angular-core-common.js +6 -1
- package/fesm2015/sd-angular-core-common.js.map +1 -1
- package/fesm2015/sd-angular-core-input-number.js +2 -1
- package/fesm2015/sd-angular-core-input-number.js.map +1 -1
- package/fesm2015/sd-angular-core-upload-excel.js +11 -12
- package/fesm2015/sd-angular-core-upload-excel.js.map +1 -1
- package/input-number/sd-angular-core-input-number.metadata.json +1 -1
- package/package.json +1 -1
- package/{sd-angular-core-1.2.69.tgz → sd-angular-core-1.2.72.tgz} +0 -0
- package/upload-excel/src/lib/upload-excel.component.d.ts +1 -1
- package/upload-excel/src/lib/upload-excel.model.d.ts +3 -4
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@angular/forms"),require("uuid"),require("rxjs"),require("@sd-angular/core/common"),require("@angular/material/form-field"),require("@angular/material/input"),require("@angular/material/button"),require("@angular/material/icon"),require("@angular/material/tooltip"),require("@sd-angular/core/translate"),require("@sd-angular/core/popover")):"function"==typeof define&&define.amd?define("@sd-angular/core/input-number",["exports","@angular/core","@angular/common","@angular/forms","uuid","rxjs","@sd-angular/core/common","@angular/material/form-field","@angular/material/input","@angular/material/button","@angular/material/icon","@angular/material/tooltip","@sd-angular/core/translate","@sd-angular/core/popover"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self)["sd-angular"]=e["sd-angular"]||{},e["sd-angular"].core=e["sd-angular"].core||{},e["sd-angular"].core["input-number"]={}),e.ng.core,e.ng.common,e.ng.forms,e.uuid,e.rxjs,e["sd-angular"].core.common,e.ng.material.formField,e.ng.material.input,e.ng.material.button,e.ng.material.icon,e.ng.material.tooltip,e["sd-angular"].core.translate,e["sd-angular"].core.popover)}(this,(function(e,t,r,n,o,i,a,l,s,u,c,d,p,f){"use strict";
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@angular/forms"),require("uuid"),require("rxjs"),require("@sd-angular/core/common"),require("rxjs/operators"),require("@angular/material/form-field"),require("@angular/material/input"),require("@angular/material/button"),require("@angular/material/icon"),require("@angular/material/tooltip"),require("@sd-angular/core/translate"),require("@sd-angular/core/popover")):"function"==typeof define&&define.amd?define("@sd-angular/core/input-number",["exports","@angular/core","@angular/common","@angular/forms","uuid","rxjs","@sd-angular/core/common","rxjs/operators","@angular/material/form-field","@angular/material/input","@angular/material/button","@angular/material/icon","@angular/material/tooltip","@sd-angular/core/translate","@sd-angular/core/popover"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self)["sd-angular"]=e["sd-angular"]||{},e["sd-angular"].core=e["sd-angular"].core||{},e["sd-angular"].core["input-number"]={}),e.ng.core,e.ng.common,e.ng.forms,e.uuid,e.rxjs,e["sd-angular"].core.common,e.rxjs.operators,e.ng.material.formField,e.ng.material.input,e.ng.material.button,e.ng.material.icon,e.ng.material.tooltip,e["sd-angular"].core.translate,e["sd-angular"].core.popover)}(this,(function(e,t,r,n,o,i,a,l,s,u,c,d,p,f,m){"use strict";
|
|
2
2
|
/*! *****************************************************************************
|
|
3
3
|
Copyright (c) Microsoft Corporation.
|
|
4
4
|
|
|
@@ -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 g(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 h,b,v,y,C,w,k,M,E,I,x,V,F,O;Object.create;function S(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 q(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 P=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}(),j=function(){function e(e,r){var l=this;this.ref=e,this.formConfig=r,this.id="I"+o.v4(),h.set(this,o.v4()),b.set(this,void 0),this.disableErrorMessage=!1,v.set(this,!1),this.modelChange=new t.EventEmitter,this.isRequired=!1,this.precision=3,this.isReadonly=!1,y.set(this,void 0),C.set(this,void 0),w.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,k.set(this,new i.Subscription),this.matcher=new P(this.formControl),this.isFocused=!1,M.set(this,(function(e){var t=e.split(",");return t.length>=2?S(l,E).call(l,t[0])+","+t[1]:S(l,E).call(l,e)})),E.set(this,(function(e){return Number.toVNCurrency(((null==e?void 0:e.toString())||"").replace(/\./g,""))})),I.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),S(l,w)&&t.push(S(l,O).call(l,S(l,w))),l.formControl.setValidators(e),l.formControl.setAsyncValidators(t),l.formControl.updateValueAndValidity()})),V.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),S(l,v)&&l.blur()},this.onKeydown=function(e){if(e.ctrlKey&&"v"==e.key)S(l,F).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||S(l,F).call(l,e,e.key))}},F.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("^"+l.regex,"g");if(!n||String(n).match(o)){var i=n.toString().replace(/\./g,"").replace(/,/g,".");(S(l,C)||0===S(l,C))&&+i>S(l,C)&&(setTimeout((function(){l.inputControl.setValue(S(l,M).call(l,S(l,C).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(S(l,E).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)},O.set(this,(function(e){return function(t){return m(l,void 0,void 0,(function(){var r,n,o;return g(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&&q(this,h,e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"form",{set:function(e){e&&(e instanceof n.NgForm?q(this,b,e.form):q(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){q(this,v,""===e||e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"model",{set:function(e){if(this.formControl.value!==e)if(this.formControl.setValue(e,{emitEvent:!1}),e||0===e){var t=e.toString().replace(/\./g,",");this.inputControl.setValue(S(this,M).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,S(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){q(this,y,e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"max",{set:function(e){q(this,C,e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"validator",{set:function(e){q(this,w,e),S(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),S(this,k).add(this.inputControl.touchChanges.subscribe((function(){t.formControl.markAsTouched(),t.ref.markForCheck()}))),S(this,k).add(this.formControl.sdChanges.subscribe((function(){t.ref.markForCheck()}))),S(this,k).add(this.inputControl.sdChanges.subscribe((function(){t.ref.markForCheck()})))},Object.defineProperty(e.prototype,"regex",{get:function(){var e="(([0-9]+(\\.[0-9])?)+(\\,[0-9]{0,"+this.precision+"}){0,1})$";return 0===this.precision&&(e="(([0-9]+(\\.[0-9])?)+)$"),"negative"===this.type&&(e="[-]"+e),this.type||(e="[-]?"+e),e},enumerable:!1,configurable:!0}),e.prototype.ngAfterViewInit=function(){var e,t=this;S(this,k).add(this.inputControl.valueChanges.subscribe((function(){var e=t.inputControl.value;if(e){var r=S(t,I).call(t,e);isNaN(r)||((S(t,y)||0===S(t,y))&&r<S(t,y)&&(r=S(t,y),t.inputControl.setValue(Number.toVNCurrency(r),{emitEvent:!1})),(S(t,C)||0===S(t,C))&&r>S(t,C)&&(r=S(t,C),t.inputControl.setValue(Number.toVNCurrency(r),{emitEvent:!1})),S(t,V).call(t,r))}else S(t,V).call(t,void 0)}))),null===(e=S(this,b))||void 0===e||e.addControl(S(this,h),this.formControl),this.ref.detectChanges()},e.prototype.ngOnDestroy=function(){var e;null===(e=S(this,b))||void 0===e||e.removeControl(S(this,h)),S(this,k).unsubscribe()},e.prototype.onPaste=function(e){var t=e.clipboardData.getData("text");S(this,F).call(this,e,t)},e}();h=new WeakMap,b=new WeakMap,v=new WeakMap,y=new WeakMap,C=new WeakMap,w=new WeakMap,k=new WeakMap,M=new WeakMap,E=new WeakMap,I=new WeakMap,x=new WeakMap,V=new WeakMap,F=new WeakMap,O=new WeakMap,j.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}"]}]}],j.ctorParameters=function(){return[{type:t.ChangeDetectorRef},{type:void 0,decorators:[{type:t.Inject,args:[a.FORM_CONFIG]},{type:t.Optional}]}]},j.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 T=function(){};T.decorators=[{type:t.NgModule,args:[{declarations:[j],imports:[r.CommonModule,n.FormsModule,n.ReactiveFormsModule,l.MatFormFieldModule,s.MatInputModule,c.MatIconModule,d.MatTooltipModule,p.SdTranslateModule,a.SdCommonModule,f.SdPopoverModule,u.MatButtonModule],exports:[j]}]}],e.SdInputNumber=j,e.SdInputNumberModule=T,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
15
|
+
***************************************************************************** */function g(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 b,v,y,C,w,k,M,E,x,I,V,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 j(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 P=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(),b.set(this,o.v4()),v.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 P(this.formControl),this.isFocused=!1,E.set(this,(function(e){var t=e.split(",");return t.length>=2?q(l,x).call(l,t[0])+","+t[1]:q(l,x).call(l,e)})),x.set(this,(function(e){return Number.toVNCurrency(((null==e?void 0:e.toString())||"").replace(/\./g,""))})),I.set(this,(function(e){return+((null==e?void 0:e.toString())||"").replace(/\./g,"").replace(/,/g,".")})),this.reValidate=function(){l.formControl.updateValueAndValidity()},V.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("^"+l.regex,"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,x).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 g(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&&j(this,b,e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"form",{set:function(e){e&&(e instanceof n.NgForm?j(this,v,e.form):j(this,v,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){j(this,y,""===e||e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"model",{set:function(e){if(this.formControl.value!==e)if(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,V).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){j(this,C,e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"max",{set:function(e){j(this,w,e)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"validator",{set:function(e){j(this,k,e),q(this,V).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()})))},Object.defineProperty(e.prototype,"regex",{get:function(){var e="(([0-9]+(\\.[0-9])?)+(\\,[0-9]{0,"+this.precision+"}){0,1})$";return 0===this.precision&&(e="(([0-9]+(\\.[0-9])?)+)$"),"negative"===this.type&&(e="[-]"+e),this.type||(e="[-]?"+e),e},enumerable:!1,configurable:!0}),e.prototype.ngAfterViewInit=function(){var e,t=this;q(this,M).add(this.inputControl.valueChanges.pipe(l.debounceTime(200)).subscribe((function(){var e=t.inputControl.value;if(e){var r=q(t,I).call(t,e);isNaN(r)||((q(t,C)||0===q(t,C))&&r<q(t,C)&&(r=q(t,C),t.inputControl.setValue(Number.toVNCurrency(r),{emitEvent:!1})),(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,v))||void 0===e||e.addControl(q(this,b),this.formControl),this.ref.detectChanges()},e.prototype.ngOnDestroy=function(){var e;null===(e=q(this,v))||void 0===e||e.removeControl(q(this,b)),q(this,M).unsubscribe()},e.prototype.onPaste=function(e){var t=e.clipboardData.getData("text");q(this,O).call(this,e,t)},e}();b=new WeakMap,v=new WeakMap,y=new WeakMap,C=new WeakMap,w=new WeakMap,k=new WeakMap,M=new WeakMap,E=new WeakMap,x=new WeakMap,I=new WeakMap,V=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,s.MatFormFieldModule,u.MatInputModule,d.MatIconModule,p.MatTooltipModule,f.SdTranslateModule,a.SdCommonModule,m.SdPopoverModule,c.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","_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","regex","String","match","setTimeout","preventDefault","onFocus","observers","onBlur","arrayValue","onClick","sdView","templateRef","disabled","focus","nativeElement","func","c","message","_d","customValidator","defineProperty","NgForm","emitEvent","validator","disable","enable","ngOnInit","appearance","add","touchChanges","subscribe","markAsTouched","markForCheck","sdChanges","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 @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 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 private get regex() {\r\n let result = `(([0-9]+(\\\\.[0-9])?)+(\\\\,[0-9]{0,${this.precision}}){0,1})$`;\r\n if (this.precision === 0) {\r\n result = `(([0-9]+(\\\\.[0-9])?)+)$`;\r\n }\r\n if (this.type === 'negative') {\r\n result = `[-]${result}`;\r\n }\r\n if (!this.type) {\r\n result = `[-]?${result}`;\r\n }\r\n return result;\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(value)) {\r\n if ((this.#min || this.#min === 0) && value < this.#min) {\r\n value = this.#min;\r\n this.inputControl.setValue(Number.toVNCurrency(value), {\r\n emitEvent: false\r\n });\r\n }\r\n if ((this.#max || this.#max === 0) && value > this.#max) {\r\n value = this.#max;\r\n this.inputControl.setValue(Number.toVNCurrency(value), {\r\n emitEvent: false\r\n });\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.regex}`, '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","_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","regex","String","match","setTimeout","preventDefault","onFocus","observers","onBlur","arrayValue","onClick","sdView","templateRef","disabled","focus","nativeElement","func","c","message","_d","customValidator","defineProperty","NgForm","emitEvent","validator","disable","enable","ngOnInit","appearance","add","touchChanges","subscribe","markAsTouched","markForCheck","sdChanges","ngAfterViewInit","valueChanges","pipe","debounceTime","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\nimport { debounceTime } from 'rxjs/operators';\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 @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 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 private get regex() {\r\n let result = `(([0-9]+(\\\\.[0-9])?)+(\\\\,[0-9]{0,${this.precision}}){0,1})$`;\r\n if (this.precision === 0) {\r\n result = `(([0-9]+(\\\\.[0-9])?)+)$`;\r\n }\r\n if (this.type === 'negative') {\r\n result = `[-]${result}`;\r\n }\r\n if (!this.type) {\r\n result = `[-]?${result}`;\r\n }\r\n return result;\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.#subscription.add(this.inputControl.valueChanges.pipe(debounceTime(200)).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(value)) {\r\n if ((this.#min || this.#min === 0) && value < this.#min) {\r\n value = this.#min;\r\n this.inputControl.setValue(Number.toVNCurrency(value), {\r\n emitEvent: false\r\n });\r\n }\r\n if ((this.#max || this.#max === 0) && value > this.#max) {\r\n value = this.#max;\r\n this.inputControl.setValue(Number.toVNCurrency(value), {\r\n emitEvent: false\r\n });\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.regex}`, '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"]}
|
|
@@ -423,18 +423,18 @@
|
|
|
423
423
|
_isWarning.set(this, function (item) { var _a, _b; return ((_a = item.sd.validation) === null || _a === void 0 ? void 0 : _a.warning) && !((_b = item.sd.validation) === null || _b === void 0 ? void 0 : _b.error); });
|
|
424
424
|
_isSuccess.set(this, function (item) { var _a, _b; return !((_a = item.sd.validation) === null || _a === void 0 ? void 0 : _a.error) && !((_b = item.sd.validation) === null || _b === void 0 ? void 0 : _b.warning); });
|
|
425
425
|
this.upload = function () { return __awaiter(_this, void 0, void 0, function () {
|
|
426
|
-
var _f, mappingItems, errorValidation, warningValidation, translate, _g, items, file, offset, mappedItems, _h, _j, _k, item, e_1_1, results, results, err_1;
|
|
427
|
-
var e_1,
|
|
426
|
+
var _f, mappingItems, errorValidation, warningValidation, translate, _g, items, file, offset, mappedItems, _h, _j, _k, _l, idx, item, e_1_1, results, results, err_1;
|
|
427
|
+
var e_1, _m;
|
|
428
428
|
var _this = this;
|
|
429
|
-
return __generator(this, function (
|
|
430
|
-
switch (
|
|
429
|
+
return __generator(this, function (_o) {
|
|
430
|
+
switch (_o.label) {
|
|
431
431
|
case 0:
|
|
432
|
-
|
|
432
|
+
_o.trys.push([0, 17, 18, 19]);
|
|
433
433
|
_f = this.option, mappingItems = _f.mappingItems, errorValidation = _f.errorValidation, warningValidation = _f.warningValidation;
|
|
434
434
|
translate = this.translateService.translate;
|
|
435
435
|
return [4 /*yield*/, __classPrivateFieldGet(this, _import).call(this)];
|
|
436
436
|
case 1:
|
|
437
|
-
_g =
|
|
437
|
+
_g = _o.sent(), items = _g.items, file = _g.file;
|
|
438
438
|
this.hasDescription = this.option.columns.some(function (e) { return !!e.description; });
|
|
439
439
|
offset = this.hasDescription ? 2 : 1;
|
|
440
440
|
items.splice(0, offset);
|
|
@@ -468,37 +468,37 @@
|
|
|
468
468
|
_h = this;
|
|
469
469
|
return [4 /*yield*/, mappedItems.finally(function () { return _this.uploading = false; })];
|
|
470
470
|
case 2:
|
|
471
|
-
_h.items = (
|
|
471
|
+
_h.items = (_o.sent());
|
|
472
472
|
return [3 /*break*/, 4];
|
|
473
473
|
case 3:
|
|
474
474
|
this.items = (mappedItems || this.items);
|
|
475
|
-
|
|
475
|
+
_o.label = 4;
|
|
476
476
|
case 4:
|
|
477
477
|
this.file = file;
|
|
478
478
|
this.loadingService.start();
|
|
479
|
-
|
|
479
|
+
_o.label = 5;
|
|
480
480
|
case 5:
|
|
481
|
-
|
|
482
|
-
_j = __values(this.items), _k = _j.next();
|
|
483
|
-
|
|
481
|
+
_o.trys.push([5, 10, 11, 12]);
|
|
482
|
+
_j = __values(this.items.entries()), _k = _j.next();
|
|
483
|
+
_o.label = 6;
|
|
484
484
|
case 6:
|
|
485
485
|
if (!!_k.done) return [3 /*break*/, 9];
|
|
486
|
-
|
|
487
|
-
return [4 /*yield*/, this.validate(item)];
|
|
486
|
+
_l = __read(_k.value, 2), idx = _l[0], item = _l[1];
|
|
487
|
+
return [4 /*yield*/, this.validate(item, idx)];
|
|
488
488
|
case 7:
|
|
489
|
-
|
|
490
|
-
|
|
489
|
+
_o.sent();
|
|
490
|
+
_o.label = 8;
|
|
491
491
|
case 8:
|
|
492
492
|
_k = _j.next();
|
|
493
493
|
return [3 /*break*/, 6];
|
|
494
494
|
case 9: return [3 /*break*/, 12];
|
|
495
495
|
case 10:
|
|
496
|
-
e_1_1 =
|
|
496
|
+
e_1_1 = _o.sent();
|
|
497
497
|
e_1 = { error: e_1_1 };
|
|
498
498
|
return [3 /*break*/, 12];
|
|
499
499
|
case 11:
|
|
500
500
|
try {
|
|
501
|
-
if (_k && !_k.done && (
|
|
501
|
+
if (_k && !_k.done && (_m = _j.return)) _m.call(_j);
|
|
502
502
|
}
|
|
503
503
|
finally { if (e_1) throw e_1.error; }
|
|
504
504
|
return [7 /*endfinally*/];
|
|
@@ -506,16 +506,16 @@
|
|
|
506
506
|
if (!(!this.items.some(__classPrivateFieldGet(this, _isError)) && errorValidation)) return [3 /*break*/, 14];
|
|
507
507
|
return [4 /*yield*/, errorValidation(this.items.map(function (e) { return e.data; }))];
|
|
508
508
|
case 13:
|
|
509
|
-
results =
|
|
509
|
+
results = _o.sent();
|
|
510
510
|
results.forEach(function (result) { return _this.items[result.idx].sd.validation.error = result.message; });
|
|
511
|
-
|
|
511
|
+
_o.label = 14;
|
|
512
512
|
case 14:
|
|
513
513
|
if (!(!this.items.some(__classPrivateFieldGet(this, _isWarning)) && warningValidation)) return [3 /*break*/, 16];
|
|
514
514
|
return [4 /*yield*/, warningValidation(this.items.map(function (e) { return e.data; }))];
|
|
515
515
|
case 15:
|
|
516
|
-
results =
|
|
516
|
+
results = _o.sent();
|
|
517
517
|
results.forEach(function (result) { return _this.items[result.idx].sd.validation.warning = result.message; });
|
|
518
|
-
|
|
518
|
+
_o.label = 16;
|
|
519
519
|
case 16:
|
|
520
520
|
__classPrivateFieldGet(this, _paginator).pageIndex = 0;
|
|
521
521
|
__classPrivateFieldGet(this, _reload).call(this);
|
|
@@ -523,7 +523,7 @@
|
|
|
523
523
|
this.isUploaded = false;
|
|
524
524
|
return [3 /*break*/, 19];
|
|
525
525
|
case 17:
|
|
526
|
-
err_1 =
|
|
526
|
+
err_1 = _o.sent();
|
|
527
527
|
this.notifyService.handle.error(err_1);
|
|
528
528
|
return [3 /*break*/, 19];
|
|
529
529
|
case 18:
|
|
@@ -533,7 +533,7 @@
|
|
|
533
533
|
}
|
|
534
534
|
});
|
|
535
535
|
}); };
|
|
536
|
-
this.validate = function (excelItem) { return __awaiter(_this, void 0, void 0, function () {
|
|
536
|
+
this.validate = function (excelItem, idx) { return __awaiter(_this, void 0, void 0, function () {
|
|
537
537
|
var _a, item, validation, translate, errors, _loop_1, this_1, _f, _g, column, e_2_1;
|
|
538
538
|
var e_2, _h;
|
|
539
539
|
return __generator(this, function (_j) {
|
|
@@ -665,7 +665,7 @@
|
|
|
665
665
|
}
|
|
666
666
|
}
|
|
667
667
|
if (!(!errors.length && column.errorValidation)) return [3 /*break*/, 3];
|
|
668
|
-
return [4 /*yield*/, column.errorValidation(item, item[column.field])];
|
|
668
|
+
return [4 /*yield*/, column.errorValidation(item, item[column.field], idx)];
|
|
669
669
|
case 2:
|
|
670
670
|
error = _f.sent();
|
|
671
671
|
if (error) {
|
|
@@ -675,7 +675,7 @@
|
|
|
675
675
|
_f.label = 3;
|
|
676
676
|
case 3:
|
|
677
677
|
if (!(!validation.data[column.field].warning && column.warningValidation)) return [3 /*break*/, 5];
|
|
678
|
-
return [4 /*yield*/, column.warningValidation(item, item[column.field])];
|
|
678
|
+
return [4 /*yield*/, column.warningValidation(item, item[column.field], idx)];
|
|
679
679
|
case 4:
|
|
680
680
|
warning = _f.sent();
|
|
681
681
|
if (warning) {
|
|
@@ -855,13 +855,11 @@
|
|
|
855
855
|
items: this.filteredItems.map(function (e) {
|
|
856
856
|
var e_4, _f, _g;
|
|
857
857
|
var _a, _b, _c, _d, _e;
|
|
858
|
-
var result = {
|
|
859
|
-
sdMessage: (_d = (((_a = e.sd.validation) === null || _a === void 0 ? void 0 : _a.error) || ((_b = e.sd.validation) === null || _b === void 0 ? void 0 : _b.warning) || ((_c = e.sd.validation) === null || _c === void 0 ? void 0 : _c.success))) === null || _d === void 0 ? void 0 : _d.replace(/<strong>/g, '').replace(/<\/strong>/g, '').replace(/<br>/g, '\n')
|
|
860
|
-
};
|
|
858
|
+
var result = {};
|
|
861
859
|
try {
|
|
862
860
|
for (var columns_1 = __values(columns), columns_1_1 = columns_1.next(); !columns_1_1.done; columns_1_1 = columns_1.next()) {
|
|
863
861
|
var column = columns_1_1.value;
|
|
864
|
-
result = Object.assign(Object.assign({}, result), (_g = {}, _g[column.field] = (
|
|
862
|
+
result = Object.assign(Object.assign({}, result), (_g = {}, _g[column.field] = (_a = e.sd.origin) === null || _a === void 0 ? void 0 : _a[column.field], _g));
|
|
865
863
|
}
|
|
866
864
|
}
|
|
867
865
|
catch (e_4_1) { e_4 = { error: e_4_1 }; }
|
|
@@ -871,7 +869,7 @@
|
|
|
871
869
|
}
|
|
872
870
|
finally { if (e_4) throw e_4.error; }
|
|
873
871
|
}
|
|
874
|
-
return result;
|
|
872
|
+
return Object.assign(Object.assign({}, result), { sdMessage: (_e = (((_b = e.sd.validation) === null || _b === void 0 ? void 0 : _b.error) || ((_c = e.sd.validation) === null || _c === void 0 ? void 0 : _c.warning) || ((_d = e.sd.validation) === null || _d === void 0 ? void 0 : _d.success))) === null || _e === void 0 ? void 0 : _e.replace(/<strong>/g, '').replace(/<\/strong>/g, '').replace(/<br>/g, '\n') });
|
|
875
873
|
})
|
|
876
874
|
}).finally(this.loadingService.stop)];
|
|
877
875
|
case 1:
|
|
@@ -1020,14 +1018,15 @@
|
|
|
1020
1018
|
var _this = this;
|
|
1021
1019
|
this.decimalPipe = decimalPipe;
|
|
1022
1020
|
this.transform = function (rowData, column) { return __awaiter(_this, void 0, void 0, function () {
|
|
1023
|
-
var _a, _b, _c, _d, _e, _f, value;
|
|
1021
|
+
var _a, _b, _c, _d, _e, _f, type, transform, value;
|
|
1024
1022
|
return __generator(this, function (_g) {
|
|
1023
|
+
type = column.type, transform = column.transform;
|
|
1025
1024
|
value = rowData.data[column.field];
|
|
1026
1025
|
if ((_a = rowData.sd.validation.data[column.field]) === null || _a === void 0 ? void 0 : _a.error) {
|
|
1027
1026
|
return [2 /*return*/, (_c = (_b = rowData.sd.origin[column.field]) !== null && _b !== void 0 ? _b : value) !== null && _c !== void 0 ? _c : ''];
|
|
1028
1027
|
}
|
|
1029
|
-
if (
|
|
1030
|
-
return [2 /*return*/,
|
|
1028
|
+
if (transform) {
|
|
1029
|
+
return [2 /*return*/, transform(rowData.data, value)];
|
|
1031
1030
|
}
|
|
1032
1031
|
if (column.type === 'number') {
|
|
1033
1032
|
return [2 /*return*/, (_d = Number.toVNCurrency(value)) !== null && _d !== void 0 ? _d : ''];
|