tin-spa 2.0.0 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/{esm2015/lib/classes/Classes.js → esm2020/lib/classes/Classes.mjs} +15 -55
- package/esm2020/lib/classes/TinCore.mjs +148 -0
- package/esm2020/lib/components/activity/activity.component.mjs +24 -0
- package/esm2020/lib/components/attach/attach.component.mjs +105 -0
- package/esm2020/lib/components/change-password/change-password.component.mjs +92 -0
- package/esm2020/lib/components/check/check.component.mjs +56 -0
- package/esm2020/lib/components/chips/chips.component.mjs +58 -0
- package/esm2020/lib/components/create-account/create-account.component.mjs +72 -0
- package/esm2020/lib/components/date/date.component.mjs +64 -0
- package/esm2020/lib/components/datetime/datetime.component.mjs +39 -0
- package/esm2020/lib/components/filter/filter.component.mjs +46 -0
- package/esm2020/lib/components/form/form.component.mjs +63 -0
- package/esm2020/lib/components/label/label.component.mjs +25 -0
- package/esm2020/lib/components/loader/loader.component.mjs +24 -0
- package/esm2020/lib/components/login/login.component.mjs +113 -0
- package/esm2020/lib/components/logs/logs.component.mjs +37 -0
- package/esm2020/lib/components/message/messageDialog.component.mjs +32 -0
- package/esm2020/lib/components/money/currency-input-mask.directive.mjs +185 -0
- package/esm2020/lib/components/money/currency-input-mask.module.mjs +28 -0
- package/esm2020/lib/components/money/money.component.mjs +64 -0
- package/esm2020/lib/components/nav-menu/nav-menu.component.mjs +49 -0
- package/esm2020/lib/components/number/number.component.mjs +86 -0
- package/esm2020/lib/components/option/option.component.mjs +59 -0
- package/esm2020/lib/components/profile/profile.component.mjs +93 -0
- package/esm2020/lib/components/recover-account/recover-account.component.mjs +46 -0
- package/esm2020/lib/components/roles/addRoleDialog.component.mjs +61 -0
- package/esm2020/lib/components/roles/roles.component.mjs +91 -0
- package/esm2020/lib/components/select/select.component.mjs +71 -0
- package/esm2020/lib/components/settings/settings.component.mjs +63 -0
- package/esm2020/lib/components/signup/signup.component.mjs +50 -0
- package/esm2020/lib/components/steps/steps.component.mjs +90 -0
- package/esm2020/lib/components/table/detailsDialog.component.mjs +149 -0
- package/esm2020/lib/components/table/table.component.mjs +341 -0
- package/esm2020/lib/components/text/text.component.mjs +166 -0
- package/esm2020/lib/components/tiles/tiles.component.mjs +41 -0
- package/esm2020/lib/components/tin-spa.component.mjs +19 -0
- package/esm2020/lib/components/users/users.component.mjs +119 -0
- package/esm2020/lib/modules/admin/admin-routing.module.mjs +29 -0
- package/esm2020/lib/modules/admin/admin.module.mjs +26 -0
- package/esm2020/lib/modules/index/index-routing.module.mjs +27 -0
- package/esm2020/lib/modules/index/index.module.mjs +26 -0
- package/esm2020/lib/modules/spa-admin.module.mjs +73 -0
- package/esm2020/lib/modules/spa-index.module.mjs +52 -0
- package/esm2020/lib/modules/spa-mat.module.mjs +67 -0
- package/esm2020/lib/modules/spa-user.module.mjs +49 -0
- package/esm2020/lib/modules/user/user-routing.module.mjs +23 -0
- package/esm2020/lib/modules/user/user.module.mjs +26 -0
- package/esm2020/lib/pipes/camelToWords.pipe.mjs +23 -0
- package/esm2020/lib/services/auth.service.mjs +142 -0
- package/esm2020/lib/services/data.service.mjs +125 -0
- package/esm2020/lib/services/export.service.mjs +16 -0
- package/esm2020/lib/services/http.service.mjs +79 -0
- package/esm2020/lib/services/loader-interceptor.service.mjs +77 -0
- package/esm2020/lib/services/loader.service.mjs +17 -0
- package/esm2020/lib/services/log.service.mjs +77 -0
- package/esm2020/lib/services/message.service.mjs +52 -0
- package/esm2020/lib/services/storage.service.mjs +34 -0
- package/esm2020/lib/services/tin-spa.service.mjs +14 -0
- package/esm2020/lib/tin-spa.module.mjs +114 -0
- package/esm2020/public-api.mjs +62 -0
- package/esm2020/tin-spa.mjs +5 -0
- package/fesm2015/tin-spa.mjs +3846 -0
- package/fesm2015/tin-spa.mjs.map +1 -0
- package/fesm2020/tin-spa.mjs +3829 -0
- package/fesm2020/tin-spa.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/classes/Classes.d.ts +58 -63
- package/lib/classes/TinCore.d.ts +1 -0
- package/lib/components/activity/activity.component.d.ts +3 -0
- package/lib/components/attach/attach.component.d.ts +4 -1
- package/lib/components/change-password/change-password.component.d.ts +3 -0
- package/lib/components/check/check.component.d.ts +3 -0
- package/lib/components/chips/chips.component.d.ts +3 -0
- package/lib/components/create-account/create-account.component.d.ts +3 -0
- package/lib/components/date/date.component.d.ts +14 -6
- package/lib/components/datetime/datetime.component.d.ts +3 -0
- package/lib/components/filter/filter.component.d.ts +4 -0
- package/lib/components/form/form.component.d.ts +16 -0
- package/lib/components/label/label.component.d.ts +3 -0
- package/lib/components/loader/loader.component.d.ts +3 -0
- package/lib/components/login/login.component.d.ts +6 -0
- package/lib/components/logs/logs.component.d.ts +3 -0
- package/lib/components/message/messageDialog.component.d.ts +3 -0
- package/lib/components/money/currency-input-mask.directive.d.ts +41 -0
- package/lib/components/money/currency-input-mask.module.d.ts +9 -0
- package/lib/components/money/money.component.d.ts +9 -1
- package/lib/components/nav-menu/nav-menu.component.d.ts +3 -0
- package/lib/components/number/number.component.d.ts +29 -0
- package/lib/components/option/option.component.d.ts +3 -0
- package/lib/components/profile/profile.component.d.ts +6 -2
- package/lib/components/recover-account/recover-account.component.d.ts +3 -0
- package/lib/components/roles/addRoleDialog.component.d.ts +3 -0
- package/lib/components/roles/roles.component.d.ts +3 -0
- package/lib/components/select/select.component.d.ts +5 -1
- package/lib/components/settings/settings.component.d.ts +3 -0
- package/lib/components/signup/signup.component.d.ts +3 -0
- package/lib/components/steps/steps.component.d.ts +3 -0
- package/lib/components/table/detailsDialog.component.d.ts +28 -0
- package/lib/components/table/table.component.d.ts +57 -17
- package/lib/components/text/text.component.d.ts +13 -9
- package/lib/components/tiles/tiles.component.d.ts +3 -0
- package/lib/components/tin-spa.component.d.ts +4 -4
- package/lib/components/users/users.component.d.ts +4 -0
- package/lib/modules/admin/admin-routing.module.d.ts +7 -0
- package/lib/modules/admin/admin.module.d.ts +9 -0
- package/lib/modules/index/index-routing.module.d.ts +7 -0
- package/lib/modules/index/index.module.d.ts +9 -0
- package/lib/modules/spa-admin.module.d.ts +13 -0
- package/lib/modules/spa-index.module.d.ts +10 -0
- package/lib/modules/spa-mat.module.d.ts +31 -0
- package/lib/modules/spa-user.module.d.ts +9 -0
- package/lib/modules/user/user-routing.module.d.ts +7 -0
- package/lib/modules/user/user.module.d.ts +9 -0
- package/lib/pipes/camelToWords.pipe.d.ts +7 -0
- package/lib/services/auth.service.d.ts +3 -0
- package/lib/services/data.service.d.ts +5 -1
- package/lib/services/export.service.d.ts +3 -4
- package/lib/services/http.service.d.ts +3 -0
- package/lib/services/loader-interceptor.service.d.ts +3 -0
- package/lib/services/loader.service.d.ts +3 -0
- package/lib/services/log.service.d.ts +3 -0
- package/lib/services/message.service.d.ts +3 -0
- package/lib/services/storage.service.d.ts +3 -0
- package/lib/services/tin-spa.service.d.ts +3 -0
- package/lib/tin-spa.module.d.ts +30 -0
- package/package.json +24 -23
- package/public-api.d.ts +7 -2
- package/bundles/tin-spa.umd.js +0 -3672
- package/bundles/tin-spa.umd.js.map +0 -1
- package/bundles/tin-spa.umd.min.js +0 -16
- package/bundles/tin-spa.umd.min.js.map +0 -1
- package/esm2015/lib/classes/TinCore.js +0 -139
- package/esm2015/lib/components/activity/activity.component.js +0 -26
- package/esm2015/lib/components/attach/attach.component.js +0 -107
- package/esm2015/lib/components/change-password/change-password.component.js +0 -102
- package/esm2015/lib/components/check/check.component.js +0 -63
- package/esm2015/lib/components/chips/chips.component.js +0 -66
- package/esm2015/lib/components/create-account/create-account.component.js +0 -78
- package/esm2015/lib/components/date/date.component.js +0 -45
- package/esm2015/lib/components/datetime/datetime.component.js +0 -44
- package/esm2015/lib/components/filter/filter.component.js +0 -40
- package/esm2015/lib/components/label/label.component.js +0 -29
- package/esm2015/lib/components/loader/loader.component.js +0 -29
- package/esm2015/lib/components/login/login.component.js +0 -114
- package/esm2015/lib/components/logs/logs.component.js +0 -39
- package/esm2015/lib/components/message/messageDialog.component.js +0 -31
- package/esm2015/lib/components/money/money.component.js +0 -52
- package/esm2015/lib/components/nav-menu/nav-menu.component.js +0 -51
- package/esm2015/lib/components/option/option.component.js +0 -63
- package/esm2015/lib/components/profile/profile.component.js +0 -98
- package/esm2015/lib/components/recover-account/recover-account.component.js +0 -53
- package/esm2015/lib/components/roles/addRoleDialog.component.js +0 -61
- package/esm2015/lib/components/roles/roles.component.js +0 -94
- package/esm2015/lib/components/select/select.component.js +0 -77
- package/esm2015/lib/components/settings/settings.component.js +0 -63
- package/esm2015/lib/components/signup/signup.component.js +0 -57
- package/esm2015/lib/components/steps/steps.component.js +0 -93
- package/esm2015/lib/components/table/table.component.js +0 -107
- package/esm2015/lib/components/text/text.component.js +0 -165
- package/esm2015/lib/components/tiles/tiles.component.js +0 -41
- package/esm2015/lib/components/timeout/timeout.component.js +0 -90
- package/esm2015/lib/components/tin-spa.component.js +0 -19
- package/esm2015/lib/components/users/users.component.js +0 -120
- package/esm2015/lib/dnd.directive.js +0 -51
- package/esm2015/lib/modules/spa-admin.module.js +0 -50
- package/esm2015/lib/modules/spa-index.module.js +0 -35
- package/esm2015/lib/modules/spa-mat.module.js +0 -53
- package/esm2015/lib/modules/spa-user.module.js +0 -33
- package/esm2015/lib/services/auth.service.js +0 -155
- package/esm2015/lib/services/data.service.js +0 -115
- package/esm2015/lib/services/export.service.js +0 -29
- package/esm2015/lib/services/http.service.js +0 -84
- package/esm2015/lib/services/loader-interceptor.service.js +0 -83
- package/esm2015/lib/services/loader.service.js +0 -17
- package/esm2015/lib/services/log.service.js +0 -76
- package/esm2015/lib/services/message.service.js +0 -58
- package/esm2015/lib/services/storage.service.js +0 -42
- package/esm2015/lib/services/tin-spa.service.js +0 -14
- package/esm2015/lib/tin-spa.module.js +0 -91
- package/esm2015/public-api.js +0 -56
- package/esm2015/tin-spa.js +0 -8
- package/esm5/lib/classes/Classes.js +0 -313
- package/esm5/lib/classes/TinCore.js +0 -166
- package/esm5/lib/components/activity/activity.component.js +0 -27
- package/esm5/lib/components/attach/attach.component.js +0 -119
- package/esm5/lib/components/change-password/change-password.component.js +0 -104
- package/esm5/lib/components/check/check.component.js +0 -64
- package/esm5/lib/components/chips/chips.component.js +0 -68
- package/esm5/lib/components/create-account/create-account.component.js +0 -80
- package/esm5/lib/components/date/date.component.js +0 -46
- package/esm5/lib/components/datetime/datetime.component.js +0 -45
- package/esm5/lib/components/filter/filter.component.js +0 -41
- package/esm5/lib/components/label/label.component.js +0 -30
- package/esm5/lib/components/loader/loader.component.js +0 -31
- package/esm5/lib/components/login/login.component.js +0 -117
- package/esm5/lib/components/logs/logs.component.js +0 -41
- package/esm5/lib/components/message/messageDialog.component.js +0 -32
- package/esm5/lib/components/money/money.component.js +0 -53
- package/esm5/lib/components/nav-menu/nav-menu.component.js +0 -53
- package/esm5/lib/components/option/option.component.js +0 -64
- package/esm5/lib/components/profile/profile.component.js +0 -102
- package/esm5/lib/components/recover-account/recover-account.component.js +0 -55
- package/esm5/lib/components/roles/addRoleDialog.component.js +0 -63
- package/esm5/lib/components/roles/roles.component.js +0 -100
- package/esm5/lib/components/select/select.component.js +0 -79
- package/esm5/lib/components/settings/settings.component.js +0 -66
- package/esm5/lib/components/signup/signup.component.js +0 -59
- package/esm5/lib/components/steps/steps.component.js +0 -105
- package/esm5/lib/components/table/table.component.js +0 -109
- package/esm5/lib/components/text/text.component.js +0 -168
- package/esm5/lib/components/tiles/tiles.component.js +0 -42
- package/esm5/lib/components/timeout/timeout.component.js +0 -92
- package/esm5/lib/components/tin-spa.component.js +0 -17
- package/esm5/lib/components/users/users.component.js +0 -126
- package/esm5/lib/dnd.directive.js +0 -52
- package/esm5/lib/modules/spa-admin.module.js +0 -53
- package/esm5/lib/modules/spa-index.module.js +0 -38
- package/esm5/lib/modules/spa-mat.module.js +0 -56
- package/esm5/lib/modules/spa-user.module.js +0 -36
- package/esm5/lib/services/auth.service.js +0 -157
- package/esm5/lib/services/data.service.js +0 -116
- package/esm5/lib/services/export.service.js +0 -30
- package/esm5/lib/services/http.service.js +0 -85
- package/esm5/lib/services/loader-interceptor.service.js +0 -85
- package/esm5/lib/services/loader.service.js +0 -18
- package/esm5/lib/services/log.service.js +0 -112
- package/esm5/lib/services/message.service.js +0 -59
- package/esm5/lib/services/storage.service.js +0 -74
- package/esm5/lib/services/tin-spa.service.js +0 -16
- package/esm5/lib/tin-spa.module.js +0 -94
- package/esm5/public-api.js +0 -56
- package/esm5/tin-spa.js +0 -8
- package/fesm2015/tin-spa.js +0 -3184
- package/fesm2015/tin-spa.js.map +0 -1
- package/fesm5/tin-spa.js +0 -3422
- package/fesm5/tin-spa.js.map +0 -1
- package/lib/components/timeout/timeout.component.d.ts +0 -21
- package/lib/dnd.directive.d.ts +0 -8
- package/tin-spa.d.ts +0 -7
- package/tin-spa.metadata.json +0 -1
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# TinSpa
|
|
2
2
|
|
|
3
|
-
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version
|
|
3
|
+
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 14.2.0.
|
|
4
4
|
|
|
5
5
|
## Code scaffolding
|
|
6
6
|
|
|
@@ -21,4 +21,4 @@ Run `ng test tin-spa` to execute the unit tests via [Karma](https://karma-runner
|
|
|
21
21
|
|
|
22
22
|
## Further help
|
|
23
23
|
|
|
24
|
-
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI
|
|
24
|
+
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
|
|
@@ -1,63 +1,13 @@
|
|
|
1
1
|
import { Core } from "./TinCore";
|
|
2
|
-
export
|
|
3
|
-
(function (LogLevel) {
|
|
4
|
-
LogLevel[LogLevel["All"] = 0] = "All";
|
|
5
|
-
LogLevel[LogLevel["Debug"] = 1] = "Debug";
|
|
6
|
-
LogLevel[LogLevel["Info"] = 2] = "Info";
|
|
7
|
-
LogLevel[LogLevel["Warn"] = 3] = "Warn";
|
|
8
|
-
LogLevel[LogLevel["Error"] = 4] = "Error";
|
|
9
|
-
LogLevel[LogLevel["Fatal"] = 5] = "Fatal";
|
|
10
|
-
LogLevel[LogLevel["Off"] = 6] = "Off";
|
|
11
|
-
})(LogLevel || (LogLevel = {}));
|
|
12
|
-
export class Tile {
|
|
2
|
+
export class Action {
|
|
13
3
|
}
|
|
14
|
-
export class
|
|
4
|
+
export class FormConfig {
|
|
15
5
|
}
|
|
16
6
|
export class TableConfig {
|
|
17
|
-
constructor() {
|
|
18
|
-
this.enableFilter = false;
|
|
19
|
-
this.create = new TableCreate();
|
|
20
|
-
this.greyout = new Condition();
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
export class TableCreate {
|
|
24
|
-
}
|
|
25
|
-
export class TableColumn {
|
|
26
|
-
constructor() {
|
|
27
|
-
this.name = "default";
|
|
28
|
-
this.display = "default";
|
|
29
|
-
this.type = TableColumnType.String;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
export var TableColumnType;
|
|
33
|
-
(function (TableColumnType) {
|
|
34
|
-
TableColumnType[TableColumnType["String"] = 0] = "String";
|
|
35
|
-
TableColumnType[TableColumnType["Date"] = 1] = "Date";
|
|
36
|
-
TableColumnType[TableColumnType["DateTime"] = 2] = "DateTime";
|
|
37
|
-
TableColumnType[TableColumnType["Image"] = 3] = "Image";
|
|
38
|
-
TableColumnType[TableColumnType["Icon"] = 4] = "Icon";
|
|
39
|
-
TableColumnType[TableColumnType["TextIcon"] = 5] = "TextIcon";
|
|
40
|
-
TableColumnType[TableColumnType["Chip"] = 6] = "Chip";
|
|
41
|
-
})(TableColumnType || (TableColumnType = {}));
|
|
42
|
-
export class Condition {
|
|
43
|
-
constructor() {
|
|
44
|
-
this.field = "";
|
|
45
|
-
this.operator = Operator.Equal;
|
|
46
|
-
this.value = "";
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
export var Operator;
|
|
50
|
-
(function (Operator) {
|
|
51
|
-
Operator[Operator["Equal"] = 0] = "Equal";
|
|
52
|
-
Operator[Operator["Less"] = 1] = "Less";
|
|
53
|
-
Operator[Operator["Greater"] = 2] = "Greater";
|
|
54
|
-
Operator[Operator["NotEqual"] = 3] = "NotEqual";
|
|
55
|
-
})(Operator || (Operator = {}));
|
|
56
|
-
export class Color extends Condition {
|
|
57
7
|
}
|
|
58
|
-
export class
|
|
8
|
+
export class Tile {
|
|
59
9
|
}
|
|
60
|
-
export class
|
|
10
|
+
export class Step {
|
|
61
11
|
}
|
|
62
12
|
export class ActionResponse {
|
|
63
13
|
}
|
|
@@ -251,4 +201,14 @@ export class Role {
|
|
|
251
201
|
this.cap100 = false;
|
|
252
202
|
}
|
|
253
203
|
}
|
|
254
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2xhc3Nlcy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL3Rpbi1zcGEvIiwic291cmNlcyI6WyJsaWIvY2xhc3Nlcy9DbGFzc2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFakMsTUFBTSxDQUFOLElBQVksUUFRWDtBQVJELFdBQVksUUFBUTtJQUNsQixxQ0FBTyxDQUFBO0lBQ1AseUNBQVMsQ0FBQTtJQUNULHVDQUFRLENBQUE7SUFDUix1Q0FBUSxDQUFBO0lBQ1IseUNBQVMsQ0FBQTtJQUNULHlDQUFTLENBQUE7SUFDVCxxQ0FBTyxDQUFBO0FBQ1QsQ0FBQyxFQVJXLFFBQVEsS0FBUixRQUFRLFFBUW5CO0FBRUQsTUFBTSxPQUFPLElBQUk7Q0FRaEI7QUFFRCxNQUFNLE9BQU8sSUFBSTtDQUdoQjtBQUVELE1BQU0sT0FBTyxXQUFXO0lBQXhCO1FBRUUsaUJBQVksR0FBWSxLQUFLLENBQUM7UUFDOUIsV0FBTSxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7UUFLM0IsWUFBTyxHQUFHLElBQUksU0FBUyxFQUFFLENBQUM7SUFFNUIsQ0FBQztDQUFBO0FBRUQsTUFBTSxPQUFPLFdBQVc7Q0FHdkI7QUFFRCxNQUFNLE9BQU8sV0FBVztJQUV0QjtRQUNFLElBQUksQ0FBQyxJQUFJLEdBQUcsU0FBUyxDQUFBO1FBQ3JCLElBQUksQ0FBQyxPQUFPLEdBQUcsU0FBUyxDQUFBO1FBQ3hCLElBQUksQ0FBQyxJQUFJLEdBQUcsZUFBZSxDQUFDLE1BQU0sQ0FBQTtJQUVwQyxDQUFDO0NBT0Y7QUFFRCxNQUFNLENBQU4sSUFBWSxlQUVYO0FBRkQsV0FBWSxlQUFlO0lBQ3pCLHlEQUFNLENBQUE7SUFBRSxxREFBSSxDQUFBO0lBQUUsNkRBQVEsQ0FBQTtJQUFFLHVEQUFLLENBQUE7SUFBRSxxREFBSSxDQUFBO0lBQUUsNkRBQVEsQ0FBQTtJQUFFLHFEQUFJLENBQUE7QUFDckQsQ0FBQyxFQUZXLGVB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QyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO0lBQ3RCLENBQUM7Q0F3R0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb3JlIH0gZnJvbSBcIi4vVGluQ29yZVwiO1xyXG5cclxuZXhwb3J0IGVudW0gTG9nTGV2ZWwge1xyXG4gIEFsbCA9IDAsXHJcbiAgRGVidWcgPSAxLFxyXG4gIEluZm8gPSAyLFxyXG4gIFdhcm4gPSAzLFxyXG4gIEVycm9yID0gNCxcclxuICBGYXRhbCA9IDUsXHJcbiAgT2ZmID0gNixcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIFRpbGUge1xyXG5cclxuICB0aWxlTmFtZTogc3RyaW5nO1xyXG4gIHRpbGVWYWx1ZTogc3RyaW5nO1xyXG4gIHRpbGVDb2xvcjogc3RyaW5nO1xyXG4gIHNlbGVjdGVkOiBzdHJpbmc7XHJcbiAgdmlzaWJsZT86IGJvb2xlYW47XHJcbiAgaW5mbz86IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIFN0ZXAge1xyXG4gIG5hbWU6IHN0cmluZ1xyXG4gIGljb246IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIFRhYmxlQ29uZmlnIHtcclxuXHJcbiAgZW5hYmxlRmlsdGVyOiBib29sZWFuID0gZmFsc2U7XHJcbiAgY3JlYXRlID0gbmV3IFRhYmxlQ3JlYXRlKCk7XHJcblxyXG4gIGNvbHVtbnM6IFRhYmxlQ29sdW1uW107XHJcbiAgYWN0aW9uczogVGFibGVBY3Rpb25bXTtcclxuXHJcbiAgZ3JleW91dCA9IG5ldyBDb25kaXRpb24oKTtcclxuXHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBUYWJsZUNyZWF0ZSB7XHJcbiAgZW5hYmxlZDogYm9vbGVhblxyXG4gIGRpc3BsYXk6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIFRhYmxlQ29sdW1uIHtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICB0aGlzLm5hbWUgPSBcImRlZmF1bHRcIlxyXG4gICAgdGhpcy5kaXNwbGF5ID0gXCJkZWZhdWx0XCJcclxuICAgIHRoaXMudHlwZSA9IFRhYmxlQ29sdW1uVHlwZS5TdHJpbmdcclxuXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbmFtZTogc3RyaW5nO1xyXG4gIHB1YmxpYyBkaXNwbGF5OiBzdHJpbmc7XHJcbiAgcHVibGljIHR5cGU/OiBUYWJsZUNvbHVtblR5cGU7XHJcbiAgcHVibGljIGljb25zPzogSWNvbltdO1xyXG4gIHB1YmxpYyBjb2xvcj86IENvbG9yO1xyXG59XHJcblxyXG5leHBvcnQgZW51bSBUYWJsZUNvbHVtblR5cGUge1xyXG4gIFN0cmluZywgRGF0ZSwgRGF0ZVRpbWUsIEltYWdlLCBJY29uLCBUZXh0SWNvbiwgQ2hpcFxyXG59XHJcblxyXG5cclxuZXhwb3J0IGNsYXNzIENvbmRpdGlvbiB7XHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICB0aGlzLmZpZWxkID0gXCJcIjtcclxuICAgIHRoaXMub3BlcmF0b3IgPSBPcGVyYXRvci5FcXVhbDtcclxuICAgIHRoaXMudmFsdWUgPSBcIlwiO1xyXG4gIH1cclxuICBmaWVsZDogc3RyaW5nO1xyXG4gIG9wZXJhdG9yOiBPcGVyYXRvcjtcclxuICB2YWx1ZTogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgZW51bSBPcGVyYXRvciB7XHJcbiAgRXF1YWwsIExlc3MsIEdyZWF0ZXIsIE5vdEVxdWFsXHJcbn1cclxuXHJcblxyXG5cclxuZXhwb3J0IGNsYXNzIENvbG9yIGV4dGVuZHMgQ29uZGl0aW9uIHtcclxuICBuYW1lOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBJY29uIGV4dGVuZHMgQ29uZGl0aW9uIHtcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgaGludD86IHN0cmluZztcclxuICBjb2xvcj86IHN0cmluZztcclxufVxyXG5cclxuXHJcbmV4cG9ydCBjbGFzcyBUYWJsZUFjdGlvbiB7XHJcblxyXG4gIG5hbWU6IHN0cmluZztcclxuICBzaG93PzogYm9vbGVhbjtcclxuICBpY29uOiBzdHJpbmc7XHJcbiAgY29sb3I/OiBzdHJpbmc7XHJcbiAgaGludD86IHN0cmluZztcclxuXHJcbiAgZGlzYXBwZWFyPzogQ29uZGl0aW9uO1xyXG4gIGRpc2FibGU/OiBDb25kaXRpb247XHJcblxyXG59XHJcblxyXG5cclxuZXhwb3J0IGNsYXNzIEFjdGlvblJlc3BvbnNlIHtcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgdmFsdWU7XHJcbn1cclxuXHJcblxyXG5leHBvcnQgY2xhc3MgbG9naW5Db25maWcge1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHRoaXMuYXBwTmFtZSA9IFwiXCI7XHJcbiAgICB0aGlzLnNlbGZTZXJ2aWNlID0gZmFsc2U7XHJcbiAgICB0aGlzLmxvZ28gPSBcIlwiO1xyXG4gICAgdGhpcy5sb2dvU2l6ZSA9IFwibm9ybWFsXCI7XHJcbiAgfVxyXG5cclxuICBhcHBOYW1lOiBzdHJpbmc7XHJcbiAgc2VsZlNlcnZpY2U6IGJvb2xlYW47XHJcbiAgbG9nbzogc3RyaW5nO1xyXG4gIGxvZ29TaXplOiBzdHJpbmc7XHJcbn1cclxuXHJcblxyXG5leHBvcnQgY2xhc3MgQXBwQ29uZmlnIHtcclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHRoaXMuYXBwTmFtZSA9IFwiQXBwIE5hbWVcIjtcclxuICAgIHRoaXMubG9nbyA9IFwiXCI7XHJcbiAgICB0aGlzLmxvZ29TaXplID0gXCJub3JtYWxcIjtcclxuICAgIHRoaXMuQURBdXRoID0gdHJ1ZTtcclxuICAgIHRoaXMubG9jYWxBdXRoID0gdHJ1ZTtcclxuICAgIHRoaXMuc2VsZlNlcnZpY2UgPSBmYWxzZTtcclxuICB9XHJcbiAgYXBwTmFtZTogc3RyaW5nO1xyXG4gIGxvZ286IHN0cmluZztcclxuICBsb2dvU2l6ZTogc3RyaW5nO1xyXG4gIEFEQXV0aDogYm9vbGVhbjtcclxuICBsb2NhbEF1dGg6IGJvb2xlYW47XHJcbiAgc2VsZlNlcnZpY2U6IGJvb2xlYW47XHJcbiAgY2FwSXRlbXM6IENhcEl0ZW1bXTtcclxuXHJcblxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgQ2FwSXRlbSB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgdGhpcy5uYW1lID0gXCJcIjtcclxuICAgIHRoaXMuZGlzcGxheSA9IFwiTmV3IENhcCBJdGVtXCI7XHJcbiAgICB0aGlzLmVuYWJsZWQgPSBmYWxzZTtcclxuICAgIHRoaXMudHlwZSA9IFwiXCI7XHJcbiAgICB0aGlzLm5ld0xpbmUgPSBmYWxzZTtcclxuICAgIHRoaXMuc2hvd01lbnUgPSB0cnVlO1xyXG4gICAgdGhpcy5pZ25vcmVTdWJzRGlzcGxheSA9IGZhbHNlO1xyXG4gICAgdGhpcy5saW5rID0gXCJcIjtcclxuICAgIHRoaXMuaWNvbiA9IFwibmF2aWdhdGVfbmV4dFwiO1xyXG5cclxuICB9XHJcblxyXG4gIG5hbWU6IHN0cmluZztcclxuICBkaXNwbGF5OiBzdHJpbmc7XHJcbiAgZW5hYmxlZDogYm9vbGVhbjtcclxuICBzaG93TWVudTogYm9vbGVhbjtcclxuXHJcbiAgaWdub3JlU3Vic0Rpc3BsYXk6IGJvb2xlYW47XHJcbiAgdHlwZTogc3RyaW5nO1xyXG4gIG5ld0xpbmU6IGJvb2xlYW47XHJcbiAgbGluazogc3RyaW5nO1xyXG4gIGljb246IHN0cmluZztcclxuICBjYXBTdWJJdGVtczogQ2FwSXRlbVtdO1xyXG5cclxufVxyXG5cclxuXHJcbmV4cG9ydCBjbGFzcyBBY2NvdW50IHtcclxuICB1c2VyOiBVc2VyO1xyXG4gIHByb2ZpbGU6IFByb2ZpbGU7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBVc2VyIHtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcblxyXG5cclxuICAgIHRoaXMudXNlck5hbWUgPSBcIlwiO1xyXG4gICAgdGhpcy5wYXNzd29yZCA9IFwiXCI7XHJcbiAgICB0aGlzLnRyaWVzID0gXCIwXCI7XHJcbiAgICB0aGlzLmxvY2tlZCA9IFwiMFwiO1xyXG4gICAgdGhpcy5sb2dnZWQgPSBcIjBcIjtcclxuICAgIHRoaXMuZGlzYWJsZWQgPSBcIjBcIjtcclxuICAgIHRoaXMuY2hhbmdlcGFzc3dvcmQgPSBcIjBcIjtcclxuICAgIHRoaXMuZGF0ZUNyZWF0ZWQgPSBDb3JlLm5vd0RhdGUoKTtcclxuICAgIHRoaXMuZGF0ZVVwZGF0ZWQgPSBDb3JlLm5vd0RhdGUoKTtcclxuICAgIHRoaXMudG9rZW4gPSBcIlwiO1xyXG4gICAgdGhpcy5kYXRlRXhwaXJlID0gQ29yZS5ub3dEYXRlKCk7XHJcbiAgICB0aGlzLnRva2VuRXhwaXJlID0gQ29yZS5ub3dEYXRlKCk7XHJcbiAgICB0aGlzLmF1dGhUeXBlID0gXCJcIjtcclxuICB9XHJcblxyXG4gIHVzZXJOYW1lOnN0cmluZztcclxuICBwYXNzd29yZDogc3RyaW5nO1xyXG4gIHRyaWVzOiBzdHJpbmc7XHJcbiAgbG9ja2VkOiBzdHJpbmc7XHJcbiAgbG9nZ2VkOiBzdHJpbmc7XHJcbiAgZGlzYWJsZWQ6IHN0cmluZztcclxuICBjaGFuZ2VwYXNzd29yZDogc3RyaW5nO1xyXG4gIGRhdGVDcmVhdGVkOiBzdHJpbmc7XHJcbiAgZGF0ZVVwZGF0ZWQ6IHN0cmluZztcclxuICBkYXRlRXhwaXJlOiBzdHJpbmc7XHJcbiAgdG9rZW46IHN0cmluZztcclxuICB0b2tlbkV4cGlyZTogc3RyaW5nO1xyXG5cclxuICBhdXRoVHlwZTogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgQ2hhbmdlVXNlclBhc3N3b3JkIHtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICB0aGlzLnVzZXJOYW1lID0gXCJcIjtcclxuICAgIHRoaXMuY3VycmVudFBhc3N3b3JkID0gXCJcIjtcclxuICAgIHRoaXMubmV3UGFzc3dvcmQgPSBcIlwiO1xyXG4gICAgdGhpcy5jb25maXJtUGFzc3dvcmQgPSBcIlwiO1xyXG4gIH1cclxuICB1c2VyTmFtZTogc3RyaW5nO1xyXG4gIGN1cnJlbnRQYXNzd29yZDogc3RyaW5nO1xyXG4gIG5ld1Bhc3N3b3JkOiBzdHJpbmc7XHJcbiAgY29uZmlybVBhc3N3b3JkOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBSZWdpc3RlciB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgdGhpcy51c2VyTmFtZSA9IFwiXCI7XHJcbiAgICB0aGlzLnJvbGVJRCA9IDE7XHJcbiAgICB0aGlzLmZpcnN0TmFtZSA9IFwiXCI7XHJcbiAgICB0aGlzLmxhc3ROYW1lID0gXCJcIjtcclxuICAgIHRoaXMuZW1haWwgPSBcIlwiO1xyXG4gICAgdGhpcy5hdXRoVHlwZSA9IFwiXCI7XHJcbiAgICB0aGlzLnBhc3N3b3JkID0gXCJcIjtcclxuICB9XHJcblxyXG4gIHVzZXJOYW1lOiBzdHJpbmc7XHJcbiAgcm9sZUlEOiBudW1iZXI7XHJcbiAgZmlyc3ROYW1lOiBzdHJpbmc7XHJcbiAgbGFzdE5hbWU6IHN0cmluZztcclxuICBlbWFpbDogc3RyaW5nO1xyXG4gIGF1dGhUeXBlOiBzdHJpbmc7XHJcbiAgcGFzc3dvcmQ6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIFByb2ZpbGUge1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHRoaXMucHJvZmlsZUlEID0gXCJcIjtcclxuICAgIHRoaXMudXNlck5hbWUgPSBcIlwiO1xyXG4gICAgdGhpcy5yb2xlSUQgPSAxO1xyXG4gICAgdGhpcy5maXJzdE5hbWUgPSBcIlwiO1xyXG4gICAgdGhpcy5sYXN0TmFtZSA9IFwiXCI7XHJcbiAgICB0aGlzLmVtYWlsID0gXCJcIjtcclxuICAgIHRoaXMuZW1wSUQgPSBcIlwiO1xyXG4gICAgdGhpcy5hcklEID0gXCIwXCI7XHJcbiAgICB0aGlzLmF1dGhUeXBlID0gXCJcIjtcclxuICAgIHRoaXMucGFzc3dvcmQgPSBcIlwiO1xyXG4gICAgdGhpcy5yb2xlID0gbmV3IFJvbGUoKTtcclxuICB9XHJcblxyXG4gIHByb2ZpbGVJRDogc3RyaW5nO1xyXG4gIHVzZXJOYW1lOiBzdHJpbmc7XHJcbiAgcm9sZUlEOiBudW1iZXI7XHJcbiAgZmlyc3ROYW1lOiBzdHJpbmc7XHJcbiAgbGFzdE5hbWU6IHN0cmluZztcclxuICBlbWFpbDogc3RyaW5nO1xyXG4gIGVtcElEOiBzdHJpbmc7XHJcbiAgYXJJRDogc3RyaW5nO1xyXG4gIGF1dGhUeXBlOiBzdHJpbmc7XHJcbiAgcGFzc3dvcmQ6IHN0cmluZztcclxuICByb2xlOiBSb2xlXHJcbn1cclxuXHJcblxyXG5leHBvcnQgY2xhc3MgUm9sZSB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgdGhpcy5yb2xlSUQgPSAwO1xyXG4gICAgdGhpcy5yb2xlTmFtZSA9IFwiTmV3IFJvbGVcIjtcclxuICAgIHRoaXMuY2FwMSA9IGZhbHNlO1xyXG4gICAgdGhpcy5jYXAyID0gZmFsc2U7XHJcbiAgICB0aGlzLmNhcDMgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNCA9IGZhbHNlO1xyXG4gICAgdGhpcy5jYXA1ID0gZmFsc2U7XHJcbiAgICB0aGlzLmNhcDYgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNyA9IGZhbHNlO1xyXG4gICAgdGhpcy5jYXA4ID0gZmFsc2U7XHJcbiAgICB0aGlzLmNhcDkgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMTAgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMTEgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMTIgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMTMgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMTQgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMTUgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMTYgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMTcgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMTggPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMTkgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMjAgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMjEgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMjIgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMjMgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMjQgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMjUgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMjYgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMjcgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMjggPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMjkgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMzAgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMzEgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMzIgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMzMgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMzQgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMzUgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMzYgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMzcgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMzggPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMzkgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNDAgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNDEgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNDIgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNDMgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNDQgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNDUgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNDYgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNDcgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNDggPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNDkgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNTAgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNTEgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNTIgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNTMgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNTQgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNTUgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNTYgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNTcgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNTggPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNTkgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNjAgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNjEgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNjIgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNjMgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNjQgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNjUgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNjYgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNjcgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNjggPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNjkgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNzAgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNzEgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNzIgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNzMgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNzQgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNzUgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNzYgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNzcgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNzggPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNzkgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwODAgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwODEgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwODIgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwODMgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwODQgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwODUgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwODYgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwODcgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwODggPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwODkgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwOTAgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwOTEgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwOTIgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwOTMgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwOTQgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwOTUgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwOTYgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwOTcgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwOTggPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwOTkgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMTAwID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICByb2xlSUQ6IG51bWJlcjtcclxuICByb2xlTmFtZTogc3RyaW5nO1xyXG4gIGNhcDE6IGJvb2xlYW47XHJcbiAgY2FwMjogYm9vbGVhbjtcclxuICBjYXAzOiBib29sZWFuO1xyXG4gIGNhcDQ6IGJvb2xlYW47XHJcbiAgY2FwNTogYm9vbGVhbjtcclxuICBjYXA2OiBib29sZWFuO1xyXG4gIGNhcDc6IGJvb2xlYW47XHJcbiAgY2FwODogYm9vbGVhbjtcclxuICBjYXA5OiBib29sZWFuO1xyXG4gIGNhcDEwOiBib29sZWFuO1xyXG4gIGNhcDExOiBib29sZWFuO1xyXG4gIGNhcDEyOiBib29sZWFuO1xyXG4gIGNhcDEzOiBib29sZWFuO1xyXG4gIGNhcDE0OiBib29sZWFuO1xyXG4gIGNhcDE1OiBib29sZWFuO1xyXG4gIGNhcDE2OiBib29sZWFuO1xyXG4gIGNhcDE3OiBib29sZWFuO1xyXG4gIGNhcDE4OiBib29sZWFuO1xyXG4gIGNhcDE5OiBib29sZWFuO1xyXG4gIGNhcDIwOiBib29sZWFuO1xyXG4gIGNhcDIxOiBib29sZWFuO1xyXG4gIGNhcDIyOiBib29sZWFuO1xyXG4gIGNhcDIzOiBib29sZWFuO1xyXG4gIGNhcDI0OiBib29sZWFuO1xyXG4gIGNhcDI1OiBib29sZWFuO1xyXG4gIGNhcDI2OiBib29sZWFuO1xyXG4gIGNhcDI3OiBib29sZWFuO1xyXG4gIGNhcDI4OiBib29sZWFuO1xyXG4gIGNhcDI5OiBib29sZWFuO1xyXG4gIGNhcDMwOiBib29sZWFuO1xyXG4gIGNhcDMxOiBib29sZWFuO1xyXG4gIGNhcDMyOiBib29sZWFuO1xyXG4gIGNhcDMzOiBib29sZWFuO1xyXG4gIGNhcDM0OiBib29sZWFuO1xyXG4gIGNhcDM1OiBib29sZWFuO1xyXG4gIGNhcDM2OiBib29sZWFuO1xyXG4gIGNhcDM3OiBib29sZWFuO1xyXG4gIGNhcDM4OiBib29sZWFuO1xyXG4gIGNhcDM5OiBib29sZWFuO1xyXG4gIGNhcDQwOiBib29sZWFuO1xyXG4gIGNhcDQxOiBib29sZWFuO1xyXG4gIGNhcDQyOiBib29sZWFuO1xyXG4gIGNhcDQzOiBib29sZWFuO1xyXG4gIGNhcDQ0OiBib29sZWFuO1xyXG4gIGNhcDQ1OiBib29sZWFuO1xyXG4gIGNhcDQ2OiBib29sZWFuO1xyXG4gIGNhcDQ3OiBib29sZWFuO1xyXG4gIGNhcDQ4OiBib29sZWFuO1xyXG4gIGNhcDQ5OiBib29sZWFuO1xyXG4gIGNhcDUwOiBib29sZWFuO1xyXG4gIGNhcDUxOiBib29sZWFuO1xyXG4gIGNhcDUyOiBib29sZWFuO1xyXG4gIGNhcDUzOiBib29sZWFuO1xyXG4gIGNhcDU0OiBib29sZWFuO1xyXG4gIGNhcDU1OiBib29sZWFuO1xyXG4gIGNhcDU2OiBib29sZWFuO1xyXG4gIGNhcDU3OiBib29sZWFuO1xyXG4gIGNhcDU4OiBib29sZWFuO1xyXG4gIGNhcDU5OiBib29sZWFuO1xyXG4gIGNhcDYwOiBib29sZWFuO1xyXG4gIGNhcDYxOiBib29sZWFuO1xyXG4gIGNhcDYyOiBib29sZWFuO1xyXG4gIGNhcDYzOiBib29sZWFuO1xyXG4gIGNhcDY0OiBib29sZWFuO1xyXG4gIGNhcDY1OiBib29sZWFuO1xyXG4gIGNhcDY2OiBib29sZWFuO1xyXG4gIGNhcDY3OiBib29sZWFuO1xyXG4gIGNhcDY4OiBib29sZWFuO1xyXG4gIGNhcDY5OiBib29sZWFuO1xyXG4gIGNhcDcwOiBib29sZWFuO1xyXG4gIGNhcDcxOiBib29sZWFuO1xyXG4gIGNhcDcyOiBib29sZWFuO1xyXG4gIGNhcDczOiBib29sZWFuO1xyXG4gIGNhcDc0OiBib29sZWFuO1xyXG4gIGNhcDc1OiBib29sZWFuO1xyXG4gIGNhcDc2OiBib29sZWFuO1xyXG4gIGNhcDc3OiBib29sZWFuO1xyXG4gIGNhcDc4OiBib29sZWFuO1xyXG4gIGNhcDc5OiBib29sZWFuO1xyXG4gIGNhcDgwOiBib29sZWFuO1xyXG4gIGNhcDgxOiBib29sZWFuO1xyXG4gIGNhcDgyOiBib29sZWFuO1xyXG4gIGNhcDgzOiBib29sZWFuO1xyXG4gIGNhcDg0OiBib29sZWFuO1xyXG4gIGNhcDg1OiBib29sZWFuO1xyXG4gIGNhcDg2OiBib29sZWFuO1xyXG4gIGNhcDg3OiBib29sZWFuO1xyXG4gIGNhcDg4OiBib29sZWFuO1xyXG4gIGNhcDg5OiBib29sZWFuO1xyXG4gIGNhcDkwOiBib29sZWFuO1xyXG4gIGNhcDkxOiBib29sZWFuO1xyXG4gIGNhcDkyOiBib29sZWFuO1xyXG4gIGNhcDkzOiBib29sZWFuO1xyXG4gIGNhcDk0OiBib29sZWFuO1xyXG4gIGNhcDk1OiBib29sZWFuO1xyXG4gIGNhcDk2OiBib29sZWFuO1xyXG4gIGNhcDk3OiBib29sZWFuO1xyXG4gIGNhcDk4OiBib29sZWFuO1xyXG4gIGNhcDk5OiBib29sZWFuO1xyXG4gIGNhcDEwMDogYm9vbGVhbjtcclxufVxyXG4iXX0=
|
|
204
|
+
export var LogLevel;
|
|
205
|
+
(function (LogLevel) {
|
|
206
|
+
LogLevel[LogLevel["All"] = 0] = "All";
|
|
207
|
+
LogLevel[LogLevel["Debug"] = 1] = "Debug";
|
|
208
|
+
LogLevel[LogLevel["Info"] = 2] = "Info";
|
|
209
|
+
LogLevel[LogLevel["Warn"] = 3] = "Warn";
|
|
210
|
+
LogLevel[LogLevel["Error"] = 4] = "Error";
|
|
211
|
+
LogLevel[LogLevel["Fatal"] = 5] = "Fatal";
|
|
212
|
+
LogLevel[LogLevel["Off"] = 6] = "Off";
|
|
213
|
+
})(LogLevel || (LogLevel = {}));
|
|
214
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2xhc3Nlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rpbi1zcGEvc3JjL2xpYi9jbGFzc2VzL0NsYXNzZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVqQyxNQUFNLE9BQU8sTUFBTTtDQUtsQjtBQUVELE1BQU0sT0FBTyxVQUFVO0NBSXRCO0FBMEJELE1BQU0sT0FBTyxXQUFXO0NBUXZCO0FBZUQsTUFBTSxPQUFPLElBQUk7Q0FRaEI7QUFFRCxNQUFNLE9BQU8sSUFBSTtDQUdoQjtBQUlELE1BQU0sT0FBTyxjQUFjO0NBRzFCO0FBR0QsTUFBTSxPQUFPLFdBQVc7SUFFdEI7UUFDRSxJQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztRQUNsQixJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztRQUN6QixJQUFJLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUNmLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQzNCLENBQUM7Q0FNRjtBQUdELE1BQU0sT0FBTyxTQUFTO0lBQ3BCO1FBQ0UsSUFBSSxDQUFDLE9BQU8sR0FBRyxVQUFVLENBQUM7UUFDMUIsSUFBSSxDQUFDLElBQUksR0FBRyxFQUFFLENBQUM7UUFDZixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUNuQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztRQUN0QixJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztJQUMzQixDQUFDO0NBVUY7QUFFRCxNQUFNLE9BQU8sT0FBTztJQUVsQjtRQUNFLElBQUksQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ2YsSUFBSSxDQUFDLE9BQU8sR0FBRyxjQUFjLENBQUM7UUFDOUIsSUFBSSxDQUFDLE9BQU8s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QUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUNoQixJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztRQUMzQixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUNsQixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUNsQixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUNsQixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUNsQixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUNsQixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUNsQixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUNsQixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUNsQixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUNsQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUN0QixDQUFDO0NBd0dGO0FBR0QsTUFBTSxDQUFOLElBQVksUUFRWDtBQVJELFdBQVksUUFBUTtJQUNsQixxQ0FBTyxDQUFBO0lBQ1AseUNBQVMsQ0FBQTtJQUNULHVDQUFRLENBQUE7SUFDUix1Q0FBUSxDQUFBO0lBQ1IseUNBQVMsQ0FBQTtJQUNULHlDQUFTLENBQUE7SUFDVCxxQ0FBTyxDQUFBO0FBQ1QsQ0FBQyxFQVJXLFFBQVEsS0FBUixRQUFRLFFBUW5CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29yZSB9IGZyb20gXCIuL1RpbkNvcmVcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBBY3Rpb257XHJcbiAgbWV0aG9kPzogJ2dldCcgfCAncG9zdCdcclxuICB1cmw6IHN0cmluZztcclxuICBwYXJhbXM/IDogYW55W11cclxuICBzdWNjZXNzTWVzc2FnZT86IHN0cmluZ1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgRm9ybUNvbmZpZyB7XHJcbiAgZmllbGRzOiBGaWVsZFtdXHJcbiAgbW9kZT86IHN0cmluZ1xyXG4gIGJ1dHRvbj8gOiBCdXR0b25cclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBCdXR0b257XHJcbiAgbmFtZTogJ2NyZWF0ZScgfCAndmlldycgfCAnZWRpdCcgfCAnZGVsZXRlJyB8ICdjdXN0b20xJyB8ICdjdXN0b20yJyB8ICdjdXN0b20zJztcclxuICB2aXNpYmxlPzogKHZhbHVlOiBhbnkpID0+IGJvb2xlYW47XHJcbiAgZGlzcGxheT86IHN0cmluZztcclxuICBpY29uPzogSWNvbjtcclxuICBkaXNhYmxlZD86ICh2YWx1ZTogYW55KSA9PiBib29sZWFuO1xyXG4gIGNvbG9yPzogc3RyaW5nO1xyXG4gIHRpcD86IHN0cmluZ1xyXG4gIGRpYWxvZz86IGJvb2xlYW5cclxuICBhY3Rpb24/OiBBY3Rpb25cclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDb25kaXRpb257XHJcbiAgY29uZGl0aW9uPzogKHZhbHVlOiBhbnkpID0+IGJvb2xlYW47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRmllbGQge1xyXG4gIG5hbWU6IHN0cmluZztcclxuICB0eXBlOiAndGV4dCcgfCAnZGF0ZScgfCAnY2hlY2tib3gnIHwgJ3NlbGVjdCcgfCAnbW9uZXknIHwgJ251bWJlcic7XHJcbiAgb3B0aW9ucz86IGFueVtdO1xyXG4gIG9wdGlvbkRpc3BsYXk/OiBzdHJpbmdcclxuICBvcHRpb25WYWx1ZT86IHN0cmluZ1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgVGFibGVDb25maWd7XHJcbiAgY29sdW1ucz8gOiBDb2x1bW5bXVxyXG4gIHNob3dGaWx0ZXI/OiBib29sZWFuXHJcbiAgLy8gbmV3VGV4dD86IHN0cmluZ1xyXG4gIGZvcm1Db25maWc/OiBGb3JtQ29uZmlnXHJcbiAgbWluQ29sdW1ucz86IHN0cmluZ1tdXHJcbiAgYnV0dG9ucz86IEJ1dHRvbltdXHJcbiAgbG9hZEFjdGlvbj86IEFjdGlvblxyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgQ29sdW1uIHtcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgdHlwZT86ICd0ZXh0JyB8ICdkYXRlJyB8ICdjaGVja2JveCcgfCAnc2VsZWN0JyB8ICdtb25leScgfCAnbnVtYmVyJztcclxuICBhbGlhcz86IHN0cmluZztcclxuICBpY29uPzogSWNvbjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJY29ue1xyXG4gIG5hbWU6IHN0cmluZ1xyXG4gIGNvbG9yPzogc3RyaW5nXHJcbiAgdGlwPzogc3RyaW5nXHJcbiAgY29uZGl0aW9uPzogKHZhbHVlOiBhbnkpID0+IGJvb2xlYW47XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBUaWxlIHtcclxuXHJcbiAgdGlsZU5hbWU6IHN0cmluZztcclxuICB0aWxlVmFsdWU6IHN0cmluZztcclxuICB0aWxlQ29sb3I6IHN0cmluZztcclxuICBzZWxlY3RlZDogc3RyaW5nO1xyXG4gIHZpc2libGU/OiBib29sZWFuO1xyXG4gIGluZm8/OiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBTdGVwIHtcclxuICBuYW1lOiBzdHJpbmdcclxuICBpY29uOiBzdHJpbmc7XHJcbn1cclxuXHJcblxyXG5cclxuZXhwb3J0IGNsYXNzIEFjdGlvblJlc3BvbnNlIHtcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgdmFsdWU7XHJcbn1cclxuXHJcblxyXG5leHBvcnQgY2xhc3MgbG9naW5Db25maWcge1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHRoaXMuYXBwTmFtZSA9IFwiXCI7XHJcbiAgICB0aGlzLnNlbGZTZXJ2aWNlID0gZmFsc2U7XHJcbiAgICB0aGlzLmxvZ28gPSBcIlwiO1xyXG4gICAgdGhpcy5sb2dvU2l6ZSA9IFwibm9ybWFsXCI7XHJcbiAgfVxyXG5cclxuICBhcHBOYW1lOiBzdHJpbmc7XHJcbiAgc2VsZlNlcnZpY2U6IGJvb2xlYW47XHJcbiAgbG9nbzogc3RyaW5nO1xyXG4gIGxvZ29TaXplOiBzdHJpbmc7XHJcbn1cclxuXHJcblxyXG5leHBvcnQgY2xhc3MgQXBwQ29uZmlnIHtcclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHRoaXMuYXBwTmFtZSA9IFwiQXBwIE5hbWVcIjtcclxuICAgIHRoaXMubG9nbyA9IFwiXCI7XHJcbiAgICB0aGlzLmxvZ29TaXplID0gXCJub3JtYWxcIjtcclxuICAgIHRoaXMuQURBdXRoID0gdHJ1ZTtcclxuICAgIHRoaXMubG9jYWxBdXRoID0gdHJ1ZTtcclxuICAgIHRoaXMuc2VsZlNlcnZpY2UgPSBmYWxzZTtcclxuICB9XHJcbiAgYXBwTmFtZTogc3RyaW5nO1xyXG4gIGxvZ286IHN0cmluZztcclxuICBsb2dvU2l6ZTogc3RyaW5nO1xyXG4gIEFEQXV0aDogYm9vbGVhbjtcclxuICBsb2NhbEF1dGg6IGJvb2xlYW47XHJcbiAgc2VsZlNlcnZpY2U6IGJvb2xlYW47XHJcbiAgY2FwSXRlbXM6IENhcEl0ZW1bXTtcclxuXHJcblxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgQ2FwSXRlbSB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgdGhpcy5uYW1lID0gXCJcIjtcclxuICAgIHRoaXMuZGlzcGxheSA9IFwiTmV3IENhcCBJdGVtXCI7XHJcbiAgICB0aGlzLmVuYWJsZWQgPSBmYWxzZTtcclxuICAgIHRoaXMudHlwZSA9IFwiXCI7XHJcbiAgICB0aGlzLm5ld0xpbmUgPSBmYWxzZTtcclxuICAgIHRoaXMuc2hvd01lbnUgPSB0cnVlO1xyXG4gICAgdGhpcy5pZ25vcmVTdWJzRGlzcGxheSA9IGZhbHNlO1xyXG4gICAgdGhpcy5saW5rID0gXCJcIjtcclxuICAgIHRoaXMuaWNvbiA9IFwibmF2aWdhdGVfbmV4dFwiO1xyXG5cclxuICB9XHJcblxyXG4gIG5hbWU6IHN0cmluZztcclxuICBkaXNwbGF5OiBzdHJpbmc7XHJcbiAgZW5hYmxlZDogYm9vbGVhbjtcclxuICBzaG93TWVudTogYm9vbGVhbjtcclxuXHJcbiAgaWdub3JlU3Vic0Rpc3BsYXk6IGJvb2xlYW47XHJcbiAgdHlwZTogc3RyaW5nO1xyXG4gIG5ld0xpbmU6IGJvb2xlYW47XHJcbiAgbGluazogc3RyaW5nO1xyXG4gIGljb246IHN0cmluZztcclxuICBjYXBTdWJJdGVtczogQ2FwSXRlbVtdO1xyXG5cclxufVxyXG5cclxuXHJcbmV4cG9ydCBjbGFzcyBBY2NvdW50IHtcclxuICB1c2VyOiBVc2VyO1xyXG4gIHByb2ZpbGU6IFByb2ZpbGU7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBVc2VyIHtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcblxyXG5cclxuICAgIHRoaXMudXNlck5hbWUgPSBcIlwiO1xyXG4gICAgdGhpcy5wYXNzd29yZCA9IFwiXCI7XHJcbiAgICB0aGlzLnRyaWVzID0gXCIwXCI7XHJcbiAgICB0aGlzLmxvY2tlZCA9IFwiMFwiO1xyXG4gICAgdGhpcy5sb2dnZWQgPSBcIjBcIjtcclxuICAgIHRoaXMuZGlzYWJsZWQgPSBcIjBcIjtcclxuICAgIHRoaXMuY2hhbmdlcGFzc3dvcmQgPSBcIjBcIjtcclxuICAgIHRoaXMuZGF0ZUNyZWF0ZWQgPSBDb3JlLm5vd0RhdGUoKTtcclxuICAgIHRoaXMuZGF0ZVVwZGF0ZWQgPSBDb3JlLm5vd0RhdGUoKTtcclxuICAgIHRoaXMudG9rZW4gPSBcIlwiO1xyXG4gICAgdGhpcy5kYXRlRXhwaXJlID0gQ29yZS5ub3dEYXRlKCk7XHJcbiAgICB0aGlzLnRva2VuRXhwaXJlID0gQ29yZS5ub3dEYXRlKCk7XHJcbiAgICB0aGlzLmF1dGhUeXBlID0gXCJcIjtcclxuICB9XHJcblxyXG4gIHVzZXJOYW1lOnN0cmluZztcclxuICBwYXNzd29yZDogc3RyaW5nO1xyXG4gIHRyaWVzOiBzdHJpbmc7XHJcbiAgbG9ja2VkOiBzdHJpbmc7XHJcbiAgbG9nZ2VkOiBzdHJpbmc7XHJcbiAgZGlzYWJsZWQ6IHN0cmluZztcclxuICBjaGFuZ2VwYXNzd29yZDogc3RyaW5nO1xyXG4gIGRhdGVDcmVhdGVkOiBzdHJpbmc7XHJcbiAgZGF0ZVVwZGF0ZWQ6IHN0cmluZztcclxuICBkYXRlRXhwaXJlOiBzdHJpbmc7XHJcbiAgdG9rZW46IHN0cmluZztcclxuICB0b2tlbkV4cGlyZTogc3RyaW5nO1xyXG5cclxuICBhdXRoVHlwZTogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgQ2hhbmdlVXNlclBhc3N3b3JkIHtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICB0aGlzLnVzZXJOYW1lID0gXCJcIjtcclxuICAgIHRoaXMuY3VycmVudFBhc3N3b3JkID0gXCJcIjtcclxuICAgIHRoaXMubmV3UGFzc3dvcmQgPSBcIlwiO1xyXG4gICAgdGhpcy5jb25maXJtUGFzc3dvcmQgPSBcIlwiO1xyXG4gIH1cclxuICB1c2VyTmFtZTogc3RyaW5nO1xyXG4gIGN1cnJlbnRQYXNzd29yZDogc3RyaW5nO1xyXG4gIG5ld1Bhc3N3b3JkOiBzdHJpbmc7XHJcbiAgY29uZmlybVBhc3N3b3JkOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBSZWdpc3RlciB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgdGhpcy51c2VyTmFtZSA9IFwiXCI7XHJcbiAgICB0aGlzLnJvbGVJRCA9IDE7XHJcbiAgICB0aGlzLmZpcnN0TmFtZSA9IFwiXCI7XHJcbiAgICB0aGlzLmxhc3ROYW1lID0gXCJcIjtcclxuICAgIHRoaXMuZW1haWwgPSBcIlwiO1xyXG4gICAgdGhpcy5hdXRoVHlwZSA9IFwiXCI7XHJcbiAgICB0aGlzLnBhc3N3b3JkID0gXCJcIjtcclxuICB9XHJcblxyXG4gIHVzZXJOYW1lOiBzdHJpbmc7XHJcbiAgcm9sZUlEOiBudW1iZXI7XHJcbiAgZmlyc3ROYW1lOiBzdHJpbmc7XHJcbiAgbGFzdE5hbWU6IHN0cmluZztcclxuICBlbWFpbDogc3RyaW5nO1xyXG4gIGF1dGhUeXBlOiBzdHJpbmc7XHJcbiAgcGFzc3dvcmQ6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIFByb2ZpbGUge1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHRoaXMucHJvZmlsZUlEID0gXCJcIjtcclxuICAgIHRoaXMudXNlck5hbWUgPSBcIlwiO1xyXG4gICAgdGhpcy5yb2xlSUQgPSAxO1xyXG4gICAgdGhpcy5maXJzdE5hbWUgPSBcIlwiO1xyXG4gICAgdGhpcy5sYXN0TmFtZSA9IFwiXCI7XHJcbiAgICB0aGlzLmVtYWlsID0gXCJcIjtcclxuICAgIHRoaXMuZW1wSUQgPSBcIlwiO1xyXG4gICAgdGhpcy5hcklEID0gXCIwXCI7XHJcbiAgICB0aGlzLmF1dGhUeXBlID0gXCJcIjtcclxuICAgIHRoaXMucGFzc3dvcmQgPSBcIlwiO1xyXG4gICAgdGhpcy5yb2xlID0gbmV3IFJvbGUoKTtcclxuICB9XHJcblxyXG4gIHByb2ZpbGVJRDogc3RyaW5nO1xyXG4gIHVzZXJOYW1lOiBzdHJpbmc7XHJcbiAgcm9sZUlEOiBudW1iZXI7XHJcbiAgZmlyc3ROYW1lOiBzdHJpbmc7XHJcbiAgbGFzdE5hbWU6IHN0cmluZztcclxuICBlbWFpbDogc3RyaW5nO1xyXG4gIGVtcElEOiBzdHJpbmc7XHJcbiAgYXJJRDogc3RyaW5nO1xyXG4gIGF1dGhUeXBlOiBzdHJpbmc7XHJcbiAgcGFzc3dvcmQ6IHN0cmluZztcclxuICByb2xlOiBSb2xlXHJcbn1cclxuXHJcblxyXG5leHBvcnQgY2xhc3MgUm9sZSB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgdGhpcy5yb2xlSUQgPSAwO1xyXG4gICAgdGhpcy5yb2xlTmFtZSA9IFwiTmV3IFJvbGVcIjtcclxuICAgIHRoaXMuY2FwMSA9IGZhbHNlO1xyXG4gICAgdGhpcy5jYXAyID0gZmFsc2U7XHJcbiAgICB0aGlzLmNhcDMgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNCA9IGZhbHNlO1xyXG4gICAgdGhpcy5jYXA1ID0gZmFsc2U7XHJcbiAgICB0aGlzLmNhcDYgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNyA9IGZhbHNlO1xyXG4gICAgdGhpcy5jYXA4ID0gZmFsc2U7XHJcbiAgICB0aGlzLmNhcDkgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMTAgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMTEgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMTIgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMTMgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMTQgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMTUgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMTYgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMTcgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMTggPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMTkgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMjAgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMjEgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMjIgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMjMgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMjQgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMjUgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMjYgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMjcgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMjggPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMjkgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMzAgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMzEgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMzIgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMzMgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMzQgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMzUgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMzYgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMzcgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMzggPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMzkgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNDAgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNDEgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNDIgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNDMgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNDQgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNDUgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNDYgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNDcgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNDggPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNDkgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNTAgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNTEgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNTIgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNTMgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNTQgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNTUgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNTYgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNTcgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNTggPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNTkgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNjAgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNjEgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNjIgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNjMgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNjQgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNjUgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNjYgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNjcgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNjggPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNjkgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNzAgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNzEgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNzIgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNzMgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNzQgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNzUgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNzYgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNzcgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNzggPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwNzkgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwODAgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwODEgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwODIgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwODMgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwODQgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwODUgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwODYgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwODcgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwODggPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwODkgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwOTAgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwOTEgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwOTIgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwOTMgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwOTQgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwOTUgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwOTYgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwOTcgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwOTggPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwOTkgPSBmYWxzZTtcclxuICAgIHRoaXMuY2FwMTAwID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICByb2xlSUQ6IG51bWJlcjtcclxuICByb2xlTmFtZTogc3RyaW5nO1xyXG4gIGNhcDE6IGJvb2xlYW47XHJcbiAgY2FwMjogYm9vbGVhbjtcclxuICBjYXAzOiBib29sZWFuO1xyXG4gIGNhcDQ6IGJvb2xlYW47XHJcbiAgY2FwNTogYm9vbGVhbjtcclxuICBjYXA2OiBib29sZWFuO1xyXG4gIGNhcDc6IGJvb2xlYW47XHJcbiAgY2FwODogYm9vbGVhbjtcclxuICBjYXA5OiBib29sZWFuO1xyXG4gIGNhcDEwOiBib29sZWFuO1xyXG4gIGNhcDExOiBib29sZWFuO1xyXG4gIGNhcDEyOiBib29sZWFuO1xyXG4gIGNhcDEzOiBib29sZWFuO1xyXG4gIGNhcDE0OiBib29sZWFuO1xyXG4gIGNhcDE1OiBib29sZWFuO1xyXG4gIGNhcDE2OiBib29sZWFuO1xyXG4gIGNhcDE3OiBib29sZWFuO1xyXG4gIGNhcDE4OiBib29sZWFuO1xyXG4gIGNhcDE5OiBib29sZWFuO1xyXG4gIGNhcDIwOiBib29sZWFuO1xyXG4gIGNhcDIxOiBib29sZWFuO1xyXG4gIGNhcDIyOiBib29sZWFuO1xyXG4gIGNhcDIzOiBib29sZWFuO1xyXG4gIGNhcDI0OiBib29sZWFuO1xyXG4gIGNhcDI1OiBib29sZWFuO1xyXG4gIGNhcDI2OiBib29sZWFuO1xyXG4gIGNhcDI3OiBib29sZWFuO1xyXG4gIGNhcDI4OiBib29sZWFuO1xyXG4gIGNhcDI5OiBib29sZWFuO1xyXG4gIGNhcDMwOiBib29sZWFuO1xyXG4gIGNhcDMxOiBib29sZWFuO1xyXG4gIGNhcDMyOiBib29sZWFuO1xyXG4gIGNhcDMzOiBib29sZWFuO1xyXG4gIGNhcDM0OiBib29sZWFuO1xyXG4gIGNhcDM1OiBib29sZWFuO1xyXG4gIGNhcDM2OiBib29sZWFuO1xyXG4gIGNhcDM3OiBib29sZWFuO1xyXG4gIGNhcDM4OiBib29sZWFuO1xyXG4gIGNhcDM5OiBib29sZWFuO1xyXG4gIGNhcDQwOiBib29sZWFuO1xyXG4gIGNhcDQxOiBib29sZWFuO1xyXG4gIGNhcDQyOiBib29sZWFuO1xyXG4gIGNhcDQzOiBib29sZWFuO1xyXG4gIGNhcDQ0OiBib29sZWFuO1xyXG4gIGNhcDQ1OiBib29sZWFuO1xyXG4gIGNhcDQ2OiBib29sZWFuO1xyXG4gIGNhcDQ3OiBib29sZWFuO1xyXG4gIGNhcDQ4OiBib29sZWFuO1xyXG4gIGNhcDQ5OiBib29sZWFuO1xyXG4gIGNhcDUwOiBib29sZWFuO1xyXG4gIGNhcDUxOiBib29sZWFuO1xyXG4gIGNhcDUyOiBib29sZWFuO1xyXG4gIGNhcDUzOiBib29sZWFuO1xyXG4gIGNhcDU0OiBib29sZWFuO1xyXG4gIGNhcDU1OiBib29sZWFuO1xyXG4gIGNhcDU2OiBib29sZWFuO1xyXG4gIGNhcDU3OiBib29sZWFuO1xyXG4gIGNhcDU4OiBib29sZWFuO1xyXG4gIGNhcDU5OiBib29sZWFuO1xyXG4gIGNhcDYwOiBib29sZWFuO1xyXG4gIGNhcDYxOiBib29sZWFuO1xyXG4gIGNhcDYyOiBib29sZWFuO1xyXG4gIGNhcDYzOiBib29sZWFuO1xyXG4gIGNhcDY0OiBib29sZWFuO1xyXG4gIGNhcDY1OiBib29sZWFuO1xyXG4gIGNhcDY2OiBib29sZWFuO1xyXG4gIGNhcDY3OiBib29sZWFuO1xyXG4gIGNhcDY4OiBib29sZWFuO1xyXG4gIGNhcDY5OiBib29sZWFuO1xyXG4gIGNhcDcwOiBib29sZWFuO1xyXG4gIGNhcDcxOiBib29sZWFuO1xyXG4gIGNhcDcyOiBib29sZWFuO1xyXG4gIGNhcDczOiBib29sZWFuO1xyXG4gIGNhcDc0OiBib29sZWFuO1xyXG4gIGNhcDc1OiBib29sZWFuO1xyXG4gIGNhcDc2OiBib29sZWFuO1xyXG4gIGNhcDc3OiBib29sZWFuO1xyXG4gIGNhcDc4OiBib29sZWFuO1xyXG4gIGNhcDc5OiBib29sZWFuO1xyXG4gIGNhcDgwOiBib29sZWFuO1xyXG4gIGNhcDgxOiBib29sZWFuO1xyXG4gIGNhcDgyOiBib29sZWFuO1xyXG4gIGNhcDgzOiBib29sZWFuO1xyXG4gIGNhcDg0OiBib29sZWFuO1xyXG4gIGNhcDg1OiBib29sZWFuO1xyXG4gIGNhcDg2OiBib29sZWFuO1xyXG4gIGNhcDg3OiBib29sZWFuO1xyXG4gIGNhcDg4OiBib29sZWFuO1xyXG4gIGNhcDg5OiBib29sZWFuO1xyXG4gIGNhcDkwOiBib29sZWFuO1xyXG4gIGNhcDkxOiBib29sZWFuO1xyXG4gIGNhcDkyOiBib29sZWFuO1xyXG4gIGNhcDkzOiBib29sZWFuO1xyXG4gIGNhcDk0OiBib29sZWFuO1xyXG4gIGNhcDk1OiBib29sZWFuO1xyXG4gIGNhcDk2OiBib29sZWFuO1xyXG4gIGNhcDk3OiBib29sZWFuO1xyXG4gIGNhcDk4OiBib29sZWFuO1xyXG4gIGNhcDk5OiBib29sZWFuO1xyXG4gIGNhcDEwMDogYm9vbGVhbjtcclxufVxyXG5cclxuXHJcbmV4cG9ydCBlbnVtIExvZ0xldmVsIHtcclxuICBBbGwgPSAwLFxyXG4gIERlYnVnID0gMSxcclxuICBJbmZvID0gMixcclxuICBXYXJuID0gMyxcclxuICBFcnJvciA9IDQsXHJcbiAgRmF0YWwgPSA1LFxyXG4gIE9mZiA9IDYsXHJcbn1cclxuIl19
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
export class Core {
|
|
2
|
+
static getClone(x) {
|
|
3
|
+
return JSON.parse(JSON.stringify(x));
|
|
4
|
+
}
|
|
5
|
+
static getNumber(value) {
|
|
6
|
+
if (value == null || value == "") {
|
|
7
|
+
return 0;
|
|
8
|
+
}
|
|
9
|
+
const onlyNumbers = value.replace(/[^\d.-]/g, '');
|
|
10
|
+
return onlyNumbers;
|
|
11
|
+
}
|
|
12
|
+
static getFirstDayOfMonth() {
|
|
13
|
+
const date = new Date();
|
|
14
|
+
return new Date(date.getFullYear(), date.getMonth(), 1);
|
|
15
|
+
}
|
|
16
|
+
static emailIsValid(email) {
|
|
17
|
+
// return /\S+@\S+\.\S+/.test(email)
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
static isValidUNCPath(path) {
|
|
21
|
+
// return /\\\\([a-zA-Z0-9_.$●-]+)\\([a-zA-Z0-9_.$●-]+).*/.test(path)
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
static isValidDate(date) {
|
|
25
|
+
var parsedDate = Date.parse(date);
|
|
26
|
+
if (isNaN(date) && !isNaN(parsedDate)) {
|
|
27
|
+
return true;
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
return false;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
static isValidEmailList(list) {
|
|
34
|
+
if (list.includes(";")) {
|
|
35
|
+
let emails = list.split(";");
|
|
36
|
+
for (var email of emails) {
|
|
37
|
+
if (this.emailIsValid(email) == false) {
|
|
38
|
+
return false;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
if (this.emailIsValid(list) == false) {
|
|
44
|
+
return false;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
return true;
|
|
48
|
+
}
|
|
49
|
+
static isNumber(value) {
|
|
50
|
+
return ((value != null) &&
|
|
51
|
+
(value !== '') &&
|
|
52
|
+
!isNaN(Number(value.toString())));
|
|
53
|
+
}
|
|
54
|
+
static getDiff(startDate, endDate = Date()) {
|
|
55
|
+
var eventStartTime = new Date(startDate);
|
|
56
|
+
var eventEndTime = new Date(endDate);
|
|
57
|
+
var milliseconds = eventEndTime.valueOf() - eventStartTime.valueOf();
|
|
58
|
+
function numberEnding(number) {
|
|
59
|
+
if (number.toFixed() == '1') {
|
|
60
|
+
return '';
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
return 's';
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
var minutes = (milliseconds / (1000 * 60));
|
|
67
|
+
var hours = (milliseconds / (1000 * 60 * 60));
|
|
68
|
+
var days = (milliseconds / (1000 * 60 * 60 * 24));
|
|
69
|
+
var weeks = (milliseconds / (1000 * 60 * 60 * 24 * 7));
|
|
70
|
+
var months = (milliseconds / (1000 * 60 * 60 * 24 * 7 * 4));
|
|
71
|
+
var years = (milliseconds / (1000 * 60 * 60 * 24 * 365));
|
|
72
|
+
if (years >= 1) {
|
|
73
|
+
return years.toFixed() + ' year' + numberEnding(years);
|
|
74
|
+
}
|
|
75
|
+
else if (months >= 1) {
|
|
76
|
+
return months.toFixed() + ' month' + numberEnding(months);
|
|
77
|
+
}
|
|
78
|
+
else if (weeks >= 1) {
|
|
79
|
+
return weeks.toFixed() + ' week' + numberEnding(weeks);
|
|
80
|
+
}
|
|
81
|
+
else if (days >= 1) {
|
|
82
|
+
return days.toFixed() + ' day' + numberEnding(days);
|
|
83
|
+
}
|
|
84
|
+
else if (hours >= 1) {
|
|
85
|
+
return hours.toFixed() + ' hour' + numberEnding(hours);
|
|
86
|
+
}
|
|
87
|
+
else if (minutes >= 1) {
|
|
88
|
+
return minutes.toFixed() + ' minute' + numberEnding(minutes);
|
|
89
|
+
}
|
|
90
|
+
else if (milliseconds >= (-1000 * 60)) {
|
|
91
|
+
return 'a minute';
|
|
92
|
+
}
|
|
93
|
+
else {
|
|
94
|
+
return 'N/A';
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
static nowDate(NoTime = false) {
|
|
98
|
+
if (NoTime) {
|
|
99
|
+
return this.getFormatedDate(Date(), true);
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
return this.getFormatedDate(Date());
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
static getFormatedDate(dateString, NoTime = false) {
|
|
106
|
+
let d = new Date(dateString);
|
|
107
|
+
d.setHours(d.getHours() + 2);
|
|
108
|
+
if (NoTime == true) {
|
|
109
|
+
return d.toISOString().split('T')[0];
|
|
110
|
+
}
|
|
111
|
+
else {
|
|
112
|
+
return d.toISOString().split('.')[0];
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
static getFormatedDate2(d, NoTime = false) {
|
|
116
|
+
d.setHours(d.getHours() + 2);
|
|
117
|
+
if (NoTime == true) {
|
|
118
|
+
return d.toISOString().split('T')[0];
|
|
119
|
+
}
|
|
120
|
+
else {
|
|
121
|
+
return d.toISOString().split('.')[0];
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
static getBusinessDatesCount(startDate, endDate) {
|
|
125
|
+
var count = 0;
|
|
126
|
+
var _startDate = new Date(startDate);
|
|
127
|
+
var _endDate = new Date(endDate);
|
|
128
|
+
var curDate = _startDate;
|
|
129
|
+
while (curDate < _endDate) {
|
|
130
|
+
var dayOfWeek = curDate.getDay();
|
|
131
|
+
if (!(dayOfWeek == 6 || dayOfWeek == 0))
|
|
132
|
+
count++;
|
|
133
|
+
curDate.setDate(curDate.getDate() + 1);
|
|
134
|
+
}
|
|
135
|
+
return count;
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
Core.nullDate = "01 Jan 1969";
|
|
139
|
+
export class ApiResponse {
|
|
140
|
+
}
|
|
141
|
+
export class Constants {
|
|
142
|
+
}
|
|
143
|
+
Constants.AUTH_USER = 'a';
|
|
144
|
+
Constants.AUTH_NAME = 'b';
|
|
145
|
+
Constants.AUTH_ROLES = 'c';
|
|
146
|
+
Constants.AUTH_TOKEN = 'd';
|
|
147
|
+
Constants.AUTH_TOKEN_EXPIRE = 'e';
|
|
148
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGluQ29yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rpbi1zcGEvc3JjL2xpYi9jbGFzc2VzL1RpbkNvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLElBQUk7SUFFUixNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDdEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUN0QyxDQUFDO0lBRU0sTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFhO1FBRW5DLElBQUksS0FBSyxJQUFJLElBQUksSUFBSSxLQUFLLElBQUksRUFBRSxFQUFFO1lBQ2hDLE9BQU8sQ0FBQyxDQUFDO1NBQ1Y7UUFFRCxNQUFNLFdBQVcsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNsRCxPQUFPLFdBQVcsQ0FBQTtJQUNwQixDQUFDO0lBRU0sTUFBTSxDQUFDLGtCQUFrQjtRQUM5QixNQUFNLElBQUksR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3hCLE9BQU8sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRU0sTUFBTSxDQUFDLFlBQVksQ0FBQyxLQUFLO1FBQzlCLG9DQUFvQztRQUNwQyxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFTSxNQUFNLENBQUMsY0FBYyxDQUFDLElBQVk7UUFDdkMscUVBQXFFO1FBQ3JFLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVNLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSTtRQUU1QixJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBR2xDLElBQUksS0FBSyxDQUFD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Q0FBQztnQkFBRSxLQUFLLEVBQUUsQ0FBQztZQUNqRCxPQUFPLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztTQUN4QztRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzs7QUExSGEsYUFBUSxHQUFHLGFBQWEsQ0FBQTtBQStIeEMsTUFBTSxPQUFPLFdBQVc7Q0FJdkI7QUFFRCxNQUFNLE9BQU8sU0FBUzs7QUFDRyxtQkFBUyxHQUFHLEdBQUcsQ0FBQztBQUNoQixtQkFBUyxHQUFHLEdBQUcsQ0FBQztBQUNoQixvQkFBVSxHQUFHLEdBQUcsQ0FBQztBQUNqQixvQkFBVSxHQUFHLEdBQUcsQ0FBQztBQUNqQiwyQkFBaUIsR0FBRyxHQUFHLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgQ29yZSB7XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgZ2V0Q2xvbmUoeCkge1xyXG4gICAgcmV0dXJuIEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoeCkpXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhdGljIGdldE51bWJlcih2YWx1ZTogc3RyaW5nKSB7XHJcblxyXG4gICAgaWYgKHZhbHVlID09IG51bGwgfHwgdmFsdWUgPT0gXCJcIikge1xyXG4gICAgICByZXR1cm4gMDtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBvbmx5TnVtYmVycyA9IHZhbHVlLnJlcGxhY2UoL1teXFxkLi1dL2csICcnKTtcclxuICAgIHJldHVybiBvbmx5TnVtYmVyc1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0YXRpYyBnZXRGaXJzdERheU9mTW9udGgoKSB7XHJcbiAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoKTtcclxuICAgIHJldHVybiBuZXcgRGF0ZShkYXRlLmdldEZ1bGxZZWFyKCksIGRhdGUuZ2V0TW9udGgoKSwgMSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhdGljIGVtYWlsSXNWYWxpZChlbWFpbCkge1xyXG4gICAgLy8gcmV0dXJuIC9cXFMrQFxcUytcXC5cXFMrLy50ZXN0KGVtYWlsKVxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0YXRpYyBpc1ZhbGlkVU5DUGF0aChwYXRoOiBzdHJpbmcpIHtcclxuICAgIC8vIHJldHVybiAvXFxcXFxcXFwoW2EtekEtWjAtOV8uJOKXjy1dKylcXFxcKFthLXpBLVowLTlfLiTil48tXSspLiovLnRlc3QocGF0aClcclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgaXNWYWxpZERhdGUoZGF0ZSkge1xyXG5cclxuICAgIHZhciBwYXJzZWREYXRlID0gRGF0ZS5wYXJzZShkYXRlKTtcclxuXHJcblxyXG4gICAgaWYgKGlzTmFOKGRhdGUpICYmICFpc05hTihwYXJzZWREYXRlKSkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhdGljIGlzVmFsaWRFbWFpbExpc3QobGlzdDogc3RyaW5nKSB7XHJcblxyXG4gICAgaWYgKGxpc3QuaW5jbHVkZXMoXCI7XCIpKSB7XHJcblxyXG4gICAgICBsZXQgZW1haWxzID0gbGlzdC5zcGxpdChcIjtcIilcclxuXHJcbiAgICAgIGZvciAodmFyIGVtYWlsIG9mIGVtYWlscykge1xyXG4gICAgICAgIGlmICh0aGlzLmVtYWlsSXNWYWxpZChlbWFpbCkgPT0gZmFsc2UpIHtcclxuICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcblxyXG4gICAgfSBlbHNlIHtcclxuXHJcbiAgICAgIGlmICh0aGlzLmVtYWlsSXNWYWxpZChsaXN0KSA9PSBmYWxzZSkge1xyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhdGljIG51bGxEYXRlID0gXCIwMSBKYW4gMTk2OVwiXHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgaXNOdW1iZXIodmFsdWU6IHN0cmluZyB8IG51bWJlcik6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICgodmFsdWUgIT0gbnVsbCkgJiZcclxuICAgICAgKHZhbHVlICE9PSAnJykgJiZcclxuICAgICAgIWlzTmFOKE51bWJlcih2YWx1ZS50b1N0cmluZygpKSkpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0YXRpYyBnZXREaWZmKHN0YXJ0RGF0ZSwgZW5kRGF0ZSA9IERhdGUoKSkge1xyXG5cclxuICAgIHZhciBldmVudFN0YXJ0VGltZSA9IG5ldyBEYXRlKHN0YXJ0RGF0ZSk7XHJcbiAgICB2YXIgZXZlbnRFbmRUaW1lID0gbmV3IERhdGUoZW5kRGF0ZSk7XHJcbiAgICB2YXIgbWlsbGlzZWNvbmRzID0gZXZlbnRFbmRUaW1lLnZhbHVlT2YoKSAtIGV2ZW50U3RhcnRUaW1lLnZhbHVlT2YoKTtcclxuXHJcbiAgICBmdW5jdGlvbiBudW1iZXJFbmRpbmcobnVtYmVyOiBudW1iZXIpIHtcclxuXHJcbiAgICAgIGlmIChudW1iZXIudG9GaXhlZCgpID09ICcxJykge1xyXG4gICAgICAgIHJldHVybiAnJ1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiAncyc7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gICAgdmFyIG1pbnV0ZXMgPSAobWlsbGlzZWNvbmRzIC8gKDEwMDAgKiA2MCkpO1xyXG5cclxuICAgIHZhciBob3VyczogbnVtYmVyID0gKG1pbGxpc2Vjb25kcyAvICgxMDAwICogNjAgKiA2MCkpO1xyXG5cclxuICAgIHZhciBkYXlzID0gKG1pbGxpc2Vjb25kcyAvICgxMDAwICogNjAgKiA2MCAqIDI0KSk7XHJcblxyXG4gICAgdmFyIHdlZWtzOiBudW1iZXIgPSAobWlsbGlzZWNvbmRzIC8gKDEwMDAgKiA2MCAqIDYwICogMjQgKiA3KSk7XHJcblxyXG4gICAgdmFyIG1vbnRocyA9IChtaWxsaXNlY29uZHMgLyAoMTAwMCAqIDYwICogNjAgKiAyNCAqIDcgKiA0KSk7XHJcblxyXG4gICAgdmFyIHllYXJzID0gKG1pbGxpc2Vjb25kcyAvICgxMDAwICogNjAgKiA2MCAqIDI0ICogMzY1KSk7XHJcblxyXG5cclxuICAgIGlmICh5ZWFycyA+PSAxKSB7XHJcblxyXG4gICAgICByZXR1cm4geWVhcnMudG9GaXhlZCgpICsgJyB5ZWFyJyArIG51bWJlckVuZGluZyh5ZWFycyk7XHJcblxyXG4gICAgfSBlbHNlIGlmIChtb250aHMgPj0gMSkge1xyXG5cclxuICAgICAgcmV0dXJuIG1vbnRocy50b0ZpeGVkKCkgKyAnIG1vbnRoJyArIG51bWJlckVuZGluZyhtb250aHMpO1xyXG5cclxuICAgIH0gZWxzZSBpZiAod2Vla3MgPj0gMSkge1xyXG5cclxuICAgICAgcmV0dXJuIHdlZWtzLnRvRml4ZWQoKSArICcgd2VlaycgKyBudW1iZXJFbmRpbmcod2Vla3MpO1xyXG5cclxuICAgIH0gZWxzZSBpZiAoZGF5cyA+PSAxKSB7XHJcblxyXG4gICAgICByZXR1cm4gZGF5cy50b0ZpeGVkKCkgKyAnIGRheScgKyBudW1iZXJFbmRpbmcoZGF5cyk7XHJcblxyXG4gICAgfSBlbHNlIGlmIChob3VycyA+PSAxKSB7XHJcblxyXG4gICAgICByZXR1cm4gaG91cnMudG9GaXhlZCgpICsgJyBob3VyJyArIG51bWJlckVuZGluZyhob3Vycyk7XHJcblxyXG4gICAgfSBlbHNlIGlmIChtaW51dGVzID49IDEpIHtcclxuXHJcbiAgICAgIHJldHVybiBtaW51dGVzLnRvRml4ZWQoKSArICcgbWludXRlJyArIG51bWJlckVuZGluZyhtaW51dGVzKTtcclxuXHJcbiAgICB9IGVsc2UgaWYgKG1pbGxpc2Vjb25kcyA+PSAoLTEwMDAgKiA2MCkpIHtcclxuXHJcbiAgICAgIHJldHVybiAnYSBtaW51dGUnO1xyXG5cclxuICAgIH0gZWxzZSB7XHJcblxyXG4gICAgICByZXR1cm4gJ04vQSc7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgbm93RGF0ZShOb1RpbWU6IGJvb2xlYW4gPSBmYWxzZSkge1xyXG5cclxuICAgIGlmIChOb1RpbWUpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuZ2V0Rm9ybWF0ZWREYXRlKERhdGUoKSwgdHJ1ZSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gdGhpcy5nZXRGb3JtYXRlZERhdGUoRGF0ZSgpKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgZ2V0Rm9ybWF0ZWREYXRlKGRhdGVTdHJpbmc6IHN0cmluZywgTm9UaW1lOiBib29sZWFuID0gZmFsc2UpIHtcclxuXHJcbiAgICBsZXQgZDogRGF0ZSA9IG5ldyBEYXRlKGRhdGVTdHJpbmcpO1xyXG4gICAgZC5zZXRIb3VycyhkLmdldEhvdXJzKCkgKyAyKTtcclxuXHJcbiAgICBpZiAoTm9UaW1lID09IHRydWUpIHtcclxuICAgICAgcmV0dXJuIGQudG9JU09TdHJpbmcoKS5zcGxpdCgnVCcpWzBdO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIGQudG9JU09TdHJpbmcoKS5zcGxpdCgnLicpWzBdO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgZ2V0Rm9ybWF0ZWREYXRlMihkIDogRGF0ZSwgTm9UaW1lOiBib29sZWFuID0gZmFsc2UpIHtcclxuXHJcblxyXG4gICAgZC5zZXRIb3VycyhkLmdldEhvdXJzKCkgKyAyKTtcclxuXHJcbiAgICBpZiAoTm9UaW1lID09IHRydWUpIHtcclxuICAgICAgcmV0dXJuIGQudG9JU09TdHJpbmcoKS5zcGxpdCgnVCcpWzBdO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIGQudG9JU09TdHJpbmcoKS5zcGxpdCgnLicpWzBdO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgZ2V0QnVzaW5lc3NEYXRlc0NvdW50KHN0YXJ0RGF0ZTogc3RyaW5nLCBlbmREYXRlOiBzdHJpbmcpIHtcclxuICAgIHZhciBjb3VudCA9IDA7XHJcbiAgICB2YXIgX3N0YXJ0RGF0ZSA9IG5ldyBEYXRlKHN0YXJ0RGF0ZSk7XHJcbiAgICB2YXIgX2VuZERhdGUgPSBuZXcgRGF0ZShlbmREYXRlKTtcclxuXHJcbiAgICB2YXIgY3VyRGF0ZSA9IF9zdGFydERhdGU7XHJcblxyXG4gICAgd2hpbGUgKGN1ckRhdGUgPCBfZW5kRGF0ZSkge1xyXG4gICAgICB2YXIgZGF5T2ZXZWVrID0gY3VyRGF0ZS5nZXREYXkoKTtcclxuICAgICAgaWYgKCEoZGF5T2ZXZWVrID09IDYgfHwgZGF5T2ZXZWVrID09IDApKSBjb3VudCsrO1xyXG4gICAgICBjdXJEYXRlLnNldERhdGUoY3VyRGF0ZS5nZXREYXRlKCkgKyAxKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gY291bnQ7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuXHJcbmV4cG9ydCBjbGFzcyBBcGlSZXNwb25zZSB7XHJcbiAgc3VjY2VzczogYm9vbGVhbjtcclxuICBtZXNzYWdlOiBzdHJpbmc7XHJcbiAgZGF0YTtcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIENvbnN0YW50cyB7XHJcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBBVVRIX1VTRVIgPSAnYSc7XHJcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBBVVRIX05BTUUgPSAnYic7XHJcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBBVVRIX1JPTEVTID0gJ2MnO1xyXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQVVUSF9UT0tFTiA9ICdkJztcclxuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEFVVEhfVE9LRU5fRVhQSVJFID0gJ2UnO1xyXG59XHJcblxyXG4iXX0=
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "@angular/material/form-field";
|
|
5
|
+
export class ActivityComponent {
|
|
6
|
+
constructor() {
|
|
7
|
+
this.notes = new Array();
|
|
8
|
+
this.notesMessage = "Empty";
|
|
9
|
+
this.title = "Notes";
|
|
10
|
+
}
|
|
11
|
+
ngOnInit() {
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
ActivityComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ActivityComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
15
|
+
ActivityComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: ActivityComponent, selector: "spa-activity", inputs: { notes: "notes", title: "title" }, ngImport: i0, template: "\r\n <div class=\"tin-input-row mt-3\" *ngIf=\"title != ''\">\r\n <mat-label style=\"font-size: 20px; font-weight: 300\" > {{title}}</mat-label >\r\n </div>\r\n\r\n <ul *ngIf=\"notes && notes.length>0\" class=\"list-group list-group-flush\" style=\"max-height:350px; margin-left:5px\">\r\n\r\n <li *ngFor=\"let note of notes\" class=\"list-group-item list-group-item-action flex-column align-items-start\">\r\n <div class=\"d-flex w-100 justify-content-between\">\r\n <div class=\"mb-0\">{{note.createdByName}}</div>\r\n <!-- <small class=\"text-muted\">{{note.expr1}} ago</small> -->\r\n </div>\r\n\r\n <small>{{note.details}} (<em>{{note.createdDate | date: 'dd MMM yyyy HH:mm'}}</em>) </small>\r\n </li>\r\n\r\n\r\n </ul>\r\n\r\n <div *ngIf=\"notes && notes.length==0\" class=\"d-flex justify-content-center row align-items-center\" style=\"max-height:200px\">\r\n\r\n No {{title.toLowerCase()}}\r\n\r\n </div>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "pipe", type: i1.DatePipe, name: "date" }] });
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: ActivityComponent, decorators: [{
|
|
17
|
+
type: Component,
|
|
18
|
+
args: [{ selector: 'spa-activity', template: "\r\n <div class=\"tin-input-row mt-3\" *ngIf=\"title != ''\">\r\n <mat-label style=\"font-size: 20px; font-weight: 300\" > {{title}}</mat-label >\r\n </div>\r\n\r\n <ul *ngIf=\"notes && notes.length>0\" class=\"list-group list-group-flush\" style=\"max-height:350px; margin-left:5px\">\r\n\r\n <li *ngFor=\"let note of notes\" class=\"list-group-item list-group-item-action flex-column align-items-start\">\r\n <div class=\"d-flex w-100 justify-content-between\">\r\n <div class=\"mb-0\">{{note.createdByName}}</div>\r\n <!-- <small class=\"text-muted\">{{note.expr1}} ago</small> -->\r\n </div>\r\n\r\n <small>{{note.details}} (<em>{{note.createdDate | date: 'dd MMM yyyy HH:mm'}}</em>) </small>\r\n </li>\r\n\r\n\r\n </ul>\r\n\r\n <div *ngIf=\"notes && notes.length==0\" class=\"d-flex justify-content-center row align-items-center\" style=\"max-height:200px\">\r\n\r\n No {{title.toLowerCase()}}\r\n\r\n </div>\r\n" }]
|
|
19
|
+
}], ctorParameters: function () { return []; }, propDecorators: { notes: [{
|
|
20
|
+
type: Input
|
|
21
|
+
}], title: [{
|
|
22
|
+
type: Input
|
|
23
|
+
}] } });
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZpdHkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvYWN0aXZpdHkvYWN0aXZpdHkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvYWN0aXZpdHkvYWN0aXZpdHkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7Ozs7QUFPekQsTUFBTSxPQUFPLGlCQUFpQjtJQUU1QjtRQUtTLFVBQUssR0FBRyxJQUFJLEtBQUssRUFBRSxDQUFDO1FBQzdCLGlCQUFZLEdBQVcsT0FBTyxDQUFDO1FBQ3RCLFVBQUssR0FBRyxPQUFPLENBQUE7SUFQUixDQUFDO0lBRWpCLFFBQVE7SUFDUixDQUFDOzs4R0FMVSxpQkFBaUI7a0dBQWpCLGlCQUFpQixnR0NQOUIsb2dDQXdCQTsyRkRqQmEsaUJBQWlCO2tCQUw3QixTQUFTOytCQUNFLGNBQWM7MEVBV2YsS0FBSztzQkFBYixLQUFLO2dCQUVHLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzcGEtYWN0aXZpdHknLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hY3Rpdml0eS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vYWN0aXZpdHkuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBY3Rpdml0eUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gIH1cclxuXHJcbiAgQElucHV0KCkgbm90ZXMgPSBuZXcgQXJyYXkoKTtcclxuICBub3Rlc01lc3NhZ2U6IHN0cmluZyA9IFwiRW1wdHlcIjtcclxuICBASW5wdXQoKSB0aXRsZSA9IFwiTm90ZXNcIlxyXG5cclxufVxyXG4iLCJcclxuICAgICAgPGRpdiBjbGFzcz1cInRpbi1pbnB1dC1yb3cgbXQtM1wiICpuZ0lmPVwidGl0bGUgIT0gJydcIj5cclxuICAgICAgICA8bWF0LWxhYmVsIHN0eWxlPVwiZm9udC1zaXplOiAyMHB4OyBmb250LXdlaWdodDogMzAwXCIgPiAge3t0aXRsZX19PC9tYXQtbGFiZWwgPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDx1bCAqbmdJZj1cIm5vdGVzICYmIG5vdGVzLmxlbmd0aD4wXCIgY2xhc3M9XCJsaXN0LWdyb3VwIGxpc3QtZ3JvdXAtZmx1c2hcIiBzdHlsZT1cIm1heC1oZWlnaHQ6MzUwcHg7IG1hcmdpbi1sZWZ0OjVweFwiPlxyXG5cclxuICAgICAgICA8bGkgKm5nRm9yPVwibGV0IG5vdGUgb2Ygbm90ZXNcIiBjbGFzcz1cImxpc3QtZ3JvdXAtaXRlbSAgbGlzdC1ncm91cC1pdGVtLWFjdGlvbiBmbGV4LWNvbHVtbiBhbGlnbi1pdGVtcy1zdGFydFwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCB3LTEwMCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlblwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWItMFwiPnt7bm90ZS5jcmVhdGVkQnlOYW1lfX08L2Rpdj5cclxuICAgICAgICAgICAgPCEtLSA8c21hbGwgY2xhc3M9XCJ0ZXh0LW11dGVkXCI+e3tub3RlLmV4cHIxfX0gYWdvPC9zbWFsbD4gLS0+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICA8c21hbGw+e3tub3RlLmRldGFpbHN9fSAoPGVtPnt7bm90ZS5jcmVhdGVkRGF0ZSB8IGRhdGU6ICdkZCBNTU0geXl5eSBISDptbSd9fTwvZW0+KSA8L3NtYWxsPlxyXG4gICAgICAgIDwvbGk+XHJcblxyXG5cclxuICAgICAgPC91bD5cclxuXHJcbiAgICAgIDxkaXYgKm5nSWY9XCJub3RlcyAmJiBub3Rlcy5sZW5ndGg9PTBcIiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIHJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIiBzdHlsZT1cIm1heC1oZWlnaHQ6MjAwcHhcIj5cclxuXHJcbiAgICAgICAgTm8ge3t0aXRsZS50b0xvd2VyQ2FzZSgpfX1cclxuXHJcbiAgICAgIDwvZGl2PlxyXG4iXX0=
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "@angular/material/button";
|
|
5
|
+
import * as i3 from "@angular/material/icon";
|
|
6
|
+
import * as i4 from "@angular/material/tooltip";
|
|
7
|
+
export class AttachComponent {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.message = "Drag and drop files here";
|
|
10
|
+
this.files = [];
|
|
11
|
+
this.filesChange = new EventEmitter();
|
|
12
|
+
this.upload = new EventEmitter();
|
|
13
|
+
this.enableUpload = false;
|
|
14
|
+
}
|
|
15
|
+
ngOnInit() {
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* on file drop handler
|
|
19
|
+
*/
|
|
20
|
+
onFileDropped($event) {
|
|
21
|
+
this.prepareFilesList($event);
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* handle file from browsing
|
|
25
|
+
*/
|
|
26
|
+
fileBrowseHandler(event) {
|
|
27
|
+
let files = event.target.files;
|
|
28
|
+
this.prepareFilesList(files);
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Delete file from files list
|
|
32
|
+
* @param index (File index)
|
|
33
|
+
*/
|
|
34
|
+
deleteFile(index) {
|
|
35
|
+
this.files.splice(index, 1);
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Simulate the upload process
|
|
39
|
+
*/
|
|
40
|
+
// uploadFilesSimulator(index: number) {
|
|
41
|
+
// setTimeout(() => {
|
|
42
|
+
// if (index === this.files.length) {
|
|
43
|
+
// return;
|
|
44
|
+
// } else {
|
|
45
|
+
// const progressInterval = setInterval(() => {
|
|
46
|
+
// if (this.files[index].progress === 100) {
|
|
47
|
+
// clearInterval(progressInterval);
|
|
48
|
+
// this.uploadFilesSimulator(index + 1);
|
|
49
|
+
// } else {
|
|
50
|
+
// this.files[index].progress += 5;
|
|
51
|
+
// }
|
|
52
|
+
// }, 200);
|
|
53
|
+
// }
|
|
54
|
+
// }, 1000);
|
|
55
|
+
// }
|
|
56
|
+
/**
|
|
57
|
+
* Convert Files list to normal array list
|
|
58
|
+
* @param files (Files List)
|
|
59
|
+
*/
|
|
60
|
+
prepareFilesList(files) {
|
|
61
|
+
for (const item of files) {
|
|
62
|
+
item.progress = 0;
|
|
63
|
+
this.files.push(item);
|
|
64
|
+
}
|
|
65
|
+
// this.uploadFilesSimulator(0);
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* format bytes
|
|
69
|
+
* @param bytes (File size in bytes)
|
|
70
|
+
* @param decimals (Decimals point)
|
|
71
|
+
*/
|
|
72
|
+
formatBytes(bytes, decimals) {
|
|
73
|
+
if (bytes === 0) {
|
|
74
|
+
return '0 Bytes';
|
|
75
|
+
}
|
|
76
|
+
const k = 1024;
|
|
77
|
+
const dm = decimals <= 0 ? 0 : decimals || 2;
|
|
78
|
+
const sizes = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];
|
|
79
|
+
const i = Math.floor(Math.log(bytes) / Math.log(k));
|
|
80
|
+
return parseFloat((bytes / Math.pow(k, i)).toFixed(dm)) + ' ' + sizes[i];
|
|
81
|
+
}
|
|
82
|
+
uploaded() {
|
|
83
|
+
this.upload.emit();
|
|
84
|
+
}
|
|
85
|
+
filesChanged() {
|
|
86
|
+
this.filesChange.emit(this.files);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
AttachComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: AttachComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
90
|
+
AttachComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: AttachComponent, selector: "spa-attach", inputs: { message: "message", files: "files", enableUpload: "enableUpload" }, outputs: { filesChange: "filesChange", upload: "upload" }, ngImport: i0, template: "<div class=\"tin-input-row\" style=\"width: 100%;\">\r\n\r\n <div class=\"col\">\r\n <div class=\"container\" appDnd (fileDropped)=\"onFileDropped($event)\">\r\n <input type=\"file\" #fileDropRef id=\"fileDropRef\" multiple (change)=\"fileBrowseHandler($event)\" />\r\n <h4>{{message}}</h4>\r\n <h4>or</h4>\r\n <label for=\"fileDropRef\">Click to Browse</label>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col\">\r\n <div class=\"files-list \">\r\n <div class=\"single-file \" style=\"width: 100%;\" *ngFor=\"let file of files; let i = index\">\r\n\r\n <div class=\"tin-input-row info\" >\r\n <h4 class=\"name\">\r\n {{ file?.name }}\r\n </h4>\r\n <p class=\"size\">\r\n {{ formatBytes(file?.size, 2) }}\r\n </p>\r\n </div>\r\n\r\n <div class=\"delete\" (click)=\"deleteFile(i)\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"14\" height=\"18\" viewBox=\"0 0 14 18\">\r\n <path fill=\"#B1B1B1\" fill-rule=\"nonzero\"\r\n d=\"M1 16c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2H3c-1.1 0-2 .9-2 2v10zm3.17-7.83a.996.996 0 0 1 1.41 0L7 9.59l1.42-1.42a.996.996 0 1 1 1.41 1.41L8.41 11l1.42 1.42a.996.996 0 1 1-1.41 1.41L7 12.41l-1.42 1.42a.996.996 0 1 1-1.41-1.41L5.59 11 4.17 9.58a.996.996 0 0 1 0-1.41zM10.5 1L9.79.29C9.61.11 9.35 0 9.09 0H4.91c-.26 0-.52.11-.7.29L3.5 1H1c-.55 0-1 .45-1 1s.45 1 1 1h12c.55 0 1-.45 1-1s-.45-1-1-1h-2.5z\" />\r\n </svg>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"files.length > 0 && enableUpload\" class=\"tin-input-row d-flex justify-content-center\" style=\"width: 100%;\" >\r\n <button mat-button color=\"primary\" (click)=\"uploaded()\" matTooltip=\"Upload New Documents\" matTooltipPosition=\"above\" ><mat-icon>file_upload</mat-icon> Upload</button>\r\n </div>\r\n </div>\r\n\r\n</div>\r\n", styles: [".container{width:100%;height:200px;padding:2rem;text-align:center;border:dashed 2px #2a7b94;position:relative;margin:0 auto}.container input{opacity:0;position:absolute;z-index:2;width:100%;height:100%;top:0;left:0}.container label{color:#fff;width:183px;height:44px;border-radius:21.5px;background-color:#db202f;padding:8px 16px}.container h3{font-size:20px;font-weight:600;color:#38424c}.fileover{animation:shake 1s;animation-iteration-count:infinite}.files-list{margin-top:1.5rem}.files-list .single-file{padding:.5rem;justify-content:space-between;align-items:center;border:dashed 1px #1c824d;margin-bottom:1rem;margin-right:1rem;display:flex;flex-grow:1}.files-list .single-file .delete{display:flex;margin-left:.5rem;cursor:pointer;align-self:flex-end}.files-list .single-file .name{font-size:14px;font-weight:500;color:#353f4a;margin:0}.files-list .single-file .size{font-size:12px;font-weight:500;color:#a4a4a4;margin:0;margin-left:1rem}.files-list .single-file .info{width:100%}@keyframes shake{0%{transform:translate(1px,1px) rotate(0)}10%{transform:translate(-1px,-2px) rotate(-1deg)}20%{transform:translate(-3px) rotate(1deg)}30%{transform:translate(3px,2px) rotate(0)}40%{transform:translate(1px,-1px) rotate(1deg)}50%{transform:translate(-1px,2px) rotate(-1deg)}60%{transform:translate(-3px,1px) rotate(0)}70%{transform:translate(3px,1px) rotate(-1deg)}80%{transform:translate(-1px,-1px) rotate(1deg)}90%{transform:translate(1px,2px) rotate(0)}to{transform:translate(1px,-2px) rotate(-1deg)}}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] });
|
|
91
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: AttachComponent, decorators: [{
|
|
92
|
+
type: Component,
|
|
93
|
+
args: [{ selector: 'spa-attach', template: "<div class=\"tin-input-row\" style=\"width: 100%;\">\r\n\r\n <div class=\"col\">\r\n <div class=\"container\" appDnd (fileDropped)=\"onFileDropped($event)\">\r\n <input type=\"file\" #fileDropRef id=\"fileDropRef\" multiple (change)=\"fileBrowseHandler($event)\" />\r\n <h4>{{message}}</h4>\r\n <h4>or</h4>\r\n <label for=\"fileDropRef\">Click to Browse</label>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col\">\r\n <div class=\"files-list \">\r\n <div class=\"single-file \" style=\"width: 100%;\" *ngFor=\"let file of files; let i = index\">\r\n\r\n <div class=\"tin-input-row info\" >\r\n <h4 class=\"name\">\r\n {{ file?.name }}\r\n </h4>\r\n <p class=\"size\">\r\n {{ formatBytes(file?.size, 2) }}\r\n </p>\r\n </div>\r\n\r\n <div class=\"delete\" (click)=\"deleteFile(i)\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"14\" height=\"18\" viewBox=\"0 0 14 18\">\r\n <path fill=\"#B1B1B1\" fill-rule=\"nonzero\"\r\n d=\"M1 16c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2H3c-1.1 0-2 .9-2 2v10zm3.17-7.83a.996.996 0 0 1 1.41 0L7 9.59l1.42-1.42a.996.996 0 1 1 1.41 1.41L8.41 11l1.42 1.42a.996.996 0 1 1-1.41 1.41L7 12.41l-1.42 1.42a.996.996 0 1 1-1.41-1.41L5.59 11 4.17 9.58a.996.996 0 0 1 0-1.41zM10.5 1L9.79.29C9.61.11 9.35 0 9.09 0H4.91c-.26 0-.52.11-.7.29L3.5 1H1c-.55 0-1 .45-1 1s.45 1 1 1h12c.55 0 1-.45 1-1s-.45-1-1-1h-2.5z\" />\r\n </svg>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"files.length > 0 && enableUpload\" class=\"tin-input-row d-flex justify-content-center\" style=\"width: 100%;\" >\r\n <button mat-button color=\"primary\" (click)=\"uploaded()\" matTooltip=\"Upload New Documents\" matTooltipPosition=\"above\" ><mat-icon>file_upload</mat-icon> Upload</button>\r\n </div>\r\n </div>\r\n\r\n</div>\r\n", styles: [".container{width:100%;height:200px;padding:2rem;text-align:center;border:dashed 2px #2a7b94;position:relative;margin:0 auto}.container input{opacity:0;position:absolute;z-index:2;width:100%;height:100%;top:0;left:0}.container label{color:#fff;width:183px;height:44px;border-radius:21.5px;background-color:#db202f;padding:8px 16px}.container h3{font-size:20px;font-weight:600;color:#38424c}.fileover{animation:shake 1s;animation-iteration-count:infinite}.files-list{margin-top:1.5rem}.files-list .single-file{padding:.5rem;justify-content:space-between;align-items:center;border:dashed 1px #1c824d;margin-bottom:1rem;margin-right:1rem;display:flex;flex-grow:1}.files-list .single-file .delete{display:flex;margin-left:.5rem;cursor:pointer;align-self:flex-end}.files-list .single-file .name{font-size:14px;font-weight:500;color:#353f4a;margin:0}.files-list .single-file .size{font-size:12px;font-weight:500;color:#a4a4a4;margin:0;margin-left:1rem}.files-list .single-file .info{width:100%}@keyframes shake{0%{transform:translate(1px,1px) rotate(0)}10%{transform:translate(-1px,-2px) rotate(-1deg)}20%{transform:translate(-3px) rotate(1deg)}30%{transform:translate(3px,2px) rotate(0)}40%{transform:translate(1px,-1px) rotate(1deg)}50%{transform:translate(-1px,2px) rotate(-1deg)}60%{transform:translate(-3px,1px) rotate(0)}70%{transform:translate(3px,1px) rotate(-1deg)}80%{transform:translate(-1px,-1px) rotate(1deg)}90%{transform:translate(1px,2px) rotate(0)}to{transform:translate(1px,-2px) rotate(-1deg)}}\n"] }]
|
|
94
|
+
}], ctorParameters: function () { return []; }, propDecorators: { message: [{
|
|
95
|
+
type: Input
|
|
96
|
+
}], files: [{
|
|
97
|
+
type: Input
|
|
98
|
+
}], filesChange: [{
|
|
99
|
+
type: Output
|
|
100
|
+
}], upload: [{
|
|
101
|
+
type: Output
|
|
102
|
+
}], enableUpload: [{
|
|
103
|
+
type: Input
|
|
104
|
+
}] } });
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0YWNoLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rpbi1zcGEvc3JjL2xpYi9jb21wb25lbnRzL2F0dGFjaC9hdHRhY2guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvYXR0YWNoL2F0dGFjaC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7QUFRL0UsTUFBTSxPQUFPLGVBQWU7SUFFMUI7UUFLUyxZQUFPLEdBQUcsMEJBQTBCLENBQUE7UUFDcEMsVUFBSyxHQUFVLEVBQUUsQ0FBQztRQUNqQixnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDakMsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFHN0IsaUJBQVksR0FBRyxLQUFLLENBQUM7SUFYZCxDQUFDO0lBRWpCLFFBQVE7SUFDUixDQUFDO0lBV0Q7O09BRUc7SUFDSCxhQUFhLENBQUMsTUFBTTtRQUNsQixJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsaUJBQWlCLENBQUMsS0FBSztRQUNyQixJQUFJLEtBQUssR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUMvQixJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVEOzs7T0FHRztJQUNILFVBQVUsQ0FBQyxLQUFhO1FBQ3RCLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQ7O09BRUc7SUFDSCx3Q0FBd0M7SUFDeEMsdUJBQXVCO0lBQ3ZCLHlDQUF5QztJQUN6QyxnQkFBZ0I7SUFDaEIsZUFBZTtJQUNmLHFEQUFxRDtJQUNyRCxvREFBb0Q7SUFDcEQsNkNBQTZDO0lBQzdDLGtEQUFrRDtJQUNsRCxtQkFBbUI7SUFDbkIsNkNBQTZDO0lBQzdDLFlBQVk7SUFDWixpQkFBaUI7SUFDakIsUUFBUTtJQUNSLGNBQWM7SUFDZCxJQUFJO0lBRUo7OztPQUdHO0lBQ0gsZ0JBQWdCLENBQUMsS0FBaUI7UUFDaEMsS0FBSyxNQUFNLElBQUksSUFBSSxLQUFLLEVBQUU7WUFDeEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUM7WUFDbEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDdkI7UUFDRCxnQ0FBZ0M7SUFDbEMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxXQUFXLENBQUMsS0FBSyxFQUFFLFFBQVE7UUFDekIsSUFBSSxLQUFLLEtBQUssQ0FBQyxFQUFFO1lBQ2YsT0FBTyxTQUFTLENBQUM7U0FDbEI7UUFDRCxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUM7UUFDZixNQUFNLEVBQUUsR0FBRyxRQUFRLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsSUFBSSxDQUFDLENBQUM7UUFDN0MsTUFBTSxLQUFLLEdBQUcsQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3hFLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEQsT0FBTyxVQUFVLENBQUMsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxHQUFHLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzNFLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwQyxDQUFDOzs0R0E3RlUsZUFBZTtnR0FBZixlQUFlLDJMQ1I1Qiw4NERBdUNBOzJGRC9CYSxlQUFlO2tCQUwzQixTQUFTOytCQUNFLFlBQVk7MEVBV2IsT0FBTztzQkFBZixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDSSxXQUFXO3NCQUFwQixNQUFNO2dCQUNHLE1BQU07c0JBQWYsTUFBTTtnQkFHRSxZQUFZO3NCQUFwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc3BhLWF0dGFjaCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2F0dGFjaC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vYXR0YWNoLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIEF0dGFjaENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gIH1cclxuXHJcbiAgQElucHV0KCkgbWVzc2FnZSA9IFwiRHJhZyBhbmQgZHJvcCBmaWxlcyBoZXJlXCJcclxuICBASW5wdXQoKSBmaWxlczogYW55W10gPSBbXTtcclxuICBAT3V0cHV0KCkgZmlsZXNDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIHVwbG9hZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcblxyXG4gIEBJbnB1dCgpIGVuYWJsZVVwbG9hZCA9IGZhbHNlO1xyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogb24gZmlsZSBkcm9wIGhhbmRsZXJcclxuICAgKi9cclxuICBvbkZpbGVEcm9wcGVkKCRldmVudCkge1xyXG4gICAgdGhpcy5wcmVwYXJlRmlsZXNMaXN0KCRldmVudCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBoYW5kbGUgZmlsZSBmcm9tIGJyb3dzaW5nXHJcbiAgICovXHJcbiAgZmlsZUJyb3dzZUhhbmRsZXIoZXZlbnQpIHtcclxuICAgIGxldCBmaWxlcyA9IGV2ZW50LnRhcmdldC5maWxlcztcclxuICAgIHRoaXMucHJlcGFyZUZpbGVzTGlzdChmaWxlcyk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBEZWxldGUgZmlsZSBmcm9tIGZpbGVzIGxpc3RcclxuICAgKiBAcGFyYW0gaW5kZXggKEZpbGUgaW5kZXgpXHJcbiAgICovXHJcbiAgZGVsZXRlRmlsZShpbmRleDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLmZpbGVzLnNwbGljZShpbmRleCwgMSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTaW11bGF0ZSB0aGUgdXBsb2FkIHByb2Nlc3NcclxuICAgKi9cclxuICAvLyB1cGxvYWRGaWxlc1NpbXVsYXRvcihpbmRleDogbnVtYmVyKSB7XHJcbiAgLy8gICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAvLyAgICAgaWYgKGluZGV4ID09PSB0aGlzLmZpbGVzLmxlbmd0aCkge1xyXG4gIC8vICAgICAgIHJldHVybjtcclxuICAvLyAgICAgfSBlbHNlIHtcclxuICAvLyAgICAgICBjb25zdCBwcm9ncmVzc0ludGVydmFsID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xyXG4gIC8vICAgICAgICAgaWYgKHRoaXMuZmlsZXNbaW5kZXhdLnByb2dyZXNzID09PSAxMDApIHtcclxuICAvLyAgICAgICAgICAgY2xlYXJJbnRlcnZhbChwcm9ncmVzc0ludGVydmFsKTtcclxuICAvLyAgICAgICAgICAgdGhpcy51cGxvYWRGaWxlc1NpbXVsYXRvcihpbmRleCArIDEpO1xyXG4gIC8vICAgICAgICAgfSBlbHNlIHtcclxuICAvLyAgICAgICAgICAgdGhpcy5maWxlc1tpbmRleF0ucHJvZ3Jlc3MgKz0gNTtcclxuICAvLyAgICAgICAgIH1cclxuICAvLyAgICAgICB9LCAyMDApO1xyXG4gIC8vICAgICB9XHJcbiAgLy8gICB9LCAxMDAwKTtcclxuICAvLyB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENvbnZlcnQgRmlsZXMgbGlzdCB0byBub3JtYWwgYXJyYXkgbGlzdFxyXG4gICAqIEBwYXJhbSBmaWxlcyAoRmlsZXMgTGlzdClcclxuICAgKi9cclxuICBwcmVwYXJlRmlsZXNMaXN0KGZpbGVzOiBBcnJheTxhbnk+KSB7XHJcbiAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgZmlsZXMpIHtcclxuICAgICAgaXRlbS5wcm9ncmVzcyA9IDA7XHJcbiAgICAgIHRoaXMuZmlsZXMucHVzaChpdGVtKTtcclxuICAgIH1cclxuICAgIC8vIHRoaXMudXBsb2FkRmlsZXNTaW11bGF0b3IoMCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBmb3JtYXQgYnl0ZXNcclxuICAgKiBAcGFyYW0gYnl0ZXMgKEZpbGUgc2l6ZSBpbiBieXRlcylcclxuICAgKiBAcGFyYW0gZGVjaW1hbHMgKERlY2ltYWxzIHBvaW50KVxyXG4gICAqL1xyXG4gIGZvcm1hdEJ5dGVzKGJ5dGVzLCBkZWNpbWFscykge1xyXG4gICAgaWYgKGJ5dGVzID09PSAwKSB7XHJcbiAgICAgIHJldHVybiAnMCBCeXRlcyc7XHJcbiAgICB9XHJcbiAgICBjb25zdCBrID0gMTAyNDtcclxuICAgIGNvbnN0IGRtID0gZGVjaW1hbHMgPD0gMCA/IDAgOiBkZWNpbWFscyB8fCAyO1xyXG4gICAgY29uc3Qgc2l6ZXMgPSBbJ0J5dGVzJywgJ0tCJywgJ01CJywgJ0dCJywgJ1RCJywgJ1BCJywgJ0VCJywgJ1pCJywgJ1lCJ107XHJcbiAgICBjb25zdCBpID0gTWF0aC5mbG9vcihNYXRoLmxvZyhieXRlcykgLyBNYXRoLmxvZyhrKSk7XHJcbiAgICByZXR1cm4gcGFyc2VGbG9hdCgoYnl0ZXMgLyBNYXRoLnBvdyhrLCBpKSkudG9GaXhlZChkbSkpICsgJyAnICsgc2l6ZXNbaV07XHJcbiAgfVxyXG5cclxuICB1cGxvYWRlZCgpe1xyXG4gICAgdGhpcy51cGxvYWQuZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgZmlsZXNDaGFuZ2VkKCl7XHJcbiAgICB0aGlzLmZpbGVzQ2hhbmdlLmVtaXQodGhpcy5maWxlcyk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJ0aW4taW5wdXQtcm93XCIgc3R5bGU9XCJ3aWR0aDogMTAwJTtcIj5cclxuXHJcbiAgPGRpdiBjbGFzcz1cImNvbFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lclwiIGFwcERuZCAoZmlsZURyb3BwZWQpPVwib25GaWxlRHJvcHBlZCgkZXZlbnQpXCI+XHJcbiAgICAgIDxpbnB1dCB0eXBlPVwiZmlsZVwiICNmaWxlRHJvcFJlZiBpZD1cImZpbGVEcm9wUmVmXCIgbXVsdGlwbGUgKGNoYW5nZSk9XCJmaWxlQnJvd3NlSGFuZGxlcigkZXZlbnQpXCIgLz5cclxuICAgICAgPGg0Pnt7bWVzc2FnZX19PC9oND5cclxuICAgICAgPGg0Pm9yPC9oND5cclxuICAgICAgPGxhYmVsIGZvcj1cImZpbGVEcm9wUmVmXCI+Q2xpY2sgdG8gQnJvd3NlPC9sYWJlbD5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG5cclxuICA8ZGl2IGNsYXNzPVwiY29sXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZmlsZXMtbGlzdCBcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cInNpbmdsZS1maWxlIFwiIHN0eWxlPVwid2lkdGg6IDEwMCU7XCIgKm5nRm9yPVwibGV0IGZpbGUgb2YgZmlsZXM7IGxldCBpID0gaW5kZXhcIj5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInRpbi1pbnB1dC1yb3cgaW5mb1wiID5cclxuICAgICAgICAgIDxoNCBjbGFzcz1cIm5hbWVcIj5cclxuICAgICAgICAgICAge3sgZmlsZT8ubmFtZSB9fVxyXG4gICAgICAgICAgPC9oND5cclxuICAgICAgICAgIDxwIGNsYXNzPVwic2l6ZVwiPlxyXG4gICAgICAgICAgICB7eyBmb3JtYXRCeXRlcyhmaWxlPy5zaXplLCAyKSB9fVxyXG4gICAgICAgICAgPC9wPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGVsZXRlXCIgKGNsaWNrKT1cImRlbGV0ZUZpbGUoaSlcIj5cclxuICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTRcIiBoZWlnaHQ9XCIxOFwiIHZpZXdCb3g9XCIwIDAgMTQgMThcIj5cclxuICAgICAgICAgICAgPHBhdGggZmlsbD1cIiNCMUIxQjFcIiBmaWxsLXJ1bGU9XCJub256ZXJvXCJcclxuICAgICAgICAgICAgICBkPVwiTTEgMTZjMCAxLjEuOSAyIDIgMmg4YzEuMSAwIDItLjkgMi0yVjZjMC0xLjEtLjktMi0yLTJIM2MtMS4xIDAtMiAuOS0yIDJ2MTB6bTMuMTctNy44M2EuOTk2Ljk5NiAwIDAgMSAxLjQxIDBMNyA5LjU5bDEuNDItMS40MmEuOTk2Ljk5NiAwIDEgMSAxLjQxIDEuNDFMOC40MSAxMWwxLjQyIDEuNDJhLjk5Ni45OTYgMCAxIDEtMS40MSAxLjQxTDcgMTIuNDFsLTEuNDIgMS40MmEuOTk2Ljk5NiAwIDEgMS0xLjQxLTEuNDFMNS41OSAxMSA0LjE3IDkuNThhLjk5Ni45OTYgMCAwIDEgMC0xLjQxek0xMC41IDFMOS43OS4yOUM5LjYxLjExIDkuMzUgMCA5LjA5IDBINC45MWMtLjI2IDAtLjUyLjExLS43LjI5TDMuNSAxSDFjLS41NSAwLTEgLjQ1LTEgMXMuNDUgMSAxIDFoMTJjLjU1IDAgMS0uNDUgMS0xcy0uNDUtMS0xLTFoLTIuNXpcIiAvPlxyXG4gICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiAqbmdJZj1cImZpbGVzLmxlbmd0aCA+IDAgJiYgZW5hYmxlVXBsb2FkXCIgY2xhc3M9XCJ0aW4taW5wdXQtcm93IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCIgc3R5bGU9XCJ3aWR0aDogMTAwJTtcIiA+XHJcbiAgICAgIDxidXR0b24gbWF0LWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwidXBsb2FkZWQoKVwiIG1hdFRvb2x0aXA9XCJVcGxvYWQgTmV3IERvY3VtZW50c1wiIG1hdFRvb2x0aXBQb3NpdGlvbj1cImFib3ZlXCIgID48bWF0LWljb24+ZmlsZV91cGxvYWQ8L21hdC1pY29uPiBVcGxvYWQ8L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG5cclxuPC9kaXY+XHJcbiJdfQ==
|