@nixweb/nixloc-ui 0.0.128 → 0.0.129

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 (84) hide show
  1. package/package.json +87 -79
  2. package/src/App.vue +13 -13
  3. package/src/component/forms/Button.vue +171 -170
  4. package/src/component/forms/ButtonGroup.vue +57 -0
  5. package/src/component/forms/ButtonSub.vue +98 -0
  6. package/src/component/forms/CheckboxGroup.vue +73 -72
  7. package/src/component/forms/CheckboxSimple.vue +46 -46
  8. package/src/component/forms/Color.vue +38 -38
  9. package/src/component/forms/DateTime.vue +167 -167
  10. package/src/component/forms/Dropdown.vue +242 -218
  11. package/src/component/forms/EditorHtml.vue +126 -126
  12. package/src/component/forms/FileUpload.vue +185 -185
  13. package/src/component/forms/IncrementDecrement.vue +7 -2
  14. package/src/component/forms/InputDecimal.vue +150 -142
  15. package/src/component/forms/InputDecimalDiscount.vue +92 -0
  16. package/src/component/forms/InputNumber.vue +160 -154
  17. package/src/component/forms/InputPassword.vue +135 -135
  18. package/src/component/forms/InputText.vue +174 -162
  19. package/src/component/forms/InputTextEdit.vue +68 -0
  20. package/src/component/forms/Modal.vue +65 -65
  21. package/src/component/forms/RadioGroup.vue +50 -50
  22. package/src/component/forms/Select.vue +351 -349
  23. package/src/component/forms/SelectStatic.vue +127 -127
  24. package/src/component/forms/Slider.vue +18 -18
  25. package/src/component/forms/TextArea.vue +126 -126
  26. package/src/component/forms/Toggle.vue +3 -1
  27. package/src/component/layout/Account.vue +3 -3
  28. package/src/component/layout/Alert.vue +92 -92
  29. package/src/component/layout/Badge.vue +104 -103
  30. package/src/component/layout/FixedBar.vue +100 -100
  31. package/src/component/layout/Gantt.vue +130 -0
  32. package/src/component/layout/Header.vue +38 -38
  33. package/src/component/layout/IconMolded.vue +48 -0
  34. package/src/component/layout/LoadingFullPage.vue +27 -27
  35. package/src/component/layout/Menu.vue +213 -210
  36. package/src/component/layout/Molded.vue +28 -28
  37. package/src/component/layout/Panel.vue +140 -140
  38. package/src/component/layout/Popover.vue +126 -126
  39. package/src/component/layout/ScrollBar.vue +42 -42
  40. package/src/component/layout/Wizard.vue +211 -211
  41. package/src/component/rental/DisplayCalculatePeriod.vue +49 -0
  42. package/src/component/rental/DisplayPeriodRent.vue +19 -44
  43. package/src/component/rental/DisplayTotalization.vue +11 -2
  44. package/src/component/shared/Collapse.vue +131 -131
  45. package/src/component/shared/Confirmation.vue +21 -2
  46. package/src/component/shared/DocumentPreview.vue +2 -1
  47. package/src/component/shared/ExportPDF.vue +116 -116
  48. package/src/component/shared/FullCalendar.vue +159 -0
  49. package/src/component/shared/HorizontalFilter.vue +59 -59
  50. package/src/component/shared/Loading.vue +107 -107
  51. package/src/component/shared/LoadingMoreButton.vue +23 -23
  52. package/src/component/shared/Messages.vue +81 -81
  53. package/src/component/shared/PDFViewer.vue +22 -22
  54. package/src/component/shared/Pagination.vue +52 -52
  55. package/src/component/shared/ProgressBar.vue +22 -22
  56. package/src/component/shared/QueryButton.vue +66 -66
  57. package/src/component/shared/SaveCancel.vue +3 -2
  58. package/src/component/shared/Search.vue +154 -154
  59. package/src/component/shared/Table.vue +163 -163
  60. package/src/component/shared/TableButton.vue +36 -36
  61. package/src/component/shared/TableTotalization.vue +47 -47
  62. package/src/component/shared/TimeLine.vue +47 -0
  63. package/src/component/shared/Tip.vue +42 -42
  64. package/src/component/shared/Toast.vue +54 -54
  65. package/src/component/shared/VerticalFilter.vue +97 -97
  66. package/src/component/shared/query-builder/AddRule.vue +181 -181
  67. package/src/component/shared/query-builder/DynamicComponentList.vue +73 -73
  68. package/src/component/shared/query-builder/QueryBuilder.vue +69 -69
  69. package/src/component/shared/query-builder/utilities.js +21 -21
  70. package/src/component/template/ListViewWithDataHandler.vue +260 -260
  71. package/src/component/template/ViewTemplateConfiguration.vue +64 -64
  72. package/src/component/template/ViewTemplateReportList.vue +1 -1
  73. package/src/component/template/ViewTemplateReportPreview.vue +0 -1
  74. package/src/component/template/ViewTemplateWithSalveCancel.vue +32 -32
  75. package/src/component/template/ViewTemplateWithTable.vue +56 -56
  76. package/src/config/axios.js +9 -9
  77. package/src/config/dicas.js +14 -14
  78. package/src/config/router.js +13 -13
  79. package/src/config/token.js +14 -14
  80. package/src/main.js +23 -23
  81. package/src/store/modules/generic.js +543 -512
  82. package/src/store/modules/user.js +3 -0
  83. package/src/store/modules/validation.js +38 -38
  84. package/src/store/store.js +13 -13
