@anglr/common 14.1.1 → 14.1.2-beta.20221013113913

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/changelog.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # Changelog
2
2
 
3
+ ## Version 14.1.2 (2022-10-13)
4
+
5
+ ### Bug Fixes
6
+
7
+ - updated `NumberInputControlValueAccessor` directive, which now correctly implements `setDisabledState`
8
+
3
9
  ## Version 14.1.1 (2022-06-30)
4
10
 
5
11
  ### Bug Fixes
@@ -24,16 +24,20 @@ export class NumberInputControlValueAccessor {
24
24
  * Method that is called when picker was touched
25
25
  */
26
26
  this.onTouched = () => { };
27
+ /**
28
+ * Indication whether is number input disabled
29
+ */
30
+ this.disabled = false;
27
31
  }
28
32
  //######################### public methods - implementation of ControlValueAccessor #########################
29
33
  /**
30
- * Sets value to select
34
+ * @inheritdoc
31
35
  */
32
36
  writeValue(value) {
33
37
  this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);
34
38
  }
35
39
  /**
36
- * Registers callback that is called when value of select changes
40
+ * @inheritdoc
37
41
  */
38
42
  registerOnChange(fn) {
39
43
  this.onChange = (value) => {
@@ -51,14 +55,20 @@ export class NumberInputControlValueAccessor {
51
55
  };
52
56
  }
53
57
  /**
54
- * Registers callback that is called when select is closed
58
+ * @inheritdoc
55
59
  */
56
60
  registerOnTouched(fn) {
57
61
  this.onTouched = fn;
58
62
  }
63
+ /**
64
+ * @inheritdoc
65
+ */
66
+ setDisabledState(isDisabled) {
67
+ this.disabled = isDisabled;
68
+ }
59
69
  }
60
70
  NumberInputControlValueAccessor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: NumberInputControlValueAccessor, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
