ps-toolkit-ui 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/bundles/ps-toolkit-ui.umd.js +7344 -0
- package/bundles/ps-toolkit-ui.umd.js.map +1 -0
- package/bundles/ps-toolkit-ui.umd.min.js +2 -0
- package/bundles/ps-toolkit-ui.umd.min.js.map +1 -0
- package/esm2015/lib/classes/enum.class.js +162 -0
- package/esm2015/lib/classes/form.class.js +467 -0
- package/esm2015/lib/classes/helper.class.js +275 -0
- package/esm2015/lib/classes/lang.class.js +32 -0
- package/esm2015/lib/classes/login.class.js +22 -0
- package/esm2015/lib/classes/modal.class.js +52 -0
- package/esm2015/lib/classes/permission.class.js +29 -0
- package/esm2015/lib/classes/request.class.js +255 -0
- package/esm2015/lib/classes/safestyle.class.js +15 -0
- package/esm2015/lib/classes/sidebar.class.js +14 -0
- package/esm2015/lib/classes/steps.class.js +20 -0
- package/esm2015/lib/classes/string.class.js +203 -0
- package/esm2015/lib/classes/table.class.js +278 -0
- package/esm2015/lib/components/accordion/accordion.component.js +45 -0
- package/esm2015/lib/components/alert/alert.component.js +41 -0
- package/esm2015/lib/components/base.component.js +55 -0
- package/esm2015/lib/components/confirm/confirm.component.js +50 -0
- package/esm2015/lib/components/footer/footer.component.js +23 -0
- package/esm2015/lib/components/form/bank-card/form.bank-card.component.js +148 -0
- package/esm2015/lib/components/form/button/form.button.component.js +68 -0
- package/esm2015/lib/components/form/car/form.car.component.js +84 -0
- package/esm2015/lib/components/form/car/search/form.car.search.component.js +173 -0
- package/esm2015/lib/components/form/checkbox/form.checkbox.component.js +66 -0
- package/esm2015/lib/components/form/date/form.date.component.js +256 -0
- package/esm2015/lib/components/form/datetime/form.datetime.component.js +104 -0
- package/esm2015/lib/components/form/file/form.file.component.js +133 -0
- package/esm2015/lib/components/form/finger/form.finger.component.js +138 -0
- package/esm2015/lib/components/form/icon/form.icon.component.js +76 -0
- package/esm2015/lib/components/form/index/form.component.js +48 -0
- package/esm2015/lib/components/form/label/form.label.component.js +31 -0
- package/esm2015/lib/components/form/plaque/form.plaque.component.js +176 -0
- package/esm2015/lib/components/form/plaque/select/form.plaque.select.component.js +390 -0
- package/esm2015/lib/components/form/radio/form.radio.component.js +79 -0
- package/esm2015/lib/components/form/select/form.select.component.js +369 -0
- package/esm2015/lib/components/form/select/item/form.select.item.component.js +43 -0
- package/esm2015/lib/components/form/table/form.table.component.js +98 -0
- package/esm2015/lib/components/form/textarea/form.textarea.component.js +78 -0
- package/esm2015/lib/components/form/textbox/form.textbox.component.js +186 -0
- package/esm2015/lib/components/form/time/form.time.component.js +145 -0
- package/esm2015/lib/components/form/tree/form.tree.component.js +93 -0
- package/esm2015/lib/components/form/tree/item/form.tree.item.component.js +48 -0
- package/esm2015/lib/components/header/header.component.js +28 -0
- package/esm2015/lib/components/header/sub/sub.header.component.js +14 -0
- package/esm2015/lib/components/layout/layout.component.js +23 -0
- package/esm2015/lib/components/loading/loading.component.js +22 -0
- package/esm2015/lib/components/login/login.component.js +145 -0
- package/esm2015/lib/components/modal/modal.component.js +25 -0
- package/esm2015/lib/components/notfound/notfound.component.js +29 -0
- package/esm2015/lib/components/notification/notification.component.js +14 -0
- package/esm2015/lib/components/sidebar/item/sidebar.item.component.js +53 -0
- package/esm2015/lib/components/sidebar/sidebar.component.js +65 -0
- package/esm2015/lib/components/steps/steps.component.js +51 -0
- package/esm2015/lib/components/table/loading/table.loading.component.js +17 -0
- package/esm2015/lib/components/table/pagination/table.pagination.component.js +84 -0
- package/esm2015/lib/components/table/report/table.report.component.js +245 -0
- package/esm2015/lib/components/table/row/table.row.component.js +274 -0
- package/esm2015/lib/components/table/table.component.js +207 -0
- package/esm2015/lib/components/tooltip/tooltip.component.js +19 -0
- package/esm2015/lib/ps-toolkit-ui.module.js +89 -0
- package/esm2015/lib/services/config.service.js +14 -0
- package/esm2015/ps-toolkit-ui.js +16 -0
- package/esm2015/public-api.js +52 -0
- package/fesm2015/ps-toolkit-ui.js +6277 -0
- package/fesm2015/ps-toolkit-ui.js.map +1 -0
- package/lib/classes/enum.class.d.ts +137 -0
- package/lib/classes/form.class.d.ts +173 -0
- package/lib/classes/helper.class.d.ts +26 -0
- package/lib/classes/lang.class.d.ts +5 -0
- package/lib/classes/login.class.d.ts +17 -0
- package/lib/classes/modal.class.d.ts +19 -0
- package/lib/classes/permission.class.d.ts +19 -0
- package/lib/classes/request.class.d.ts +12 -0
- package/lib/classes/safestyle.class.d.ts +7 -0
- package/lib/classes/sidebar.class.d.ts +11 -0
- package/lib/classes/steps.class.d.ts +17 -0
- package/lib/classes/string.class.d.ts +201 -0
- package/lib/classes/table.class.d.ts +67 -0
- package/lib/components/accordion/accordion.component.d.ts +7 -0
- package/lib/components/alert/alert.component.d.ts +10 -0
- package/lib/components/base.component.d.ts +12 -0
- package/lib/components/confirm/confirm.component.d.ts +14 -0
- package/lib/components/footer/footer.component.d.ts +6 -0
- package/lib/components/form/bank-card/form.bank-card.component.d.ts +22 -0
- package/lib/components/form/button/form.button.component.d.ts +15 -0
- package/lib/components/form/car/form.car.component.d.ts +16 -0
- package/lib/components/form/car/search/form.car.search.component.d.ts +18 -0
- package/lib/components/form/checkbox/form.checkbox.component.d.ts +14 -0
- package/lib/components/form/date/form.date.component.d.ts +41 -0
- package/lib/components/form/datetime/form.datetime.component.d.ts +13 -0
- package/lib/components/form/file/form.file.component.d.ts +17 -0
- package/lib/components/form/finger/form.finger.component.d.ts +15 -0
- package/lib/components/form/icon/form.icon.component.d.ts +15 -0
- package/lib/components/form/index/form.component.d.ts +10 -0
- package/lib/components/form/label/form.label.component.d.ts +8 -0
- package/lib/components/form/plaque/form.plaque.component.d.ts +22 -0
- package/lib/components/form/plaque/select/form.plaque.select.component.d.ts +36 -0
- package/lib/components/form/radio/form.radio.component.d.ts +13 -0
- package/lib/components/form/select/form.select.component.d.ts +39 -0
- package/lib/components/form/select/item/form.select.item.component.d.ts +12 -0
- package/lib/components/form/table/form.table.component.d.ts +9 -0
- package/lib/components/form/textarea/form.textarea.component.d.ts +13 -0
- package/lib/components/form/textbox/form.textbox.component.d.ts +20 -0
- package/lib/components/form/time/form.time.component.d.ts +25 -0
- package/lib/components/form/tree/form.tree.component.d.ts +16 -0
- package/lib/components/form/tree/item/form.tree.item.component.d.ts +17 -0
- package/lib/components/header/header.component.d.ts +7 -0
- package/lib/components/header/sub/sub.header.component.d.ts +3 -0
- package/lib/components/layout/layout.component.d.ts +6 -0
- package/lib/components/loading/loading.component.d.ts +5 -0
- package/lib/components/login/login.component.d.ts +13 -0
- package/lib/components/modal/modal.component.d.ts +9 -0
- package/lib/components/notfound/notfound.component.d.ts +7 -0
- package/lib/components/notification/notification.component.d.ts +3 -0
- package/lib/components/sidebar/item/sidebar.item.component.d.ts +14 -0
- package/lib/components/sidebar/sidebar.component.d.ts +18 -0
- package/lib/components/steps/steps.component.d.ts +10 -0
- package/lib/components/table/loading/table.loading.component.d.ts +5 -0
- package/lib/components/table/pagination/table.pagination.component.d.ts +15 -0
- package/lib/components/table/report/table.report.component.d.ts +34 -0
- package/lib/components/table/row/table.row.component.d.ts +36 -0
- package/lib/components/table/table.component.d.ts +39 -0
- package/lib/components/tooltip/tooltip.component.d.ts +5 -0
- package/lib/ps-toolkit-ui.module.d.ts +4 -0
- package/lib/services/config.service.d.ts +6 -0
- package/package.json +22 -0
- package/ps-toolkit-ui.d.ts +15 -0
- package/ps-toolkit-ui.metadata.json +1 -0
- package/public-api.d.ts +48 -0
- package/src/assets/fonts/Vazir.eot +0 -0
- package/src/assets/fonts/Vazir.ttf +0 -0
- package/src/assets/fonts/Vazir.woff +0 -0
- package/src/assets/fonts/Vazir.woff2 +0 -0
- package/src/assets/fonts/VazirBlack.eot +0 -0
- package/src/assets/fonts/VazirBlack.ttf +0 -0
- package/src/assets/fonts/VazirBlack.woff +0 -0
- package/src/assets/fonts/VazirBlack.woff2 +0 -0
- package/src/assets/fonts/VazirBold.eot +0 -0
- package/src/assets/fonts/VazirBold.ttf +0 -0
- package/src/assets/fonts/VazirBold.woff +0 -0
- package/src/assets/fonts/VazirBold.woff2 +0 -0
- package/src/assets/fonts/VazirLight.eot +0 -0
- package/src/assets/fonts/VazirLight.ttf +0 -0
- package/src/assets/fonts/VazirLight.woff +0 -0
- package/src/assets/fonts/VazirLight.woff2 +0 -0
- package/src/assets/fonts/VazirMedium.eot +0 -0
- package/src/assets/fonts/VazirMedium.ttf +0 -0
- package/src/assets/fonts/VazirMedium.woff +0 -0
- package/src/assets/fonts/VazirMedium.woff2 +0 -0
- package/src/assets/fonts/VazirThin.eot +0 -0
- package/src/assets/fonts/VazirThin.ttf +0 -0
- package/src/assets/fonts/VazirThin.woff +0 -0
- package/src/assets/fonts/VazirThin.woff2 +0 -0
- package/src/assets/images/partsilicon.png +0 -0
- package/src/assets/images/plaque.png +0 -0
- package/src/assets/images/plaque_m.png +0 -0
- package/src/assets/scripts/base.js +26 -0
- package/src/assets/styles/base.css +259 -0
|
@@ -0,0 +1,275 @@
|
|
|
1
|
+
import { InputError } from './enum.class';
|
|
2
|
+
import * as moment from 'jalali-moment';
|
|
3
|
+
import * as $ from 'jquery';
|
|
4
|
+
// @dynamic
|
|
5
|
+
export class HelperClass {
|
|
6
|
+
static getLabel(inp) {
|
|
7
|
+
if (inp.error === InputError.Required) {
|
|
8
|
+
return inp.l('FormErrorRequired', inp.name);
|
|
9
|
+
}
|
|
10
|
+
else if (inp.error === InputError.Invalid) {
|
|
11
|
+
return inp.l('FormErrorInvalid', inp.name);
|
|
12
|
+
}
|
|
13
|
+
else if (inp.error === InputError.Length) {
|
|
14
|
+
return inp.l('FormErrorLength', [inp.name, inp.minLength]);
|
|
15
|
+
}
|
|
16
|
+
else if (inp.error === InputError.MinLength) {
|
|
17
|
+
return inp.l('FormErrorMinLength', [inp.name, inp.minLength]);
|
|
18
|
+
}
|
|
19
|
+
else if (inp.error === InputError.MaxLength) {
|
|
20
|
+
return inp.l('FormErrorMaxLength', [inp.name, inp.maxLength]);
|
|
21
|
+
}
|
|
22
|
+
else if (inp.error === InputError.MinAmount) {
|
|
23
|
+
return inp.l('FormErrorMinAmount', [inp.name, inp.minLength]);
|
|
24
|
+
}
|
|
25
|
+
else if (inp.error === InputError.MaxAmount) {
|
|
26
|
+
return inp.l('FormErrorMaxAmount', [inp.name, inp.maxLength]);
|
|
27
|
+
}
|
|
28
|
+
else if (inp.error === InputError.Expired) {
|
|
29
|
+
return inp.l('FormErrorExpired', inp.name);
|
|
30
|
+
}
|
|
31
|
+
else if (inp.error === InputError.Wrong) {
|
|
32
|
+
return inp.l('FormErrorWrong', inp.name);
|
|
33
|
+
}
|
|
34
|
+
else if (inp.error === InputError.Error) {
|
|
35
|
+
return inp.l('FormError', inp.name);
|
|
36
|
+
}
|
|
37
|
+
else if (inp.error === InputError.NotMatch) {
|
|
38
|
+
return inp.l('FormErrorNotMatch', inp.match.name);
|
|
39
|
+
}
|
|
40
|
+
else if (inp.error === InputError.Exist) {
|
|
41
|
+
return inp.l('FormErrorExist', inp.name);
|
|
42
|
+
}
|
|
43
|
+
else if (inp.error === InputError.NotExist) {
|
|
44
|
+
return inp.l('FormErrorNotExist', inp.name);
|
|
45
|
+
}
|
|
46
|
+
else if (inp.error === InputError.NotAllowed) {
|
|
47
|
+
return inp.l('FormErrorNotAllowed', [inp.name, inp.allowed.join(', ')]);
|
|
48
|
+
}
|
|
49
|
+
else if (inp.error === InputError.MaxContent) {
|
|
50
|
+
return inp.l('FormErrorMaxContent', [inp.name, inp.maxLength]);
|
|
51
|
+
}
|
|
52
|
+
else if (inp.error === InputError.Upload) {
|
|
53
|
+
return inp.l('FormErrorUpload', inp.name);
|
|
54
|
+
}
|
|
55
|
+
const desc = inp.description !== null ? ' (' + inp.l(inp.description) + ')' : '';
|
|
56
|
+
return inp.l(inp.name) + desc;
|
|
57
|
+
}
|
|
58
|
+
static nationalCodeValid(c) {
|
|
59
|
+
if (!RegExp(/^\d{10}$/).test(c) || RegExp(/^(.)\1+$/).test(c)) {
|
|
60
|
+
return false;
|
|
61
|
+
}
|
|
62
|
+
const check = parseInt(c[9], 10);
|
|
63
|
+
let sum = 0;
|
|
64
|
+
for (let i = 0; i < 9; ++i) {
|
|
65
|
+
sum += parseInt(c[i], 10) * (10 - i);
|
|
66
|
+
}
|
|
67
|
+
sum %= 11;
|
|
68
|
+
return (sum < 2 && check === sum) || (sum >= 2 && check + sum === 11);
|
|
69
|
+
}
|
|
70
|
+
static iso7064Mod97_10(iban) {
|
|
71
|
+
let remainder = iban;
|
|
72
|
+
while (remainder.length > 2) {
|
|
73
|
+
const block = remainder.slice(0, 9);
|
|
74
|
+
remainder = parseInt(block, 10) % 97 + remainder.slice(block.length);
|
|
75
|
+
}
|
|
76
|
+
return parseInt(remainder, 10) % 97;
|
|
77
|
+
}
|
|
78
|
+
static shebaValid(str) {
|
|
79
|
+
const pattern = /IR[0-9]{24}/;
|
|
80
|
+
if (!str.startWith('IR')) {
|
|
81
|
+
str = 'IR' + str;
|
|
82
|
+
}
|
|
83
|
+
if (str.length !== 26) {
|
|
84
|
+
return false;
|
|
85
|
+
}
|
|
86
|
+
if (!pattern.test(str)) {
|
|
87
|
+
return false;
|
|
88
|
+
}
|
|
89
|
+
let newStr = str.substr(4);
|
|
90
|
+
const d1 = str.charCodeAt(0) - 65 + 10;
|
|
91
|
+
const d2 = str.charCodeAt(1) - 65 + 10;
|
|
92
|
+
newStr += d1.toString() + d2.toString() + str.substr(2, 2);
|
|
93
|
+
return this.iso7064Mod97_10(newStr) === 1;
|
|
94
|
+
}
|
|
95
|
+
static postalCodeValid(c) {
|
|
96
|
+
return RegExp(/^\b(?!(\d)\1{3})[13-9]{4}[1346-9][013-9]{5}\b$/).test(c);
|
|
97
|
+
}
|
|
98
|
+
static random(length, upper = true, lower = true, num = true) {
|
|
99
|
+
let result = '';
|
|
100
|
+
const characters = `${upper ? 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' : ''}${lower ? 'abcdefghijklmnopqrstuvwxyz' : ''}${num ? '123456789' : ''}`;
|
|
101
|
+
const charactersLength = characters.length;
|
|
102
|
+
for (let i = 0; i < length; i++) {
|
|
103
|
+
result += characters.charAt(Math.floor(Math.random() * charactersLength));
|
|
104
|
+
}
|
|
105
|
+
return result;
|
|
106
|
+
}
|
|
107
|
+
static setCookie(name, value, days) {
|
|
108
|
+
let expires = '';
|
|
109
|
+
if (days) {
|
|
110
|
+
const date = new Date();
|
|
111
|
+
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
|
|
112
|
+
expires = '; expires=' + date.toUTCString();
|
|
113
|
+
}
|
|
114
|
+
document.cookie = name + '=' + (value || '') + expires + '; path=/';
|
|
115
|
+
}
|
|
116
|
+
static getCookie(name) {
|
|
117
|
+
const nameEQ = name + '=';
|
|
118
|
+
const ca = document.cookie.split(';');
|
|
119
|
+
for (let c of ca) {
|
|
120
|
+
while (c.charAt(0) === ' ') {
|
|
121
|
+
c = c.substring(1, c.length);
|
|
122
|
+
}
|
|
123
|
+
if (c.indexOf(nameEQ) === 0) {
|
|
124
|
+
return c.substring(nameEQ.length, c.length);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
return null;
|
|
128
|
+
}
|
|
129
|
+
static eraseCookie(name) {
|
|
130
|
+
document.cookie.split(';')
|
|
131
|
+
.forEach((c) => { document.cookie = c.replace(/^ +/, '').replace(/=.*/, '=;expires=' + new Date().toUTCString() + ';path=/'); });
|
|
132
|
+
}
|
|
133
|
+
static getDateDif(l, dt) {
|
|
134
|
+
const d = parseInt(dt.substring(6, dt.length - 2), 10);
|
|
135
|
+
const now = moment.now();
|
|
136
|
+
const dif = (now - d) / 1000;
|
|
137
|
+
const h = Math.floor(dif / 3600);
|
|
138
|
+
const m = Math.floor(dif % 3600 / 60);
|
|
139
|
+
if (h < 24) {
|
|
140
|
+
let r = h > 0 ? l('HourP', h.toString()) : '';
|
|
141
|
+
r += r !== '' && m > 0 ? l('And') : '';
|
|
142
|
+
r += m > 0 ? l('MinuteP', m.toString()) : '';
|
|
143
|
+
r += r !== '' ? '' : l('AFew');
|
|
144
|
+
r += ' ' + l('Ago');
|
|
145
|
+
return r;
|
|
146
|
+
}
|
|
147
|
+
return '<div class="ltr">' + moment(d).locale('fa').format('jYYYY/jMM/jDD HH:mm') + '</div>';
|
|
148
|
+
}
|
|
149
|
+
static getRowEnum(l, e, dt) {
|
|
150
|
+
const v = e.find(x => x.Value === dt);
|
|
151
|
+
return `<span class="status ${v.Class}">` + l(v.Name) + '</span>';
|
|
152
|
+
}
|
|
153
|
+
static getDateRemain(l, dt) {
|
|
154
|
+
const d = parseInt(dt.substring(6, dt.length - 2), 10);
|
|
155
|
+
const now = moment.now();
|
|
156
|
+
const dif = (d - now) / 1000;
|
|
157
|
+
if (dif <= 0) {
|
|
158
|
+
return l('Ended');
|
|
159
|
+
}
|
|
160
|
+
const h = Math.floor(dif / 3600);
|
|
161
|
+
const m = Math.floor(dif % 3600 / 60);
|
|
162
|
+
if (h < 24) {
|
|
163
|
+
let r = h > 0 ? l('HourP', h.toString()) : '';
|
|
164
|
+
r += r !== '' && m > 0 ? l('And') : '';
|
|
165
|
+
r += m > 0 ? l('MinuteP', m.toString()) : '';
|
|
166
|
+
r += r !== '' ? '' : l('AFew');
|
|
167
|
+
r += ' ' + l('Later');
|
|
168
|
+
return r;
|
|
169
|
+
}
|
|
170
|
+
return '<div class="ltr">' + moment(d).locale('fa').format('jYYYY/jMM/jDD HH:mm') + '</div>';
|
|
171
|
+
}
|
|
172
|
+
static getDate(dt) {
|
|
173
|
+
try {
|
|
174
|
+
if (dt === null) {
|
|
175
|
+
return '';
|
|
176
|
+
}
|
|
177
|
+
const d = parseInt(dt.substring(6, dt.length - 2), 10);
|
|
178
|
+
return moment(d).locale('fa').format('jYYYY/jMM/jDD');
|
|
179
|
+
}
|
|
180
|
+
catch (e) {
|
|
181
|
+
return dt;
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
static getTime(dt) {
|
|
185
|
+
try {
|
|
186
|
+
if (dt === null) {
|
|
187
|
+
return '';
|
|
188
|
+
}
|
|
189
|
+
return `${(dt.Hours > 9 ? dt.Hours : `0${dt.Hours}`)}:${(dt.Minutes > 9 ? dt.Minutes : `0${dt.Minutes}`)}`;
|
|
190
|
+
}
|
|
191
|
+
catch (e) {
|
|
192
|
+
return dt;
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
static getDateTime(dt) {
|
|
196
|
+
if (dt === null) {
|
|
197
|
+
return '';
|
|
198
|
+
}
|
|
199
|
+
const d = parseInt(dt.substring(6, dt.length - 2), 10);
|
|
200
|
+
return moment(d).locale('fa').format('jYYYY/jMM/jDD HH:mm');
|
|
201
|
+
}
|
|
202
|
+
static getFileSize(bytes) {
|
|
203
|
+
const suffix = ['B', 'KB', 'MB', 'GB', 'TB'];
|
|
204
|
+
let dblSByte = bytes;
|
|
205
|
+
let i = 0;
|
|
206
|
+
for (; i < suffix.length && bytes >= 1024; i++, bytes /= 1024) {
|
|
207
|
+
dblSByte = bytes / 1024.0;
|
|
208
|
+
}
|
|
209
|
+
return `${dblSByte.toLocaleString('en-US', {
|
|
210
|
+
minimumFractionDigits: 0,
|
|
211
|
+
maximumFractionDigits: 1,
|
|
212
|
+
})} ${suffix[i]}`;
|
|
213
|
+
}
|
|
214
|
+
static getPDate(l, s) {
|
|
215
|
+
return s.replace(/Hour/g, l('Hour'))
|
|
216
|
+
.replace(/LessThanMinute/g, l('LessThanMinute'))
|
|
217
|
+
.replace(/Minute/g, l('Minute'))
|
|
218
|
+
.replace(/And/g, l('And'))
|
|
219
|
+
.replace(/AFew/g, l('AFew'))
|
|
220
|
+
.replace(/Finished/g, l('Finished'))
|
|
221
|
+
.replace(/Day/g, l('Day'))
|
|
222
|
+
.replace(/Later/g, l('Later'))
|
|
223
|
+
.replace(/Ago/g, l('Ago'));
|
|
224
|
+
}
|
|
225
|
+
static clone(v) {
|
|
226
|
+
if (v == null) {
|
|
227
|
+
return;
|
|
228
|
+
}
|
|
229
|
+
const copy = new v.constructor();
|
|
230
|
+
Object.assign(copy, v);
|
|
231
|
+
return copy;
|
|
232
|
+
}
|
|
233
|
+
static cloneJson(inp) {
|
|
234
|
+
return JSON.parse(JSON.stringify(inp));
|
|
235
|
+
}
|
|
236
|
+
static getName(n) {
|
|
237
|
+
return n.replace(/ک/g, 'ك').replace(/ی/g, 'ي').replace(/آ/g, 'آ');
|
|
238
|
+
}
|
|
239
|
+
static addNotification(m) {
|
|
240
|
+
const id = HelperClass.random(20);
|
|
241
|
+
// tslint:disable-next-line
|
|
242
|
+
$('#Notifications').append('<div id="' + id + '" class="con"><div class="item"><i class="fas fa-times"></i><div>' + m + '</div></div></div>');
|
|
243
|
+
setTimeout(() => {
|
|
244
|
+
const d = $('#' + id);
|
|
245
|
+
d.fadeOut(300, () => {
|
|
246
|
+
d.remove();
|
|
247
|
+
});
|
|
248
|
+
}, 5000);
|
|
249
|
+
}
|
|
250
|
+
static checkCartDigit(code) {
|
|
251
|
+
const l = code.length;
|
|
252
|
+
if (l < 16 || parseInt(code.substr(1, 10), 10) === 0 ||
|
|
253
|
+
parseInt(code.substr(10, 6), 10) === 0) {
|
|
254
|
+
return false;
|
|
255
|
+
}
|
|
256
|
+
let s = 0;
|
|
257
|
+
for (let i = 0; i < 16; i++) {
|
|
258
|
+
const k = i % 2 === 0 ? 2 : 1;
|
|
259
|
+
const d = parseInt(code.substr(i, 1), 10) * k;
|
|
260
|
+
s += d > 9 ? d - 9 : d;
|
|
261
|
+
}
|
|
262
|
+
return s % 10 === 0;
|
|
263
|
+
}
|
|
264
|
+
static getData(key, state, parent) {
|
|
265
|
+
const data = [];
|
|
266
|
+
if (parent && parent.snapshot.data && parent.snapshot.data[key]) {
|
|
267
|
+
data.push(parent.snapshot.data[key]);
|
|
268
|
+
}
|
|
269
|
+
if (state && parent) {
|
|
270
|
+
data.push(...this.getData(key, state, state.firstChild(parent)));
|
|
271
|
+
}
|
|
272
|
+
return data;
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVyLmNsYXNzLmpzIiwic291cmNlUm9vdCI6IkQ6L1Byb2plY3RzL1BzVG9vbGtpdC9VSS9wcm9qZWN0cy9wcy10b29sa2l0LXVpL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9jbGFzc2VzL2hlbHBlci5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBRXhDLE9BQU8sS0FBSyxNQUFNLE1BQU0sZUFBZSxDQUFDO0FBQ3hDLE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBRTVCLFdBQVc7QUFDWCxNQUFNLE9BQU8sV0FBVztJQUN0QixNQUFNLENBQUMsUUFBUSxDQUFDLEdBQWU7UUFDN0IsSUFBSSxHQUFHLENBQUMsS0FBSyxLQUFLLFVBQVUsQ0FBQyxRQUFRLEVBQUU7WUFDckMsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM3QzthQUFNLElBQUksR0FBRyxDQUFDLEtBQUssS0FBSyxVQUFVLENBQUMsT0FBTyxFQUFFO1lBQzNDLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDNUM7YUFBTSxJQUFJLEdBQUcsQ0FBQyxLQUFLLEtBQUssVUFBVSxDQUFDLE1BQU0sRUFBRTtZQUMxQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1NBQzVEO2FBQU0sSUFBSSxHQUFHLENBQUMsS0FBSyxLQUFLLFVBQVUsQ0FBQyxTQUFTLEVBQUU7WUFDN0MsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLG9CQUFvQixFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztTQUMv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QVUsQ0FBQyxDQUFDLEVBQUUsRUFBVTtRQUM3QixNQUFNLENBQUMsR0FBRyxRQUFRLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUN2RCxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDekIsTUFBTSxHQUFHLEdBQUcsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDO1FBQzdCLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxDQUFDO1FBQ2pDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLElBQUksR0FBRyxFQUFFLENBQUMsQ0FBQztRQUN0QyxJQUFJLENBQUMsR0FBRyxFQUFFLEVBQ1Y7WUFDRSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDOUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDdkMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUM3QyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDL0IsQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLENB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QUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7U0FDdEM7UUFFRCxJQUFJLEtBQUssSUFBSSxNQUFNLEVBQUU7WUFDbkIsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNsRTtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbnB1dEVycm9yfSBmcm9tICcuL2VudW0uY2xhc3MnO1xyXG5pbXBvcnQge0lucHV0Q2xhc3N9IGZyb20gJy4vZm9ybS5jbGFzcyc7XHJcbmltcG9ydCAqIGFzIG1vbWVudCBmcm9tICdqYWxhbGktbW9tZW50JztcclxuaW1wb3J0ICogYXMgJCBmcm9tICdqcXVlcnknO1xyXG5cclxuLy8gQGR5bmFtaWNcclxuZXhwb3J0IGNsYXNzIEhlbHBlckNsYXNzIHtcclxuICBzdGF0aWMgZ2V0TGFiZWwoaW5wOiBJbnB1dENsYXNzKTogc3RyaW5nIHtcclxuICAgIGlmIChpbnAuZXJyb3IgPT09IElucHV0RXJyb3IuUmVxdWlyZWQpIHtcclxuICAgICAgcmV0dXJuIGlucC5sKCdGb3JtRXJyb3JSZXF1aXJlZCcsIGlucC5uYW1lKTtcclxuICAgIH0gZWxzZSBpZiAoaW5wLmVycm9yID09PSBJbnB1dEVycm9yLkludmFsaWQpIHtcclxuICAgICAgcmV0dXJuIGlucC5sKCdGb3JtRXJyb3JJbnZhbGlkJywgaW5wLm5hbWUpO1xyXG4gICAgfSBlbHNlIGlmIChpbnAuZXJyb3IgPT09IElucHV0RXJyb3IuTGVuZ3RoKSB7XHJcbiAgICAgIHJldHVybiBpbnAubCgnRm9ybUVycm9yTGVuZ3RoJywgW2lucC5uYW1lLCBpbnAubWluTGVuZ3RoXSk7XHJcbiAgICB9IGVsc2UgaWYgKGlucC5lcnJvciA9PT0gSW5wdXRFcnJvci5NaW5MZW5ndGgpIHtcclxuICAgICAgcmV0dXJuIGlucC5sKCdGb3JtRXJyb3JNaW5MZW5ndGgnLCBbaW5wLm5hbWUsIGlucC5taW5MZW5ndGhdKTtcclxuICAgIH0gZWxzZSBpZiAoaW5wLmVycm9yID09PSBJbnB1dEVycm9yLk1heExlbmd0aCkge1xyXG4gICAgICByZXR1cm4gaW5wLmwoJ0Zvcm1FcnJvck1heExlbmd0aCcsIFtpbnAubmFtZSwgaW5wLm1heExlbmd0aF0pO1xyXG4gICAgfSBlbHNlIGlmIChpbnAuZXJyb3IgPT09IElucHV0RXJyb3IuTWluQW1vdW50KSB7XHJcbiAgICAgIHJldHVybiBpbnAubCgnRm9ybUVycm9yTWluQW1vdW50JywgW2lucC5uYW1lLCBpbnAubWluTGVuZ3RoXSk7XHJcbiAgICB9IGVsc2UgaWYgKGlucC5lcnJvciA9PT0gSW5wdXRFcnJvci5NYXhBbW91bnQpIHtcclxuICAgICAgcmV0dXJuIGlucC5sKCdGb3JtRXJyb3JNYXhBbW91bnQnLCBbaW5wLm5hbWUsIGlucC5tYXhMZW5ndGhdKTtcclxuICAgIH0gZWxzZSBpZiAoaW5wLmVycm9yID09PSBJbnB1dEVycm9yLkV4cGlyZWQpIHtcclxuICAgICAgcmV0dXJuIGlucC5sKCdGb3JtRXJyb3JFeHBpcmVkJywgaW5wLm5hbWUpO1xyXG4gICAgfSBlbHNlIGlmIChpbnAuZXJyb3IgPT09IElucHV0RXJyb3IuV3JvbmcpIHtcclxuICAgICAgcmV0dXJuIGlucC5sKCdGb3JtRXJyb3JXcm9uZycsIGlucC5uYW1lKTtcclxuICAgIH0gZWxzZSBpZiAoaW5wLmVycm9yID09PSBJbnB1dEVycm9yLkVycm9yKSB7XHJcbiAgICAgIHJldHVybiBpbnAubCgnRm9ybUVycm9yJywgaW5wLm5hbWUpO1xyXG4gICAgfSBlbHNlIGlmIChpbnAuZXJyb3IgPT09IElucHV0RXJyb3IuTm90TWF0Y2gpIHtcclxuICAgICAgcmV0dXJuIGlucC5sKCdGb3JtRXJyb3JOb3RNYXRjaCcsIGlucC5tYXRjaC5uYW1lKTtcclxuICAgIH0gZWxzZSBpZiAoaW5wLmVycm9yID09PSBJbnB1dEVycm9yLkV4aXN0KSB7XHJcbiAgICAgIHJldHVybiBpbnAubCgnRm9ybUVycm9yRXhpc3QnLCBpbnAubmFtZSk7XHJcbiAgICB9IGVsc2UgaWYgKGlucC5lcnJvciA9PT0gSW5wdXRFcnJvci5Ob3RFeGlzdCkge1xyXG4gICAgICByZXR1cm4gaW5wLmwoJ0Zvcm1FcnJvck5vdEV4aXN0JywgaW5wLm5hbWUpO1xyXG4gICAgfSBlbHNlIGlmIChpbnAuZXJyb3IgPT09IElucHV0RXJyb3IuTm90QWxsb3dlZCkge1xyXG4gICAgICByZXR1cm4gaW5wLmwoJ0Zvcm1FcnJvck5vdEFsbG93ZWQnLCBbaW5wLm5hbWUsIGlucC5hbGxvd2VkLmpvaW4oJywgJyldKTtcclxuICAgIH0gZWxzZSBpZiAoaW5wLmVycm9yID09PSBJbnB1dEVycm9yLk1heENvbnRlbnQpIHtcclxuICAgICAgcmV0dXJuIGlucC5sKCdGb3JtRXJyb3JNYXhDb250ZW50JywgW2lucC5uYW1lLCBpbnAubWF4TGVuZ3RoXSk7XHJcbiAgICB9IGVsc2UgaWYgKGlucC5lcnJvciA9PT0gSW5wdXRFcnJvci5VcGxvYWQpIHtcclxuICAgICAgcmV0dXJuIGlucC5sKCdGb3JtRXJyb3JVcGxvYWQnLCBpbnAubmFtZSk7XHJcbiAgICB9XHJcbiAgICBjb25zdCBkZXNjID0gaW5wLmRlc2NyaXB0aW9uICE9PSBudWxsID8gJyAoJyArIGlucC5sKGlucC5kZXNjcmlwdGlvbikgKyAnKScgOiAnJztcclxuICAgIHJldHVybiBpbnAubChpbnAubmFtZSkgKyBkZXNjO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIG5hdGlvbmFsQ29kZVZhbGlkKGMpOiBib29sZWFuIHtcclxuICAgIGlmICghUmVnRXhwKC9eXFxkezEwfSQvKS50ZXN0KGMpIHx8IFJlZ0V4cCgvXiguKVxcMSskLykudGVzdChjKSkge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgICBjb25zdCBjaGVjayA9IHBhcnNlSW50KGNbOV0sIDEwKTtcclxuICAgIGxldCBzdW0gPSAwO1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCA5OyArK2kpIHtcclxuICAgICAgc3VtICs9IHBhcnNlSW50KGNbaV0sIDEwKSAqICgxMCAtIGkpO1xyXG4gICAgfVxyXG4gICAgc3VtICU9IDExO1xyXG4gICAgcmV0dXJuIChzdW0gPCAyICYmIGNoZWNrID09PSBzdW0pIHx8IChzdW0gPj0gMiAmJiBjaGVjayArIHN1bSA9PT0gMTEpO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGlzbzcwNjRNb2Q5N18xMChpYmFuKTogbnVtYmVye1xyXG4gICAgbGV0IHJlbWFpbmRlciA9IGliYW47XHJcbiAgICB3aGlsZSAocmVtYWluZGVyLmxlbmd0aCA+IDIpe1xyXG4gICAgICBjb25zdCBibG9jayA9IHJlbWFpbmRlci5zbGljZSgwLCA5KTtcclxuICAgICAgcmVtYWluZGVyID0gcGFyc2VJbnQoYmxvY2ssIDEwKSAlIDk3ICsgcmVtYWluZGVyLnNsaWNlKGJsb2NrLmxlbmd0aCk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHBhcnNlSW50KHJlbWFpbmRlciwgMTApICUgOTc7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgc2hlYmFWYWxpZChzdHIpOiBib29sZWFuIHtcclxuICAgIGNvbnN0IHBhdHRlcm4gPSAvSVJbMC05XXsyNH0vO1xyXG4gICAgaWYgKCFzdHIuc3RhcnRXaXRoKCdJUicpKXtcclxuICAgICAgc3RyID0gJ0lSJyArIHN0cjtcclxuICAgIH1cclxuICAgIGlmIChzdHIubGVuZ3RoICE9PSAyNikge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCFwYXR0ZXJuLnRlc3Qoc3RyKSkge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IG5ld1N0ciA9IHN0ci5zdWJzdHIoNCk7XHJcbiAgICBjb25zdCBkMSA9IHN0ci5jaGFyQ29kZUF0KDApIC0gNjUgKyAxMDtcclxuICAgIGNvbnN0IGQyID0gc3RyLmNoYXJDb2RlQXQoMSkgLSA2NSArIDEwO1xyXG4gICAgbmV3U3RyICs9IGQxLnRvU3RyaW5nKCkgKyBkMi50b1N0cmluZygpICsgc3RyLnN1YnN0cigyLCAyKTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5pc283MDY0TW9kOTdfMTAobmV3U3RyKSA9PT0gMTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBwb3N0YWxDb2RlVmFsaWQoYyk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIFJlZ0V4cCgvXlxcYig/IShcXGQpXFwxezN9KVsxMy05XXs0fVsxMzQ2LTldWzAxMy05XXs1fVxcYiQvKS50ZXN0KGMpO1xyXG4gIH1cclxuICBzdGF0aWMgcmFuZG9tKGxlbmd0aCwgdXBwZXIgPSB0cnVlLCBsb3dlciA9IHRydWUsIG51bSA9IHRydWUpOiBzdHJpbmcge1xyXG4gICAgbGV0IHJlc3VsdCA9ICcnO1xyXG4gICAgY29uc3QgY2hhcmFjdGVycyA9IGAke3VwcGVyID8gJ0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaJyA6ICcnfSR7bG93ZXIgPyAnYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXonIDogJyd9JHtudW0gPyAnMTIzNDU2Nzg5JyA6ICcnfWA7XHJcbiAgICBjb25zdCBjaGFyYWN0ZXJzTGVuZ3RoID0gY2hhcmFjdGVycy5sZW5ndGg7XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGxlbmd0aDsgaSsrICkge1xyXG4gICAgICByZXN1bHQgKz0gY2hhcmFjdGVycy5jaGFyQXQoTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogY2hhcmFjdGVyc0xlbmd0aCkpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcbiAgc3RhdGljIHNldENvb2tpZShuYW1lLCB2YWx1ZSwgZGF5cyk6IHZvaWQge1xyXG4gICAgbGV0IGV4cGlyZXMgPSAnJztcclxuICAgIGlmIChkYXlzKSB7XHJcbiAgICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSgpO1xyXG4gICAgICBkYXRlLnNldFRpbWUoZGF0ZS5nZXRUaW1lKCkgKyAoZGF5cyAqIDI0ICogNjAgKiA2MCAqIDEwMDApKTtcclxuICAgICAgZXhwaXJlcyA9ICc7IGV4cGlyZXM9JyArIGRhdGUudG9VVENTdHJpbmcoKTtcclxuICAgIH1cclxuICAgIGRvY3VtZW50LmNvb2tpZSA9IG5hbWUgKyAnPScgKyAodmFsdWUgfHwgJycpICArIGV4cGlyZXMgKyAnOyBwYXRoPS8nO1xyXG4gIH1cclxuICBzdGF0aWMgZ2V0Q29va2llKG5hbWUpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgbmFtZUVRID0gbmFtZSArICc9JztcclxuICAgIGNvbnN0IGNhID0gZG9jdW1lbnQuY29va2llLnNwbGl0KCc7Jyk7XHJcbiAgICBmb3IgKGxldCBjIG9mIGNhKSB7XHJcbiAgICAgIHdoaWxlIChjLmNoYXJBdCgwKSA9PT0gJyAnKXtcclxuICAgICAgICBjID0gYy5zdWJzdHJpbmcoMSwgYy5sZW5ndGgpO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChjLmluZGV4T2YobmFtZUVRKSA9PT0gMCl7XHJcbiAgICAgICAgcmV0dXJuIGMuc3Vic3RyaW5nKG5hbWVFUS5sZW5ndGgsIGMubGVuZ3RoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG4gIHN0YXRpYyBlcmFzZUNvb2tpZShuYW1lKTogdm9pZCB7XHJcbiAgICBkb2N1bWVudC5jb29raWUuc3BsaXQoJzsnKVxyXG4gICAgICAuZm9yRWFjaCgoYykgPT4geyBkb2N1bWVudC5jb29raWUgPSBjLnJlcGxhY2UoL14gKy8sICcnKS5yZXBsYWNlKC89LiovLCAnPTtleHBpcmVzPScgKyBuZXcgRGF0ZSgpLnRvVVRDU3RyaW5nKCkgKyAnO3BhdGg9LycpOyB9KTtcclxuICB9XHJcbiAgc3RhdGljIGdldERhdGVEaWYobCwgZHQ6IHN0cmluZyk6IHN0cmluZ3tcclxuICAgIGNvbnN0IGQgPSBwYXJzZUludChkdC5zdWJzdHJpbmcoNiwgZHQubGVuZ3RoIC0gMiksIDEwKTtcclxuICAgIGNvbnN0IG5vdyA9IG1vbWVudC5ub3coKTtcclxuICAgIGNvbnN0IGRpZiA9IChub3cgLSBkKSAvIDEwMDA7XHJcbiAgICBjb25zdCBoID0gTWF0aC5mbG9vcihkaWYgLyAzNjAwKTtcclxuICAgIGNvbnN0IG0gPSBNYXRoLmZsb29yKGRpZiAlIDM2MDAgLyA2MCk7XHJcbiAgICBpZiAoaCA8IDI0KVxyXG4gICAge1xyXG4gICAgICBsZXQgciA9IGggPiAwID8gbCgnSG91clAnLCBoLnRvU3RyaW5nKCkpIDogJyc7XHJcbiAgICAgIHIgKz0gciAhPT0gJycgJiYgbSA+IDAgPyBsKCdBbmQnKSA6ICcnO1xyXG4gICAgICByICs9IG0gPiAwID8gbCgnTWludXRlUCcsIG0udG9TdHJpbmcoKSkgOiAnJztcclxuICAgICAgciArPSByICE9PSAnJyA/ICcnIDogbCgnQUZldycpO1xyXG4gICAgICByICs9ICcgJyArIGwoJ0FnbycpO1xyXG4gICAgICByZXR1cm4gcjtcclxuICAgIH1cclxuICAgIHJldHVybiAnPGRpdiBjbGFzcz1cImx0clwiPicgKyBtb21lbnQoZCkubG9jYWxlKCdmYScpLmZvcm1hdCgnallZWVkvak1NL2pERCBISDptbScpICsgJzwvZGl2Pic7XHJcbiAgfVxyXG4gIHN0YXRpYyBnZXRSb3dFbnVtKGwsIGUsIGR0KTogc3RyaW5ne1xyXG4gICAgY29uc3QgdiA9IGUuZmluZCh4ID0+IHguVmFsdWUgPT09IGR0KTtcclxuICAgIHJldHVybiBgPHNwYW4gY2xhc3M9XCJzdGF0dXMgJHt2LkNsYXNzfVwiPmAgKyBsKHYuTmFtZSkgKyAnPC9zcGFuPic7XHJcbiAgfVxyXG4gIHN0YXRpYyBnZXREYXRlUmVtYWluKGwsIGR0OiBzdHJpbmcpOiBzdHJpbmd7XHJcbiAgICBjb25zdCBkID0gcGFyc2VJbnQoZHQuc3Vic3RyaW5nKDYsIGR0Lmxlbmd0aCAtIDIpLCAxMCk7XHJcbiAgICBjb25zdCBub3cgPSBtb21lbnQubm93KCk7XHJcbiAgICBjb25zdCBkaWYgPSAoZCAtIG5vdykgLyAxMDAwO1xyXG4gICAgaWYgKGRpZiA8PSAwKVxyXG4gICAge1xyXG4gICAgICByZXR1cm4gbCgnRW5kZWQnKTtcclxuICAgIH1cclxuICAgIGNvbnN0IGggPSBNYXRoLmZsb29yKGRpZiAvIDM2MDApO1xyXG4gICAgY29uc3QgbSA9IE1hdGguZmxvb3IoZGlmICUgMzYwMCAvIDYwKTtcclxuICAgIGlmIChoIDwgMjQpXHJcbiAgICB7XHJcbiAgICAgIGxldCByID0gaCA+IDAgPyBsKCdIb3VyUCcsIGgudG9TdHJpbmcoKSkgOiAnJztcclxuICAgICAgciArPSByICE9PSAnJyAmJiBtID4gMCA/IGwoJ0FuZCcpIDogJyc7XHJcbiAgICAgIHIgKz0gbSA+IDAgPyBsKCdNaW51dGVQJywgbS50b1N0cmluZygpKSA6ICcnO1xyXG4gICAgICByICs9IHIgIT09ICcnID8gJycgOiBsKCdBRmV3Jyk7XHJcbiAgICAgIHIgKz0gJyAnICsgbCgnTGF0ZXInKTtcclxuICAgICAgcmV0dXJuIHI7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gJzxkaXYgY2xhc3M9XCJsdHJcIj4nICsgbW9tZW50KGQpLmxvY2FsZSgnZmEnKS5mb3JtYXQoJ2pZWVlZL2pNTS9qREQgSEg6bW0nKSArICc8L2Rpdj4nO1xyXG4gIH1cclxuICBzdGF0aWMgZ2V0RGF0ZShkdDogc3RyaW5nKTogc3RyaW5ne1xyXG4gICAgdHJ5IHtcclxuICAgICAgaWYgKGR0ID09PSBudWxsKXtcclxuICAgICAgICByZXR1cm4gJyc7XHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgZCA9IHBhcnNlSW50KGR0LnN1YnN0cmluZyg2LCBkdC5sZW5ndGggLSAyKSwgMTApO1xyXG4gICAgICByZXR1cm4gbW9tZW50KGQpLmxvY2FsZSgnZmEnKS5mb3JtYXQoJ2pZWVlZL2pNTS9qREQnKTtcclxuICAgIH1jYXRjaCAoZSkge1xyXG4gICAgICByZXR1cm4gZHQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHN0YXRpYyBnZXRUaW1lKGR0OiBhbnkpOiBzdHJpbmd7XHJcbiAgICB0cnkge1xyXG4gICAgICBpZiAoZHQgPT09IG51bGwpe1xyXG4gICAgICAgIHJldHVybiAnJztcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gYCR7KGR0LkhvdXJzID4gOSA/IGR0LkhvdXJzIDogYDAke2R0LkhvdXJzfWApfTokeyhkdC5NaW51dGVzID4gOSA/IGR0Lk1pbnV0ZXMgOiBgMCR7ZHQuTWludXRlc31gKX1gO1xyXG4gICAgfWNhdGNoIChlKSB7XHJcbiAgICAgIHJldHVybiBkdDtcclxuICAgIH1cclxuICB9XHJcbiAgc3RhdGljIGdldERhdGVUaW1lKGR0OiBzdHJpbmcpOiBzdHJpbmd7XHJcbiAgICBpZiAoZHQgPT09IG51bGwpe1xyXG4gICAgICByZXR1cm4gJyc7XHJcbiAgICB9XHJcbiAgICBjb25zdCBkID0gcGFyc2VJbnQoZHQuc3Vic3RyaW5nKDYsIGR0Lmxlbmd0aCAtIDIpLCAxMCk7XHJcbiAgICByZXR1cm4gbW9tZW50KGQpLmxvY2FsZSgnZmEnKS5mb3JtYXQoJ2pZWVlZL2pNTS9qREQgSEg6bW0nKTtcclxuICB9XHJcbiAgc3RhdGljIGdldEZpbGVTaXplKGJ5dGVzOiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgY29uc3Qgc3VmZml4ID0gWyAnQicsICdLQicsICdNQicsICdHQicsICdUQiddO1xyXG4gICAgbGV0IGRibFNCeXRlID0gYnl0ZXM7XHJcbiAgICBsZXQgaSA9IDA7XHJcbiAgICBmb3IgKDsgaSA8IHN1ZmZpeC5sZW5ndGggJiYgYnl0ZXMgPj0gMTAyNDsgaSsrLCBieXRlcyAvPSAxMDI0KVxyXG4gICAge1xyXG4gICAgICBkYmxTQnl0ZSA9IGJ5dGVzIC8gMTAyNC4wO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGAke2RibFNCeXRlLnRvTG9jYWxlU3RyaW5nKCdlbi1VUycsIHtcclxuICAgICAgbWluaW11bUZyYWN0aW9uRGlnaXRzOiAwLFxyXG4gICAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IDEsXHJcbiAgICB9KX0gJHtzdWZmaXhbaV19YDtcclxuICB9XHJcbiAgc3RhdGljIGdldFBEYXRlKGwsIHMpOiBzdHJpbmd7XHJcbiAgICByZXR1cm4gcy5yZXBsYWNlKC9Ib3VyL2csIGwoJ0hvdXInKSlcclxuICAgICAgLnJlcGxhY2UoL0xlc3NUaGFuTWludXRlL2csIGwoJ0xlc3NUaGFuTWludXRlJykpXHJcbiAgICAgIC5yZXBsYWNlKC9NaW51dGUvZywgbCgnTWludXRlJykpXHJcbiAgICAgIC5yZXBsYWNlKC9BbmQvZywgbCgnQW5kJykpXHJcbiAgICAgIC5yZXBsYWNlKC9BRmV3L2csIGwoJ0FGZXcnKSlcclxuICAgICAgLnJlcGxhY2UoL0ZpbmlzaGVkL2csIGwoJ0ZpbmlzaGVkJykpXHJcbiAgICAgIC5yZXBsYWNlKC9EYXkvZywgbCgnRGF5JykpXHJcbiAgICAgIC5yZXBsYWNlKC9MYXRlci9nLCBsKCdMYXRlcicpKVxyXG4gICAgICAucmVwbGFjZSgvQWdvL2csIGwoJ0FnbycpKTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBjbG9uZTxUPih2OiBUKTogVCB7XHJcbiAgICBpZiAodiA9PSBudWxsKXtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgY29uc3QgY29weSA9IG5ldyAodi5jb25zdHJ1Y3RvciBhcyB7IG5ldygpIH0pKCk7XHJcbiAgICBPYmplY3QuYXNzaWduKGNvcHksIHYpO1xyXG4gICAgcmV0dXJuIGNvcHk7XHJcbiAgfVxyXG4gIHN0YXRpYyBjbG9uZUpzb24oaW5wKTogYW55IHtcclxuICAgIHJldHVybiBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGlucCkpO1xyXG4gIH1cclxuICBzdGF0aWMgZ2V0TmFtZShuKTogc3RyaW5ne1xyXG4gICAgcmV0dXJuIG4ucmVwbGFjZSgv2qkvZywgJ9mDJykucmVwbGFjZSgv24wvZywgJ9mKJykucmVwbGFjZSgv2KIvZywgJ9iiJyk7XHJcbiAgfVxyXG4gIHN0YXRpYyBhZGROb3RpZmljYXRpb24obSk6IHZvaWR7XHJcbiAgICBjb25zdCBpZCA9IEhlbHBlckNsYXNzLnJhbmRvbSgyMCk7XHJcbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmVcclxuICAgICQoJyNOb3RpZmljYXRpb25zJykuYXBwZW5kKCc8ZGl2IGlkPVwiJyArIGlkICsgJ1wiIGNsYXNzPVwiY29uXCI+PGRpdiBjbGFzcz1cIml0ZW1cIj48aSBjbGFzcz1cImZhcyBmYS10aW1lc1wiPjwvaT48ZGl2PicgKyBtICsgJzwvZGl2PjwvZGl2PjwvZGl2PicpO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGNvbnN0IGQgPSAkKCcjJyArIGlkKTtcclxuICAgICAgZC5mYWRlT3V0KDMwMCwgKCkgPT4ge1xyXG4gICAgICAgIGQucmVtb3ZlKCk7XHJcbiAgICAgIH0pO1xyXG4gICAgfSwgNTAwMCk7XHJcbiAgfVxyXG4gIHN0YXRpYyBjaGVja0NhcnREaWdpdChjb2RlKTogYm9vbGVhbntcclxuICAgIGNvbnN0IGwgPSBjb2RlLmxlbmd0aDtcclxuICAgIGlmIChsIDwgMTYgfHwgcGFyc2VJbnQoY29kZS5zdWJzdHIoMSwgMTApLCAxMCkgPT09IDAgfHxcclxuICAgICAgcGFyc2VJbnQoY29kZS5zdWJzdHIoMTAsIDYpLCAxMCkgPT09IDApIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gICAgbGV0IHMgPSAwO1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCAxNjsgaSsrKXtcclxuICAgICAgY29uc3QgayA9IGkgJSAyID09PSAwID8gMiA6IDE7XHJcbiAgICAgIGNvbnN0IGQgPSBwYXJzZUludChjb2RlLnN1YnN0cihpLCAxKSwgMTApICogaztcclxuICAgICAgcyArPSBkID4gOSA/IGQgLSA5IDogZDtcclxuICAgIH1cclxuICAgIHJldHVybiBzICUgMTAgPT09IDA7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgZ2V0RGF0YShrZXksIHN0YXRlLCBwYXJlbnQpOiBhbnkge1xyXG4gICAgY29uc3QgZGF0YSA9IFtdO1xyXG4gICAgaWYgKHBhcmVudCAmJiBwYXJlbnQuc25hcHNob3QuZGF0YSAmJiBwYXJlbnQuc25hcHNob3QuZGF0YVtrZXldKSB7XHJcbiAgICAgIGRhdGEucHVzaChwYXJlbnQuc25hcHNob3QuZGF0YVtrZXldKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoc3RhdGUgJiYgcGFyZW50KSB7XHJcbiAgICAgIGRhdGEucHVzaCguLi50aGlzLmdldERhdGEoa2V5LCBzdGF0ZSwgc3RhdGUuZmlyc3RDaGlsZChwYXJlbnQpKSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZGF0YTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import * as _ from 'lodash';
|
|
2
|
+
import { strings as publicStrings } from './string.class';
|
|
3
|
+
// @dynamic
|
|
4
|
+
export class LangClass {
|
|
5
|
+
constructor(d, strings) {
|
|
6
|
+
this.lang = _.merge(publicStrings[d], strings[d]);
|
|
7
|
+
}
|
|
8
|
+
get(area, c, k, v = null) {
|
|
9
|
+
let cv = _.get(this.lang, area ? `${area}.${c}.${k}` : `${c}.${k}`);
|
|
10
|
+
if (!cv) {
|
|
11
|
+
cv = _.get(this.lang, `Public.${c}.${k}`);
|
|
12
|
+
}
|
|
13
|
+
if (!cv) {
|
|
14
|
+
cv = _.get(this.lang, `Public.${k}`);
|
|
15
|
+
}
|
|
16
|
+
if (!cv) {
|
|
17
|
+
return k;
|
|
18
|
+
}
|
|
19
|
+
if (v !== null) {
|
|
20
|
+
if (v.constructor === Array) {
|
|
21
|
+
v.forEach((x) => {
|
|
22
|
+
cv = cv.replace('{}', this.get(area, c, x, null));
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
cv = cv.replace('{}', this.get(area, c, v, null));
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
return cv;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZy5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiJEOi9Qcm9qZWN0cy9Qc1Rvb2xraXQvVUkvcHJvamVjdHMvcHMtdG9vbGtpdC11aS9zcmMvIiwic291cmNlcyI6WyJsaWIvY2xhc3Nlcy9sYW5nLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBQzVCLE9BQU8sRUFBQyxPQUFPLElBQUksYUFBYSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEQsV0FBVztBQUNYLE1BQU0sT0FBTyxTQUFTO0lBRXBCLFlBQVksQ0FBUyxFQUFFLE9BQVc7UUFDaEMsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBQ0QsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJO1FBQ3RCLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsRUFBRSxFQUFDO1lBQ04sRUFBRSxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQzNDO1FBQ0QsSUFBSSxDQUFDLEVBQUUsRUFBQztZQUNOLEVBQUUsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ3RDO1FBQ0QsSUFBSSxDQUFDLEVBQUUsRUFBQztZQUNOLE9BQU8sQ0FBQyxDQUFDO1NBQ1Y7UUFDRCxJQUFJLENBQUMsS0FBSyxJQUFJLEVBQUU7WUFDZCxJQUFJLENBQUMsQ0FBQyxXQUFXLEtBQUssS0FBSyxFQUFFO2dCQUMzQixDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7b0JBQ2QsRUFBRSxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztnQkFDcEQsQ0FBQyxDQUFDLENBQUM7YUFDSjtpQkFBTTtnQkFDTCxFQUFFLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO2FBQ25EO1NBQ0Y7UUFDRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJztcclxuaW1wb3J0IHtzdHJpbmdzIGFzIHB1YmxpY1N0cmluZ3N9IGZyb20gJy4vc3RyaW5nLmNsYXNzJztcclxuXHJcbi8vIEBkeW5hbWljXHJcbmV4cG9ydCBjbGFzcyBMYW5nQ2xhc3Mge1xyXG4gIGxhbmc6IHt9O1xyXG4gIGNvbnN0cnVjdG9yKGQ6IHN0cmluZywgc3RyaW5nczoge30pIHtcclxuICAgIHRoaXMubGFuZyA9IF8ubWVyZ2UocHVibGljU3RyaW5nc1tkXSwgc3RyaW5nc1tkXSk7XHJcbiAgfVxyXG4gIGdldChhcmVhLCBjLCBrLCB2ID0gbnVsbCk6IHN0cmluZyB7XHJcbiAgICBsZXQgY3YgPSBfLmdldCh0aGlzLmxhbmcsIGFyZWEgPyBgJHthcmVhfS4ke2N9LiR7a31gIDogYCR7Y30uJHtrfWApO1xyXG4gICAgaWYgKCFjdil7XHJcbiAgICAgIGN2ID0gXy5nZXQodGhpcy5sYW5nLCBgUHVibGljLiR7Y30uJHtrfWApO1xyXG4gICAgfVxyXG4gICAgaWYgKCFjdil7XHJcbiAgICAgIGN2ID0gXy5nZXQodGhpcy5sYW5nLCBgUHVibGljLiR7a31gKTtcclxuICAgIH1cclxuICAgIGlmICghY3Ype1xyXG4gICAgICByZXR1cm4gaztcclxuICAgIH1cclxuICAgIGlmICh2ICE9PSBudWxsKSB7XHJcbiAgICAgIGlmICh2LmNvbnN0cnVjdG9yID09PSBBcnJheSkge1xyXG4gICAgICAgIHYuZm9yRWFjaCgoeCkgPT4ge1xyXG4gICAgICAgICAgY3YgPSBjdi5yZXBsYWNlKCd7fScsIHRoaXMuZ2V0KGFyZWEsIGMsIHgsIG51bGwpKTtcclxuICAgICAgICB9KTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBjdiA9IGN2LnJlcGxhY2UoJ3t9JywgdGhpcy5nZXQoYXJlYSwgYywgdiwgbnVsbCkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gY3Y7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { HelperClass } from './helper.class';
|
|
2
|
+
export class LoginClass {
|
|
3
|
+
constructor(type) {
|
|
4
|
+
this.steps = [];
|
|
5
|
+
this.active = 0;
|
|
6
|
+
this.onSuccess = null;
|
|
7
|
+
this.type = type;
|
|
8
|
+
}
|
|
9
|
+
setCookie(r) {
|
|
10
|
+
if (r.Token) {
|
|
11
|
+
HelperClass.setCookie('Authorization', `Bearer ${r.Token}`, 30);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
export class LoginStepClass {
|
|
16
|
+
constructor(form) {
|
|
17
|
+
this.form = null;
|
|
18
|
+
this.form = form;
|
|
19
|
+
}
|
|
20
|
+
show(result = null) { }
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4uY2xhc3MuanMiLCJzb3VyY2VSb290IjoiRDovUHJvamVjdHMvUHNUb29sa2l0L1VJL3Byb2plY3RzL3BzLXRvb2xraXQtdWkvc3JjLyIsInNvdXJjZXMiOlsibGliL2NsYXNzZXMvbG9naW4uY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRTNDLE1BQU0sT0FBTyxVQUFVO0lBQ3JCLFlBQVksSUFBWTtRQUl4QixVQUFLLEdBQXFCLEVBQUUsQ0FBQztRQUM3QixXQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQ1gsY0FBUyxHQUFxQixJQUFJLENBQUM7UUFMakMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQVFELFNBQVMsQ0FBQyxDQUFDO1FBQ1QsSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFDO1lBQ1YsV0FBVyxDQUFDLFNBQVMsQ0FBQyxlQUFlLEVBQUUsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7U0FDakU7SUFDSCxDQUFDO0NBQ0Y7QUFDRCxNQUFNLE9BQU8sY0FBYztJQUN6QixZQUFZLElBQWU7UUFHM0IsU0FBSSxHQUFjLElBQUksQ0FBQztRQUZyQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNuQixDQUFDO0lBRUQsSUFBSSxDQUFDLFNBQWMsSUFBSSxJQUFTLENBQUM7Q0FDbEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0Zvcm1DbGFzc30gZnJvbSAnLi9mb3JtLmNsYXNzJztcclxuaW1wb3J0IHtIZWxwZXJDbGFzc30gZnJvbSAnLi9oZWxwZXIuY2xhc3MnO1xyXG5cclxuZXhwb3J0IGNsYXNzIExvZ2luQ2xhc3Mge1xyXG4gIGNvbnN0cnVjdG9yKHR5cGU6IHN0cmluZykge1xyXG4gICAgdGhpcy50eXBlID0gdHlwZTtcclxuICB9XHJcbiAgdHlwZTogc3RyaW5nO1xyXG4gIHN0ZXBzOiBMb2dpblN0ZXBDbGFzc1tdID0gW107XHJcbiAgYWN0aXZlID0gMDtcclxuICBvblN1Y2Nlc3M6IChyZXN1bHQpID0+IHZvaWQgPSBudWxsO1xyXG4gIHNlbmRDb2RlVXJsOiBzdHJpbmc7XHJcbiAgcmVTZW5kQ29kZVVybDogc3RyaW5nO1xyXG4gIGxvZ2luVXJsOiBzdHJpbmc7XHJcbiAgc2V0Q29va2llKHIpOiB2b2lke1xyXG4gICAgaWYgKHIuVG9rZW4pe1xyXG4gICAgICBIZWxwZXJDbGFzcy5zZXRDb29raWUoJ0F1dGhvcml6YXRpb24nLCBgQmVhcmVyICR7ci5Ub2tlbn1gLCAzMCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbmV4cG9ydCBjbGFzcyBMb2dpblN0ZXBDbGFzc3tcclxuICBjb25zdHJ1Y3Rvcihmb3JtOiBGb3JtQ2xhc3MpIHtcclxuICAgIHRoaXMuZm9ybSA9IGZvcm07XHJcbiAgfVxyXG4gIGZvcm06IEZvcm1DbGFzcyA9IG51bGw7XHJcbiAgc2hvdyhyZXN1bHQ6IGFueSA9IG51bGwpOiB2b2lkIHt9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import * as $ from 'jquery';
|
|
2
|
+
import { InputType } from './enum.class';
|
|
3
|
+
export class ModalClass {
|
|
4
|
+
constructor(environment, l, name, cls = '') {
|
|
5
|
+
this.environment = null;
|
|
6
|
+
this.form = null;
|
|
7
|
+
this.firstForm = true;
|
|
8
|
+
this.table = null;
|
|
9
|
+
this.accordion = null;
|
|
10
|
+
this.onShow = null;
|
|
11
|
+
this.onHide = null;
|
|
12
|
+
this.environment = environment;
|
|
13
|
+
this.l = l;
|
|
14
|
+
this.name = name;
|
|
15
|
+
this.id = this.name;
|
|
16
|
+
this.class = cls;
|
|
17
|
+
}
|
|
18
|
+
show() {
|
|
19
|
+
if (this.onShow) {
|
|
20
|
+
this.onShow();
|
|
21
|
+
}
|
|
22
|
+
$('body').addClass('open-modal');
|
|
23
|
+
$('#' + this.id + 'Modal').fadeIn(300, () => {
|
|
24
|
+
if (this.form != null) {
|
|
25
|
+
const i = this.form.inputs.find(x => !x.disabled && x.type !== InputType.Label && x.type !== InputType.Hidden &&
|
|
26
|
+
x.type !== InputType.Constant && x.type !== InputType.Submit && x.type !== InputType.Button && x.type !== InputType.Icon &&
|
|
27
|
+
x.type !== InputType.Check);
|
|
28
|
+
if (i) {
|
|
29
|
+
i.focus();
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
hide() {
|
|
35
|
+
$('body').removeClass('open-modal');
|
|
36
|
+
$('#' + this.id + 'Modal').fadeOut(300, () => {
|
|
37
|
+
if (this.form && this.form.name !== 'Confirm' && this.form.name !== 'Alert') {
|
|
38
|
+
this.form.clear();
|
|
39
|
+
if (this.form.onHideModal) {
|
|
40
|
+
this.form.onHideModal();
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
if (this.table && this.table.form) {
|
|
44
|
+
this.table.form.clear();
|
|
45
|
+
}
|
|
46
|
+
if (this.onHide) {
|
|
47
|
+
this.onHide();
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiRDovUHJvamVjdHMvUHNUb29sa2l0L1VJL3Byb2plY3RzL3BzLXRvb2xraXQtdWkvc3JjLyIsInNvdXJjZXMiOlsibGliL2NsYXNzZXMvbW9kYWwuY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUM7QUFDNUIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGNBQWMsQ0FBQztBQUd2QyxNQUFNLE9BQU8sVUFBVTtJQUNyQixZQUFZLFdBQWdCLEVBQUUsQ0FBb0IsRUFBRSxJQUFZLEVBQUUsTUFBYyxFQUFFO1FBT2xGLGdCQUFXLEdBQVEsSUFBSSxDQUFDO1FBTXhCLFNBQUksR0FBYyxJQUFJLENBQUM7UUFDdkIsY0FBUyxHQUFHLElBQUksQ0FBQztRQUNqQixVQUFLLEdBQWUsSUFBSSxDQUFDO1FBQ3pCLGNBQVMsR0FBbUIsSUFBSSxDQUFDO1FBQ2pDLFdBQU0sR0FBZSxJQUFJLENBQUM7UUFDMUIsV0FBTSxHQUFlLElBQUksQ0FBQztRQWpCeEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7UUFDL0IsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDWCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDcEIsSUFBSSxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUM7SUFDbkIsQ0FBQztJQWFELElBQUk7UUFDRixJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUM7WUFDZCxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7U0FDZjtRQUNELENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDakMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsRUFBRSxHQUFHLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFO1lBQzFDLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLEVBQUM7Z0JBQ3BCLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsTUFBTTtvQkFDM0csQ0FBQyxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsUUFBUSxJQUFJLENBQUMsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLE1BQU0sSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsSUFBSTtvQkFDeEgsQ0FBQyxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzlCLElBQUksQ0FBQyxFQUFDO29CQUNKLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztpQkFDWDthQUNGO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0QsSUFBSTtRQUNGLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDcEMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsRUFBRSxHQUFHLE9BQU8sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFO1lBQzNDLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxTQUFTLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssT0FBTyxFQUFDO2dCQUMxRSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNsQixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFDO29CQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO2lCQUN6QjthQUNGO1lBQ0QsSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFDO2dCQUNoQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQzthQUN6QjtZQUNELElBQUksSUFBSSxDQUFDLE1BQU0sRUFBQztnQkFDZCxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7YUFDZjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBY2NvcmRpb25DbGFzcywgRm9ybUNsYXNzfSBmcm9tICcuL2Zvcm0uY2xhc3MnO1xyXG5pbXBvcnQgKiBhcyAkIGZyb20gJ2pxdWVyeSc7XHJcbmltcG9ydCB7SW5wdXRUeXBlfSBmcm9tICcuL2VudW0uY2xhc3MnO1xyXG5pbXBvcnQge1RhYmxlQ2xhc3N9IGZyb20gJy4vdGFibGUuY2xhc3MnO1xyXG5cclxuZXhwb3J0IGNsYXNzIE1vZGFsQ2xhc3Mge1xyXG4gIGNvbnN0cnVjdG9yKGVudmlyb25tZW50OiBhbnksIGw6IChrLCB2PykgPT4gc3RyaW5nLCBuYW1lOiBzdHJpbmcsIGNsczogc3RyaW5nID0gJycpIHtcclxuICAgIHRoaXMuZW52aXJvbm1lbnQgPSBlbnZpcm9ubWVudDtcclxuICAgIHRoaXMubCA9IGw7XHJcbiAgICB0aGlzLm5hbWUgPSBuYW1lO1xyXG4gICAgdGhpcy5pZCA9IHRoaXMubmFtZTtcclxuICAgIHRoaXMuY2xhc3MgPSBjbHM7XHJcbiAgfVxyXG4gIGVudmlyb25tZW50OiBhbnkgPSBudWxsO1xyXG4gIGw6IChrLCB2PykgPT4gc3RyaW5nO1xyXG4gIG5hbWU6IHN0cmluZztcclxuICBpZDogc3RyaW5nO1xyXG4gIGNsYXNzOiBzdHJpbmc7XHJcbiAgcmVsYXRlZElkOiBudWxsO1xyXG4gIGZvcm06IEZvcm1DbGFzcyA9IG51bGw7XHJcbiAgZmlyc3RGb3JtID0gdHJ1ZTtcclxuICB0YWJsZTogVGFibGVDbGFzcyA9IG51bGw7XHJcbiAgYWNjb3JkaW9uOiBBY2NvcmRpb25DbGFzcyA9IG51bGw7XHJcbiAgb25TaG93OiAoKSA9PiB2b2lkID0gbnVsbDtcclxuICBvbkhpZGU6ICgpID0+IHZvaWQgPSBudWxsO1xyXG4gIHNob3coKTogdm9pZHtcclxuICAgIGlmICh0aGlzLm9uU2hvdyl7XHJcbiAgICAgIHRoaXMub25TaG93KCk7XHJcbiAgICB9XHJcbiAgICAkKCdib2R5JykuYWRkQ2xhc3MoJ29wZW4tbW9kYWwnKTtcclxuICAgICQoJyMnICsgdGhpcy5pZCArICdNb2RhbCcpLmZhZGVJbigzMDAsICgpID0+IHtcclxuICAgICAgaWYgKHRoaXMuZm9ybSAhPSBudWxsKXtcclxuICAgICAgICBjb25zdCBpID0gdGhpcy5mb3JtLmlucHV0cy5maW5kKHggPT4gIXguZGlzYWJsZWQgJiYgeC50eXBlICE9PSBJbnB1dFR5cGUuTGFiZWwgJiYgeC50eXBlICE9PSBJbnB1dFR5cGUuSGlkZGVuICYmXHJcbiAgICAgICAgICB4LnR5cGUgIT09IElucHV0VHlwZS5Db25zdGFudCAmJiB4LnR5cGUgIT09IElucHV0VHlwZS5TdWJtaXQgJiYgeC50eXBlICE9PSBJbnB1dFR5cGUuQnV0dG9uICYmIHgudHlwZSAhPT0gSW5wdXRUeXBlLkljb24gJiZcclxuICAgICAgICAgIHgudHlwZSAhPT0gSW5wdXRUeXBlLkNoZWNrKTtcclxuICAgICAgICBpZiAoaSl7XHJcbiAgICAgICAgICBpLmZvY3VzKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcbiAgaGlkZSgpOiB2b2lke1xyXG4gICAgJCgnYm9keScpLnJlbW92ZUNsYXNzKCdvcGVuLW1vZGFsJyk7XHJcbiAgICAkKCcjJyArIHRoaXMuaWQgKyAnTW9kYWwnKS5mYWRlT3V0KDMwMCwgKCkgPT4ge1xyXG4gICAgICBpZiAodGhpcy5mb3JtICYmIHRoaXMuZm9ybS5uYW1lICE9PSAnQ29uZmlybScgJiYgdGhpcy5mb3JtLm5hbWUgIT09ICdBbGVydCcpe1xyXG4gICAgICAgIHRoaXMuZm9ybS5jbGVhcigpO1xyXG4gICAgICAgIGlmICh0aGlzLmZvcm0ub25IaWRlTW9kYWwpe1xyXG4gICAgICAgICAgdGhpcy5mb3JtLm9uSGlkZU1vZGFsKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLnRhYmxlICYmIHRoaXMudGFibGUuZm9ybSl7XHJcbiAgICAgICAgdGhpcy50YWJsZS5mb3JtLmNsZWFyKCk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMub25IaWRlKXtcclxuICAgICAgICB0aGlzLm9uSGlkZSgpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { PermissionTypeEnum } from './enum.class';
|
|
2
|
+
export class PermissionClass {
|
|
3
|
+
constructor(Name = '', Icon = '', Type = null, Area = '', Controller = '', Action = '', Children = [], Accesses = []) {
|
|
4
|
+
this.Name = Name;
|
|
5
|
+
this.Icon = Icon;
|
|
6
|
+
this.Type = Type;
|
|
7
|
+
this.Area = Area;
|
|
8
|
+
this.Controller = Controller;
|
|
9
|
+
this.Action = Action;
|
|
10
|
+
this.Children = Children;
|
|
11
|
+
this.Accesses = Accesses;
|
|
12
|
+
this.RelatedId = null;
|
|
13
|
+
}
|
|
14
|
+
hasAccess(a) {
|
|
15
|
+
return this.Accesses.filter(x => x.Action === a && x.Type === PermissionTypeEnum.Access).length > 0;
|
|
16
|
+
}
|
|
17
|
+
hasOption(a) {
|
|
18
|
+
return this.Accesses.filter(x => x.Action === a && x.Type !== PermissionTypeEnum.Access).length > 0;
|
|
19
|
+
}
|
|
20
|
+
getOptions() {
|
|
21
|
+
return this.Accesses.filter(x => x.Type !== PermissionTypeEnum.Access);
|
|
22
|
+
}
|
|
23
|
+
getUrl() {
|
|
24
|
+
return (this.Area ? '/' + this.Area : '') + '/' + this.Controller + '/' +
|
|
25
|
+
(this.RelatedId ? `${this.RelatedId}/` : '') +
|
|
26
|
+
(this.Action ? this.Action : '');
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVybWlzc2lvbi5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiJEOi9Qcm9qZWN0cy9Qc1Rvb2xraXQvVUkvcHJvamVjdHMvcHMtdG9vbGtpdC11aS9zcmMvIiwic291cmNlcyI6WyJsaWIvY2xhc3Nlcy9wZXJtaXNzaW9uLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLGNBQWMsQ0FBQztBQUdoRCxNQUFNLE9BQU8sZUFBZTtJQUMxQixZQUFtQixPQUFlLEVBQUUsRUFBUyxPQUFlLEVBQUUsRUFBUyxPQUEyQixJQUFJLEVBQVMsT0FBZSxFQUFFLEVBQzdHLGFBQXFCLEVBQUUsRUFBUyxTQUFpQixFQUFFLEVBQVMsV0FBOEIsRUFBRSxFQUM1RixXQUE4QixFQUFFO1FBRmhDLFNBQUksR0FBSixJQUFJLENBQWE7UUFBUyxTQUFJLEdBQUosSUFBSSxDQUFhO1FBQVMsU0FBSSxHQUFKLElBQUksQ0FBMkI7UUFBUyxTQUFJLEdBQUosSUFBSSxDQUFhO1FBQzdHLGVBQVUsR0FBVixVQUFVLENBQWE7UUFBUyxXQUFNLEdBQU4sTUFBTSxDQUFhO1FBQVMsYUFBUSxHQUFSLFFBQVEsQ0FBd0I7UUFDNUYsYUFBUSxHQUFSLFFBQVEsQ0FBd0I7UUFHbkQsY0FBUyxHQUFXLElBQUksQ0FBQztJQUZ6QixDQUFDO0lBR0QsU0FBUyxDQUFDLENBQVM7UUFDakIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEtBQUssa0JBQWtCLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztJQUN0RyxDQUFDO0lBQ0QsU0FBUyxDQUFDLENBQVM7UUFDakIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEtBQUssa0JBQWtCLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztJQUN0RyxDQUFDO0lBQ0QsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFDRCxNQUFNO1FBQ0osT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLFVBQVUsR0FBRyxHQUFHO1lBQ3JFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUM1QyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7UGVybWlzc2lvblR5cGVFbnVtfSBmcm9tICcuL2VudW0uY2xhc3MnO1xyXG5pbXBvcnQge01vZGFsQ2xhc3N9IGZyb20gJy4vbW9kYWwuY2xhc3MnO1xyXG5cclxuZXhwb3J0IGNsYXNzIFBlcm1pc3Npb25DbGFzcyB7XHJcbiAgY29uc3RydWN0b3IocHVibGljIE5hbWU6IHN0cmluZyA9ICcnLCBwdWJsaWMgSWNvbjogc3RyaW5nID0gJycsIHB1YmxpYyBUeXBlOiBQZXJtaXNzaW9uVHlwZUVudW0gPSBudWxsLCBwdWJsaWMgQXJlYTogc3RyaW5nID0gJycsXHJcbiAgICAgICAgICAgICAgcHVibGljIENvbnRyb2xsZXI6IHN0cmluZyA9ICcnLCBwdWJsaWMgQWN0aW9uOiBzdHJpbmcgPSAnJywgcHVibGljIENoaWxkcmVuOiBQZXJtaXNzaW9uQ2xhc3NbXSA9IFtdLFxyXG4gICAgICAgICAgICAgIHB1YmxpYyBBY2Nlc3NlczogUGVybWlzc2lvbkNsYXNzW10gPSBbXSkge1xyXG4gIH1cclxuICBNb2RhbDogTW9kYWxDbGFzcztcclxuICBSZWxhdGVkSWQ6IHN0cmluZyA9IG51bGw7XHJcbiAgaGFzQWNjZXNzKGE6IHN0cmluZyk6IGJvb2xlYW57XHJcbiAgICByZXR1cm4gdGhpcy5BY2Nlc3Nlcy5maWx0ZXIoeCA9PiB4LkFjdGlvbiA9PT0gYSAmJiB4LlR5cGUgPT09IFBlcm1pc3Npb25UeXBlRW51bS5BY2Nlc3MpLmxlbmd0aCA+IDA7XHJcbiAgfVxyXG4gIGhhc09wdGlvbihhOiBzdHJpbmcpOiBib29sZWFue1xyXG4gICAgcmV0dXJuIHRoaXMuQWNjZXNzZXMuZmlsdGVyKHggPT4geC5BY3Rpb24gPT09IGEgJiYgeC5UeXBlICE9PSBQZXJtaXNzaW9uVHlwZUVudW0uQWNjZXNzKS5sZW5ndGggPiAwO1xyXG4gIH1cclxuICBnZXRPcHRpb25zKCk6IFBlcm1pc3Npb25DbGFzc1tde1xyXG4gICAgcmV0dXJuIHRoaXMuQWNjZXNzZXMuZmlsdGVyKHggPT4geC5UeXBlICE9PSBQZXJtaXNzaW9uVHlwZUVudW0uQWNjZXNzKTtcclxuICB9XHJcbiAgZ2V0VXJsKCk6IHN0cmluZ3tcclxuICAgIHJldHVybiAodGhpcy5BcmVhID8gJy8nICsgdGhpcy5BcmVhIDogJycpICsgJy8nICsgdGhpcy5Db250cm9sbGVyICsgJy8nICtcclxuICAgICAgKHRoaXMuUmVsYXRlZElkID8gYCR7dGhpcy5SZWxhdGVkSWR9L2AgOiAnJykgK1xyXG4gICAgICAodGhpcy5BY3Rpb24gPyB0aGlzLkFjdGlvbiA6ICcnKTtcclxuICB9XHJcbn1cclxuIl19
|