ps-toolkit-ui 1.20.91 → 1.21.32

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 (169) hide show
  1. package/fesm2022/ps-toolkit-ui.mjs +9415 -0
  2. package/fesm2022/ps-toolkit-ui.mjs.map +1 -0
  3. package/package.json +16 -12
  4. package/types/ps-toolkit-ui.d.ts +1671 -0
  5. package/bundles/ps-toolkit-ui.umd.js +0 -10321
  6. package/bundles/ps-toolkit-ui.umd.js.map +0 -1
  7. package/bundles/ps-toolkit-ui.umd.min.js +0 -2
  8. package/bundles/ps-toolkit-ui.umd.min.js.map +0 -1
  9. package/esm2015/lib/classes/addModal.class.js +0 -36
  10. package/esm2015/lib/classes/chart.class.js +0 -165
  11. package/esm2015/lib/classes/currentDataClass.js +0 -17
  12. package/esm2015/lib/classes/enum.class.js +0 -253
  13. package/esm2015/lib/classes/excel.class.js +0 -56
  14. package/esm2015/lib/classes/form.class.js +0 -667
  15. package/esm2015/lib/classes/header.class.js +0 -16
  16. package/esm2015/lib/classes/helper.class.js +0 -650
  17. package/esm2015/lib/classes/lang.class.js +0 -35
  18. package/esm2015/lib/classes/login.class.js +0 -29
  19. package/esm2015/lib/classes/modal.class.js +0 -49
  20. package/esm2015/lib/classes/permission.class.js +0 -63
  21. package/esm2015/lib/classes/request.class.js +0 -155
  22. package/esm2015/lib/classes/safehtml.class.js +0 -17
  23. package/esm2015/lib/classes/safestyle.class.js +0 -17
  24. package/esm2015/lib/classes/sidebar.class.js +0 -16
  25. package/esm2015/lib/classes/steps.class.js +0 -45
  26. package/esm2015/lib/classes/string.class.js +0 -251
  27. package/esm2015/lib/classes/table.class.js +0 -593
  28. package/esm2015/lib/components/accordion/accordion.component.js +0 -45
  29. package/esm2015/lib/components/alert/alert.component.js +0 -39
  30. package/esm2015/lib/components/base.component.js +0 -54
  31. package/esm2015/lib/components/calendar/calendar.component.js +0 -98
  32. package/esm2015/lib/components/chart/chart.component.js +0 -17
  33. package/esm2015/lib/components/clock/clock.component.js +0 -33
  34. package/esm2015/lib/components/confirm/confirm.component.js +0 -50
  35. package/esm2015/lib/components/error/error.component.js +0 -26
  36. package/esm2015/lib/components/footer/footer.component.js +0 -23
  37. package/esm2015/lib/components/form/bank-card/form.bank-card.component.js +0 -200
  38. package/esm2015/lib/components/form/button/form.button.component.js +0 -68
  39. package/esm2015/lib/components/form/checkbox/form.checkbox.component.js +0 -67
  40. package/esm2015/lib/components/form/ckeditor/form.ckeditor.component.js +0 -90
  41. package/esm2015/lib/components/form/date/form.date.component.js +0 -314
  42. package/esm2015/lib/components/form/datetime/form.datetime.component.js +0 -106
  43. package/esm2015/lib/components/form/file/form.file.component.js +0 -124
  44. package/esm2015/lib/components/form/finger/form.finger.component.js +0 -140
  45. package/esm2015/lib/components/form/hidden/form.hidden.component.js +0 -31
  46. package/esm2015/lib/components/form/icon/form.icon.component.js +0 -84
  47. package/esm2015/lib/components/form/index/form.component.js +0 -51
  48. package/esm2015/lib/components/form/label/form.label.component.js +0 -32
  49. package/esm2015/lib/components/form/plaque/form.plaque.component.js +0 -258
  50. package/esm2015/lib/components/form/plaque/select/form.plaque.select.component.js +0 -468
  51. package/esm2015/lib/components/form/radio/form.radio.component.js +0 -82
  52. package/esm2015/lib/components/form/select/form.select.component.js +0 -452
  53. package/esm2015/lib/components/form/select/item/form.select.item.component.js +0 -27
  54. package/esm2015/lib/components/form/slide/form.slide.component.js +0 -84
  55. package/esm2015/lib/components/form/star/form.star.component.js +0 -66
  56. package/esm2015/lib/components/form/table/form.table.component.js +0 -96
  57. package/esm2015/lib/components/form/tag/form.tag.component.js +0 -100
  58. package/esm2015/lib/components/form/textarea/form.textarea.component.js +0 -83
  59. package/esm2015/lib/components/form/textbox/form.textbox.component.js +0 -227
  60. package/esm2015/lib/components/form/time/form.time.component.js +0 -149
  61. package/esm2015/lib/components/form/toggle/form.toggle.component.js +0 -72
  62. package/esm2015/lib/components/form/tree/form.tree.component.js +0 -157
  63. package/esm2015/lib/components/form/tree/item/form.tree.item.component.js +0 -50
  64. package/esm2015/lib/components/form/uploader/form.uploader.component.js +0 -159
  65. package/esm2015/lib/components/form/vehicle/form.vehicle.component.js +0 -104
  66. package/esm2015/lib/components/form/vehicle/search/form.vehicle.search.component.js +0 -237
  67. package/esm2015/lib/components/header/header.component.js +0 -28
  68. package/esm2015/lib/components/header/sub/sub.header.component.js +0 -14
  69. package/esm2015/lib/components/layout/layout.component.js +0 -18
  70. package/esm2015/lib/components/loading/loading.component.js +0 -22
  71. package/esm2015/lib/components/login/login.component.js +0 -159
  72. package/esm2015/lib/components/modal/modal.component.js +0 -25
  73. package/esm2015/lib/components/notfound/notfound.component.js +0 -29
  74. package/esm2015/lib/components/notification/notification.component.js +0 -14
  75. package/esm2015/lib/components/sidebar/item/sidebar.item.component.js +0 -55
  76. package/esm2015/lib/components/sidebar/sidebar.component.js +0 -98
  77. package/esm2015/lib/components/steps/steps.component.js +0 -88
  78. package/esm2015/lib/components/table/loading/table.loading.component.js +0 -17
  79. package/esm2015/lib/components/table/pagination/table.pagination.component.js +0 -84
  80. package/esm2015/lib/components/table/row/table.row.component.js +0 -450
  81. package/esm2015/lib/components/table/table.component.js +0 -240
  82. package/esm2015/lib/components/tooltip/tooltip.component.js +0 -19
  83. package/esm2015/lib/ps-toolkit-ui.module.js +0 -105
  84. package/esm2015/lib/services/config.service.js +0 -14
  85. package/esm2015/lib/services/sidebar.service.js +0 -21
  86. package/esm2015/ps-toolkit-ui.js +0 -21
  87. package/esm2015/public-api.js +0 -64
  88. package/fesm2015/ps-toolkit-ui.js +0 -8926
  89. package/fesm2015/ps-toolkit-ui.js.map +0 -1
  90. package/lib/classes/addModal.class.d.ts +0 -14
  91. package/lib/classes/chart.class.d.ts +0 -15
  92. package/lib/classes/currentDataClass.d.ts +0 -10
  93. package/lib/classes/enum.class.d.ts +0 -221
  94. package/lib/classes/excel.class.d.ts +0 -8
  95. package/lib/classes/form.class.d.ts +0 -193
  96. package/lib/classes/header.class.d.ts +0 -8
  97. package/lib/classes/helper.class.d.ts +0 -50
  98. package/lib/classes/lang.class.d.ts +0 -5
  99. package/lib/classes/login.class.d.ts +0 -21
  100. package/lib/classes/modal.class.d.ts +0 -19
  101. package/lib/classes/permission.class.d.ts +0 -35
  102. package/lib/classes/request.class.d.ts +0 -10
  103. package/lib/classes/safehtml.class.d.ts +0 -7
  104. package/lib/classes/safestyle.class.d.ts +0 -7
  105. package/lib/classes/sidebar.class.d.ts +0 -14
  106. package/lib/classes/steps.class.d.ts +0 -31
  107. package/lib/classes/string.class.d.ts +0 -249
  108. package/lib/classes/table.class.d.ts +0 -88
  109. package/lib/components/accordion/accordion.component.d.ts +0 -7
  110. package/lib/components/alert/alert.component.d.ts +0 -10
  111. package/lib/components/base.component.d.ts +0 -17
  112. package/lib/components/calendar/calendar.component.d.ts +0 -26
  113. package/lib/components/chart/chart.component.d.ts +0 -5
  114. package/lib/components/clock/clock.component.d.ts +0 -11
  115. package/lib/components/confirm/confirm.component.d.ts +0 -14
  116. package/lib/components/error/error.component.d.ts +0 -7
  117. package/lib/components/footer/footer.component.d.ts +0 -6
  118. package/lib/components/form/bank-card/form.bank-card.component.d.ts +0 -28
  119. package/lib/components/form/button/form.button.component.d.ts +0 -15
  120. package/lib/components/form/checkbox/form.checkbox.component.d.ts +0 -14
  121. package/lib/components/form/ckeditor/form.ckeditor.component.d.ts +0 -14
  122. package/lib/components/form/date/form.date.component.d.ts +0 -45
  123. package/lib/components/form/datetime/form.datetime.component.d.ts +0 -13
  124. package/lib/components/form/file/form.file.component.d.ts +0 -18
  125. package/lib/components/form/finger/form.finger.component.d.ts +0 -15
  126. package/lib/components/form/hidden/form.hidden.component.d.ts +0 -7
  127. package/lib/components/form/icon/form.icon.component.d.ts +0 -16
  128. package/lib/components/form/index/form.component.d.ts +0 -10
  129. package/lib/components/form/label/form.label.component.d.ts +0 -8
  130. package/lib/components/form/plaque/form.plaque.component.d.ts +0 -21
  131. package/lib/components/form/plaque/select/form.plaque.select.component.d.ts +0 -38
  132. package/lib/components/form/radio/form.radio.component.d.ts +0 -13
  133. package/lib/components/form/select/form.select.component.d.ts +0 -45
  134. package/lib/components/form/select/item/form.select.item.component.d.ts +0 -12
  135. package/lib/components/form/slide/form.slide.component.d.ts +0 -13
  136. package/lib/components/form/star/form.star.component.d.ts +0 -13
  137. package/lib/components/form/table/form.table.component.d.ts +0 -9
  138. package/lib/components/form/tag/form.tag.component.d.ts +0 -16
  139. package/lib/components/form/textarea/form.textarea.component.d.ts +0 -13
  140. package/lib/components/form/textbox/form.textbox.component.d.ts +0 -20
  141. package/lib/components/form/time/form.time.component.d.ts +0 -25
  142. package/lib/components/form/toggle/form.toggle.component.d.ts +0 -13
  143. package/lib/components/form/tree/form.tree.component.d.ts +0 -21
  144. package/lib/components/form/tree/item/form.tree.item.component.d.ts +0 -19
  145. package/lib/components/form/uploader/form.uploader.component.d.ts +0 -21
  146. package/lib/components/form/vehicle/form.vehicle.component.d.ts +0 -18
  147. package/lib/components/form/vehicle/search/form.vehicle.search.component.d.ts +0 -22
  148. package/lib/components/header/header.component.d.ts +0 -10
  149. package/lib/components/header/sub/sub.header.component.d.ts +0 -3
  150. package/lib/components/layout/layout.component.d.ts +0 -7
  151. package/lib/components/loading/loading.component.d.ts +0 -5
  152. package/lib/components/login/login.component.d.ts +0 -15
  153. package/lib/components/modal/modal.component.d.ts +0 -9
  154. package/lib/components/notfound/notfound.component.d.ts +0 -8
  155. package/lib/components/notification/notification.component.d.ts +0 -3
  156. package/lib/components/sidebar/item/sidebar.item.component.d.ts +0 -14
  157. package/lib/components/sidebar/sidebar.component.d.ts +0 -22
  158. package/lib/components/steps/steps.component.d.ts +0 -16
  159. package/lib/components/table/loading/table.loading.component.d.ts +0 -5
  160. package/lib/components/table/pagination/table.pagination.component.d.ts +0 -15
  161. package/lib/components/table/row/table.row.component.d.ts +0 -44
  162. package/lib/components/table/table.component.d.ts +0 -43
  163. package/lib/components/tooltip/tooltip.component.d.ts +0 -5
  164. package/lib/ps-toolkit-ui.module.d.ts +0 -4
  165. package/lib/services/config.service.d.ts +0 -6
  166. package/lib/services/sidebar.service.d.ts +0 -9
  167. package/ps-toolkit-ui.d.ts +0 -20
  168. package/ps-toolkit-ui.metadata.json +0 -1
  169. package/public-api.d.ts +0 -60