61
- NumberInputControlValueAccessor.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: NumberInputControlValueAccessor, selector: "input[number][formControlName],input[number][formControl],input[number][ngModel]", host: { listeners: { "change": "onChange($event.target.value)", "input": "onChange($event.target.value)", "blur": "onTouched()" } }, providers: [NUMBER_INPUT_VALUE_ACCESSOR], ngImport: i0 });
71
+ NumberInputControlValueAccessor.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: NumberInputControlValueAccessor, selector: "input[number][formControlName],input[number][formControl],input[number][ngModel]", host: { listeners: { "change": "onChange($event.target.value)", "input": "onChange($event.target.value)", "blur": "onTouched()" }, properties: { "disabled": "disabled" } }, providers: [NUMBER_INPUT_VALUE_ACCESSOR], ngImport: i0 });
62
72
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: NumberInputControlValueAccessor, decorators: [{
63
73
  type: Directive,
64
74
  args: [{
@@ -67,7 +77,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImpor
67
77
  host: {
68
78
  '(change)': 'onChange($event.target.value)',
69
79
  '(input)': 'onChange($event.target.value)',
70
- '(blur)': 'onTouched()'
80
+ '(blur)': 'onTouched()',
81
+ '[disabled]': 'disabled',
71
82
  }
72
83
  }]
73
84
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; } });
@@ -1 +1 @@
1
- {"version":3,"file":"numberInputControlValueAccessor.directive.js","sourceRoot":"","sources":["../../../../../forms/src/directives/numberInput/numberInputControlValueAccessor.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAoB,UAAU,EAAE,SAAS,EAAE,UAAU,EAAC,MAAM,eAAe,CAAC;AAC7F,OAAO,EAAC,iBAAiB,EAAuB,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAC,OAAO,EAAC,MAAM,gBAAgB,CAAC;;AAEvC;;GAEG;AACH,MAAM,2BAA2B,GACjC;IACI,OAAO,EAAE,iBAAiB;IAC1B,WAAW,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,+BAA+B,CAAC;IAC9D,KAAK,EAAE,IAAI;CACd,CAAC;AAEF;;GAEG;AAYH,MAAM,OAAO,+BAA+B;IAWxC,iEAAiE;IACjE,YAAoB,SAAoB,EAAU,WAAuB;QAArD,cAAS,GAAT,SAAS,CAAW;QAAU,gBAAW,GAAX,WAAW,CAAY;QAVzE,uEAAuE;QAEhE,aAAQ,GAAG,CAAC,CAAM,EAAE,EAAE,GAAE,CAAC,CAAC;QAEjC;;WAEG;QACI,cAAS,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;IAK5B,CAAC;IAED,6GAA6G;IAE7G;;OAEG;IACI,UAAU,CAAC,KAAU;QAExB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAC/E,CAAC;IAED;;OAEG;IACI,gBAAgB,CAAC,EAAsB;QAE1C,IAAI,CAAC,QAAQ,GAAG,CAAC,KAAa,EAAE,EAAE;YAE9B,IAAG,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE,EAChC;gBACI,EAAE,CAAC,IAAI,CAAC,CAAC;gBAET,OAAO;aACV;YAED,qBAAqB;YACrB,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAElC,IAAG,CAAC,yBAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,EACzC;gBACI,EAAE,CAAC,GAAG,CAAC,CAAC;gBAER,OAAO;aACV;YAED,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;QAC5C,CAAC,CAAC;IACN,CAAC;IAED;;OAEG;IACI,iBAAiB,CAAC,EAAa;QAElC,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACxB,CAAC;;4HA5DQ,+BAA+B;gHAA/B,+BAA+B,gPAR7B,CAAC,2BAA2B,CAAC;2FAQ/B,+BAA+B;kBAX3C,SAAS;mBACV;oBACI,QAAQ,EAAE,kFAAkF;oBAC5F,SAAS,EAAE,CAAC,2BAA2B,CAAC;oBACxC,IAAI,EACJ;wBACI,UAAU,EAAE,+BAA+B;wBAC3C,SAAS,EAAE,+BAA+B;wBAC1C,QAAQ,EAAE,aAAa;qBAC1B;iBACJ","sourcesContent":["import {Directive, ExistingProvider, forwardRef, Renderer2, ElementRef} from '@angular/core';\nimport {NG_VALUE_ACCESSOR, ControlValueAccessor} from '@angular/forms';\nimport {isBlank} from '@jscrpt/common';\n\n/**\n * Value accessor provider for number inputs\n */\nconst NUMBER_INPUT_VALUE_ACCESSOR = <ExistingProvider>\n{\n provide: NG_VALUE_ACCESSOR, \n useExisting: forwardRef(() => NumberInputControlValueAccessor), \n multi: true\n};\n\n/**\n * Value accessor for getting and setting values for number inputs\n */\n@Directive(\n{\n selector: 'input[number][formControlName],input[number][formControl],input[number][ngModel]',\n providers: [NUMBER_INPUT_VALUE_ACCESSOR],\n host: \n {\n '(change)': 'onChange($event.target.value)',\n '(input)': 'onChange($event.target.value)',\n '(blur)': 'onTouched()'\n }\n})\nexport class NumberInputControlValueAccessor implements ControlValueAccessor\n{\n //######################### public properties #########################\n \n public onChange = (_: any) => {};\n \n /**\n * Method that is called when picker was touched\n */\n public onTouched = () => {};\n \n //######################### constructor #########################\n constructor(private _renderer: Renderer2, private _elementRef: ElementRef)\n {\n }\n\n //######################### public methods - implementation of ControlValueAccessor #########################\n\n /**\n * Sets value to select\n */\n public writeValue(value: any): void\n {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n /**\n * Registers callback that is called when value of select changes\n */\n public registerOnChange(fn: (data: any) => any): void\n {\n this.onChange = (value: string) => \n { \n if(isBlank(value) || value == '')\n {\n fn(null);\n \n return;\n }\n \n //removing all spaces\n value = value.replace(/\\s+/g, '');\n \n if(!/^[+-]?\\d+(?:[,.]\\d+)?$/g.test(value))\n {\n fn(NaN);\n \n return;\n }\n \n fn(parseFloat(value.replace(',', '.'))); \n };\n }\n\n /**\n * Registers callback that is called when select is closed\n */\n public registerOnTouched(fn: () => any): void\n {\n this.onTouched = fn;\n }\n}\n"]}
1
+ {"version":3,"file":"numberInputControlValueAccessor.directive.js","sourceRoot":"","sources":["../../../../../forms/src/directives/numberInput/numberInputControlValueAccessor.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAoB,UAAU,EAAE,SAAS,EAAE,UAAU,EAAC,MAAM,eAAe,CAAC;AAC7F,OAAO,EAAC,iBAAiB,EAAuB,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAC,OAAO,EAAC,MAAM,gBAAgB,CAAC;;AAEvC;;GAEG;AACH,MAAM,2BAA2B,GACjC;IACI,OAAO,EAAE,iBAAiB;IAC1B,WAAW,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,+BAA+B,CAAC;IAC9D,KAAK,EAAE,IAAI;CACd,CAAC;AAEF;;GAEG;AAaH,MAAM,OAAO,+BAA+B;IAgBxC,iEAAiE;IACjE,YAAoB,SAAoB,EAAU,WAAuB;QAArD,cAAS,GAAT,SAAS,CAAW;QAAU,gBAAW,GAAX,WAAW,CAAY;QAfzE,uEAAuE;QAEhE,aAAQ,GAAG,CAAC,CAAM,EAAE,EAAE,GAAE,CAAC,CAAC;QAEjC;;WAEG;QACI,cAAS,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;QAE5B;;WAEG;QACI,aAAQ,GAAY,KAAK,CAAC;IAKjC,CAAC;IAED,6GAA6G;IAE7G;;OAEG;IACI,UAAU,CAAC,KAAU;QAExB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAC/E,CAAC;IAED;;OAEG;IACI,gBAAgB,CAAC,EAAsB;QAE1C,IAAI,CAAC,QAAQ,GAAG,CAAC,KAAa,EAAE,EAAE;YAE9B,IAAG,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE,EAChC;gBACI,EAAE,CAAC,IAAI,CAAC,CAAC;gBAET,OAAO;aACV;YAED,qBAAqB;YACrB,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAElC,IAAG,CAAC,yBAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,EACzC;gBACI,EAAE,CAAC,GAAG,CAAC,CAAC;gBAER,OAAO;aACV;YAED,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;QAC5C,CAAC,CAAC;IACN,CAAC;IAED;;OAEG;IACI,iBAAiB,CAAC,EAAa;QAElC,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACxB,CAAC;IAED;;OAEG;IACI,gBAAgB,CAAE,UAAmB;QAExC,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC;IAC/B,CAAC;;4HAzEQ,+BAA+B;gHAA/B,+BAA+B,wRAT7B,CAAC,2BAA2B,CAAC;2FAS/B,+BAA+B;kBAZ3C,SAAS;mBACV;oBACI,QAAQ,EAAE,kFAAkF;oBAC5F,SAAS,EAAE,CAAC,2BAA2B,CAAC;oBACxC,IAAI,EACJ;wBACI,UAAU,EAAE,+BAA+B;wBAC3C,SAAS,EAAE,+BAA+B;wBAC1C,QAAQ,EAAE,aAAa;wBACvB,YAAY,EAAE,UAAU;qBAC3B;iBACJ","sourcesContent":["import {Directive, ExistingProvider, forwardRef, Renderer2, ElementRef} from '@angular/core';\nimport {NG_VALUE_ACCESSOR, ControlValueAccessor} from '@angular/forms';\nimport {isBlank} from '@jscrpt/common';\n\n/**\n * Value accessor provider for number inputs\n */\nconst NUMBER_INPUT_VALUE_ACCESSOR = <ExistingProvider>\n{\n provide: NG_VALUE_ACCESSOR, \n useExisting: forwardRef(() => NumberInputControlValueAccessor), \n multi: true\n};\n\n/**\n * Value accessor for getting and setting values for number inputs\n */\n@Directive(\n{\n selector: 'input[number][formControlName],input[number][formControl],input[number][ngModel]',\n providers: [NUMBER_INPUT_VALUE_ACCESSOR],\n host: \n {\n '(change)': 'onChange($event.target.value)',\n '(input)': 'onChange($event.target.value)',\n '(blur)': 'onTouched()',\n '[disabled]': 'disabled',\n }\n})\nexport class NumberInputControlValueAccessor implements ControlValueAccessor\n{\n //######################### public properties #########################\n \n public onChange = (_: any) => {};\n \n /**\n * Method that is called when picker was touched\n */\n public onTouched = () => {};\n\n /**\n * Indication whether is number input disabled\n */\n public disabled: boolean = false;\n \n //######################### constructor #########################\n constructor(private _renderer: Renderer2, private _elementRef: ElementRef)\n {\n }\n\n //######################### public methods - implementation of ControlValueAccessor #########################\n\n /**\n * @inheritdoc\n */\n public writeValue(value: any): void\n {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n /**\n * @inheritdoc\n */\n public registerOnChange(fn: (data: any) => any): void\n {\n this.onChange = (value: string) => \n { \n if(isBlank(value) || value == '')\n {\n fn(null);\n \n return;\n }\n \n //removing all spaces\n value = value.replace(/\\s+/g, '');\n \n if(!/^[+-]?\\d+(?:[,.]\\d+)?$/g.test(value))\n {\n fn(NaN);\n \n return;\n }\n \n fn(parseFloat(value.replace(',', '.'))); \n };\n }\n\n /**\n * @inheritdoc\n */\n public registerOnTouched(fn: () => any): void\n {\n this.onTouched = fn;\n }\n\n /**\n * @inheritdoc\n */\n public setDisabledState?(isDisabled: boolean): void\n {\n this.disabled = isDisabled;\n }\n}\n"]}
@@ -24,16 +24,20 @@ export class NumberInputControlValueAccessor {
24
24
  * Method that is called when picker was touched
25
25
  */
26
26
  this.onTouched = () => { };
27
+ /**
28
+ * Indication whether is number input disabled
29
+ */
30
+ this.disabled = false;
27
31
  }
28
32
  //######################### public methods - implementation of ControlValueAccessor #########################
29
33
  /**
30
- * Sets value to select
34
+ * @inheritdoc
31
35
  */
32
36
  writeValue(value) {
33
37
  this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);
34
38
  }
35
39
  /**
36
- * Registers callback that is called when value of select changes
40
+ * @inheritdoc
37
41
  */
38
42
  registerOnChange(fn) {
39
43
  this.onChange = (value) => {
@@ -51,14 +55,20 @@ export class NumberInputControlValueAccessor {
51
55
  };
52
56
  }
53
57
  /**
54
- * Registers callback that is called when select is closed
58
+ * @inheritdoc
55
59
  */
56
60
  registerOnTouched(fn) {
57
61
  this.onTouched = fn;
58
62
  }
63
+ /**
64
+ * @inheritdoc
65
+ */
66
+ setDisabledState(isDisabled) {
67
+ this.disabled = isDisabled;
68
+ }
59
69
  }
60
70
  NumberInputControlValueAccessor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: NumberInputControlValueAccessor, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
61
- NumberInputControlValueAccessor.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: NumberInputControlValueAccessor, selector: "input[number][formControlName],input[number][formControl],input[number][ngModel]", host: { listeners: { "change": "onChange($event.target.value)", "input": "onChange($event.target.value)", "blur": "onTouched()" } }, providers: [NUMBER_INPUT_VALUE_ACCESSOR], ngImport: i0 });
71
+ NumberInputControlValueAccessor.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.0", type: NumberInputControlValueAccessor, selector: "input[number][formControlName],input[number][formControl],input[number][ngModel]", host: { listeners: { "change": "onChange($event.target.value)", "input": "onChange($event.target.value)", "blur": "onTouched()" }, properties: { "disabled": "disabled" } }, providers: [NUMBER_INPUT_VALUE_ACCESSOR], ngImport: i0 });
62
72
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImport: i0, type: NumberInputControlValueAccessor, decorators: [{
63
73
  type: Directive,
64
74
  args: [{
@@ -67,7 +77,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0", ngImpor
67
77
  host: {
68
78
  '(change)': 'onChange($event.target.value)',
69
79
  '(input)': 'onChange($event.target.value)',
70
- '(blur)': 'onTouched()'
80
+ '(blur)': 'onTouched()',
81
+ '[disabled]': 'disabled',
71
82
  }
72
83
  }]
73
84
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; } });
@@ -1 +1 @@
1
- {"version":3,"file":"numberInputControlValueAccessor.directive.js","sourceRoot":"","sources":["../../../../../forms/src/directives/numberInput/numberInputControlValueAccessor.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAoB,UAAU,EAAE,SAAS,EAAE,UAAU,EAAC,MAAM,eAAe,CAAC;AAC7F,OAAO,EAAC,iBAAiB,EAAuB,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAC,OAAO,EAAC,MAAM,gBAAgB,CAAC;;AAEvC;;GAEG;AACH,MAAM,2BAA2B,GACjC;IACI,OAAO,EAAE,iBAAiB;IAC1B,WAAW,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,+BAA+B,CAAC;IAC9D,KAAK,EAAE,IAAI;CACd,CAAC;AAEF;;GAEG;AAYH,MAAM,OAAO,+BAA+B;IAWxC,iEAAiE;IACjE,YAAoB,SAAoB,EAAU,WAAuB;QAArD,cAAS,GAAT,SAAS,CAAW;QAAU,gBAAW,GAAX,WAAW,CAAY;QAVzE,uEAAuE;QAEhE,aAAQ,GAAG,CAAC,CAAM,EAAE,EAAE,GAAE,CAAC,CAAC;QAEjC;;WAEG;QACI,cAAS,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;IAK5B,CAAC;IAED,6GAA6G;IAE7G;;OAEG;IACI,UAAU,CAAC,KAAU;QAExB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAC/E,CAAC;IAED;;OAEG;IACI,gBAAgB,CAAC,EAAsB;QAE1C,IAAI,CAAC,QAAQ,GAAG,CAAC,KAAa,EAAE,EAAE;YAE9B,IAAG,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE,EAChC;gBACI,EAAE,CAAC,IAAI,CAAC,CAAC;gBAET,OAAO;aACV;YAED,qBAAqB;YACrB,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAElC,IAAG,CAAC,yBAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,EACzC;gBACI,EAAE,CAAC,GAAG,CAAC,CAAC;gBAER,OAAO;aACV;YAED,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;QAC5C,CAAC,CAAC;IACN,CAAC;IAED;;OAEG;IACI,iBAAiB,CAAC,EAAa;QAElC,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACxB,CAAC;;4HA5DQ,+BAA+B;gHAA/B,+BAA+B,gPAR7B,CAAC,2BAA2B,CAAC;2FAQ/B,+BAA+B;kBAX3C,SAAS;mBACV;oBACI,QAAQ,EAAE,kFAAkF;oBAC5F,SAAS,EAAE,CAAC,2BAA2B,CAAC;oBACxC,IAAI,EACJ;wBACI,UAAU,EAAE,+BAA+B;wBAC3C,SAAS,EAAE,+BAA+B;wBAC1C,QAAQ,EAAE,aAAa;qBAC1B;iBACJ","sourcesContent":["import {Directive, ExistingProvider, forwardRef, Renderer2, ElementRef} from '@angular/core';\nimport {NG_VALUE_ACCESSOR, ControlValueAccessor} from '@angular/forms';\nimport {isBlank} from '@jscrpt/common';\n\n/**\n * Value accessor provider for number inputs\n */\nconst NUMBER_INPUT_VALUE_ACCESSOR = <ExistingProvider>\n{\n provide: NG_VALUE_ACCESSOR, \n useExisting: forwardRef(() => NumberInputControlValueAccessor), \n multi: true\n};\n\n/**\n * Value accessor for getting and setting values for number inputs\n */\n@Directive(\n{\n selector: 'input[number][formControlName],input[number][formControl],input[number][ngModel]',\n providers: [NUMBER_INPUT_VALUE_ACCESSOR],\n host: \n {\n '(change)': 'onChange($event.target.value)',\n '(input)': 'onChange($event.target.value)',\n '(blur)': 'onTouched()'\n }\n})\nexport class NumberInputControlValueAccessor implements ControlValueAccessor\n{\n //######################### public properties #########################\n \n public onChange = (_: any) => {};\n \n /**\n * Method that is called when picker was touched\n */\n public onTouched = () => {};\n \n //######################### constructor #########################\n constructor(private _renderer: Renderer2, private _elementRef: ElementRef)\n {\n }\n\n //######################### public methods - implementation of ControlValueAccessor #########################\n\n /**\n * Sets value to select\n */\n public writeValue(value: any): void\n {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n /**\n * Registers callback that is called when value of select changes\n */\n public registerOnChange(fn: (data: any) => any): void\n {\n this.onChange = (value: string) => \n { \n if(isBlank(value) || value == '')\n {\n fn(null);\n \n return;\n }\n \n //removing all spaces\n value = value.replace(/\\s+/g, '');\n \n if(!/^[+-]?\\d+(?:[,.]\\d+)?$/g.test(value))\n {\n fn(NaN);\n \n return;\n }\n \n fn(parseFloat(value.replace(',', '.'))); \n };\n }\n\n /**\n * Registers callback that is called when select is closed\n */\n public registerOnTouched(fn: () => any): void\n {\n this.onTouched = fn;\n }\n}\n"]}
1
+ {"version":3,"file":"numberInputControlValueAccessor.directive.js","sourceRoot":"","sources":["../../../../../forms/src/directives/numberInput/numberInputControlValueAccessor.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAoB,UAAU,EAAE,SAAS,EAAE,UAAU,EAAC,MAAM,eAAe,CAAC;AAC7F,OAAO,EAAC,iBAAiB,EAAuB,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAC,OAAO,EAAC,MAAM,gBAAgB,CAAC;;AAEvC;;GAEG;AACH,MAAM,2BAA2B,GACjC;IACI,OAAO,EAAE,iBAAiB;IAC1B,WAAW,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,+BAA+B,CAAC;IAC9D,KAAK,EAAE,IAAI;CACd,CAAC;AAEF;;GAEG;AAaH,MAAM,OAAO,+BAA+B;IAgBxC,iEAAiE;IACjE,YAAoB,SAAoB,EAAU,WAAuB;QAArD,cAAS,GAAT,SAAS,CAAW;QAAU,gBAAW,GAAX,WAAW,CAAY;QAfzE,uEAAuE;QAEhE,aAAQ,GAAG,CAAC,CAAM,EAAE,EAAE,GAAE,CAAC,CAAC;QAEjC;;WAEG;QACI,cAAS,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;QAE5B;;WAEG;QACI,aAAQ,GAAY,KAAK,CAAC;IAKjC,CAAC;IAED,6GAA6G;IAE7G;;OAEG;IACI,UAAU,CAAC,KAAU;QAExB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAC/E,CAAC;IAED;;OAEG;IACI,gBAAgB,CAAC,EAAsB;QAE1C,IAAI,CAAC,QAAQ,GAAG,CAAC,KAAa,EAAE,EAAE;YAE9B,IAAG,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE,EAChC;gBACI,EAAE,CAAC,IAAI,CAAC,CAAC;gBAET,OAAO;aACV;YAED,qBAAqB;YACrB,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAElC,IAAG,CAAC,yBAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,EACzC;gBACI,EAAE,CAAC,GAAG,CAAC,CAAC;gBAER,OAAO;aACV;YAED,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;QAC5C,CAAC,CAAC;IACN,CAAC;IAED;;OAEG;IACI,iBAAiB,CAAC,EAAa;QAElC,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACxB,CAAC;IAED;;OAEG;IACI,gBAAgB,CAAE,UAAmB;QAExC,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC;IAC/B,CAAC;;4HAzEQ,+BAA+B;gHAA/B,+BAA+B,wRAT7B,CAAC,2BAA2B,CAAC;2FAS/B,+BAA+B;kBAZ3C,SAAS;mBACV;oBACI,QAAQ,EAAE,kFAAkF;oBAC5F,SAAS,EAAE,CAAC,2BAA2B,CAAC;oBACxC,IAAI,EACJ;wBACI,UAAU,EAAE,+BAA+B;wBAC3C,SAAS,EAAE,+BAA+B;wBAC1C,QAAQ,EAAE,aAAa;wBACvB,YAAY,EAAE,UAAU;qBAC3B;iBACJ","sourcesContent":["import {Directive, ExistingProvider, forwardRef, Renderer2, ElementRef} from '@angular/core';\nimport {NG_VALUE_ACCESSOR, ControlValueAccessor} from '@angular/forms';\nimport {isBlank} from '@jscrpt/common';\n\n/**\n * Value accessor provider for number inputs\n */\nconst NUMBER_INPUT_VALUE_ACCESSOR = <ExistingProvider>\n{\n provide: NG_VALUE_ACCESSOR, \n useExisting: forwardRef(() => NumberInputControlValueAccessor), \n multi: true\n};\n\n/**\n * Value accessor for getting and setting values for number inputs\n */\n@Directive(\n{\n selector: 'input[number][formControlName],input[number][formControl],input[number][ngModel]',\n providers: [NUMBER_INPUT_VALUE_ACCESSOR],\n host: \n {\n '(change)': 'onChange($event.target.value)',\n '(input)': 'onChange($event.target.value)',\n '(blur)': 'onTouched()',\n '[disabled]': 'disabled',\n }\n})\nexport class NumberInputControlValueAccessor implements ControlValueAccessor\n{\n //######################### public properties #########################\n \n public onChange = (_: any) => {};\n \n /**\n * Method that is called when picker was touched\n */\n public onTouched = () => {};\n\n /**\n * Indication whether is number input disabled\n */\n public disabled: boolean = false;\n \n //######################### constructor #########################\n constructor(private _renderer: Renderer2, private _elementRef: ElementRef)\n {\n }\n\n //######################### public methods - implementation of ControlValueAccessor #########################\n\n /**\n * @inheritdoc\n */\n public writeValue(value: any): void\n {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', value);\n }\n\n /**\n * @inheritdoc\n */\n public registerOnChange(fn: (data: any) => any): void\n {\n this.onChange = (value: string) => \n { \n if(isBlank(value) || value == '')\n {\n fn(null);\n \n return;\n }\n \n //removing all spaces\n value = value.replace(/\\s+/g, '');\n \n if(!/^[+-]?\\d+(?:[,.]\\d+)?$/g.test(value))\n {\n fn(NaN);\n \n return;\n }\n \n fn(parseFloat(value.replace(',', '.'))); \n };\n }\n\n /**\n * @inheritdoc\n */\n public registerOnTouched(fn: () => any): void\n {\n this.onTouched = fn;\n }\n\n /**\n * @inheritdoc\n */\n public setDisabledState?(isDisabled: boolean): void\n {\n this.disabled = isDisabled;\n }\n}\n"]}
@@ -12,19 +12,27 @@ export declare class NumberInputControlValueAccessor implements ControlValueAcce
12
12
  * Method that is called when picker was touched
13
13
  */
14
14
  onTouched: () => void;
15
+ /**
16
+ * Indication whether is number input disabled
17
+ */
18
+ disabled: boolean;
15
19
  constructor(_renderer: Renderer2, _elementRef: ElementRef);
16
20
  /**
17
- * Sets value to select
21
+ * @inheritdoc
18
22
  */
19
23
  writeValue(value: any): void;
20
24
  /**
21
- * Registers callback that is called when value of select changes
25
+ * @inheritdoc
22
26
  */
23
27
  registerOnChange(fn: (data: any) => any): void;
24
28
  /**
25
- * Registers callback that is called when select is closed
29
+ * @inheritdoc
26
30
  */
27
31
  registerOnTouched(fn: () => any): void;
32
+ /**
33
+ * @inheritdoc
34
+ */
35
+ setDisabledState?(isDisabled: boolean): void;
28
36
  static ɵfac: i0.ɵɵFactoryDeclaration<NumberInputControlValueAccessor, never>;
29
37
  static ɵdir: i0.ɵɵDirectiveDeclaration<NumberInputControlValueAccessor, "input[number][formControlName],input[number][formControl],input[number][ngModel]", never, {}, {}, never, never, false>;
30
38
  }
@@ -1 +1 @@
1
- {"version":3,"file":"numberInputControlValueAccessor.directive.d.ts","sourceRoot":"","sources":["numberInputControlValueAccessor.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0C,SAAS,EAAE,UAAU,EAAC,MAAM,eAAe,CAAC;AAC7F,OAAO,EAAoB,oBAAoB,EAAC,MAAM,gBAAgB,CAAC;;AAavE;;GAEG;AACH,qBAWa,+BAAgC,YAAW,oBAAoB;IAY5D,OAAO,CAAC,SAAS;IAAa,OAAO,CAAC,WAAW;IARtD,QAAQ,MAAO,GAAG,UAAQ;IAEjC;;OAEG;IACI,SAAS,aAAY;gBAGR,SAAS,EAAE,SAAS,EAAU,WAAW,EAAE,UAAU;IAMzE;;OAEG;IACI,UAAU,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI;IAKnC;;OAEG;IACI,gBAAgB,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,GAAG,GAAG,IAAI;IAyBrD;;OAEG;IACI,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,GAAG,IAAI;yCAzDpC,+BAA+B;2CAA/B,+BAA+B;CA6D3C"}
1
+ {"version":3,"file":"numberInputControlValueAccessor.directive.d.ts","sourceRoot":"","sources":["numberInputControlValueAccessor.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0C,SAAS,EAAE,UAAU,EAAC,MAAM,eAAe,CAAC;AAC7F,OAAO,EAAoB,oBAAoB,EAAC,MAAM,gBAAgB,CAAC;;AAavE;;GAEG;AACH,qBAYa,+BAAgC,YAAW,oBAAoB;IAiB5D,OAAO,CAAC,SAAS;IAAa,OAAO,CAAC,WAAW;IAbtD,QAAQ,MAAO,GAAG,UAAQ;IAEjC;;OAEG;IACI,SAAS,aAAY;IAE5B;;OAEG;IACI,QAAQ,EAAE,OAAO,CAAS;gBAGb,SAAS,EAAE,SAAS,EAAU,WAAW,EAAE,UAAU;IAMzE;;OAEG;IACI,UAAU,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI;IAKnC;;OAEG;IACI,gBAAgB,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,GAAG,GAAG,IAAI;IAyBrD;;OAEG;IACI,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,GAAG,IAAI;IAK7C;;OAEG;IACI,gBAAgB,CAAC,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI;yCAtE1C,+BAA+B;2CAA/B,+BAA+B;CA0E3C"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@anglr/common",
3
- "version": "14.1.1",
3
+ "version": "14.1.2-beta.20221013113913",
4
4
  "description": "Angular module for common angular stuff",
5
5
  "type": "module",
6
6
  "sideEffects": false,
package/version.bak CHANGED
@@ -1 +1 @@
1
- 14.1.1
1
+ 14.1.2-beta.20221013113913