@nixweb/nixloc-ui 1.10.0 → 1.12.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 (70) hide show
  1. package/@nixweb/nixloc-ui/package.json +88 -88
  2. package/@nixweb/nixloc-ui/src/App.vue +13 -13
  3. package/@nixweb/nixloc-ui/src/component/forms/Button.vue +163 -163
  4. package/@nixweb/nixloc-ui/src/component/forms/CheckboxGroup.vue +69 -69
  5. package/@nixweb/nixloc-ui/src/component/forms/CheckboxServer.vue +192 -192
  6. package/@nixweb/nixloc-ui/src/component/forms/CheckboxSimple.vue +60 -60
  7. package/@nixweb/nixloc-ui/src/component/forms/Color.vue +38 -38
  8. package/@nixweb/nixloc-ui/src/component/forms/DateTime.vue +170 -170
  9. package/@nixweb/nixloc-ui/src/component/forms/Dropdown.vue +236 -236
  10. package/@nixweb/nixloc-ui/src/component/forms/EditorHtml.vue +132 -132
  11. package/@nixweb/nixloc-ui/src/component/forms/FileUpload.vue +170 -170
  12. package/@nixweb/nixloc-ui/src/component/forms/InputDecimal.vue +153 -153
  13. package/@nixweb/nixloc-ui/src/component/forms/InputNumber.vue +160 -160
  14. package/@nixweb/nixloc-ui/src/component/forms/InputPassword.vue +148 -148
  15. package/@nixweb/nixloc-ui/src/component/forms/InputText.vue +174 -174
  16. package/@nixweb/nixloc-ui/src/component/forms/Modal.vue +57 -57
  17. package/@nixweb/nixloc-ui/src/component/forms/RadioGroup.vue +91 -91
  18. package/@nixweb/nixloc-ui/src/component/forms/Select.vue +378 -378
  19. package/@nixweb/nixloc-ui/src/component/forms/SelectStatic.vue +198 -198
  20. package/@nixweb/nixloc-ui/src/component/forms/Slider.vue +18 -18
  21. package/@nixweb/nixloc-ui/src/component/forms/TextArea.vue +138 -138
  22. package/@nixweb/nixloc-ui/src/component/layout/Alert.vue +88 -88
  23. package/@nixweb/nixloc-ui/src/component/layout/Badge.vue +111 -111
  24. package/@nixweb/nixloc-ui/src/component/layout/FixedBar.vue +103 -103
  25. package/@nixweb/nixloc-ui/src/component/layout/Header.vue +56 -56
  26. package/@nixweb/nixloc-ui/src/component/layout/LoadingFullPage.vue +27 -27
  27. package/@nixweb/nixloc-ui/src/component/layout/Menu.vue +287 -287
  28. package/@nixweb/nixloc-ui/src/component/layout/Molded.vue +30 -30
  29. package/@nixweb/nixloc-ui/src/component/layout/Panel.vue +185 -185
  30. package/@nixweb/nixloc-ui/src/component/layout/Popover.vue +126 -126
  31. package/@nixweb/nixloc-ui/src/component/layout/ScrollBar.vue +57 -57
  32. package/@nixweb/nixloc-ui/src/component/layout/Wizard.vue +211 -211
  33. package/@nixweb/nixloc-ui/src/component/shared/Collapse.vue +131 -131
  34. package/@nixweb/nixloc-ui/src/component/shared/ExportPDF.vue +116 -116
  35. package/@nixweb/nixloc-ui/src/component/shared/HorizontalFilter.vue +64 -64
  36. package/@nixweb/nixloc-ui/src/component/shared/Loading.vue +107 -107
  37. package/@nixweb/nixloc-ui/src/component/shared/LoadingMoreButton.vue +23 -23
  38. package/@nixweb/nixloc-ui/src/component/shared/Messages.vue +109 -109
  39. package/@nixweb/nixloc-ui/src/component/shared/PDFViewer.vue +24 -24
  40. package/@nixweb/nixloc-ui/src/component/shared/Pagination.vue +108 -108
  41. package/@nixweb/nixloc-ui/src/component/shared/ProgressBar.vue +25 -25
  42. package/@nixweb/nixloc-ui/src/component/shared/QueryButton.vue +66 -66
  43. package/@nixweb/nixloc-ui/src/component/shared/Search.vue +174 -174
  44. package/@nixweb/nixloc-ui/src/component/shared/Table.vue +174 -174
  45. package/@nixweb/nixloc-ui/src/component/shared/TableButton.vue +36 -36
  46. package/@nixweb/nixloc-ui/src/component/shared/TableTotalization.vue +47 -47
  47. package/@nixweb/nixloc-ui/src/component/shared/Tip.vue +42 -42
  48. package/@nixweb/nixloc-ui/src/component/shared/Toast.vue +69 -69
  49. package/@nixweb/nixloc-ui/src/component/shared/VerticalFilter.vue +97 -97
  50. package/@nixweb/nixloc-ui/src/component/shared/query-builder/AddRule.vue +203 -203
  51. package/@nixweb/nixloc-ui/src/component/shared/query-builder/DynamicComponentList.vue +70 -70
  52. package/@nixweb/nixloc-ui/src/component/shared/query-builder/QueryBuilder.vue +69 -69
  53. package/@nixweb/nixloc-ui/src/component/shared/query-builder/utilities.js +21 -21
  54. package/@nixweb/nixloc-ui/src/component/template/ListViewWithDataHandler.vue +429 -429
  55. package/@nixweb/nixloc-ui/src/component/template/ViewTemplateConfiguration.vue +64 -64
  56. package/@nixweb/nixloc-ui/src/component/template/ViewTemplateWithSalveCancel.vue +32 -32
  57. package/@nixweb/nixloc-ui/src/component/template/ViewTemplateWithTable.vue +62 -62
  58. package/@nixweb/nixloc-ui/src/config/axios.js +9 -9
  59. package/@nixweb/nixloc-ui/src/config/dicas.js +14 -14
  60. package/@nixweb/nixloc-ui/src/config/router.js +13 -13
  61. package/@nixweb/nixloc-ui/src/config/token.js +14 -14
  62. package/@nixweb/nixloc-ui/src/main.js +23 -23
  63. package/@nixweb/nixloc-ui/src/store/modules/generic.js +815 -815
  64. package/@nixweb/nixloc-ui/src/store/modules/validation.js +38 -38
  65. package/@nixweb/nixloc-ui/src/store/store.js +13 -13
  66. package/package.json +1 -1
  67. package/src/component/forms/InputDecimal.vue +18 -5
  68. package/src/component/training/CourseView.vue +16 -7
  69. package/src/component/value-objects/Address.vue +35 -19
  70. package/src/store/modules/generic.js +0 -1
