@nixweb/nixloc-ui 1.17.0 → 1.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (181) hide show
  1. package/.github/workflows/publish-npm.yml +32 -32
  2. package/@nixweb/nixloc-ui/.github/workflows/publish-npm.yml +32 -32
  3. package/@nixweb/nixloc-ui/README.md +24 -24
  4. package/@nixweb/nixloc-ui/babel.config.js +5 -5
  5. package/@nixweb/nixloc-ui/config/dev.env.js +8 -8
  6. package/@nixweb/nixloc-ui/config/index.js +69 -69
  7. package/@nixweb/nixloc-ui/config/prod.env.js +5 -5
  8. package/@nixweb/nixloc-ui/docs/src/component/template/ViewTemplateReportPreview.drawio +209 -209
  9. package/@nixweb/nixloc-ui/docs/src/store/modulos/relatorio.drawio +36 -36
  10. package/@nixweb/nixloc-ui/package.json +88 -88
  11. package/@nixweb/nixloc-ui/public/index.html +19 -19
  12. package/@nixweb/nixloc-ui/public/styles/app.css +52 -52
  13. package/@nixweb/nixloc-ui/src/App.vue +13 -13
  14. package/@nixweb/nixloc-ui/src/component/forms/Button.vue +163 -163
  15. package/@nixweb/nixloc-ui/src/component/forms/ButtonFilter.vue +74 -74
  16. package/@nixweb/nixloc-ui/src/component/forms/ButtonGroup.vue +66 -66
  17. package/@nixweb/nixloc-ui/src/component/forms/ButtonSub.vue +97 -97
  18. package/@nixweb/nixloc-ui/src/component/forms/ButtonToggle.vue +76 -76
  19. package/@nixweb/nixloc-ui/src/component/forms/CheckboxGroup.vue +69 -69
  20. package/@nixweb/nixloc-ui/src/component/forms/CheckboxServer.vue +192 -192
  21. package/@nixweb/nixloc-ui/src/component/forms/CheckboxSimple.vue +60 -60
  22. package/@nixweb/nixloc-ui/src/component/forms/Color.vue +38 -38
  23. package/@nixweb/nixloc-ui/src/component/forms/DateTime.vue +170 -170
  24. package/@nixweb/nixloc-ui/src/component/forms/DateYearMonth.vue +193 -193
  25. package/@nixweb/nixloc-ui/src/component/forms/Dropdown.vue +236 -236
  26. package/@nixweb/nixloc-ui/src/component/forms/EditorHtml.vue +132 -132
  27. package/@nixweb/nixloc-ui/src/component/forms/FileUpload.vue +170 -170
  28. package/@nixweb/nixloc-ui/src/component/forms/ImageUpload.vue +214 -214
  29. package/@nixweb/nixloc-ui/src/component/forms/IncrementDecrement.vue +148 -148
  30. package/@nixweb/nixloc-ui/src/component/forms/InputAddressGoogle.vue +171 -171
  31. package/@nixweb/nixloc-ui/src/component/forms/InputCallToAction.vue +135 -135
  32. package/@nixweb/nixloc-ui/src/component/forms/InputDecimal.vue +153 -153
  33. package/@nixweb/nixloc-ui/src/component/forms/InputDecimalDiscount.vue +77 -77
  34. package/@nixweb/nixloc-ui/src/component/forms/InputNumber.vue +160 -160
  35. package/@nixweb/nixloc-ui/src/component/forms/InputPassword.vue +148 -148
  36. package/@nixweb/nixloc-ui/src/component/forms/InputTag.vue +124 -124
  37. package/@nixweb/nixloc-ui/src/component/forms/InputText.vue +174 -174
  38. package/@nixweb/nixloc-ui/src/component/forms/InputTextEdit.vue +69 -69
  39. package/@nixweb/nixloc-ui/src/component/forms/InputWhatsApp.vue +47 -47
  40. package/@nixweb/nixloc-ui/src/component/forms/Modal.vue +57 -57
  41. package/@nixweb/nixloc-ui/src/component/forms/RadioGroup.vue +91 -91
  42. package/@nixweb/nixloc-ui/src/component/forms/Select.vue +378 -378
  43. package/@nixweb/nixloc-ui/src/component/forms/SelectStatic.vue +198 -198
  44. package/@nixweb/nixloc-ui/src/component/forms/SideBar.vue +99 -99
  45. package/@nixweb/nixloc-ui/src/component/forms/Slider.vue +18 -18
  46. package/@nixweb/nixloc-ui/src/component/forms/TextArea.vue +138 -138
  47. package/@nixweb/nixloc-ui/src/component/forms/Toggle.vue +72 -72
  48. package/@nixweb/nixloc-ui/src/component/layout/Account.vue +131 -131
  49. package/@nixweb/nixloc-ui/src/component/layout/Alert.vue +88 -88
  50. package/@nixweb/nixloc-ui/src/component/layout/Badge.vue +111 -111
  51. package/@nixweb/nixloc-ui/src/component/layout/BarFloating.vue +67 -67
  52. package/@nixweb/nixloc-ui/src/component/layout/FixedBar.vue +103 -103
  53. package/@nixweb/nixloc-ui/src/component/layout/Gantt.vue +128 -128
  54. package/@nixweb/nixloc-ui/src/component/layout/Header.vue +56 -56
  55. package/@nixweb/nixloc-ui/src/component/layout/HideShow.vue +61 -61
  56. package/@nixweb/nixloc-ui/src/component/layout/IconMolded.vue +58 -58
  57. package/@nixweb/nixloc-ui/src/component/layout/LoadingFullPage.vue +27 -27
  58. package/@nixweb/nixloc-ui/src/component/layout/Menu.vue +287 -287
  59. package/@nixweb/nixloc-ui/src/component/layout/Molded.vue +30 -30
  60. package/@nixweb/nixloc-ui/src/component/layout/NewAccount.vue +136 -136
  61. package/@nixweb/nixloc-ui/src/component/layout/NewHeader.vue +59 -59
  62. package/@nixweb/nixloc-ui/src/component/layout/NewIconMolded.vue +70 -70
  63. package/@nixweb/nixloc-ui/src/component/layout/NewMenu.vue +455 -455
  64. package/@nixweb/nixloc-ui/src/component/layout/Panel.vue +185 -185
  65. package/@nixweb/nixloc-ui/src/component/layout/Popover.vue +126 -126
  66. package/@nixweb/nixloc-ui/src/component/layout/ScrollBar.vue +57 -57
  67. package/@nixweb/nixloc-ui/src/component/layout/Tab.vue +135 -135
  68. package/@nixweb/nixloc-ui/src/component/layout/Tag.vue +97 -97
  69. package/@nixweb/nixloc-ui/src/component/layout/Wizard.vue +211 -211
  70. package/@nixweb/nixloc-ui/src/component/rental/DisplayCalculatePeriod.vue +48 -48
  71. package/@nixweb/nixloc-ui/src/component/rental/DisplayPeriodRent.vue +55 -55
  72. package/@nixweb/nixloc-ui/src/component/rental/DisplayTotalization.vue +86 -86
  73. package/@nixweb/nixloc-ui/src/component/report/Fields.vue +108 -108
  74. package/@nixweb/nixloc-ui/src/component/report/Report.vue +313 -313
  75. package/@nixweb/nixloc-ui/src/component/report/ReportTable.vue +111 -111
  76. package/@nixweb/nixloc-ui/src/component/report/Totalization.vue +33 -33
  77. package/@nixweb/nixloc-ui/src/component/shared/CodeEditor.vue +128 -128
  78. package/@nixweb/nixloc-ui/src/component/shared/Collapse.vue +131 -131
  79. package/@nixweb/nixloc-ui/src/component/shared/Confirmation.vue +74 -74
  80. package/@nixweb/nixloc-ui/src/component/shared/DocumentEditor.vue +99 -99
  81. package/@nixweb/nixloc-ui/src/component/shared/DocumentPreview.vue +81 -81
  82. package/@nixweb/nixloc-ui/src/component/shared/DocumentPublic.vue +33 -33
  83. package/@nixweb/nixloc-ui/src/component/shared/ExportExcel.vue +56 -56
  84. package/@nixweb/nixloc-ui/src/component/shared/ExportPDF.vue +116 -116
  85. package/@nixweb/nixloc-ui/src/component/shared/FullCalendar.vue +173 -173
  86. package/@nixweb/nixloc-ui/src/component/shared/HeaderReport.vue +47 -47
  87. package/@nixweb/nixloc-ui/src/component/shared/HorizontalFilter.vue +64 -64
  88. package/@nixweb/nixloc-ui/src/component/shared/ListNotifications.vue +70 -70
  89. package/@nixweb/nixloc-ui/src/component/shared/Loading.vue +107 -107
  90. package/@nixweb/nixloc-ui/src/component/shared/LoadingCard.vue +64 -64
  91. package/@nixweb/nixloc-ui/src/component/shared/LoadingMoreButton.vue +23 -23
  92. package/@nixweb/nixloc-ui/src/component/shared/Messages.vue +109 -109
  93. package/@nixweb/nixloc-ui/src/component/shared/PDFViewer.vue +24 -24
  94. package/@nixweb/nixloc-ui/src/component/shared/Pagination.vue +108 -108
  95. package/@nixweb/nixloc-ui/src/component/shared/ParameterLegend.vue +169 -169
  96. package/@nixweb/nixloc-ui/src/component/shared/ProgressBar.vue +25 -25
  97. package/@nixweb/nixloc-ui/src/component/shared/QueryButton.vue +66 -66
  98. package/@nixweb/nixloc-ui/src/component/shared/Report.vue +200 -200
  99. package/@nixweb/nixloc-ui/src/component/shared/SaveCancel.vue +99 -99
  100. package/@nixweb/nixloc-ui/src/component/shared/Search.vue +174 -174
  101. package/@nixweb/nixloc-ui/src/component/shared/SelectOption.vue +162 -162
  102. package/@nixweb/nixloc-ui/src/component/shared/Table.vue +174 -174
  103. package/@nixweb/nixloc-ui/src/component/shared/TableButton.vue +36 -36
  104. package/@nixweb/nixloc-ui/src/component/shared/TableDraggable.vue +117 -117
  105. package/@nixweb/nixloc-ui/src/component/shared/TableImport.vue +93 -93
  106. package/@nixweb/nixloc-ui/src/component/shared/TableItem.vue +214 -214
  107. package/@nixweb/nixloc-ui/src/component/shared/TableTotalPerPage.vue +77 -77
  108. package/@nixweb/nixloc-ui/src/component/shared/TableTotalRecords.vue +44 -44
  109. package/@nixweb/nixloc-ui/src/component/shared/TableTotalization.vue +47 -47
  110. package/@nixweb/nixloc-ui/src/component/shared/TimeLine.vue +41 -41
  111. package/@nixweb/nixloc-ui/src/component/shared/Timer.vue +77 -77
  112. package/@nixweb/nixloc-ui/src/component/shared/Tip.vue +42 -42
  113. package/@nixweb/nixloc-ui/src/component/shared/Toast.vue +69 -69
  114. package/@nixweb/nixloc-ui/src/component/shared/ToggleTheme.vue +127 -127
  115. package/@nixweb/nixloc-ui/src/component/shared/TotalizationReport.vue +86 -86
  116. package/@nixweb/nixloc-ui/src/component/shared/VerticalFilter.vue +97 -97
  117. package/@nixweb/nixloc-ui/src/component/shared/automation/ActivitiesList.vue +43 -43
  118. package/@nixweb/nixloc-ui/src/component/shared/automation/AddRule.vue +60 -60
  119. package/@nixweb/nixloc-ui/src/component/shared/automation/AutomationBuilder.vue +26 -26
  120. package/@nixweb/nixloc-ui/src/component/shared/automation/DynamicComponentList.vue +85 -85
  121. package/@nixweb/nixloc-ui/src/component/shared/automation/SelectRule.vue +97 -97
  122. package/@nixweb/nixloc-ui/src/component/shared/automation/components/BillingByRent.vue +97 -97
  123. package/@nixweb/nixloc-ui/src/component/shared/automation/components/SendEmail.vue +93 -93
  124. package/@nixweb/nixloc-ui/src/component/shared/file-manager/FileManager.vue +390 -390
  125. package/@nixweb/nixloc-ui/src/component/shared/filter-builder/FilterBuilder.vue +220 -220
  126. package/@nixweb/nixloc-ui/src/component/shared/filter-builder/FilterQuery.vue +94 -94
  127. package/@nixweb/nixloc-ui/src/component/shared/query-builder/AddRule.vue +203 -203
  128. package/@nixweb/nixloc-ui/src/component/shared/query-builder/ConvertToOdata.js +86 -86
  129. package/@nixweb/nixloc-ui/src/component/shared/query-builder/DynamicComponent.vue +161 -161
  130. package/@nixweb/nixloc-ui/src/component/shared/query-builder/DynamicComponentList.vue +70 -70
  131. package/@nixweb/nixloc-ui/src/component/shared/query-builder/Fields.vue +93 -93
  132. package/@nixweb/nixloc-ui/src/component/shared/query-builder/QueryBuilder.vue +69 -69
  133. package/@nixweb/nixloc-ui/src/component/shared/query-builder/Rules.vue +68 -68
  134. package/@nixweb/nixloc-ui/src/component/shared/query-builder/SelectRule.vue +97 -97
  135. package/@nixweb/nixloc-ui/src/component/shared/query-builder/Tags.vue +59 -59
  136. package/@nixweb/nixloc-ui/src/component/shared/query-builder/utilities.js +21 -21
  137. package/@nixweb/nixloc-ui/src/component/signature/Payment.vue +160 -160
  138. package/@nixweb/nixloc-ui/src/component/signature/Warning.vue +75 -75
  139. package/@nixweb/nixloc-ui/src/component/template/ListViewWithDataHandler.vue +429 -429
  140. package/@nixweb/nixloc-ui/src/component/template/ReportCreateUpdate.vue +110 -110
  141. package/@nixweb/nixloc-ui/src/component/template/ViewTemplateConfiguration.vue +64 -64
  142. package/@nixweb/nixloc-ui/src/component/template/ViewTemplateDocumentView.vue +213 -213
  143. package/@nixweb/nixloc-ui/src/component/template/ViewTemplateImportFile.vue +347 -347
  144. package/@nixweb/nixloc-ui/src/component/template/ViewTemplateReportList.vue +217 -217
  145. package/@nixweb/nixloc-ui/src/component/template/ViewTemplateReportPreview.vue +432 -432
  146. package/@nixweb/nixloc-ui/src/component/template/ViewTemplateSelectOption.vue +46 -46
  147. package/@nixweb/nixloc-ui/src/component/template/ViewTemplateWithSalveCancel.vue +32 -32
  148. package/@nixweb/nixloc-ui/src/component/template/ViewTemplateWithTable.vue +62 -62
  149. package/@nixweb/nixloc-ui/src/component/template/model/Report.js +5 -5
  150. package/@nixweb/nixloc-ui/src/component/training/Course.vue +343 -343
  151. package/@nixweb/nixloc-ui/src/component/training/CourseView.vue +189 -189
  152. package/@nixweb/nixloc-ui/src/component/value-objects/Address.js +10 -10
  153. package/@nixweb/nixloc-ui/src/component/value-objects/Address.vue +157 -157
  154. package/@nixweb/nixloc-ui/src/component/value-objects/Contact.js +6 -6
  155. package/@nixweb/nixloc-ui/src/component/value-objects/Contact.vue +106 -106
  156. package/@nixweb/nixloc-ui/src/component/value-objects/Person.js +10 -10
  157. package/@nixweb/nixloc-ui/src/component/value-objects/Person.vue +129 -129
  158. package/@nixweb/nixloc-ui/src/config/axios.js +9 -9
  159. package/@nixweb/nixloc-ui/src/config/dicas.js +14 -14
  160. package/@nixweb/nixloc-ui/src/config/router.js +13 -13
  161. package/@nixweb/nixloc-ui/src/config/token.js +14 -14
  162. package/@nixweb/nixloc-ui/src/main.js +23 -23
  163. package/@nixweb/nixloc-ui/src/store/modules/automation.js +30 -30
  164. package/@nixweb/nixloc-ui/src/store/modules/generic.js +815 -815
  165. package/@nixweb/nixloc-ui/src/store/modules/report.js +277 -277
  166. package/@nixweb/nixloc-ui/src/store/modules/user.js +66 -66
  167. package/@nixweb/nixloc-ui/src/store/modules/util.js +25 -25
  168. package/@nixweb/nixloc-ui/src/store/modules/validation.js +38 -38
  169. package/@nixweb/nixloc-ui/src/store/store.js +13 -13
  170. package/README.md +24 -24
  171. package/babel.config.js +5 -5
  172. package/config/dev.env.js +8 -8
  173. package/config/index.js +69 -69
  174. package/config/prod.env.js +5 -5
  175. package/docs/src/component/template/ViewTemplateReportPreview.drawio +209 -209
  176. package/docs/src/store/modulos/relatorio.drawio +36 -36
  177. package/package.json +88 -88
  178. package/public/index.html +19 -19
  179. package/public/styles/app.css +52 -52
  180. package/src/component/layout/ScrollBar.vue +21 -8
  181. package/src/store/modules/generic.js +15 -1
