@nixweb/nixloc-ui 0.0.124 → 0.0.127

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 (72) hide show
  1. package/docs/src/component/template/ViewTemplateReportPreview.drawio +210 -0
  2. package/package.json +3 -1
  3. package/src/component/forms/Button.vue +7 -6
  4. package/src/component/forms/CheckboxGroup.vue +7 -4
  5. package/src/component/forms/CheckboxSimple.vue +17 -2
  6. package/src/component/forms/DateTime.vue +15 -29
  7. package/src/component/forms/EditorHtml.vue +8 -5
  8. package/src/component/forms/FileUpload.vue +7 -11
  9. package/src/component/forms/ImageUpload.vue +222 -0
  10. package/src/component/forms/InputDecimal.vue +10 -9
  11. package/src/component/forms/InputNumber.vue +20 -15
  12. package/src/component/forms/InputPassword.vue +1 -1
  13. package/src/component/forms/InputText.vue +3 -3
  14. package/src/component/forms/Modal.vue +9 -4
  15. package/src/component/forms/Select.vue +12 -9
  16. package/src/component/forms/SelectStatic.vue +8 -1
  17. package/src/component/layout/Menu.vue +4 -3
  18. package/src/component/layout/Panel.vue +0 -2
  19. package/src/component/layout/{Scrollbar.vue → ScrollBar.vue} +4 -5
  20. package/src/component/layout/Tag.vue +3 -3
  21. package/src/component/layout/Wizard.vue +11 -13
  22. package/src/component/shared/BodyReport.vue +186 -0
  23. package/src/component/shared/Confirmation.vue +2 -2
  24. package/src/component/shared/DocumentEditor.vue +1 -1
  25. package/src/component/shared/ExportExcel.vue +1 -8
  26. package/src/component/shared/{HeaderPrint.vue → HeaderReport.vue} +3 -3
  27. package/src/component/shared/HorizontalFilter.vue +1 -1
  28. package/src/component/shared/Loading.vue +1 -1
  29. package/src/component/shared/Messages.vue +2 -4
  30. package/src/component/shared/Pagination.vue +4 -5
  31. package/src/component/shared/{LegendaParametro.vue → ParameterLegend.vue} +25 -29
  32. package/src/component/shared/ProgressBar.vue +2 -1
  33. package/src/component/shared/SaveCancel.vue +20 -4
  34. package/src/component/shared/Search.vue +16 -16
  35. package/src/component/shared/SelectOption.vue +137 -0
  36. package/src/component/shared/Table.vue +33 -22
  37. package/src/component/shared/TableButton.vue +3 -3
  38. package/src/component/shared/TableTotalRecords.vue +9 -10
  39. package/src/component/shared/Toast.vue +2 -2
  40. package/src/component/shared/VerticalFilter.vue +2 -50
  41. package/src/component/shared/query-builder/AddRule.vue +49 -55
  42. package/src/component/shared/query-builder/ConvertToOdata.js +39 -42
  43. package/src/component/shared/query-builder/DynamicComponent.vue +16 -15
  44. package/src/component/shared/query-builder/DynamicComponentList.vue +62 -0
  45. package/src/component/shared/query-builder/Fields.vue +32 -66
  46. package/src/component/shared/query-builder/QueryBuilder.vue +12 -12
  47. package/src/component/shared/query-builder/Rules.vue +2 -14
  48. package/src/component/shared/query-builder/SelectRule.vue +15 -15
  49. package/src/component/shared/query-builder/Tags.vue +24 -8
  50. package/src/component/template/{ListViewWithHandlerData.vue → ListViewWithDataHandler.vue} +30 -23
  51. package/src/component/template/{AddEditReport.vue → ReportCreateUpdate.vue} +31 -20
  52. package/src/component/template/ViewTemplateConfiguration.vue +6 -12
  53. package/src/component/template/ViewTemplateDocumentView.vue +21 -25
  54. package/src/component/template/ViewTemplateReportList.vue +39 -57
  55. package/src/component/template/ViewTemplateReportPreview.vue +238 -354
  56. package/src/component/template/ViewTemplateReportPreviewCOPIASEGURANCA.vue +497 -0
  57. package/src/component/template/ViewTemplateSelectOption.vue +60 -0
  58. package/src/component/template/ViewTemplateWithTable.vue +21 -14
  59. package/src/component/template/model/Report.js +2 -2
  60. package/src/component/value-objects/Address.js +11 -0
  61. package/src/component/value-objects/{Endereco.vue → Address.vue} +39 -40
  62. package/src/component/value-objects/{DadosContato.js → Contact.js} +2 -2
  63. package/src/component/value-objects/{DadosContato.vue → Contact.vue} +17 -17
  64. package/src/component/value-objects/Person.js +10 -0
  65. package/src/component/value-objects/{DadosPessoa.vue → Person.vue} +35 -35
  66. package/src/store/modules/generic.js +17 -11
  67. package/src/store/modules/report.js +124 -113
  68. package/src/store/modules/user.js +3 -0
  69. package/docs/src/component/template/ModeloRelatorioView.drawio +0 -160
  70. package/src/component/shared/query-builder/ListDynamicComponent.vue +0 -42
  71. package/src/component/value-objects/DadosPessoa.js +0 -10
  72. package/src/component/value-objects/Endereco.js +0 -11