@@ -1,287 +1,287 @@
1
- <template>
2
- <div class="menu-container" :class="{ 'menu-open': subMenuFirstLevel }">
3
- <ul class="menu">
4
- <li v-if="false">
5
- <div class="div-logo text-center">
6
- <img :src="urlImage" />
7
- </div>
8
- </li>
9
- <li class="molded-menu">
10
- <div class="text-center div-photo" @click="editProfile">
11
- <img class="photo" :src="urlPhoto" />
12
- </div>
13
- <div
14
- class="box-main"
15
- v-for="(item, index) in menuFilter(true)"
16
- :key="index"
17
- >
18
- <a
19
- href="#"
20
- @click.prevent="openSubMenu(item.module)"
21
- :class="highlightSession(item.module)"
22
- >
23
- <div
24
- :class="{
25
- 'icon-active': menuActive == item.module,
26
- 'icon-normal': menuActive != item.module,
27
- }"
28
- >
29
- <b-row>
30
- <b-col sm="12">
31
- <div class="box-icon text-center">
32
- <i :class="item.icon"></i><br />
33
- <div class="div-title-menu">{{ item.title }}</div>
34
- </div>
35
- </b-col>
36
- </b-row>
37
-
38
- <!-- <b-row v-if="false">
39
- <b-col sm="12">
40
- <div class="div-title-menu text-center">
41
- <span
42
- :class="{
43
- 'title-active': menuActive == item.module,
44
- 'title-normal': menuActive != item.module,
45
- }"
46
- >{{ item.title }}</span
47
- >
48
- </div>
49
- </b-col>
50
- </b-row> -->
51
- </div>
52
- </a>
53
- </div>
54
- </li>
55
- </ul>
56
-
57
- <transition name="slide-fade">
58
- <div class="context-menu-container" v-if="subMenuFirstLevel">
59
- <div>
60
- <ul class="context-menu">
61
- <li v-for="(item, index) in subMenuFilter(false)" :key="index">
62
- <h5 v-if="item.type === 'group'" class="context-menu__title">
63
- <span class="sub-title"> {{ item.groupName }}</span>
64
- <span
65
- v-if="index === 0"
66
- @click.prevent="hideSubMenu"
67
- class="context-menu__btn-close icon-close"
68
- href="#"
69
- >
70
- <i class="fas fa-times-circle"></i>
71
- </span>
72
- </h5>
73
-
74
- <a
75
- v-else
76
- href="#"
77
- @click.prevent="navegateTo(item)"
78
- :class="classSubMenu(item.title)"
79
- >
80
- <b-row>
81
- <b-col sm="1">
82
- <i
83
- class="menu-icon"
84
- :style="'color:' + item.iconColor"
85
- :class="item.icon"
86
- ></i>
87
- </b-col>
88
- <b-col sm="10">
89
- <span class="title-sub"> {{ item.title }} </span>
90
- </b-col>
91
- </b-row>
92
- </a>
93
- </li>
94
- </ul>
95
- </div>
96
- </div>
97
- </transition>
98
- </div>
99
- </template>
100
-
101
- <script>
102
- import { mapState, mapMutations, mapGetters } from "vuex";
103
- export default {
104
- name: "Menu",
105
- props: {
106
- baseColor: {
107
- type: String,
108
- default: "#4680A5",
109
- },
110
- baseColorActive: {
111
- type: String,
112
- default: "#3F529B",
113
- },
114
- urlImage: String,
115
- urlPhoto: String,
116
- },
117
- data() {
118
- return {
119
- module: "",
120
- subMenuFirstLevel: false,
121
- menuActive: "Dashboard",
122
- };
123
- },
124
- methods: {
125
- ...mapMutations("generic", ["addEvent"]),
126
- editProfile() {
127
- this.addEvent({ name: "clickedProfile" });
128
- },
129
- openSubMenu(module) {
130
- this.subMenuFirstLevel = true;
131
- this.module = module;
132
- },
133
- hideSubMenu() {
134
- this.subMenuFirstLevel = false;
135
- this.menuItens = [];
136
- },
137
- highlightSession(section) {
138
- return {
139
- menu__link: true,
140
- "menu__link--active": section === this.contextSection,
141
- };
142
- },
143
- classSubMenu(subMenuName) {
144
- return {
145
- "context-menu__link": true,
146
- "context-menu__link--active": this.activeSubMenu === subMenuName,
147
- };
148
- },
149
- navegateTo(item) {
150
- this.$router.push({
151
- name: item.routeName,
152
- });
153
- this.hideSubMenu();
154
- },
155
- menuFilter(isModule) {
156
- let filter = [];
157
- this.menu.items.forEach(function (obj) {
158
- if (obj.isModule == isModule) filter.push(obj);
159
- });
160
- return filter.sort((a, b) => a.order - b.order);
161
- },
162
- subMenuFilter(isModule) {
163
- let filter = [];
164
- let self = this;
165
- let userLogged = this.userLogged.user.userName;
166
- this.menu.items.forEach(function (obj) {
167
- if (obj.isModule == isModule && obj.module === self.module) {
168
- if (obj.isVisible == "all") filter.push(obj);
169
-
170
- if (obj.isVisible == "support" && userLogged == "UserTemp")
171
- filter.push(obj);
172
- }
173
- });
174
- return filter;
175
- },
176
- },
177
- computed: {
178
- ...mapState("user", ["menu", "userLogged"]),
179
- ...mapGetters("generic", ["event"]),
180
- },
181
- watch: {
182
- event: {
183
- handler(event) {
184
- if (event.name == "closeMenu") this.hideSubMenu();
185
- },
186
- deep: true,
187
- },
188
- $route: {
189
- handler: function (router) {
190
- this.menuActive = router.matched[0].props.default.module;
191
- },
192
- deep: true,
193
- },
194
- },
195
- };
196
- </script>
197
-
198
- <style scoped>
199
- .menu-open {
200
- width: 350px;
201
- z-index: 1000;
202
- }
203
-
204
- .div-logo {
205
- padding-top: 12px;
206
- padding-left: 10px;
207
- padding-bottom: 15px;
208
- }
209
-
210
- .photo {
211
- margin: 0;
212
- border-radius: 20px;
213
- height: 40px;
214
- width: 40px;
215
- margin-top: 10px;
216
- margin-bottom: 10px;
217
- }
218
-
219
- .icon-close {
220
- margin-right: 10px;
221
- margin-top: -5px;
222
- font-size: 22px;
223
- }
224
-
225
- .icon {
226
- font-size: 20px;
227
- }
228
-
229
- .icon-dash {
230
- font-size: 22px;
231
- }
232
-
233
- .box-main {
234
- display: flex;
235
- align-items: center;
236
- justify-content: center;
237
- }
238
-
239
- .box-icon {
240
- width: 60px;
241
- border-radius: 18px;
242
- }
243
-
244
- .div-title-menu {
245
- margin-top: -10px;
246
- font-size: 12.5px;
247
- font-weight: 300;
248
- color: black;
249
- }
250
-
251
- .title-sub {
252
- margin-left: -3px;
253
- font-weight: 400;
254
- }
255
-
256
- .margin-hidden {
257
- margin-bottom: 5px;
258
- }
259
-
260
- .sub-title {
261
- font-size: 16px;
262
- font-weight: normal;
263
- }
264
-
265
- img {
266
- height: 36px;
267
- margin-top: 5px;
268
- }
269
-
270
- .menu-icon {
271
- font-size: 15px;
272
- }
273
-
274
- .molded-menu {
275
- margin-top: 5px;
276
- margin-left: 8px;
277
- padding: 5px;
278
- padding-bottom: 1px !important;
279
- background-color: white;
280
- border: 1px solid #e8eaed;
281
- border-radius: 12px !important;
282
- }
283
-
284
- .div-photo {
285
- cursor: pointer;
286
- }
287
- </style>
1
+ <template>
2
+ <div class="menu-container" :class="{ 'menu-open': subMenuFirstLevel }">
3
+ <ul class="menu">
4
+ <li v-if="false">
5
+ <div class="div-logo text-center">
6
+ <img :src="urlImage" />
7
+ </div>
8
+ </li>
9
+ <li class="molded-menu">
10
+ <div class="text-center div-photo" @click="editProfile">
11
+ <img class="photo" :src="urlPhoto" />
12
+ </div>
13
+ <div
14
+ class="box-main"
15
+ v-for="(item, index) in menuFilter(true)"
16
+ :key="index"
17
+ >
18
+ <a
19
+ href="#"
20
+ @click.prevent="openSubMenu(item.module)"
21
+ :class="highlightSession(item.module)"
22
+ >
23
+ <div
24
+ :class="{
25
+ 'icon-active': menuActive == item.module,
26
+ 'icon-normal': menuActive != item.module,
27
+ }"
28
+ >
29
+ <b-row>
30
+ <b-col sm="12">
31
+ <div class="box-icon text-center">
32
+ <i :class="item.icon"></i><br />
33
+ <div class="div-title-menu">{{ item.title }}</div>
34
+ </div>
35
+ </b-col>
36
+ </b-row>
37
+
38
+ <!-- <b-row v-if="false">
39
+ <b-col sm="12">
40
+ <div class="div-title-menu text-center">
41
+ <span
42
+ :class="{
43
+ 'title-active': menuActive == item.module,
44
+ 'title-normal': menuActive != item.module,
45
+ }"
46
+ >{{ item.title }}</span
47
+ >
48
+ </div>
49
+ </b-col>
50
+ </b-row> -->
51
+ </div>
52
+ </a>
53
+ </div>
54
+ </li>
55
+ </ul>
56
+
57
+ <transition name="slide-fade">
58
+ <div class="context-menu-container" v-if="subMenuFirstLevel">
59
+ <div>
60
+ <ul class="context-menu">
61
+ <li v-for="(item, index) in subMenuFilter(false)" :key="index">
62
+ <h5 v-if="item.type === 'group'" class="context-menu__title">
63
+ <span class="sub-title"> {{ item.groupName }}</span>
64
+ <span
65
+ v-if="index === 0"
66
+ @click.prevent="hideSubMenu"
67
+ class="context-menu__btn-close icon-close"
68
+ href="#"
69
+ >
70
+ <i class="fas fa-times-circle"></i>
71
+ </span>
72
+ </h5>
73
+
74
+ <a
75
+ v-else
76
+ href="#"
77
+ @click.prevent="navegateTo(item)"
78
+ :class="classSubMenu(item.title)"
79
+ >
80
+ <b-row>
81
+ <b-col sm="1">
82
+ <i
83
+ class="menu-icon"
84
+ :style="'color:' + item.iconColor"
85
+ :class="item.icon"
86
+ ></i>
87
+ </b-col>
88
+ <b-col sm="10">
89
+ <span class="title-sub"> {{ item.title }} </span>
90
+ </b-col>
91
+ </b-row>
92
+ </a>
93
+ </li>
94
+ </ul>
95
+ </div>
96
+ </div>
97
+ </transition>
98
+ </div>
99
+ </template>
100
+
101
+ <script>
102
+ import { mapState, mapMutations, mapGetters } from "vuex";
103
+ export default {
104
+ name: "Menu",
105
+ props: {
106
+ baseColor: {
107
+ type: String,
108
+ default: "#4680A5",
109
+ },
110
+ baseColorActive: {
111
+ type: String,
112
+ default: "#3F529B",
113
+ },
114
+ urlImage: String,
115
+ urlPhoto: String,
116
+ },
117
+ data() {
118
+ return {
119
+ module: "",
120
+ subMenuFirstLevel: false,
121
+ menuActive: "Dashboard",
122
+ };
123
+ },
124
+ methods: {
125
+ ...mapMutations("generic", ["addEvent"]),
126
+ editProfile() {
127
+ this.addEvent({ name: "clickedProfile" });
128
+ },
129
+ openSubMenu(module) {
130
+ this.subMenuFirstLevel = true;
131
+ this.module = module;
132
+ },
133
+ hideSubMenu() {
134
+ this.subMenuFirstLevel = false;
135
+ this.menuItens = [];
136
+ },
137
+ highlightSession(section) {
138
+ return {
139
+ menu__link: true,
140
+ "menu__link--active": section === this.contextSection,
141
+ };
142
+ },
143
+ classSubMenu(subMenuName) {
144
+ return {
145
+ "context-menu__link": true,
146
+ "context-menu__link--active": this.activeSubMenu === subMenuName,
147
+ };
148
+ },
149
+ navegateTo(item) {
150
+ this.$router.push({
151
+ name: item.routeName,
152
+ });
153
+ this.hideSubMenu();
154
+ },
155
+ menuFilter(isModule) {
156
+ let filter = [];
157
+ this.menu.items.forEach(function (obj) {
158
+ if (obj.isModule == isModule) filter.push(obj);
159
+ });
160
+ return filter.sort((a, b) => a.order - b.order);
161
+ },
162
+ subMenuFilter(isModule) {
163
+ let filter = [];
164
+ let self = this;
165
+ let userLogged = this.userLogged.user.userName;
166
+ this.menu.items.forEach(function (obj) {
167
+ if (obj.isModule == isModule && obj.module === self.module) {
168
+ if (obj.isVisible == "all") filter.push(obj);
169
+
170
+ if (obj.isVisible == "support" && userLogged == "UserTemp")
171
+ filter.push(obj);
172
+ }
173
+ });
174
+ return filter;
175
+ },
176
+ },
177
+ computed: {
178
+ ...mapState("user", ["menu", "userLogged"]),
179
+ ...mapGetters("generic", ["event"]),
180
+ },
181
+ watch: {
182
+ event: {
183
+ handler(event) {
184
+ if (event.name == "closeMenu") this.hideSubMenu();
185
+ },
186
+ deep: true,
187
+ },
188
+ $route: {
189
+ handler: function (router) {
190
+ this.menuActive = router.matched[0].props.default.module;
191
+ },
192
+ deep: true,
193
+ },
194
+ },
195
+ };
196
+ </script>
197
+
198
+ <style scoped>
199
+ .menu-open {
200
+ width: 350px;
201
+ z-index: 1000;
202
+ }
203
+
204
+ .div-logo {
205
+ padding-top: 12px;
206
+ padding-left: 10px;
207
+ padding-bottom: 15px;
208
+ }
209
+
210
+ .photo {
211
+ margin: 0;
212
+ border-radius: 20px;
213
+ height: 40px;
214
+ width: 40px;
215
+ margin-top: 10px;
216
+ margin-bottom: 10px;
217
+ }
218
+
219
+ .icon-close {
220
+ margin-right: 10px;
221
+ margin-top: -5px;
222
+ font-size: 22px;
223
+ }
224
+
225
+ .icon {
226
+ font-size: 20px;
227
+ }
228
+
229
+ .icon-dash {
230
+ font-size: 22px;
231
+ }
232
+
233
+ .box-main {
234
+ display: flex;
235
+ align-items: center;
236
+ justify-content: center;
237
+ }
238
+
239
+ .box-icon {
240
+ width: 60px;
241
+ border-radius: 18px;
242
+ }
243
+
244
+ .div-title-menu {
245
+ margin-top: -10px;
246
+ font-size: 12.5px;
247
+ font-weight: 300;
248
+ color: black;
249
+ }
250
+
251
+ .title-sub {
252
+ margin-left: -3px;
253
+ font-weight: 400;
254
+ }
255
+
256
+ .margin-hidden {
257
+ margin-bottom: 5px;
258
+ }
259
+
260
+ .sub-title {
261
+ font-size: 16px;
262
+ font-weight: normal;
263
+ }
264
+
265
+ img {
266
+ height: 36px;
267
+ margin-top: 5px;
268
+ }
269
+
270
+ .menu-icon {
271
+ font-size: 15px;
272
+ }
273
+
274
+ .molded-menu {
275
+ margin-top: 5px;
276
+ margin-left: 8px;
277
+ padding: 5px;
278
+ padding-bottom: 1px !important;
279
+ background-color: white;
280
+ border: 1px solid #e8eaed;
281
+ border-radius: 12px !important;
282
+ }
283
+
284
+ .div-photo {
285
+ cursor: pointer;
286
+ }
287
+ </style>
@@ -1,30 +1,30 @@
1
- <template>
2
- <div class="molded" :style="'border-radius:' + borderRadius + 'px'">
3
- <slot></slot>
4
- </div>
5
- </template>
6
-
7
- <script>
8
- export default {
9
- name: "Molded",
10
- props: {
11
- borderRadius: {
12
- type: Number,
13
- default: 6,
14
- },
15
- },
16
- };
17
- </script>
18
- <style scoped>
19
- .molded {
20
- border: 1px solid #e8eaed;
21
- background-color: white;
22
- border-radius: 10px !important;
23
- padding: 10px;
24
- padding-top: 15px;
25
- padding-left: 30px;
26
- padding-right: 30px;
27
- padding-bottom: 10px;
28
- box-shadow: 0px 10px 100px -6px rgb(0 0 0 / 5%);
29
- }
30
- </style>
1
+ <template>
2
+ <div class="molded" :style="'border-radius:' + borderRadius + 'px'">
3
+ <slot></slot>
4
+ </div>
5
+ </template>
6
+
7
+ <script>
8
+ export default {
9
+ name: "Molded",
10
+ props: {
11
+ borderRadius: {
12
+ type: Number,
13
+ default: 6,
14
+ },
15
+ },
16
+ };
17
+ </script>
18
+ <style scoped>
19
+ .molded {
20
+ border: 1px solid #e8eaed;
21
+ background-color: white;
22
+ border-radius: 10px !important;
23
+ padding: 10px;
24
+ padding-top: 15px;
25
+ padding-left: 30px;
26
+ padding-right: 30px;
27
+ padding-bottom: 10px;
28
+ box-shadow: 0px 10px 100px -6px rgb(0 0 0 / 5%);
29
+ }
30
+ </style>