@skyux/autonumeric 5.0.1 → 5.5.0-beta.0
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/README.md +4 -67
- package/bundles/skyux-autonumeric.umd.js +27 -52
- package/documentation.json +112 -80
- package/esm2015/index.js +7 -0
- package/esm2015/index.js.map +1 -0
- package/esm2015/lib/modules/autonumeric/autonumeric-options-provider.js +24 -0
- package/esm2015/lib/modules/autonumeric/autonumeric-options-provider.js.map +1 -0
- package/esm2015/lib/modules/autonumeric/autonumeric-options.js +2 -0
- package/esm2015/lib/modules/autonumeric/autonumeric-options.js.map +1 -0
- package/esm2015/lib/modules/autonumeric/autonumeric.directive.js +171 -0
- package/esm2015/lib/modules/autonumeric/autonumeric.directive.js.map +1 -0
- package/esm2015/lib/modules/autonumeric/autonumeric.module.js +19 -0
- package/esm2015/lib/modules/autonumeric/autonumeric.module.js.map +1 -0
- package/esm2015/skyux-autonumeric.js +2 -2
- package/esm2015/skyux-autonumeric.js.map +1 -0
- package/fesm2015/skyux-autonumeric.js +24 -49
- package/fesm2015/skyux-autonumeric.js.map +1 -1
- package/index.d.ts +4 -0
- package/{modules → lib/modules}/autonumeric/autonumeric-options-provider.d.ts +0 -0
- package/{modules → lib/modules}/autonumeric/autonumeric-options.d.ts +0 -0
- package/{modules → lib/modules}/autonumeric/autonumeric.directive.d.ts +2 -3
- package/{modules → lib/modules}/autonumeric/autonumeric.module.d.ts +0 -0
- package/package.json +18 -4
- package/skyux-autonumeric.d.ts +1 -1
- package/LICENSE +0 -21
- package/bundles/skyux-autonumeric.umd.js.map +0 -1
- package/esm2015/modules/autonumeric/autonumeric-options-provider.js +0 -24
- package/esm2015/modules/autonumeric/autonumeric-options.js +0 -2
- package/esm2015/modules/autonumeric/autonumeric.directive.js +0 -181
- package/esm2015/modules/autonumeric/autonumeric.module.js +0 -33
- package/esm2015/public-api.js +0 -7
- package/public-api.d.ts +0 -4
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
/**
|
|
4
|
-
* Provides options to the underlying [autoNumeric utility](https://github.com/autoNumeric/autoNumeric).
|
|
5
|
-
* This can set global options on multiple input fields.
|
|
6
|
-
*/
|
|
7
|
-
export class SkyAutonumericOptionsProvider {
|
|
8
|
-
/**
|
|
9
|
-
* Specifies the value for a settings object to pass to the autoNumeric utility.
|
|
10
|
-
* This overrides any default options specified by the `skyAutonumeric` attribute.
|
|
11
|
-
*/
|
|
12
|
-
getConfig() {
|
|
13
|
-
return {};
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
SkyAutonumericOptionsProvider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: SkyAutonumericOptionsProvider, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
17
|
-
SkyAutonumericOptionsProvider.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: SkyAutonumericOptionsProvider, providedIn: 'root' });
|
|
18
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: SkyAutonumericOptionsProvider, decorators: [{
|
|
19
|
-
type: Injectable,
|
|
20
|
-
args: [{
|
|
21
|
-
providedIn: 'root'
|
|
22
|
-
}]
|
|
23
|
-
}] });
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b251bWVyaWMtb3B0aW9ucy1wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NreS1hdXRvbnVtZXJpYy9zcmMvbW9kdWxlcy9hdXRvbnVtZXJpYy9hdXRvbnVtZXJpYy1vcHRpb25zLXByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxVQUFVLEVBQ1gsTUFBTSxlQUFlLENBQUM7O0FBTXZCOzs7R0FHRztBQUlILE1BQU0sT0FBTyw2QkFBNkI7SUFFeEM7OztPQUdHO0lBQ0ksU0FBUztRQUNkLE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQzs7MkhBUlUsNkJBQTZCOytIQUE3Qiw2QkFBNkIsY0FGNUIsTUFBTTs0RkFFUCw2QkFBNkI7a0JBSHpDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSW5qZWN0YWJsZVxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgU2t5QXV0b251bWVyaWNPcHRpb25zXG59IGZyb20gJy4vYXV0b251bWVyaWMtb3B0aW9ucyc7XG5cbi8qKlxuICogUHJvdmlkZXMgb3B0aW9ucyB0byB0aGUgdW5kZXJseWluZyBbYXV0b051bWVyaWMgdXRpbGl0eV0oaHR0cHM6Ly9naXRodWIuY29tL2F1dG9OdW1lcmljL2F1dG9OdW1lcmljKS5cbiAqIFRoaXMgY2FuIHNldCBnbG9iYWwgb3B0aW9ucyBvbiBtdWx0aXBsZSBpbnB1dCBmaWVsZHMuXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFNreUF1dG9udW1lcmljT3B0aW9uc1Byb3ZpZGVyIHtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSB2YWx1ZSBmb3IgYSBzZXR0aW5ncyBvYmplY3QgdG8gcGFzcyB0byB0aGUgYXV0b051bWVyaWMgdXRpbGl0eS5cbiAgICogVGhpcyBvdmVycmlkZXMgYW55IGRlZmF1bHQgb3B0aW9ucyBzcGVjaWZpZWQgYnkgdGhlIGBza3lBdXRvbnVtZXJpY2AgYXR0cmlidXRlLlxuICAgKi9cbiAgcHVibGljIGdldENvbmZpZygpOiBTa3lBdXRvbnVtZXJpY09wdGlvbnMge1xuICAgIHJldHVybiB7fTtcbiAgfVxuXG59XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b251bWVyaWMtb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NreS1hdXRvbnVtZXJpYy9zcmMvbW9kdWxlcy9hdXRvbnVtZXJpYy9hdXRvbnVtZXJpYy1vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQXV0b051bWVyaWMgZnJvbSAnYXV0b251bWVyaWMnO1xuXG4vKipcbiAqIFNwZWNpZmllcyBjdXN0b20gb3B0aW9ucyB0byBwcm92aWRlIGRpcmVjdGx5IHRvIHRoZSB1bmRlcmx5aW5nIFthdXRvTnVtZXJpYyB1dGlsaXR5XShodHRwczovL2dpdGh1Yi5jb20vYXV0b051bWVyaWMvYXV0b051bWVyaWMpLlxuICogVGhlIHZhbHVlIGNhbiBiZSBzZXQgdG8gYHN0cmluZ2AsIHdoaWNoIGlzIGFuIGFsaWFzIHRoYXQgcmVwcmVzZW50c1xuICogYSBbc2V0IG9mIHByZWRlZmluZWQgc2V0IG9mIG9wdGlvbnNdKGh0dHBzOi8vZ2l0aHViLmNvbS9hdXRvTnVtZXJpYy9hdXRvTnVtZXJpYyNwcmVkZWZpbmVkLW9wdGlvbnMpXG4gKiBmb3IgYSBjdXJyZW5jeSBvciBsYW5ndWFnZSwgb3IgYE9wdGlvbnNgLCB3aGljaCBpcyBhXG4gKiBbY3VzdG9tIHNldCBvZiBvcHRpb25zXShodHRwczovL2dpdGh1Yi5jb20vYXV0b051bWVyaWMvYXV0b051bWVyaWMjb3B0aW9ucylcbiAqIHRoYXQgb3ZlcnJpZGUgYW55IGRlZmF1bHQgb3B0aW9ucyB0aGF0IHRoZSBgc2t5QXV0b251bWVyaWNgIGF0dHJpYnV0ZSBzcGVjaWZpZXMuXG4gKi9cbmV4cG9ydCB0eXBlIFNreUF1dG9udW1lcmljT3B0aW9ucyA9IHN0cmluZyB8IGtleW9mIEF1dG9OdW1lcmljLlByZWRlZmluZWRPcHRpb25zIHwgQXV0b051bWVyaWMuT3B0aW9ucztcbiJdfQ==
|
|
@@ -1,181 +0,0 @@
|
|
|
1
|
-
import { Directive, forwardRef, HostListener, Input } from '@angular/core';
|
|
2
|
-
import { fromEvent, Subject } from 'rxjs';
|
|
3
|
-
import { takeUntil } from 'rxjs/operators';
|
|
4
|
-
import { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
5
|
-
import AutoNumeric from 'autonumeric';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "./autonumeric-options-provider";
|
|
8
|
-
// tslint:disable:no-forward-ref no-use-before-declare
|
|
9
|
-
const SKY_AUTONUMERIC_VALUE_ACCESSOR = {
|
|
10
|
-
provide: NG_VALUE_ACCESSOR,
|
|
11
|
-
useExisting: forwardRef(() => SkyAutonumericDirective),
|
|
12
|
-
multi: true
|
|
13
|
-
};
|
|
14
|
-
const SKY_AUTONUMERIC_VALIDATOR = {
|
|
15
|
-
provide: NG_VALIDATORS,
|
|
16
|
-
useExisting: forwardRef(() => SkyAutonumericDirective),
|
|
17
|
-
multi: true
|
|
18
|
-
};
|
|
19
|
-
// tslint:enable
|
|
20
|
-
/**
|
|
21
|
-
* Wraps the [autoNumeric utility](https://github.com/autoNumeric/autoNumeric) to format
|
|
22
|
-
* any type of number, including currency.
|
|
23
|
-
*/
|
|
24
|
-
export class SkyAutonumericDirective {
|
|
25
|
-
constructor(elementRef, globalConfig, renderer, changeDetector) {
|
|
26
|
-
this.elementRef = elementRef;
|
|
27
|
-
this.globalConfig = globalConfig;
|
|
28
|
-
this.renderer = renderer;
|
|
29
|
-
this.changeDetector = changeDetector;
|
|
30
|
-
this.isFirstChange = true;
|
|
31
|
-
this.ngUnsubscribe = new Subject();
|
|
32
|
-
/* istanbul ignore next */
|
|
33
|
-
this.onChange = (_) => { };
|
|
34
|
-
/* istanbul ignore next */
|
|
35
|
-
this.onTouched = () => { };
|
|
36
|
-
this.createAutonumericInstance();
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* Assigns the name of a property from `SkyAutonumericOptionsProvider`.
|
|
40
|
-
*/
|
|
41
|
-
set skyAutonumeric(value) {
|
|
42
|
-
this.autonumericOptions = this.mergeOptions(value);
|
|
43
|
-
this.updateAutonumericInstance();
|
|
44
|
-
}
|
|
45
|
-
ngOnInit() {
|
|
46
|
-
// Ensure that we set the global config even if no local config has been given.
|
|
47
|
-
if (!this.autonumericOptions) {
|
|
48
|
-
this.autonumericOptions = this.globalConfig.getConfig();
|
|
49
|
-
}
|
|
50
|
-
this.updateAutonumericInstance();
|
|
51
|
-
fromEvent(this.elementRef.nativeElement, 'input')
|
|
52
|
-
.pipe(takeUntil(this.ngUnsubscribe))
|
|
53
|
-
.subscribe(() => {
|
|
54
|
-
const numericValue = this.getNumericValue();
|
|
55
|
-
/* istanbul ignore else */
|
|
56
|
-
if (this.value !== numericValue) {
|
|
57
|
-
this.value = numericValue;
|
|
58
|
-
this.onChange(numericValue);
|
|
59
|
-
}
|
|
60
|
-
/* istanbul ignore else */
|
|
61
|
-
if (this.control && !this.control.dirty) {
|
|
62
|
-
this.control.markAsDirty();
|
|
63
|
-
}
|
|
64
|
-
this.changeDetector.markForCheck();
|
|
65
|
-
});
|
|
66
|
-
}
|
|
67
|
-
ngOnDestroy() {
|
|
68
|
-
this.ngUnsubscribe.next();
|
|
69
|
-
this.ngUnsubscribe.complete();
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* Implemented as part of ControlValueAccessor.
|
|
73
|
-
*/
|
|
74
|
-
setDisabledState(value) {
|
|
75
|
-
this.renderer.setProperty(this.elementRef.nativeElement, 'disabled', value);
|
|
76
|
-
}
|
|
77
|
-
writeValue(value) {
|
|
78
|
-
if (this.value !== value) {
|
|
79
|
-
this.value = value;
|
|
80
|
-
this.onChange(value);
|
|
81
|
-
// Mark the control as "pristine" if it is initialized with a value.
|
|
82
|
-
const initializedWithValue = this.isFirstChange && this.control && this.value !== null;
|
|
83
|
-
if (initializedWithValue) {
|
|
84
|
-
this.isFirstChange = false;
|
|
85
|
-
this.control.markAsPristine();
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
const isNumber = typeof value === 'number' && value !== null && value !== undefined;
|
|
89
|
-
if (isNumber) {
|
|
90
|
-
this.autonumericInstance.set(value);
|
|
91
|
-
}
|
|
92
|
-
else {
|
|
93
|
-
this.autonumericInstance.clear();
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
validate(control) {
|
|
97
|
-
const noErrors = null; // tslint:disable-line: no-null-keyword
|
|
98
|
-
if (!this.control) {
|
|
99
|
-
this.control = control;
|
|
100
|
-
}
|
|
101
|
-
if (control.value === null || control.value === undefined) {
|
|
102
|
-
return noErrors;
|
|
103
|
-
}
|
|
104
|
-
if (typeof control.value !== 'number') {
|
|
105
|
-
return {
|
|
106
|
-
'notTypeOfNumber': { value: control.value }
|
|
107
|
-
};
|
|
108
|
-
}
|
|
109
|
-
return noErrors;
|
|
110
|
-
}
|
|
111
|
-
registerOnChange(fn) {
|
|
112
|
-
this.onChange = fn;
|
|
113
|
-
}
|
|
114
|
-
registerOnTouched(fn) {
|
|
115
|
-
this.onTouched = fn;
|
|
116
|
-
}
|
|
117
|
-
onBlur() {
|
|
118
|
-
this.onTouched();
|
|
119
|
-
}
|
|
120
|
-
getNumericValue() {
|
|
121
|
-
const inputValue = this.getInputValue();
|
|
122
|
-
const numericValue = (inputValue && !this.isInputValueTheCurrencySymbol(inputValue))
|
|
123
|
-
? this.autonumericInstance.getNumber()
|
|
124
|
-
: undefined;
|
|
125
|
-
return numericValue;
|
|
126
|
-
}
|
|
127
|
-
/**
|
|
128
|
-
* Due to AutoNumeric's hover logic - when AutoNumeric has a currency symbol the value
|
|
129
|
-
* that we get back on empty fields will be the currency symbol.
|
|
130
|
-
* The following logic ensures that we don't accidentally set
|
|
131
|
-
* a form value when the only input was the programatically-added currency symbol.
|
|
132
|
-
*/
|
|
133
|
-
isInputValueTheCurrencySymbol(inputValue) {
|
|
134
|
-
var _a, _b;
|
|
135
|
-
/* istanbul ignore next */
|
|
136
|
-
const currencySymbol = ((_b = (_a = this.autonumericOptions) === null || _a === void 0 ? void 0 : _a.currencySymbol) !== null && _b !== void 0 ? _b : '').trim();
|
|
137
|
-
return (currencySymbol && inputValue === currencySymbol);
|
|
138
|
-
}
|
|
139
|
-
getInputValue() {
|
|
140
|
-
return this.elementRef.nativeElement.value;
|
|
141
|
-
}
|
|
142
|
-
createAutonumericInstance() {
|
|
143
|
-
this.autonumericInstance = new AutoNumeric(this.elementRef.nativeElement);
|
|
144
|
-
}
|
|
145
|
-
updateAutonumericInstance() {
|
|
146
|
-
this.autonumericInstance.update(this.autonumericOptions);
|
|
147
|
-
}
|
|
148
|
-
mergeOptions(value) {
|
|
149
|
-
const globalOptions = this.globalConfig.getConfig();
|
|
150
|
-
let newOptions = {};
|
|
151
|
-
if (typeof value === 'string') {
|
|
152
|
-
const predefinedOptions = AutoNumeric.getPredefinedOptions();
|
|
153
|
-
newOptions = predefinedOptions[value];
|
|
154
|
-
}
|
|
155
|
-
else {
|
|
156
|
-
newOptions = value;
|
|
157
|
-
}
|
|
158
|
-
return Object.assign({}, globalOptions, newOptions);
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
SkyAutonumericDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: SkyAutonumericDirective, deps: [{ token: i0.ElementRef }, { token: i1.SkyAutonumericOptionsProvider }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
162
|
-
SkyAutonumericDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.12", type: SkyAutonumericDirective, selector: "input[skyAutonumeric]", inputs: { skyAutonumeric: "skyAutonumeric" }, host: { listeners: { "blur": "onBlur()" } }, providers: [
|
|
163
|
-
SKY_AUTONUMERIC_VALUE_ACCESSOR,
|
|
164
|
-
SKY_AUTONUMERIC_VALIDATOR
|
|
165
|
-
], ngImport: i0 });
|
|
166
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: SkyAutonumericDirective, decorators: [{
|
|
167
|
-
type: Directive,
|
|
168
|
-
args: [{
|
|
169
|
-
selector: 'input[skyAutonumeric]',
|
|
170
|
-
providers: [
|
|
171
|
-
SKY_AUTONUMERIC_VALUE_ACCESSOR,
|
|
172
|
-
SKY_AUTONUMERIC_VALIDATOR
|
|
173
|
-
]
|
|
174
|
-
}]
|
|
175
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.SkyAutonumericOptionsProvider }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { skyAutonumeric: [{
|
|
176
|
-
type: Input
|
|
177
|
-
}], onBlur: [{
|
|
178
|
-
type: HostListener,
|
|
179
|
-
args: ['blur']
|
|
180
|
-
}] } });
|
|
181
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b251bWVyaWMuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2t5LWF1dG9udW1lcmljL3NyYy9tb2R1bGVzL2F1dG9udW1lcmljL2F1dG9udW1lcmljLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUVULFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUlOLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFDTCxTQUFTLEVBQ1QsT0FBTyxFQUNSLE1BQU0sTUFBTSxDQUFDO0FBRWQsT0FBTyxFQUNMLFNBQVMsRUFDVixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFHTCxhQUFhLEVBQ2IsaUJBQWlCLEVBR2xCLE1BQU0sZ0JBQWdCLENBQUM7QUFVeEIsT0FBTyxXQUFXLE1BQU0sYUFBYSxDQUFDOzs7QUFFdEMsc0RBQXNEO0FBQ3RELE1BQU0sOEJBQThCLEdBQUc7SUFDckMsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHVCQUF1QixDQUFDO0lBQ3RELEtBQUssRUFBRSxJQUFJO0NBQ1osQ0FBQztBQUVGLE1BQU0seUJBQXlCLEdBQUc7SUFDaEMsT0FBTyxFQUFFLGFBQWE7SUFDdEIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztJQUN0RCxLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUM7QUFDRixnQkFBZ0I7QUFFZDs7O0dBR0c7QUFRTCxNQUFNLE9BQU8sdUJBQXVCO0lBbUJsQyxZQUNVLFVBQXNCLEVBQ3RCLFlBQTJDLEVBQzNDLFFBQW1CLEVBQ25CLGNBQWlDO1FBSGpDLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsaUJBQVksR0FBWixZQUFZLENBQStCO1FBQzNDLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsbUJB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LHlCQUF5QjtLQUMxQjs0RkFFVSx1QkFBdUI7a0JBUGpDLFNBQVM7bUJBQUM7b0JBQ1gsUUFBUSxFQUFFLHVCQUF1QjtvQkFDakMsU0FBUyxFQUFFO3dCQUNULDhCQUE4Qjt3QkFDOUIseUJBQXlCO3FCQUMxQjtpQkFDRjtxTUFPWSxjQUFjO3NCQUR4QixLQUFLO2dCQWlIQyxNQUFNO3NCQURaLFlBQVk7dUJBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIGZvcndhcmRSZWYsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBSZW5kZXJlcjJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7XG4gIGZyb21FdmVudCxcbiAgU3ViamVjdFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtcbiAgdGFrZVVudGlsXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtcbiAgQWJzdHJhY3RDb250cm9sLFxuICBDb250cm9sVmFsdWVBY2Nlc3NvcixcbiAgTkdfVkFMSURBVE9SUyxcbiAgTkdfVkFMVUVfQUNDRVNTT1IsXG4gIFZhbGlkYXRpb25FcnJvcnMsXG4gIFZhbGlkYXRvclxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7XG4gIFNreUF1dG9udW1lcmljT3B0aW9uc1xufSBmcm9tICcuL2F1dG9udW1lcmljLW9wdGlvbnMnO1xuXG5pbXBvcnQge1xuICBTa3lBdXRvbnVtZXJpY09wdGlvbnNQcm92aWRlclxufSBmcm9tICcuL2F1dG9udW1lcmljLW9wdGlvbnMtcHJvdmlkZXInO1xuXG5pbXBvcnQgQXV0b051bWVyaWMgZnJvbSAnYXV0b251bWVyaWMnO1xuXG4vLyB0c2xpbnQ6ZGlzYWJsZTpuby1mb3J3YXJkLXJlZiBuby11c2UtYmVmb3JlLWRlY2xhcmVcbmNvbnN0IFNLWV9BVVRPTlVNRVJJQ19WQUxVRV9BQ0NFU1NPUiA9IHtcbiAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNreUF1dG9udW1lcmljRGlyZWN0aXZlKSxcbiAgbXVsdGk6IHRydWVcbn07XG5cbmNvbnN0IFNLWV9BVVRPTlVNRVJJQ19WQUxJREFUT1IgPSB7XG4gIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXG4gIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNreUF1dG9udW1lcmljRGlyZWN0aXZlKSxcbiAgbXVsdGk6IHRydWVcbn07XG4vLyB0c2xpbnQ6ZW5hYmxlXG5cbiAgLyoqXG4gICAqIFdyYXBzIHRoZSBbYXV0b051bWVyaWMgdXRpbGl0eV0oaHR0cHM6Ly9naXRodWIuY29tL2F1dG9OdW1lcmljL2F1dG9OdW1lcmljKSB0byBmb3JtYXRcbiAgICogYW55IHR5cGUgb2YgbnVtYmVyLCBpbmNsdWRpbmcgY3VycmVuY3kuXG4gICAqL1xuICBARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdpbnB1dFtza3lBdXRvbnVtZXJpY10nLFxuICBwcm92aWRlcnM6IFtcbiAgICBTS1lfQVVUT05VTUVSSUNfVkFMVUVfQUNDRVNTT1IsXG4gICAgU0tZX0FVVE9OVU1FUklDX1ZBTElEQVRPUlxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFNreUF1dG9udW1lcmljRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBWYWxpZGF0b3Ige1xuXG4gIC8qKlxuICAgKiBBc3NpZ25zIHRoZSBuYW1lIG9mIGEgcHJvcGVydHkgZnJvbSBgU2t5QXV0b251bWVyaWNPcHRpb25zUHJvdmlkZXJgLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBza3lBdXRvbnVtZXJpYyh2YWx1ZTogU2t5QXV0b251bWVyaWNPcHRpb25zKSB7XG4gICAgdGhpcy5hdXRvbnVtZXJpY09wdGlvbnMgPSB0aGlzLm1lcmdlT3B0aW9ucyh2YWx1ZSk7XG4gICAgdGhpcy51cGRhdGVBdXRvbnVtZXJpY0luc3RhbmNlKCk7XG4gIH1cblxuICBwcml2YXRlIGF1dG9udW1lcmljSW5zdGFuY2U6IEF1dG9OdW1lcmljO1xuICBwcml2YXRlIGF1dG9udW1lcmljT3B0aW9uczogU2t5QXV0b251bWVyaWNPcHRpb25zO1xuICBwcml2YXRlIGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbDtcbiAgcHJpdmF0ZSBpc0ZpcnN0Q2hhbmdlID0gdHJ1ZTtcbiAgcHJpdmF0ZSB2YWx1ZTogbnVtYmVyO1xuXG4gIHByaXZhdGUgbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgZ2xvYmFsQ29uZmlnOiBTa3lBdXRvbnVtZXJpY09wdGlvbnNQcm92aWRlcixcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7XG4gICAgdGhpcy5jcmVhdGVBdXRvbnVtZXJpY0luc3RhbmNlKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgLy8gRW5zdXJlIHRoYXQgd2Ugc2V0IHRoZSBnbG9iYWwgY29uZmlnIGV2ZW4gaWYgbm8gbG9jYWwgY29uZmlnIGhhcyBiZWVuIGdpdmVuLlxuICAgIGlmICghdGhpcy5hdXRvbnVtZXJpY09wdGlvbnMpIHtcbiAgICAgIHRoaXMuYXV0b251bWVyaWNPcHRpb25zID0gdGhpcy5nbG9iYWxDb25maWcuZ2V0Q29uZmlnKCk7XG4gICAgfVxuICAgIHRoaXMudXBkYXRlQXV0b251bWVyaWNJbnN0YW5jZSgpO1xuXG4gICAgZnJvbUV2ZW50KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnaW5wdXQnKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgY29uc3QgbnVtZXJpY1ZhbHVlOiBudW1iZXIgfCB1bmRlZmluZWQgPSB0aGlzLmdldE51bWVyaWNWYWx1ZSgpO1xuXG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAgIGlmICh0aGlzLnZhbHVlICE9PSBudW1lcmljVmFsdWUpIHtcbiAgICAgICAgICB0aGlzLnZhbHVlID0gbnVtZXJpY1ZhbHVlO1xuICAgICAgICAgIHRoaXMub25DaGFuZ2UobnVtZXJpY1ZhbHVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAgIGlmICh0aGlzLmNvbnRyb2wgJiYgIXRoaXMuY29udHJvbC5kaXJ0eSkge1xuICAgICAgICAgIHRoaXMuY29udHJvbC5tYXJrQXNEaXJ0eSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMubmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gIH1cblxuICAvKipcbiAgICogSW1wbGVtZW50ZWQgYXMgcGFydCBvZiBDb250cm9sVmFsdWVBY2Nlc3Nvci5cbiAgICovXG4gIHB1YmxpYyBzZXREaXNhYmxlZFN0YXRlKHZhbHVlOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2Rpc2FibGVkJywgdmFsdWUpO1xuICB9XG5cbiAgcHVibGljIHdyaXRlVmFsdWUodmFsdWU6IG51bWJlcik6IHZvaWQge1xuXG4gICAgaWYgKHRoaXMudmFsdWUgIT09IHZhbHVlKSB7XG4gICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcblxuICAgICAgLy8gTWFyayB0aGUgY29udHJvbCBhcyBcInByaXN0aW5lXCIgaWYgaXQgaXMgaW5pdGlhbGl6ZWQgd2l0aCBhIHZhbHVlLlxuICAgICAgY29uc3QgaW5pdGlhbGl6ZWRXaXRoVmFsdWUgPSB0aGlzLmlzRmlyc3RDaGFuZ2UgJiYgdGhpcy5jb250cm9sICYmIHRoaXMudmFsdWUgIT09IG51bGw7XG4gICAgICBpZiAoaW5pdGlhbGl6ZWRXaXRoVmFsdWUpIHtcbiAgICAgICAgdGhpcy5pc0ZpcnN0Q2hhbmdlID0gZmFsc2U7XG4gICAgICAgIHRoaXMuY29udHJvbC5tYXJrQXNQcmlzdGluZSgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IGlzTnVtYmVyID0gdHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJyAmJiB2YWx1ZSAhPT0gbnVsbCAmJiB2YWx1ZSAhPT0gdW5kZWZpbmVkO1xuICAgIGlmIChpc051bWJlcikge1xuICAgICAgdGhpcy5hdXRvbnVtZXJpY0luc3RhbmNlLnNldCh2YWx1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuYXV0b251bWVyaWNJbnN0YW5jZS5jbGVhcigpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyB2YWxpZGF0ZShjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCB7XG4gICAgY29uc3Qgbm9FcnJvcnM6IG51bGwgPSBudWxsOyAvLyB0c2xpbnQ6ZGlzYWJsZS1saW5lOiBuby1udWxsLWtleXdvcmRcblxuICAgIGlmICghdGhpcy5jb250cm9sKSB7XG4gICAgICB0aGlzLmNvbnRyb2wgPSBjb250cm9sO1xuICAgIH1cblxuICAgIGlmIChjb250cm9sLnZhbHVlID09PSBudWxsIHx8IGNvbnRyb2wudmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIG5vRXJyb3JzO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgY29udHJvbC52YWx1ZSAhPT0gJ251bWJlcicpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICdub3RUeXBlT2ZOdW1iZXInOiB7IHZhbHVlOiBjb250cm9sLnZhbHVlIH1cbiAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIG5vRXJyb3JzO1xuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2YWx1ZTogbnVtYmVyKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2JsdXInKVxuICBwdWJsaWMgb25CbHVyKCk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gIH1cblxuICBwcml2YXRlIGdldE51bWVyaWNWYWx1ZSgpOiBudW1iZXIgfCB1bmRlZmluZWQge1xuICAgIGNvbnN0IGlucHV0VmFsdWUgPSB0aGlzLmdldElucHV0VmFsdWUoKTtcbiAgICBjb25zdCBudW1lcmljVmFsdWUgPSAoaW5wdXRWYWx1ZSAmJiAhdGhpcy5pc0lucHV0VmFsdWVUaGVDdXJyZW5jeVN5bWJvbChpbnB1dFZhbHVlKSlcbiAgICAgID8gdGhpcy5hdXRvbnVtZXJpY0luc3RhbmNlLmdldE51bWJlcigpXG4gICAgICA6IHVuZGVmaW5lZDtcblxuICAgIHJldHVybiBudW1lcmljVmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogRHVlIHRvIEF1dG9OdW1lcmljJ3MgaG92ZXIgbG9naWMgLSB3aGVuIEF1dG9OdW1lcmljIGhhcyBhIGN1cnJlbmN5IHN5bWJvbCB0aGUgdmFsdWVcbiAgICogdGhhdCB3ZSBnZXQgYmFjayBvbiBlbXB0eSBmaWVsZHMgd2lsbCBiZSB0aGUgY3VycmVuY3kgc3ltYm9sLlxuICAgKiBUaGUgZm9sbG93aW5nIGxvZ2ljIGVuc3VyZXMgdGhhdCB3ZSBkb24ndCBhY2NpZGVudGFsbHkgc2V0XG4gICAqIGEgZm9ybSB2YWx1ZSB3aGVuIHRoZSBvbmx5IGlucHV0IHdhcyB0aGUgcHJvZ3JhbWF0aWNhbGx5LWFkZGVkIGN1cnJlbmN5IHN5bWJvbC5cbiAgICovXG4gIHByaXZhdGUgaXNJbnB1dFZhbHVlVGhlQ3VycmVuY3lTeW1ib2woaW5wdXRWYWx1ZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICBjb25zdCBjdXJyZW5jeVN5bWJvbCA9ICgodGhpcy5hdXRvbnVtZXJpY09wdGlvbnMgYXMgQXV0b051bWVyaWMuT3B0aW9ucyk/LmN1cnJlbmN5U3ltYm9sID8/ICcnKS50cmltKCk7XG4gICAgcmV0dXJuIChjdXJyZW5jeVN5bWJvbCAmJiBpbnB1dFZhbHVlID09PSBjdXJyZW5jeVN5bWJvbCk7XG4gIH1cblxuICBwcml2YXRlIGdldElucHV0VmFsdWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQudmFsdWU7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUF1dG9udW1lcmljSW5zdGFuY2UoKTogdm9pZCB7XG4gICAgdGhpcy5hdXRvbnVtZXJpY0luc3RhbmNlID0gbmV3IEF1dG9OdW1lcmljKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlQXV0b251bWVyaWNJbnN0YW5jZSgpOiB2b2lkIHtcbiAgICB0aGlzLmF1dG9udW1lcmljSW5zdGFuY2UudXBkYXRlKHRoaXMuYXV0b251bWVyaWNPcHRpb25zIGFzIEF1dG9OdW1lcmljLk9wdGlvbnMpO1xuICB9XG5cbiAgcHJpdmF0ZSBtZXJnZU9wdGlvbnModmFsdWU6IFNreUF1dG9udW1lcmljT3B0aW9ucyk6IFNreUF1dG9udW1lcmljT3B0aW9ucyB7XG4gICAgY29uc3QgZ2xvYmFsT3B0aW9ucyA9IHRoaXMuZ2xvYmFsQ29uZmlnLmdldENvbmZpZygpO1xuXG4gICAgbGV0IG5ld09wdGlvbnM6IFNreUF1dG9udW1lcmljT3B0aW9ucyA9IHt9O1xuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICBjb25zdCBwcmVkZWZpbmVkT3B0aW9ucyA9IEF1dG9OdW1lcmljLmdldFByZWRlZmluZWRPcHRpb25zKCk7XG4gICAgICBuZXdPcHRpb25zID0gcHJlZGVmaW5lZE9wdGlvbnNbdmFsdWUgYXMga2V5b2YgQXV0b051bWVyaWMuT3B0aW9uc10gYXMgQXV0b051bWVyaWMuT3B0aW9ucztcbiAgICB9IGVsc2Uge1xuICAgICAgbmV3T3B0aW9ucyA9IHZhbHVlO1xuICAgIH1cblxuICAgIHJldHVybiBPYmplY3QuYXNzaWduKFxuICAgICAge30sXG4gICAgICBnbG9iYWxPcHRpb25zLFxuICAgICAgbmV3T3B0aW9uc1xuICAgICk7XG4gIH1cblxuICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICBwcml2YXRlIG9uQ2hhbmdlID0gKF86IG51bWJlcikgPT4geyB9O1xuICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICBwcml2YXRlIG9uVG91Y2hlZCA9ICgpID0+IHsgfTtcbn1cbiJdfQ==
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { NgModule } from '@angular/core';
|
|
3
|
-
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
4
|
-
import { SkyAutonumericDirective } from './autonumeric.directive';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class SkyAutonumericModule {
|
|
7
|
-
}
|
|
8
|
-
SkyAutonumericModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: SkyAutonumericModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
9
|
-
SkyAutonumericModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: SkyAutonumericModule, declarations: [SkyAutonumericDirective], imports: [CommonModule,
|
|
10
|
-
FormsModule,
|
|
11
|
-
ReactiveFormsModule], exports: [SkyAutonumericDirective] });
|
|
12
|
-
SkyAutonumericModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: SkyAutonumericModule, imports: [[
|
|
13
|
-
CommonModule,
|
|
14
|
-
FormsModule,
|
|
15
|
-
ReactiveFormsModule
|
|
16
|
-
]] });
|
|
17
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: SkyAutonumericModule, decorators: [{
|
|
18
|
-
type: NgModule,
|
|
19
|
-
args: [{
|
|
20
|
-
declarations: [
|
|
21
|
-
SkyAutonumericDirective
|
|
22
|
-
],
|
|
23
|
-
imports: [
|
|
24
|
-
CommonModule,
|
|
25
|
-
FormsModule,
|
|
26
|
-
ReactiveFormsModule
|
|
27
|
-
],
|
|
28
|
-
exports: [
|
|
29
|
-
SkyAutonumericDirective
|
|
30
|
-
]
|
|
31
|
-
}]
|
|
32
|
-
}] });
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b251bWVyaWMubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2t5LWF1dG9udW1lcmljL3NyYy9tb2R1bGVzL2F1dG9udW1lcmljL2F1dG9udW1lcmljLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsWUFBWSxFQUNiLE1BQU0saUJBQWlCLENBQUM7QUFFekIsT0FBTyxFQUNMLFFBQVEsRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQ0wsV0FBVyxFQUNYLG1CQUFtQixFQUNwQixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFDTCx1QkFBdUIsRUFDeEIsTUFBTSx5QkFBeUIsQ0FBQzs7QUFlakMsTUFBTSxPQUFPLG9CQUFvQjs7a0hBQXBCLG9CQUFvQjttSEFBcEIsb0JBQW9CLGlCQVg3Qix1QkFBdUIsYUFHdkIsWUFBWTtRQUNaLFdBQVc7UUFDWCxtQkFBbUIsYUFHbkIsdUJBQXVCO21IQUdkLG9CQUFvQixZQVR0QjtZQUNQLFlBQVk7WUFDWixXQUFXO1lBQ1gsbUJBQW1CO1NBQ3BCOzRGQUtVLG9CQUFvQjtrQkFiaEMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osdUJBQXVCO3FCQUN4QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLG1CQUFtQjtxQkFDcEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLHVCQUF1QjtxQkFDeEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21tb25Nb2R1bGVcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHtcbiAgTmdNb2R1bGVcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7XG4gIEZvcm1zTW9kdWxlLFxuICBSZWFjdGl2ZUZvcm1zTW9kdWxlXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHtcbiAgU2t5QXV0b251bWVyaWNEaXJlY3RpdmVcbn0gZnJvbSAnLi9hdXRvbnVtZXJpYy5kaXJlY3RpdmUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBTa3lBdXRvbnVtZXJpY0RpcmVjdGl2ZVxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFNreUF1dG9udW1lcmljRGlyZWN0aXZlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgU2t5QXV0b251bWVyaWNNb2R1bGUgeyB9XG4iXX0=
|
package/esm2015/public-api.js
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
export * from './modules/autonumeric/autonumeric-options-provider';
|
|
2
|
-
export * from './modules/autonumeric/autonumeric-options';
|
|
3
|
-
export * from './modules/autonumeric/autonumeric.module';
|
|
4
|
-
// Components and directives must be exported to support Angular's "partial" Ivy compiler.
|
|
5
|
-
// Obscure names are used to indicate types are not part of the public API.
|
|
6
|
-
export { SkyAutonumericDirective as λ1 } from './modules/autonumeric/autonumeric.directive';
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3NreS1hdXRvbnVtZXJpYy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYywwQ0FBMEMsQ0FBQztBQUV6RCwwRkFBMEY7QUFDMUYsMkVBQTJFO0FBQzNFLE9BQU8sRUFBRSx1QkFBdUIsSUFBSSxFQUFFLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbW9kdWxlcy9hdXRvbnVtZXJpYy9hdXRvbnVtZXJpYy1vcHRpb25zLXByb3ZpZGVyJztcbmV4cG9ydCAqIGZyb20gJy4vbW9kdWxlcy9hdXRvbnVtZXJpYy9hdXRvbnVtZXJpYy1vcHRpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vbW9kdWxlcy9hdXRvbnVtZXJpYy9hdXRvbnVtZXJpYy5tb2R1bGUnO1xuXG4vLyBDb21wb25lbnRzIGFuZCBkaXJlY3RpdmVzIG11c3QgYmUgZXhwb3J0ZWQgdG8gc3VwcG9ydCBBbmd1bGFyJ3MgXCJwYXJ0aWFsXCIgSXZ5IGNvbXBpbGVyLlxuLy8gT2JzY3VyZSBuYW1lcyBhcmUgdXNlZCB0byBpbmRpY2F0ZSB0eXBlcyBhcmUgbm90IHBhcnQgb2YgdGhlIHB1YmxpYyBBUEkuXG5leHBvcnQgeyBTa3lBdXRvbnVtZXJpY0RpcmVjdGl2ZSBhcyDOuzEgfSBmcm9tICcuL21vZHVsZXMvYXV0b251bWVyaWMvYXV0b251bWVyaWMuZGlyZWN0aXZlJztcbiJdfQ==
|
package/public-api.d.ts
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export * from './modules/autonumeric/autonumeric-options-provider';
|
|
2
|
-
export * from './modules/autonumeric/autonumeric-options';
|
|
3
|
-
export * from './modules/autonumeric/autonumeric.module';
|
|
4
|
-
export { SkyAutonumericDirective as λ1 } from './modules/autonumeric/autonumeric.directive';
|