@@ -1,138 +1,138 @@
1
- <template>
2
- <div class="form-group">
3
- <label>
4
- <span class="title">{{ title }}</span>
5
- <span class="required" v-if="required">*</span>
6
- <Tip :field="field" :formName="formName" />
7
- </label>
8
- <div class="inner-addon right-addon">
9
- <i v-if="notifications.length > 0 && formDirty" class="required glyphicon fas fa-exclamation-triangle"></i>
10
-
11
- <textarea :disabled="disabled" rows="4" cols="50" type="text" :placeholder="placeholder" v-bind:value="value"
12
- v-on:input="$emit('input', $event.target.value)"
13
- :class="{ 'is-invalid': notifications.length > 0 && formDirty }">
14
- </textarea>
15
- </div>
16
-
17
- <div v-if="formDirty">
18
- <div v-for="message in notifications" :key="message">
19
- <span class="invalid">{{ message }}</span>
20
- </div>
21
- </div>
22
- </div>
23
- </template>
24
-
25
- <script>
26
- import Tip from "../shared/Tip.vue";
27
- import { mapState, mapMutations } from "vuex";
28
-
29
- export default {
30
- components: { Tip },
31
- name: "TextArea",
32
- props: {
33
- title: String,
34
- field: String,
35
- placeholder: String,
36
- disabled: Boolean,
37
- formName: String,
38
- required: Boolean,
39
- maxLength: Number,
40
- value: String,
41
- },
42
- data() {
43
- return {
44
- notifications: [],
45
- formDirty: false,
46
- };
47
- },
48
- created() {
49
- this.validate();
50
- },
51
- methods: {
52
- ...mapMutations("validation", [
53
- "addValidation",
54
- "removeValidation",
55
- "updateFormDirty",
56
- ]),
57
- validate() {
58
- this.notifications = [];
59
-
60
- if (this.required && this.value.length == 0) {
61
- var message = `${this.title} não pode ser vazio!`;
62
- this.notifications.push(message);
63
- }
64
-
65
- if (this.maxLength > 0) {
66
- if (this.value.length > this.maxLength) {
67
- var message = `Máximo de ${this.maxLength} caracteres!`;
68
- this.notifications.push(message);
69
- }
70
- }
71
- },
72
- },
73
- computed: {
74
- ...mapState("validation", ["resetForm", "validations"]),
75
- },
76
- watch: {
77
- value() {
78
- this.validate();
79
- this.formDirty = true;
80
- this.updateFormDirty(true);
81
- },
82
- notifications() {
83
- let self = this;
84
- this.notifications.forEach(function (notification) {
85
- let obj = {
86
- key: self.field + "&" + self.formName,
87
- formName: self.formName,
88
- notification: notification,
89
- };
90
- self.addValidation(obj);
91
- });
92
-
93
- if (this.notifications.length == 0) {
94
- let obj = {
95
- key: self.field + "&" + self.formName,
96
- formName: self.formName,
97
- };
98
- self.removeValidation(obj);
99
- }
100
- },
101
- resetForm: {
102
- handler(form) {
103
- if (form.nome == this.formName) this.formDirty = false;
104
- },
105
- deep: true,
106
- },
107
- },
108
- };
109
- </script>
110
-
111
- <style scoped>
112
- textarea {
113
- width: 100%;
114
- border: 1px #DBDEE0 solid;
115
- border-radius: 5px;
116
- color: #35495E;
117
- padding-left: 10px;
118
- padding-right: 10px;
119
- font-weight: normal !important;
120
- font-size: 14px;
121
- }
122
-
123
- textarea:disabled {
124
- background-color: white !important;
125
- opacity: 0.5;
126
- }
127
-
128
-
129
- .success {
130
- color: #94aa2a;
131
- font-size: 14px;
132
- }
133
-
134
- .invalid {
135
- color: #f0134d;
136
- font-size: 14px;
137
- }
138
- </style>
1
+ <template>
2
+ <div class="form-group">
3
+ <label>
4
+ <span class="title">{{ title }}</span>
5
+ <span class="required" v-if="required">*</span>
6
+ <Tip :field="field" :formName="formName" />
7
+ </label>
8
+ <div class="inner-addon right-addon">
9
+ <i v-if="notifications.length > 0 && formDirty" class="required glyphicon fas fa-exclamation-triangle"></i>
10
+
11
+ <textarea :disabled="disabled" rows="4" cols="50" type="text" :placeholder="placeholder" v-bind:value="value"
12
+ v-on:input="$emit('input', $event.target.value)"
13
+ :class="{ 'is-invalid': notifications.length > 0 && formDirty }">
14
+ </textarea>
15
+ </div>
16
+
17
+ <div v-if="formDirty">
18
+ <div v-for="message in notifications" :key="message">
19
+ <span class="invalid">{{ message }}</span>
20
+ </div>
21
+ </div>
22
+ </div>
23
+ </template>
24
+
25
+ <script>
26
+ import Tip from "../shared/Tip.vue";
27
+ import { mapState, mapMutations } from "vuex";
28
+
29
+ export default {
30
+ components: { Tip },
31
+ name: "TextArea",
32
+ props: {
33
+ title: String,
34
+ field: String,
35
+ placeholder: String,
36
+ disabled: Boolean,
37
+ formName: String,
38
+ required: Boolean,
39
+ maxLength: Number,
40
+ value: String,
41
+ },
42
+ data() {
43
+ return {
44
+ notifications: [],
45
+ formDirty: false,
46
+ };
47
+ },
48
+ created() {
49
+ this.validate();
50
+ },
51
+ methods: {
52
+ ...mapMutations("validation", [
53
+ "addValidation",
54
+ "removeValidation",
55
+ "updateFormDirty",
56
+ ]),
57
+ validate() {
58
+ this.notifications = [];
59
+
60
+ if (this.required && this.value.length == 0) {
61
+ var message = `${this.title} não pode ser vazio!`;
62
+ this.notifications.push(message);
63
+ }
64
+
65
+ if (this.maxLength > 0) {
66
+ if (this.value.length > this.maxLength) {
67
+ var message = `Máximo de ${this.maxLength} caracteres!`;
68
+ this.notifications.push(message);
69
+ }
70
+ }
71
+ },
72
+ },
73
+ computed: {
74
+ ...mapState("validation", ["resetForm", "validations"]),
75
+ },
76
+ watch: {
77
+ value() {
78
+ this.validate();
79
+ this.formDirty = true;
80
+ this.updateFormDirty(true);
81
+ },
82
+ notifications() {
83
+ let self = this;
84
+ this.notifications.forEach(function (notification) {
85
+ let obj = {
86
+ key: self.field + "&" + self.formName,
87
+ formName: self.formName,
88
+ notification: notification,
89
+ };
90
+ self.addValidation(obj);
91
+ });
92
+
93
+ if (this.notifications.length == 0) {
94
+ let obj = {
95
+ key: self.field + "&" + self.formName,
96
+ formName: self.formName,
97
+ };
98
+ self.removeValidation(obj);
99
+ }
100
+ },
101
+ resetForm: {
102
+ handler(form) {
103
+ if (form.nome == this.formName) this.formDirty = false;
104
+ },
105
+ deep: true,
106
+ },
107
+ },
108
+ };
109
+ </script>
110
+
111
+ <style scoped>
112
+ textarea {
113
+ width: 100%;
114
+ border: 1px #DBDEE0 solid;
115
+ border-radius: 5px;
116
+ color: #35495E;
117
+ padding-left: 10px;
118
+ padding-right: 10px;
119
+ font-weight: normal !important;
120
+ font-size: 14px;
121
+ }
122
+
123
+ textarea:disabled {
124
+ background-color: white !important;
125
+ opacity: 0.5;
126
+ }
127
+
128
+
129
+ .success {
130
+ color: #94aa2a;
131
+ font-size: 14px;
132
+ }
133
+
134
+ .invalid {
135
+ color: #f0134d;
136
+ font-size: 14px;
137
+ }
138
+ </style>
@@ -1,72 +1,72 @@
1
- <template>
2
- <div class="main">
3
- <b-row>
4
- <b-col xs="6" sm="6" md="6" lg="6" xl="6">
5
- <span class="title">
6
- <i class="toggle-icon" :class="classIcon"></i> {{ title }}
7
- </span>
8
- <br />
9
- </b-col>
10
- <b-col xs="6" sm="6" md="6" lg="4" xl="4">
11
- <VueToggles height="23" width="60" checkedText="Sim" uncheckedText="Não" :checkedBg="color"
12
- uncheckedBg="lightgrey" :disabled="disabled" :value="value" @click="clicked" />
13
- </b-col>
14
- </b-row>
15
- </div>
16
- </template>
17
-
18
- <script>
19
- import VueToggles from "vue-toggles";
20
-
21
- export default {
22
- name: "Toggle",
23
- components: {
24
- VueToggles,
25
- },
26
- props: {
27
- title: String,
28
- color: String,
29
- classIcon: String,
30
- disabled: {
31
- type: Boolean,
32
- default: false,
33
- },
34
- params: Object,
35
- changed: Function,
36
- value: Boolean,
37
- },
38
- data() {
39
- return {
40
- valueLocal: false,
41
- };
42
- },
43
- created() {
44
- this.valueLocal = this.value;
45
- },
46
- methods: {
47
- clicked() {
48
- this.valueLocal = !this.valueLocal;
49
- this.$emit("input", this.valueLocal);
50
- if (this.changed) this.changed(this.params);
51
- },
52
- },
53
- };
54
- </script>
55
-
56
- <style scoped>
57
- .main {
58
- padding: 5px;
59
- }
60
-
61
- .toggle-icon {
62
- font-size: 14px;
63
- margin-right: 5px;
64
- margin-bottom: 2px;
65
- }
66
-
67
- .title {
68
- margin-left: -3px;
69
- padding-right: 35px;
70
- margin-bottom: 50px !important;
71
- }
72
- </style>
1
+ <template>
2
+ <div class="main">
3
+ <b-row>
4
+ <b-col xs="6" sm="6" md="6" lg="6" xl="6">
5
+ <span class="title">
6
+ <i class="toggle-icon" :class="classIcon"></i> {{ title }}
7
+ </span>
8
+ <br />
9
+ </b-col>
10
+ <b-col xs="6" sm="6" md="6" lg="4" xl="4">
11
+ <VueToggles height="23" width="60" checkedText="Sim" uncheckedText="Não" :checkedBg="color"
12
+ uncheckedBg="lightgrey" :disabled="disabled" :value="value" @click="clicked" />
13
+ </b-col>
14
+ </b-row>
15
+ </div>
16
+ </template>
17
+
18
+ <script>
19
+ import VueToggles from "vue-toggles";
20
+
21
+ export default {
22
+ name: "Toggle",
23
+ components: {
24
+ VueToggles,
25
+ },
26
+ props: {
27
+ title: String,
28
+ color: String,
29
+ classIcon: String,
30
+ disabled: {
31
+ type: Boolean,
32
+ default: false,
33
+ },
34
+ params: Object,
35
+ changed: Function,
36
+ value: Boolean,
37
+ },
38
+ data() {
39
+ return {
40
+ valueLocal: false,
41
+ };
42
+ },
43
+ created() {
44
+ this.valueLocal = this.value;
45
+ },
46
+ methods: {
47
+ clicked() {
48
+ this.valueLocal = !this.valueLocal;
49
+ this.$emit("input", this.valueLocal);
50
+ if (this.changed) this.changed(this.params);
51
+ },
52
+ },
53
+ };
54
+ </script>
55
+
56
+ <style scoped>
57
+ .main {
58
+ padding: 5px;
59
+ }
60
+
61
+ .toggle-icon {
62
+ font-size: 14px;
63
+ margin-right: 5px;
64
+ margin-bottom: 2px;
65
+ }
66
+
67
+ .title {
68
+ margin-left: -3px;
69
+ padding-right: 35px;
70
+ margin-bottom: 50px !important;
71
+ }
72
+ </style>
@@ -1,131 +1,131 @@
1
- <template>
2
- <div>
3
- <div class="icon-logout" @click="execute">
4
- <i class="fa-duotone fa-right-from-bracket"></i>
5
- </div>
6
- <div class="profile-container" v-if="hideShow">
7
- <div class="item-header text-center">
8
- <span>Conta</span>
9
- </div>
10
- <div class="profile-content" v-for="item in items" :key="item.title">
11
- <div class="item-content" @click="navegateTo(item.routeName)">
12
- <div class="title-container">
13
- <span>
14
- <i :class="item.classIcon"></i>
15
- <span class="title-profile title-input">{{ item.title }}</span>
16
- </span>
17
- </div>
18
- </div>
19
- </div>
20
- <div class="profile-content" @click="execute">
21
- <div class="item-content">
22
- <div class="title-container">
23
- <span>
24
- <i class="fas fa-sign-in"></i>
25
- <span class="title-profile title-input">Sair</span>
26
- </span>
27
- </div>
28
- </div>
29
- </div>
30
- </div>
31
- </div>
32
- </template>
33
- <script>
34
- export default {
35
- name: "Account",
36
- props: {
37
- items: [],
38
- exited: Function,
39
- },
40
- data() {
41
- return {
42
- hideShow: false,
43
- };
44
- },
45
- methods: {
46
- navegateTo(routeName) {
47
- this.$router.push({ name: routeName });
48
- this.hideShow = false;
49
- },
50
- execute() {
51
- if (this.exited) this.exited();
52
- },
53
- },
54
- };
55
- </script>
56
- <style scoped>
57
- .icon-logout {
58
- margin-top: -37px;
59
- padding-right: 18px;
60
- cursor: pointer;
61
- position: fixed;
62
- float: right;
63
- left: auto;
64
- right: 0;
65
- color: white;
66
- font-size: 20px;
67
- }
68
-
69
- img {
70
- border-radius: 50%;
71
- height: 40px;
72
- width: 40px;
73
- }
74
-
75
- .profile-container {
76
- position: fixed;
77
- float: right;
78
- left: auto;
79
- right: 0;
80
- margin-right: 20px;
81
- height: 100%;
82
- z-index: 1000;
83
- width: 190px;
84
- margin-top: 26px;
85
- background-color: white;
86
- height: auto;
87
- border-bottom: 1px solid #e9ebec;
88
- }
89
-
90
- .profile-content {
91
- right: 0;
92
- height: 100%;
93
- z-index: 101;
94
- width: 190px;
95
- height: auto;
96
- }
97
-
98
- .item-header {
99
- padding: 8px 20px;
100
- background: #f8f8f8;
101
- border-left: 1px solid #e9ebec;
102
- border-right: 1px solid #e9ebec;
103
- border-top: 1px solid #e9ebec;
104
- }
105
-
106
- .item-content {
107
- padding-left: 15px;
108
- height: 45px;
109
- background: white;
110
- border: 1px solid #e9ebec;
111
- border-bottom: 0px solid #e9ebec;
112
- cursor: pointer;
113
- }
114
-
115
- .item-content:hover {
116
- background: #f8f8f8;
117
- }
118
-
119
- .title-container {
120
- padding-top: 10px;
121
- }
122
-
123
- .title-container:hover {
124
- padding-top: 10px;
125
- color: #37597c;
126
- }
127
-
128
- .title-profile {
129
- padding-left: 10px;
130
- }
131
- </style>
1
+ <template>
2
+ <div>
3
+ <div class="icon-logout" @click="execute">
4
+ <i class="fa-duotone fa-right-from-bracket"></i>
5
+ </div>
6
+ <div class="profile-container" v-if="hideShow">
7
+ <div class="item-header text-center">
8
+ <span>Conta</span>
9
+ </div>
10
+ <div class="profile-content" v-for="item in items" :key="item.title">
11
+ <div class="item-content" @click="navegateTo(item.routeName)">
12
+ <div class="title-container">
13
+ <span>
14
+ <i :class="item.classIcon"></i>
15
+ <span class="title-profile title-input">{{ item.title }}</span>
16
+ </span>
17
+ </div>
18
+ </div>
19
+ </div>
20
+ <div class="profile-content" @click="execute">
21
+ <div class="item-content">
22
+ <div class="title-container">
23
+ <span>
24
+ <i class="fas fa-sign-in"></i>
25
+ <span class="title-profile title-input">Sair</span>
26
+ </span>
27
+ </div>
28
+ </div>
29
+ </div>
30
+ </div>
31
+ </div>
32
+ </template>
33
+ <script>
34
+ export default {
35
+ name: "Account",
36
+ props: {
37
+ items: [],
38
+ exited: Function,
39
+ },
40
+ data() {
41
+ return {
42
+ hideShow: false,
43
+ };
44
+ },
45
+ methods: {
46
+ navegateTo(routeName) {
47
+ this.$router.push({ name: routeName });
48
+ this.hideShow = false;
49
+ },
50
+ execute() {
51
+ if (this.exited) this.exited();
52
+ },
53
+ },
54
+ };
55
+ </script>
56
+ <style scoped>
57
+ .icon-logout {
58
+ margin-top: -37px;
59
+ padding-right: 18px;
60
+ cursor: pointer;
61
+ position: fixed;
62
+ float: right;
63
+ left: auto;
64
+ right: 0;
65
+ color: white;
66
+ font-size: 20px;
67
+ }
68
+
69
+ img {
70
+ border-radius: 50%;
71
+ height: 40px;
72
+ width: 40px;
73
+ }
74
+
75
+ .profile-container {
76
+ position: fixed;
77
+ float: right;
78
+ left: auto;
79
+ right: 0;
80
+ margin-right: 20px;
81
+ height: 100%;
82
+ z-index: 1000;
83
+ width: 190px;
84
+ margin-top: 26px;
85
+ background-color: white;
86
+ height: auto;
87
+ border-bottom: 1px solid #e9ebec;
88
+ }
89
+
90
+ .profile-content {
91
+ right: 0;
92
+ height: 100%;
93
+ z-index: 101;
94
+ width: 190px;
95
+ height: auto;
96
+ }
97
+
98
+ .item-header {
99
+ padding: 8px 20px;
100
+ background: #f8f8f8;
101
+ border-left: 1px solid #e9ebec;
102
+ border-right: 1px solid #e9ebec;
103
+ border-top: 1px solid #e9ebec;
104
+ }
105
+
106
+ .item-content {
107
+ padding-left: 15px;
108
+ height: 45px;
109
+ background: white;
110
+ border: 1px solid #e9ebec;
111
+ border-bottom: 0px solid #e9ebec;
112
+ cursor: pointer;
113
+ }
114
+
115
+ .item-content:hover {
116
+ background: #f8f8f8;
117
+ }
118
+
119
+ .title-container {
120
+ padding-top: 10px;
121
+ }
122
+
123
+ .title-container:hover {
124
+ padding-top: 10px;
125
+ color: #37597c;
126
+ }
127
+
128
+ .title-profile {
129
+ padding-left: 10px;
130
+ }
131
+ </style>