iptdevs-design-system 2.4.3 → 5.0.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.
Files changed (104) hide show
  1. package/README.md +24 -24
  2. package/esm2020/iptdevs-design-system.mjs +4 -4
  3. package/esm2020/lib/components/atoms/aside-button/aside-button.component.mjs +50 -50
  4. package/esm2020/lib/components/atoms/button/button.component.mjs +64 -64
  5. package/esm2020/lib/components/atoms/checkbox/checkbox.component.mjs +47 -47
  6. package/esm2020/lib/components/atoms/datalist/datalist.component.mjs +94 -94
  7. package/esm2020/lib/components/atoms/input/input.component.mjs +137 -137
  8. package/esm2020/lib/components/atoms/level-button/level-button.component.mjs +64 -64
  9. package/esm2020/lib/components/atoms/level-text/level-text.component.mjs +19 -19
  10. package/esm2020/lib/components/atoms/radio/radio.component.mjs +47 -47
  11. package/esm2020/lib/components/atoms/select/select.component.mjs +92 -92
  12. package/esm2020/lib/components/atoms/text-link/text-link.component.mjs +39 -39
  13. package/esm2020/lib/components/components.module.mjs +108 -108
  14. package/esm2020/lib/components/forms/login-form/login-form.component.mjs +93 -93
  15. package/esm2020/lib/components/material.module.mjs +18 -18
  16. package/esm2020/lib/components/molecules/sidenav/sidenav.component.mjs +146 -146
  17. package/esm2020/lib/core/core.module.mjs +46 -46
  18. package/esm2020/lib/core/models/activities/activities.interface.mjs +2 -0
  19. package/esm2020/lib/core/models/attendance/attendance.interface.mjs +2 -0
  20. package/esm2020/lib/core/models/budget/budget.model.mjs +2 -2
  21. package/esm2020/lib/core/models/calendar/calendar-rq.models.mjs +2 -0
  22. package/esm2020/lib/core/models/cod/cod-rq.model.mjs +2 -2
  23. package/esm2020/lib/core/models/course/course-rq.model.mjs +2 -2
  24. package/esm2020/lib/core/models/cronogram/cronogram.models.mjs +2 -0
  25. package/esm2020/lib/core/models/marketing/marketing.model.mjs +2 -2
  26. package/esm2020/lib/core/models/notes/notes.interface.mjs +2 -0
  27. package/esm2020/lib/core/models/response/response.interface.mjs +2 -0
  28. package/esm2020/lib/core/models/session/session.model.mjs +3 -3
  29. package/esm2020/lib/core/models/student/student.interface.mjs +2 -0
  30. package/esm2020/lib/core/models/table/table-rs.model.mjs +2 -2
  31. package/esm2020/lib/core/models/test/test.model.mjs +2 -2
  32. package/esm2020/lib/core/models/url/url.model.mjs +2 -2
  33. package/esm2020/lib/core/models/user/user-rq.model.mjs +2 -2
  34. package/esm2020/lib/core/models/user/user-rs.model.mjs +5 -5
  35. package/esm2020/lib/core/services/attendance-service/attendance.service.mjs +17 -0
  36. package/esm2020/lib/core/services/budget-service/budget-service.mjs +41 -41
  37. package/esm2020/lib/core/services/calendar-service/calendar.service.mjs +34 -0
  38. package/esm2020/lib/core/services/course-service/course-service.model.mjs +75 -56
  39. package/esm2020/lib/core/services/marketing-service/marketing-service.mjs +57 -57
  40. package/esm2020/lib/core/services/notes-service/notes.service.mjs +40 -0
  41. package/esm2020/lib/core/services/parameters-service/parameters.service.mjs +110 -110
  42. package/esm2020/lib/core/services/storage-service/storage-service.mjs +50 -50
  43. package/esm2020/lib/core/services/student-service/student.service.mjs +30 -0
  44. package/esm2020/lib/core/services/switch-service/switch.service.mjs +16 -16
  45. package/esm2020/lib/core/services/test-service/test.service.mjs +136 -136
  46. package/esm2020/lib/core/services/user-service/user-service.mjs +84 -84
  47. package/esm2020/lib/core/utils/base-service/base.service.mjs +153 -153
  48. package/esm2020/lib/core/utils/route-service/route.service.mjs +18 -18
  49. package/esm2020/lib/design-system.module.mjs +36 -36
  50. package/esm2020/public-api.mjs +56 -45
  51. package/fesm2015/iptdevs-design-system.mjs +1782 -1657
  52. package/fesm2015/iptdevs-design-system.mjs.map +1 -1
  53. package/fesm2020/iptdevs-design-system.mjs +1779 -1654
  54. package/fesm2020/iptdevs-design-system.mjs.map +1 -1
  55. package/iptdevs-design-system.d.ts +5 -5
  56. package/lib/components/atoms/aside-button/aside-button.component.d.ts +11 -11
  57. package/lib/components/atoms/button/button.component.d.ts +13 -13
  58. package/lib/components/atoms/checkbox/checkbox.component.d.ts +11 -11
  59. package/lib/components/atoms/datalist/datalist.component.d.ts +20 -20
  60. package/lib/components/atoms/input/input.component.d.ts +24 -24
  61. package/lib/components/atoms/level-button/level-button.component.d.ts +11 -11
  62. package/lib/components/atoms/level-text/level-text.component.d.ts +7 -7
  63. package/lib/components/atoms/radio/radio.component.d.ts +11 -11
  64. package/lib/components/atoms/select/select.component.d.ts +24 -24
  65. package/lib/components/atoms/text-link/text-link.component.d.ts +12 -12
  66. package/lib/components/components.module.d.ts +22 -22
  67. package/lib/components/forms/login-form/login-form.component.d.ts +13 -13
  68. package/lib/components/material.module.d.ts +10 -10
  69. package/lib/components/molecules/sidenav/sidenav.component.d.ts +22 -22
  70. package/lib/core/core.module.d.ts +6 -6
  71. package/lib/core/models/activities/activities.interface.d.ts +6 -0
  72. package/lib/core/models/attendance/attendance.interface.d.ts +44 -0
  73. package/lib/core/models/budget/budget.model.d.ts +69 -69
  74. package/lib/core/models/calendar/calendar-rq.models.d.ts +27 -0
  75. package/lib/core/models/cod/cod-rq.model.d.ts +51 -51
  76. package/lib/core/models/course/course-rq.model.d.ts +86 -78
  77. package/lib/core/models/cronogram/cronogram.models.d.ts +71 -0
  78. package/lib/core/models/marketing/marketing.model.d.ts +104 -104
  79. package/lib/core/models/notes/notes.interface.d.ts +59 -0
  80. package/lib/core/models/response/response.interface.d.ts +10 -0
  81. package/lib/core/models/session/session.model.d.ts +5 -5
  82. package/lib/core/models/student/student.interface.d.ts +4 -0
  83. package/lib/core/models/table/table-rs.model.d.ts +7 -7
  84. package/lib/core/models/test/test.model.d.ts +219 -219
  85. package/lib/core/models/url/url.model.d.ts +8 -8
  86. package/lib/core/models/user/user-rq.model.d.ts +91 -72
  87. package/lib/core/models/user/user-rs.model.d.ts +35 -35
  88. package/lib/core/services/attendance-service/attendance.service.d.ts +8 -0
  89. package/lib/core/services/budget-service/budget-service.d.ts +16 -16
  90. package/lib/core/services/calendar-service/calendar.service.d.ts +15 -0
  91. package/lib/core/services/course-service/course-service.model.d.ts +24 -19
  92. package/lib/core/services/marketing-service/marketing-service.d.ts +20 -20
  93. package/lib/core/services/notes-service/notes.service.d.ts +17 -0
  94. package/lib/core/services/parameters-service/parameters.service.d.ts +33 -33
  95. package/lib/core/services/storage-service/storage-service.d.ts +18 -18
  96. package/lib/core/services/student-service/student.service.d.ts +14 -0
  97. package/lib/core/services/switch-service/switch.service.d.ts +8 -8
  98. package/lib/core/services/test-service/test.service.d.ts +35 -35
  99. package/lib/core/services/user-service/user-service.d.ts +26 -26
  100. package/lib/core/utils/base-service/base.service.d.ts +18 -18
  101. package/lib/core/utils/route-service/route.service.d.ts +9 -9
  102. package/lib/design-system.module.d.ts +9 -9
  103. package/package.json +3 -3
  104. package/public-api.d.ts +47 -36
