@dealpos-npm/ng-dealpos-library 0.0.1
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 +24 -0
- package/components/info-page-input/index.d.ts +5 -0
- package/components/info-page-input/public-api.d.ts +1 -0
- package/components/info-page-input/src/info-page-input.component.d.ts +12 -0
- package/components/modal-changelog/index.d.ts +5 -0
- package/components/modal-changelog/public-api.d.ts +1 -0
- package/components/modal-changelog/src/modal-changelog.component.d.ts +20 -0
- package/components/radio-options/index.d.ts +5 -0
- package/components/radio-options/public-api.d.ts +1 -0
- package/components/radio-options/src/radio-options.component.d.ts +16 -0
- package/components/tinymce-editor/index.d.ts +5 -0
- package/components/tinymce-editor/public-api.d.ts +1 -0
- package/components/tinymce-editor/src/tinymce-editor.component.d.ts +12 -0
- package/constants/index.d.ts +5 -0
- package/constants/public-api.d.ts +1 -0
- package/constants/src/Constants.d.ts +134 -0
- package/directives/autonumeric/index.d.ts +5 -0
- package/directives/autonumeric/public-api.d.ts +1 -0
- package/directives/autonumeric/src/autonumeric.directive.d.ts +30 -0
- package/esm2020/components/info-page-input/dealpos-npm-ng-dealpos-library-components-info-page-input.mjs +5 -0
- package/esm2020/components/info-page-input/public-api.mjs +2 -0
- package/esm2020/components/info-page-input/src/info-page-input.component.mjs +36 -0
- package/esm2020/components/modal-changelog/dealpos-npm-ng-dealpos-library-components-modal-changelog.mjs +5 -0
- package/esm2020/components/modal-changelog/public-api.mjs +2 -0
- package/esm2020/components/modal-changelog/src/modal-changelog.component.mjs +26 -0
- package/esm2020/components/radio-options/dealpos-npm-ng-dealpos-library-components-radio-options.mjs +5 -0
- package/esm2020/components/radio-options/public-api.mjs +2 -0
- package/esm2020/components/radio-options/src/radio-options.component.mjs +60 -0
- package/esm2020/components/tinymce-editor/dealpos-npm-ng-dealpos-library-components-tinymce-editor.mjs +5 -0
- package/esm2020/components/tinymce-editor/public-api.mjs +2 -0
- package/esm2020/components/tinymce-editor/src/tinymce-editor.component.mjs +35 -0
- package/esm2020/constants/dealpos-npm-ng-dealpos-library-constants.mjs +5 -0
- package/esm2020/constants/public-api.mjs +2 -0
- package/esm2020/constants/src/Constants.mjs +326 -0
- package/esm2020/dealpos-npm-ng-dealpos-library.mjs +5 -0
- package/esm2020/directives/autonumeric/dealpos-npm-ng-dealpos-library-directives-autonumeric.mjs +5 -0
- package/esm2020/directives/autonumeric/public-api.mjs +2 -0
- package/esm2020/directives/autonumeric/src/autonumeric.directive.mjs +129 -0
- package/esm2020/lib/dealpos.component.mjs +19 -0
- package/esm2020/lib/dealpos.module.mjs +21 -0
- package/esm2020/lib/dealpos.service.mjs +14 -0
- package/esm2020/pipes/duration/dealpos-npm-ng-dealpos-library-pipes-duration.mjs +5 -0
- package/esm2020/pipes/duration/public-api.mjs +3 -0
- package/esm2020/pipes/duration/src/duration-days-hour.pipe.mjs +40 -0
- package/esm2020/pipes/duration/src/duration-time.pipe.mjs +24 -0
- package/esm2020/pipes/filter/dealpos-npm-ng-dealpos-library-pipes-filter.mjs +5 -0
- package/esm2020/pipes/filter/public-api.mjs +2 -0
- package/esm2020/pipes/filter/src/filter-by-name.pipe.mjs +20 -0
- package/esm2020/pipes/newlines/dealpos-npm-ng-dealpos-library-pipes-newlines.mjs +5 -0
- package/esm2020/pipes/newlines/public-api.mjs +2 -0
- package/esm2020/pipes/newlines/src/newlines.pipe.mjs +23 -0
- package/esm2020/public-api.mjs +7 -0
- package/esm2020/services/http/dealpos-npm-ng-dealpos-library-services-http.mjs +5 -0
- package/esm2020/services/http/public-api.mjs +2 -0
- package/esm2020/services/http/src/http.service.mjs +346 -0
- package/fesm2015/dealpos-npm-ng-dealpos-library-components-info-page-input.mjs +43 -0
- package/fesm2015/dealpos-npm-ng-dealpos-library-components-info-page-input.mjs.map +1 -0
- package/fesm2015/dealpos-npm-ng-dealpos-library-components-modal-changelog.mjs +35 -0
- package/fesm2015/dealpos-npm-ng-dealpos-library-components-modal-changelog.mjs.map +1 -0
- package/fesm2015/dealpos-npm-ng-dealpos-library-components-radio-options.mjs +67 -0
- package/fesm2015/dealpos-npm-ng-dealpos-library-components-radio-options.mjs.map +1 -0
- package/fesm2015/dealpos-npm-ng-dealpos-library-components-tinymce-editor.mjs +42 -0
- package/fesm2015/dealpos-npm-ng-dealpos-library-components-tinymce-editor.mjs.map +1 -0
- package/fesm2015/dealpos-npm-ng-dealpos-library-constants.mjs +332 -0
- package/fesm2015/dealpos-npm-ng-dealpos-library-constants.mjs.map +1 -0
- package/fesm2015/dealpos-npm-ng-dealpos-library-directives-autonumeric.mjs +136 -0
- package/fesm2015/dealpos-npm-ng-dealpos-library-directives-autonumeric.mjs.map +1 -0
- package/fesm2015/dealpos-npm-ng-dealpos-library-pipes-duration.mjs +69 -0
- package/fesm2015/dealpos-npm-ng-dealpos-library-pipes-duration.mjs.map +1 -0
- package/fesm2015/dealpos-npm-ng-dealpos-library-pipes-filter.mjs +27 -0
- package/fesm2015/dealpos-npm-ng-dealpos-library-pipes-filter.mjs.map +1 -0
- package/fesm2015/dealpos-npm-ng-dealpos-library-pipes-newlines.mjs +30 -0
- package/fesm2015/dealpos-npm-ng-dealpos-library-pipes-newlines.mjs.map +1 -0
- package/fesm2015/dealpos-npm-ng-dealpos-library-services-http.mjs +353 -0
- package/fesm2015/dealpos-npm-ng-dealpos-library-services-http.mjs.map +1 -0
- package/fesm2015/dealpos-npm-ng-dealpos-library.mjs +60 -0
- package/fesm2015/dealpos-npm-ng-dealpos-library.mjs.map +1 -0
- package/fesm2020/dealpos-npm-ng-dealpos-library-components-info-page-input.mjs +43 -0
- package/fesm2020/dealpos-npm-ng-dealpos-library-components-info-page-input.mjs.map +1 -0
- package/fesm2020/dealpos-npm-ng-dealpos-library-components-modal-changelog.mjs +33 -0
- package/fesm2020/dealpos-npm-ng-dealpos-library-components-modal-changelog.mjs.map +1 -0
- package/fesm2020/dealpos-npm-ng-dealpos-library-components-radio-options.mjs +67 -0
- package/fesm2020/dealpos-npm-ng-dealpos-library-components-radio-options.mjs.map +1 -0
- package/fesm2020/dealpos-npm-ng-dealpos-library-components-tinymce-editor.mjs +42 -0
- package/fesm2020/dealpos-npm-ng-dealpos-library-components-tinymce-editor.mjs.map +1 -0
- package/fesm2020/dealpos-npm-ng-dealpos-library-constants.mjs +332 -0
- package/fesm2020/dealpos-npm-ng-dealpos-library-constants.mjs.map +1 -0
- package/fesm2020/dealpos-npm-ng-dealpos-library-directives-autonumeric.mjs +136 -0
- package/fesm2020/dealpos-npm-ng-dealpos-library-directives-autonumeric.mjs.map +1 -0
- package/fesm2020/dealpos-npm-ng-dealpos-library-pipes-duration.mjs +69 -0
- package/fesm2020/dealpos-npm-ng-dealpos-library-pipes-duration.mjs.map +1 -0
- package/fesm2020/dealpos-npm-ng-dealpos-library-pipes-filter.mjs +27 -0
- package/fesm2020/dealpos-npm-ng-dealpos-library-pipes-filter.mjs.map +1 -0
- package/fesm2020/dealpos-npm-ng-dealpos-library-pipes-newlines.mjs +30 -0
- package/fesm2020/dealpos-npm-ng-dealpos-library-pipes-newlines.mjs.map +1 -0
- package/fesm2020/dealpos-npm-ng-dealpos-library-services-http.mjs +353 -0
- package/fesm2020/dealpos-npm-ng-dealpos-library-services-http.mjs.map +1 -0
- package/fesm2020/dealpos-npm-ng-dealpos-library.mjs +60 -0
- package/fesm2020/dealpos-npm-ng-dealpos-library.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/dealpos.component.d.ts +5 -0
- package/lib/dealpos.module.d.ts +7 -0
- package/lib/dealpos.service.d.ts +6 -0
- package/package.json +116 -0
- package/pipes/duration/index.d.ts +5 -0
- package/pipes/duration/public-api.d.ts +2 -0
- package/pipes/duration/src/duration-days-hour.pipe.d.ts +7 -0
- package/pipes/duration/src/duration-time.pipe.d.ts +7 -0
- package/pipes/filter/index.d.ts +5 -0
- package/pipes/filter/public-api.d.ts +1 -0
- package/pipes/filter/src/filter-by-name.pipe.d.ts +7 -0
- package/pipes/newlines/index.d.ts +5 -0
- package/pipes/newlines/public-api.d.ts +1 -0
- package/pipes/newlines/src/newlines.pipe.d.ts +7 -0
- package/public-api.d.ts +3 -0
- package/services/http/index.d.ts +5 -0
- package/services/http/public-api.d.ts +1 -0
- package/services/http/src/http.service.d.ts +55 -0
|
@@ -0,0 +1,326 @@
|
|
|
1
|
+
export class Constants {
|
|
2
|
+
static StringFormat(msg, ...args) {
|
|
3
|
+
for (let _i = 0; _i < args.length; _i++) {
|
|
4
|
+
msg = msg.replace(`{${_i}}`, args[_i]);
|
|
5
|
+
}
|
|
6
|
+
return msg;
|
|
7
|
+
}
|
|
8
|
+
static IsNotEmpty(value) {
|
|
9
|
+
if (value != "" &&
|
|
10
|
+
!Constants.containsOnlySpaces(value) &&
|
|
11
|
+
value != Constants.GuidEmpty &&
|
|
12
|
+
value != undefined &&
|
|
13
|
+
value != null) {
|
|
14
|
+
return true;
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
return false;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
static IsEmpty(value) {
|
|
21
|
+
if (value == "" ||
|
|
22
|
+
Constants.containsOnlySpaces(value) ||
|
|
23
|
+
value == undefined ||
|
|
24
|
+
value == null ||
|
|
25
|
+
value == Constants.GuidEmpty) {
|
|
26
|
+
return true;
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
return false;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
// check whether string only contains blank space
|
|
33
|
+
static containsOnlySpaces(str) {
|
|
34
|
+
return /^\s*$/.test(str);
|
|
35
|
+
}
|
|
36
|
+
static FilterByID(array, id) {
|
|
37
|
+
try {
|
|
38
|
+
const list = array.filter((x) => x.ID == id);
|
|
39
|
+
if (list.length > 0) {
|
|
40
|
+
return list[0];
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
catch (ex) { }
|
|
44
|
+
return null;
|
|
45
|
+
}
|
|
46
|
+
static GenerateYears(currYear, length, IsPrevious) {
|
|
47
|
+
let multiplier = -1;
|
|
48
|
+
if (length == undefined || length == null)
|
|
49
|
+
length = 11;
|
|
50
|
+
if (IsPrevious == undefined || IsPrevious == null || !IsPrevious)
|
|
51
|
+
multiplier = 1;
|
|
52
|
+
const years = [];
|
|
53
|
+
for (let i = 0; i < length; i++) {
|
|
54
|
+
years.push(currYear + i * multiplier);
|
|
55
|
+
}
|
|
56
|
+
return years;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Refactor function
|
|
60
|
+
* @param date
|
|
61
|
+
*/
|
|
62
|
+
static DateOnly(date) {
|
|
63
|
+
if (date) {
|
|
64
|
+
return new Date(new Date(date).toDateString());
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
return new Date(new Date().toDateString());
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* javascript difference between two dates in days
|
|
72
|
+
* @param startDate
|
|
73
|
+
* @param endDate
|
|
74
|
+
* @returns
|
|
75
|
+
*/
|
|
76
|
+
static differentInDays(startDate, endDate) {
|
|
77
|
+
// To calculate the time difference of two dates
|
|
78
|
+
let Difference_In_Time = endDate.getTime() - startDate.getTime();
|
|
79
|
+
// To calculate the no. of days between two dates
|
|
80
|
+
let Difference_In_Days = Math.floor(Difference_In_Time / (1000 * 3600 * 24));
|
|
81
|
+
return Difference_In_Days;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* javascript difference between two dates in minutes
|
|
85
|
+
* @param dt1
|
|
86
|
+
* @param dt2
|
|
87
|
+
* @returns
|
|
88
|
+
*/
|
|
89
|
+
static minutesDiff(dt1, dt2) {
|
|
90
|
+
let diffMin = (dt2.getTime() - dt1.getTime()) / 60000;
|
|
91
|
+
return Math.ceil(diffMin);
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Calculate the difference between two dates in hours javascript
|
|
95
|
+
* @param dt1
|
|
96
|
+
* @param dt2
|
|
97
|
+
* @returns
|
|
98
|
+
*/
|
|
99
|
+
static hoursDiff(dt1, dt2) {
|
|
100
|
+
// calculate the time difference of two dates JavaScript
|
|
101
|
+
let diffTime = (dt2.getTime() - dt1.getTime());
|
|
102
|
+
// calculate the number of days between hours dates javascript
|
|
103
|
+
let hoursDiff = diffTime / (1000 * 3600);
|
|
104
|
+
return parseFloat(hoursDiff.toFixed(1));
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Create Unique Identifier in the Client Side equivalent to C# NewGuid()
|
|
108
|
+
* @returns
|
|
109
|
+
*/
|
|
110
|
+
static Guid_NewGuid() {
|
|
111
|
+
let dt = new Date().getTime();
|
|
112
|
+
let uuid = "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function (c) {
|
|
113
|
+
var r = (dt + Math.random() * 16) % 16 | 0;
|
|
114
|
+
dt = Math.floor(dt / 16);
|
|
115
|
+
return (c == "x" ? r : (r & 0x3) | 0x8).toString(16);
|
|
116
|
+
});
|
|
117
|
+
return uuid;
|
|
118
|
+
}
|
|
119
|
+
static parseJwt(token) {
|
|
120
|
+
var base64Url = token.split(".")[1];
|
|
121
|
+
var base64 = base64Url.replace(/-/g, "+").replace(/_/g, "/");
|
|
122
|
+
var jsonPayload = decodeURIComponent(atob(base64)
|
|
123
|
+
.split("")
|
|
124
|
+
.map(function (c) {
|
|
125
|
+
return "%" + ("00" + c.charCodeAt(0).toString(16)).slice(-2);
|
|
126
|
+
})
|
|
127
|
+
.join(""));
|
|
128
|
+
return JSON.parse(jsonPayload);
|
|
129
|
+
}
|
|
130
|
+
static numberOnly(event) {
|
|
131
|
+
const charCode = (event.which) ? event.which : event.keyCode;
|
|
132
|
+
if (charCode > 31 && (charCode < 48 || charCode > 57)) {
|
|
133
|
+
return false;
|
|
134
|
+
}
|
|
135
|
+
return true;
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* format number to unit
|
|
139
|
+
* @param total
|
|
140
|
+
* @returns
|
|
141
|
+
*/
|
|
142
|
+
static formatNumber(total) {
|
|
143
|
+
let value = '';
|
|
144
|
+
let unit = "";
|
|
145
|
+
let absNumber = Math.abs(total);
|
|
146
|
+
if (absNumber > 999 && absNumber < 1000000) {
|
|
147
|
+
unit = "K";
|
|
148
|
+
value = (absNumber / 1000).toFixed(0);
|
|
149
|
+
}
|
|
150
|
+
else if (absNumber >= 1000000) {
|
|
151
|
+
unit = "M";
|
|
152
|
+
value = (absNumber / 1000000).toFixed(0);
|
|
153
|
+
}
|
|
154
|
+
else if (absNumber < 900) {
|
|
155
|
+
value = absNumber.toString(); //
|
|
156
|
+
}
|
|
157
|
+
if (total < 0) {
|
|
158
|
+
value = "-" + value;
|
|
159
|
+
}
|
|
160
|
+
return value.replace(/\B(?=(\d{3})+(?!\d))/g, ",") + unit;
|
|
161
|
+
}
|
|
162
|
+
static isToDay(date) {
|
|
163
|
+
if (date) {
|
|
164
|
+
const now = new Date();
|
|
165
|
+
now.setHours(0, 0, 0, 0);
|
|
166
|
+
return now.getTime() == date.getTime();
|
|
167
|
+
}
|
|
168
|
+
return false;
|
|
169
|
+
}
|
|
170
|
+
static compare(a, b, isAsc) {
|
|
171
|
+
return (a < b ? -1 : 1) * (isAsc ? 1 : -1);
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* generate serial as note with format ['serial'*Quantity]
|
|
175
|
+
* ex: [00AS32*6, 0089A]
|
|
176
|
+
* @param serials
|
|
177
|
+
* @returns
|
|
178
|
+
*/
|
|
179
|
+
static generateSerialasNote(serials = []) {
|
|
180
|
+
let serialNote = '';
|
|
181
|
+
if (serials && serials.length > 0) {
|
|
182
|
+
let serialASString = serials.map((serial, i) => {
|
|
183
|
+
return `${i > 0 ? " " : ""}${serial.Number}${(serial.Quantity > 1 || serial.Quantity < 0) ? "*" + serial.Quantity : ""}`;
|
|
184
|
+
});
|
|
185
|
+
serialNote = `[${serialASString}]`;
|
|
186
|
+
}
|
|
187
|
+
return serialNote;
|
|
188
|
+
}
|
|
189
|
+
static getDatesInRange(startDate, endDate) {
|
|
190
|
+
const date = new Date(startDate.getTime());
|
|
191
|
+
const dates = [];
|
|
192
|
+
while (date <= endDate) {
|
|
193
|
+
dates.push(new Date(date));
|
|
194
|
+
date.setDate(date.getDate() + 1);
|
|
195
|
+
}
|
|
196
|
+
return dates;
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* @param date
|
|
200
|
+
* @param daysBefore
|
|
201
|
+
* @returns
|
|
202
|
+
*/
|
|
203
|
+
static getDaysBefore(date, daysBefore) {
|
|
204
|
+
return new Date(date.setDate(new Date().getDate() - daysBefore));
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* get first and last day by month and year
|
|
208
|
+
* @param month
|
|
209
|
+
* @param year
|
|
210
|
+
* @returns
|
|
211
|
+
*/
|
|
212
|
+
static getRangeDate(month, year) {
|
|
213
|
+
const date = new Date();
|
|
214
|
+
date.setMonth(month);
|
|
215
|
+
date.setFullYear(year);
|
|
216
|
+
let firstDay = new Date(date.getFullYear(), date.getMonth() - 1, 1);
|
|
217
|
+
let lastDay = new Date(date.getFullYear(), date.getMonth(), 0);
|
|
218
|
+
return {
|
|
219
|
+
firstDay: firstDay,
|
|
220
|
+
lastDay: lastDay
|
|
221
|
+
};
|
|
222
|
+
}
|
|
223
|
+
static setDateTime(time, date) {
|
|
224
|
+
let newDate = new Date();
|
|
225
|
+
if (date) {
|
|
226
|
+
newDate = new Date(date);
|
|
227
|
+
}
|
|
228
|
+
let times = time.split(":");
|
|
229
|
+
newDate.setHours(parseInt(times[0]));
|
|
230
|
+
newDate.setMinutes(parseInt(times[1]));
|
|
231
|
+
return newDate;
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
Constants.GuidEmpty = "00000000-0000-0000-0000-000000000000";
|
|
235
|
+
Constants.DecimalMinValue = "-7.922816251426434e+28";
|
|
236
|
+
Constants.InputLockTimeSpan = 500;
|
|
237
|
+
Constants.MinDate = "0001-01-01T00:00:00";
|
|
238
|
+
Constants.MinTime = "00:00:00";
|
|
239
|
+
Constants.tinyMceApiKey = "zc58cdrrftek5r5igtmjiar7ed4n3wr00hzd4w4mvtx8mpxa";
|
|
240
|
+
Constants.Months = [
|
|
241
|
+
{ ID: 1, Label: "January" },
|
|
242
|
+
{ ID: 2, Label: "February" },
|
|
243
|
+
{ ID: 3, Label: "March" },
|
|
244
|
+
{ ID: 4, Label: "April" },
|
|
245
|
+
{ ID: 5, Label: "May" },
|
|
246
|
+
{ ID: 6, Label: "June" },
|
|
247
|
+
{ ID: 7, Label: "July" },
|
|
248
|
+
{ ID: 8, Label: "August" },
|
|
249
|
+
{ ID: 9, Label: "September" },
|
|
250
|
+
{ ID: 10, Label: "October" },
|
|
251
|
+
{ ID: 11, Label: "November" },
|
|
252
|
+
{ ID: 12, Label: "December" },
|
|
253
|
+
];
|
|
254
|
+
export function getImageInfo(src) {
|
|
255
|
+
return new Promise((resolve, reject) => {
|
|
256
|
+
let image = new Image();
|
|
257
|
+
image.src = src;
|
|
258
|
+
image
|
|
259
|
+
.decode()
|
|
260
|
+
.then(() => {
|
|
261
|
+
resolve({
|
|
262
|
+
img: src,
|
|
263
|
+
height: image.height,
|
|
264
|
+
width: image.width
|
|
265
|
+
});
|
|
266
|
+
})
|
|
267
|
+
.catch(() => {
|
|
268
|
+
reject(new Error(`Image load error for ${src}`));
|
|
269
|
+
});
|
|
270
|
+
});
|
|
271
|
+
}
|
|
272
|
+
export class LocalDataKey {
|
|
273
|
+
}
|
|
274
|
+
LocalDataKey.OfflineQueryMode = "OfflineQueryMode";
|
|
275
|
+
LocalDataKey.POSStorage = "POSStorage";
|
|
276
|
+
LocalDataKey.Products = "Products";
|
|
277
|
+
LocalDataKey.Customers = "Customers";
|
|
278
|
+
LocalDataKey.OutletPrices = "OutletPrices";
|
|
279
|
+
LocalDataKey.Outlet = "Outlet";
|
|
280
|
+
LocalDataKey.Parks = "Parks";
|
|
281
|
+
LocalDataKey.Orders = "Orders";
|
|
282
|
+
LocalDataKey.FailedOrders = "FailedOrders";
|
|
283
|
+
LocalDataKey.CompletedOrders = "CompletedOrders";
|
|
284
|
+
LocalDataKey.NewCustomers = "NewCustomers";
|
|
285
|
+
LocalDataKey.GetRewardByPromotionID = "/API/POS/GetRewardByPromotionID";
|
|
286
|
+
LocalDataKey.GetListPromotion = "/API/POS/Promotion";
|
|
287
|
+
LocalDataKey.GenerateGopayQrCode = "/API/POS/GenerateGoPayQrCode";
|
|
288
|
+
LocalDataKey.GenerateEmpatKaliQrCode = "/API/POS/GenerateEmpatKaliQrCode";
|
|
289
|
+
LocalDataKey.VerifyPayment = "/API/PaymentNotification/VerifyPayment";
|
|
290
|
+
LocalDataKey.PayWithOvo = "/API/POS/PayWithOvo";
|
|
291
|
+
LocalDataKey.InvoiceA4 = "/API/Print/Invoice";
|
|
292
|
+
LocalDataKey.UploadCsv = "/API/POS/UploadCsv";
|
|
293
|
+
LocalDataKey.UploadCsvBuy = "/API/Buy/UploadCsv";
|
|
294
|
+
LocalDataKey.GenerateCommission = "/API/Transaction/GetCommission";
|
|
295
|
+
LocalDataKey.InvoiceInfo = "/api/Invoice/InvoiceInfo";
|
|
296
|
+
LocalDataKey.GenerateLink = "/API/PayNow/GenerateLink";
|
|
297
|
+
//Buy
|
|
298
|
+
LocalDataKey.LoadFormBuy = "/API/Buy2/Load";
|
|
299
|
+
LocalDataKey.BuyGetOutletInfo = "/API/Buy2/GetOutletInfo";
|
|
300
|
+
LocalDataKey.BuyGenerateNumber = "/API/Buy/GenerateNumber";
|
|
301
|
+
LocalDataKey.BuyGetDataByID = "/API/Buy2/GetDataByID";
|
|
302
|
+
LocalDataKey.GetQuickKey = "/API/catalog/product/GetQuickKey";
|
|
303
|
+
LocalDataKey.GetPrintTemplateID = "/API/Buy/GetPrintTemplateID";
|
|
304
|
+
LocalDataKey.GetVariantStockByID = "/API/catalog/variant/GetInventoryByVariantID";
|
|
305
|
+
LocalDataKey.GetSupplierInvoice = "/API/Buy/GetSupplierInvoiceRetur";
|
|
306
|
+
LocalDataKey.GetSupplierDTO = "/API/Contact/GetSupplierDTO";
|
|
307
|
+
//DELIVERY
|
|
308
|
+
LocalDataKey.LoadFormDelivery = "/API/TransferOrderLoader/LoadForm";
|
|
309
|
+
LocalDataKey.DeliveryGenerateNumber = "/API/TransferOrder/GenerateNumber";
|
|
310
|
+
LocalDataKey.UpdateCourierList = "/API/TransferOrder/UpdateCourierList";
|
|
311
|
+
LocalDataKey.SubmitOutletDelivery = "/API/TransferOrder/SubmitOrder";
|
|
312
|
+
LocalDataKey.ClearOutlet = "/API/TransferOrder/ClearOutlet";
|
|
313
|
+
LocalDataKey.PaymentListSorting = "/API/Setup/SortPaymentMethod";
|
|
314
|
+
LocalDataKey.TaxListSorting = "/API/Setup/SortTax";
|
|
315
|
+
// ESTIMATE
|
|
316
|
+
LocalDataKey.LoadFormEstimate = "/API/Estimate/LoadForm";
|
|
317
|
+
LocalDataKey.EstimateGenerateNumber = "/API/Estimate/GenerateNumber";
|
|
318
|
+
LocalDataKey.SubmitEstimate = "/API/Estimate/SubmitOrder";
|
|
319
|
+
// ADJUSTMENT
|
|
320
|
+
LocalDataKey.LoadFormAdjustment = "/API/Adjustment/LoadForm";
|
|
321
|
+
LocalDataKey.AdjustmentGenerateNumber = "/API/Adjustment/GenerateNumber";
|
|
322
|
+
LocalDataKey.SubmitAdjustment = "/API/Adjustment/SubmitOrder";
|
|
323
|
+
// INVENTORY
|
|
324
|
+
LocalDataKey.ForecastData = "Inventory/Daystozero";
|
|
325
|
+
LocalDataKey.ForecastLoader = "InventoryLoader/Daystozero";
|
|
326
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVhbHBvcy1ucG0vbmctZGVhbHBvcy1saWJyYXJ5L2NvbnN0YW50cy9zcmMvQ29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxTQUFTO0lBT2xCLE1BQU0sQ0FBQyxZQUFZLENBQUMsR0FBVyxFQUFFLEdBQUcsSUFBYztRQUM5QyxLQUFLLElBQUksRUFBRSxHQUFHLENBQUMsRUFBRSxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsRUFBRTtZQUNyQyxHQUFHLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQzFDO1FBQ0QsT0FBTyxHQUFHLENBQUM7SUFDZixDQUFDO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxLQUFVO1FBQ3hCLElBQ0ksS0FBSyxJQUFJLEVBQUU7WUFDWCxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUM7WUFDcEMsS0FBSyxJQUFJLFNBQVMsQ0FBQyxTQUFTO1lBQzVCLEtBQUssSUFBSSxTQUFTO1lBQ2xCLEtBQUssSUFBSSxJQUFJLEVBQ2Y7WUFDRSxPQUFPLElBQUksQ0FBQztTQUNmO2FBQU07WUFDSCxPQUFPLEtBQUssQ0FBQztTQUNoQjtJQUNMLENBQUM7SUFFRCxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQVU7UUFDckIsSUFDSSxLQUFLLElBQUksRUFBRTtZQUNYLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUM7WUFDbkMsS0FBSyxJQUFJLFNBQVM7WUFDbEIsS0FBSyxJQUFJLElBQUk7WUFDYixLQUFLLElBQUksU0FBUyxDQUFDLFNBQVMsRUFDOUI7WUFDRSxPQUFPLElBQUksQ0FBQztTQUNmO2FBQU07WUFDSCxPQUFPLEtBQUssQ0FB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e1xyXG4gICAgc3RhdGljIEd1aWRFbXB0eSA9IFwiMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAwXCI7XHJcbiAgICBzdGF0aWMgRGVjaW1hbE1pblZhbHVlID0gXCItNy45MjI4MTYyNTE0MjY0MzRlKzI4XCI7XHJcbiAgICBzdGF0aWMgSW5wdXRMb2NrVGltZVNwYW4gPSA1MDA7XHJcbiAgICBzdGF0aWMgTWluRGF0ZSA9IFwiMDAwMS0wMS0wMVQwMDowMDowMFwiO1xyXG4gICAgc3RhdGljIE1pblRpbWUgPSBcIjAwOjAwOjAwXCI7XHJcbiAgICBzdGF0aWMgdGlueU1jZUFwaUtleSA9IFwiemM1OGNkcnJmdGVrNXI1aWd0bWppYXI3ZWQ0bjN3cjAwaHpkNHc0bXZ0eDhtcHhhXCI7XHJcbiAgICBzdGF0aWMgU3RyaW5nRm9ybWF0KG1zZzogc3RyaW5nLCAuLi5hcmdzOiBzdHJpbmdbXSk6IHN0cmluZyB7XHJcbiAgICAgICAgZm9yIChsZXQgX2kgPSAwOyBfaSA8IGFyZ3MubGVuZ3RoOyBfaSsrKSB7XHJcbiAgICAgICAgICAgIG1zZyA9IG1zZy5yZXBsYWNlKGB7JHtfaX19YCwgYXJnc1tfaV0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gbXNnO1xyXG4gICAgfVxyXG5cclxuICAgIHN0YXRpYyBJc05vdEVtcHR5KHZhbHVlOiBhbnkpOiBib29sZWFuIHtcclxuICAgICAgICBpZiAoXHJcbiAgICAgICAgICAgIHZhbHVlICE9IFwiXCIgJiZcclxuICAgICAgICAgICAgIUNvbnN0YW50cy5jb250YWluc09ubHlTcGFjZXModmFsdWUpICYmXHJcbiAgICAgICAgICAgIHZhbHVlICE9IENvbnN0YW50cy5HdWlkRW1wdHkgJiZcclxuICAgICAgICAgICAgdmFsdWUgIT0gdW5kZWZpbmVkICYmXHJcbiAgICAgICAgICAgIHZhbHVlICE9IG51bGxcclxuICAgICAgICApIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgSXNFbXB0eSh2YWx1ZTogYW55KTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICB2YWx1ZSA9PSBcIlwiIHx8XHJcbiAgICAgICAgICAgIENvbnN0YW50cy5jb250YWluc09ubHlTcGFjZXModmFsdWUpIHx8XHJcbiAgICAgICAgICAgIHZhbHVlID09IHVuZGVmaW5lZCB8fFxyXG4gICAgICAgICAgICB2YWx1ZSA9PSBudWxsIHx8XHJcbiAgICAgICAgICAgIHZhbHVlID09IENvbnN0YW50cy5HdWlkRW1wdHlcclxuICAgICAgICApIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBjaGVjayB3aGV0aGVyIHN0cmluZyBvbmx5IGNvbnRhaW5zIGJsYW5rIHNwYWNlXHJcbiAgICBzdGF0aWMgY29udGFpbnNPbmx5U3BhY2VzKHN0cjogc3RyaW5nKSB7XHJcbiAgICAgICAgcmV0dXJuIC9eXFxzKiQvLnRlc3Qoc3RyKTtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgRmlsdGVyQnlJRChhcnJheTogYW55W10sIGlkOiBhbnkpOiBhbnkge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGxpc3QgPSBhcnJheS5maWx0ZXIoKHgpID0+IHguSUQgPT0gaWQpO1xyXG4gICAgICAgICAgICBpZiAobGlzdC5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gbGlzdFswXTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gY2F0Y2ggKGV4KSB7IH1cclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgTW9udGhzOiB7IElEOiBudW1iZXIsIExhYmVsOiBzdHJpbmcgfVtdID0gW1xyXG4gICAgICAgIHsgSUQ6IDEsIExhYmVsOiBcIkphbnVhcnlcIiB9LFxyXG4gICAgICAgIHsgSUQ6IDIsIExhYmVsOiBcIkZlYnJ1YXJ5XCIgfSxcclxuICAgICAgICB7IElEOiAzLCBMYWJlbDogXCJNYXJjaFwiIH0sXHJcbiAgICAgICAgeyBJRDogNCwgTGFiZWw6IFwiQXByaWxcIiB9LFxyXG4gICAgICAgIHsgSUQ6IDUsIExhYmVsOiBcIk1heVwiIH0sXHJcbiAgICAgICAgeyBJRDogNiwgTGFiZWw6IFwiSnVuZVwiIH0sXHJcbiAgICAgICAgeyBJRDogNywgTGFiZWw6IFwiSnVseVwiIH0sXHJcbiAgICAgICAgeyBJRDogOCwgTGFiZWw6IFwiQXVndXN0XCIgfSxcclxuICAgICAgICB7IElEOiA5LCBMYWJlbDogXCJTZXB0ZW1iZXJcIiB9LFxyXG4gICAgICAgIHsgSUQ6IDEwLCBMYWJlbDogXCJPY3RvYmVyXCIgfSxcclxuICAgICAgICB7IElEOiAxMSwgTGFiZWw6IFwiTm92ZW1iZXJcIiB9LFxyXG4gICAgICAgIHsgSUQ6IDEyLCBMYWJlbDogXCJEZWNlbWJlclwiIH0sXHJcbiAgICBdO1xyXG5cclxuICAgIHN0YXRpYyBHZW5lcmF0ZVllYXJzKGN1cnJZZWFyOiBhbnksIGxlbmd0aDogYW55LCBJc1ByZXZpb3VzOiBhbnkpOiBhbnlbXSB7XHJcbiAgICAgICAgbGV0IG11bHRpcGxpZXIgPSAtMTtcclxuICAgICAgICBpZiAobGVuZ3RoID09IHVuZGVmaW5lZCB8fCBsZW5ndGggPT0gbnVsbCkgbGVuZ3RoID0gMTE7XHJcbiAgICAgICAgaWYgKElzUHJldmlvdXMgPT0gdW5kZWZpbmVkIHx8IElzUHJldmlvdXMgPT0gbnVsbCB8fCAhSXNQcmV2aW91cylcclxuICAgICAgICAgICAgbXVsdGlwbGllciA9IDE7XHJcblxyXG4gICAgICAgIGNvbnN0IHllYXJzID0gW107XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICB5ZWFycy5wdXNoKGN1cnJZZWFyICsgaSAqIG11bHRpcGxpZXIpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4geWVhcnM7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSZWZhY3RvciBmdW5jdGlvblxyXG4gICAgICogQHBhcmFtIGRhdGVcclxuICAgICAqL1xyXG4gICAgc3RhdGljIERhdGVPbmx5KGRhdGU/OiBEYXRlKTogRGF0ZSB7XHJcbiAgICAgICAgaWYgKGRhdGUpIHtcclxuICAgICAgICAgICAgcmV0dXJuIG5ldyBEYXRlKG5ldyBEYXRlKGRhdGUpLnRvRGF0ZVN0cmluZygpKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICByZXR1cm4gbmV3IERhdGUobmV3IERhdGUoKS50b0RhdGVTdHJpbmcoKSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogamF2YXNjcmlwdCBkaWZmZXJlbmNlIGJldHdlZW4gdHdvIGRhdGVzIGluIGRheXNcclxuICAgICAqIEBwYXJhbSBzdGFydERhdGUgXHJcbiAgICAgKiBAcGFyYW0gZW5kRGF0ZSBcclxuICAgICAqIEByZXR1cm5zIFxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIGRpZmZlcmVudEluRGF5cyhcclxuICAgICAgICBzdGFydERhdGU6IERhdGUsXHJcbiAgICAgICAgZW5kRGF0ZTogRGF0ZVxyXG4gICAgKTogbnVtYmVyIHtcclxuICAgICAgICAvLyBUbyBjYWxjdWxhdGUgdGhlIHRpbWUgZGlmZmVyZW5jZSBvZiB0d28gZGF0ZXNcclxuICAgICAgICBsZXQgRGlmZmVyZW5jZV9Jbl9UaW1lID0gZW5kRGF0ZS5nZXRUaW1lKCkgLSBzdGFydERhdGUuZ2V0VGltZSgpO1xyXG5cclxuICAgICAgICAvLyBUbyBjYWxjdWxhdGUgdGhlIG5vLiBvZiBkYXlzIGJldHdlZW4gdHdvIGRhdGVzXHJcbiAgICAgICAgbGV0IERpZmZlcmVuY2VfSW5fRGF5cyA9IE1hdGguZmxvb3IoXHJcbiAgICAgICAgICAgIERpZmZlcmVuY2VfSW5fVGltZSAvICgxMDAwICogMzYwMCAqIDI0KVxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAgIHJldHVybiBEaWZmZXJlbmNlX0luX0RheXM7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiAgamF2YXNjcmlwdCBkaWZmZXJlbmNlIGJldHdlZW4gdHdvIGRhdGVzIGluIG1pbnV0ZXNcclxuICAgICAqIEBwYXJhbSBkdDEgXHJcbiAgICAgKiBAcGFyYW0gZHQyIFxyXG4gICAgICogQHJldHVybnMgXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBzdGF0aWMgbWludXRlc0RpZmYoZHQxOiBEYXRlLCBkdDI6IERhdGUpIHtcclxuXHJcbiAgICAgICAgbGV0IGRpZmZNaW4gPSAoZHQyLmdldFRpbWUoKSAtIGR0MS5nZXRUaW1lKCkpIC8gNjAwMDA7XHJcbiAgICAgICAgcmV0dXJuIE1hdGguY2VpbChkaWZmTWluKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIENhbGN1bGF0ZSB0aGUgZGlmZmVyZW5jZSBiZXR3ZWVuIHR3byBkYXRlcyBpbiBob3VycyBqYXZhc2NyaXB0XHJcbiAgICAgKiBAcGFyYW0gZHQxIFxyXG4gICAgICogQHBhcmFtIGR0MiBcclxuICAgICAqIEByZXR1cm5zIFxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIGhvdXJzRGlmZihkdDE6IERhdGUsIGR0MjogRGF0ZSkge1xyXG4gICAgICAgIC8vIGNhbGN1bGF0ZSB0aGUgdGltZSBkaWZmZXJlbmNlIG9mIHR3byBkYXRlcyBKYXZhU2NyaXB0XHJcbiAgICAgICAgbGV0IGRpZmZUaW1lID0gKGR0Mi5nZXRUaW1lKCkgLSBkdDEuZ2V0VGltZSgpKTtcclxuXHJcbiAgICAgICAgLy8gY2FsY3VsYXRlIHRoZSBudW1iZXIgb2YgZGF5cyBiZXR3ZWVuIGhvdXJzIGRhdGVzIGphdmFzY3JpcHRcclxuICAgICAgICBsZXQgaG91cnNEaWZmID0gZGlmZlRpbWUgLyAoMTAwMCAqIDM2MDApO1xyXG5cclxuICAgICAgICByZXR1cm4gcGFyc2VGbG9hdChob3Vyc0RpZmYudG9GaXhlZCgxKSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDcmVhdGUgVW5pcXVlIElkZW50aWZpZXIgaW4gdGhlIENsaWVudCBTaWRlIGVxdWl2YWxlbnQgdG8gQyMgTmV3R3VpZCgpXHJcbiAgICAgKiBAcmV0dXJuc1xyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIEd1aWRfTmV3R3VpZCgpOiBzdHJpbmcge1xyXG4gICAgICAgIGxldCBkdCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xyXG4gICAgICAgIGxldCB1dWlkID0gXCJ4eHh4eHh4eC14eHh4LTR4eHgteXh4eC14eHh4eHh4eHh4eHhcIi5yZXBsYWNlKFxyXG4gICAgICAgICAgICAvW3h5XS9nLFxyXG4gICAgICAgICAgICBmdW5jdGlvbiAoYykge1xyXG4gICAgICAgICAgICAgICAgdmFyIHIgPSAoZHQgKyBNYXRoLnJhbmRvbSgpICogMTYpICUgMTYgfCAwO1xyXG4gICAgICAgICAgICAgICAgZHQgPSBNYXRoLmZsb29yKGR0IC8gMTYpO1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIChjID09IFwieFwiID8gciA6IChyICYgMHgzKSB8IDB4OCkudG9TdHJpbmcoMTYpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgKTtcclxuICAgICAgICByZXR1cm4gdXVpZDtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc3RhdGljIHBhcnNlSnd0KHRva2VuOiBzdHJpbmcpIHtcclxuICAgICAgICB2YXIgYmFzZTY0VXJsID0gdG9rZW4uc3BsaXQoXCIuXCIpWzFdO1xyXG4gICAgICAgIHZhciBiYXNlNjQgPSBiYXNlNjRVcmwucmVwbGFjZSgvLS9nLCBcIitcIikucmVwbGFjZSgvXy9nLCBcIi9cIik7XHJcbiAgICAgICAgdmFyIGpzb25QYXlsb2FkID0gZGVjb2RlVVJJQ29tcG9uZW50KFxyXG4gICAgICAgICAgICBhdG9iKGJhc2U2NClcclxuICAgICAgICAgICAgICAgIC5zcGxpdChcIlwiKVxyXG4gICAgICAgICAgICAgICAgLm1hcChmdW5jdGlvbiAoYykge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBcIiVcIiArIChcIjAwXCIgKyBjLmNoYXJDb2RlQXQoMCkudG9TdHJpbmcoMTYpKS5zbGljZSgtMik7XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgLmpvaW4oXCJcIilcclxuICAgICAgICApO1xyXG5cclxuICAgICAgICByZXR1cm4gSlNPTi5wYXJzZShqc29uUGF5bG9hZCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHN0YXRpYyBudW1iZXJPbmx5KGV2ZW50OiBLZXlib2FyZEV2ZW50KTogYm9vbGVhbiB7XHJcbiAgICAgICAgY29uc3QgY2hhckNvZGUgPSAoZXZlbnQud2hpY2gpID8gZXZlbnQud2hpY2ggOiBldmVudC5rZXlDb2RlO1xyXG4gICAgICAgIGlmIChjaGFyQ29kZSA+IDMxICYmIChjaGFyQ29kZSA8IDQ4IHx8IGNoYXJDb2RlID4gNTcpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBmb3JtYXQgbnVtYmVyIHRvIHVuaXRcclxuICAgICAqIEBwYXJhbSB0b3RhbCBcclxuICAgICAqIEByZXR1cm5zIFxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIGZvcm1hdE51bWJlcih0b3RhbDogbnVtYmVyKSB7XHJcbiAgICAgICAgbGV0IHZhbHVlOiBzdHJpbmcgPSAnJztcclxuICAgICAgICBsZXQgdW5pdCA9IFwiXCI7XHJcbiAgICAgICAgbGV0IGFic051bWJlciA9IE1hdGguYWJzKHRvdGFsKTtcclxuICAgICAgICBpZiAoYWJzTnVtYmVyID4gOTk5ICYmIGFic051bWJlciA8IDEwMDAwMDApIHtcclxuICAgICAgICAgICAgdW5pdCA9IFwiS1wiO1xyXG4gICAgICAgICAgICB2YWx1ZSA9IChhYnNOdW1iZXIgLyAxMDAwKS50b0ZpeGVkKDApO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoYWJzTnVtYmVyID49IDEwMDAwMDApIHtcclxuICAgICAgICAgICAgdW5pdCA9IFwiTVwiO1xyXG4gICAgICAgICAgICB2YWx1ZSA9IChhYnNOdW1iZXIgLyAxMDAwMDAwKS50b0ZpeGVkKDApO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoYWJzTnVtYmVyIDwgOTAwKSB7XHJcbiAgICAgICAgICAgIHZhbHVlID0gYWJzTnVtYmVyLnRvU3RyaW5nKCk7IC8vXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0b3RhbCA8IDApIHtcclxuICAgICAgICAgICAgdmFsdWUgPSBcIi1cIiArIHZhbHVlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHZhbHVlLnJlcGxhY2UoL1xcQig/PShcXGR7M30pKyg/IVxcZCkpL2csIFwiLFwiKSArIHVuaXQ7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHN0YXRpYyBpc1RvRGF5KGRhdGU6IERhdGUpOiBib29sZWFuIHtcclxuICAgICAgICBpZiAoZGF0ZSkge1xyXG4gICAgICAgICAgICBjb25zdCBub3cgPSBuZXcgRGF0ZSgpO1xyXG4gICAgICAgICAgICBub3cuc2V0SG91cnMoMCwgMCwgMCwgMCk7XHJcbiAgICAgICAgICAgIHJldHVybiBub3cuZ2V0VGltZSgpID09IGRhdGUuZ2V0VGltZSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gZmFsc2VcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc3RhdGljIGNvbXBhcmUoYTogbnVtYmVyIHwgc3RyaW5nLCBiOiBudW1iZXIgfCBzdHJpbmcsIGlzQXNjOiBib29sZWFuKTogbnVtYmVyIHtcclxuICAgICAgICByZXR1cm4gKGEgPCBiID8gLTEgOiAxKSAqIChpc0FzYyA/IDEgOiAtMSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBnZW5lcmF0ZSBzZXJpYWwgYXMgbm90ZSB3aXRoIGZvcm1hdCBbJ3NlcmlhbCcqUXVhbnRpdHldXHJcbiAgICAgKiBleDogWzAwQVMzMio2LCAwMDg5QV1cclxuICAgICAqIEBwYXJhbSBzZXJpYWxzIFxyXG4gICAgICogQHJldHVybnMgXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBzdGF0aWMgZ2VuZXJhdGVTZXJpYWxhc05vdGUoc2VyaWFsczogYW55W10gPSBbXSkge1xyXG4gICAgICAgIGxldCBzZXJpYWxOb3RlOiBzdHJpbmcgPSAnJztcclxuICAgICAgICBpZiAoc2VyaWFscyAmJiBzZXJpYWxzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgbGV0IHNlcmlhbEFTU3RyaW5nID0gc2VyaWFscy5tYXAoKHNlcmlhbCwgaSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIGAke2kgPiAwID8gXCIgXCIgOiBcIlwifSR7c2VyaWFsLk51bWJlcn0keyhzZXJpYWwuUXVhbnRpdHkgPiAxIHx8IHNlcmlhbC5RdWFudGl0eSA8IDApID8gXCIqXCIgKyBzZXJpYWwuUXVhbnRpdHkgOiBcIlwifWA7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICBzZXJpYWxOb3RlID0gYFske3NlcmlhbEFTU3RyaW5nfV1gO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gc2VyaWFsTm90ZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc3RhdGljIGdldERhdGVzSW5SYW5nZShzdGFydERhdGU6IERhdGUsIGVuZERhdGU6IERhdGUpOiBEYXRlW10ge1xyXG4gICAgICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZShzdGFydERhdGUuZ2V0VGltZSgpKTtcclxuXHJcbiAgICAgICAgY29uc3QgZGF0ZXMgPSBbXTtcclxuXHJcbiAgICAgICAgd2hpbGUgKGRhdGUgPD0gZW5kRGF0ZSkge1xyXG4gICAgICAgICAgICBkYXRlcy5wdXNoKG5ldyBEYXRlKGRhdGUpKTtcclxuICAgICAgICAgICAgZGF0ZS5zZXREYXRlKGRhdGUuZ2V0RGF0ZSgpICsgMSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gZGF0ZXM7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBAcGFyYW0gZGF0ZSBcclxuICAgICAqIEBwYXJhbSBkYXlzQmVmb3JlIFxyXG4gICAgICogQHJldHVybnMgXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0RGF5c0JlZm9yZShkYXRlOiBEYXRlLCBkYXlzQmVmb3JlOiBudW1iZXIpOiBEYXRlIHtcclxuICAgICAgICByZXR1cm4gbmV3IERhdGUoZGF0ZS5zZXREYXRlKG5ldyBEYXRlKCkuZ2V0RGF0ZSgpIC0gZGF5c0JlZm9yZSkpXHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBnZXQgZmlyc3QgYW5kIGxhc3QgZGF5IGJ5IG1vbnRoIGFuZCB5ZWFyXHJcbiAgICAgKiBAcGFyYW0gbW9udGggXHJcbiAgICAgKiBAcGFyYW0geWVhciBcclxuICAgICAqIEByZXR1cm5zIFxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIGdldFJhbmdlRGF0ZShtb250aDogbnVtYmVyLCB5ZWFyOiBudW1iZXIpIHtcclxuICAgICAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoKTtcclxuICAgICAgICBkYXRlLnNldE1vbnRoKG1vbnRoKTtcclxuICAgICAgICBkYXRlLnNldEZ1bGxZZWFyKHllYXIpO1xyXG4gICAgICAgIGxldCBmaXJzdERheSA9IG5ldyBEYXRlKGRhdGUuZ2V0RnVsbFllYXIoKSwgZGF0ZS5nZXRNb250aCgpIC0gMSwgMSk7XHJcbiAgICAgICAgbGV0IGxhc3REYXkgPSBuZXcgRGF0ZShkYXRlLmdldEZ1bGxZZWFyKCksIGRhdGUuZ2V0TW9udGgoKSwgMCk7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgZmlyc3REYXk6IGZpcnN0RGF5LFxyXG4gICAgICAgICAgICBsYXN0RGF5OiBsYXN0RGF5XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzdGF0aWMgc2V0RGF0ZVRpbWUodGltZTogc3RyaW5nLCBkYXRlOiBEYXRlKTogRGF0ZSB7XHJcbiAgICAgICAgbGV0IG5ld0RhdGUgPSBuZXcgRGF0ZSgpO1xyXG4gICAgICAgIGlmIChkYXRlKSB7XHJcbiAgICAgICAgICAgIG5ld0RhdGUgPSBuZXcgRGF0ZShkYXRlKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgbGV0IHRpbWVzID0gdGltZS5zcGxpdChcIjpcIik7XHJcbiAgICAgICAgbmV3RGF0ZS5zZXRIb3VycyhwYXJzZUludCh0aW1lc1swXSkpO1xyXG4gICAgICAgIG5ld0RhdGUuc2V0TWludXRlcyhwYXJzZUludCh0aW1lc1sxXSkpO1xyXG4gICAgICAgIHJldHVybiBuZXdEYXRlO1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0SW1hZ2VJbmZvKHNyYzogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICAgIGxldCBpbWFnZSA9IG5ldyBJbWFnZSgpO1xyXG4gICAgICAgIGltYWdlLnNyYyA9IHNyYztcclxuICAgICAgICBpbWFnZVxyXG4gICAgICAgICAgICAuZGVjb2RlKClcclxuICAgICAgICAgICAgLnRoZW4oKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgcmVzb2x2ZSh7XHJcbiAgICAgICAgICAgICAgICAgICAgaW1nOiBzcmMsXHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBpbWFnZS5oZWlnaHQsXHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGltYWdlLndpZHRoXHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgLmNhdGNoKCgpID0+IHtcclxuICAgICAgICAgICAgICAgIHJlamVjdChuZXcgRXJyb3IoYEltYWdlIGxvYWQgZXJyb3IgZm9yICR7c3JjfWApKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICB9KTtcclxufVxyXG5cclxuXHJcblxyXG5leHBvcnQgY2xhc3MgTG9jYWxEYXRhS2V5IHtcclxuICAgIHN0YXRpYyBPZmZsaW5lUXVlcnlNb2RlID0gXCJPZmZsaW5lUXVlcnlNb2RlXCI7XHJcbiAgICBzdGF0aWMgUE9TU3RvcmFnZSA9IFwiUE9TU3RvcmFnZVwiO1xyXG4gICAgc3RhdGljIFByb2R1Y3RzID0gXCJQcm9kdWN0c1wiO1xyXG4gICAgc3RhdGljIEN1c3RvbWVycyA9IFwiQ3VzdG9tZXJzXCI7XHJcbiAgICBzdGF0aWMgT3V0bGV0UHJpY2VzID0gXCJPdXRsZXRQcmljZXNcIjtcclxuICAgIHN0YXRpYyBPdXRsZXQgPSBcIk91dGxldFwiO1xyXG4gICAgc3RhdGljIFBhcmtzID0gXCJQYXJrc1wiO1xyXG4gICAgc3RhdGljIE9yZGVycyA9IFwiT3JkZXJzXCI7XHJcbiAgICBzdGF0aWMgRmFpbGVkT3JkZXJzID0gXCJGYWlsZWRPcmRlcnNcIjtcclxuICAgIHN0YXRpYyBDb21wbGV0ZWRPcmRlcnMgPSBcIkNvbXBsZXRlZE9yZGVyc1wiO1xyXG4gICAgc3RhdGljIE5ld0N1c3RvbWVycyA9IFwiTmV3Q3VzdG9tZXJzXCI7XHJcblxyXG4gICAgc3RhdGljIEdldFJld2FyZEJ5UHJvbW90aW9uSUQgPSBcIi9BUEkvUE9TL0dldFJld2FyZEJ5UHJvbW90aW9uSURcIjtcclxuICAgIHN0YXRpYyBHZXRMaXN0UHJvbW90aW9uID0gXCIvQVBJL1BPUy9Qcm9tb3Rpb25cIjtcclxuXHJcbiAgICBzdGF0aWMgR2VuZXJhdGVHb3BheVFyQ29kZSA9IFwiL0FQSS9QT1MvR2VuZXJhdGVHb1BheVFyQ29kZVwiO1xyXG4gICAgc3RhdGljIEdlbmVyYXRlRW1wYXRLYWxpUXJDb2RlID0gXCIvQVBJL1BPUy9HZW5lcmF0ZUVtcGF0S2FsaVFyQ29kZVwiO1xyXG5cclxuICAgIHN0YXRpYyBWZXJpZnlQYXltZW50ID0gXCIvQVBJL1BheW1lbnROb3RpZmljYXRpb24vVmVyaWZ5UGF5bWVudFwiO1xyXG4gICAgc3RhdGljIFBheVdpdGhPdm8gPSBcIi9BUEkvUE9TL1BheVdpdGhPdm9cIjtcclxuXHJcbiAgICBzdGF0aWMgSW52b2ljZUE0ID0gXCIvQVBJL1ByaW50L0ludm9pY2VcIjtcclxuICAgIHN0YXRpYyBVcGxvYWRDc3YgPSBcIi9BUEkvUE9TL1VwbG9hZENzdlwiO1xyXG4gICAgc3RhdGljIFVwbG9hZENzdkJ1eSA9IFwiL0FQSS9CdXkvVXBsb2FkQ3N2XCI7XHJcblxyXG4gICAgc3RhdGljIEdlbmVyYXRlQ29tbWlzc2lvbiA9IFwiL0FQSS9UcmFuc2FjdGlvbi9HZXRDb21taXNzaW9uXCI7XHJcblxyXG4gICAgc3RhdGljIEludm9pY2VJbmZvID0gXCIvYXBpL0ludm9pY2UvSW52b2ljZUluZm9cIjtcclxuICAgIHN0YXRpYyBHZW5lcmF0ZUxpbmsgPSBcIi9BUEkvUGF5Tm93L0dlbmVyYXRlTGlua1wiO1xyXG5cclxuICAgIC8vQnV5XHJcbiAgICBzdGF0aWMgTG9hZEZvcm1CdXkgPSBcIi9BUEkvQnV5Mi9Mb2FkXCI7XHJcbiAgICBzdGF0aWMgQnV5R2V0T3V0bGV0SW5mbyA9IFwiL0FQSS9CdXkyL0dldE91dGxldEluZm9cIjtcclxuICAgIHN0YXRpYyBCdXlHZW5lcmF0ZU51bWJlciA9IFwiL0FQSS9CdXkvR2VuZXJhdGVOdW1iZXJcIjtcclxuICAgIHN0YXRpYyBCdXlHZXREYXRhQnlJRCA9IFwiL0FQSS9CdXkyL0dldERhdGFCeUlEXCI7XHJcbiAgICBzdGF0aWMgR2V0UXVpY2tLZXkgPSBcIi9BUEkvY2F0YWxvZy9wcm9kdWN0L0dldFF1aWNrS2V5XCI7XHJcbiAgICBzdGF0aWMgR2V0UHJpbnRUZW1wbGF0ZUlEID0gXCIvQVBJL0J1eS9HZXRQcmludFRlbXBsYXRlSURcIjtcclxuICAgIHN0YXRpYyBHZXRWYXJpYW50U3RvY2tCeUlEID0gXCIvQVBJL2NhdGFsb2cvdmFyaWFudC9HZXRJbnZlbnRvcnlCeVZhcmlhbnRJRFwiO1xyXG4gICAgc3RhdGljIEdldFN1cHBsaWVySW52b2ljZSA9IFwiL0FQSS9CdXkvR2V0U3VwcGxpZXJJbnZvaWNlUmV0dXJcIjtcclxuICAgIHN0YXRpYyBHZXRTdXBwbGllckRUTyA9IFwiL0FQSS9Db250YWN0L0dldFN1cHBsaWVyRFRPXCI7XHJcblxyXG4gICAgLy9ERUxJVkVSWVxyXG4gICAgc3RhdGljIExvYWRGb3JtRGVsaXZlcnkgPSBcIi9BUEkvVHJhbnNmZXJPcmRlckxvYWRlci9Mb2FkRm9ybVwiO1xyXG4gICAgc3RhdGljIERlbGl2ZXJ5R2VuZXJhdGVOdW1iZXIgPSBcIi9BUEkvVHJhbnNmZXJPcmRlci9HZW5lcmF0ZU51bWJlclwiO1xyXG4gICAgc3RhdGljIFVwZGF0ZUNvdXJpZXJMaXN0ID0gXCIvQVBJL1RyYW5zZmVyT3JkZXIvVXBkYXRlQ291cmllckxpc3RcIjtcclxuICAgIHN0YXRpYyBTdWJtaXRPdXRsZXREZWxpdmVyeSA9IFwiL0FQSS9UcmFuc2Zlck9yZGVyL1N1Ym1pdE9yZGVyXCI7XHJcbiAgICBzdGF0aWMgQ2xlYXJPdXRsZXQgPSBcIi9BUEkvVHJhbnNmZXJPcmRlci9DbGVhck91dGxldFwiO1xyXG4gICAgc3RhdGljIFBheW1lbnRMaXN0U29ydGluZyA9IFwiL0FQSS9TZXR1cC9Tb3J0UGF5bWVudE1ldGhvZFwiXHJcbiAgICBzdGF0aWMgVGF4TGlzdFNvcnRpbmcgPSBcIi9BUEkvU2V0dXAvU29ydFRheFwiXHJcblxyXG4gICAgLy8gRVNUSU1BVEVcclxuICAgIHN0YXRpYyBMb2FkRm9ybUVzdGltYXRlID0gXCIvQVBJL0VzdGltYXRlL0xvYWRGb3JtXCI7XHJcbiAgICBzdGF0aWMgRXN0aW1hdGVHZW5lcmF0ZU51bWJlciA9IFwiL0FQSS9Fc3RpbWF0ZS9HZW5lcmF0ZU51bWJlclwiO1xyXG4gICAgc3RhdGljIFN1Ym1pdEVzdGltYXRlID0gXCIvQVBJL0VzdGltYXRlL1N1Ym1pdE9yZGVyXCI7XHJcblxyXG4gICAgLy8gQURKVVNUTUVOVFxyXG4gICAgc3RhdGljIExvYWRGb3JtQWRqdXN0bWVudCA9IFwiL0FQSS9BZGp1c3RtZW50L0xvYWRGb3JtXCI7XHJcbiAgICBzdGF0aWMgQWRqdXN0bWVudEdlbmVyYXRlTnVtYmVyID0gXCIvQVBJL0FkanVzdG1lbnQvR2VuZXJhdGVOdW1iZXJcIjtcclxuICAgIHN0YXRpYyBTdWJtaXRBZGp1c3RtZW50ID0gXCIvQVBJL0FkanVzdG1lbnQvU3VibWl0T3JkZXJcIjtcclxuXHJcbiAgICAvLyBJTlZFTlRPUllcclxuICAgIHN0YXRpYyBGb3JlY2FzdERhdGEgPSBcIkludmVudG9yeS9EYXlzdG96ZXJvXCI7XHJcbiAgICBzdGF0aWMgRm9yZWNhc3RMb2FkZXIgPSBcIkludmVudG9yeUxvYWRlci9EYXlzdG96ZXJvXCI7XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVhbHBvcy1ucG0tbmctZGVhbHBvcy1saWJyYXJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvZGVhbHBvcy1ucG0vbmctZGVhbHBvcy1saWJyYXJ5L3NyYy9kZWFscG9zLW5wbS1uZy1kZWFscG9zLWxpYnJhcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
|
package/esm2020/directives/autonumeric/dealpos-npm-ng-dealpos-library-directives-autonumeric.mjs
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVhbHBvcy1ucG0tbmctZGVhbHBvcy1saWJyYXJ5LWRpcmVjdGl2ZXMtYXV0b251bWVyaWMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZWFscG9zLW5wbS9uZy1kZWFscG9zLWxpYnJhcnkvZGlyZWN0aXZlcy9hdXRvbnVtZXJpYy9kZWFscG9zLW5wbS1uZy1kZWFscG9zLWxpYnJhcnktZGlyZWN0aXZlcy1hdXRvbnVtZXJpYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from "./src/autonumeric.directive";
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RlYWxwb3MtbnBtL25nLWRlYWxwb3MtbGlicmFyeS9kaXJlY3RpdmVzL2F1dG9udW1lcmljL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw2QkFBNkIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL3NyYy9hdXRvbnVtZXJpYy5kaXJlY3RpdmVcIiJdfQ==
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import { Directive, Input, forwardRef } from '@angular/core';
|
|
2
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import AutoNumeric from 'autonumeric';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class AutonumericDirective {
|
|
6
|
+
set _emptyInputBehavior(value) {
|
|
7
|
+
if (value) {
|
|
8
|
+
this.emptyInputBehavior = value;
|
|
9
|
+
this.updateNumericSettings();
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
set _max(value) {
|
|
13
|
+
if (value) {
|
|
14
|
+
this.max = value;
|
|
15
|
+
this.updateNumericSettings();
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
set _min(value) {
|
|
19
|
+
if (value) {
|
|
20
|
+
this.min = value;
|
|
21
|
+
this.updateNumericSettings();
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
constructor(elementRef) {
|
|
25
|
+
this.elementRef = elementRef;
|
|
26
|
+
this.percentage = '';
|
|
27
|
+
this.decimalPlaces = 4;
|
|
28
|
+
this.modifyValueOnWheel = true;
|
|
29
|
+
this.disabled = false;
|
|
30
|
+
//https://docs.autonumeric.org/Documentation/configuration%20options/
|
|
31
|
+
this.emptyInputBehavior = 'focus';
|
|
32
|
+
this.max = '999999999999999.9999';
|
|
33
|
+
this.min = '-999999999999999.9999';
|
|
34
|
+
//ControlValueAccessor implementations
|
|
35
|
+
this.propagateChange = (_) => { };
|
|
36
|
+
this.preventNegative = false;
|
|
37
|
+
const Options = {
|
|
38
|
+
digitGroupSeparator: ',',
|
|
39
|
+
decimalCharacter: '.',
|
|
40
|
+
decimalPlaces: this.decimalPlaces,
|
|
41
|
+
maximumValue: this.max,
|
|
42
|
+
minimumValue: this.min,
|
|
43
|
+
allowDecimalPadding: false,
|
|
44
|
+
showWarnings: false,
|
|
45
|
+
};
|
|
46
|
+
this.numericElement = new AutoNumeric(this.elementRef.nativeElement, null, Options);
|
|
47
|
+
}
|
|
48
|
+
ngOnInit() {
|
|
49
|
+
if (this.percentage == "") {
|
|
50
|
+
this.max = '100';
|
|
51
|
+
}
|
|
52
|
+
if (this.preventNegative) {
|
|
53
|
+
this.min = '0.00';
|
|
54
|
+
}
|
|
55
|
+
this.updateNumericSettings();
|
|
56
|
+
}
|
|
57
|
+
updateNumericSettings() {
|
|
58
|
+
const OptionsUpdate = {
|
|
59
|
+
maximumValue: this.max,
|
|
60
|
+
minimumValue: this.min,
|
|
61
|
+
readOnly: this.isElementDisabled(),
|
|
62
|
+
decimalPlaces: this.decimalPlaces,
|
|
63
|
+
modifyValueOnWheel: this.modifyValueOnWheel,
|
|
64
|
+
emptyInputBehavior: this.emptyInputBehavior
|
|
65
|
+
};
|
|
66
|
+
this.numericElement.update(OptionsUpdate);
|
|
67
|
+
}
|
|
68
|
+
onKeyUp() {
|
|
69
|
+
let number = this.numericElement.getNumber();
|
|
70
|
+
this.propagateChange(number);
|
|
71
|
+
}
|
|
72
|
+
isElementDisabled() {
|
|
73
|
+
let retVal = false;
|
|
74
|
+
const readonly = this.elementRef.nativeElement.readOnly;
|
|
75
|
+
// disabled element when @input() disabled set to true
|
|
76
|
+
this.elementRef.nativeElement.disabled = this.disabled;
|
|
77
|
+
//check whether element set to readOnly
|
|
78
|
+
if ((readonly === true) && !this.disabled) {
|
|
79
|
+
retVal = true;
|
|
80
|
+
}
|
|
81
|
+
return retVal;
|
|
82
|
+
}
|
|
83
|
+
writeValue(newValue) {
|
|
84
|
+
if (newValue != null) {
|
|
85
|
+
this.numericElement.set(newValue);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
registerOnChange(fn) {
|
|
89
|
+
this.propagateChange = fn;
|
|
90
|
+
}
|
|
91
|
+
registerOnTouched() { }
|
|
92
|
+
}
|
|
93
|
+
AutonumericDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AutonumericDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
94
|
+
AutonumericDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: AutonumericDirective, isStandalone: true, selector: "[autoNum]", inputs: { percentage: "percentage", preventNegative: "preventNegative", decimalPlaces: "decimalPlaces", modifyValueOnWheel: "modifyValueOnWheel", disabled: "disabled", _emptyInputBehavior: ["emptyInputBehavior", "_emptyInputBehavior"], _max: ["max", "_max"], _min: ["min", "_min"] }, host: { listeners: { "keyup": "onKeyUp()" } }, providers: [
|
|
95
|
+
{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => AutonumericDirective), multi: true }
|
|
96
|
+
], ngImport: i0 });
|
|
97
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: AutonumericDirective, decorators: [{
|
|
98
|
+
type: Directive,
|
|
99
|
+
args: [{
|
|
100
|
+
selector: '[autoNum]',
|
|
101
|
+
standalone: true,
|
|
102
|
+
providers: [
|
|
103
|
+
{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => AutonumericDirective), multi: true }
|
|
104
|
+
],
|
|
105
|
+
host: {
|
|
106
|
+
"(keyup)": "onKeyUp()"
|
|
107
|
+
}
|
|
108
|
+
}]
|
|
109
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { percentage: [{
|
|
110
|
+
type: Input
|
|
111
|
+
}], preventNegative: [{
|
|
112
|
+
type: Input
|
|
113
|
+
}], decimalPlaces: [{
|
|
114
|
+
type: Input
|
|
115
|
+
}], modifyValueOnWheel: [{
|
|
116
|
+
type: Input
|
|
117
|
+
}], disabled: [{
|
|
118
|
+
type: Input
|
|
119
|
+
}], _emptyInputBehavior: [{
|
|
120
|
+
type: Input,
|
|
121
|
+
args: ["emptyInputBehavior"]
|
|
122
|
+
}], _max: [{
|
|
123
|
+
type: Input,
|
|
124
|
+
args: ['max']
|
|
125
|
+
}], _min: [{
|
|
126
|
+
type: Input,
|
|
127
|
+
args: ['min']
|
|
128
|
+
}] } });
|
|
129
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b251bWVyaWMuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVhbHBvcy1ucG0vbmctZGVhbHBvcy1saWJyYXJ5L2RpcmVjdGl2ZXMvYXV0b251bWVyaWMvc3JjL2F1dG9udW1lcmljLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBYyxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekUsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sV0FBVyxNQUFNLGFBQWEsQ0FBQzs7QUFZdEMsTUFBTSxPQUFPLG9CQUFvQjtJQVMvQixJQUFpQyxtQkFBbUIsQ0FBQyxLQUFxRTtRQUN4SCxJQUFJLEtBQUssRUFBRTtZQUNULElBQUksQ0FBQyxrQkFBa0IsR0FBRyxLQUFLLENBQUM7WUFDaEMsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7U0FDOUI7SUFDSCxDQUFDO0lBR0QsSUFBa0IsSUFBSSxDQUFDLEtBQWE7UUFDbEMsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQztZQUNqQixJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztTQUM5QjtJQUNILENBQUM7SUFHRCxJQUFrQixJQUFJLENBQUMsS0FBYTtRQUNsQyxJQUFJLEtBQUssRUFBRTtZQUNULElBQUksQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDO1lBQ2pCLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1NBQzlCO0lBQ0gsQ0FBQztJQUtELFlBQW9CLFVBQXNCO1FBQXRCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFsQ2pDLGVBQVUsR0FBVyxFQUFFLENBQUM7UUFFeEIsa0JBQWEsR0FBVyxDQUFDLENBQUM7UUFDMUIsdUJBQWtCLEdBQVksSUFBSSxDQUFDO1FBQ25D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QUUsQ0FBQyxvQkFBb0IsQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7S0FDakc7MkZBS1Usb0JBQW9CO2tCQVZoQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxXQUFXO29CQUNyQixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsU0FBUyxFQUFFO3dCQUNULEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLHFCQUFxQixDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtxQkFDakc7b0JBQ0QsSUFBSSxFQUFFO3dCQUNKLFNBQVMsRUFBRSxXQUFXO3FCQUN2QjtpQkFDRjtpR0FFVSxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFJMkIsbUJBQW1CO3NCQUFuRCxLQUFLO3VCQUFDLG9CQUFvQjtnQkFRVCxJQUFJO3NCQUFyQixLQUFLO3VCQUFDLEtBQUs7Z0JBUU0sSUFBSTtzQkFBckIsS0FBSzt1QkFBQyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBJbnB1dCwgRWxlbWVudFJlZiwgZm9yd2FyZFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCBBdXRvTnVtZXJpYyBmcm9tICdhdXRvbnVtZXJpYyc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1thdXRvTnVtXScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHsgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEF1dG9udW1lcmljRGlyZWN0aXZlKSwgbXVsdGk6IHRydWUgfVxyXG4gIF0sXHJcbiAgaG9zdDoge1xyXG4gICAgXCIoa2V5dXApXCI6IFwib25LZXlVcCgpXCJcclxuICB9XHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBdXRvbnVtZXJpY0RpcmVjdGl2ZSBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcclxuICBASW5wdXQoKSBwZXJjZW50YWdlOiBzdHJpbmcgPSAnJztcclxuICBASW5wdXQoKSBwcmV2ZW50TmVnYXRpdmU6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgZGVjaW1hbFBsYWNlczogbnVtYmVyID0gNDtcclxuICBASW5wdXQoKSBtb2RpZnlWYWx1ZU9uV2hlZWw6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XHJcblxyXG4gIC8vaHR0cHM6Ly9kb2NzLmF1dG9udW1lcmljLm9yZy9Eb2N1bWVudGF0aW9uL2NvbmZpZ3VyYXRpb24lMjBvcHRpb25zL1xyXG4gIHByaXZhdGUgZW1wdHlJbnB1dEJlaGF2aW9yID0gJ2ZvY3VzJztcclxuICBASW5wdXQoXCJlbXB0eUlucHV0QmVoYXZpb3JcIikgc2V0IF9lbXB0eUlucHV0QmVoYXZpb3IodmFsdWU6ICdmb2N1cycgfCAncHJlc3MnIHwgJ2Fsd2F5cycgfCAnemVybycgfCAnbWluJyB8ICdtYXgnIHwgJ251bGwnKSB7XHJcbiAgICBpZiAodmFsdWUpIHtcclxuICAgICAgdGhpcy5lbXB0eUlucHV0QmVoYXZpb3IgPSB2YWx1ZTtcclxuICAgICAgdGhpcy51cGRhdGVOdW1lcmljU2V0dGluZ3MoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgbWF4OiBzdHJpbmcgPSAnOTk5OTk5OTk5OTk5OTk5Ljk5OTknO1xyXG4gIEBJbnB1dCgnbWF4Jykgc2V0IF9tYXgodmFsdWU6IHN0cmluZykge1xyXG4gICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgIHRoaXMubWF4ID0gdmFsdWU7XHJcbiAgICAgIHRoaXMudXBkYXRlTnVtZXJpY1NldHRpbmdzKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG1pbjogc3RyaW5nID0gJy05OTk5OTk5OTk5OTk5OTkuOTk5OSc7XHJcbiAgQElucHV0KCdtaW4nKSBzZXQgX21pbih2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICBpZiAodmFsdWUpIHtcclxuICAgICAgdGhpcy5taW4gPSB2YWx1ZTtcclxuICAgICAgdGhpcy51cGRhdGVOdW1lcmljU2V0dGluZ3MoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuICBwdWJsaWMgbnVtZXJpY0VsZW1lbnQ6IEF1dG9OdW1lcmljO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHtcclxuICAgIHRoaXMucHJldmVudE5lZ2F0aXZlID0gZmFsc2U7XHJcbiAgICBjb25zdCBPcHRpb25zID0ge1xyXG4gICAgICBkaWdpdEdyb3VwU2VwYXJhdG9yOiAnLCcsIC8vc2VwYXJhdG9yIG9mIG51bWJlclxyXG4gICAgICBkZWNpbWFsQ2hhcmFjdGVyOiAnLicsIC8vc2VtaWNvbG9uIHNlcGFyYXRvciByZXBsYWNlZCB3aXRoIHBvaW50IFxyXG4gICAgICBkZWNpbWFsUGxhY2VzOiB0aGlzLmRlY2ltYWxQbGFjZXMsIC8vIHRvdGFsIG9mIGRlY2ltYWwgYWZ0ZXIgc2VwYXJhdG9yIFxyXG4gICAgICBtYXhpbXVtVmFsdWU6IHRoaXMubWF4LCAvLyBtYXhpbXVtIG9mIG51bWJlclxyXG4gICAgICBtaW5pbXVtVmFsdWU6IHRoaXMubWluLCAvLyBtaW51bSBvZiBvZiBudW1iZXJcclxuICAgICAgYWxsb3dEZWNpbWFsUGFkZGluZzogZmFsc2UsXHJcbiAgICAgIHNob3dXYXJuaW5nczogZmFsc2UsXHJcbiAgICB9O1xyXG4gICAgdGhpcy5udW1lcmljRWxlbWVudCA9IG5ldyBBdXRvTnVtZXJpYyh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgbnVsbCwgT3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnBlcmNlbnRhZ2UgPT0gXCJcIikge1xyXG4gICAgICB0aGlzLm1heCA9ICcxMDAnO1xyXG5cclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5wcmV2ZW50TmVnYXRpdmUpIHtcclxuICAgICAgdGhpcy5taW4gPSAnMC4wMCc7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy51cGRhdGVOdW1lcmljU2V0dGluZ3MoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlTnVtZXJpY1NldHRpbmdzKCkge1xyXG4gICAgY29uc3QgT3B0aW9uc1VwZGF0ZSA9IHtcclxuICAgICAgbWF4aW11bVZhbHVlOiB0aGlzLm1heCwgLy8gbWF4aW11bSBvZiBudW1iZXJcclxuICAgICAgbWluaW11bVZhbHVlOiB0aGlzLm1pbiwgLy8gbWluaW11bSBvZiBudW1iZXIsXHJcbiAgICAgIHJlYWRPbmx5OiB0aGlzLmlzRWxlbWVudERpc2FibGVkKCksXHJcbiAgICAgIGRlY2ltYWxQbGFjZXM6IHRoaXMuZGVjaW1hbFBsYWNlcywgLy8gdG90YWwgb2YgZGVjaW1hbCBhZnRlciBzZXBhcmF0b3IgXHJcbiAgICAgIG1vZGlmeVZhbHVlT25XaGVlbDogdGhpcy5tb2RpZnlWYWx1ZU9uV2hlZWwsXHJcbiAgICAgIGVtcHR5SW5wdXRCZWhhdmlvcjogdGhpcy5lbXB0eUlucHV0QmVoYXZpb3JcclxuICAgIH07XHJcbiAgICB0aGlzLm51bWVyaWNFbGVtZW50LnVwZGF0ZShPcHRpb25zVXBkYXRlKTtcclxuICB9XHJcblxyXG4gIG9uS2V5VXAoKTogdm9pZCB7XHJcbiAgICBsZXQgbnVtYmVyID0gdGhpcy5udW1lcmljRWxlbWVudC5nZXROdW1iZXIoKTtcclxuICAgIHRoaXMucHJvcGFnYXRlQ2hhbmdlKG51bWJlcik7XHJcbiAgfVxyXG5cclxuICBpc0VsZW1lbnREaXNhYmxlZCgpOiBib29sZWFuIHtcclxuICAgIGxldCByZXRWYWwgPSBmYWxzZTtcclxuICAgIGNvbnN0IHJlYWRvbmx5ID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucmVhZE9ubHk7XHJcbiAgICAvLyBkaXNhYmxlZCBlbGVtZW50IHdoZW4gQGlucHV0KCkgZGlzYWJsZWQgc2V0IHRvIHRydWVcclxuICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmRpc2FibGVkID0gdGhpcy5kaXNhYmxlZDtcclxuXHJcbiAgICAvL2NoZWNrIHdoZXRoZXIgZWxlbWVudCBzZXQgdG8gcmVhZE9ubHlcclxuICAgIGlmICgocmVhZG9ubHkgPT09IHRydWUpICYmICF0aGlzLmRpc2FibGVkKSB7XHJcbiAgICAgIHJldFZhbCA9IHRydWU7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcmV0VmFsO1xyXG4gIH1cclxuXHJcbiAgLy9Db250cm9sVmFsdWVBY2Nlc3NvciBpbXBsZW1lbnRhdGlvbnNcclxuICBwcm9wYWdhdGVDaGFuZ2U6IEZ1bmN0aW9uID0gKF86IGFueSkgPT4geyB9O1xyXG4gIHdyaXRlVmFsdWUobmV3VmFsdWU6IG51bWJlcik6IHZvaWQge1xyXG4gICAgaWYgKG5ld1ZhbHVlICE9IG51bGwpIHtcclxuICAgICAgdGhpcy5udW1lcmljRWxlbWVudC5zZXQobmV3VmFsdWUpO1xyXG4gICAgfVxyXG4gIH1cclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBGdW5jdGlvbikge1xyXG4gICAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UgPSBmbjtcclxuICB9XHJcbiAgcmVnaXN0ZXJPblRvdWNoZWQoKTogdm9pZCB7IH1cclxuXHJcblxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class DealposComponent {
|
|
4
|
+
}
|
|
5
|
+
DealposComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DealposComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6
|
+
DealposComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: DealposComponent, selector: "lib-dealpos", ngImport: i0, template: `
|
|
7
|
+
<p>
|
|
8
|
+
dealpos works!
|
|
9
|
+
</p>
|
|
10
|
+
`, isInline: true });
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DealposComponent, decorators: [{
|
|
12
|
+
type: Component,
|
|
13
|
+
args: [{ selector: 'lib-dealpos', template: `
|
|
14
|
+
<p>
|
|
15
|
+
dealpos works!
|
|
16
|
+
</p>
|
|
17
|
+
` }]
|
|
18
|
+
}] });
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVhbHBvcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9kZWFscG9zLW5wbS9uZy1kZWFscG9zLWxpYnJhcnkvc3JjL2xpYi9kZWFscG9zLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVkxQyxNQUFNLE9BQU8sZ0JBQWdCOzs2R0FBaEIsZ0JBQWdCO2lHQUFoQixnQkFBZ0IsbURBUmpCOzs7O0dBSVQ7MkZBSVUsZ0JBQWdCO2tCQVY1QixTQUFTOytCQUNFLGFBQWEsWUFDYjs7OztHQUlUIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1kZWFscG9zJyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPHA+XHJcbiAgICAgIGRlYWxwb3Mgd29ya3MhXHJcbiAgICA8L3A+XHJcbiAgYCxcclxuICBzdHlsZXM6IFtcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEZWFscG9zQ29tcG9uZW50IHtcclxuXHJcbn1cclxuIl19
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { DealposComponent } from './dealpos.component';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class DealposModule {
|
|
5
|
+
}
|
|
6
|
+
DealposModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DealposModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
7
|
+
DealposModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: DealposModule, declarations: [DealposComponent], exports: [DealposComponent] });
|
|
8
|
+
DealposModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DealposModule });
|
|
9
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DealposModule, decorators: [{
|
|
10
|
+
type: NgModule,
|
|
11
|
+
args: [{
|
|
12
|
+
declarations: [
|
|
13
|
+
DealposComponent
|
|
14
|
+
],
|
|
15
|
+
imports: [],
|
|
16
|
+
exports: [
|
|
17
|
+
DealposComponent
|
|
18
|
+
]
|
|
19
|
+
}]
|
|
20
|
+
}] });
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVhbHBvcy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9kZWFscG9zLW5wbS9uZy1kZWFscG9zLWxpYnJhcnkvc3JjL2xpYi9kZWFscG9zLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQWN2RCxNQUFNLE9BQU8sYUFBYTs7MEdBQWIsYUFBYTsyR0FBYixhQUFhLGlCQVJ0QixnQkFBZ0IsYUFLaEIsZ0JBQWdCOzJHQUdQLGFBQWE7MkZBQWIsYUFBYTtrQkFWekIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osZ0JBQWdCO3FCQUNqQjtvQkFDRCxPQUFPLEVBQUUsRUFDUjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsZ0JBQWdCO3FCQUNqQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERlYWxwb3NDb21wb25lbnQgfSBmcm9tICcuL2RlYWxwb3MuY29tcG9uZW50JztcclxuXHJcblxyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIERlYWxwb3NDb21wb25lbnRcclxuICBdLFxyXG4gIGltcG9ydHM6IFtcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtcclxuICAgIERlYWxwb3NDb21wb25lbnRcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEZWFscG9zTW9kdWxlIHsgfVxyXG4iXX0=
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class DealposService {
|
|
4
|
+
constructor() { }
|
|
5
|
+
}
|
|
6
|
+
DealposService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DealposService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
7
|
+
DealposService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DealposService, providedIn: 'root' });
|
|
8
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: DealposService, decorators: [{
|
|
9
|
+
type: Injectable,
|
|
10
|
+
args: [{
|
|
11
|
+
providedIn: 'root'
|
|
12
|
+
}]
|
|
13
|
+
}], ctorParameters: function () { return []; } });
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVhbHBvcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVhbHBvcy1ucG0vbmctZGVhbHBvcy1saWJyYXJ5L3NyYy9saWIvZGVhbHBvcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzNDLE1BQU0sT0FBTyxjQUFjO0lBRXpCLGdCQUFnQixDQUFDOzsyR0FGTixjQUFjOytHQUFkLGNBQWMsY0FGYixNQUFNOzJGQUVQLGNBQWM7a0JBSDFCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgRGVhbHBvc1NlcnZpY2Uge1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVhbHBvcy1ucG0tbmctZGVhbHBvcy1saWJyYXJ5LXBpcGVzLWR1cmF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVhbHBvcy1ucG0vbmctZGVhbHBvcy1saWJyYXJ5L3BpcGVzL2R1cmF0aW9uL2RlYWxwb3MtbnBtLW5nLWRlYWxwb3MtbGlicmFyeS1waXBlcy1kdXJhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from "./src/duration-time.pipe";
|
|
2
|
+
export * from "./src/duration-days-hour.pipe";
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RlYWxwb3MtbnBtL25nLWRlYWxwb3MtbGlicmFyeS9waXBlcy9kdXJhdGlvbi9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsMEJBQTBCLENBQUE7QUFDeEMsY0FBYywrQkFBK0IsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL3NyYy9kdXJhdGlvbi10aW1lLnBpcGVcIlxyXG5leHBvcnQgKiBmcm9tIFwiLi9zcmMvZHVyYXRpb24tZGF5cy1ob3VyLnBpcGVcIiJdfQ==
|