@@ -1,210 +1,213 @@
1
- <template>
2
- <div class="menu-container" :class="{ 'menu-open': subMenuFirstLevel }">
3
- <ul class="menu">
4
- <li v-if="urlImage">
5
- <div class="div-logo text-center">
6
- <img :src="urlImage" />
7
- </div>
8
- </li>
9
- <li>
10
- <div :class="{ 'menu-active': menuActive == 'Dashboard' }">
11
- <a
12
- href="#"
13
- @click.prevent="navegateTo({ routeName: 'dashboard', module: 'Dashboard' })"
14
- :class="highlightSession('home')"
15
- >
16
- <div class="div-icon side-by-side">
17
- <i
18
- :class="{
19
- 'icon-active': menuActive == 'Dashboard',
20
- 'icon-normal': menuActive != 'Dashboard',
21
- }"
22
- class="fas fa-chart-area icon-dash"
23
- ></i>
24
- </div>
25
- <div class="title">Dashboard</div>
26
- </a>
27
- </div>
28
- </li>
29
- <li v-for="(item, index) in menuFilter(true)" :key="index">
30
- <div :class="{ 'menu-active': menuActive == item.module }">
31
- <a
32
- href="#"
33
- @click.prevent="openSubMenu(item.module)"
34
- :class="highlightSession(item.module)"
35
- >
36
- <div class="div-icon side-by-side">
37
- <span
38
- :class="{
39
- 'icon-active': menuActive == item.module,
40
- 'icon-normal': menuActive != item.module,
41
- }"
42
- >
43
- <i :class="item.icon"></i>
44
- </span>
45
- </div>
46
- <div class="title">{{ item.title }}</div>
47
- </a>
48
- </div>
49
- </li>
50
- </ul>
51
-
52
- <transition name="slide-fade">
53
- <div class="context-menu-container" v-if="subMenuFirstLevel">
54
- <ul class="context-menu">
55
- <li v-for="(item, index) in subMenuFilter(false)" :key="index">
56
- <h5 v-if="item.type === 'group'" class="context-menu__title">
57
- <span class="sub-title"> {{ item.groupName }}</span>
58
- <span
59
- v-if="index === 0"
60
- @click.prevent="hideSubMenu"
61
- class="context-menu__btn-close icon-close"
62
- href="#"
63
- >
64
- <i class="fas fa-times-circle"></i>
65
- </span>
66
- </h5>
67
-
68
- <a
69
- v-else
70
- href="#"
71
- @click.prevent="navegateTo(item)"
72
- :class="classSubMenu(item.title)"
73
- >
74
- <b-row>
75
- <b-col sm="1"> <i :class="item.icon" aria-hidden="true"></i></b-col>
76
- <b-col sm="10">
77
- <span class="title-sub"> {{ item.title }}</span></b-col
78
- ></b-row
79
- >
80
- </a>
81
- </li>
82
- </ul>
83
- </div>
84
- </transition>
85
- </div>
86
- </template>
87
-
88
- <script>
89
- import { mapState } from "vuex";
90
- export default {
91
- name: "Menu",
92
- props: {
93
- baseColor: {
94
- type: String,
95
- default: "#4680A5",
96
- },
97
- baseColorActive: {
98
- type: String,
99
- default: "#3F529B",
100
- },
101
- urlImage: String,
102
- },
103
- data() {
104
- return {
105
- module: "",
106
- subMenuFirstLevel: false,
107
- menuActive: "Dashboard",
108
- };
109
- },
110
- methods: {
111
- openSubMenu(module) {
112
- this.subMenuFirstLevel = true;
113
- this.module = module;
114
- },
115
- hideSubMenu() {
116
- this.subMenuFirstLevel = false;
117
- this.menuItens = [];
118
- },
119
- highlightSession(section) {
120
- return {
121
- menu__link: true,
122
- "menu__link--active": section === this.contextSection,
123
- };
124
- },
125
- classSubMenu(subMenuName) {
126
- return {
127
- "context-menu__link": true,
128
- "context-menu__link--active": this.activeSubMenu === subMenuName,
129
- };
130
- },
131
- navegateTo(item) {
132
- this.$router.push({
133
- name: item.routeName,
134
- });
135
- this.hideSubMenu();
136
- },
137
- menuFilter(isModule) {
138
- let filter = [];
139
- this.menu.items.forEach(function (obj) {
140
- if (obj.isModule == isModule) filter.push(obj);
141
- });
142
- return filter.sort((a, b) => a.order - b.order);
143
- },
144
- subMenuFilter(isModule) {
145
- let filter = [];
146
- let self = this;
147
- this.menu.items.forEach(function (obj) {
148
- if (obj.isModule == isModule && obj.module === self.module) filter.push(obj);
149
- });
150
- return filter;
151
- },
152
- },
153
- computed: {
154
- ...mapState("user", ["menu"]),
155
- },
156
- watch: {
157
- $route: {
158
- handler: function (router) {
159
- this.menuActive = router.matched[0].props.default.module;
160
- },
161
- deep: true,
162
- },
163
- },
164
- };
165
- </script>
166
-
167
- <style scoped>
168
- .menu-open {
169
- width: 350px;
170
- z-index: 1000;
171
- }
172
- .div-logo {
173
- padding-top: 2px;
174
- padding-bottom: 16px;
175
- }
176
- .div-icon {
177
- width: 35px;
178
- height: 35px;
179
- padding-top: 5px;
180
- margin-left: 38px;
181
- }
182
- .icon-close {
183
- margin-right: 60px;
184
- }
185
- .icon {
186
- font-size: 20px;
187
- }
188
- .icon-dash {
189
- font-size: 22px;
190
- }
191
- .title {
192
- font-size: 13px;
193
- font-weight: 400;
194
- margin-top: -5px;
195
- text-align: center;
196
- width: 100%;
197
- }
198
- .title-sub {
199
- margin-left: -3px;
200
- font-weight: 400;
201
- }
202
- .sub-title {
203
- font-size: 16px;
204
- font-weight: normal;
205
- }
206
- img {
207
- height: 36px;
208
- margin-top: 5px;
209
- }
210
- </style>
1
+ <template>
2
+ <div class="menu-container" :class="{ 'menu-open': subMenuFirstLevel }">
3
+ <ul class="menu">
4
+ <li v-if="urlImage">
5
+ <div class="div-logo text-center">
6
+ <img :src="urlImage" />
7
+ </div>
8
+ </li>
9
+ <!-- <li>
10
+ <div :class="{ 'menu-active': menuActive == 'Dashboard' }">
11
+ <a
12
+ href="#"
13
+ @click.prevent="navegateTo({ routeName: 'dashboard', module: 'Dashboard' })"
14
+ :class="highlightSession('home')"
15
+ >
16
+ <div class="div-icon side-by-side">
17
+ <i
18
+ :class="{
19
+ 'icon-active': menuActive == 'Dashboard',
20
+ 'icon-normal': menuActive != 'Dashboard',
21
+ }"
22
+ class="fas fa-chart-area icon-dash"
23
+ ></i>
24
+ </div>
25
+ <div class="title">Dashboard</div>
26
+ </a>
27
+ </div>
28
+ </li>-->
29
+ <li v-for="(item, index) in menuFilter(true)" :key="index">
30
+ <div :class="{ 'menu-active': menuActive == item.module }">
31
+ <a
32
+ href="#"
33
+ @click.prevent="openSubMenu(item.module)"
34
+ :class="highlightSession(item.module)"
35
+ >
36
+ <div class="div-icon side-by-side">
37
+ <span
38
+ :class="{
39
+ 'icon-active': menuActive == item.module,
40
+ 'icon-normal': menuActive != item.module,
41
+ }"
42
+ >
43
+ <i :class="item.icon"></i>
44
+ </span>
45
+ </div>
46
+ <div class="title">{{ item.title }}</div>
47
+ </a>
48
+ </div>
49
+ </li>
50
+ </ul>
51
+
52
+ <transition name="slide-fade">
53
+ <div class="context-menu-container" v-if="subMenuFirstLevel">
54
+ <ul class="context-menu">
55
+ <li v-for="(item, index) in subMenuFilter(false)" :key="index">
56
+ <h5 v-if="item.type === 'group'" class="context-menu__title">
57
+ <span class="sub-title"> {{ item.groupName }}</span>
58
+ <span
59
+ v-if="index === 0"
60
+ @click.prevent="hideSubMenu"
61
+ class="context-menu__btn-close icon-close"
62
+ href="#"
63
+ >
64
+ <i class="fas fa-times-circle"></i>
65
+ </span>
66
+ </h5>
67
+
68
+ <a
69
+ v-else
70
+ href="#"
71
+ @click.prevent="navegateTo(item)"
72
+ :class="classSubMenu(item.title)"
73
+ >
74
+ <b-row>
75
+ <b-col sm="1">
76
+ <i :class="item.icon" aria-hidden="true"></i
77
+ ></b-col>
78
+ <b-col sm="10">
79
+ <span class="title-sub"> {{ item.title }}</span></b-col
80
+ ></b-row
81
+ >
82
+ </a>
83
+ </li>
84
+ </ul>
85
+ </div>
86
+ </transition>
87
+ </div>
88
+ </template>
89
+
90
+ <script>
91
+ import { mapState } from "vuex";
92
+ export default {
93
+ name: "Menu",
94
+ props: {
95
+ baseColor: {
96
+ type: String,
97
+ default: "#4680A5",
98
+ },
99
+ baseColorActive: {
100
+ type: String,
101
+ default: "#3F529B",
102
+ },
103
+ urlImage: String,
104
+ },
105
+ data() {
106
+ return {
107
+ module: "",
108
+ subMenuFirstLevel: false,
109
+ menuActive: "Dashboard",
110
+ };
111
+ },
112
+ methods: {
113
+ openSubMenu(module) {
114
+ this.subMenuFirstLevel = true;
115
+ this.module = module;
116
+ },
117
+ hideSubMenu() {
118
+ this.subMenuFirstLevel = false;
119
+ this.menuItens = [];
120
+ },
121
+ highlightSession(section) {
122
+ return {
123
+ menu__link: true,
124
+ "menu__link--active": section === this.contextSection,
125
+ };
126
+ },
127
+ classSubMenu(subMenuName) {
128
+ return {
129
+ "context-menu__link": true,
130
+ "context-menu__link--active": this.activeSubMenu === subMenuName,
131
+ };
132
+ },
133
+ navegateTo(item) {
134
+ this.$router.push({
135
+ name: item.routeName,
136
+ });
137
+ this.hideSubMenu();
138
+ },
139
+ menuFilter(isModule) {
140
+ let filter = [];
141
+ this.menu.items.forEach(function (obj) {
142
+ if (obj.isModule == isModule) filter.push(obj);
143
+ });
144
+ return filter.sort((a, b) => a.order - b.order);
145
+ },
146
+ subMenuFilter(isModule) {
147
+ let filter = [];
148
+ let self = this;
149
+ this.menu.items.forEach(function (obj) {
150
+ if (obj.isModule == isModule && obj.module === self.module)
151
+ filter.push(obj);
152
+ });
153
+ return filter;
154
+ },
155
+ },
156
+ computed: {
157
+ ...mapState("user", ["menu"]),
158
+ },
159
+ watch: {
160
+ $route: {
161
+ handler: function (router) {
162
+ this.menuActive = router.matched[0].props.default.module;
163
+ },
164
+ deep: true,
165
+ },
166
+ },
167
+ };
168
+ </script>
169
+
170
+ <style scoped>
171
+ .menu-open {
172
+ width: 350px;
173
+ z-index: 1000;
174
+ }
175
+ .div-logo {
176
+ padding-top: 4px;
177
+ padding-bottom: 6px;
178
+ }
179
+ .div-icon {
180
+ width: 35px;
181
+ height: 35px;
182
+ padding-top: 5px;
183
+ margin-left: 38px;
184
+ }
185
+ .icon-close {
186
+ margin-right: 60px;
187
+ }
188
+ .icon {
189
+ font-size: 20px;
190
+ }
191
+ .icon-dash {
192
+ font-size: 22px;
193
+ }
194
+ .title {
195
+ font-size: 13px;
196
+ font-weight: 400;
197
+ margin-top: -5px;
198
+ text-align: center;
199
+ width: 100%;
200
+ }
201
+ .title-sub {
202
+ margin-left: -3px;
203
+ font-weight: 400;
204
+ }
205
+ .sub-title {
206
+ font-size: 16px;
207
+ font-weight: normal;
208
+ }
209
+ img {
210
+ height: 36px;
211
+ margin-top: 5px;
212
+ }
213
+ </style>
@@ -1,28 +1,28 @@
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 #EAEDF3;
21
- background-color: white;
22
- padding-top: 15px;
23
- padding-left: 30px;
24
- padding-right: 30px;
25
- padding-bottom: 10px;
26
- box-shadow: 0px 10px 20px -6px rgb(0 0 0 / 3%);
27
- }
28
- </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 #EAEDF3;
21
+ background-color: white;
22
+ padding-top: 15px;
23
+ padding-left: 30px;
24
+ padding-right: 30px;
25
+ padding-bottom: 10px;
26
+ box-shadow: 0px 10px 20px -6px rgb(0 0 0 / 3%);
27
+ }
28
+ </style>