@@ -1,94 +1,94 @@
1
- import { Component, Input, Output, EventEmitter } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/forms";
4
- import * as i2 from "@angular/common";
5
- export class DatalistComponent {
6
- constructor(fb) {
7
- this.disabledSel = false;
8
- this.isChanged = new EventEmitter();
9
- this.clicked = false;
10
- }
11
- optionChanged(event) {
12
- let selectOption = this.datalistData.find(element => element.name == event.target.value);
13
- if (typeof (selectOption) != 'undefined') {
14
- this.isChanged.emit(selectOption.code);
15
- }
16
- else {
17
- this.isChanged.emit('-1');
18
- }
19
- }
20
- click(value) {
21
- this.clicked = value.isTrusted;
22
- }
23
- setDataListValue() {
24
- let selectOption = this.datalistData.find(element => element.code == this.initalData);
25
- if (typeof (selectOption) != 'undefined') {
26
- return selectOption.name;
27
- }
28
- else {
29
- return '';
30
- }
31
- }
32
- get labelClass() {
33
- return this.clicked === false ? 'label' : 'labelUp';
34
- }
35
- }
36
- DatalistComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DatalistComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
37
- DatalistComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: DatalistComponent, selector: "ipt-datalist", inputs: { datalistId: "datalistId", datalistData: "datalistData", placeHolder: "placeHolder", validateText: "validateText", initalData: "initalData", disabledSel: "disabledSel" }, outputs: { isChanged: "isChanged" }, ngImport: i0, template: `
38
- <div class="input-container">
39
- <label [ngClass]="labelClass">{{ placeHolder }}</label>
40
- <input
41
- type="text"
42
- class="input"
43
- (click)="click($event)"
44
- [attr.list]="datalistId"
45
- (change)="optionChanged($event)"
46
- [disabled]="disabledSel"
47
- [value]="setDataListValue()"
48
- />
49
-
50
- <datalist id="{{ datalistId }}">
51
- <option *ngFor="let item of datalistData; index as i" [value]="item.name">
52
- {{item.id_card}} {{item.name}}
53
- </option>
54
- </datalist>
55
- </div>
56
- `, isInline: true, styles: ["*{font-family:Poppins,sans-serif}.input-container{position:relative;margin-top:30px}.input{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;display:block;transition:.2s;font-weight:300;margin:10px 10px -30px;width:-webkit-fill-available;width:-moz-available;height:28px;padding-left:10px;background-color:#fff}.input:hover{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px}.input:focus{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px;transition:0s;border:1.5px solid #1c77f7}.label{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:7px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}.labelUp{color:#1c77f7;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:-20px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}\n"], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }] });
57
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DatalistComponent, decorators: [{
58
- type: Component,
59
- args: [{ selector: 'ipt-datalist', template: `
60
- <div class="input-container">
61
- <label [ngClass]="labelClass">{{ placeHolder }}</label>
62
- <input
63
- type="text"
64
- class="input"
65
- (click)="click($event)"
66
- [attr.list]="datalistId"
67
- (change)="optionChanged($event)"
68
- [disabled]="disabledSel"
69
- [value]="setDataListValue()"
70
- />
71
-
72
- <datalist id="{{ datalistId }}">
73
- <option *ngFor="let item of datalistData; index as i" [value]="item.name">
74
- {{item.id_card}} {{item.name}}
75
- </option>
76
- </datalist>
77
- </div>
78
- `, styles: ["*{font-family:Poppins,sans-serif}.input-container{position:relative;margin-top:30px}.input{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;display:block;transition:.2s;font-weight:300;margin:10px 10px -30px;width:-webkit-fill-available;width:-moz-available;height:28px;padding-left:10px;background-color:#fff}.input:hover{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px}.input:focus{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px;transition:0s;border:1.5px solid #1c77f7}.label{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:7px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}.labelUp{color:#1c77f7;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:-20px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}\n"] }]
79
- }], ctorParameters: function () { return [{ type: i1.FormBuilder }]; }, propDecorators: { datalistId: [{
80
- type: Input
81
- }], datalistData: [{
82
- type: Input
83
- }], placeHolder: [{
84
- type: Input
85
- }], validateText: [{
86
- type: Input
87
- }], initalData: [{
88
- type: Input
89
- }], disabledSel: [{
90
- type: Input
91
- }], isChanged: [{
92
- type: Output
93
- }] } });
94
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvbXBvbmVudHMvYXRvbXMvZGF0YWxpc3QvZGF0YWxpc3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQTRCLE1BQU0sZUFBZSxDQUFDOzs7O0FBMkJqRyxNQUFNLE9BQU8saUJBQWlCO0lBYTVCLFlBQVksRUFBZTtRQU5sQixnQkFBVyxHQUFXLEtBQUssQ0FBQztRQUUzQixjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUVqRCxZQUFPLEdBQVksS0FBSyxDQUFDO0lBR3pCLENBQUM7SUFFRCxhQUFhLENBQUMsS0FBVTtRQUN0QixJQUFJLFlBQVksR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFFLE9BQU8sQ0FBQyxJQUFJLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMxRixJQUFJLE9BQU0sQ0FBQyxZQUFZLENBQUMsSUFBSSxXQUFXLEVBQUU7WUFDdkMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3hDO2FBQU07WUFDTCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUMzQjtJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsS0FBaUI7UUFDckIsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxnQkFBZ0I7UUFDZCxJQUFJLFlBQVksR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFFLE9BQU8sQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3ZGLElBQUksT0FBTSxDQUFDLFlBQVksQ0FBQyxJQUFJLFdBQVcsRUFBRTtZQUN2QyxPQUFPLFlBQVksQ0FBQyxJQUFJLENBQUM7U0FDMUI7YUFBTTtZQUNMLE9BQU8sRUFBRSxDQUFDO1NBQ1g7SUFDSCxDQUFDO0lBRUQsSUFBVyxVQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLE9BQU8sS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ3RELENBQUM7OzhHQXhDVSxpQkFBaUI7a0dBQWpCLGlCQUFpQiw2UUF0QmxCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBbUJUOzJGQUdVLGlCQUFpQjtrQkF4QjdCLFNBQVM7K0JBQ0UsY0FBYyxZQUNkOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBbUJUO2tHQUtRLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUVJLFNBQVM7c0JBQWxCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgVmlld0NoaWxkLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBOZ0Zvcm0sIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2lwdC1kYXRhbGlzdCcsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImlucHV0LWNvbnRhaW5lclwiPlxuICAgICAgPGxhYmVsIFtuZ0NsYXNzXT1cImxhYmVsQ2xhc3NcIj57eyBwbGFjZUhvbGRlciB9fTwvbGFiZWw+XG4gICAgICA8aW5wdXRcbiAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICBjbGFzcz1cImlucHV0XCJcbiAgICAgICAgKGNsaWNrKT1cImNsaWNrKCRldmVudClcIlxuICAgICAgICBbYXR0ci5saXN0XT1cImRhdGFsaXN0SWRcIlxuICAgICAgICAoY2hhbmdlKT1cIm9wdGlvbkNoYW5nZWQoJGV2ZW50KVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFNlbFwiXG4gICAgICAgIFt2YWx1ZV09XCJzZXREYXRhTGlzdFZhbHVlKClcIlxuICAgICAgLz5cblxuICAgICAgPGRhdGFsaXN0IGlkPVwie3sgZGF0YWxpc3RJZCB9fVwiPlxuICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBpdGVtIG9mIGRhdGFsaXN0RGF0YTsgaW5kZXggYXMgaVwiIFt2YWx1ZV09XCJpdGVtLm5hbWVcIj5cbiAgICAgICAgICB7e2l0ZW0uaWRfY2FyZH19IHt7aXRlbS5uYW1lfX1cbiAgICAgICAgPC9vcHRpb24+XG4gICAgICA8L2RhdGFsaXN0PlxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZVVybHM6IFsnLi9kYXRhbGlzdC5jc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRGF0YWxpc3RDb21wb25lbnQge1xuXG4gIEBJbnB1dCgpIGRhdGFsaXN0SWQhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGRhdGFsaXN0RGF0YSE6IGFueVtdO1xuICBASW5wdXQoKSBwbGFjZUhvbGRlciE6IHN0cmluZztcbiAgQElucHV0KCkgdmFsaWRhdGVUZXh0ITogc3RyaW5nO1xuICBASW5wdXQoKSBpbml0YWxEYXRhITogc3RyaW5nO1xuICBASW5wdXQoKSBkaXNhYmxlZFNlbDpib29sZWFuID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpIGlzQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIGNsaWNrZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihmYjogRm9ybUJ1aWxkZXIpIHtcbiAgfVxuXG4gIG9wdGlvbkNoYW5nZWQoZXZlbnQ6IGFueSkge1xuICAgIGxldCBzZWxlY3RPcHRpb24gPSB0aGlzLmRhdGFsaXN0RGF0YS5maW5kKGVsZW1lbnQgPT4gIGVsZW1lbnQubmFtZSA9PSBldmVudC50YXJnZXQudmFsdWUpO1xuICAgIGlmICh0eXBlb2Yoc2VsZWN0T3B0aW9uKSAhPSAndW5kZWZpbmVkJykge1xuICAgICAgdGhpcy5pc0NoYW5nZWQuZW1pdChzZWxlY3RPcHRpb24uY29kZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaXNDaGFuZ2VkLmVtaXQoJy0xJyk7XG4gICAgfVxuICB9XG5cbiAgY2xpY2sodmFsdWU6IE1vdXNlRXZlbnQpIHtcbiAgICB0aGlzLmNsaWNrZWQgPSB2YWx1ZS5pc1RydXN0ZWQ7XG4gIH1cblxuICBzZXREYXRhTGlzdFZhbHVlKCkge1xuICAgIGxldCBzZWxlY3RPcHRpb24gPSB0aGlzLmRhdGFsaXN0RGF0YS5maW5kKGVsZW1lbnQgPT4gIGVsZW1lbnQuY29kZSA9PSB0aGlzLmluaXRhbERhdGEpO1xuICAgIGlmICh0eXBlb2Yoc2VsZWN0T3B0aW9uKSAhPSAndW5kZWZpbmVkJykge1xuICAgICAgcmV0dXJuIHNlbGVjdE9wdGlvbi5uYW1lO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBsYWJlbENsYXNzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuY2xpY2tlZCA9PT0gZmFsc2UgPyAnbGFiZWwnIDogJ2xhYmVsVXAnO1xuICB9XG59XG4iXX0=
1
+ import { Component, Input, Output, EventEmitter } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/forms";
4
+ import * as i2 from "@angular/common";
5
+ export class DatalistComponent {
6
+ constructor(fb) {
7
+ this.disabledSel = false;
8
+ this.isChanged = new EventEmitter();
9
+ this.clicked = false;
10
+ }
11
+ optionChanged(event) {
12
+ let selectOption = this.datalistData.find(element => element.name == event.target.value);
13
+ if (typeof (selectOption) != 'undefined') {
14
+ this.isChanged.emit(selectOption.code);
15
+ }
16
+ else {
17
+ this.isChanged.emit('-1');
18
+ }
19
+ }
20
+ click(value) {
21
+ this.clicked = value.isTrusted;
22
+ }
23
+ setDataListValue() {
24
+ let selectOption = this.datalistData.find(element => element.code == this.initalData);
25
+ if (typeof (selectOption) != 'undefined') {
26
+ return selectOption.name;
27
+ }
28
+ else {
29
+ return '';
30
+ }
31
+ }
32
+ get labelClass() {
33
+ return this.clicked === false ? 'label' : 'labelUp';
34
+ }
35
+ }
36
+ DatalistComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DatalistComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
37
+ DatalistComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: DatalistComponent, selector: "ipt-datalist", inputs: { datalistId: "datalistId", datalistData: "datalistData", placeHolder: "placeHolder", validateText: "validateText", initalData: "initalData", disabledSel: "disabledSel" }, outputs: { isChanged: "isChanged" }, ngImport: i0, template: `
38
+ <div class="input-container">
39
+ <label [ngClass]="labelClass">{{ placeHolder }}</label>
40
+ <input
41
+ type="text"
42
+ class="input"
43
+ (click)="click($event)"
44
+ [attr.list]="datalistId"
45
+ (change)="optionChanged($event)"
46
+ [disabled]="disabledSel"
47
+ [value]="setDataListValue()"
48
+ />
49
+
50
+ <datalist id="{{ datalistId }}">
51
+ <option *ngFor="let item of datalistData; index as i" [value]="item.name">
52
+ {{item.id_card}} {{item.name}}
53
+ </option>
54
+ </datalist>
55
+ </div>
56
+ `, isInline: true, styles: ["*{font-family:Poppins,sans-serif}.input-container{position:relative;margin-top:30px}.input{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;display:block;transition:.2s;font-weight:300;margin:10px 10px -30px;width:-webkit-fill-available;width:-moz-available;height:28px;padding-left:10px;background-color:#fff}.input:hover{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px}.input:focus{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px;transition:0s;border:1.5px solid #1c77f7}.label{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:7px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}.labelUp{color:#1c77f7;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:-20px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}\n"], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { type: i1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }] });
57
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: DatalistComponent, decorators: [{
58
+ type: Component,
59
+ args: [{ selector: 'ipt-datalist', template: `
60
+ <div class="input-container">
61
+ <label [ngClass]="labelClass">{{ placeHolder }}</label>
62
+ <input
63
+ type="text"
64
+ class="input"
65
+ (click)="click($event)"
66
+ [attr.list]="datalistId"
67
+ (change)="optionChanged($event)"
68
+ [disabled]="disabledSel"
69
+ [value]="setDataListValue()"
70
+ />
71
+
72
+ <datalist id="{{ datalistId }}">
73
+ <option *ngFor="let item of datalistData; index as i" [value]="item.name">
74
+ {{item.id_card}} {{item.name}}
75
+ </option>
76
+ </datalist>
77
+ </div>
78
+ `, styles: ["*{font-family:Poppins,sans-serif}.input-container{position:relative;margin-top:30px}.input{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;display:block;transition:.2s;font-weight:300;margin:10px 10px -30px;width:-webkit-fill-available;width:-moz-available;height:28px;padding-left:10px;background-color:#fff}.input:hover{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px}.input:focus{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px;transition:0s;border:1.5px solid #1c77f7}.label{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:7px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}.labelUp{color:#1c77f7;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:-20px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}\n"] }]
79
+ }], ctorParameters: function () { return [{ type: i1.FormBuilder }]; }, propDecorators: { datalistId: [{
80
+ type: Input
81
+ }], datalistData: [{
82
+ type: Input
83
+ }], placeHolder: [{
84
+ type: Input
85
+ }], validateText: [{
86
+ type: Input
87
+ }], initalData: [{
88
+ type: Input
89
+ }], disabledSel: [{
90
+ type: Input
91
+ }], isChanged: [{
92
+ type: Output
93
+ }] } });
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvbXBvbmVudHMvYXRvbXMvZGF0YWxpc3QvZGF0YWxpc3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQTRCLE1BQU0sZUFBZSxDQUFDOzs7O0FBMkJqRyxNQUFNLE9BQU8saUJBQWlCO0lBYTVCLFlBQVksRUFBZTtRQU5sQixnQkFBVyxHQUFXLEtBQUssQ0FBQztRQUUzQixjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUVqRCxZQUFPLEdBQVksS0FBSyxDQUFDO0lBR3pCLENBQUM7SUFFRCxhQUFhLENBQUMsS0FBVTtRQUN0QixJQUFJLFlBQVksR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFFLE9BQU8sQ0FBQyxJQUFJLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMxRixJQUFJLE9BQU0sQ0FBQyxZQUFZLENBQUMsSUFBSSxXQUFXLEVBQUU7WUFDdkMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3hDO2FBQU07WUFDTCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUMzQjtJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsS0FBaUI7UUFDckIsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxnQkFBZ0I7UUFDZCxJQUFJLFlBQVksR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFFLE9BQU8sQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3ZGLElBQUksT0FBTSxDQUFDLFlBQVksQ0FBQyxJQUFJLFdBQVcsRUFBRTtZQUN2QyxPQUFPLFlBQVksQ0FBQyxJQUFJLENBQUM7U0FDMUI7YUFBTTtZQUNMLE9BQU8sRUFBRSxDQUFDO1NBQ1g7SUFDSCxDQUFDO0lBRUQsSUFBVyxVQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLE9BQU8sS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0lBQ3RELENBQUM7OzhHQXhDVSxpQkFBaUI7a0dBQWpCLGlCQUFpQiw2UUF0QmxCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBbUJUOzJGQUdVLGlCQUFpQjtrQkF4QjdCLFNBQVM7K0JBQ0UsY0FBYyxZQUNkOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBbUJUO2tHQUtRLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUVJLFNBQVM7c0JBQWxCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgVmlld0NoaWxkLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgRm9ybUJ1aWxkZXIsIEZvcm1Db250cm9sLCBGb3JtR3JvdXAsIE5nRm9ybSwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnaXB0LWRhdGFsaXN0JyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdiBjbGFzcz1cImlucHV0LWNvbnRhaW5lclwiPlxyXG4gICAgICA8bGFiZWwgW25nQ2xhc3NdPVwibGFiZWxDbGFzc1wiPnt7IHBsYWNlSG9sZGVyIH19PC9sYWJlbD5cclxuICAgICAgPGlucHV0XHJcbiAgICAgICAgdHlwZT1cInRleHRcIlxyXG4gICAgICAgIGNsYXNzPVwiaW5wdXRcIlxyXG4gICAgICAgIChjbGljayk9XCJjbGljaygkZXZlbnQpXCJcclxuICAgICAgICBbYXR0ci5saXN0XT1cImRhdGFsaXN0SWRcIlxyXG4gICAgICAgIChjaGFuZ2UpPVwib3B0aW9uQ2hhbmdlZCgkZXZlbnQpXCJcclxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRTZWxcIlxyXG4gICAgICAgIFt2YWx1ZV09XCJzZXREYXRhTGlzdFZhbHVlKClcIlxyXG4gICAgICAvPlxyXG5cclxuICAgICAgPGRhdGFsaXN0IGlkPVwie3sgZGF0YWxpc3RJZCB9fVwiPlxyXG4gICAgICAgIDxvcHRpb24gKm5nRm9yPVwibGV0IGl0ZW0gb2YgZGF0YWxpc3REYXRhOyBpbmRleCBhcyBpXCIgW3ZhbHVlXT1cIml0ZW0ubmFtZVwiPlxyXG4gICAgICAgICAge3tpdGVtLmlkX2NhcmR9fSB7e2l0ZW0ubmFtZX19XHJcbiAgICAgICAgPC9vcHRpb24+XHJcbiAgICAgIDwvZGF0YWxpc3Q+XHJcbiAgICA8L2Rpdj5cclxuICBgLFxyXG4gIHN0eWxlVXJsczogWycuL2RhdGFsaXN0LmNzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGF0YWxpc3RDb21wb25lbnQge1xyXG5cclxuICBASW5wdXQoKSBkYXRhbGlzdElkITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGRhdGFsaXN0RGF0YSE6IGFueVtdO1xyXG4gIEBJbnB1dCgpIHBsYWNlSG9sZGVyITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHZhbGlkYXRlVGV4dCE6IHN0cmluZztcclxuICBASW5wdXQoKSBpbml0YWxEYXRhITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGRpc2FibGVkU2VsOmJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQE91dHB1dCgpIGlzQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG5cclxuICBjbGlja2VkOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKGZiOiBGb3JtQnVpbGRlcikge1xyXG4gIH1cclxuXHJcbiAgb3B0aW9uQ2hhbmdlZChldmVudDogYW55KSB7XHJcbiAgICBsZXQgc2VsZWN0T3B0aW9uID0gdGhpcy5kYXRhbGlzdERhdGEuZmluZChlbGVtZW50ID0+ICBlbGVtZW50Lm5hbWUgPT0gZXZlbnQudGFyZ2V0LnZhbHVlKTtcclxuICAgIGlmICh0eXBlb2Yoc2VsZWN0T3B0aW9uKSAhPSAndW5kZWZpbmVkJykge1xyXG4gICAgICB0aGlzLmlzQ2hhbmdlZC5lbWl0KHNlbGVjdE9wdGlvbi5jb2RlKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuaXNDaGFuZ2VkLmVtaXQoJy0xJyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjbGljayh2YWx1ZTogTW91c2VFdmVudCkge1xyXG4gICAgdGhpcy5jbGlja2VkID0gdmFsdWUuaXNUcnVzdGVkO1xyXG4gIH1cclxuXHJcbiAgc2V0RGF0YUxpc3RWYWx1ZSgpIHtcclxuICAgIGxldCBzZWxlY3RPcHRpb24gPSB0aGlzLmRhdGFsaXN0RGF0YS5maW5kKGVsZW1lbnQgPT4gIGVsZW1lbnQuY29kZSA9PSB0aGlzLmluaXRhbERhdGEpO1xyXG4gICAgaWYgKHR5cGVvZihzZWxlY3RPcHRpb24pICE9ICd1bmRlZmluZWQnKSB7XHJcbiAgICAgIHJldHVybiBzZWxlY3RPcHRpb24ubmFtZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiAnJztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgbGFiZWxDbGFzcygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuY2xpY2tlZCA9PT0gZmFsc2UgPyAnbGFiZWwnIDogJ2xhYmVsVXAnO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,137 +1,137 @@
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/forms";
5
- import * as i3 from "ng2-currency-mask";
6
- export class InputComponent {
7
- constructor() {
8
- this.data = [];
9
- this.clicked = false;
10
- this.withPipe = false;
11
- this.prefix = '$';
12
- this.thousands = '.';
13
- this.decimal = ',';
14
- }
15
- set control(value) {
16
- if (this.formControl !== value) {
17
- this.formControl = value;
18
- }
19
- }
20
- ngOnInit() { }
21
- click(value) {
22
- this.clicked = value.isTrusted;
23
- }
24
- }
25
- InputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: InputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
26
- InputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: InputComponent, selector: "ipt-input", inputs: { inputType: "inputType", placeHolder: "placeHolder", validateText: "validateText", withPipe: "withPipe", list: "list", iconUrl: "iconUrl", control: "control", prefix: "prefix", thousands: "thousands", decimal: "decimal" }, ngImport: i0, template: `
27
- <div class="input-container">
28
- <input *ngIf="inputType === 'date'"
29
- class="input"
30
- type="{{ inputType ? 'text' : 'date' }}"
31
- [formControl]="formControl"
32
- onfocus="this.type='date';"
33
- onblur="javascript: if( !this.value ) this.type='text';"
34
- uib-datepicker-popup="dd/MM/yyyy"
35
- ng-model="inputType"/>
36
-
37
- <input *ngIf="inputType !== 'date' && inputType !== 'time' && !withPipe"
38
- class="input"
39
- type="{{ inputType }}"
40
- [formControl]="formControl"
41
- [attr.list]="list"/>
42
-
43
- <input *ngIf="inputType === 'text' && withPipe"
44
- class="input"
45
- currencyMask
46
- [options]="{ prefix: prefix, thousands: thousands, decimal: decimal, allowNegative: false }"
47
- type="{{ inputType }}"
48
- [formControl]="formControl"
49
- [attr.list]="list"/>
50
-
51
- <input *ngIf="inputType === 'time'"
52
- class="input"
53
- type="time"
54
- [formControl]="formControl"
55
- [min]="'06:00:00'"
56
- max="22:00:00"
57
- step="900"
58
- autocomplete="on"
59
- value="08:00:00"
60
- (click)="click($event)"
61
- />
62
-
63
- <label [ngClass]="{'labelUp': formControl.value !== ''}">{{ placeHolder }}</label>
64
-
65
- <p *ngIf="(formControl.invalid && formControl.value !== '') || formControl.touched">
66
- {{ validateText }}
67
- </p>
68
- </div>
69
- `, isInline: true, styles: ["*{font-family:Poppins,sans-serif}@media screen and (min-width: 320px){p{color:#c73a3a;font-size:12px;padding-left:15px}}@media screen and (min-width: 768px){p{color:#c73a3a;font-size:13px;padding-left:15px}}@media screen and (min-width: 1024px){p{color:#c73a3a;font-size:13px;padding-left:15px}}.input-container{position:relative;margin-top:30px}input{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;display:block;transition:.2s;font-weight:300;width:-webkit-fill-available;width:-moz-available;height:28px;padding-left:10px;background-color:#fff;-webkit-appearance:none}input:hover{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px}input:focus{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px;transition:0s;border:1.5px solid #1c77f7}label{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:7px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}.input:focus~label,.input:invalid~label{top:-20px;font-size:15px;color:#1c77f7}.labelUp{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:-20px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i3.CurrencyMaskDirective, selector: "[currencyMask]", inputs: ["max", "min", "options"] }, { type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
70
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: InputComponent, decorators: [{
71
- type: Component,
72
- args: [{ selector: 'ipt-input', template: `
73
- <div class="input-container">
74
- <input *ngIf="inputType === 'date'"
75
- class="input"
76
- type="{{ inputType ? 'text' : 'date' }}"
77
- [formControl]="formControl"
78
- onfocus="this.type='date';"
79
- onblur="javascript: if( !this.value ) this.type='text';"
80
- uib-datepicker-popup="dd/MM/yyyy"
81
- ng-model="inputType"/>
82
-
83
- <input *ngIf="inputType !== 'date' && inputType !== 'time' && !withPipe"
84
- class="input"
85
- type="{{ inputType }}"
86
- [formControl]="formControl"
87
- [attr.list]="list"/>
88
-
89
- <input *ngIf="inputType === 'text' && withPipe"
90
- class="input"
91
- currencyMask
92
- [options]="{ prefix: prefix, thousands: thousands, decimal: decimal, allowNegative: false }"
93
- type="{{ inputType }}"
94
- [formControl]="formControl"
95
- [attr.list]="list"/>
96
-
97
- <input *ngIf="inputType === 'time'"
98
- class="input"
99
- type="time"
100
- [formControl]="formControl"
101
- [min]="'06:00:00'"
102
- max="22:00:00"
103
- step="900"
104
- autocomplete="on"
105
- value="08:00:00"
106
- (click)="click($event)"
107
- />
108
-
109
- <label [ngClass]="{'labelUp': formControl.value !== ''}">{{ placeHolder }}</label>
110
-
111
- <p *ngIf="(formControl.invalid && formControl.value !== '') || formControl.touched">
112
- {{ validateText }}
113
- </p>
114
- </div>
115
- `, styles: ["*{font-family:Poppins,sans-serif}@media screen and (min-width: 320px){p{color:#c73a3a;font-size:12px;padding-left:15px}}@media screen and (min-width: 768px){p{color:#c73a3a;font-size:13px;padding-left:15px}}@media screen and (min-width: 1024px){p{color:#c73a3a;font-size:13px;padding-left:15px}}.input-container{position:relative;margin-top:30px}input{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;display:block;transition:.2s;font-weight:300;width:-webkit-fill-available;width:-moz-available;height:28px;padding-left:10px;background-color:#fff;-webkit-appearance:none}input:hover{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px}input:focus{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px;transition:0s;border:1.5px solid #1c77f7}label{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:7px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}.input:focus~label,.input:invalid~label{top:-20px;font-size:15px;color:#1c77f7}.labelUp{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:-20px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}\n"] }]
116
- }], ctorParameters: function () { return []; }, propDecorators: { inputType: [{
117
- type: Input
118
- }], placeHolder: [{
119
- type: Input
120
- }], validateText: [{
121
- type: Input
122
- }], withPipe: [{
123
- type: Input
124
- }], list: [{
125
- type: Input
126
- }], iconUrl: [{
127
- type: Input
128
- }], control: [{
129
- type: Input
130
- }], prefix: [{
131
- type: Input
132
- }], thousands: [{
133
- type: Input
134
- }], decimal: [{
135
- type: Input
136
- }] } });
137
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvbXBvbmVudHMvYXRvbXMvaW5wdXQvaW5wdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFxRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFvRHBILE1BQU0sT0FBTyxjQUFjO0lBdUJ6QjtRQXBCQSxTQUFJLEdBQVUsRUFBRSxDQUFDO1FBRWpCLFlBQU8sR0FBWSxLQUFLLENBQUM7UUFLaEIsYUFBUSxHQUFhLEtBQUssQ0FBQztRQVMzQixXQUFNLEdBQVcsR0FBRyxDQUFDO1FBQ3JCLGNBQVMsR0FBVyxHQUFHLENBQUM7UUFDeEIsWUFBTyxHQUFXLEdBQUcsQ0FBQztJQUVoQixDQUFDO0lBVmhCLElBQWEsT0FBTyxDQUFDLEtBQStCO1FBQ2xELElBQUksSUFBSSxDQUFDLFdBQVcsS0FBSyxLQUFLLEVBQUU7WUFDOUIsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFvQixDQUFDO1NBQ3pDO0lBQ0gsQ0FBQztJQVNELFFBQVEsS0FBSSxDQUFDO0lBRWIsS0FBSyxDQUFDLEtBQWlCO1FBQ3JCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQztJQUNqQyxDQUFDOzsyR0E5QlUsY0FBYzsrRkFBZCxjQUFjLHlSQTlDZjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLQTJDUDsyRkFHUSxjQUFjO2tCQWhEMUIsU0FBUzsrQkFDRSxXQUFXLFlBQ1g7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S0EyQ1A7MEVBVU0sU0FBUztzQkFBakIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNPLE9BQU87c0JBQW5CLEtBQUs7Z0JBTUcsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ3VycmVuY3lQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBWaWV3Q2hpbGQsIE9uSW5pdCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBOZ0Zvcm0sIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaXB0LWlucHV0JyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtY29udGFpbmVyXCI+XG4gICAgICA8aW5wdXQgKm5nSWY9XCJpbnB1dFR5cGUgPT09ICdkYXRlJ1wiXG4gICAgICAgIGNsYXNzPVwiaW5wdXRcIlxuICAgICAgICB0eXBlPVwie3sgaW5wdXRUeXBlID8gJ3RleHQnIDogJ2RhdGUnIH19XCJcbiAgICAgICAgW2Zvcm1Db250cm9sXT1cImZvcm1Db250cm9sXCJcbiAgICAgICAgb25mb2N1cz1cInRoaXMudHlwZT0nZGF0ZSc7XCJcbiAgICAgICAgb25ibHVyPVwiamF2YXNjcmlwdDogaWYoICF0aGlzLnZhbHVlICkgdGhpcy50eXBlPSd0ZXh0JztcIlxuICAgICAgICB1aWItZGF0ZXBpY2tlci1wb3B1cD1cImRkL01NL3l5eXlcIlxuICAgICAgICBuZy1tb2RlbD1cImlucHV0VHlwZVwiLz5cblxuICAgICAgPGlucHV0ICpuZ0lmPVwiaW5wdXRUeXBlICE9PSAnZGF0ZScgJiYgaW5wdXRUeXBlICE9PSAndGltZScgJiYgIXdpdGhQaXBlXCJcbiAgICAgICAgY2xhc3M9XCJpbnB1dFwiXG4gICAgICAgIHR5cGU9XCJ7eyBpbnB1dFR5cGUgfX1cIlxuICAgICAgICBbZm9ybUNvbnRyb2xdPVwiZm9ybUNvbnRyb2xcIlxuICAgICAgICBbYXR0ci5saXN0XT1cImxpc3RcIi8+XG5cbiAgICAgICAgPGlucHV0ICpuZ0lmPVwiaW5wdXRUeXBlID09PSAndGV4dCcgJiYgd2l0aFBpcGVcIlxuICAgICAgICAgIGNsYXNzPVwiaW5wdXRcIlxuICAgICAgICAgIGN1cnJlbmN5TWFza1xuICAgICAgICAgIFtvcHRpb25zXT1cInsgcHJlZml4OiBwcmVmaXgsIHRob3VzYW5kczogdGhvdXNhbmRzLCBkZWNpbWFsOiBkZWNpbWFsLCBhbGxvd05lZ2F0aXZlOiBmYWxzZSB9XCJcbiAgICAgICAgICB0eXBlPVwie3sgaW5wdXRUeXBlIH19XCJcbiAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwiZm9ybUNvbnRyb2xcIlxuICAgICAgICAgIFthdHRyLmxpc3RdPVwibGlzdFwiLz5cblxuICAgICAgICA8aW5wdXQgKm5nSWY9XCJpbnB1dFR5cGUgPT09ICd0aW1lJ1wiXG4gICAgICAgICAgY2xhc3M9XCJpbnB1dFwiXG4gICAgICAgICAgdHlwZT1cInRpbWVcIlxuICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJmb3JtQ29udHJvbFwiXG4gICAgICAgICAgW21pbl09XCInMDY6MDA6MDAnXCJcbiAgICAgICAgICBtYXg9XCIyMjowMDowMFwiXG4gICAgICAgICAgc3RlcD1cIjkwMFwiXG4gICAgICAgICAgYXV0b2NvbXBsZXRlPVwib25cIlxuICAgICAgICAgIHZhbHVlPVwiMDg6MDA6MDBcIlxuICAgICAgICAgIChjbGljayk9XCJjbGljaygkZXZlbnQpXCJcbiAgICAgICAgLz5cblxuICAgICAgPGxhYmVsIFtuZ0NsYXNzXT1cInsnbGFiZWxVcCc6IGZvcm1Db250cm9sLnZhbHVlICE9PSAnJ31cIj57eyBwbGFjZUhvbGRlciB9fTwvbGFiZWw+XG5cbiAgICAgIDxwICpuZ0lmPVwiKGZvcm1Db250cm9sLmludmFsaWQgJiYgZm9ybUNvbnRyb2wudmFsdWUgIT09ICcnKSB8fCBmb3JtQ29udHJvbC50b3VjaGVkXCI+XG4gICAgICAgIHt7IHZhbGlkYXRlVGV4dCB9fVxuICAgICAgPC9wPlxuICAgIDwvZGl2PlxuICAgIGAsXG4gIHN0eWxlVXJsczogWycuL2lucHV0LmNzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBJbnB1dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgcHVibGljIGNvZGVWYWx1ZSE6IHN0cmluZztcbiAgZGF0YTogYW55W10gPSBbXTtcbiAgZm9ybUNvbnRyb2whOiBGb3JtQ29udHJvbDtcbiAgY2xpY2tlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpIGlucHV0VHlwZSE6IHN0cmluZztcbiAgQElucHV0KCkgcGxhY2VIb2xkZXIhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHZhbGlkYXRlVGV4dD86IHN0cmluZztcbiAgQElucHV0KCkgd2l0aFBpcGU/OiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIGxpc3Q/OiBzdHJpbmc7IC8vUGFyYSBlbCBkYXRhbGlzdFxuICBASW5wdXQoKSBpY29uVXJsPzogc3RyaW5nO1xuICBASW5wdXQoKSBzZXQgY29udHJvbCh2YWx1ZTogQWJzdHJhY3RDb250cm9sIHwgc3RyaW5nKSB7XG4gICAgaWYgKHRoaXMuZm9ybUNvbnRyb2wgIT09IHZhbHVlKSB7XG4gICAgICB0aGlzLmZvcm1Db250cm9sID0gdmFsdWUgYXMgRm9ybUNvbnRyb2w7XG4gICAgfVxuICB9XG5cbiAgQElucHV0KCkgcHJlZml4OiBzdHJpbmcgPSAnJCc7XG4gIEBJbnB1dCgpIHRob3VzYW5kczogc3RyaW5nID0gJy4nO1xuICBASW5wdXQoKSBkZWNpbWFsOiBzdHJpbmcgPSAnLCc7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG5cbiAgbmdPbkluaXQoKSB7fVxuXG4gIGNsaWNrKHZhbHVlOiBNb3VzZUV2ZW50KSB7XG4gICAgdGhpcy5jbGlja2VkID0gdmFsdWUuaXNUcnVzdGVkO1xuICB9XG5cbn1cbiJdfQ==
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/forms";
5
+ import * as i3 from "ng2-currency-mask";
6
+ export class InputComponent {
7
+ constructor() {
8
+ this.data = [];
9
+ this.clicked = false;
10
+ this.withPipe = false;
11
+ this.prefix = '$';
12
+ this.thousands = '.';
13
+ this.decimal = ',';
14
+ }
15
+ set control(value) {
16
+ if (this.formControl !== value) {
17
+ this.formControl = value;
18
+ }
19
+ }
20
+ ngOnInit() { }
21
+ click(value) {
22
+ this.clicked = value.isTrusted;
23
+ }
24
+ }
25
+ InputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: InputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
26
+ InputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: InputComponent, selector: "ipt-input", inputs: { inputType: "inputType", placeHolder: "placeHolder", validateText: "validateText", withPipe: "withPipe", list: "list", iconUrl: "iconUrl", control: "control", prefix: "prefix", thousands: "thousands", decimal: "decimal" }, ngImport: i0, template: `
27
+ <div class="input-container">
28
+ <input *ngIf="inputType === 'date'"
29
+ class="input"
30
+ type="{{ inputType ? 'text' : 'date' }}"
31
+ [formControl]="formControl"
32
+ onfocus="this.type='date';"
33
+ onblur="javascript: if( !this.value ) this.type='text';"
34
+ uib-datepicker-popup="dd/MM/yyyy"
35
+ ng-model="inputType"/>
36
+
37
+ <input *ngIf="inputType !== 'date' && inputType !== 'time' && !withPipe"
38
+ class="input"
39
+ type="{{ inputType }}"
40
+ [formControl]="formControl"
41
+ [attr.list]="list"/>
42
+
43
+ <input *ngIf="inputType === 'text' && withPipe"
44
+ class="input"
45
+ currencyMask
46
+ [options]="{ prefix: prefix, thousands: thousands, decimal: decimal, allowNegative: false }"
47
+ type="{{ inputType }}"
48
+ [formControl]="formControl"
49
+ [attr.list]="list"/>
50
+
51
+ <input *ngIf="inputType === 'time'"
52
+ class="input"
53
+ type="time"
54
+ [formControl]="formControl"
55
+ [min]="'06:00:00'"
56
+ max="22:00:00"
57
+ step="900"
58
+ autocomplete="on"
59
+ value="08:00:00"
60
+ (click)="click($event)"
61
+ />
62
+
63
+ <label [ngClass]="{'labelUp': formControl.value !== ''}">{{ placeHolder }}</label>
64
+
65
+ <p *ngIf="(formControl.invalid && formControl.value !== '') || formControl.touched">
66
+ {{ validateText }}
67
+ </p>
68
+ </div>
69
+ `, isInline: true, styles: ["*{font-family:Poppins,sans-serif}@media screen and (min-width: 320px){p{color:#c73a3a;font-size:12px;padding-left:15px}}@media screen and (min-width: 768px){p{color:#c73a3a;font-size:13px;padding-left:15px}}@media screen and (min-width: 1024px){p{color:#c73a3a;font-size:13px;padding-left:15px}}.input-container{position:relative;margin-top:30px}input{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;display:block;transition:.2s;font-weight:300;width:-webkit-fill-available;width:-moz-available;height:28px;padding-left:10px;background-color:#fff;-webkit-appearance:none}input:hover{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px}input:focus{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px;transition:0s;border:1.5px solid #1c77f7}label{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:7px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}.input:focus~label,.input:invalid~label{top:-20px;font-size:15px;color:#1c77f7}.labelUp{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:-20px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i3.CurrencyMaskDirective, selector: "[currencyMask]", inputs: ["max", "min", "options"] }, { type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
70
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: InputComponent, decorators: [{
71
+ type: Component,
72
+ args: [{ selector: 'ipt-input', template: `
73
+ <div class="input-container">
74
+ <input *ngIf="inputType === 'date'"
75
+ class="input"
76
+ type="{{ inputType ? 'text' : 'date' }}"
77
+ [formControl]="formControl"
78
+ onfocus="this.type='date';"
79
+ onblur="javascript: if( !this.value ) this.type='text';"
80
+ uib-datepicker-popup="dd/MM/yyyy"
81
+ ng-model="inputType"/>
82
+
83
+ <input *ngIf="inputType !== 'date' && inputType !== 'time' && !withPipe"
84
+ class="input"
85
+ type="{{ inputType }}"
86
+ [formControl]="formControl"
87
+ [attr.list]="list"/>
88
+
89
+ <input *ngIf="inputType === 'text' && withPipe"
90
+ class="input"
91
+ currencyMask
92
+ [options]="{ prefix: prefix, thousands: thousands, decimal: decimal, allowNegative: false }"
93
+ type="{{ inputType }}"
94
+ [formControl]="formControl"
95
+ [attr.list]="list"/>
96
+
97
+ <input *ngIf="inputType === 'time'"
98
+ class="input"
99
+ type="time"
100
+ [formControl]="formControl"
101
+ [min]="'06:00:00'"
102
+ max="22:00:00"
103
+ step="900"
104
+ autocomplete="on"
105
+ value="08:00:00"
106
+ (click)="click($event)"
107
+ />
108
+
109
+ <label [ngClass]="{'labelUp': formControl.value !== ''}">{{ placeHolder }}</label>
110
+
111
+ <p *ngIf="(formControl.invalid && formControl.value !== '') || formControl.touched">
112
+ {{ validateText }}
113
+ </p>
114
+ </div>
115
+ `, styles: ["*{font-family:Poppins,sans-serif}@media screen and (min-width: 320px){p{color:#c73a3a;font-size:12px;padding-left:15px}}@media screen and (min-width: 768px){p{color:#c73a3a;font-size:13px;padding-left:15px}}@media screen and (min-width: 1024px){p{color:#c73a3a;font-size:13px;padding-left:15px}}.input-container{position:relative;margin-top:30px}input{box-shadow:#64646f33 0 7px 29px;border-radius:6px;border:none;outline:none;display:block;transition:.2s;font-weight:300;width:-webkit-fill-available;width:-moz-available;height:28px;padding-left:10px;background-color:#fff;-webkit-appearance:none}input:hover{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px}input:focus{box-shadow:#00000029 0 3px 6px,#0000003b 0 3px 6px;transition:0s;border:1.5px solid #1c77f7}label{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:7px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}.input:focus~label,.input:invalid~label{top:-20px;font-size:15px;color:#1c77f7}.labelUp{color:#999;font-size:15px;font-weight:400;position:absolute;pointer-events:none;left:20px;top:-20px;transition:.2s ease all;-moz-transition:.2s ease all;-webkit-transition:.2s ease all}\n"] }]
116
+ }], ctorParameters: function () { return []; }, propDecorators: { inputType: [{
117
+ type: Input
118
+ }], placeHolder: [{
119
+ type: Input
120
+ }], validateText: [{
121
+ type: Input
122
+ }], withPipe: [{
123
+ type: Input
124
+ }], list: [{
125
+ type: Input
126
+ }], iconUrl: [{
127
+ type: Input
128
+ }], control: [{
129
+ type: Input
130
+ }], prefix: [{
131
+ type: Input
132
+ }], thousands: [{
133
+ type: Input
134
+ }], decimal: [{
135
+ type: Input
136
+ }] } });
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvbXBvbmVudHMvYXRvbXMvaW5wdXQvaW5wdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFxRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFvRHBILE1BQU0sT0FBTyxjQUFjO0lBdUJ6QjtRQXBCQSxTQUFJLEdBQVUsRUFBRSxDQUFDO1FBRWpCLFlBQU8sR0FBWSxLQUFLLENBQUM7UUFLaEIsYUFBUSxHQUFhLEtBQUssQ0FBQztRQVMzQixXQUFNLEdBQVcsR0FBRyxDQUFDO1FBQ3JCLGNBQVMsR0FBVyxHQUFHLENBQUM7UUFDeEIsWUFBTyxHQUFXLEdBQUcsQ0FBQztJQUVoQixDQUFDO0lBVmhCLElBQWEsT0FBTyxDQUFDLEtBQStCO1FBQ2xELElBQUksSUFBSSxDQUFDLFdBQVcsS0FBSyxLQUFLLEVBQUU7WUFDOUIsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFvQixDQUFDO1NBQ3pDO0lBQ0gsQ0FBQztJQVNELFFBQVEsS0FBSSxDQUFDO0lBRWIsS0FBSyxDQUFDLEtBQWlCO1FBQ3JCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQztJQUNqQyxDQUFDOzsyR0E5QlUsY0FBYzsrRkFBZCxjQUFjLHlSQTlDZjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLQTJDUDsyRkFHUSxjQUFjO2tCQWhEMUIsU0FBUzsrQkFDRSxXQUFXLFlBQ1g7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S0EyQ1A7MEVBVU0sU0FBUztzQkFBakIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNPLE9BQU87c0JBQW5CLEtBQUs7Z0JBTUcsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ3VycmVuY3lQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIFZpZXdDaGlsZCwgT25Jbml0LCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBGb3JtQnVpbGRlciwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCwgTmdGb3JtLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnaXB0LWlucHV0JyxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdiBjbGFzcz1cImlucHV0LWNvbnRhaW5lclwiPlxyXG4gICAgICA8aW5wdXQgKm5nSWY9XCJpbnB1dFR5cGUgPT09ICdkYXRlJ1wiXHJcbiAgICAgICAgY2xhc3M9XCJpbnB1dFwiXHJcbiAgICAgICAgdHlwZT1cInt7IGlucHV0VHlwZSA/ICd0ZXh0JyA6ICdkYXRlJyB9fVwiXHJcbiAgICAgICAgW2Zvcm1Db250cm9sXT1cImZvcm1Db250cm9sXCJcclxuICAgICAgICBvbmZvY3VzPVwidGhpcy50eXBlPSdkYXRlJztcIlxyXG4gICAgICAgIG9uYmx1cj1cImphdmFzY3JpcHQ6IGlmKCAhdGhpcy52YWx1ZSApIHRoaXMudHlwZT0ndGV4dCc7XCJcclxuICAgICAgICB1aWItZGF0ZXBpY2tlci1wb3B1cD1cImRkL01NL3l5eXlcIlxyXG4gICAgICAgIG5nLW1vZGVsPVwiaW5wdXRUeXBlXCIvPlxyXG5cclxuICAgICAgPGlucHV0ICpuZ0lmPVwiaW5wdXRUeXBlICE9PSAnZGF0ZScgJiYgaW5wdXRUeXBlICE9PSAndGltZScgJiYgIXdpdGhQaXBlXCJcclxuICAgICAgICBjbGFzcz1cImlucHV0XCJcclxuICAgICAgICB0eXBlPVwie3sgaW5wdXRUeXBlIH19XCJcclxuICAgICAgICBbZm9ybUNvbnRyb2xdPVwiZm9ybUNvbnRyb2xcIlxyXG4gICAgICAgIFthdHRyLmxpc3RdPVwibGlzdFwiLz5cclxuXHJcbiAgICAgICAgPGlucHV0ICpuZ0lmPVwiaW5wdXRUeXBlID09PSAndGV4dCcgJiYgd2l0aFBpcGVcIlxyXG4gICAgICAgICAgY2xhc3M9XCJpbnB1dFwiXHJcbiAgICAgICAgICBjdXJyZW5jeU1hc2tcclxuICAgICAgICAgIFtvcHRpb25zXT1cInsgcHJlZml4OiBwcmVmaXgsIHRob3VzYW5kczogdGhvdXNhbmRzLCBkZWNpbWFsOiBkZWNpbWFsLCBhbGxvd05lZ2F0aXZlOiBmYWxzZSB9XCJcclxuICAgICAgICAgIHR5cGU9XCJ7eyBpbnB1dFR5cGUgfX1cIlxyXG4gICAgICAgICAgW2Zvcm1Db250cm9sXT1cImZvcm1Db250cm9sXCJcclxuICAgICAgICAgIFthdHRyLmxpc3RdPVwibGlzdFwiLz5cclxuXHJcbiAgICAgICAgPGlucHV0ICpuZ0lmPVwiaW5wdXRUeXBlID09PSAndGltZSdcIlxyXG4gICAgICAgICAgY2xhc3M9XCJpbnB1dFwiXHJcbiAgICAgICAgICB0eXBlPVwidGltZVwiXHJcbiAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwiZm9ybUNvbnRyb2xcIlxyXG4gICAgICAgICAgW21pbl09XCInMDY6MDA6MDAnXCJcclxuICAgICAgICAgIG1heD1cIjIyOjAwOjAwXCJcclxuICAgICAgICAgIHN0ZXA9XCI5MDBcIlxyXG4gICAgICAgICAgYXV0b2NvbXBsZXRlPVwib25cIlxyXG4gICAgICAgICAgdmFsdWU9XCIwODowMDowMFwiXHJcbiAgICAgICAgICAoY2xpY2spPVwiY2xpY2soJGV2ZW50KVwiXHJcbiAgICAgICAgLz5cclxuXHJcbiAgICAgIDxsYWJlbCBbbmdDbGFzc109XCJ7J2xhYmVsVXAnOiBmb3JtQ29udHJvbC52YWx1ZSAhPT0gJyd9XCI+e3sgcGxhY2VIb2xkZXIgfX08L2xhYmVsPlxyXG5cclxuICAgICAgPHAgKm5nSWY9XCIoZm9ybUNvbnRyb2wuaW52YWxpZCAmJiBmb3JtQ29udHJvbC52YWx1ZSAhPT0gJycpIHx8IGZvcm1Db250cm9sLnRvdWNoZWRcIj5cclxuICAgICAgICB7eyB2YWxpZGF0ZVRleHQgfX1cclxuICAgICAgPC9wPlxyXG4gICAgPC9kaXY+XHJcbiAgICBgLFxyXG4gIHN0eWxlVXJsczogWycuL2lucHV0LmNzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgSW5wdXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBwdWJsaWMgY29kZVZhbHVlITogc3RyaW5nO1xyXG4gIGRhdGE6IGFueVtdID0gW107XHJcbiAgZm9ybUNvbnRyb2whOiBGb3JtQ29udHJvbDtcclxuICBjbGlja2VkOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpIGlucHV0VHlwZSE6IHN0cmluZztcclxuICBASW5wdXQoKSBwbGFjZUhvbGRlciE6IHN0cmluZztcclxuICBASW5wdXQoKSB2YWxpZGF0ZVRleHQ/OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgd2l0aFBpcGU/OiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgbGlzdD86IHN0cmluZzsgLy9QYXJhIGVsIGRhdGFsaXN0XHJcbiAgQElucHV0KCkgaWNvblVybD86IHN0cmluZztcclxuICBASW5wdXQoKSBzZXQgY29udHJvbCh2YWx1ZTogQWJzdHJhY3RDb250cm9sIHwgc3RyaW5nKSB7XHJcbiAgICBpZiAodGhpcy5mb3JtQ29udHJvbCAhPT0gdmFsdWUpIHtcclxuICAgICAgdGhpcy5mb3JtQ29udHJvbCA9IHZhbHVlIGFzIEZvcm1Db250cm9sO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQElucHV0KCkgcHJlZml4OiBzdHJpbmcgPSAnJCc7XHJcbiAgQElucHV0KCkgdGhvdXNhbmRzOiBzdHJpbmcgPSAnLic7XHJcbiAgQElucHV0KCkgZGVjaW1hbDogc3RyaW5nID0gJywnO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHt9XHJcblxyXG5cclxuICBuZ09uSW5pdCgpIHt9XHJcblxyXG4gIGNsaWNrKHZhbHVlOiBNb3VzZUV2ZW50KSB7XHJcbiAgICB0aGlzLmNsaWNrZWQgPSB2YWx1ZS5pc1RydXN0ZWQ7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=