@skyux/autonumeric 14.3.10 → 14.3.12
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.
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Injectable, forwardRef, HostListener, Input, Directive, NgModule } from '@angular/core';
|
|
2
|
+
import { Injectable, forwardRef, inject, ElementRef, Renderer2, ChangeDetectorRef, HostListener, Input, Directive, NgModule } from '@angular/core';
|
|
3
3
|
import { NG_VALUE_ACCESSOR, NG_VALIDATORS } from '@angular/forms';
|
|
4
4
|
import AutoNumeric from 'autonumeric';
|
|
5
5
|
import { Subject, fromEvent } from 'rxjs';
|
|
@@ -60,7 +60,7 @@ class SkyAutonumericDirective {
|
|
|
60
60
|
#globalConfig;
|
|
61
61
|
#renderer;
|
|
62
62
|
#changeDetector;
|
|
63
|
-
constructor(
|
|
63
|
+
constructor() {
|
|
64
64
|
/**
|
|
65
65
|
* @internal
|
|
66
66
|
*/
|
|
@@ -68,17 +68,17 @@ class SkyAutonumericDirective {
|
|
|
68
68
|
this.#isFirstChange = true;
|
|
69
69
|
this.#isWritingValue = false;
|
|
70
70
|
this.#ngUnsubscribe = new Subject();
|
|
71
|
+
this.#elementRef = inject(ElementRef);
|
|
72
|
+
this.#globalConfig = inject(SkyAutonumericOptionsProvider);
|
|
73
|
+
this.#renderer = inject(Renderer2);
|
|
74
|
+
this.#changeDetector = inject(ChangeDetectorRef);
|
|
71
75
|
// istanbul ignore next
|
|
72
76
|
// eslint-disable-next-line @typescript-eslint/no-empty-function , @typescript-eslint/no-unused-vars
|
|
73
77
|
this.#onChange = (_) => { };
|
|
74
78
|
// istanbul ignore next
|
|
75
79
|
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
76
80
|
this.#onTouched = () => { };
|
|
77
|
-
this.#
|
|
78
|
-
this.#globalConfig = globalConfig;
|
|
79
|
-
this.#renderer = renderer;
|
|
80
|
-
this.#changeDetector = changeDetector;
|
|
81
|
-
this.#autonumericInstance = new AutoNumeric(elementRef.nativeElement);
|
|
81
|
+
this.#autonumericInstance = new AutoNumeric(this.#elementRef.nativeElement);
|
|
82
82
|
}
|
|
83
83
|
ngOnInit() {
|
|
84
84
|
// Ensure that we set the global config even if no local config has been given.
|
|
@@ -219,7 +219,7 @@ class SkyAutonumericDirective {
|
|
|
219
219
|
// istanbul ignore next
|
|
220
220
|
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
221
221
|
#onTouched;
|
|
222
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: SkyAutonumericDirective, deps: [
|
|
222
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: SkyAutonumericDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
223
223
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.0", type: SkyAutonumericDirective, isStandalone: true, selector: "input[skyAutonumeric]", inputs: { skyAutonumeric: "skyAutonumeric", skyAutonumericFormChangesUnformatted: "skyAutonumericFormChangesUnformatted" }, host: { listeners: { "blur": "onBlur()" } }, providers: [SKY_AUTONUMERIC_VALUE_ACCESSOR, SKY_AUTONUMERIC_VALIDATOR], ngImport: i0 }); }
|
|
224
224
|
}
|
|
225
225
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImport: i0, type: SkyAutonumericDirective, decorators: [{
|
|
@@ -228,7 +228,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.0", ngImpor
|
|
|
228
228
|
selector: 'input[skyAutonumeric]',
|
|
229
229
|
providers: [SKY_AUTONUMERIC_VALUE_ACCESSOR, SKY_AUTONUMERIC_VALIDATOR],
|
|
230
230
|
}]
|
|
231
|
-
}], ctorParameters: () => [
|
|
231
|
+
}], ctorParameters: () => [], propDecorators: { skyAutonumeric: [{
|
|
232
232
|
type: Input
|
|
233
233
|
}], skyAutonumericFormChangesUnformatted: [{
|
|
234
234
|
type: Input
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skyux-autonumeric.mjs","sources":["../../../../../libs/components/autonumeric/src/lib/modules/autonumeric/autonumeric-options-provider.ts","../../../../../libs/components/autonumeric/src/lib/modules/autonumeric/autonumeric.directive.ts","../../../../../libs/components/autonumeric/src/lib/modules/autonumeric/autonumeric.module.ts","../../../../../libs/components/autonumeric/src/skyux-autonumeric.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\nimport { SkyAutonumericOptions } from './autonumeric-options';\n\n/**\n * Provides options to the underlying [AutoNumeric library](https://github.com/autoNumeric/autoNumeric).\n * This can set global options on multiple input fields.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class SkyAutonumericOptionsProvider {\n /**\n * The value for a settings object to pass to the AutoNumeric library.\n * This overrides any default options specified by the `skyAutonumeric` attribute.\n */\n public getConfig(): SkyAutonumericOptions {\n return {};\n }\n}\n","import {\n ChangeDetectorRef,\n Directive,\n ElementRef,\n HostListener,\n Input,\n OnDestroy,\n OnInit,\n Renderer2,\n forwardRef,\n} from '@angular/core';\nimport {\n AbstractControl,\n ControlValueAccessor,\n NG_VALIDATORS,\n NG_VALUE_ACCESSOR,\n ValidationErrors,\n Validator,\n} from '@angular/forms';\n\nimport AutoNumeric from 'autonumeric';\nimport { Subject, fromEvent } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyAutonumericOptions } from './autonumeric-options';\nimport { SkyAutonumericOptionsProvider } from './autonumeric-options-provider';\n\nconst SKY_AUTONUMERIC_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SkyAutonumericDirective),\n multi: true,\n};\n\nconst SKY_AUTONUMERIC_VALIDATOR = {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => SkyAutonumericDirective),\n multi: true,\n};\n\n/**\n * Wraps the [autoNumeric utility](https://github.com/autoNumeric/autoNumeric) to format\n * any type of number, including currency.\n */\n@Directive({\n selector: 'input[skyAutonumeric]',\n providers: [SKY_AUTONUMERIC_VALUE_ACCESSOR, SKY_AUTONUMERIC_VALIDATOR],\n})\nexport class SkyAutonumericDirective\n implements OnInit, OnDestroy, ControlValueAccessor, Validator\n{\n /**\n * Assigns the name of a property from `SkyAutonumericOptionsProvider`.\n */\n @Input()\n public set skyAutonumeric(value: SkyAutonumericOptions | undefined) {\n this.#autonumericOptions = this.#mergeOptions(value);\n this.#updateAutonumericInstance();\n }\n\n /**\n * @internal\n */\n @Input()\n public skyAutonumericFormChangesUnformatted: boolean | undefined = false;\n\n #autonumericInstance: AutoNumeric;\n #autonumericOptions: SkyAutonumericOptions | undefined;\n #control: AbstractControl | undefined;\n #isFirstChange = true;\n #isWritingValue = false;\n #value: number | undefined;\n\n #ngUnsubscribe = new Subject<void>();\n\n #elementRef: ElementRef;\n #globalConfig: SkyAutonumericOptionsProvider;\n #renderer: Renderer2;\n #changeDetector: ChangeDetectorRef;\n\n constructor(\n elementRef: ElementRef,\n globalConfig: SkyAutonumericOptionsProvider,\n renderer: Renderer2,\n changeDetector: ChangeDetectorRef,\n ) {\n this.#elementRef = elementRef;\n this.#globalConfig = globalConfig;\n this.#renderer = renderer;\n this.#changeDetector = changeDetector;\n\n this.#autonumericInstance = new AutoNumeric(elementRef.nativeElement);\n }\n\n public ngOnInit(): void {\n // Ensure that we set the global config even if no local config has been given.\n if (!this.#autonumericOptions) {\n this.#autonumericOptions = this.#globalConfig.getConfig();\n }\n this.#updateAutonumericInstance();\n\n fromEvent(this.#elementRef.nativeElement, 'input')\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe(() => {\n this.#handleValueChange();\n\n /* istanbul ignore else */\n if (this.#control && !this.#control.dirty) {\n this.#control.markAsDirty();\n }\n\n this.#changeDetector.markForCheck();\n });\n\n // On Android browsers, the native `input` event fires before AutoNumeric's\n // `autoNumeric:rawValueModified` event (on other browsers, the order is reversed).\n // To support Android without breaking existing behavior, we listen to both events.\n // See: https://github.com/autoNumeric/autoNumeric/issues/781\n fromEvent(this.#elementRef.nativeElement, 'autoNumeric:rawValueModified')\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe(() => {\n // Prevent processing during programmatic changes via writeValue().\n if (!this.#isWritingValue) {\n this.#handleValueChange();\n }\n });\n }\n\n public ngOnDestroy(): void {\n this.#autonumericInstance.remove();\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n /**\n * Implemented as part of ControlValueAccessor.\n */\n public setDisabledState(value: boolean): void {\n this.#renderer.setProperty(\n this.#elementRef.nativeElement,\n 'disabled',\n value,\n );\n }\n\n public writeValue(value: number | undefined): void {\n this.#isWritingValue = true;\n\n if (this.#value !== value) {\n this.#value = value;\n this.#onChange(value);\n\n // Mark the control as \"pristine\" if it is initialized with a value.\n if (this.#isFirstChange && this.#control && this.#value !== null) {\n this.#isFirstChange = false;\n this.#control.markAsPristine();\n }\n }\n\n if (typeof value === 'number') {\n if (this.skyAutonumericFormChangesUnformatted) {\n this.#autonumericInstance.setUnformatted(value.toString());\n } else {\n this.#autonumericInstance.set(value.toString());\n }\n } else {\n this.#autonumericInstance.clear();\n }\n\n this.#isWritingValue = false;\n }\n\n public validate(control: AbstractControl): ValidationErrors | null {\n const noErrors = null;\n\n if (!this.#control) {\n this.#control = control;\n }\n\n if (control.value === null || control.value === undefined) {\n return noErrors;\n }\n\n if (typeof control.value !== 'number') {\n return {\n notTypeOfNumber: { value: control.value },\n };\n }\n\n return noErrors;\n }\n\n public registerOnChange(fn: (value: number | undefined) => void): void {\n this.#onChange = fn;\n }\n\n public registerOnTouched(fn: () => void): void {\n this.#onTouched = fn;\n }\n\n @HostListener('blur')\n public onBlur(): void {\n this.#onTouched();\n }\n\n #handleValueChange(): void {\n const numericValue = this.#getNumericValue();\n\n if (this.#value !== numericValue) {\n this.#value = numericValue;\n this.#onChange(numericValue);\n }\n }\n\n #getNumericValue(): number | undefined {\n const inputValue = this.#getInputValue();\n const numericValue = this.#autonumericInstance.getNumber();\n return inputValue &&\n !this.#isInputValueTheCurrencySymbol(inputValue) &&\n typeof numericValue === 'number'\n ? numericValue\n : undefined;\n }\n\n /**\n * Due to AutoNumeric's hover logic - when AutoNumeric has a currency symbol, the value\n * that we get back on empty fields will be the currency symbol.\n * The following logic ensures that we don't accidentally set\n * a form value when the only input was the programmatically-added currency symbol.\n */\n #isInputValueTheCurrencySymbol(inputValue: string): boolean {\n /* istanbul ignore next */\n const currencySymbol = (\n (this.#autonumericOptions as AutoNumeric.Options)?.currencySymbol ?? ''\n ).trim();\n return !!currencySymbol && inputValue === currencySymbol;\n }\n\n #getInputValue(): string {\n return this.#elementRef.nativeElement.value;\n }\n\n #updateAutonumericInstance(): void {\n this.#autonumericInstance.update(\n this.#autonumericOptions as AutoNumeric.Options,\n );\n }\n\n #mergeOptions(\n value: SkyAutonumericOptions | undefined,\n ): SkyAutonumericOptions {\n const globalOptions: SkyAutonumericOptions = this.#globalConfig.getConfig();\n\n let newOptions: SkyAutonumericOptions | undefined;\n if (typeof value === 'string') {\n const predefinedOptions = AutoNumeric.getPredefinedOptions();\n newOptions = predefinedOptions[\n value as keyof AutoNumeric.Options\n ] as AutoNumeric.Options;\n } else {\n newOptions = value;\n }\n\n return Object.assign({}, globalOptions, newOptions);\n }\n\n // istanbul ignore next\n // eslint-disable-next-line @typescript-eslint/no-empty-function , @typescript-eslint/no-unused-vars\n #onChange = (_: number | undefined): void => {};\n // istanbul ignore next\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n #onTouched = (): void => {};\n}\n","import { NgModule } from '@angular/core';\n\nimport { SkyAutonumericDirective } from './autonumeric.directive';\n\n@NgModule({\n imports: [SkyAutonumericDirective],\n exports: [SkyAutonumericDirective],\n})\nexport class SkyAutonumericModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.SkyAutonumericOptionsProvider"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"skyux-autonumeric.mjs","sources":["../../../../../libs/components/autonumeric/src/lib/modules/autonumeric/autonumeric-options-provider.ts","../../../../../libs/components/autonumeric/src/lib/modules/autonumeric/autonumeric.directive.ts","../../../../../libs/components/autonumeric/src/lib/modules/autonumeric/autonumeric.module.ts","../../../../../libs/components/autonumeric/src/skyux-autonumeric.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\nimport { SkyAutonumericOptions } from './autonumeric-options';\n\n/**\n * Provides options to the underlying [AutoNumeric library](https://github.com/autoNumeric/autoNumeric).\n * This can set global options on multiple input fields.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class SkyAutonumericOptionsProvider {\n /**\n * The value for a settings object to pass to the AutoNumeric library.\n * This overrides any default options specified by the `skyAutonumeric` attribute.\n */\n public getConfig(): SkyAutonumericOptions {\n return {};\n }\n}\n","import {\n ChangeDetectorRef,\n Directive,\n ElementRef,\n HostListener,\n Input,\n OnDestroy,\n OnInit,\n Renderer2,\n forwardRef,\n inject,\n} from '@angular/core';\nimport {\n AbstractControl,\n ControlValueAccessor,\n NG_VALIDATORS,\n NG_VALUE_ACCESSOR,\n ValidationErrors,\n Validator,\n} from '@angular/forms';\n\nimport AutoNumeric from 'autonumeric';\nimport { Subject, fromEvent } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { SkyAutonumericOptions } from './autonumeric-options';\nimport { SkyAutonumericOptionsProvider } from './autonumeric-options-provider';\n\nconst SKY_AUTONUMERIC_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SkyAutonumericDirective),\n multi: true,\n};\n\nconst SKY_AUTONUMERIC_VALIDATOR = {\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => SkyAutonumericDirective),\n multi: true,\n};\n\n/**\n * Wraps the [autoNumeric utility](https://github.com/autoNumeric/autoNumeric) to format\n * any type of number, including currency.\n */\n@Directive({\n selector: 'input[skyAutonumeric]',\n providers: [SKY_AUTONUMERIC_VALUE_ACCESSOR, SKY_AUTONUMERIC_VALIDATOR],\n})\nexport class SkyAutonumericDirective\n implements OnInit, OnDestroy, ControlValueAccessor, Validator\n{\n /**\n * Assigns the name of a property from `SkyAutonumericOptionsProvider`.\n */\n @Input()\n public set skyAutonumeric(value: SkyAutonumericOptions | undefined) {\n this.#autonumericOptions = this.#mergeOptions(value);\n this.#updateAutonumericInstance();\n }\n\n /**\n * @internal\n */\n @Input()\n public skyAutonumericFormChangesUnformatted: boolean | undefined = false;\n\n #autonumericInstance: AutoNumeric;\n #autonumericOptions: SkyAutonumericOptions | undefined;\n #control: AbstractControl | undefined;\n #isFirstChange = true;\n #isWritingValue = false;\n #value: number | undefined;\n\n #ngUnsubscribe = new Subject<void>();\n\n readonly #elementRef = inject(ElementRef);\n readonly #globalConfig = inject(SkyAutonumericOptionsProvider);\n readonly #renderer = inject(Renderer2);\n readonly #changeDetector = inject(ChangeDetectorRef);\n\n constructor() {\n this.#autonumericInstance = new AutoNumeric(this.#elementRef.nativeElement);\n }\n\n public ngOnInit(): void {\n // Ensure that we set the global config even if no local config has been given.\n if (!this.#autonumericOptions) {\n this.#autonumericOptions = this.#globalConfig.getConfig();\n }\n this.#updateAutonumericInstance();\n\n fromEvent(this.#elementRef.nativeElement, 'input')\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe(() => {\n this.#handleValueChange();\n\n /* istanbul ignore else */\n if (this.#control && !this.#control.dirty) {\n this.#control.markAsDirty();\n }\n\n this.#changeDetector.markForCheck();\n });\n\n // On Android browsers, the native `input` event fires before AutoNumeric's\n // `autoNumeric:rawValueModified` event (on other browsers, the order is reversed).\n // To support Android without breaking existing behavior, we listen to both events.\n // See: https://github.com/autoNumeric/autoNumeric/issues/781\n fromEvent(this.#elementRef.nativeElement, 'autoNumeric:rawValueModified')\n .pipe(takeUntil(this.#ngUnsubscribe))\n .subscribe(() => {\n // Prevent processing during programmatic changes via writeValue().\n if (!this.#isWritingValue) {\n this.#handleValueChange();\n }\n });\n }\n\n public ngOnDestroy(): void {\n this.#autonumericInstance.remove();\n this.#ngUnsubscribe.next();\n this.#ngUnsubscribe.complete();\n }\n\n /**\n * Implemented as part of ControlValueAccessor.\n */\n public setDisabledState(value: boolean): void {\n this.#renderer.setProperty(\n this.#elementRef.nativeElement,\n 'disabled',\n value,\n );\n }\n\n public writeValue(value: number | undefined): void {\n this.#isWritingValue = true;\n\n if (this.#value !== value) {\n this.#value = value;\n this.#onChange(value);\n\n // Mark the control as \"pristine\" if it is initialized with a value.\n if (this.#isFirstChange && this.#control && this.#value !== null) {\n this.#isFirstChange = false;\n this.#control.markAsPristine();\n }\n }\n\n if (typeof value === 'number') {\n if (this.skyAutonumericFormChangesUnformatted) {\n this.#autonumericInstance.setUnformatted(value.toString());\n } else {\n this.#autonumericInstance.set(value.toString());\n }\n } else {\n this.#autonumericInstance.clear();\n }\n\n this.#isWritingValue = false;\n }\n\n public validate(control: AbstractControl): ValidationErrors | null {\n const noErrors = null;\n\n if (!this.#control) {\n this.#control = control;\n }\n\n if (control.value === null || control.value === undefined) {\n return noErrors;\n }\n\n if (typeof control.value !== 'number') {\n return {\n notTypeOfNumber: { value: control.value },\n };\n }\n\n return noErrors;\n }\n\n public registerOnChange(fn: (value: number | undefined) => void): void {\n this.#onChange = fn;\n }\n\n public registerOnTouched(fn: () => void): void {\n this.#onTouched = fn;\n }\n\n @HostListener('blur')\n public onBlur(): void {\n this.#onTouched();\n }\n\n #handleValueChange(): void {\n const numericValue = this.#getNumericValue();\n\n if (this.#value !== numericValue) {\n this.#value = numericValue;\n this.#onChange(numericValue);\n }\n }\n\n #getNumericValue(): number | undefined {\n const inputValue = this.#getInputValue();\n const numericValue = this.#autonumericInstance.getNumber();\n return inputValue &&\n !this.#isInputValueTheCurrencySymbol(inputValue) &&\n typeof numericValue === 'number'\n ? numericValue\n : undefined;\n }\n\n /**\n * Due to AutoNumeric's hover logic - when AutoNumeric has a currency symbol, the value\n * that we get back on empty fields will be the currency symbol.\n * The following logic ensures that we don't accidentally set\n * a form value when the only input was the programmatically-added currency symbol.\n */\n #isInputValueTheCurrencySymbol(inputValue: string): boolean {\n /* istanbul ignore next */\n const currencySymbol = (\n (this.#autonumericOptions as AutoNumeric.Options)?.currencySymbol ?? ''\n ).trim();\n return !!currencySymbol && inputValue === currencySymbol;\n }\n\n #getInputValue(): string {\n return this.#elementRef.nativeElement.value;\n }\n\n #updateAutonumericInstance(): void {\n this.#autonumericInstance.update(\n this.#autonumericOptions as AutoNumeric.Options,\n );\n }\n\n #mergeOptions(\n value: SkyAutonumericOptions | undefined,\n ): SkyAutonumericOptions {\n const globalOptions: SkyAutonumericOptions = this.#globalConfig.getConfig();\n\n let newOptions: SkyAutonumericOptions | undefined;\n if (typeof value === 'string') {\n const predefinedOptions = AutoNumeric.getPredefinedOptions();\n newOptions = predefinedOptions[\n value as keyof AutoNumeric.Options\n ] as AutoNumeric.Options;\n } else {\n newOptions = value;\n }\n\n return Object.assign({}, globalOptions, newOptions);\n }\n\n // istanbul ignore next\n // eslint-disable-next-line @typescript-eslint/no-empty-function , @typescript-eslint/no-unused-vars\n #onChange = (_: number | undefined): void => {};\n // istanbul ignore next\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n #onTouched = (): void => {};\n}\n","import { NgModule } from '@angular/core';\n\nimport { SkyAutonumericDirective } from './autonumeric.directive';\n\n@NgModule({\n imports: [SkyAutonumericDirective],\n exports: [SkyAutonumericDirective],\n})\nexport class SkyAutonumericModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import AutoNumeric from 'autonumeric';
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
|
-
import { OnInit, OnDestroy
|
|
3
|
+
import { OnInit, OnDestroy } from '@angular/core';
|
|
4
4
|
import { ControlValueAccessor, Validator, AbstractControl, ValidationErrors } from '@angular/forms';
|
|
5
5
|
|
|
6
6
|
/**
|
|
@@ -41,7 +41,7 @@ declare class SkyAutonumericDirective implements OnInit, OnDestroy, ControlValue
|
|
|
41
41
|
* @internal
|
|
42
42
|
*/
|
|
43
43
|
skyAutonumericFormChangesUnformatted: boolean | undefined;
|
|
44
|
-
constructor(
|
|
44
|
+
constructor();
|
|
45
45
|
ngOnInit(): void;
|
|
46
46
|
ngOnDestroy(): void;
|
|
47
47
|
/**
|