@@ -1,157 +0,0 @@
1
- import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
2
- import * as $ from 'jquery';
3
- import { InputError, InputType } from '../../../classes/enum.class';
4
- export class FormTreeComponent {
5
- constructor() {
6
- this.changeIndex = new EventEmitter();
7
- }
8
- ngOnInit() {
9
- this.inp.load();
10
- this.inp.focus = () => {
11
- this.onFocusIn();
12
- };
13
- this.inp.isValid = () => {
14
- this.inp.error = null;
15
- if (this.inp.required && this.getSelected().length === 0) {
16
- this.inp.error = InputError.Required;
17
- return false;
18
- }
19
- return true;
20
- };
21
- this.inp.data = () => {
22
- return this.getSelected();
23
- };
24
- this.inp.setValue = (v) => {
25
- this.setValue(v.map(String));
26
- };
27
- this.inp.clear = () => {
28
- this.inp.error = null;
29
- this.inp.setValue([], false);
30
- };
31
- if (this.inp.default != null) {
32
- this.inp.setValue(this.inp.default, false);
33
- }
34
- }
35
- onClick() {
36
- this.onFocusIn();
37
- }
38
- onKeyDown(e) {
39
- const code = e.keyCode || e.which;
40
- if (code === 9 || code === 13) {
41
- e.preventDefault();
42
- this.changeIndex.emit(e.shiftKey ? 'ShiftTab' : 'Tab');
43
- }
44
- }
45
- onFocusIn() {
46
- $(this.inputBase.nativeElement).focus();
47
- }
48
- getSelected() {
49
- let l = [];
50
- for (const f of this.inp.rows) {
51
- l = l.concat(this.getRowSelected(f));
52
- }
53
- return l;
54
- }
55
- getRowSelected(ch) {
56
- let l = [];
57
- if (ch.selected && (!this.inp.onlyChild || ch.children.length === 0 || this.inp.type === InputType.TreeRadio)) {
58
- l.push(ch.value);
59
- }
60
- ch.children.forEach((c) => {
61
- const rs = this.getRowSelected(c);
62
- l = l.concat(rs);
63
- });
64
- return l;
65
- }
66
- setValue(ids, rows = this.inp.rows) {
67
- for (const r of rows) {
68
- r.selected = ids.includes(r.value);
69
- if (this.inp.onlyChild) {
70
- if (r.selected) {
71
- this.checkParent(r.parent);
72
- }
73
- }
74
- this.setValue(ids, r.children);
75
- }
76
- return true;
77
- }
78
- toggle(row) {
79
- if (row.selected) {
80
- this.unCheck(row);
81
- if (this.inp.onlyChild && this.inp.type === InputType.Tree) {
82
- this.unCheckParent(row.parent);
83
- }
84
- }
85
- else {
86
- this.check(row);
87
- if (this.inp.onlyChild && this.inp.type === InputType.Tree) {
88
- this.checkParent(row.parent);
89
- }
90
- }
91
- if (this.inp.onChange) {
92
- this.inp.onChange(this.inp);
93
- }
94
- this.inp.error = null;
95
- }
96
- check(c) {
97
- if (this.inp.type === InputType.Tree) {
98
- c.selected = true;
99
- if (this.inp.onlyChild) {
100
- this.checkChildren(c);
101
- }
102
- }
103
- else {
104
- this.inp.clear();
105
- c.selected = true;
106
- }
107
- }
108
- unCheck(c) {
109
- c.selected = false;
110
- if (this.inp.onlyChild) {
111
- c.children.forEach((ch) => {
112
- this.unCheck(ch);
113
- });
114
- }
115
- }
116
- checkChildren(c) {
117
- c.children.forEach((ch) => {
118
- this.check(ch);
119
- });
120
- }
121
- checkParent(p) {
122
- if (p) {
123
- if (p.children.filter(x => !x.selected).length > 0) {
124
- p.selected = null;
125
- }
126
- else {
127
- p.selected = true;
128
- }
129
- this.checkParent(p.parent);
130
- }
131
- }
132
- unCheckParent(p) {
133
- if (p) {
134
- if (p.children.filter(x => x.selected || x.selected == null).length > 0) {
135
- p.selected = null;
136
- }
137
- else {
138
- p.selected = false;
139
- }
140
- this.unCheckParent(p.parent);
141
- }
142
- }
143
- }
144
- FormTreeComponent.decorators = [
145
- { type: Component, args: [{
146
- selector: 'lib-form-tree',
147
- template: "<div #inputDiv [id]=\"inp.id + 'TreeInput'\" [className]=\"'form-input-con tree w-100' + (inp.error == null ? '' : ' error') + (inp.disabled ? ' disabled' : '') + ' ' + inp.class\">\r\n <div class=\"form-input\" (click)=\"onClick()\">\r\n <div *ngIf=\"inp.displayLabel\" class=\"label\"><i *ngIf=\"inp.required\" class=\"fas fa-star-of-life required-icon\"></i>{{inp.getLabel()}}</div>\r\n <input #inputBase type=\"checkbox\" class=\"input-base\" (keydown)=\"onKeyDown($event)\" (focusin)=\"onFocusIn()\">\r\n <div [className]=\"(inp.loading ? 'o-h ' : '') + 'control'\">\r\n <i *ngIf=\"inp.icon != null || inp.loading\" #inputIcon [className]=\"(inp.loading ? 'fad fa-spin fa-spinner' : inp.icon) + ' icon'\"></i>\r\n <i *ngIf=\"inp.withClear && getSelected().length != 0\" (click)=\"inp.clear()\" class=\"fad fa-times clear-icon\">{{inp.value}}</i>\r\n <lib-form-tree-item [level]=\"0\" [index]=\"i\" (toggle)=\"toggle($event)\" [item]=\"item\" [tree]=\"inp\" [base]=\"true\" *ngFor=\"let item of inp.rows; let i = index\"></lib-form-tree-item>\r\n </div>\r\n </div>\r\n</div>\r\n",
148
- styles: [".form-input-con.tree{-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;padding:0 15px;position:relative}.form-input-con.tree .form-input{float:right;position:relative;width:100%}.form-input-con.tree .form-input .label{-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;cursor:default;direction:rtl;float:right;font-size:12px;height:20px;line-height:20px;margin-bottom:3px;padding:0 10px;text-align:right;width:100%}.form-input-con.tree.error .form-input .label{color:var(--red);font-size:10px}.form-input-con.tree .form-input .label .required-icon{color:var(--red);font-size:9px;height:20px;line-height:20px;text-align:center;width:20px}.form-input-con.tree .form-input>.control{background-color:#fff;border:var(--border-input);border-radius:var(--border-radius-base);float:right;max-height:400px;min-height:35px;overflow-x:hidden;overflow-y:auto;padding:10px;position:relative;width:100%}.form-input-con.tree.without-border .form-input>.control{border:unset}.form-input-con.tree:not(.without-border) .form-input .input-base:focus+.control,.form-input-con.tree:not(.without-border) .form-input:hover .control{border:var(--border-input-dark)}.form-input-con.tree.error .form-input .input-base:focus+.control,.form-input-con.tree.error .form-input:hover .control{border:var(--border-input-red-dark)}.form-input-con.tree .form-input .input-base{cursor:pointer;height:0;opacity:0;position:absolute;right:50%;top:50%;width:0;z-index:1}.form-input-con.tree .form-input i.icon{color:var(--primary);cursor:default;left:0;z-index:1}.form-input-con.tree .form-input i.clear-icon,.form-input-con.tree .form-input i.icon{font-size:14px;height:35px;line-height:35px;position:absolute;text-align:center;top:0;transition:all .35s ease-in-out;width:35px}.form-input-con.tree .form-input i.clear-icon{color:var(--red);cursor:pointer;right:0;z-index:3}.form-input-con.tree.error .form-input>.control{border:var(--border-input-red)}.form-input-con.tree.error .form-input i.icon{color:var(--red)}"]
149
- },] }
150
- ];
151
- FormTreeComponent.ctorParameters = () => [];
152
- FormTreeComponent.propDecorators = {
153
- inp: [{ type: Input }],
154
- changeIndex: [{ type: Output }],
155
- inputBase: [{ type: ViewChild, args: ['inputBase',] }]
156
- };
157
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS50cmVlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJEOi9Qc1Rvb2xraXQvVUkvcHJvamVjdHMvcHMtdG9vbGtpdC11aS9zcmMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9mb3JtL3RyZWUvZm9ybS50cmVlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNwRyxPQUFPLEtBQUssQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUU1QixPQUFPLEVBQUMsVUFBVSxFQUFFLFNBQVMsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBT2xFLE1BQU0sT0FBTyxpQkFBaUI7SUFNNUI7UUFGQSxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7SUFHekMsQ0FBQztJQUNELFFBQVE7UUFDTixJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2hCLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxHQUFHLEdBQUcsRUFBRTtZQUNwQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDbkIsQ0FBQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEdBQUcsR0FBRyxFQUFFO1lBQ3RCLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztZQUN0QixJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO2dCQUN4RCxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssR0FBRyxVQUFVLENBQUMsUUFBUSxDQUFDO2dCQUNyQyxPQUFPLEtBQUssQ0FBQzthQUNkO1lBQ0QsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDLENBQUM7UUFDRixJQUFJLENBQUMsR0FBRyxDQUFDLElB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QUMsTUFBTSxDQUFDLENBQUM7U0FDNUI7SUFDSCxDQUFDO0lBQ0QsYUFBYSxDQUFDLENBQWU7UUFDM0IsSUFBSSxDQUFDLEVBQUM7WUFDSixJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsSUFBSSxDQUFDLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUM7Z0JBQ3RFLENBQUMsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO2FBQ25CO2lCQUFJO2dCQUNILENBQUMsQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO2FBQ3BCO1lBQ0QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDOUI7SUFDSCxDQUFDOzs7WUFqSkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxlQUFlO2dCQUN6QixtbUNBQXlDOzthQUUxQzs7OztrQkFFRSxLQUFLOzBCQUVMLE1BQU07d0JBRU4sU0FBUyxTQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCAqIGFzICQgZnJvbSAnanF1ZXJ5JztcclxuaW1wb3J0IHtJbnB1dENsYXNzLCBUcmVlUm93Q2xhc3N9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvZm9ybS5jbGFzcyc7XHJcbmltcG9ydCB7SW5wdXRFcnJvciwgSW5wdXRUeXBlfSBmcm9tICcuLi8uLi8uLi9jbGFzc2VzL2VudW0uY2xhc3MnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItZm9ybS10cmVlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZm9ybS50cmVlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9mb3JtLnRyZWUuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGb3JtVHJlZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdHtcclxuICBASW5wdXQoKVxyXG4gIGlucDogSW5wdXRDbGFzcztcclxuICBAT3V0cHV0KClcclxuICBjaGFuZ2VJbmRleCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG4gIEBWaWV3Q2hpbGQoJ2lucHV0QmFzZScpIGlucHV0QmFzZTogRWxlbWVudFJlZjtcclxuICBjb25zdHJ1Y3Rvcigpe1xyXG4gIH1cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuaW5wLmxvYWQoKTtcclxuICAgIHRoaXMuaW5wLmZvY3VzID0gKCkgPT4ge1xyXG4gICAgICB0aGlzLm9uRm9jdXNJbigpO1xyXG4gICAgfTtcclxuICAgIHRoaXMuaW5wLmlzVmFsaWQgPSAoKSA9PiB7XHJcbiAgICAgIHRoaXMuaW5wLmVycm9yID0gbnVsbDtcclxuICAgICAgaWYgKHRoaXMuaW5wLnJlcXVpcmVkICYmIHRoaXMuZ2V0U2VsZWN0ZWQoKS5sZW5ndGggPT09IDApIHtcclxuICAgICAgICB0aGlzLmlucC5lcnJvciA9IElucHV0RXJyb3IuUmVxdWlyZWQ7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfTtcclxuICAgIHRoaXMuaW5wLmRhdGEgPSAoKSA9PiB7XHJcbiAgICAgIHJldHVybiB0aGlzLmdldFNlbGVjdGVkKCk7XHJcbiAgICB9O1xyXG4gICAgdGhpcy5pbnAuc2V0VmFsdWUgPSAodikgPT4ge1xyXG4gICAgICB0aGlzLnNldFZhbHVlKHYubWFwKFN0cmluZykpO1xyXG4gICAgfTtcclxuICAgIHRoaXMuaW5wLmNsZWFyID0gKCkgPT4ge1xyXG4gICAgICB0aGlzLmlucC5lcnJvciA9IG51bGw7XHJcbiAgICAgIHRoaXMuaW5wLnNldFZhbHVlKFtdLCBmYWxzZSk7XHJcbiAgICB9O1xyXG4gICAgaWYgKHRoaXMuaW5wLmRlZmF1bHQgIT0gbnVsbCl7XHJcbiAgICAgIHRoaXMuaW5wLnNldFZhbHVlKHRoaXMuaW5wLmRlZmF1bHQsIGZhbHNlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uQ2xpY2soKTogdm9pZHtcclxuICAgIHRoaXMub25Gb2N1c0luKCk7XHJcbiAgfVxyXG4gIG9uS2V5RG93bihlKTogdm9pZHtcclxuICAgIGNvbnN0IGNvZGUgPSBlLmtleUNvZGUgfHwgZS53aGljaDtcclxuICAgIGlmIChjb2RlID09PSA5IHx8IGNvZGUgPT09IDEzKSB7XHJcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgdGhpcy5jaGFuZ2VJbmRleC5lbWl0KGUuc2hpZnRLZXkgPyAnU2hpZnRUYWInIDogJ1RhYicpO1xyXG4gICAgfVxyXG4gIH1cclxuICBvbkZvY3VzSW4oKTogdm9pZHtcclxuICAgICQodGhpcy5pbnB1dEJhc2UubmF0aXZlRWxlbWVudCkuZm9jdXMoKTtcclxuICB9XHJcbiAgZ2V0U2VsZWN0ZWQoKTogYW55W117XHJcbiAgICBsZXQgbCA9IFtdO1xyXG4gICAgZm9yIChjb25zdCBmIG9mIHRoaXMuaW5wLnJvd3Mpe1xyXG4gICAgICBsID0gbC5jb25jYXQodGhpcy5nZXRSb3dTZWxlY3RlZChmKSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbDtcclxuICB9XHJcbiAgZ2V0Um93U2VsZWN0ZWQoY2g6IFRyZWVSb3dDbGFzcyk6IGFueVtde1xyXG4gICAgbGV0IGwgPSBbXTtcclxuICAgIGlmIChjaC5zZWxlY3RlZCAmJiAoIXRoaXMuaW5wLm9ubHlDaGlsZCB8fCBjaC5jaGlsZHJlbi5sZW5ndGggPT09IDAgfHwgdGhpcy5pbnAudHlwZSA9PT0gSW5wdXRUeXBlLlRyZWVSYWRpbykpe1xyXG4gICAgICBsLnB1c2goY2gudmFsdWUpO1xyXG4gICAgfVxyXG4gICAgY2guY2hpbGRyZW4uZm9yRWFjaCgoYykgPT4ge1xyXG4gICAgICBjb25zdCBycyA9IHRoaXMuZ2V0Um93U2VsZWN0ZWQoYyk7XHJcbiAgICAgIGwgPSBsLmNvbmNhdChycyk7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiBsO1xyXG4gIH1cclxuXHJcbiAgc2V0VmFsdWUoaWRzLCByb3dzID0gdGhpcy5pbnAucm93cyk6IGJvb2xlYW57XHJcbiAgICBmb3IgKGNvbnN0IHIgb2Ygcm93cyl7XHJcbiAgICAgIHIuc2VsZWN0ZWQgPSBpZHMuaW5jbHVkZXMoci52YWx1ZSk7XHJcbiAgICAgIGlmICh0aGlzLmlucC5vbmx5Q2hpbGQpe1xyXG4gICAgICAgIGlmIChyLnNlbGVjdGVkKXtcclxuICAgICAgICAgIHRoaXMuY2hlY2tQYXJlbnQoci5wYXJlbnQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICB0aGlzLnNldFZhbHVlKGlkcywgci5jaGlsZHJlbik7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcbiAgdG9nZ2xlKHJvdzogVHJlZVJvd0NsYXNzKTogdm9pZCB7XHJcbiAgICBpZiAocm93LnNlbGVjdGVkKXtcclxuICAgICAgdGhpcy51bkNoZWNrKHJvdyk7XHJcbiAgICAgIGlmICh0aGlzLmlucC5vbmx5Q2hpbGQgJiYgdGhpcy5pbnAudHlwZSA9PT0gSW5wdXRUeXBlLlRyZWUpe1xyXG4gICAgICAgIHRoaXMudW5DaGVja1BhcmVudChyb3cucGFyZW50KTtcclxuICAgICAgfVxyXG4gICAgfWVsc2V7XHJcbiAgICAgIHRoaXMuY2hlY2socm93KTtcclxuICAgICAgaWYgKHRoaXMuaW5wLm9ubHlDaGlsZCAmJiB0aGlzLmlucC50eXBlID09PSBJbnB1dFR5cGUuVHJlZSl7XHJcbiAgICAgICAgdGhpcy5jaGVja1BhcmVudChyb3cucGFyZW50KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuaW5wLm9uQ2hhbmdlKXtcclxuICAgICAgdGhpcy5pbnAub25DaGFuZ2UodGhpcy5pbnApO1xyXG4gICAgfVxyXG4gICAgdGhpcy5pbnAuZXJyb3IgPSBudWxsO1xyXG4gIH1cclxuICBjaGVjayhjOiBUcmVlUm93Q2xhc3MpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmlucC50eXBlID09PSBJbnB1dFR5cGUuVHJlZSkge1xyXG4gICAgICBjLnNlbGVjdGVkID0gdHJ1ZTtcclxuICAgICAgaWYgKHRoaXMuaW5wLm9ubHlDaGlsZCkge1xyXG4gICAgICAgIHRoaXMuY2hlY2tDaGlsZHJlbihjKTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5pbnAuY2xlYXIoKTtcclxuICAgICAgYy5zZWxlY3RlZCA9IHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHVuQ2hlY2soYzogVHJlZVJvd0NsYXNzKTogdm9pZCB7XHJcbiAgICBjLnNlbGVjdGVkID0gZmFsc2U7XHJcbiAgICBpZiAodGhpcy5pbnAub25seUNoaWxkKSB7XHJcbiAgICAgIGMuY2hpbGRyZW4uZm9yRWFjaCgoY2gpID0+IHtcclxuICAgICAgICB0aGlzLnVuQ2hlY2soY2gpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcbiAgY2hlY2tDaGlsZHJlbihjOiBUcmVlUm93Q2xhc3MpOiB2b2lke1xyXG4gICAgYy5jaGlsZHJlbi5mb3JFYWNoKChjaCkgPT4ge1xyXG4gICAgICB0aGlzLmNoZWNrKGNoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuICBjaGVja1BhcmVudChwOiBUcmVlUm93Q2xhc3MpOiB2b2lke1xyXG4gICAgaWYgKHApe1xyXG4gICAgICBpZiAocC5jaGlsZHJlbi5maWx0ZXIoeCA9PiAheC5zZWxlY3RlZCkubGVuZ3RoID4gMCl7XHJcbiAgICAgICAgcC5zZWxlY3RlZCA9IG51bGw7XHJcbiAgICAgIH1lbHNle1xyXG4gICAgICAgIHAuc2VsZWN0ZWQgPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuY2hlY2tQYXJlbnQocC5wYXJlbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuICB1bkNoZWNrUGFyZW50KHA6IFRyZWVSb3dDbGFzcyk6IHZvaWR7XHJcbiAgICBpZiAocCl7XHJcbiAgICAgIGlmIChwLmNoaWxkcmVuLmZpbHRlcih4ID0+IHguc2VsZWN0ZWQgfHwgeC5zZWxlY3RlZCA9PSBudWxsKS5sZW5ndGggPiAwKXtcclxuICAgICAgICBwLnNlbGVjdGVkID0gbnVsbDtcclxuICAgICAgfWVsc2V7XHJcbiAgICAgICAgcC5zZWxlY3RlZCA9IGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMudW5DaGVja1BhcmVudChwLnBhcmVudCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,50 +0,0 @@
1
- import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
2
- import * as $ from 'jquery';
3
- import { InputType } from '../../../../classes/enum.class';
4
- export class FormTreeItemComponent {
5
- constructor() {
6
- this.parent = null;
7
- this.toggle = new EventEmitter();
8
- }
9
- get type() { return InputType; }
10
- ngOnInit() {
11
- this.item.parent = this.parent;
12
- }
13
- openClose(e) {
14
- const ch = $(e.target).closest('.row-item').find(' > .children');
15
- const oc = $(e.target).closest('.row-item').find(' > .open-close');
16
- if (ch.hasClass('open')) {
17
- ch.removeClass('open');
18
- ch.stop().slideUp();
19
- oc.removeClass('fa-caret-down').addClass('fa-caret-left');
20
- }
21
- else {
22
- ch.addClass('open');
23
- ch.stop().slideDown();
24
- oc.addClass('fa-caret-down').removeClass('fa-caret-left');
25
- }
26
- }
27
- onClick() {
28
- this.toggle.emit(this.item);
29
- }
30
- }
31
- FormTreeItemComponent.decorators = [
32
- { type: Component, args: [{
33
- selector: 'lib-form-tree-item',
34
- template: "<div [className]=\"(item.selected ? 'selected ' : item.selected == null ? 'null ' : '') + 'row-item'\">\r\n <div (click)=\"onClick()\" [className]=\"'checkbox' + (this.tree.type === type.TreeRadio ? ' radio' : '')\">{{tree.l(item.name)}}</div>\r\n <i *ngIf=\"item.children.length > 0\" (click)=\"openClose($event)\" [className]=\"(index == 0 && level == 0 ? 'fad fa-caret-down ' : 'fad fa-caret-left ') + 'open-close'\"></i>\r\n <div [className]=\"(index == 0 && level == 0 ? 'open ' : '') + 'children'\" [style]=\"index == 0 && level == 0 ? {display: 'block'} : {}\" *ngIf=\"item.children.length > 0\">\r\n <div class=\"items rightline\">\r\n <lib-form-tree-item [level]=\"level + 1\" (toggle)=\"toggle.emit($event)\" [index]=\"i\" [item]=\"child\" [parent]=\"item\" [tree]=\"tree\" *ngFor=\"let child of item.children; let i = index\"></lib-form-tree-item>\r\n </div>\r\n </div>\r\n</div>\r\n",
35
- styles: [".row-item{float:left;position:relative;text-align:center;width:90%}.row-item .content{background-color:rgba(11,72,107,.06666666666666667);border-radius:var(--border-radius-base);cursor:pointer;float:right;width:100%}.row-item .open-close{cursor:pointer;font-size:20px;height:40px;line-height:38px;position:absolute;right:-25px;text-align:center;width:15px}.row-item .content.parent,.row-item .content:hover{background-color:rgba(11,72,107,.13333333333333333)}.row-item .content.parent:hover{background-color:rgba(11,72,107,.26666666666666666)}.row-item .children{display:none;padding:10px;position:relative}.row-item .children,.row-item .children .items{float:left;width:100%}.row-item .children>.line{height:calc(100% - 30px);right:20px;top:15px;width:2px}.row-item .children .row-item>.line,.row-item .children>.line{background-color:rgba(11,72,107,.13333333333333333);position:absolute}.row-item .children .row-item>.line{height:2px;right:-35px;top:17px;width:10px}.row-item .checkbox{-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;align-items:center;cursor:pointer;display:flex;float:right;font-size:11px;justify-content:center;line-height:20px;min-height:40px;padding:5px 30px;position:relative;text-align:center;width:100%;z-index:2}.row-item .control{cursor:pointer;height:0;opacity:0;position:absolute;right:50%;top:50%;width:0;z-index:1}.row-item>.checkbox:before{content:\"\\f0c8\";font-family:Font Awesome\\ 5 Pro;font-size:18px;font-weight:400;height:40px;line-height:40px;position:absolute;right:0;top:0;width:30px}.row-item>.checkbox.radio:before{content:\"\\f111\"}.row-item.selected>.checkbox:before{animation:pop .18s ease-in;color:var(--green);content:\"\\f14a\";font-weight:900}.row-item.selected>.checkbox.radio:before{content:\"\\f192\"}.row-item.null>.checkbox:before{animation:pop .18s ease-in;color:var(--green);content:\"\\f146\";font-weight:900}.row-item:after{background-image:linear-gradient(90deg,transparent,rgba(50,50,50,.25),transparent);border:0;bottom:-1px;content:\"\";float:right;height:1px;position:absolute;right:0;width:100%}::ng-deep lib-form-tree-item:last-of-type>.row-item:after{display:none}"]
36
- },] }
37
- ];
38
- FormTreeItemComponent.ctorParameters = () => [];
39
- FormTreeItemComponent.propDecorators = {
40
- item: [{ type: Input }],
41
- level: [{ type: Input }],
42
- index: [{ type: Input }],
43
- tree: [{ type: Input }],
44
- parent: [{ type: Input }],
45
- base: [{ type: Input }],
46
- toggle: [{ type: Output }],
47
- inputDiv: [{ type: ViewChild, args: ['inputDiv',] }],
48
- inputBase: [{ type: ViewChild, args: ['inputBase',] }]
49
- };
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS50cmVlLml0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkQ6L1BzVG9vbGtpdC9VSS9wcm9qZWN0cy9wcy10b29sa2l0LXVpL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2Zvcm0vdHJlZS9pdGVtL2Zvcm0udHJlZS5pdGVtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFjLFlBQVksRUFBZ0IsS0FBSyxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDbEgsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUM7QUFFNUIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBT3pELE1BQU0sT0FBTyxxQkFBcUI7SUFrQmhDO1FBUkEsV0FBTSxHQUFpQixJQUFJLENBQUM7UUFJNUIsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFnQixDQUFDO0lBSzFDLENBQUM7SUFGRCxJQUFJLElBQUksS0FBdUIsT0FBTyxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBR2xELFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ2pDLENBQUM7SUFDRCxTQUFTLENBQUMsQ0FBQztRQUNULE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNqRSxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUNuRSxJQUFJLEVBQUUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDdkIsRUFBRSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUN2QixFQUFFLENBQUMsSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDcEIsRUFBRSxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDM0Q7YUFBTTtZQUNMLEVBQUUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDcEIsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3RCLEVBQUUsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLENBQUMsV0FBVyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1NBQzNEO0lBQ0gsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDOUIsQ0FBQzs7O1lBNUNGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsb0JBQW9CO2dCQUM5Qix5NUJBQThDOzthQUUvQzs7OzttQkFFRSxLQUFLO29CQUVMLEtBQUs7b0JBRUwsS0FBSzttQkFFTCxLQUFLO3FCQUVMLEtBQUs7bUJBRUwsS0FBSztxQkFFTCxNQUFNO3VCQUVOLFNBQVMsU0FBQyxVQUFVO3dCQUNwQixTQUFTLFNBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgKiBhcyAkIGZyb20gJ2pxdWVyeSc7XHJcbmltcG9ydCB7SW5wdXRDbGFzcywgVHJlZVJvd0NsYXNzfSBmcm9tICcuLi8uLi8uLi8uLi9jbGFzc2VzL2Zvcm0uY2xhc3MnO1xyXG5pbXBvcnQge0lucHV0VHlwZX0gZnJvbSAnLi4vLi4vLi4vLi4vY2xhc3Nlcy9lbnVtLmNsYXNzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWZvcm0tdHJlZS1pdGVtJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZm9ybS50cmVlLml0ZW0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2Zvcm0udHJlZS5pdGVtLmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRm9ybVRyZWVJdGVtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0e1xyXG4gIEBJbnB1dCgpXHJcbiAgaXRlbTogVHJlZVJvd0NsYXNzO1xyXG4gIEBJbnB1dCgpXHJcbiAgbGV2ZWw6IG51bWJlcjtcclxuICBASW5wdXQoKVxyXG4gIGluZGV4OiBudW1iZXI7XHJcbiAgQElucHV0KClcclxuICB0cmVlOiBJbnB1dENsYXNzO1xyXG4gIEBJbnB1dCgpXHJcbiAgcGFyZW50OiBUcmVlUm93Q2xhc3MgPSBudWxsO1xyXG4gIEBJbnB1dCgpXHJcbiAgYmFzZTogYm9vbGVhbjtcclxuICBAT3V0cHV0KClcclxuICB0b2dnbGUgPSBuZXcgRXZlbnRFbWl0dGVyPFRyZWVSb3dDbGFzcz4oKTtcclxuICBAVmlld0NoaWxkKCdpbnB1dERpdicpIGlucHV0RGl2OiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoJ2lucHV0QmFzZScpIGlucHV0QmFzZTogRWxlbWVudFJlZjtcclxuICBnZXQgdHlwZSgpOiB0eXBlb2YgSW5wdXRUeXBlIHsgcmV0dXJuIElucHV0VHlwZTsgfVxyXG4gIGNvbnN0cnVjdG9yKCl7XHJcbiAgfVxyXG4gIG5nT25Jbml0KCk6IHZvaWR7XHJcbiAgICB0aGlzLml0ZW0ucGFyZW50ID0gdGhpcy5wYXJlbnQ7XHJcbiAgfVxyXG4gIG9wZW5DbG9zZShlKTogdm9pZCB7XHJcbiAgICBjb25zdCBjaCA9ICQoZS50YXJnZXQpLmNsb3Nlc3QoJy5yb3ctaXRlbScpLmZpbmQoJyA+IC5jaGlsZHJlbicpO1xyXG4gICAgY29uc3Qgb2MgPSAkKGUudGFyZ2V0KS5jbG9zZXN0KCcucm93LWl0ZW0nKS5maW5kKCcgPiAub3Blbi1jbG9zZScpO1xyXG4gICAgaWYgKGNoLmhhc0NsYXNzKCdvcGVuJykpIHtcclxuICAgICAgY2gucmVtb3ZlQ2xhc3MoJ29wZW4nKTtcclxuICAgICAgY2guc3RvcCgpLnNsaWRlVXAoKTtcclxuICAgICAgb2MucmVtb3ZlQ2xhc3MoJ2ZhLWNhcmV0LWRvd24nKS5hZGRDbGFzcygnZmEtY2FyZXQtbGVmdCcpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY2guYWRkQ2xhc3MoJ29wZW4nKTtcclxuICAgICAgY2guc3RvcCgpLnNsaWRlRG93bigpO1xyXG4gICAgICBvYy5hZGRDbGFzcygnZmEtY2FyZXQtZG93bicpLnJlbW92ZUNsYXNzKCdmYS1jYXJldC1sZWZ0Jyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkNsaWNrKCk6IHZvaWQge1xyXG4gICAgdGhpcy50b2dnbGUuZW1pdCh0aGlzLml0ZW0pO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,159 +0,0 @@
1
- import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
2
- import * as $ from 'jquery';
3
- import { InputClass } from '../../../classes/form.class';
4
- import { FileIcons, InputError, InputType } from '../../../classes/enum.class';
5
- import { HelperClass } from '../../../classes/helper.class';
6
- export class FormUploaderComponent {
7
- constructor() {
8
- this.changeIndex = new EventEmitter();
9
- this.id = HelperClass.random(10);
10
- }
11
- get fileIcons() { return FileIcons; }
12
- ngOnInit() {
13
- this.inp.setValue = (v) => {
14
- this.inp.value = v != null && v instanceof Array && v.every(i => typeof i === 'string') ? v.map(f => {
15
- var _a, _b;
16
- const typ = (_a = FileIcons[f.split('.').at(-1)]) !== null && _a !== void 0 ? _a : FileIcons.file;
17
- const icon = (_b = FileIcons[f.split('.').at(-1)]) !== null && _b !== void 0 ? _b : FileIcons.file;
18
- const close = new InputClass(this.inp.environment, this.inp.l, null, 'fas fa-times', InputType.Icon, 'red h-15');
19
- close.onClick = () => {
20
- this.inp.value = this.inp.value.filter(x => x.file !== f);
21
- };
22
- return {
23
- type: typ,
24
- icon,
25
- url: this.inp.environment.url + f,
26
- close,
27
- file: f
28
- };
29
- }) : [];
30
- };
31
- this.inp.isValid = () => {
32
- this.inp.error = null;
33
- if (this.inp.required && (this.inp.value == null || this.inp.value.length === 0)) {
34
- this.inp.error = InputError.Required;
35
- return false;
36
- }
37
- if (!this.inp.required && (this.inp.value == null || this.inp.value.length === 0)) {
38
- return true;
39
- }
40
- if (this.inp.allowed != null && this.inp.value != null &&
41
- !this.inp.value.some(x => !this.inp.allowed.includes(x.type))) {
42
- this.inp.error = InputError.NotAllowed;
43
- return false;
44
- }
45
- if (this.inp.maxLength !== -1 && this.inp.value != null &&
46
- this.inp.value.map(x => x.size > this.inp.maxLength * 1024).filter(x => x).length > 0) {
47
- this.inp.error = InputError.MaxContent;
48
- return false;
49
- }
50
- return true;
51
- };
52
- this.inp.clear = () => {
53
- this.inp.error = null;
54
- this.inp.setValue(this.inp.default, false);
55
- };
56
- this.inp.data = () => {
57
- const result = {};
58
- result[this.inp.name] = this.inp.name;
59
- if (this.inp.value != null && this.inp.value instanceof Array) {
60
- result[this.inp.name + 'Files'] = this.inp.value.filter(x => typeof x.file !== 'string').map(x => x.file);
61
- result[this.inp.name + 'Urls'] = this.inp.value.filter(x => typeof x.file === 'string').map(x => x.file);
62
- return result;
63
- }
64
- return result;
65
- };
66
- this.inp.focus = () => {
67
- this.onClick();
68
- };
69
- this.inp.setValue(this.inp.default, false);
70
- }
71
- getPdfImage(file) {
72
- return new Promise((resolve, reject) => {
73
- const reader = new FileReader();
74
- reader.readAsDataURL(file);
75
- reader.onload = () => {
76
- const i = new Image();
77
- i.src = window.URL.createObjectURL(file);
78
- i.onload = () => {
79
- let w = i.width;
80
- let h = i.height;
81
- if (w > 200) {
82
- h = (200 * h) / w;
83
- w = 200;
84
- }
85
- if (h > 287) {
86
- w = (287 * w) / h;
87
- h = 287;
88
- }
89
- resolve({ base64: reader.result.toString(), w, h });
90
- };
91
- };
92
- reader.onerror = error => reject(error);
93
- });
94
- }
95
- onClick() {
96
- $(this.inputBase.nativeElement).focus();
97
- }
98
- onChange(e) {
99
- var _a, _b;
100
- this.inp.error = null;
101
- for (const f of e.target.files) {
102
- const close = new InputClass(this.inp.environment, this.inp.l, null, 'fas fa-times', InputType.Icon, 'red h-15');
103
- close.onClick = () => {
104
- this.inp.value = this.inp.value.filter(x => x.file !== f);
105
- };
106
- const reader = new FileReader();
107
- reader.readAsDataURL(f);
108
- const typ = (_a = FileIcons[f.name.split('.').at(-1)]) !== null && _a !== void 0 ? _a : FileIcons.file;
109
- const icon = (_b = FileIcons[f.name.split('.').at(-1)]) !== null && _b !== void 0 ? _b : FileIcons.file;
110
- reader.onload = (oFREvent) => {
111
- this.inp.value.push({
112
- type: typ,
113
- icon,
114
- url: oFREvent.target.result,
115
- close,
116
- file: f
117
- });
118
- };
119
- }
120
- this.changeIndex.emit('Tab');
121
- }
122
- onKeyDown(e) {
123
- const code = e.keyCode || e.which;
124
- if (code === 9 || code === 13) {
125
- e.preventDefault();
126
- this.changeIndex.emit(e.shiftKey ? 'ShiftTab' : 'Tab');
127
- }
128
- }
129
- onFocusIn() {
130
- $(this.inputBase.nativeElement).focus();
131
- }
132
- title() {
133
- if (this.inp.value == null || (this.inp.value instanceof Array && this.inp.value.length === 0)) {
134
- return this.inp.l('FileNotSelected');
135
- }
136
- const t = typeof this.inp.value === 'string' ? this.inp.value : this.inp.value.map(x => typeof x === 'string' ? x : x.name).join(', ');
137
- const l = typeof this.inp.value === 'string' ? 1 : this.inp.value.length;
138
- return this.inp.l('FileSelected', [l, t]);
139
- }
140
- openFile(f) {
141
- window.open(f.url, '_blank');
142
- }
143
- }
144
- FormUploaderComponent.decorators = [
145
- { type: Component, args: [{
146
- selector: 'lib-form-uploader',
147
- template: "<div #inputDiv [id]=\"id + 'FileInput'\" [className]=\"'form-input-con uploader w-100' + (inp.error == null ? '' : ' error') + (inp.value != null && inp.value != '' ? ' has-value' : '') + ' ' + inp.class\">\r\n <div class=\"form-input\">\r\n <div *ngIf=\"inp.displayLabel\" class=\"label\"><i *ngIf=\"inp.required\" class=\"fas fa-star-of-life required-icon\"></i>{{inp.getLabel()}}</div>\r\n <input #inputBaseFile class=\"input-base-file\" type=\"file\" [id]=\"id + 'FileInputBase'\" multiple (change)=\"onChange($event)\">\r\n <input #inputBase type=\"checkbox\" class=\"input-base\" (keydown)=\"onKeyDown($event)\" (focusin)=\"onFocusIn()\">\r\n <div class=\"control\">\r\n <label class=\"click\" (click)=\"onClick()\" [for]=\"id + 'FileInputBase'\"></label>\r\n <i *ngIf=\"inp.icon != null || inp.loading\" [className]=\"(inp.loading ? 'fad fa-spin fa-spinner' : inp.icon) + ' icon'\"></i>\r\n <div class=\"empty\" *ngIf=\"inp.value == null || inp.value.length == 0\">\r\n <div class=\"title\"><div class=\"w-100\" [innerHTML]=\"inp.l('UploaderTitle')\"></div></div>\r\n <div class=\"allowed\" *ngIf=\"inp.allowed != null\">({{inp.allowed.join(', ')}})</div>\r\n <div class=\"max-length\" *ngIf=\"inp.maxLength > -1\">({{inp.l('UploaderMaxLength', inp.maxLength / 1024)}})</div>\r\n </div>\r\n <div class=\"files\" *ngIf=\"inp.value != null && inp.value.length > 0\">\r\n <div class=\"file\" *ngFor=\"let f of inp.value\">\r\n <div class=\"info\">\r\n <label class=\"click\" (click)=\"openFile(f)\"></label>\r\n <div class=\"close\">\r\n <lib-form-icon [inp]=\"f.close\"></lib-form-icon>\r\n </div>\r\n <img *ngIf=\"f.type == fileIcons.jpeg || f.type == fileIcons.jpg || f.type == fileIcons.png\" [src]=\"f.url\" alt=\"\"/>\r\n <i *ngIf=\"f.type != fileIcons.jpeg && f.type != fileIcons.jpg && f.type != fileIcons.png\" [class]=\"f.icon + ' file-icon'\"></i>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n",
148
- styles: [".form-input-con.uploader{-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;padding:0 15px;position:relative}.form-input-con.uploader .form-input{float:right;position:relative;width:100%}.form-input-con.uploader .form-input .control .click{cursor:pointer;height:100%;position:absolute;right:0;top:0;width:100%;z-index:3}.form-input-con.uploader .form-input .input-base,.form-input-con.uploader .form-input .input-base-file{cursor:pointer;height:0;opacity:0;position:absolute;right:50%;top:50%;width:0;z-index:1}.form-input-con.uploader .form-input .label{-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;cursor:default;direction:rtl;float:right;font-size:12px;height:20px;line-height:20px;margin-bottom:3px;padding:0 10px;text-align:right;width:100%}.form-input-con.uploader .form-input .label .required-icon{color:var(--red);font-size:9px;height:20px;line-height:20px;text-align:center;width:20px}.form-input-con.uploader .form-input .control{background-color:#fff;border:var(--border-input);border-radius:var(--border-radius-base);float:left;padding:3px 35px;position:relative;text-align:center;width:100%;z-index:2}.form-input-con.uploader .form-input .control .empty{align-items:center;display:flex;flex-direction:column;float:right;height:77px;justify-content:center;width:100%}.form-input-con.uploader .form-input .control .empty .title{align-items:center;display:flex;float:right;font-size:11px;height:37px;justify-content:center;line-height:14px;width:100%}.form-input-con.uploader .form-input .control .empty .allowed{direction:ltr;float:right;font-size:10px;font-weight:var(--font-light);height:25px;line-height:10px;width:100%}.form-input-con.uploader .form-input .control .empty .max-length{float:right;font-size:9px;line-height:15px;width:100%}.form-input-con.uploader .form-input .control .files{align-items:center;display:flex;flex-flow:wrap;float:right;justify-content:center;width:100%}.form-input-con.uploader .form-input .control .files .file{float:right;height:77px;padding:5px;width:77px}.form-input-con.uploader .form-input .control .files .file .info{align-items:center;border:var(--border-input);border-radius:var(--border-radius-base);display:flex;float:right;height:100%;justify-content:center;padding:5px;position:relative;text-align:center;width:100%}.form-input-con.uploader .form-input .control .files .file .info:hover{border:var(--border-input-dark)}.form-input-con.uploader .form-input .control .files .file .info img{height:100%}.form-input-con.uploader .form-input .control .files .file .info .close{height:15px;position:absolute;right:0;top:0;width:15px;z-index:5}.form-input-con.uploader .form-input .control .files .file .info .file-icon{float:right;font-size:35px;text-align:center;width:100%}.form-input-con.uploader .form-input .control .files .file .info .close:hover{color:var(--red-dark)}.form-input-con.uploader .form-input .control:hover,.form-input-con.uploader .form-input .input-base:focus+.control{border:var(--border-input-dark);outline:none}.form-input-con.uploader .form-input .control i.icon{color:var(--primary);font-size:13px;height:35px;left:0;line-height:35px;position:absolute;text-align:center;top:0;width:35px;z-index:2}.form-input-con.uploader.error .form-input .control{border:var(--border-input-red)}.form-input-con.uploader.error .form-input .label{color:var(--red);font-size:10px}.form-input-con.uploader.error .form-input .control,.form-input-con.uploader.error .form-input .control i.icon{color:var(--red)}.form-input-con.uploader.h-35{height:35px}.form-input-con.uploader.has-value.h-35 .form-input .control{direction:ltr;font-size:9px;height:35px}.form-input-con.uploader.h-35 .form-input .button,.form-input-con.uploader.h-35 .form-input .control i.icon{height:35px;line-height:35px}.form-input-con.uploader.h-30{height:30px}.form-input-con.uploader.h-30 .form-input .control{direction:ltr;font-size:9px;height:30px;line-height:30px}.form-input-con.uploader.h-30 .form-input .button,.form-input-con.uploader.h-30 .form-input .control i.icon{height:30px;line-height:30px}"]
149
- },] }
150
- ];
151
- FormUploaderComponent.ctorParameters = () => [];
152
- FormUploaderComponent.propDecorators = {
153
- inp: [{ type: Input }],
154
- changeIndex: [{ type: Output }],
155
- inputDiv: [{ type: ViewChild, args: ['inputDiv',] }],
156
- inputBaseFile: [{ type: ViewChild, args: ['inputBaseFile',] }],
157
- inputBase: [{ type: ViewChild, args: ['inputBase',] }]
158
- };
159
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS51cGxvYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiRDovUHNUb29sa2l0L1VJL3Byb2plY3RzL3BzLXRvb2xraXQtdWkvc3JjLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvZm9ybS91cGxvYWRlci9mb3JtLnVwbG9hZGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNwRyxPQUFPLEtBQUssQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUM1QixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDekQsT0FBTyxFQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDN0UsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBTzFELE1BQU0sT0FBTyxxQkFBcUI7SUFVaEM7UUFOQSxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFPdkMsSUFBSSxDQUFDLEVBQUUsR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFIRCxJQUFJLFNBQVMsS0FBdUIsT0FBTyxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBS3ZELFFBQVE7UUFDTixJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ3hCLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxHQUFHLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxZQUFZLEtBQUssSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFD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QUFDO0lBQ0QsUUFBUSxDQUFDLENBQU07UUFDYixNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDL0IsQ0FBQzs7O1lBbkpGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsbUJBQW1CO2dCQUM3QiwrakVBQTZDOzthQUU5Qzs7OztrQkFFRSxLQUFLOzBCQUVMLE1BQU07dUJBRU4sU0FBUyxTQUFDLFVBQVU7NEJBQ3BCLFNBQVMsU0FBQyxlQUFlO3dCQUN6QixTQUFTLFNBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0ICogYXMgJCBmcm9tICdqcXVlcnknO1xyXG5pbXBvcnQgeyBJbnB1dENsYXNzIH0gZnJvbSAnLi4vLi4vLi4vY2xhc3Nlcy9mb3JtLmNsYXNzJztcclxuaW1wb3J0IHtGaWxlSWNvbnMsIElucHV0RXJyb3IsIElucHV0VHlwZX0gZnJvbSAnLi4vLi4vLi4vY2xhc3Nlcy9lbnVtLmNsYXNzJztcclxuaW1wb3J0IHtIZWxwZXJDbGFzc30gZnJvbSAnLi4vLi4vLi4vY2xhc3Nlcy9oZWxwZXIuY2xhc3MnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItZm9ybS11cGxvYWRlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvcm0udXBsb2FkZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2Zvcm0udXBsb2FkZXIuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGb3JtVXBsb2FkZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXR7XHJcbiAgQElucHV0KClcclxuICBpbnA6IElucHV0Q2xhc3M7XHJcbiAgQE91dHB1dCgpXHJcbiAgY2hhbmdlSW5kZXggPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuICBAVmlld0NoaWxkKCdpbnB1dERpdicpIGlucHV0RGl2OiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoJ2lucHV0QmFzZUZpbGUnKSBpbnB1dEJhc2VGaWxlOiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGQoJ2lucHV0QmFzZScpIGlucHV0QmFzZTogRWxlbWVudFJlZjtcclxuICBpZDogc3RyaW5nO1xyXG4gIGdldCBmaWxlSWNvbnMoKTogdHlwZW9mIEZpbGVJY29ucyB7IHJldHVybiBGaWxlSWNvbnM7IH1cclxuICBjb25zdHJ1Y3Rvcigpe1xyXG4gICAgdGhpcy5pZCA9IEhlbHBlckNsYXNzLnJhbmRvbSgxMCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuaW5wLnNldFZhbHVlID0gKHYpID0+IHtcclxuICAgICAgdGhpcy5pbnAudmFsdWUgPSB2ICE9IG51bGwgJiYgdiBpbnN0YW5jZW9mIEFycmF5ICYmIHYuZXZlcnkoaSA9PiB0eXBlb2YgaSA9PT0gJ3N0cmluZycpID8gdi5tYXAoZiA9PiB7XHJcbiAgICAgICAgY29uc3QgdHlwOiBGaWxlSWNvbnMgPSBGaWxlSWNvbnNbZi5zcGxpdCgnLicpLmF0KC0xKV0gPz8gRmlsZUljb25zLmZpbGU7XHJcbiAgICAgICAgY29uc3QgaWNvbjogc3RyaW5nID0gRmlsZUljb25zW2Yuc3BsaXQoJy4nKS5hdCgtMSldID8/IEZpbGVJY29ucy5maWxlO1xyXG4gICAgICAgIGNvbnN0IGNsb3NlID0gbmV3IElucHV0Q2xhc3ModGhpcy5pbnAuZW52aXJvbm1lbnQsIHRoaXMuaW5wLmwsIG51bGwsICdmYXMgZmEtdGltZXMnLCBJbnB1dFR5cGUuSWNvbiwgJ3JlZCBoLTE1Jyk7XHJcbiAgICAgICAgY2xvc2Uub25DbGljayA9ICgpID0+IHtcclxuICAgICAgICAgIHRoaXMuaW5wLnZhbHVlID0gdGhpcy5pbnAudmFsdWUuZmlsdGVyKHggPT4geC5maWxlICE9PSBmKTtcclxuICAgICAgICB9O1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICB0eXBlOiB0eXAsXHJcbiAgICAgICAgICBpY29uLFxyXG4gICAgICAgICAgdXJsOiB0aGlzLmlucC5lbnZpcm9ubWVudC51cmwgKyBmLFxyXG4gICAgICAgICAgY2xvc2UsXHJcbiAgICAgICAgICBmaWxlOiBmXHJcbiAgICAgICAgfTtcclxuICAgICAgfSkgOiBbXTtcclxuICAgIH07XHJcbiAgICB0aGlzLmlucC5pc1ZhbGlkID0gKCkgPT4ge1xyXG4gICAgICB0aGlzLmlucC5lcnJvciA9IG51bGw7XHJcbiAgICAgIGlmICh0aGlzLmlucC5yZXF1aXJlZCAmJiAodGhpcy5pbnAudmFsdWUgPT0gbnVsbCB8fCB0aGlzLmlucC52YWx1ZS5sZW5ndGggPT09IDApKSB7XHJcbiAgICAgICAgdGhpcy5pbnAuZXJyb3IgPSBJbnB1dEVycm9yLlJlcXVpcmVkO1xyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoIXRoaXMuaW5wLnJlcXVpcmVkICYmICh0aGlzLmlucC52YWx1ZSA9PSBudWxsIHx8IHRoaXMuaW5wLnZhbHVlLmxlbmd0aCA9PT0gMCkpIHtcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5pbnAuYWxsb3dlZCAhPSBudWxsICYmIHRoaXMuaW5wLnZhbHVlICE9IG51bGwgJiZcclxuICAgICAgICAhdGhpcy5pbnAudmFsdWUuc29tZSh4ID0+ICF0aGlzLmlucC5hbGxvd2VkLmluY2x1ZGVzKHgudHlwZSkpKSB7XHJcbiAgICAgICAgdGhpcy5pbnAuZXJyb3IgPSBJbnB1dEVycm9yLk5vdEFsbG93ZWQ7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLmlucC5tYXhMZW5ndGggIT09IC0xICYmIHRoaXMuaW5wLnZhbHVlICE9IG51bGwgJiZcclxuICAgICAgICB0aGlzLmlucC52YWx1ZS5tYXAoeCA9PiB4LnNpemUgPiB0aGlzLmlucC5tYXhMZW5ndGggKiAxMDI0KS5maWx0ZXIoeCA9PiB4KS5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgdGhpcy5pbnAuZXJyb3IgPSBJbnB1dEVycm9yLk1heENvbnRlbnQ7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfTtcclxuICAgIHRoaXMuaW5wLmNsZWFyID0gKCkgPT4ge1xyXG4gICAgICB0aGlzLmlucC5lcnJvciA9IG51bGw7XHJcbiAgICAgIHRoaXMuaW5wLnNldFZhbHVlKHRoaXMuaW5wLmRlZmF1bHQsIGZhbHNlKTtcclxuICAgIH07XHJcbiAgICB0aGlzLmlucC5kYXRhID0gKCkgPT4ge1xyXG4gICAgICBjb25zdCByZXN1bHQgPSB7fTtcclxuICAgICAgcmVzdWx0W3RoaXMuaW5wLm5hbWVdID0gdGhpcy5pbnAubmFtZTtcclxuICAgICAgaWYgKHRoaXMuaW5wLnZhbHVlICE9IG51bGwgJiYgdGhpcy5pbnAudmFsdWUgaW5zdGFuY2VvZiBBcnJheSkge1xyXG4gICAgICAgIHJlc3VsdFt0aGlzLmlucC5uYW1lICsgJ0ZpbGVzJ10gPSB0aGlzLmlucC52YWx1ZS5maWx0ZXIoeCA9PiB0eXBlb2YgeC5maWxlICE9PSAnc3RyaW5nJykubWFwKHggPT4geC5maWxlKTtcclxuICAgICAgICByZXN1bHRbdGhpcy5pbnAubmFtZSArICdVcmxzJ10gPSB0aGlzLmlucC52YWx1ZS5maWx0ZXIoeCA9PiB0eXBlb2YgeC5maWxlID09PSAnc3RyaW5nJykubWFwKHggPT4geC5maWxlKTtcclxuICAgICAgICByZXR1cm4gcmVzdWx0O1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiByZXN1bHQ7XHJcbiAgICB9O1xyXG4gICAgdGhpcy5pbnAuZm9jdXMgPSAoKSA9PiB7XHJcbiAgICAgIHRoaXMub25DbGljaygpO1xyXG4gICAgfTtcclxuICAgIHRoaXMuaW5wLnNldFZhbHVlKHRoaXMuaW5wLmRlZmF1bHQsIGZhbHNlKTtcclxuICB9XHJcbiAgZ2V0UGRmSW1hZ2UoZmlsZSk6IGFueXtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XHJcbiAgICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGZpbGUpO1xyXG4gICAgICByZWFkZXIub25sb2FkID0gKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGkgPSBuZXcgSW1hZ2UoKTtcclxuICAgICAgICBpLnNyYyA9IHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKGZpbGUpO1xyXG4gICAgICAgIGkub25sb2FkID0gKCkgPT4ge1xyXG4gICAgICAgICAgbGV0IHcgPSBpLndpZHRoO1xyXG4gICAgICAgICAgbGV0IGggPSBpLmhlaWdodDtcclxuICAgICAgICAgIGlmICh3ID4gMjAwKXtcclxuICAgICAgICAgICAgaCA9ICgyMDAgKiBoKSAvIHc7XHJcbiAgICAgICAgICAgIHcgPSAyMDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAoaCA+IDI4Nyl7XHJcbiAgICAgICAgICAgIHcgPSAoMjg3ICogdykgLyBoO1xyXG4gICAgICAgICAgICBoID0gMjg3O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgcmVzb2x2ZSh7YmFzZTY0OiByZWFkZXIucmVzdWx0LnRvU3RyaW5nKCksIHcsIGh9KTtcclxuICAgICAgICB9O1xyXG4gICAgICB9O1xyXG4gICAgICByZWFkZXIub25lcnJvciA9IGVycm9yID0+IHJlamVjdChlcnJvcik7XHJcbiAgICB9KTtcclxuICB9XHJcbiAgb25DbGljaygpOiB2b2lke1xyXG4gICAgJCh0aGlzLmlucHV0QmFzZS5uYXRpdmVFbGVtZW50KS5mb2N1cygpO1xyXG4gIH1cclxuICBvbkNoYW5nZShlKTogdm9pZHtcclxuICAgIHRoaXMuaW5wLmVycm9yID0gbnVsbDtcclxuICAgIGZvciAoY29uc3QgZiBvZiBlLnRhcmdldC5maWxlcyl7XHJcbiAgICAgIGNvbnN0IGNsb3NlID0gbmV3IElucHV0Q2xhc3ModGhpcy5pbnAuZW52aXJvbm1lbnQsIHRoaXMuaW5wLmwsIG51bGwsICdmYXMgZmEtdGltZXMnLCBJbnB1dFR5cGUuSWNvbiwgJ3JlZCBoLTE1Jyk7XHJcbiAgICAgIGNsb3NlLm9uQ2xpY2sgPSAoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5pbnAudmFsdWUgPSB0aGlzLmlucC52YWx1ZS5maWx0ZXIoeCA9PiB4LmZpbGUgIT09IGYpO1xyXG4gICAgICB9O1xyXG4gICAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpO1xyXG4gICAgICByZWFkZXIucmVhZEFzRGF0YVVSTChmKTtcclxuICAgICAgY29uc3QgdHlwOiBGaWxlSWNvbnMgPSBGaWxlSWNvbnNbZi5uYW1lLnNwbGl0KCcuJykuYXQoLTEpXSA/PyBGaWxlSWNvbnMuZmlsZTtcclxuICAgICAgY29uc3QgaWNvbjogc3RyaW5nID0gRmlsZUljb25zW2YubmFtZS5zcGxpdCgnLicpLmF0KC0xKV0gPz8gRmlsZUljb25zLmZpbGU7XHJcbiAgICAgIHJlYWRlci5vbmxvYWQgPSAob0ZSRXZlbnQpID0+IHtcclxuICAgICAgICB0aGlzLmlucC52YWx1ZS5wdXNoKHtcclxuICAgICAgICAgIHR5cGU6IHR5cCxcclxuICAgICAgICAgIGljb24sXHJcbiAgICAgICAgICB1cmw6IG9GUkV2ZW50LnRhcmdldC5yZXN1bHQsXHJcbiAgICAgICAgICBjbG9zZSxcclxuICAgICAgICAgIGZpbGU6IGZcclxuICAgICAgICB9KTtcclxuICAgICAgfTtcclxuICAgIH1cclxuICAgIHRoaXMuY2hhbmdlSW5kZXguZW1pdCgnVGFiJyk7XHJcbiAgfVxyXG4gIG9uS2V5RG93bihlKTogdm9pZHtcclxuICAgIGNvbnN0IGNvZGUgPSBlLmtleUNvZGUgfHwgZS53aGljaDtcclxuICAgIGlmIChjb2RlID09PSA5IHx8IGNvZGUgPT09IDEzKSB7XHJcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgdGhpcy5jaGFuZ2VJbmRleC5lbWl0KGUuc2hpZnRLZXkgPyAnU2hpZnRUYWInIDogJ1RhYicpO1xyXG4gICAgfVxyXG4gIH1cclxuICBvbkZvY3VzSW4oKTogdm9pZHtcclxuICAgICQodGhpcy5pbnB1dEJhc2UubmF0aXZlRWxlbWVudCkuZm9jdXMoKTtcclxuICB9XHJcbiAgdGl0bGUoKTogc3RyaW5ne1xyXG4gICAgaWYgKHRoaXMuaW5wLnZhbHVlID09IG51bGwgfHwgKHRoaXMuaW5wLnZhbHVlIGluc3RhbmNlb2YgQXJyYXkgJiYgdGhpcy5pbnAudmFsdWUubGVuZ3RoID09PSAwKSl7XHJcbiAgICAgIHJldHVybiB0aGlzLmlucC5sKCdGaWxlTm90U2VsZWN0ZWQnKTtcclxuICAgIH1cclxuICAgIGNvbnN0IHQgPSB0eXBlb2YgdGhpcy5pbnAudmFsdWUgPT09ICdzdHJpbmcnID8gdGhpcy5pbnAudmFsdWUgOiB0aGlzLmlucC52YWx1ZS5tYXAoeCA9PiB0eXBlb2YgeCA9PT0gJ3N0cmluZycgPyB4IDogeC5uYW1lKS5qb2luKCcsICcpO1xyXG4gICAgY29uc3QgbCA9IHR5cGVvZiB0aGlzLmlucC52YWx1ZSA9PT0gJ3N0cmluZycgPyAxIDogdGhpcy5pbnAudmFsdWUubGVuZ3RoO1xyXG4gICAgcmV0dXJuIHRoaXMuaW5wLmwoJ0ZpbGVTZWxlY3RlZCcsIFtsLCB0XSk7XHJcbiAgfVxyXG4gIG9wZW5GaWxlKGY6IGFueSk6IHZvaWR7XHJcbiAgICB3aW5kb3cub3BlbihmLnVybCwgJ19ibGFuaycpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,104 +0,0 @@
1
- import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
2
- import { InputClass } from '../../../classes/form.class';
3
- import { InputError, InputType, VehicleType } from '../../../classes/enum.class';
4
- export class FormVehicleComponent {
5
- constructor() {
6
- this.changeIndex = new EventEmitter();
7
- this.type = VehicleType.Car;
8
- }
9
- get vehicleType() { return VehicleType; }
10
- ngOnInit() {
11
- this.type = this.inp.rows.find(_ => true);
12
- this.car = new InputClass(this.inp.environment, this.inp.l, this.inp.name + 'Item', 'fa-user', InputType.Plaque, 'plaque-inp', null, this.inp.required);
13
- this.carF = new InputClass(this.inp.environment, this.inp.l, this.inp.name + 'Item', 'fa-earth-asia', InputType.PlaqueF, 'plaque-inp', null, this.inp.required);
14
- this.carG = new InputClass(this.inp.environment, this.inp.l, this.inp.name + 'Item', 'fa-globe', InputType.PlaqueG, 'plaque-inp', null, this.inp.required);
15
- this.motor = new InputClass(this.inp.environment, this.inp.l, this.inp.name + 'Item', 'fa-motorcycle', InputType.PlaqueM, 'plaque-inp', null, this.inp.required);
16
- this.car.displayLabel = this.carF.displayLabel = this.carG.displayLabel = this.motor.displayLabel = false;
17
- this.car.disabled = this.carF.disabled = this.carG.disabled = this.motor.disabled = this.inp.disabled;
18
- this.inp.setValue = (v) => {
19
- if (v != null && v.Value !== null) {
20
- this.changeType(v.Type);
21
- setTimeout(() => {
22
- if (v.Type === VehicleType.Motorcycle) {
23
- this.motor.setValue(v.Value, false);
24
- }
25
- else if (v.Type === VehicleType.CarF) {
26
- this.carF.setValue(v.Value, false);
27
- }
28
- else if (v.Type === VehicleType.Car) {
29
- this.car.setValue(v.Value, false);
30
- }
31
- else if (v.Type === VehicleType.CarG) {
32
- this.carG.setValue(v.Value, false);
33
- }
34
- });
35
- }
36
- };
37
- this.inp.focus = () => {
38
- this.onFocusIn();
39
- };
40
- this.inp.isValid = () => {
41
- this.inp.error = null;
42
- if (this.inp.required && this.type === VehicleType.Car && !this.car.isValid()) {
43
- this.inp.error = InputError.Required;
44
- return false;
45
- }
46
- if (this.inp.required && this.type === VehicleType.Motorcycle && !this.motor.isValid()) {
47
- this.inp.error = InputError.Required;
48
- return false;
49
- }
50
- if (this.inp.required && this.type === VehicleType.CarF && !this.carF.isValid()) {
51
- this.inp.error = InputError.Required;
52
- return false;
53
- }
54
- if (this.inp.required && this.type === VehicleType.CarG && !this.carG.isValid()) {
55
- this.inp.error = InputError.Required;
56
- return false;
57
- }
58
- return true;
59
- };
60
- this.inp.clear = () => {
61
- this.inp.error = null;
62
- this.inp.setValue(null, false);
63
- this.changeType(this.inp.rows.find(_ => true));
64
- this.car.clear();
65
- this.motor.clear();
66
- this.carF.clear();
67
- this.carG.clear();
68
- };
69
- this.inp.data = () => {
70
- const d = { Type: this.type };
71
- d[this.inp.name] = this.type === VehicleType.Car ? this.car.data() :
72
- this.type === VehicleType.Motorcycle ? this.motor.data() :
73
- this.type === VehicleType.CarF ? this.carF.data() :
74
- this.type === VehicleType.CarG ? this.carG.data() : null;
75
- return d;
76
- };
77
- }
78
- changeType(t) {
79
- this.type = t;
80
- if (this.inp.onChange) {
81
- this.inp.onChange(t);
82
- }
83
- this.onFocusIn();
84
- }
85
- onFocusIn() {
86
- setTimeout(() => {
87
- $('#' + this.inp.id + 'VehicleInput #Part1TextInput .control').focus();
88
- }, 100);
89
- }
90
- }
91
- FormVehicleComponent.decorators = [
92
- { type: Component, args: [{
93
- selector: 'lib-form-vehicle',
94
- template: "<div #inputDiv [id]=\"inp.id + 'VehicleInput'\" [style]=\"inp.style\" [className]=\"inp.class + (inp.error == null ? '' : ' error') + (inp.disabled || inp.loading ? ' disabled' : '') + (inp.icon != null ? '' : ' without-icon') + ' form-input-con w-100 vehicle'\">\r\n <div class=\"form-input\">\r\n <div class=\"disable-con\"></div>\r\n <div class=\"label\">\r\n <i *ngIf=\"inp.required\" class=\"f-r fas fa-star-of-life required-icon\"></i>\r\n <span *ngIf=\"inp.rows.length == 1\">{{inp.l('Plaque')}}</span>\r\n <i *ngIf=\"inp.rows.length > 1 && inp.rows.includes(vehicleType.Car)\" [className]=\"(type === vehicleType.Car ? 'active ' : '') + 'change-type-btn fas fa-car'\" (click)=\"changeType(vehicleType.Car)\"></i>\r\n <i *ngIf=\"inp.rows.length > 1 && inp.rows.includes(vehicleType.CarF)\" [className]=\"(type === vehicleType.CarF ? 'active ' : '') + 'change-type-btn fas fa-earth-asia'\" (click)=\"changeType(vehicleType.CarF)\"></i>\r\n <i *ngIf=\"inp.rows.length > 1 && inp.rows.includes(vehicleType.CarG)\" [className]=\"(type === vehicleType.CarG ? 'active ' : '') + 'change-type-btn fas fa-globe'\" (click)=\"changeType(vehicleType.CarG)\"></i>\r\n <i *ngIf=\"inp.rows.length > 1 && inp.rows.includes(vehicleType.Motorcycle)\" [className]=\"(type === vehicleType.Motorcycle ? 'active ' : '') + 'change-type-btn fas fa-motorcycle'\" (click)=\"changeType(vehicleType.Motorcycle)\"></i>\r\n </div>\r\n <div class=\"w-100 p-r\">\r\n <lib-form-plaque (changeIndex)=\"changeIndex.emit($event)\" [inp]=\"car\" *ngIf=\"type === vehicleType.Car\"></lib-form-plaque>\r\n <lib-form-plaque (changeIndex)=\"changeIndex.emit($event)\" [inp]=\"carF\" *ngIf=\"type === vehicleType.CarF\"></lib-form-plaque>\r\n <lib-form-plaque (changeIndex)=\"changeIndex.emit($event)\" [inp]=\"carG\" *ngIf=\"type === vehicleType.CarG\"></lib-form-plaque>\r\n <lib-form-plaque (changeIndex)=\"changeIndex.emit($event)\" [inp]=\"motor\" *ngIf=\"type === vehicleType.Motorcycle\"></lib-form-plaque>\r\n </div>\r\n </div>\r\n</div>\r\n",
95
- styles: [".form-input-con.vehicle{align-items:center;display:flex;float:right;justify-content:center;position:relative}.form-input-con.vehicle .form-input{float:right;position:relative;width:198px}.form-input-con.vehicle .form-input .label{-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;cursor:default;direction:rtl;float:right;font-size:12px;height:20px;line-height:20px;margin-bottom:3px;padding:0 10px;text-align:right;width:100%}.form-input-con.vehicle.error .form-input .label{color:var(--red);font-size:10px}.form-input-con.vehicle .form-input .label .required-icon{color:var(--red);font-size:9px;height:20px;line-height:20px;text-align:center;width:20px}.form-input-con.vehicle .form-input .label .change-type-btn{cursor:pointer;float:right;font-size:16px;height:20px;line-height:20px;text-align:center;width:30px}.form-input-con.vehicle .form-input .label .change-type-btn.fa-user{font-size:14px;line-height:18px}.form-input-con.vehicle .form-input .label .change-type-btn.active,.form-input-con.vehicle .form-input .label .change-type-btn:hover{color:var(--primary)}.form-input-con.vehicle .form-input .control{background-color:#fff;background-image:none;border:none;border-radius:var(--border-radius-base);box-shadow:0 1px 3px 0 rgba(0,0,0,.4);color:var(--black);display:block;font-size:11px;height:35px;padding:5px 35px;position:relative;text-align:center;width:100%;z-index:2}.form-input-con.vehicle .form-input .control:focus,.form-input-con.vehicle .form-input:hover .control{box-shadow:0 1px 5px 0 rgba(0,0,0,.7)}.form-input-con.vehicle .form-input span.icon{bottom:0;color:var(--primary);cursor:text;font-size:14px;height:35px;left:0;line-height:38px;position:absolute;text-align:center;transition:all .35s ease-in-out;width:35px;z-index:2}.form-input-con.vehicle .form-input span.icon.button{background-color:var(--base);border-radius:var(--border-radius-base) 0 0 var(--border-radius-base);color:#fff;cursor:pointer}.form-input-con.vehicle .form-input span.icon.button:hover{background-color:var(--base-dark)}.form-input-con.vehicle .form-input span.icon.button.blue{background-color:var(--blue)}.form-input-con.vehicle .form-input span.icon.button.blue:hover{background-color:var(--blue-dark)}.form-input-con.vehicle .form-input span.icon.button.green{background-color:var(--green)}.form-input-con.vehicle .form-input span.icon.button.green:hover{background-color:var(--green-dark)}.form-input-con.vehicle .form-input span.icon.button.red{background-color:var(--red)}.form-input-con.vehicle .form-input span.icon.button.red:hover{background-color:var(--red-dark)}.form-input-con.vehicle .form-input span.icon.button.yellow{background-color:var(--yellow)}.form-input-con.vehicle .form-input span.icon.button.yellow:hover{background-color:var(--yellow-dark)}.form-input-con.vehicle .form-input .disable-con{display:none}.form-input-con.vehicle.disabled .form-input{-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;box-shadow:unset;cursor:default}.form-input-con.vehicle.disabled .form-input .disable-con{display:block;height:100%;position:absolute;right:0;top:0;width:100%;z-index:5}.form-input-con.vehicle.display .form-input .label{display:none}.form-input-con.vehicle.display .form-input .disable-con{display:block;height:100%;position:absolute;right:0;top:0;width:100%;z-index:5}.form-input-con.vehicle.error .form-input .control{box-shadow:0 1px 3px 0 var(--red)}.form-input-con.vehicle.error .form-input .control,.form-input-con.vehicle.error .form-input span.icon{color:var(--red-light)}.form-input-con.vehicle .form-input .progress{background-color:var(--primary);border-radius:var(--border-radius-base);bottom:0;height:3px;line-height:3px;position:absolute;right:0;transition:width .5s ease-in-out;width:100%;z-index:2}.form-input-con.vehicle.without-icon .form-input .control{padding:5px 10px}.form-input-con.vehicle.h-50 .form-input .control{height:50px}.form-input-con.vehicle.h-50 .form-input span.icon{height:50px;line-height:50px}.form-input-con.vehicle.h-45 .form-input .control{height:45px}.form-input-con.vehicle.h-45 .form-input span.icon{height:45px;line-height:45px}.form-input-con.vehicle.h-30 .form-input .control{font-size:10px;height:30px;padding:0}.form-input-con.vehicle.h-30 .form-input span.icon{height:30px;line-height:30px}.form-input-con.vehicle.h-35 .form-input{height:35px}.form-input-con.vehicle.h-35 .form-input .control{height:35px;padding:0 35px}.form-input-con.vehicle.h-35 .form-input span.icon{height:35px;line-height:35px}.form-input-con.vehicle.h-25 .form-input .control{height:25px;padding:0}.form-input-con.vehicle.h-25 .form-input span.icon{height:25px;line-height:25px}.form-input-con.vehicle.table-search .form-input{float:right;margin-right:10%;margin-top:4px;width:80%}.form-input-con.vehicle.h-22 .form-input .control{height:22px;padding:0}.form-input-con.vehicle.h-22 .form-input span.icon{height:22px;line-height:22px}.form-input-con.vehicle.plaque-part-1 .form-input{float:left;padding:0!important;width:35px!important}.form-input-con.vehicle.plaque-part-1 .form-input.plaque-part-m{width:49px!important}.form-input-con.vehicle.plaque-part-3 .form-input{float:left;padding:0!important;width:49px!important}.form-input-con.vehicle.plaque-part-3 .form-input.plaque-part-m{width:69px!important}.form-input-con.vehicle.plaque-part-4 .form-input{float:left;margin-top:10px;padding:0!important;width:34px!important}.form-input-con.vehicle.plaque-part-4 .form-input .control{height:25px!important}.form-input-con.vehicle.plaque-part-4 .form-input.plaque-part-m{display:none!important}.form-input-con.vehicle.bank-card-part-item .form-input{float:left;padding:0!important;width:25%}.form-input-con.vehicle.bank-card-part-item .form-input:not(.bank-card-part-4):after{content:\"\\f068\";font-family:Font Awesome\\ 5 Free;font-size:6px;font-weight:900;height:20px;line-height:20px;position:absolute;right:-10px;text-align:center;top:calc(50% - 10px);width:20px}.form-input-con.vehicle.bank-card-part-item .form-input .control{background-color:initial!important;box-shadow:unset!important;font-size:13px!important;padding:0!important}"]
96
- },] }
97
- ];
98
- FormVehicleComponent.ctorParameters = () => [];
99
- FormVehicleComponent.propDecorators = {
100
- inp: [{ type: Input }],
101
- changeIndex: [{ type: Output }],
102
- inputDiv: [{ type: ViewChild, args: ['inputDiv',] }]
103
- };
104
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS52ZWhpY2xlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJEOi9Qc1Rvb2xraXQvVUkvcHJvamVjdHMvcHMtdG9vbGtpdC11aS9zcmMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9mb3JtL3ZlaGljbGUvZm9ybS52ZWhpY2xlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNwRyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDdkQsT0FBTyxFQUFDLFVBQVUsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFPL0UsTUFBTSxPQUFPLG9CQUFvQjtJQVkvQjtRQVJBLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUN6QyxTQUFJLEdBQWdCLFdBQVcsQ0FBQyxHQUFHLENBQUM7SUFRcEMsQ0FBQztJQUZELElBQUksV0FBVyxLQUF5QixPQUFPLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFHN0QsUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDMUMsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksR0FBRyxNQUFNLEVBQ2hGLFNBQVMsRUFBRSxTQUFTLENBQUMsTUFBTSxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN0RSxJQUFJLENBQUMsSUFB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Q0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO3dCQUNqRCxJQUFJLENBQUMsSUFBSSxLQUFLLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztZQUMvRCxPQUFPLENBQUMsQ0FBQztRQUNYLENBQUMsQ0FBQztJQUNKLENBQUM7SUFDRCxVQUFVLENBQUMsQ0FBYztRQUN2QixJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztRQUNkLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUM7WUFDcEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDdEI7UUFDRCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFFbkIsQ0FBQztJQUNELFNBQVM7UUFDUCxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsQ0FBQyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsR0FBRyx1Q0FBdUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3pFLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNWLENBQUM7OztZQXBHRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtnQkFDNUIsNmlFQUE0Qzs7YUFFN0M7Ozs7a0JBRUUsS0FBSzswQkFFTCxNQUFNO3VCQU9OLFNBQVMsU0FBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0lucHV0Q2xhc3N9IGZyb20gJy4uLy4uLy4uL2NsYXNzZXMvZm9ybS5jbGFzcyc7XHJcbmltcG9ydCB7SW5wdXRFcnJvciwgSW5wdXRUeXBlLCBWZWhpY2xlVHlwZX0gZnJvbSAnLi4vLi4vLi4vY2xhc3Nlcy9lbnVtLmNsYXNzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLWZvcm0tdmVoaWNsZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvcm0udmVoaWNsZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZm9ybS52ZWhpY2xlLmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRm9ybVZlaGljbGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpXHJcbiAgaW5wOiBJbnB1dENsYXNzO1xyXG4gIEBPdXRwdXQoKVxyXG4gIGNoYW5nZUluZGV4ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcbiAgdHlwZTogVmVoaWNsZVR5cGUgPSBWZWhpY2xlVHlwZS5DYXI7XHJcbiAgY2FyOiBJbnB1dENsYXNzO1xyXG4gIGNhckY6IElucHV0Q2xhc3M7XHJcbiAgY2FyRzogSW5wdXRDbGFzcztcclxuICBtb3RvcjogSW5wdXRDbGFzcztcclxuICBAVmlld0NoaWxkKCdpbnB1dERpdicpIGlucHV0RGl2OiBFbGVtZW50UmVmO1xyXG4gIGdldCB2ZWhpY2xlVHlwZSgpOiB0eXBlb2YgVmVoaWNsZVR5cGUgeyByZXR1cm4gVmVoaWNsZVR5cGU7IH1cclxuICBjb25zdHJ1Y3Rvcigpe1xyXG4gIH1cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMudHlwZSA9IHRoaXMuaW5wLnJvd3MuZmluZChfID0+IHRydWUpO1xyXG4gICAgdGhpcy5jYXIgPSBuZXcgSW5wdXRDbGFzcyh0aGlzLmlucC5lbnZpcm9ubWVudCwgdGhpcy5pbnAubCwgdGhpcy5pbnAubmFtZSArICdJdGVtJyxcclxuICAgICAgJ2ZhLXVzZXInLCBJbnB1dFR5cGUuUGxhcXVlLCAncGxhcXVlLWlucCcsIG51bGwsIHRoaXMuaW5wLnJlcXVpcmVkKTtcclxuICAgIHRoaXMuY2FyRiA9IG5ldyBJbnB1dENsYXNzKHRoaXMuaW5wLmVudmlyb25tZW50LCB0aGlzLmlucC5sLCB0aGlzLmlucC5uYW1lICsgJ0l0ZW0nLFxyXG4gICAgICAnZmEtZWFydGgtYXNpYScsIElucHV0VHlwZS5QbGFxdWVGLCAncGxhcXVlLWlucCcsIG51bGwsIHRoaXMuaW5wLnJlcXVpcmVkKTtcclxuICAgIHRoaXMuY2FyRyA9IG5ldyBJbnB1dENsYXNzKHRoaXMuaW5wLmVudmlyb25tZW50LCB0aGlzLmlucC5sLCB0aGlzLmlucC5uYW1lICsgJ0l0ZW0nLFxyXG4gICAgICAnZmEtZ2xvYmUnLCBJbnB1dFR5cGUuUGxhcXVlRywgJ3BsYXF1ZS1pbnAnLCBudWxsLCB0aGlzLmlucC5yZXF1aXJlZCk7XHJcbiAgICB0aGlzLm1vdG9yID0gbmV3IElucHV0Q2xhc3ModGhpcy5pbnAuZW52aXJvbm1lbnQsIHRoaXMuaW5wLmwsIHRoaXMuaW5wLm5hbWUgKyAnSXRlbScsXHJcbiAgICAgICdmYS1tb3RvcmN5Y2xlJywgSW5wdXRUeXBlLlBsYXF1ZU0sICdwbGFxdWUtaW5wJywgbnVsbCwgdGhpcy5pbnAucmVxdWlyZWQpO1xyXG4gICAgdGhpcy5jYXIuZGlzcGxheUxhYmVsID0gdGhpcy5jYXJGLmRpc3BsYXlMYWJlbCA9IHRoaXMuY2FyRy5kaXNwbGF5TGFiZWwgPSB0aGlzLm1vdG9yLmRpc3BsYXlMYWJlbCA9IGZhbHNlO1xyXG4gICAgdGhpcy5jYXIuZGlzYWJsZWQgPSB0aGlzLmNhckYuZGlzYWJsZWQgPSB0aGlzLmNhckcuZGlzYWJsZWQgPSB0aGlzLm1vdG9yLmRpc2FibGVkID0gdGhpcy5pbnAuZGlzYWJsZWQ7XHJcbiAgICB0aGlzLmlucC5zZXRWYWx1ZSA9ICh2KSA9PiB7XHJcbiAgICAgIGlmICh2ICE9IG51bGwgJiYgdi5WYWx1ZSAhPT0gbnVsbCl7XHJcbiAgICAgICAgdGhpcy5jaGFuZ2VUeXBlKHYuVHlwZSk7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICBpZiAodi5UeXBlID09PSBWZWhpY2xlVHlwZS5Nb3RvcmN5Y2xlKXtcclxuICAgICAgICAgICAgdGhpcy5tb3Rvci5zZXRWYWx1ZSh2LlZhbHVlLCBmYWxzZSk7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKHYuVHlwZSA9PT0gVmVoaWNsZVR5cGUuQ2FyRikge1xyXG4gICAgICAgICAgICB0aGlzLmNhckYuc2V0VmFsdWUodi5WYWx1ZSwgZmFsc2UpO1xyXG4gICAgICAgICAgfWVsc2UgaWYgKHYuVHlwZSA9PT0gVmVoaWNsZVR5cGUuQ2FyKXtcclxuICAgICAgICAgICAgdGhpcy5jYXIuc2V0VmFsdWUodi5WYWx1ZSwgZmFsc2UpO1xyXG4gICAgICAgICAgfWVsc2UgaWYgKHYuVHlwZSA9PT0gVmVoaWNsZVR5cGUuQ2FyRyl7XHJcbiAgICAgICAgICAgIHRoaXMuY2FyRy5zZXRWYWx1ZSh2LlZhbHVlLCBmYWxzZSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH07XHJcbiAgICB0aGlzLmlucC5mb2N1cyA9ICgpID0+IHtcclxuICAgICAgdGhpcy5vbkZvY3VzSW4oKTtcclxuICAgIH07XHJcbiAgICB0aGlzLmlucC5pc1ZhbGlkID0gKCkgPT4ge1xyXG4gICAgICB0aGlzLmlucC5lcnJvciA9IG51bGw7XHJcbiAgICAgIGlmICh0aGlzLmlucC5yZXF1aXJlZCAmJiB0aGlzLnR5cGUgPT09IFZlaGljbGVUeXBlLkNhciAmJiAhdGhpcy5jYXIuaXNWYWxpZCgpKSB7XHJcbiAgICAgICAgdGhpcy5pbnAuZXJyb3IgPSBJbnB1dEVycm9yLlJlcXVpcmVkO1xyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5pbnAucmVxdWlyZWQgJiYgdGhpcy50eXBlID09PSBWZWhpY2xlVHlwZS5Nb3RvcmN5Y2xlICYmICF0aGlzLm1vdG9yLmlzVmFsaWQoKSkge1xyXG4gICAgICAgIHRoaXMuaW5wLmVycm9yID0gSW5wdXRFcnJvci5SZXF1aXJlZDtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMuaW5wLnJlcXVpcmVkICYmIHRoaXMudHlwZSA9PT0gVmVoaWNsZVR5cGUuQ2FyRiAmJiAhdGhpcy5jYXJGLmlzVmFsaWQoKSkge1xyXG4gICAgICAgIHRoaXMuaW5wLmVycm9yID0gSW5wdXRFcnJvci5SZXF1aXJlZDtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMuaW5wLnJlcXVpcmVkICYmIHRoaXMudHlwZSA9PT0gVmVoaWNsZVR5cGUuQ2FyRyAmJiAhdGhpcy5jYXJHLmlzVmFsaWQoKSkge1xyXG4gICAgICAgIHRoaXMuaW5wLmVycm9yID0gSW5wdXRFcnJvci5SZXF1aXJlZDtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9O1xyXG4gICAgdGhpcy5pbnAuY2xlYXIgPSAoKSA9PiB7XHJcbiAgICAgIHRoaXMuaW5wLmVycm9yID0gbnVsbDtcclxuICAgICAgdGhpcy5pbnAuc2V0VmFsdWUobnVsbCwgZmFsc2UpO1xyXG4gICAgICB0aGlzLmNoYW5nZVR5cGUodGhpcy5pbnAucm93cy5maW5kKF8gPT4gdHJ1ZSkpO1xyXG4gICAgICB0aGlzLmNhci5jbGVhcigpO1xyXG4gICAgICB0aGlzLm1vdG9yLmNsZWFyKCk7XHJcbiAgICAgIHRoaXMuY2FyRi5jbGVhcigpO1xyXG4gICAgICB0aGlzLmNhckcuY2xlYXIoKTtcclxuICAgIH07XHJcbiAgICB0aGlzLmlucC5kYXRhID0gKCkgPT4ge1xyXG4gICAgICBjb25zdCBkID0ge1R5cGU6IHRoaXMudHlwZX07XHJcbiAgICAgIGRbdGhpcy5pbnAubmFtZV0gPSB0aGlzLnR5cGUgPT09IFZlaGljbGVUeXBlLkNhciA/IHRoaXMuY2FyLmRhdGEoKSA6XHJcbiAgICAgICAgdGhpcy50eXBlID09PSBWZWhpY2xlVHlwZS5Nb3RvcmN5Y2xlID8gdGhpcy5tb3Rvci5kYXRhKCkgOlxyXG4gICAgICAgICAgdGhpcy50eXBlID09PSBWZWhpY2xlVHlwZS5DYXJGID8gdGhpcy5jYXJGLmRhdGEoKSA6XHJcbiAgICAgICAgICAgIHRoaXMudHlwZSA9PT0gVmVoaWNsZVR5cGUuQ2FyRyA/IHRoaXMuY2FyRy5kYXRhKCkgOiBudWxsO1xyXG4gICAgICByZXR1cm4gZDtcclxuICAgIH07XHJcbiAgfVxyXG4gIGNoYW5nZVR5cGUodDogVmVoaWNsZVR5cGUpOiB2b2lkIHtcclxuICAgIHRoaXMudHlwZSA9IHQ7XHJcbiAgICBpZiAodGhpcy5pbnAub25DaGFuZ2Upe1xyXG4gICAgICB0aGlzLmlucC5vbkNoYW5nZSh0KTtcclxuICAgIH1cclxuICAgIHRoaXMub25Gb2N1c0luKCk7XHJcblxyXG4gIH1cclxuICBvbkZvY3VzSW4oKTogdm9pZCB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgJCgnIycgKyB0aGlzLmlucC5pZCArICdWZWhpY2xlSW5wdXQgI1BhcnQxVGV4dElucHV0IC5jb250cm9sJykuZm9jdXMoKTtcclxuICAgIH0sIDEwMCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==