@@ -0,0 +1,222 @@
1
+ <template>
2
+ <div>
3
+ <b-row v-show="loadingAdd || loadingRemove">
4
+ <b-col sm="2">
5
+ <vue-loading
6
+ v-if="true"
7
+ type="bubbles"
8
+ color="#D98621"
9
+ :size="{ width: '50px', height: '50px' }"
10
+ ></vue-loading>
11
+ </b-col>
12
+ </b-row>
13
+ <b-row v-show="!loadingAdd && !loadingRemove">
14
+ <b-col sm="12">
15
+ <div class="div-preview">
16
+ <img
17
+ :style="'width:120;height:100px'"
18
+ :src="'https://espaco.blob.core.windows.net/nixloc-photo-product/' + urlImage"
19
+ />
20
+ </div>
21
+ <div>
22
+ <div v-if="!value">
23
+ <div class="div-button">
24
+ <button class="button small primary" @click="show = !show">
25
+ <span v-if="!loadingAdd">
26
+ <span><i class="fas fa-camera"></i> Carregar Foto</span>
27
+ </span>
28
+ </button>
29
+ </div>
30
+ </div>
31
+ <div v-else>
32
+ <div class="div-button">
33
+ <button class="button small danger" v-if="!loadingAdd" @click="remove()">
34
+ <span v-if="!loadingRemove"><i class="fas fa-camera"></i> Remover Foto</span>
35
+ <vue-loading
36
+ v-if="loadingRemove"
37
+ type="bubbles"
38
+ color="#fff"
39
+ :size="{ width: '20px', height: '20px' }"
40
+ ></vue-loading>
41
+ </button>
42
+ </div>
43
+ </div>
44
+ </div>
45
+ </b-col>
46
+ </b-row>
47
+ <my-upload
48
+ field="img"
49
+ @crop-success="cropSuccess"
50
+ langType="pt-br"
51
+ v-model="show"
52
+ :width="120"
53
+ :height="100"
54
+ :noCircle="true"
55
+ img-format="png"
56
+ ></my-upload>
57
+ </div>
58
+ </template>
59
+ <script>
60
+ import myUpload from "vue-image-crop-upload/upload-2.vue";
61
+
62
+ import { mapActions } from "vuex";
63
+
64
+ export default {
65
+ name: "ImageUpload",
66
+ components: {
67
+ "my-upload": myUpload,
68
+ },
69
+ props: {
70
+ title: String,
71
+ container: String,
72
+ accepted: String,
73
+ urlPost: String,
74
+ urlRemove: String,
75
+ onLoad: Function,
76
+ value: String,
77
+ },
78
+ data() {
79
+ return {
80
+ file: "",
81
+ imgBase64: "",
82
+ show: false,
83
+ loadingAdd: false,
84
+ loadingRemove: false,
85
+ urlAzure: "https://espaco.blob.core.windows.net",
86
+ };
87
+ },
88
+ computed: {
89
+ urlImage() {
90
+ if (this.value) return this.value;
91
+ return "noImage.jpg";
92
+ },
93
+ },
94
+ methods: {
95
+ ...mapActions("generic", ["postFileApi", "deleteFileApi"]),
96
+ cropSuccess(imgBase64) {
97
+ this.file = this.dataBase64ToFile(imgBase64, "image.png");
98
+ this.upload();
99
+ },
100
+ upload() {
101
+ let params = {
102
+ url: this.urlPost,
103
+ file: this.file,
104
+ container: this.container,
105
+ accepted: this.accepted,
106
+ };
107
+ this.loadingAdd = true;
108
+ this.postFileApi(params).then((response) => {
109
+ if (response.success) {
110
+ this.$emit("input", response.content);
111
+ if (this.onLoad) this.onLoad();
112
+ }
113
+ this.loadingAdd = false;
114
+ });
115
+ },
116
+ remove() {
117
+ let props = {
118
+ url: this.urlRemove,
119
+ container: this.container,
120
+ name: this.value,
121
+ };
122
+ this.loadingRemove = true;
123
+ let params = { url: this.urlRemove, obj: props };
124
+ this.deleteFileApi(params).then((response) => {
125
+ if (response.success) {
126
+ this.$emit("input", "");
127
+ if (this.onLoad) this.onLoad();
128
+ }
129
+ this.loadingRemove = false;
130
+ });
131
+ },
132
+ download() {
133
+ const url = `${this.urlAzure}/${this.container}/${this.value}`;
134
+ window.location.href = url;
135
+ },
136
+ dataBase64ToFile(dataurl, filename) {
137
+ var arr = dataurl.split(","),
138
+ mime = arr[0].match(/:(.*?);/)[1],
139
+ bstr = atob(arr[1]),
140
+ n = bstr.length,
141
+ u8arr = new Uint8Array(n);
142
+
143
+ while (n--) {
144
+ u8arr[n] = bstr.charCodeAt(n);
145
+ }
146
+
147
+ return new File([u8arr], filename, { type: mime });
148
+ },
149
+ },
150
+ };
151
+ </script>
152
+ <style scoped>
153
+ .div-preview {
154
+ margin-bottom: 15px;
155
+ margin-left: 15px;
156
+ }
157
+
158
+ .button {
159
+ padding: 8px 12px;
160
+ cursor: pointer;
161
+ border: none;
162
+ border-radius: 40px !important;
163
+ font-size: 14px;
164
+ font-weight: 400;
165
+ }
166
+
167
+ .primary {
168
+ background: #577696;
169
+ border-color: #577696;
170
+ color: #fff;
171
+ }
172
+
173
+ .primary:hover {
174
+ background: #355472;
175
+ }
176
+
177
+ .success {
178
+ color: #fff;
179
+ background: #94aa2a;
180
+ border-color: #94aa2a;
181
+ }
182
+
183
+ .success:hover {
184
+ background: #6d7e1c;
185
+ }
186
+
187
+ .danger {
188
+ color: #fff;
189
+ border-color: #f0134d;
190
+ background: #f0134d;
191
+ margin-left: 5px;
192
+ }
193
+
194
+ .danger:hover {
195
+ background: #c70f40;
196
+ }
197
+
198
+ .small {
199
+ padding: 3px 7px;
200
+ font-size: 13px;
201
+ }
202
+
203
+ .file input[type="file"] {
204
+ font-size: 100px;
205
+ position: absolute;
206
+ left: 0;
207
+ top: 0;
208
+ opacity: 0;
209
+ }
210
+
211
+ .div-alert {
212
+ margin-top: 15px;
213
+ }
214
+
215
+ .div-image {
216
+ margin-bottom: 10px;
217
+ }
218
+
219
+ .div-button {
220
+ margin-left: 18px;
221
+ }
222
+ </style>
@@ -1,6 +1,6 @@
1
1
  <template>
