@nixweb/nixloc-ui 1.9.0 → 1.11.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 (68) 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/training/CourseView.vue +16 -7
  68. package/src/component/value-objects/Address.vue +4 -2
@@ -1,192 +1,192 @@
1
- <template>
2
- <div>
3
- <div>
4
- <div class="div-btn side-by-side">
5
- <Button _key="btnShow" color="black" backGroundColor="#F0F0F0"
6
- :title="' ' + quantitySelected + ' ' + title + ' selecionado(s)'"
7
- classIcon="fa-sharp fa-solid fa-ballot-check" size="small" :clicked="showHide" />
8
- </div>
9
- <div v-show="show" class="side-by-side">
10
- <div class="input-container">
11
- <input type="text" v-model="baseParams.search" placeholder="Pesquisar..." />
12
- </div>
13
- </div>
14
-
15
- </div>
16
- <div v-show="show">
17
- <div class="div-loading">
18
- <Loading type="line" :center="false" v-show="loading" />
19
- </div>
20
- <ScrollBar :minHeight="0" :maxHeight="200">
21
- <div class="div-check">
22
- <div class="div-items" v-for="item in data" :key="item.id">
23
- <b-form-checkbox v-model="item.selected" @change="add(item)">
24
- <span class="title">{{ item.content }}</span>
25
- </b-form-checkbox>
26
- </div>
27
- </div>
28
- <div v-if="totalRecords > 20 && data.length < totalRecords">
29
- <div class="after-list text-center">
30
- <Button key="loadingMore" type="info" title="Carregar mais..." classIcon="fas fa-redo-alt" size="small"
31
- :clicked="loadingMore" />
32
- </div>
33
- </div>
34
- </ScrollBar>
35
- </div>
36
- </div>
37
- </template>
38
-
39
- <script>
40
- import Button from "@nixweb/nixloc-ui/src/component/forms/Button";
41
- import ScrollBar from "@nixweb/nixloc-ui/src/component/layout/ScrollBar.vue";
42
- import Loading from "@nixweb/nixloc-ui/src/component/shared/Loading.vue";
43
- import InputText from "@nixweb/nixloc-ui/src/component/forms/InputText";
44
-
45
- import { mapGetters, mapMutations, mapActions } from "vuex";
46
-
47
- export default {
48
- name: "CheckboxServer",
49
- components: {
50
- Button, ScrollBar, Loading, InputText
51
- },
52
- props: {
53
- title: String,
54
- url: String,
55
- propsParams: Object,
56
- value: Array,
57
- },
58
- data() {
59
- return {
60
- show: false,
61
- loading: true,
62
- data: [],
63
- selected: [],
64
- totalRecords: 0,
65
- baseParams: {
66
- search: "",
67
- currentPage: 1,
68
- totalPerPage: 20,
69
- },
70
- };
71
- },
72
- mounted() {
73
- this.getAll();
74
-
75
- if (this.value.length > 0) {
76
- this.selected = this.value;
77
- }
78
-
79
- },
80
- computed: {
81
- ...mapGetters("generic", ["showModal", "event"]),
82
- quantitySelected() {
83
- return this.selected.length > 0 ? this.selected.length : 0;
84
- }
85
- },
86
- methods: {
87
- ...mapMutations("generic", ["removeLoading"]),
88
- ...mapActions("generic", ["getApi"]),
89
- getAll() {
90
- let obj = { ...this.baseParams, ...this.propsParams };
91
- let params = { url: this.url, obj: obj };
92
- this.loading = true;
93
- this.getApi(params).then((response) => {
94
- this.totalRecords = response.content.totalRecords;
95
- if (this.baseParams.currentPage == 1) {
96
- this.data = [];
97
- }
98
-
99
- let self = this;
100
- response.content.data.forEach(item => {
101
- self.data.push(item);
102
- });
103
-
104
- this.markSelected();
105
-
106
- this.loading = false;
107
- this.removeLoading(["loadingMore"]);
108
- });
109
- },
110
- loadingMore() {
111
- this.baseParams.currentPage++;
112
- this.getAll();
113
- },
114
- add(item) {
115
- const index = this.selected.indexOf(item.content);
116
- if (index > -1) {
117
- this.selected.splice(index, 1);
118
- } else {
119
- this.selected.push(item.content);
120
- }
121
- },
122
- showHide() {
123
- this.show = this.show == true ? false : true;
124
- this.removeLoading(["btnShow"]);
125
- },
126
- markSelected() {
127
- this.data.forEach(item => {
128
- if (this.selected.includes(item.content)) {
129
- item.selected = true;
130
- }
131
- });
132
- }
133
- },
134
- watch: {
135
- selected: {
136
- handler(value) {
137
- this.$emit("input", value);
138
- },
139
- deep: true,
140
- },
141
- 'baseParams.search': {
142
- handler(value) {
143
- this.getAll();
144
- },
145
- deep: true,
146
- },
147
- },
148
- };
149
- </script>
150
-
151
- <style scoped>
152
- .div-check {
153
- margin: 10px;
154
- }
155
-
156
- .div-items {
157
- margin-left: 10px;
158
- }
159
-
160
- .div-loading {
161
- margin-top: 3px;
162
- }
163
-
164
- .div-btn {
165
- padding-bottom: 5px;
166
- }
167
-
168
- .div-icon {
169
- margin-left: 10px;
170
- font-size: 16px;
171
- color: green;
172
- cursor: pointer;
173
- }
174
-
175
- .input-container {
176
- display: flex;
177
- justify-content: center;
178
- margin: 20px;
179
- }
180
-
181
- input {
182
- padding-left: 10px;
183
- padding-right: 10px;
184
- padding-top: 4px;
185
- padding-bottom: 4px;
186
- border: 1px solid #E5E4E8;
187
- border-radius: 20px;
188
- outline: none;
189
- font-size: 13px;
190
- width: 300px;
191
- }
192
- </style>
1
+ <template>
2
+ <div>
3
+ <div>
4
+ <div class="div-btn side-by-side">
5
+ <Button _key="btnShow" color="black" backGroundColor="#F0F0F0"
6
+ :title="' ' + quantitySelected + ' ' + title + ' selecionado(s)'"
7
+ classIcon="fa-sharp fa-solid fa-ballot-check" size="small" :clicked="showHide" />
8
+ </div>
9
+ <div v-show="show" class="side-by-side">
10
+ <div class="input-container">
11
+ <input type="text" v-model="baseParams.search" placeholder="Pesquisar..." />
12
+ </div>
13
+ </div>
14
+
15
+ </div>
16
+ <div v-show="show">
17
+ <div class="div-loading">
18
+ <Loading type="line" :center="false" v-show="loading" />
19
+ </div>
20
+ <ScrollBar :minHeight="0" :maxHeight="200">
21
+ <div class="div-check">
22
+ <div class="div-items" v-for="item in data" :key="item.id">
23
+ <b-form-checkbox v-model="item.selected" @change="add(item)">
24
+ <span class="title">{{ item.content }}</span>
25
+ </b-form-checkbox>
26
+ </div>
27
+ </div>
28
+ <div v-if="totalRecords > 20 && data.length < totalRecords">
29
+ <div class="after-list text-center">
30
+ <Button key="loadingMore" type="info" title="Carregar mais..." classIcon="fas fa-redo-alt" size="small"
31
+ :clicked="loadingMore" />
32
+ </div>
33
+ </div>
34
+ </ScrollBar>
35
+ </div>
36
+ </div>
37
+ </template>
38
+
39
+ <script>
40
+ import Button from "@nixweb/nixloc-ui/src/component/forms/Button";
41
+ import ScrollBar from "@nixweb/nixloc-ui/src/component/layout/ScrollBar.vue";
42
+ import Loading from "@nixweb/nixloc-ui/src/component/shared/Loading.vue";
43
+ import InputText from "@nixweb/nixloc-ui/src/component/forms/InputText";
44
+
45
+ import { mapGetters, mapMutations, mapActions } from "vuex";
46
+
47
+ export default {
48
+ name: "CheckboxServer",
49
+ components: {
50
+ Button, ScrollBar, Loading, InputText
51
+ },
52
+ props: {
53
+ title: String,
54
+ url: String,
55
+ propsParams: Object,
56
+ value: Array,
57
+ },
58
+ data() {
59
+ return {
60
+ show: false,
61
+ loading: true,
62
+ data: [],
63
+ selected: [],
64
+ totalRecords: 0,
65
+ baseParams: {
66
+ search: "",
67
+ currentPage: 1,
68
+ totalPerPage: 20,
69
+ },
70
+ };
71
+ },
72
+ mounted() {
73
+ this.getAll();
74
+
75
+ if (this.value.length > 0) {
76
+ this.selected = this.value;
77
+ }
78
+
79
+ },
80
+ computed: {
81
+ ...mapGetters("generic", ["showModal", "event"]),
82
+ quantitySelected() {
83
+ return this.selected.length > 0 ? this.selected.length : 0;
84
+ }
85
+ },
86
+ methods: {
87
+ ...mapMutations("generic", ["removeLoading"]),
88
+ ...mapActions("generic", ["getApi"]),
89
+ getAll() {
90
+ let obj = { ...this.baseParams, ...this.propsParams };
91
+ let params = { url: this.url, obj: obj };
92
+ this.loading = true;
93
+ this.getApi(params).then((response) => {
94
+ this.totalRecords = response.content.totalRecords;
95
+ if (this.baseParams.currentPage == 1) {
96
+ this.data = [];
97
+ }
98
+
99
+ let self = this;
100
+ response.content.data.forEach(item => {
101
+ self.data.push(item);
102
+ });
103
+
104
+ this.markSelected();
105
+
106
+ this.loading = false;
107
+ this.removeLoading(["loadingMore"]);
108
+ });
109
+ },
110
+ loadingMore() {
111
+ this.baseParams.currentPage++;
112
+ this.getAll();
113
+ },
114
+ add(item) {
115
+ const index = this.selected.indexOf(item.content);
116
+ if (index > -1) {
117
+ this.selected.splice(index, 1);
118
+ } else {
119
+ this.selected.push(item.content);
120
+ }
121
+ },
122
+ showHide() {
123
+ this.show = this.show == true ? false : true;
124
+ this.removeLoading(["btnShow"]);
125
+ },
126
+ markSelected() {
127
+ this.data.forEach(item => {
128
+ if (this.selected.includes(item.content)) {
129
+ item.selected = true;
130
+ }
131
+ });
132
+ }
133
+ },
134
+ watch: {
135
+ selected: {
136
+ handler(value) {
137
+ this.$emit("input", value);
138
+ },
139
+ deep: true,
140
+ },
141
+ 'baseParams.search': {
142
+ handler(value) {
143
+ this.getAll();
144
+ },
145
+ deep: true,
146
+ },
147
+ },
148
+ };
149
+ </script>
150
+
151
+ <style scoped>
152
+ .div-check {
153
+ margin: 10px;
154
+ }
155
+
156
+ .div-items {
157
+ margin-left: 10px;
158
+ }
159
+
160
+ .div-loading {
161
+ margin-top: 3px;
162
+ }
163
+
164
+ .div-btn {
165
+ padding-bottom: 5px;
166
+ }
167
+
168
+ .div-icon {
169
+ margin-left: 10px;
170
+ font-size: 16px;
171
+ color: green;
172
+ cursor: pointer;
173
+ }
174
+
175
+ .input-container {
176
+ display: flex;
177
+ justify-content: center;
178
+ margin: 20px;
179
+ }
180
+
181
+ input {
182
+ padding-left: 10px;
183
+ padding-right: 10px;
184
+ padding-top: 4px;
185
+ padding-bottom: 4px;
186
+ border: 1px solid #E5E4E8;
187
+ border-radius: 20px;
188
+ outline: none;
189
+ font-size: 13px;
190
+ width: 300px;
191
+ }
192
+ </style>
@@ -1,60 +1,60 @@
1
- <template>
2
- <div>
3
- <b-form-checkbox v-model="valueLocal" :value="true" :unchecked-value="false">
4
- <span class="title">{{ title }}</span>
5
- <Tip :field="field" :formName="formName" />
6
- </b-form-checkbox>
7
- </div>
8
- </template>
9
-
10
- <script>
11
- import Tip from "../shared/Tip.vue";
12
-
13
- import { mapMutations } from "vuex";
14
-
15
- export default {
16
- components: { Tip },
17
- name: "CheckboxSimple",
18
- props: {
19
- title: String,
20
- formName: String,
21
- fieldTarget: String,
22
- field: String,
23
- value: Boolean,
24
- changed: Function,
25
- params: Object,
26
- markFormDirty: {
27
- type: Boolean,
28
- default: true,
29
- },
30
- },
31
- data() {
32
- return {
33
- valueLocal: false,
34
- };
35
- },
36
- methods: {
37
- ...mapMutations("validation", ["updateFormDirty"]),
38
- ...mapMutations("generic", ["addFilter"]),
39
- },
40
- mounted() {
41
- this.valueLocal = this.value;
42
- },
43
- watch: {
44
- value() {
45
- this.valueLocal = this.value;
46
- },
47
- valueLocal() {
48
- this.$emit("input", this.valueLocal);
49
- if (this.markFormDirty) this.updateFormDirty(true);
50
- if (this.changed) this.changed(this.params);
51
-
52
- if (this.fieldTarget) {
53
- let obj = { fieldTarget: this.fieldTarget, value: this.valueLocal ? "true" : "false" };
54
- this.addFilter(obj);
55
- }
56
-
57
- },
58
- },
59
- };
60
- </script>
1
+ <template>
2
+ <div>
3
+ <b-form-checkbox v-model="valueLocal" :value="true" :unchecked-value="false">
4
+ <span class="title">{{ title }}</span>
5
+ <Tip :field="field" :formName="formName" />
6
+ </b-form-checkbox>
7
+ </div>
8
+ </template>
9
+
10
+ <script>
11
+ import Tip from "../shared/Tip.vue";
12
+
13
+ import { mapMutations } from "vuex";
14
+
15
+ export default {
16
+ components: { Tip },
17
+ name: "CheckboxSimple",
18
+ props: {
19
+ title: String,
20
+ formName: String,
21
+ fieldTarget: String,
22
+ field: String,
23
+ value: Boolean,
24
+ changed: Function,
25
+ params: Object,
26
+ markFormDirty: {
27
+ type: Boolean,
28
+ default: true,
29
+ },
30
+ },
31
+ data() {
32
+ return {
33
+ valueLocal: false,
34
+ };
35
+ },
36
+ methods: {
37
+ ...mapMutations("validation", ["updateFormDirty"]),
38
+ ...mapMutations("generic", ["addFilter"]),
39
+ },
40
+ mounted() {
41
+ this.valueLocal = this.value;
42
+ },
43
+ watch: {
44
+ value() {
45
+ this.valueLocal = this.value;
46
+ },
47
+ valueLocal() {
48
+ this.$emit("input", this.valueLocal);
49
+ if (this.markFormDirty) this.updateFormDirty(true);
50
+ if (this.changed) this.changed(this.params);
51
+
52
+ if (this.fieldTarget) {
53
+ let obj = { fieldTarget: this.fieldTarget, value: this.valueLocal ? "true" : "false" };
54
+ this.addFilter(obj);
55
+ }
56
+
57
+ },
58
+ },
59
+ };
60
+ </script>
@@ -1,38 +1,38 @@
1
- <template>
2
- <div class="form-group">
3
- <div>
4
- <span class="title">{{ title }} </span>
5
- <compact-picker v-model.trim="color.hex" />
6
- </div>
7
- </div>
8
- </template>
9
-
10
- <script>
11
- import { Chrome } from "vue-color";
12
-
13
- export default {
14
- name: "Color",
15
- components: {
16
- "compact-picker": Chrome,
17
- },
18
- props: {
19
- title: String,
20
- field: String,
21
- formName: String,
22
- value: String,
23
- },
24
- data() {
25
- return {
26
- color: { hex: "#40BF84" },
27
- };
28
- },
29
- watch: {
30
- value() {
31
- this.color.hex = this.value;
32
- },
33
- "color.hex": function (value) {
34
- if (value.hex) this.$emit("input", value.hex);
35
- },
36
- },
37
- };
38
- </script>
1
+ <template>
2
+ <div class="form-group">
3
+ <div>
4
+ <span class="title">{{ title }} </span>
5
+ <compact-picker v-model.trim="color.hex" />
6
+ </div>
7
+ </div>
8
+ </template>
9
+
10
+ <script>
11
+ import { Chrome } from "vue-color";
12
+
13
+ export default {
14
+ name: "Color",
15
+ components: {
16
+ "compact-picker": Chrome,
17
+ },
18
+ props: {
19
+ title: String,
20
+ field: String,
21
+ formName: String,
22
+ value: String,
23
+ },
24
+ data() {
25
+ return {
26
+ color: { hex: "#40BF84" },
27
+ };
28
+ },
29
+ watch: {
30
+ value() {
31
+ this.color.hex = this.value;
32
+ },
33
+ "color.hex": function (value) {
34
+ if (value.hex) this.$emit("input", value.hex);
35
+ },
36
+ },
37
+ };
38
+ </script>