2
2
  <div class="form-group">
3
- <label>
3
+ <label v-if="title">
4
4
  <span class="title">{{ title }}</span>
5
5
  <span class="required" v-if="required">*</span>
6
6
  <Tip :field="field" :formName="formName" />
@@ -19,7 +19,7 @@
19
19
  currency="R$"
20
20
  separator="."
21
21
  v-bind:precision="2"
22
- v-model="_value"
22
+ v-model="valueLocal"
23
23
  ></vue-numeric>
24
24
  </div>
25
25
 
@@ -59,11 +59,12 @@ export default {
59
59
  notifications: [],
60
60
  formDirty: false,
61
61
  _value: 0,
62
+ valueLocal: 20,
62
63
  };
63
64
  },
64
65
  created() {
65
66
  // não carregar as validações iniciais para number
66
- this._value = this.value;
67
+ this.valueLocal = this.value;
67
68
  },
68
69
  methods: {
69
70
  ...mapMutations("validation", [
@@ -73,8 +74,8 @@ export default {
73
74
  ]),
74
75
  validate() {
75
76
  this.notifications = [];
76
- if (this.value == 0) return;
77
- if (this.required && !this.value) {
77
+ if (this.valueLocal == 0) return;
78
+ if (this.required && !this.valueLocal) {
78
79
  var message = `${this.title} não pode ser vazio!`;
79
80
  this.notifications.push(message);
80
81
  }
@@ -88,13 +89,13 @@ export default {
88
89
  },
89
90
  watch: {
90
91
  value() {
91
- this._value = this.value;
92
+ this.valueLocal = this.value;
92
93
  },
93
- _value() {
94
+ valueLocal() {
94
95
  this.validate();
95
96
  this.formDirty = true;
96
97
  this.updateFormDirty(true);
97
- this.$emit("input", this._value);
98
+ this.$emit("input", this.valueLocal);
98
99
  },
99
100
  notifications() {
100
101
  let self = this;
@@ -117,7 +118,7 @@ export default {
117
118
  },
118
119
  resetForm: {
119
120
  handler(form) {
120
- if (form.nome == this.formName) this.formDirty = false;
121
+ if (form.name == this.formName) this.formDirty = false;
121
122
  },
122
123
  deep: true,
123
124
  },
@@ -1,6 +1,6 @@
1
1
  <template>
2
2
  <div class="form-group">
3
- <label>
3
+ <label v-if="title">
4
4
  <span class="title">{{ title }}</span>
5
5
  <span class="required" v-if="required">*</span>
6
6
  <Tip :field="field" :formName="formName" />
@@ -14,7 +14,7 @@
14
14
  <input
15
15
  class="form-control"
16
16
  type="number"
17
- v-model="_value"
17
+ v-model="valueLocal"
18
18
  @keyup.enter.prevent="pressedEnter"
19
19
  />
20
20
  </div>
@@ -51,6 +51,7 @@ export default {
51
51
  type: Boolean,
52
52
  default: true,
53
53
  },
54
+ params: Object,
54
55
  value: Number,
55
56
  changed: Function,
56
57
  enter: Function,
@@ -59,17 +60,21 @@ export default {
59
60
  return {
60
61
  notifications: [],
61
62
  formDirty: false,
62
- _value: 0,
63
+ valueLocal: 0,
63
64
  precision: 1,
64
65
  };
65
66
  },
66
67
  created() {
67
68
  // não carregar as validações iniciais para number
68
- this._value = this.value;
69
+ this.valueLocal = this.value;
69
70
  },
70
71
 
71
72
  methods: {
72
- ...mapMutations("validation", ["addValidation", "removeValidation", "updateFormDirty"]),
73
+ ...mapMutations("validation", [
74
+ "addValidation",
75
+ "removeValidation",
76
+ "updateFormDirty",
77
+ ]),
73
78
  validate() {
74
79
  this.notifications = [];
75
80
  if (this.value == 0) return;
@@ -78,13 +83,13 @@ export default {
78
83
  this.notifications.push(message);
79
84
  }
80
85
 
81
- if (this._value.toString().length > this.maxLength) {
86
+ if (this.valueLocal.toString().length > this.maxLength) {
82
87
  var message = `Valor inválido!`;
83
88
  this.notifications.push(message);
84
89
  }
85
90
  },
86
91
  pressedEnter() {
87
- if (this.enter) this.enter();
92
+ if (this.enter) this.enter(this.params);
88
93
  },
89
94
  },
90
95
  computed: {
@@ -92,21 +97,21 @@ export default {
92
97
  },
93
98
  watch: {
94
99
  value() {
95
- this._value = this.value;
100
+ this.valueLocal = this.value;
96
101
  if (this.changed) this.changed();
97
102
  },
98
- _value() {
103
+ valueLocal() {
99
104
  this.validate();
100
105
 
101
- let _value;
102
- if (this.type === "int") _value = parseInt(this._value);
103
- if (this.type === "float") _value = parseFloat(this._value);
106
+ let valueLocal;
107
+ if (this.type === "int") valueLocal = parseInt(this.valueLocal);
108
+ if (this.type === "float") valueLocal = parseFloat(this.valueLocal);
104
109
 
105
- this.$emit("input", _value);
110
+ this.$emit("input", valueLocal);
106
111
  this.formDirty = true;
107
112
  if (this.markFormDirty) this.updateFormDirty(true);
108
113
 
109
- this._value = _value;
114
+ this.valueLocal = valueLocal;
110
115
  },
111
116
  notifications() {
112
117
  let self = this;
@@ -129,7 +134,7 @@ export default {
129
134
  },
130
135
  resetForm: {
131
136
  handler(form) {
132
- if (form.nome == this.formName) this.formDirty = false;
137
+ if (form.name == this.formName) this.formDirty = false;
133
138
  },
134
139
  deep: true,
135
140
  },
@@ -111,7 +111,7 @@ export default {
111
111
  },
112
112
  resetForm: {
113
113
  handler(form) {
114
- if (form.nome == this.formName) this.formDirty = false;
114
+ if (form.name == this.formName) this.formDirty = false;
115
115
  },
116
116
  deep: true,
117
117
  },
@@ -12,7 +12,7 @@
12
12
  <slot v-else></slot>
13
13
  <input
14
14
  type="text"
15
- :style="style"
15
+ :style="_style"
16
16
  :placeholder="placeholder"
17
17
  :disabled="disabled"
18
18
  @keyup.enter.prevent="pressedEnter"
@@ -47,7 +47,7 @@ export default {
47
47
  "disabled",
48
48
  "titleColor",
49
49
  "mask",
50
- "style",
50
+ "_style",
51
51
  "formName",
52
52
  "required",
53
53
  "maxLength",
@@ -133,7 +133,7 @@ export default {
133
133
  },
134
134
  resetForm: {
135
135
  handler(form) {
136
- if (form.nome == this.formName) this.formDirty = false;
136
+ if (form.name == this.formName) this.formDirty = false;
137
137
  },
138
138
  deep: true,
139
139
  },
@@ -1,13 +1,13 @@
1
1
  <template>
2
2
  <div>
3
3
  <vodal
4
- :duration="50"
4
+ :duration="80"
5
5
  :show="modal.open"
6
- @hide="hideModal()"
6
+ @hide="hide()"
7
7
  :width="width"
8
8
  :height="height"
9
- :closeOnEsc="fecharBotao"
10
- :closeButton="fecharBotao"
9
+ :closeOnEsc="closeOnEsc"
10
+ :closeButton="closeButton"
11
11
  :closeOnClickMask="false"
12
12
  >
13
13
  <div class="d-block text-left">
@@ -41,6 +41,7 @@ export default {
41
41
  type: Boolean,
42
42
  default: true,
43
43
  },
44
+ onHideModal: Function,
44
45
  },
45
46
  components: { Messages, Vodal },
46
47
  computed: {
@@ -48,6 +49,10 @@ export default {
48
49
  },
49
50
  methods: {
50
51
  ...mapMutations("generic", ["hideModal"]),
52
+ hide() {
53
+ if (this.onHideModal) this.onHideModal();
54
+ this.hideModal();
55
+ },
51
56
  },
52
57
  };
53
58
  </script>
@@ -78,8 +78,9 @@
78
78
 
79
79
  <vodal
80
80
  v-if="nameNewRegister"
81
+ :duration="50"
81
82
  :show="showVodal(nameNewRegister)"
82
- @hide="hideVodal()"
83
+ @hide="hide()"
83
84
  :width="widthNewRegister"
84
85
  :height="heightNewRegister"
85
86
  :closeOnEsc="true"
@@ -87,7 +88,7 @@
87
88
  >
88
89
  <Messages v-if="vodal.open" />
89
90
  <div class="title-new-form">{{ titleNewRegister }}</div>
90
- <hr />
91
+ <hr class="hr" />
91
92
  <slot></slot>
92
93
  </vodal>
93
94
  </div>
@@ -155,7 +156,7 @@ export default {
155
156
  created() {
156
157
  this.validate();
157
158
  if (this.value)
158
- this.currentValue = { id: this.value.id, conteudo: this.value.content };
159
+ this.currentValue = { id: this.value.id, content: this.value.content };
159
160
  },
160
161
  mounted() {
161
162
  let el = this.$el.getElementsByClassName("multiselect")[0];
@@ -172,7 +173,7 @@ export default {
172
173
  ...mapActions("generic", ["getApi"]),
173
174
  ...mapMutations("generic", [
174
175
  "removeLoading",
175
- "showVodal",
176
+ "openVodal",
176
177
  "hideVodal",
177
178
  "removeNotificarions",
178
179
  "addFilter",
@@ -199,7 +200,7 @@ export default {
199
200
  this.getAll();
200
201
  },
201
202
  label(value) {
202
- if (value.conteudo) return `${value.conteudo}`;
203
+ if (value.content) return `${value.content}`;
203
204
  },
204
205
  getAll() {
205
206
  let obj = { ...this.baseParams, ...this.propsParams };
@@ -211,7 +212,7 @@ export default {
211
212
  if (this.baseParams.currentPage == 1) {
212
213
  this.data = [];
213
214
  }
214
- response.conteudo.data.map(function (value, key) {
215
+ response.content.data.map(function (value, key) {
215
216
  self.data.push(value);
216
217
  });
217
218
  this.loading = false;
@@ -219,13 +220,13 @@ export default {
219
220
  });
220
221
  },
221
222
  addNewRegister() {
222
- this.showVodal(this.nameNewRegister);
223
+ this.openVodal(this.nameNewRegister);
223
224
  this.resetValidation(this.nameNewRegister);
224
225
  this.removeNotificarions();
225
226
  this.$refs.multiselect.deactivate();
226
227
  this.removeLoading(["addNewRegister"]);
227
228
  },
228
- hideVodal() {
229
+ hide() {
229
230
  this.hideVodal();
230
231
  },
231
232
  cleanSelect() {
@@ -257,7 +258,7 @@ export default {
257
258
  this.validate();
258
259
  this.formDirty = true;
259
260
  if (this.markFormDirty) this.updateFormDirty(true);
260
- this.currentValue = { id: this.value.id, conteudo: this.value.conteudo };
261
+ this.currentValue = { id: this.value.id, content: this.value.content };
261
262
  },
262
263
  notifications() {
263
264
  let self = this;
@@ -311,9 +312,11 @@ div.after-list {
311
312
  }
312
313
 
313
314
  .select {
315
+ min-width: 300px;
314
316
  height: 36px;
315
317
  border-bottom: 1px solid #d6dadf;
316
318
  border-radius: 0px !important;
319
+ z-index: 100;
317
320
  }
318
321
 
319
322
  .select-invalid {
@@ -49,6 +49,10 @@ export default {
49
49
  type: Boolean,
50
50
  default: true,
51
51
  },
52
+ markFormDirty: {
53
+ type: Boolean,
54
+ default: false,
55
+ },
52
56
  data: Array,
53
57
  value: Object,
54
58
  },
@@ -69,11 +73,14 @@ export default {
69
73
  },
70
74
  methods: {
71
75
  ...mapMutations("generic", ["addFilter", "removeLoading"]),
76
+ ...mapMutations("validation", ["updateFormDirty"]),
72
77
  onOpen() {},
73
78
  onSelected(value) {
74
79
  this.$emit("input", value);
75
- let obj = { fieldTarget: this.fieldTarget, valor: value.id };
80
+ let obj = { fieldTarget: this.fieldTarget, value: value.id };
76
81
  if (!this.onlyQuery) this.addFilter(obj);
82
+
83
+ if (this.markFormDirty) this.updateFormDirty(true);
77
84
  },
78
85
  onSearch(value) {},
79
86
  label(value) {
@@ -54,7 +54,7 @@
54
54
  <ul class="context-menu">
55
55
  <li v-for="(item, index) in subMenuFilter(false)" :key="index">
56
56
  <h5 v-if="item.type === 'group'" class="context-menu__title">
57
- <span class="sub-title"> {{ item.grupoNome }}</span>
57
+ <span class="sub-title"> {{ item.groupName }}</span>
58
58
  <span
59
59
  v-if="index === 0"
60
60
  @click.prevent="hideSubMenu"
@@ -194,12 +194,13 @@ export default {
194
194
  .title {
195
195
  font-size: 13px;
196
196
  font-weight: 400;
197
- margin-top: -6px;
197
+ margin-top: -5px;
198
198
  text-align: center;
199
199
  width: 100%;
200
200
  }
201
+
201
202
  .title-sub {
202
- margin-left: 5px;
203
+ margin-left: -3px;
203
204
  font-weight: 400;
204
205
  }
205
206
  .sub-title {
@@ -115,8 +115,6 @@ export default {
115
115
  .title {
116
116
  font-size: 18px;
117
117
  font-weight: 400;
118
- line-height: 34px;
119
- color: #577696;
120
118
  }
121
119
 
122
120
  .icon {
@@ -12,20 +12,19 @@
12
12
  import { mapMutations } from "vuex";
13
13
 
14
14
  export default {
15
- name: "Scrollbar",
15
+ name: "ScrollBar",
16
16
  props: {
17
17
  id: String,
18
18
  maxHeight: Number,
19
19
  minHeight: Number,
20
+ endScrollBar: Function,
20
21
  },
21
22
  mounted() {
22
23
  const listElm = document.querySelector("#" + this.id);
23
24
  if (listElm != null)
24
25
  listElm.addEventListener("scroll", (e) => {
25
- if (listElm.scrollTop + listElm.clientHeight >= listElm.scrollHeight) {
26
- this.addEvent({
27
- nome: "endScrollbar",
28
- });
26
+ if (listElm.scrollTop + listElm.clientHeight >= listElm.scrollHeight) {
27
+ if (this.endScrollBar) this.endScrollBar();
29
28
  }
30
29
  });
31
30
  },
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <div class="div-tag">
3
3
  <div class="tag">
4
- <span @click="execute()">{{ title }}: {{ valor }}</span>
4
+ <span @click="execute()">{{ title }}: {{ value }}</span>
5
5
  <i @click="remove()" class="icon fas fa-times-circle"></i>
6
6
  </div>
7
7
  </div>
@@ -14,7 +14,7 @@ export default {
14
14
  name: "Tag",
15
15
  props: {
16
16
  title: String,
17
- valor: String,
17
+ value: String,
18
18
  eventName: String,
19
19
  eventData: Object,
20
20
  },
@@ -29,7 +29,7 @@ export default {
29
29
  },
30
30
  remove() {
31
31
  this.addEvent({
32
- nome: "tagRemovida",
32
+ name: "tagRemoved",
33
33
  data: this.eventData,
34
34
  });
35
35
  },